Skip to content

chore/dls-922-prod-peer-dev-deps - #845

Open
gamegee wants to merge 6 commits into
mainfrom
chore/dls-922-prod-peer-dev-deps
Open

chore/dls-922-prod-peer-dev-deps#845
gamegee wants to merge 6 commits into
mainfrom
chore/dls-922-prod-peer-dev-deps

Conversation

@gamegee

@gamegee gamegee commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

No description provided.

…po & libraries

Signed-off-by: Simon Bruneaud <simon.bruneaud@ledger.fr>
Signed-off-by: Simon Bruneaud <simon.bruneaud@ledger.fr>
Signed-off-by: Simon Bruneaud <simon.bruneaud@ledger.fr>
@gamegee
gamegee requested a review from a team as a code owner August 20, 2026 15:10
Copilot AI balanced review requested due to automatic review settings August 20, 2026 15:10
@vercel

vercel Bot commented Aug 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
ldls Ready Ready Preview Sep 1, 2026 2:41pm UTC
ldls-react-native Ready Ready Preview Sep 1, 2026 2:41pm UTC

Request Review

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Reclassifies package dependencies so internal UI primitives install transitively while framework/build dependencies remain peers.

Changes:

  • Moves web UI utilities and primitives into production dependencies.
  • Removes @types/react from React Native package manifests.
  • Updates installation docs, Rollup externals, lockfile, and release plans.

Reviewed changes

Copilot reviewed 30 out of 31 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
package.json Removes empty dependencies block.
package-lock.json Records dependency classifications.
libs/ui-rnative/package.json Removes React type declarations.
libs/ui-rnative-visualization/package.json Removes React type declarations.
libs/ui-react/vite.config.ts Externalizes runtime dependencies.
libs/ui-react/src/lib/Components/core/Tooltip/Tooltip.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/TileButton/TileButton.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Switch/Switch.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Spinner/Spinner.mdx Updates peer installation.
libs/ui-react/src/lib/Components/core/Select/Select.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Popover/Popover.mdx Clarifies bundled dependency.
libs/ui-react/src/lib/Components/core/Menu/Menu.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Link/Link.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/IconButton/IconButton.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Dialog/Dialog.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Checkbox/Checkbox.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Button/Button.mdx Simplifies installation.
libs/ui-react/src/lib/Components/core/Banner/Banner.mdx Simplifies installation.
libs/ui-react/README.md Updates peer setup instructions.
libs/ui-react/package.json Reclassifies UI runtime dependencies.
libs/ui-react/ai-rules/RULES.md Documents dependency ownership.
libs/ui-react/.storybook/docs/SetupTailwind.mdx Updates setup command.
libs/ui-react/.storybook/docs/Setup.mdx Removes separate primitive setup.
libs/ui-react/.storybook/components/SetupNote.tsx Lists remaining peers.
libs/ui-react-visualization/package.json Reclassifies styling utilities.
libs/design-core/package.json Makes Tailwind a peer dependency.
.nx/version-plans/version-plan-1787065800000-ui-rnative.md Plans native package patch.
.nx/version-plans/version-plan-1787065800000-ui-rnative-visualization.md Plans native visualization patch.
.nx/version-plans/version-plan-1787065800000-ui-react.md Plans web package patch.
.nx/version-plans/version-plan-1787065800000-ui-react-visualization.md Plans web visualization patch.
.nx/version-plans/version-plan-1787065800000-design-core.md Plans design-core patch.

Comment thread libs/ui-react/.storybook/docs/SetupTailwind.mdx Outdated
Comment thread libs/ui-react/src/lib/Components/core/Spinner/Spinner.mdx Outdated
Comment on lines +37 to +41
- `@ledgerhq/lumen-ui-react` declares only `react`, `react-dom`, and
`@ledgerhq/lumen-design-core` as peer dependencies. The component primitives
(Radix UI, Base UI, `class-variance-authority`, `clsx`, `tailwind-merge`,
`@tanstack/react-table`) ship as regular dependencies, so consumers do not
need to install them separately.
@gamegee gamegee added chromatic This will run Chromatic on this PR publish-dev-package Publishes affected packages to the JFrog sandbox registry on each commit labels Aug 21, 2026
@github-actions

github-actions Bot commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

📦 Dev packages published

Tarballs are hosted as assets on a per-PR GitHub pre-release and are deleted automatically when this PR is closed.

Package Version Install
@ledgerhq/lumen-design-core 0.1.26-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-design-core-0.1.26-pr.845.befc9a2.tgz
@ledgerhq/lumen-ui-rnative-visualization 0.1.35-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-ui-rnative-visualization-0.1.35-pr.845.befc9a2.tgz
@ledgerhq/lumen-ui-react-visualization 0.1.34-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-ui-react-visualization-0.1.34-pr.845.befc9a2.tgz
@ledgerhq/lumen-ui-rnative 0.1.58-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-ui-rnative-0.1.58-pr.845.befc9a2.tgz
@ledgerhq/lumen-ui-react 0.1.54-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-ui-react-0.1.54-pr.845.befc9a2.tgz
@ledgerhq/lumen-utils-shared 0.1.11-pr.845.befc9a2 npm i https://github.com/LedgerHQ/lumen/releases/download/dev-pr-845/ledgerhq-lumen-utils-shared-0.1.11-pr.845.befc9a2.tgz

Release: dev-pr-845
Commit: befc9a2d610e6aa3a5544f3bdb4e0405df983ddb

Signed-off-by: Simon Bruneaud <simon.bruneaud@ledger.fr>
@sonarqubecloud

Copy link
Copy Markdown

Signed-off-by: Simon Bruneaud <simon.bruneaud@ledger.fr>
Comment on lines 48 to 52
"@radix-ui/react-checkbox": "^1.3.2",
"@radix-ui/react-dialog": "^1.1.15",
"@radix-ui/react-slot": "^1.2.3",
"@radix-ui/react-switch": "^1.2.6",
"@radix-ui/react-tooltip": "^1.2.8",

@aammami-ledger aammami-ledger Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[mid] At the time we set this up, Radix was a peer so teams that already used it (ecommerce/LES) would share one version with Lumen, instead of Lumen nesting a second copy.

For cva, clsx, and tailwind-merge there was a second reason: we wanted consumers to install and use those utilities themselves.

That’s the model in ADR 008 — Bundling Strategy.

If we want to change direction let's, please update/discuss the ADR before.

'tailwind-merge',
'd3-array',
'd3-scale',
'd3-shape',

@aammami-ledger aammami-ledger Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah cool, I have already added some of them in this hot-fix PR

I wanted to add them all including d3 but it was way our of the scope of the fix, happy to see this 👌

"tslib": "^2.3.0"
},
"peerDependencies": {
"tailwindcss": "^4.1.17"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok 👍

@aammami-ledger aammami-ledger left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I likely won't be around when this gets merged, but I'd hope yo take some time to discuss this with @aquelemiguel and decide whether it makes more sense to keep clsx, tailwind-merge, and cva as peer dependencies — the original idea was to position them as standard tools to use alongside Lumen.

As for Radix, I think moving it to dependencies is fine, but keep in mind that some teams are using it internally and may be behind our current versions (which could result in two versions of the same package in their app).
But giving we dropping the usage anyways, it's fine.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chromatic This will run Chromatic on this PR publish-dev-package Publishes affected packages to the JFrog sandbox registry on each commit

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants