ddd-ts-kit 0.1.0 → 0.1.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 (215) hide show
  1. package/README.md +43 -3
  2. package/dist/affected/changed-paths.d.ts +8 -0
  3. package/dist/affected/changed-paths.d.ts.map +1 -0
  4. package/dist/affected/changed-paths.js +21 -0
  5. package/dist/affected/changed-paths.js.map +1 -0
  6. package/dist/affected/downstreams-of.d.ts +4 -0
  7. package/dist/affected/downstreams-of.d.ts.map +1 -0
  8. package/dist/affected/downstreams-of.js +16 -0
  9. package/dist/affected/downstreams-of.js.map +1 -0
  10. package/dist/affected/everything.d.ts +5 -0
  11. package/dist/affected/everything.d.ts.map +1 -0
  12. package/dist/affected/everything.js +5 -0
  13. package/dist/affected/everything.js.map +1 -0
  14. package/dist/affected/format-selection.d.ts +10 -0
  15. package/dist/affected/format-selection.d.ts.map +1 -0
  16. package/dist/affected/format-selection.js +45 -0
  17. package/dist/affected/format-selection.js.map +1 -0
  18. package/dist/affected/path-reach.d.ts +12 -0
  19. package/dist/affected/path-reach.d.ts.map +1 -0
  20. package/dist/affected/path-reach.js +2 -0
  21. package/dist/affected/path-reach.js.map +1 -0
  22. package/dist/affected/reach-of.d.ts +10 -0
  23. package/dist/affected/reach-of.d.ts.map +1 -0
  24. package/dist/affected/reach-of.js +30 -0
  25. package/dist/affected/reach-of.js.map +1 -0
  26. package/dist/affected/select-affected.d.ts +11 -0
  27. package/dist/affected/select-affected.d.ts.map +1 -0
  28. package/dist/affected/select-affected.js +39 -0
  29. package/dist/affected/select-affected.js.map +1 -0
  30. package/dist/affected/selection.d.ts +14 -0
  31. package/dist/affected/selection.d.ts.map +1 -0
  32. package/dist/affected/selection.js +2 -0
  33. package/dist/affected/selection.js.map +1 -0
  34. package/dist/commands/affected.d.ts +8 -0
  35. package/dist/commands/affected.d.ts.map +1 -0
  36. package/dist/commands/affected.js +38 -0
  37. package/dist/commands/affected.js.map +1 -0
  38. package/dist/commands/docs.d.ts.map +1 -1
  39. package/dist/commands/docs.js +2 -0
  40. package/dist/commands/docs.js.map +1 -1
  41. package/dist/commands/generate.d.ts.map +1 -1
  42. package/dist/commands/generate.js +5 -0
  43. package/dist/commands/generate.js.map +1 -1
  44. package/dist/commands/init.d.ts.map +1 -1
  45. package/dist/commands/init.js +6 -1
  46. package/dist/commands/init.js.map +1 -1
  47. package/dist/config/index.d.ts +1 -1
  48. package/dist/config/index.d.ts.map +1 -1
  49. package/dist/config/index.js +1 -1
  50. package/dist/config/index.js.map +1 -1
  51. package/dist/config/parse-stack.d.ts.map +1 -1
  52. package/dist/config/parse-stack.js +2 -1
  53. package/dist/config/parse-stack.js.map +1 -1
  54. package/dist/config/serialize-config.js +2 -2
  55. package/dist/config/serialize-config.js.map +1 -1
  56. package/dist/config/stack.d.ts +7 -0
  57. package/dist/config/stack.d.ts.map +1 -1
  58. package/dist/config/stack.js +1 -0
  59. package/dist/config/stack.js.map +1 -1
  60. package/dist/depcruise/cruise-configuration.js +3 -1
  61. package/dist/depcruise/cruise-configuration.js.map +1 -1
  62. package/dist/generate/apply-wiring.js +1 -1
  63. package/dist/generate/apply-wiring.js.map +1 -1
  64. package/dist/generate/kinds/adapter-kind.d.ts.map +1 -1
  65. package/dist/generate/kinds/adapter-kind.js +5 -2
  66. package/dist/generate/kinds/adapter-kind.js.map +1 -1
  67. package/dist/generate/kinds/declare-context-entries.d.ts +10 -0
  68. package/dist/generate/kinds/declare-context-entries.d.ts.map +1 -0
  69. package/dist/generate/kinds/declare-context-entries.js +31 -0
  70. package/dist/generate/kinds/declare-context-entries.js.map +1 -0
  71. package/dist/generate/kinds/generate-context.d.ts.map +1 -1
  72. package/dist/generate/kinds/generate-context.js +2 -0
  73. package/dist/generate/kinds/generate-context.js.map +1 -1
  74. package/dist/generate/kinds/import-assembler.d.ts +9 -0
  75. package/dist/generate/kinds/import-assembler.d.ts.map +1 -0
  76. package/dist/generate/kinds/import-assembler.js +29 -0
  77. package/dist/generate/kinds/import-assembler.js.map +1 -0
  78. package/dist/generate/kinds/write-context-files.d.ts.map +1 -1
  79. package/dist/generate/kinds/write-context-files.js +10 -2
  80. package/dist/generate/kinds/write-context-files.js.map +1 -1
  81. package/dist/generate/kinds/write-own-policy.d.ts +9 -0
  82. package/dist/generate/kinds/write-own-policy.d.ts.map +1 -0
  83. package/dist/generate/kinds/write-own-policy.js +13 -0
  84. package/dist/generate/kinds/write-own-policy.js.map +1 -0
  85. package/dist/generate/shared-writes.d.ts.map +1 -1
  86. package/dist/generate/shared-writes.js +6 -0
  87. package/dist/generate/shared-writes.js.map +1 -1
  88. package/dist/generate/stop-ignoring-validation.d.ts +9 -0
  89. package/dist/generate/stop-ignoring-validation.d.ts.map +1 -0
  90. package/dist/generate/stop-ignoring-validation.js +36 -0
  91. package/dist/generate/stop-ignoring-validation.js.map +1 -0
  92. package/dist/init/files/architecture-files.d.ts +9 -0
  93. package/dist/init/files/architecture-files.d.ts.map +1 -0
  94. package/dist/init/files/architecture-files.js +10 -0
  95. package/dist/init/files/architecture-files.js.map +1 -0
  96. package/dist/init/files/init-files.d.ts.map +1 -1
  97. package/dist/init/files/init-files.js +2 -0
  98. package/dist/init/files/init-files.js.map +1 -1
  99. package/dist/init/files/persistence-files.d.ts.map +1 -1
  100. package/dist/init/files/persistence-files.js +5 -1
  101. package/dist/init/files/persistence-files.js.map +1 -1
  102. package/dist/init/files/pipeline-files.d.ts.map +1 -1
  103. package/dist/init/files/pipeline-files.js +5 -1
  104. package/dist/init/files/pipeline-files.js.map +1 -1
  105. package/dist/init/files/platform-files.d.ts.map +1 -1
  106. package/dist/init/files/platform-files.js +3 -1
  107. package/dist/init/files/platform-files.js.map +1 -1
  108. package/dist/init/files/project-files.d.ts.map +1 -1
  109. package/dist/init/files/project-files.js +3 -1
  110. package/dist/init/files/project-files.js.map +1 -1
  111. package/dist/init/knip-vars.d.ts +3 -3
  112. package/dist/init/knip-vars.d.ts.map +1 -1
  113. package/dist/init/knip-vars.js +27 -5
  114. package/dist/init/knip-vars.js.map +1 -1
  115. package/dist/init/manifest/documentation-scripts.d.ts.map +1 -1
  116. package/dist/init/manifest/documentation-scripts.js +2 -0
  117. package/dist/init/manifest/documentation-scripts.js.map +1 -1
  118. package/dist/init/manifest/scripts-for.d.ts +5 -1
  119. package/dist/init/manifest/scripts-for.d.ts.map +1 -1
  120. package/dist/init/manifest/scripts-for.js +10 -1
  121. package/dist/init/manifest/scripts-for.js.map +1 -1
  122. package/dist/init/manifest/versions.js +23 -23
  123. package/dist/init/manifest/write-manifest.d.ts.map +1 -1
  124. package/dist/init/manifest/write-manifest.js +18 -1
  125. package/dist/init/manifest/write-manifest.js.map +1 -1
  126. package/dist/init/run-init.d.ts.map +1 -1
  127. package/dist/init/run-init.js +24 -4
  128. package/dist/init/run-init.js.map +1 -1
  129. package/dist/init/stack/resolve-stack.d.ts.map +1 -1
  130. package/dist/init/stack/resolve-stack.js +3 -1
  131. package/dist/init/stack/resolve-stack.js.map +1 -1
  132. package/dist/init/stack/stack-options.d.ts +1 -0
  133. package/dist/init/stack/stack-options.d.ts.map +1 -1
  134. package/dist/init/template-vars.d.ts.map +1 -1
  135. package/dist/init/template-vars.js +2 -0
  136. package/dist/init/template-vars.js.map +1 -1
  137. package/dist/init/validation-dependencies.d.ts +10 -0
  138. package/dist/init/validation-dependencies.d.ts.map +1 -0
  139. package/dist/init/validation-dependencies.js +23 -0
  140. package/dist/init/validation-dependencies.js.map +1 -0
  141. package/dist/init/write-contracts.d.ts +10 -0
  142. package/dist/init/write-contracts.d.ts.map +1 -0
  143. package/dist/init/write-contracts.js +33 -0
  144. package/dist/init/write-contracts.js.map +1 -0
  145. package/dist/package-manager/default-package-manager.d.ts +8 -0
  146. package/dist/package-manager/default-package-manager.d.ts.map +1 -0
  147. package/dist/package-manager/default-package-manager.js +7 -0
  148. package/dist/package-manager/default-package-manager.js.map +1 -0
  149. package/dist/package-manager/dialect.d.ts +3 -0
  150. package/dist/package-manager/dialect.d.ts.map +1 -0
  151. package/dist/package-manager/dialect.js +2 -0
  152. package/dist/package-manager/dialect.js.map +1 -0
  153. package/dist/package-manager/dialects.d.ts +5 -0
  154. package/dist/package-manager/dialects.d.ts.map +1 -0
  155. package/dist/package-manager/dialects.js +21 -0
  156. package/dist/package-manager/dialects.js.map +1 -0
  157. package/dist/package-manager/in-dialect.d.ts +8 -0
  158. package/dist/package-manager/in-dialect.d.ts.map +1 -0
  159. package/dist/package-manager/in-dialect.js +10 -0
  160. package/dist/package-manager/in-dialect.js.map +1 -0
  161. package/dist/package-manager/lockfiles.d.ts +4 -0
  162. package/dist/package-manager/lockfiles.d.ts.map +1 -0
  163. package/dist/package-manager/lockfiles.js +6 -0
  164. package/dist/package-manager/lockfiles.js.map +1 -0
  165. package/dist/package-manager/package-manager-of.d.ts +4 -0
  166. package/dist/package-manager/package-manager-of.d.ts.map +1 -0
  167. package/dist/package-manager/package-manager-of.js +15 -0
  168. package/dist/package-manager/package-manager-of.js.map +1 -0
  169. package/dist/package-manager/package-manager-vars.d.ts +5 -0
  170. package/dist/package-manager/package-manager-vars.d.ts.map +1 -0
  171. package/dist/package-manager/package-manager-vars.js +13 -0
  172. package/dist/package-manager/package-manager-vars.js.map +1 -0
  173. package/dist/package-manager/pinned-package-managers.d.ts +7 -0
  174. package/dist/package-manager/pinned-package-managers.d.ts.map +1 -0
  175. package/dist/package-manager/pinned-package-managers.js +9 -0
  176. package/dist/package-manager/pinned-package-managers.js.map +1 -0
  177. package/dist/run.d.ts.map +1 -1
  178. package/dist/run.js +8 -2
  179. package/dist/run.js.map +1 -1
  180. package/dist/templating/render.d.ts.map +1 -1
  181. package/dist/templating/render.js +2 -1
  182. package/dist/templating/render.js.map +1 -1
  183. package/dist/templating/rendering.js +1 -1
  184. package/dist/templating/rendering.js.map +1 -1
  185. package/dist/version.d.ts +1 -1
  186. package/dist/version.js +1 -1
  187. package/dist/workspace/workspace.d.ts +5 -1
  188. package/dist/workspace/workspace.d.ts.map +1 -1
  189. package/dist/workspace/workspace.js +13 -3
  190. package/dist/workspace/workspace.js.map +1 -1
  191. package/package.json +2 -2
  192. package/templates/architecture/extractable.declared.spec.ts.tpl +6 -6
  193. package/templates/architecture/extractable.manual.spec.ts.tpl +4 -0
  194. package/templates/architecture/extractable.tsyringe.spec.ts.tpl +6 -0
  195. package/templates/docs/asyncapi.json.tpl +12 -0
  196. package/templates/docs/event-catalog.md +3 -0
  197. package/templates/docs/openapi.json.tpl +354 -0
  198. package/templates/init/README.md.tpl +1 -0
  199. package/templates/init/docker/Dockerfile.tpl +9 -2
  200. package/templates/init/jest.config.js.tpl +3 -1
  201. package/templates/init/platform/compose-application.tsyringe.ts.tpl +0 -6
  202. package/templates/init/platform/database/journal.drizzle.json +5 -0
  203. package/templates/init/pnpm-workspace.yaml +8 -0
  204. package/templates/init/rules/infrastructure.md.tpl +2 -2
  205. package/templates/init/scripts/events.ts.tpl +1 -1
  206. package/templates/init/scripts/openapi.ts.tpl +1 -1
  207. package/templates/pipeline/biome.json.tpl +2 -1
  208. package/templates/pipeline/github/actions/setup/action.yml.tpl +37 -0
  209. package/templates/pipeline/github/scripts/start-postgres.sh +47 -0
  210. package/templates/pipeline/github/workflows/ci.yml +68 -110
  211. package/templates/pipeline/github/workflows/pr-title.yml +1 -5
  212. package/templates/pipeline/gitlab/{gitlab-ci.yml → gitlab-ci.yml.tpl} +59 -31
  213. package/templates/pipeline/knip.json.tpl +9 -10
  214. package/templates/pipeline/package-scripts.json +1 -1
  215. package/templates/pipeline/vitest.config.ts.tpl +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-stack.js","sourceRoot":"","sources":["../../../src/init/stack/resolve-stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-stack.js","sourceRoot":"","sources":["../../../src/init/stack/resolve-stack.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export interface StackOptions {
18
18
  readonly logger?: string;
19
19
  readonly style?: string;
20
20
  readonly assembly?: string;
21
+ readonly packageManager?: string;
21
22
  /** The prefix of the source root in imports, when it is not the default. */
22
23
  readonly importAlias?: string;
23
24
  /** The reason given for running an ORM without the transactional outbox. */
@@ -1 +1 @@
1
- {"version":3,"file":"stack-options.d.ts","sourceRoot":"","sources":["../../../src/init/stack/stack-options.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB"}
1
+ {"version":3,"file":"stack-options.d.ts","sourceRoot":"","sources":["../../../src/init/stack/stack-options.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"template-vars.d.ts","sourceRoot":"","sources":["../../src/init/template-vars.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAM5D,6GAA6G;AAC7G,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,CA0B/E"}
1
+ {"version":3,"file":"template-vars.d.ts","sourceRoot":"","sources":["../../src/init/template-vars.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAIjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAM5D,6GAA6G;AAC7G,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,CA2B/E"}
@@ -1,3 +1,4 @@
1
+ import { packageManagerVars } from '../package-manager/package-manager-vars.js';
1
2
  import { stackVars } from '../stack/stack-vars.js';
2
3
  import { WITH_DATABASE } from '../stack/with-database.js';
3
4
  import { knipVars } from './knip-vars.js';
@@ -9,6 +10,7 @@ export function templateVars(config, projectName) {
9
10
  return {
10
11
  ...stackVars(config),
11
12
  project: { name: projectName },
13
+ pm: packageManagerVars(config),
12
14
  docs: { any: docsUi !== 'none', ui: docsUi },
13
15
  knip: knipVars(config),
14
16
  ci: { github: ci === 'github' || ci === 'both', gitlab: ci === 'gitlab' || ci === 'both', any: ci !== 'none' },
@@ -1 +1 @@
1
- {"version":3,"file":"template-vars.js","sourceRoot":"","sources":["../../src/init/template-vars.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,qGAAqG;AACrG,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAElC,6GAA6G;AAC7G,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,WAAmB;IAC9D,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAErE,OAAO;QACL,GAAG,SAAS,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC9B,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAC5C,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,MAAM,EAAE;QAC9G,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE;QACzD,QAAQ,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;QACvC,OAAO,EAAE;YACP,OAAO,EACL,QAAQ,KAAK,UAAU;gBACvB,QAAQ,KAAK,OAAO;gBACpB,KAAK,KAAK,OAAO;gBACjB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAClC,MAAM,KAAK,QAAQ;SACtB;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ,KAAK,UAAU;YACjC,KAAK,EAAE,QAAQ,KAAK,OAAO;YAC3B,MAAM,EAAE,QAAQ,KAAK,QAAQ;YAC7B,MAAM,EAAE,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,OAAO;SACxD;KACF,CAAC;AACJ,CAAC;AAED,2GAA2G;AAC3G,SAAS,QAAQ,CAAC,MAAc;IAC9B,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAE5C,OAAO,CACL,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC3B,cAAc,CAAC,MAAM,CAAC;QACtB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9C,KAAK,KAAK,OAAO,CAClB,CAAC;AACJ,CAAC;AAED,4IAA4I;AAC5I,SAAS,SAAS,CAAC,MAAc;IAC/B,OAAO,cAAc,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC;AACnE,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAErC,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"template-vars.js","sourceRoot":"","sources":["../../src/init/template-vars.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,qGAAqG;AACrG,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAElC,6GAA6G;AAC7G,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,WAAmB;IAC9D,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAErE,OAAO;QACL,GAAG,SAAS,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC9B,EAAE,EAAE,kBAAkB,CAAC,MAAM,CAAC;QAC9B,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;QAC5C,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,MAAM,EAAE;QAC9G,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE;QACzD,QAAQ,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;QACvC,OAAO,EAAE;YACP,OAAO,EACL,QAAQ,KAAK,UAAU;gBACvB,QAAQ,KAAK,OAAO;gBACpB,KAAK,KAAK,OAAO;gBACjB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAClC,MAAM,KAAK,QAAQ;SACtB;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,QAAQ,KAAK,UAAU;YACjC,KAAK,EAAE,QAAQ,KAAK,OAAO;YAC3B,MAAM,EAAE,QAAQ,KAAK,QAAQ;YAC7B,MAAM,EAAE,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,OAAO;SACxD;KACF,CAAC;AACJ,CAAC;AAED,2GAA2G;AAC3G,SAAS,QAAQ,CAAC,MAAc;IAC9B,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAE5C,OAAO,CACL,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC3B,cAAc,CAAC,MAAM,CAAC;QACtB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9C,KAAK,KAAK,OAAO,CAClB,CAAC;AACJ,CAAC;AAED,4IAA4I;AAC5I,SAAS,SAAS,CAAC,MAAc;IAC/B,OAAO,cAAc,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC;AACnE,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAErC,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC;AACtE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Config } from '../config/index.js';
2
+ /**
3
+ * The validation packages of the stack, the one of the kit first. A new project validates nothing
4
+ * before its first route or integration event, unless the audit trail has its route: until then
5
+ * knip is told not to report them, since the next `generate` uses them, and the note goes with
6
+ * the first use (`stopIgnoringValidation`). Under class-validator, `reflect-metadata` waits with
7
+ * them where no container imports it.
8
+ */
9
+ export declare function validationDependencies(config: Config): string[];
10
+ //# sourceMappingURL=validation-dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-dependencies.d.ts","sourceRoot":"","sources":["../../src/init/validation-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAYjD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAO/D"}
@@ -0,0 +1,23 @@
1
+ /** What each validation library brings next to the package of the kit, all peers of it: knip counts them used as soon as the package is. */
2
+ const LIBRARIES = {
3
+ zod: ['zod'],
4
+ 'class-validator': ['class-validator', 'class-transformer', 'class-validator-jsonschema'],
5
+ };
6
+ const VALIDATION_PACKAGE = '@ddd-ts-kit/validation';
7
+ /** What knip counts as used by NestJS itself, whose validation pipe loads them. */
8
+ const LOADED_BY_NEST = ['class-validator', 'class-transformer'];
9
+ /**
10
+ * The validation packages of the stack, the one of the kit first. A new project validates nothing
11
+ * before its first route or integration event, unless the audit trail has its route: until then
12
+ * knip is told not to report them, since the next `generate` uses them, and the note goes with
13
+ * the first use (`stopIgnoringValidation`). Under class-validator, `reflect-metadata` waits with
14
+ * them where no container imports it.
15
+ */
16
+ export function validationDependencies(config) {
17
+ const { validation, di, http } = config.stack;
18
+ const nest = http === 'nest';
19
+ const library = (LIBRARIES[validation] ?? []).filter((name) => !nest || !LOADED_BY_NEST.includes(name));
20
+ const metadata = validation === 'class-validator' && di !== 'tsyringe' && !nest ? ['reflect-metadata'] : [];
21
+ return [VALIDATION_PACKAGE, ...library, ...metadata];
22
+ }
23
+ //# sourceMappingURL=validation-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-dependencies.js","sourceRoot":"","sources":["../../src/init/validation-dependencies.ts"],"names":[],"mappings":"AAEA,4IAA4I;AAC5I,MAAM,SAAS,GAAgD;IAC7D,GAAG,EAAE,CAAC,KAAK,CAAC;IACZ,iBAAiB,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,4BAA4B,CAAC;CAC1F,CAAC;AAEF,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AACpD,mFAAmF;AACnF,MAAM,cAAc,GAAG,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,KAAK,MAAM,CAAC;IAC7B,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACxG,MAAM,QAAQ,GAAG,UAAU,KAAK,iBAAiB,IAAI,EAAE,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5G,OAAO,CAAC,kBAAkB,EAAE,GAAG,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;AACvD,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Config } from '../config/index.js';
2
+ import type { Workspace } from '../workspace/index.js';
3
+ /**
4
+ * The generated contracts of a project that has no route and no integration event of its own
5
+ * yet, as its scripts write them (`docs:generate`): the first commit holds them, and the check
6
+ * of the documents passes before anything is generated. A contract that is already there is
7
+ * left alone: the scripts of the project are what keeps it current from then on.
8
+ */
9
+ export declare function writeContracts(ws: Workspace, config: Config, projectName: string): void;
10
+ //# sourceMappingURL=write-contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-contracts.d.ts","sourceRoot":"","sources":["../../src/init/write-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAKvD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAiBvF"}
@@ -0,0 +1,33 @@
1
+ import { stackVars } from '../stack/stack-vars.js';
2
+ import { readTemplate, renderTemplate } from '../templating/index.js';
3
+ import { isRecord } from './is-record.js';
4
+ const INTEGRATION = 'docs/integration';
5
+ /**
6
+ * The generated contracts of a project that has no route and no integration event of its own
7
+ * yet, as its scripts write them (`docs:generate`): the first commit holds them, and the check
8
+ * of the documents passes before anything is generated. A contract that is already there is
9
+ * left alone: the scripts of the project are what keeps it current from then on.
10
+ */
11
+ export function writeContracts(ws, config, projectName) {
12
+ const context = { ...stackVars(config), document: documentVars(ws, projectName) };
13
+ const contracts = [
14
+ [`${INTEGRATION}/asyncapi.json`, renderTemplate('docs/asyncapi.json.tpl', context)],
15
+ [`${INTEGRATION}/event-catalog.md`, readTemplate('docs/event-catalog.md')],
16
+ ];
17
+ if (config.stack.http !== 'none') {
18
+ contracts.push(['openapi/openapi.json', renderTemplate('docs/openapi.json.tpl', context)]);
19
+ }
20
+ for (const [file, content] of contracts) {
21
+ if (!ws.exists(file)) {
22
+ ws.create(file, content);
23
+ }
24
+ }
25
+ }
26
+ /** The title and the version the scripts read from package.json, with their fallbacks, as JSON texts. */
27
+ function documentVars(ws, projectName) {
28
+ const manifest = JSON.parse(ws.read('package.json') ?? '{}');
29
+ const field = (name) => (isRecord(manifest) ? manifest[name] : undefined);
30
+ const text = (value, fallback) => JSON.stringify(typeof value === 'string' ? value : fallback);
31
+ return { title: text(field('name'), projectName), version: text(field('version'), '0.0.0') };
32
+ }
33
+ //# sourceMappingURL=write-contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-contracts.js","sourceRoot":"","sources":["../../src/init/write-contracts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAsB,MAAM,wBAAwB,CAAC;AAE1F,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,EAAa,EAAE,MAAc,EAAE,WAAmB;IAC/E,MAAM,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC;IAElF,MAAM,SAAS,GAAkC;QAC/C,CAAC,GAAG,WAAW,gBAAgB,EAAE,cAAc,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;QACnF,CAAC,GAAG,WAAW,mBAAmB,EAAE,YAAY,CAAC,uBAAuB,CAAC,CAAC;KAC3E,CAAC;IAEF,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACjC,SAAS,CAAC,IAAI,CAAC,CAAC,sBAAsB,EAAE,cAAc,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;AACH,CAAC;AAED,yGAAyG;AACzG,SAAS,YAAY,CAAC,EAAa,EAAE,WAAmB;IACtD,MAAM,QAAQ,GAAY,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAE3F,MAAM,IAAI,GAAG,CAAC,KAAc,EAAE,QAAgB,EAAU,EAAE,CACxD,IAAI,CAAC,SAAS,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE/D,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;AAC/F,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Stack } from '../config/index.js';
2
+ /**
3
+ * What `init` chooses when `--package-manager` is left out: the fastest of the three on a
4
+ * pipeline, measured on the default stack and on a heavy one (docs/tools/pipeline-performance.md),
5
+ * among those the end-to-end suite of the CLI proves on a real install.
6
+ */
7
+ export declare const DEFAULT_PACKAGE_MANAGER: Stack['packageManager'];
8
+ //# sourceMappingURL=default-package-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-package-manager.d.ts","sourceRoot":"","sources":["../../src/package-manager/default-package-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,gBAAgB,CAAU,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * What `init` chooses when `--package-manager` is left out: the fastest of the three on a
3
+ * pipeline, measured on the default stack and on a heavy one (docs/tools/pipeline-performance.md),
4
+ * among those the end-to-end suite of the CLI proves on a real install.
5
+ */
6
+ export const DEFAULT_PACKAGE_MANAGER = 'pnpm';
7
+ //# sourceMappingURL=default-package-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-package-manager.js","sourceRoot":"","sources":["../../src/package-manager/default-package-manager.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA4B,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** How one package manager writes what the templates write for npm: an ordered list of [what npm says, what it says]. */
2
+ export type Dialect = readonly (readonly [RegExp, string])[];
3
+ //# sourceMappingURL=dialect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../../src/package-manager/dialect.ts"],"names":[],"mappings":"AAAA,yHAAyH;AACzH,MAAM,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=dialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialect.js","sourceRoot":"","sources":["../../src/package-manager/dialect.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { Stack } from '../config/index.js';
2
+ import type { Dialect } from './dialect.js';
3
+ /** The templates are written for npm: it has nothing to translate. */
4
+ export declare const DIALECTS: Readonly<Record<Stack['packageManager'], Dialect>>;
5
+ //# sourceMappingURL=dialects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialects.d.ts","sourceRoot":"","sources":["../../src/package-manager/dialects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAuB5C,sEAAsE;AACtE,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAA2B,CAAC"}
@@ -0,0 +1,21 @@
1
+ /** `npm` and `npx` as words of their own: `pnpm run` is not `npm run`. */
2
+ const NPM = String.raw `(?<![\w@/.-])npm`;
3
+ const NPX = String.raw `(?<![\w@/.-])npx`;
4
+ const SCRIPT = String.raw `([\w:.-]+)`;
5
+ const said = (pattern) => new RegExp(pattern, 'g');
6
+ /** pnpm hands `--` over to the script as an argument: what follows the script name is already its arguments. */
7
+ const PNPM = [
8
+ [said(`${NPM} run --silent ${SCRIPT} -- `), 'pnpm --silent run $1 '],
9
+ [said(`${NPM} run --silent `), 'pnpm --silent run '],
10
+ [said(`${NPM} (run ${SCRIPT}|test) -- `), 'pnpm $1 '],
11
+ [said(`${NPM} (run|test|start)(?![\\w-])`), 'pnpm $1'],
12
+ [said(`${NPX} (?:--no -- )?`), 'pnpm exec '],
13
+ [said(`${NPM} ci --omit=dev`), 'pnpm install --frozen-lockfile --prod'],
14
+ [said(`${NPM} ci(?![\\w-])`), 'pnpm install --frozen-lockfile'],
15
+ [said(`${NPM} audit --omit=dev --audit-level=high`), 'pnpm audit --prod --audit-level high'],
16
+ [said(`${NPM} (install|publish)(?![\\w-])`), 'pnpm $1'],
17
+ [said(String.raw `package-lock\.json`), 'pnpm-lock.yaml'],
18
+ ];
19
+ /** The templates are written for npm: it has nothing to translate. */
20
+ export const DIALECTS = { npm: [], pnpm: PNPM };
21
+ //# sourceMappingURL=dialects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialects.js","sourceRoot":"","sources":["../../src/package-manager/dialects.ts"],"names":[],"mappings":"AAGA,0EAA0E;AAC1E,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA,kBAAkB,CAAC;AACzC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA,kBAAkB,CAAC;AACzC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA,YAAY,CAAC;AAEtC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAEnE,gHAAgH;AAChH,MAAM,IAAI,GAAY;IACpB,CAAC,IAAI,CAAC,GAAG,GAAG,iBAAiB,MAAM,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACpE,CAAC,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACpD,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,MAAM,YAAY,CAAC,EAAE,UAAU,CAAC;IACrD,CAAC,IAAI,CAAC,GAAG,GAAG,6BAA6B,CAAC,EAAE,SAAS,CAAC;IACtD,CAAC,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,EAAE,YAAY,CAAC;IAC5C,CAAC,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,EAAE,uCAAuC,CAAC;IACvE,CAAC,IAAI,CAAC,GAAG,GAAG,eAAe,CAAC,EAAE,gCAAgC,CAAC;IAC/D,CAAC,IAAI,CAAC,GAAG,GAAG,sCAAsC,CAAC,EAAE,sCAAsC,CAAC;IAC5F,CAAC,IAAI,CAAC,GAAG,GAAG,8BAA8B,CAAC,EAAE,SAAS,CAAC;IACvD,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA,oBAAoB,CAAC,EAAE,gBAAgB,CAAC;CACzD,CAAC;AAEF,sEAAsE;AACtE,MAAM,CAAC,MAAM,QAAQ,GAAuD,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Stack } from '../config/index.js';
2
+ /**
3
+ * A text written for npm, as the package manager of the project says it: the commands of a
4
+ * script, of a pipeline, of a hook, of a Dockerfile and of the guidance. Translating twice
5
+ * changes nothing, and npm is left as it is.
6
+ */
7
+ export declare function inDialect(text: string, manager: Stack['packageManager']): string;
8
+ //# sourceMappingURL=in-dialect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-dialect.d.ts","sourceRoot":"","sources":["../../src/package-manager/in-dialect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGhD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAEhF"}
@@ -0,0 +1,10 @@
1
+ import { DIALECTS } from './dialects.js';
2
+ /**
3
+ * A text written for npm, as the package manager of the project says it: the commands of a
4
+ * script, of a pipeline, of a hook, of a Dockerfile and of the guidance. Translating twice
5
+ * changes nothing, and npm is left as it is.
6
+ */
7
+ export function inDialect(text, manager) {
8
+ return DIALECTS[manager].reduce((translated, [npm, own]) => translated.replace(npm, own), text);
9
+ }
10
+ //# sourceMappingURL=in-dialect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-dialect.js","sourceRoot":"","sources":["../../src/package-manager/in-dialect.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,OAAgC;IACtE,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;AAClG,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Stack } from '../config/index.js';
2
+ /** The lockfile each package manager writes: what a cache of the installed dependencies is keyed on. */
3
+ export declare const LOCKFILES: Readonly<Record<Stack['packageManager'], string>>;
4
+ //# sourceMappingURL=lockfiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockfiles.d.ts","sourceRoot":"","sources":["../../src/package-manager/lockfiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,wGAAwG;AACxG,eAAO,MAAM,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,CAGvE,CAAC"}
@@ -0,0 +1,6 @@
1
+ /** The lockfile each package manager writes: what a cache of the installed dependencies is keyed on. */
2
+ export const LOCKFILES = {
3
+ npm: 'package-lock.json',
4
+ pnpm: 'pnpm-lock.yaml',
5
+ };
6
+ //# sourceMappingURL=lockfiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockfiles.js","sourceRoot":"","sources":["../../src/package-manager/lockfiles.ts"],"names":[],"mappings":"AAEA,wGAAwG;AACxG,MAAM,CAAC,MAAM,SAAS,GAAsD;IAC1E,GAAG,EAAE,mBAAmB;IACxB,IAAI,EAAE,gBAAgB;CACvB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type Stack } from '../config/index.js';
2
+ /** The package manager a config file names, read from its text alone; npm when it names none or cannot be read. */
3
+ export declare function packageManagerOf(configText: string | undefined): Stack['packageManager'];
4
+ //# sourceMappingURL=package-manager-of.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager-of.d.ts","sourceRoot":"","sources":["../../src/package-manager/package-manager-of.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3E,mHAAmH;AACnH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAUxF"}
@@ -0,0 +1,15 @@
1
+ import { isOneOf, PACKAGE_MANAGERS } from '../config/index.js';
2
+ import { isRecord } from '../config/values/is-record.js';
3
+ /** The package manager a config file names, read from its text alone; npm when it names none or cannot be read. */
4
+ export function packageManagerOf(configText) {
5
+ try {
6
+ const parsed = JSON.parse(configText ?? '{}');
7
+ const stack = isRecord(parsed) ? parsed['stack'] : undefined;
8
+ const named = isRecord(stack) ? stack['packageManager'] : undefined;
9
+ return isOneOf(PACKAGE_MANAGERS, named) ? named : 'npm';
10
+ }
11
+ catch {
12
+ return 'npm';
13
+ }
14
+ }
15
+ //# sourceMappingURL=package-manager-of.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager-of.js","sourceRoot":"","sources":["../../src/package-manager/package-manager-of.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAc,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,mHAAmH;AACnH,MAAM,UAAU,gBAAgB,CAAC,UAA8B;IAC7D,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAY,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,MAAM,KAAK,GAAY,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7E,OAAO,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Config } from '../config/index.js';
2
+ import type { RenderContext } from '../templating/index.js';
3
+ /** The package manager as template variables: which one, whether corepack provides it, and the lockfile it writes. */
4
+ export declare function packageManagerVars(config: Config): RenderContext;
5
+ //# sourceMappingURL=package-manager-vars.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager-vars.d.ts","sourceRoot":"","sources":["../../src/package-manager/package-manager-vars.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,sHAAsH;AACtH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAShE"}
@@ -0,0 +1,13 @@
1
+ import { one } from '../stack/one.js';
2
+ import { LOCKFILES } from './lockfiles.js';
3
+ /** The package manager as template variables: which one, whether corepack provides it, and the lockfile it writes. */
4
+ export function packageManagerVars(config) {
5
+ const { packageManager } = config.stack;
6
+ return {
7
+ ...one(packageManager, ['npm', 'pnpm']),
8
+ name: packageManager,
9
+ corepack: packageManager !== 'npm',
10
+ lockfile: LOCKFILES[packageManager],
11
+ };
12
+ }
13
+ //# sourceMappingURL=package-manager-vars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager-vars.js","sourceRoot":"","sources":["../../src/package-manager/package-manager-vars.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,sHAAsH;AACtH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IAExC,OAAO;QACL,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,cAAc,KAAK,KAAK;QAClC,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC;KACpC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Stack } from '../config/index.js';
2
+ /**
3
+ * The release `packageManager` pins in package.json, which corepack then provides to every
4
+ * developer and to the pipeline. npm comes with Node and is not pinned.
5
+ */
6
+ export declare const PINNED_PACKAGE_MANAGERS: Readonly<Record<Stack['packageManager'], string | undefined>>;
7
+ //# sourceMappingURL=pinned-package-managers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pinned-package-managers.d.ts","sourceRoot":"","sources":["../../src/package-manager/pinned-package-managers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,CAGjG,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The release `packageManager` pins in package.json, which corepack then provides to every
3
+ * developer and to the pipeline. npm comes with Node and is not pinned.
4
+ */
5
+ export const PINNED_PACKAGE_MANAGERS = {
6
+ npm: undefined,
7
+ pnpm: 'pnpm@12.11.2',
8
+ };
9
+ //# sourceMappingURL=pinned-package-managers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pinned-package-managers.js","sourceRoot":"","sources":["../../src/package-manager/pinned-package-managers.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkE;IACpG,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,cAAc;CACrB,CAAC"}
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAoF3C,wBAAgB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,GAAE,EAAc,GAAG,MAAM,CAkCvE"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AA0F3C,wBAAgB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,GAAE,EAAc,GAAG,MAAM,CAkCvE"}
package/dist/run.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { affectedCommand } from './commands/affected.js';
1
2
  import { buildAliasesCommand } from './commands/build-aliases.js';
2
3
  import { checkFileCommand, explainCommand, rulesCommand } from './commands/check.js';
3
4
  import { checksCommand } from './commands/checks.js';
@@ -15,6 +16,7 @@ import { KINDS } from './generate/kinds.js';
15
16
  import { kindsHelp } from './generate/kinds-help.js';
16
17
  import { VERSION } from './version.js';
17
18
  const COMMANDS = {
19
+ affected: affectedCommand,
18
20
  init: initCommand,
19
21
  generate: generateCommand,
20
22
  g: generateCommand,
@@ -39,7 +41,7 @@ const USAGE = `Usage
39
41
  [--ci github|gitlab|both|none] [--authn jwt|keycloak|none] [--authz rbac|abac|rebac|custom]
40
42
  [--broker none|rabbitmq|kafka|nats|redis|custom] [--cache none|redis] [--audit on|off]
41
43
  [--errors none|sentry] [--logger stdout|pino|winston] [--style declared|explicit] [--assembly barrel|discovery]
42
- [--allow-no-outbox "<reason>"] [--import-alias '$<name>/']
44
+ [--package-manager npm|pnpm] [--allow-no-outbox "<reason>"] [--import-alias '$<name>/']
43
45
  [--context <name>:<core|supporting|generic>]... [--dry-run] [--force]
44
46
  ddd-ts-kit generate <kind> ... [--term "<Term>=<meaning>"]... [--allow-name] [--local-only] [--dry-run] [--force] (alias: g)
45
47
  ddd-ts-kit generate --help --json
@@ -51,6 +53,7 @@ const USAGE = `Usage
51
53
  ddd-ts-kit docs [--check]
52
54
  ddd-ts-kit depcruise-config [--check|--write]
53
55
  ddd-ts-kit build-aliases [--project <tsconfig>]
56
+ ddd-ts-kit affected [--base <git-ref>] [--head <git-ref>] [--format text|json|github|env]
54
57
  ddd-ts-kit check [paths...] [--rule <id>]... [--format text|json|github|gitlab] [--changed-since <git-ref>] [--self]
55
58
  ddd-ts-kit check --clean-only <dir>... [--rule <id>]... [--format text|json|github]
56
59
  ddd-ts-kit check --commit-size [--staged] [--strict]
@@ -59,7 +62,10 @@ const USAGE = `Usage
59
62
  ddd-ts-kit explain <rule-id>
60
63
 
61
64
  Every command accepts --json (machine-readable output) and --cwd <dir> (project root).`;
62
- const NOTES = ` build-aliases after the compiler: rewrites the import aliases left in the emitted .js and .d.ts files
65
+ const NOTES = ` affected what a pull request has to run: the contexts a change set reaches through the context
66
+ map (a changed context and the contexts downstream of it), as filters for the test
67
+ runner and the linter; everything when a shared path changed or without --base
68
+ build-aliases after the compiler: rewrites the import aliases left in the emitted .js and .d.ts files
63
69
  into relative paths, so that plain node runs the output (tsconfig.build.json by default)
64
70
  describe one context as facts: use cases, routes, events, ports, policies, gateways, dependencies
65
71
  status the next step of docs/architecture/plan.md, the slices of docs/architecture/slices.md by
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/templating/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOzD,2HAA2H;AAC3H,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAa,GAAG,MAAM,CAc5F"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/templating/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,2HAA2H;AAC3H,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAa,GAAG,MAAM,CAc5F"}
@@ -1,5 +1,6 @@
1
1
  import { Rendering } from './rendering.js';
2
- const TAG = /\{\{\s*(#if|#unless|\/if|\/unless)?\s*([A-Za-z0-9_.]*)\s*\}\}/g;
2
+ /** `${{ ... }}` is an expression of a GitHub workflow, never a tag of a template. */
3
+ const TAG = /(?<!\$)\{\{\s*(#if|#unless|\/if|\/unless)?\s*([A-Za-z0-9_.]*)\s*\}\}/g;
3
4
  /** A block tag alone on its line leaves no blank line behind. */
4
5
  const STANDALONE_BLOCK_TAG = /^[ \t]*(\{\{\s*[#/](?:if|unless)[^}\n]*\}\})[ \t]*\r?\n/gm;
5
6
  /** Fills the placeholders of a template and keeps the blocks whose condition holds; an unknown placeholder is an error. */
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/templating/render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,GAAG,GAAG,gEAAgE,CAAC;AAC7E,iEAAiE;AACjE,MAAM,oBAAoB,GAAG,2DAA2D,CAAC;AAEzF,2HAA2H;AAC3H,MAAM,UAAU,MAAM,CAAC,QAAgB,EAAE,OAAsB,EAAE,MAAM,GAAG,UAAU;IAClF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAErC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/templating/render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,qFAAqF;AACrF,MAAM,GAAG,GAAG,uEAAuE,CAAC;AACpF,iEAAiE;AACjE,MAAM,oBAAoB,GAAG,2DAA2D,CAAC;AAEzF,2HAA2H;AAC3H,MAAM,UAAU,MAAM,CAAC,QAAgB,EAAE,OAAsB,EAAE,MAAM,GAAG,UAAU;IAClF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAErC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;AAC5B,CAAC"}
@@ -32,7 +32,7 @@ export class Rendering {
32
32
  if (this.open.length > 0) {
33
33
  throw this.failure('an "{{#if}}" block is never closed');
34
34
  }
35
- const leftover = /\{\{[^}]*\}\}/.exec(this.output);
35
+ const leftover = /(?<!\$)\{\{[^}]*\}\}/.exec(this.output);
36
36
  if (leftover !== null) {
37
37
  throw this.failure(`leftover placeholder "${leftover[0]}"`);
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rendering.js","sourceRoot":"","sources":["../../src/templating/rendering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rendering.js","sourceRoot":"","sources":["../../src/templating/rendering.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,oFAAoF;AACpF,MAAM,OAAO,SAAS;IAOD,OAAO;IACP,MAAM;IAPjB,MAAM,GAAG,EAAE,CAAC;IAEpB,6DAA6D;IAC5C,IAAI,GAAc,EAAE,CAAC;IAEtC,YACmB,OAAsB,EACtB,MAAc;uBADd,OAAO;sBACP,MAAM;IACtB,CAAC;IAEJ,IAAI,CAAC,IAAY;QACf,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAAyB,EAAE,IAAY;QACzC,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,oBAAoB,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE1D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,QAAQ;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAEO,SAAS,CAAC,IAAY;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,0BAA0B,CAAC,CAAC;IACnE,CAAC;IAEO,KAAK,CAAC,IAAY;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzC,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrD,MAAM,IAAI,CAAC,OAAO,CAAC,0BAA0B,IAAI,KAAK,CAAC,CAAC;QAC1D,CAAC;QAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAEO,OAAO,CAAC,OAAe;QAC7B,OAAO,IAAI,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,EAAE,gEAAgE,CAAC,CAAC;IACtH,CAAC;CACF;AAED,SAAS,MAAM,CAAC,OAAsB,EAAE,IAAY;IAClD,IAAI,OAAO,GAA4B,OAAO,CAAC;IAE/C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.1.0";
1
+ export declare const VERSION = "0.1.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.1.0';
1
+ export const VERSION = '0.1.1';
2
2
  //# sourceMappingURL=version.js.map
@@ -3,6 +3,8 @@ import type { WorkspaceReport } from './workspace-report.js';
3
3
  /**
4
4
  * Every generator writes through this overlay, so a command either lands as a whole
5
5
  * plan or (with --dry-run) not at all, and later steps see the files of earlier ones.
6
+ * What it writes and notes is said in the dialect of the package manager the config
7
+ * file of the project names: the templates are written for npm.
6
8
  */
7
9
  export declare class Workspace {
8
10
  readonly root: string;
@@ -20,7 +22,9 @@ export declare class Workspace {
20
22
  directories(directory: string): string[];
21
23
  /** Never replaces a file the user may have edited, unless asked to with --force. */
22
24
  create(file: string, content: string): boolean;
23
- update(file: string, content: string): void;
25
+ update(file: string, written: string): void;
26
+ /** A text written for npm, as the package manager of the project says it: what is compared with a file is compared in its dialect. */
27
+ spoken(text: string): string;
24
28
  note(message: string): void;
25
29
  /** Points the team at a line of a file this command changed, the way a `TODO(domain)` of a created file does. */
26
30
  step(step: NextStep): void;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/workspace/workspace.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO7D;;;GAGG;AACH,qBAAa,SAAS;IAUlB,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAVxB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IAEtD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;IAExC,YACW,IAAI,EAAE,MAAM,EACJ,KAAK,EAAE,OAAO,EAC7B;IAEJ,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5B;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYrC;IAED,0EAA0E;IAC1E,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAMhC;IAED,gFAAgF;IAChF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAUvC;IAED,oFAAoF;IACpF,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAc7C;IAED,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAc1C;IAED,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1B;IAED,iHAAiH;IACjH,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAIzB;IAED,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe,CAwBvC;IAED,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,MAAM;IAYd,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,QAAQ;CAGjB"}
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/workspace/workspace.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO7D;;;;;GAKG;AACH,qBAAa,SAAS;IAUlB,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAVxB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IAEtD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkB;IAExC,YACW,IAAI,EAAE,MAAM,EACJ,KAAK,EAAE,OAAO,EAC7B;IAEJ,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5B;IAED,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYrC;IAED,0EAA0E;IAC1E,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAMhC;IAED,gFAAgF;IAChF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAUvC;IAED,oFAAoF;IACpF,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAc7C;IAED,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAe1C;IAED,sIAAsI;IACtI,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3B;IAED,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1B;IAED,iHAAiH;IACjH,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAIzB;IAED,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe,CAwBvC;IAED,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,MAAM;IAYd,OAAO,CAAC,KAAK;IAKb,OAAO,CAAC,QAAQ;CAGjB"}