@nx/angular 23.0.0 → 23.1.0-canary.20260619-9546855
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/README.md +1 -2
- package/dist/src/builders/dev-server/schema.json +2 -2
- package/dist/src/builders/webpack-browser/webpack-browser.impl.js +1 -1
- package/dist/src/executors/application/application.impl.js +3 -14
- package/dist/src/executors/application/schema.json +9 -3
- package/dist/src/executors/application/utils/normalize-options.js +19 -8
- package/dist/src/executors/application/utils/validate-options.js +0 -10
- package/dist/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/entry-point.d.ts +1 -1
- package/dist/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/entry-point.js +4 -21
- package/dist/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-bundles.di.d.ts +1 -1
- package/dist/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-bundles.di.js +6 -9
- package/dist/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-bundles.transform.js +7 -10
- package/dist/src/executors/unit-test/schema.json +8 -0
- package/dist/src/executors/unit-test/unit-test.impl.d.ts +1 -2
- package/dist/src/executors/unit-test/unit-test.impl.js +8 -0
- package/dist/src/executors/utilities/esbuild-extensions.js +17 -3
- package/dist/src/executors/utilities/ng-packagr/stylesheet-processor.di.js +2 -5
- package/dist/src/executors/utilities/ng-packagr/stylesheet-processor.js +11 -19
- package/dist/src/executors/utilities/typescript.js +2 -4
- package/dist/src/generators/application/application.js +11 -15
- package/dist/src/generators/application/files/base/tsconfig.app.json__tpl__ +0 -5
- package/dist/src/generators/application/files/base/tsconfig.json__tpl__ +1 -4
- package/dist/src/generators/application/files/ng-module/src/app/app__componentFileSuffix__.spec.ts__tpl__ +1 -7
- package/dist/src/generators/application/files/ng-module/src/app/app__componentFileSuffix__.ts__tpl__ +1 -1
- package/dist/src/generators/application/files/ng-module/src/app/app__moduleTypeSeparator__module.ts__tpl__ +2 -2
- package/dist/src/generators/application/files/ng-module/src/main.ts__tpl__ +0 -8
- package/dist/src/generators/application/files/standalone-components/src/app/app.config.ts__tpl__ +3 -3
- package/dist/src/generators/application/files/standalone-components/src/app/app__componentFileSuffix__.spec.ts__tpl__ +1 -7
- package/dist/src/generators/application/files/standalone-components/src/app/app__componentFileSuffix__.ts__tpl__ +1 -1
- package/dist/src/generators/application/lib/create-files.js +0 -8
- package/dist/src/generators/application/lib/create-project.js +3 -12
- package/dist/src/generators/application/lib/update-tsconfig-files.js +6 -36
- package/dist/src/generators/application/schema.d.ts +0 -1
- package/dist/src/generators/application/schema.json +0 -4
- package/dist/src/generators/component/component.js +1 -0
- package/dist/src/generators/component/files/__fileName__.ts__tpl__ +3 -2
- package/dist/src/generators/component/lib/index.d.ts +1 -0
- package/dist/src/generators/component/lib/index.js +1 -0
- package/dist/src/generators/component/lib/normalize-options.js +2 -4
- package/dist/src/generators/component/lib/validate-options.d.ts +3 -0
- package/dist/src/generators/component/lib/validate-options.js +10 -0
- package/dist/src/generators/component/schema.d.ts +1 -1
- package/dist/src/generators/component/schema.json +3 -4
- package/dist/src/generators/convert-to-application-executor/convert-to-application-executor.js +1 -6
- package/dist/src/generators/convert-to-rspack/convert-to-rspack.js +1 -2
- package/dist/src/generators/directive/lib/normalize-options.js +0 -5
- package/dist/src/generators/directive/schema.json +1 -1
- package/dist/src/generators/library/lib/normalized-schema.d.ts +1 -1
- package/dist/src/generators/library/lib/update-tsconfig-files.js +6 -14
- package/dist/src/generators/library/schema.d.ts +1 -1
- package/dist/src/generators/library/schema.json +2 -3
- package/dist/src/generators/pipe/lib/normalize-options.js +1 -3
- package/dist/src/generators/pipe/schema.json +1 -1
- package/dist/src/generators/remote/lib/update-ssr-setup.js +1 -4
- package/dist/src/generators/scam/lib/normalize-options.js +0 -5
- package/dist/src/generators/scam/schema.d.ts +1 -1
- package/dist/src/generators/scam/schema.json +3 -4
- package/dist/src/generators/scam-directive/lib/normalize-options.js +0 -5
- package/dist/src/generators/scam-directive/schema.json +1 -1
- package/dist/src/generators/scam-pipe/lib/normalize-options.js +1 -3
- package/dist/src/generators/scam-pipe/schema.json +1 -1
- package/dist/src/generators/setup-mf/setup-mf.js +4 -7
- package/dist/src/generators/setup-ssr/lib/add-dependencies.js +1 -4
- package/dist/src/generators/setup-ssr/lib/add-server-file.js +3 -13
- package/dist/src/generators/setup-ssr/lib/generate-files.js +5 -27
- package/dist/src/generators/setup-ssr/lib/generate-server-ts-config.js +11 -20
- package/dist/src/generators/setup-ssr/lib/normalize-options.js +0 -17
- package/dist/src/generators/setup-ssr/lib/update-project-config.js +1 -6
- package/dist/src/generators/setup-ssr/lib/validate-options.js +0 -14
- package/dist/src/generators/setup-ssr/schema.d.ts +0 -1
- package/dist/src/generators/setup-ssr/schema.json +0 -4
- package/dist/src/generators/utils/app-components-info.js +1 -5
- package/dist/src/generators/utils/artifact-types.js +2 -10
- package/dist/src/generators/utils/ensure-angular-dependencies.js +0 -5
- package/dist/src/generators/utils/update-project-root-tsconfig.js +4 -4
- package/dist/src/generators/utils/version-utils.d.ts +0 -5
- package/dist/src/generators/utils/version-utils.js +0 -13
- package/dist/src/migrations/update-23-1-0/add-istanbul-instrumenter.d.ts +2 -0
- package/dist/src/migrations/update-23-1-0/add-istanbul-instrumenter.js +56 -0
- package/dist/src/migrations/update-23-1-0/add-istanbul-instrumenter.md +65 -0
- package/dist/src/migrations/update-23-1-0/add-trust-proxy-headers.d.ts +2 -0
- package/dist/src/migrations/update-23-1-0/add-trust-proxy-headers.js +61 -0
- package/dist/src/migrations/update-23-1-0/add-trust-proxy-headers.md +48 -0
- package/dist/src/migrations/update-23-1-0/rename-ssr-experimental-platform.d.ts +2 -0
- package/dist/src/migrations/update-23-1-0/rename-ssr-experimental-platform.js +70 -0
- package/dist/src/migrations/update-23-1-0/rename-ssr-experimental-platform.md +85 -0
- package/dist/src/utils/backward-compatible-versions.d.ts +2 -2
- package/dist/src/utils/backward-compatible-versions.js +23 -24
- package/dist/src/utils/versions.d.ts +7 -7
- package/dist/src/utils/versions.js +7 -7
- package/dist/src/utils/zoneless.d.ts +1 -1
- package/dist/types/nx-angular-mf.d.ts.map +1 -1
- package/dist/types/nx-angular.d.ts.map +1 -1
- package/migrations.json +188 -0
- package/package.json +18 -17
- package/dist/src/executors/extract-i18n/utils/validate-options.d.ts +0 -2
- package/dist/src/executors/extract-i18n/utils/validate-options.js +0 -13
- package/dist/src/executors/utilities/ng-packagr/package-imports.d.ts +0 -3
- package/dist/src/executors/utilities/ng-packagr/package-imports.js +0 -10
- package/dist/src/generators/application/files/base/tsconfig.editor.json__tpl__ +0 -5
- package/dist/src/generators/setup-ssr/files/v19/application-builder/ngmodule-src/__main__ +0 -1
- package/dist/src/generators/setup-ssr/files/v19/application-builder/ngmodule-src/app/__rootModuleFileName__ +0 -13
- package/dist/src/generators/setup-ssr/files/v19/application-builder/ngmodule-src/app/app.routes.server.ts__tpl__ +0 -8
- package/dist/src/generators/setup-ssr/files/v19/application-builder/server/__serverFileName__ +0 -66
- package/dist/src/generators/setup-ssr/files/v19/application-builder/standalone-src/__main__ +0 -12
- package/dist/src/generators/setup-ssr/files/v19/application-builder/standalone-src/app/app.config.server.ts__tpl__ +0 -14
- package/dist/src/generators/setup-ssr/files/v19/application-builder/standalone-src/app/app.routes.server.ts__tpl__ +0 -8
- package/dist/src/generators/setup-ssr/files/v19/application-builder-common-engine/server/__serverFileName__ +0 -67
- package/dist/src/generators/setup-ssr/files/v19/server-builder/ngmodule-src/__main__ +0 -1
- package/dist/src/generators/setup-ssr/files/v19/server-builder/ngmodule-src/app/__rootModuleFileName__ +0 -14
- package/dist/src/generators/setup-ssr/files/v19/server-builder/root/tsconfig.server.json.template +0 -16
- package/dist/src/generators/setup-ssr/files/v19/server-builder/server/__serverFileName__ +0 -69
- package/dist/src/generators/setup-ssr/files/v19/server-builder/standalone-src/__main__ +0 -12
- package/dist/src/generators/setup-ssr/files/v19/server-builder/standalone-src/app/app.config.server.ts.template +0 -11
|
@@ -16,11 +16,5 @@ describe('App<%= componentType %>', () => {
|
|
|
16
16
|
expect(compiled.querySelector('h1')?.textContent).toContain(
|
|
17
17
|
'Welcome <%= appName %>'
|
|
18
18
|
);
|
|
19
|
-
})
|
|
20
|
-
|
|
21
|
-
it(`should have as title '<%= appName %>'`, () => {
|
|
22
|
-
const fixture = TestBed.createComponent(App<%= componentType %>);
|
|
23
|
-
const app = fixture.componentInstance;
|
|
24
|
-
expect(app.title).toEqual('<%= appName %>');
|
|
25
|
-
});<% } %>
|
|
19
|
+
});
|
|
26
20
|
});
|
|
@@ -12,5 +12,5 @@ import { NxWelcome<%= componentType %> } from './nx-welcome<%= componentFileSuff
|
|
|
12
12
|
encapsulation: ViewEncapsulation.<%= viewEncapsulation %>,<% } %>
|
|
13
13
|
})
|
|
14
14
|
export class App<%= componentType %> {<% if(!minimal) { %>
|
|
15
|
-
|
|
15
|
+
protected title = '<%= appName %>';
|
|
16
16
|
<% } %>}
|
|
@@ -8,9 +8,7 @@ const test_runners_1 = require("../../../utils/test-runners");
|
|
|
8
8
|
const artifact_types_1 = require("../../utils/artifact-types");
|
|
9
9
|
const selector_1 = require("../../utils/selector");
|
|
10
10
|
const update_project_root_tsconfig_1 = require("../../utils/update-project-root-tsconfig");
|
|
11
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
12
11
|
async function createFiles(tree, options, rootOffset) {
|
|
13
|
-
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
14
12
|
const rootSelector = `${options.prefix}-root`;
|
|
15
13
|
(0, selector_1.validateHtmlSelector)(rootSelector);
|
|
16
14
|
const nxWelcomeSelector = `${options.prefix}-nx-welcome`;
|
|
@@ -33,10 +31,7 @@ async function createFiles(tree, options, rootOffset) {
|
|
|
33
31
|
minimal: options.minimal,
|
|
34
32
|
nxWelcomeSelector,
|
|
35
33
|
rootTsConfig: (0, devkit_1.joinPathFragments)(rootOffset, (0, js_1.getRootTsConfigFileName)(tree)),
|
|
36
|
-
angularMajorVersion,
|
|
37
34
|
rootOffset,
|
|
38
|
-
provideGlobalErrorListener: angularMajorVersion >= 20,
|
|
39
|
-
usePlatformBrowserDynamic: angularMajorVersion < 20,
|
|
40
35
|
componentType: componentType ? (0, devkit_1.names)(componentType).className : '',
|
|
41
36
|
componentFileSuffix,
|
|
42
37
|
moduleTypeSeparator,
|
|
@@ -49,9 +44,6 @@ async function createFiles(tree, options, rootOffset) {
|
|
|
49
44
|
};
|
|
50
45
|
const angularAppType = options.standalone ? 'standalone' : 'ng-module';
|
|
51
46
|
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/base'), options.appProjectRoot, substitutions);
|
|
52
|
-
if (angularMajorVersion >= 20) {
|
|
53
|
-
tree.delete((0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.editor.json'));
|
|
54
|
-
}
|
|
55
47
|
if (options.standalone) {
|
|
56
48
|
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/standalone-components'), options.appProjectRoot, substitutions);
|
|
57
49
|
}
|
|
@@ -16,9 +16,7 @@ function createProject(tree, options) {
|
|
|
16
16
|
}
|
|
17
17
|
function createProjectForEsbuild(tree, options) {
|
|
18
18
|
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
19
|
-
const buildExecutor =
|
|
20
|
-
? '@angular/build:application'
|
|
21
|
-
: '@angular-devkit/build-angular:application';
|
|
19
|
+
const buildExecutor = '@angular/build:application';
|
|
22
20
|
(0, internal_1.addBuildTargetDefaults)(tree, buildExecutor);
|
|
23
21
|
let budgets = undefined;
|
|
24
22
|
if (options.strict) {
|
|
@@ -55,9 +53,6 @@ function createProjectForEsbuild(tree, options) {
|
|
|
55
53
|
outputs: ['{options.outputPath}'],
|
|
56
54
|
options: {
|
|
57
55
|
outputPath: options.outputPath,
|
|
58
|
-
index: angularMajorVersion >= 20
|
|
59
|
-
? undefined
|
|
60
|
-
: `${options.appProjectSourceRoot}/index.html`,
|
|
61
56
|
browser: `${options.appProjectSourceRoot}/main.ts`,
|
|
62
57
|
polyfills: options.zoneless ? undefined : ['zone.js'],
|
|
63
58
|
tsConfig: (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json'),
|
|
@@ -85,9 +80,7 @@ function createProjectForEsbuild(tree, options) {
|
|
|
85
80
|
},
|
|
86
81
|
serve: {
|
|
87
82
|
continuous: true,
|
|
88
|
-
executor:
|
|
89
|
-
? '@angular/build:dev-server'
|
|
90
|
-
: '@angular-devkit/build-angular:dev-server',
|
|
83
|
+
executor: '@angular/build:dev-server',
|
|
91
84
|
options: options.port ? { port: options.port } : undefined,
|
|
92
85
|
configurations: {
|
|
93
86
|
production: {
|
|
@@ -101,9 +94,7 @@ function createProjectForEsbuild(tree, options) {
|
|
|
101
94
|
},
|
|
102
95
|
'extract-i18n': angularMajorVersion < 21
|
|
103
96
|
? {
|
|
104
|
-
executor:
|
|
105
|
-
? '@angular/build:extract-i18n'
|
|
106
|
-
: '@angular-devkit/build-angular:extract-i18n',
|
|
97
|
+
executor: '@angular/build:extract-i18n',
|
|
107
98
|
options: {
|
|
108
99
|
buildTarget: `${options.name}:build`,
|
|
109
100
|
},
|
|
@@ -4,14 +4,11 @@ exports.updateTsconfigFiles = updateTsconfigFiles;
|
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const js_1 = require("@nx/js");
|
|
6
6
|
const internal_1 = require("@nx/js/internal");
|
|
7
|
-
const semver_1 = require("semver");
|
|
8
7
|
const tsconfig_utils_1 = require("../../utils/tsconfig-utils");
|
|
9
|
-
const update_app_editor_tsconfig_excluded_files_1 = require("../../utils/update-app-editor-tsconfig-excluded-files");
|
|
10
8
|
const version_utils_1 = require("../../utils/version-utils");
|
|
11
9
|
const enable_strict_type_checking_1 = require("./enable-strict-type-checking");
|
|
12
10
|
function updateTsconfigFiles(tree, options) {
|
|
13
11
|
(0, enable_strict_type_checking_1.enableStrictTypeChecking)(tree, options);
|
|
14
|
-
updateEditorTsConfig(tree, options);
|
|
15
12
|
const compilerOptions = {
|
|
16
13
|
skipLibCheck: true,
|
|
17
14
|
experimentalDecorators: true,
|
|
@@ -21,26 +18,16 @@ function updateTsconfigFiles(tree, options) {
|
|
|
21
18
|
moduleResolution: 'bundler',
|
|
22
19
|
};
|
|
23
20
|
const rootTsConfigPath = (0, js_1.getRootTsConfigFileName)(tree);
|
|
24
|
-
const { major: angularMajorVersion
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
compilerOptions.emitDecoratorMetadata = false;
|
|
30
|
-
}
|
|
21
|
+
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
22
|
+
// Angular warns about emitDecoratorMetadata when isolatedModules is enabled,
|
|
23
|
+
// so disable it if it's set in the root tsconfig.
|
|
24
|
+
if ((0, tsconfig_utils_1.getDefinedCompilerOption)(tree, rootTsConfigPath, 'emitDecoratorMetadata') === true) {
|
|
25
|
+
compilerOptions.emitDecoratorMetadata = false;
|
|
31
26
|
}
|
|
32
27
|
if (angularMajorVersion >= 21) {
|
|
33
28
|
compilerOptions.moduleResolution = 'bundler';
|
|
34
29
|
}
|
|
35
|
-
|
|
36
|
-
compilerOptions.module = 'preserve';
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
compilerOptions.module = 'es2022';
|
|
40
|
-
if (options.bundler === 'esbuild') {
|
|
41
|
-
compilerOptions.esModuleInterop = true;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
30
|
+
compilerOptions.module = 'preserve';
|
|
44
31
|
const tsconfigPath = (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.json');
|
|
45
32
|
(0, devkit_1.updateJson)(tree, tsconfigPath, (json) => {
|
|
46
33
|
json.compilerOptions = {
|
|
@@ -68,20 +55,3 @@ function updateTsconfigFiles(tree, options) {
|
|
|
68
55
|
});
|
|
69
56
|
}
|
|
70
57
|
}
|
|
71
|
-
function updateEditorTsConfig(tree, options) {
|
|
72
|
-
const tsconfigEditorPath = (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.editor.json');
|
|
73
|
-
if (!tree.exists(tsconfigEditorPath)) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
const appTsConfig = (0, devkit_1.readJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.app.json'));
|
|
77
|
-
const types = appTsConfig?.compilerOptions?.types ?? [];
|
|
78
|
-
if (types?.length) {
|
|
79
|
-
(0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(options.appProjectRoot, 'tsconfig.editor.json'), (json) => {
|
|
80
|
-
json.compilerOptions ??= {};
|
|
81
|
-
json.compilerOptions.types = Array.from(new Set(types));
|
|
82
|
-
return json;
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
const project = (0, devkit_1.readProjectConfiguration)(tree, options.name);
|
|
86
|
-
(0, update_app_editor_tsconfig_excluded_files_1.updateAppEditorTsConfigExcludedFiles)(tree, project);
|
|
87
|
-
}
|
|
@@ -170,10 +170,6 @@
|
|
|
170
170
|
"x-prompt": "Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)?",
|
|
171
171
|
"default": false
|
|
172
172
|
},
|
|
173
|
-
"serverRouting": {
|
|
174
|
-
"description": "Creates a server application using the Server Routing and App Engine APIs for application using the `application` builder (Developer Preview). _Note: this is only supported in Angular versions 19.x.x_. From Angular 20 onwards, SSR will always enable server routing when using the `application` builder.",
|
|
175
|
-
"type": "boolean"
|
|
176
|
-
},
|
|
177
173
|
"zoneless": {
|
|
178
174
|
"description": "Generate an application that does not use `zone.js`. It defaults to `true`. _Note: this is only supported in Angular versions >= 21.0.0_",
|
|
179
175
|
"type": "boolean"
|
|
@@ -9,6 +9,7 @@ const version_utils_1 = require("../utils/version-utils");
|
|
|
9
9
|
const lib_1 = require("./lib");
|
|
10
10
|
async function componentGenerator(tree, rawOptions) {
|
|
11
11
|
(0, assert_supported_angular_version_1.assertSupportedAngularVersion)(tree);
|
|
12
|
+
(0, lib_1.validateOptions)(tree, rawOptions);
|
|
12
13
|
const options = await (0, lib_1.normalizeOptions)(tree, rawOptions);
|
|
13
14
|
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
14
15
|
const project = (0, devkit_1.readProjectConfiguration)(tree, options.projectName);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
<%_ const changeDetectionDefault = angularMajorVersion >= 22 ? 'OnPush' : 'Default'; _%>
|
|
2
|
+
import { <% if(changeDetection !== changeDetectionDefault) { %>ChangeDetectionStrategy, <% }%>Component<% if(!!viewEncapsulation) { %>, ViewEncapsulation<% }%> } from '@angular/core';
|
|
2
3
|
|
|
3
4
|
@Component({<% if(!skipSelector) {%>
|
|
4
5
|
selector: '<%= selector %>',<%}%><% if (!standalone) { %>
|
|
@@ -12,7 +13,7 @@ import { <% if(changeDetection !== 'Default') { %>ChangeDetectionStrategy, <% }%
|
|
|
12
13
|
}
|
|
13
14
|
<% } %>`<% } else if (style !== 'none') { %>,
|
|
14
15
|
styleUrl: './<%= fileName %>.<%= style %>'<% } %><% if(!!viewEncapsulation) { %>,
|
|
15
|
-
encapsulation: ViewEncapsulation.<%= viewEncapsulation %><% } if (changeDetection !==
|
|
16
|
+
encapsulation: ViewEncapsulation.<%= viewEncapsulation %><% } if (changeDetection !== changeDetectionDefault) { %>,
|
|
16
17
|
changeDetection: ChangeDetectionStrategy.<%= changeDetection %><% } %>
|
|
17
18
|
})
|
|
18
19
|
export <% if (exportDefault) {%>default <%}%>class <%= symbolName %> {}
|
|
@@ -5,3 +5,4 @@ tslib_1.__exportStar(require("./component"), exports);
|
|
|
5
5
|
tslib_1.__exportStar(require("./module"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./normalize-options"), exports);
|
|
7
7
|
tslib_1.__exportStar(require("./set-generator-defaults"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./validate-options"), exports);
|
|
@@ -8,9 +8,6 @@ const validations_1 = require("../../utils/validations");
|
|
|
8
8
|
const version_utils_1 = require("../../utils/version-utils");
|
|
9
9
|
async function normalizeOptions(tree, options) {
|
|
10
10
|
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
11
|
-
if (angularMajorVersion < 20) {
|
|
12
|
-
options.type ??= 'component';
|
|
13
|
-
}
|
|
14
11
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
15
12
|
name: options.name,
|
|
16
13
|
path: options.path,
|
|
@@ -32,7 +29,8 @@ async function normalizeOptions(tree, options) {
|
|
|
32
29
|
...options,
|
|
33
30
|
name,
|
|
34
31
|
projectName,
|
|
35
|
-
changeDetection: options.changeDetection ??
|
|
32
|
+
changeDetection: options.changeDetection ??
|
|
33
|
+
(angularMajorVersion >= 22 ? 'OnPush' : 'Default'),
|
|
36
34
|
style: options.style ?? 'css',
|
|
37
35
|
standalone: options.standalone ?? true,
|
|
38
36
|
directory,
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateOptions = validateOptions;
|
|
4
|
+
const version_utils_1 = require("../../utils/version-utils");
|
|
5
|
+
function validateOptions(tree, options) {
|
|
6
|
+
const { major: angularMajorVersion, version: angularVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
7
|
+
if (options.changeDetection === 'Eager' && angularMajorVersion < 22) {
|
|
8
|
+
throw new Error(`The "Eager" change detection strategy is only supported for Angular versions >= 22.0.0. You are using Angular ${angularVersion}.`);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -6,7 +6,7 @@ export interface Schema {
|
|
|
6
6
|
inlineTemplate?: boolean;
|
|
7
7
|
standalone?: boolean;
|
|
8
8
|
viewEncapsulation?: 'Emulated' | 'None' | 'ShadowDom';
|
|
9
|
-
changeDetection?: 'Default' | 'OnPush';
|
|
9
|
+
changeDetection?: 'Default' | 'Eager' | 'OnPush';
|
|
10
10
|
style?: 'css' | 'scss' | 'sass' | 'less' | 'none';
|
|
11
11
|
skipTests?: boolean;
|
|
12
12
|
type?: string;
|
|
@@ -56,10 +56,9 @@
|
|
|
56
56
|
"alias": "v"
|
|
57
57
|
},
|
|
58
58
|
"changeDetection": {
|
|
59
|
-
"description": "The change detection strategy to use in the new component.",
|
|
60
|
-
"enum": ["Default", "OnPush"],
|
|
59
|
+
"description": "The change detection strategy to use in the new component. It defaults to `OnPush` for Angular versions >= 22.0.0 and `Default` for lower versions. _Note: the `Eager` value is only supported in Angular versions >= 22.0.0_.",
|
|
60
|
+
"enum": ["Default", "Eager", "OnPush"],
|
|
61
61
|
"type": "string",
|
|
62
|
-
"default": "Default",
|
|
63
62
|
"alias": "c"
|
|
64
63
|
},
|
|
65
64
|
"module": {
|
|
@@ -95,7 +94,7 @@
|
|
|
95
94
|
},
|
|
96
95
|
"type": {
|
|
97
96
|
"type": "string",
|
|
98
|
-
"description": "Append a custom type to the component's filename.
|
|
97
|
+
"description": "Append a custom type to the component's filename. No type is appended unless specified."
|
|
99
98
|
},
|
|
100
99
|
"export": {
|
|
101
100
|
"type": "boolean",
|
package/dist/src/generators/convert-to-application-executor/convert-to-application-executor.js
CHANGED
|
@@ -7,7 +7,6 @@ const assert_supported_angular_version_1 = require("../../utils/assert-supported
|
|
|
7
7
|
const targets_1 = require("../../utils/targets");
|
|
8
8
|
const setup_ssr_1 = require("../setup-ssr/setup-ssr");
|
|
9
9
|
const validations_1 = require("../utils/validations");
|
|
10
|
-
const version_utils_1 = require("../utils/version-utils");
|
|
11
10
|
const executorsToConvert = new Set([
|
|
12
11
|
'@angular-devkit/build-angular:browser',
|
|
13
12
|
'@angular-devkit/build-angular:browser-esbuild',
|
|
@@ -76,11 +75,7 @@ async function convertProjectTargets(tree, projectName, isProvidedProject = fals
|
|
|
76
75
|
newExecutor = '@nx/angular:application';
|
|
77
76
|
}
|
|
78
77
|
else {
|
|
79
|
-
|
|
80
|
-
newExecutor =
|
|
81
|
-
angularMajorVersion >= 20
|
|
82
|
-
? '@angular/build:application'
|
|
83
|
-
: '@angular-devkit/build-angular:application';
|
|
78
|
+
newExecutor = '@angular/build:application';
|
|
84
79
|
}
|
|
85
80
|
const buildTarget = project.targets[buildTargetName];
|
|
86
81
|
buildTarget.executor = newExecutor;
|
|
@@ -505,9 +505,8 @@ async function convertToRspack(tree, schema) {
|
|
|
505
505
|
}
|
|
506
506
|
if (!schema.skipInstall) {
|
|
507
507
|
const { webpackMergeVersion, tsNodeVersion } = (0, version_utils_1.versions)(tree);
|
|
508
|
-
const angularRspackVersion = (0, version_utils_1.getAngularRspackVersion)(tree);
|
|
509
508
|
const installTask = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, {
|
|
510
|
-
'@nx/angular-rspack':
|
|
509
|
+
'@nx/angular-rspack': versions_1.nxVersion,
|
|
511
510
|
'webpack-merge': webpackMergeVersion,
|
|
512
511
|
'ts-node': tsNodeVersion,
|
|
513
512
|
});
|
|
@@ -5,12 +5,7 @@ const devkit_1 = require("@nx/devkit");
|
|
|
5
5
|
const internal_1 = require("@nx/devkit/internal");
|
|
6
6
|
const selector_1 = require("../../utils/selector");
|
|
7
7
|
const validations_1 = require("../../utils/validations");
|
|
8
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
9
8
|
async function normalizeOptions(tree, options) {
|
|
10
|
-
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
11
|
-
if (angularMajorVersion < 20) {
|
|
12
|
-
options.type ??= 'directive';
|
|
13
|
-
}
|
|
14
9
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
15
10
|
name: options.name,
|
|
16
11
|
path: options.path,
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
},
|
|
85
85
|
"type": {
|
|
86
86
|
"type": "string",
|
|
87
|
-
"description": "Append a custom type to the directive's filename.
|
|
87
|
+
"description": "Append a custom type to the directive's filename. No type is appended unless specified."
|
|
88
88
|
},
|
|
89
89
|
"skipFormat": {
|
|
90
90
|
"type": "boolean",
|
|
@@ -44,7 +44,7 @@ export interface NormalizedSchema {
|
|
|
44
44
|
inlineStyle?: boolean;
|
|
45
45
|
inlineTemplate?: boolean;
|
|
46
46
|
viewEncapsulation?: 'Emulated' | 'None' | 'ShadowDom';
|
|
47
|
-
changeDetection?: 'Default' | 'OnPush';
|
|
47
|
+
changeDetection?: 'Default' | 'Eager' | 'OnPush';
|
|
48
48
|
style?: 'css' | 'scss' | 'sass' | 'less' | 'none';
|
|
49
49
|
skipTests?: boolean;
|
|
50
50
|
selector?: string;
|
|
@@ -4,7 +4,6 @@ exports.updateTsConfigFiles = updateTsConfigFiles;
|
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const js_1 = require("@nx/js");
|
|
6
6
|
const internal_1 = require("@nx/js/internal");
|
|
7
|
-
const semver_1 = require("semver");
|
|
8
7
|
const tsconfig_utils_1 = require("../../utils/tsconfig-utils");
|
|
9
8
|
const update_project_root_tsconfig_1 = require("../../utils/update-project-root-tsconfig");
|
|
10
9
|
const version_utils_1 = require("../../utils/version-utils");
|
|
@@ -36,23 +35,16 @@ function updateTsConfigFiles(tree, options) {
|
|
|
36
35
|
: {}),
|
|
37
36
|
};
|
|
38
37
|
const rootTsConfigPath = (0, js_1.getRootTsConfigFileName)(tree);
|
|
39
|
-
const { major: angularMajorVersion
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
compilerOptions.emitDecoratorMetadata = false;
|
|
45
|
-
}
|
|
38
|
+
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
39
|
+
// Angular warns about emitDecoratorMetadata when isolatedModules is enabled,
|
|
40
|
+
// so disable it if it's set in the root tsconfig.
|
|
41
|
+
if ((0, tsconfig_utils_1.getDefinedCompilerOption)(tree, rootTsConfigPath, 'emitDecoratorMetadata') === true) {
|
|
42
|
+
compilerOptions.emitDecoratorMetadata = false;
|
|
46
43
|
}
|
|
47
44
|
if (angularMajorVersion >= 21) {
|
|
48
45
|
compilerOptions.moduleResolution = 'bundler';
|
|
49
46
|
}
|
|
50
|
-
|
|
51
|
-
compilerOptions.module = 'preserve';
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
compilerOptions.module = 'es2022';
|
|
55
|
-
}
|
|
47
|
+
compilerOptions.module = 'preserve';
|
|
56
48
|
const tsconfigPath = (0, devkit_1.joinPathFragments)(options.projectRoot, 'tsconfig.json');
|
|
57
49
|
(0, devkit_1.updateJson)(tree, tsconfigPath, (json) => {
|
|
58
50
|
json.compilerOptions = {
|
|
@@ -30,7 +30,7 @@ export interface Schema {
|
|
|
30
30
|
inlineStyle?: boolean;
|
|
31
31
|
inlineTemplate?: boolean;
|
|
32
32
|
viewEncapsulation?: 'Emulated' | 'None' | 'ShadowDom';
|
|
33
|
-
changeDetection?: 'Default' | 'OnPush';
|
|
33
|
+
changeDetection?: 'Default' | 'Eager' | 'OnPush';
|
|
34
34
|
style?: 'css' | 'scss' | 'sass' | 'less' | 'none';
|
|
35
35
|
skipTests?: boolean;
|
|
36
36
|
selector?: string;
|
|
@@ -147,10 +147,9 @@
|
|
|
147
147
|
"alias": "v"
|
|
148
148
|
},
|
|
149
149
|
"changeDetection": {
|
|
150
|
-
"description": "The change detection strategy to use in the new component. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
151
|
-
"enum": ["Default", "OnPush"],
|
|
150
|
+
"description": "The change detection strategy to use in the new component. It defaults to `OnPush` for Angular versions >= 22.0.0 and `Default` for lower versions. _Note: the `Eager` value is only supported in Angular versions >= 22.0.0_. Disclaimer: This option is only valid when `--standalone` is set to `true`.",
|
|
151
|
+
"enum": ["Default", "Eager", "OnPush"],
|
|
152
152
|
"type": "string",
|
|
153
|
-
"default": "Default",
|
|
154
153
|
"alias": "c"
|
|
155
154
|
},
|
|
156
155
|
"style": {
|
|
@@ -4,10 +4,8 @@ exports.normalizeOptions = normalizeOptions;
|
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const internal_1 = require("@nx/devkit/internal");
|
|
6
6
|
const validations_1 = require("../../utils/validations");
|
|
7
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
8
7
|
async function normalizeOptions(tree, options) {
|
|
9
|
-
|
|
10
|
-
options.typeSeparator ??= angularMajorVersion < 20 ? '.' : '-';
|
|
8
|
+
options.typeSeparator ??= '-';
|
|
11
9
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
12
10
|
name: options.name,
|
|
13
11
|
path: options.path,
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"typeSeparator": {
|
|
67
67
|
"type": "string",
|
|
68
68
|
"enum": ["-", "."],
|
|
69
|
-
"description": "The separator character to use before the type within the generated file's name. For example, if you set the option to `.`, the file will be named `example.pipe.ts`. It defaults to '-'
|
|
69
|
+
"description": "The separator character to use before the type within the generated file's name. For example, if you set the option to `.`, the file will be named `example.pipe.ts`. It defaults to '-'."
|
|
70
70
|
},
|
|
71
71
|
"skipFormat": {
|
|
72
72
|
"type": "boolean",
|
|
@@ -34,11 +34,8 @@ async function updateSsrSetup(tree, { appName, port, standalone, typescriptConfi
|
|
|
34
34
|
if (standalone) {
|
|
35
35
|
const componentType = (0, artifact_types_1.getComponentType)(tree);
|
|
36
36
|
const componentFileSuffix = componentType ? `.${componentType}` : '';
|
|
37
|
-
const useBootstrapContext =
|
|
38
37
|
// https://github.com/angular/angular-cli/releases/tag/20.3.0
|
|
39
|
-
(0, semver_1.gte)(angularVersion, '20.3.0')
|
|
40
|
-
// https://github.com/angular/angular-cli/releases/tag/19.2.16
|
|
41
|
-
(angularMajorVersion === 19 && (0, semver_1.gte)(angularVersion, '19.2.16'));
|
|
38
|
+
const useBootstrapContext = (0, semver_1.gte)(angularVersion, '20.3.0');
|
|
42
39
|
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/standalone'), project.root, {
|
|
43
40
|
appName,
|
|
44
41
|
standalone,
|
|
@@ -5,12 +5,7 @@ const devkit_1 = require("@nx/devkit");
|
|
|
5
5
|
const internal_1 = require("@nx/devkit/internal");
|
|
6
6
|
const artifact_types_1 = require("../../utils/artifact-types");
|
|
7
7
|
const validations_1 = require("../../utils/validations");
|
|
8
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
9
8
|
async function normalizeOptions(tree, options) {
|
|
10
|
-
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
11
|
-
if (angularMajorVersion < 20) {
|
|
12
|
-
options.type ??= 'component';
|
|
13
|
-
}
|
|
14
9
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
15
10
|
name: options.name,
|
|
16
11
|
path: options.path,
|
|
@@ -5,7 +5,7 @@ export interface Schema {
|
|
|
5
5
|
inlineStyle?: boolean;
|
|
6
6
|
inlineTemplate?: boolean;
|
|
7
7
|
viewEncapsulation?: 'Emulated' | 'None' | 'ShadowDom';
|
|
8
|
-
changeDetection?: 'Default' | 'OnPush';
|
|
8
|
+
changeDetection?: 'Default' | 'Eager' | 'OnPush';
|
|
9
9
|
style?: 'css' | 'scss' | 'sass' | 'less' | 'none';
|
|
10
10
|
skipTests?: boolean;
|
|
11
11
|
inlineScam?: boolean;
|
|
@@ -59,10 +59,9 @@
|
|
|
59
59
|
"alias": "v"
|
|
60
60
|
},
|
|
61
61
|
"changeDetection": {
|
|
62
|
-
"description": "The change detection strategy to use in the new component.",
|
|
63
|
-
"enum": ["Default", "OnPush"],
|
|
62
|
+
"description": "The change detection strategy to use in the new component. It defaults to `OnPush` for Angular versions >= 22.0.0 and `Default` for lower versions. _Note: the `Eager` value is only supported in Angular versions >= 22.0.0_.",
|
|
63
|
+
"enum": ["Default", "Eager", "OnPush"],
|
|
64
64
|
"type": "string",
|
|
65
|
-
"default": "Default",
|
|
66
65
|
"alias": "c"
|
|
67
66
|
},
|
|
68
67
|
"style": {
|
|
@@ -94,7 +93,7 @@
|
|
|
94
93
|
},
|
|
95
94
|
"type": {
|
|
96
95
|
"type": "string",
|
|
97
|
-
"description": "Append a custom type to the component's filename.
|
|
96
|
+
"description": "Append a custom type to the component's filename. No type is appended unless specified."
|
|
98
97
|
},
|
|
99
98
|
"prefix": {
|
|
100
99
|
"type": "string",
|
|
@@ -5,12 +5,7 @@ const devkit_1 = require("@nx/devkit");
|
|
|
5
5
|
const internal_1 = require("@nx/devkit/internal");
|
|
6
6
|
const artifact_types_1 = require("../../utils/artifact-types");
|
|
7
7
|
const validations_1 = require("../../utils/validations");
|
|
8
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
9
8
|
async function normalizeOptions(tree, options) {
|
|
10
|
-
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
11
|
-
if (angularMajorVersion < 20) {
|
|
12
|
-
options.type ??= 'directive';
|
|
13
|
-
}
|
|
14
9
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
15
10
|
name: options.name,
|
|
16
11
|
path: options.path,
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
},
|
|
77
77
|
"type": {
|
|
78
78
|
"type": "string",
|
|
79
|
-
"description": "Append a custom type to the directive's filename.
|
|
79
|
+
"description": "Append a custom type to the directive's filename. No type is appended unless specified."
|
|
80
80
|
},
|
|
81
81
|
"skipFormat": {
|
|
82
82
|
"description": "Skip formatting files.",
|
|
@@ -5,10 +5,8 @@ const devkit_1 = require("@nx/devkit");
|
|
|
5
5
|
const internal_1 = require("@nx/devkit/internal");
|
|
6
6
|
const artifact_types_1 = require("../../utils/artifact-types");
|
|
7
7
|
const validations_1 = require("../../utils/validations");
|
|
8
|
-
const version_utils_1 = require("../../utils/version-utils");
|
|
9
8
|
async function normalizeOptions(tree, options) {
|
|
10
|
-
|
|
11
|
-
options.typeSeparator ??= angularMajorVersion < 20 ? '.' : '-';
|
|
9
|
+
options.typeSeparator ??= '-';
|
|
12
10
|
const { artifactName: name, directory, fileName, filePath, project: projectName, } = await (0, internal_1.determineArtifactNameAndDirectoryOptions)(tree, {
|
|
13
11
|
name: options.name,
|
|
14
12
|
path: options.path,
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"typeSeparator": {
|
|
55
55
|
"type": "string",
|
|
56
56
|
"enum": ["-", "."],
|
|
57
|
-
"description": "The separator character to use before the type within the generated file's name. For example, if you set the option to `.`, the file will be named `example.pipe.ts`. It defaults to '-'
|
|
57
|
+
"description": "The separator character to use before the type within the generated file's name. For example, if you set the option to `.`, the file will be named `example.pipe.ts`. It defaults to '-'."
|
|
58
58
|
},
|
|
59
59
|
"skipFormat": {
|
|
60
60
|
"description": "Skip formatting files.",
|
|
@@ -74,13 +74,10 @@ async function setupMf(tree, rawOptions) {
|
|
|
74
74
|
tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, { 'ts-node': versions_1.tsNodeVersion }, undefined, true));
|
|
75
75
|
}
|
|
76
76
|
if (!options.skipPackageJson) {
|
|
77
|
-
const
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
// the executors used by MF require @angular-devkit/build-angular
|
|
82
|
-
tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@angular-devkit/build-angular': angularDevkitVersion }, undefined, true));
|
|
83
|
-
}
|
|
77
|
+
const angularDevkitVersion = (0, version_utils_1.getInstalledAngularDevkitVersion)(tree) ??
|
|
78
|
+
(0, version_utils_1.versions)(tree).angularDevkitVersion;
|
|
79
|
+
// the executors used by MF require @angular-devkit/build-angular
|
|
80
|
+
tasks.push((0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@angular-devkit/build-angular': angularDevkitVersion }, undefined, true));
|
|
84
81
|
}
|
|
85
82
|
// format files
|
|
86
83
|
if (!options.skipFormat) {
|
|
@@ -20,10 +20,7 @@ function addDependencies(tree, isUsingApplicationBuilder) {
|
|
|
20
20
|
devDependencies['browser-sync'] = pkgVersions.browserSyncVersion;
|
|
21
21
|
}
|
|
22
22
|
else {
|
|
23
|
-
|
|
24
|
-
if (angularMajorVersion >= 20) {
|
|
25
|
-
dependencies['@angular-devkit/build-angular'] = angularDevkitVersion;
|
|
26
|
-
}
|
|
23
|
+
dependencies['@angular-devkit/build-angular'] = angularDevkitVersion;
|
|
27
24
|
}
|
|
28
25
|
(0, devkit_1.addDependenciesToPackageJson)(tree, dependencies, devDependencies, undefined, true);
|
|
29
26
|
}
|
|
@@ -14,19 +14,9 @@ function addServerFile(tree, options) {
|
|
|
14
14
|
? getApplicationBuilderBrowserOutputPath(outputPath)
|
|
15
15
|
: outputPath;
|
|
16
16
|
const { major: angularMajorVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
pathToFiles = (0, path_1.join)(baseFilesPath, 'v20+', options.isUsingApplicationBuilder
|
|
21
|
-
? 'application-builder'
|
|
22
|
-
: 'server-builder', 'server');
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
pathToFiles = (0, path_1.join)(baseFilesPath, 'v19', options.isUsingApplicationBuilder
|
|
26
|
-
? 'application-builder' +
|
|
27
|
-
(options.serverRouting ? '' : '-common-engine')
|
|
28
|
-
: 'server-builder', 'server');
|
|
29
|
-
}
|
|
17
|
+
const pathToFiles = (0, path_1.join)(__dirname, '..', 'files', 'v20+', options.isUsingApplicationBuilder
|
|
18
|
+
? 'application-builder'
|
|
19
|
+
: 'server-builder', 'server');
|
|
30
20
|
const sourceRoot = (0, internal_1.getProjectSourceRoot)(project, tree);
|
|
31
21
|
const zoneless = (0, zoneless_1.isZonelessApp)(project);
|
|
32
22
|
(0, devkit_1.generateFiles)(tree, pathToFiles, sourceRoot, {
|