cli-forge 1.2.3 → 1.4.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 (46) hide show
  1. package/dist/bin/cli.d.ts +1 -1
  2. package/dist/bin/commands/generate-documentation.d.ts +2 -2
  3. package/dist/bin/commands/generate-documentation.js +36 -6
  4. package/dist/bin/commands/generate-documentation.js.map +1 -1
  5. package/dist/index.d.ts +1 -0
  6. package/dist/index.js.map +1 -1
  7. package/dist/lib/configuration-providers.d.ts +3 -2
  8. package/dist/lib/configuration-providers.js +38 -2
  9. package/dist/lib/configuration-providers.js.map +1 -1
  10. package/dist/lib/documentation.d.ts +6 -1
  11. package/dist/lib/documentation.js +4 -0
  12. package/dist/lib/documentation.js.map +1 -1
  13. package/dist/lib/format-help.js +9 -0
  14. package/dist/lib/format-help.js.map +1 -1
  15. package/dist/lib/internal-cli.d.ts +14 -2
  16. package/dist/lib/internal-cli.js +61 -3
  17. package/dist/lib/internal-cli.js.map +1 -1
  18. package/dist/lib/prompt-types.d.ts +44 -0
  19. package/dist/lib/prompt-types.js +3 -0
  20. package/dist/lib/prompt-types.js.map +1 -0
  21. package/dist/lib/public-api.d.ts +45 -12
  22. package/dist/lib/public-api.js.map +1 -1
  23. package/dist/lib/resolve-prompts.d.ts +13 -0
  24. package/dist/lib/resolve-prompts.js +121 -0
  25. package/dist/lib/resolve-prompts.js.map +1 -0
  26. package/dist/prompt-providers/clack.d.ts +29 -0
  27. package/dist/prompt-providers/clack.js +136 -0
  28. package/dist/prompt-providers/clack.js.map +1 -0
  29. package/package.json +11 -2
  30. package/src/bin/commands/generate-documentation.ts +70 -9
  31. package/src/index.ts +1 -0
  32. package/src/lib/composable-builder.ts +3 -3
  33. package/src/lib/configuration-providers.ts +53 -4
  34. package/src/lib/documentation.ts +11 -0
  35. package/src/lib/format-help.ts +10 -0
  36. package/src/lib/internal-cli.spec.ts +300 -0
  37. package/src/lib/internal-cli.ts +80 -7
  38. package/src/lib/prompt-types.ts +48 -0
  39. package/src/lib/public-api.ts +31 -19
  40. package/src/lib/resolve-prompts.spec.ts +311 -0
  41. package/src/lib/resolve-prompts.ts +156 -0
  42. package/src/prompt-providers/clack.spec.ts +376 -0
  43. package/src/prompt-providers/clack.ts +169 -0
  44. package/tsconfig.lib.json.tsbuildinfo +1 -1
  45. package/typedoc.json +10 -0
  46. package/.eslintrc.json +0 -36
@@ -1 +1 @@
1
- {"version":3,"file":"internal-cli.js","sourceRoot":"","sources":["../../src/lib/internal-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal-cli.js","sourceRoot":"","sources":["../../src/lib/internal-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { InternalOptionConfig } from '@cli-forge/parser';
2
+ /**
3
+ * Static prompt configuration for an option.
4
+ * - `true` — always prompt
5
+ * - `string` — always prompt with this label
6
+ * - `false` — never prompt
7
+ */
8
+ export type PromptConfig = boolean | string;
9
+ /**
10
+ * Full prompt configuration, including dynamic resolution.
11
+ * When a function is provided, it receives accumulated args and returns
12
+ * a static PromptConfig. Returning null/undefined from the callback
13
+ * is treated as falsy (don't prompt).
14
+ */
15
+ export type PromptOptionConfig<TArgs = unknown> = PromptConfig | ((args: Partial<TArgs>) => PromptConfig | null | undefined);
16
+ /**
17
+ * An option that needs prompting, passed to prompt providers.
18
+ */
19
+ export interface PromptOption {
20
+ /** The option name (key) */
21
+ name: string;
22
+ /** The full option config from the parser, with resolved prompt value */
23
+ config: InternalOptionConfig & {
24
+ prompt?: PromptConfig;
25
+ };
26
+ }
27
+ /**
28
+ * A prompt provider that can fulfill missing option values interactively.
29
+ */
30
+ export interface PromptProvider {
31
+ /**
32
+ * If provided, this provider only handles options where filter returns true.
33
+ * Providers without filters act as fallbacks.
34
+ */
35
+ filter?: (name: string, config: InternalOptionConfig) => boolean;
36
+ /**
37
+ * Prompt for a single option. Called per-option if promptBatch is not defined.
38
+ */
39
+ prompt?: (option: PromptOption) => Promise<unknown>;
40
+ /**
41
+ * Prompt for multiple options at once. Preferred over prompt when available.
42
+ */
43
+ promptBatch?: (options: PromptOption[]) => Promise<Record<string, unknown>>;
44
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=prompt-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-types.js","sourceRoot":"","sources":["../../src/lib/prompt-types.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import { ArrayOptionConfig, BooleanOptionConfig, type ConfigurationFiles, EnvOptionConfig, LocalizationDictionary, LocalizationFunction, MakeUndefinedPropertiesOptional, NumberOptionConfig, ObjectOptionConfig, OptionConfig, OptionConfigToType, ParsedArgs, ResolveProperties, StringOptionConfig, WithOptional } from '@cli-forge/parser';
2
2
  import { InternalCLI } from './internal-cli';
3
+ import type { PromptOptionConfig, PromptProvider } from './prompt-types';
3
4
  /**
4
5
  * Extracts the command name from a Command type.
5
6
  * Works with both CLI instances and command config objects.
@@ -93,6 +94,14 @@ export interface CLI<TArgs extends ParsedArgs = ParsedArgs, THandlerReturn = voi
93
94
  * @param actions Actions that can be taken by the error handler. Prefer using these over process.exit for better support of interactive shells.
94
95
  */
95
96
  errorHandler(handler: ErrorHandler): CLI<TArgs, THandlerReturn, TChildren, TParent>;
97
+ /**
98
+ * Registers a prompt provider for interactive option fulfillment.
99
+ * Multiple providers can be registered. Filtered providers are checked first
100
+ * (in registration order), then fallback providers (no filter).
101
+ *
102
+ * @param provider The prompt provider to register.
103
+ */
104
+ withPromptProvider(provider: PromptProvider): CLI<TArgs, THandlerReturn, TChildren, TParent>;
96
105
  /**
97
106
  * Registers a new option for the CLI command. This option will be accessible
98
107
  * within the command handler, as well as any subcommands.
@@ -103,22 +112,34 @@ export interface CLI<TArgs extends ParsedArgs = ParsedArgs, THandlerReturn = voi
103
112
  */
104
113
  option<TOption extends string, TCoerce, const TProps extends Record<string, {
105
114
  type: string;
106
- }>>(name: TOption, config: ObjectOptionConfig<TCoerce, TProps>): CLI<TArgs & MakeUndefinedPropertiesOptional<{
115
+ }>>(name: TOption, config: ObjectOptionConfig<TCoerce, TProps> & {
116
+ prompt?: PromptOptionConfig<TArgs>;
117
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
107
118
  [key in TOption]: WithOptional<unknown extends TCoerce ? ResolveProperties<TProps> : TCoerce, ObjectOptionConfig<TCoerce, TProps>>;
108
119
  }>, THandlerReturn, TChildren, TParent>;
109
- option<TOption extends string, const TConfig extends StringOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
120
+ option<TOption extends string, const TConfig extends StringOptionConfig<any, any>>(name: TOption, config: TConfig & {
121
+ prompt?: PromptOptionConfig<TArgs>;
122
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
110
123
  [key in TOption]: OptionConfigToType<TConfig>;
111
124
  }>, THandlerReturn, TChildren, TParent>;
112
- option<TOption extends string, const TConfig extends NumberOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
125
+ option<TOption extends string, const TConfig extends NumberOptionConfig<any, any>>(name: TOption, config: TConfig & {
126
+ prompt?: PromptOptionConfig<TArgs>;
127
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
113
128
  [key in TOption]: OptionConfigToType<TConfig>;
114
129
  }>, THandlerReturn, TChildren, TParent>;
115
- option<TOption extends string, const TConfig extends BooleanOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
130
+ option<TOption extends string, const TConfig extends BooleanOptionConfig<any, any>>(name: TOption, config: TConfig & {
131
+ prompt?: PromptOptionConfig<TArgs>;
132
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
116
133
  [key in TOption]: OptionConfigToType<TConfig>;
117
134
  }>, THandlerReturn, TChildren, TParent>;
118
- option<TOption extends string, const TConfig extends ArrayOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
135
+ option<TOption extends string, const TConfig extends ArrayOptionConfig<any, any>>(name: TOption, config: TConfig & {
136
+ prompt?: PromptOptionConfig<TArgs>;
137
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
119
138
  [key in TOption]: OptionConfigToType<TConfig>;
120
139
  }>, THandlerReturn, TChildren, TParent>;
121
- option<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
140
+ option<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig & {
141
+ prompt?: PromptOptionConfig<TArgs>;
142
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
122
143
  [key in TOption]: OptionConfigToType<TOptionConfig>;
123
144
  }>, THandlerReturn, TChildren, TParent>;
124
145
  /**
@@ -130,22 +151,34 @@ export interface CLI<TArgs extends ParsedArgs = ParsedArgs, THandlerReturn = voi
130
151
  */
131
152
  positional<TOption extends string, TCoerce, const TProps extends Record<string, {
132
153
  type: string;
133
- }>>(name: TOption, config: ObjectOptionConfig<TCoerce, TProps>): CLI<TArgs & MakeUndefinedPropertiesOptional<{
154
+ }>>(name: TOption, config: ObjectOptionConfig<TCoerce, TProps> & {
155
+ prompt?: PromptOptionConfig<TArgs>;
156
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
134
157
  [key in TOption]: WithOptional<unknown extends TCoerce ? ResolveProperties<TProps> : TCoerce, ObjectOptionConfig<TCoerce, TProps>>;
135
158
  }>, THandlerReturn, TChildren, TParent>;
136
- positional<TOption extends string, const TConfig extends StringOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
159
+ positional<TOption extends string, const TConfig extends StringOptionConfig<any, any>>(name: TOption, config: TConfig & {
160
+ prompt?: PromptOptionConfig<TArgs>;
161
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
137
162
  [key in TOption]: OptionConfigToType<TConfig>;
138
163
  }>, THandlerReturn, TChildren, TParent>;
139
- positional<TOption extends string, const TConfig extends NumberOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
164
+ positional<TOption extends string, const TConfig extends NumberOptionConfig<any, any>>(name: TOption, config: TConfig & {
165
+ prompt?: PromptOptionConfig<TArgs>;
166
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
140
167
  [key in TOption]: OptionConfigToType<TConfig>;
141
168
  }>, THandlerReturn, TChildren, TParent>;
142
- positional<TOption extends string, const TConfig extends BooleanOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
169
+ positional<TOption extends string, const TConfig extends BooleanOptionConfig<any, any>>(name: TOption, config: TConfig & {
170
+ prompt?: PromptOptionConfig<TArgs>;
171
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
143
172
  [key in TOption]: OptionConfigToType<TConfig>;
144
173
  }>, THandlerReturn, TChildren, TParent>;
145
- positional<TOption extends string, const TConfig extends ArrayOptionConfig<any, any>>(name: TOption, config: TConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
174
+ positional<TOption extends string, const TConfig extends ArrayOptionConfig<any, any>>(name: TOption, config: TConfig & {
175
+ prompt?: PromptOptionConfig<TArgs>;
176
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
146
177
  [key in TOption]: OptionConfigToType<TConfig>;
147
178
  }>, THandlerReturn, TChildren, TParent>;
148
- positional<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig): CLI<TArgs & MakeUndefinedPropertiesOptional<{
179
+ positional<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig & {
180
+ prompt?: PromptOptionConfig<TArgs>;
181
+ }): CLI<TArgs & MakeUndefinedPropertiesOptional<{
149
182
  [key in TOption]: OptionConfigToType<TOptionConfig>;
150
183
  }>, THandlerReturn, TChildren, TParent>;
151
184
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../../src/lib/public-api.ts"],"names":[],"mappings":";;AAqkCA,kBAsBC;AAxkCD,iDAA6C;AA4iC7C;;;;;GAKG;AACH,SAAgB,GAAG,CAOjB,IAAW,EACX,wBAOC;IAED,OAAO,IAAI,0BAAW,CAAC,IAAI,EAAE,wBAA+B,CAI3D,CAAC;AACJ,CAAC;AAED,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../../src/lib/public-api.ts"],"names":[],"mappings":";;AAilCA,kBAsBC;AAplCD,iDAA6C;AAwjC7C;;;;;GAKG;AACH,SAAgB,GAAG,CAOjB,IAAW,EACX,wBAOC;IAED,OAAO,IAAI,0BAAW,CAAC,IAAI,EAAE,wBAA+B,CAI3D,CAAC;AACJ,CAAC;AAED,kBAAe,GAAG,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { InternalOptionConfig } from '@cli-forge/parser';
2
+ import type { PromptOptionConfig, PromptProvider } from './prompt-types';
3
+ /**
4
+ * Collects options that need prompting, matches them to providers,
5
+ * executes prompts, and returns the prompted values.
6
+ */
7
+ export declare function resolvePrompts(opts: {
8
+ configuredOptions: Record<string, InternalOptionConfig>;
9
+ configuredImplies: Record<string, Set<string>>;
10
+ promptConfigs: Map<string, PromptOptionConfig<any>>;
11
+ providers: PromptProvider[];
12
+ currentArgs: Record<string, unknown>;
13
+ }): Promise<Record<string, unknown>>;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolvePrompts = resolvePrompts;
4
+ /**
5
+ * Collects options that need prompting, matches them to providers,
6
+ * executes prompts, and returns the prompted values.
7
+ */
8
+ async function resolvePrompts(opts) {
9
+ const { configuredOptions, configuredImplies, promptConfigs, providers, currentArgs, } = opts;
10
+ // Step 1: Collect promptable options
11
+ const promptableOptions = [];
12
+ for (const [name, config] of Object.entries(configuredOptions)) {
13
+ // Skip internal options
14
+ if (name === 'help' ||
15
+ name === 'version' ||
16
+ name === 'unmatched' ||
17
+ name === '--') {
18
+ continue;
19
+ }
20
+ // Already has a value — skip unless prompt is explicitly true/string
21
+ const hasValue = currentArgs[name] !== undefined;
22
+ const promptSetting = promptConfigs.get(name);
23
+ let resolved;
24
+ if (typeof promptSetting === 'function') {
25
+ resolved = promptSetting(currentArgs);
26
+ // Callback: null/undefined treated as false
27
+ if (resolved === null || resolved === undefined) {
28
+ continue;
29
+ }
30
+ }
31
+ else if (promptSetting !== undefined) {
32
+ // Static value
33
+ resolved = promptSetting;
34
+ }
35
+ else {
36
+ // Not specified: prompt only if required and missing value
37
+ if (hasValue)
38
+ continue;
39
+ const isRequired = config.required === true;
40
+ const isImplied = isOptionImplied(name, configuredImplies, currentArgs);
41
+ if (!isRequired && !isImplied)
42
+ continue;
43
+ if (providers.length === 0)
44
+ continue; // No providers, let validation handle it
45
+ resolved = true; // Will prompt
46
+ }
47
+ if (resolved === false)
48
+ continue;
49
+ if (hasValue && resolved !== true && typeof resolved !== 'string')
50
+ continue;
51
+ promptableOptions.push({
52
+ name,
53
+ config: {
54
+ ...config,
55
+ prompt: resolved === true ? true : resolved ?? undefined,
56
+ },
57
+ });
58
+ }
59
+ if (promptableOptions.length === 0) {
60
+ return {};
61
+ }
62
+ // Step 2: Match options to providers
63
+ const filteredProviders = providers.filter((p) => p.filter);
64
+ const fallbackProviders = providers.filter((p) => !p.filter);
65
+ const providerGroups = new Map();
66
+ const unmatchedOptions = [];
67
+ for (const option of promptableOptions) {
68
+ let matched = false;
69
+ for (const provider of filteredProviders) {
70
+ if (provider.filter(option.name, option.config)) {
71
+ if (!providerGroups.has(provider)) {
72
+ providerGroups.set(provider, []);
73
+ }
74
+ providerGroups.get(provider).push(option);
75
+ matched = true;
76
+ break;
77
+ }
78
+ }
79
+ if (!matched) {
80
+ unmatchedOptions.push(option);
81
+ }
82
+ }
83
+ // Assign unmatched options to first fallback provider
84
+ if (unmatchedOptions.length > 0) {
85
+ if (fallbackProviders.length === 0) {
86
+ const names = unmatchedOptions.map((o) => `'${o.name}'`).join(', ');
87
+ throw new Error(`Option(s) ${names} require prompting but no prompt provider is available`);
88
+ }
89
+ const fallback = fallbackProviders[0];
90
+ if (!providerGroups.has(fallback)) {
91
+ providerGroups.set(fallback, []);
92
+ }
93
+ providerGroups.get(fallback).push(...unmatchedOptions);
94
+ }
95
+ // Step 3: Execute prompts
96
+ const results = {};
97
+ for (const [provider, options] of providerGroups) {
98
+ if (provider.promptBatch) {
99
+ const batchResults = await provider.promptBatch(options);
100
+ Object.assign(results, batchResults);
101
+ }
102
+ else if (provider.prompt) {
103
+ for (const option of options) {
104
+ results[option.name] = await provider.prompt(option);
105
+ }
106
+ }
107
+ }
108
+ return results;
109
+ }
110
+ /**
111
+ * Check if an option is implied by another option that has been set.
112
+ */
113
+ function isOptionImplied(name, configuredImplies, currentArgs) {
114
+ for (const [trigger, implied] of Object.entries(configuredImplies)) {
115
+ if (implied.has(name) && currentArgs[trigger] !== undefined) {
116
+ return true;
117
+ }
118
+ }
119
+ return false;
120
+ }
121
+ //# sourceMappingURL=resolve-prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-prompts.js","sourceRoot":"","sources":["../../src/lib/resolve-prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { Readable, Writable } from 'node:stream';
2
+ import type { PromptProvider } from '../lib/prompt-types';
3
+ /**
4
+ * Options for {@link createClackPromptProvider}.
5
+ */
6
+ export interface ClackPromptProviderOptions {
7
+ /**
8
+ * Custom input stream to read from instead of `process.stdin`.
9
+ * Useful for testing — pass a `Readable` with `isTTY = true` and
10
+ * a no-op `setRawMode` to emulate a terminal.
11
+ */
12
+ input?: Readable;
13
+ /**
14
+ * Custom output stream to write to instead of `process.stdout`.
15
+ */
16
+ output?: Writable;
17
+ }
18
+ /**
19
+ * Creates a prompt provider backed by @clack/prompts.
20
+ * Requires `@clack/prompts` as a peer dependency.
21
+ *
22
+ * The provider uses dynamic imports so that `@clack/prompts` is only
23
+ * loaded when prompting actually occurs.
24
+ */
25
+ export declare function createClackPromptProvider(providerOptions?: ClackPromptProviderOptions): PromptProvider;
26
+ /**
27
+ * Default clack prompt provider, uses stdin/stdout
28
+ */
29
+ export declare const ClackPromptProvider: PromptProvider;
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClackPromptProvider = void 0;
4
+ exports.createClackPromptProvider = createClackPromptProvider;
5
+ /**
6
+ * Creates a prompt provider backed by @clack/prompts.
7
+ * Requires `@clack/prompts` as a peer dependency.
8
+ *
9
+ * The provider uses dynamic imports so that `@clack/prompts` is only
10
+ * loaded when prompting actually occurs.
11
+ */
12
+ function createClackPromptProvider(providerOptions) {
13
+ // Build the common stream options once; spread into every prompt call.
14
+ const streamOpts = {};
15
+ if (providerOptions?.input)
16
+ streamOpts.input = providerOptions.input;
17
+ if (providerOptions?.output)
18
+ streamOpts.output = providerOptions.output;
19
+ return {
20
+ async promptBatch(options) {
21
+ const clack = await import('@clack/prompts');
22
+ const results = {};
23
+ for (const option of options) {
24
+ const message = getLabel(option);
25
+ const defaultValue = getDefault(option.config);
26
+ let value;
27
+ if (option.config.type === 'boolean') {
28
+ value = await clack.confirm({
29
+ ...streamOpts,
30
+ message,
31
+ initialValue: typeof defaultValue === 'boolean' ? defaultValue : undefined,
32
+ });
33
+ }
34
+ else if (hasChoices(option.config)) {
35
+ const choices = getChoices(option.config);
36
+ if (option.config.type === 'array') {
37
+ value = await clack.multiselect({
38
+ ...streamOpts,
39
+ message,
40
+ options: choices.map((c) => ({ value: c, label: String(c) })),
41
+ });
42
+ }
43
+ else {
44
+ value = await clack.select({
45
+ ...streamOpts,
46
+ message,
47
+ options: choices.map((c) => ({ value: c, label: String(c) })),
48
+ });
49
+ }
50
+ }
51
+ else if (option.config.type === 'number') {
52
+ const raw = await clack.text({
53
+ ...streamOpts,
54
+ message,
55
+ placeholder: defaultValue !== undefined ? String(defaultValue) : undefined,
56
+ defaultValue: defaultValue !== undefined ? String(defaultValue) : undefined,
57
+ validate: (val) => {
58
+ if (val && isNaN(Number(val))) {
59
+ return 'Please enter a valid number';
60
+ }
61
+ return undefined;
62
+ },
63
+ });
64
+ if (clack.isCancel(raw)) {
65
+ clack.cancel('Operation cancelled.');
66
+ throw new Error('Prompt cancelled by user');
67
+ }
68
+ value = raw !== undefined && raw !== '' ? Number(raw) : defaultValue;
69
+ }
70
+ else {
71
+ // string, array without choices
72
+ value = await clack.text({
73
+ ...streamOpts,
74
+ message,
75
+ placeholder: defaultValue !== undefined ? String(defaultValue) : undefined,
76
+ defaultValue: defaultValue !== undefined ? String(defaultValue) : undefined,
77
+ });
78
+ }
79
+ // clack returns a Symbol when the user cancels (Ctrl+C)
80
+ if (clack.isCancel(value)) {
81
+ clack.cancel('Operation cancelled.');
82
+ throw new Error('Prompt cancelled by user');
83
+ }
84
+ results[option.name] = value;
85
+ }
86
+ return results;
87
+ },
88
+ };
89
+ }
90
+ /**
91
+ * Default clack prompt provider, uses stdin/stdout
92
+ */
93
+ exports.ClackPromptProvider = createClackPromptProvider();
94
+ /**
95
+ * Determine the label to show for a prompt option.
96
+ * Priority: prompt string > description > option name.
97
+ */
98
+ function getLabel(option) {
99
+ if (typeof option.config.prompt === 'string') {
100
+ return option.config.prompt;
101
+ }
102
+ return option.config.description ?? option.name;
103
+ }
104
+ /**
105
+ * Extract the default value from an option config.
106
+ * Handles the three forms:
107
+ * - Primitive value directly
108
+ * - `{ value: T; description: string }` object
109
+ * - `{ factory: () => T; description: string }` object
110
+ */
111
+ function getDefault(config) {
112
+ if (config.default === undefined)
113
+ return undefined;
114
+ if (typeof config.default === 'object' && config.default !== null) {
115
+ if ('factory' in config.default) {
116
+ return config.default.factory();
117
+ }
118
+ if ('value' in config.default) {
119
+ return config.default.value;
120
+ }
121
+ }
122
+ return config.default;
123
+ }
124
+ function hasChoices(config) {
125
+ return ('choices' in config &&
126
+ config['choices'] !== undefined);
127
+ }
128
+ function getChoices(config) {
129
+ const cfg = config;
130
+ const choices = cfg['choices'];
131
+ if (typeof choices === 'function') {
132
+ return choices();
133
+ }
134
+ return choices ?? [];
135
+ }
136
+ //# sourceMappingURL=clack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clack.js","sourceRoot":"","sources":["../../src/prompt-providers/clack.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,16 +1,20 @@
1
1
  {
2
2
  "name": "cli-forge",
3
- "version": "1.2.3",
3
+ "version": "1.4.0",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0",
6
- "@cli-forge/parser": "1.2.3"
6
+ "@cli-forge/parser": "1.4.0"
7
7
  },
8
8
  "peerDependencies": {
9
+ "@clack/prompts": "*",
9
10
  "markdown-factory": "^0.2.0",
10
11
  "tsx": "^4.19.0",
11
12
  "zod": "^4.1.13"
12
13
  },
13
14
  "peerDependenciesMeta": {
15
+ "@clack/prompts": {
16
+ "optional": true
17
+ },
14
18
  "markdown-factory": {
15
19
  "optional": true,
16
20
  "dev": true
@@ -53,6 +57,11 @@
53
57
  "require": "./dist/middleware/*.js",
54
58
  "types": "./dist/middleware/*.d.ts"
55
59
  },
60
+ "./prompt-providers/clack": {
61
+ "require": "./dist/prompt-providers/clack.js",
62
+ "types": "./dist/prompt-providers/clack.d.ts",
63
+ "import": "./dist/prompt-providers/clack.js"
64
+ },
56
65
  "./package.json": "./package.json"
57
66
  },
58
67
  "publishConfig": {