@devbie/newbie-cli 1.6.0 → 1.8.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  # @devbie/newbie-cli
2
2
 
3
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)
4
+ [![license](https://img.shields.io/npm/l/@devbie/newbie-cli?style=flat-square)](https://github.com/worldzhy/devbie/blob/dev/LICENSE)
5
5
  [![node](https://img.shields.io/node/v/@devbie/newbie-cli?style=flat-square)](https://www.npmjs.com/package/@devbie/newbie-cli)
6
6
 
7
7
  Command-line tool for the [Newbie](https://www.npmjs.com/package/@devbie/newbie)
@@ -147,14 +147,19 @@ Print machine-readable project state as JSON.
147
147
 
148
148
  #### `newbie update-template`
149
149
 
150
- Diff framework-managed skeleton files (`main.ts`, `tsconfig*`, the Prisma
151
- framework block) against the template. Business files are skipped.
150
+ Diff framework-owned template files against the template, driven by the
151
+ ADR-009 ownership registry: whole-file sync for `main.ts`, `tsconfig*`,
152
+ `nest-cli.json`, `prisma.config.ts` and the static `deploy/` stack; block sync
153
+ for the `@@newbie-framework` blocks of `.env.example`, `.gitignore` and
154
+ `prisma/schema.prisma`. Generated (`newbie assemble` products) and
155
+ template-shipped host-owned files are skipped.
152
156
 
153
157
  | Option | Description |
154
158
  | ----------------------- | ----------------------------------------------------------------- |
155
159
  | `--template-path <dir>` | Use a local template directory instead of cloning the repository. |
156
160
  | `--template-ref <ref>` | Git ref (e.g. a template tag) to sync from. |
157
- | `--write` | Apply the template version of differing skeleton files. |
161
+ | `--write` | Apply the template version of differing template files. |
162
+ | `--check` | CI gate: print the diff and exit non-zero when files drift. |
158
163
 
159
164
  #### `newbie agent`
160
165
 
@@ -227,7 +232,6 @@ Every registry module carries a `newbie.module.json` at its root:
227
232
  | `dependencies` | object | npm dependencies merged into the consuming project's `package.json`. |
228
233
  | `devDependencies` | object | npm devDependencies merged into the consuming project's `package.json`. |
229
234
  | `moduleDependencies` | string[] | Registry module keys imported via `@modules/<key>`; installs expand to the transitive closure. |
230
- | `assets` | object[] | Extra NestJS assets (e.g. resolvers) wired into the generated module index. |
231
235
  | `cli` | string | Command namespace this module exposes (see "Module-provided commands"). |
232
236
  | `sdk` | string | Package name of the companion SDK shipped alongside the module (pairing record for tooling). |
233
237
  | `publicNamespace` | boolean | Claim the public URL namespace `/<key>/*`; assemble renders a Caddy handle block (ADR-008). |
@@ -256,4 +260,4 @@ name:
256
260
 
257
261
  ## License
258
262
 
259
- [MIT](https://github.com/worldzhy/newbie/blob/dev/LICENSE)
263
+ [MIT](https://github.com/worldzhy/devbie/blob/dev/LICENSE)
@@ -21,7 +21,6 @@ const dependencies_1 = require("./dependencies");
21
21
  const deploy_1 = require("./deploy");
22
22
  const env_1 = require("./env");
23
23
  const module_graph_1 = require("./module-graph");
24
- const assets_1 = require("./assets");
25
24
  const modules_1 = require("./modules");
26
25
  const modules_copy_1 = require("./modules-copy");
27
26
  const schema_1 = require("./schema");
@@ -106,12 +105,9 @@ async function runSteps(ctx, changes) {
106
105
  cwd,
107
106
  sink,
108
107
  issues,
109
- added,
110
108
  enabledKeys,
111
109
  skipPrismaGenerate,
112
110
  });
113
- step("Update nestjs assets");
114
- await (0, assets_1.assembleNestJsAssets)({ cwd, sink, issues, added, removed });
115
111
  step("Update nestjs modules");
116
112
  await (0, modules_1.assembleNestJsModules)({ cwd, sink, issues, enabledKeys });
117
113
  step("Update deploy assets");
@@ -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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"}
@@ -4,7 +4,6 @@ export declare function assembleSchemaFiles(params: {
4
4
  cwd: string;
5
5
  sink: Sink;
6
6
  issues: IssueBag;
7
- added: string[];
8
7
  enabledKeys: string[];
9
8
  skipPrismaGenerate?: boolean;
10
9
  }): Promise<void>;
@@ -15,6 +15,16 @@ const DO_NOT_EDIT_HEADER = `// THIS FILE IS MANAGED BY @devbie/newbie-cli. DO NO
15
15
  // Run 'newbie install' to regenerate this file.
16
16
 
17
17
  `;
18
+ async function readOptionalText(cwd, relativePath) {
19
+ try {
20
+ return await promises_1.default.readFile(node_path_1.default.resolve(cwd, relativePath), "utf8");
21
+ }
22
+ catch (error) {
23
+ if (error.code === "ENOENT")
24
+ return null;
25
+ throw error;
26
+ }
27
+ }
18
28
  async function keysWithSchema(cwd, keys) {
19
29
  const result = [];
20
30
  for (const key of keys) {
@@ -29,14 +39,27 @@ async function keysWithSchema(cwd, keys) {
29
39
  return result;
30
40
  }
31
41
  async function assembleSchemaFiles(params) {
32
- const { cwd, sink, issues, added, enabledKeys, skipPrismaGenerate } = params;
42
+ const { cwd, sink, issues, enabledKeys, skipPrismaGenerate } = params;
33
43
  const enabledSet = new Set(enabledKeys);
34
- for (const { key, fragment } of await keysWithSchema(cwd, added)) {
44
+ for (const { key, fragment } of await keysWithSchema(cwd, enabledKeys)) {
35
45
  if (fragment === null) {
36
46
  (0, issues_1.reportIssue)(issues, sink, `Declared Prisma fragment is missing inside ${node_path_1.default.posix.join(paths_1.MODULES_DIR, key)}`);
37
47
  continue;
38
48
  }
39
- await sink.writeText(node_path_1.default.posix.join(paths_1.PRISMA_SCHEMA_MODELS_DIR, `${key}.prisma`), `${DO_NOT_EDIT_HEADER}${fragment}`);
49
+ const additionsPath = node_path_1.default.posix.join(paths_1.PRISMA_ADDITIONS_DIR, `${key}.prisma`);
50
+ const additions = await readOptionalText(cwd, additionsPath);
51
+ let content = fragment;
52
+ if (additions !== null) {
53
+ const merged = (0, prisma_schema_1.mergeModelAdditions)(fragment, additions);
54
+ for (const conflict of merged.conflicts) {
55
+ (0, issues_1.reportIssue)(issues, sink, `${additionsPath}: field '${conflict.model}.${conflict.field}' is already declared by module '${key}'; rename or remove the addition.`);
56
+ }
57
+ for (const model of merged.unknownModels) {
58
+ (0, issues_1.reportIssue)(issues, sink, `${additionsPath}: model '${model}' is not declared by module '${key}'.`);
59
+ }
60
+ content = merged.content;
61
+ }
62
+ await sink.writeText(node_path_1.default.posix.join(paths_1.PRISMA_SCHEMA_MODELS_DIR, `${key}.prisma`), `${DO_NOT_EDIT_HEADER}${content}`);
40
63
  }
41
64
  const modelsDir = node_path_1.default.resolve(cwd, paths_1.PRISMA_SCHEMA_MODELS_DIR);
42
65
  let modelFiles = [];
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/assemble/schema.ts"],"names":[],"mappings":";;;;;AA4BA,kDAoEC;AAhGD,gEAAkC;AAClC,0DAA6B;AAE7B,yDAA0F;AAC1F,8CAA+F;AAC/F,0CAAsD;AACtD,0DAAmF;AACnF,4CAA4C;AAG5C,MAAM,kBAAkB,GAAG;;;CAG1B,CAAC;AAGF,KAAK,UAAU,cAAc,CAAC,GAAW,EAAE,IAAc;IACvD,MAAM,MAAM,GAA+C,EAAE,CAAC;IAC9D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAA,sCAAqB,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ;YAAE,SAAS;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,SAAS;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAA,oCAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,mBAAmB,CAAC,MAOzC;IACC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IAC7E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;IAGxC,KAAK,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,MAAM,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;QACjE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,IAAA,oBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,8CAA8C,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7G,SAAS;QACX,CAAC;QACD,MAAM,IAAI,CAAC,SAAS,CAClB,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAwB,EAAE,GAAG,GAAG,SAAS,CAAC,EAC1D,GAAG,kBAAkB,GAAG,QAAQ,EAAE,CACnC,CAAC;IACJ,CAAC;IAMD,MAAM,SAAS,GAAG,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,gCAAwB,CAAC,CAAC;IAC9D,IAAI,UAAU,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,SAAS;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAI,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAwB,EAAE,IAAI,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAMD,MAAM,cAAc,GAAG,mBAAI,CAAC,OAAO,CAAC,GAAG,EAAE,0BAAkB,CAAC,CAAC;IAC7D,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,IAAA,oBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,WAAW,0BAAkB,uCAAuC,CAAC,CAAC;QAChG,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,iBAAiB,GAAG,CAAC,MAAM,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC;QAC9G,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,qCAAqB,EAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5F,MAAM,IAAI,GAAG,IAAA,0CAA0B,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACnE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,SAAS,CAAC,0BAAkB,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAGD,IAAI,CAAC,kBAAkB,IAAI,CAAC,MAAM,IAAA,oBAAU,EAAC,GAAG,EAAE,0BAAkB,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACnE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/assemble/schema.ts"],"names":[],"mappings":"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"}
@@ -18,12 +18,13 @@ function matchesPathFilter(filePath, filter) {
18
18
  return true;
19
19
  return filePath === normalized || filePath.startsWith(`${normalized}/`);
20
20
  }
21
- function filterSkeletonFiles(paths) {
21
+ function filterTemplateFiles(paths) {
22
+ const syncable = template_sync_1.TEMPLATE_FILES.filter(template_sync_1.isSyncableTemplateFile);
22
23
  if (!paths || paths.length === 0)
23
- return template_sync_1.SKELETON_FILES;
24
- const selected = template_sync_1.SKELETON_FILES.filter((file) => paths.some((p) => matchesPathFilter(file.path, p)));
24
+ return syncable;
25
+ const selected = syncable.filter((file) => paths.some((p) => matchesPathFilter(file.path, p)));
25
26
  if (selected.length === 0) {
26
- throw new errors_1.CliError(`No skeleton files match the path filter: ${paths.join(", ")}`);
27
+ throw new errors_1.CliError(`No framework-managed template files match the path filter: ${paths.join(", ")}`);
27
28
  }
28
29
  return selected;
29
30
  }
@@ -35,10 +36,46 @@ async function readOrNull(root, rel) {
35
36
  return null;
36
37
  }
37
38
  }
39
+ function isScanIgnored(relPath) {
40
+ const segments = relPath.split("/");
41
+ if (segments.some((segment) => template_sync_1.TEMPLATE_SCAN_IGNORED_DIRECTORIES.has(segment)))
42
+ return true;
43
+ const base = segments[segments.length - 1];
44
+ if (template_sync_1.TEMPLATE_SCAN_IGNORED_FILES.has(base))
45
+ return true;
46
+ return template_sync_1.TEMPLATE_SCAN_IGNORED_SUFFIXES.some((suffix) => base.endsWith(suffix));
47
+ }
48
+ async function listTemplateFiles(root) {
49
+ const found = [];
50
+ async function walk(relDir) {
51
+ const dirents = await promises_1.default.readdir(node_path_1.default.join(root, relDir), { withFileTypes: true });
52
+ for (const dirent of dirents) {
53
+ const relPath = relDir === "" ? dirent.name : `${relDir}/${dirent.name}`;
54
+ if (dirent.isDirectory()) {
55
+ if (template_sync_1.TEMPLATE_SCAN_IGNORED_DIRECTORIES.has(dirent.name))
56
+ continue;
57
+ await walk(relPath);
58
+ }
59
+ else if (dirent.isFile() && !isScanIgnored(relPath)) {
60
+ found.push(relPath);
61
+ }
62
+ }
63
+ }
64
+ await walk("");
65
+ return found;
66
+ }
67
+ async function assertTemplateRegistryComplete(templateRoot) {
68
+ const unclassified = (0, template_sync_1.findUnclassifiedTemplateFiles)(await listTemplateFiles(templateRoot));
69
+ if (unclassified.length === 0)
70
+ return;
71
+ throw new errors_1.CliError(`Template file(s) missing from the ownership registry (ADR-009 D4):\n - ${unclassified.join("\n - ")}\n` +
72
+ "Classify each one in TEMPLATE_FILES (packages/newbie-cli/src/core/template-sync.ts).");
73
+ }
38
74
  function printChangeDiff(change) {
39
75
  const label = change.file.path;
40
76
  if (change.kind === "missing-markers") {
41
- console.warn((0, colorette_1.yellow)(`! ${label}: framework markers (${template_sync_1.MARKER_START} / ${template_sync_1.MARKER_END}) ` +
77
+ const markers = (0, template_sync_1.frameworkMarkers)(change.file.markerSyntax);
78
+ console.warn((0, colorette_1.yellow)(`! ${label}: framework markers (${markers.start} / ${markers.end}) ` +
42
79
  "not found; skipping. Add them back to re-enable template sync."));
43
80
  return;
44
81
  }
@@ -54,40 +91,41 @@ async function runUpdateTemplate(options) {
54
91
  }
55
92
  const cwd = node_path_1.default.resolve(options.cwd);
56
93
  const sink = (0, sink_1.createSink)(cwd, options.dryRun);
57
- const skeletonFiles = filterSkeletonFiles(options.paths);
94
+ const templateFiles = filterTemplateFiles(options.paths);
58
95
  const scope = options.paths && options.paths.length > 0 ? options.paths.join(", ") : null;
59
96
  const template = await (0, create_1.resolveTemplate)(options);
60
97
  console.info((0, colorette_1.cyan)(`Template source: ${template.source}`));
61
98
  if (scope) {
62
- console.info((0, colorette_1.cyan)(`Scope: ${scope} (${skeletonFiles.length} skeleton files)`));
99
+ console.info((0, colorette_1.cyan)(`Scope: ${scope} (${templateFiles.length} template files)`));
63
100
  }
101
+ await assertTemplateRegistryComplete(template.root);
64
102
  const projectFiles = new Map();
65
- const templateFiles = new Map();
66
- for (const file of skeletonFiles) {
103
+ const templateContents = new Map();
104
+ for (const file of templateFiles) {
67
105
  projectFiles.set(file.path, await readOrNull(cwd, file.path));
68
- templateFiles.set(file.path, await readOrNull(template.root, file.path));
106
+ templateContents.set(file.path, await readOrNull(template.root, file.path));
69
107
  }
70
108
  let changes;
71
109
  try {
72
- changes = (0, template_sync_1.planTemplateSync)(projectFiles, templateFiles);
110
+ changes = (0, template_sync_1.planTemplateSync)(projectFiles, templateContents, templateFiles);
73
111
  }
74
112
  catch (error) {
75
113
  throw new errors_1.CliError(error.message);
76
114
  }
77
115
  if (changes.length === 0) {
78
116
  const suffix = scope ? ` (scope: ${scope})` : "";
79
- console.info((0, colorette_1.green)((0, colorette_1.bold)(`✓ Project skeleton is up to date with the template${suffix}.`)));
117
+ console.info((0, colorette_1.green)((0, colorette_1.bold)(`✓ Project template files are up to date with the template${suffix}.`)));
80
118
  return;
81
119
  }
82
120
  const actionable = changes.filter((c) => c.kind !== "missing-markers");
83
121
  for (const change of changes) {
84
122
  printChangeDiff(change);
85
123
  }
86
- console.info(`\n${actionable.length} skeleton file(s) to sync: ` +
124
+ console.info(`\n${actionable.length} template file(s) to sync: ` +
87
125
  actionable.map((c) => `${c.file.path} (${c.kind})`).join(", "));
88
126
  const writeCommand = scope ? `newbie update-template --write ${scope}` : "newbie update-template --write";
89
127
  if (options.check) {
90
- throw new errors_1.CliError(`${changes.length} skeleton file(s) drift from the template ` +
128
+ throw new errors_1.CliError(`${changes.length} template file(s) drift from the template ` +
91
129
  `(${actionable.length} auto-fixable). ` +
92
130
  `Run \`${writeCommand}\` to apply the template version.`);
93
131
  }
@@ -106,7 +144,7 @@ async function runUpdateTemplate(options) {
106
144
  console.info("[dry-run] no files were modified");
107
145
  }
108
146
  else {
109
- console.info((0, colorette_1.green)((0, colorette_1.bold)("\n✓ Skeleton files updated.")));
147
+ console.info((0, colorette_1.green)((0, colorette_1.bold)("\n✓ Template files updated.")));
110
148
  console.info("Review with `git diff`, then commit on a branch and open a PR.");
111
149
  }
112
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"update-template.js","sourceRoot":"","sources":["../../src/commands/update-template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-template.js","sourceRoot":"","sources":["../../src/commands/update-template.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ export declare const MODULES_CONFIG_TS = "src/modules/modules.config.ts";
5
5
  export declare const MODULE_MANIFEST_FILE = "newbie.module.json";
6
6
  export declare const PRISMA_SCHEMA_MAIN = "prisma/schema.prisma";
7
7
  export declare const PRISMA_SCHEMA_MODELS_DIR = "prisma/models";
8
+ export declare const PRISMA_ADDITIONS_DIR = "prisma-additions";
8
9
  export declare const ENV_PATH = ".env";
9
10
  export declare const ENV_EXAMPLE_PATH = ".env.example";
10
11
  export declare const NEST_CLI_JSON = "nest-cli.json";
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ENV_TOOL_CONFIG_CANDIDATES = exports.REGISTRY_MODULES_DIR = exports.DEPLOY_CADDYFILE_TMPL = exports.DEPLOY_COMPOSE_MODULES = exports.PACKAGE_JSON_PATH = exports.NEST_CLI_JSON = exports.ENV_EXAMPLE_PATH = exports.ENV_PATH = exports.PRISMA_SCHEMA_MODELS_DIR = exports.PRISMA_SCHEMA_MAIN = exports.MODULE_MANIFEST_FILE = exports.MODULES_CONFIG_TS = exports.MODULES_MODULE_TS = exports.MODULES_DIR = exports.MODULES_JSON = void 0;
3
+ exports.ENV_TOOL_CONFIG_CANDIDATES = exports.REGISTRY_MODULES_DIR = exports.DEPLOY_CADDYFILE_TMPL = exports.DEPLOY_COMPOSE_MODULES = exports.PACKAGE_JSON_PATH = exports.NEST_CLI_JSON = exports.ENV_EXAMPLE_PATH = exports.ENV_PATH = exports.PRISMA_ADDITIONS_DIR = exports.PRISMA_SCHEMA_MODELS_DIR = exports.PRISMA_SCHEMA_MAIN = exports.MODULE_MANIFEST_FILE = exports.MODULES_CONFIG_TS = exports.MODULES_MODULE_TS = exports.MODULES_DIR = exports.MODULES_JSON = void 0;
4
4
  exports.MODULES_JSON = "modules.json";
5
5
  exports.MODULES_DIR = "src/modules";
6
6
  exports.MODULES_MODULE_TS = "src/modules/modules.module.ts";
@@ -8,6 +8,7 @@ exports.MODULES_CONFIG_TS = "src/modules/modules.config.ts";
8
8
  exports.MODULE_MANIFEST_FILE = "newbie.module.json";
9
9
  exports.PRISMA_SCHEMA_MAIN = "prisma/schema.prisma";
10
10
  exports.PRISMA_SCHEMA_MODELS_DIR = "prisma/models";
11
+ exports.PRISMA_ADDITIONS_DIR = "prisma-additions";
11
12
  exports.ENV_PATH = ".env";
12
13
  exports.ENV_EXAMPLE_PATH = ".env.example";
13
14
  exports.NEST_CLI_JSON = "nest-cli.json";
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":";;;AAOa,QAAA,YAAY,GAAG,cAAc,CAAC;AAE9B,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,iBAAiB,GAAG,+BAA+B,CAAC;AACpD,QAAA,iBAAiB,GAAG,+BAA+B,CAAC;AAGpD,QAAA,oBAAoB,GAAG,oBAAoB,CAAC;AAE5C,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAC5C,QAAA,wBAAwB,GAAG,eAAe,CAAC;AAE3C,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAClC,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,iBAAiB,GAAG,cAAc,CAAC;AAGnC,QAAA,sBAAsB,GAAG,4BAA4B,CAAC;AAEtD,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAGhD,QAAA,oBAAoB,GAAG,kBAAkB,CAAC;AAG1C,QAAA,0BAA0B,GAAG,CAAC,yBAAyB,EAAE,sCAAsC,CAAC,CAAC"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":";;;AAOa,QAAA,YAAY,GAAG,cAAc,CAAC;AAE9B,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,iBAAiB,GAAG,+BAA+B,CAAC;AACpD,QAAA,iBAAiB,GAAG,+BAA+B,CAAC;AAGpD,QAAA,oBAAoB,GAAG,oBAAoB,CAAC;AAE5C,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAC5C,QAAA,wBAAwB,GAAG,eAAe,CAAC;AAM3C,QAAA,oBAAoB,GAAG,kBAAkB,CAAC;AAE1C,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAClC,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,iBAAiB,GAAG,cAAc,CAAC;AAGnC,QAAA,sBAAsB,GAAG,4BAA4B,CAAC;AAEtD,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAGhD,QAAA,oBAAoB,GAAG,kBAAkB,CAAC;AAG1C,QAAA,0BAA0B,GAAG,CAAC,yBAAyB,EAAE,sCAAsC,CAAC,CAAC"}
@@ -1,4 +1,3 @@
1
- import { NestAsset } from "./assets";
2
1
  export type ModuleRole = "collector";
3
2
  export declare const MODULE_ROLES: readonly ModuleRole[];
4
3
  export declare function isModuleRole(value: string): value is ModuleRole;
@@ -18,7 +17,6 @@ export interface ModuleManifest {
18
17
  dependencies?: Record<string, string>;
19
18
  devDependencies?: Record<string, string>;
20
19
  moduleDependencies?: string[];
21
- assets?: NestAsset[];
22
20
  cli?: string;
23
21
  sdk?: string;
24
22
  deprecated?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"module-manifest.js","sourceRoot":"","sources":["../../src/core/module-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-manifest.js","sourceRoot":"","sources":["../../src/core/module-manifest.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,13 @@ export declare function updateDatasourceSchemas(content: string, addedPaths: str
2
2
  export declare function reconcileDatasourceSchemas(content: string, moduleNamespaces: string[]): string;
3
3
  export declare function moduleSchemaNamespace(key: string): string;
4
4
  export declare function readDatasourceSchemas(content: string): string[] | null;
5
+ export interface ModelFieldConflict {
6
+ model: string;
7
+ field: string;
8
+ }
9
+ export interface MergeModelAdditionsResult {
10
+ content: string;
11
+ conflicts: ModelFieldConflict[];
12
+ unknownModels: string[];
13
+ }
14
+ export declare function mergeModelAdditions(base: string, additions: string): MergeModelAdditionsResult;
@@ -4,6 +4,7 @@ exports.updateDatasourceSchemas = updateDatasourceSchemas;
4
4
  exports.reconcileDatasourceSchemas = reconcileDatasourceSchemas;
5
5
  exports.moduleSchemaNamespace = moduleSchemaNamespace;
6
6
  exports.readDatasourceSchemas = readDatasourceSchemas;
7
+ exports.mergeModelAdditions = mergeModelAdditions;
7
8
  const DATASOURCE_SCHEMAS_RE = /(datasource\s+db\s*\{(?:.|\n|\r)*schemas\s*=\s*)(\[.*?\])/;
8
9
  function updateDatasourceSchemas(content, addedPaths, removedPaths) {
9
10
  return content.replace(DATASOURCE_SCHEMAS_RE, (_whole, prefix, arrayLiteral) => {
@@ -47,4 +48,123 @@ function readDatasourceSchemas(content) {
47
48
  return null;
48
49
  }
49
50
  }
51
+ function skipString(content, openIndex) {
52
+ for (let index = openIndex + 1; index < content.length; index += 1) {
53
+ if (content[index] === "\\") {
54
+ index += 1;
55
+ continue;
56
+ }
57
+ if (content[index] === '"')
58
+ return index;
59
+ }
60
+ return -1;
61
+ }
62
+ function findClosingBrace(content, openIndex) {
63
+ let depth = 0;
64
+ for (let index = openIndex; index < content.length; index += 1) {
65
+ const char = content[index];
66
+ if (char === "/" && content[index + 1] === "/") {
67
+ const newline = content.indexOf("\n", index);
68
+ if (newline === -1)
69
+ return -1;
70
+ index = newline;
71
+ continue;
72
+ }
73
+ if (char === '"') {
74
+ index = skipString(content, index);
75
+ if (index === -1)
76
+ return -1;
77
+ continue;
78
+ }
79
+ if (char === "{")
80
+ depth += 1;
81
+ if (char === "}") {
82
+ depth -= 1;
83
+ if (depth === 0)
84
+ return index;
85
+ }
86
+ }
87
+ return -1;
88
+ }
89
+ const MODEL_HEADER_RE = /(?:^|\n)[ \t]*model[ \t]+([A-Za-z_][A-Za-z0-9_]*)[ \t]*\{/g;
90
+ const FIELD_NAME_RE = /^([A-Za-z_][A-Za-z0-9_]*)/;
91
+ function readFieldNames(body) {
92
+ const names = [];
93
+ for (const rawLine of body.split("\n")) {
94
+ const line = rawLine.trim();
95
+ if (!line || line.startsWith("//") || line.startsWith("@"))
96
+ continue;
97
+ const match = FIELD_NAME_RE.exec(line);
98
+ if (match)
99
+ names.push(match[1]);
100
+ }
101
+ return names;
102
+ }
103
+ function readModelBlocks(content) {
104
+ const blocks = new Map();
105
+ MODEL_HEADER_RE.lastIndex = 0;
106
+ let match;
107
+ while ((match = MODEL_HEADER_RE.exec(content)) !== null) {
108
+ const openIndex = MODEL_HEADER_RE.lastIndex - 1;
109
+ const closeIndex = findClosingBrace(content, openIndex);
110
+ if (closeIndex === -1)
111
+ throw new Error(`[Error] Unclosed model block '${match[1]}' in a Prisma fragment`);
112
+ blocks.set(match[1], {
113
+ bodyStart: openIndex + 1,
114
+ bodyEnd: closeIndex,
115
+ fields: readFieldNames(content.slice(openIndex + 1, closeIndex)),
116
+ });
117
+ MODEL_HEADER_RE.lastIndex = closeIndex + 1;
118
+ }
119
+ return blocks;
120
+ }
121
+ function additionAnchor(content, bodyStart, bodyEnd) {
122
+ let lineStart = bodyStart;
123
+ while (lineStart < bodyEnd) {
124
+ let lineEnd = content.indexOf("\n", lineStart);
125
+ if (lineEnd === -1 || lineEnd > bodyEnd)
126
+ lineEnd = bodyEnd;
127
+ if (content.slice(lineStart, lineEnd).trimStart().startsWith("@@"))
128
+ return lineStart;
129
+ lineStart = lineEnd + 1;
130
+ }
131
+ return bodyEnd;
132
+ }
133
+ function mergeModelAdditions(base, additions) {
134
+ const baseBlocks = readModelBlocks(base);
135
+ const additionsBlocks = readModelBlocks(additions);
136
+ const conflicts = [];
137
+ const unknownModels = [];
138
+ const insertions = [];
139
+ for (const [name, block] of additionsBlocks) {
140
+ const target = baseBlocks.get(name);
141
+ if (!target) {
142
+ unknownModels.push(name);
143
+ continue;
144
+ }
145
+ const declared = new Set(target.fields);
146
+ const colliding = block.fields.filter((field) => declared.has(field));
147
+ if (colliding.length > 0) {
148
+ conflicts.push(...colliding.map((field) => ({ model: name, field })));
149
+ continue;
150
+ }
151
+ const lines = additions.slice(block.bodyStart, block.bodyEnd).split("\n");
152
+ while (lines.length > 0 && lines[0].trim() === "")
153
+ lines.shift();
154
+ while (lines.length > 0 && lines[lines.length - 1].trim() === "")
155
+ lines.pop();
156
+ if (lines.length === 0)
157
+ continue;
158
+ const at = additionAnchor(base, target.bodyStart, target.bodyEnd);
159
+ const body = lines.join("\n");
160
+ insertions.push({ at, text: at === target.bodyEnd ? `\n${body}\n` : `${body}\n\n` });
161
+ }
162
+ if (insertions.length === 0)
163
+ return { content: base, conflicts, unknownModels };
164
+ let merged = base;
165
+ for (const insertion of insertions.sort((left, right) => right.at - left.at)) {
166
+ merged = `${merged.slice(0, insertion.at)}${insertion.text}${merged.slice(insertion.at)}`;
167
+ }
168
+ return { content: merged, conflicts, unknownModels };
169
+ }
50
170
  //# sourceMappingURL=prisma-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prisma-schema.js","sourceRoot":"","sources":["../../src/core/prisma-schema.ts"],"names":[],"mappings":";;AAQA,0DAaC;AASD,gEAaC;AAGD,sDAEC;AAGD,sDAQC;AArDD,MAAM,qBAAqB,GAAG,2DAA2D,CAAC;AAE1F,SAAgB,uBAAuB,CAAC,OAAe,EAAE,UAAoB,EAAE,YAAsB;IACnG,OAAO,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAc,EAAE,YAAoB,EAAE,EAAE;QAC7F,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,YAAY,GAAG,CAAC,CAAC,GAAe,CAAC;QACnE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACrG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC;AASD,SAAgB,0BAA0B,CAAC,OAAe,EAAE,gBAA0B;IACpF,OAAO,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAc,EAAE,YAAoB,EAAE,EAAE;QAC7F,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,YAAY,GAAG,CAAC,CAAC,GAAe,CAAC;QACnE,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACtE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC;AAGD,SAAgB,qBAAqB,CAAC,GAAW;IAC/C,OAAO,UAAU,GAAG,EAAE,CAAC;AACzB,CAAC;AAGD,SAAgB,qBAAqB,CAAC,OAAe;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAe,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"prisma-schema.js","sourceRoot":"","sources":["../../src/core/prisma-schema.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,38 @@
1
- export declare const MARKER_START = "// @@newbie-framework-start";
2
- export declare const MARKER_END = "// @@newbie-framework-end";
3
- export type SkeletonStrategy = "whole-file" | "marker-block";
4
- export interface SkeletonFile {
1
+ export type MarkerSyntax = "//" | "#";
2
+ export interface FrameworkMarkers {
3
+ start: string;
4
+ end: string;
5
+ }
6
+ export declare function frameworkMarkers(syntax?: MarkerSyntax): FrameworkMarkers;
7
+ export type TemplateFileOwnership = "framework-whole-file" | "framework-marker-block" | "generated" | "template-shipped-host-owned";
8
+ export type RenderedFragment = {
9
+ kind: "line";
10
+ pattern: RegExp;
11
+ } | {
12
+ kind: "block";
13
+ start: string;
14
+ end: string;
15
+ };
16
+ export interface TemplateFile {
5
17
  path: string;
6
- strategy: SkeletonStrategy;
18
+ ownership: TemplateFileOwnership;
19
+ markerSyntax?: MarkerSyntax;
20
+ rendered?: RenderedFragment;
7
21
  }
8
- export declare const SKELETON_FILES: readonly SkeletonFile[];
9
- export declare function extractMarkerBlock(content: string): string | null;
10
- export declare function replaceMarkerBlock(content: string, block: string): string | null;
11
- export type SkeletonChangeKind = "create" | "update" | "missing-markers";
12
- export interface SkeletonChange {
13
- file: SkeletonFile;
14
- kind: SkeletonChangeKind;
22
+ export declare const TEMPLATE_FILES: readonly TemplateFile[];
23
+ export declare function isSyncableTemplateFile(file: TemplateFile): boolean;
24
+ export declare const TEMPLATE_SCAN_IGNORED_DIRECTORIES: ReadonlySet<string>;
25
+ export declare const TEMPLATE_SCAN_IGNORED_FILES: ReadonlySet<string>;
26
+ export declare const TEMPLATE_SCAN_IGNORED_SUFFIXES: readonly string[];
27
+ export declare function findUnclassifiedTemplateFiles(paths: Iterable<string>): string[];
28
+ export declare function extractMarkerBlock(content: string, syntax?: MarkerSyntax): string | null;
29
+ export declare function replaceMarkerBlock(content: string, block: string, syntax?: MarkerSyntax): string | null;
30
+ export type TemplateChangeKind = "create" | "update" | "missing-markers";
31
+ export interface TemplateChange {
32
+ file: TemplateFile;
33
+ kind: TemplateChangeKind;
15
34
  nextContent: string | null;
16
35
  currentComparable: string | null;
17
36
  templateComparable: string | null;
18
37
  }
19
- export declare function planTemplateSync(projectFiles: ReadonlyMap<string, string | null>, templateFiles: ReadonlyMap<string, string | null>): SkeletonChange[];
38
+ export declare function planTemplateSync(projectFiles: ReadonlyMap<string, string | null>, templateFiles: ReadonlyMap<string, string | null>, files?: readonly TemplateFile[]): TemplateChange[];
@@ -1,101 +1,213 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SKELETON_FILES = exports.MARKER_END = exports.MARKER_START = void 0;
3
+ exports.TEMPLATE_SCAN_IGNORED_SUFFIXES = exports.TEMPLATE_SCAN_IGNORED_FILES = exports.TEMPLATE_SCAN_IGNORED_DIRECTORIES = exports.TEMPLATE_FILES = void 0;
4
+ exports.frameworkMarkers = frameworkMarkers;
5
+ exports.isSyncableTemplateFile = isSyncableTemplateFile;
6
+ exports.findUnclassifiedTemplateFiles = findUnclassifiedTemplateFiles;
4
7
  exports.extractMarkerBlock = extractMarkerBlock;
5
8
  exports.replaceMarkerBlock = replaceMarkerBlock;
6
9
  exports.planTemplateSync = planTemplateSync;
7
- exports.MARKER_START = "// @@newbie-framework-start";
8
- exports.MARKER_END = "// @@newbie-framework-end";
9
- exports.SKELETON_FILES = [
10
- { path: "src/main.ts", strategy: "whole-file" },
11
- { path: "tsconfig.json", strategy: "whole-file" },
12
- { path: "tsconfig.build.json", strategy: "whole-file" },
13
- { path: "nest-cli.json", strategy: "whole-file" },
14
- { path: "prisma.config.ts", strategy: "whole-file" },
15
- { path: "prisma/schema.prisma", strategy: "marker-block" },
16
- { path: "deploy/scripts/lib.sh", strategy: "whole-file" },
17
- { path: "deploy/scripts/render-env.sh", strategy: "whole-file" },
18
- { path: "deploy/scripts/deploy.sh", strategy: "whole-file" },
19
- { path: "deploy/scripts/start.sh", strategy: "whole-file" },
20
- { path: "deploy/scripts/backup.sh", strategy: "whole-file" },
21
- { path: "deploy/scripts/provision.sh", strategy: "whole-file" },
22
- { path: "deploy/compose.prod.yml", strategy: "whole-file" },
23
- { path: "deploy/Caddyfile.tmpl", strategy: "whole-file" },
10
+ const env_file_1 = require("./env-file");
11
+ function frameworkMarkers(syntax = "//") {
12
+ return {
13
+ start: `${syntax} @@newbie-framework-start`,
14
+ end: `${syntax} @@newbie-framework-end`,
15
+ };
16
+ }
17
+ exports.TEMPLATE_FILES = [
18
+ { path: "src/main.ts", ownership: "framework-whole-file" },
19
+ { path: "tsconfig.json", ownership: "framework-whole-file" },
20
+ { path: "tsconfig.build.json", ownership: "framework-whole-file" },
21
+ { path: "nest-cli.json", ownership: "framework-whole-file" },
22
+ { path: "prisma.config.ts", ownership: "framework-whole-file" },
23
+ { path: "deploy/compose.framework.yml", ownership: "framework-whole-file" },
24
+ {
25
+ path: "deploy/Caddyfile.tmpl",
26
+ ownership: "framework-whole-file",
27
+ rendered: { kind: "block", start: env_file_1.MODULES_MARKER_START, end: env_file_1.MODULES_MARKER_END },
28
+ },
29
+ { path: "deploy/scripts/lib.sh", ownership: "framework-whole-file" },
30
+ { path: "deploy/scripts/render-env.sh", ownership: "framework-whole-file" },
31
+ { path: "deploy/scripts/deploy.sh", ownership: "framework-whole-file" },
32
+ { path: "deploy/scripts/start.sh", ownership: "framework-whole-file" },
33
+ { path: "deploy/scripts/backup.sh", ownership: "framework-whole-file" },
34
+ { path: "deploy/scripts/provision.sh", ownership: "framework-whole-file" },
35
+ { path: ".env.example", ownership: "framework-marker-block", markerSyntax: "#" },
36
+ { path: ".gitignore", ownership: "framework-marker-block", markerSyntax: "#" },
37
+ {
38
+ path: "prisma/schema.prisma",
39
+ ownership: "framework-marker-block",
40
+ markerSyntax: "//",
41
+ rendered: { kind: "line", pattern: /^\s*schemas\s*=.*$/m },
42
+ },
43
+ { path: "src/modules/modules.config.ts", ownership: "generated" },
44
+ { path: "src/modules/modules.module.ts", ownership: "generated" },
45
+ { path: "deploy/compose.modules.yml", ownership: "generated" },
46
+ { path: "package.json", ownership: "template-shipped-host-owned" },
47
+ { path: "README.md", ownership: "template-shipped-host-owned" },
48
+ { path: ".prettierignore", ownership: "template-shipped-host-owned" },
49
+ { path: "eslint.config.mjs", ownership: "template-shipped-host-owned" },
50
+ { path: "prisma/seed.ts", ownership: "template-shipped-host-owned" },
51
+ { path: "src/application/application.controller.ts", ownership: "template-shipped-host-owned" },
52
+ { path: "src/application/application.module.ts", ownership: "template-shipped-host-owned" },
53
+ { path: "deploy/compose.application.yml", ownership: "template-shipped-host-owned" },
54
+ { path: "deploy/clickhouse/config.d/memory.xml", ownership: "template-shipped-host-owned" },
55
+ { path: ".github/dependabot.yml", ownership: "template-shipped-host-owned" },
56
+ { path: ".github/workflows/ci.yml", ownership: "template-shipped-host-owned" },
57
+ { path: ".github/workflows/dependabot-triage.yml", ownership: "template-shipped-host-owned" },
24
58
  ];
25
- function extractMarkerBlock(content) {
26
- const start = content.indexOf(exports.MARKER_START);
27
- const end = content.indexOf(exports.MARKER_END);
59
+ function isSyncableTemplateFile(file) {
60
+ return file.ownership === "framework-whole-file" || file.ownership === "framework-marker-block";
61
+ }
62
+ const SYNCABLE_FILES = exports.TEMPLATE_FILES.filter(isSyncableTemplateFile);
63
+ exports.TEMPLATE_SCAN_IGNORED_DIRECTORIES = new Set([
64
+ ".git",
65
+ ".idea",
66
+ ".vscode",
67
+ ".newbie",
68
+ "coverage",
69
+ "dist",
70
+ "generated",
71
+ "node_modules",
72
+ ]);
73
+ exports.TEMPLATE_SCAN_IGNORED_FILES = new Set([".DS_Store", ".env", "package-lock.json"]);
74
+ exports.TEMPLATE_SCAN_IGNORED_SUFFIXES = [".tsbuildinfo"];
75
+ function findUnclassifiedTemplateFiles(paths) {
76
+ const registered = new Set(exports.TEMPLATE_FILES.map((file) => file.path));
77
+ return [...paths].filter((filePath) => !registered.has(filePath)).sort(env_file_1.compareStrings);
78
+ }
79
+ function extractMarkerBlock(content, syntax = "//") {
80
+ const markers = frameworkMarkers(syntax);
81
+ const start = content.indexOf(markers.start);
82
+ const end = content.indexOf(markers.end);
28
83
  if (start === -1 || end === -1 || end < start)
29
84
  return null;
30
- return content.slice(start, end + exports.MARKER_END.length);
85
+ return content.slice(start, end + markers.end.length);
31
86
  }
32
- function replaceMarkerBlock(content, block) {
33
- const current = extractMarkerBlock(content);
87
+ function replaceMarkerBlock(content, block, syntax = "//") {
88
+ const current = extractMarkerBlock(content, syntax);
34
89
  if (current === null)
35
90
  return null;
36
91
  return content.replace(current, block);
37
92
  }
38
- function planTemplateSync(projectFiles, templateFiles) {
93
+ function extractRendered(content, fragment) {
94
+ if (fragment.kind === "line") {
95
+ return content.match(fragment.pattern)?.[0] ?? null;
96
+ }
97
+ const start = content.indexOf(fragment.start);
98
+ const end = content.indexOf(fragment.end);
99
+ if (start === -1 || end === -1 || end < start)
100
+ return null;
101
+ return content.slice(start, end + fragment.end.length);
102
+ }
103
+ function replaceRendered(content, fragment, replacement) {
104
+ if (fragment.kind === "line") {
105
+ if (content.match(fragment.pattern) === null)
106
+ return null;
107
+ return content.replace(fragment.pattern, () => replacement);
108
+ }
109
+ const start = content.indexOf(fragment.start);
110
+ const end = content.indexOf(fragment.end);
111
+ if (start === -1 || end === -1 || end < start)
112
+ return null;
113
+ return content.slice(0, start) + replacement + content.slice(end + fragment.end.length);
114
+ }
115
+ function stripRendered(content, fragment) {
116
+ if (fragment.kind === "line") {
117
+ return content
118
+ .split("\n")
119
+ .filter((line) => line.match(fragment.pattern) === null)
120
+ .join("\n");
121
+ }
122
+ const current = extractRendered(content, fragment);
123
+ return current === null ? content : content.replace(current, "");
124
+ }
125
+ function carryRendered(templateContent, projectContent, fragment, filePath) {
126
+ const projectFragment = extractRendered(projectContent, fragment);
127
+ if (projectFragment === null)
128
+ return templateContent;
129
+ const next = replaceRendered(templateContent, fragment, projectFragment);
130
+ if (next === null) {
131
+ throw new Error(`Template ${filePath} is missing the assembly-rendered fragment expected by the registry.`);
132
+ }
133
+ return next;
134
+ }
135
+ function comparable(file, content) {
136
+ let next = content;
137
+ if (file.rendered)
138
+ next = stripRendered(next, file.rendered);
139
+ if (file.ownership === "framework-marker-block") {
140
+ const block = extractMarkerBlock(next, file.markerSyntax);
141
+ if (block === null) {
142
+ throw new Error(`Template ${file.path} is missing the framework block.`);
143
+ }
144
+ next = block;
145
+ }
146
+ return next;
147
+ }
148
+ function planTemplateSync(projectFiles, templateFiles, files = SYNCABLE_FILES) {
39
149
  const changes = [];
40
- for (const file of exports.SKELETON_FILES) {
150
+ for (const file of files) {
41
151
  const templateContent = templateFiles.get(file.path);
42
152
  if (templateContent == null)
43
153
  continue;
44
154
  const projectContent = projectFiles.get(file.path);
45
- if (file.strategy === "whole-file") {
46
- if (projectContent == null) {
155
+ if (projectContent == null) {
156
+ changes.push({
157
+ file,
158
+ kind: "create",
159
+ nextContent: templateContent,
160
+ currentComparable: null,
161
+ templateComparable: comparable(file, templateContent),
162
+ });
163
+ continue;
164
+ }
165
+ if (file.ownership === "framework-marker-block") {
166
+ const markers = frameworkMarkers(file.markerSyntax);
167
+ const templateBlock = extractMarkerBlock(templateContent, file.markerSyntax);
168
+ if (templateBlock === null) {
169
+ throw new Error(`Template ${file.path} is missing the framework block ` + `(${markers.start} / ${markers.end}).`);
170
+ }
171
+ const projectBlock = extractMarkerBlock(projectContent, file.markerSyntax);
172
+ if (projectBlock === null) {
47
173
  changes.push({
48
174
  file,
49
- kind: "create",
50
- nextContent: templateContent,
175
+ kind: "missing-markers",
176
+ nextContent: null,
51
177
  currentComparable: null,
52
- templateComparable: templateContent,
178
+ templateComparable: comparable(file, templateContent),
53
179
  });
180
+ continue;
54
181
  }
55
- else if (projectContent !== templateContent) {
182
+ const templateComparable = comparable(file, templateContent);
183
+ const projectComparable = comparable(file, projectContent);
184
+ if (projectComparable !== templateComparable) {
185
+ const carried = file.rendered
186
+ ? carryRendered(templateContent, projectContent, file.rendered, file.path)
187
+ : templateContent;
188
+ const nextBlock = extractMarkerBlock(carried, file.markerSyntax);
189
+ const nextContent = nextBlock === null ? null : replaceMarkerBlock(projectContent, nextBlock, file.markerSyntax);
56
190
  changes.push({
57
191
  file,
58
192
  kind: "update",
59
- nextContent: templateContent,
60
- currentComparable: projectContent,
61
- templateComparable: templateContent,
193
+ nextContent,
194
+ currentComparable: projectComparable,
195
+ templateComparable,
62
196
  });
63
197
  }
64
198
  continue;
65
199
  }
66
- const templateBlock = extractMarkerBlock(templateContent);
67
- if (templateBlock === null) {
68
- throw new Error(`Template ${file.path} is missing the framework block ` + `(${exports.MARKER_START} / ${exports.MARKER_END}).`);
69
- }
70
- if (projectContent == null) {
71
- changes.push({
72
- file,
73
- kind: "create",
74
- nextContent: templateContent,
75
- currentComparable: null,
76
- templateComparable: templateBlock,
77
- });
78
- continue;
79
- }
80
- const projectBlock = extractMarkerBlock(projectContent);
81
- if (projectBlock === null) {
82
- changes.push({
83
- file,
84
- kind: "missing-markers",
85
- nextContent: null,
86
- currentComparable: null,
87
- templateComparable: templateBlock,
88
- });
89
- continue;
90
- }
91
- if (projectBlock !== templateBlock) {
92
- const nextContent = replaceMarkerBlock(projectContent, templateBlock);
200
+ const projectComparable = comparable(file, projectContent);
201
+ const templateComparable = comparable(file, templateContent);
202
+ if (projectComparable !== templateComparable) {
93
203
  changes.push({
94
204
  file,
95
205
  kind: "update",
96
- nextContent,
97
- currentComparable: projectBlock,
98
- templateComparable: templateBlock,
206
+ nextContent: file.rendered
207
+ ? carryRendered(templateContent, projectContent, file.rendered, file.path)
208
+ : templateContent,
209
+ currentComparable: projectComparable,
210
+ templateComparable,
99
211
  });
100
212
  }
101
213
  }
@@ -1 +1 @@
1
- {"version":3,"file":"template-sync.js","sourceRoot":"","sources":["../../src/core/template-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-sync.js","sourceRoot":"","sources":["../../src/core/template-sync.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -154,7 +154,7 @@ program
154
154
  });
155
155
  program
156
156
  .command("update-template [paths...]")
157
- .description("Diff framework-managed skeleton files (main.ts, tsconfig*, prisma framework block, deploy/*) against the template; business files are skipped. Pass path prefixes (e.g. deploy/) to restrict the scope")
157
+ .description("Diff framework-owned template files (ADR-009 ownership registry: main.ts, tsconfig*, nest-cli.json, prisma.config.ts, prisma framework block, .env.example/.gitignore framework blocks, deploy/*) against the template; generated and host-owned files are skipped. Pass path prefixes (e.g. deploy/) to restrict the scope")
158
158
  .option("--template-path <dir>", "use a local template directory instead of cloning newbie-starter")
159
159
  .option("--template-ref <ref>", "git ref (e.g. a template tag) of newbie-starter to sync from")
160
160
  .option("--write", "apply the template version of differing skeleton files", false)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devbie/newbie-cli",
3
- "version": "1.6.0",
3
+ "version": "1.8.0",
4
4
  "description": "newbie backend framework CLI",
5
5
  "license": "MIT",
6
6
  "author": "worldzhy",
@@ -1,9 +0,0 @@
1
- import { IssueBag } from "../lib/issues";
2
- import { Sink } from "../lib/sink";
3
- export declare function assembleNestJsAssets(params: {
4
- cwd: string;
5
- sink: Sink;
6
- issues: IssueBag;
7
- added: string[];
8
- removed: string[];
9
- }): Promise<void>;
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.assembleNestJsAssets = assembleNestJsAssets;
7
- const promises_1 = __importDefault(require("node:fs/promises"));
8
- const node_path_1 = __importDefault(require("node:path"));
9
- const assets_1 = require("../core/assets");
10
- const paths_1 = require("../constants/paths");
11
- const issues_1 = require("../lib/issues");
12
- const module_install_1 = require("../lib/module-install");
13
- async function readNestCli(cwd) {
14
- try {
15
- return JSON.parse(await promises_1.default.readFile(node_path_1.default.resolve(cwd, paths_1.NEST_CLI_JSON), "utf8"));
16
- }
17
- catch (error) {
18
- if (error.code === "ENOENT")
19
- return null;
20
- throw error;
21
- }
22
- }
23
- async function assembleNestJsAssets(params) {
24
- const { cwd, sink, issues, added, removed } = params;
25
- const nestCli = await readNestCli(cwd);
26
- if (!nestCli) {
27
- (0, issues_1.reportIssue)(issues, sink, `Missing ${paths_1.NEST_CLI_JSON}; skipping nestjs assets update.`);
28
- return;
29
- }
30
- nestCli.compilerOptions = nestCli.compilerOptions ?? {};
31
- let assets = nestCli.compilerOptions.assets ?? [];
32
- for (const key of added) {
33
- const manifest = await (0, module_install_1.readInstalledManifest)(cwd, key);
34
- if (manifest === null) {
35
- (0, issues_1.reportIssue)(issues, sink, `Missing newbie.module.json for '${key}'; its assets were not added.`);
36
- continue;
37
- }
38
- assets = (0, assets_1.addAssets)(assets, manifest.assets ?? []);
39
- }
40
- for (const key of removed) {
41
- const manifest = await (0, module_install_1.readInstalledManifest)(cwd, key);
42
- if (manifest === null)
43
- continue;
44
- assets = (0, assets_1.removeAssets)(assets, manifest.assets ?? []);
45
- }
46
- nestCli.compilerOptions.assets = (0, assets_1.dedupeAssets)(assets);
47
- await sink.writeText(paths_1.NEST_CLI_JSON, JSON.stringify(nestCli, null, 2));
48
- }
49
- //# sourceMappingURL=assets.js.map
@@ -1 +0,0 @@
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,8 +0,0 @@
1
- export type NestAsset = string | {
2
- include: string;
3
- outDir?: string;
4
- };
5
- export declare function isSameAsset(a: NestAsset, b: NestAsset): boolean;
6
- export declare function addAssets(existing: NestAsset[], additions: NestAsset[]): NestAsset[];
7
- export declare function removeAssets(existing: NestAsset[], removals: NestAsset[]): NestAsset[];
8
- export declare function dedupeAssets(assets: NestAsset[]): NestAsset[];
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isSameAsset = isSameAsset;
4
- exports.addAssets = addAssets;
5
- exports.removeAssets = removeAssets;
6
- exports.dedupeAssets = dedupeAssets;
7
- function isSameAsset(a, b) {
8
- if (typeof a === "string" || typeof b === "string") {
9
- return a === b;
10
- }
11
- return a.include === b.include && (a.outDir ?? null) === (b.outDir ?? null);
12
- }
13
- function addAssets(existing, additions) {
14
- const next = [...existing];
15
- for (const asset of additions) {
16
- if (!next.some((candidate) => isSameAsset(candidate, asset))) {
17
- next.push(asset);
18
- }
19
- }
20
- return next;
21
- }
22
- function removeAssets(existing, removals) {
23
- return existing.filter((asset) => !removals.some((removal) => isSameAsset(asset, removal)));
24
- }
25
- function dedupeAssets(assets) {
26
- return assets
27
- .filter(Boolean)
28
- .filter((asset, index, all) => all.findIndex((item) => isSameAsset(item, asset)) === index);
29
- }
30
- //# sourceMappingURL=assets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/core/assets.ts"],"names":[],"mappings":";;AAOA,kCAKC;AAGD,8BAQC;AAGD,oCAEC;AAGD,oCAIC;AA5BD,SAAgB,WAAW,CAAC,CAAY,EAAE,CAAY;IACpD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;AAC9E,CAAC;AAGD,SAAgB,SAAS,CAAC,QAAqB,EAAE,SAAsB;IACrE,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,SAAgB,YAAY,CAAC,QAAqB,EAAE,QAAqB;IACvE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC;AAGD,SAAgB,YAAY,CAAC,MAAmB;IAC9C,OAAO,MAAM;SACV,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;AAChG,CAAC"}