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.
- package/README.md +43 -3
- package/dist/affected/changed-paths.d.ts +8 -0
- package/dist/affected/changed-paths.d.ts.map +1 -0
- package/dist/affected/changed-paths.js +21 -0
- package/dist/affected/changed-paths.js.map +1 -0
- package/dist/affected/downstreams-of.d.ts +4 -0
- package/dist/affected/downstreams-of.d.ts.map +1 -0
- package/dist/affected/downstreams-of.js +16 -0
- package/dist/affected/downstreams-of.js.map +1 -0
- package/dist/affected/everything.d.ts +5 -0
- package/dist/affected/everything.d.ts.map +1 -0
- package/dist/affected/everything.js +5 -0
- package/dist/affected/everything.js.map +1 -0
- package/dist/affected/format-selection.d.ts +10 -0
- package/dist/affected/format-selection.d.ts.map +1 -0
- package/dist/affected/format-selection.js +45 -0
- package/dist/affected/format-selection.js.map +1 -0
- package/dist/affected/path-reach.d.ts +12 -0
- package/dist/affected/path-reach.d.ts.map +1 -0
- package/dist/affected/path-reach.js +2 -0
- package/dist/affected/path-reach.js.map +1 -0
- package/dist/affected/reach-of.d.ts +10 -0
- package/dist/affected/reach-of.d.ts.map +1 -0
- package/dist/affected/reach-of.js +30 -0
- package/dist/affected/reach-of.js.map +1 -0
- package/dist/affected/select-affected.d.ts +11 -0
- package/dist/affected/select-affected.d.ts.map +1 -0
- package/dist/affected/select-affected.js +39 -0
- package/dist/affected/select-affected.js.map +1 -0
- package/dist/affected/selection.d.ts +14 -0
- package/dist/affected/selection.d.ts.map +1 -0
- package/dist/affected/selection.js +2 -0
- package/dist/affected/selection.js.map +1 -0
- package/dist/commands/affected.d.ts +8 -0
- package/dist/commands/affected.d.ts.map +1 -0
- package/dist/commands/affected.js +38 -0
- package/dist/commands/affected.js.map +1 -0
- package/dist/commands/docs.d.ts.map +1 -1
- package/dist/commands/docs.js +2 -0
- package/dist/commands/docs.js.map +1 -1
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +5 -0
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +6 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/parse-stack.d.ts.map +1 -1
- package/dist/config/parse-stack.js +2 -1
- package/dist/config/parse-stack.js.map +1 -1
- package/dist/config/serialize-config.js +2 -2
- package/dist/config/serialize-config.js.map +1 -1
- package/dist/config/stack.d.ts +7 -0
- package/dist/config/stack.d.ts.map +1 -1
- package/dist/config/stack.js +1 -0
- package/dist/config/stack.js.map +1 -1
- package/dist/depcruise/cruise-configuration.js +3 -1
- package/dist/depcruise/cruise-configuration.js.map +1 -1
- package/dist/generate/apply-wiring.js +1 -1
- package/dist/generate/apply-wiring.js.map +1 -1
- package/dist/generate/kinds/adapter-kind.d.ts.map +1 -1
- package/dist/generate/kinds/adapter-kind.js +5 -2
- package/dist/generate/kinds/adapter-kind.js.map +1 -1
- package/dist/generate/kinds/declare-context-entries.d.ts +10 -0
- package/dist/generate/kinds/declare-context-entries.d.ts.map +1 -0
- package/dist/generate/kinds/declare-context-entries.js +31 -0
- package/dist/generate/kinds/declare-context-entries.js.map +1 -0
- package/dist/generate/kinds/generate-context.d.ts.map +1 -1
- package/dist/generate/kinds/generate-context.js +2 -0
- package/dist/generate/kinds/generate-context.js.map +1 -1
- package/dist/generate/kinds/import-assembler.d.ts +9 -0
- package/dist/generate/kinds/import-assembler.d.ts.map +1 -0
- package/dist/generate/kinds/import-assembler.js +29 -0
- package/dist/generate/kinds/import-assembler.js.map +1 -0
- package/dist/generate/kinds/write-context-files.d.ts.map +1 -1
- package/dist/generate/kinds/write-context-files.js +10 -2
- package/dist/generate/kinds/write-context-files.js.map +1 -1
- package/dist/generate/kinds/write-own-policy.d.ts +9 -0
- package/dist/generate/kinds/write-own-policy.d.ts.map +1 -0
- package/dist/generate/kinds/write-own-policy.js +13 -0
- package/dist/generate/kinds/write-own-policy.js.map +1 -0
- package/dist/generate/shared-writes.d.ts.map +1 -1
- package/dist/generate/shared-writes.js +6 -0
- package/dist/generate/shared-writes.js.map +1 -1
- package/dist/generate/stop-ignoring-validation.d.ts +9 -0
- package/dist/generate/stop-ignoring-validation.d.ts.map +1 -0
- package/dist/generate/stop-ignoring-validation.js +36 -0
- package/dist/generate/stop-ignoring-validation.js.map +1 -0
- package/dist/init/files/architecture-files.d.ts +9 -0
- package/dist/init/files/architecture-files.d.ts.map +1 -0
- package/dist/init/files/architecture-files.js +10 -0
- package/dist/init/files/architecture-files.js.map +1 -0
- package/dist/init/files/init-files.d.ts.map +1 -1
- package/dist/init/files/init-files.js +2 -0
- package/dist/init/files/init-files.js.map +1 -1
- package/dist/init/files/persistence-files.d.ts.map +1 -1
- package/dist/init/files/persistence-files.js +5 -1
- package/dist/init/files/persistence-files.js.map +1 -1
- package/dist/init/files/pipeline-files.d.ts.map +1 -1
- package/dist/init/files/pipeline-files.js +5 -1
- package/dist/init/files/pipeline-files.js.map +1 -1
- package/dist/init/files/platform-files.d.ts.map +1 -1
- package/dist/init/files/platform-files.js +3 -1
- package/dist/init/files/platform-files.js.map +1 -1
- package/dist/init/files/project-files.d.ts.map +1 -1
- package/dist/init/files/project-files.js +3 -1
- package/dist/init/files/project-files.js.map +1 -1
- package/dist/init/knip-vars.d.ts +3 -3
- package/dist/init/knip-vars.d.ts.map +1 -1
- package/dist/init/knip-vars.js +27 -5
- package/dist/init/knip-vars.js.map +1 -1
- package/dist/init/manifest/documentation-scripts.d.ts.map +1 -1
- package/dist/init/manifest/documentation-scripts.js +2 -0
- package/dist/init/manifest/documentation-scripts.js.map +1 -1
- package/dist/init/manifest/scripts-for.d.ts +5 -1
- package/dist/init/manifest/scripts-for.d.ts.map +1 -1
- package/dist/init/manifest/scripts-for.js +10 -1
- package/dist/init/manifest/scripts-for.js.map +1 -1
- package/dist/init/manifest/versions.js +23 -23
- package/dist/init/manifest/write-manifest.d.ts.map +1 -1
- package/dist/init/manifest/write-manifest.js +18 -1
- package/dist/init/manifest/write-manifest.js.map +1 -1
- package/dist/init/run-init.d.ts.map +1 -1
- package/dist/init/run-init.js +24 -4
- package/dist/init/run-init.js.map +1 -1
- package/dist/init/stack/resolve-stack.d.ts.map +1 -1
- package/dist/init/stack/resolve-stack.js +3 -1
- package/dist/init/stack/resolve-stack.js.map +1 -1
- package/dist/init/stack/stack-options.d.ts +1 -0
- package/dist/init/stack/stack-options.d.ts.map +1 -1
- package/dist/init/template-vars.d.ts.map +1 -1
- package/dist/init/template-vars.js +2 -0
- package/dist/init/template-vars.js.map +1 -1
- package/dist/init/validation-dependencies.d.ts +10 -0
- package/dist/init/validation-dependencies.d.ts.map +1 -0
- package/dist/init/validation-dependencies.js +23 -0
- package/dist/init/validation-dependencies.js.map +1 -0
- package/dist/init/write-contracts.d.ts +10 -0
- package/dist/init/write-contracts.d.ts.map +1 -0
- package/dist/init/write-contracts.js +33 -0
- package/dist/init/write-contracts.js.map +1 -0
- package/dist/package-manager/default-package-manager.d.ts +8 -0
- package/dist/package-manager/default-package-manager.d.ts.map +1 -0
- package/dist/package-manager/default-package-manager.js +7 -0
- package/dist/package-manager/default-package-manager.js.map +1 -0
- package/dist/package-manager/dialect.d.ts +3 -0
- package/dist/package-manager/dialect.d.ts.map +1 -0
- package/dist/package-manager/dialect.js +2 -0
- package/dist/package-manager/dialect.js.map +1 -0
- package/dist/package-manager/dialects.d.ts +5 -0
- package/dist/package-manager/dialects.d.ts.map +1 -0
- package/dist/package-manager/dialects.js +21 -0
- package/dist/package-manager/dialects.js.map +1 -0
- package/dist/package-manager/in-dialect.d.ts +8 -0
- package/dist/package-manager/in-dialect.d.ts.map +1 -0
- package/dist/package-manager/in-dialect.js +10 -0
- package/dist/package-manager/in-dialect.js.map +1 -0
- package/dist/package-manager/lockfiles.d.ts +4 -0
- package/dist/package-manager/lockfiles.d.ts.map +1 -0
- package/dist/package-manager/lockfiles.js +6 -0
- package/dist/package-manager/lockfiles.js.map +1 -0
- package/dist/package-manager/package-manager-of.d.ts +4 -0
- package/dist/package-manager/package-manager-of.d.ts.map +1 -0
- package/dist/package-manager/package-manager-of.js +15 -0
- package/dist/package-manager/package-manager-of.js.map +1 -0
- package/dist/package-manager/package-manager-vars.d.ts +5 -0
- package/dist/package-manager/package-manager-vars.d.ts.map +1 -0
- package/dist/package-manager/package-manager-vars.js +13 -0
- package/dist/package-manager/package-manager-vars.js.map +1 -0
- package/dist/package-manager/pinned-package-managers.d.ts +7 -0
- package/dist/package-manager/pinned-package-managers.d.ts.map +1 -0
- package/dist/package-manager/pinned-package-managers.js +9 -0
- package/dist/package-manager/pinned-package-managers.js.map +1 -0
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +8 -2
- package/dist/run.js.map +1 -1
- package/dist/templating/render.d.ts.map +1 -1
- package/dist/templating/render.js +2 -1
- package/dist/templating/render.js.map +1 -1
- package/dist/templating/rendering.js +1 -1
- package/dist/templating/rendering.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/workspace/workspace.d.ts +5 -1
- package/dist/workspace/workspace.d.ts.map +1 -1
- package/dist/workspace/workspace.js +13 -3
- package/dist/workspace/workspace.js.map +1 -1
- package/package.json +2 -2
- package/templates/architecture/extractable.declared.spec.ts.tpl +6 -6
- package/templates/architecture/extractable.manual.spec.ts.tpl +4 -0
- package/templates/architecture/extractable.tsyringe.spec.ts.tpl +6 -0
- package/templates/docs/asyncapi.json.tpl +12 -0
- package/templates/docs/event-catalog.md +3 -0
- package/templates/docs/openapi.json.tpl +354 -0
- package/templates/init/README.md.tpl +1 -0
- package/templates/init/docker/Dockerfile.tpl +9 -2
- package/templates/init/jest.config.js.tpl +3 -1
- package/templates/init/platform/compose-application.tsyringe.ts.tpl +0 -6
- package/templates/init/platform/database/journal.drizzle.json +5 -0
- package/templates/init/pnpm-workspace.yaml +8 -0
- package/templates/init/rules/infrastructure.md.tpl +2 -2
- package/templates/init/scripts/events.ts.tpl +1 -1
- package/templates/init/scripts/openapi.ts.tpl +1 -1
- package/templates/pipeline/biome.json.tpl +2 -1
- package/templates/pipeline/github/actions/setup/action.yml.tpl +37 -0
- package/templates/pipeline/github/scripts/start-postgres.sh +47 -0
- package/templates/pipeline/github/workflows/ci.yml +68 -110
- package/templates/pipeline/github/workflows/pr-title.yml +1 -5
- package/templates/pipeline/gitlab/{gitlab-ci.yml → gitlab-ci.yml.tpl} +59 -31
- package/templates/pipeline/knip.json.tpl +9 -10
- package/templates/pipeline/package-scripts.json +1 -1
- package/templates/pipeline/vitest.config.ts.tpl +7 -3
package/dist/config/index.d.ts
CHANGED
|
@@ -19,5 +19,5 @@ export { REFERENCE_COVERAGE } from './reference-coverage.js';
|
|
|
19
19
|
export { RELATIONSHIPS } from './relationships.js';
|
|
20
20
|
export { serializeConfig } from './serialize-config.js';
|
|
21
21
|
export { SEVERITIES, type Severity } from './severities.js';
|
|
22
|
-
export { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, HTTP_STACKS, LOGGERS, ORM_STACKS, STYLES, TEST_STACKS, VALIDATION_STACKS, type OrmStack, type Stack, } from './stack.js';
|
|
22
|
+
export { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, HTTP_STACKS, LOGGERS, ORM_STACKS, PACKAGE_MANAGERS, STYLES, TEST_STACKS, VALIDATION_STACKS, type OrmStack, type Stack, } from './stack.js';
|
|
23
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,QAAQ,EACR,eAAe,EACf,WAAW,EACX,OAAO,EACP,UAAU,EACV,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,KAAK,QAAQ,EACb,KAAK,KAAK,GACX,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,QAAQ,EACR,eAAe,EACf,WAAW,EACX,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,iBAAiB,EACjB,KAAK,QAAQ,EACb,KAAK,KAAK,GACX,MAAM,YAAY,CAAC"}
|
package/dist/config/index.js
CHANGED
|
@@ -17,5 +17,5 @@ export { REFERENCE_COVERAGE } from './reference-coverage.js';
|
|
|
17
17
|
export { RELATIONSHIPS } from './relationships.js';
|
|
18
18
|
export { serializeConfig } from './serialize-config.js';
|
|
19
19
|
export { SEVERITIES } from './severities.js';
|
|
20
|
-
export { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, HTTP_STACKS, LOGGERS, ORM_STACKS, STYLES, TEST_STACKS, VALIDATION_STACKS, } from './stack.js';
|
|
20
|
+
export { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, HTTP_STACKS, LOGGERS, ORM_STACKS, PACKAGE_MANAGERS, STYLES, TEST_STACKS, VALIDATION_STACKS, } from './stack.js';
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAiB,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,QAAQ,EACR,eAAe,EACf,WAAW,EACX,OAAO,EACP,UAAU,EACV,MAAM,EACN,WAAW,EACX,iBAAiB,GAGlB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAiB,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,QAAQ,EACR,eAAe,EACf,WAAW,EACX,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,iBAAiB,GAGlB,MAAM,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-stack.d.ts","sourceRoot":"","sources":["../../src/config/parse-stack.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"parse-stack.d.ts","sourceRoot":"","sources":["../../src/config/parse-stack.ts"],"names":[],"mappings":"AAGA,OAAO,EAoBL,KAAK,KAAK,EACX,MAAM,YAAY,CAAC;AAIpB,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAmBhE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CliError } from '../cli-error.js';
|
|
2
2
|
import { CONFIG_FILE } from './config-file.js';
|
|
3
3
|
import { isOneOf } from './is-one-of.js';
|
|
4
|
-
import { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, EVENT_STACKS, HTTP_STACKS, LOGGERS, ORM_STACKS, STYLES, TEST_STACKS, VALIDATION_STACKS, } from './stack.js';
|
|
4
|
+
import { ASSEMBLIES, AUDIT_MODES, AUTHN_STACKS, AUTHZ_STACKS, BROKER_STACKS, CACHE_STACKS, CI_PLATFORMS, DATABASE_STACKS, DI_STACKS, DOCS_UIS, ERROR_REPORTERS, EVENT_STACKS, HTTP_STACKS, LOGGERS, ORM_STACKS, PACKAGE_MANAGERS, STYLES, TEST_STACKS, VALIDATION_STACKS, } from './stack.js';
|
|
5
5
|
export function parseStack(stack) {
|
|
6
6
|
const choose = (key, values, fallback) => pick(values, stack[key], { fallback, key: `stack.${key}` });
|
|
7
7
|
const http = choose('http', HTTP_STACKS, 'express');
|
|
@@ -18,6 +18,7 @@ export function parseStack(stack) {
|
|
|
18
18
|
docsUi: choose('docsUi', DOCS_UIS, http === 'none' ? 'none' : 'swagger'),
|
|
19
19
|
ci: choose('ci', CI_PLATFORMS, 'github'),
|
|
20
20
|
...parseChoices(choose, orm),
|
|
21
|
+
packageManager: choose('packageManager', PACKAGE_MANAGERS, 'npm'),
|
|
21
22
|
};
|
|
22
23
|
}
|
|
23
24
|
function parseChoices(choose, orm) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-stack.js","sourceRoot":"","sources":["../../src/config/parse-stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,SAAS,EACT,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,WAAW,EACX,OAAO,EACP,UAAU,EACV,MAAM,EACN,WAAW,EACX,iBAAiB,GAElB,MAAM,YAAY,CAAC;AAIpB,MAAM,UAAU,UAAU,CAAC,KAA8B;IACvD,MAAM,MAAM,GAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9G,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAEjD,OAAO;QACL,IAAI;QACJ,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,iBAAiB,EAAE,KAAK,CAAC;QAC1D,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;QAClE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;QACpF,GAAG;QACH,QAAQ;QACR,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC;QACxC,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"parse-stack.js","sourceRoot":"","sources":["../../src/config/parse-stack.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,7 +44,7 @@ function optionalKeys(config) {
|
|
|
44
44
|
}
|
|
45
45
|
/** The assembly is a choice of the declared style only: an explicit project has a module file and nothing to assemble. */
|
|
46
46
|
function writtenStack(stack) {
|
|
47
|
-
const { assembly, ...rest } = stack;
|
|
48
|
-
return stack.style === 'declared' ? { ...rest, assembly } : rest;
|
|
47
|
+
const { assembly, packageManager, ...rest } = stack;
|
|
48
|
+
return stack.style === 'declared' ? { ...rest, assembly, packageManager } : { ...rest, packageManager };
|
|
49
49
|
}
|
|
50
50
|
//# sourceMappingURL=serialize-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialize-config.js","sourceRoot":"","sources":["../../src/config/serialize-config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"serialize-config.js","sourceRoot":"","sources":["../../src/config/serialize-config.ts"],"names":[],"mappings":"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"}
|
package/dist/config/stack.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export declare const CACHE_STACKS: readonly ['none', 'redis'];
|
|
|
16
16
|
export declare const AUDIT_MODES: readonly ['on', 'off'];
|
|
17
17
|
export declare const ERROR_REPORTERS: readonly ['none', 'sentry'];
|
|
18
18
|
export declare const LOGGERS: readonly ['stdout', 'pino', 'winston'];
|
|
19
|
+
export declare const PACKAGE_MANAGERS: readonly ['npm', 'pnpm'];
|
|
19
20
|
export type ValidationStack = (typeof VALIDATION_STACKS)[number];
|
|
20
21
|
export type OrmStack = (typeof ORM_STACKS)[number];
|
|
21
22
|
export interface Stack {
|
|
@@ -53,5 +54,11 @@ export interface Stack {
|
|
|
53
54
|
readonly style: (typeof STYLES)[number];
|
|
54
55
|
/** How a declared context reaches the composition root: one generated barrel, or discovery of its role files at startup. */
|
|
55
56
|
readonly assembly: (typeof ASSEMBLIES)[number];
|
|
57
|
+
/**
|
|
58
|
+
* What installs the dependencies and runs the scripts: every command the CLI writes (scripts,
|
|
59
|
+
* pipelines, hooks, Dockerfile, guidance) is in its dialect. A config that says nothing was
|
|
60
|
+
* written before the choice existed: it is npm.
|
|
61
|
+
*/
|
|
62
|
+
readonly packageManager: (typeof PACKAGE_MANAGERS)[number];
|
|
56
63
|
}
|
|
57
64
|
//# sourceMappingURL=stack.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/config/stack.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,YAAI,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC3E,eAAO,MAAM,iBAAiB,YAAI,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,CAAU,CAAC;AAChG,eAAO,MAAM,SAAS,YAAI,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AACjE,eAAO,MAAM,YAAY,YAAI,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AACvE,eAAO,MAAM,UAAU,YAAI,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAC9F,eAAO,MAAM,eAAe,YAAI,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAC3F,eAAO,MAAM,WAAW,YAAI,QAAQ,EAAE,MAAM,CAAU,CAAC;AACvD,eAAO,MAAM,QAAQ,YAAI,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AACxE,eAAO,MAAM,YAAY,YAAI,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC1E,eAAO,MAAM,YAAY,YAAI,KAAK,EAAE,UAAU,EAAE,MAAM,CAAU,CAAC;AACjE,eAAO,MAAM,YAAY,YAAI,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACzE,eAAO,MAAM,aAAa,YAAI,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAC/F,eAAO,MAAM,MAAM,YAAI,UAAU,EAAE,UAAU,CAAU,CAAC;AACxD,eAAO,MAAM,UAAU,YAAI,QAAQ,EAAE,WAAW,CAAU,CAAC;AAC3D,eAAO,MAAM,YAAY,YAAI,MAAM,EAAE,OAAO,CAAU,CAAC;AACvD,eAAO,MAAM,WAAW,YAAI,IAAI,EAAE,KAAK,CAAU,CAAC;AAClD,eAAO,MAAM,eAAe,YAAI,MAAM,EAAE,QAAQ,CAAU,CAAC;AAC3D,eAAO,MAAM,OAAO,YAAI,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/config/stack.ts"],"names":[],"mappings":"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"}
|
package/dist/config/stack.js
CHANGED
|
@@ -16,4 +16,5 @@ export const CACHE_STACKS = ['none', 'redis'];
|
|
|
16
16
|
export const AUDIT_MODES = ['on', 'off'];
|
|
17
17
|
export const ERROR_REPORTERS = ['none', 'sentry'];
|
|
18
18
|
export const LOGGERS = ['stdout', 'pino', 'winston'];
|
|
19
|
+
export const PACKAGE_MANAGERS = ['npm', 'pnpm'];
|
|
19
20
|
//# sourceMappingURL=stack.js.map
|
package/dist/config/stack.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stack.js","sourceRoot":"","sources":["../../src/config/stack.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,CAAU,CAAC;AAChG,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AACvE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAC9F,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAU,CAAC;AACvD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC1E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAU,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAC/F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAU,CAAC;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AACvD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,KAAK,CAAU,CAAC;AAClD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAU,CAAC;AAC3D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"stack.js","sourceRoot":"","sources":["../../src/config/stack.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,CAAU,CAAC;AAChG,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;AACvE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAC9F,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAU,CAAC;AACvD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AACxE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAC1E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAU,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AAC/F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAU,CAAC;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AACvD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,KAAK,CAAU,CAAC;AAClD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAU,CAAC;AAC3D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAU,CAAC;AAC9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,CAAU,CAAC"}
|
|
@@ -17,11 +17,13 @@ export function cruiseConfiguration(config) {
|
|
|
17
17
|
* its tools next to the native compiler: it tells type-only imports apart. An import alias is
|
|
18
18
|
* resolved from the `paths` of tsconfig.json, which name the sources: without `tsConfig` the
|
|
19
19
|
* graph would hold an unresolved module for each alias and no boundary rule would see the import.
|
|
20
|
+
* A `generated` directory (the client Prisma writes) is a build product: an import of it is in
|
|
21
|
+
* the graph, what it imports in turn is not the project's to answer for.
|
|
20
22
|
*/
|
|
21
23
|
function cruiseOptions() {
|
|
22
24
|
return {
|
|
23
25
|
parser: 'tsc',
|
|
24
|
-
doNotFollow: { path: ['node_modules'] },
|
|
26
|
+
doNotFollow: { path: ['node_modules', '^generated/'] },
|
|
25
27
|
exclude: { path: ['^dist/', '^coverage/'] },
|
|
26
28
|
tsPreCompilationDeps: true,
|
|
27
29
|
tsConfig: { fileName: 'tsconfig.json' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cruise-configuration.js","sourceRoot":"","sources":["../../src/depcruise/cruise-configuration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAO9C;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,OAAO;QACL,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACpF,OAAO,EAAE,aAAa,EAAE;KACzB,CAAC;AACJ,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"cruise-configuration.js","sourceRoot":"","sources":["../../src/depcruise/cruise-configuration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAO9C;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,OAAO;QACL,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACpF,OAAO,EAAE,aAAa,EAAE;KACzB,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa;IACpB,OAAO;QACL,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE;QACtD,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE;QAC3C,oBAAoB,EAAE,IAAI;QAC1B,QAAQ,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;QACvC,sBAAsB,EAAE;YACtB,aAAa,EAAE,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;YACtD,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;SACnD;QACD,sBAAsB,EAAE,IAAI;QAC5B,eAAe,EAAE,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,EAAE;KACtD,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply-wiring.js","sourceRoot":"","sources":["../../src/generate/apply-wiring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlE,wEAAwE;AACxE,MAAM,UAAU,WAAW,CAAC,EAAa,EAAE,IAAY,EAAE,MAAc;IACrE,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,gDAAgD,CAAC,CAAC;QAEjE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,QAAQ,CAAC;IAEvB,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"apply-wiring.js","sourceRoot":"","sources":["../../src/generate/apply-wiring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlE,wEAAwE;AACxE,MAAM,UAAU,WAAW,CAAC,EAAa,EAAE,IAAY,EAAE,MAAc;IACrE,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,gDAAgD,CAAC,CAAC;QAEjE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,QAAQ,CAAC;IAEvB,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC7D,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAEpD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,uBAAuB,MAAM,gCAAgC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjG,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter-kind.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/adapter-kind.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter-kind.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/adapter-kind.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAYvC,eAAO,MAAM,WAAW,EAAE,IAiCzB,CAAC"}
|
|
@@ -8,6 +8,7 @@ import { openScope } from '../open-scope.js';
|
|
|
8
8
|
import { requireFile } from '../require-file.js';
|
|
9
9
|
import { vars } from '../vars.js';
|
|
10
10
|
import { wire } from '../wire.js';
|
|
11
|
+
import { writeOwnPolicy } from './write-own-policy.js';
|
|
11
12
|
const ADAPTER_KINDS = ['external', 'gateway'];
|
|
12
13
|
export const adapterKind = {
|
|
13
14
|
name: 'adapter',
|
|
@@ -15,7 +16,7 @@ export const adapterKind = {
|
|
|
15
16
|
usage: 'adapter <context> <Port> [--kind external|gateway] [--decorators]',
|
|
16
17
|
summary: 'An infrastructure adapter of an existing port towards an outside system, its spec and its registration with a retry and timeout policy; with --decorators its outbound method carries the policy itself.',
|
|
17
18
|
positionals: ['context', 'Port'],
|
|
18
|
-
writesShared:
|
|
19
|
+
writesShared: true,
|
|
19
20
|
run: (request) => {
|
|
20
21
|
const scope = openScope(request);
|
|
21
22
|
const name = label(scope, request.args[1] ?? '', { what: 'port', strip: ['port'] });
|
|
@@ -71,12 +72,13 @@ function refuseSecondAdapter(scope, name) {
|
|
|
71
72
|
/**
|
|
72
73
|
* A declared adapter binds itself. Otherwise it is bound by the generator where the module
|
|
73
74
|
* declares its bindings, and said in a note where the wiring is by hand or the port already has
|
|
74
|
-
* an adapter.
|
|
75
|
+
* an adapter. The first adapter that names `ownPolicy` brings the helper to the platform.
|
|
75
76
|
*/
|
|
76
77
|
function register(scope, context, { port, kind, decorated }) {
|
|
77
78
|
const module = `${scope.context.kebab}.module.ts`;
|
|
78
79
|
const about = `{ kind: '${kind}', context: '${scope.context.kebab}' }`;
|
|
79
80
|
if (isDeclared(scope.config)) {
|
|
81
|
+
writeOwnPolicy(scope, context);
|
|
80
82
|
return;
|
|
81
83
|
}
|
|
82
84
|
if (isBound(scope, port)) {
|
|
@@ -84,6 +86,7 @@ function register(scope, context, { port, kind, decorated }) {
|
|
|
84
86
|
}
|
|
85
87
|
else if (scope.config.stack.di === 'tsyringe') {
|
|
86
88
|
wire(scope, 'adapter', context);
|
|
89
|
+
writeOwnPolicy(scope, context);
|
|
87
90
|
}
|
|
88
91
|
else {
|
|
89
92
|
const wrapped = decorated
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter-kind.js","sourceRoot":"","sources":["../../../src/generate/kinds/adapter-kind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter-kind.js","sourceRoot":"","sources":["../../../src/generate/kinds/adapter-kind.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Config } from '../../config/index.js';
|
|
2
|
+
import type { Workspace } from '../../workspace/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* What knip enters a context by, told to it with the first context: before one exists the
|
|
5
|
+
* patterns match nothing, which knip reports. A module file where the wiring is written; under
|
|
6
|
+
* discovery the role files nothing imports (handlers, publishers, jobs, adapters...), in one
|
|
7
|
+
* pattern with the published language, which every context has from its first minute.
|
|
8
|
+
*/
|
|
9
|
+
export declare function declareContextEntries(ws: Workspace, config: Config): void;
|
|
10
|
+
//# sourceMappingURL=declare-context-entries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declare-context-entries.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/declare-context-entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAO1D;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAYzE"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { DISCOVERED_SUFFIXES } from '../../declared/index.js';
|
|
2
|
+
import { isDeclared } from '../is-declared.js';
|
|
3
|
+
import { editJson } from './extraction/edit-json.js';
|
|
4
|
+
const KNIP_FILE = 'knip.json';
|
|
5
|
+
const PUBLISHED_LANGUAGE = 'published-language/index';
|
|
6
|
+
/**
|
|
7
|
+
* What knip enters a context by, told to it with the first context: before one exists the
|
|
8
|
+
* patterns match nothing, which knip reports. A module file where the wiring is written; under
|
|
9
|
+
* discovery the role files nothing imports (handlers, publishers, jobs, adapters...), in one
|
|
10
|
+
* pattern with the published language, which every context has from its first minute.
|
|
11
|
+
*/
|
|
12
|
+
export function declareContextEntries(ws, config) {
|
|
13
|
+
if (ws.read(KNIP_FILE) === undefined) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
editJson(ws, KNIP_FILE, (knip) => {
|
|
17
|
+
const entries = Array.isArray(knip['entry']) ? knip['entry'] : [];
|
|
18
|
+
if (!entries.some((entry) => typeof entry === 'string' && entry.includes(PUBLISHED_LANGUAGE))) {
|
|
19
|
+
knip['entry'] = [...contextEntries(config), ...entries];
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function contextEntries(config) {
|
|
24
|
+
const contexts = `${config.contextsDir}/*`;
|
|
25
|
+
if (config.stack.assembly === 'discovery' && isDeclared(config)) {
|
|
26
|
+
const roles = `{application,infrastructure}/**/*.{${DISCOVERED_SUFFIXES.join(',')}}`;
|
|
27
|
+
return [`${contexts}/{${PUBLISHED_LANGUAGE},${roles}}.ts`];
|
|
28
|
+
}
|
|
29
|
+
return [...(isDeclared(config) ? [] : [`${contexts}/*.module.ts`]), `${contexts}/${PUBLISHED_LANGUAGE}.ts`];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=declare-context-entries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declare-context-entries.js","sourceRoot":"","sources":["../../../src/generate/kinds/declare-context-entries.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,MAAM,SAAS,GAAG,WAAW,CAAC;AAC9B,MAAM,kBAAkB,GAAG,0BAA0B,CAAC;AAEtD;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAa,EAAE,MAAc;IACjE,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO;IACT,CAAC;IAED,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,OAAO,GAAc,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC;YAC9F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC;IAE3C,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAChE,MAAM,KAAK,GAAG,sCAAsC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QAErF,OAAO,CAAC,GAAG,QAAQ,KAAK,kBAAkB,IAAI,KAAK,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,cAAc,CAAC,CAAC,EAAE,GAAG,QAAQ,IAAI,kBAAkB,KAAK,CAAC,CAAC;AAC9G,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-context.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/generate-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,MAAM,EAEZ,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-context.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/generate-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,MAAM,EAEZ,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAI3D,wFAAwF;AACxF,wBAAgB,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CAyB9F"}
|
|
@@ -2,6 +2,7 @@ import { addContextToConfigText, CLASSIFICATIONS, CONFIG_FILE, isOneOf, } from '
|
|
|
2
2
|
import { refreshContextDoc } from '../../docs/refresh-context-doc.js';
|
|
3
3
|
import { CliError } from '../../cli-error.js';
|
|
4
4
|
import { parseContextName } from '../../naming/index.js';
|
|
5
|
+
import { declareContextEntries } from './declare-context-entries.js';
|
|
5
6
|
import { writeContextFiles } from './write-context-files.js';
|
|
6
7
|
/** Shared by `generate context` and `init`, so both create exactly the same context. */
|
|
7
8
|
export function generateContext(ws, config, request) {
|
|
@@ -15,6 +16,7 @@ export function generateContext(ws, config, request) {
|
|
|
15
16
|
declareInConfig(ws, context, entry);
|
|
16
17
|
}
|
|
17
18
|
writeContextFiles(ws, { config: next, context, request });
|
|
19
|
+
declareContextEntries(ws, next);
|
|
18
20
|
// An upstream gains a downstream line in its own CONTEXT.md.
|
|
19
21
|
for (const upstream of entry.upstreams) {
|
|
20
22
|
refreshContextDoc(ws, next, upstream.context);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-context.js","sourceRoot":"","sources":["../../../src/generate/kinds/generate-context.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,WAAW,EACX,OAAO,GAGR,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAa,MAAM,uBAAuB,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,wFAAwF;AACxF,MAAM,UAAU,eAAe,CAAC,EAAa,EAAE,MAAc,EAAE,OAAuB;IACpF,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAE5E,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAEzD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,QAAQ,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACpH,MAAM,IAAI,GAAW,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;IAE7F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,iBAAiB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-context.js","sourceRoot":"","sources":["../../../src/generate/kinds/generate-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Config } from '../../config/index.js';
|
|
2
|
+
import type { Workspace } from '../../workspace/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* What turns the declarations of a context into its module (`contextModule`, or `discoverContext`
|
|
5
|
+
* under discovery) is imported by the file that assembles the contexts with the first of them:
|
|
6
|
+
* before it nothing names the function, and the linter reports an import nobody uses.
|
|
7
|
+
*/
|
|
8
|
+
export declare function importAssembler(ws: Workspace, config: Config, file: string): void;
|
|
9
|
+
//# sourceMappingURL=import-assembler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-assembler.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/import-assembler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAM1D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAgBjF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { applyWiring } from '../apply-wiring.js';
|
|
2
|
+
const DI = '@ddd-ts-kit/di';
|
|
3
|
+
const DI_IMPORT = /import \{(\s*)([^}]*)\} from '@ddd-ts-kit\/di';\n/;
|
|
4
|
+
/**
|
|
5
|
+
* What turns the declarations of a context into its module (`contextModule`, or `discoverContext`
|
|
6
|
+
* under discovery) is imported by the file that assembles the contexts with the first of them:
|
|
7
|
+
* before it nothing names the function, and the linter reports an import nobody uses.
|
|
8
|
+
*/
|
|
9
|
+
export function importAssembler(ws, config, file) {
|
|
10
|
+
const content = ws.read(file);
|
|
11
|
+
const discovered = config.stack.assembly === 'discovery';
|
|
12
|
+
const name = discovered ? 'discoverContext' : 'contextModule';
|
|
13
|
+
if (content === undefined || new RegExp(`\\b${name}\\b`).test(content)) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
if (!DI_IMPORT.test(content)) {
|
|
17
|
+
applyWiring(ws, file, `@@imports\nimport { ${name} } from '${discovered ? `${DI}/discovery` : DI}';\n`);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
ws.update(file, discovered ? followedByDiscovery(content) : namedFirst(content, name));
|
|
21
|
+
}
|
|
22
|
+
/** The name joins the statement that already imports from the package, first, on a line of its own when the others are. */
|
|
23
|
+
function namedFirst(content, name) {
|
|
24
|
+
return content.replace(DI_IMPORT, (_statement, gap, names) => `import {${gap}${name},${gap}${names}} from '${DI}';\n`);
|
|
25
|
+
}
|
|
26
|
+
function followedByDiscovery(content) {
|
|
27
|
+
return content.replace(DI_IMPORT, (statement) => `${statement}import { discoverContext } from '${DI}/discovery';\n`);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=import-assembler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"import-assembler.js","sourceRoot":"","sources":["../../../src/generate/kinds/import-assembler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,EAAE,GAAG,gBAAgB,CAAC;AAC5B,MAAM,SAAS,GAAG,mDAAmD,CAAC;AAEtE;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,EAAa,EAAE,MAAc,EAAE,IAAY;IACzE,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,WAAW,CAAC;IACzD,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,CAAC;IAE9D,IAAI,OAAO,KAAK,SAAS,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvE,OAAO;IACT,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,uBAAuB,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAExG,OAAO;IACT,CAAC;IAED,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,2HAA2H;AAC3H,SAAS,UAAU,CAAC,OAAe,EAAE,IAAY;IAC/C,OAAO,OAAO,CAAC,OAAO,CACpB,SAAS,EACT,CAAC,UAAU,EAAE,GAAW,EAAE,KAAa,EAAE,EAAE,CAAC,WAAW,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,KAAK,WAAW,EAAE,MAAM,CACpG,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAe;IAC1C,OAAO,OAAO,CAAC,OAAO,CACpB,SAAS,EACT,CAAC,SAAiB,EAAE,EAAE,CAAC,GAAG,SAAS,oCAAoC,EAAE,gBAAgB,CAC1F,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-context-files.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/write-context-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAO1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"write-context-files.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/write-context-files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAGlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAO1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAY3D,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC;AAED,8GAA8G;AAC9G,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAyBxE"}
|
|
@@ -6,6 +6,7 @@ import { contextVars } from '../context-vars.js';
|
|
|
6
6
|
import { permissionsFile } from '../permissions-file.js';
|
|
7
7
|
import { relativeTo } from '../relative-to.js';
|
|
8
8
|
import { wiringFamily } from '../wiring-family.js';
|
|
9
|
+
import { importAssembler } from './import-assembler.js';
|
|
9
10
|
const GLOSSARY_TODO = 'TODO(domain): define the ubiquitous language first: one row per term the domain experts use here, with the meaning it has in this context only. Every class, method and event is then named after these terms.';
|
|
10
11
|
const PURPOSE_TODO = 'TODO(domain): say in two sentences which business capability this context owns and for whom; the first sentence is reused in the context map.';
|
|
11
12
|
const PROOF = 'test/architecture/extractable.spec.ts';
|
|
@@ -23,8 +24,15 @@ export function writeContextFiles(ws, plan) {
|
|
|
23
24
|
if (!ws.exists(PROOF)) {
|
|
24
25
|
ws.create(PROOF, renderTemplate(`architecture/extractable.${family}.spec.ts.tpl`, vars));
|
|
25
26
|
}
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
for (const [file, wiring] of [
|
|
28
|
+
[PROOF, `architecture/wiring.${family}.tpl`],
|
|
29
|
+
[`${config.platformDir}/${COMPOSITION}`, `context/wiring.${family}.tpl`],
|
|
30
|
+
]) {
|
|
31
|
+
if (family === 'declared') {
|
|
32
|
+
importAssembler(ws, config, file);
|
|
33
|
+
}
|
|
34
|
+
applyWiring(ws, file, renderTemplate(wiring, vars));
|
|
35
|
+
}
|
|
28
36
|
}
|
|
29
37
|
function planVars({ config, context, request }) {
|
|
30
38
|
const terms = request.terms ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-context-files.js","sourceRoot":"","sources":["../../../src/generate/kinds/write-context-files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"write-context-files.js","sourceRoot":"","sources":["../../../src/generate/kinds/write-context-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RenderContext } from '../../templating/index.js';
|
|
2
|
+
import type { Scope } from '../scope.js';
|
|
3
|
+
/**
|
|
4
|
+
* The helper an adapter states its own policy with joins the platform with the first adapter
|
|
5
|
+
* that names it: a project without one would hold a file nothing imports, which its dead-code
|
|
6
|
+
* gate reports. Wired by hand, the platform itself uses the helper, and `init` wrote it.
|
|
7
|
+
*/
|
|
8
|
+
export declare function writeOwnPolicy(scope: Scope, context: RenderContext): void;
|
|
9
|
+
//# sourceMappingURL=write-own-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-own-policy.d.ts","sourceRoot":"","sources":["../../../src/generate/kinds/write-own-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAMzE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { renderTemplate } from '../../templating/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* The helper an adapter states its own policy with joins the platform with the first adapter
|
|
4
|
+
* that names it: a project without one would hold a file nothing imports, which its dead-code
|
|
5
|
+
* gate reports. Wired by hand, the platform itself uses the helper, and `init` wrote it.
|
|
6
|
+
*/
|
|
7
|
+
export function writeOwnPolicy(scope, context) {
|
|
8
|
+
const file = `${scope.config.platformDir}/resilience/own-policy.ts`;
|
|
9
|
+
if (!scope.ws.exists(file)) {
|
|
10
|
+
scope.ws.create(file, renderTemplate('init/platform/resilience/own-policy.ts.tpl', context));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=write-own-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-own-policy.js","sourceRoot":"","sources":["../../../src/generate/kinds/write-own-policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAY,EAAE,OAAsB;IACjE,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,2BAA2B,CAAC;IAEpE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,4CAA4C,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-writes.d.ts","sourceRoot":"","sources":["../../src/generate/shared-writes.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,WAAW,WAAW;IAC1B,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wFAAwF;IACxF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAOD,uJAAuJ;AACvJ,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"shared-writes.d.ts","sourceRoot":"","sources":["../../src/generate/shared-writes.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,MAAM,WAAW,WAAW;IAC1B,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wFAAwF;IACxF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAOD,uJAAuJ;AACvJ,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CA2D/D,CAAC"}
|
|
@@ -11,6 +11,7 @@ export const SHARED_WRITES = {
|
|
|
11
11
|
'the CONTEXT.md of each upstream',
|
|
12
12
|
'docs/context-map.md',
|
|
13
13
|
'.dependency-cruiser.cjs',
|
|
14
|
+
'knip.json (the first context)',
|
|
14
15
|
],
|
|
15
16
|
},
|
|
16
17
|
repository: { files: STORAGE, when: STORED },
|
|
@@ -23,6 +24,11 @@ export const SHARED_WRITES = {
|
|
|
23
24
|
files: ['the audited events registry (<platformDir>/audit/audited-events.ts)', 'docs/context-map.md'],
|
|
24
25
|
when: 'the audit trail is wired, or the event type is new',
|
|
25
26
|
},
|
|
27
|
+
adapter: {
|
|
28
|
+
files: ['<platformDir>/resilience/own-policy.ts'],
|
|
29
|
+
when: 'the adapter is the first of a project wired on tsyringe to state its own policy (the helper joins the platform)',
|
|
30
|
+
worker: 'once the project has its first adapter',
|
|
31
|
+
},
|
|
26
32
|
job: { files: ['<platformDir>/job-settings.ts', 'the grant of its system actor (<platformDir>/auth/)'] },
|
|
27
33
|
policy: {
|
|
28
34
|
files: ['the access policies registry (<platformDir>/auth/access-policies.ts)'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-writes.js","sourceRoot":"","sources":["../../src/generate/shared-writes.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,GAAG,CAAC,qEAAqE,EAAE,sBAAsB,CAAC,CAAC;AAEhH,MAAM,MAAM,GACV,6LAA6L,CAAC;AAEhM,uJAAuJ;AACvJ,MAAM,CAAC,MAAM,aAAa,GAA0C;IAClE,OAAO,EAAE;QACP,KAAK,EAAE;YACL,wBAAwB;YACxB,6DAA6D;YAC7D,uCAAuC;YACvC,8DAA8D;YAC9D,iCAAiC;YACjC,qBAAqB;YACrB,yBAAyB;
|
|
1
|
+
{"version":3,"file":"shared-writes.js","sourceRoot":"","sources":["../../src/generate/shared-writes.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,GAAG,CAAC,qEAAqE,EAAE,sBAAsB,CAAC,CAAC;AAEhH,MAAM,MAAM,GACV,6LAA6L,CAAC;AAEhM,uJAAuJ;AACvJ,MAAM,CAAC,MAAM,aAAa,GAA0C;IAClE,OAAO,EAAE;QACP,KAAK,EAAE;YACL,wBAAwB;YACxB,6DAA6D;YAC7D,uCAAuC;YACvC,8DAA8D;YAC9D,iCAAiC;YACjC,qBAAqB;YACrB,yBAAyB;YACzB,+BAA+B;SAChC;KACF;IACD,UAAU,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5C,OAAO,EAAE;QACP,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,+FAA+F,MAAM,EAAE;QAC7G,MAAM,EAAE,yCAAyC;KAClD;IACD,mBAAmB,EAAE;QACnB,KAAK,EAAE,CAAC,qEAAqE,EAAE,qBAAqB,CAAC;QACrG,IAAI,EAAE,oDAAoD;KAC3D;IACD,OAAO,EAAE;QACP,KAAK,EAAE,CAAC,wCAAwC,CAAC;QACjD,IAAI,EAAE,iHAAiH;QACvH,MAAM,EAAE,wCAAwC;KACjD;IACD,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,+BAA+B,EAAE,qDAAqD,CAAC,EAAE;IACxG,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,sEAAsE,CAAC;QAC/E,IAAI,EAAE,yBAAyB;KAChC;IACD,OAAO,EAAE;QACP,KAAK,EAAE;YACL,2EAA2E;YAC3E,+EAA+E;SAChF;KACF;IACD,OAAO,EAAE;QACP,KAAK,EAAE;YACL,qCAAqC;YACrC,cAAc;YACd,WAAW;YACX,wBAAwB;YACxB,oBAAoB;YACpB,qBAAqB;SACtB;KACF;IACD,MAAM,EAAE;QACN,KAAK,EAAE;YACL,kCAAkC;YAClC,cAAc;YACd,wBAAwB;YACxB,oBAAoB;YACpB,qCAAqC;SACtC;KACF;IACD,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,2CAA2C,CAAC,EAAE;CAC3E,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Config } from '../config/index.js';
|
|
2
|
+
import type { Workspace } from '../workspace/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* `init` tells knip not to report the validation packages of a project that validates nothing
|
|
5
|
+
* yet. Once a context imports the package, the note is removed: left there, knip would ask for
|
|
6
|
+
* it, and the packages are reported again the day nothing uses them.
|
|
7
|
+
*/
|
|
8
|
+
export declare function stopIgnoringValidation(ws: Workspace, config: Config): void;
|
|
9
|
+
//# sourceMappingURL=stop-ignoring-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stop-ignoring-validation.d.ts","sourceRoot":"","sources":["../../src/generate/stop-ignoring-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOvD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAc1E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { validationDependencies } from '../init/validation-dependencies.js';
|
|
2
|
+
import { filesUnder } from './files-under.js';
|
|
3
|
+
import { editJson } from './kinds/extraction/edit-json.js';
|
|
4
|
+
const KNIP_FILE = 'knip.json';
|
|
5
|
+
const IGNORED = 'ignoreDependencies';
|
|
6
|
+
/**
|
|
7
|
+
* `init` tells knip not to report the validation packages of a project that validates nothing
|
|
8
|
+
* yet. Once a context imports the package, the note is removed: left there, knip would ask for
|
|
9
|
+
* it, and the packages are reported again the day nothing uses them.
|
|
10
|
+
*/
|
|
11
|
+
export function stopIgnoringValidation(ws, config) {
|
|
12
|
+
const waiting = validationDependencies(config);
|
|
13
|
+
const [validation = ''] = waiting;
|
|
14
|
+
if (!ignored(ws).includes(validation) || !imports(ws, config, validation)) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
editJson(ws, KNIP_FILE, (knip) => {
|
|
18
|
+
const kept = ignored(ws).filter((name) => !waiting.includes(name));
|
|
19
|
+
// A key without a value is left out of the file.
|
|
20
|
+
knip[IGNORED] = kept.length > 0 ? kept : undefined;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function ignored(ws) {
|
|
24
|
+
const text = ws.read(KNIP_FILE);
|
|
25
|
+
const knip = text === undefined ? {} : JSON.parse(text);
|
|
26
|
+
const names = typeof knip === 'object' && knip !== null ? Reflect.get(knip, IGNORED) : undefined;
|
|
27
|
+
return Array.isArray(names) ? names.filter((name) => typeof name === 'string') : [];
|
|
28
|
+
}
|
|
29
|
+
/** The package itself or one of its entries (`@ddd-ts-kit/validation/zod`). */
|
|
30
|
+
function imports(ws, config, name) {
|
|
31
|
+
const reads = (text) => text.includes(`from '${name}'`) || text.includes(`from '${name}/`);
|
|
32
|
+
return filesUnder(ws, config.contextsDir)
|
|
33
|
+
.filter((file) => file.endsWith('.ts'))
|
|
34
|
+
.some((file) => reads(ws.read(`${config.contextsDir}/${file}`) ?? ''));
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=stop-ignoring-validation.js.map
|