@sculptor/cli 0.1.8 → 0.1.9

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/dist/cli.js CHANGED
@@ -12,7 +12,7 @@ const versionLabel = cliPackageVersion.version ?? "0.0.0";
12
12
  const isCommand = (value) => ["new", "start", "dev", "build", "lint", "test", "generate", "g", "help"].includes(value);
13
13
  const isFlag = (value) => value.startsWith("-");
14
14
  const isVersionFlag = (value) => ["-v", "--v", "--version", "version", "v"].includes(value);
15
- const sculptorBanner = String.raw `+-------------------------------------------------------------------------+
15
+ const sculptorCliBanner = String.raw `+-------------------------------------------------------------------------+
16
16
  | |
17
17
  | ███████╗ ██████╗██╗ ██╗██╗ ██████╗ ████████╗ ██████╗ ██████╗ |
18
18
  | ██╔════╝██╔════╝██║ ██║██║ ██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗ |
@@ -22,12 +22,22 @@ const sculptorBanner = String.raw `+--------------------------------------------
22
22
  | ╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ |
23
23
  | |
24
24
  | SculptorTS CLI |
25
- | v0.1.8 |
25
+ | v0.1.9 |
26
26
  | |
27
27
  +-------------------------------------------------------------------------+`;
28
+ const sculptorDevBanner = (version) => String.raw `
29
+
30
+ ███████╗ ██████╗██╗ ██╗██╗ ██████╗ ████████╗ ██████╗ ██████╗
31
+ ██╔════╝██╔════╝██║ ██║██║ ██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗
32
+ ███████╗██║ ██║ ██║██║ ██████╔╝ ██║ ██║ ██║██████╔╝
33
+ ╚════██║██║ ██║ ██║██║ ██╔═══╝ ██║ ██║ ██║██╔══██╗
34
+ ███████║╚██████╗╚██████╔╝███████╗██║ ██║ ╚██████╔╝██║ ██║
35
+ ╚══════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
36
+
37
+ SculptorTS CLI v${version}`;
28
38
  const buildBanner = (title, subtitle) => {
29
- if (title === "SculptorTS CLI" && subtitle === "v0.1.8") {
30
- return sculptorBanner;
39
+ if (title === "SculptorTS CLI" && subtitle === `v${versionLabel}`) {
40
+ return sculptorCliBanner;
31
41
  }
32
42
  const width = 56;
33
43
  const line = `+${"-".repeat(width - 2)}+`;
@@ -55,6 +65,16 @@ const buildBanner = (title, subtitle) => {
55
65
  const printBanner = (log, title, subtitle) => {
56
66
  log(buildBanner(title, subtitle));
57
67
  };
68
+ const printDevBanner = (log) => {
69
+ log(sculptorDevBanner(versionLabel));
70
+ };
71
+ const requireAppRoot = (cwd, command) => {
72
+ const sculptorConfig = path.join(cwd, "sculptor.json");
73
+ if (!fs.existsSync(sculptorConfig)) {
74
+ throw new Error(`${command} can only be run from a Sculptor app root.`);
75
+ }
76
+ return cwd;
77
+ };
58
78
  const extractOutputDir = (args) => {
59
79
  const index = args.findIndex((arg) => arg === "in");
60
80
  if (index < 0 || index === args.length - 1) {
@@ -93,22 +113,19 @@ const getPrompt = (prompt) => {
93
113
  }
94
114
  };
95
115
  };
96
- const resolveAppRoot = (cwd) => {
97
- const candidate = path.join(cwd, "app");
98
- return fs.existsSync(path.join(candidate, "sculptor.json")) ? candidate : cwd;
99
- };
100
116
  const resolveDefaultMode = (cwd) => {
101
- const config = loadConfig(resolveAppRoot(cwd));
117
+ const config = loadConfig(cwd);
102
118
  const style = config.framework.routing?.style;
103
119
  return style === "decorator" || style === "functional" || style === "hybrid"
104
120
  ? style
105
121
  : "decorator";
106
122
  };
107
123
  const resolveDefaultDevServer = (cwd) => {
108
- const config = loadConfig(resolveAppRoot(cwd));
124
+ const config = loadConfig(cwd);
109
125
  const devServer = config.framework.project?.devServer;
110
126
  return devServer === "nodemon" ? "nodemon" : "tsx";
111
127
  };
128
+ const resolveTestingGenerate = (cwd) => loadConfig(cwd).framework.testing?.generate === true;
112
129
  const resolveFrameworkLock = (mode, provided) => {
113
130
  if (provided !== undefined) {
114
131
  return provided;
@@ -257,7 +274,11 @@ const resolveProjectMetadata = async (args, cwd, prompt) => {
257
274
  version,
258
275
  mode,
259
276
  frameworkLock,
260
- devServer
277
+ devServer,
278
+ testing: {
279
+ generate: false,
280
+ framework: "vitest"
281
+ }
261
282
  };
262
283
  };
263
284
  const runSpawn = (command, args, cwd, spawn, log, env) => {
@@ -286,13 +307,13 @@ const handleNew = async (args, cwd, prompt, spawn, log) => {
286
307
  log(`Created SculptorTS project at ${targetDir}`);
287
308
  };
288
309
  const handleDev = (args, cwd, spawn, log) => {
289
- const appRoot = resolveAppRoot(cwd);
310
+ const appRoot = requireAppRoot(cwd, "sc dev");
290
311
  const devServer = resolveDefaultDevServer(cwd);
291
312
  const port = getFlagValue(args, ["--port"]);
292
313
  if (port) {
293
314
  process.env.PORT = port;
294
315
  }
295
- printBanner(log, "SculptorTS", `Starting in ${devServer} mode`);
316
+ printDevBanner(log);
296
317
  if (devServer === "nodemon") {
297
318
  runSpawn("npx", [
298
319
  "nodemon",
@@ -308,7 +329,7 @@ const handleDev = (args, cwd, spawn, log) => {
308
329
  runSpawn("npx", ["tsx", path.join(appRoot, "src/main.ts")], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
309
330
  };
310
331
  const handleStart = (args, cwd, spawn, log) => {
311
- const appRoot = resolveAppRoot(cwd);
332
+ const appRoot = requireAppRoot(cwd, "sc start");
312
333
  const port = getFlagValue(args, ["--port"]);
313
334
  const watch = getFlagPresence(args, ["--watch"]);
314
335
  const distEntry = path.join(appRoot, "dist", "main.js");
@@ -317,28 +338,27 @@ const handleStart = (args, cwd, spawn, log) => {
317
338
  process.env.PORT = port;
318
339
  }
319
340
  if (!watch && fs.existsSync(distEntry)) {
320
- printBanner(log, "SculptorTS", "Starting application");
321
- runSpawn("node", [distEntry], cwd, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
341
+ runSpawn("node", [distEntry], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
322
342
  return;
323
343
  }
324
344
  if (watch) {
325
345
  handleDev(args, cwd, spawn, log);
326
346
  return;
327
347
  }
328
- printBanner(log, "SculptorTS", "Starting application");
329
- runSpawn("npx", ["tsx", srcEntry], cwd, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
348
+ runSpawn("npx", ["tsx", srcEntry], appRoot, spawn, log, { SCULPTOR_SUPPRESS_BANNER: "1" });
330
349
  };
331
350
  const handleBuild = (cwd, spawn, log) => {
332
- const appTsconfig = path.join(resolveAppRoot(cwd), "tsconfig.json");
333
- runSpawn("npx", ["tsc", "-p", appTsconfig], cwd, spawn, log);
351
+ const appRoot = requireAppRoot(cwd, "sc build");
352
+ const appTsconfig = path.join(appRoot, "tsconfig.json");
353
+ runSpawn("npx", ["tsc", "-p", appTsconfig], appRoot, spawn, log);
334
354
  };
335
355
  const handleLint = (cwd, spawn, log) => {
336
- const appRoot = resolveAppRoot(cwd);
337
- const targets = appRoot === cwd ? ["."] : ["app", "packages"];
338
- runSpawn("npx", ["eslint", ...targets, "--ext", ".ts"], cwd, spawn, log);
356
+ const appRoot = requireAppRoot(cwd, "sc lint");
357
+ runSpawn("npx", ["eslint", ".", "--ext", ".ts"], appRoot, spawn, log);
339
358
  };
340
359
  const handleTest = (cwd, spawn, log) => {
341
- runSpawn("npx", ["vitest", "run"], cwd, spawn, log);
360
+ const appRoot = requireAppRoot(cwd, "sc test");
361
+ runSpawn("npx", ["vitest", "run"], appRoot, spawn, log);
342
362
  };
343
363
  const handleGenerate = (args, cwd, prompt, log, error) => {
344
364
  const [kindInput, ...restInput] = args;
@@ -390,6 +410,7 @@ const handleGenerate = (args, cwd, prompt, log, error) => {
390
410
  error("Routers can only be scaffolded in functional or hybrid mode.");
391
411
  process.exit(1);
392
412
  }
413
+ const appRoot = requireAppRoot(cwd, "sc generate");
393
414
  const resolvedName = explicitName ??
394
415
  (() => {
395
416
  if (!outputDir) {
@@ -398,8 +419,8 @@ const handleGenerate = (args, cwd, prompt, log, error) => {
398
419
  const parts = outputDir.split(/[\\/]/).filter(Boolean);
399
420
  return parts[parts.length - 1] ?? "index";
400
421
  })();
401
- const files = generateResourceFiles(kind, resolvedName, mode, devServer, outputDir, typeVariant);
402
- const targetDir = resolveAppRoot(cwd);
422
+ const files = generateResourceFiles(kind, resolvedName, mode, devServer, outputDir, typeVariant, resolveTestingGenerate(appRoot));
423
+ const targetDir = appRoot;
403
424
  writeGeneratedFiles(targetDir, files);
404
425
  log(`Generated ${kind} "${resolvedName}" using ${mode} mode.`);
405
426
  return Promise.resolve();
@@ -456,7 +477,11 @@ export const runCli = async (argv = process.argv, options = {}) => {
456
477
  }
457
478
  };
458
479
  if (fileURLToPath(import.meta.url) === process.argv[1]) {
459
- void runCli();
480
+ void runCli().catch((error) => {
481
+ const message = error instanceof Error ? error.message : String(error);
482
+ console.error(message);
483
+ process.exit(1);
484
+ });
460
485
  }
461
486
  export { resolveProjectMetadata };
462
487
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,eAAe,EAIf,QAAQ,EAER,mBAAmB,EACpB,MAAM,eAAe,CAAC;AAIvB,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAClC,EAAE,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAC7C,CAAC;AAC1B,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,IAAI,OAAO,CAAC;AAU1D,MAAM,SAAS,GAAG,CAAC,KAAa,EAAoB,EAAE,CACpD,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAE5F,MAAM,MAAM,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAEjE,MAAM,aAAa,GAAG,CAAC,KAAa,EAAW,EAAE,CAC/C,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAE7D,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;4EAYwC,CAAC;AAE7E,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,MAAM,CAAC,GAAG,CAAA;;;;;;;;;+CASlB,OAAO,EAAE,CAAC;AAEzD,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,QAAiB,EAAU,EAAE;IAC/D,IAAI,KAAK,KAAK,gBAAgB,IAAI,QAAQ,KAAK,IAAI,YAAY,EAAE,EAAE,CAAC;QAClE,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;IAC1C,MAAM,MAAM,GAAG,CAAC,KAAa,EAAU,EAAE;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1E,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAC5D,CAAC,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,MAAM,CAAC,uDAAuD,CAAC;QAC/D,MAAM,CAAC,uDAAuD,CAAC;QAC/D,MAAM,CAAC,uDAAuD,CAAC;QAC/D,MAAM,CAAC,+DAA+D,CAAC;QACvE,MAAM,CAAC,uDAAuD,CAAC;QAC/D,MAAM,CAAC,4DAA4D,CAAC;QACpE,MAAM,CAAC,EAAE,CAAC;QACV,MAAM,CAAC,KAAK,CAAC;QACb,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,IAAI;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,GAAiC,EAAE,KAAa,EAAE,QAAiB,EAAQ,EAAE;IAChG,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,GAAiC,EAAQ,EAAE;IACjE,GAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,OAAe,EAAU,EAAE;IAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAEvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,4CAA4C,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,IAAc,EAC0B,EAAE;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IAEpD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACzD,SAAS,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;KAC3B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,IAAc,EAAE,KAAe,EAAsB,EAAE;IAC3E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,GAAG,IAAI,GAAG,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3D,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAc,EAAE,KAAe,EAAW,EAAE,CACnE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AAE9F,MAAM,SAAS,GAAG,CAAC,MAAiB,EAAY,EAAE;IAChD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,EAAE,QAAgB,EAAE,YAAqB,EAAE,EAAE;QACvD,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,IAAI,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,OAAO,IAAI,YAAY,IAAI,EAAE,CAAC;QACvC,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAgB,EAAE;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;IAE9C,OAAO,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,QAAQ;QAC1E,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,WAAW,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,GAAW,EAAqB,EAAE;IACjE,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC;IACtD,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAW,EAAE,CACtD,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;AAEvD,MAAM,oBAAoB,GAAG,CAC3B,IAAkB,EAClB,QAAkB,EACT,EAAE;IACX,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,KAAK,QAAQ,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,QAAiB,EAAW,EAAE;IACtE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,KAAK,EACxB,GAAa,EACb,QAAgB,EAChB,OAAsE,EACtE,YAAoB,EACH,EAAE;IACnB,MAAM,KAAK,GAAG,OAAO;SAClB,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,GAAG,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;IAC3D,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,QAAQ,KAAK,KAAK,UAAU,EAAE,YAAY,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACxE,OAAO,OAAO,CAAC,OAAO,GAAG,CAAC,CAAE,CAAC,KAAK,CAAC;IACrC,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CACzB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,UAAU,CACzF,CAAC;IAEF,OAAO,MAAM,EAAE,KAAK,IAAI,YAAY,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,GAAiC,EAAQ,EAAE;IAChE,GAAG,CAAC,GAAG,WAAW,CAAC,gBAAgB,EAAE,IAAI,YAAY,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCzD,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,KAAyB,EAAE,GAAiC,EAAQ,EAAE;IACvF,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,aAAa,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,GAAG,CAAC,YAAY,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC3B,GAAG,CAAC,cAAc,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,GAAG,CAAC,UAAU,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAC3B,GAAG,CAAC,cAAc,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,GAAG,CAAC,QAAQ,CAAC,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,GAAG,CAAC,SAAS,CAAC,CAAC;QACf,OAAO;IACT,CAAC;IAED,aAAa,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,GAAiC,EAAQ,EAAE;IAC/D,WAAW,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;IACvD,GAAG,CAAC,kBAAkB,YAAY,EAAE,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,KAAK,EAClC,IAAc,EACd,GAAW,EACX,MAAiB,EACiB,EAAE;IACpC,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,YAAY,GAChB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzB,YAAY,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,KAAK,SAAS,CAAC;IAEhD,MAAM,OAAO,GACX,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7E,MAAM,OAAO,GACX,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC,YAAY;YACX,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC;YACtC,CAAC,CAAC,CAAC,MAAM,YAAY,CACjB,GAAG,EACH,4BAA4B,EAC5B;gBACE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,yBAAyB,EAAE;gBAClF,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,8BAA8B,EAAE;gBACzF,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;aAC9E,EACD,WAAW,CACZ,CAAC,CAAC,CAAC;IACV,MAAM,IAAI,GACR,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,WAAW,CAAC;IAE3D,MAAM,qBAAqB,GAAG,YAAY,CAAC,IAAI,EAAE;QAC/C,iBAAiB;QACjB,iBAAiB;QACjB,kBAAkB;KACnB,CAAC,CAAC;IACH,MAAM,aAAa,GACjB,qBAAqB,KAAK,SAAS;QACjC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC;QACrE,CAAC,CAAC,iBAAiB,CACf,MAAM,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAC/D,oBAAoB,CAAC,IAAI,CAAC,CAC3B,CAAC;IACR,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;WACpE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;WAC5C,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,SAAS,GACb,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,KAAK;QACpD,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,CAAC,MAAM,YAAY,CACjB,GAAG,EACH,qBAAqB,EACrB;YACE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,yBAAyB,EAAE;YACtE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,yBAAyB,EAAE;SAC/E,EACD,uBAAuB,CAAC,GAAG,CAAC,CAC7B,CAAsB,CAAC;IAE9B,OAAO;QACL,OAAO;QACP,OAAO;QACP,IAAI;QACJ,aAAa;QACb,SAAS;QACT,OAAO,EAAE;YACP,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,QAAQ;SACpB;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CACf,OAAe,EACf,IAAc,EACd,GAAW,EACX,KAAuB,EACvB,GAAiC,EACjC,GAAuB,EACjB,EAAE;IACR,GAAG,CAAC,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;QAClC,GAAG;QACH,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;QACnC,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,GAAG,GAAG;SACP;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,EACrB,IAAc,EACd,GAAW,EACX,MAAgB,EAChB,KAAuB,EACvB,GAAiC,EAClB,EAAE;IACjB,WAAW,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,uBAAuB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACvE,QAAQ,CACN,KAAK,EACL,CAAC,GAAG,EAAE,IAAI,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,yBAAyB,CAAC,EACzF,SAAS,EACT,KAAK,EACL,GAAG,CACJ,CAAC;IACF,GAAG,CAAC,iCAAiC,SAAS,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAChB,IAAc,EACd,GAAW,EACX,KAAuB,EACvB,GAAiC,EAC3B,EAAE;IACR,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE5C,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,GAAG,CAAC,CAAC;IAEpB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,QAAQ,CACN,KAAK,EACL;YACE,SAAS;YACT,SAAS;YACT,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;YACzB,OAAO;YACP,IAAI;YACJ,QAAQ;YACR,iBAAiB;SAClB,EACD,OAAO,EACP,KAAK,EACL,GAAG,EACH,EAAE,wBAAwB,EAAE,GAAG,EAAE,CAClC,CAAC;QACF,OAAO;IACT,CAAC;IAED,QAAQ,CACN,KAAK,EACL,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,EAC1C,OAAO,EACP,KAAK,EACL,GAAG,EACH,EAAE,wBAAwB,EAAE,GAAG,EAAE,CAClC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAClB,IAAc,EACd,GAAW,EACX,KAAuB,EACvB,GAAiC,EAC3B,EAAE;IACR,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAEtD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACvC,QAAQ,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC;QACtF,OAAO;IACT,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IAED,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7F,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAAuB,EAAE,GAAiC,EAAQ,EAAE;IACpG,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,KAAuB,EAAE,GAAiC,EAAQ,EAAE;IACnG,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,KAAuB,EAAE,GAAiC,EAAQ,EAAE;IACnG,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,IAAc,EACd,GAAW,EACX,MAAgB,EAChB,GAAiC,EACjC,KAAmC,EACpB,EAAE;IACjB,MAAM,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;IAEvC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAiC;QAC5C,CAAC,EAAE,YAAY;QACf,UAAU,EAAE,YAAY;QACxB,CAAC,EAAE,SAAS;QACZ,OAAO,EAAE,SAAS;QAClB,CAAC,EAAE,QAAQ;QACX,EAAE,EAAE,QAAQ;QACZ,MAAM,EAAE,QAAQ;QAChB,EAAE,EAAE,YAAY;QAChB,UAAU,EAAE,YAAY;QACxB,CAAC,EAAE,MAAM;QACT,IAAI,EAAE,MAAM;QACZ,CAAC,EAAE,OAAO;QACV,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,OAAO;KAClB,CAAC;IAEF,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,KAAK,CAAC,sBAAsB,SAAS,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,iBAAiB,CAC5B,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,EACrC,YAAY,CACb,CAAC;IACF,MAAM,WAAW,GACf,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChD,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7C,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,CAAC;IAEjB,IACE,IAAI,KAAK,MAAM;QACf,CAAC,YAAY;QACb,CAAC,SAAS,EACV,CAAC;QACD,KAAK,CAAC,sBAAsB,IAAI,SAAS,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QAC7C,KAAK,CAAC,8DAA8D,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAEnD,MAAM,YAAY,GAChB,YAAY;QACZ,CAAC,GAAG,EAAE;YACJ,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC;QAC5C,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,KAAK,GAAG,qBAAqB,CACjC,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,SAAS,EACT,WAAW,EACX,sBAAsB,CAAC,OAAO,CAAC,CAChC,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC;IAE1B,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACtC,GAAG,CAAC,aAAa,IAAI,KAAK,YAAY,WAAW,IAAI,QAAQ,CAAC,CAAC;IAC/D,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,EACzB,OAAiB,OAAO,CAAC,IAAI,EAC7B,UAAsB,EAAE,EACT,EAAE;IACjB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;IACzC,MAAM,CAAC,EAAE,AAAD,EAAG,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAEvC,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClE,aAAa,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IAED,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,YAAY,CAAC,GAAG,CAAC,CAAC;QAClB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,YAAY,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO;IACT,CAAC;IAED,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACxB,OAAO;QACT,KAAK,KAAK;YACR,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAC/C,OAAO;QACT,KAAK,OAAO;YACV,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YACnC,OAAO;QACT,KAAK,KAAK;YACR,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YACjC,OAAO;QACT,KAAK,OAAO;YACV,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAC7B,OAAO;QACT,KAAK,MAAM;YACT,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAC5B,OAAO;QACT,KAAK,MAAM;YACT,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YAC5B,OAAO;QACT,KAAK,UAAU,CAAC;QAChB,KAAK,GAAG;YACN,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO;IACX,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,KAAK,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACrC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -2,15 +2,21 @@ export type ScaffoldMode = "decorator" | "functional" | "hybrid";
2
2
  export type DevServer = "tsx" | "nodemon";
3
3
  export type GenerateKind = "controller" | "service" | "module" | "middleware" | "type" | "route";
4
4
  export type TypeVariant = "type" | "interface" | "class" | "enum";
5
+ export type TestingFramework = "vitest";
6
+ export interface TestingMetadata {
7
+ generate: boolean;
8
+ framework: TestingFramework;
9
+ }
5
10
  export interface ScaffoldProjectMetadata {
6
11
  appName: string;
7
12
  version: string;
8
13
  mode: ScaffoldMode;
9
14
  frameworkLock: boolean;
10
15
  devServer: DevServer;
16
+ testing: TestingMetadata;
11
17
  }
12
18
  export declare const scaffoldProject: (metadata: ScaffoldProjectMetadata, targetDir: string) => void;
13
- export declare const generateResourceFiles: (kind: GenerateKind, name: string, mode: ScaffoldMode, devServer?: DevServer, outputDir?: string, typeVariant?: TypeVariant) => Record<string, string>;
19
+ export declare const generateResourceFiles: (kind: GenerateKind, name: string, mode: ScaffoldMode, devServer?: DevServer, outputDir?: string, typeVariant?: TypeVariant, testingGenerate?: boolean) => Record<string, string>;
14
20
  export declare const writeGeneratedFiles: (targetDir: string, files: Record<string, string>) => void;
15
21
  export declare const readModeFromFlags: (flags: string[], fallback: ScaffoldMode) => ScaffoldMode;
16
22
  export declare const parseGenerateMode: (mode: string | undefined, fallback: ScaffoldMode) => ScaffoldMode;
package/dist/scaffold.js CHANGED
@@ -33,6 +33,8 @@ const typeFileName = (name, variant) => {
33
33
  const suffix = variant === "type" ? "type" : variant;
34
34
  return `${name}.${suffix}.ts`;
35
35
  };
36
+ const specFileName = (name, suffix) => `${name}.${suffix}.spec.ts`;
37
+ const specImportPath = (sourcePath) => normalizeRelativePath(path.posix.relative("src/tests", sourcePath)).replace(/\.ts$/, ".js");
36
38
  const resolveGeneratorOutputDir = (kind, outputDir) => {
37
39
  if (outputDir) {
38
40
  return normalizeRelativePath(outputDir);
@@ -139,7 +141,7 @@ const rootTsconfigTemplate = `{
139
141
  "include": ["src/**/*.ts"],
140
142
  "exclude": ["dist", "node_modules"]
141
143
  }`;
142
- const sculptorTemplate = (mode, devServer, frameworkLock) => `{
144
+ const sculptorTemplate = (mode, devServer, frameworkLock, testing) => `{
143
145
  "project": {
144
146
  "srcRoot": "src",
145
147
  "entryFile": "main.ts",
@@ -148,6 +150,10 @@ const sculptorTemplate = (mode, devServer, frameworkLock) => `{
148
150
  "routing": {
149
151
  "style": "${mode}"
150
152
  },
153
+ "testing": {
154
+ "generate": ${testing.generate ? "true" : "false"},
155
+ "framework": "${testing.framework}"
156
+ },
151
157
  "frameworkLock": ${frameworkLock ? "true" : "false"}
152
158
  }`;
153
159
  const eslintConfigTemplate = `import parser from "@typescript-eslint/parser";
@@ -295,6 +301,174 @@ const healthHandlerTemplate = `export const healthHandler = (_req: unknown, res:
295
301
  res.json({ status: "ok" });
296
302
  };
297
303
  `;
304
+ const healthControllerSpecTemplate = `import { describe, expect, it } from "vitest";
305
+
306
+ import { HealthController } from "../app/controllers/health.controller.js";
307
+
308
+ describe("HealthController", () => {
309
+ it("returns the expected health payload", () => {
310
+ const controller = new HealthController();
311
+
312
+ expect(controller.health()).toEqual({ status: "ok" });
313
+ expect(controller.ping()).toEqual({ message: "pong" });
314
+ });
315
+ });
316
+ `;
317
+ const healthServiceSpecTemplate = `import { describe, expect, it } from "vitest";
318
+
319
+ import { HealthService } from "../app/services/health.service.js";
320
+
321
+ describe("HealthService", () => {
322
+ it("can be instantiated", () => {
323
+ expect(new HealthService()).toBeInstanceOf(HealthService);
324
+ });
325
+ });
326
+ `;
327
+ const healthRoutesSpecTemplate = `import express from "express";
328
+ import request from "supertest";
329
+ import { describe, expect, it } from "vitest";
330
+
331
+ import { healthRoutes } from "../app/routes/health.routes.js";
332
+
333
+ describe("healthRoutes", () => {
334
+ it("serves the health endpoint", async () => {
335
+ const app = express();
336
+ app.use(healthRoutes);
337
+
338
+ await request(app).get("/health").expect(200).expect({ status: "ok" });
339
+ await request(app).get("/ping").expect(200).expect({ message: "pong" });
340
+ });
341
+ });
342
+ `;
343
+ const healthMiddlewareSpecTemplate = `import { describe, expect, it, vi } from "vitest";
344
+
345
+ import { healthMiddleware } from "../app/middlewares/health.middleware.js";
346
+
347
+ describe("healthMiddleware", () => {
348
+ it("calls next", () => {
349
+ const next = vi.fn();
350
+
351
+ healthMiddleware({} as never, {} as never, next);
352
+
353
+ expect(next).toHaveBeenCalledTimes(1);
354
+ });
355
+ });
356
+ `;
357
+ const controllerSpecTemplate = (name, sourcePath) => {
358
+ const importPath = specImportPath(sourcePath);
359
+ return `import { describe, expect, it } from "vitest";
360
+
361
+ import { ${toPascalCase(name)}Controller } from "${importPath}";
362
+
363
+ describe("${toPascalCase(name)}Controller", () => {
364
+ it("returns the expected payload", () => {
365
+ const controller = new ${toPascalCase(name)}Controller();
366
+
367
+ expect(controller.findAll()).toEqual({ resource: "${name}" });
368
+ });
369
+ });
370
+ `;
371
+ };
372
+ const serviceSpecTemplate = (name, sourcePath) => {
373
+ const importPath = specImportPath(sourcePath);
374
+ return `import { describe, expect, it } from "vitest";
375
+
376
+ import { ${toPascalCase(name)}Service } from "${importPath}";
377
+
378
+ describe("${toPascalCase(name)}Service", () => {
379
+ it("can be instantiated", () => {
380
+ expect(new ${toPascalCase(name)}Service()).toBeInstanceOf(${toPascalCase(name)}Service);
381
+ });
382
+ });
383
+ `;
384
+ };
385
+ const routeSpecTemplate = (name, sourcePath) => {
386
+ const importPath = specImportPath(sourcePath);
387
+ return `import express from "express";
388
+ import request from "supertest";
389
+ import { describe, expect, it } from "vitest";
390
+
391
+ import { ${toCamelCase(name)}Routes } from "${importPath}";
392
+
393
+ describe("${toCamelCase(name)}Routes", () => {
394
+ it("serves the resource endpoint", async () => {
395
+ const app = express();
396
+ app.use(${toCamelCase(name)}Routes);
397
+
398
+ await request(app).get("/${name}").expect(200).expect({ resource: "${name}" });
399
+ });
400
+ });
401
+ `;
402
+ };
403
+ const middlewareSpecTemplate = (name, sourcePath) => {
404
+ const importPath = specImportPath(sourcePath);
405
+ return `import { describe, expect, it, vi } from "vitest";
406
+
407
+ import { ${toCamelCase(name)}Middleware } from "${importPath}";
408
+
409
+ describe("${toCamelCase(name)}Middleware", () => {
410
+ it("calls next", () => {
411
+ const next = vi.fn();
412
+
413
+ ${toCamelCase(name)}Middleware({} as never, {} as never, next);
414
+
415
+ expect(next).toHaveBeenCalledTimes(1);
416
+ });
417
+ });
418
+ `;
419
+ };
420
+ const buildCompanionTests = (generatedFiles, testing) => {
421
+ if (!testing.generate) {
422
+ return {};
423
+ }
424
+ const tests = {};
425
+ for (const [filePath] of Object.entries(generatedFiles)) {
426
+ const normalizedPath = normalizeRelativePath(filePath);
427
+ const baseName = path.posix.basename(normalizedPath, ".ts");
428
+ if (normalizedPath.endsWith(".controller.ts")) {
429
+ const resourceName = baseName.replace(/\.controller$/, "");
430
+ if (normalizedPath.startsWith("src/app/controllers/")) {
431
+ tests[`src/tests/${specFileName(resourceName, "controller")}`] =
432
+ controllerSpecTemplate(resourceName, normalizedPath);
433
+ continue;
434
+ }
435
+ tests[`src/tests/${specFileName(resourceName, "routes")}`] = routeSpecTemplate(resourceName, normalizedPath.replace(/\.handler\.ts$/, ".routes.ts"));
436
+ tests[`src/tests/${specFileName(resourceName, "handler")}`] = `import { describe, expect, it, vi } from "vitest";
437
+
438
+ import { ${toPascalCase(resourceName)}Handler } from "../app/handlers/${resourceName}.js";
439
+
440
+ describe("${toPascalCase(resourceName)}Handler", () => {
441
+ it("writes the resource payload", () => {
442
+ const res = { json: vi.fn() };
443
+
444
+ ${toPascalCase(resourceName)}Handler({} as never, res);
445
+
446
+ expect(res.json).toHaveBeenCalledWith({ resource: "${resourceName}" });
447
+ });
448
+ });
449
+ `;
450
+ continue;
451
+ }
452
+ if (normalizedPath.endsWith(".service.ts")) {
453
+ const resourceName = baseName.replace(/\.service$/, "");
454
+ tests[`src/tests/${specFileName(resourceName, "service")}`] =
455
+ serviceSpecTemplate(resourceName, normalizedPath);
456
+ continue;
457
+ }
458
+ if (normalizedPath.endsWith(".routes.ts")) {
459
+ const resourceName = baseName.replace(/\.routes$/, "");
460
+ tests[`src/tests/${specFileName(resourceName, "routes")}`] =
461
+ routeSpecTemplate(resourceName, normalizedPath);
462
+ continue;
463
+ }
464
+ if (normalizedPath.endsWith(".middleware.ts")) {
465
+ const resourceName = baseName.replace(/\.middleware$/, "");
466
+ tests[`src/tests/${specFileName(resourceName, "middleware")}`] =
467
+ middlewareSpecTemplate(resourceName, normalizedPath);
468
+ }
469
+ }
470
+ return tests;
471
+ };
298
472
  const createDecoratorController = (name, outputDir = "src/app/controllers") => ({
299
473
  [`${normalizeRelativePath(outputDir)}/${controllerFileName(name)}`]: `import { Controller, Get } from "@sculptor/core";
300
474
 
@@ -379,7 +553,7 @@ const createTypeResource = (name, variant, outputDir) => {
379
553
  const appShellFiles = (metadata) => ({
380
554
  "package.json": rootPackageJsonTemplate(metadata.appName, metadata.version, metadata.devServer),
381
555
  "tsconfig.json": rootTsconfigTemplate,
382
- "sculptor.json": sculptorTemplate(metadata.mode, metadata.devServer, metadata.frameworkLock),
556
+ "sculptor.json": sculptorTemplate(metadata.mode, metadata.devServer, metadata.frameworkLock, metadata.testing),
383
557
  "props.json": propsTemplate,
384
558
  "src/main.ts": mainTemplate,
385
559
  "src/registry.ts": registryTemplate(metadata.mode)
@@ -387,7 +561,7 @@ const appShellFiles = (metadata) => ({
387
561
  const resourceShellFiles = (name, mode, devServer) => ({
388
562
  "package.json": rootPackageJsonTemplate(name, "0.1.0", devServer),
389
563
  "tsconfig.json": rootTsconfigTemplate,
390
- "sculptor.json": sculptorTemplate(mode, devServer, mode !== "hybrid"),
564
+ "sculptor.json": sculptorTemplate(mode, devServer, mode !== "hybrid", { generate: false, framework: "vitest" }),
391
565
  "props.json": propsTemplate,
392
566
  "src/main.ts": mainTemplate,
393
567
  "src/registry.ts": registryTemplate(mode),
@@ -411,6 +585,7 @@ export const scaffoldProject = (metadata, targetDir) => {
411
585
  rootFiles["src/app/routes/health.routes.ts"] = healthRoutesTemplate;
412
586
  rootFiles["src/app/handlers/health.handler.ts"] = healthHandlerTemplate;
413
587
  }
588
+ Object.assign(rootFiles, buildCompanionTests(rootFiles, metadata.testing));
414
589
  for (const [relativePath, content] of Object.entries(rootFiles)) {
415
590
  writeTextFile(path.join(targetDir, relativePath), content);
416
591
  }
@@ -420,53 +595,98 @@ export const scaffoldProject = (metadata, targetDir) => {
420
595
  "src/app/services",
421
596
  "src/app/modules",
422
597
  "src/app/middlewares",
423
- "src/app/handlers"
598
+ "src/app/handlers",
599
+ "src/tests"
424
600
  ]) {
425
601
  ensureDir(path.join(targetDir, dir));
426
602
  }
427
603
  };
428
- export const generateResourceFiles = (kind, name, mode, devServer = "tsx", outputDir, typeVariant = "type") => {
604
+ export const generateResourceFiles = (kind, name, mode, devServer = "tsx", outputDir, typeVariant = "type", testingGenerate = false) => {
429
605
  const resolvedOutputDir = resolveGeneratorOutputDir(kind, outputDir);
430
606
  const resolvedName = resolveFileStem(name, resolvedOutputDir);
431
607
  const functionalRouteDir = normalizeRelativePath(outputDir ?? "src/app/routes");
432
608
  const functionalHandlerDir = normalizeRelativePath(outputDir ?? "src/app/handlers");
609
+ const sourceFiles = {};
433
610
  switch (kind) {
434
611
  case "controller":
435
612
  if (mode === "functional") {
436
- return {
613
+ Object.assign(sourceFiles, {
437
614
  [`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
438
615
  [`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
439
- };
616
+ });
617
+ break;
440
618
  }
441
619
  if (mode === "hybrid") {
442
- return {
620
+ Object.assign(sourceFiles, {
443
621
  ...createDecoratorController(resolvedName, resolvedOutputDir),
444
622
  [`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
445
623
  [`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
446
- };
624
+ });
625
+ break;
447
626
  }
448
- return createDecoratorController(resolvedName, resolvedOutputDir);
627
+ Object.assign(sourceFiles, createDecoratorController(resolvedName, resolvedOutputDir));
628
+ break;
449
629
  case "service":
450
- return {
630
+ Object.assign(sourceFiles, {
451
631
  [`${resolvedOutputDir}/${serviceFileName(resolvedName)}`]: createServiceResource(resolvedName)[`src/app/services/${serviceFileName(resolvedName)}`]
452
- };
632
+ });
633
+ break;
453
634
  case "module":
454
- return {
635
+ Object.assign(sourceFiles, {
455
636
  [`${resolvedOutputDir}/${moduleFileName(resolvedName)}`]: createModuleResource(resolvedName)[`src/app/modules/${moduleFileName(resolvedName)}`]
456
- };
637
+ });
638
+ break;
457
639
  case "middleware":
458
- return {
640
+ Object.assign(sourceFiles, {
459
641
  [`${resolvedOutputDir}/${middlewareFileName(resolvedName)}`]: createMiddlewareResource(resolvedName)[`src/app/middlewares/${middlewareFileName(resolvedName)}`]
460
- };
642
+ });
643
+ break;
461
644
  case "type":
462
- return createTypeResource(resolvedName, typeVariant, resolvedOutputDir);
645
+ Object.assign(sourceFiles, createTypeResource(resolvedName, typeVariant, resolvedOutputDir));
646
+ break;
463
647
  case "route":
464
- return mode === "functional" || mode === "hybrid"
465
- ? {
648
+ if (mode === "functional" || mode === "hybrid") {
649
+ Object.assign(sourceFiles, {
466
650
  [`${resolvedOutputDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`]
467
- }
468
- : {};
651
+ });
652
+ }
653
+ break;
654
+ }
655
+ if (!testingGenerate) {
656
+ return sourceFiles;
469
657
  }
658
+ const testFiles = {};
659
+ for (const [filePath] of Object.entries(sourceFiles)) {
660
+ const normalizedPath = normalizeRelativePath(filePath);
661
+ const baseName = path.posix.basename(normalizedPath, ".ts");
662
+ if (normalizedPath.endsWith(".controller.ts")) {
663
+ const resourceName = baseName.replace(/\.controller$/, "");
664
+ testFiles[`src/tests/${specFileName(resourceName, "controller")}`] =
665
+ controllerSpecTemplate(resourceName, normalizedPath);
666
+ continue;
667
+ }
668
+ if (normalizedPath.endsWith(".service.ts")) {
669
+ const resourceName = baseName.replace(/\.service$/, "");
670
+ testFiles[`src/tests/${specFileName(resourceName, "service")}`] =
671
+ serviceSpecTemplate(resourceName, normalizedPath);
672
+ continue;
673
+ }
674
+ if (normalizedPath.endsWith(".routes.ts")) {
675
+ const resourceName = baseName.replace(/\.routes$/, "");
676
+ testFiles[`src/tests/${specFileName(resourceName, "routes")}`] =
677
+ routeSpecTemplate(resourceName, normalizedPath);
678
+ continue;
679
+ }
680
+ if (normalizedPath.endsWith(".middleware.ts")) {
681
+ const resourceName = baseName.replace(/\.middleware$/, "");
682
+ testFiles[`src/tests/${specFileName(resourceName, "middleware")}`] =
683
+ middlewareSpecTemplate(resourceName, normalizedPath);
684
+ }
685
+ }
686
+ return {
687
+ ...sourceFiles,
688
+ ...testFiles
689
+ };
470
690
  };
471
691
  export const writeGeneratedFiles = (targetDir, files) => {
472
692
  for (const [relativePath, content] of Object.entries(files)) {
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAenD,MAAM,YAAY,GAAG,CAAC,KAAa,EAAU,EAAE,CAC7C,KAAK;KACF,KAAK,CAAC,eAAe,CAAC;KACtB,MAAM,CAAC,OAAO,CAAC;KACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC3D,IAAI,CAAC,EAAE,CAAC,CAAC;AAEd,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE;IAC5C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAC5C,KAAK;KACF,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;KACtC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;KAC9B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;KACvB,WAAW,EAAE,CAAC;AAEnB,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE,CACtD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAEpE,MAAM,eAAe,GAAG,CAAC,IAAwB,EAAE,SAAiB,EAAU,EAAE;IAC9E,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzC,OAAO,QAAQ,IAAI,OAAO,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,gBAAgB,CAAC;AAC7E,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,aAAa,CAAC;AACvE,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,YAAY,CAAC;AACrE,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,gBAAgB,CAAC;AAC7E,MAAM,aAAa,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,GAAG,IAAI,YAAY,CAAC;AACpE,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAoB,EAAU,EAAE;IAClE,MAAM,MAAM,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IACrD,OAAO,GAAG,IAAI,IAAI,MAAM,KAAK,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,IAAkB,EAClB,SAAkB,EACV,EAAE;IACV,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,OAAO,qBAAqB,CAAC;QAC/B,KAAK,SAAS;YACZ,OAAO,kBAAkB,CAAC;QAC5B,KAAK,QAAQ;YACX,OAAO,iBAAiB,CAAC;QAC3B,KAAK,YAAY;YACf,OAAO,qBAAqB,CAAC;QAC/B,KAAK,MAAM;YACT,OAAO,eAAe,CAAC;QACzB,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC;IAC5B,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,SAAoB,EAAU,EAAE,CACpD,SAAS,KAAK,KAAK;IACjB,CAAC,CAAC,iBAAiB;IACnB,CAAC,CAAC,qDAAqD,CAAC;AAE5D,MAAM,kBAAkB,GAAG,CAAC,SAAoB,EAAU,EAAE,CAC1D,SAAS,KAAK,KAAK;IACjB,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC,4BAA4B,CAAC;AAEnC,MAAM,uBAAuB,GAAG,CAC9B,OAAe,EACf,OAAe,EACf,SAAoB,EACZ,EAAE,CAAC;aACA,WAAW,CAAC,OAAO,CAAC;gBACjB,OAAO;;;;;cAKT,YAAY,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;EAgBnC,kBAAkB,CAAC,SAAS,CAAC;;;;;;EAM7B,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAC7B,OAAe,EACf,OAAe,EACf,SAAoB,EACZ,EAAE,CAAC;aACA,WAAW,CAAC,OAAO,CAAC;gBACjB,OAAO;;;;;cAKT,YAAY,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;EAgBnC,kBAAkB,CAAC,SAAS,CAAC;;;;;EAK7B,CAAC;AAEH,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;EAqB3B,CAAC;AAEH,MAAM,gBAAgB,GAAG,CACvB,IAAkB,EAClB,SAAoB,EACpB,aAAsB,EACd,EAAE,CAAC;;;;oBAIO,SAAS;;;gBAGb,IAAI;;qBAEC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;EACnD,CAAC;AACH,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B5B,CAAC;AAEF,MAAM,oBAAoB,GAAG;;;;;;;;CAQ5B,CAAC;AAEF,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;EAqB1B,CAAC;AAEH,MAAM,aAAa,GAAG;;;;;EAKpB,CAAC;AAEH,MAAM,YAAY,GAAG;;;;;;;CAOpB,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAkB,EAAU,EAAE;IACtD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACzB,OAAO;;;;;;;CAOV,CAAC;IACA,CAAC;IAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QAC1B,OAAO;;;;;;;CAOV,CAAC;IACA,CAAC;IAED,OAAO;;;;;;;;CAQR,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;CAchC,CAAC;AAEF,MAAM,oBAAoB,GAAG;;;;;;;;;;;CAW5B,CAAC;AAEF,MAAM,qBAAqB,GAAG;;;;;CAK7B,CAAC;AAEF,MAAM,oBAAoB,GAAG;CAC5B,CAAC;AAEF,MAAM,qBAAqB,GAAG;;;CAG7B,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,IAAY,EACZ,SAAS,GAAG,qBAAqB,EACT,EAAE,CAAC,CAAC;IAC5B,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;;gBAEvD,IAAI;eACL,YAAY,CAAC,IAAI,CAAC;;;0BAGP,IAAI;;;CAG7B;CACA,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAA0B,EAAE,CAAC,CAAC;IACvE,CAAC,oBAAoB,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,gBAAgB,YAAY,CAAC,IAAI,CAAC;CAClF;CACA,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAA0B,EAAE,CAAC,CAAC;IACtE,CAAC,mBAAmB,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,gBAAgB,YAAY,CAAC,IAAI,CAAC;CAChF;CACA,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAA0B,EAAE,CAAC,CAAC;IAC1E,CAAC,uBAAuB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;;eAExC,WAAW,CAAC,IAAI,CAAC;;;;;;;CAO/B;CACA,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAA0B,EAAE,CAAC,CAAC;IACrE,CAAC,kBAAkB,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;;eAE9B,WAAW,CAAC,IAAI,CAAC;;EAE9B,WAAW,CAAC,IAAI,CAAC,gBAAgB,IAAI;0BACb,IAAI;;CAE7B;CACA,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAA0B,EAAE,CAAC,CAAC;IACvE,CAAC,oBAAoB,IAAI,aAAa,CAAC,EAAE,gBAAgB,YAAY,CAAC,IAAI,CAAC;;;;0BAInD,IAAI;;CAE7B;CACA,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CACzB,IAAY,EACZ,OAAoB,EACpB,SAAiB,EACO,EAAE;IAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAEnD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO;YACL,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,EAAE,oBAAoB,YAAY,CAAC,IAAI,CAAC;;;CAGzE;SACI,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO;YACL,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,EAAE,gBAAgB,YAAY,CAAC,IAAI,CAAC;CACrE;SACI,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO;YACL,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,EAAE,eAAe,YAAY,CAAC,IAAI,CAAC;;;CAGpE;SACI,CAAC;IACJ,CAAC;IAED,OAAO;QACL,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,EAAE,eAAe,YAAY,CAAC,IAAI,CAAC;CAClE;KACE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CACpB,QAAiC,EACT,EAAE,CAAC,CAAC;IAC5B,cAAc,EAAE,uBAAuB,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC/F,eAAe,EAAE,oBAAoB;IACrC,eAAe,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC;IAC5F,YAAY,EAAE,aAAa;IAC3B,aAAa,EAAE,YAAY;IAC3B,iBAAiB,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;CACnD,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CACzB,IAAY,EACZ,IAAkB,EAClB,SAAoB,EACI,EAAE,CAAC,CAAC;IAC5B,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC;IACjE,eAAe,EAAE,oBAAoB;IACrC,eAAe,EAAE,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,KAAK,QAAQ,CAAC;IACrE,YAAY,EAAE,aAAa;IAC3B,aAAa,EAAE,YAAY;IAC3B,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,CAAC;IACzC,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;CACzC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,QAAiC,EACjC,SAAiB,EACX,EAAE;IACR,SAAS,CAAC,SAAS,CAAC,CAAC;IAErB,MAAM,SAAS,GAA2B;QACxC,GAAG,aAAa,CAAC,QAAQ,CAAC;QAC1B,kBAAkB,EAAE,oBAAoB;QACxC,kBAAkB,EAAE,oBAAoB;QACxC,oCAAoC,EAAE,qBAAqB;QAC3D,kCAAkC,EAAE,oBAAoB;KACzD,CAAC;IAEF,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAChE,SAAS,CAAC,0CAA0C,CAAC;YACnD,wBAAwB,CAAC;IAC7B,CAAC;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjE,SAAS,CAAC,iCAAiC,CAAC,GAAG,oBAAoB,CAAC;QACpE,SAAS,CAAC,oCAAoC,CAAC,GAAG,qBAAqB,CAAC;IAC1E,CAAC;IAED,KAAK,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,MAAM,GAAG,IAAI;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,kBAAkB;QAClB,iBAAiB;QACjB,qBAAqB;QACrB,kBAAkB;KACnB,EAAE,CAAC;QACF,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,IAAkB,EAClB,IAAY,EACZ,IAAkB,EAClB,YAAuB,KAAK,EAC5B,SAAkB,EAClB,cAA2B,MAAM,EACT,EAAE;IAC1B,MAAM,iBAAiB,GAAG,yBAAyB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC9D,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,SAAS,IAAI,gBAAgB,CAAC,CAAC;IAChF,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC;IAEpF,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,YAAY;YACf,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC1B,OAAO;oBACL,CAAC,GAAG,kBAAkB,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,EACtD,mBAAmB,CAAC,YAAY,CAAC,CAAC,kBAAkB,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;oBACpF,CAAC,GAAG,oBAAoB,IAAI,YAAY,aAAa,CAAC,EACpD,qBAAqB,CAAC,YAAY,CAAC,CAAC,oBAAoB,YAAY,aAAa,CAAC;iBACrF,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,OAAO;oBACL,GAAG,yBAAyB,CAAC,YAAY,EAAE,iBAAiB,CAAC;oBAC7D,CAAC,GAAG,kBAAkB,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,EACtD,mBAAmB,CAAC,YAAY,CAAC,CAAC,kBAAkB,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;oBACpF,CAAC,GAAG,oBAAoB,IAAI,YAAY,aAAa,CAAC,EACpD,qBAAqB,CAAC,YAAY,CAAC,CAAC,oBAAoB,YAAY,aAAa,CAAC;iBACrF,CAAC;YACJ,CAAC;YAED,OAAO,yBAAyB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;QACpE,KAAK,SAAS;YACZ,OAAO;gBACL,CAAC,GAAG,iBAAiB,IAAI,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC,EACvD,qBAAqB,CAAC,YAAY,CAAC,CAAC,oBAAoB,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;aAC3F,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO;gBACL,CAAC,GAAG,iBAAiB,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC,EACtD,oBAAoB,CAAC,YAAY,CAAC,CAAC,mBAAmB,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;aACxF,CAAC;QACJ,KAAK,YAAY;YACf,OAAO;gBACL,CAAC,GAAG,iBAAiB,IAAI,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,EAC1D,wBAAwB,CAAC,YAAY,CAAC,CACpC,uBAAuB,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAC1D;aACJ,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,kBAAkB,CAAC,YAAY,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;QAC1E,KAAK,OAAO;YACV,OAAO,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,QAAQ;gBAC/C,CAAC,CAAC;oBACE,CAAC,GAAG,iBAAiB,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,EACrD,mBAAmB,CAAC,YAAY,CAAC,CAAC,kBAAkB,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;iBACrF;gBACH,CAAC,CAAC,EAAE,CAAC;IACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,SAAiB,EACjB,KAA6B,EACvB,EAAE;IACR,KAAK,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAAe,EACf,QAAsB,EACR,EAAE;IAChB,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAwB,EAAE,QAAsB,EAAgB,EAAE,CAClG,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;AAEvF,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;CAe7B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;CAQzB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;CAQ7B,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;CAkBvB,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;CAYxB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2B3B,CAAC"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sculptor/cli",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "sc": "./bin/sc.js"