@devbie/newbie-cli 0.1.0-stage.1 → 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 (109) hide show
  1. package/README.md +244 -0
  2. package/dist/assemble/assets.js.map +1 -1
  3. package/dist/assemble/dependencies.js.map +1 -1
  4. package/dist/assemble/env.js.map +1 -1
  5. package/dist/assemble/module-graph.d.ts +14 -0
  6. package/dist/assemble/module-graph.js +51 -0
  7. package/dist/assemble/module-graph.js.map +1 -0
  8. package/dist/assemble/modules-copy.js +1 -3
  9. package/dist/assemble/modules-copy.js.map +1 -1
  10. package/dist/assemble/modules.js +2 -6
  11. package/dist/assemble/modules.js.map +1 -1
  12. package/dist/assemble/pipeline.d.ts +5 -0
  13. package/dist/assemble/pipeline.js +59 -13
  14. package/dist/assemble/pipeline.js.map +1 -1
  15. package/dist/assemble/schema.d.ts +1 -1
  16. package/dist/assemble/schema.js +28 -15
  17. package/dist/assemble/schema.js.map +1 -1
  18. package/dist/commands/agent.d.ts +5 -1
  19. package/dist/commands/agent.js +214 -7
  20. package/dist/commands/agent.js.map +1 -1
  21. package/dist/commands/apply.d.ts +1 -0
  22. package/dist/commands/apply.js +1 -0
  23. package/dist/commands/apply.js.map +1 -1
  24. package/dist/commands/config.js +39 -13
  25. package/dist/commands/config.js.map +1 -1
  26. package/dist/commands/create.js +1 -7
  27. package/dist/commands/create.js.map +1 -1
  28. package/dist/commands/default.js +1 -2
  29. package/dist/commands/default.js.map +1 -1
  30. package/dist/commands/dev/lint.d.ts +3 -0
  31. package/dist/commands/dev/lint.js +82 -0
  32. package/dist/commands/dev/lint.js.map +1 -0
  33. package/dist/commands/doctor.js +23 -14
  34. package/dist/commands/doctor.js.map +1 -1
  35. package/dist/commands/install.js +4 -1
  36. package/dist/commands/install.js.map +1 -1
  37. package/dist/commands/status.d.ts +27 -0
  38. package/dist/commands/status.js +9 -8
  39. package/dist/commands/status.js.map +1 -1
  40. package/dist/commands/update-template.js.map +1 -1
  41. package/dist/commands/update.d.ts +2 -0
  42. package/dist/commands/update.js +51 -6
  43. package/dist/commands/update.js.map +1 -1
  44. package/dist/commands/watch.d.ts +5 -0
  45. package/dist/commands/watch.js +128 -0
  46. package/dist/commands/watch.js.map +1 -0
  47. package/dist/constants/paths.js +1 -4
  48. package/dist/constants/paths.js.map +1 -1
  49. package/dist/core/assets.js.map +1 -1
  50. package/dist/core/dependency-plan.js +1 -4
  51. package/dist/core/dependency-plan.js.map +1 -1
  52. package/dist/core/drift.js.map +1 -1
  53. package/dist/core/env-file.js +2 -5
  54. package/dist/core/env-file.js.map +1 -1
  55. package/dist/core/layer-lint.d.ts +15 -0
  56. package/dist/core/layer-lint.js +165 -0
  57. package/dist/core/layer-lint.js.map +1 -0
  58. package/dist/core/module-closure.d.ts +18 -0
  59. package/dist/core/module-closure.js +71 -0
  60. package/dist/core/module-closure.js.map +1 -0
  61. package/dist/core/module-manifest.d.ts +4 -0
  62. package/dist/core/module-manifest.js +24 -0
  63. package/dist/core/module-manifest.js.map +1 -1
  64. package/dist/core/modules-state.js +3 -9
  65. package/dist/core/modules-state.js.map +1 -1
  66. package/dist/core/prisma-schema.d.ts +1 -0
  67. package/dist/core/prisma-schema.js +16 -4
  68. package/dist/core/prisma-schema.js.map +1 -1
  69. package/dist/core/semver.js +1 -3
  70. package/dist/core/semver.js.map +1 -1
  71. package/dist/core/template-sync.js +1 -2
  72. package/dist/core/template-sync.js.map +1 -1
  73. package/dist/core/unified-diff.js +1 -4
  74. package/dist/core/unified-diff.js.map +1 -1
  75. package/dist/index.js +71 -61
  76. package/dist/index.js.map +1 -1
  77. package/dist/lib/check.js.map +1 -1
  78. package/dist/lib/cli-runner.d.ts +1 -0
  79. package/dist/lib/cli-runner.js +26 -0
  80. package/dist/lib/cli-runner.js.map +1 -0
  81. package/dist/lib/drift.js +1 -8
  82. package/dist/lib/drift.js.map +1 -1
  83. package/dist/lib/exec.js.map +1 -1
  84. package/dist/lib/fs-util.js.map +1 -1
  85. package/dist/lib/issues.js.map +1 -1
  86. package/dist/lib/loading.js.map +1 -1
  87. package/dist/lib/module-cli.d.ts +13 -0
  88. package/dist/lib/module-cli.js +76 -0
  89. package/dist/lib/module-cli.js.map +1 -0
  90. package/dist/lib/module-install.js.map +1 -1
  91. package/dist/lib/modules-state.js.map +1 -1
  92. package/dist/lib/registry.js +1 -3
  93. package/dist/lib/registry.js.map +1 -1
  94. package/dist/lib/version.d.ts +1 -0
  95. package/dist/lib/version.js +5 -0
  96. package/dist/lib/version.js.map +1 -0
  97. package/dist/public.d.ts +9 -0
  98. package/dist/public.js +21 -0
  99. package/dist/public.js.map +1 -0
  100. package/package.json +7 -5
  101. package/dist/commands/check.d.ts +0 -2
  102. package/dist/commands/check.js +0 -37
  103. package/dist/commands/check.js.map +0 -1
  104. package/dist/commands/env.d.ts +0 -7
  105. package/dist/commands/env.js +0 -324
  106. package/dist/commands/env.js.map +0 -1
  107. package/dist/lib/env-tool-config.d.ts +0 -17
  108. package/dist/lib/env-tool-config.js +0 -32
  109. package/dist/lib/env-tool-config.js.map +0 -1
package/README.md ADDED
@@ -0,0 +1,244 @@
1
+ # @devbie/newbie-cli
2
+
3
+ [![npm version](https://img.shields.io/npm/v/@devbie/newbie-cli?style=flat-square)](https://www.npmjs.com/package/@devbie/newbie-cli)
4
+ [![license](https://img.shields.io/npm/l/@devbie/newbie-cli?style=flat-square)](https://github.com/worldzhy/newbie/blob/dev/LICENSE)
5
+ [![node](https://img.shields.io/node/v/@devbie/newbie-cli?style=flat-square)](https://www.npmjs.com/package/@devbie/newbie-cli)
6
+
7
+ Command-line tool for the [Newbie](https://www.npmjs.com/package/@devbie/newbie)
8
+ backend framework. Scaffold new projects, install modules from the
9
+ newbie-modules registry, reconcile module copies and project wiring, and load
10
+ module-bundled command namespaces (e.g. `newbie secrets`) declared by the
11
+ installed modules.
12
+
13
+ ## Requirements
14
+
15
+ - Node.js `>= 20`
16
+
17
+ ## Installation
18
+
19
+ Run it directly with `npx`:
20
+
21
+ ```bash
22
+ npx @devbie/newbie-cli create my-app
23
+ ```
24
+
25
+ Or install it globally:
26
+
27
+ ```bash
28
+ npm install -g @devbie/newbie-cli
29
+ newbie --help
30
+ ```
31
+
32
+ Projects scaffolded from the newbie template already include `@devbie/newbie-cli`
33
+ as a dev dependency, so inside those projects you can use `npx newbie …` (or
34
+ `npm run newbie -- …`).
35
+
36
+ ## Quick start
37
+
38
+ ```bash
39
+ # Scaffold a new project from the basic template
40
+ npx @devbie/newbie-cli create my-app
41
+
42
+ cd my-app
43
+ npm install
44
+
45
+ # Enable/disable modules through an interactive flow (default command)
46
+ npx newbie
47
+
48
+ # Reconcile project files with the enabled module list
49
+ npx newbie install
50
+ ```
51
+
52
+ ## Commands
53
+
54
+ ### Project creation
55
+
56
+ #### `newbie create <name>`
57
+
58
+ Scaffold a new project from the basic newbie template.
59
+
60
+ | Option | Description |
61
+ | ----------------------- | ----------------------------------------------------------------- |
62
+ | `--template-path <dir>` | Use a local template directory instead of cloning the repository. |
63
+ | `--template-ref <ref>` | Git ref of the newbie repository to clone the template from. |
64
+ | `--no-git-init` | Skip `git init` in the new project. |
65
+
66
+ ### Module management
67
+
68
+ #### `newbie` (default, interactive)
69
+
70
+ Interactive module enable/disable flow. Running `newbie` with no command opens
71
+ the interactive selector.
72
+
73
+ #### `newbie install`
74
+
75
+ Reconcile the project with `modules.json`: copy missing modules, remove extra
76
+ ones, and regenerate wiring (Prisma schema, dependencies, environment
77
+ requirements).
78
+
79
+ | Option | Description |
80
+ | ----------- | -------------------------- |
81
+ | `-y, --yes` | Skip confirmation prompts. |
82
+
83
+ #### `newbie config`
84
+
85
+ View or edit the enabled-module list in `modules.json` without touching project
86
+ files.
87
+
88
+ | Option | Description |
89
+ | ----------------------- | -------------------------------------------- |
90
+ | `--add <modules...>` | Enable module(s), space or comma separated. |
91
+ | `--remove <modules...>` | Disable module(s), space or comma separated. |
92
+ | `--list` | Print the current configuration. |
93
+
94
+ #### `newbie update`
95
+
96
+ Update enabled module copies to the registry HEAD commit. Local drift blocks the
97
+ update unless `--force` is used.
98
+
99
+ | Option | Description |
100
+ | ------------------------ | -------------------------------------------------------- |
101
+ | `--all` | Select every module with an available update. |
102
+ | `-y, --yes` | Skip confirmation prompts. |
103
+ | `--force` | Overwrite locally drifted module copies. |
104
+ | `--keys <moduleKeys...>` | Non-interactive module selector (comma/space separated). |
105
+
106
+ #### `newbie apply`
107
+
108
+ Non-interactively sync the module set declared in a JSON spec.
109
+
110
+ ```json
111
+ { "modules": ["module-a", "module-b"] }
112
+ ```
113
+
114
+ | Option | Description |
115
+ | ----------------- | --------------------------------------------------- |
116
+ | `--config <file>` | Path to the declarative apply spec JSON (required). |
117
+ | `--ci` | CI mode marker (apply is always non-interactive). |
118
+
119
+ ### Diagnostics
120
+
121
+ #### `newbie doctor`
122
+
123
+ Audit the installation: registry pins, copied modules, drift, environment
124
+ variables and Prisma wiring.
125
+
126
+ #### `newbie status`
127
+
128
+ Print machine-readable project state as JSON.
129
+
130
+ | Option | Description |
131
+ | --------- | ----------------------------------------------------- |
132
+ | `--drift` | Include content drift against pinned pristine copies. |
133
+
134
+ ### Template sync and automation
135
+
136
+ #### `newbie update-template`
137
+
138
+ Diff framework-managed skeleton files (`main.ts`, `tsconfig*`, the Prisma
139
+ framework block) against the template. Business files are skipped.
140
+
141
+ | Option | Description |
142
+ | ----------------------- | ----------------------------------------------------------------- |
143
+ | `--template-path <dir>` | Use a local template directory instead of cloning the repository. |
144
+ | `--template-ref <ref>` | Git ref (e.g. a template tag) to sync from. |
145
+ | `--write` | Apply the template version of differing skeleton files. |
146
+
147
+ #### `newbie agent`
148
+
149
+ Run the module-hub agent: poll the hub with `newbie status`, execute dispatched
150
+ changes (`apply`/`update`) and report receipts.
151
+
152
+ | Option | Description |
153
+ | -------- | ----------------------------------------------------------------------------------- |
154
+ | `--once` | Single pass: drain pending changes, deliver receipts, then exit (CI/cron friendly). |
155
+
156
+ #### `newbie watch [keys...]`
157
+
158
+ Watch the local newbie-modules registry and sync installed module sources into
159
+ the project on change. Useful for framework/module development.
160
+
161
+ | Option | Description |
162
+ | ------- | ----------------------------------------------------------- |
163
+ | `--all` | Watch every registry module instead of only installed ones. |
164
+
165
+ ### Registry development
166
+
167
+ These commands run against the newbie-modules registry itself (inside the
168
+ registry checkout, not a consuming project).
169
+
170
+ #### `newbie dev lint`
171
+
172
+ Enforce the module layering rules (`domain` -> `capability` -> `foundation`)
173
+ across registry sources: upward dependencies and same-layer import cycles are
174
+ errors; same-layer dependencies are warnings for review.
175
+
176
+ ### Module-provided commands
177
+
178
+ Modules can attach their own command namespace to the CLI. When an installed
179
+ module's manifest declares `"cli": "<namespace>"`, the CLI loads
180
+ `src/modules/<key>/cli/index.ts` at startup and calls its exported
181
+ `register(parent, options)` hook to attach subcommands under `newbie <namespace>`.
182
+
183
+ The module's `cli/index.ts` is typically a thin entry that re-exports the
184
+ `register` function from the module's companion npm package, so the
185
+ implementation ships versioned through npm instead of being copied into every
186
+ project. Example: the `aws-secrets-manager` module declares `"cli": "secrets"`
187
+ and pairs with [`@devbie/aws-secrets-cli`](https://www.npmjs.com/package/@devbie/aws-secrets-cli),
188
+ providing:
189
+
190
+ | Command | Description |
191
+ | ------------------------------ | ---------------------------------------------------------------------- |
192
+ | `newbie secrets pull` | Pull environment variables from AWS Secrets Manager into `.env`. |
193
+ | `newbie secrets push` | Push environment variables from `.env` to AWS Secrets Manager. |
194
+ | `newbie secrets deploy-rotation` | Provision the per-account rotation Lambda and print its ARN. |
195
+
196
+ Module CLI entries consume shared building blocks (error handling, env-file
197
+ parsing, exec helpers, `GlobalOptions`) via the `@devbie/newbie-cli/lib`
198
+ export; they never import framework internals by relative path.
199
+
200
+ ## Module manifest
201
+
202
+ Every registry module carries a `newbie.module.json` at its root:
203
+
204
+ | Field | Type | Description |
205
+ | -------------------- | --------------- | -------------------------------------------------------------------------------------------- |
206
+ | `key` | string | Module key; must match the directory name. |
207
+ | `layer` | string | Architectural layer (`domain` / `capability` / `foundation`); absent for framework-specials. |
208
+ | `module.file` | string | NestJS module file without extension, e.g. `account.module`. |
209
+ | `module.className` | string | Exported NestJS module class name, e.g. `AccountModule`. |
210
+ | `schema` | string | Project-relative path of the Prisma model fragment; absent = no models. |
211
+ | `config-service` | object | Config keys merged into the generated `modules.config.ts`. |
212
+ | `env` | object | Environment variables the module requires (doctor reports missing ones). |
213
+ | `dependencies` | object | npm dependencies merged into the consuming project's `package.json`. |
214
+ | `devDependencies` | object | npm devDependencies merged into the consuming project's `package.json`. |
215
+ | `moduleDependencies` | string[] | Registry module keys imported via `@modules/<key>`; installs expand to the transitive closure. |
216
+ | `assets` | object[] | Extra NestJS assets (e.g. resolvers) wired into the generated module index. |
217
+ | `cli` | string | Command namespace this module exposes (see "Module-provided commands"). |
218
+ | `sdk` | string | Package name of the companion SDK shipped alongside the module (pairing record for tooling). |
219
+
220
+ ## Global options
221
+
222
+ These options can be placed on the root command before or after a subcommand
223
+ name:
224
+
225
+ | Option | Description |
226
+ | ------------------------ | ------------------------------------------------------------------------- |
227
+ | `-C, --cwd <dir>` | Project root directory (defaults to the current working directory). |
228
+ | `--dry-run` | Print planned changes without writing files or running mutating commands. |
229
+ | `--skip-prisma-generate` | Skip `npx prisma generate` after schema changes. |
230
+
231
+ ## Related packages
232
+
233
+ - [`@devbie/newbie`](https://www.npmjs.com/package/@devbie/newbie) — the Newbie
234
+ backend framework runtime.
235
+ - [`@devbie/heartbeat-sdk`](https://www.npmjs.com/package/@devbie/heartbeat-sdk)
236
+ — framework-agnostic installation liveness reporting.
237
+ - [`@devbie/aws-secrets-cli`](https://www.npmjs.com/package/@devbie/aws-secrets-cli)
238
+ — companion CLI of the `aws-secrets-manager` module (`newbie secrets`).
239
+ - [`@devbie/web-monitor-sdk`](https://www.npmjs.com/package/@devbie/web-monitor-sdk)
240
+ — browser-side web monitoring, companion of the `web-monitor` module.
241
+
242
+ ## License
243
+
244
+ [MIT](https://github.com/worldzhy/newbie/blob/dev/LICENSE)
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/assemble/assets.ts"],"names":[],"mappings":";;;;;AAiCA,oDA2CC;AA5ED,gEAAkC;AAClC,0DAA6B;AAE7B,2CAKwB;AACxB,8CAAmD;AACnD,0CAAsD;AACtD,0DAA8D;AAW9D,KAAK,UAAU,WAAW,CAAC,GAAW;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,kBAAE,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,qBAAa,CAAC,EAAE,MAAM,CAAC,CAC3C,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACpE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,MAM1C;IACC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAErD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAA,oBAAW,EACT,MAAM,EACN,IAAI,EACJ,WAAW,qBAAa,kCAAkC,CAC3D,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;IACxD,IAAI,MAAM,GAAgB,OAAO,CAAC,eAAe,CAAC,MAAM,IAAI,EAAE,CAAC;IAE/D,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAAqB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAA,oBAAW,EACT,MAAM,EACN,IAAI,EACJ,mCAAmC,GAAG,+BAA+B,CACtE,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,GAAG,IAAA,kBAAS,EAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAAqB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI;YAAE,SAAS;QAChC,MAAM,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACtD,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAa,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/assemble/assets.ts"],"names":[],"mappings":";;;;;AA0BA,oDAmCC;AA7DD,gEAAkC;AAClC,0DAA6B;AAE7B,2CAAkF;AAClF,8CAAmD;AACnD,0CAAsD;AACtD,0DAA8D;AAW9D,KAAK,UAAU,WAAW,CAAC,GAAW;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,kBAAE,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,qBAAa,CAAC,EAAE,MAAM,CAAC,CAAkB,CAAC;IAClG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACpE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,oBAAoB,CAAC,MAM1C;IACC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAErD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAA,oBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,WAAW,qBAAa,kCAAkC,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;IACxD,IAAI,MAAM,GAAgB,OAAO,CAAC,eAAe,CAAC,MAAM,IAAI,EAAE,CAAC;IAE/D,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAAqB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAA,oBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,mCAAmC,GAAG,+BAA+B,CAAC,CAAC;YACjG,SAAS;QACX,CAAC;QACD,MAAM,GAAG,IAAA,kBAAS,EAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAAqB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI;YAAE,SAAS;QAChC,MAAM,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACtD,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAa,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/assemble/dependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/assemble/dependencies.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/assemble/env.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/assemble/env.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export interface RegistryClosure {
2
+ keys: string[];
3
+ added: string[];
4
+ graph: Map<string, string[]>;
5
+ missingModules: string[];
6
+ missingEdges: {
7
+ module: string;
8
+ dependency: string;
9
+ }[];
10
+ }
11
+ export declare function expandRegistryClosure(registryRoot: string, rootsInput: readonly string[], options?: {
12
+ satisfied?: ReadonlySet<string>;
13
+ }): Promise<RegistryClosure>;
14
+ export declare function describeMissingDependencies(closure: RegistryClosure): string[];
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expandRegistryClosure = expandRegistryClosure;
4
+ exports.describeMissingDependencies = describeMissingDependencies;
5
+ const module_closure_1 = require("../core/module-closure");
6
+ const registry_1 = require("../lib/registry");
7
+ async function expandRegistryClosure(registryRoot, rootsInput, options = {}) {
8
+ const satisfied = options.satisfied ?? new Set();
9
+ const roots = [...new Set(rootsInput)].filter((key) => !satisfied.has(key));
10
+ const graph = new Map();
11
+ const missingModules = new Set();
12
+ const visited = new Set();
13
+ const queue = [...roots];
14
+ while (queue.length > 0) {
15
+ const key = queue.shift();
16
+ if (visited.has(key))
17
+ continue;
18
+ visited.add(key);
19
+ const resolved = await (0, registry_1.readRegistryModule)(registryRoot, key);
20
+ if (!resolved) {
21
+ missingModules.add(key);
22
+ continue;
23
+ }
24
+ const deps = resolved.manifest.moduleDependencies ?? [];
25
+ graph.set(key, deps);
26
+ for (const dep of deps) {
27
+ if (!satisfied.has(dep) && !visited.has(dep))
28
+ queue.push(dep);
29
+ }
30
+ }
31
+ const closure = (0, module_closure_1.expandModuleClosure)(roots, graph);
32
+ for (const edge of closure.missing)
33
+ missingModules.add(edge.dependency);
34
+ return {
35
+ keys: closure.keys,
36
+ added: closure.added,
37
+ graph,
38
+ missingModules: [...missingModules].sort(),
39
+ missingEdges: closure.missing,
40
+ };
41
+ }
42
+ function describeMissingDependencies(closure) {
43
+ const lines = closure.missingEdges.map(({ module, dependency }) => `module '${module}' depends on missing registry module '${dependency}'`);
44
+ const edgeTargets = new Set(closure.missingEdges.map((edge) => edge.dependency));
45
+ for (const key of closure.missingModules) {
46
+ if (!edgeTargets.has(key))
47
+ lines.push(`module '${key}' is not present in the registry`);
48
+ }
49
+ return lines.sort();
50
+ }
51
+ //# sourceMappingURL=module-graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-graph.js","sourceRoot":"","sources":["../../src/assemble/module-graph.ts"],"names":[],"mappings":";;AAwBA,sDAsCC;AAGD,kEASC;AA1ED,2DAA6D;AAC7D,8CAAqD;AAuB9C,KAAK,UAAU,qBAAqB,CACzC,YAAoB,EACpB,UAA6B,EAC7B,UAA+C,EAAE;IAEjD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,GAAG,EAAU,CAAC;IACzD,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,QAAQ,GAAG,MAAM,IAAA,6BAAkB,EAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,IAAI,EAAE,CAAC;QACxD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,oCAAmB,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO;QAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAExE,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK;QACL,cAAc,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,IAAI,EAAE;QAC1C,YAAY,EAAE,OAAO,CAAC,OAAO;KAC9B,CAAC;AACJ,CAAC;AAGD,SAAgB,2BAA2B,CAAC,OAAwB;IAClE,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CACpC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,WAAW,MAAM,yCAAyC,UAAU,GAAG,CACpG,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACjF,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,kCAAkC,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC"}
@@ -13,9 +13,7 @@ const errors_1 = require("../lib/errors");
13
13
  function assertModuleKeySafe(key) {
14
14
  const resolved = node_path_1.default.resolve(paths_1.MODULES_DIR, key);
15
15
  const relative = node_path_1.default.relative(paths_1.MODULES_DIR, resolved);
16
- if (relative.startsWith("..") ||
17
- node_path_1.default.isAbsolute(relative) ||
18
- relative.split(node_path_1.default.sep).length !== 1) {
16
+ if (relative.startsWith("..") || node_path_1.default.isAbsolute(relative) || relative.split(node_path_1.default.sep).length !== 1) {
19
17
  throw new errors_1.CliError(`[Error] Refusing to operate outside ${paths_1.MODULES_DIR}: ${key}`);
20
18
  }
21
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"modules-copy.js","sourceRoot":"","sources":["../../src/assemble/modules-copy.ts"],"names":[],"mappings":";;;;;AAcA,kDAYC;AAOD,gCAcC;AAGD,sCASC;AA3DD,0DAA6B;AAE7B,8CAAiD;AACjD,8CAGyB;AACzB,0CAAyC;AAOzC,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,QAAQ,GAAG,mBAAI,CAAC,OAAO,CAAC,mBAAW,EAAE,GAAG,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,mBAAI,CAAC,QAAQ,CAAC,mBAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,IACE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;QACzB,mBAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QACzB,QAAQ,CAAC,KAAK,CAAC,mBAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EACrC,CAAC;QACD,MAAM,IAAI,iBAAQ,CAChB,uCAAuC,mBAAW,KAAK,GAAG,EAAE,CAC7D,CAAC;IACJ,CAAC;AACH,CAAC;AAOM,KAAK,UAAU,UAAU,CAAC,MAKhC;IACC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,IAAI,CAAC,IAAI,CACb,IAAA,+BAAoB,EAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,EACxC,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,EAAE,GAAG,CAAC,CAClC,CAAC;IACJ,CAAC;AACH,CAAC;AAGM,KAAK,UAAU,aAAa,CAAC,MAGnC;IACC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"modules-copy.js","sourceRoot":"","sources":["../../src/assemble/modules-copy.ts"],"names":[],"mappings":";;;;;AAWA,kDAMC;AAOD,gCAWC;AAGD,sCAMC;AA5CD,0DAA6B;AAE7B,8CAAiD;AACjD,8CAAyE;AACzE,0CAAyC;AAOzC,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,QAAQ,GAAG,mBAAI,CAAC,OAAO,CAAC,mBAAW,EAAE,GAAG,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,mBAAI,CAAC,QAAQ,CAAC,mBAAW,EAAE,QAAQ,CAAC,CAAC;IACtD,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,mBAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,mBAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpG,MAAM,IAAI,iBAAQ,CAAC,uCAAuC,mBAAW,KAAK,GAAG,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAOM,KAAK,UAAU,UAAU,CAAC,MAKhC;IACC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,IAAI,CAAC,IAAI,CAAC,IAAA,+BAAoB,EAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/F,CAAC;AACH,CAAC;AAGM,KAAK,UAAU,aAAa,CAAC,MAAsC;IACxE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC"}
@@ -33,9 +33,7 @@ function moduleTemplate(entries) {
33
33
  .filter(Boolean)
34
34
  .join("\n");
35
35
  const importModuleNames = [
36
- hasConfigService
37
- ? `ConfigModule.forRoot({load: [ModulesConfiguration], isGlobal: true})`
38
- : "",
36
+ hasConfigService ? `ConfigModule.forRoot({load: [ModulesConfiguration], isGlobal: true})` : "",
39
37
  ...entries.map(({ manifest }) => manifest.module.className),
40
38
  ]
41
39
  .filter(Boolean)
@@ -78,9 +76,7 @@ async function assembleNestJsModules(params) {
78
76
  for (const { manifest } of entries) {
79
77
  configs = { ...configs, ...(manifest["config-service"] ?? {}) };
80
78
  }
81
- await sink.writeText(paths_1.MODULES_CONFIG_TS, Object.keys(configs).length > 0
82
- ? configTemplate(configs)
83
- : EMPTY_CONFIG_TEMPLATE);
79
+ await sink.writeText(paths_1.MODULES_CONFIG_TS, Object.keys(configs).length > 0 ? configTemplate(configs) : EMPTY_CONFIG_TEMPLATE);
84
80
  await sink.run("npx", ["prettier", "--write", paths_1.MODULES_MODULE_TS, paths_1.MODULES_CONFIG_TS], "prettier generated module files");
85
81
  }
86
82
  //# sourceMappingURL=modules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/assemble/modules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/assemble/modules.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,13 @@
1
1
  import { PipelineContext } from "./types";
2
+ export interface ClosureAddition {
3
+ key: string;
4
+ requiredBy: string[];
5
+ }
2
6
  export interface PlannedChange {
3
7
  added: string[];
4
8
  removed: string[];
5
9
  enabledKeys: string[];
10
+ closureAdded?: ClosureAddition[];
6
11
  }
7
12
  export declare function readProjectModuleDirs(cwd: string): Promise<string[]>;
8
13
  export declare function runSteps(ctx: PipelineContext, changes: PlannedChange): Promise<void>;
@@ -12,14 +12,29 @@ const promises_1 = __importDefault(require("node:fs/promises"));
12
12
  const node_path_1 = __importDefault(require("node:path"));
13
13
  const colorette_1 = require("colorette");
14
14
  const modules_state_1 = require("../core/modules-state");
15
+ const module_closure_1 = require("../core/module-closure");
15
16
  const paths_1 = require("../constants/paths");
17
+ const errors_1 = require("../lib/errors");
16
18
  const modules_state_2 = require("../lib/modules-state");
17
19
  const dependencies_1 = require("./dependencies");
18
20
  const env_1 = require("./env");
21
+ const module_graph_1 = require("./module-graph");
19
22
  const assets_1 = require("./assets");
20
23
  const modules_1 = require("./modules");
21
24
  const modules_copy_1 = require("./modules-copy");
22
25
  const schema_1 = require("./schema");
26
+ async function assertClosureResolvable(registryRoot, roots, options) {
27
+ const closure = await (0, module_graph_1.expandRegistryClosure)(registryRoot, roots, options);
28
+ const missing = (0, module_graph_1.describeMissingDependencies)(closure);
29
+ if (missing.length > 0) {
30
+ throw new errors_1.CliError(`Cannot resolve module dependencies:\n - ${missing.join("\n - ")}`);
31
+ }
32
+ return closure;
33
+ }
34
+ function describeClosureAdditions(added, graph, enabledKeys) {
35
+ const among = new Set(enabledKeys);
36
+ return added.map((key) => ({ key, requiredBy: (0, module_closure_1.directDependents)(key, graph, among) }));
37
+ }
23
38
  function step(title) {
24
39
  console.info(`\n${(0, colorette_1.cyan)("→")} ${title}`);
25
40
  }
@@ -47,6 +62,20 @@ async function readProjectModuleDirs(cwd) {
47
62
  }
48
63
  function stampCopiedModules(state, addedKeys, registry) {
49
64
  const added = new Set(addedKeys);
65
+ const stamped = state.modules.map((record) => added.has(record.key)
66
+ ? {
67
+ ...record,
68
+ version: null,
69
+ sourceCommit: registry.sourceCommit,
70
+ localPatches: [],
71
+ }
72
+ : record);
73
+ const known = new Set(stamped.map((record) => record.key));
74
+ for (const key of addedKeys) {
75
+ if (!known.has(key)) {
76
+ stamped.push({ key, version: null, sourceCommit: registry.sourceCommit, localPatches: [] });
77
+ }
78
+ }
50
79
  return {
51
80
  ...state,
52
81
  registry: {
@@ -54,14 +83,7 @@ function stampCopiedModules(state, addedKeys, registry) {
54
83
  url: registry.url,
55
84
  sourceCommit: registry.sourceCommit,
56
85
  },
57
- modules: state.modules.map((record) => added.has(record.key)
58
- ? {
59
- ...record,
60
- version: null,
61
- sourceCommit: registry.sourceCommit,
62
- localPatches: [],
63
- }
64
- : record),
86
+ modules: stamped,
65
87
  };
66
88
  }
67
89
  async function runSteps(ctx, changes) {
@@ -83,7 +105,7 @@ async function runSteps(ctx, changes) {
83
105
  sink,
84
106
  issues,
85
107
  added,
86
- removed,
108
+ enabledKeys,
87
109
  skipPrismaGenerate,
88
110
  });
89
111
  step("Update nestjs assets");
@@ -107,24 +129,47 @@ async function runSteps(ctx, changes) {
107
129
  await (0, env_1.assembleEnvExample)({ cwd, sink, issues, enabled: enabledKeys });
108
130
  }
109
131
  async function applyPlanned(ctx, changes) {
132
+ if (changes.enabledKeys) {
133
+ ctx.state = (0, modules_state_1.withModuleKeys)(ctx.state, changes.enabledKeys);
134
+ if (!ctx.sink.dryRun) {
135
+ await (0, modules_state_2.writeModulesState)(ctx.cwd, ctx.sink, ctx.state);
136
+ }
137
+ }
110
138
  await runSteps(ctx, changes);
111
139
  }
112
140
  async function applyModuleKeys(ctx, nextKeys) {
113
141
  const { cwd, sink } = ctx;
114
- const diff = (0, modules_state_1.diffModuleKeys)((0, modules_state_1.moduleKeys)(ctx.state), nextKeys);
115
- ctx.state = (0, modules_state_1.withModuleKeys)(ctx.state, nextKeys);
142
+ const closure = await assertClosureResolvable(ctx.registry.root, nextKeys);
143
+ const expandedKeys = closure.keys;
144
+ const currentSet = new Set((0, modules_state_1.moduleKeys)(ctx.state));
145
+ for (const key of closure.added) {
146
+ const requiredBy = (0, module_closure_1.directDependents)(key, closure.graph, new Set(expandedKeys));
147
+ const suffix = `(required by: ${requiredBy.join(", ") || "?"})`;
148
+ if (currentSet.has(key)) {
149
+ console.info((0, colorette_1.cyan)(`[info] keeping ${key} enabled ${suffix}`));
150
+ }
151
+ else {
152
+ console.info((0, colorette_1.cyan)(`[info] also enabling ${key} ${suffix}`));
153
+ }
154
+ }
155
+ const diff = (0, modules_state_1.diffModuleKeys)((0, modules_state_1.moduleKeys)(ctx.state), expandedKeys);
156
+ ctx.state = (0, modules_state_1.withModuleKeys)(ctx.state, expandedKeys);
116
157
  await (0, modules_state_2.writeModulesState)(cwd, sink, ctx.state);
117
158
  await runSteps(ctx, {
118
159
  added: diff.added,
119
160
  removed: diff.removed,
120
- enabledKeys: nextKeys,
161
+ enabledKeys: expandedKeys,
162
+ closureAdded: describeClosureAdditions(closure.added, closure.graph, expandedKeys),
121
163
  });
122
164
  return diff;
123
165
  }
124
166
  async function planReconcile(ctx) {
125
167
  const inProject = new Set(await readProjectModuleDirs(ctx.cwd));
126
- const enabled = (0, modules_state_1.moduleKeys)(ctx.state);
168
+ const declared = (0, modules_state_1.moduleKeys)(ctx.state);
169
+ const closure = await assertClosureResolvable(ctx.registry.root, declared);
170
+ const enabled = closure.keys;
127
171
  const enabledSet = new Set(enabled);
172
+ const closureAdded = describeClosureAdditions(closure.added, closure.graph, enabled);
128
173
  const installed = enabled.filter((key) => {
129
174
  if (!inProject.has(key))
130
175
  return true;
@@ -136,6 +181,7 @@ async function planReconcile(ctx) {
136
181
  added: installed,
137
182
  removed: uninstalled,
138
183
  enabledKeys: enabled,
184
+ closureAdded,
139
185
  installed,
140
186
  uninstalled,
141
187
  };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/assemble/pipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/assemble/pipeline.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,6 @@ export declare function assembleSchemaFiles(params: {
5
5
  sink: Sink;
6
6
  issues: IssueBag;
7
7
  added: string[];
8
- removed: string[];
8
+ enabledKeys: string[];
9
9
  skipPrismaGenerate?: boolean;
10
10
  }): Promise<void>;