@analogjs/platform 2.0.0-alpha.9 → 2.0.0-beta.2
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/package.json +21 -7
- package/src/lib/content-plugin.js +3 -14
- package/src/lib/nx-plugin/README.md +1 -1
- package/src/lib/nx-plugin/executors.json +3 -15
- package/src/lib/nx-plugin/generators.json +10 -6
- package/src/lib/nx-plugin/src/generators/app/files/template-angular/package.json__template__ +3 -0
- package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.component.ts__template__ +1 -2
- package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.config.server.ts__template__ +2 -1
- package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/app/app.config.ts__template__ +30 -0
- package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/main.server.ts__template__ +8 -0
- package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/test-setup.ts__template__ +28 -0
- package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.app.json__template__ +2 -2
- package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/vite.config.ts__template__ +14 -21
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__ +1 -2
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__ +1 -2
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__ +1 -2
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/src/main.server.ts__template__ +3 -27
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__ +3 -12
- package/src/lib/nx-plugin/src/generators/app/generator.d.ts +1 -0
- package/src/lib/nx-plugin/src/generators/app/generator.js +47 -20
- package/src/lib/nx-plugin/src/generators/app/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js +14 -8
- package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.d.ts +3 -0
- package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js +58 -0
- package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js.map +1 -0
- package/src/lib/nx-plugin/src/generators/app/lib/add-files.js +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-files.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.d.ts +2 -0
- package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js +47 -0
- package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js.map +1 -0
- package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.d.ts +3 -0
- package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js +23 -0
- package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js.map +1 -0
- package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js +1 -1
- package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.d.ts +2 -0
- package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js +16 -0
- package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js.map +1 -0
- package/src/lib/nx-plugin/src/generators/app/versions/dependencies.d.ts +3 -7
- package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js +23 -55
- package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js +23 -65
- package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js +15 -41
- package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.d.ts +3 -3
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js +3 -3
- package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.d.ts +8 -8
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js +8 -8
- package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions/trpc-dependencies.js +16 -40
- package/src/lib/nx-plugin/src/generators/app/versions/trpc-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/app/versions.d.ts +1 -24
- package/src/lib/nx-plugin/src/generators/app/versions.js +2 -29
- package/src/lib/nx-plugin/src/generators/app/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/files/src/app/app.config.server.ts__template__ +10 -0
- package/src/lib/nx-plugin/src/generators/init/files/src/main.server.ts__template__ +14 -0
- package/src/lib/nx-plugin/src/generators/init/files/src/server/routes/api/v1/hello.ts__template__ +3 -0
- package/src/lib/nx-plugin/src/generators/init/generator.js +5 -2
- package/src/lib/nx-plugin/src/generators/init/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js +4 -1
- package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js +2 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js +10 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js +12 -5
- package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js +5 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js +1 -1
- package/src/lib/nx-plugin/src/generators/init/test-files/src/test-setup.ts__template__ +16 -0
- package/src/lib/nx-plugin/src/generators/preset/__snapshots__/generator.spec.ts.snap +151 -0
- package/src/lib/nx-plugin/src/generators/preset/generator.js +3 -0
- package/src/lib/nx-plugin/src/generators/preset/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/files/src/test-setup.ts__template__ +16 -0
- package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js +5 -2
- package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js.map +1 -1
- package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js +1 -1
- package/src/lib/nx-plugin/src/utils/versions/dependencies.js +29 -57
- package/src/lib/nx-plugin/src/utils/versions/dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js +31 -59
- package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.d.ts +3 -3
- package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js +3 -3
- package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.d.ts +4 -4
- package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js +4 -4
- package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js.map +1 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.d.ts +8 -8
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js +8 -8
- package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js.map +1 -1
- package/src/lib/options.d.ts +8 -0
- package/src/lib/platform-plugin.js +3 -1
- package/src/lib/router-plugin.js +3 -5
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/.eslintrc.json__template__ +0 -36
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/index.html__template__ +0 -15
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/app/app.config.ts__template__ +0 -18
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/main.server.ts__template__ +0 -23
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/test-setup.ts__template__ +0 -12
- package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/.eslintrc.json__template__ +0 -36
- package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.d.ts +0 -30
- package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.js +0 -37
- package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.js.map +0 -1
- package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.d.ts +0 -29
- package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.js +0 -36
- package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.js.map +0 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.d.ts +0 -15
- package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.js +0 -21
- package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.js.map +0 -1
- package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.d.ts +0 -15
- package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.js +0 -21
- package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.js.map +0 -1
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src/public/assets → template-angular/public}/.gitkeep__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src/public/assets → template-angular/public}/analog.svg__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src → template-angular/public}/favicon.ico__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.component.spec.ts__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/main.ts__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src/server/routes → template-angular/src/server/routes/api}/v1/hello.ts__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/styles.css__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/vite-env.d.ts__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.editor.json__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.json__template__ +0 -0
- /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.spec.json__template__ +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@analogjs/platform",
|
|
3
|
-
"version": "2.0.0-
|
|
3
|
+
"version": "2.0.0-beta.2",
|
|
4
4
|
"description": "The fullstack meta-framework for Angular",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "Brandon Roberts <robertsbt@gmail.com>",
|
|
@@ -29,20 +29,21 @@
|
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"nitropack": "^2.10.0",
|
|
32
|
-
"@analogjs/vite-plugin-angular": "^2.0.0-
|
|
33
|
-
"@analogjs/vite-plugin-nitro": "^2.0.0-
|
|
32
|
+
"@analogjs/vite-plugin-angular": "^2.0.0-beta.2",
|
|
33
|
+
"@analogjs/vite-plugin-nitro": "^2.0.0-beta.2",
|
|
34
34
|
"vitefu": "^0.2.5"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
|
-
"@nx/angular": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
38
|
-
"@nx/devkit": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
39
|
-
"@nx/vite": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
37
|
+
"@nx/angular": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0",
|
|
38
|
+
"@nx/devkit": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0",
|
|
39
|
+
"@nx/vite": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0",
|
|
40
40
|
"marked": "^15.0.7",
|
|
41
41
|
"marked-gfm-heading-id": "^4.1.1",
|
|
42
42
|
"marked-highlight": "^2.2.1",
|
|
43
43
|
"marked-mangle": "^1.1.10",
|
|
44
44
|
"marked-shiki": "^1.1.0",
|
|
45
|
-
"shiki": "^1.6.1"
|
|
45
|
+
"shiki": "^1.6.1",
|
|
46
|
+
"vite": "^5.0.0 || ^6.0.0 || ^7.0.0"
|
|
46
47
|
},
|
|
47
48
|
"overrides": {
|
|
48
49
|
"@nx/vite": {
|
|
@@ -50,6 +51,15 @@
|
|
|
50
51
|
}
|
|
51
52
|
},
|
|
52
53
|
"peerDependenciesMeta": {
|
|
54
|
+
"@nx/angular": {
|
|
55
|
+
"optional": true
|
|
56
|
+
},
|
|
57
|
+
"@nx/devkit": {
|
|
58
|
+
"optional": true
|
|
59
|
+
},
|
|
60
|
+
"@nx/vite": {
|
|
61
|
+
"optional": true
|
|
62
|
+
},
|
|
53
63
|
"shiki": {
|
|
54
64
|
"optional": true
|
|
55
65
|
},
|
|
@@ -79,6 +89,10 @@
|
|
|
79
89
|
],
|
|
80
90
|
"migrations": "./migrations/migration.json"
|
|
81
91
|
},
|
|
92
|
+
"publishConfig": {
|
|
93
|
+
"access": "public",
|
|
94
|
+
"provenance": true
|
|
95
|
+
},
|
|
82
96
|
"types": "./src/index.d.ts",
|
|
83
97
|
"module": "./src/index.js",
|
|
84
98
|
"main": "./src/index.js"
|
|
@@ -96,12 +96,10 @@ export function contentPlugin({ highlighter, markedOptions, shikiOptions, prismO
|
|
|
96
96
|
root = normalizePath(resolve(workspaceRoot, config.root || '.') || '.');
|
|
97
97
|
},
|
|
98
98
|
transform(code) {
|
|
99
|
-
if (code.includes('ANALOG_CONTENT_FILE_LIST')
|
|
100
|
-
code.includes('ANALOG_AGX_FILES')) {
|
|
99
|
+
if (code.includes('ANALOG_CONTENT_FILE_LIST')) {
|
|
101
100
|
const contentFilesList = fg.sync([
|
|
102
101
|
`${root}/src/content/**/*.md`,
|
|
103
|
-
`${
|
|
104
|
-
...(options?.additionalContentDirs || [])?.map((glob) => `${workspaceRoot}${glob}/**/*.{md,agx}`),
|
|
102
|
+
...(options?.additionalContentDirs || [])?.map((glob) => `${workspaceRoot}${glob}/**/*.md`),
|
|
105
103
|
], { dot: true });
|
|
106
104
|
const eagerImports = [];
|
|
107
105
|
contentFilesList.forEach((module, index) => {
|
|
@@ -109,15 +107,6 @@ export function contentPlugin({ highlighter, markedOptions, shikiOptions, prismO
|
|
|
109
107
|
});
|
|
110
108
|
let result = code.replace('let ANALOG_CONTENT_FILE_LIST = {};', `
|
|
111
109
|
let ANALOG_CONTENT_FILE_LIST = {${contentFilesList.map((module, index) => `"${module.replace(root, '')}": analog_module_${index}`)}};
|
|
112
|
-
`);
|
|
113
|
-
const agxFiles = fg.sync([
|
|
114
|
-
`${root}/src/content/**/*.agx`,
|
|
115
|
-
...(options?.additionalContentDirs || [])?.map((glob) => `${workspaceRoot}${glob}/**/*.agx`),
|
|
116
|
-
], {
|
|
117
|
-
dot: true,
|
|
118
|
-
});
|
|
119
|
-
result = result.replace('let ANALOG_AGX_FILES = {};', `
|
|
120
|
-
let ANALOG_AGX_FILES = {${agxFiles.map((module) => `"${module.replace(root, '')}": () => import('${module}')`)}};
|
|
121
110
|
`);
|
|
122
111
|
if (!code.includes('analog_module_')) {
|
|
123
112
|
result = `${eagerImports.join('\n')}\n${result}`;
|
|
@@ -157,4 +146,4 @@ export function contentPlugin({ highlighter, markedOptions, shikiOptions, prismO
|
|
|
157
146
|
},
|
|
158
147
|
];
|
|
159
148
|
}
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQtcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFvQjNCLE1BQU0sVUFBVSxhQUFhLENBQzNCLEVBQ0UsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxNQUNZO0lBQ3hCLFdBQVcsRUFBRSxPQUFPO0lBQ3BCLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Q0FDaEMsRUFDRCxPQUFpQjtJQUVqQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUV6QyxJQUFJLGlCQUEyQyxDQUFDO0lBQ2hELE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLElBQUksTUFBa0IsQ0FBQztJQUN2QixJQUFJLElBQVksQ0FBQztJQUVqQixPQUFPO1FBQ0w7WUFDRSxJQUFJLEVBQUUsOEJBQThCO1lBQ3BDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RCLDhEQUE4RDtnQkFDOUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDO29CQUM3QyxPQUFPO2dCQUNULENBQUM7Z0JBRUQsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDcEMseUVBQXlFO2dCQUN6RSw4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
|
|
@@ -1,20 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"builders": {
|
|
3
|
-
"vite-dev-server":
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"description": "Vite dev server."
|
|
7
|
-
},
|
|
8
|
-
"vite": {
|
|
9
|
-
"implementation": "./src/executors/vite/compat",
|
|
10
|
-
"schema": "./src/executors/vite/schema.json",
|
|
11
|
-
"description": "Build with Vite."
|
|
12
|
-
},
|
|
13
|
-
"vitest": {
|
|
14
|
-
"implementation": "./src/executors/vitest/compat",
|
|
15
|
-
"schema": "./src/executors/vitest/schema.json",
|
|
16
|
-
"description": "Test with Vitest"
|
|
17
|
-
}
|
|
3
|
+
"vite-dev-server": "@analogjs/vite-plugin-angular:vite-dev-server",
|
|
4
|
+
"vite": "@analogjs/vite-plugin-angular:vite",
|
|
5
|
+
"vitest": "@analogjs/vitest-angular:test"
|
|
18
6
|
},
|
|
19
7
|
"executors": {
|
|
20
8
|
"vite-dev-server": {
|
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
"name": "nx-plugin",
|
|
4
4
|
"version": "0.0.1",
|
|
5
5
|
"generators": {
|
|
6
|
-
"
|
|
6
|
+
"application": {
|
|
7
7
|
"factory": "./src/generators/app/generator",
|
|
8
8
|
"schema": "./src/generators/app/schema.json",
|
|
9
|
-
"description": "Generates an Analog application"
|
|
9
|
+
"description": "Generates an Analog application",
|
|
10
|
+
"aliases": ["app"]
|
|
10
11
|
},
|
|
11
12
|
"preset": {
|
|
12
13
|
"factory": "./src/generators/preset/generator",
|
|
@@ -29,14 +30,16 @@
|
|
|
29
30
|
"init": {
|
|
30
31
|
"factory": "./src/generators/init/generator",
|
|
31
32
|
"schema": "./src/generators/init/schema.json",
|
|
32
|
-
"description": "
|
|
33
|
+
"description": "Migrate and configure an Angular SPA to use Analog.",
|
|
34
|
+
"aliases": ["migrate"]
|
|
33
35
|
}
|
|
34
36
|
},
|
|
35
37
|
"schematics": {
|
|
36
|
-
"
|
|
38
|
+
"application": {
|
|
37
39
|
"factory": "./src/generators/app/compat",
|
|
38
40
|
"schema": "./src/generators/app/schema.json",
|
|
39
|
-
"description": "Generates an Analog application"
|
|
41
|
+
"description": "Generates an Analog application",
|
|
42
|
+
"aliases": ["app"]
|
|
40
43
|
},
|
|
41
44
|
"page": {
|
|
42
45
|
"factory": "./src/generators/page/generator#analogPageGeneratorSchematic",
|
|
@@ -52,7 +55,8 @@
|
|
|
52
55
|
"init": {
|
|
53
56
|
"factory": "./src/generators/init/compat",
|
|
54
57
|
"schema": "./src/generators/init/schema.json",
|
|
55
|
-
"description": "
|
|
58
|
+
"description": "Migrate and configure an Angular SPA to use Analog.",
|
|
59
|
+
"aliases": ["migrate"]
|
|
56
60
|
}
|
|
57
61
|
}
|
|
58
62
|
}
|
|
@@ -2,8 +2,7 @@ import { Component } from '@angular/core';
|
|
|
2
2
|
import { RouterOutlet } from '@angular/router';
|
|
3
3
|
|
|
4
4
|
@Component({
|
|
5
|
-
selector: '
|
|
6
|
-
standalone: true,
|
|
5
|
+
selector: 'app-root',
|
|
7
6
|
imports: [RouterOutlet],
|
|
8
7
|
template: ` <router-outlet></router-outlet> `,
|
|
9
8
|
})
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { mergeApplicationConfig, ApplicationConfig } from '@angular/core';
|
|
2
2
|
import { provideServerRendering } from '@angular/platform-server';
|
|
3
|
+
|
|
3
4
|
import { appConfig } from './app.config';
|
|
4
5
|
|
|
5
6
|
const serverConfig: ApplicationConfig = {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ApplicationConfig,
|
|
3
|
+
provideZoneChangeDetection<% if (majorAngularVersion > 19) { %>,
|
|
4
|
+
provideBrowserGlobalErrorListeners<% } %>
|
|
5
|
+
} from '@angular/core';
|
|
6
|
+
import {
|
|
7
|
+
provideHttpClient,
|
|
8
|
+
withFetch,
|
|
9
|
+
withInterceptors,
|
|
10
|
+
} from '@angular/common/http';
|
|
11
|
+
import { provideClientHydration } from '@angular/platform-browser';
|
|
12
|
+
import { provideFileRouter, requestContextInterceptor } from '@analogjs/router';
|
|
13
|
+
<% if (addTRPC) { %>
|
|
14
|
+
import { provideTrpcClient } from '../trpc-client';
|
|
15
|
+
<% } %>
|
|
16
|
+
|
|
17
|
+
export const appConfig: ApplicationConfig = {
|
|
18
|
+
providers: [<% if (majorAngularVersion > 19) { %>provideBrowserGlobalErrorListeners(),<% } %>
|
|
19
|
+
provideZoneChangeDetection({ eventCoalescing: true }),
|
|
20
|
+
provideFileRouter(),
|
|
21
|
+
provideClientHydration(),
|
|
22
|
+
provideHttpClient(
|
|
23
|
+
withFetch(),
|
|
24
|
+
withInterceptors([requestContextInterceptor])
|
|
25
|
+
),
|
|
26
|
+
<% if (addTRPC) { %>
|
|
27
|
+
provideTrpcClient(),
|
|
28
|
+
<% } %>
|
|
29
|
+
],
|
|
30
|
+
};
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/main.server.ts__template__
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import 'zone.js/node';
|
|
2
|
+
import '@angular/platform-server/init';
|
|
3
|
+
import { render } from '@analogjs/router/server';
|
|
4
|
+
|
|
5
|
+
import { AppComponent } from './app/app.component';
|
|
6
|
+
import { config } from './app/app.config.server';
|
|
7
|
+
|
|
8
|
+
export default render(AppComponent, config);
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/test-setup.ts__template__
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<% if (majorAngularVersion > 19) { %>
|
|
2
|
+
import '@angular/compiler';
|
|
3
|
+
import '@analogjs/vitest-angular/setup-zone';
|
|
4
|
+
|
|
5
|
+
import {
|
|
6
|
+
BrowserTestingModule,
|
|
7
|
+
platformBrowserTesting,
|
|
8
|
+
} from '@angular/platform-browser/testing';
|
|
9
|
+
import { getTestBed } from '@angular/core/testing';
|
|
10
|
+
|
|
11
|
+
getTestBed().initTestEnvironment(
|
|
12
|
+
BrowserTestingModule,
|
|
13
|
+
platformBrowserTesting()
|
|
14
|
+
);
|
|
15
|
+
<% } else { %>
|
|
16
|
+
import '@analogjs/vitest-angular/setup-zone';
|
|
17
|
+
|
|
18
|
+
import {
|
|
19
|
+
BrowserDynamicTestingModule,
|
|
20
|
+
platformBrowserDynamicTesting,
|
|
21
|
+
} from '@angular/platform-browser-dynamic/testing';
|
|
22
|
+
import { getTestBed } from '@angular/core/testing';
|
|
23
|
+
|
|
24
|
+
getTestBed().initTestEnvironment(
|
|
25
|
+
BrowserDynamicTestingModule,
|
|
26
|
+
platformBrowserDynamicTesting()
|
|
27
|
+
);
|
|
28
|
+
<% } %>
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
"files": ["src/main.ts", "src/main.server.ts"],
|
|
10
10
|
"include": [
|
|
11
11
|
"src/**/*.d.ts",
|
|
12
|
-
"src/app/
|
|
13
|
-
"src/
|
|
12
|
+
"src/app/pages/**/*.page.ts",
|
|
13
|
+
"src/server/middleware/**/*.ts"
|
|
14
14
|
],
|
|
15
15
|
"exclude": ["**/*.test.ts", "**/*.spec.ts"]
|
|
16
16
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="vitest" />
|
|
2
2
|
|
|
3
3
|
import analog from '@analogjs/platform';
|
|
4
|
-
import { defineConfig
|
|
5
|
-
import
|
|
4
|
+
import { defineConfig } from 'vite';
|
|
5
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
6
6
|
<% if (addTailwind) { %>
|
|
7
7
|
// @ts-expect-error @tailwindcss/vite currently uses mts. TypeScript is complaining this, but it works as expected.
|
|
8
8
|
import tailwindcss from '@tailwindcss/vite';
|
|
@@ -11,36 +11,32 @@ import tailwindcss from '@tailwindcss/vite';
|
|
|
11
11
|
// https://vitejs.dev/config/
|
|
12
12
|
export default defineConfig(({ mode }) => {
|
|
13
13
|
return {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
ssr: {
|
|
17
|
-
noExternal: ['@analogjs/trpc','@trpc/server'],
|
|
18
|
-
},
|
|
19
|
-
<% } %>
|
|
14
|
+
root: __dirname,
|
|
15
|
+
cacheDir: `<%= offsetFromRoot %>node_modules/.vite`,
|
|
20
16
|
build: {
|
|
17
|
+
outDir: '<%= offsetFromRoot %>dist/<%= projectRoot %>/client',
|
|
18
|
+
reportCompressedSize: true,
|
|
21
19
|
target: ['es2020'],
|
|
22
20
|
},
|
|
21
|
+
server: {
|
|
22
|
+
fs: {
|
|
23
|
+
allow: ['.'],
|
|
24
|
+
},
|
|
25
|
+
},
|
|
23
26
|
plugins: [
|
|
24
27
|
<% if (addTailwind) { %>
|
|
25
28
|
tailwindcss(),
|
|
26
29
|
<% } %>
|
|
27
30
|
<% if (addTRPC) { %>
|
|
28
31
|
analog({
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
'/': {
|
|
32
|
-
prerender: false,
|
|
33
|
-
}
|
|
34
|
-
}
|
|
32
|
+
prerender: {
|
|
33
|
+
routes: []
|
|
35
34
|
}
|
|
36
35
|
}),
|
|
37
36
|
<% } else { %>
|
|
38
37
|
analog(),
|
|
39
38
|
<% } %>
|
|
40
|
-
|
|
41
|
-
root: '<%= offsetFromRoot %>',
|
|
42
|
-
}),
|
|
43
|
-
splitVendorChunkPlugin(),
|
|
39
|
+
nxViteTsPaths(),
|
|
44
40
|
],
|
|
45
41
|
test: {
|
|
46
42
|
globals: true,
|
|
@@ -48,9 +44,6 @@ export default defineConfig(({ mode }) => {
|
|
|
48
44
|
setupFiles: ['src/test-setup.ts'],
|
|
49
45
|
include: ['**/*.spec.ts'],
|
|
50
46
|
reporters: ['default'],
|
|
51
|
-
cache: {
|
|
52
|
-
dir: `<%= offsetFromRoot %>node_modules/.vitest`,
|
|
53
|
-
},
|
|
54
47
|
},
|
|
55
48
|
define: {
|
|
56
49
|
'import.meta.vitest': mode !== 'production',
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="vitest" />
|
|
2
2
|
|
|
3
3
|
import analog from '@analogjs/platform';
|
|
4
|
-
import { defineConfig, Plugin
|
|
4
|
+
import { defineConfig, Plugin } from 'vite';
|
|
5
5
|
import tsConfigPaths from 'vite-tsconfig-paths';
|
|
6
6
|
|
|
7
7
|
// https://vitejs.dev/config/
|
|
@@ -52,7 +52,6 @@ export default defineConfig(({ mode }) => {
|
|
|
52
52
|
tsConfigPaths({
|
|
53
53
|
root: '<%= offsetFromRoot %>',
|
|
54
54
|
}),
|
|
55
|
-
splitVendorChunkPlugin(),
|
|
56
55
|
],
|
|
57
56
|
test: {
|
|
58
57
|
globals: true,
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="vitest" />
|
|
2
2
|
|
|
3
3
|
import analog from '@analogjs/platform';
|
|
4
|
-
import { defineConfig, Plugin
|
|
4
|
+
import { defineConfig, Plugin } from 'vite';
|
|
5
5
|
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
6
6
|
<% if (addTailwind) { %>
|
|
7
7
|
// @ts-expect-error @tailwindcss/vite currently uses mts. TypeScript is complaining this, but it works as expected.
|
|
@@ -47,7 +47,6 @@ export default defineConfig(({ mode }) => {
|
|
|
47
47
|
analog(),
|
|
48
48
|
<% } %>
|
|
49
49
|
nxViteTsPaths(),
|
|
50
|
-
splitVendorChunkPlugin(),
|
|
51
50
|
],
|
|
52
51
|
test: {
|
|
53
52
|
globals: true,
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="vitest" />
|
|
2
2
|
|
|
3
3
|
import analog from '@analogjs/platform';
|
|
4
|
-
import { defineConfig, Plugin
|
|
4
|
+
import { defineConfig, Plugin } from 'vite';
|
|
5
5
|
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
6
6
|
<% if (addTailwind) { %>
|
|
7
7
|
// @ts-expect-error @tailwindcss/vite currently uses mts. TypeScript is complaining this, but it works as expected.
|
|
@@ -46,7 +46,6 @@ export default defineConfig(({ mode }) => {
|
|
|
46
46
|
analog(),
|
|
47
47
|
<% } %>
|
|
48
48
|
nxViteTsPaths(),
|
|
49
|
-
splitVendorChunkPlugin(),
|
|
50
49
|
],
|
|
51
50
|
test: {
|
|
52
51
|
globals: true,
|
|
@@ -1,32 +1,8 @@
|
|
|
1
1
|
import 'zone.js/node';
|
|
2
2
|
import '@angular/platform-server/init';
|
|
3
|
-
import {
|
|
4
|
-
import { bootstrapApplication } from '@angular/platform-browser';
|
|
5
|
-
import { renderApplication } from '@angular/platform-server';
|
|
6
|
-
import { provideServerContext } from '@analogjs/router/server';
|
|
7
|
-
import { ServerContext } from '@analogjs/router/tokens';
|
|
3
|
+
import { render } from '@analogjs/router/server';
|
|
8
4
|
|
|
9
|
-
import { config } from './app/app.config.server';
|
|
10
5
|
import { AppComponent } from './app/app.component';
|
|
6
|
+
import { config } from './app/app.config.server';
|
|
11
7
|
|
|
12
|
-
|
|
13
|
-
enableProdMode();
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export function bootstrap() {
|
|
17
|
-
return bootstrapApplication(AppComponent, config);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export default async function render(
|
|
21
|
-
url: string,
|
|
22
|
-
document: string,
|
|
23
|
-
serverContext: ServerContext
|
|
24
|
-
) {
|
|
25
|
-
const html = await renderApplication(bootstrap, {
|
|
26
|
-
document,
|
|
27
|
-
url,
|
|
28
|
-
platformProviders: [provideServerContext(serverContext)],
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
return html;
|
|
32
|
-
}
|
|
8
|
+
export default render(AppComponent, config);
|
package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="vitest" />
|
|
2
2
|
|
|
3
3
|
import analog from '@analogjs/platform';
|
|
4
|
-
import { defineConfig
|
|
4
|
+
import { defineConfig } from 'vite';
|
|
5
5
|
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
6
6
|
<% if (addTailwind) { %>
|
|
7
7
|
// @ts-expect-error @tailwindcss/vite currently uses mts. TypeScript is complaining this, but it works as expected.
|
|
@@ -13,11 +13,6 @@ export default defineConfig(({ mode }) => {
|
|
|
13
13
|
return {
|
|
14
14
|
root: __dirname,
|
|
15
15
|
cacheDir: `<%= offsetFromRoot %>node_modules/.vite`,
|
|
16
|
-
<% if (addTRPC) { %>
|
|
17
|
-
ssr: {
|
|
18
|
-
noExternal: ['@analogjs/trpc','@trpc/server'],
|
|
19
|
-
},
|
|
20
|
-
<% } %>
|
|
21
16
|
build: {
|
|
22
17
|
outDir: '<%= offsetFromRoot %>dist/<%= projectRoot %>/client',
|
|
23
18
|
reportCompressedSize: true,
|
|
@@ -34,12 +29,8 @@ export default defineConfig(({ mode }) => {
|
|
|
34
29
|
<% } %>
|
|
35
30
|
<% if (addTRPC) { %>
|
|
36
31
|
analog({
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
'/': {
|
|
40
|
-
prerender: false,
|
|
41
|
-
}
|
|
42
|
-
}
|
|
32
|
+
prerender: {
|
|
33
|
+
routes: []
|
|
43
34
|
}
|
|
44
35
|
}),
|
|
45
36
|
<% } else { %>
|
|
@@ -8,6 +8,7 @@ export interface NormalizedOptions extends AnalogNxApplicationGeneratorOptions,
|
|
|
8
8
|
offsetFromRoot: string;
|
|
9
9
|
appsDir: string;
|
|
10
10
|
nxPackageNamespace: string;
|
|
11
|
+
isNx: boolean;
|
|
11
12
|
}
|
|
12
13
|
export declare function appGenerator(tree: Tree, options: AnalogNxApplicationGeneratorOptions): Promise<() => void>;
|
|
13
14
|
export default appGenerator;
|
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.appGenerator = appGenerator;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
4
5
|
const devkit_1 = require("@nx/devkit");
|
|
6
|
+
const ngcli_adapter_1 = require("@nx/devkit/ngcli-adapter");
|
|
5
7
|
const semver_1 = require("semver");
|
|
6
8
|
const version_utils_1 = require("../../utils/version-utils");
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
9
|
+
const add_home_page_1 = require("./lib/add-home-page");
|
|
10
|
+
const minimum_supported_versions_1 = require("./versions/minimum-supported-versions");
|
|
11
|
+
const add_angular_app_1 = require("./lib/add-angular-app");
|
|
12
|
+
const generator_1 = tslib_1.__importDefault(require("../init/generator"));
|
|
10
13
|
const add_files_1 = require("./lib/add-files");
|
|
11
14
|
const add_tailwind_config_1 = require("./lib/add-tailwind-config");
|
|
12
15
|
const add_trpc_1 = require("./lib/add-trpc");
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
+
const cleanup_files_1 = require("./lib/cleanup-files");
|
|
17
|
+
const add_analog_project_config_1 = require("./lib/add-analog-project-config");
|
|
18
|
+
const update_index_html_1 = require("./lib/update-index-html");
|
|
19
|
+
function normalizeOptions(tree, options) {
|
|
16
20
|
const isNx = tree.exists('/nx.json');
|
|
17
21
|
const appsDir = isNx ? (0, devkit_1.getWorkspaceLayout)(tree).appsDir : 'projects';
|
|
18
22
|
const allNames = (0, devkit_1.names)(options.analogAppName);
|
|
@@ -23,7 +27,7 @@ function normalizeOptions(tree, options, nxVersion) {
|
|
|
23
27
|
? options.tags.split(',').map((s) => s.trim())
|
|
24
28
|
: [];
|
|
25
29
|
const offsetFromRoot = (0, devkit_1.offsetFromRoot)(projectRoot);
|
|
26
|
-
const nxPackageNamespace =
|
|
30
|
+
const nxPackageNamespace = '@nx';
|
|
27
31
|
const addTailwind = options.addTailwind ?? true;
|
|
28
32
|
const addTRPC = options.addTRPC ?? false;
|
|
29
33
|
return {
|
|
@@ -38,35 +42,58 @@ function normalizeOptions(tree, options, nxVersion) {
|
|
|
38
42
|
nxPackageNamespace,
|
|
39
43
|
addTailwind,
|
|
40
44
|
addTRPC,
|
|
45
|
+
isNx,
|
|
41
46
|
};
|
|
42
47
|
}
|
|
43
48
|
async function appGenerator(tree, options) {
|
|
44
49
|
const nxVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, 'nx');
|
|
45
|
-
if (
|
|
46
|
-
throw new Error((0, devkit_1.stripIndents) `Nx must be installed to execute this plugin`);
|
|
47
|
-
}
|
|
48
|
-
if ((0, minimum_supported_versions_1.belowMinimumSupportedNxVersion)(nxVersion)) {
|
|
50
|
+
if (nxVersion && (0, minimum_supported_versions_1.belowMinimumSupportedNxVersion)(nxVersion)) {
|
|
49
51
|
throw new Error((0, devkit_1.stripIndents) `Nx v15.2.0 or newer is required to install Analog`);
|
|
50
52
|
}
|
|
51
|
-
if (
|
|
53
|
+
if (nxVersion &&
|
|
54
|
+
(0, minimum_supported_versions_1.belowMinimumSupportedNxtRPCVersion)(nxVersion) &&
|
|
55
|
+
options.addTRPC) {
|
|
52
56
|
console.warn('Nx v16.1.0 or newer is required to use tRPC with Analog. Skipping installation.');
|
|
53
57
|
options.addTRPC = false;
|
|
54
58
|
}
|
|
55
|
-
const normalizedOptions = normalizeOptions(tree, options
|
|
56
|
-
|
|
59
|
+
const normalizedOptions = normalizeOptions(tree, options);
|
|
60
|
+
if (nxVersion) {
|
|
61
|
+
await (0, add_angular_app_1.addAngularApp)(tree, normalizedOptions);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
const angularAppSchematic = (0, ngcli_adapter_1.wrapAngularDevkitSchematic)('@schematics/angular', 'application');
|
|
65
|
+
await angularAppSchematic(tree, {
|
|
66
|
+
projectRoot: normalizedOptions.projectRoot,
|
|
67
|
+
name: normalizedOptions.analogAppName,
|
|
68
|
+
});
|
|
69
|
+
(0, add_analog_project_config_1.addAnalogProjectConfig)(tree, normalizedOptions.projectRoot, normalizedOptions.projectName, normalizedOptions.parsedTags, normalizedOptions.name, normalizedOptions.appsDir, normalizedOptions.nxPackageNamespace);
|
|
70
|
+
}
|
|
71
|
+
await (0, generator_1.default)(tree, {
|
|
72
|
+
project: normalizedOptions.analogAppName,
|
|
73
|
+
vitest: true,
|
|
74
|
+
});
|
|
75
|
+
const angularVersion = (0, version_utils_1.getInstalledPackageVersion)(tree, '@angular/core');
|
|
57
76
|
const majorAngularVersion = (0, semver_1.major)((0, semver_1.coerce)(angularVersion));
|
|
58
|
-
await (0, add_analog_dependencies_1.addAnalogDependencies)(tree, nxVersion, angularVersion);
|
|
59
|
-
const { projectRoot, projectName, parsedTags, name, appsDir, nxPackageNamespace, } = normalizedOptions;
|
|
60
|
-
(0, add_analog_project_config_1.addAnalogProjectConfig)(tree, projectRoot, projectName, parsedTags, name, appsDir, nxPackageNamespace);
|
|
61
77
|
(0, add_files_1.addFiles)(tree, normalizedOptions, majorAngularVersion);
|
|
78
|
+
(0, devkit_1.addDependenciesToPackageJson)(tree, {
|
|
79
|
+
'front-matter': '^4.0.2',
|
|
80
|
+
marked: '^15.0.7',
|
|
81
|
+
mermaid: '^10.2.4',
|
|
82
|
+
prismjs: '^1.29.0',
|
|
83
|
+
}, {});
|
|
84
|
+
(0, devkit_1.updateJson)(tree, '/package.json', (json) => {
|
|
85
|
+
json.dependencies['@angular/platform-server'] = `~${angularVersion}`;
|
|
86
|
+
return json;
|
|
87
|
+
});
|
|
88
|
+
(0, update_index_html_1.updateIndex)(tree, normalizedOptions.analogAppName);
|
|
62
89
|
if (normalizedOptions.addTailwind) {
|
|
63
|
-
await (0, add_tailwind_config_1.addTailwindConfig)(tree, projectName);
|
|
90
|
+
await (0, add_tailwind_config_1.addTailwindConfig)(tree, normalizedOptions.projectName);
|
|
64
91
|
}
|
|
65
92
|
if (normalizedOptions.addTRPC) {
|
|
66
|
-
await (0, add_trpc_1.addTrpc)(tree, projectRoot, nxVersion, normalizedOptions);
|
|
93
|
+
await (0, add_trpc_1.addTrpc)(tree, normalizedOptions.projectRoot, nxVersion, normalizedOptions);
|
|
67
94
|
}
|
|
68
95
|
(0, add_home_page_1.addHomePage)(tree, normalizedOptions, majorAngularVersion);
|
|
69
|
-
|
|
96
|
+
(0, cleanup_files_1.cleanupFiles)(tree, normalizedOptions);
|
|
70
97
|
if (!normalizedOptions.skipFormat) {
|
|
71
98
|
await (0, devkit_1.formatFiles)(tree);
|
|
72
99
|
}
|