@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.
Files changed (127) hide show
  1. package/package.json +21 -7
  2. package/src/lib/content-plugin.js +3 -14
  3. package/src/lib/nx-plugin/README.md +1 -1
  4. package/src/lib/nx-plugin/executors.json +3 -15
  5. package/src/lib/nx-plugin/generators.json +10 -6
  6. package/src/lib/nx-plugin/src/generators/app/files/template-angular/package.json__template__ +3 -0
  7. package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.component.ts__template__ +1 -2
  8. package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.config.server.ts__template__ +2 -1
  9. package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/app/app.config.ts__template__ +30 -0
  10. package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/main.server.ts__template__ +8 -0
  11. package/src/lib/nx-plugin/src/generators/app/files/template-angular/src/test-setup.ts__template__ +28 -0
  12. package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.app.json__template__ +2 -2
  13. package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/vite.config.ts__template__ +14 -21
  14. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v15/vite.config.ts__template__ +1 -2
  15. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v17/vite.config.ts__template__ +1 -2
  16. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v18/vite.config.ts__template__ +1 -2
  17. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/src/main.server.ts__template__ +3 -27
  18. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/vite.config.ts__template__ +3 -12
  19. package/src/lib/nx-plugin/src/generators/app/generator.d.ts +1 -0
  20. package/src/lib/nx-plugin/src/generators/app/generator.js +47 -20
  21. package/src/lib/nx-plugin/src/generators/app/generator.js.map +1 -1
  22. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js +14 -8
  23. package/src/lib/nx-plugin/src/generators/app/lib/add-analog-project-config.js.map +1 -1
  24. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.d.ts +3 -0
  25. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js +58 -0
  26. package/src/lib/nx-plugin/src/generators/app/lib/add-angular-app.js.map +1 -0
  27. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js +1 -1
  28. package/src/lib/nx-plugin/src/generators/app/lib/add-files.js.map +1 -1
  29. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.d.ts +2 -0
  30. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js +47 -0
  31. package/src/lib/nx-plugin/src/generators/app/lib/add-vite-plugin.js.map +1 -0
  32. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.d.ts +3 -0
  33. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js +23 -0
  34. package/src/lib/nx-plugin/src/generators/app/lib/cleanup-files.js.map +1 -0
  35. package/src/lib/nx-plugin/src/generators/app/lib/initialize-analog-workspace.js +1 -1
  36. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.d.ts +2 -0
  37. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js +16 -0
  38. package/src/lib/nx-plugin/src/generators/app/lib/update-index-html.js.map +1 -0
  39. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.d.ts +3 -7
  40. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js +23 -55
  41. package/src/lib/nx-plugin/src/generators/app/versions/dependencies.js.map +1 -1
  42. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js +23 -65
  43. package/src/lib/nx-plugin/src/generators/app/versions/dev-dependencies.js.map +1 -1
  44. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js +15 -41
  45. package/src/lib/nx-plugin/src/generators/app/versions/nx-dependencies.js.map +1 -1
  46. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.d.ts +3 -3
  47. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js +3 -3
  48. package/src/lib/nx-plugin/src/generators/app/versions/nx_17_X/versions.js.map +1 -1
  49. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.d.ts +8 -8
  50. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js +8 -8
  51. package/src/lib/nx-plugin/src/generators/app/versions/nx_18_X/versions.js.map +1 -1
  52. package/src/lib/nx-plugin/src/generators/app/versions/trpc-dependencies.js +16 -40
  53. package/src/lib/nx-plugin/src/generators/app/versions/trpc-dependencies.js.map +1 -1
  54. package/src/lib/nx-plugin/src/generators/app/versions.d.ts +1 -24
  55. package/src/lib/nx-plugin/src/generators/app/versions.js +2 -29
  56. package/src/lib/nx-plugin/src/generators/app/versions.js.map +1 -1
  57. package/src/lib/nx-plugin/src/generators/init/files/src/app/app.config.server.ts__template__ +10 -0
  58. package/src/lib/nx-plugin/src/generators/init/files/src/main.server.ts__template__ +14 -0
  59. package/src/lib/nx-plugin/src/generators/init/files/src/server/routes/api/v1/hello.ts__template__ +3 -0
  60. package/src/lib/nx-plugin/src/generators/init/generator.js +5 -2
  61. package/src/lib/nx-plugin/src/generators/init/generator.js.map +1 -1
  62. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js +4 -1
  63. package/src/lib/nx-plugin/src/generators/init/lib/add-analog-dependencies.js.map +1 -1
  64. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js +2 -1
  65. package/src/lib/nx-plugin/src/generators/init/lib/update-app-tsconfig.js.map +1 -1
  66. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js +10 -1
  67. package/src/lib/nx-plugin/src/generators/init/lib/update-build-target.js.map +1 -1
  68. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js +1 -1
  69. package/src/lib/nx-plugin/src/generators/init/lib/update-index-html.js.map +1 -1
  70. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js +12 -5
  71. package/src/lib/nx-plugin/src/generators/init/lib/update-package-json.js.map +1 -1
  72. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js +5 -1
  73. package/src/lib/nx-plugin/src/generators/init/lib/update-serve-target.js.map +1 -1
  74. package/src/lib/nx-plugin/src/generators/init/lib/update-test-tsconfig.js +1 -1
  75. package/src/lib/nx-plugin/src/generators/init/test-files/src/test-setup.ts__template__ +16 -0
  76. package/src/lib/nx-plugin/src/generators/preset/__snapshots__/generator.spec.ts.snap +151 -0
  77. package/src/lib/nx-plugin/src/generators/preset/generator.js +3 -0
  78. package/src/lib/nx-plugin/src/generators/preset/generator.js.map +1 -1
  79. package/src/lib/nx-plugin/src/generators/setup-vitest/files/src/test-setup.ts__template__ +16 -0
  80. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js +5 -2
  81. package/src/lib/nx-plugin/src/generators/setup-vitest/generator.js.map +1 -1
  82. package/src/lib/nx-plugin/src/generators/setup-vitest/lib/update-tsconfig.js +1 -1
  83. package/src/lib/nx-plugin/src/utils/versions/dependencies.js +29 -57
  84. package/src/lib/nx-plugin/src/utils/versions/dependencies.js.map +1 -1
  85. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js +31 -59
  86. package/src/lib/nx-plugin/src/utils/versions/dev-dependencies.js.map +1 -1
  87. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.d.ts +3 -3
  88. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js +3 -3
  89. package/src/lib/nx-plugin/src/utils/versions/ng_17_X/versions.js.map +1 -1
  90. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.d.ts +4 -4
  91. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js +4 -4
  92. package/src/lib/nx-plugin/src/utils/versions/ng_18_X/versions.js.map +1 -1
  93. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.d.ts +8 -8
  94. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js +8 -8
  95. package/src/lib/nx-plugin/src/utils/versions/ng_19_X/versions.js.map +1 -1
  96. package/src/lib/options.d.ts +8 -0
  97. package/src/lib/platform-plugin.js +3 -1
  98. package/src/lib/router-plugin.js +3 -5
  99. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/.eslintrc.json__template__ +0 -36
  100. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/index.html__template__ +0 -15
  101. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/app/app.config.ts__template__ +0 -18
  102. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/main.server.ts__template__ +0 -23
  103. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v16/src/test-setup.ts__template__ +0 -12
  104. package/src/lib/nx-plugin/src/generators/app/files/template-angular-v19/.eslintrc.json__template__ +0 -36
  105. package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.d.ts +0 -30
  106. package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.js +0 -37
  107. package/src/lib/nx-plugin/src/generators/app/versions/nx_15_X/versions.js.map +0 -1
  108. package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.d.ts +0 -29
  109. package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.js +0 -36
  110. package/src/lib/nx-plugin/src/generators/app/versions/nx_16_X/versions.js.map +0 -1
  111. package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.d.ts +0 -15
  112. package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.js +0 -21
  113. package/src/lib/nx-plugin/src/utils/versions/ng_15_X/versions.js.map +0 -1
  114. package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.d.ts +0 -15
  115. package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.js +0 -21
  116. package/src/lib/nx-plugin/src/utils/versions/ng_16_X/versions.js.map +0 -1
  117. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src/public/assets → template-angular/public}/.gitkeep__template__ +0 -0
  118. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src/public/assets → template-angular/public}/analog.svg__template__ +0 -0
  119. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16/src → template-angular/public}/favicon.ico__template__ +0 -0
  120. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/app/app.component.spec.ts__template__ +0 -0
  121. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/main.ts__template__ +0 -0
  122. /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
  123. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/styles.css__template__ +0 -0
  124. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/src/vite-env.d.ts__template__ +0 -0
  125. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.editor.json__template__ +0 -0
  126. /package/src/lib/nx-plugin/src/generators/app/files/{template-angular-v16 → template-angular}/tsconfig.json__template__ +0 -0
  127. /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-alpha.9",
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-alpha.9",
33
- "@analogjs/vite-plugin-nitro": "^2.0.0-alpha.9",
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
- `${root}/src/content/**/*.agx`,
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQtcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFvQjNCLE1BQU0sVUFBVSxhQUFhLENBQzNCLEVBQ0UsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxNQUNZO0lBQ3hCLFdBQVcsRUFBRSxPQUFPO0lBQ3BCLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Q0FDaEMsRUFDRCxPQUFpQjtJQUVqQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUV6QyxJQUFJLGlCQUEyQyxDQUFDO0lBQ2hELE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLElBQUksTUFBa0IsQ0FBQztJQUN2QixJQUFJLElBQVksQ0FBQztJQUVqQixPQUFPO1FBQ0w7WUFDRSxJQUFJLEVBQUUsOEJBQThCO1lBQ3BDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RCLDhEQUE4RDtnQkFDOUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDO29CQUM3QyxPQUFPO2dCQUNULENBQUM7Z0JBRUQsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDcEMseUVBQXlFO2dCQUN6RSw4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
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGF0Zm9ybS9zcmMvbGliL2NvbnRlbnQtcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFvQjNCLE1BQU0sVUFBVSxhQUFhLENBQzNCLEVBQ0UsV0FBVyxFQUNYLGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxNQUNZO0lBQ3hCLFdBQVcsRUFBRSxPQUFPO0lBQ3BCLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Q0FDaEMsRUFDRCxPQUFpQjtJQUVqQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBbUIsQ0FBQztJQUV6QyxJQUFJLGlCQUEyQyxDQUFDO0lBQ2hELE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLElBQUksTUFBa0IsQ0FBQztJQUN2QixJQUFJLElBQVksQ0FBQztJQUVqQixPQUFPO1FBQ0w7WUFDRSxJQUFJLEVBQUUsOEJBQThCO1lBQ3BDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3RCLDhEQUE4RDtnQkFDOUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDO29CQUM3QyxPQUFPO2dCQUNULENBQUM7Z0JBRUQsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDcEMseUVBQXlFO2dCQUN6RSw4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
@@ -9,7 +9,7 @@ Official plugin to add Analog to your Nx monorepo.
9
9
  Creates a preconfigured Analog application.
10
10
 
11
11
  ```sh
12
- nx g @analogjs/platform:app analog-app
12
+ nx g @analogjs/platform:application analog-app
13
13
  ```
14
14
 
15
15
  ## Development
@@ -1,20 +1,8 @@
1
1
  {
2
2
  "builders": {
3
- "vite-dev-server": {
4
- "implementation": "./src/executors/vite-dev-server/compat",
5
- "schema": "./src/executors/vite-dev-server/schema.json",
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
- "app": {
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": "Setup the Analog configuration."
33
+ "description": "Migrate and configure an Angular SPA to use Analog.",
34
+ "aliases": ["migrate"]
33
35
  }
34
36
  },
35
37
  "schematics": {
36
- "app": {
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": "Setup the Analog configuration."
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: '<%= fileName %>-root',
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 { ApplicationConfig, mergeApplicationConfig } from '@angular/core';
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
+ };
@@ -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);
@@ -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/routes/**/*.ts",
13
- "src/app/pages/**/*.page.ts"
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, Plugin, splitVendorChunkPlugin } from 'vite';
5
- import tsConfigPaths from 'vite-tsconfig-paths';
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
- publicDir: 'src/public',
15
- <% if (addTRPC) { %>
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
- nitro: {
30
- routeRules: {
31
- '/': {
32
- prerender: false,
33
- }
34
- }
32
+ prerender: {
33
+ routes: []
35
34
  }
36
35
  }),
37
36
  <% } else { %>
38
37
  analog(),
39
38
  <% } %>
40
- tsConfigPaths({
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',
@@ -1,7 +1,7 @@
1
1
  /// <reference types="vitest" />
2
2
 
3
3
  import analog from '@analogjs/platform';
4
- import { defineConfig, Plugin, splitVendorChunkPlugin } from 'vite';
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,
@@ -1,7 +1,7 @@
1
1
  /// <reference types="vitest" />
2
2
 
3
3
  import analog from '@analogjs/platform';
4
- import { defineConfig, Plugin, splitVendorChunkPlugin } from 'vite';
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,
@@ -1,7 +1,7 @@
1
1
  /// <reference types="vitest" />
2
2
 
3
3
  import analog from '@analogjs/platform';
4
- import { defineConfig, Plugin, splitVendorChunkPlugin } from 'vite';
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 { enableProdMode } from '@angular/core';
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
- if (import.meta.env.PROD) {
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);
@@ -1,7 +1,7 @@
1
1
  /// <reference types="vitest" />
2
2
 
3
3
  import analog from '@analogjs/platform';
4
- import { defineConfig, Plugin } from 'vite';
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
- nitro: {
38
- routeRules: {
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 add_analog_project_config_1 = require("./lib/add-analog-project-config");
8
- const add_analog_dependencies_1 = require("./lib/add-analog-dependencies");
9
- const initialize_analog_workspace_1 = require("./lib/initialize-analog-workspace");
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 add_home_page_1 = require("./lib/add-home-page");
14
- const minimum_supported_versions_1 = require("./versions/minimum-supported-versions");
15
- function normalizeOptions(tree, options, nxVersion) {
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 = (0, semver_1.major)(nxVersion) >= 16 ? '@nx' : '@nrwl';
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 (!nxVersion) {
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 ((0, minimum_supported_versions_1.belowMinimumSupportedNxtRPCVersion)(nxVersion) && options.addTRPC) {
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, nxVersion);
56
- const angularVersion = await (0, initialize_analog_workspace_1.initializeAngularWorkspace)(tree, nxVersion, normalizedOptions);
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
- // await addEslint(tree, majorNxVersion, normalizedOptions);
96
+ (0, cleanup_files_1.cleanupFiles)(tree, normalizedOptions);
70
97
  if (!normalizedOptions.skipFormat) {
71
98
  await (0, devkit_1.formatFiles)(tree);
72
99
  }