@nx/angular 17.0.3 → 17.0.4
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 +9 -4
- package/esm2022/mf/mf.mjs +1 -1
- package/esm2022/src/runtime/nx/data-persistence.mjs +1 -1
- package/executors.d.ts +9 -2
- package/executors.js +7 -2
- package/executors.json +19 -9
- package/fesm2022/nx-angular-mf.mjs.map +1 -1
- package/fesm2022/nx-angular.mjs.map +1 -1
- package/generators.d.ts +1 -1
- package/generators.js +3 -1
- package/generators.json +7 -2
- package/migrations.json +451 -0
- package/ng-package.json +2 -2
- package/package.json +20 -26
- package/plugins/component-testing.d.ts +1 -26
- package/plugins/component-testing.js +15 -4
- package/src/builders/dev-server/dev-server.impl.d.ts +4 -0
- package/src/builders/dev-server/dev-server.impl.js +160 -0
- package/src/builders/{webpack-dev-server → dev-server}/lib/index.d.ts +1 -0
- package/src/builders/{webpack-dev-server → dev-server}/lib/index.js +1 -0
- package/src/builders/dev-server/lib/normalize-options.d.ts +2 -0
- package/src/builders/dev-server/lib/normalize-options.js +20 -0
- package/src/builders/dev-server/lib/validate-options.d.ts +2 -0
- package/src/builders/dev-server/lib/validate-options.js +22 -0
- package/src/builders/dev-server/schema.d.ts +39 -0
- package/src/builders/{webpack-dev-server → dev-server}/schema.json +42 -5
- package/src/builders/module-federation-dev-ssr/module-federation-dev-ssr.impl.d.ts +1 -1
- package/src/builders/module-federation-dev-ssr/module-federation-dev-ssr.impl.js +15 -9
- package/src/builders/utilities/module-federation.js +1 -1
- package/src/builders/webpack-browser/schema.d.ts +6 -2
- package/src/builders/webpack-browser/schema.json +15 -15
- package/src/builders/webpack-browser/webpack-browser.impl.js +8 -6
- package/src/builders/webpack-server/schema.d.ts +0 -1
- package/src/builders/webpack-server/schema.json +7 -20
- package/src/builders/webpack-server/validate-options.js +0 -7
- package/src/builders/webpack-server/webpack-server.impl.js +4 -9
- package/src/executors/application/application.impl.d.ts +3 -0
- package/src/executors/application/application.impl.js +37 -0
- package/src/executors/application/schema.d.ts +8 -0
- package/src/executors/application/schema.json +682 -0
- package/src/executors/application/utils/validate-options.d.ts +2 -0
- package/src/executors/application/utils/validate-options.js +52 -0
- package/src/executors/browser-esbuild/browser-esbuild.impl.d.ts +2 -3
- package/src/executors/browser-esbuild/browser-esbuild.impl.js +15 -8
- package/src/executors/browser-esbuild/schema.d.ts +3 -1
- package/src/executors/browser-esbuild/schema.json +38 -8
- package/src/executors/extract-i18n/extract-i18n.impl.d.ts +3 -0
- package/src/executors/extract-i18n/extract-i18n.impl.js +43 -0
- package/src/executors/extract-i18n/schema.d.ts +8 -0
- package/src/executors/extract-i18n/schema.json +45 -0
- package/src/executors/module-federation-dev-server/lib/build-static-remotes.d.ts +4 -0
- package/src/executors/module-federation-dev-server/lib/build-static-remotes.js +56 -0
- package/src/executors/module-federation-dev-server/lib/index.d.ts +5 -0
- package/src/executors/module-federation-dev-server/lib/index.js +8 -0
- package/src/executors/module-federation-dev-server/lib/normalize-options.d.ts +2 -0
- package/src/executors/module-federation-dev-server/lib/normalize-options.js +23 -0
- package/src/executors/module-federation-dev-server/lib/parse-static-remotes-config.d.ts +11 -0
- package/src/executors/module-federation-dev-server/lib/parse-static-remotes-config.js +18 -0
- package/src/executors/module-federation-dev-server/lib/start-dev-remotes.d.ts +9 -0
- package/src/executors/module-federation-dev-server/lib/start-dev-remotes.js +29 -0
- package/src/executors/module-federation-dev-server/lib/start-static-remotes-file-server.d.ts +9 -0
- package/src/executors/module-federation-dev-server/lib/start-static-remotes-file-server.js +46 -0
- package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.d.ts +4 -0
- package/src/executors/module-federation-dev-server/module-federation-dev-server.impl.js +115 -0
- package/src/{builders → executors}/module-federation-dev-server/schema.d.ts +25 -7
- package/src/{builders → executors}/module-federation-dev-server/schema.json +31 -6
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-packagr.d.ts +3 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-packagr.js +34 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/compile-ngc.transform.js +6 -4
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/write-package.transform.js +25 -13
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ngc → pre-v17/ngc}/compile-source-files.d.ts +1 -2
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ngc → pre-v17/ngc}/compile-source-files.js +14 -9
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{styles → pre-v17/styles}/stylesheet-processor.d.ts +5 -10
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{styles → pre-v17/styles}/stylesheet-processor.js +39 -86
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.di.d.ts +2 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.di.js +12 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.transform.d.ts +8 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-bundles.transform.js +12 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.di.d.ts +8 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.di.js +18 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.transform.d.ts +8 -0
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/v17+/ng-package/entry-point/write-package.transform.js +285 -0
- package/src/executors/ng-packagr-lite/ng-packagr-lite.impl.js +5 -17
- package/src/executors/ng-packagr-lite/schema.json +1 -1
- package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +5 -3
- package/src/executors/package/ng-packagr-adjustments/ng-packagr.d.ts +3 -0
- package/src/executors/package/ng-packagr-adjustments/ng-packagr.js +28 -0
- package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.d.ts +1 -1
- package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.js +13 -6
- package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.d.ts +5 -10
- package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.js +39 -86
- package/src/executors/package/package.impl.d.ts +1 -1
- package/src/executors/package/package.impl.js +5 -15
- package/src/executors/package/schema.json +3 -3
- package/src/executors/utilities/buildable-libs.d.ts +6 -0
- package/src/executors/{browser-esbuild/lib → utilities}/buildable-libs.js +3 -4
- package/src/executors/utilities/esbuild-extensions.d.ts +10 -0
- package/src/executors/utilities/esbuild-extensions.js +50 -0
- package/src/executors/utilities/module-loader.d.ts +15 -0
- package/src/executors/utilities/module-loader.js +52 -0
- package/src/executors/utilities/ng-compiler-cli.d.ts +1 -0
- package/src/executors/utilities/ng-compiler-cli.js +8 -0
- package/src/executors/utilities/ng-packagr/stylesheet-processor.d.ts +49 -0
- package/src/executors/utilities/ng-packagr/stylesheet-processor.di.d.ts +2 -0
- package/src/executors/utilities/ng-packagr/stylesheet-processor.di.js +16 -0
- package/src/executors/utilities/ng-packagr/stylesheet-processor.js +209 -0
- package/src/executors/utilities/ng-packagr/tailwindcss.d.ts +7 -0
- package/src/executors/utilities/{tailwindcss.js → ng-packagr/tailwindcss.js} +5 -22
- package/src/executors/utilities/patch-builder-context.d.ts +3 -0
- package/src/executors/utilities/patch-builder-context.js +41 -0
- package/src/executors/utilities/typescript.js +1 -1
- package/src/generators/add-linting/add-linting.d.ts +1 -1
- package/src/generators/add-linting/add-linting.js +9 -15
- package/src/generators/add-linting/lib/add-angular-eslint-dependencies.d.ts +2 -2
- package/src/generators/add-linting/lib/add-angular-eslint-dependencies.js +9 -5
- package/src/generators/add-linting/lib/buildable-project.d.ts +2 -0
- package/src/generators/add-linting/lib/buildable-project.js +9 -0
- package/src/generators/add-linting/lib/create-eslint-configuration.d.ts +2 -2
- package/src/generators/add-linting/schema.json +1 -1
- package/src/generators/application/application.js +19 -17
- package/src/generators/application/files/base/tsconfig.app.json__tpl__ +1 -1
- package/src/generators/application/files/base/tsconfig.json__tpl__ +6 -2
- package/src/generators/application/files/ng-module/src/app/app.component.spec.ts__tpl__ +3 -1
- package/src/generators/application/files/ng-module/src/app/app.component.ts__tpl__ +4 -2
- package/src/generators/application/files/ng-module/src/app/app.module.ts__tpl__ +1 -1
- package/src/generators/application/files/ng-module/src/app/nx-welcome.component.ts__tpl__ +53 -14
- package/src/generators/application/files/ng-module/src/main.ts__tpl__ +2 -8
- package/src/generators/application/files/standalone-components/src/app/app.component.spec.ts__tpl__ +6 -4
- package/src/generators/application/files/standalone-components/src/app/app.component.ts__tpl__ +4 -2
- package/src/generators/application/files/standalone-components/src/app/app.config.ts__tpl__ +3 -3
- package/src/generators/application/files/standalone-components/src/app/nx-welcome.component.ts__tpl__ +53 -14
- package/src/generators/application/files/standalone-components/src/main.ts__tpl__ +4 -8
- package/src/generators/application/lib/add-e2e.js +22 -8
- package/src/generators/application/lib/add-unit-test-runner.js +5 -20
- package/src/generators/application/lib/create-files.js +14 -10
- package/src/generators/application/lib/create-project.d.ts +1 -1
- package/src/generators/application/lib/create-project.js +48 -38
- package/src/generators/application/lib/index.d.ts +1 -0
- package/src/generators/application/lib/index.js +1 -0
- package/src/generators/application/lib/normalize-options.d.ts +1 -1
- package/src/generators/application/lib/normalize-options.js +28 -6
- package/src/generators/application/lib/normalized-schema.d.ts +5 -0
- package/src/generators/application/lib/set-generator-defaults.d.ts +3 -0
- package/src/generators/application/lib/set-generator-defaults.js +17 -0
- package/src/generators/application/lib/update-editor-tsconfig.d.ts +1 -1
- package/src/generators/application/lib/update-editor-tsconfig.js +11 -14
- package/src/generators/application/schema.d.ts +1 -0
- package/src/generators/application/schema.json +18 -10
- package/src/generators/component/component.js +4 -1
- package/src/generators/component/files/__fileName__.spec.ts__tpl__ +2 -3
- package/src/generators/component/files/__fileName__.ts__tpl__ +8 -2
- package/src/generators/component/lib/component.js +1 -1
- package/src/generators/component/lib/index.d.ts +1 -1
- package/src/generators/component/lib/index.js +1 -1
- package/src/generators/component/lib/normalize-options.js +3 -2
- package/src/generators/component/lib/set-generator-defaults.d.ts +3 -0
- package/src/generators/component/lib/set-generator-defaults.js +14 -0
- package/src/generators/component/schema.d.ts +3 -3
- package/src/generators/component/schema.json +4 -4
- package/src/generators/component-cypress-spec/files/__componentFileName__.__fileExt__ +13 -8
- package/src/generators/component-cypress-spec/schema.json +1 -1
- package/src/generators/component-story/files/__componentFileName__.stories.ts__tmpl__ +2 -2
- package/src/generators/component-test/component-test.d.ts +1 -1
- package/src/generators/component-test/component-test.js +8 -3
- package/src/generators/component-test/files/__componentFileName__.cy.ts__tpl__ +9 -11
- package/src/generators/component-test/schema.json +1 -1
- package/src/generators/convert-to-application-executor/convert-to-application-executor.d.ts +4 -0
- package/src/generators/convert-to-application-executor/convert-to-application-executor.js +242 -0
- package/src/generators/convert-to-application-executor/schema.d.ts +4 -0
- package/src/generators/convert-to-application-executor/schema.json +26 -0
- package/src/generators/convert-to-with-mf/convert-to-with-mf.js +3 -1
- package/src/generators/convert-to-with-mf/lib/write-new-webpack-config.js +3 -2
- package/src/generators/convert-to-with-mf/schema.d.ts +1 -0
- package/src/generators/convert-to-with-mf/schema.json +6 -0
- package/src/generators/cypress-component-configuration/cypress-component-configuration.d.ts +2 -1
- package/src/generators/cypress-component-configuration/cypress-component-configuration.js +43 -24
- package/src/generators/directive/directive.js +0 -1
- package/src/generators/directive/files/__fileName__.ts__tpl__ +1 -3
- package/src/generators/directive/lib/index.d.ts +0 -1
- package/src/generators/directive/lib/index.js +0 -1
- package/src/generators/directive/lib/normalize-options.js +3 -1
- package/src/generators/directive/schema.d.ts +3 -3
- package/src/generators/directive/schema.json +4 -4
- package/src/generators/federate-module/federate-module.js +1 -0
- package/src/generators/federate-module/lib/add-remote.d.ts +1 -1
- package/src/generators/federate-module/lib/add-remote.js +2 -11
- package/src/generators/federate-module/schema.json +3 -3
- package/src/generators/host/files/common/v17+/src/main.server.ts__tmpl__ +67 -0
- package/src/generators/host/files/ts/webpack.server.config.ts__tmpl__ +2 -2
- package/src/generators/host/host.js +8 -9
- package/src/generators/host/lib/index.d.ts +1 -1
- package/src/generators/host/lib/index.js +1 -1
- package/src/generators/host/lib/update-ssr-setup.d.ts +3 -0
- package/src/generators/host/lib/{add-ssr.js → update-ssr-setup.js} +8 -14
- package/src/generators/host/schema.json +6 -6
- package/src/generators/init/init.d.ts +2 -2
- package/src/generators/init/init.js +19 -137
- package/src/generators/init/schema.d.ts +1 -9
- package/src/generators/init/schema.json +8 -59
- package/src/generators/library/files/ng-module/src/lib/lib.routes.ts__tpl__ +1 -1
- package/src/generators/library/files/standalone-components/src/lib/lib.routes.ts__tpl__ +1 -1
- package/src/generators/library/lib/add-load-children.js +2 -2
- package/src/generators/library/lib/add-project.js +24 -22
- package/src/generators/library/lib/add-standalone-component.d.ts +2 -2
- package/src/generators/library/lib/add-standalone-component.js +5 -4
- package/src/generators/library/lib/normalize-options.js +2 -5
- package/src/generators/library/lib/set-generator-defaults.d.ts +3 -0
- package/src/generators/library/lib/set-generator-defaults.js +15 -0
- package/src/generators/library/lib/update-tsconfig.js +3 -3
- package/src/generators/library/library.js +15 -27
- package/src/generators/library/schema.d.ts +1 -0
- package/src/generators/library/schema.json +13 -13
- package/src/generators/library-secondary-entry-point/files/src/index.ts__tmpl__ +1 -5
- package/src/generators/library-secondary-entry-point/lib/index.d.ts +0 -1
- package/src/generators/library-secondary-entry-point/lib/index.js +0 -1
- package/src/generators/library-secondary-entry-point/library-secondary-entry-point.js +3 -2
- package/src/generators/library-secondary-entry-point/schema.d.ts +1 -0
- package/src/generators/library-secondary-entry-point/schema.json +9 -3
- package/src/generators/move/schema.json +1 -1
- package/src/generators/ng-add/migrate-from-angular-cli.js +1 -1
- package/src/generators/ng-add/migrators/projects/app.migrator.js +50 -7
- package/src/generators/ng-add/migrators/projects/e2e.migrator.js +31 -23
- package/src/generators/ng-add/ng-add.js +1 -8
- package/src/generators/ng-add/schema.json +1 -1
- package/src/generators/ng-add/utilities/workspace.d.ts +1 -1
- package/src/generators/ng-add/utilities/workspace.js +9 -16
- package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.models.ts__tmpl__ +1 -1
- package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.selectors.spec.ts__tmpl__ +1 -1
- package/src/generators/ngrx/lib/generate-files.js +1 -10
- package/src/generators/ngrx/lib/validate-options.js +0 -23
- package/src/generators/ngrx/schema.json +3 -3
- package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.models.ts__tmpl__ +1 -1
- package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.selectors.spec.ts__tmpl__ +1 -1
- package/src/generators/ngrx-feature-store/lib/generate-files.js +1 -12
- package/src/generators/ngrx-feature-store/lib/validate-options.js +0 -22
- package/src/generators/ngrx-feature-store/schema.json +3 -3
- package/src/generators/ngrx-root-store/lib/normalize-options.js +1 -1
- package/src/generators/ngrx-root-store/lib/validate-options.js +0 -15
- package/src/generators/ngrx-root-store/schema.json +2 -2
- package/src/generators/pipe/files/__fileName__.ts__tpl__ +0 -2
- package/src/generators/pipe/lib/index.d.ts +0 -1
- package/src/generators/pipe/lib/index.js +0 -1
- package/src/generators/pipe/lib/normalize-options.js +1 -0
- package/src/generators/pipe/pipe.js +0 -1
- package/src/generators/pipe/schema.d.ts +3 -3
- package/src/generators/pipe/schema.json +4 -4
- package/src/generators/remote/files/base-ts/webpack.server.config.ts__tmpl__ +2 -2
- package/src/generators/remote/files/common/{src → pre-v17/src}/main.server.ts__tmpl__ +1 -3
- package/src/generators/remote/files/common/v17+/src/main.server.ts__tmpl__ +73 -0
- package/src/generators/remote/lib/index.d.ts +1 -1
- package/src/generators/remote/lib/index.js +1 -1
- package/src/generators/remote/lib/{add-ssr.d.ts → update-ssr-setup.d.ts} +1 -1
- package/src/generators/remote/lib/{add-ssr.js → update-ssr-setup.js} +9 -13
- package/src/generators/remote/remote.js +7 -9
- package/src/generators/remote/schema.json +6 -6
- package/src/generators/scam/lib/convert-component-to-scam.js +2 -1
- package/src/generators/scam/schema.d.ts +3 -3
- package/src/generators/scam/schema.json +2 -2
- package/src/generators/scam-directive/lib/convert-directive-to-scam.js +2 -1
- package/src/generators/scam-directive/scam-directive.js +3 -1
- package/src/generators/scam-directive/schema.d.ts +4 -3
- package/src/generators/scam-directive/schema.json +8 -2
- package/src/generators/scam-pipe/lib/convert-pipe-to-scam.js +2 -1
- package/src/generators/scam-pipe/scam-pipe.js +3 -1
- package/src/generators/scam-pipe/schema.d.ts +4 -3
- package/src/generators/scam-pipe/schema.json +8 -2
- package/src/generators/scam-to-standalone/scam-to-standalone.js +0 -7
- package/src/generators/scam-to-standalone/schema.json +2 -2
- package/src/generators/setup-mf/files/host-files/app.component.spec.ts__tmpl__ +3 -1
- package/src/generators/setup-mf/files/ts-webpack/module-federation.config.ts__tmpl__ +12 -0
- package/src/generators/setup-mf/files/ts-webpack/tsconfig.lint.json__tmpl__ +12 -0
- package/src/generators/setup-mf/files/ts-webpack/webpack.config.ts__tmpl__ +1 -1
- package/src/generators/setup-mf/files/ts-webpack/webpack.prod.config.ts__tmpl__ +12 -12
- package/src/generators/setup-mf/files/webpack/module-federation.config.js__tmpl__ +13 -1
- package/src/generators/setup-mf/lib/add-cypress-workaround.js +14 -4
- package/src/generators/setup-mf/lib/add-remote-entry.js +2 -11
- package/src/generators/setup-mf/lib/add-remote-to-host.js +1 -1
- package/src/generators/setup-mf/lib/fix-bootstrap.js +10 -18
- package/src/generators/setup-mf/lib/generate-config.js +3 -0
- package/src/generators/setup-mf/lib/index.d.ts +1 -1
- package/src/generators/setup-mf/lib/index.js +1 -1
- package/src/generators/setup-mf/lib/normalize-options.js +2 -1
- package/src/generators/setup-mf/lib/remove-dead-code-from-remote.js +10 -10
- package/src/generators/setup-mf/lib/setup-serve-target.js +1 -1
- package/src/generators/setup-mf/lib/update-host-app-routes.js +2 -2
- package/src/generators/{pipe/lib/validate-options.d.ts → setup-mf/lib/update-tsconfig.d.ts} +1 -1
- package/src/generators/setup-mf/lib/update-tsconfig.js +19 -0
- package/src/generators/setup-mf/schema.d.ts +1 -0
- package/src/generators/setup-mf/schema.json +8 -3
- package/src/generators/setup-mf/setup-mf.js +1 -7
- package/src/generators/setup-ssr/files/ngmodule/base/src/__main__ +1 -1
- package/src/generators/setup-ssr/files/server/application-builder/__serverFileName__ +56 -0
- package/src/generators/setup-ssr/files/{ngmodule/base → server/server-builder/pre-v17}/__serverFileName__ +7 -8
- package/src/generators/setup-ssr/files/{standalone → server/server-builder/v17+}/__serverFileName__ +25 -16
- package/src/generators/setup-ssr/lib/add-dependencies.d.ts +2 -0
- package/src/generators/setup-ssr/lib/add-dependencies.js +36 -0
- package/src/generators/setup-ssr/lib/add-hydration.js +11 -5
- package/src/generators/setup-ssr/lib/add-server-file.d.ts +3 -0
- package/src/generators/setup-ssr/lib/add-server-file.js +31 -0
- package/src/generators/setup-ssr/lib/constants.d.ts +3 -0
- package/src/generators/setup-ssr/lib/constants.js +6 -0
- package/src/generators/setup-ssr/lib/generate-files.d.ts +1 -1
- package/src/generators/setup-ssr/lib/generate-files.js +11 -16
- package/src/generators/setup-ssr/lib/generate-server-ts-config.d.ts +4 -0
- package/src/generators/setup-ssr/lib/generate-server-ts-config.js +29 -0
- package/src/generators/setup-ssr/lib/index.d.ts +4 -0
- package/src/generators/setup-ssr/lib/index.js +4 -0
- package/src/generators/setup-ssr/lib/normalize-options.js +7 -1
- package/src/generators/setup-ssr/lib/set-router-initial-navigation.d.ts +3 -0
- package/src/generators/setup-ssr/lib/set-router-initial-navigation.js +93 -0
- package/src/generators/setup-ssr/lib/update-project-config.d.ts +2 -1
- package/src/generators/setup-ssr/lib/update-project-config.js +46 -13
- package/src/generators/setup-ssr/lib/validate-options.js +15 -2
- package/src/generators/setup-ssr/schema.json +4 -4
- package/src/generators/setup-ssr/setup-ssr.js +18 -12
- package/src/generators/setup-tailwind/schema.json +1 -1
- package/src/generators/stories/schema.json +1 -1
- package/src/generators/stories/stories.js +2 -2
- package/src/generators/storybook-configuration/lib/generate-stories.js +6 -4
- package/src/generators/storybook-configuration/lib/generate-storybook-configuration.js +3 -1
- package/src/generators/storybook-configuration/schema.d.ts +1 -1
- package/src/generators/storybook-configuration/schema.json +7 -7
- package/src/generators/storybook-configuration/storybook-configuration.js +8 -5
- package/src/generators/utils/add-jest.d.ts +8 -0
- package/src/generators/utils/add-jest.js +36 -0
- package/src/generators/utils/add-mf-env-to-inputs.d.ts +2 -0
- package/src/generators/utils/add-mf-env-to-inputs.js +27 -0
- package/src/generators/utils/dependencies.js +1 -2
- package/src/generators/utils/ensure-angular-dependencies.d.ts +2 -0
- package/src/generators/utils/ensure-angular-dependencies.js +35 -0
- package/src/generators/utils/export-scam.js +2 -2
- package/src/generators/utils/project.d.ts +0 -1
- package/src/generators/utils/project.js +2 -29
- package/src/generators/utils/selector.d.ts +2 -2
- package/src/generators/utils/selector.js +11 -4
- package/src/generators/utils/testing.js +24 -1
- package/src/generators/utils/update-app-editor-tsconfig-excluded-files.d.ts +2 -0
- package/src/generators/utils/update-app-editor-tsconfig-excluded-files.js +23 -0
- package/src/generators/utils/update-project-root-tsconfig.d.ts +3 -0
- package/src/generators/utils/update-project-root-tsconfig.js +26 -0
- package/src/generators/utils/validations.d.ts +0 -1
- package/src/generators/utils/validations.js +1 -14
- package/src/generators/utils/version-utils.d.ts +2 -2
- package/src/generators/utils/version-utils.js +3 -3
- package/src/migrations/update-17-1-0/browser-target-to-build-target.d.ts +3 -0
- package/src/migrations/update-17-1-0/browser-target-to-build-target.js +50 -0
- package/src/migrations/update-17-1-0/replace-nguniversal-builders.d.ts +2 -0
- package/src/migrations/update-17-1-0/replace-nguniversal-builders.js +75 -0
- package/src/migrations/update-17-1-0/replace-nguniversal-engines.d.ts +2 -0
- package/src/migrations/update-17-1-0/replace-nguniversal-engines.js +183 -0
- package/src/migrations/update-17-1-0/update-angular-cli.d.ts +3 -0
- package/src/migrations/update-17-1-0/update-angular-cli.js +23 -0
- package/src/migrations/update-17-1-0/update-zone-js-deep-import.d.ts +2 -0
- package/src/migrations/update-17-1-0/update-zone-js-deep-import.js +37 -0
- package/src/migrations/update-17-2-0/rename-webpack-dev-server.d.ts +2 -0
- package/src/migrations/update-17-2-0/rename-webpack-dev-server.js +40 -0
- package/src/migrations/update-17-3-0/add-autoprefixer-dependency.d.ts +2 -0
- package/src/migrations/update-17-3-0/add-autoprefixer-dependency.js +26 -0
- package/src/migrations/update-17-3-0/add-browser-sync-dependency.d.ts +2 -0
- package/src/migrations/update-17-3-0/add-browser-sync-dependency.js +26 -0
- package/src/migrations/update-17-3-0/update-angular-cli.d.ts +3 -0
- package/src/migrations/update-17-3-0/update-angular-cli.js +23 -0
- package/src/migrations/update-18-0-0/add-mf-env-var-to-target-defaults.d.ts +2 -0
- package/src/migrations/update-18-0-0/add-mf-env-var-to-target-defaults.js +26 -0
- package/src/migrations/update-18-1-0/update-angular-cli.d.ts +3 -0
- package/src/migrations/update-18-1-0/update-angular-cli.js +23 -0
- package/src/migrations/update-18-1-1/fix-target-defaults-inputs.d.ts +2 -0
- package/src/migrations/update-18-1-1/fix-target-defaults-inputs.js +53 -0
- package/src/migrations/update-18-2-0/update-angular-cli.d.ts +3 -0
- package/src/migrations/update-18-2-0/update-angular-cli.js +23 -0
- package/src/utils/backward-compatible-versions.d.ts +6 -4
- package/src/utils/backward-compatible-versions.js +20 -22
- package/src/utils/{public-api.d.ts → index.d.ts} +5 -0
- package/src/utils/{public-api.js → index.js} +5 -0
- package/src/utils/mf/utils.js +7 -0
- package/src/utils/mf/with-module-federation-ssr.js +3 -0
- package/src/utils/mf/with-module-federation.js +3 -0
- package/src/utils/nx-devkit/ast-utils.js +4 -2
- package/src/utils/nx-devkit/testing.js +27 -31
- package/src/utils/targets.d.ts +2 -0
- package/src/utils/targets.js +17 -0
- package/src/utils/version-utils.d.ts +3 -3
- package/src/utils/versions.d.ts +9 -11
- package/src/utils/versions.js +10 -12
- package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.d.ts +0 -5
- package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.js +0 -136
- package/src/builders/webpack-browser/validate-options.d.ts +0 -2
- package/src/builders/webpack-browser/validate-options.js +0 -40
- package/src/builders/webpack-dev-server/lib/normalize-options.d.ts +0 -2
- package/src/builders/webpack-dev-server/lib/normalize-options.js +0 -14
- package/src/builders/webpack-dev-server/schema.d.ts +0 -21
- package/src/builders/webpack-dev-server/webpack-dev-server.impl.d.ts +0 -4
- package/src/builders/webpack-dev-server/webpack-dev-server.impl.js +0 -105
- package/src/executors/browser-esbuild/lib/buildable-libs.d.ts +0 -9
- package/src/executors/browser-esbuild/lib/validate-options.d.ts +0 -2
- package/src/executors/browser-esbuild/lib/validate-options.js +0 -40
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ts/cache-compiler-host.d.ts +0 -16
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ts/cache-compiler-host.js +0 -175
- package/src/executors/package/ng-packagr-adjustments/ts/cache-compiler-host.d.ts +0 -15
- package/src/executors/package/ng-packagr-adjustments/ts/cache-compiler-host.js +0 -197
- package/src/executors/utilities/tailwindcss.d.ts +0 -7
- package/src/generators/application/files/tsconfig.editor.json__tpl__ +0 -5
- package/src/generators/application/files/v14/.browserlistrc__tpl__ +0 -16
- package/src/generators/application/files/v14/src/environments/environment.prod.ts__tpl__ +0 -3
- package/src/generators/application/files/v14/src/environments/environment.ts__tpl__ +0 -16
- package/src/generators/application/files/v14/src/polyfills.ts__tpl__ +0 -53
- package/src/generators/component/lib/validate-options.d.ts +0 -3
- package/src/generators/component/lib/validate-options.js +0 -8
- package/src/generators/directive/lib/validate-options.d.ts +0 -3
- package/src/generators/directive/lib/validate-options.js +0 -8
- package/src/generators/host/lib/add-ssr.d.ts +0 -3
- package/src/generators/library-secondary-entry-point/lib/update-linting-file-patterns.d.ts +0 -3
- package/src/generators/library-secondary-entry-point/lib/update-linting-file-patterns.js +0 -15
- package/src/generators/ngrx/files/no-inject/__directory__/__fileName__.effects.ts__tmpl__ +0 -22
- package/src/generators/ngrx/files/no-inject/__directory__/__fileName__.facade.ts__tmpl__ +0 -27
- package/src/generators/ngrx-feature-store/files/no-inject/__directory__/__fileName__.effects.ts__tmpl__ +0 -22
- package/src/generators/ngrx-feature-store/files/no-inject/__directory__/__fileName__.facade.ts__tmpl__ +0 -27
- package/src/generators/pipe/lib/validate-options.js +0 -8
- package/src/generators/setup-mf/lib/set-tsconfig-target.d.ts +0 -3
- package/src/generators/setup-mf/lib/set-tsconfig-target.js +0 -16
- package/src/generators/setup-ssr/files/ngmodule/v14/src/__main__ +0 -11
- package/src/generators/utils/create-ts-config.d.ts +0 -8
- package/src/generators/utils/create-ts-config.js +0 -35
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/compile-ngc.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/compile-ngc.di.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/compile-ngc.transform.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/entry-point.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/entry-point.di.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/entry-point.transform.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/entry-point.transform.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/write-package.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/write-package.di.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/entry-point/write-package.transform.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/options.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/options.di.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/package.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{ng-package → pre-v17/ng-package}/package.di.js +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{styles → pre-v17/styles}/stylesheet-processor.di.d.ts +0 -0
- /package/src/executors/ng-packagr-lite/ng-packagr-adjustments/{styles → pre-v17/styles}/stylesheet-processor.di.js +0 -0
- /package/src/generators/host/files/common/{src → pre-v17/src}/main.server.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.actions.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.effects.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.effects.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.facade.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.facade.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.reducer.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.reducer.ts__tmpl__ +0 -0
- /package/src/generators/ngrx/files/{base/__directory__ → __directory__}/__fileName__.selectors.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.actions.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.effects.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.effects.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.facade.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.facade.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.reducer.spec.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.reducer.ts__tmpl__ +0 -0
- /package/src/generators/ngrx-feature-store/files/{base/__directory__ → __directory__}/__fileName__.selectors.ts__tmpl__ +0 -0
- /package/src/generators/setup-ssr/files/{base → root}/tsconfig.server.json__tpl__ +0 -0
|
@@ -3,11 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.normalizeOptions = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const project_name_and_root_utils_1 = require("@nx/devkit/src/generators/project-name-and-root-utils");
|
|
6
|
-
const get_npm_scope_1 = require("@nx/js/src/utils/package-json/get-npm-scope");
|
|
7
6
|
const eslint_1 = require("@nx/eslint");
|
|
8
7
|
const test_runners_1 = require("../../../utils/test-runners");
|
|
9
|
-
const project_1 = require("../../utils/project");
|
|
10
8
|
async function normalizeOptions(host, schema) {
|
|
9
|
+
schema.standalone = schema.standalone ?? true;
|
|
11
10
|
// Create a schema with populated default values
|
|
12
11
|
const options = {
|
|
13
12
|
buildable: false,
|
|
@@ -39,14 +38,12 @@ async function normalizeOptions(host, schema) {
|
|
|
39
38
|
? options.tags.split(',').map((s) => s.trim())
|
|
40
39
|
: [];
|
|
41
40
|
const modulePath = `${projectRoot}/src/lib/${fileName}.module.ts`;
|
|
42
|
-
const npmScope = (0, get_npm_scope_1.getNpmScope)(host);
|
|
43
|
-
const prefix = (0, project_1.normalizeNewProjectPrefix)(options.prefix, npmScope, 'lib');
|
|
44
41
|
const ngCliSchematicLibRoot = projectName;
|
|
45
42
|
const allNormalizedOptions = {
|
|
46
43
|
...options,
|
|
47
44
|
linter: options.linter ?? eslint_1.Linter.EsLint,
|
|
48
45
|
unitTestRunner: options.unitTestRunner ?? test_runners_1.UnitTestRunner.Jest,
|
|
49
|
-
prefix,
|
|
46
|
+
prefix: options.prefix ?? 'lib',
|
|
50
47
|
name: projectName,
|
|
51
48
|
projectRoot,
|
|
52
49
|
entryFile: 'index',
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setGeneratorDefaults = void 0;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
function setGeneratorDefaults(tree, options) {
|
|
6
|
+
const nxJson = (0, devkit_1.readNxJson)(tree);
|
|
7
|
+
nxJson.generators = nxJson.generators ?? {};
|
|
8
|
+
nxJson.generators['@nx/angular:library'] = {
|
|
9
|
+
linter: options.libraryOptions.linter,
|
|
10
|
+
unitTestRunner: options.libraryOptions.unitTestRunner,
|
|
11
|
+
...(nxJson.generators['@nx/angular:library'] || {}),
|
|
12
|
+
};
|
|
13
|
+
(0, devkit_1.updateNxJson)(tree, nxJson);
|
|
14
|
+
}
|
|
15
|
+
exports.setGeneratorDefaults = setGeneratorDefaults;
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateTsConfig = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const js_1 = require("@nx/js");
|
|
6
|
-
const
|
|
6
|
+
const update_project_root_tsconfig_1 = require("../../utils/update-project-root-tsconfig");
|
|
7
7
|
function updateProjectConfig(host, options) {
|
|
8
8
|
(0, devkit_1.updateJson)(host, `${options.projectRoot}/tsconfig.lib.json`, (json) => {
|
|
9
9
|
json.include = ['src/**/*.ts'];
|
|
@@ -18,7 +18,7 @@ function updateProjectConfig(host, options) {
|
|
|
18
18
|
return json;
|
|
19
19
|
});
|
|
20
20
|
// tsconfig.json
|
|
21
|
-
(0,
|
|
21
|
+
(0, update_project_root_tsconfig_1.updateProjectRootTsConfig)(host, options.projectRoot, (0, js_1.getRelativePathToRootTsConfig)(host, options.projectRoot));
|
|
22
22
|
}
|
|
23
23
|
function updateProjectIvyConfig(host, options) {
|
|
24
24
|
if (options.buildable || options.publishable) {
|
|
@@ -30,7 +30,7 @@ function updateProjectIvyConfig(host, options) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
function updateTsConfig(host, options) {
|
|
33
|
-
(0,
|
|
33
|
+
(0, update_project_root_tsconfig_1.extractTsConfigBase)(host);
|
|
34
34
|
updateProjectConfig(host, options);
|
|
35
35
|
updateProjectIvyConfig(host, options);
|
|
36
36
|
}
|
|
@@ -2,12 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.libraryGeneratorInternal = exports.libraryGenerator = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
|
-
const jest_1 = require("@nx/jest");
|
|
6
5
|
const eslint_1 = require("@nx/eslint");
|
|
7
6
|
const js_1 = require("@nx/js");
|
|
8
|
-
const semver_1 = require("semver");
|
|
9
7
|
const init_1 = require("../../generators/init/init");
|
|
10
|
-
const test_runners_1 = require("../../utils/test-runners");
|
|
11
8
|
const add_linting_1 = require("../add-linting/add-linting");
|
|
12
9
|
const setup_tailwind_1 = require("../setup-tailwind/setup-tailwind");
|
|
13
10
|
const version_utils_1 = require("../utils/version-utils");
|
|
@@ -20,6 +17,10 @@ const update_lib_package_npm_scope_1 = require("./lib/update-lib-package-npm-sco
|
|
|
20
17
|
const update_tsconfig_1 = require("./lib/update-tsconfig");
|
|
21
18
|
const create_files_1 = require("./lib/create-files");
|
|
22
19
|
const add_project_1 = require("./lib/add-project");
|
|
20
|
+
const add_jest_1 = require("../utils/add-jest");
|
|
21
|
+
const set_generator_defaults_1 = require("./lib/set-generator-defaults");
|
|
22
|
+
const ensure_angular_dependencies_1 = require("../utils/ensure-angular-dependencies");
|
|
23
|
+
const log_show_project_command_1 = require("@nx/devkit/src/utils/log-show-project-command");
|
|
23
24
|
async function libraryGenerator(tree, schema) {
|
|
24
25
|
return await libraryGeneratorInternal(tree, {
|
|
25
26
|
// provide a default projectNameAndRootFormat to avoid breaking changes
|
|
@@ -40,23 +41,22 @@ async function libraryGeneratorInternal(tree, schema) {
|
|
|
40
41
|
if (schema.addTailwind && !schema.buildable && !schema.publishable) {
|
|
41
42
|
throw new Error(`To use "--addTailwind" option, you have to set either "--buildable" or "--publishable".`);
|
|
42
43
|
}
|
|
43
|
-
const userInstalledAngularVersion = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
44
|
-
if ((0, semver_1.lt)(userInstalledAngularVersion.version, '14.1.0') && schema.standalone) {
|
|
45
|
-
throw new Error(`The "--standalone" option is not supported in Angular versions < 14.1.0.`);
|
|
46
|
-
}
|
|
47
44
|
const options = await (0, normalize_options_1.normalizeOptions)(tree, schema);
|
|
48
45
|
const { libraryOptions } = options;
|
|
49
46
|
const pkgVersions = (0, version_utils_1.versions)(tree);
|
|
50
|
-
await (0,
|
|
47
|
+
await (0, js_1.initGenerator)(tree, {
|
|
51
48
|
...libraryOptions,
|
|
49
|
+
js: false,
|
|
52
50
|
skipFormat: true,
|
|
53
|
-
e2eTestRunner: test_runners_1.E2eTestRunner.None,
|
|
54
51
|
});
|
|
52
|
+
await (0, init_1.default)(tree, { ...libraryOptions, skipFormat: true });
|
|
53
|
+
(0, ensure_angular_dependencies_1.ensureAngularDependencies)(tree);
|
|
55
54
|
const project = (0, add_project_1.addProject)(tree, libraryOptions);
|
|
56
55
|
(0, create_files_1.createFiles)(tree, options, project);
|
|
57
56
|
(0, update_tsconfig_1.updateTsConfig)(tree, libraryOptions);
|
|
58
57
|
await addUnitTestRunner(tree, libraryOptions);
|
|
59
58
|
updateNpmScopeIfBuildableOrPublishable(tree, libraryOptions);
|
|
59
|
+
(0, set_generator_defaults_1.setGeneratorDefaults)(tree, options);
|
|
60
60
|
if (!libraryOptions.standalone) {
|
|
61
61
|
(0, add_module_1.addModule)(tree, libraryOptions);
|
|
62
62
|
}
|
|
@@ -69,6 +69,7 @@ async function libraryGeneratorInternal(tree, schema) {
|
|
|
69
69
|
await (0, setup_tailwind_1.default)(tree, {
|
|
70
70
|
project: libraryOptions.name,
|
|
71
71
|
skipFormat: true,
|
|
72
|
+
skipPackageJson: libraryOptions.skipPackageJson,
|
|
72
73
|
});
|
|
73
74
|
}
|
|
74
75
|
if (libraryOptions.buildable || libraryOptions.publishable) {
|
|
@@ -85,31 +86,18 @@ async function libraryGeneratorInternal(tree, schema) {
|
|
|
85
86
|
}
|
|
86
87
|
return () => {
|
|
87
88
|
(0, devkit_1.installPackagesTask)(tree);
|
|
89
|
+
(0, log_show_project_command_1.logShowProjectCommand)(libraryOptions.name);
|
|
88
90
|
};
|
|
89
91
|
}
|
|
90
92
|
exports.libraryGeneratorInternal = libraryGeneratorInternal;
|
|
91
93
|
async function addUnitTestRunner(host, options) {
|
|
92
94
|
if (options.unitTestRunner === 'jest') {
|
|
93
|
-
await (0,
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
supportTsx: false,
|
|
97
|
-
skipSerializers: false,
|
|
98
|
-
skipFormat: true,
|
|
95
|
+
await (0, add_jest_1.addJest)(host, {
|
|
96
|
+
name: options.name,
|
|
97
|
+
projectRoot: options.projectRoot,
|
|
99
98
|
skipPackageJson: options.skipPackageJson,
|
|
99
|
+
strict: options.strict,
|
|
100
100
|
});
|
|
101
|
-
const setupFile = (0, devkit_1.joinPathFragments)(options.projectRoot, 'src', 'test-setup.ts');
|
|
102
|
-
if (options.strict && host.exists(setupFile)) {
|
|
103
|
-
const contents = host.read(setupFile, 'utf-8');
|
|
104
|
-
host.write(setupFile, `// @ts-expect-error https://thymikee.github.io/jest-preset-angular/docs/getting-started/test-environment
|
|
105
|
-
globalThis.ngJest = {
|
|
106
|
-
testEnvironmentOptions: {
|
|
107
|
-
errorOnUnknownElements: true,
|
|
108
|
-
errorOnUnknownProperties: true,
|
|
109
|
-
},
|
|
110
|
-
};
|
|
111
|
-
${contents}`);
|
|
112
|
-
}
|
|
113
101
|
}
|
|
114
102
|
}
|
|
115
103
|
function updateNpmScopeIfBuildableOrPublishable(host, options) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "
|
|
2
|
+
"$schema": "https://json-schema.org/schema",
|
|
3
3
|
"$id": "GeneratorAngularLibrary",
|
|
4
4
|
"title": "Create a library",
|
|
5
5
|
"description": "Creates an Angular library.",
|
|
@@ -141,65 +141,65 @@
|
|
|
141
141
|
},
|
|
142
142
|
"standalone": {
|
|
143
143
|
"type": "boolean",
|
|
144
|
-
"description": "Generate a library that uses a standalone component instead of a module as the entry point.
|
|
145
|
-
"default":
|
|
144
|
+
"description": "Generate a library that uses a standalone component instead of a module as the entry point.",
|
|
145
|
+
"default": true
|
|
146
146
|
},
|
|
147
147
|
"displayBlock": {
|
|
148
|
-
"description": "Specifies if the component generated style will contain `:host { display: block; }`. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
148
|
+
"description": "Specifies if the component generated style will contain `:host { display: block; }`. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
149
149
|
"type": "boolean",
|
|
150
150
|
"default": false,
|
|
151
151
|
"alias": "b"
|
|
152
152
|
},
|
|
153
153
|
"inlineStyle": {
|
|
154
|
-
"description": "Include styles inline in the component.ts file. Only CSS styles can be included inline. By default, an external styles file is created and referenced in the component.ts file. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
154
|
+
"description": "Include styles inline in the component.ts file. Only CSS styles can be included inline. By default, an external styles file is created and referenced in the component.ts file. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
155
155
|
"type": "boolean",
|
|
156
156
|
"default": false,
|
|
157
157
|
"alias": "s"
|
|
158
158
|
},
|
|
159
159
|
"inlineTemplate": {
|
|
160
|
-
"description": "Include template inline in the component.ts file. By default, an external template file is created and referenced in the component.ts file. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
160
|
+
"description": "Include template inline in the component.ts file. By default, an external template file is created and referenced in the component.ts file. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
161
161
|
"type": "boolean",
|
|
162
162
|
"default": false,
|
|
163
163
|
"alias": "t"
|
|
164
164
|
},
|
|
165
165
|
"viewEncapsulation": {
|
|
166
|
-
"description": "The view encapsulation strategy to use in the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
166
|
+
"description": "The view encapsulation strategy to use in the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
167
167
|
"enum": ["Emulated", "None", "ShadowDom"],
|
|
168
168
|
"type": "string",
|
|
169
169
|
"alias": "v"
|
|
170
170
|
},
|
|
171
171
|
"changeDetection": {
|
|
172
|
-
"description": "The change detection strategy to use in the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
172
|
+
"description": "The change detection strategy to use in the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
173
173
|
"enum": ["Default", "OnPush"],
|
|
174
174
|
"type": "string",
|
|
175
175
|
"default": "Default",
|
|
176
176
|
"alias": "c"
|
|
177
177
|
},
|
|
178
178
|
"style": {
|
|
179
|
-
"description": "The file extension or preprocessor to use for style files, or `none` to skip generating the style file. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
179
|
+
"description": "The file extension or preprocessor to use for style files, or `none` to skip generating the style file. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
180
180
|
"type": "string",
|
|
181
181
|
"default": "css",
|
|
182
182
|
"enum": ["css", "scss", "sass", "less", "none"]
|
|
183
183
|
},
|
|
184
184
|
"skipTests": {
|
|
185
185
|
"type": "boolean",
|
|
186
|
-
"description": "Do not create `spec.ts` test files for the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
186
|
+
"description": "Do not create `spec.ts` test files for the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
187
187
|
"default": false
|
|
188
188
|
},
|
|
189
189
|
"selector": {
|
|
190
190
|
"type": "string",
|
|
191
191
|
"format": "html-selector",
|
|
192
|
-
"description": "The HTML selector to use for this component. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
192
|
+
"description": "The HTML selector to use for this component. Disclaimer: This option is only valid when `--standalone` is set to `true`."
|
|
193
193
|
},
|
|
194
194
|
"skipSelector": {
|
|
195
195
|
"type": "boolean",
|
|
196
196
|
"default": false,
|
|
197
|
-
"description": "Specifies if the component should have a selector or not. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
197
|
+
"description": "Specifies if the component should have a selector or not. Disclaimer: This option is only valid when `--standalone` is set to `true`."
|
|
198
198
|
},
|
|
199
199
|
"flat": {
|
|
200
200
|
"type": "boolean",
|
|
201
201
|
"default": false,
|
|
202
|
-
"description": "Ensure the generated standalone component is not placed in a subdirectory. Disclaimer: This option is only valid when `--standalone` is set to `true`.
|
|
202
|
+
"description": "Ensure the generated standalone component is not placed in a subdirectory. Disclaimer: This option is only valid when `--standalone` is set to `true`."
|
|
203
203
|
}
|
|
204
204
|
},
|
|
205
205
|
"additionalProperties": false,
|
|
@@ -1,5 +1 @@
|
|
|
1
|
-
<% if (!skipModule) { %>
|
|
2
|
-
export * from './lib/<%= fileName %>.module';
|
|
3
|
-
<% } else { %>
|
|
4
|
-
export const greeting = 'Hello World!';
|
|
5
|
-
<% } %>
|
|
1
|
+
<% if (!skipModule) { %>export * from './lib/<%= fileName %>.module';<% } else { %>export const greeting = 'Hello World!';<% } %>
|
|
@@ -4,5 +4,4 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./add-files"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./add-path-mapping"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./normalize-options"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./update-linting-file-patterns"), exports);
|
|
8
7
|
tslib_1.__exportStar(require("./update-tsconfig-included-files"), exports);
|
|
@@ -8,8 +8,9 @@ async function librarySecondaryEntryPointGenerator(tree, rawOptions) {
|
|
|
8
8
|
(0, lib_1.addFiles)(tree, options);
|
|
9
9
|
(0, lib_1.addPathMapping)(tree, options);
|
|
10
10
|
(0, lib_1.updateTsConfigIncludedFiles)(tree, options);
|
|
11
|
-
(
|
|
12
|
-
|
|
11
|
+
if (!options.skipFormat) {
|
|
12
|
+
await (0, devkit_1.formatFiles)(tree);
|
|
13
|
+
}
|
|
13
14
|
}
|
|
14
15
|
exports.librarySecondaryEntryPointGenerator = librarySecondaryEntryPointGenerator;
|
|
15
16
|
exports.default = librarySecondaryEntryPointGenerator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "
|
|
2
|
+
"$schema": "https://json-schema.org/schema",
|
|
3
3
|
"$id": "NxAngularLibrarySecondaryEntryPoint",
|
|
4
4
|
"title": "Creates a secondary entry point for a library",
|
|
5
5
|
"description": "Creates a secondary entry point for an Angular publishable library.",
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
"index": 0
|
|
15
15
|
},
|
|
16
16
|
"x-prompt": "What name would you like to use for the secondary entry point?",
|
|
17
|
-
"pattern": "
|
|
17
|
+
"pattern": "(?:^@[a-zA-Z0-9-*~][a-zA-Z0-9-*._~]*(?:\\/[a-zA-Z0-9-~][a-zA-Z0-9-._~]*)+|^[a-zA-Z][^:]*)$",
|
|
18
18
|
"x-priority": "important"
|
|
19
19
|
},
|
|
20
20
|
"library": {
|
|
21
21
|
"type": "string",
|
|
22
22
|
"description": "The name of the library to create the secondary entry point for.",
|
|
23
23
|
"x-prompt": "What library would you like to create the secondary entry point for?",
|
|
24
|
-
"pattern": "
|
|
24
|
+
"pattern": "(?:^@[a-zA-Z0-9-*~][a-zA-Z0-9-*._~]*\\/[a-zA-Z0-9-~][a-zA-Z0-9-._~]*|^[a-zA-Z][^:]*)$",
|
|
25
25
|
"x-dropdown": "projects",
|
|
26
26
|
"x-priority": "important"
|
|
27
27
|
},
|
|
@@ -29,6 +29,12 @@
|
|
|
29
29
|
"type": "boolean",
|
|
30
30
|
"description": "Skip generating a module for the secondary entry point.",
|
|
31
31
|
"default": false
|
|
32
|
+
},
|
|
33
|
+
"skipFormat": {
|
|
34
|
+
"description": "Skip formatting files.",
|
|
35
|
+
"type": "boolean",
|
|
36
|
+
"default": false,
|
|
37
|
+
"x-priority": "internal"
|
|
32
38
|
}
|
|
33
39
|
},
|
|
34
40
|
"additionalProperties": false,
|
|
@@ -47,7 +47,7 @@ async function migrateFromAngularCli(tree, options) {
|
|
|
47
47
|
(0, utilities_1.createRootKarmaConfig)(tree);
|
|
48
48
|
}
|
|
49
49
|
if (workspaceRootFileTypesInfo.eslint) {
|
|
50
|
-
(0, utilities_1.updateRootEsLintConfig)(tree, eslintConfig, options.unitTestRunner);
|
|
50
|
+
await (0, utilities_1.updateRootEsLintConfig)(tree, eslintConfig, options.unitTestRunner);
|
|
51
51
|
(0, utilities_1.cleanupEsLintPackages)(tree);
|
|
52
52
|
}
|
|
53
53
|
(0, utilities_1.deleteGitKeepFilesIfNotNeeded)(tree);
|
|
@@ -9,7 +9,13 @@ const builders_1 = require("../builders");
|
|
|
9
9
|
const e2e_migrator_1 = require("./e2e.migrator");
|
|
10
10
|
const project_migrator_1 = require("./project.migrator");
|
|
11
11
|
const supportedTargets = {
|
|
12
|
-
build: {
|
|
12
|
+
build: {
|
|
13
|
+
builders: [
|
|
14
|
+
'@angular-devkit/build-angular:application',
|
|
15
|
+
'@angular-devkit/build-angular:browser',
|
|
16
|
+
'@angular-devkit/build-angular:browser-esbuild',
|
|
17
|
+
],
|
|
18
|
+
},
|
|
13
19
|
e2e: {
|
|
14
20
|
acceptMultipleDefinitions: true,
|
|
15
21
|
builders: [
|
|
@@ -18,10 +24,20 @@ const supportedTargets = {
|
|
|
18
24
|
],
|
|
19
25
|
},
|
|
20
26
|
i18n: { builders: ['@angular-devkit/build-angular:extract-i18n'] },
|
|
21
|
-
prerender: {
|
|
27
|
+
prerender: {
|
|
28
|
+
builders: [
|
|
29
|
+
'@nguniversal/builders:prerender',
|
|
30
|
+
'@angular-devkit/build-angular:prerender',
|
|
31
|
+
],
|
|
32
|
+
},
|
|
22
33
|
serve: { builders: ['@angular-devkit/build-angular:dev-server'] },
|
|
23
34
|
server: { builders: ['@angular-devkit/build-angular:server'] },
|
|
24
|
-
serveSsr: {
|
|
35
|
+
serveSsr: {
|
|
36
|
+
builders: [
|
|
37
|
+
'@nguniversal/builders:ssr-dev-server',
|
|
38
|
+
'@angular-devkit/build-angular:ssr-dev-server',
|
|
39
|
+
],
|
|
40
|
+
},
|
|
25
41
|
};
|
|
26
42
|
// TODO(leo): this will replace `supportedTargets` once the full refactor is done.
|
|
27
43
|
const supportedBuilderMigrators = [
|
|
@@ -125,10 +141,22 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
125
141
|
buildOptions.outputPath =
|
|
126
142
|
buildOptions.outputPath &&
|
|
127
143
|
(0, devkit_1.joinPathFragments)('dist', this.project.newRoot, this.targetNames.server ? 'browser' : '');
|
|
128
|
-
buildOptions.index
|
|
129
|
-
buildOptions.index
|
|
144
|
+
if (buildOptions.index) {
|
|
145
|
+
if (typeof buildOptions.index === 'string') {
|
|
146
|
+
buildOptions.index = this.convertAsset(buildOptions.index);
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
buildOptions.index.input =
|
|
150
|
+
buildOptions.index.input &&
|
|
151
|
+
this.convertAsset(buildOptions.index.input);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
130
154
|
buildOptions.main =
|
|
131
155
|
buildOptions.main && this.convertAsset(buildOptions.main);
|
|
156
|
+
buildOptions.browser =
|
|
157
|
+
buildOptions.browser && this.convertAsset(buildOptions.browser);
|
|
158
|
+
buildOptions.server =
|
|
159
|
+
buildOptions.server && this.convertAsset(buildOptions.server);
|
|
132
160
|
buildOptions.polyfills =
|
|
133
161
|
buildOptions.polyfills &&
|
|
134
162
|
(Array.isArray(buildOptions.polyfills)
|
|
@@ -152,6 +180,20 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
152
180
|
replace: this.convertAsset(replacement.replace),
|
|
153
181
|
with: this.convertAsset(replacement.with),
|
|
154
182
|
}));
|
|
183
|
+
buildOptions.serviceWorker =
|
|
184
|
+
buildOptions.serviceWorker &&
|
|
185
|
+
typeof buildOptions.serviceWorker === 'string' &&
|
|
186
|
+
this.convertAsset(buildOptions.serviceWorker);
|
|
187
|
+
buildOptions.ngswConfigPath =
|
|
188
|
+
buildOptions.ngswConfigPath &&
|
|
189
|
+
this.convertAsset(buildOptions.ngswConfigPath);
|
|
190
|
+
if (buildOptions.prerender?.routesFile) {
|
|
191
|
+
buildOptions.prerender.routesFile = this.convertAsset(buildOptions.prerender.routesFile);
|
|
192
|
+
}
|
|
193
|
+
buildOptions.ssr =
|
|
194
|
+
buildOptions.ssr &&
|
|
195
|
+
typeof buildOptions.ssr === 'string' &&
|
|
196
|
+
this.convertAsset(buildOptions.ssr);
|
|
155
197
|
}
|
|
156
198
|
convertServerOptions(serverOptions) {
|
|
157
199
|
serverOptions.outputPath =
|
|
@@ -243,11 +285,12 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
243
285
|
this.shouldSkipTargetTypeMigration('serveSsr')) {
|
|
244
286
|
return;
|
|
245
287
|
}
|
|
246
|
-
const
|
|
288
|
+
const ssrTarget = this.targetNames.serveSsr ?? this.targetNames['serve-ssr'];
|
|
289
|
+
const serveSsrTarget = this.projectConfig.targets[ssrTarget];
|
|
247
290
|
if (!serveSsrTarget.options &&
|
|
248
291
|
(!serveSsrTarget.configurations ||
|
|
249
292
|
!Object.keys(serveSsrTarget.configurations).length)) {
|
|
250
|
-
this.logger.warn(`The target "${
|
|
293
|
+
this.logger.warn(`The target "${ssrTarget}" is not specifying any options or configurations. Skipping updating the target configuration.`);
|
|
251
294
|
return;
|
|
252
295
|
}
|
|
253
296
|
['sslKey', 'sslCert', 'proxyConfig'].forEach((option) => {
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.E2eMigrator = void 0;
|
|
4
|
-
const cypress_1 = require("@nx/cypress");
|
|
5
|
-
const cypress_preset_1 = require("@nx/cypress/plugins/cypress-preset");
|
|
6
|
-
const cypress_version_1 = require("@nx/cypress/src/utils/cypress-version");
|
|
7
4
|
const devkit_1 = require("@nx/devkit");
|
|
8
5
|
const eslint_1 = require("@nx/eslint");
|
|
9
6
|
const js_1 = require("@nx/js");
|
|
7
|
+
const ensure_typescript_1 = require("@nx/js/src/utils/typescript/ensure-typescript");
|
|
10
8
|
const path_1 = require("path");
|
|
11
|
-
const typescript_1 = require("typescript");
|
|
12
9
|
const file_change_recorder_1 = require("../../../../utils/file-change-recorder");
|
|
10
|
+
const versions_1 = require("../../../../utils/versions");
|
|
13
11
|
const project_migrator_1 = require("./project.migrator");
|
|
14
|
-
const ensure_typescript_1 = require("@nx/js/src/utils/typescript/ensure-typescript");
|
|
15
12
|
const supportedTargets = {
|
|
16
13
|
e2e: {
|
|
17
14
|
acceptMultipleDefinitions: true,
|
|
@@ -175,7 +172,9 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
175
172
|
};
|
|
176
173
|
}
|
|
177
174
|
else if (this.isCypressE2eProject()) {
|
|
178
|
-
|
|
175
|
+
(0, devkit_1.ensurePackage)('@nx/cypress', versions_1.nxVersion);
|
|
176
|
+
const { installedCypressVersion, } = require('@nx/cypress/src/utils/cypress-version');
|
|
177
|
+
this.cypressInstalledVersion = installedCypressVersion();
|
|
179
178
|
this.project = {
|
|
180
179
|
...this.project,
|
|
181
180
|
name,
|
|
@@ -217,7 +216,6 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
217
216
|
await (0, eslint_1.lintProjectGenerator)(this.tree, {
|
|
218
217
|
project: this.project.name,
|
|
219
218
|
linter: eslint_1.Linter.EsLint,
|
|
220
|
-
eslintFilePatterns: [`${this.project.newRoot}/**/*.{js,ts}`],
|
|
221
219
|
unitTestRunner: this.options.unitTestRunner,
|
|
222
220
|
tsConfigPaths: [
|
|
223
221
|
(0, devkit_1.joinPathFragments)(this.project.newRoot, 'tsconfig.json'),
|
|
@@ -236,12 +234,18 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
236
234
|
tags: [],
|
|
237
235
|
implicitDependencies: [this.appName],
|
|
238
236
|
});
|
|
239
|
-
|
|
237
|
+
const nxJson = (0, devkit_1.readNxJson)(this.tree) ?? {};
|
|
238
|
+
const addPlugin = process.env.NX_ADD_PLUGINS !== 'false' &&
|
|
239
|
+
nxJson.useInferencePlugins !== false;
|
|
240
|
+
const { configurationGenerator } = await Promise.resolve().then(() => require('@nx/cypress'));
|
|
241
|
+
await configurationGenerator(this.tree, {
|
|
240
242
|
project: this.project.name,
|
|
241
243
|
linter: this.isProjectUsingEsLint ? eslint_1.Linter.EsLint : eslint_1.Linter.None,
|
|
242
244
|
skipFormat: true,
|
|
243
245
|
// any target would do, we replace it later with the target existing in the project being migrated
|
|
244
246
|
devServerTarget: `${this.appName}:serve`,
|
|
247
|
+
baseUrl: 'http://localhost:4200',
|
|
248
|
+
addPlugin,
|
|
245
249
|
});
|
|
246
250
|
const cypressConfigFilePath = this.updateOrCreateCypressConfigFile(oldCypressConfigFilePath);
|
|
247
251
|
this.updateCypressProjectConfiguration(cypressConfigFilePath);
|
|
@@ -362,9 +366,10 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
362
366
|
: undefined;
|
|
363
367
|
}
|
|
364
368
|
updateCypress10ConfigFile(configFilePath) {
|
|
365
|
-
(0, ensure_typescript_1.ensureTypescript)();
|
|
369
|
+
const { isPropertyAssignment } = (0, ensure_typescript_1.ensureTypescript)();
|
|
366
370
|
const { tsquery } = require('@phenomnomnominal/tsquery');
|
|
367
|
-
|
|
371
|
+
const { nxE2EPreset } = require('@nx/cypress/plugins/cypress-preset');
|
|
372
|
+
this.cypressPreset = nxE2EPreset(configFilePath);
|
|
368
373
|
const fileContent = this.tree.read(configFilePath, 'utf-8');
|
|
369
374
|
let sourceFile = tsquery.ast(fileContent);
|
|
370
375
|
const recorder = new file_change_recorder_1.FileChangeRecorder(this.tree, configFilePath);
|
|
@@ -377,15 +382,15 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
377
382
|
let componentNode;
|
|
378
383
|
const globalConfig = {};
|
|
379
384
|
defineConfigExpression.forEachChild((node) => {
|
|
380
|
-
if (
|
|
385
|
+
if (isPropertyAssignment(node) && node.name.getText() === 'component') {
|
|
381
386
|
componentNode = node;
|
|
382
387
|
return;
|
|
383
388
|
}
|
|
384
|
-
if (
|
|
389
|
+
if (isPropertyAssignment(node) && node.name.getText() === 'e2e') {
|
|
385
390
|
e2eNode = node;
|
|
386
391
|
return;
|
|
387
392
|
}
|
|
388
|
-
if (
|
|
393
|
+
if (isPropertyAssignment(node)) {
|
|
389
394
|
this.updateCypressConfigNodeValue(recorder, node, globalConfig);
|
|
390
395
|
}
|
|
391
396
|
});
|
|
@@ -397,14 +402,15 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
397
402
|
if (!componentNode) {
|
|
398
403
|
return;
|
|
399
404
|
}
|
|
400
|
-
|
|
405
|
+
const { isObjectLiteralExpression, isPropertyAssignment } = (0, ensure_typescript_1.ensureTypescript)();
|
|
406
|
+
if (!isObjectLiteralExpression(componentNode.initializer)) {
|
|
401
407
|
this.logger.warn('The automatic migration only supports having an object literal in the "component" option of the Cypress configuration. ' +
|
|
402
408
|
`The configuration won't be updated. Please make sure to update any paths you may have in the "component" option ` +
|
|
403
409
|
'manually to point to the new location.');
|
|
404
410
|
return;
|
|
405
411
|
}
|
|
406
412
|
componentNode.initializer.properties.forEach((node) => {
|
|
407
|
-
if (
|
|
413
|
+
if (isPropertyAssignment(node)) {
|
|
408
414
|
this.updateCypressConfigNodeValue(recorder, node);
|
|
409
415
|
}
|
|
410
416
|
});
|
|
@@ -427,7 +433,8 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
427
433
|
recorder.insertRight(defineConfigNode.getStart() + 1, e2eAssignment);
|
|
428
434
|
}
|
|
429
435
|
else {
|
|
430
|
-
|
|
436
|
+
const { isObjectLiteralExpression, isPropertyAssignment } = (0, ensure_typescript_1.ensureTypescript)();
|
|
437
|
+
if (!isObjectLiteralExpression(e2eNode.initializer)) {
|
|
431
438
|
this.logger.warn('The automatic migration only supports having an object literal in the "e2e" option of the Cypress configuration. ' +
|
|
432
439
|
`The configuration won't be updated. Please make sure to update any paths you might have in the "e2e" option ` +
|
|
433
440
|
'manually to point to the new location.');
|
|
@@ -435,7 +442,7 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
435
442
|
}
|
|
436
443
|
recorder.insertRight(e2eNode.initializer.getStart() + 1, presetSpreadAssignment);
|
|
437
444
|
e2eNode.initializer.properties.forEach((node) => {
|
|
438
|
-
if (!
|
|
445
|
+
if (!isPropertyAssignment(node)) {
|
|
439
446
|
return;
|
|
440
447
|
}
|
|
441
448
|
let change = { type: 'ignore' };
|
|
@@ -514,7 +521,8 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
514
521
|
}
|
|
515
522
|
}
|
|
516
523
|
isValidPathLikePropertyWithStringLiteralValue(node, properties) {
|
|
517
|
-
|
|
524
|
+
const { isPropertyAssignment, isStringLiteralLike, isTemplateExpression, SyntaxKind, } = (0, ensure_typescript_1.ensureTypescript)();
|
|
525
|
+
if (!isPropertyAssignment(node)) {
|
|
518
526
|
// TODO(leo): handle more scenarios (spread assignments, etc)
|
|
519
527
|
return false;
|
|
520
528
|
}
|
|
@@ -522,13 +530,13 @@ class E2eMigrator extends project_migrator_1.ProjectMigrator {
|
|
|
522
530
|
if (!property) {
|
|
523
531
|
return false;
|
|
524
532
|
}
|
|
525
|
-
if (node.initializer.kind ===
|
|
526
|
-
node.initializer.kind ===
|
|
527
|
-
node.initializer.kind ===
|
|
533
|
+
if (node.initializer.kind === SyntaxKind.UndefinedKeyword ||
|
|
534
|
+
node.initializer.kind === SyntaxKind.NullKeyword ||
|
|
535
|
+
node.initializer.kind === SyntaxKind.FalseKeyword) {
|
|
528
536
|
return false;
|
|
529
537
|
}
|
|
530
|
-
if (!
|
|
531
|
-
if (
|
|
538
|
+
if (!isStringLiteralLike(node.initializer)) {
|
|
539
|
+
if (isTemplateExpression(node.initializer)) {
|
|
532
540
|
this.logger.warn(`The "${node.name.getText()}" in the Cypress configuration file is set to a template expression ("${node.initializer.getText()}"). ` +
|
|
533
541
|
`This is not supported by the automatic migration and its value won't be automatically migrated. ` +
|
|
534
542
|
`Please make sure to update its value to match the new location if needed.`);
|
|
@@ -1,16 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ngAddGenerator = void 0;
|
|
4
|
-
const init_1 = require("../init/init");
|
|
5
4
|
const migrate_from_angular_cli_1 = require("./migrate-from-angular-cli");
|
|
6
|
-
function getWorkspaceType(tree) {
|
|
7
|
-
return tree.exists('nx.json') ? 'nx' : 'angular';
|
|
8
|
-
}
|
|
9
5
|
async function ngAddGenerator(tree, options) {
|
|
10
|
-
|
|
11
|
-
return await (0, migrate_from_angular_cli_1.migrateFromAngularCli)(tree, options);
|
|
12
|
-
}
|
|
13
|
-
return await (0, init_1.angularInitGenerator)(tree, options);
|
|
6
|
+
return await (0, migrate_from_angular_cli_1.migrateFromAngularCli)(tree, options);
|
|
14
7
|
}
|
|
15
8
|
exports.ngAddGenerator = ngAddGenerator;
|
|
16
9
|
exports.default = ngAddGenerator;
|