@nx/react 0.0.0-pr-31222-862e973 → 0.0.0-pr-31313-387cdca
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +1 -1
- package/generators.json +9 -13
- package/index.d.ts +1 -2
- package/index.js +2 -5
- package/mf/dynamic-federation.d.ts +64 -0
- package/mf/dynamic-federation.js +64 -0
- package/migrations.json +80 -148
- package/module-federation.d.ts +6 -4
- package/module-federation.js +16 -7
- package/package.json +11 -11
- package/plugins/bundle-rollup.js +4 -1
- package/plugins/component-testing/index.js +1 -1
- package/plugins/jest.js +6 -11
- package/plugins/nx-react-webpack-plugin/lib/apply-react-config.js +6 -22
- package/plugins/storybook/index.js +1 -2
- package/plugins/with-react.d.ts +4 -0
- package/router-plugin.d.ts +1 -0
- package/router-plugin.js +5 -0
- package/src/executors/module-federation-dev-server/lib/index.d.ts +2 -0
- package/src/executors/module-federation-dev-server/lib/index.js +5 -0
- package/src/executors/module-federation-dev-server/lib/normalize-options.d.ts +4 -0
- package/src/executors/module-federation-dev-server/lib/normalize-options.js +19 -0
- package/src/executors/module-federation-dev-server/lib/start-remotes.d.ts +5 -0
- package/src/executors/module-federation-dev-server/lib/start-remotes.js +33 -0
- package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.d.ts +1 -1
- package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.js +6 -110
- package/src/executors/module-federation-dev-server/schema.d.ts +9 -7
- package/src/executors/module-federation-dev-server/schema.json +15 -10
- package/src/executors/module-federation-ssr-dev-server/lib/index.d.ts +2 -0
- package/src/executors/module-federation-ssr-dev-server/lib/index.js +5 -0
- package/src/executors/module-federation-ssr-dev-server/lib/normalize-options.d.ts +4 -0
- package/src/executors/module-federation-ssr-dev-server/lib/normalize-options.js +23 -0
- package/src/executors/module-federation-ssr-dev-server/lib/start-remotes.d.ts +5 -0
- package/src/executors/module-federation-ssr-dev-server/lib/start-remotes.js +34 -0
- package/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.d.ts +1 -17
- package/src/executors/module-federation-ssr-dev-server/module-federation-ssr-dev-server.impl.js +5 -153
- package/src/executors/module-federation-ssr-dev-server/schema.d.ts +29 -0
- package/src/executors/module-federation-ssr-dev-server/schema.json +14 -9
- package/src/executors/module-federation-static-server/module-federation-static-server.impl.d.ts +2 -2
- package/src/executors/module-federation-static-server/module-federation-static-server.impl.js +11 -12
- package/src/executors/module-federation-static-server/schema.json +2 -1
- package/src/generators/application/application.d.ts +3 -3
- package/src/generators/application/application.js +108 -186
- package/src/generators/application/files/base-rsbuild/src/app/__fileName__.spec.tsx__tmpl__ +10 -0
- package/src/generators/application/files/base-rsbuild/src/assets/.gitkeep +0 -0
- package/src/generators/application/files/base-rsbuild/src/favicon.ico +0 -0
- package/src/generators/application/files/base-rsbuild/src/index.html +14 -0
- package/src/generators/application/files/base-rsbuild/src/main.tsx__tmpl__ +32 -0
- package/src/generators/application/files/base-rsbuild/tsconfig.app.json__tmpl__ +31 -0
- package/src/generators/application/files/base-rspack/rspack.config.js__tmpl__ +53 -0
- package/src/generators/application/files/base-rspack/src/app/__fileName__.spec.tsx__tmpl__ +3 -3
- package/src/generators/application/files/base-rspack/src/main.tsx__tmpl__ +27 -5
- package/src/generators/application/files/base-rspack/tsconfig.app.json__tmpl__ +21 -4
- package/src/generators/application/files/base-vite/src/app/__fileName__.spec.tsx__tmpl__ +3 -3
- package/src/generators/application/files/base-vite/src/main.tsx__tmpl__ +31 -6
- package/src/generators/application/files/base-vite/tsconfig.app.json__tmpl__ +20 -3
- package/src/generators/application/files/base-webpack/src/app/__fileName__.spec.tsx__tmpl__ +3 -3
- package/src/generators/application/files/base-webpack/src/main.tsx__tmpl__ +22 -2
- package/src/generators/application/files/base-webpack/tsconfig.app.json__tmpl__ +21 -4
- package/src/generators/application/files/base-webpack/webpack.config.js__tmpl__ +4 -4
- package/src/generators/application/files/react-router-ssr/common/app/app-nav.tsx__tmpl__ +14 -0
- package/src/generators/application/files/react-router-ssr/common/app/entry.client.tsx__tmpl__ +18 -0
- package/src/generators/application/files/react-router-ssr/common/app/entry.server.tsx__tmpl__ +74 -0
- package/src/generators/application/files/react-router-ssr/common/app/root.tsx__tmpl__ +51 -0
- package/src/generators/application/files/react-router-ssr/common/app/routes/about.tsx__tmpl__ +7 -0
- package/src/generators/application/files/react-router-ssr/common/app/routes.tsx__tmpl__ +6 -0
- package/src/generators/application/files/react-router-ssr/common/public/favicon.ico +0 -0
- package/src/generators/application/files/react-router-ssr/common/react-router.config.ts__tmpl__ +5 -0
- package/src/generators/application/files/react-router-ssr/common/tests/routes/_index.spec.tsx__tmpl__ +16 -0
- package/src/generators/application/files/react-router-ssr/common/tsconfig.app.json__tmpl__ +23 -0
- package/src/generators/application/files/react-router-ssr/common/tsconfig.json__tmpl__ +27 -0
- package/src/generators/application/files/react-router-ssr/non-root/.gitignore__tmpl__ +5 -0
- package/src/generators/application/files/react-router-ssr/non-root/package.json__tmpl__ +21 -0
- package/src/generators/application/files/react-router-ssr/nx-welcome/claimed/app/nx-welcome.tsx__tmpl__ +866 -0
- package/src/generators/application/files/react-router-ssr/nx-welcome/not-configured/app/nx-welcome.tsx__tmpl__ +866 -0
- package/src/generators/application/files/react-router-ssr/nx-welcome/unclaimed/app/nx-welcome.tsx__tmpl__ +864 -0
- package/src/generators/application/files/react-router-ssr/ts-solution/package.json__tmpl__ +21 -0
- package/src/generators/application/files/react-router-ssr/ts-solution/tsconfig.app.json__tmpl__ +39 -0
- package/src/generators/application/files/style-css-module/src/app/__fileName__.tsx__tmpl__ +28 -18
- package/src/generators/application/files/style-global-css/src/app/__fileName__.tsx__tmpl__ +29 -20
- package/src/generators/application/files/style-none/src/app/__fileName__.tsx__tmpl__ +26 -16
- package/src/generators/application/files/style-styled-jsx/src/app/__fileName__.tsx__tmpl__ +31 -22
- package/src/generators/application/files/style-styled-module/src/app/__fileName__.tsx__tmpl__ +30 -21
- package/src/generators/application/files/style-tailwind/src/app/__fileName__.tsx__tmpl__ +29 -19
- package/src/generators/application/lib/add-e2e.d.ts +1 -1
- package/src/generators/application/lib/add-e2e.js +74 -65
- package/src/generators/application/lib/add-jest.js +27 -2
- package/src/generators/application/lib/add-linting.d.ts +4 -0
- package/src/generators/application/lib/add-linting.js +86 -0
- package/src/generators/application/lib/add-project.js +112 -6
- package/src/generators/application/lib/add-routing.js +1 -1
- package/src/generators/application/lib/bundlers/add-rsbuild.d.ts +4 -0
- package/src/generators/application/lib/bundlers/add-rsbuild.js +63 -0
- package/src/generators/application/lib/bundlers/add-rspack.d.ts +4 -0
- package/src/generators/application/lib/bundlers/add-rspack.js +37 -0
- package/src/generators/application/lib/bundlers/add-vite.d.ts +4 -0
- package/src/generators/application/lib/bundlers/add-vite.js +76 -0
- package/src/generators/application/lib/bundlers/add-webpack.d.ts +3 -0
- package/src/generators/application/lib/bundlers/add-webpack.js +18 -0
- package/src/generators/application/lib/create-application-files.d.ts +61 -0
- package/src/generators/application/lib/create-application-files.js +102 -19
- package/src/generators/application/lib/get-app-tests.js +10 -11
- package/src/generators/application/lib/install-common-dependencies.d.ts +1 -1
- package/src/generators/application/lib/install-common-dependencies.js +18 -4
- package/src/generators/application/lib/normalize-options.d.ts +1 -3
- package/src/generators/application/lib/normalize-options.js +17 -19
- package/src/generators/application/lib/update-jest-config.js +5 -0
- package/src/generators/application/schema.d.ts +12 -6
- package/src/generators/application/schema.json +44 -42
- package/src/generators/component/component.d.ts +0 -1
- package/src/generators/component/component.js +19 -37
- package/src/generators/component/files/__fileName__.__ext__ +83 -0
- package/src/generators/component/lib/normalize-options.js +13 -15
- package/src/generators/component/schema.d.ts +13 -25
- package/src/generators/component/schema.json +13 -49
- package/src/generators/component-story/component-story.js +1 -2
- package/src/generators/component-story/files/jsx/__componentFileName__.stories.jsx__tmpl__ +5 -5
- package/src/generators/component-story/files/tsx/__componentFileName__.stories.tsx__tmpl__ +3 -4
- package/src/generators/component-test/component-test.js +1 -1
- package/src/generators/cypress-component-configuration/cypress-component-configuration.js +0 -2
- package/src/generators/cypress-component-configuration/lib/add-files.d.ts +1 -1
- package/src/generators/cypress-component-configuration/lib/add-files.js +7 -4
- package/src/generators/federate-module/federate-module.js +12 -22
- package/src/generators/federate-module/schema.d.ts +0 -1
- package/src/generators/federate-module/schema.json +13 -12
- package/src/generators/hook/files/{__fileName__.ts__tmpl__ → __fileName__.__ext__} +3 -1
- package/src/generators/hook/hook.d.ts +0 -1
- package/src/generators/hook/hook.js +35 -83
- package/src/generators/hook/schema.d.ts +4 -17
- package/src/generators/hook/schema.json +19 -46
- package/src/generators/host/files/common/src/app/__fileName__.js__tmpl__ +28 -21
- package/src/generators/host/files/common/src/main.js__tmpl__ +12 -9
- package/src/generators/host/files/common-ts/src/app/__fileName__.tsx__tmpl__ +28 -28
- package/src/generators/host/files/common-ts/src/main.ts__tmpl__ +12 -9
- package/src/generators/host/files/rspack-common/src/app/__fileName__.jsx__tmpl__ +22 -13
- package/src/generators/host/files/rspack-common/src/main.jsx__tmpl__ +12 -9
- package/src/generators/host/files/rspack-module-federation/module-federation.config.js__tmpl__ +8 -5
- package/src/generators/host/files/rspack-module-federation/rspack.config.js__tmpl__ +37 -13
- package/src/generators/host/files/rspack-module-federation/rspack.config.prod.js__tmpl__ +60 -30
- package/src/generators/host/files/rspack-module-federation-ssr/module-federation.server.config.js__tmpl__ +16 -5
- package/src/generators/host/files/rspack-module-federation-ssr/rspack.config.js__tmpl__ +66 -0
- package/src/generators/host/files/rspack-module-federation-ssr/server.ts__tmpl__ +1 -1
- package/src/generators/host/files/rspack-module-federation-ssr/src/main.server.tsx__tmpl__ +49 -0
- package/src/generators/host/files/rspack-module-federation-ssr-ts/module-federation.server.config.ts__tmpl__ +16 -7
- package/src/generators/host/files/rspack-module-federation-ssr-ts/rspack.config.ts__tmpl__ +66 -0
- package/src/generators/host/files/rspack-module-federation-ssr-ts/server.ts__tmpl__ +1 -1
- package/src/generators/host/files/rspack-module-federation-ssr-ts/src/main.server.tsx__tmpl__ +49 -0
- package/src/generators/host/files/rspack-module-federation-ts/module-federation.config.ts__tmpl__ +22 -19
- package/src/generators/host/files/rspack-module-federation-ts/rspack.config.prod.ts__tmpl__ +61 -30
- package/src/generators/host/files/rspack-module-federation-ts/rspack.config.ts__tmpl__ +37 -13
- package/src/generators/host/files/webpack-module-federation/module-federation.config.js__tmpl__ +8 -5
- package/src/generators/host/files/webpack-module-federation/webpack.config.js__tmpl__ +1 -1
- package/src/generators/host/files/webpack-module-federation/webpack.config.prod.js__tmpl__ +24 -22
- package/src/generators/host/files/webpack-module-federation-ssr/module-federation.server.config.js__tmpl__ +10 -7
- package/src/generators/host/files/webpack-module-federation-ssr/webpack.server.config.js__tmpl__ +2 -2
- package/src/generators/host/files/webpack-module-federation-ssr-ts/module-federation.server.config.ts__tmpl__ +10 -7
- package/src/generators/host/files/webpack-module-federation-ssr-ts/webpack.server.config.ts__tmpl__ +2 -2
- package/src/generators/host/files/webpack-module-federation-ts/module-federation.config.ts__tmpl__ +22 -19
- package/src/generators/host/files/webpack-module-federation-ts/webpack.config.prod.ts__tmpl__ +25 -23
- package/src/generators/host/files/webpack-module-federation-ts/webpack.config.ts__tmpl__ +4 -3
- package/src/generators/host/host.d.ts +0 -1
- package/src/generators/host/host.js +31 -27
- package/src/generators/host/lib/add-module-federation-files.js +29 -13
- package/src/generators/host/lib/normalize-host-name.d.ts +2 -0
- package/src/generators/host/lib/normalize-host-name.js +12 -0
- package/src/generators/host/lib/normalize-remote.js +10 -6
- package/src/generators/host/lib/setup-ssr-for-host.d.ts +3 -3
- package/src/generators/host/lib/setup-ssr-for-host.js +46 -22
- package/src/generators/host/lib/update-module-federation-tsconfig.d.ts +3 -0
- package/src/generators/host/lib/update-module-federation-tsconfig.js +39 -0
- package/src/generators/host/schema.d.ts +2 -5
- package/src/generators/host/schema.json +16 -27
- package/src/generators/init/init.d.ts +1 -1
- package/src/generators/init/init.js +31 -6
- package/src/generators/init/schema.d.ts +2 -0
- package/src/generators/library/files/common/tsconfig.lib.json__tmpl__ +1 -1
- package/src/generators/library/files/vite/tsconfig.lib.json__tmpl__ +1 -1
- package/src/generators/library/lib/add-linting.js +1 -1
- package/src/generators/library/lib/add-rollup-build-target.d.ts +3 -1
- package/src/generators/library/lib/add-rollup-build-target.js +34 -32
- package/src/generators/library/lib/create-files.d.ts +1 -1
- package/src/generators/library/lib/create-files.js +23 -2
- package/src/generators/library/lib/determine-entry-fields.d.ts +3 -0
- package/src/generators/library/lib/determine-entry-fields.js +22 -0
- package/src/generators/library/lib/install-common-dependencies.d.ts +1 -1
- package/src/generators/library/lib/install-common-dependencies.js +5 -3
- package/src/generators/library/lib/normalize-options.js +11 -6
- package/src/generators/library/library.js +80 -35
- package/src/generators/library/schema.d.ts +5 -5
- package/src/generators/library/schema.json +38 -36
- package/src/generators/redux/files/js/__fileName__.__ext__ +114 -0
- package/src/generators/redux/files/{__fileName__.slice.spec.ts__tmpl__ → js/__fileName__.spec.__ext__} +1 -1
- package/src/generators/redux/files/ts/__fileName__.spec.__ext__ +56 -0
- package/src/generators/redux/redux.d.ts +0 -1
- package/src/generators/redux/redux.js +27 -36
- package/src/generators/redux/schema.d.ts +12 -8
- package/src/generators/redux/schema.json +21 -23
- package/src/generators/remote/files/rspack-module-federation/module-federation.config.js__tmpl__ +10 -7
- package/src/generators/remote/files/rspack-module-federation/rspack.config.js__tmpl__ +40 -13
- package/src/generators/remote/files/rspack-module-federation-ssr/module-federation.server.config.js__tmpl__ +13 -4
- package/src/generators/remote/files/rspack-module-federation-ssr/rspack.config.js__tmpl__ +69 -0
- package/src/generators/remote/files/rspack-module-federation-ssr/server.ts__tmpl__ +2 -2
- package/src/generators/remote/files/rspack-module-federation-ssr/src/main.server.tsx__tmpl__ +45 -0
- package/src/generators/remote/files/rspack-module-federation-ssr-ts/module-federation.server.config.ts__tmpl__ +13 -4
- package/src/generators/remote/files/rspack-module-federation-ssr-ts/rspack.config.ts__tmpl__ +69 -0
- package/src/generators/remote/files/rspack-module-federation-ssr-ts/server.ts__tmpl__ +2 -2
- package/src/generators/remote/files/rspack-module-federation-ssr-ts/src/main.server.tsx__tmpl__ +45 -0
- package/src/generators/remote/files/rspack-module-federation-ts/module-federation.config.ts__tmpl__ +11 -8
- package/src/generators/remote/files/rspack-module-federation-ts/rspack.config.ts__tmpl__ +40 -13
- package/src/generators/remote/files/webpack-module-federation/module-federation.config.js__tmpl__ +10 -7
- package/src/generators/remote/files/webpack-module-federation/webpack.config.js__tmpl__ +1 -1
- package/src/generators/remote/files/webpack-module-federation-ssr/module-federation.server.config.js__tmpl__ +7 -4
- package/src/generators/remote/files/webpack-module-federation-ssr/webpack.server.config.js__tmpl__ +2 -2
- package/src/generators/remote/files/webpack-module-federation-ssr-ts/module-federation.server.config.ts__tmpl__ +8 -5
- package/src/generators/remote/files/webpack-module-federation-ssr-ts/webpack.server.config.ts__tmpl__ +2 -2
- package/src/generators/remote/files/webpack-module-federation-ts/module-federation.config.ts__tmpl__ +11 -8
- package/src/generators/remote/files/webpack-module-federation-ts/webpack.config.ts__tmpl__ +2 -2
- package/src/generators/remote/lib/setup-ssr-for-remote.d.ts +1 -1
- package/src/generators/remote/lib/setup-ssr-for-remote.js +37 -15
- package/src/generators/remote/lib/setup-tspath-for-remote.js +1 -3
- package/src/generators/remote/lib/update-host-with-remote.js +2 -2
- package/src/generators/remote/remote.d.ts +0 -1
- package/src/generators/remote/remote.js +57 -33
- package/src/generators/remote/schema.d.ts +2 -5
- package/src/generators/remote/schema.json +16 -27
- package/src/generators/setup-tailwind/lib/update-project.js +1 -2
- package/src/generators/stories/schema.json +0 -10
- package/src/generators/stories/stories.d.ts +1 -3
- package/src/generators/stories/stories.js +9 -20
- package/src/generators/storybook-configuration/configuration.js +2 -11
- package/src/generators/storybook-configuration/schema.d.ts +0 -3
- package/src/generators/storybook-configuration/schema.json +0 -15
- package/src/migrations/update-18-0-0/add-mf-env-var-to-target-defaults.js +11 -6
- package/src/migrations/update-20-2-0/migrate-mf-imports-to-new-package.d.ts +2 -0
- package/src/migrations/update-20-2-0/migrate-mf-imports-to-new-package.js +66 -0
- package/src/migrations/update-20-2-0/migrate-with-mf-import-to-new-package.d.ts +2 -0
- package/src/migrations/update-20-2-0/migrate-with-mf-import-to-new-package.js +41 -0
- package/src/migrations/update-20-3-0/ensure-nx-module-federation-package.d.ts +2 -0
- package/src/migrations/update-20-3-0/ensure-nx-module-federation-package.js +18 -0
- package/src/migrations/update-21-0-0/update-babel-loose.d.ts +2 -0
- package/src/migrations/update-21-0-0/update-babel-loose.js +30 -0
- package/src/plugins/router-plugin.d.ts +10 -0
- package/src/plugins/router-plugin.js +221 -0
- package/src/rules/update-module-federation-project.d.ts +2 -1
- package/src/rules/update-module-federation-project.js +37 -48
- package/src/utils/add-mf-env-to-inputs.d.ts +1 -1
- package/src/utils/add-mf-env-to-inputs.js +8 -11
- package/src/utils/assertion.d.ts +2 -0
- package/src/utils/assertion.js +6 -0
- package/src/utils/ast-utils.d.ts +1 -1
- package/src/utils/ast-utils.js +2 -2
- package/src/utils/create-ts-config.js +57 -7
- package/src/utils/ct-utils.d.ts +1 -1
- package/src/utils/ct-utils.js +2 -7
- package/src/utils/has-rsbuild-plugin.d.ts +2 -0
- package/src/utils/has-rsbuild-plugin.js +10 -0
- package/src/utils/has-rspack-plugin.d.ts +2 -0
- package/src/utils/has-rspack-plugin.js +10 -0
- package/src/utils/testing-generators.js +2 -4
- package/src/utils/version-utils.d.ts +14 -0
- package/src/utils/version-utils.js +56 -0
- package/src/utils/versions.d.ts +25 -17
- package/src/utils/versions.js +28 -19
- package/src/generators/component/files/__fileName__.tsx__tmpl__ +0 -84
- package/src/generators/component-cypress-spec/component-cypress-spec.d.ts +0 -13
- package/src/generators/component-cypress-spec/component-cypress-spec.js +0 -104
- package/src/generators/component-cypress-spec/files/__componentName__.__fileExt__ +0 -13
- package/src/generators/component-cypress-spec/schema.json +0 -45
- package/src/generators/host/files/rspack-module-federation-ssr/rspack.server.config.js__tmpl__ +0 -16
- package/src/generators/host/files/rspack-module-federation-ssr-ts/rspack.server.config.ts__tmpl__ +0 -16
- package/src/generators/library/files/common/package.json__tmpl__ +0 -4
- package/src/generators/library/files/vite/package.json__tmpl__ +0 -12
- package/src/generators/remote/files/rspack-module-federation-ssr/rspack.server.config.js__tmpl__ +0 -16
- package/src/generators/remote/files/rspack-module-federation-ssr-ts/rspack.server.config.ts__tmpl__ +0 -16
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +0 -2
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +0 -9
- package/src/migrations/update-16-2-0-remove-package/update-16-2-0-remove-package.d.ts +0 -2
- package/src/migrations/update-16-2-0-remove-package/update-16-2-0-remove-package.js +0 -8
- package/src/migrations/update-16-3-0/remove-types-react-router-dom-package.d.ts +0 -2
- package/src/migrations/update-16-3-0/remove-types-react-router-dom-package.js +0 -8
- package/src/migrations/update-16-7-0/add-babel-core.d.ts +0 -2
- package/src/migrations/update-16-7-0/add-babel-core.js +0 -14
- package/src/migrations/update-16-7-0-add-typings/update-16-7-0-add-typings.d.ts +0 -2
- package/src/migrations/update-16-7-0-add-typings/update-16-7-0-add-typings.js +0 -57
- package/src/migrations/update-18-1-1/fix-target-defaults-inputs.d.ts +0 -2
- package/src/migrations/update-18-1-1/fix-target-defaults-inputs.js +0 -53
- package/src/module-federation/load-config.d.ts +0 -3
- package/src/module-federation/load-config.js +0 -15
- package/src/module-federation/models.d.ts +0 -24
- package/src/module-federation/models.js +0 -2
- package/src/module-federation/package-json.d.ts +0 -8
- package/src/module-federation/package-json.js +0 -12
- package/src/module-federation/utils.d.ts +0 -12
- package/src/module-federation/utils.js +0 -75
- package/src/module-federation/with-module-federation-ssr.d.ts +0 -2
- package/src/module-federation/with-module-federation-ssr.js +0 -50
- package/src/module-federation/with-module-federation.d.ts +0 -7
- package/src/module-federation/with-module-federation.js +0 -63
- package/src/utils/build-static.remotes.d.ts +0 -4
- package/src/utils/build-static.remotes.js +0 -65
- package/src/utils/format-file.d.ts +0 -1
- package/src/utils/format-file.js +0 -11
- /package/src/generators/component/files/{__fileName__.spec.tsx__tmpl__ → __fileName__.spec.__ext__} +0 -0
- /package/src/generators/hook/files/{__fileName__.spec.tsx__tmpl__ → __fileName__.spec.__specExt__} +0 -0
- /package/src/generators/redux/files/{__fileName__.slice.ts__tmpl__ → ts/__fileName__.__ext__} +0 -0
|
@@ -3,43 +3,24 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateModuleFederationProject = updateModuleFederationProject;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const maybe_js_1 = require("../utils/maybe-js");
|
|
6
|
-
|
|
6
|
+
const ts_solution_setup_1 = require("@nx/js/src/utils/typescript/ts-solution-setup");
|
|
7
|
+
function updateModuleFederationProject(host, options, isHost = false) {
|
|
7
8
|
const projectConfig = (0, devkit_1.readProjectConfiguration)(host, options.projectName);
|
|
8
|
-
if (options.bundler
|
|
9
|
-
projectConfig.targets.build.executor = '@nx/rspack:rspack';
|
|
9
|
+
if (options.bundler !== 'rspack') {
|
|
10
10
|
projectConfig.targets.build.options = {
|
|
11
|
-
...projectConfig.targets.build.options,
|
|
12
|
-
main: (0, maybe_js_1.maybeJs)({ js: options.js, useJsx: true }, `${options.appProjectRoot}/src/main.ts`),
|
|
13
|
-
rspackConfig: `${options.appProjectRoot}/rspack.config.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`,
|
|
14
|
-
target: 'web',
|
|
15
|
-
};
|
|
16
|
-
projectConfig.targets.build.configurations.production = {
|
|
17
|
-
...projectConfig.targets.build.configurations.production,
|
|
18
|
-
rspackConfig: `${options.appProjectRoot}/rspack.config.prod.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`,
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
projectConfig.targets.build.options = {
|
|
23
|
-
...projectConfig.targets.build.options,
|
|
11
|
+
...(projectConfig.targets.build.options ?? {}),
|
|
24
12
|
main: (0, maybe_js_1.maybeJs)(options, `${options.appProjectRoot}/src/main.ts`),
|
|
25
13
|
webpackConfig: `${options.appProjectRoot}/webpack.config.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`,
|
|
26
14
|
};
|
|
15
|
+
projectConfig.targets.build.configurations ??= {};
|
|
27
16
|
projectConfig.targets.build.configurations.production = {
|
|
28
|
-
...projectConfig.targets.build.configurations
|
|
17
|
+
...(projectConfig.targets.build.configurations?.production ?? {}),
|
|
29
18
|
webpackConfig: `${options.appProjectRoot}/webpack.config.prod.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`,
|
|
30
19
|
};
|
|
31
20
|
}
|
|
32
21
|
// If host should be configured to use dynamic federation
|
|
33
22
|
if (options.dynamic) {
|
|
34
|
-
if (options.bundler
|
|
35
|
-
const pathToProdRspackConfig = (0, devkit_1.joinPathFragments)(projectConfig.root, `rspack.prod.config.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`);
|
|
36
|
-
if (host.exists(pathToProdRspackConfig)) {
|
|
37
|
-
host.delete(pathToProdRspackConfig);
|
|
38
|
-
}
|
|
39
|
-
delete projectConfig.targets.build.configurations.production
|
|
40
|
-
?.rspackConfig;
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
23
|
+
if (options.bundler !== 'rspack') {
|
|
43
24
|
const pathToProdWebpackConfig = (0, devkit_1.joinPathFragments)(projectConfig.root, `webpack.prod.config.${options.typescriptConfiguration && !options.js ? 'ts' : 'js'}`);
|
|
44
25
|
if (host.exists(pathToProdWebpackConfig)) {
|
|
45
26
|
host.delete(pathToProdWebpackConfig);
|
|
@@ -48,33 +29,41 @@ function updateModuleFederationProject(host, options) {
|
|
|
48
29
|
?.webpackConfig;
|
|
49
30
|
}
|
|
50
31
|
}
|
|
51
|
-
if (options.bundler
|
|
52
|
-
projectConfig.targets.serve.executor =
|
|
53
|
-
'@nx/rspack:module-federation-dev-server';
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
32
|
+
if (options.bundler !== 'rspack') {
|
|
56
33
|
projectConfig.targets.serve.executor =
|
|
57
34
|
'@nx/react:module-federation-dev-server';
|
|
58
35
|
}
|
|
59
|
-
projectConfig.targets.serve
|
|
36
|
+
projectConfig.targets.serve ??= {};
|
|
37
|
+
projectConfig.targets.serve.options ??= {};
|
|
38
|
+
projectConfig.targets.serve.options.port =
|
|
39
|
+
options.bundler === 'rspack' && options.ssr && isHost
|
|
40
|
+
? 4000
|
|
41
|
+
: options.devServerPort;
|
|
60
42
|
// `serve-static` for remotes that don't need to be in development mode
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
serveTarget: `${options.projectName}:serve`,
|
|
69
|
-
},
|
|
70
|
-
configurations: {
|
|
71
|
-
development: {
|
|
72
|
-
serveTarget: `${options.projectName}:serve:development`,
|
|
43
|
+
if (options.bundler !== 'rspack') {
|
|
44
|
+
const serveStaticExecutor = '@nx/react:module-federation-static-server';
|
|
45
|
+
projectConfig.targets['serve-static'] = {
|
|
46
|
+
executor: serveStaticExecutor,
|
|
47
|
+
defaultConfiguration: 'production',
|
|
48
|
+
options: {
|
|
49
|
+
serveTarget: `${options.projectName}:serve`,
|
|
73
50
|
},
|
|
74
|
-
|
|
75
|
-
|
|
51
|
+
configurations: {
|
|
52
|
+
development: {
|
|
53
|
+
serveTarget: `${options.projectName}:serve:development`,
|
|
54
|
+
},
|
|
55
|
+
production: {
|
|
56
|
+
serveTarget: `${options.projectName}:serve:production`,
|
|
57
|
+
},
|
|
76
58
|
},
|
|
77
|
-
}
|
|
78
|
-
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
// Typechecks must be performed first before build and serve to generate remote d.ts files.
|
|
62
|
+
if ((0, ts_solution_setup_1.isUsingTsSolutionSetup)(host)) {
|
|
63
|
+
projectConfig.targets.build ??= {};
|
|
64
|
+
projectConfig.targets.serve ??= {};
|
|
65
|
+
projectConfig.targets.build.dependsOn = ['^build', 'typecheck'];
|
|
66
|
+
projectConfig.targets.serve.dependsOn = ['typecheck'];
|
|
67
|
+
}
|
|
79
68
|
(0, devkit_1.updateProjectConfiguration)(host, options.projectName, projectConfig);
|
|
80
69
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type Tree } from '@nx/devkit';
|
|
2
|
-
export declare function addMfEnvToTargetDefaultInputs(tree: Tree): void;
|
|
2
|
+
export declare function addMfEnvToTargetDefaultInputs(tree: Tree, bundler: 'rspack' | 'webpack'): void;
|
|
@@ -2,27 +2,24 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.addMfEnvToTargetDefaultInputs = addMfEnvToTargetDefaultInputs;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
|
-
function addMfEnvToTargetDefaultInputs(tree) {
|
|
5
|
+
function addMfEnvToTargetDefaultInputs(tree, bundler) {
|
|
6
6
|
const nxJson = (0, devkit_1.readNxJson)(tree);
|
|
7
|
-
const
|
|
7
|
+
const executor = bundler === 'rspack' ? '@nx/rspack:rspack' : '@nx/webpack:webpack';
|
|
8
8
|
const mfEnvVar = 'NX_MF_DEV_REMOTES';
|
|
9
9
|
nxJson.targetDefaults ??= {};
|
|
10
|
-
nxJson.targetDefaults[
|
|
11
|
-
nxJson.targetDefaults[
|
|
12
|
-
|
|
13
|
-
'^production',
|
|
14
|
-
];
|
|
15
|
-
nxJson.targetDefaults[webpackExecutor].dependsOn ??= ['^build'];
|
|
10
|
+
nxJson.targetDefaults[executor] ??= {};
|
|
11
|
+
nxJson.targetDefaults[executor].inputs ??= ['production', '^production'];
|
|
12
|
+
nxJson.targetDefaults[executor].dependsOn ??= ['^build'];
|
|
16
13
|
let mfEnvVarExists = false;
|
|
17
|
-
for (const input of nxJson.targetDefaults[
|
|
14
|
+
for (const input of nxJson.targetDefaults[executor].inputs) {
|
|
18
15
|
if (typeof input === 'object' && input['env'] === mfEnvVar) {
|
|
19
16
|
mfEnvVarExists = true;
|
|
20
17
|
break;
|
|
21
18
|
}
|
|
22
19
|
}
|
|
23
20
|
if (!mfEnvVarExists) {
|
|
24
|
-
nxJson.targetDefaults[
|
|
21
|
+
nxJson.targetDefaults[executor].inputs.push({ env: mfEnvVar });
|
|
25
22
|
}
|
|
26
|
-
nxJson.targetDefaults[
|
|
23
|
+
nxJson.targetDefaults[executor].cache = true;
|
|
27
24
|
(0, devkit_1.updateNxJson)(tree, nxJson);
|
|
28
25
|
}
|
package/src/utils/assertion.d.ts
CHANGED
package/src/utils/assertion.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.assertValidStyle = assertValidStyle;
|
|
4
|
+
exports.assertValidReactRouter = assertValidReactRouter;
|
|
4
5
|
const VALID_STYLES = [
|
|
5
6
|
'css',
|
|
6
7
|
'scss',
|
|
@@ -16,3 +17,8 @@ function assertValidStyle(style) {
|
|
|
16
17
|
throw new Error(`Unsupported style option found: ${style}. Valid values are: "${VALID_STYLES.join('", "')}"`);
|
|
17
18
|
}
|
|
18
19
|
}
|
|
20
|
+
function assertValidReactRouter(reactRouter, bundler) {
|
|
21
|
+
if (reactRouter && bundler !== 'vite') {
|
|
22
|
+
throw new Error(`Unsupported bundler found: ${bundler}. React Router is only supported with 'vite'.`);
|
|
23
|
+
}
|
|
24
|
+
}
|
package/src/utils/ast-utils.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare function findComponentImportPath(componentName: string, source: t
|
|
|
11
11
|
export declare function findElements(source: ts.SourceFile, tagName: string): ts.Node[];
|
|
12
12
|
export declare function findClosestOpening(tagName: string, node: ts.Node): ts.Node;
|
|
13
13
|
export declare function isTag(tagName: string, node: ts.Node): boolean;
|
|
14
|
-
export declare function addInitialRoutes(sourcePath: string, source: ts.SourceFile): StringChange[];
|
|
14
|
+
export declare function addInitialRoutes(sourcePath: string, source: ts.SourceFile, addBrowserRouter?: boolean): StringChange[];
|
|
15
15
|
export declare function addRoute(sourcePath: string, source: ts.SourceFile, options: {
|
|
16
16
|
routePath: string;
|
|
17
17
|
componentName: string;
|
package/src/utils/ast-utils.js
CHANGED
|
@@ -234,7 +234,7 @@ function isTag(tagName, node) {
|
|
|
234
234
|
}
|
|
235
235
|
return false;
|
|
236
236
|
}
|
|
237
|
-
function addInitialRoutes(sourcePath, source) {
|
|
237
|
+
function addInitialRoutes(sourcePath, source, addBrowserRouter) {
|
|
238
238
|
if (!tsModule) {
|
|
239
239
|
tsModule = (0, ensure_typescript_1.ensureTypescript)();
|
|
240
240
|
}
|
|
@@ -281,7 +281,7 @@ function addInitialRoutes(sourcePath, source) {
|
|
|
281
281
|
`,
|
|
282
282
|
};
|
|
283
283
|
return [
|
|
284
|
-
...addImport(source, `import { Route, Routes, Link } from 'react-router-dom';`),
|
|
284
|
+
...addImport(source, `import { Route, Routes, Link ${addBrowserRouter ? ', BrowserRouter ' : ''}} from 'react-router-dom';`),
|
|
285
285
|
insertRoutes,
|
|
286
286
|
];
|
|
287
287
|
}
|
|
@@ -4,7 +4,64 @@ exports.createTsConfig = createTsConfig;
|
|
|
4
4
|
exports.extractTsConfigBase = extractTsConfigBase;
|
|
5
5
|
const shared = require("@nx/js/src/utils/typescript/create-ts-config");
|
|
6
6
|
const json_1 = require("nx/src/generators/utils/json");
|
|
7
|
+
const ts_solution_setup_1 = require("@nx/js/src/utils/typescript/ts-solution-setup");
|
|
7
8
|
function createTsConfig(host, projectRoot, type, options, relativePathToRootTsConfig) {
|
|
9
|
+
if ((0, ts_solution_setup_1.isUsingTsSolutionSetup)(host)) {
|
|
10
|
+
createTsConfigForTsSolution(host, projectRoot, type, options, relativePathToRootTsConfig);
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
createTsConfigForNonTsSolution(host, projectRoot, type, options, relativePathToRootTsConfig);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function extractTsConfigBase(host) {
|
|
17
|
+
shared.extractTsConfigBase(host);
|
|
18
|
+
if (host.exists('vite.config.ts')) {
|
|
19
|
+
const vite = host.read('vite.config.ts').toString();
|
|
20
|
+
host.write('vite.config.ts', vite.replace(`projects: []`, `projects: ['tsconfig.base.json']`));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function createTsConfigForTsSolution(host, projectRoot, type, options, relativePathToRootTsConfig) {
|
|
24
|
+
const json = {
|
|
25
|
+
files: [],
|
|
26
|
+
include: [],
|
|
27
|
+
references: [
|
|
28
|
+
{
|
|
29
|
+
path: type === 'app' ? './tsconfig.app.json' : './tsconfig.lib.json',
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
};
|
|
33
|
+
// inline tsconfig.base.json into the project
|
|
34
|
+
if (options.rootProject) {
|
|
35
|
+
json.compileOnSave = false;
|
|
36
|
+
json.compilerOptions = {
|
|
37
|
+
...shared.tsConfigBaseOptions,
|
|
38
|
+
...json.compilerOptions,
|
|
39
|
+
};
|
|
40
|
+
json.exclude = ['node_modules', 'tmp'];
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
json.extends = relativePathToRootTsConfig;
|
|
44
|
+
}
|
|
45
|
+
(0, json_1.writeJson)(host, `${projectRoot}/tsconfig.json`, json);
|
|
46
|
+
const tsconfigProjectPath = `${projectRoot}/tsconfig.${type}.json`;
|
|
47
|
+
if (host.exists(tsconfigProjectPath)) {
|
|
48
|
+
(0, json_1.updateJson)(host, tsconfigProjectPath, (json) => {
|
|
49
|
+
if (options.bundler === 'vite') {
|
|
50
|
+
json.compilerOptions ??= {};
|
|
51
|
+
const types = new Set(json.compilerOptions.types ?? []);
|
|
52
|
+
types.add('node');
|
|
53
|
+
types.add('vite/client');
|
|
54
|
+
json.compilerOptions.types = Array.from(types);
|
|
55
|
+
}
|
|
56
|
+
if (options.style === '@emotion/styled') {
|
|
57
|
+
json.compilerOptions ??= {};
|
|
58
|
+
json.compilerOptions.jsxImportSource = '@emotion/react';
|
|
59
|
+
}
|
|
60
|
+
return json;
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function createTsConfigForNonTsSolution(host, projectRoot, type, options, relativePathToRootTsConfig) {
|
|
8
65
|
const json = {
|
|
9
66
|
compilerOptions: {
|
|
10
67
|
jsx: 'react-jsx',
|
|
@@ -55,10 +112,3 @@ function createTsConfig(host, projectRoot, type, options, relativePathToRootTsCo
|
|
|
55
112
|
});
|
|
56
113
|
}
|
|
57
114
|
}
|
|
58
|
-
function extractTsConfigBase(host) {
|
|
59
|
-
shared.extractTsConfigBase(host);
|
|
60
|
-
if (host.exists('vite.config.ts')) {
|
|
61
|
-
const vite = host.read('vite.config.ts').toString();
|
|
62
|
-
host.write('vite.config.ts', vite.replace(`projects: []`, `projects: ['tsconfig.base.json']`));
|
|
63
|
-
}
|
|
64
|
-
}
|
package/src/utils/ct-utils.d.ts
CHANGED
|
@@ -10,5 +10,5 @@ export declare function getBundlerFromTarget(found: FoundTarget, tree: Tree): Pr
|
|
|
10
10
|
export declare function getActualBundler(tree: Tree, options: {
|
|
11
11
|
buildTarget?: string;
|
|
12
12
|
bundler?: 'vite' | 'webpack';
|
|
13
|
-
}, found: FoundTarget): Promise<"
|
|
13
|
+
}, found: FoundTarget): Promise<"webpack" | "vite">;
|
|
14
14
|
export declare function isComponent(tree: Tree, filePath: string): boolean;
|
package/src/utils/ct-utils.js
CHANGED
|
@@ -60,17 +60,12 @@ function assertValidConfig(config) {
|
|
|
60
60
|
}
|
|
61
61
|
async function getBundlerFromTarget(found, tree) {
|
|
62
62
|
if (found.target && found.config?.executor) {
|
|
63
|
-
return found.config.executor === '@
|
|
64
|
-
found.config.executor === '@nx/vite:build'
|
|
65
|
-
? 'vite'
|
|
66
|
-
: 'webpack';
|
|
63
|
+
return found.config.executor === '@nx/vite:build' ? 'vite' : 'webpack';
|
|
67
64
|
}
|
|
68
65
|
const { target, project } = (0, devkit_1.parseTargetString)(found.target, await (0, devkit_1.createProjectGraphAsync)());
|
|
69
66
|
const projectConfig = (0, devkit_1.readProjectConfiguration)(tree, project);
|
|
70
67
|
const executor = projectConfig?.targets?.[target]?.executor;
|
|
71
|
-
return executor === '@
|
|
72
|
-
? 'vite'
|
|
73
|
-
: 'webpack';
|
|
68
|
+
return executor === '@nx/vite:build' ? 'vite' : 'webpack';
|
|
74
69
|
}
|
|
75
70
|
async function getActualBundler(tree, options, found) {
|
|
76
71
|
// Specifically undefined to allow Remix workaround of passing an empty string
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasRsbuildPlugin = hasRsbuildPlugin;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const versions_1 = require("./versions");
|
|
6
|
+
async function hasRsbuildPlugin(tree, projectPath) {
|
|
7
|
+
(0, devkit_1.ensurePackage)('@nx/rsbuild', versions_1.nxVersion);
|
|
8
|
+
const { hasRsbuildPlugin } = await Promise.resolve().then(() => require('@nx/rsbuild/config-utils'));
|
|
9
|
+
return hasRsbuildPlugin(tree, projectPath);
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasRspackPlugin = hasRspackPlugin;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
function hasRspackPlugin(tree) {
|
|
6
|
+
const nxJson = (0, devkit_1.readNxJson)(tree);
|
|
7
|
+
return !!nxJson.plugins?.some((p) => typeof p === 'string'
|
|
8
|
+
? p === '@nx/rspack/plugin'
|
|
9
|
+
: p.plugin === '@nx/rspack/plugin');
|
|
10
|
+
}
|
|
@@ -4,16 +4,14 @@ exports.createApp = createApp;
|
|
|
4
4
|
exports.createLib = createLib;
|
|
5
5
|
const devkit_1 = require("@nx/devkit");
|
|
6
6
|
const application_1 = require("../generators/application/application");
|
|
7
|
-
const eslint_1 = require("@nx/eslint");
|
|
8
7
|
async function createApp(tree, appName) {
|
|
9
8
|
await (0, application_1.default)(tree, {
|
|
10
9
|
e2eTestRunner: 'none',
|
|
11
|
-
linter:
|
|
10
|
+
linter: 'eslint',
|
|
12
11
|
skipFormat: true,
|
|
13
12
|
style: 'css',
|
|
14
13
|
unitTestRunner: 'none',
|
|
15
|
-
|
|
16
|
-
projectNameAndRootFormat: 'as-provided',
|
|
14
|
+
directory: appName,
|
|
17
15
|
});
|
|
18
16
|
}
|
|
19
17
|
async function createLib(tree, libName) {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Tree } from '@nx/devkit';
|
|
2
|
+
type ReactDependenciesVersions = {
|
|
3
|
+
react: string;
|
|
4
|
+
'react-dom': string;
|
|
5
|
+
'react-is': string;
|
|
6
|
+
'@types/react': string;
|
|
7
|
+
'@types/react-dom': string;
|
|
8
|
+
'@types/react-is': string;
|
|
9
|
+
};
|
|
10
|
+
export declare function getReactDependenciesVersionsToInstall(tree: Tree): Promise<ReactDependenciesVersions>;
|
|
11
|
+
export declare function isReact18(tree: Tree): Promise<boolean>;
|
|
12
|
+
export declare function getInstalledReactVersion(tree: Tree): string;
|
|
13
|
+
export declare function getInstalledReactVersionFromGraph(): Promise<string>;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getReactDependenciesVersionsToInstall = getReactDependenciesVersionsToInstall;
|
|
4
|
+
exports.isReact18 = isReact18;
|
|
5
|
+
exports.getInstalledReactVersion = getInstalledReactVersion;
|
|
6
|
+
exports.getInstalledReactVersionFromGraph = getInstalledReactVersionFromGraph;
|
|
7
|
+
const devkit_1 = require("@nx/devkit");
|
|
8
|
+
const semver_1 = require("semver");
|
|
9
|
+
const versions_1 = require("./versions");
|
|
10
|
+
async function getReactDependenciesVersionsToInstall(tree) {
|
|
11
|
+
if (await isReact18(tree)) {
|
|
12
|
+
return {
|
|
13
|
+
react: versions_1.reactV18Version,
|
|
14
|
+
'react-dom': versions_1.reactDomV18Version,
|
|
15
|
+
'react-is': versions_1.reactIsV18Version,
|
|
16
|
+
'@types/react': versions_1.typesReactV18Version,
|
|
17
|
+
'@types/react-dom': versions_1.typesReactDomV18Version,
|
|
18
|
+
'@types/react-is': versions_1.typesReactIsV18Version,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return {
|
|
23
|
+
react: versions_1.reactVersion,
|
|
24
|
+
'react-dom': versions_1.reactDomVersion,
|
|
25
|
+
'react-is': versions_1.reactIsVersion,
|
|
26
|
+
'@types/react': versions_1.typesReactVersion,
|
|
27
|
+
'@types/react-dom': versions_1.typesReactDomVersion,
|
|
28
|
+
'@types/react-is': versions_1.typesReactIsVersion,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
async function isReact18(tree) {
|
|
33
|
+
let installedReactVersion = await getInstalledReactVersionFromGraph();
|
|
34
|
+
if (!installedReactVersion) {
|
|
35
|
+
installedReactVersion = getInstalledReactVersion(tree);
|
|
36
|
+
}
|
|
37
|
+
return (0, semver_1.major)(installedReactVersion) === 18;
|
|
38
|
+
}
|
|
39
|
+
function getInstalledReactVersion(tree) {
|
|
40
|
+
const pkgJson = (0, devkit_1.readJson)(tree, 'package.json');
|
|
41
|
+
const installedReactVersion = pkgJson.dependencies && pkgJson.dependencies['react'];
|
|
42
|
+
if (!installedReactVersion ||
|
|
43
|
+
installedReactVersion === 'latest' ||
|
|
44
|
+
installedReactVersion === 'next') {
|
|
45
|
+
return (0, semver_1.clean)(versions_1.reactVersion) ?? (0, semver_1.coerce)(versions_1.reactVersion).version;
|
|
46
|
+
}
|
|
47
|
+
return (0, semver_1.clean)(installedReactVersion) ?? (0, semver_1.coerce)(installedReactVersion).version;
|
|
48
|
+
}
|
|
49
|
+
async function getInstalledReactVersionFromGraph() {
|
|
50
|
+
const graph = await (0, devkit_1.createProjectGraphAsync)();
|
|
51
|
+
const reactDep = graph.externalNodes?.['npm:react'];
|
|
52
|
+
if (!reactDep) {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
return (0, semver_1.clean)(reactDep.data.version) ?? (0, semver_1.coerce)(reactDep.data.version).version;
|
|
56
|
+
}
|
package/src/utils/versions.d.ts
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
export declare const nxVersion: any;
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const
|
|
4
|
-
export declare const reactDomVersion = "
|
|
5
|
-
export declare const
|
|
2
|
+
export declare const reactVersion = "19.0.0";
|
|
3
|
+
export declare const reactV18Version = "18.3.1";
|
|
4
|
+
export declare const reactDomVersion = "19.0.0";
|
|
5
|
+
export declare const reactDomV18Version = "18.3.1";
|
|
6
|
+
export declare const reactIsVersion = "19.0.0";
|
|
7
|
+
export declare const reactIsV18Version = "18.3.1";
|
|
6
8
|
export declare const swcLoaderVersion = "0.1.15";
|
|
7
9
|
export declare const babelLoaderVersion = "^9.1.2";
|
|
8
|
-
export declare const
|
|
9
|
-
export declare const
|
|
10
|
-
export declare const
|
|
10
|
+
export declare const typesReactV18Version = "18.3.1";
|
|
11
|
+
export declare const typesReactVersion = "19.0.0";
|
|
12
|
+
export declare const typesReactDomV18Version = "18.3.0";
|
|
13
|
+
export declare const typesReactDomVersion = "19.0.0";
|
|
14
|
+
export declare const typesReactIsV18Version = "18.3.0";
|
|
15
|
+
export declare const typesReactIsVersion = "19.0.0";
|
|
11
16
|
export declare const reactViteVersion = "^4.2.0";
|
|
12
|
-
export declare const typesNodeVersion = "
|
|
17
|
+
export declare const typesNodeVersion = "^20.0.0";
|
|
13
18
|
export declare const babelPresetReactVersion = "^7.14.5";
|
|
14
19
|
export declare const babelCoreVersion = "^7.14.5";
|
|
15
20
|
export declare const styledComponentsVersion = "5.3.6";
|
|
@@ -18,26 +23,29 @@ export declare const emotionStyledVersion = "11.11.0";
|
|
|
18
23
|
export declare const emotionReactVersion = "11.11.1";
|
|
19
24
|
export declare const emotionBabelPlugin = "11.11.0";
|
|
20
25
|
export declare const styledJsxVersion = "5.1.2";
|
|
21
|
-
export declare const reactRouterDomVersion = "6.
|
|
22
|
-
export declare const
|
|
26
|
+
export declare const reactRouterDomVersion = "6.29.0";
|
|
27
|
+
export declare const reactRouterVersion = "^7.2.0";
|
|
28
|
+
export declare const reactRouterIsBotVersion = "^4.4.0";
|
|
29
|
+
export declare const testingLibraryReactVersion = "16.1.0";
|
|
30
|
+
export declare const testingLibraryDomVersion = "10.4.0";
|
|
23
31
|
export declare const reduxjsToolkitVersion = "1.9.3";
|
|
24
32
|
export declare const reactReduxVersion = "8.0.5";
|
|
25
|
-
export declare const eslintPluginImportVersion = "2.
|
|
26
|
-
export declare const eslintPluginJsxA11yVersion = "6.
|
|
33
|
+
export declare const eslintPluginImportVersion = "2.31.0";
|
|
34
|
+
export declare const eslintPluginJsxA11yVersion = "6.10.1";
|
|
27
35
|
export declare const eslintPluginReactVersion = "7.35.0";
|
|
28
|
-
export declare const eslintPluginReactHooksVersion = "
|
|
36
|
+
export declare const eslintPluginReactHooksVersion = "5.0.0";
|
|
29
37
|
export declare const babelPluginStyledComponentsVersion = "1.10.7";
|
|
30
38
|
export declare const tsLibVersion = "^2.3.0";
|
|
31
39
|
export declare const postcssVersion = "8.4.38";
|
|
32
40
|
export declare const tailwindcssVersion = "3.4.3";
|
|
33
41
|
export declare const autoprefixerVersion = "10.4.13";
|
|
34
|
-
export declare const expressVersion = "
|
|
35
|
-
export declare const typesExpressVersion = "4.17.
|
|
42
|
+
export declare const expressVersion = "^4.21.2";
|
|
43
|
+
export declare const typesExpressVersion = "^4.17.21";
|
|
36
44
|
export declare const isbotVersion = "^3.6.5";
|
|
37
45
|
export declare const corsVersion = "~2.8.5";
|
|
38
46
|
export declare const typesCorsVersion = "~2.8.12";
|
|
39
|
-
export declare const moduleFederationNodeVersion = "
|
|
40
|
-
export declare const moduleFederationEnhancedVersion = "
|
|
47
|
+
export declare const moduleFederationNodeVersion = "^2.6.26";
|
|
48
|
+
export declare const moduleFederationEnhancedVersion = "^0.9.0";
|
|
41
49
|
export declare const lessVersion = "3.12.2";
|
|
42
50
|
export declare const sassVersion = "^1.55.0";
|
|
43
51
|
export declare const rollupPluginUrlVersion = "^8.0.2";
|
package/src/utils/versions.js
CHANGED
|
@@ -1,19 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.sassVersion = exports.lessVersion = exports.moduleFederationEnhancedVersion = exports.moduleFederationNodeVersion = exports.typesCorsVersion = exports.corsVersion = exports.isbotVersion = exports.typesExpressVersion = exports.expressVersion = exports.autoprefixerVersion = exports.tailwindcssVersion = exports.postcssVersion = exports.tsLibVersion = exports.babelPluginStyledComponentsVersion = exports.eslintPluginReactHooksVersion = exports.eslintPluginReactVersion = exports.eslintPluginJsxA11yVersion = exports.eslintPluginImportVersion = exports.reactReduxVersion = exports.reduxjsToolkitVersion = exports.testingLibraryDomVersion = exports.testingLibraryReactVersion = exports.reactRouterIsBotVersion = exports.reactRouterVersion = exports.reactRouterDomVersion = exports.styledJsxVersion = exports.emotionBabelPlugin = exports.emotionReactVersion = exports.emotionStyledVersion = exports.typesStyledComponentsVersion = exports.styledComponentsVersion = exports.babelCoreVersion = exports.babelPresetReactVersion = exports.typesNodeVersion = exports.reactViteVersion = exports.typesReactIsVersion = exports.typesReactIsV18Version = exports.typesReactDomVersion = exports.typesReactDomV18Version = exports.typesReactVersion = exports.typesReactV18Version = exports.babelLoaderVersion = exports.swcLoaderVersion = exports.reactIsV18Version = exports.reactIsVersion = exports.reactDomV18Version = exports.reactDomVersion = exports.reactV18Version = exports.reactVersion = exports.nxVersion = void 0;
|
|
4
|
+
exports.swcPluginStyledComponentsVersion = exports.swcPluginEmotionVersion = exports.swcPluginStyledJsxVersion = exports.svgrRollupVersion = exports.rollupPluginUrlVersion = void 0;
|
|
4
5
|
exports.nxVersion = require('../../package.json').version;
|
|
5
|
-
|
|
6
|
-
exports.
|
|
7
|
-
exports.
|
|
8
|
-
exports.
|
|
9
|
-
exports.reactIsVersion = '
|
|
6
|
+
exports.reactVersion = '19.0.0';
|
|
7
|
+
exports.reactV18Version = '18.3.1';
|
|
8
|
+
exports.reactDomVersion = '19.0.0';
|
|
9
|
+
exports.reactDomV18Version = '18.3.1';
|
|
10
|
+
exports.reactIsVersion = '19.0.0';
|
|
11
|
+
exports.reactIsV18Version = '18.3.1';
|
|
10
12
|
exports.swcLoaderVersion = '0.1.15';
|
|
11
13
|
exports.babelLoaderVersion = '^9.1.2';
|
|
12
|
-
exports.
|
|
13
|
-
exports.
|
|
14
|
-
exports.
|
|
14
|
+
exports.typesReactV18Version = '18.3.1';
|
|
15
|
+
exports.typesReactVersion = '19.0.0';
|
|
16
|
+
exports.typesReactDomV18Version = '18.3.0';
|
|
17
|
+
exports.typesReactDomVersion = '19.0.0';
|
|
18
|
+
exports.typesReactIsV18Version = '18.3.0';
|
|
19
|
+
exports.typesReactIsVersion = '19.0.0';
|
|
15
20
|
exports.reactViteVersion = '^4.2.0';
|
|
16
|
-
|
|
21
|
+
// Needed for React-Router
|
|
22
|
+
exports.typesNodeVersion = '^20.0.0';
|
|
17
23
|
exports.babelPresetReactVersion = '^7.14.5';
|
|
18
24
|
exports.babelCoreVersion = '^7.14.5';
|
|
19
25
|
exports.styledComponentsVersion = '5.3.6';
|
|
@@ -23,27 +29,30 @@ exports.emotionReactVersion = '11.11.1';
|
|
|
23
29
|
exports.emotionBabelPlugin = '11.11.0';
|
|
24
30
|
// WARNING: This needs to be in sync with Next.js' dependency or else there might be issues.
|
|
25
31
|
exports.styledJsxVersion = '5.1.2';
|
|
26
|
-
exports.reactRouterDomVersion = '6.
|
|
27
|
-
exports.
|
|
32
|
+
exports.reactRouterDomVersion = '6.29.0';
|
|
33
|
+
exports.reactRouterVersion = '^7.2.0';
|
|
34
|
+
exports.reactRouterIsBotVersion = '^4.4.0';
|
|
35
|
+
exports.testingLibraryReactVersion = '16.1.0';
|
|
36
|
+
exports.testingLibraryDomVersion = '10.4.0';
|
|
28
37
|
exports.reduxjsToolkitVersion = '1.9.3';
|
|
29
38
|
exports.reactReduxVersion = '8.0.5';
|
|
30
|
-
exports.eslintPluginImportVersion = '2.
|
|
31
|
-
exports.eslintPluginJsxA11yVersion = '6.
|
|
39
|
+
exports.eslintPluginImportVersion = '2.31.0';
|
|
40
|
+
exports.eslintPluginJsxA11yVersion = '6.10.1';
|
|
32
41
|
exports.eslintPluginReactVersion = '7.35.0';
|
|
33
|
-
exports.eslintPluginReactHooksVersion = '
|
|
42
|
+
exports.eslintPluginReactHooksVersion = '5.0.0';
|
|
34
43
|
exports.babelPluginStyledComponentsVersion = '1.10.7';
|
|
35
44
|
exports.tsLibVersion = '^2.3.0';
|
|
36
45
|
exports.postcssVersion = '8.4.38';
|
|
37
46
|
exports.tailwindcssVersion = '3.4.3';
|
|
38
47
|
exports.autoprefixerVersion = '10.4.13';
|
|
39
48
|
// SSR and Module Federation
|
|
40
|
-
exports.expressVersion = '
|
|
41
|
-
exports.typesExpressVersion = '4.17.
|
|
49
|
+
exports.expressVersion = '^4.21.2';
|
|
50
|
+
exports.typesExpressVersion = '^4.17.21';
|
|
42
51
|
exports.isbotVersion = '^3.6.5';
|
|
43
52
|
exports.corsVersion = '~2.8.5';
|
|
44
53
|
exports.typesCorsVersion = '~2.8.12';
|
|
45
|
-
exports.moduleFederationNodeVersion = '
|
|
46
|
-
exports.moduleFederationEnhancedVersion = '
|
|
54
|
+
exports.moduleFederationNodeVersion = '^2.6.26';
|
|
55
|
+
exports.moduleFederationEnhancedVersion = '^0.9.0';
|
|
47
56
|
// style preprocessors
|
|
48
57
|
exports.lessVersion = '3.12.2';
|
|
49
58
|
exports.sassVersion = '^1.55.0';
|