@forinda/kickjs-cli 5.0.2 → 5.1.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/dist/index.d.mts CHANGED
@@ -1,4 +1,203 @@
1
1
 
2
+ import { Command } from "commander";
3
+
4
+ //#region src/typegen/plugin.d.ts
5
+ interface TypegenLogger {
6
+ info(msg: string): void;
7
+ warn(msg: string): void;
8
+ error(msg: string): void;
9
+ }
10
+ interface TypegenContext {
11
+ cwd: string;
12
+ config: KickConfig;
13
+ /** Dynamic-import a TS module (Node loader). Used by plugins that need to
14
+ * read the adopter's schema / route map / asset registry at generate time. */
15
+ importTs<T = unknown>(absPath: string): Promise<T>;
16
+ /** Write under `cwd`. Caller passes a relPath (e.g. `.kickjs/types/foo.d.ts`). */
17
+ writeFile(relPath: string, contents: string): Promise<void>;
18
+ log: TypegenLogger;
19
+ }
20
+ interface TypegenPlugin {
21
+ /** Stable id — used as filename: `.kickjs/types/${id}.d.ts` (slashes → `__`). */
22
+ id: string;
23
+ /** Glob patterns the Vite watcher subscribes to; change → re-run this plugin. */
24
+ inputs: string[];
25
+ /**
26
+ * Return the augmentation source (without banner — runner prepends).
27
+ * Return null to skip emission (e.g. no schema file present).
28
+ */
29
+ generate(ctx: TypegenContext): Promise<string | null>;
30
+ }
31
+ interface TypegenPluginResult {
32
+ id: string;
33
+ status: 'written' | 'unchanged' | 'skipped';
34
+ outFile?: string;
35
+ }
36
+ //#endregion
37
+ //#region src/generator-extension/define.d.ts
38
+ /**
39
+ * Plugin generator API per architecture.md §21.2.3 — lets first-party
40
+ * AND third-party packages ship `kick g <name>` scaffolders the same
41
+ * way the framework's built-in generators do.
42
+ *
43
+ * Plugins declare a discovery file in their `package.json`:
44
+ *
45
+ * ```json
46
+ * {
47
+ * "name": "@my-org/kickjs-cqrs",
48
+ * "kickjs": { "generators": "./dist/generators.js" }
49
+ * }
50
+ * ```
51
+ *
52
+ * The discovery file exports a typed manifest:
53
+ *
54
+ * ```ts
55
+ * import { defineGenerator } from '@forinda/kickjs-cli'
56
+ *
57
+ * export default [
58
+ * defineGenerator({
59
+ * name: 'command',
60
+ * description: 'Generate a CQRS command + handler',
61
+ * args: [{ name: 'name', required: true }],
62
+ * files: (ctx) => [
63
+ * {
64
+ * path: `src/modules/${ctx.kebab}/commands/create-${ctx.kebab}.command.ts`,
65
+ * content: `// generated command for ${ctx.pascal}`,
66
+ * },
67
+ * ],
68
+ * }),
69
+ * ]
70
+ * ```
71
+ *
72
+ * `kick g command Order` then dispatches against the registered
73
+ * generator and writes the returned files relative to `cwd`.
74
+ */
75
+ /**
76
+ * Resolved naming variants + project context handed to a generator's
77
+ * `files()` factory. Keys mirror `TemplateContext` so first-party
78
+ * generators that rely on the same shape can be migrated to plugin
79
+ * generators without rewriting their templates.
80
+ */
81
+ interface GeneratorContext {
82
+ /** Raw name passed on the command line (`kick g resolver UserPost` → `'UserPost'`). */
83
+ name: string;
84
+ /** PascalCase form (`UserPost`). */
85
+ pascal: string;
86
+ /** kebab-case form (`user-post`). */
87
+ kebab: string;
88
+ /** camelCase form (`userPost`). */
89
+ camel: string;
90
+ /** snake_case form (`user_post`). */
91
+ snake: string;
92
+ /** Pluralized PascalCase (`UserPosts`) — present when the project enables `pluralize`. */
93
+ pluralPascal?: string;
94
+ /** Pluralized kebab-case (`user-posts`). */
95
+ pluralKebab?: string;
96
+ /** Pluralized camelCase (`userPosts`). */
97
+ pluralCamel?: string;
98
+ /** Modules directory from `kick.config.ts` (default `'src/modules'`). */
99
+ modulesDir: string;
100
+ /** Working directory for the generator — usually `process.cwd()`. */
101
+ cwd: string;
102
+ /** Positional arguments passed AFTER the name (e.g. `kick g command Order extra1 extra2` → `['extra1', 'extra2']`). */
103
+ args: string[];
104
+ /** Flag values from the command line — booleans for switches, strings for `--key value`. */
105
+ flags: Record<string, string | boolean>;
106
+ }
107
+ /** A single output file the generator wants written. */
108
+ interface GeneratorFile {
109
+ /**
110
+ * Output path. Relative paths resolve against `ctx.cwd`; absolute
111
+ * paths are used as-is. Parent directories are created automatically.
112
+ */
113
+ path: string;
114
+ /** File contents written verbatim (UTF-8). */
115
+ content: string;
116
+ }
117
+ /** CLI argument descriptor surfaced in `kick g --list` help. */
118
+ interface GeneratorArg {
119
+ name: string;
120
+ required?: boolean;
121
+ description?: string;
122
+ }
123
+ /** CLI flag descriptor — boolean unless `takesValue: true`. */
124
+ interface GeneratorFlag {
125
+ name: string;
126
+ alias?: string;
127
+ description?: string;
128
+ takesValue?: boolean;
129
+ }
130
+ /**
131
+ * Spec returned by {@link defineGenerator}. Plugin discovery files
132
+ * export `GeneratorSpec[]` as their default export.
133
+ */
134
+ interface GeneratorSpec {
135
+ /**
136
+ * Dispatch name — `kick g <name>` looks for an exact match against
137
+ * this string after the built-in generators are checked.
138
+ */
139
+ name: string;
140
+ /** Description shown in `kick g --list` and `--help`. */
141
+ description: string;
142
+ /** Optional argument descriptors — informational, surfaced in help output. */
143
+ args?: readonly GeneratorArg[];
144
+ /** Optional flag descriptors — informational, surfaced in help output. */
145
+ flags?: readonly GeneratorFlag[];
146
+ /** Build the output files for one invocation. May return a Promise. */
147
+ files(ctx: GeneratorContext): GeneratorFile[] | Promise<GeneratorFile[]>;
148
+ }
149
+ /**
150
+ * Identity factory — returns the spec verbatim. Exists for type
151
+ * inference and forward-compatibility (future fields can be added with
152
+ * defaults).
153
+ *
154
+ * @example
155
+ * ```ts
156
+ * import { defineGenerator } from '@forinda/kickjs-cli'
157
+ *
158
+ * export default [
159
+ * defineGenerator({
160
+ * name: 'command',
161
+ * description: 'Generate a CQRS command + handler',
162
+ * files: (ctx) => [
163
+ * {
164
+ * path: `src/modules/${ctx.kebab}/commands/${ctx.kebab}.command.ts`,
165
+ * content: `// command for ${ctx.pascal}`,
166
+ * },
167
+ * ],
168
+ * }),
169
+ * ]
170
+ * ```
171
+ */
172
+ declare function defineGenerator(spec: GeneratorSpec): GeneratorSpec;
173
+ //#endregion
174
+ //#region src/plugin/types.d.ts
175
+ /**
176
+ * Runtime context handed to `register()` — saves callbacks from
177
+ * re-loading config or guessing cwd. Forward-compatible: future fields
178
+ * land here without changing the callback signature.
179
+ */
180
+ interface KickCliPluginContext {
181
+ cwd: string;
182
+ /** Resolved kick.config.ts (null if the project has none). */
183
+ config: KickConfig | null;
184
+ log: (msg: string) => void;
185
+ }
186
+ interface KickCliPlugin {
187
+ /** Stable identifier — used in error messages on conflict + de-dup. */
188
+ name: string;
189
+ commands?: KickCommandDefinition[];
190
+ /** Programmatic command registration. Called once at CLI startup. */
191
+ register?: (program: Command, ctx: KickCliPluginContext) => void | Promise<void>;
192
+ typegens?: TypegenPlugin[];
193
+ generators?: GeneratorSpec[];
194
+ }
195
+ /** Identity helper — exists for type inference + parity with definePlugin. */
196
+ declare function defineCliPlugin(p: KickCliPlugin): KickCliPlugin;
197
+ declare class KickPluginConflictError extends Error {
198
+ constructor(kind: 'plugin' | 'command' | 'typegen' | 'generator', id: string, owners: string[]);
199
+ }
200
+ //#endregion
2
201
  //#region src/config.d.ts
3
202
  /** A custom command that developers can register via kick.config.ts */
4
203
  interface KickCommandDefinition {
@@ -100,6 +299,24 @@ interface TypegenConfig {
100
299
  * @default 'src/env.ts'
101
300
  */
102
301
  envFile?: string | false;
302
+ /**
303
+ * Built-in or user typegen plugin ids to skip during `kick typegen`,
304
+ * `kick dev`, and `kick typegen --watch`.
305
+ *
306
+ * The plugin still loads and merge-time conflict detection still
307
+ * runs — only the `generate()` invocation is skipped — so adopters
308
+ * who want to hand-write `KickDbRegister` (manual typeof-schema
309
+ * augmentation) can disable `'kick/db'` and keep the rest:
310
+ *
311
+ * @example
312
+ * typegen: {
313
+ * disable: ['kick/db'], // hand-written register.ts owns the type
314
+ * }
315
+ *
316
+ * Unrecognised ids are ignored — the list is treated as a wishlist,
317
+ * not a strict registry.
318
+ */
319
+ disable?: string[];
103
320
  }
104
321
  /** Module generation settings — controls how `kick g module` produces code */
105
322
  interface ModuleConfig {
@@ -249,6 +466,20 @@ interface KickConfig {
249
466
  typegen?: TypegenConfig;
250
467
  /** Custom commands that extend the CLI */
251
468
  commands?: KickCommandDefinition[];
469
+ /**
470
+ * CLI plugins — bundled commands + typegens contributed by external
471
+ * packages (e.g. `@forinda/kickjs-cli-drizzle`). Plugin commands
472
+ * appear first; adopter `commands` overrides plugin commands of the
473
+ * same name. Duplicate commands or typegen ids across two plugins
474
+ * fail-fast at CLI startup.
475
+ *
476
+ * @example
477
+ * import { drizzlePlugin } from '@forinda/kickjs-cli-drizzle'
478
+ * export default defineConfig({
479
+ * plugins: [drizzlePlugin({ schemaPath: 'src/db/schema' })],
480
+ * })
481
+ */
482
+ plugins?: KickCliPlugin[];
252
483
  /** Code style overrides (auto-detected from prettier when possible) */
253
484
  style?: {
254
485
  semicolons?: boolean;
@@ -379,143 +610,6 @@ interface InitProjectOptions {
379
610
  /** Scaffold a new KickJS project */
380
611
  declare function initProject(options: InitProjectOptions): Promise<void>;
381
612
  //#endregion
382
- //#region src/generator-extension/define.d.ts
383
- /**
384
- * Plugin generator API per architecture.md §21.2.3 — lets first-party
385
- * AND third-party packages ship `kick g <name>` scaffolders the same
386
- * way the framework's built-in generators do.
387
- *
388
- * Plugins declare a discovery file in their `package.json`:
389
- *
390
- * ```json
391
- * {
392
- * "name": "@my-org/kickjs-cqrs",
393
- * "kickjs": { "generators": "./dist/generators.js" }
394
- * }
395
- * ```
396
- *
397
- * The discovery file exports a typed manifest:
398
- *
399
- * ```ts
400
- * import { defineGenerator } from '@forinda/kickjs-cli'
401
- *
402
- * export default [
403
- * defineGenerator({
404
- * name: 'command',
405
- * description: 'Generate a CQRS command + handler',
406
- * args: [{ name: 'name', required: true }],
407
- * files: (ctx) => [
408
- * {
409
- * path: `src/modules/${ctx.kebab}/commands/create-${ctx.kebab}.command.ts`,
410
- * content: `// generated command for ${ctx.pascal}`,
411
- * },
412
- * ],
413
- * }),
414
- * ]
415
- * ```
416
- *
417
- * `kick g command Order` then dispatches against the registered
418
- * generator and writes the returned files relative to `cwd`.
419
- */
420
- /**
421
- * Resolved naming variants + project context handed to a generator's
422
- * `files()` factory. Keys mirror `TemplateContext` so first-party
423
- * generators that rely on the same shape can be migrated to plugin
424
- * generators without rewriting their templates.
425
- */
426
- interface GeneratorContext {
427
- /** Raw name passed on the command line (`kick g resolver UserPost` → `'UserPost'`). */
428
- name: string;
429
- /** PascalCase form (`UserPost`). */
430
- pascal: string;
431
- /** kebab-case form (`user-post`). */
432
- kebab: string;
433
- /** camelCase form (`userPost`). */
434
- camel: string;
435
- /** snake_case form (`user_post`). */
436
- snake: string;
437
- /** Pluralized PascalCase (`UserPosts`) — present when the project enables `pluralize`. */
438
- pluralPascal?: string;
439
- /** Pluralized kebab-case (`user-posts`). */
440
- pluralKebab?: string;
441
- /** Pluralized camelCase (`userPosts`). */
442
- pluralCamel?: string;
443
- /** Modules directory from `kick.config.ts` (default `'src/modules'`). */
444
- modulesDir: string;
445
- /** Working directory for the generator — usually `process.cwd()`. */
446
- cwd: string;
447
- /** Positional arguments passed AFTER the name (e.g. `kick g command Order extra1 extra2` → `['extra1', 'extra2']`). */
448
- args: string[];
449
- /** Flag values from the command line — booleans for switches, strings for `--key value`. */
450
- flags: Record<string, string | boolean>;
451
- }
452
- /** A single output file the generator wants written. */
453
- interface GeneratorFile {
454
- /**
455
- * Output path. Relative paths resolve against `ctx.cwd`; absolute
456
- * paths are used as-is. Parent directories are created automatically.
457
- */
458
- path: string;
459
- /** File contents written verbatim (UTF-8). */
460
- content: string;
461
- }
462
- /** CLI argument descriptor surfaced in `kick g --list` help. */
463
- interface GeneratorArg {
464
- name: string;
465
- required?: boolean;
466
- description?: string;
467
- }
468
- /** CLI flag descriptor — boolean unless `takesValue: true`. */
469
- interface GeneratorFlag {
470
- name: string;
471
- alias?: string;
472
- description?: string;
473
- takesValue?: boolean;
474
- }
475
- /**
476
- * Spec returned by {@link defineGenerator}. Plugin discovery files
477
- * export `GeneratorSpec[]` as their default export.
478
- */
479
- interface GeneratorSpec {
480
- /**
481
- * Dispatch name — `kick g <name>` looks for an exact match against
482
- * this string after the built-in generators are checked.
483
- */
484
- name: string;
485
- /** Description shown in `kick g --list` and `--help`. */
486
- description: string;
487
- /** Optional argument descriptors — informational, surfaced in help output. */
488
- args?: readonly GeneratorArg[];
489
- /** Optional flag descriptors — informational, surfaced in help output. */
490
- flags?: readonly GeneratorFlag[];
491
- /** Build the output files for one invocation. May return a Promise. */
492
- files(ctx: GeneratorContext): GeneratorFile[] | Promise<GeneratorFile[]>;
493
- }
494
- /**
495
- * Identity factory — returns the spec verbatim. Exists for type
496
- * inference and forward-compatibility (future fields can be added with
497
- * defaults).
498
- *
499
- * @example
500
- * ```ts
501
- * import { defineGenerator } from '@forinda/kickjs-cli'
502
- *
503
- * export default [
504
- * defineGenerator({
505
- * name: 'command',
506
- * description: 'Generate a CQRS command + handler',
507
- * files: (ctx) => [
508
- * {
509
- * path: `src/modules/${ctx.kebab}/commands/${ctx.kebab}.command.ts`,
510
- * content: `// command for ${ctx.pascal}`,
511
- * },
512
- * ],
513
- * }),
514
- * ]
515
- * ```
516
- */
517
- declare function defineGenerator(spec: GeneratorSpec): GeneratorSpec;
518
- //#endregion
519
613
  //#region src/generator-extension/discover.d.ts
520
614
  /**
521
615
  * One row in the discovered registry. `source` is the npm package name
@@ -575,5 +669,5 @@ declare function toKebabCase(name: string): string;
575
669
  */
576
670
  declare function pluralize(name: string): string;
577
671
  //#endregion
578
- export { type DiscoveredGenerator, type DiscoveryResult, type GeneratorArg, type GeneratorContext, type GeneratorFile, type GeneratorFlag, type GeneratorSpec, type KickCommandDefinition, type KickConfig, buildGeneratorContext, defineConfig, defineGenerator, generateAdapter, generateController, generateDto, generateGuard, generateMiddleware, generateModule, generateService, initProject, loadKickConfig, pluralize, toCamelCase, toKebabCase, toPascalCase };
672
+ export { type DiscoveredGenerator, type DiscoveryResult, type GeneratorArg, type GeneratorContext, type GeneratorFile, type GeneratorFlag, type GeneratorSpec, type KickCliPlugin, type KickCliPluginContext, type KickCommandDefinition, type KickConfig, KickPluginConflictError, type TypegenContext, type TypegenPlugin, type TypegenPluginResult, buildGeneratorContext, defineCliPlugin, defineConfig, defineGenerator, generateAdapter, generateController, generateDto, generateGuard, generateMiddleware, generateModule, generateService, initProject, loadKickConfig, pluralize, toCamelCase, toKebabCase, toPascalCase };
579
673
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/config.ts","../src/generators/module.ts","../src/generators/adapter.ts","../src/generators/middleware.ts","../src/generators/guard.ts","../src/generators/service.ts","../src/generators/controller.ts","../src/generators/dto.ts","../src/generators/project.ts","../src/generator-extension/define.ts","../src/generator-extension/discover.ts","../src/generator-extension/context.ts","../src/utils/naming.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/typegen/plugin.ts","../src/generator-extension/define.ts","../src/plugin/types.ts","../src/config.ts","../src/generators/module.ts","../src/generators/adapter.ts","../src/generators/middleware.ts","../src/generators/guard.ts","../src/generators/service.ts","../src/generators/controller.ts","../src/generators/dto.ts","../src/generators/project.ts","../src/generator-extension/discover.ts","../src/generator-extension/context.ts","../src/utils/naming.ts"],"mappings":"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"}