@kidd-cli/core 0.3.0 → 0.5.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.
Files changed (48) hide show
  1. package/README.md +23 -8
  2. package/dist/{config-D8e5qxLp.js → config-BiEi8RG2.js} +2 -2
  3. package/dist/{config-D8e5qxLp.js.map → config-BiEi8RG2.js.map} +1 -1
  4. package/dist/{create-store-OHdkm_Yt.js → create-store-CGeHrTcl.js} +2 -2
  5. package/dist/{create-store-OHdkm_Yt.js.map → create-store-CGeHrTcl.js.map} +1 -1
  6. package/dist/index.d.ts +8 -3
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +265 -95
  9. package/dist/index.js.map +1 -1
  10. package/dist/lib/config.js +2 -2
  11. package/dist/lib/format.d.ts +73 -0
  12. package/dist/lib/format.d.ts.map +1 -0
  13. package/dist/lib/format.js +20 -0
  14. package/dist/lib/format.js.map +1 -0
  15. package/dist/lib/logger.d.ts +1 -1
  16. package/dist/lib/logger.js +10 -0
  17. package/dist/lib/logger.js.map +1 -1
  18. package/dist/lib/project.d.ts +1 -1
  19. package/dist/lib/project.js +1 -1
  20. package/dist/lib/store.d.ts +1 -1
  21. package/dist/lib/store.js +2 -2
  22. package/dist/{logger-9j49T5da.d.ts → logger-Bm-LRSeQ.d.ts} +17 -1
  23. package/dist/logger-Bm-LRSeQ.d.ts.map +1 -0
  24. package/dist/middleware/auth.d.ts +15 -3
  25. package/dist/middleware/auth.d.ts.map +1 -1
  26. package/dist/middleware/auth.js +48 -9
  27. package/dist/middleware/auth.js.map +1 -1
  28. package/dist/middleware/http.d.ts +1 -1
  29. package/dist/middleware/http.js +1 -1
  30. package/dist/middleware/icons.d.ts +119 -0
  31. package/dist/middleware/icons.d.ts.map +1 -0
  32. package/dist/middleware/icons.js +824 -0
  33. package/dist/middleware/icons.js.map +1 -0
  34. package/dist/{middleware-BWnPSRWR.js → middleware-BewRXb2G.js} +1 -1
  35. package/dist/{middleware-BWnPSRWR.js.map → middleware-BewRXb2G.js.map} +1 -1
  36. package/dist/{project-D0g84bZY.js → project-CoWHMVc8.js} +1 -1
  37. package/dist/{project-D0g84bZY.js.map → project-CoWHMVc8.js.map} +1 -1
  38. package/dist/tally-ioa20iGw.js +220 -0
  39. package/dist/tally-ioa20iGw.js.map +1 -0
  40. package/dist/{types-D-BxshYM.d.ts → types-Boe_1EjY.d.ts} +1 -1
  41. package/dist/{types-D-BxshYM.d.ts.map → types-Boe_1EjY.d.ts.map} +1 -1
  42. package/dist/types-Cp8_uIil.d.ts +160 -0
  43. package/dist/types-Cp8_uIil.d.ts.map +1 -0
  44. package/dist/{types-CTvrsrnD.d.ts → types-s-yUj9Zj.d.ts} +104 -44
  45. package/dist/types-s-yUj9Zj.d.ts.map +1 -0
  46. package/package.json +12 -3
  47. package/dist/logger-9j49T5da.d.ts.map +0 -1
  48. package/dist/types-CTvrsrnD.d.ts.map +0 -1
@@ -1,6 +1,7 @@
1
- import { t as CliLogger } from "./logger-9j49T5da.js";
2
- import { Tagged } from "@kidd-cli/utils/tag";
1
+ import { t as CliLogger } from "./logger-Bm-LRSeQ.js";
3
2
  import { z } from "zod";
3
+ import { Tagged } from "@kidd-cli/utils/tag";
4
+ import { Colors } from "picocolors/types";
4
5
 
5
6
  //#region src/context/types.d.ts
6
7
  /**
@@ -103,38 +104,17 @@ interface Spinner {
103
104
  message(message: string): void;
104
105
  }
105
106
  /**
106
- * Formatting options for structured output methods.
107
- */
108
- interface OutputOptions {
109
- /**
110
- * When true, output JSON instead of human-readable text.
111
- */
112
- readonly json?: boolean;
113
- }
114
- /**
115
- * Structured output methods available on the context.
116
- *
117
- * Commands use these to write data to stdout. The `json` flag on
118
- * {@link OutputOptions} switches between human-readable formatting
119
- * and machine-parsable JSON.
107
+ * Pure string formatters for data serialization (no I/O).
120
108
  */
121
- interface Output {
122
- /**
123
- * Write a value to stdout. Objects are serialized as JSON when `json` is set.
124
- */
125
- write(data: unknown, options?: OutputOptions): void;
109
+ interface Format {
126
110
  /**
127
- * Write a table (array of objects) to stdout.
111
+ * Serialize a value as pretty-printed JSON.
128
112
  */
129
- table(rows: Record<string, unknown>[], options?: OutputOptions): void;
113
+ json(data: unknown): string;
130
114
  /**
131
- * Write a markdown-formatted string to stdout.
115
+ * Format an array of objects as an aligned text table.
132
116
  */
133
- markdown(content: string): void;
134
- /**
135
- * Write raw string to stdout (no formatting).
136
- */
137
- raw(content: string): void;
117
+ table(rows: readonly Record<string, unknown>[]): string;
138
118
  }
139
119
  /**
140
120
  * CLI metadata available on the context. Deeply immutable at the type level.
@@ -160,7 +140,7 @@ interface Meta {
160
140
  * to mutate any nested property produces a compile-time error. Use `ctx.store`
161
141
  * for mutable state that flows between middleware and handlers.
162
142
  *
163
- * Register types (`KiddArgs`, `KiddConfig`, etc.) are merged with generics so
143
+ * Register types (`KiddArgs`, `CliConfig`, etc.) are merged with generics so
164
144
  * consumers can use module augmentation for project-wide defaults without
165
145
  * threading generics everywhere.
166
146
  *
@@ -173,11 +153,21 @@ interface Context<TArgs extends AnyRecord = AnyRecord, TConfig extends AnyRecord
173
153
  */
174
154
  readonly args: DeepReadonly<Merge<KiddArgs, TArgs>>;
175
155
  /**
156
+ * Color formatting utilities (picocolors). Use for coloring summary
157
+ * values, diagnostic output, and other terminal text.
158
+ */
159
+ readonly colors: Colors;
160
+ /**
176
161
  * Runtime config validated against the zod schema. Deeply immutable.
177
162
  */
178
- readonly config: DeepReadonly<Merge<KiddConfig, TConfig>>;
163
+ readonly config: DeepReadonly<Merge<CliConfig, TConfig>>;
164
+ /**
165
+ * Pure string formatters for data serialization (no I/O).
166
+ */
167
+ readonly format: Format;
179
168
  /**
180
169
  * Structured logger backed by @clack/prompts for styled terminal output.
170
+ * Also provides check, finding, and tally methods for structured output.
181
171
  */
182
172
  readonly logger: CliLogger;
183
173
  /**
@@ -189,10 +179,6 @@ interface Context<TArgs extends AnyRecord = AnyRecord, TConfig extends AnyRecord
189
179
  */
190
180
  readonly spinner: Spinner;
191
181
  /**
192
- * Structured output (write, table, markdown, raw).
193
- */
194
- readonly output: Output;
195
- /**
196
182
  * In-memory key-value store (mutable — use this for middleware-to-handler data flow).
197
183
  */
198
184
  readonly store: Store<Merge<KiddStore, StoreMap>>;
@@ -216,13 +202,37 @@ interface Context<TArgs extends AnyRecord = AnyRecord, TConfig extends AnyRecord
216
202
  interface KiddArgs {}
217
203
  /**
218
204
  * Global config merged into every ctx.config.
205
+ *
206
+ * Extend via module augmentation with {@link ConfigType} to derive the
207
+ * shape from your Zod schema:
208
+ *
209
+ * ```ts
210
+ * declare module '@kidd-cli/core' {
211
+ * interface CliConfig extends ConfigType<typeof configSchema> {}
212
+ * }
213
+ * ```
219
214
  */
220
- interface KiddConfig {}
215
+ interface CliConfig {}
221
216
  /**
222
217
  * Global store keys merged into every ctx.store.
223
218
  */
224
219
  interface KiddStore {}
225
220
  /**
221
+ * Derive the config type from a Zod schema for use in module augmentation.
222
+ *
223
+ * Use this in a `declare module` block to keep `CliConfig` in sync with
224
+ * your Zod config schema, eliminating manual type duplication:
225
+ *
226
+ * ```ts
227
+ * import type { ConfigType } from '@kidd-cli/core'
228
+ *
229
+ * declare module '@kidd-cli/core' {
230
+ * interface CliConfig extends ConfigType<typeof configSchema> {}
231
+ * }
232
+ * ```
233
+ */
234
+ type ConfigType<TSchema extends z.ZodType> = z.infer<TSchema>;
235
+ /**
226
236
  * Merge two types, with TBase overriding TOverride.
227
237
  */
228
238
  type Merge<TBase, TOverride> = Omit<TBase, keyof TOverride> & TOverride;
@@ -343,6 +353,30 @@ type InferArgs<TDef extends ArgsDef> = TDef extends z.ZodObject<z.ZodRawShape> ?
343
353
  */
344
354
  type HandlerFn<TArgs extends AnyRecord = AnyRecord, TConfig extends AnyRecord = AnyRecord, TVars = {}> = (ctx: Context<TArgs, TConfig> & Readonly<TVars>) => Promise<void> | void;
345
355
  /**
356
+ * Structured configuration for a command's subcommands.
357
+ *
358
+ * Groups the command source (inline map or directory path) alongside display
359
+ * ordering into a single cohesive object.
360
+ */
361
+ interface CommandsConfig {
362
+ /**
363
+ * Display order for subcommands.
364
+ * Subcommands listed appear first in the specified order; omitted subcommands
365
+ * fall back to alphabetical sort.
366
+ */
367
+ readonly order?: readonly string[];
368
+ /**
369
+ * Directory path to autoload subcommand files from.
370
+ * Mutually exclusive with `commands` within this config object.
371
+ */
372
+ readonly path?: string;
373
+ /**
374
+ * Inline subcommand map or a promise from `autoload()`.
375
+ * Mutually exclusive with `path` within this config object.
376
+ */
377
+ readonly commands?: CommandMap | Promise<CommandMap>;
378
+ }
379
+ /**
346
380
  * Options passed to `command()`.
347
381
  *
348
382
  * @typeParam TArgsDef - Arg definitions type.
@@ -363,9 +397,10 @@ interface CommandDef<TArgsDef extends ArgsDef = ArgsDef, TConfig extends AnyReco
363
397
  */
364
398
  middleware?: TMiddleware;
365
399
  /**
366
- * Nested subcommands — a static map or a promise from `autoload()`.
400
+ * Nested subcommands — a static map, a promise from `autoload()`, or a
401
+ * structured {@link CommandsConfig} grouping the source with display order.
367
402
  */
368
- commands?: CommandMap | Promise<CommandMap>;
403
+ commands?: CommandMap | Promise<CommandMap> | CommandsConfig;
369
404
  /**
370
405
  * The command handler.
371
406
  */
@@ -379,6 +414,7 @@ type Command<TArgsDef extends ArgsDef = ArgsDef, TConfig extends AnyRecord = Any
379
414
  readonly args?: TArgsDef;
380
415
  readonly middleware?: TMiddleware;
381
416
  readonly commands?: CommandMap | Promise<CommandMap>;
417
+ readonly order?: readonly string[];
382
418
  readonly handler?: HandlerFn<TArgsDef extends z.ZodObject<z.ZodRawShape> ? z.infer<TArgsDef> : InferArgs<TArgsDef & ArgsDef>, TConfig, InferVariables<TMiddleware>>;
383
419
  }, "Command">;
384
420
  /**
@@ -410,6 +446,21 @@ interface CliConfigOptions<TSchema extends z.ZodType = z.ZodType> {
410
446
  name?: string;
411
447
  }
412
448
  /**
449
+ * Help output customization options for the CLI.
450
+ */
451
+ interface CliHelpOptions {
452
+ /**
453
+ * Header text displayed above help output when the CLI is invoked
454
+ * without a command. Not shown on `--help`.
455
+ */
456
+ readonly header?: string;
457
+ /**
458
+ * Footer text displayed below help output (e.g., docs URL, bug report link).
459
+ * Shown on all help output.
460
+ */
461
+ readonly footer?: string;
462
+ }
463
+ /**
413
464
  * Options passed to `cli()`.
414
465
  */
415
466
  interface CliOptions<TSchema extends z.ZodType = z.ZodType> {
@@ -419,8 +470,12 @@ interface CliOptions<TSchema extends z.ZodType = z.ZodType> {
419
470
  name: string;
420
471
  /**
421
472
  * CLI version. Enables `--version` flag.
473
+ *
474
+ * When omitted, falls back to the compile-time `__KIDD_VERSION__` constant
475
+ * injected by the kidd bundler. An error is raised at startup if neither
476
+ * an explicit version nor `__KIDD_VERSION__` is available.
422
477
  */
423
- version: string;
478
+ version?: string;
424
479
  /**
425
480
  * Human-readable description shown in help text.
426
481
  */
@@ -437,11 +492,16 @@ interface CliOptions<TSchema extends z.ZodType = z.ZodType> {
437
492
  * Override the commands source. When omitted, `cli()` loads `kidd.config.ts`
438
493
  * and autoloads from its `commands` field (falling back to `'./commands'`).
439
494
  *
440
- * Accepts a directory path string, a static {@link CommandMap}, or a
441
- * `Promise<CommandMap>` for advanced use and testing.
495
+ * Accepts a directory path string, a static {@link CommandMap}, a
496
+ * `Promise<CommandMap>`, or a structured {@link CommandsConfig} grouping
497
+ * the source with display ordering.
498
+ */
499
+ commands?: string | CommandMap | Promise<CommandMap> | CommandsConfig;
500
+ /**
501
+ * Help output customization (header, footer).
442
502
  */
443
- commands?: string | CommandMap | Promise<CommandMap>;
503
+ help?: CliHelpOptions;
444
504
  }
445
505
  //#endregion
446
- export { CommandDef as a, Middleware as c, Context as d, Command as i, MiddlewareEnv as l, AutoloadOptions as n, CommandMap as o, CliOptions as r, InferVariables as s, ArgsDef as t, MiddlewareFn as u };
447
- //# sourceMappingURL=types-CTvrsrnD.d.ts.map
506
+ export { CliOptions as a, CommandMap as c, InferVariables as d, Middleware as f, Context as h, CliHelpOptions as i, CommandsConfig as l, MiddlewareFn as m, AutoloadOptions as n, Command as o, MiddlewareEnv as p, CliConfig as r, CommandDef as s, ArgsDef as t, ConfigType as u };
507
+ //# sourceMappingURL=types-s-yUj9Zj.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-s-yUj9Zj.d.ts","names":[],"sources":["../src/context/types.ts","../src/types.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kidd-cli/core",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "An opinionated CLI framework for Node.js",
5
5
  "keywords": [
6
6
  "cli",
@@ -33,6 +33,10 @@
33
33
  "types": "./dist/lib/config.d.ts",
34
34
  "default": "./dist/lib/config.js"
35
35
  },
36
+ "./format": {
37
+ "types": "./dist/lib/format.d.ts",
38
+ "default": "./dist/lib/format.js"
39
+ },
36
40
  "./store": {
37
41
  "types": "./dist/lib/store.d.ts",
38
42
  "default": "./dist/lib/store.js"
@@ -48,6 +52,10 @@
48
52
  "./http": {
49
53
  "types": "./dist/middleware/http.d.ts",
50
54
  "default": "./dist/middleware/http.js"
55
+ },
56
+ "./icons": {
57
+ "types": "./dist/middleware/icons.d.ts",
58
+ "default": "./dist/middleware/icons.js"
51
59
  }
52
60
  },
53
61
  "dependencies": {
@@ -55,6 +63,7 @@
55
63
  "@pinojs/redact": "^0.4.0",
56
64
  "dotenv": "^17.3.1",
57
65
  "es-toolkit": "^1.45.1",
66
+ "font-list": "^2.0.2",
58
67
  "jsonc-parser": "^3.3.1",
59
68
  "liquidjs": "^10.25.0",
60
69
  "picocolors": "^1.1.1",
@@ -62,8 +71,8 @@
62
71
  "yaml": "^2.8.2",
63
72
  "yargs": "^18.0.0",
64
73
  "zod": "^4.3.6",
65
- "@kidd-cli/config": "0.1.3",
66
- "@kidd-cli/utils": "0.1.3"
74
+ "@kidd-cli/config": "0.1.4",
75
+ "@kidd-cli/utils": "0.1.4"
67
76
  },
68
77
  "devDependencies": {
69
78
  "@types/node": "^25.4.0",
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger-9j49T5da.d.ts","names":[],"sources":["../src/lib/logger.ts"],"mappings":";;AAKA;;UAAiB,gBAAA;EAKU;;;;EAAA,SAAhB,MAAA,GAAS,MAAA,CAAO,WAAA;AAAA;AAM3B;;;AAAA,UAAiB,SAAA;;;;EAIf,IAAA,CAAK,OAAA;;;;EAIL,OAAA,CAAQ,OAAA;;;;EAIR,KAAA,CAAM,OAAA;;;;EAIN,IAAA,CAAK,OAAA;;;;EAIL,IAAA,CAAK,OAAA;;;;EAIL,OAAA,CAAQ,OAAA,UAAiB,IAAA;IAAS,MAAA;EAAA;EA6BpC;;;EAzBE,KAAA,CAAM,KAAA;;;;EAIN,KAAA,CAAM,OAAA;EAqByD;AA2CjE;;EA5DE,IAAA,CAAK,OAAA,WAAkB,KAAA;EA4DD;;;EAxDtB,OAAA;;;;EAIA,KAAA,CAAM,IAAA;AAAA;;;;;;;iBASQ,eAAA,CAAgB,OAAA,GAAS,gBAAA,GAAwB,SAAA;;;;cA2CpD,SAAA,EAAW,SAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-CTvrsrnD.d.ts","names":[],"sources":["../src/context/types.ts","../src/types.ts"],"mappings":"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"}