@nx/angular 16.0.2 → 16.1.0-beta.0
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/mf/mf.js +1 -2
- package/mf/mf.js.map +1 -1
- package/migrations.json +135 -0
- package/package.json +27 -36
- package/src/builders/webpack-server/schema.d.ts +1 -1
- package/src/builders/webpack-server/schema.json +5 -0
- package/src/builders/webpack-server/validate-options.js +7 -0
- package/src/builders/webpack-server/validate-options.js.map +1 -1
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.d.ts +2 -1
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +13 -5
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js.map +1 -1
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/entry-point.transform.d.ts +2 -2
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/entry-point.transform.js +2 -2
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.transform.d.ts +2 -2
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.transform.js +45 -24
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.transform.js.map +1 -1
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ngc/compile-source-files.d.ts +3 -3
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ngc/compile-source-files.js +10 -8
- package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ngc/compile-source-files.js.map +1 -1
- package/src/executors/ng-packagr-lite/schema.json +1 -1
- package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.d.ts +2 -0
- package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +22 -10
- package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js.map +1 -1
- package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.d.ts +3 -2
- package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.js +13 -3
- package/src/executors/package/ng-packagr-adjustments/ngc/compile-source-files.js.map +1 -1
- package/src/executors/package/ng-packagr-adjustments/utils/ng-compiler-cli.d.ts +1 -0
- package/src/executors/package/ng-packagr-adjustments/utils/ng-compiler-cli.js +14 -0
- package/src/executors/package/ng-packagr-adjustments/utils/ng-compiler-cli.js.map +1 -0
- package/src/executors/utilities/tailwindcss.js +7 -2
- package/src/executors/utilities/tailwindcss.js.map +1 -1
- package/src/generators/application/files/standalone-components/src/app/app.config.ts__tpl__ +7 -0
- package/src/generators/application/files/standalone-components/src/main.ts__tpl__ +3 -9
- package/src/generators/host/files/src/main.server.ts__tmpl__ +3 -3
- package/src/generators/host/lib/add-ssr.js +2 -2
- package/src/generators/host/lib/add-ssr.js.map +1 -1
- package/src/generators/init/init.js +3 -0
- package/src/generators/init/init.js.map +1 -1
- package/src/generators/library/files/base/package.json__tpl__ +2 -2
- package/src/generators/library/lib/create-files.js +5 -0
- package/src/generators/library/lib/create-files.js.map +1 -1
- package/src/generators/ngrx/lib/add-imports-to-module.js +10 -10
- package/src/generators/ngrx/lib/add-imports-to-module.js.map +1 -1
- package/src/generators/ngrx/lib/add-ngrx-to-package-json.js +3 -0
- package/src/generators/ngrx/lib/add-ngrx-to-package-json.js.map +1 -1
- package/src/generators/remote/files/{src → base/src}/main.server.ts__tmpl__ +3 -3
- package/src/generators/remote/files/standalone/src/bootstrap.server.ts__tmpl__ +7 -0
- package/src/generators/remote/lib/add-ssr.d.ts +2 -1
- package/src/generators/remote/lib/add-ssr.js +11 -2
- package/src/generators/remote/lib/add-ssr.js.map +1 -1
- package/src/generators/remote/remote.js +5 -1
- package/src/generators/remote/remote.js.map +1 -1
- package/src/generators/setup-ssr/files/ngmodule/base/src/__main__ +1 -0
- package/src/generators/setup-ssr/files/ngmodule/pre-v15-2/src/main.ts__tpl__ +14 -0
- package/src/generators/setup-ssr/files/standalone/__serverFileName__ +60 -0
- package/src/generators/setup-ssr/files/standalone/src/__main__ +7 -0
- package/src/generators/setup-ssr/files/standalone/src/app/app.config.server.ts__tpl__ +11 -0
- package/src/generators/setup-ssr/lib/generate-files.js +17 -2
- package/src/generators/setup-ssr/lib/generate-files.js.map +1 -1
- package/src/generators/setup-ssr/lib/index.d.ts +1 -0
- package/src/generators/setup-ssr/lib/index.js +1 -0
- package/src/generators/setup-ssr/lib/index.js.map +1 -1
- package/src/generators/setup-ssr/lib/normalize-options.d.ts +1 -0
- package/src/generators/setup-ssr/lib/normalize-options.js +11 -9
- package/src/generators/setup-ssr/lib/normalize-options.js.map +1 -1
- package/src/generators/setup-ssr/lib/update-app-module.js +5 -0
- package/src/generators/setup-ssr/lib/update-app-module.js.map +1 -1
- package/src/generators/setup-ssr/lib/update-project-config.js +32 -19
- package/src/generators/setup-ssr/lib/update-project-config.js.map +1 -1
- package/src/generators/setup-ssr/lib/validate-options.d.ts +3 -0
- package/src/generators/setup-ssr/lib/validate-options.js +10 -0
- package/src/generators/setup-ssr/lib/validate-options.js.map +1 -0
- package/src/generators/setup-ssr/schema.d.ts +1 -0
- package/src/generators/setup-ssr/schema.json +5 -1
- package/src/generators/setup-ssr/setup-ssr.js +4 -1
- package/src/generators/setup-ssr/setup-ssr.js.map +1 -1
- package/src/generators/utils/insert-ngmodule-import.js +11 -35
- package/src/generators/utils/insert-ngmodule-import.js.map +1 -1
- package/src/generators/utils/version-utils.d.ts +0 -1
- package/src/generators/utils/version-utils.js +3 -10
- package/src/generators/utils/version-utils.js.map +1 -1
- package/src/migrations/update-15-0-0/switch-to-jasmine-marbles.js +16 -1
- package/src/migrations/update-15-0-0/switch-to-jasmine-marbles.js.map +1 -1
- package/src/migrations/update-16-1-0/extract-standalone-config-from-bootstrap.d.ts +2 -0
- package/src/migrations/update-16-1-0/extract-standalone-config-from-bootstrap.js +109 -0
- package/src/migrations/update-16-1-0/extract-standalone-config-from-bootstrap.js.map +1 -0
- package/src/migrations/update-16-1-0/remove-ngcc-invocation.d.ts +2 -0
- package/src/migrations/update-16-1-0/remove-ngcc-invocation.js +27 -0
- package/src/migrations/update-16-1-0/remove-ngcc-invocation.js.map +1 -0
- package/src/migrations/update-16-1-0/remove-render-module-platform-server-exports.d.ts +2 -0
- package/src/migrations/update-16-1-0/remove-render-module-platform-server-exports.js +65 -0
- package/src/migrations/update-16-1-0/remove-render-module-platform-server-exports.js.map +1 -0
- package/src/migrations/update-16-1-0/update-angular-cli.d.ts +3 -0
- package/src/migrations/update-16-1-0/update-angular-cli.js +28 -0
- package/src/migrations/update-16-1-0/update-angular-cli.js.map +1 -0
- package/src/migrations/update-16-1-0/update-server-executor-config.d.ts +2 -0
- package/src/migrations/update-16-1-0/update-server-executor-config.js +30 -0
- package/src/migrations/update-16-1-0/update-server-executor-config.js.map +1 -0
- package/src/migrations/utils/projects.d.ts +5 -0
- package/src/migrations/utils/projects.js +18 -0
- package/src/migrations/utils/projects.js.map +1 -0
- package/src/utils/backward-compatible-versions.d.ts +1 -1
- package/src/utils/backward-compatible-versions.js +28 -1
- package/src/utils/backward-compatible-versions.js.map +1 -1
- package/src/utils/file-change-recorder.d.ts +1 -0
- package/src/utils/file-change-recorder.js +3 -0
- package/src/utils/file-change-recorder.js.map +1 -1
- package/src/utils/nx-devkit/ast-utils.d.ts +9 -0
- package/src/utils/nx-devkit/ast-utils.js +53 -12
- package/src/utils/nx-devkit/ast-utils.js.map +1 -1
- package/src/utils/public-api.d.ts +1 -1
- package/src/utils/public-api.js +2 -1
- package/src/utils/public-api.js.map +1 -1
- package/src/utils/versions.d.ts +5 -5
- package/src/utils/versions.js +5 -5
- package/src/utils/versions.js.map +1 -1
- package/fesm2015/nx-angular-mf.mjs +0 -60
- package/fesm2015/nx-angular-mf.mjs.map +0 -1
- package/fesm2020/nx-angular-testing.mjs +0 -43
- package/fesm2020/nx-angular-testing.mjs.map +0 -1
- package/fesm2020/nx-angular.mjs +0 -351
- package/fesm2020/nx-angular.mjs.map +0 -1
- package/src/generators/setup-ssr/files/src/main.ts__tpl__ +0 -16
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/mf/index.mjs +0 -0
- /package/{esm2020 → esm2022}/mf/mf.mjs +0 -0
- /package/{esm2020 → esm2022}/mf/nx-angular-mf.mjs +0 -0
- /package/{esm2020 → esm2022}/nx-angular.mjs +0 -0
- /package/{esm2020 → esm2022}/src/runtime/nx/data-persistence.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/index.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/nx-angular-testing.mjs +0 -0
- /package/{esm2020 → esm2022}/testing/src/testing-utils.mjs +0 -0
- /package/{fesm2020 → fesm2022}/nx-angular-mf.mjs +0 -0
- /package/{fesm2020 → fesm2022}/nx-angular-mf.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/nx-angular-testing.mjs +0 -0
- /package/{fesm2015 → fesm2022}/nx-angular-testing.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/nx-angular.mjs +0 -0
- /package/{fesm2015 → fesm2022}/nx-angular.mjs.map +0 -0
- /package/src/generators/remote/files/{webpack.server.config.js__tmpl__ → base/webpack.server.config.js__tmpl__} +0 -0
- /package/src/generators/setup-ssr/files/{tsconfig.server.json__tpl__ → base/tsconfig.server.json__tpl__} +0 -0
- /package/src/generators/setup-ssr/files/{__serverFileName__ → ngmodule/base/__serverFileName__} +0 -0
- /package/src/generators/setup-ssr/files/{src → ngmodule/base/src}/app/__rootModuleFileName__ +0 -0
- /package/src/generators/setup-ssr/files/{src → ngmodule/v14/src}/__main__ +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-ngrx-to-package-json.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/ngrx/lib/add-ngrx-to-package-json.ts"],"names":[],"mappings":";;;AACA,uCAA0D;AAC1D,mCAA6B;AAC7B,6DAAqD;AAGrD,SAAgB,oBAAoB,CAClC,IAAU,EACV,OAAuC
|
|
1
|
+
{"version":3,"file":"add-ngrx-to-package-json.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/ngrx/lib/add-ngrx-to-package-json.ts"],"names":[],"mappings":";;;AACA,uCAA0D;AAC1D,mCAA6B;AAC7B,6DAAqD;AAGrD,SAAgB,oBAAoB,CAClC,IAAU,EACV,OAAuC;;;IAEvC,MAAM,qBAAqB,GAAG,IAAA,YAAG,EAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC;QAC7D,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ,CAAC;IACb,MAAM,WAAW,GAAG,IAAA,wBAAQ,EAAC,IAAI,CAAC,CAAC,WAAW,CAAC;IAE/C,YAAA,OAAO,CAAC,GAAG,EAAC,2BAA2B,uCAA3B,2BAA2B,GAAK,MAAM,EAAC;IAEnD,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ;QACE,aAAa,EAAE,WAAW;QAC1B,eAAe,EAAE,WAAW;QAC5B,cAAc,EAAE,WAAW;QAC3B,oBAAoB,EAAE,WAAW;QACjC,uBAAuB,EAAE,WAAW;KACrC,EACD;QACE,kBAAkB,EAAE,WAAW;QAC/B,sBAAsB,EAAE,WAAW;QACnC,iBAAiB,EAAE,qBAAqB;KACzC,CACF,CAAC;AACJ,CAAC;AA1BD,oDA0BC"}
|
|
@@ -7,7 +7,7 @@ import * as cors from 'cors';
|
|
|
7
7
|
import { existsSync } from 'fs';
|
|
8
8
|
import { join } from 'path';
|
|
9
9
|
|
|
10
|
-
import { AppServerModule } from './bootstrap.server';
|
|
10
|
+
import<% if(standalone) { %> bootstrap <% } else { %> { AppServerModule } <% } %>from './bootstrap.server';
|
|
11
11
|
|
|
12
12
|
// The Express app is exported so that it can be used by serverless Functions.
|
|
13
13
|
export function app(): express.Express {
|
|
@@ -24,7 +24,7 @@ export function app(): express.Express {
|
|
|
24
24
|
server.engine(
|
|
25
25
|
'html',
|
|
26
26
|
ngExpressEngine({
|
|
27
|
-
bootstrap: AppServerModule
|
|
27
|
+
<% if(standalone) { %>bootstrap<% } else { %>bootstrap: AppServerModule,<% } %>
|
|
28
28
|
})
|
|
29
29
|
);
|
|
30
30
|
|
|
@@ -71,4 +71,4 @@ function run(): void {
|
|
|
71
71
|
|
|
72
72
|
run();
|
|
73
73
|
|
|
74
|
-
export * from './bootstrap.server'
|
|
74
|
+
<% if(standalone) { %>export default bootstrap;<% } else { %>export * from './bootstrap.server';<% } %>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import {bootstrapApplication} from '@angular/platform-browser';
|
|
2
|
+
import {RemoteEntryComponent} from './app/remote-entry/entry.component';
|
|
3
|
+
import {config} from './app/app.config.server';
|
|
4
|
+
|
|
5
|
+
const bootstrap = () => bootstrapApplication(RemoteEntryComponent, config);
|
|
6
|
+
|
|
7
|
+
export default bootstrap;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Tree } from '@nx/devkit';
|
|
2
|
-
export declare function addSsr(tree: Tree, { appName, port }: {
|
|
2
|
+
export declare function addSsr(tree: Tree, { appName, port, standalone, }: {
|
|
3
3
|
appName: string;
|
|
4
4
|
port: number;
|
|
5
|
+
standalone: boolean;
|
|
5
6
|
}): Promise<import("@nx/devkit").GeneratorCallback>;
|
|
@@ -5,19 +5,28 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const devkit_1 = require("@nx/devkit");
|
|
6
6
|
const setup_ssr_1 = require("../../setup-ssr/setup-ssr");
|
|
7
7
|
const versions_1 = require("../../../utils/versions");
|
|
8
|
-
function addSsr(tree, { appName, port }) {
|
|
8
|
+
function addSsr(tree, { appName, port, standalone, }) {
|
|
9
9
|
var _a;
|
|
10
10
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
11
|
let project = (0, devkit_1.readProjectConfiguration)(tree, appName);
|
|
12
12
|
yield (0, setup_ssr_1.default)(tree, {
|
|
13
13
|
project: appName,
|
|
14
|
+
standalone,
|
|
14
15
|
});
|
|
15
16
|
tree.rename((0, devkit_1.joinPathFragments)(project.sourceRoot, 'main.server.ts'), (0, devkit_1.joinPathFragments)(project.sourceRoot, 'bootstrap.server.ts'));
|
|
16
17
|
tree.write((0, devkit_1.joinPathFragments)(project.root, 'server.ts'), "import('./src/main.server');");
|
|
17
|
-
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files'), project.root, {
|
|
18
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/base'), project.root, {
|
|
18
19
|
appName,
|
|
20
|
+
standalone,
|
|
19
21
|
tmpl: '',
|
|
20
22
|
});
|
|
23
|
+
if (standalone) {
|
|
24
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '../files/standalone'), project.root, {
|
|
25
|
+
appName,
|
|
26
|
+
standalone,
|
|
27
|
+
tmpl: '',
|
|
28
|
+
});
|
|
29
|
+
}
|
|
21
30
|
// update project.json
|
|
22
31
|
project = (0, devkit_1.readProjectConfiguration)(tree, appName);
|
|
23
32
|
project.targets.server.executor = '@nx/angular:webpack-server';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-ssr.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/remote/lib/add-ssr.ts"],"names":[],"mappings":";;;;AACA,uCAMoB;AAEpB,yDAAiD;AACjD,sDAMiC;AAEjC,SAAsB,MAAM,CAC1B,IAAU,EACV,
|
|
1
|
+
{"version":3,"file":"add-ssr.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/remote/lib/add-ssr.ts"],"names":[],"mappings":";;;;AACA,uCAMoB;AAEpB,yDAAiD;AACjD,sDAMiC;AAEjC,SAAsB,MAAM,CAC1B,IAAU,EACV,EACE,OAAO,EACP,IAAI,EACJ,UAAU,GAC6C;;;QAEzD,IAAI,OAAO,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEtD,MAAM,IAAA,mBAAQ,EAAC,IAAI,EAAE;YACnB,OAAO,EAAE,OAAO;YAChB,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CACT,IAAA,0BAAiB,EAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC,EACvD,IAAA,0BAAiB,EAAC,OAAO,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAC7D,CAAC;QAEF,IAAI,CAAC,KAAK,CACR,IAAA,0BAAiB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAC5C,8BAA8B,CAC/B,CAAC;QAEF,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,eAAe,CAAC,EAC7C,OAAO,CAAC,IAAI,EACZ;YACE,OAAO;YACP,UAAU;YACV,IAAI,EAAE,EAAE;SACT,CACF,CAAC;QAEF,IAAI,UAAU,EAAE;YACd,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,SAAS,EAAE,qBAAqB,CAAC,EACnD,OAAO,CAAC,IAAI,EACZ;gBACE,OAAO;gBACP,UAAU;gBACV,IAAI,EAAE,EAAE;aACT,CACF,CAAC;SACH;QAED,sBAAsB;QACtB,OAAO,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAElD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,GAAG,4BAA4B,CAAC;QAC/D,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,GAAG;YACnD,IAAI,EAAE,IAAA,0BAAiB,EAAC,OAAO,CAAC,IAAI,EAAE,0BAA0B,CAAC;SAClE,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,mCAC/B,CAAC,MAAA,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,mCAAI,EAAE,CAAC,KAC/C,IAAI,GACL,CAAC;QAEF,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG;YACjC,SAAS,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC9B,QAAQ,EAAE,iBAAiB;YAC3B,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,IAAI,SAAS,IAAA,0BAAiB,EAC7C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EACzC,SAAS,CACV,EAAE;aACJ;SACF,CAAC;QAEF,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEnD,MAAM,WAAW,GAAG,IAAA,qCAA4B,EAC9C,IAAI,EACJ;YACE,IAAI,EAAE,sBAAW;YACjB,OAAO,EAAE,yBAAc;YACvB,yBAAyB,EAAE,sCAA2B;SACvD,EACD;YACE,aAAa,EAAE,2BAAgB;YAC/B,gBAAgB,EAAE,8BAAmB;SACtC,CACF,CAAC;QAEF,OAAO,WAAW,CAAC;;CACpB;AAxFD,wBAwFC"}
|
|
@@ -41,7 +41,11 @@ function remote(tree, options) {
|
|
|
41
41
|
});
|
|
42
42
|
let installTasks = [appInstallTask];
|
|
43
43
|
if (options.ssr) {
|
|
44
|
-
let ssrInstallTask = yield (0, lib_1.addSsr)(tree, {
|
|
44
|
+
let ssrInstallTask = yield (0, lib_1.addSsr)(tree, {
|
|
45
|
+
appName,
|
|
46
|
+
port,
|
|
47
|
+
standalone: options.standalone,
|
|
48
|
+
});
|
|
45
49
|
installTasks.push(ssrInstallTask);
|
|
46
50
|
}
|
|
47
51
|
if (!options.skipFormat) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/remote/remote.ts"],"names":[],"mappings":";;;;AAAA,uCAOoB;AAEpB,4DAA8D;AAC9D,8CAAwD;AACxD,mDAA+C;AAC/C,2DAAyD;AACzD,+BAAsD;AAEtD,0DAAwE;AACxE,mCAA4B;AAE5B,SAAsB,MAAM,CAAC,IAAU,EAAE,OAAe;;;QACtD,MAAM,2BAA2B,GAAG,IAAA,8CAA8B,EAAC,IAAI,CAAC,CAAC;QAEzE,IAAI,IAAA,WAAE,EAAC,2BAA2B,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE;YAC3E,MAAM,IAAI,KAAK,CAAC,IAAA,qBAAY,EAAA,2FAA2F,2BAA2B,CAAC,OAAO;sGACxD,CAAC,CAAC;SACrG;QAED,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC/C,MAAM,IAAI,KAAK,CACb,2EAA2E,OAAO,CAAC,IAAI,GAAG,CAC3F,CAAC;SACH;QAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,+BAAsB,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAA,2BAAqB,EAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,cAAc,GAAG,MAAM,IAAA,qBAAoB,EAAC,IAAI,kCACjD,OAAO,KACV,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK,EACvC,OAAO,EAAE,IAAI,EACb,IAAI,EACJ,UAAU,EAAE,IAAI,IAChB,CAAC;QAEH,MAAM,OAAO,GACX,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,KAAK,4BAAa,CAAC,IAAI,CAAC;QAEzE,MAAM,IAAA,kBAAO,EAAC,IAAI,EAAE;YAClB,OAAO;YACP,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI;YACJ,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,UAAU,EAAE,IAAI;YAChB,OAAO;YACP,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM;YACtD,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC,CAAC;QAEH,IAAI,YAAY,GAAG,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,GAAG,EAAE;YACf,IAAI,cAAc,GAAG,MAAM,IAAA,YAAM,EAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"remote.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/remote/remote.ts"],"names":[],"mappings":";;;;AAAA,uCAOoB;AAEpB,4DAA8D;AAC9D,8CAAwD;AACxD,mDAA+C;AAC/C,2DAAyD;AACzD,+BAAsD;AAEtD,0DAAwE;AACxE,mCAA4B;AAE5B,SAAsB,MAAM,CAAC,IAAU,EAAE,OAAe;;;QACtD,MAAM,2BAA2B,GAAG,IAAA,8CAA8B,EAAC,IAAI,CAAC,CAAC;QAEzE,IAAI,IAAA,WAAE,EAAC,2BAA2B,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE;YAC3E,MAAM,IAAI,KAAK,CAAC,IAAA,qBAAY,EAAA,2FAA2F,2BAA2B,CAAC,OAAO;sGACxD,CAAC,CAAC;SACrG;QAED,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QACnC,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC/C,MAAM,IAAI,KAAK,CACb,2EAA2E,OAAO,CAAC,IAAI,GAAG,CAC3F,CAAC;SACH;QAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,+BAAsB,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAA,2BAAqB,EAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,cAAc,GAAG,MAAM,IAAA,qBAAoB,EAAC,IAAI,kCACjD,OAAO,KACV,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK,EACvC,OAAO,EAAE,IAAI,EACb,IAAI,EACJ,UAAU,EAAE,IAAI,IAChB,CAAC;QAEH,MAAM,OAAO,GACX,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,KAAK,4BAAa,CAAC,IAAI,CAAC;QAEzE,MAAM,IAAA,kBAAO,EAAC,IAAI,EAAE;YAClB,OAAO;YACP,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI;YACJ,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,UAAU,EAAE,IAAI;YAChB,OAAO;YACP,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM;YACtD,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC,CAAC;QAEH,IAAI,YAAY,GAAG,CAAC,cAAc,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,GAAG,EAAE;YACf,IAAI,cAAc,GAAG,MAAM,IAAA,YAAM,EAAC,IAAI,EAAE;gBACtC,OAAO;gBACP,IAAI;gBACJ,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACnC;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,IAAA,yBAAgB,EAAC,GAAG,YAAY,CAAC,CAAC;;CAC1C;AA1DD,wBA0DC;AAED,kBAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { <%= rootModuleClassName %> } from './app/<%= rootModuleFileName.slice(0, -3) %>';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
|
|
2
|
+
import { AppModule } from './app/app.module';
|
|
3
|
+
|
|
4
|
+
function bootstrap() {
|
|
5
|
+
platformBrowserDynamic()
|
|
6
|
+
.bootstrapModule(AppModule)
|
|
7
|
+
.catch((err) => console.error(err));
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
if (document.readyState !== 'loading') {
|
|
11
|
+
bootstrap();
|
|
12
|
+
} else {
|
|
13
|
+
document.addEventListener('DOMContentLoaded', bootstrap);
|
|
14
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import 'zone.js/dist/zone-node';
|
|
2
|
+
|
|
3
|
+
import {APP_BASE_HREF} from '@angular/common';
|
|
4
|
+
import {ngExpressEngine} from '@nguniversal/express-engine';
|
|
5
|
+
import * as express from 'express';
|
|
6
|
+
import {existsSync} from 'fs';
|
|
7
|
+
import {join} from 'path';
|
|
8
|
+
|
|
9
|
+
import bootstrap from './src/<%= main.slice(0, -3) %>';
|
|
10
|
+
|
|
11
|
+
// The Express app is exported so that it can be used by serverless Functions.
|
|
12
|
+
export function app(): express.Express {
|
|
13
|
+
const server = express();
|
|
14
|
+
const distFolder = join(process.cwd(), 'dist/apps/<%= project %>/browser');
|
|
15
|
+
const indexHtml = existsSync(join(distFolder, 'index.original.html')) ? 'index.original.html' : 'index';
|
|
16
|
+
|
|
17
|
+
// Our Universal express-engine (found @ https://github.com/angular/universal/tree/main/modules/express-engine)
|
|
18
|
+
server.engine('html', ngExpressEngine({
|
|
19
|
+
bootstrap
|
|
20
|
+
}));
|
|
21
|
+
|
|
22
|
+
server.set('view engine', 'html');
|
|
23
|
+
server.set('views', distFolder);
|
|
24
|
+
|
|
25
|
+
// Example Express Rest API endpoints
|
|
26
|
+
// server.get('/api/**', (req, res) => { });
|
|
27
|
+
// Serve static files from /browser
|
|
28
|
+
server.get('*.*', express.static(distFolder, {
|
|
29
|
+
maxAge: '1y'
|
|
30
|
+
}));
|
|
31
|
+
|
|
32
|
+
// All regular routes use the Universal engine
|
|
33
|
+
server.get('*', (req, res) => {
|
|
34
|
+
res.render(indexHtml, { req, providers: [{ provide: APP_BASE_HREF, useValue: req.baseUrl }] });
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
return server;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function run(): void {
|
|
41
|
+
const port = process.env['PORT'] || <%= serverPort %>;
|
|
42
|
+
|
|
43
|
+
// Start up the Node server
|
|
44
|
+
const server = app();
|
|
45
|
+
server.listen(port, () => {
|
|
46
|
+
console.log(`Node Express server listening on http://localhost:${port}`);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Webpack will replace 'require' with '__webpack_require__'
|
|
51
|
+
// '__non_webpack_require__' is a proxy to Node 'require'
|
|
52
|
+
// The below code is to ensure that the server is run only when not requiring the bundle.
|
|
53
|
+
declare const __non_webpack_require__: NodeRequire;
|
|
54
|
+
const mainModule = __non_webpack_require__.main;
|
|
55
|
+
const moduleFilename = mainModule && mainModule.filename || '';
|
|
56
|
+
if (moduleFilename === __filename || moduleFilename.includes('iisnode')) {
|
|
57
|
+
run();
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export default bootstrap;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { bootstrapApplication } from '@angular/platform-browser';
|
|
2
|
+
import { AppComponent } from './app/app.component';
|
|
3
|
+
import { config } from './app/app.config.server';
|
|
4
|
+
|
|
5
|
+
const bootstrap = () => bootstrapApplication(AppComponent, config);
|
|
6
|
+
|
|
7
|
+
export default bootstrap;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { mergeApplicationConfig, ApplicationConfig } from '@angular/core';
|
|
2
|
+
import { provideServerRendering } from '@angular/platform-server';
|
|
3
|
+
import { appConfig } from './app.config';
|
|
4
|
+
|
|
5
|
+
const serverConfig: ApplicationConfig = {
|
|
6
|
+
providers: [
|
|
7
|
+
provideServerRendering()
|
|
8
|
+
]
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export const config = mergeApplicationConfig(appConfig, serverConfig);
|
|
@@ -2,10 +2,25 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateSSRFiles = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const semver_1 = require("semver");
|
|
6
|
+
const version_utils_1 = require("../../utils/version-utils");
|
|
5
7
|
function generateSSRFiles(tree, schema) {
|
|
6
8
|
const projectRoot = (0, devkit_1.readProjectConfiguration)(tree, schema.project).root;
|
|
7
|
-
const pathToFiles = (0, devkit_1.joinPathFragments)(__dirname, '
|
|
8
|
-
(0, devkit_1.generateFiles)(tree, pathToFiles, projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
9
|
+
const pathToFiles = (0, devkit_1.joinPathFragments)(__dirname, '..', 'files');
|
|
10
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'base'), projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
11
|
+
if (schema.standalone) {
|
|
12
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'standalone'), projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'ngmodule', 'base'), projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
16
|
+
const { major: angularMajorVersion, version: angularVersion } = (0, version_utils_1.getInstalledAngularVersionInfo)(tree);
|
|
17
|
+
if (angularMajorVersion < 15) {
|
|
18
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'ngmodule', 'v14'), projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
19
|
+
}
|
|
20
|
+
if ((0, semver_1.lt)(angularVersion, '15.2.0')) {
|
|
21
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(pathToFiles, 'ngmodule', 'pre-v15-2'), projectRoot, Object.assign(Object.assign({}, schema), { tpl: '' }));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
9
24
|
}
|
|
10
25
|
exports.generateSSRFiles = generateSSRFiles;
|
|
11
26
|
//# sourceMappingURL=generate-files.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-files.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/generate-files.ts"],"names":[],"mappings":";;;AACA,uCAIoB;
|
|
1
|
+
{"version":3,"file":"generate-files.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/generate-files.ts"],"names":[],"mappings":";;;AACA,uCAIoB;AACpB,mCAA4B;AAC5B,6DAA2E;AAG3E,SAAgB,gBAAgB,CAAC,IAAU,EAAE,MAAc;IACzD,MAAM,WAAW,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IAExE,MAAM,WAAW,GAAG,IAAA,0BAAiB,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEhE,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAA,0BAAiB,EAAC,WAAW,EAAE,MAAM,CAAC,EAAE,WAAW,kCAClE,MAAM,KACT,GAAG,EAAE,EAAE,IACP,CAAC;IAEH,IAAI,MAAM,CAAC,UAAU,EAAE;QACrB,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,WAAW,EAAE,YAAY,CAAC,EAC5C,WAAW,kCACN,MAAM,KAAE,GAAG,EAAE,EAAE,IACrB,CAAC;KACH;SAAM;QACL,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,EAClD,WAAW,kCACN,MAAM,KAAE,GAAG,EAAE,EAAE,IACrB,CAAC;QAEF,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,cAAc,EAAE,GAC3D,IAAA,8CAA8B,EAAC,IAAI,CAAC,CAAC;QAEvC,IAAI,mBAAmB,GAAG,EAAE,EAAE;YAC5B,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,WAAW,EAAE,UAAU,EAAE,KAAK,CAAC,EACjD,WAAW,kCACN,MAAM,KAAE,GAAG,EAAE,EAAE,IACrB,CAAC;SACH;QACD,IAAI,IAAA,WAAE,EAAC,cAAc,EAAE,QAAQ,CAAC,EAAE;YAChC,IAAA,sBAAa,EACX,IAAI,EACJ,IAAA,0BAAiB,EAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,EACvD,WAAW,kCACN,MAAM,KAAE,GAAG,EAAE,EAAE,IACrB,CAAC;SACH;KACF;AACH,CAAC;AA7CD,4CA6CC"}
|
|
@@ -5,4 +5,5 @@ tslib_1.__exportStar(require("./generate-files"), exports);
|
|
|
5
5
|
tslib_1.__exportStar(require("./normalize-options"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./update-app-module"), exports);
|
|
7
7
|
tslib_1.__exportStar(require("./update-project-config"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./validate-options"), exports);
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC;AACjC,8DAAoC;AACpC,8DAAoC;AACpC,kEAAwC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC;AACjC,8DAAoC;AACpC,8DAAoC;AACpC,kEAAwC;AACxC,6DAAmC"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.normalizeOptions = void 0;
|
|
4
|
-
const
|
|
4
|
+
const ast_utils_1 = require("../../../utils/nx-devkit/ast-utils");
|
|
5
5
|
function normalizeOptions(tree, options) {
|
|
6
6
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
7
|
+
const isStandaloneApp = (0, ast_utils_1.isNgStandaloneApp)(tree, options.project);
|
|
7
8
|
return {
|
|
8
|
-
project:
|
|
9
|
-
appId: (
|
|
10
|
-
main: (
|
|
11
|
-
serverFileName: (
|
|
12
|
-
serverPort: (
|
|
13
|
-
rootModuleFileName: (
|
|
14
|
-
rootModuleClassName: (
|
|
15
|
-
skipFormat: (
|
|
9
|
+
project: options.project,
|
|
10
|
+
appId: (_a = options.appId) !== null && _a !== void 0 ? _a : 'serverApp',
|
|
11
|
+
main: (_b = options.main) !== null && _b !== void 0 ? _b : 'main.server.ts',
|
|
12
|
+
serverFileName: (_c = options.serverFileName) !== null && _c !== void 0 ? _c : 'server.ts',
|
|
13
|
+
serverPort: (_d = options.serverPort) !== null && _d !== void 0 ? _d : 4000,
|
|
14
|
+
rootModuleFileName: (_e = options.rootModuleFileName) !== null && _e !== void 0 ? _e : 'app.server.module.ts',
|
|
15
|
+
rootModuleClassName: (_f = options.rootModuleClassName) !== null && _f !== void 0 ? _f : 'AppServerModule',
|
|
16
|
+
skipFormat: (_g = options.skipFormat) !== null && _g !== void 0 ? _g : false,
|
|
17
|
+
standalone: (_h = options.standalone) !== null && _h !== void 0 ? _h : isStandaloneApp,
|
|
16
18
|
};
|
|
17
19
|
}
|
|
18
20
|
exports.normalizeOptions = normalizeOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/normalize-options.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/normalize-options.ts"],"names":[],"mappings":";;;AACA,kEAAuE;AAGvE,SAAgB,gBAAgB,CAAC,IAAU,EAAE,OAAe;;IAC1D,MAAM,eAAe,GAAG,IAAA,6BAAiB,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAEjE,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,WAAW;QACnC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,gBAAgB;QACtC,cAAc,EAAE,MAAA,OAAO,CAAC,cAAc,mCAAI,WAAW;QACrD,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,IAAI;QACtC,kBAAkB,EAAE,MAAA,OAAO,CAAC,kBAAkB,mCAAI,sBAAsB;QACxE,mBAAmB,EAAE,MAAA,OAAO,CAAC,mBAAmB,mCAAI,iBAAiB;QACrE,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,KAAK;QACvC,UAAU,EAAE,MAAA,OAAO,CAAC,UAAU,mCAAI,eAAe;KAClD,CAAC;AACJ,CAAC;AAdD,4CAcC"}
|
|
@@ -3,7 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateAppModule = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
const ensure_typescript_1 = require("@nx/js/src/utils/typescript/ensure-typescript");
|
|
6
|
+
const version_utils_1 = require("../../utils/version-utils");
|
|
6
7
|
function updateAppModule(tree, schema) {
|
|
8
|
+
const angularMajorVersion = (0, version_utils_1.getInstalledAngularMajorVersion)(tree);
|
|
9
|
+
if (angularMajorVersion >= 16) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
7
12
|
(0, ensure_typescript_1.ensureTypescript)();
|
|
8
13
|
const { tsquery } = require('@phenomnomnominal/tsquery');
|
|
9
14
|
// read the content of app module
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-app-module.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/update-app-module.ts"],"names":[],"mappings":";;;AACA,uCAAyE;
|
|
1
|
+
{"version":3,"file":"update-app-module.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/update-app-module.ts"],"names":[],"mappings":";;;AACA,uCAAyE;AACzE,qFAAiF;AACjF,6DAA4E;AAG5E,SAAgB,eAAe,CAAC,IAAU,EAAE,MAAc;IACxD,MAAM,mBAAmB,GAAG,IAAA,+CAA+B,EAAC,IAAI,CAAC,CAAC;IAClE,IAAI,mBAAmB,IAAI,EAAE,EAAE;QAC7B,OAAO;KACR;IAED,IAAA,oCAAgB,GAAE,CAAC;IACnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzD,iCAAiC;IACjC,MAAM,aAAa,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,IAAA,0BAAiB,EACvC,aAAa,CAAC,UAAU,EACxB,mBAAmB,CACpB,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAEzD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,MAAM,wBAAwB,GAAG,OAAO,CACtC,GAAG,EACH,0GAA0G,EAC1G,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAC3B,CAAC;IAEF,IAAI,wBAAwB,CAAC,MAAM,KAAK,CAAC,EAAE;QACzC,MAAM,IAAI,KAAK,CACb,+CAA+C,eAAe,kCAAkC,CACjG,CAAC;KACH;IAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC;IAEtD,MAAM,eAAe,GAAG,GAAG,YAAY,CAAC,KAAK,CAC3C,CAAC,EACD,iBAAiB,CAAC,MAAM,EAAE,CAC3B,mCAAmC,MAAM,CAAC,KAAK,OAAO,YAAY,CAAC,KAAK,CACvE,iBAAiB,CAAC,MAAM,EAAE,EAC1B,YAAY,CAAC,MAAM,CACpB,EAAE,CAAC;IAEJ,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAC/C,CAAC;AAxCD,0CAwCC"}
|
|
@@ -3,28 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updateProjectConfig = void 0;
|
|
4
4
|
const devkit_1 = require("@nx/devkit");
|
|
5
5
|
function updateProjectConfig(tree, schema) {
|
|
6
|
-
var _a
|
|
6
|
+
var _a;
|
|
7
7
|
let projectConfig = (0, devkit_1.readProjectConfiguration)(tree, schema.project);
|
|
8
|
-
projectConfig.targets.build
|
|
9
|
-
|
|
8
|
+
const buildTarget = projectConfig.targets.build;
|
|
9
|
+
buildTarget.options.outputPath = `dist/apps/${schema.project}/browser`;
|
|
10
|
+
const buildConfigurations = projectConfig.targets.build.configurations;
|
|
11
|
+
const configurations = {};
|
|
12
|
+
if (buildConfigurations) {
|
|
13
|
+
for (const [key, options] of Object.entries(buildConfigurations)) {
|
|
14
|
+
configurations[key] = getServerOptions(options);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
10
17
|
projectConfig.targets.server = {
|
|
11
18
|
dependsOn: ['build'],
|
|
12
19
|
executor: '@angular-devkit/build-angular:server',
|
|
13
|
-
options: {
|
|
14
|
-
|
|
15
|
-
main: (0, devkit_1.joinPathFragments)(projectConfig.root, schema.serverFileName),
|
|
16
|
-
tsConfig: (0, devkit_1.joinPathFragments)(projectConfig.root, 'tsconfig.server.json'),
|
|
17
|
-
},
|
|
18
|
-
configurations: {
|
|
19
|
-
production: Object.assign({ outputHashing: 'media' }, (buildTargetFileReplacements
|
|
20
|
-
? { fileReplacements: buildTargetFileReplacements }
|
|
21
|
-
: {})),
|
|
22
|
-
development: {
|
|
23
|
-
optimization: false,
|
|
24
|
-
sourceMap: true,
|
|
25
|
-
extractLicenses: false,
|
|
26
|
-
},
|
|
27
|
-
},
|
|
20
|
+
options: Object.assign({ outputPath: `dist/${projectConfig.root}/server`, main: (0, devkit_1.joinPathFragments)(projectConfig.root, schema.serverFileName), tsConfig: (0, devkit_1.joinPathFragments)(projectConfig.root, 'tsconfig.server.json') }, (buildTarget.options ? getServerOptions(buildTarget.options) : {})),
|
|
21
|
+
configurations,
|
|
28
22
|
defaultConfiguration: 'production',
|
|
29
23
|
};
|
|
30
24
|
projectConfig.targets['serve-ssr'] = {
|
|
@@ -60,7 +54,7 @@ function updateProjectConfig(tree, schema) {
|
|
|
60
54
|
};
|
|
61
55
|
(0, devkit_1.updateProjectConfiguration)(tree, schema.project, projectConfig);
|
|
62
56
|
const nxJson = (0, devkit_1.readNxJson)(tree);
|
|
63
|
-
if (((
|
|
57
|
+
if (((_a = nxJson.tasksRunnerOptions) === null || _a === void 0 ? void 0 : _a.default) &&
|
|
64
58
|
!nxJson.tasksRunnerOptions.default.options.cacheableOperations.includes('server')) {
|
|
65
59
|
nxJson.tasksRunnerOptions.default.options.cacheableOperations = [
|
|
66
60
|
...nxJson.tasksRunnerOptions.default.options.cacheableOperations,
|
|
@@ -70,4 +64,23 @@ function updateProjectConfig(tree, schema) {
|
|
|
70
64
|
}
|
|
71
65
|
}
|
|
72
66
|
exports.updateProjectConfig = updateProjectConfig;
|
|
67
|
+
function getServerOptions(options = {}) {
|
|
68
|
+
return {
|
|
69
|
+
buildOptimizer: options === null || options === void 0 ? void 0 : options.buildOptimizer,
|
|
70
|
+
outputHashing: (options === null || options === void 0 ? void 0 : options.outputHashing) === 'all'
|
|
71
|
+
? 'media'
|
|
72
|
+
: options === null || options === void 0 ? void 0 : options.outputHashing,
|
|
73
|
+
fileReplacements: options === null || options === void 0 ? void 0 : options.fileReplacements,
|
|
74
|
+
optimization: (options === null || options === void 0 ? void 0 : options.optimization) === undefined ? undefined : !!(options === null || options === void 0 ? void 0 : options.optimization),
|
|
75
|
+
sourceMap: options === null || options === void 0 ? void 0 : options.sourceMap,
|
|
76
|
+
stylePreprocessorOptions: options === null || options === void 0 ? void 0 : options.stylePreprocessorOptions,
|
|
77
|
+
resourcesOutputPath: options === null || options === void 0 ? void 0 : options.resourcesOutputPath,
|
|
78
|
+
deployUrl: options === null || options === void 0 ? void 0 : options.deployUrl,
|
|
79
|
+
i18nMissingTranslation: options === null || options === void 0 ? void 0 : options.i18nMissingTranslation,
|
|
80
|
+
preserveSymlinks: options === null || options === void 0 ? void 0 : options.preserveSymlinks,
|
|
81
|
+
extractLicenses: options === null || options === void 0 ? void 0 : options.extractLicenses,
|
|
82
|
+
inlineStyleLanguage: options === null || options === void 0 ? void 0 : options.inlineStyleLanguage,
|
|
83
|
+
vendorChunk: options === null || options === void 0 ? void 0 : options.vendorChunk,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
73
86
|
//# sourceMappingURL=update-project-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-project-config.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/update-project-config.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"update-project-config.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/update-project-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateOptions = void 0;
|
|
4
|
+
const validations_1 = require("../../utils/validations");
|
|
5
|
+
function validateOptions(tree, options) {
|
|
6
|
+
(0, validations_1.validateProject)(tree, options.project);
|
|
7
|
+
(0, validations_1.validateStandaloneOption)(tree, options.standalone);
|
|
8
|
+
}
|
|
9
|
+
exports.validateOptions = validateOptions;
|
|
10
|
+
//# sourceMappingURL=validate-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-options.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-ssr/lib/validate-options.ts"],"names":[],"mappings":";;;AACA,yDAGiC;AAGjC,SAAgB,eAAe,CAAC,IAAU,EAAE,OAAe;IACzD,IAAA,6BAAe,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,IAAA,sCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAHD,0CAGC"}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"appId": {
|
|
20
20
|
"type": "string",
|
|
21
21
|
"format": "html-selector",
|
|
22
|
-
"description": "The `appId` to use with `withServerTransition`.",
|
|
22
|
+
"description": "The `appId` to use with `withServerTransition`. _Note: This is only used in Angular versions <16.0.0. It's deprecated since Angular 16._",
|
|
23
23
|
"default": "serverApp"
|
|
24
24
|
},
|
|
25
25
|
"main": {
|
|
@@ -49,6 +49,10 @@
|
|
|
49
49
|
"description": "The name of the root module class.",
|
|
50
50
|
"default": "AppServerModule"
|
|
51
51
|
},
|
|
52
|
+
"standalone": {
|
|
53
|
+
"type": "boolean",
|
|
54
|
+
"description": "Use Standalone Components to bootstrap SSR. _Note: This is only supported in Angular versions >= 14.1.0_."
|
|
55
|
+
},
|
|
52
56
|
"skipFormat": {
|
|
53
57
|
"type": "boolean",
|
|
54
58
|
"description": "Skip formatting the workspace after the generator completes.",
|
|
@@ -7,9 +7,12 @@ const version_utils_1 = require("../utils/version-utils");
|
|
|
7
7
|
const lib_1 = require("./lib");
|
|
8
8
|
function setupSsr(tree, schema) {
|
|
9
9
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
+
(0, lib_1.validateOptions)(tree, schema);
|
|
10
11
|
const options = (0, lib_1.normalizeOptions)(tree, schema);
|
|
11
12
|
(0, lib_1.generateSSRFiles)(tree, options);
|
|
12
|
-
(
|
|
13
|
+
if (!options.standalone) {
|
|
14
|
+
(0, lib_1.updateAppModule)(tree, options);
|
|
15
|
+
}
|
|
13
16
|
(0, lib_1.updateProjectConfig)(tree, options);
|
|
14
17
|
const pkgVersions = (0, version_utils_1.versions)(tree);
|
|
15
18
|
(0, devkit_1.addDependenciesToPackageJson)(tree, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-ssr.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/setup-ssr/setup-ssr.ts"],"names":[],"mappings":";;;;AACA,uCAIoB;AACpB,0DAAkD;AAClD,+
|
|
1
|
+
{"version":3,"file":"setup-ssr.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/setup-ssr/setup-ssr.ts"],"names":[],"mappings":";;;;AACA,uCAIoB;AACpB,0DAAkD;AAClD,+BAMe;AAGf,SAAsB,QAAQ,CAAC,IAAU,EAAE,MAAc;;QACvD,IAAA,qBAAe,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAA,sBAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE/C,IAAA,sBAAgB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,IAAA,qBAAe,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAChC;QAED,IAAA,yBAAmB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEnC,MAAM,WAAW,GAAG,IAAA,wBAAQ,EAAC,IAAI,CAAC,CAAC;QAEnC,IAAA,qCAA4B,EAC1B,IAAI,EACJ;YACE,6BAA6B,EAAE,WAAW,CAAC,kBAAkB;YAC7D,0BAA0B,EAAE,WAAW,CAAC,cAAc;SACvD,EACD;YACE,uBAAuB,EAAE,WAAW,CAAC,kBAAkB;SACxD,CACF,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;CAAA;AAhCD,4BAgCC;AAED,kBAAe,QAAQ,CAAC"}
|
|
@@ -16,30 +16,11 @@ function insertNgModuleProperty(tree, modulePath, name, property) {
|
|
|
16
16
|
}
|
|
17
17
|
const ngModuleNamedImport = getNamedImport(coreImport, 'NgModule');
|
|
18
18
|
const ngModuleName = ngModuleNamedImport.name.escapedText;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*/
|
|
25
|
-
let ngModuleClassDeclaration;
|
|
26
|
-
let ngModuleDecorator;
|
|
27
|
-
try {
|
|
28
|
-
ngModuleClassDeclaration = findDecoratedClass(sourceFile, ngModuleName);
|
|
29
|
-
ngModuleDecorator = tsModule
|
|
30
|
-
.getDecorators(ngModuleClassDeclaration)
|
|
31
|
-
.find((decorator) => tsModule.isCallExpression(decorator.expression) &&
|
|
32
|
-
tsModule.isIdentifier(decorator.expression.expression) &&
|
|
33
|
-
decorator.expression.expression.escapedText === ngModuleName);
|
|
34
|
-
}
|
|
35
|
-
catch (_a) {
|
|
36
|
-
// Support for TS < 4.8
|
|
37
|
-
ngModuleClassDeclaration = findDecoratedClassLegacy(sourceFile, ngModuleName);
|
|
38
|
-
// @ts-ignore
|
|
39
|
-
ngModuleDecorator = ngModuleClassDeclaration.decorators.find((decorator) => tsModule.isCallExpression(decorator.expression) &&
|
|
40
|
-
tsModule.isIdentifier(decorator.expression.expression) &&
|
|
41
|
-
decorator.expression.expression.escapedText === ngModuleName);
|
|
42
|
-
}
|
|
19
|
+
const ngModuleClassDeclaration = findDecoratedClass(sourceFile, ngModuleName);
|
|
20
|
+
const { getDecorators } = getTsEsLintTypeUtils();
|
|
21
|
+
const ngModuleDecorator = getDecorators(ngModuleClassDeclaration).find((decorator) => tsModule.isCallExpression(decorator.expression) &&
|
|
22
|
+
tsModule.isIdentifier(decorator.expression.expression) &&
|
|
23
|
+
decorator.expression.expression.escapedText === ngModuleName);
|
|
43
24
|
const ngModuleCall = ngModuleDecorator.expression;
|
|
44
25
|
if (ngModuleCall.arguments.length < 1) {
|
|
45
26
|
const newContents = (0, devkit_1.applyChangesToString)(contents, [
|
|
@@ -133,8 +114,9 @@ function findDecoratedClass(sourceFile, ngModuleName) {
|
|
|
133
114
|
tsModule = (0, ensure_typescript_1.ensureTypescript)();
|
|
134
115
|
}
|
|
135
116
|
const classDeclarations = sourceFile.statements.filter(tsModule.isClassDeclaration);
|
|
117
|
+
const { getDecorators } = getTsEsLintTypeUtils();
|
|
136
118
|
return classDeclarations.find((declaration) => {
|
|
137
|
-
const decorators =
|
|
119
|
+
const decorators = getDecorators(declaration);
|
|
138
120
|
if (decorators) {
|
|
139
121
|
return decorators.some((decorator) => tsModule.isCallExpression(decorator.expression) &&
|
|
140
122
|
tsModule.isIdentifier(decorator.expression.expression) &&
|
|
@@ -143,16 +125,6 @@ function findDecoratedClass(sourceFile, ngModuleName) {
|
|
|
143
125
|
return undefined;
|
|
144
126
|
});
|
|
145
127
|
}
|
|
146
|
-
function findDecoratedClassLegacy(sourceFile, ngModuleName) {
|
|
147
|
-
if (!tsModule) {
|
|
148
|
-
tsModule = (0, ensure_typescript_1.ensureTypescript)();
|
|
149
|
-
}
|
|
150
|
-
const classDeclarations = sourceFile.statements.filter(tsModule.isClassDeclaration);
|
|
151
|
-
return classDeclarations.find((declaration) => declaration.decorators &&
|
|
152
|
-
declaration.decorators.some((decorator) => tsModule.isCallExpression(decorator.expression) &&
|
|
153
|
-
tsModule.isIdentifier(decorator.expression.expression) &&
|
|
154
|
-
decorator.expression.expression.escapedText === ngModuleName));
|
|
155
|
-
}
|
|
156
128
|
function findPropertyAssignment(ngModuleOptions, propertyName) {
|
|
157
129
|
if (!tsModule) {
|
|
158
130
|
tsModule = (0, ensure_typescript_1.ensureTypescript)();
|
|
@@ -161,4 +133,8 @@ function findPropertyAssignment(ngModuleOptions, propertyName) {
|
|
|
161
133
|
tsModule.isIdentifier(property.name) &&
|
|
162
134
|
property.name.escapedText === propertyName);
|
|
163
135
|
}
|
|
136
|
+
let tsUtils;
|
|
137
|
+
function getTsEsLintTypeUtils() {
|
|
138
|
+
return tsUtils !== null && tsUtils !== void 0 ? tsUtils : require('@typescript-eslint/type-utils');
|
|
139
|
+
}
|
|
164
140
|
//# sourceMappingURL=insert-ngmodule-import.js.map
|