@mouryaamit/nx-polystack 0.0.0-stage → 1.0.1

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 (680) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +77 -2
  3. package/USER-MANUAL.md +1968 -0
  4. package/dist/bin/cli.d.ts +1 -0
  5. package/dist/bin/cli.js +92 -0
  6. package/dist/bin/cli.js.map +1 -0
  7. package/dist/executors.json +32 -0
  8. package/dist/generators.json +47 -0
  9. package/dist/migrations.json +87 -0
  10. package/dist/runtime/env-secret.cjs +736 -0
  11. package/dist/src/cli/args.d.ts +18 -0
  12. package/dist/src/cli/args.js +67 -0
  13. package/dist/src/cli/args.js.map +1 -0
  14. package/dist/src/cli/commands/app.d.ts +3 -0
  15. package/dist/src/cli/commands/app.js +108 -0
  16. package/dist/src/cli/commands/app.js.map +1 -0
  17. package/dist/src/cli/commands/build.d.ts +8 -0
  18. package/dist/src/cli/commands/build.js +132 -0
  19. package/dist/src/cli/commands/build.js.map +1 -0
  20. package/dist/src/cli/commands/csp.d.ts +19 -0
  21. package/dist/src/cli/commands/csp.js +238 -0
  22. package/dist/src/cli/commands/csp.js.map +1 -0
  23. package/dist/src/cli/commands/encryption.d.ts +4 -0
  24. package/dist/src/cli/commands/encryption.js +261 -0
  25. package/dist/src/cli/commands/encryption.js.map +1 -0
  26. package/dist/src/cli/commands/env.d.ts +2 -0
  27. package/dist/src/cli/commands/env.js +74 -0
  28. package/dist/src/cli/commands/env.js.map +1 -0
  29. package/dist/src/cli/commands/hardening.d.ts +2 -0
  30. package/dist/src/cli/commands/hardening.js +176 -0
  31. package/dist/src/cli/commands/hardening.js.map +1 -0
  32. package/dist/src/cli/commands/index.d.ts +3 -0
  33. package/dist/src/cli/commands/index.js +45 -0
  34. package/dist/src/cli/commands/index.js.map +1 -0
  35. package/dist/src/cli/commands/infra.d.ts +25 -0
  36. package/dist/src/cli/commands/infra.js +85 -0
  37. package/dist/src/cli/commands/infra.js.map +1 -0
  38. package/dist/src/cli/commands/internal-migrate.d.ts +3 -0
  39. package/dist/src/cli/commands/internal-migrate.js +65 -0
  40. package/dist/src/cli/commands/internal-migrate.js.map +1 -0
  41. package/dist/src/cli/commands/lib.d.ts +2 -0
  42. package/dist/src/cli/commands/lib.js +70 -0
  43. package/dist/src/cli/commands/lib.js.map +1 -0
  44. package/dist/src/cli/commands/llm.d.ts +2 -0
  45. package/dist/src/cli/commands/llm.js +46 -0
  46. package/dist/src/cli/commands/llm.js.map +1 -0
  47. package/dist/src/cli/commands/migrate.d.ts +2 -0
  48. package/dist/src/cli/commands/migrate.js +230 -0
  49. package/dist/src/cli/commands/migrate.js.map +1 -0
  50. package/dist/src/cli/commands/new.d.ts +6 -0
  51. package/dist/src/cli/commands/new.js +97 -0
  52. package/dist/src/cli/commands/new.js.map +1 -0
  53. package/dist/src/cli/commands/preset.d.ts +2 -0
  54. package/dist/src/cli/commands/preset.js +47 -0
  55. package/dist/src/cli/commands/preset.js.map +1 -0
  56. package/dist/src/cli/commands/release.d.ts +3 -0
  57. package/dist/src/cli/commands/release.js +83 -0
  58. package/dist/src/cli/commands/release.js.map +1 -0
  59. package/dist/src/cli/commands/shared.d.ts +3 -0
  60. package/dist/src/cli/commands/shared.js +55 -0
  61. package/dist/src/cli/commands/shared.js.map +1 -0
  62. package/dist/src/cli/commands/update.d.ts +11 -0
  63. package/dist/src/cli/commands/update.js +120 -0
  64. package/dist/src/cli/commands/update.js.map +1 -0
  65. package/dist/src/cli/context.d.ts +18 -0
  66. package/dist/src/cli/context.js +66 -0
  67. package/dist/src/cli/context.js.map +1 -0
  68. package/dist/src/cli/exec.d.ts +9 -0
  69. package/dist/src/cli/exec.js +34 -0
  70. package/dist/src/cli/exec.js.map +1 -0
  71. package/dist/src/cli/help.d.ts +1 -0
  72. package/dist/src/cli/help.js +291 -0
  73. package/dist/src/cli/help.js.map +1 -0
  74. package/dist/src/cli/install-source.d.ts +16 -0
  75. package/dist/src/cli/install-source.js +49 -0
  76. package/dist/src/cli/install-source.js.map +1 -0
  77. package/dist/src/cli/launcher.d.ts +32 -0
  78. package/dist/src/cli/launcher.js +168 -0
  79. package/dist/src/cli/launcher.js.map +1 -0
  80. package/dist/src/cli/migrations.d.ts +25 -0
  81. package/dist/src/cli/migrations.js +35 -0
  82. package/dist/src/cli/migrations.js.map +1 -0
  83. package/dist/src/cli/run-tree.d.ts +9 -0
  84. package/dist/src/cli/run-tree.js +32 -0
  85. package/dist/src/cli/run-tree.js.map +1 -0
  86. package/dist/src/cli/types.d.ts +18 -0
  87. package/dist/src/cli/types.js +12 -0
  88. package/dist/src/cli/types.js.map +1 -0
  89. package/dist/src/cli/update-plan.d.ts +15 -0
  90. package/dist/src/cli/update-plan.js +40 -0
  91. package/dist/src/cli/update-plan.js.map +1 -0
  92. package/dist/src/cli/versions.d.ts +26 -0
  93. package/dist/src/cli/versions.js +83 -0
  94. package/dist/src/cli/versions.js.map +1 -0
  95. package/dist/src/executors/build/executor.d.ts +19 -0
  96. package/dist/src/executors/build/executor.js +251 -0
  97. package/dist/src/executors/build/executor.js.map +1 -0
  98. package/dist/src/executors/build/schema.d.ts +42 -0
  99. package/dist/src/executors/build/schema.json +104 -0
  100. package/dist/src/executors/capacitor/executor.d.ts +8 -0
  101. package/dist/src/executors/capacitor/executor.js +45 -0
  102. package/dist/src/executors/capacitor/executor.js.map +1 -0
  103. package/dist/src/executors/capacitor/schema.d.ts +10 -0
  104. package/dist/src/executors/capacitor/schema.json +24 -0
  105. package/dist/src/executors/clean/executor.d.ts +19 -0
  106. package/dist/src/executors/clean/executor.js +134 -0
  107. package/dist/src/executors/clean/executor.js.map +1 -0
  108. package/dist/src/executors/clean/schema.d.ts +6 -0
  109. package/dist/src/executors/clean/schema.json +21 -0
  110. package/dist/src/executors/flutter-build/executor.d.ts +8 -0
  111. package/dist/src/executors/flutter-build/executor.js +70 -0
  112. package/dist/src/executors/flutter-build/executor.js.map +1 -0
  113. package/dist/src/executors/flutter-build/schema.d.ts +10 -0
  114. package/dist/src/executors/flutter-build/schema.json +44 -0
  115. package/dist/src/executors/flutter-export/executor.d.ts +8 -0
  116. package/dist/src/executors/flutter-export/executor.js +36 -0
  117. package/dist/src/executors/flutter-export/executor.js.map +1 -0
  118. package/dist/src/executors/flutter-export/schema.d.ts +6 -0
  119. package/dist/src/executors/flutter-export/schema.json +28 -0
  120. package/dist/src/generators/app/files/angular/.eslintrc.json__template__ +28 -0
  121. package/dist/src/generators/app/files/angular/csp-allowlist.json__template__ +1 -0
  122. package/dist/src/generators/app/files/angular/server/README.md__template__ +31 -0
  123. package/dist/src/generators/app/files/angular/src/app/app-routing.module.ts__template__ +10 -0
  124. package/dist/src/generators/app/files/angular/src/app/app.component.html__template__ +4 -0
  125. package/dist/src/generators/app/files/angular/src/app/app.component.scss__template__ +1 -0
  126. package/dist/src/generators/app/files/angular/src/app/app.component.ts__template__ +9 -0
  127. package/dist/src/generators/app/files/angular/src/app/app.module.ts__template__ +13 -0
  128. package/dist/src/generators/app/files/angular/src/index.html__template__ +12 -0
  129. package/dist/src/generators/app/files/angular/src/main.ts__template__ +16 -0
  130. package/dist/src/generators/app/files/angular/src/styles.scss__template__ +1 -0
  131. package/dist/src/generators/app/files/angular/tsconfig.app.json__template__ +10 -0
  132. package/dist/src/generators/app/files/angular/tsconfig.json__template__ +25 -0
  133. package/dist/src/generators/app/files/angular/tsconfig.spec.json__template__ +8 -0
  134. package/dist/src/generators/app/files/flutter/.gitignore__template__ +10 -0
  135. package/dist/src/generators/app/files/flutter/analysis_options.yaml__template__ +8 -0
  136. package/dist/src/generators/app/files/flutter/lib/main.dart__template__ +23 -0
  137. package/dist/src/generators/app/files/flutter/pubspec.yaml__template__ +26 -0
  138. package/dist/src/generators/app/files/flutter/server/nginx.conf__template__ +35 -0
  139. package/dist/src/generators/app/files/ionic/.gitignore__template__ +7 -0
  140. package/dist/src/generators/app/files/ionic/capacitor.config.ts__template__ +19 -0
  141. package/dist/src/generators/app/files/ionic/package.json__template__ +14 -0
  142. package/dist/src/generators/app/files/ionic/src/app/app.component.html__template__ +3 -0
  143. package/dist/src/generators/app/files/ionic/src/app/app.component.scss__template__ +0 -0
  144. package/dist/src/generators/app/files/ionic/src/app/app.module.ts__template__ +16 -0
  145. package/dist/src/generators/app/files/ionic/src/index.html__template__ +17 -0
  146. package/dist/src/generators/app/files/ionic/src/styles.scss__template__ +12 -0
  147. package/dist/src/generators/app/generator.d.ts +15 -0
  148. package/dist/src/generators/app/generator.js +363 -0
  149. package/dist/src/generators/app/generator.js.map +1 -0
  150. package/dist/src/generators/app/schema.d.ts +19 -0
  151. package/dist/src/generators/app/schema.json +77 -0
  152. package/dist/src/generators/env/generator.d.ts +3 -0
  153. package/dist/src/generators/env/generator.js +454 -0
  154. package/dist/src/generators/env/generator.js.map +1 -0
  155. package/dist/src/generators/env/schema.d.ts +18 -0
  156. package/dist/src/generators/env/schema.json +47 -0
  157. package/dist/src/generators/infra/files/ci/commitlint/commitlint.config.js__template__ +6 -0
  158. package/dist/src/generators/infra/files/ci/common/tools/config/allowed-cycles.json__template__ +1 -0
  159. package/dist/src/generators/infra/files/ci/common/tools/scripts/check-cycles.js__template__ +201 -0
  160. package/dist/src/generators/infra/files/ci/github-actions/.github/workflows/ci.yml__template__ +68 -0
  161. package/dist/src/generators/infra/files/ci/github-actions/.github/workflows/pr-title.yml__template__ +36 -0
  162. package/dist/src/generators/infra/files/ci/jenkins/Jenkinsfile__template__ +45 -0
  163. package/dist/src/generators/infra/files/docs/.github/ISSUE_TEMPLATE/bug.yml__template__ +39 -0
  164. package/dist/src/generators/infra/files/docs/.github/ISSUE_TEMPLATE/config.yml__template__ +1 -0
  165. package/dist/src/generators/infra/files/docs/.github/ISSUE_TEMPLATE/feature.yml__template__ +23 -0
  166. package/dist/src/generators/infra/files/docs/.github/PULL_REQUEST_TEMPLATE.md__template__ +23 -0
  167. package/dist/src/generators/infra/files/docs/CODE_OF_CONDUCT.md__template__ +18 -0
  168. package/dist/src/generators/infra/files/docs/CONTRIBUTING.md__template__ +61 -0
  169. package/dist/src/generators/infra/files/docs/SECURITY.md__template__ +25 -0
  170. package/dist/src/generators/infra/files/quality/.husky/pre-push__template__ +2 -0
  171. package/dist/src/generators/infra/files/quality/.secretlintignore__template__ +7 -0
  172. package/dist/src/generators/infra/files/quality/.secretlintrc.json__template__ +7 -0
  173. package/dist/src/generators/infra/files/quality/knip.json__template__ +9 -0
  174. package/dist/src/generators/infra/files/upgrades/.github/workflows/dependency-upgrade.yml__template__ +80 -0
  175. package/dist/src/generators/infra/generator.d.ts +60 -0
  176. package/dist/src/generators/infra/generator.js +356 -0
  177. package/dist/src/generators/infra/generator.js.map +1 -0
  178. package/dist/src/generators/infra/options.d.ts +28 -0
  179. package/dist/src/generators/infra/options.js +80 -0
  180. package/dist/src/generators/infra/options.js.map +1 -0
  181. package/dist/src/generators/infra/schema.d.ts +19 -0
  182. package/dist/src/generators/infra/schema.json +59 -0
  183. package/dist/src/generators/lib/angular-lib.d.ts +27 -0
  184. package/dist/src/generators/lib/angular-lib.js +85 -0
  185. package/dist/src/generators/lib/angular-lib.js.map +1 -0
  186. package/dist/src/generators/lib/files/angular/component/src/index.ts__template__ +2 -0
  187. package/dist/src/generators/lib/files/angular/component/src/lib/__fileName__/__fileName__.component.html__template__ +1 -0
  188. package/dist/src/generators/lib/files/angular/component/src/lib/__fileName__/__fileName__.component.scss__template__ +3 -0
  189. package/dist/src/generators/lib/files/angular/component/src/lib/__fileName__/__fileName__.component.ts__template__ +9 -0
  190. package/dist/src/generators/lib/files/angular/component/src/lib/__fileName__.module.ts__template__ +11 -0
  191. package/dist/src/generators/lib/files/angular/config/.eslintrc.json__template__ +32 -0
  192. package/dist/src/generators/lib/files/angular/config/tsconfig.json__template__ +22 -0
  193. package/dist/src/generators/lib/files/angular/config/tsconfig.lib.json__template__ +12 -0
  194. package/dist/src/generators/lib/files/assets/README.md__template__ +13 -0
  195. package/dist/src/generators/lib/files/design-tokens/README.md__template__ +90 -0
  196. package/dist/src/generators/lib/files/design-tokens/generated/dart/pubspec.yaml__template__ +11 -0
  197. package/dist/src/generators/lib/files/design-tokens/src/index.ts__template__ +1 -0
  198. package/dist/src/generators/lib/files/design-tokens/style-dictionary.config.js__template__ +41 -0
  199. package/dist/src/generators/lib/files/flutter/.gitignore__template__ +7 -0
  200. package/dist/src/generators/lib/files/flutter/analysis_options.yaml__template__ +6 -0
  201. package/dist/src/generators/lib/files/flutter/lib/__snakeName__.dart__template__ +1 -0
  202. package/dist/src/generators/lib/files/flutter/lib/src/__snakeName__.dart__template__ +6 -0
  203. package/dist/src/generators/lib/files/flutter/pubspec.yaml__template__ +18 -0
  204. package/dist/src/generators/lib/files/flutter/test/__snakeName___test.dart__template__ +8 -0
  205. package/dist/src/generators/lib/files/ionic/src/index.ts__template__ +2 -0
  206. package/dist/src/generators/lib/files/ionic/src/lib/__fileName__/__fileName__.page.html__template__ +9 -0
  207. package/dist/src/generators/lib/files/ionic/src/lib/__fileName__/__fileName__.page.scss__template__ +3 -0
  208. package/dist/src/generators/lib/files/ionic/src/lib/__fileName__/__fileName__.page.ts__template__ +9 -0
  209. package/dist/src/generators/lib/files/ionic/src/lib/__fileName__.module.ts__template__ +12 -0
  210. package/dist/src/generators/lib/files/pii/README.md__template__ +35 -0
  211. package/dist/src/generators/lib/files/pii/src/index.ts__template__ +5 -0
  212. package/dist/src/generators/lib/files/pii/src/lib/pii-mask.directive.ts__template__ +30 -0
  213. package/dist/src/generators/lib/files/pii/src/lib/pii-mask.module.ts__template__ +17 -0
  214. package/dist/src/generators/lib/files/pii/src/lib/pii-mask.options.ts__template__ +6 -0
  215. package/dist/src/generators/lib/files/pii/src/lib/pii-mask.pipe.ts__template__ +14 -0
  216. package/dist/src/generators/lib/files/pii/src/lib/pii-mask.ts__template__ +117 -0
  217. package/dist/src/generators/lib/files/session/README.md__template__ +39 -0
  218. package/dist/src/generators/lib/files/session/src/index.ts__template__ +5 -0
  219. package/dist/src/generators/lib/files/session/src/lib/session-clock.ts__template__ +113 -0
  220. package/dist/src/generators/lib/files/session/src/lib/session-timeout.config.ts__template__ +8 -0
  221. package/dist/src/generators/lib/files/session/src/lib/session-timeout.module.ts__template__ +23 -0
  222. package/dist/src/generators/lib/files/session/src/lib/session-timeout.service.ts__template__ +289 -0
  223. package/dist/src/generators/lib/files/session/src/lib/session-warning/session-warning.component.html__template__ +21 -0
  224. package/dist/src/generators/lib/files/session/src/lib/session-warning/session-warning.component.scss__template__ +40 -0
  225. package/dist/src/generators/lib/files/session/src/lib/session-warning/session-warning.component.ts__template__ +105 -0
  226. package/dist/src/generators/lib/files/state/ngrx/README.md__template__ +33 -0
  227. package/dist/src/generators/lib/files/state/ngrx/src/index.ts__template__ +6 -0
  228. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__-state.module.ts__template__ +18 -0
  229. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__.actions.ts__template__ +12 -0
  230. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__.effects.ts__template__ +26 -0
  231. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__.models.ts__template__ +4 -0
  232. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__.reducer.ts__template__ +33 -0
  233. package/dist/src/generators/lib/files/state/ngrx/src/lib/__fileName__.selectors.ts__template__ +14 -0
  234. package/dist/src/generators/lib/files/state/simple-service/README.md__template__ +20 -0
  235. package/dist/src/generators/lib/files/state/simple-service/src/index.ts__template__ +2 -0
  236. package/dist/src/generators/lib/files/state/simple-service/src/lib/__fileName__.store.ts__template__ +58 -0
  237. package/dist/src/generators/lib/files/state/simple-service/src/lib/store.ts__template__ +34 -0
  238. package/dist/src/generators/lib/files/styles/README.md__template__ +39 -0
  239. package/dist/src/generators/lib/files/styles/src/_index.scss__template__ +3 -0
  240. package/dist/src/generators/lib/files/styles/src/mixins/_index.scss__template__ +13 -0
  241. package/dist/src/generators/lib/files/styles/src/themes/_index.scss__template__ +20 -0
  242. package/dist/src/generators/lib/files/styles/src/tokens/_index.scss__template__ +27 -0
  243. package/dist/src/generators/lib/files/ts/config/.eslintrc.json__template__ +10 -0
  244. package/dist/src/generators/lib/files/ts/config/tsconfig.json__template__ +14 -0
  245. package/dist/src/generators/lib/files/ts/config/tsconfig.lib.json__template__ +10 -0
  246. package/dist/src/generators/lib/files/ts/sample/src/index.ts__template__ +1 -0
  247. package/dist/src/generators/lib/files/ts/sample/src/lib/__fileName__.ts__template__ +4 -0
  248. package/dist/src/generators/lib/generator.d.ts +3 -0
  249. package/dist/src/generators/lib/generator.js +53 -0
  250. package/dist/src/generators/lib/generator.js.map +1 -0
  251. package/dist/src/generators/lib/lib-utils.d.ts +72 -0
  252. package/dist/src/generators/lib/lib-utils.js +170 -0
  253. package/dist/src/generators/lib/lib-utils.js.map +1 -0
  254. package/dist/src/generators/lib/schema.d.ts +31 -0
  255. package/dist/src/generators/lib/schema.json +63 -0
  256. package/dist/src/generators/lib/style-dictionary.d.ts +36 -0
  257. package/dist/src/generators/lib/style-dictionary.js +183 -0
  258. package/dist/src/generators/lib/style-dictionary.js.map +1 -0
  259. package/dist/src/generators/lib/types/angular.d.ts +2 -0
  260. package/dist/src/generators/lib/types/angular.js +20 -0
  261. package/dist/src/generators/lib/types/angular.js.map +1 -0
  262. package/dist/src/generators/lib/types/assets.d.ts +2 -0
  263. package/dist/src/generators/lib/types/assets.js +20 -0
  264. package/dist/src/generators/lib/types/assets.js.map +1 -0
  265. package/dist/src/generators/lib/types/design-tokens.d.ts +10 -0
  266. package/dist/src/generators/lib/types/design-tokens.js +78 -0
  267. package/dist/src/generators/lib/types/design-tokens.js.map +1 -0
  268. package/dist/src/generators/lib/types/flutter.d.ts +2 -0
  269. package/dist/src/generators/lib/types/flutter.js +28 -0
  270. package/dist/src/generators/lib/types/flutter.js.map +1 -0
  271. package/dist/src/generators/lib/types/index.d.ts +8 -0
  272. package/dist/src/generators/lib/types/index.js +31 -0
  273. package/dist/src/generators/lib/types/index.js.map +1 -0
  274. package/dist/src/generators/lib/types/ionic.d.ts +4 -0
  275. package/dist/src/generators/lib/types/ionic.js +35 -0
  276. package/dist/src/generators/lib/types/ionic.js.map +1 -0
  277. package/dist/src/generators/lib/types/pii.d.ts +3 -0
  278. package/dist/src/generators/lib/types/pii.js +19 -0
  279. package/dist/src/generators/lib/types/pii.js.map +1 -0
  280. package/dist/src/generators/lib/types/session.d.ts +3 -0
  281. package/dist/src/generators/lib/types/session.js +21 -0
  282. package/dist/src/generators/lib/types/session.js.map +1 -0
  283. package/dist/src/generators/lib/types/state.d.ts +5 -0
  284. package/dist/src/generators/lib/types/state.js +48 -0
  285. package/dist/src/generators/lib/types/state.js.map +1 -0
  286. package/dist/src/generators/lib/types/styles.d.ts +2 -0
  287. package/dist/src/generators/lib/types/styles.js +19 -0
  288. package/dist/src/generators/lib/types/styles.js.map +1 -0
  289. package/dist/src/generators/lib/types/ts.d.ts +5 -0
  290. package/dist/src/generators/lib/types/ts.js +30 -0
  291. package/dist/src/generators/lib/types/ts.js.map +1 -0
  292. package/dist/src/generators/llm/generator.d.ts +8 -0
  293. package/dist/src/generators/llm/generator.js +13 -0
  294. package/dist/src/generators/llm/generator.js.map +1 -0
  295. package/dist/src/generators/llm/schema.d.ts +4 -0
  296. package/dist/src/generators/llm/schema.json +16 -0
  297. package/dist/src/generators/migrate/adapters/angular-cli.d.ts +82 -0
  298. package/dist/src/generators/migrate/adapters/angular-cli.js +439 -0
  299. package/dist/src/generators/migrate/adapters/angular-cli.js.map +1 -0
  300. package/dist/src/generators/migrate/adapters/angular-workspace.d.ts +28 -0
  301. package/dist/src/generators/migrate/adapters/angular-workspace.js +397 -0
  302. package/dist/src/generators/migrate/adapters/angular-workspace.js.map +1 -0
  303. package/dist/src/generators/migrate/adapters/external.d.ts +23 -0
  304. package/dist/src/generators/migrate/adapters/external.js +230 -0
  305. package/dist/src/generators/migrate/adapters/external.js.map +1 -0
  306. package/dist/src/generators/migrate/adapters/flutter.d.ts +26 -0
  307. package/dist/src/generators/migrate/adapters/flutter.js +176 -0
  308. package/dist/src/generators/migrate/adapters/flutter.js.map +1 -0
  309. package/dist/src/generators/migrate/adapters/index.d.ts +34 -0
  310. package/dist/src/generators/migrate/adapters/index.js +136 -0
  311. package/dist/src/generators/migrate/adapters/index.js.map +1 -0
  312. package/dist/src/generators/migrate/adapters/ionic.d.ts +17 -0
  313. package/dist/src/generators/migrate/adapters/ionic.js +137 -0
  314. package/dist/src/generators/migrate/adapters/ionic.js.map +1 -0
  315. package/dist/src/generators/migrate/adapters/npm-workspaces.d.ts +23 -0
  316. package/dist/src/generators/migrate/adapters/npm-workspaces.js +734 -0
  317. package/dist/src/generators/migrate/adapters/npm-workspaces.js.map +1 -0
  318. package/dist/src/generators/migrate/adapters/nx-workspace.d.ts +47 -0
  319. package/dist/src/generators/migrate/adapters/nx-workspace.js +1037 -0
  320. package/dist/src/generators/migrate/adapters/nx-workspace.js.map +1 -0
  321. package/dist/src/generators/migrate/adapters/scaffold.d.ts +2 -0
  322. package/dist/src/generators/migrate/adapters/scaffold.js +200 -0
  323. package/dist/src/generators/migrate/adapters/scaffold.js.map +1 -0
  324. package/dist/src/generators/migrate/adapters/types.d.ts +184 -0
  325. package/dist/src/generators/migrate/adapters/types.js +63 -0
  326. package/dist/src/generators/migrate/adapters/types.js.map +1 -0
  327. package/dist/src/generators/migrate/angular-code-scan.d.ts +6 -0
  328. package/dist/src/generators/migrate/angular-code-scan.js +150 -0
  329. package/dist/src/generators/migrate/angular-code-scan.js.map +1 -0
  330. package/dist/src/generators/migrate/angular-config-files.d.ts +49 -0
  331. package/dist/src/generators/migrate/angular-config-files.js +158 -0
  332. package/dist/src/generators/migrate/angular-config-files.js.map +1 -0
  333. package/dist/src/generators/migrate/angular-project-json.d.ts +73 -0
  334. package/dist/src/generators/migrate/angular-project-json.js +352 -0
  335. package/dist/src/generators/migrate/angular-project-json.js.map +1 -0
  336. package/dist/src/generators/migrate/angular-workspace/aliases.d.ts +30 -0
  337. package/dist/src/generators/migrate/angular-workspace/aliases.js +73 -0
  338. package/dist/src/generators/migrate/angular-workspace/aliases.js.map +1 -0
  339. package/dist/src/generators/migrate/angular-workspace/eslint.d.ts +8 -0
  340. package/dist/src/generators/migrate/angular-workspace/eslint.js +38 -0
  341. package/dist/src/generators/migrate/angular-workspace/eslint.js.map +1 -0
  342. package/dist/src/generators/migrate/angular-workspace/ng-package.d.ts +4 -0
  343. package/dist/src/generators/migrate/angular-workspace/ng-package.js +16 -0
  344. package/dist/src/generators/migrate/angular-workspace/ng-package.js.map +1 -0
  345. package/dist/src/generators/migrate/angular-workspace/source.d.ts +15 -0
  346. package/dist/src/generators/migrate/angular-workspace/source.js +108 -0
  347. package/dist/src/generators/migrate/angular-workspace/source.js.map +1 -0
  348. package/dist/src/generators/migrate/angular17.d.ts +45 -0
  349. package/dist/src/generators/migrate/angular17.js +495 -0
  350. package/dist/src/generators/migrate/angular17.js.map +1 -0
  351. package/dist/src/generators/migrate/batch.d.ts +29 -0
  352. package/dist/src/generators/migrate/batch.js +211 -0
  353. package/dist/src/generators/migrate/batch.js.map +1 -0
  354. package/dist/src/generators/migrate/copy.d.ts +60 -0
  355. package/dist/src/generators/migrate/copy.js +224 -0
  356. package/dist/src/generators/migrate/copy.js.map +1 -0
  357. package/dist/src/generators/migrate/dependencies.d.ts +38 -0
  358. package/dist/src/generators/migrate/dependencies.js +196 -0
  359. package/dist/src/generators/migrate/dependencies.js.map +1 -0
  360. package/dist/src/generators/migrate/generator.d.ts +9 -0
  361. package/dist/src/generators/migrate/generator.js +347 -0
  362. package/dist/src/generators/migrate/generator.js.map +1 -0
  363. package/dist/src/generators/migrate/imports/rewrite.d.ts +46 -0
  364. package/dist/src/generators/migrate/imports/rewrite.js +382 -0
  365. package/dist/src/generators/migrate/imports/rewrite.js.map +1 -0
  366. package/dist/src/generators/migrate/ionic/capacitor-config.d.ts +24 -0
  367. package/dist/src/generators/migrate/ionic/capacitor-config.js +113 -0
  368. package/dist/src/generators/migrate/ionic/capacitor-config.js.map +1 -0
  369. package/dist/src/generators/migrate/ionic/packages.d.ts +34 -0
  370. package/dist/src/generators/migrate/ionic/packages.js +92 -0
  371. package/dist/src/generators/migrate/ionic/packages.js.map +1 -0
  372. package/dist/src/generators/migrate/ionic/shape.d.ts +32 -0
  373. package/dist/src/generators/migrate/ionic/shape.js +221 -0
  374. package/dist/src/generators/migrate/ionic/shape.js.map +1 -0
  375. package/dist/src/generators/migrate/ionic/skip.d.ts +3 -0
  376. package/dist/src/generators/migrate/ionic/skip.js +25 -0
  377. package/dist/src/generators/migrate/ionic/skip.js.map +1 -0
  378. package/dist/src/generators/migrate/names.d.ts +3 -0
  379. package/dist/src/generators/migrate/names.js +21 -0
  380. package/dist/src/generators/migrate/names.js.map +1 -0
  381. package/dist/src/generators/migrate/npm-deps.d.ts +28 -0
  382. package/dist/src/generators/migrate/npm-deps.js +63 -0
  383. package/dist/src/generators/migrate/npm-deps.js.map +1 -0
  384. package/dist/src/generators/migrate/npm-workspaces/pnpm-yaml.d.ts +10 -0
  385. package/dist/src/generators/migrate/npm-workspaces/pnpm-yaml.js +246 -0
  386. package/dist/src/generators/migrate/npm-workspaces/pnpm-yaml.js.map +1 -0
  387. package/dist/src/generators/migrate/npm-workspaces/source.d.ts +46 -0
  388. package/dist/src/generators/migrate/npm-workspaces/source.js +253 -0
  389. package/dist/src/generators/migrate/npm-workspaces/source.js.map +1 -0
  390. package/dist/src/generators/migrate/nx/build-scripts.d.ts +22 -0
  391. package/dist/src/generators/migrate/nx/build-scripts.js +147 -0
  392. package/dist/src/generators/migrate/nx/build-scripts.js.map +1 -0
  393. package/dist/src/generators/migrate/nx/detect.d.ts +3 -0
  394. package/dist/src/generators/migrate/nx/detect.js +43 -0
  395. package/dist/src/generators/migrate/nx/detect.js.map +1 -0
  396. package/dist/src/generators/migrate/nx/env-encryption.d.ts +35 -0
  397. package/dist/src/generators/migrate/nx/env-encryption.js +423 -0
  398. package/dist/src/generators/migrate/nx/env-encryption.js.map +1 -0
  399. package/dist/src/generators/migrate/nx/rewrite.d.ts +27 -0
  400. package/dist/src/generators/migrate/nx/rewrite.js +223 -0
  401. package/dist/src/generators/migrate/nx/rewrite.js.map +1 -0
  402. package/dist/src/generators/migrate/nx/selection.d.ts +25 -0
  403. package/dist/src/generators/migrate/nx/selection.js +173 -0
  404. package/dist/src/generators/migrate/nx/selection.js.map +1 -0
  405. package/dist/src/generators/migrate/nx/shared-folders.d.ts +58 -0
  406. package/dist/src/generators/migrate/nx/shared-folders.js +239 -0
  407. package/dist/src/generators/migrate/nx/shared-folders.js.map +1 -0
  408. package/dist/src/generators/migrate/nx/workspace-source.d.ts +58 -0
  409. package/dist/src/generators/migrate/nx/workspace-source.js +275 -0
  410. package/dist/src/generators/migrate/nx/workspace-source.js.map +1 -0
  411. package/dist/src/generators/migrate/pnpm.d.ts +42 -0
  412. package/dist/src/generators/migrate/pnpm.js +132 -0
  413. package/dist/src/generators/migrate/pnpm.js.map +1 -0
  414. package/dist/src/generators/migrate/report.d.ts +21 -0
  415. package/dist/src/generators/migrate/report.js +243 -0
  416. package/dist/src/generators/migrate/report.js.map +1 -0
  417. package/dist/src/generators/migrate/rollback/manifest.d.ts +84 -0
  418. package/dist/src/generators/migrate/rollback/manifest.js +162 -0
  419. package/dist/src/generators/migrate/rollback/manifest.js.map +1 -0
  420. package/dist/src/generators/migrate/rollback/recording-tree.d.ts +19 -0
  421. package/dist/src/generators/migrate/rollback/recording-tree.js +87 -0
  422. package/dist/src/generators/migrate/rollback/recording-tree.js.map +1 -0
  423. package/dist/src/generators/migrate/rollback/rollback.d.ts +29 -0
  424. package/dist/src/generators/migrate/rollback/rollback.js +271 -0
  425. package/dist/src/generators/migrate/rollback/rollback.js.map +1 -0
  426. package/dist/src/generators/migrate/schema.d.ts +41 -0
  427. package/dist/src/generators/migrate/schema.json +85 -0
  428. package/dist/src/generators/migrate/source.d.ts +26 -0
  429. package/dist/src/generators/migrate/source.js +70 -0
  430. package/dist/src/generators/migrate/source.js.map +1 -0
  431. package/dist/src/generators/preset/files/root/.editorconfig__template__ +15 -0
  432. package/dist/src/generators/preset/files/root/.eslintignore__template__ +2 -0
  433. package/dist/src/generators/preset/files/root/.eslintrc.json__template__ +38 -0
  434. package/dist/src/generators/preset/files/root/.gitattributes__template__ +12 -0
  435. package/dist/src/generators/preset/files/root/.gitignore__template__ +9 -0
  436. package/dist/src/generators/preset/files/root/.husky/commit-msg__template__ +1 -0
  437. package/dist/src/generators/preset/files/root/.husky/pre-commit__template__ +1 -0
  438. package/dist/src/generators/preset/files/root/.npmrc__template__ +4 -0
  439. package/dist/src/generators/preset/files/root/.nvmrc__template__ +1 -0
  440. package/dist/src/generators/preset/files/root/.prettierignore__template__ +6 -0
  441. package/dist/src/generators/preset/files/root/.prettierrc__template__ +7 -0
  442. package/dist/src/generators/preset/files/root/commitlint.config.js__template__ +6 -0
  443. package/dist/src/generators/preset/files/root/nx.json__template__ +30 -0
  444. package/dist/src/generators/preset/files/root/package.json__template__ +34 -0
  445. package/dist/src/generators/preset/files/root/tools/config/sri-cdn-allowlist.json__template__ +1 -0
  446. package/dist/src/generators/preset/files/root/tsconfig.base.json__template__ +18 -0
  447. package/dist/src/generators/preset/generator.d.ts +11 -0
  448. package/dist/src/generators/preset/generator.js +91 -0
  449. package/dist/src/generators/preset/generator.js.map +1 -0
  450. package/dist/src/generators/preset/schema.d.ts +20 -0
  451. package/dist/src/generators/preset/schema.json +86 -0
  452. package/dist/src/generators/shared-libs/generator.d.ts +4 -0
  453. package/dist/src/generators/shared-libs/generator.js +60 -0
  454. package/dist/src/generators/shared-libs/generator.js.map +1 -0
  455. package/dist/src/generators/shared-libs/schema.d.ts +6 -0
  456. package/dist/src/generators/shared-libs/schema.json +21 -0
  457. package/dist/src/index.d.ts +16 -0
  458. package/dist/src/index.js +20 -0
  459. package/dist/src/index.js.map +1 -0
  460. package/dist/src/lib/csp/allowlist.d.ts +64 -0
  461. package/dist/src/lib/csp/allowlist.js +126 -0
  462. package/dist/src/lib/csp/allowlist.js.map +1 -0
  463. package/dist/src/lib/csp/import.d.ts +52 -0
  464. package/dist/src/lib/csp/import.js +291 -0
  465. package/dist/src/lib/csp/import.js.map +1 -0
  466. package/dist/src/lib/csp/render.d.ts +19 -0
  467. package/dist/src/lib/csp/render.js +116 -0
  468. package/dist/src/lib/csp/render.js.map +1 -0
  469. package/dist/src/lib/env/derive.d.ts +38 -0
  470. package/dist/src/lib/env/derive.js +115 -0
  471. package/dist/src/lib/env/derive.js.map +1 -0
  472. package/dist/src/lib/env-encryption/backup.d.ts +40 -0
  473. package/dist/src/lib/env-encryption/backup.js +234 -0
  474. package/dist/src/lib/env-encryption/backup.js.map +1 -0
  475. package/dist/src/lib/env-encryption/config.d.ts +50 -0
  476. package/dist/src/lib/env-encryption/config.js +173 -0
  477. package/dist/src/lib/env-encryption/config.js.map +1 -0
  478. package/dist/src/lib/env-encryption/domains.d.ts +9 -0
  479. package/dist/src/lib/env-encryption/domains.js +52 -0
  480. package/dist/src/lib/env-encryption/domains.js.map +1 -0
  481. package/dist/src/lib/env-encryption/encrypt.d.ts +48 -0
  482. package/dist/src/lib/env-encryption/encrypt.js +407 -0
  483. package/dist/src/lib/env-encryption/encrypt.js.map +1 -0
  484. package/dist/src/lib/env-encryption/env-file.d.ts +72 -0
  485. package/dist/src/lib/env-encryption/env-file.js +395 -0
  486. package/dist/src/lib/env-encryption/env-file.js.map +1 -0
  487. package/dist/src/lib/env-encryption/gcm.d.ts +51 -0
  488. package/dist/src/lib/env-encryption/gcm.js +76 -0
  489. package/dist/src/lib/env-encryption/gcm.js.map +1 -0
  490. package/dist/src/lib/env-encryption/key-material.d.ts +53 -0
  491. package/dist/src/lib/env-encryption/key-material.js +148 -0
  492. package/dist/src/lib/env-encryption/key-material.js.map +1 -0
  493. package/dist/src/lib/env-encryption/placeholders.d.ts +15 -0
  494. package/dist/src/lib/env-encryption/placeholders.js +93 -0
  495. package/dist/src/lib/env-encryption/placeholders.js.map +1 -0
  496. package/dist/src/lib/env-encryption/prepare.d.ts +43 -0
  497. package/dist/src/lib/env-encryption/prepare.js +245 -0
  498. package/dist/src/lib/env-encryption/prepare.js.map +1 -0
  499. package/dist/src/lib/env-encryption/sensitive.d.ts +2 -0
  500. package/dist/src/lib/env-encryption/sensitive.js +180 -0
  501. package/dist/src/lib/env-encryption/sensitive.js.map +1 -0
  502. package/dist/src/lib/env-encryption/stamp.d.ts +2 -0
  503. package/dist/src/lib/env-encryption/stamp.js +52 -0
  504. package/dist/src/lib/env-encryption/stamp.js.map +1 -0
  505. package/dist/src/lib/env-encryption/switch-gcm.d.ts +43 -0
  506. package/dist/src/lib/env-encryption/switch-gcm.js +371 -0
  507. package/dist/src/lib/env-encryption/switch-gcm.js.map +1 -0
  508. package/dist/src/lib/env-encryption/workspace.d.ts +10 -0
  509. package/dist/src/lib/env-encryption/workspace.js +48 -0
  510. package/dist/src/lib/env-encryption/workspace.js.map +1 -0
  511. package/dist/src/lib/hardening/files.d.ts +17 -0
  512. package/dist/src/lib/hardening/files.js +43 -0
  513. package/dist/src/lib/hardening/files.js.map +1 -0
  514. package/dist/src/lib/hardening/integrity.d.ts +24 -0
  515. package/dist/src/lib/hardening/integrity.js +112 -0
  516. package/dist/src/lib/hardening/integrity.js.map +1 -0
  517. package/dist/src/lib/hardening/leak-check.d.ts +15 -0
  518. package/dist/src/lib/hardening/leak-check.js +100 -0
  519. package/dist/src/lib/hardening/leak-check.js.map +1 -0
  520. package/dist/src/lib/hardening/ngsw.d.ts +7 -0
  521. package/dist/src/lib/hardening/ngsw.js +55 -0
  522. package/dist/src/lib/hardening/ngsw.js.map +1 -0
  523. package/dist/src/lib/hardening/obfuscate.d.ts +36 -0
  524. package/dist/src/lib/hardening/obfuscate.js +153 -0
  525. package/dist/src/lib/hardening/obfuscate.js.map +1 -0
  526. package/dist/src/lib/hardening/options.d.ts +36 -0
  527. package/dist/src/lib/hardening/options.js +143 -0
  528. package/dist/src/lib/hardening/options.js.map +1 -0
  529. package/dist/src/lib/hardening/source-maps.d.ts +7 -0
  530. package/dist/src/lib/hardening/source-maps.js +37 -0
  531. package/dist/src/lib/hardening/source-maps.js.map +1 -0
  532. package/dist/src/lib/hardening/strip.d.ts +55 -0
  533. package/dist/src/lib/hardening/strip.js +178 -0
  534. package/dist/src/lib/hardening/strip.js.map +1 -0
  535. package/dist/src/lib/helpers/encrypt-env.d.ts +13 -0
  536. package/dist/src/lib/helpers/encrypt-env.js +33 -0
  537. package/dist/src/lib/helpers/encrypt-env.js.map +1 -0
  538. package/dist/src/lib/helpers/inject-meta.d.ts +14 -0
  539. package/dist/src/lib/helpers/inject-meta.js +49 -0
  540. package/dist/src/lib/helpers/inject-meta.js.map +1 -0
  541. package/dist/src/lib/helpers/inject-nonce.d.ts +7 -0
  542. package/dist/src/lib/helpers/inject-nonce.js +59 -0
  543. package/dist/src/lib/helpers/inject-nonce.js.map +1 -0
  544. package/dist/src/lib/helpers/inject-sri.d.ts +11 -0
  545. package/dist/src/lib/helpers/inject-sri.js +92 -0
  546. package/dist/src/lib/helpers/inject-sri.js.map +1 -0
  547. package/dist/src/lib/helpers/strip-exif.d.ts +9 -0
  548. package/dist/src/lib/helpers/strip-exif.js +52 -0
  549. package/dist/src/lib/helpers/strip-exif.js.map +1 -0
  550. package/dist/src/lib/release/plan.d.ts +45 -0
  551. package/dist/src/lib/release/plan.js +76 -0
  552. package/dist/src/lib/release/plan.js.map +1 -0
  553. package/dist/src/lib/release/run.d.ts +46 -0
  554. package/dist/src/lib/release/run.js +160 -0
  555. package/dist/src/lib/release/run.js.map +1 -0
  556. package/dist/src/lib/utils/angular-deps.d.ts +22 -0
  557. package/dist/src/lib/utils/angular-deps.js +108 -0
  558. package/dist/src/lib/utils/angular-deps.js.map +1 -0
  559. package/dist/src/lib/utils/angular-project.d.ts +52 -0
  560. package/dist/src/lib/utils/angular-project.js +168 -0
  561. package/dist/src/lib/utils/angular-project.js.map +1 -0
  562. package/dist/src/lib/utils/app-dir.d.ts +17 -0
  563. package/dist/src/lib/utils/app-dir.js +52 -0
  564. package/dist/src/lib/utils/app-dir.js.map +1 -0
  565. package/dist/src/lib/utils/base-href.d.ts +26 -0
  566. package/dist/src/lib/utils/base-href.js +60 -0
  567. package/dist/src/lib/utils/base-href.js.map +1 -0
  568. package/dist/src/lib/utils/ci-resolve.d.ts +10 -0
  569. package/dist/src/lib/utils/ci-resolve.js +50 -0
  570. package/dist/src/lib/utils/ci-resolve.js.map +1 -0
  571. package/dist/src/lib/utils/csp-nonce.d.ts +34 -0
  572. package/dist/src/lib/utils/csp-nonce.js +142 -0
  573. package/dist/src/lib/utils/csp-nonce.js.map +1 -0
  574. package/dist/src/lib/utils/dependencies.d.ts +25 -0
  575. package/dist/src/lib/utils/dependencies.js +71 -0
  576. package/dist/src/lib/utils/dependencies.js.map +1 -0
  577. package/dist/src/lib/utils/devkit-deps.d.ts +19 -0
  578. package/dist/src/lib/utils/devkit-deps.js +34 -0
  579. package/dist/src/lib/utils/devkit-deps.js.map +1 -0
  580. package/dist/src/lib/utils/env-files.d.ts +18 -0
  581. package/dist/src/lib/utils/env-files.js +41 -0
  582. package/dist/src/lib/utils/env-files.js.map +1 -0
  583. package/dist/src/lib/utils/filesystem.d.ts +7 -0
  584. package/dist/src/lib/utils/filesystem.js +20 -0
  585. package/dist/src/lib/utils/filesystem.js.map +1 -0
  586. package/dist/src/lib/utils/flutter-web.d.ts +7 -0
  587. package/dist/src/lib/utils/flutter-web.js +56 -0
  588. package/dist/src/lib/utils/flutter-web.js.map +1 -0
  589. package/dist/src/lib/utils/knip.d.ts +16 -0
  590. package/dist/src/lib/utils/knip.js +71 -0
  591. package/dist/src/lib/utils/knip.js.map +1 -0
  592. package/dist/src/lib/utils/lint-staged.d.ts +5 -0
  593. package/dist/src/lib/utils/lint-staged.js +34 -0
  594. package/dist/src/lib/utils/lint-staged.js.map +1 -0
  595. package/dist/src/lib/utils/llm-block.d.ts +88 -0
  596. package/dist/src/lib/utils/llm-block.js +457 -0
  597. package/dist/src/lib/utils/llm-block.js.map +1 -0
  598. package/dist/src/lib/utils/node-engine.d.ts +9 -0
  599. package/dist/src/lib/utils/node-engine.js +63 -0
  600. package/dist/src/lib/utils/node-engine.js.map +1 -0
  601. package/dist/src/lib/utils/npm-scripts.d.ts +7 -0
  602. package/dist/src/lib/utils/npm-scripts.js +28 -0
  603. package/dist/src/lib/utils/npm-scripts.js.map +1 -0
  604. package/dist/src/lib/utils/nx-targets.d.ts +3 -0
  605. package/dist/src/lib/utils/nx-targets.js +25 -0
  606. package/dist/src/lib/utils/nx-targets.js.map +1 -0
  607. package/dist/src/lib/utils/project-json-files.d.ts +23 -0
  608. package/dist/src/lib/utils/project-json-files.js +73 -0
  609. package/dist/src/lib/utils/project-json-files.js.map +1 -0
  610. package/dist/src/lib/utils/quality.d.ts +71 -0
  611. package/dist/src/lib/utils/quality.js +295 -0
  612. package/dist/src/lib/utils/quality.js.map +1 -0
  613. package/dist/src/lib/utils/serve-port.d.ts +28 -0
  614. package/dist/src/lib/utils/serve-port.js +73 -0
  615. package/dist/src/lib/utils/serve-port.js.map +1 -0
  616. package/dist/src/lib/utils/shared-libs.d.ts +37 -0
  617. package/dist/src/lib/utils/shared-libs.js +152 -0
  618. package/dist/src/lib/utils/shared-libs.js.map +1 -0
  619. package/dist/src/lib/utils/ts-paths.d.ts +3 -0
  620. package/dist/src/lib/utils/ts-paths.js +31 -0
  621. package/dist/src/lib/utils/ts-paths.js.map +1 -0
  622. package/dist/src/lib/utils/workspace.d.ts +3 -0
  623. package/dist/src/lib/utils/workspace.js +15 -0
  624. package/dist/src/lib/utils/workspace.js.map +1 -0
  625. package/dist/src/migrate-sdk.d.ts +31 -0
  626. package/dist/src/migrate-sdk.js +35 -0
  627. package/dist/src/migrate-sdk.js.map +1 -0
  628. package/dist/src/migrations/add-csp-nonce-import/add-csp-nonce-import.d.ts +2 -0
  629. package/dist/src/migrations/add-csp-nonce-import/add-csp-nonce-import.js +40 -0
  630. package/dist/src/migrations/add-csp-nonce-import/add-csp-nonce-import.js.map +1 -0
  631. package/dist/src/migrations/add-executor-peers/add-executor-peers.d.ts +6 -0
  632. package/dist/src/migrations/add-executor-peers/add-executor-peers.js +21 -0
  633. package/dist/src/migrations/add-executor-peers/add-executor-peers.js.map +1 -0
  634. package/dist/src/migrations/add-lib-build-dependencies/add-lib-build-dependencies.d.ts +7 -0
  635. package/dist/src/migrations/add-lib-build-dependencies/add-lib-build-dependencies.js +47 -0
  636. package/dist/src/migrations/add-lib-build-dependencies/add-lib-build-dependencies.js.map +1 -0
  637. package/dist/src/migrations/add-lint-dependencies/add-lint-dependencies.d.ts +6 -0
  638. package/dist/src/migrations/add-lint-dependencies/add-lint-dependencies.js +27 -0
  639. package/dist/src/migrations/add-lint-dependencies/add-lint-dependencies.js.map +1 -0
  640. package/dist/src/migrations/add-lint-staged-config/add-lint-staged-config.d.ts +7 -0
  641. package/dist/src/migrations/add-lint-staged-config/add-lint-staged-config.js +22 -0
  642. package/dist/src/migrations/add-lint-staged-config/add-lint-staged-config.js.map +1 -0
  643. package/dist/src/migrations/angular-release-target/angular-release-target.d.ts +3 -0
  644. package/dist/src/migrations/angular-release-target/angular-release-target.js +80 -0
  645. package/dist/src/migrations/angular-release-target/angular-release-target.js.map +1 -0
  646. package/dist/src/migrations/app-clean-and-port/app-clean-and-port.d.ts +7 -0
  647. package/dist/src/migrations/app-clean-and-port/app-clean-and-port.js +89 -0
  648. package/dist/src/migrations/app-clean-and-port/app-clean-and-port.js.map +1 -0
  649. package/dist/src/migrations/env-encryption-config/env-encryption-config.d.ts +7 -0
  650. package/dist/src/migrations/env-encryption-config/env-encryption-config.js +42 -0
  651. package/dist/src/migrations/env-encryption-config/env-encryption-config.js.map +1 -0
  652. package/dist/src/migrations/env-encryption-key-sources/env-encryption-key-sources.d.ts +3 -0
  653. package/dist/src/migrations/env-encryption-key-sources/env-encryption-key-sources.js +15 -0
  654. package/dist/src/migrations/env-encryption-key-sources/env-encryption-key-sources.js.map +1 -0
  655. package/dist/src/migrations/fix-lint-script/fix-lint-script.d.ts +7 -0
  656. package/dist/src/migrations/fix-lint-script/fix-lint-script.js +27 -0
  657. package/dist/src/migrations/fix-lint-script/fix-lint-script.js.map +1 -0
  658. package/dist/src/migrations/flutter-web-platform/flutter-web-platform.d.ts +8 -0
  659. package/dist/src/migrations/flutter-web-platform/flutter-web-platform.js +35 -0
  660. package/dist/src/migrations/flutter-web-platform/flutter-web-platform.js.map +1 -0
  661. package/dist/src/migrations/plugin-repo-dev/plugin-repo-dev.d.ts +9 -0
  662. package/dist/src/migrations/plugin-repo-dev/plugin-repo-dev.js +42 -0
  663. package/dist/src/migrations/plugin-repo-dev/plugin-repo-dev.js.map +1 -0
  664. package/dist/src/migrations/prepush-audit-warn-only/prepush-audit-warn-only.d.ts +8 -0
  665. package/dist/src/migrations/prepush-audit-warn-only/prepush-audit-warn-only.js +30 -0
  666. package/dist/src/migrations/prepush-audit-warn-only/prepush-audit-warn-only.js.map +1 -0
  667. package/dist/src/migrations/quality-checks/quality-checks.d.ts +7 -0
  668. package/dist/src/migrations/quality-checks/quality-checks.js +46 -0
  669. package/dist/src/migrations/quality-checks/quality-checks.js.map +1 -0
  670. package/dist/src/migrations/release-hardening/release-hardening.d.ts +8 -0
  671. package/dist/src/migrations/release-hardening/release-hardening.js +98 -0
  672. package/dist/src/migrations/release-hardening/release-hardening.js.map +1 -0
  673. package/dist/src/migrations/sharp-security-update/sharp-security-update.d.ts +10 -0
  674. package/dist/src/migrations/sharp-security-update/sharp-security-update.js +40 -0
  675. package/dist/src/migrations/sharp-security-update/sharp-security-update.js.map +1 -0
  676. package/migrate/package.json +5 -0
  677. package/package.json +120 -4
  678. package/runtime/csp-nonce.js +109 -0
  679. package/runtime/env-secret.d.ts +63 -0
  680. package/runtime/env-secret.mjs +698 -0
@@ -0,0 +1,9 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export interface RunTreeOptions {
3
+ dryRun: boolean;
4
+ verbose: boolean;
5
+ /** Don't print "Nothing to generate." when nothing changed (the caller reports it). */
6
+ quietWhenUnchanged?: boolean;
7
+ }
8
+ /** Run `fn` against an FsTree rooted at `root`, print changes, then flush unless dry-run. Returns change count. */
9
+ export declare function runInTree(root: string, opts: RunTreeOptions, fn: (tree: Tree) => unknown): Promise<number>;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runInTree = void 0;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const tree_1 = require("nx/src/generators/tree");
6
+ /** Run `fn` against an FsTree rooted at `root`, print changes, then flush unless dry-run. Returns change count. */
7
+ async function runInTree(root, opts, fn) {
8
+ const tree = new tree_1.FsTree(root, opts.verbose);
9
+ const callback = await fn(tree);
10
+ const changes = tree.listChanges();
11
+ if (changes.length === 0) {
12
+ if (!opts.quietWhenUnchanged)
13
+ devkit_1.logger.info('Nothing to generate.');
14
+ if (!opts.dryRun && typeof callback === 'function')
15
+ await callback();
16
+ return 0;
17
+ }
18
+ (0, tree_1.printChanges)(changes);
19
+ if (opts.dryRun) {
20
+ devkit_1.logger.info('\nDry run complete — no files written.');
21
+ }
22
+ else {
23
+ (0, tree_1.flushChanges)(root, changes);
24
+ devkit_1.logger.info(`\nDone. ${changes.length} file(s) written.`);
25
+ // Nx GeneratorCallback (e.g. install packages): runs only after files are on disk.
26
+ if (typeof callback === 'function')
27
+ await callback();
28
+ }
29
+ return changes.length;
30
+ }
31
+ exports.runInTree = runInTree;
32
+ //# sourceMappingURL=run-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-tree.js","sourceRoot":"","sources":["../../../src/cli/run-tree.ts"],"names":[],"mappings":";;;AAAA,uCAA0C;AAC1C,iDAA4E;AAS5E,mHAAmH;AAC5G,KAAK,UAAU,SAAS,CAC7B,IAAY,EACZ,IAAoB,EACpB,EAA2B;IAE3B,MAAM,IAAI,GAAG,IAAI,aAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,kBAAkB;YAAE,eAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,QAAQ,KAAK,UAAU;YAAE,MAAM,QAAQ,EAAE,CAAC;QACrE,OAAO,CAAC,CAAC;KACV;IAED,IAAA,mBAAY,EAAC,OAAO,CAAC,CAAC;IAEtB,IAAI,IAAI,CAAC,MAAM,EAAE;QACf,eAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;KACvD;SAAM;QACL,IAAA,mBAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5B,eAAM,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,MAAM,mBAAmB,CAAC,CAAC;QAC1D,mFAAmF;QACnF,IAAI,OAAO,QAAQ,KAAK,UAAU;YAAE,MAAM,QAAQ,EAAE,CAAC;KACtD;IACD,OAAO,OAAO,CAAC,MAAM,CAAC;AACxB,CAAC;AA1BD,8BA0BC"}
@@ -0,0 +1,18 @@
1
+ import type { Flags } from './args';
2
+ export interface CommandContext {
3
+ /** Directory pstack was invoked from. */
4
+ cwd: string;
5
+ /** Non-flag arguments after the command name. */
6
+ positionals: string[];
7
+ flags: Flags;
8
+ dryRun: boolean;
9
+ verbose: boolean;
10
+ /** Version of the running pstack package. */
11
+ selfVersion: string;
12
+ /** Root directory (contains package.json) of the running pstack package. */
13
+ selfRoot: string;
14
+ }
15
+ /** An expected, user-facing failure. Printed as "Error: <message>" without a stack trace. */
16
+ export declare class CliError extends Error {
17
+ constructor(message: string);
18
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CliError = void 0;
4
+ /** An expected, user-facing failure. Printed as "Error: <message>" without a stack trace. */
5
+ class CliError extends Error {
6
+ constructor(message) {
7
+ super(message);
8
+ this.name = 'CliError';
9
+ }
10
+ }
11
+ exports.CliError = CliError;
12
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/cli/types.ts"],"names":[],"mappings":";;;AAgBA,6FAA6F;AAC7F,MAAa,QAAS,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AALD,4BAKC"}
@@ -0,0 +1,15 @@
1
+ export type DepField = 'devDependencies' | 'dependencies';
2
+ export interface PluginPin {
3
+ field: DepField;
4
+ version: string;
5
+ /** The spec as written in package.json. */
6
+ spec: string;
7
+ /** An npm range (^x.y.z, ~x.y.z): the installed version may be newer than `version`. */
8
+ range: boolean;
9
+ }
10
+ export interface UpdateTarget {
11
+ action: 'noop' | 'upgrade' | 'downgrade';
12
+ to: string;
13
+ }
14
+ export declare function findPluginPin(pkg: any, example?: string): PluginPin;
15
+ export declare function resolveTarget(from: string, toFlag: string | undefined, selfVersion: string, force: boolean): UpdateTarget;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveTarget = exports.findPluginPin = void 0;
4
+ const types_1 = require("./types");
5
+ const versions_1 = require("./versions");
6
+ /** `npm i -D …` command that pins the plugin at `version` the way pstack update does. */
7
+ function pinCommand(version) {
8
+ return ['npm i -D', `${versions_1.PLUGIN_NAME}@${(0, versions_1.formatPluginSpec)(version)}`, ...(0, versions_1.pinInstallFlags)()].join(' ');
9
+ }
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ function findPluginPin(pkg, example = '0.3.0') {
12
+ for (const field of ['devDependencies', 'dependencies']) {
13
+ const spec = pkg?.[field]?.[versions_1.PLUGIN_NAME];
14
+ if (spec === undefined)
15
+ continue;
16
+ const version = (0, versions_1.parsePluginSpec)(spec);
17
+ if (!version) {
18
+ throw new types_1.CliError(`${versions_1.PLUGIN_NAME} is "${spec}" in ${field}. pstack update needs a pinned version — ` +
19
+ `pin one first: ${pinCommand(example)}`);
20
+ }
21
+ return { field, version, spec, range: /^\s*[\^~]/.test(spec) };
22
+ }
23
+ throw new types_1.CliError(`${versions_1.PLUGIN_NAME} is not listed in package.json. Add it first: ${pinCommand(example)}`);
24
+ }
25
+ exports.findPluginPin = findPluginPin;
26
+ function resolveTarget(from, toFlag, selfVersion, force) {
27
+ const to = (0, versions_1.normalizeVersion)(toFlag ?? selfVersion);
28
+ const cmp = (0, versions_1.compareVersions)(to, from);
29
+ if (cmp === 0)
30
+ return { action: 'noop', to };
31
+ if (cmp < 0 && !force) {
32
+ throw new types_1.CliError(toFlag === undefined
33
+ ? `the global CLI v${to} is older than the workspace's v${from}. Update it with ` +
34
+ `"${(0, versions_1.globalInstallCommand)(from)}" (or newer), or pass --force to downgrade the workspace.`
35
+ : `v${to} is older than the installed v${from}. Pass --force to downgrade.`);
36
+ }
37
+ return { action: cmp < 0 ? 'downgrade' : 'upgrade', to };
38
+ }
39
+ exports.resolveTarget = resolveTarget;
40
+ //# sourceMappingURL=update-plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-plan.js","sourceRoot":"","sources":["../../../src/cli/update-plan.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,yCAQoB;AAEpB,yFAAyF;AACzF,SAAS,UAAU,CAAC,OAAe;IACjC,OAAO,CAAC,UAAU,EAAE,GAAG,sBAAW,IAAI,IAAA,2BAAgB,EAAC,OAAO,CAAC,EAAE,EAAE,GAAG,IAAA,0BAAe,GAAE,CAAC,CAAC,IAAI,CAC3F,GAAG,CACJ,CAAC;AACJ,CAAC;AAkBD,8DAA8D;AAC9D,SAAgB,aAAa,CAAC,GAAQ,EAAE,OAAO,GAAG,OAAO;IACvD,KAAK,MAAM,KAAK,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAe,EAAE;QACrE,MAAM,IAAI,GAAuB,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,sBAAW,CAAC,CAAC;QAC7D,IAAI,IAAI,KAAK,SAAS;YAAE,SAAS;QACjC,MAAM,OAAO,GAAG,IAAA,0BAAe,EAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,gBAAQ,CAChB,GAAG,sBAAW,QAAQ,IAAI,QAAQ,KAAK,2CAA2C;gBAChF,kBAAkB,UAAU,CAAC,OAAO,CAAC,EAAE,CAC1C,CAAC;SACH;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;KAChE;IACD,MAAM,IAAI,gBAAQ,CAChB,GAAG,sBAAW,iDAAiD,UAAU,CAAC,OAAO,CAAC,EAAE,CACrF,CAAC;AACJ,CAAC;AAhBD,sCAgBC;AAED,SAAgB,aAAa,CAC3B,IAAY,EACZ,MAA0B,EAC1B,WAAmB,EACnB,KAAc;IAEd,MAAM,EAAE,GAAG,IAAA,2BAAgB,EAAC,MAAM,IAAI,WAAW,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,IAAA,0BAAe,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACtC,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC7C,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;QACrB,MAAM,IAAI,gBAAQ,CAChB,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,mBAAmB,EAAE,mCAAmC,IAAI,mBAAmB;gBAC/E,IAAI,IAAA,+BAAoB,EAAC,IAAI,CAAC,2DAA2D;YAC3F,CAAC,CAAC,IAAI,EAAE,iCAAiC,IAAI,8BAA8B,CAC9E,CAAC;KACH;IACD,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC;AAC3D,CAAC;AAlBD,sCAkBC"}
@@ -0,0 +1,26 @@
1
+ export declare const PLUGIN_NAME = "@mouryaamit/nx-polystack";
2
+ /** owner/repo of the private development repo on GitHub. */
3
+ export declare const PLUGIN_GITHUB_REPO = "example-org/private-plugin";
4
+ /** Earlier names of the repo; workspaces pinned to them are still recognised (v0.38.2). */
5
+ export declare const LEGACY_GITHUB_REPOS: string[];
6
+ export declare function normalizeVersion(v: string): string;
7
+ export declare function compareVersions(a: string, b: string): number;
8
+ /** The pin `pstack new` / `pstack update` write: a git tag of the repo, or an exact npm version. */
9
+ export declare function formatPluginSpec(version: string): string;
10
+ /** Extra `npm install` flags for a pin, so npm saves it as formatPluginSpec wrote it. */
11
+ export declare function pinInstallFlags(): string[];
12
+ /**
13
+ * The pinned version, or null when the spec is neither a tag of the plugin repo (github:,
14
+ * git+https, git+ssh or owner/repo form; earlier repo names too) nor an npm version (x.y.z,
15
+ * ^x.y.z, ~x.y.z or =x.y.z).
16
+ */
17
+ export declare function parsePluginSpec(spec: string): string | null;
18
+ /**
19
+ * Shell command that installs the global CLI.
20
+ * - npm source: `npm i -g <package>@<version>`.
21
+ * - GitHub source: the prebuilt release asset. Not `npm i -g github:…#vX`: npm prepares git deps
22
+ * of a global install in global mode, so devDependencies (typescript) are missing and the
23
+ * build fails. Not the release download URL: the repo is private, and npm can't authenticate
24
+ * to GitHub; `gh` downloads with the user's GitHub login.
25
+ */
26
+ export declare function globalInstallCommand(version: string): string;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.globalInstallCommand = exports.parsePluginSpec = exports.pinInstallFlags = exports.formatPluginSpec = exports.compareVersions = exports.normalizeVersion = exports.LEGACY_GITHUB_REPOS = exports.PLUGIN_GITHUB_REPO = exports.PLUGIN_NAME = void 0;
4
+ const install_source_1 = require("./install-source");
5
+ const types_1 = require("./types");
6
+ exports.PLUGIN_NAME = '@mouryaamit/nx-polystack';
7
+ /** owner/repo of the private development repo on GitHub. */
8
+ exports.PLUGIN_GITHUB_REPO = install_source_1.DEV_GITHUB_REPO;
9
+ /** Earlier names of the repo; workspaces pinned to them are still recognised (v0.38.2). */
10
+ exports.LEGACY_GITHUB_REPOS = ['mouryaamit/nx-polystack'];
11
+ const SEMVER = /^v?(\d+)\.(\d+)\.(\d+)$/;
12
+ const escapeRegExp = (s) => s.replace(/[.*+?^${}()|[\]\\/]/g, '\\$&');
13
+ /** npm forms of a version pin: exact, ^, ~ or = (the lower bound is the pinned version). */
14
+ const NPM_SPEC = /^[\^~=]?v?(\d+\.\d+\.\d+)$/;
15
+ /** Git-tag specs npm may save for the plugin's repos (".git" optional). */
16
+ function gitSpec() {
17
+ const source = (0, install_source_1.installSource)();
18
+ const repos = new Set([exports.PLUGIN_GITHUB_REPO, ...exports.LEGACY_GITHUB_REPOS]);
19
+ if (source.kind === 'github')
20
+ repos.add(source.repo);
21
+ const path = `(?:${[...repos].map(escapeRegExp).join('|')})`;
22
+ return new RegExp(`^(?:github:|git\\+https://github\\.com/|git\\+ssh://git@github\\.com/)?${path}(?:\\.git)?#v(\\d+\\.\\d+\\.\\d+)$`);
23
+ }
24
+ function normalizeVersion(v) {
25
+ const m = SEMVER.exec(v.trim());
26
+ if (!m) {
27
+ throw new types_1.CliError(`"${v}" is not a valid version (expected x.y.z).`);
28
+ }
29
+ return `${m[1]}.${m[2]}.${m[3]}`;
30
+ }
31
+ exports.normalizeVersion = normalizeVersion;
32
+ function compareVersions(a, b) {
33
+ const pa = normalizeVersion(a).split('.').map(Number);
34
+ const pb = normalizeVersion(b).split('.').map(Number);
35
+ for (let i = 0; i < 3; i++) {
36
+ if (pa[i] !== pb[i])
37
+ return pa[i] > pb[i] ? 1 : -1;
38
+ }
39
+ return 0;
40
+ }
41
+ exports.compareVersions = compareVersions;
42
+ /** The pin `pstack new` / `pstack update` write: a git tag of the repo, or an exact npm version. */
43
+ function formatPluginSpec(version) {
44
+ const v = normalizeVersion(version);
45
+ const source = (0, install_source_1.installSource)();
46
+ return source.kind === 'npm' ? v : `github:${source.repo}#v${v}`;
47
+ }
48
+ exports.formatPluginSpec = formatPluginSpec;
49
+ /** Extra `npm install` flags for a pin, so npm saves it as formatPluginSpec wrote it. */
50
+ function pinInstallFlags() {
51
+ return (0, install_source_1.installSource)().kind === 'npm' ? ['--save-exact'] : [];
52
+ }
53
+ exports.pinInstallFlags = pinInstallFlags;
54
+ /**
55
+ * The pinned version, or null when the spec is neither a tag of the plugin repo (github:,
56
+ * git+https, git+ssh or owner/repo form; earlier repo names too) nor an npm version (x.y.z,
57
+ * ^x.y.z, ~x.y.z or =x.y.z).
58
+ */
59
+ function parsePluginSpec(spec) {
60
+ const s = spec.trim();
61
+ const m = gitSpec().exec(s) ?? NPM_SPEC.exec(s);
62
+ return m ? m[1] : null;
63
+ }
64
+ exports.parsePluginSpec = parsePluginSpec;
65
+ /**
66
+ * Shell command that installs the global CLI.
67
+ * - npm source: `npm i -g <package>@<version>`.
68
+ * - GitHub source: the prebuilt release asset. Not `npm i -g github:…#vX`: npm prepares git deps
69
+ * of a global install in global mode, so devDependencies (typescript) are missing and the
70
+ * build fails. Not the release download URL: the repo is private, and npm can't authenticate
71
+ * to GitHub; `gh` downloads with the user's GitHub login.
72
+ */
73
+ function globalInstallCommand(version) {
74
+ const v = normalizeVersion(version);
75
+ const source = (0, install_source_1.installSource)();
76
+ if (source.kind === 'npm')
77
+ return `npm i -g ${exports.PLUGIN_NAME}@${v}`;
78
+ const asset = `mouryaamit-nx-polystack-v${v}.tgz`;
79
+ return (`gh release download v${v} -R ${source.repo} -p ${asset} -D /tmp --clobber` +
80
+ ` && npm i -g /tmp/${asset}`);
81
+ }
82
+ exports.globalInstallCommand = globalInstallCommand;
83
+ //# sourceMappingURL=versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../../src/cli/versions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ import { ExecSyncOptions } from 'child_process';
3
+ import { ExecutorContext } from '@nx/devkit';
4
+ import { Obfuscator } from '../../lib/hardening/obfuscate';
5
+ import { BuildExecutorSchema } from './schema.d';
6
+ export type Runner = (cmd: string, opts: ExecSyncOptions) => void;
7
+ /** Test seams. */
8
+ export interface BuildSeams {
9
+ /** Used instead of the workspace's javascript-obfuscator. */
10
+ obfuscator?: Obfuscator;
11
+ }
12
+ export default function buildExecutor(options: BuildExecutorSchema, context: ExecutorContext, runner?: Runner, seams?: BuildSeams): Promise<{
13
+ success: boolean;
14
+ }>;
15
+ /**
16
+ * environments/<envProject>/environment.<env>.ts. DEV uses environment.ts, or environment.dev.ts
17
+ * in the per-env layout (no environment.ts in the folder).
18
+ */
19
+ export declare function envFileFor(repoRoot: string, envProject: string, env: string): string;
@@ -0,0 +1,251 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.envFileFor = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const child_process_1 = require("child_process");
6
+ const fs = tslib_1.__importStar(require("fs"));
7
+ const path = tslib_1.__importStar(require("path"));
8
+ const prepare_1 = require("../../lib/env-encryption/prepare");
9
+ const files_1 = require("../../lib/hardening/files");
10
+ const integrity_1 = require("../../lib/hardening/integrity");
11
+ const leak_check_1 = require("../../lib/hardening/leak-check");
12
+ const ngsw_1 = require("../../lib/hardening/ngsw");
13
+ const obfuscate_1 = require("../../lib/hardening/obfuscate");
14
+ const options_1 = require("../../lib/hardening/options");
15
+ const source_maps_1 = require("../../lib/hardening/source-maps");
16
+ const strip_1 = require("../../lib/hardening/strip");
17
+ const inject_meta_1 = require("../../lib/helpers/inject-meta");
18
+ const inject_nonce_1 = require("../../lib/helpers/inject-nonce");
19
+ const inject_sri_1 = require("../../lib/helpers/inject-sri");
20
+ const strip_exif_1 = require("../../lib/helpers/strip-exif");
21
+ const ci_resolve_1 = require("../../lib/utils/ci-resolve");
22
+ const defaultRunner = (cmd, opts) => {
23
+ console.log(`▶ ${cmd}`);
24
+ (0, child_process_1.execSync)(cmd, opts);
25
+ };
26
+ async function buildExecutor(options, context, runner = defaultRunner, seams = {}) {
27
+ const { type, outputPath, envProject, env, buildTarget, buildConfiguration, secure = false, sri = false, baseHref, keySplit, domains, includeWww, onMismatch, } = options;
28
+ if (!env) {
29
+ throw new Error('build executor: "env" is required — set it via Nx configurations (e.g. dev / uat / prod)');
30
+ }
31
+ const projectName = context.projectName;
32
+ const repoRoot = context.root;
33
+ const target = buildTarget ?? `${projectName}:build`;
34
+ if (!/^[^:\s]+:[^:\s]+$/.test(target)) {
35
+ throw new Error(`build executor: buildTarget "${target}" must be exactly "<project>:<target>".`);
36
+ }
37
+ if (context.targetName && target === `${projectName}:${context.targetName}`) {
38
+ throw new Error(`build executor: buildTarget "${target}" points at this target. ` +
39
+ 'Run "pstack update" (migration angular-release-target) or set buildTarget to the Angular build target.');
40
+ }
41
+ // Invalid hardening options fail before the env files are touched or anything is built.
42
+ const hardening = (0, options_1.resolveHardening)(options, env);
43
+ hardening.warnings.forEach((w) => console.warn(`⚠ ${w}`));
44
+ const ciCtx = (0, ci_resolve_1.resolveCiContext)();
45
+ // SRI for every chunk: Angular hashes them (the webpack runtime holds the lazy ones), the hashes
46
+ // are swapped after strip/obfuscate, and aes-gcm builds require integrity at runtime.
47
+ const chunkSri = sri && env !== 'DEV';
48
+ const envFilePath = envFileFor(repoRoot, envProject, env);
49
+ // One instant for the env stamp, the aes-gcm key (HKDF) and the meta timestamp_utc.
50
+ const now = new Date();
51
+ const prepared = (0, prepare_1.prepareEnvFile)({
52
+ repoRoot,
53
+ envProject,
54
+ env,
55
+ envFile: envFilePath,
56
+ commit: ciCtx.commit,
57
+ branch: ciCtx.branch,
58
+ now,
59
+ keySplit,
60
+ domains,
61
+ includeWww,
62
+ onMismatch,
63
+ requireIntegrity: chunkSri,
64
+ });
65
+ if (chunkSri && !prepared.keyParts) {
66
+ console.log('ℹ sri: the runtime integrity check (decrypt nothing without SRI) needs cipher aes-gcm');
67
+ }
68
+ try {
69
+ const angularConfig = buildConfiguration ?? (env === 'PROD' ? 'production' : env === 'UAT' ? 'uat' : 'development');
70
+ const outputArg = `--outputPath=${outputPath}`;
71
+ const baseHrefArg = baseHref ? `--baseHref=${baseHref}` : '';
72
+ // The env file changes per build (encryption, stamp), so the Angular build is never cached.
73
+ const cacheArg = env === 'DEV' ? '' : '--skip-nx-cache';
74
+ const sriArg = chunkSri ? '--subresourceIntegrity' : '';
75
+ const cmd = `npx nx run ${target}:${angularConfig} ${outputArg} ${baseHrefArg} ${sriArg} ${cacheArg}`
76
+ .replace(/\s+/g, ' ')
77
+ .trim();
78
+ runner(cmd, { stdio: 'inherit', cwd: repoRoot });
79
+ }
80
+ catch (err) {
81
+ try {
82
+ prepared.restore();
83
+ }
84
+ catch (restoreErr) {
85
+ // Keep the build error; the next release build of this env file repairs it.
86
+ console.error(`✖ env file not restored: ${restoreErr.message}`);
87
+ }
88
+ throw err;
89
+ }
90
+ prepared.restore();
91
+ const distDir = path.resolve(repoRoot, outputPath);
92
+ // Release checks see what the Angular build produced; stripping comes before the files are
93
+ // hashed (SRI) and stamped.
94
+ const checkRoot = (0, files_1.servedRoot)(distDir);
95
+ reportChecks([
96
+ (0, leak_check_1.checkLeaks)(checkRoot, prepared.secrets, hardening.leakCheck),
97
+ (0, source_maps_1.checkSourceMaps)(checkRoot, hardening.sourceMaps),
98
+ ]);
99
+ // Integrity Angular already wrote (sri, or subresourceIntegrity set in angular.json) must follow
100
+ // every rewrite below, else the browser refuses the rewritten files.
101
+ const builtWithIntegrity = env !== 'DEV' && (chunkSri || hasIntegrity(checkRoot) || (0, integrity_1.hasWebpackSriRuntime)(checkRoot));
102
+ const originalHashes = builtWithIntegrity ? (0, integrity_1.recordHashes)(checkRoot) : undefined;
103
+ const stripped = await (0, strip_1.stripOutput)(checkRoot, { ...hardening, repoRoot });
104
+ stripped.notes.forEach((n) => console.log(`ℹ ${n}`));
105
+ const obfuscated = await (0, obfuscate_1.obfuscateOutput)(checkRoot, {
106
+ repoRoot,
107
+ mode: hardening.obfuscate,
108
+ overrides: hardening.obfuscateOptions,
109
+ obfuscator: seams.obfuscator,
110
+ });
111
+ if (obfuscated.files > 0) {
112
+ console.log(`🔒 obfuscated ${obfuscated.files} file(s): ${kb(obfuscated.bytesBefore)} → ${kb(obfuscated.bytesAfter)}`);
113
+ }
114
+ if (originalHashes) {
115
+ (0, integrity_1.swapHashes)(checkRoot, originalHashes);
116
+ warnUncoveredLazyChunks(checkRoot);
117
+ }
118
+ // aes-gcm: the meta key share (and the asset share) must reach the served index.html, else the
119
+ // app cannot decrypt. cryptojs builds keep the meta in <outputPath>/index.html when present.
120
+ const servedDir = prepared.keyParts ? gcmServedRoot(distDir, outputPath) : distDir;
121
+ const metaHtml = path.join(servedDir, 'index.html');
122
+ const asset = prepared.keyParts?.asset;
123
+ if (asset) {
124
+ fs.mkdirSync(path.join(servedDir, 'assets'), { recursive: true });
125
+ fs.writeFileSync(path.join(servedDir, 'assets', asset.name), asset.bytes);
126
+ }
127
+ if (env === 'PROD' && fs.existsSync(distDir)) {
128
+ await (0, strip_exif_1.stripExif)({ rootDir: distDir });
129
+ }
130
+ if (fs.existsSync(metaHtml)) {
131
+ (0, inject_meta_1.injectBuildMeta)({
132
+ indexHtmlPath: metaHtml,
133
+ env,
134
+ branch: ciCtx.branch,
135
+ commit: ciCtx.commit,
136
+ buildNumber: ciCtx.buildNumber,
137
+ metaName: prepared.config.metaName,
138
+ now,
139
+ extra: prepared.keyParts ? { k: prepared.keyParts.share } : undefined,
140
+ });
141
+ }
142
+ // The served index.html: <outputPath>, or <outputPath>/browser for the application builder.
143
+ if (fs.existsSync(path.join(checkRoot, 'index.html'))) {
144
+ if (secure) {
145
+ (0, inject_nonce_1.injectCspNonce)({ distDir });
146
+ }
147
+ if (sri || builtWithIntegrity) {
148
+ (0, inject_sri_1.injectSri)({ distDir, cdnAllowlist: readSriAllowlist(repoRoot), refresh: true });
149
+ }
150
+ if (chunkSri && prepared.keyParts) {
151
+ noteExternalScripts(path.join(checkRoot, 'index.html'));
152
+ }
153
+ }
154
+ // Last: every rewrite above (strip, obfuscate, hashes, meta, nonce, SRI) changes files the
155
+ // service worker hashed.
156
+ const ngswUpdated = (0, ngsw_1.refreshNgswHashes)(checkRoot);
157
+ if (ngswUpdated > 0)
158
+ console.log(`ℹ ngsw.json: ${ngswUpdated} hash(es) updated`);
159
+ console.log(`✅ Build complete — type:${type}, env:${env}, output:${outputPath}`);
160
+ return { success: true };
161
+ }
162
+ exports.default = buildExecutor;
163
+ /**
164
+ * The runtime integrity check covers same-origin scripts only; third-party ones without integrity
165
+ * (tag managers, chat widgets) rely on the CSP allowlist. Lists their hosts.
166
+ */
167
+ function noteExternalScripts(indexHtml) {
168
+ const html = fs.readFileSync(indexHtml, 'utf8');
169
+ const hosts = new Set();
170
+ for (const tag of html.match(/<script\b[^>]*>/gi) ?? []) {
171
+ if (/\bintegrity\s*=/i.test(tag))
172
+ continue;
173
+ const src = /\bsrc\s*=\s*["']((?:https?:)?\/\/[^"']+)["']/i.exec(tag)?.[1];
174
+ if (!src)
175
+ continue;
176
+ try {
177
+ hosts.add(new URL(src, 'https://x.invalid').host);
178
+ }
179
+ catch {
180
+ // unreadable URL: not listed
181
+ }
182
+ }
183
+ if (hosts.size > 0) {
184
+ console.log(`ℹ sri: third-party scripts without integrity (${[...hosts].join(', ')}) are not checked ` +
185
+ 'by the runtime; keep them in your CSP allowlist');
186
+ }
187
+ }
188
+ /** Whether the served index.html already carries integrity attributes. */
189
+ function hasIntegrity(root) {
190
+ const index = path.join(root, 'index.html');
191
+ return fs.existsSync(index) && /\bintegrity\s*=/i.test(fs.readFileSync(index, 'utf8'));
192
+ }
193
+ const kb = (bytes) => `${Math.round(bytes / 1024)} kB`;
194
+ /**
195
+ * esbuild (application builder): lazy chunks are loaded by import(), which carries no hash; only
196
+ * the webpack runtime checks lazy chunks.
197
+ */
198
+ function warnUncoveredLazyChunks(root) {
199
+ if ((0, integrity_1.hasWebpackSriRuntime)(root))
200
+ return;
201
+ const lazy = (0, files_1.listFiles)(root, ['js', 'mjs'], { skipDirs: ['assets'] }).some((f) => /^chunk-[A-Z0-9]+\.m?js$/.test(path.basename(f)));
202
+ if (lazy) {
203
+ console.warn('⚠ sri: lazy chunks are not covered (the application builder loads them with import(), ' +
204
+ 'which carries no hash); scripts in index.html are');
205
+ }
206
+ }
207
+ /** Prints every warning, then fails with every error of the release checks. */
208
+ function reportChecks(results) {
209
+ const warnings = results.flatMap((r) => r.warnings);
210
+ const errors = results.flatMap((r) => r.errors);
211
+ warnings.forEach((w) => console.warn(`⚠ ${w}`));
212
+ if (errors.length > 0) {
213
+ throw new Error(`release checks failed:\n${errors.map((e) => ` ✖ ${e}`).join('\n')}`);
214
+ }
215
+ }
216
+ /** servedRoot for aes-gcm builds, which cannot run without an index.html for the meta key share. */
217
+ function gcmServedRoot(distDir, outputPath) {
218
+ const dir = (0, files_1.servedRoot)(distDir);
219
+ if (!fs.existsSync(path.join(dir, 'index.html'))) {
220
+ throw new Error(`aes-gcm build: index.html not found under ${outputPath}; the key share could not be written`);
221
+ }
222
+ return dir;
223
+ }
224
+ /**
225
+ * environments/<envProject>/environment.<env>.ts. DEV uses environment.ts, or environment.dev.ts
226
+ * in the per-env layout (no environment.ts in the folder).
227
+ */
228
+ function envFileFor(repoRoot, envProject, env) {
229
+ const dir = path.join(repoRoot, 'environments', envProject);
230
+ if (env !== 'DEV')
231
+ return path.join(dir, `environment.${env.toLowerCase()}.ts`);
232
+ const base = path.join(dir, 'environment.ts');
233
+ const perEnv = path.join(dir, 'environment.dev.ts');
234
+ return !fs.existsSync(base) && fs.existsSync(perEnv) ? perEnv : base;
235
+ }
236
+ exports.envFileFor = envFileFor;
237
+ function readSriAllowlist(repoRoot) {
238
+ const allowlistFile = path.join(repoRoot, 'tools', 'config', 'sri-cdn-allowlist.json');
239
+ if (!fs.existsSync(allowlistFile))
240
+ return [];
241
+ try {
242
+ const raw = JSON.parse(fs.readFileSync(allowlistFile, 'utf8'));
243
+ if (Array.isArray(raw.allow))
244
+ return raw.allow;
245
+ }
246
+ catch {
247
+ // ignore malformed config
248
+ }
249
+ return [];
250
+ }
251
+ //# sourceMappingURL=executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/build/executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ export interface BuildExecutorSchema {
2
+ type: 'angular' | 'ionic';
3
+ outputPath: string;
4
+ envProject: string;
5
+ /** Pipeline env, set via Nx configurations: DEV, UAT, PROD or a custom one such as QA. */
6
+ env?: string;
7
+ /** Angular build target to run, "<project>:<target>". Default: "<this project>:build". */
8
+ buildTarget?: string;
9
+ /** Configuration of buildTarget. Default: PROD → production, UAT → uat, otherwise development. */
10
+ buildConfiguration?: string;
11
+ secure?: boolean;
12
+ /**
13
+ * Integrity for every chunk: passed to the Angular build as --subresource-integrity, hashes
14
+ * refreshed after strip/obfuscate. With cipher aes-gcm the runtime refuses to decrypt when a
15
+ * script has no integrity attribute.
16
+ */
17
+ sri?: boolean;
18
+ /** Replaced by stripComments and dropConsole (read as those when they are unset). */
19
+ harden?: boolean;
20
+ /** non-DEV: plaintext of encrypted env values in the output. */
21
+ leakCheck?: 'fail' | 'warn' | 'off';
22
+ /** non-DEV: .map files or sourceMappingURL comments in the output. */
23
+ sourceMaps?: 'fail' | 'warn' | 'off';
24
+ /** non-DEV: remove comments from the built JS, CSS and served index.html. */
25
+ stripComments?: boolean;
26
+ /** non-DEV: console methods whose calls are removed from the built JS. */
27
+ dropConsole?: ('log' | 'debug' | 'warn' | 'info' | 'error' | 'trace')[];
28
+ /**
29
+ * non-DEV: obfuscate the app's own JS (main and lazy chunks; runtime, polyfills, vendor, scripts
30
+ * and styles are skipped). Needs javascript-obfuscator in the workspace. Default: off.
31
+ */
32
+ obfuscate?: 'off' | 'light' | 'medium' | 'strong';
33
+ /** non-DEV: javascript-obfuscator options on top of the preset (a CSP-safe subset). */
34
+ obfuscateOptions?: Record<string, unknown>;
35
+ baseHref?: string;
36
+ /** aes-gcm: where the per-build key's shares go. */
37
+ keySplit?: 'meta-bundle' | 'meta-bundle-asset';
38
+ /** aes-gcm: hosts this build may run on (set per configuration). */
39
+ domains?: string[];
40
+ includeWww?: boolean;
41
+ onMismatch?: 'block' | 'warn';
42
+ }