@sculptor/cli 0.1.4 → 0.1.6
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 +79 -18
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/scaffold.d.ts +9 -3
- package/dist/scaffold.js +208 -67
- package/dist/scaffold.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -6,12 +6,22 @@ import { createInterface } from "node:readline/promises";
|
|
|
6
6
|
import { stdin, stdout } from "node:process";
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
import { loadConfig } from "@sculptor/config";
|
|
9
|
-
import { controllerHelp, generateHelp, generateResourceFiles, parseGenerateMode, readModeFromFlags, scaffoldProject, writeGeneratedFiles } from "./scaffold.js";
|
|
9
|
+
import { controllerHelp, generateHelp, generateResourceFiles, middlewareHelp, moduleHelp, parseGenerateMode, readModeFromFlags, routeHelp, scaffoldProject, typeHelp, writeGeneratedFiles } from "./scaffold.js";
|
|
10
10
|
const cliPackageVersion = JSON.parse(fs.readFileSync(new URL("../package.json", import.meta.url), "utf8"));
|
|
11
11
|
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 extractOutputDir = (args) => {
|
|
16
|
+
const index = args.findIndex((arg) => arg === "in");
|
|
17
|
+
if (index < 0 || index === args.length - 1) {
|
|
18
|
+
return { args };
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
args: [...args.slice(0, index), ...args.slice(index + 2)],
|
|
22
|
+
outputDir: args[index + 1]
|
|
23
|
+
};
|
|
24
|
+
};
|
|
15
25
|
const getFlagValue = (args, names) => {
|
|
16
26
|
for (const name of names) {
|
|
17
27
|
const prefixed = `${name}=`;
|
|
@@ -120,8 +130,10 @@ sc <command> [options]
|
|
|
120
130
|
|
|
121
131
|
- \`controller\` / \`c\`
|
|
122
132
|
- \`service\` / \`s\`
|
|
123
|
-
- \`module\` / \`m\`
|
|
124
|
-
- \`
|
|
133
|
+
- \`module\` / \`m\` or \`mo\`
|
|
134
|
+
- \`middleware\` / \`mw\`
|
|
135
|
+
- \`type\` / \`t\`
|
|
136
|
+
- \`route\` / \`r\`
|
|
125
137
|
`);
|
|
126
138
|
};
|
|
127
139
|
const printHelp = (topic, log) => {
|
|
@@ -137,6 +149,22 @@ const printHelp = (topic, log) => {
|
|
|
137
149
|
log(controllerHelp);
|
|
138
150
|
return;
|
|
139
151
|
}
|
|
152
|
+
if (topic === "module") {
|
|
153
|
+
log(moduleHelp);
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
if (topic === "middleware") {
|
|
157
|
+
log(middlewareHelp);
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
if (topic === "type") {
|
|
161
|
+
log(typeHelp);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
if (topic === "route") {
|
|
165
|
+
log(routeHelp);
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
140
168
|
printMainHelp(log);
|
|
141
169
|
};
|
|
142
170
|
const printVersion = (log) => {
|
|
@@ -166,10 +194,8 @@ const resolveProjectMetadata = async (args, cwd, prompt) => {
|
|
|
166
194
|
? explicitFrameworkLock !== "false"
|
|
167
195
|
: parseBooleanInput(await ask("Framework lock", String(resolveFrameworkLock(mode))), resolveFrameworkLock(mode));
|
|
168
196
|
const devServerFlag = getFlagValue(args, ["--dev-server", "--devserver"]);
|
|
169
|
-
const devServer = devServerFlag === "nodemon" || devServerFlag === "tsx"
|
|
170
|
-
? devServerFlag
|
|
171
|
-
? "tsx"
|
|
172
|
-
: devServerFlag
|
|
197
|
+
const devServer = devServerFlag === "nodemon" || devServerFlag === "tsx"
|
|
198
|
+
? devServerFlag
|
|
173
199
|
: (await promptChoice(ask, "Select a dev server", [
|
|
174
200
|
{ label: "tsx", value: "tsx", description: "Fast TypeScript runtime" },
|
|
175
201
|
{ label: "nodemon", value: "nodemon", description: "Restart on file changes" }
|
|
@@ -193,10 +219,11 @@ const runSpawn = (command, args, cwd, spawn, log) => {
|
|
|
193
219
|
process.exit(result.status);
|
|
194
220
|
}
|
|
195
221
|
};
|
|
196
|
-
const handleNew = async (args, cwd, prompt, log) => {
|
|
222
|
+
const handleNew = async (args, cwd, prompt, spawn, log) => {
|
|
197
223
|
const metadata = await resolveProjectMetadata(args, cwd, prompt);
|
|
198
224
|
const targetDir = path.join(cwd, metadata.appName);
|
|
199
225
|
scaffoldProject(metadata, targetDir);
|
|
226
|
+
runSpawn("npm", ["i"], targetDir, spawn, log);
|
|
200
227
|
log(`Created SculptorTS project at ${targetDir}`);
|
|
201
228
|
};
|
|
202
229
|
const handleDev = (args, cwd, spawn, log) => {
|
|
@@ -214,11 +241,11 @@ const handleDev = (args, cwd, spawn, log) => {
|
|
|
214
241
|
"--ext",
|
|
215
242
|
"ts",
|
|
216
243
|
"--exec",
|
|
217
|
-
"
|
|
244
|
+
"tsx src/main.ts"
|
|
218
245
|
], appRoot, spawn, log);
|
|
219
246
|
return;
|
|
220
247
|
}
|
|
221
|
-
runSpawn("npx", ["
|
|
248
|
+
runSpawn("npx", ["tsx", path.join(appRoot, "src/main.ts")], appRoot, spawn, log);
|
|
222
249
|
};
|
|
223
250
|
const handleStart = (args, cwd, spawn, log) => {
|
|
224
251
|
const appRoot = resolveAppRoot(cwd);
|
|
@@ -252,9 +279,9 @@ const handleTest = (cwd, spawn, log) => {
|
|
|
252
279
|
runSpawn("npx", ["vitest", "run"], cwd, spawn, log);
|
|
253
280
|
};
|
|
254
281
|
const handleGenerate = (args, cwd, prompt, log, error) => {
|
|
255
|
-
const [kindInput,
|
|
256
|
-
if (!kindInput
|
|
257
|
-
error("Usage: sc generate <controller|service|module|
|
|
282
|
+
const [kindInput, ...restInput] = args;
|
|
283
|
+
if (!kindInput) {
|
|
284
|
+
error("Usage: sc generate <controller|service|module|middleware|type|route> <name>");
|
|
258
285
|
process.exit(1);
|
|
259
286
|
}
|
|
260
287
|
const kindMap = {
|
|
@@ -263,22 +290,56 @@ const handleGenerate = (args, cwd, prompt, log, error) => {
|
|
|
263
290
|
s: "service",
|
|
264
291
|
service: "service",
|
|
265
292
|
m: "module",
|
|
293
|
+
mo: "module",
|
|
266
294
|
module: "module",
|
|
267
|
-
|
|
268
|
-
|
|
295
|
+
mw: "middleware",
|
|
296
|
+
middleware: "middleware",
|
|
297
|
+
t: "type",
|
|
298
|
+
type: "type",
|
|
299
|
+
r: "route",
|
|
300
|
+
route: "route",
|
|
301
|
+
resource: "route"
|
|
269
302
|
};
|
|
270
303
|
const kind = kindMap[kindInput];
|
|
271
304
|
if (!kind) {
|
|
272
305
|
error(`Unknown generator "${kindInput}".`);
|
|
273
306
|
process.exit(1);
|
|
274
307
|
}
|
|
308
|
+
const { args: rest, outputDir } = extractOutputDir(restInput);
|
|
309
|
+
const positional = rest.filter((arg) => !isFlag(arg));
|
|
310
|
+
const explicitName = positional[0];
|
|
275
311
|
const fallbackMode = resolveDefaultMode(cwd);
|
|
276
312
|
const devServer = resolveDefaultDevServer(cwd);
|
|
277
313
|
const mode = parseGenerateMode(readModeFromFlags(rest, fallbackMode), fallbackMode);
|
|
278
|
-
const
|
|
314
|
+
const typeVariant = rest.includes("-interface") || rest.includes("-i")
|
|
315
|
+
? "interface"
|
|
316
|
+
: rest.includes("-class") || rest.includes("-c")
|
|
317
|
+
? "class"
|
|
318
|
+
: rest.includes("-enum") || rest.includes("-e")
|
|
319
|
+
? "enum"
|
|
320
|
+
: "type";
|
|
321
|
+
if (kind !== "type" &&
|
|
322
|
+
!explicitName &&
|
|
323
|
+
!outputDir) {
|
|
324
|
+
error(`Usage: sc generate ${kind} <name>`);
|
|
325
|
+
process.exit(1);
|
|
326
|
+
}
|
|
327
|
+
if (kind === "route" && mode === "decorator") {
|
|
328
|
+
error("Routers can only be scaffolded in functional or hybrid mode.");
|
|
329
|
+
process.exit(1);
|
|
330
|
+
}
|
|
331
|
+
const resolvedName = explicitName ??
|
|
332
|
+
(() => {
|
|
333
|
+
if (!outputDir) {
|
|
334
|
+
return "index";
|
|
335
|
+
}
|
|
336
|
+
const parts = outputDir.split(/[\\/]/).filter(Boolean);
|
|
337
|
+
return parts[parts.length - 1] ?? "index";
|
|
338
|
+
})();
|
|
339
|
+
const files = generateResourceFiles(kind, resolvedName, mode, devServer, outputDir, typeVariant);
|
|
279
340
|
const targetDir = resolveAppRoot(cwd);
|
|
280
341
|
writeGeneratedFiles(targetDir, files);
|
|
281
|
-
log(`Generated ${kind} "${
|
|
342
|
+
log(`Generated ${kind} "${resolvedName}" using ${mode} mode.`);
|
|
282
343
|
return Promise.resolve();
|
|
283
344
|
};
|
|
284
345
|
export const runCli = async (argv = process.argv, options = {}) => {
|
|
@@ -309,7 +370,7 @@ export const runCli = async (argv = process.argv, options = {}) => {
|
|
|
309
370
|
printHelp(args[0], log);
|
|
310
371
|
return;
|
|
311
372
|
case "new":
|
|
312
|
-
await handleNew(args, cwd, prompt, log);
|
|
373
|
+
await handleNew(args, cwd, prompt, spawn, log);
|
|
313
374
|
return;
|
|
314
375
|
case "start":
|
|
315
376
|
handleStart(args, cwd, spawn, log);
|
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":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { resolveProjectMetadata, runCli } from "./cli.js";
|
|
2
|
-
export { controllerHelp, generateHelp } from "./scaffold.js";
|
|
2
|
+
export { controllerHelp, generateHelp, middlewareHelp, moduleHelp, routeHelp, typeHelp } from "./scaffold.js";
|
|
3
3
|
export { generateResourceFiles, parseGenerateMode, readModeFromFlags, scaffoldProject, writeGeneratedFiles } from "./scaffold.js";
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { resolveProjectMetadata, runCli } from "./cli.js";
|
|
2
|
-
export { controllerHelp, generateHelp } from "./scaffold.js";
|
|
2
|
+
export { controllerHelp, generateHelp, middlewareHelp, moduleHelp, routeHelp, typeHelp } from "./scaffold.js";
|
|
3
3
|
export { generateResourceFiles, parseGenerateMode, readModeFromFlags, scaffoldProject, writeGeneratedFiles } from "./scaffold.js";
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,MAAM,EACP,MAAM,UAAU,CAAC;AAClB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,MAAM,EACP,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,UAAU,EACV,SAAS,EACT,QAAQ,EACT,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACpB,MAAM,eAAe,CAAC"}
|
package/dist/scaffold.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export type ScaffoldMode = "decorator" | "functional" | "hybrid";
|
|
2
2
|
export type DevServer = "tsx" | "nodemon";
|
|
3
|
+
export type GenerateKind = "controller" | "service" | "module" | "middleware" | "type" | "route";
|
|
4
|
+
export type TypeVariant = "type" | "interface" | "class" | "enum";
|
|
3
5
|
export interface ScaffoldProjectMetadata {
|
|
4
6
|
appName: string;
|
|
5
7
|
version: string;
|
|
@@ -8,9 +10,13 @@ export interface ScaffoldProjectMetadata {
|
|
|
8
10
|
devServer: DevServer;
|
|
9
11
|
}
|
|
10
12
|
export declare const scaffoldProject: (metadata: ScaffoldProjectMetadata, targetDir: string) => void;
|
|
11
|
-
export declare const generateResourceFiles: (kind:
|
|
13
|
+
export declare const generateResourceFiles: (kind: GenerateKind, name: string, mode: ScaffoldMode, devServer?: DevServer, outputDir?: string, typeVariant?: TypeVariant) => Record<string, string>;
|
|
12
14
|
export declare const writeGeneratedFiles: (targetDir: string, files: Record<string, string>) => void;
|
|
13
15
|
export declare const readModeFromFlags: (flags: string[], fallback: ScaffoldMode) => ScaffoldMode;
|
|
14
16
|
export declare const parseGenerateMode: (mode: string | undefined, fallback: ScaffoldMode) => ScaffoldMode;
|
|
15
|
-
export declare const controllerHelp = "# Controller Generator\n\n## Usage\n\n```bash\nsc generate controller user\nsc g c user\n```\n\n##
|
|
16
|
-
export declare const
|
|
17
|
+
export declare const controllerHelp = "# Controller Generator\n\n## Usage\n\n```bash\nsc generate controller user\nsc g c user\n\nsc generate controller user in src/app/controllers\n\nsc g c user --functional\n```\n\n## Output\n\n- `controllers/*.controller.ts`\n- in functional mode, generates `routes/*.routes.ts` and `handlers/*.handler.ts`\n";
|
|
18
|
+
export declare const moduleHelp = "# Module Generator\n\n## Usage\n\n```bash\nsc generate module user\nsc g mo user\n```\n";
|
|
19
|
+
export declare const middlewareHelp = "# Middleware Generator\n\n## Usage\n\n```bash\nsc generate middleware auth\nsc g mw auth\n```\n";
|
|
20
|
+
export declare const typeHelp = "# Type Generator\n\n## Usage\n\n```bash\nsc generate type user\nsc g t user\nsc g t user -i\nsc g t user -c\nsc g t user -e\n```\n\n## Flags\n\n- `-i`, `-interface` => `*.interface.ts`\n- `-c`, `-class` => `*.class.ts`\n- `-e`, `-enum` => `*.enum.ts`\n- default => `*.type.ts`\n";
|
|
21
|
+
export declare const routeHelp = "# Route Generator\n\n## Usage\n\n```bash\nsc generate route user\nsc g r user\n```\n\n## Mode Guard\n\n- routers can only be scaffolded in functional or hybrid mode\n";
|
|
22
|
+
export declare const generateHelp = "# Generate\n\n## Usage\n\n```bash\nsc generate controller user\nsc generate service user\nsc generate module user\nsc generate middleware auth\nsc generate type user\nsc generate route user\n```\n\n## Aliases\n\n- `sc g`\n- `controller` -> `c`\n- `service` -> `s`\n- `module` -> `m` / `mo`\n- `middleware` -> `mw`\n- `type` -> `t`\n- `route` -> `r`\n\n## Path\n\n- append `in <path>` to write into a custom directory\n- default output for types is `src/app/types`\n";
|
package/dist/scaffold.js
CHANGED
|
@@ -14,6 +14,44 @@ const toKebabCase = (value) => value
|
|
|
14
14
|
.replace(/[^a-zA-Z0-9]+/g, "-")
|
|
15
15
|
.replace(/^-+|-+$/g, "")
|
|
16
16
|
.toLowerCase();
|
|
17
|
+
const normalizeRelativePath = (value) => value.replace(/\\/g, "/").replace(/^\/+/, "").replace(/\/+$/, "");
|
|
18
|
+
const resolveFileStem = (name, outputDir) => {
|
|
19
|
+
if (name) {
|
|
20
|
+
return name;
|
|
21
|
+
}
|
|
22
|
+
const trimmedDir = normalizeRelativePath(outputDir);
|
|
23
|
+
const parts = trimmedDir.split("/").filter(Boolean);
|
|
24
|
+
const inferred = parts[parts.length - 1];
|
|
25
|
+
return inferred ?? "index";
|
|
26
|
+
};
|
|
27
|
+
const controllerFileName = (name) => `${name}.controller.ts`;
|
|
28
|
+
const serviceFileName = (name) => `${name}.service.ts`;
|
|
29
|
+
const moduleFileName = (name) => `${name}.module.ts`;
|
|
30
|
+
const middlewareFileName = (name) => `${name}.middleware.ts`;
|
|
31
|
+
const routeFileName = (name) => `${name}.routes.ts`;
|
|
32
|
+
const typeFileName = (name, variant) => {
|
|
33
|
+
const suffix = variant === "type" ? "type" : variant;
|
|
34
|
+
return `${name}.${suffix}.ts`;
|
|
35
|
+
};
|
|
36
|
+
const resolveGeneratorOutputDir = (kind, outputDir) => {
|
|
37
|
+
if (outputDir) {
|
|
38
|
+
return normalizeRelativePath(outputDir);
|
|
39
|
+
}
|
|
40
|
+
switch (kind) {
|
|
41
|
+
case "controller":
|
|
42
|
+
return "src/app/controllers";
|
|
43
|
+
case "service":
|
|
44
|
+
return "src/app/services";
|
|
45
|
+
case "module":
|
|
46
|
+
return "src/app/modules";
|
|
47
|
+
case "middleware":
|
|
48
|
+
return "src/app/middlewares";
|
|
49
|
+
case "type":
|
|
50
|
+
return "src/app/types";
|
|
51
|
+
case "route":
|
|
52
|
+
return "src/app/routes";
|
|
53
|
+
}
|
|
54
|
+
};
|
|
17
55
|
const devScriptFor = (devServer) => devServer === "tsx"
|
|
18
56
|
? "tsx src/main.ts"
|
|
19
57
|
: 'nodemon --watch src --ext ts --exec "tsx src/main.ts"';
|
|
@@ -33,14 +71,14 @@ const rootPackageJsonTemplate = (appName, version, devServer) => `{
|
|
|
33
71
|
"test": "vitest run"
|
|
34
72
|
},
|
|
35
73
|
"dependencies": {
|
|
36
|
-
"@sculptor/core": "
|
|
74
|
+
"@sculptor/core": "@latest",
|
|
37
75
|
"express": "^4.21.2",
|
|
38
76
|
"reflect-metadata": "^0.2.2"
|
|
39
77
|
},
|
|
40
78
|
"devDependencies": {
|
|
41
|
-
"@sculptor/cli": "
|
|
42
|
-
"@sculptor/config": "
|
|
43
|
-
"@sculptor/router": "
|
|
79
|
+
"@sculptor/cli": "@latest",
|
|
80
|
+
"@sculptor/config": "@latest",
|
|
81
|
+
"@sculptor/router": "@latest",
|
|
44
82
|
"@types/express": "^4.17.23",
|
|
45
83
|
"@types/node": "^22.15.3",
|
|
46
84
|
"@types/supertest": "^6.0.3",
|
|
@@ -67,7 +105,7 @@ const appPackageJsonTemplate = (appName, version, devServer) => `{
|
|
|
67
105
|
"test": "vitest run"
|
|
68
106
|
},
|
|
69
107
|
"dependencies": {
|
|
70
|
-
"@sculptor/core": "
|
|
108
|
+
"@sculptor/core": "@latest",
|
|
71
109
|
"express": "^4.21.2",
|
|
72
110
|
"reflect-metadata": "^0.2.2"
|
|
73
111
|
},
|
|
@@ -262,57 +300,87 @@ const healthHandlerTemplate = `export const healthHandler = (_req: unknown, res:
|
|
|
262
300
|
res.json({ status: "ok" });
|
|
263
301
|
};
|
|
264
302
|
`;
|
|
265
|
-
const
|
|
266
|
-
|
|
267
|
-
const serviceName = `${toPascalCase(name)}Service`;
|
|
268
|
-
const moduleName = `${toPascalCase(name)}Module`;
|
|
269
|
-
return {
|
|
270
|
-
[`src/app/controllers/${name}.controller.ts`]: `import { Controller, Get } from "@sculptor/core";
|
|
303
|
+
const createDecoratorController = (name, outputDir = "src/app/controllers") => ({
|
|
304
|
+
[`${normalizeRelativePath(outputDir)}/${controllerFileName(name)}`]: `import { Controller, Get } from "@sculptor/core";
|
|
271
305
|
|
|
272
306
|
@Controller("/${name}")
|
|
273
|
-
export class ${
|
|
307
|
+
export class ${toPascalCase(name)}Controller {
|
|
274
308
|
@Get("/")
|
|
275
309
|
findAll() {
|
|
276
310
|
return { resource: "${name}" };
|
|
277
311
|
}
|
|
278
312
|
}
|
|
279
|
-
`,
|
|
280
|
-
[`src/app/services/${name}.service.ts`]: `export class ${serviceName} {}
|
|
281
|
-
`,
|
|
282
|
-
[`src/app/modules/${name}.module.ts`]: `export class ${moduleName} {}
|
|
283
313
|
`
|
|
284
|
-
|
|
314
|
+
});
|
|
315
|
+
const createServiceResource = (name) => ({
|
|
316
|
+
[`src/app/services/${serviceFileName(name)}`]: `export class ${toPascalCase(name)}Service {}
|
|
317
|
+
`
|
|
318
|
+
});
|
|
319
|
+
const createModuleResource = (name) => ({
|
|
320
|
+
[`src/app/modules/${moduleFileName(name)}`]: `export class ${toPascalCase(name)}Module {}
|
|
321
|
+
`
|
|
322
|
+
});
|
|
323
|
+
const createMiddlewareResource = (name) => ({
|
|
324
|
+
[`src/app/middlewares/${middlewareFileName(name)}`]: `import type { NextFunction, Request, Response } from "express";
|
|
325
|
+
|
|
326
|
+
export const ${toCamelCase(name)}Middleware = (
|
|
327
|
+
_req: Request,
|
|
328
|
+
_res: Response,
|
|
329
|
+
next: NextFunction
|
|
330
|
+
) => {
|
|
331
|
+
next();
|
|
285
332
|
};
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
[`src/app/routes/${name}.routes.ts`]: `import { Router } from "express";
|
|
333
|
+
`
|
|
334
|
+
});
|
|
335
|
+
const createRouteResource = (name) => ({
|
|
336
|
+
[`src/app/routes/${routeFileName(name)}`]: `import { Router } from "express";
|
|
291
337
|
|
|
292
|
-
export const ${
|
|
338
|
+
export const ${toCamelCase(name)}Routes = Router();
|
|
293
339
|
|
|
294
|
-
${
|
|
340
|
+
${toCamelCase(name)}Routes.get("/${name}", (_req, res) => {
|
|
295
341
|
res.json({ resource: "${name}" });
|
|
296
342
|
});
|
|
297
|
-
`,
|
|
298
|
-
[`src/app/handlers/${name}.handler.ts`]: `export const ${handlerName} = (_req: unknown, res: { json: (value: unknown) => void }) => {
|
|
299
|
-
res.json({ resource: "${name}" });
|
|
300
|
-
};
|
|
301
|
-
`,
|
|
302
|
-
[`src/app/services/${name}.service.ts`]: `export class ${toPascalCase(name)}Service {}
|
|
303
|
-
`,
|
|
304
|
-
[`src/app/modules/${name}.module.ts`]: `export class ${toPascalCase(name)}Module {}
|
|
305
343
|
`
|
|
306
|
-
|
|
344
|
+
});
|
|
345
|
+
const createHandlerResource = (name) => ({
|
|
346
|
+
[`src/app/handlers/${name}.handler.ts`]: `export const ${toPascalCase(name)}Handler = (
|
|
347
|
+
_req: unknown,
|
|
348
|
+
res: { json: (value: unknown) => void }
|
|
349
|
+
) => {
|
|
350
|
+
res.json({ resource: "${name}" });
|
|
307
351
|
};
|
|
308
|
-
const createServiceResource = (name) => ({
|
|
309
|
-
[`src/app/services/${name}.service.ts`]: `export class ${toPascalCase(name)}Service {}
|
|
310
352
|
`
|
|
311
353
|
});
|
|
312
|
-
const
|
|
313
|
-
|
|
354
|
+
const createTypeResource = (name, variant, outputDir) => {
|
|
355
|
+
const fileName = typeFileName(name, variant);
|
|
356
|
+
const targetDir = normalizeRelativePath(outputDir);
|
|
357
|
+
if (variant === "interface") {
|
|
358
|
+
return {
|
|
359
|
+
[`${targetDir}/${fileName}`]: `export interface ${toPascalCase(name)} {
|
|
360
|
+
id?: string;
|
|
361
|
+
}
|
|
314
362
|
`
|
|
315
|
-
}
|
|
363
|
+
};
|
|
364
|
+
}
|
|
365
|
+
if (variant === "class") {
|
|
366
|
+
return {
|
|
367
|
+
[`${targetDir}/${fileName}`]: `export class ${toPascalCase(name)} {}
|
|
368
|
+
`
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
if (variant === "enum") {
|
|
372
|
+
return {
|
|
373
|
+
[`${targetDir}/${fileName}`]: `export enum ${toPascalCase(name)} {
|
|
374
|
+
Default = "default"
|
|
375
|
+
}
|
|
376
|
+
`
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
return {
|
|
380
|
+
[`${targetDir}/${fileName}`]: `export type ${toPascalCase(name)} = Record<string, unknown>;
|
|
381
|
+
`
|
|
382
|
+
};
|
|
383
|
+
};
|
|
316
384
|
const appShellFiles = (metadata) => ({
|
|
317
385
|
"package.json": rootPackageJsonTemplate(metadata.appName, metadata.version, metadata.devServer),
|
|
318
386
|
"tsconfig.json": rootTsconfigTemplate,
|
|
@@ -362,35 +430,47 @@ export const scaffoldProject = (metadata, targetDir) => {
|
|
|
362
430
|
ensureDir(path.join(targetDir, dir));
|
|
363
431
|
}
|
|
364
432
|
};
|
|
365
|
-
export const generateResourceFiles = (kind, name, mode, devServer = "tsx") => {
|
|
433
|
+
export const generateResourceFiles = (kind, name, mode, devServer = "tsx", outputDir, typeVariant = "type") => {
|
|
434
|
+
const resolvedOutputDir = resolveGeneratorOutputDir(kind, outputDir);
|
|
435
|
+
const resolvedName = resolveFileStem(name, resolvedOutputDir);
|
|
436
|
+
const functionalRouteDir = normalizeRelativePath(outputDir ?? "src/app/routes");
|
|
437
|
+
const functionalHandlerDir = normalizeRelativePath(outputDir ?? "src/app/handlers");
|
|
366
438
|
switch (kind) {
|
|
367
439
|
case "controller":
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
[
|
|
371
|
-
[
|
|
372
|
-
}
|
|
373
|
-
|
|
440
|
+
if (mode === "functional") {
|
|
441
|
+
return {
|
|
442
|
+
[`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
|
|
443
|
+
[`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
|
|
444
|
+
};
|
|
445
|
+
}
|
|
446
|
+
if (mode === "hybrid") {
|
|
447
|
+
return {
|
|
448
|
+
...createDecoratorController(resolvedName, resolvedOutputDir),
|
|
449
|
+
[`${functionalRouteDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`],
|
|
450
|
+
[`${functionalHandlerDir}/${resolvedName}.handler.ts`]: createHandlerResource(resolvedName)[`src/app/handlers/${resolvedName}.handler.ts`]
|
|
451
|
+
};
|
|
452
|
+
}
|
|
453
|
+
return createDecoratorController(resolvedName, resolvedOutputDir);
|
|
374
454
|
case "service":
|
|
375
|
-
return
|
|
455
|
+
return {
|
|
456
|
+
[`${resolvedOutputDir}/${serviceFileName(resolvedName)}`]: createServiceResource(resolvedName)[`src/app/services/${serviceFileName(resolvedName)}`]
|
|
457
|
+
};
|
|
376
458
|
case "module":
|
|
377
|
-
return
|
|
378
|
-
|
|
379
|
-
|
|
459
|
+
return {
|
|
460
|
+
[`${resolvedOutputDir}/${moduleFileName(resolvedName)}`]: createModuleResource(resolvedName)[`src/app/modules/${moduleFileName(resolvedName)}`]
|
|
461
|
+
};
|
|
462
|
+
case "middleware":
|
|
463
|
+
return {
|
|
464
|
+
[`${resolvedOutputDir}/${middlewareFileName(resolvedName)}`]: createMiddlewareResource(resolvedName)[`src/app/middlewares/${middlewareFileName(resolvedName)}`]
|
|
465
|
+
};
|
|
466
|
+
case "type":
|
|
467
|
+
return createTypeResource(resolvedName, typeVariant, resolvedOutputDir);
|
|
468
|
+
case "route":
|
|
469
|
+
return mode === "functional" || mode === "hybrid"
|
|
380
470
|
? {
|
|
381
|
-
|
|
382
|
-
...createFunctionalResource(name)
|
|
471
|
+
[`${resolvedOutputDir}/${routeFileName(resolvedName)}`]: createRouteResource(resolvedName)[`src/app/routes/${routeFileName(resolvedName)}`]
|
|
383
472
|
}
|
|
384
|
-
:
|
|
385
|
-
? {
|
|
386
|
-
...resourceShellFiles(name, mode, devServer),
|
|
387
|
-
...createDecoratorResource(name),
|
|
388
|
-
...createFunctionalResource(name)
|
|
389
|
-
}
|
|
390
|
-
: {
|
|
391
|
-
...resourceShellFiles(name, mode, devServer),
|
|
392
|
-
...createDecoratorResource(name)
|
|
393
|
-
};
|
|
473
|
+
: {};
|
|
394
474
|
}
|
|
395
475
|
};
|
|
396
476
|
export const writeGeneratedFiles = (targetDir, files) => {
|
|
@@ -418,12 +498,64 @@ export const controllerHelp = `# Controller Generator
|
|
|
418
498
|
\`\`\`bash
|
|
419
499
|
sc generate controller user
|
|
420
500
|
sc g c user
|
|
501
|
+
\nsc generate controller user in src/app/controllers
|
|
502
|
+
\nsc g c user --functional
|
|
421
503
|
\`\`\`
|
|
422
504
|
|
|
423
|
-
##
|
|
505
|
+
## Output
|
|
506
|
+
|
|
507
|
+
- \`controllers/*.controller.ts\`
|
|
508
|
+
- in functional mode, generates \`routes/*.routes.ts\` and \`handlers/*.handler.ts\`
|
|
509
|
+
`;
|
|
510
|
+
export const moduleHelp = `# Module Generator
|
|
511
|
+
|
|
512
|
+
## Usage
|
|
424
513
|
|
|
425
|
-
|
|
426
|
-
|
|
514
|
+
\`\`\`bash
|
|
515
|
+
sc generate module user
|
|
516
|
+
sc g mo user
|
|
517
|
+
\`\`\`
|
|
518
|
+
`;
|
|
519
|
+
export const middlewareHelp = `# Middleware Generator
|
|
520
|
+
|
|
521
|
+
## Usage
|
|
522
|
+
|
|
523
|
+
\`\`\`bash
|
|
524
|
+
sc generate middleware auth
|
|
525
|
+
sc g mw auth
|
|
526
|
+
\`\`\`
|
|
527
|
+
`;
|
|
528
|
+
export const typeHelp = `# Type Generator
|
|
529
|
+
|
|
530
|
+
## Usage
|
|
531
|
+
|
|
532
|
+
\`\`\`bash
|
|
533
|
+
sc generate type user
|
|
534
|
+
sc g t user
|
|
535
|
+
sc g t user -i
|
|
536
|
+
sc g t user -c
|
|
537
|
+
sc g t user -e
|
|
538
|
+
\`\`\`
|
|
539
|
+
|
|
540
|
+
## Flags
|
|
541
|
+
|
|
542
|
+
- \`-i\`, \`-interface\` => \`*.interface.ts\`
|
|
543
|
+
- \`-c\`, \`-class\` => \`*.class.ts\`
|
|
544
|
+
- \`-e\`, \`-enum\` => \`*.enum.ts\`
|
|
545
|
+
- default => \`*.type.ts\`
|
|
546
|
+
`;
|
|
547
|
+
export const routeHelp = `# Route Generator
|
|
548
|
+
|
|
549
|
+
## Usage
|
|
550
|
+
|
|
551
|
+
\`\`\`bash
|
|
552
|
+
sc generate route user
|
|
553
|
+
sc g r user
|
|
554
|
+
\`\`\`
|
|
555
|
+
|
|
556
|
+
## Mode Guard
|
|
557
|
+
|
|
558
|
+
- routers can only be scaffolded in functional or hybrid mode
|
|
427
559
|
`;
|
|
428
560
|
export const generateHelp = `# Generate
|
|
429
561
|
|
|
@@ -433,7 +565,9 @@ export const generateHelp = `# Generate
|
|
|
433
565
|
sc generate controller user
|
|
434
566
|
sc generate service user
|
|
435
567
|
sc generate module user
|
|
436
|
-
sc generate
|
|
568
|
+
sc generate middleware auth
|
|
569
|
+
sc generate type user
|
|
570
|
+
sc generate route user
|
|
437
571
|
\`\`\`
|
|
438
572
|
|
|
439
573
|
## Aliases
|
|
@@ -441,7 +575,14 @@ sc generate resource user
|
|
|
441
575
|
- \`sc g\`
|
|
442
576
|
- \`controller\` -> \`c\`
|
|
443
577
|
- \`service\` -> \`s\`
|
|
444
|
-
- \`module\` -> \`m\`
|
|
445
|
-
- \`
|
|
578
|
+
- \`module\` -> \`m\` / \`mo\`
|
|
579
|
+
- \`middleware\` -> \`mw\`
|
|
580
|
+
- \`type\` -> \`t\`
|
|
581
|
+
- \`route\` -> \`r\`
|
|
582
|
+
|
|
583
|
+
## Path
|
|
584
|
+
|
|
585
|
+
- append \`in <path>\` to write into a custom directory
|
|
586
|
+
- default output for types is \`src/app/types\`
|
|
446
587
|
`;
|
|
447
588
|
//# sourceMappingURL=scaffold.js.map
|
package/dist/scaffold.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
|