cli-forge 1.2.3 → 1.3.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.ts CHANGED
@@ -5,5 +5,6 @@ export { chain } from '@cli-forge/parser';
5
5
  export { makeComposableBuilder } from './lib/composable-builder';
6
6
  export type { ComposableBuilder, ExtractArgs, ExtractChildren, } from './lib/composable-builder';
7
7
  export type { ArgumentsOf } from './lib/utils';
8
+ export type { PromptConfig, PromptOptionConfig, PromptOption, PromptProvider } from './lib/prompt-types';
8
9
  export { ConfigurationProviders } from './lib/configuration-providers';
9
10
  export type { LocalizationDictionary, LocalizationFunction } from '@cli-forge/parser';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,mDAAiD;AAAxC,2GAAA,WAAW,OAAA;AACpB,2DAAiC;AACjC,+CAA2C;AAAlC,8HAAA,OAAO,OAAA;AAChB,4CAA0C;AAAjC,+FAAA,KAAK,OAAA;AACd,+DAAiE;AAAxD,2HAAA,qBAAqB,OAAA;AAO9B,yEAAuE;AAA9D,iIAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,mDAAiD;AAAxC,2GAAA,WAAW,OAAA;AACpB,2DAAiC;AACjC,+CAA2C;AAAlC,8HAAA,OAAO,OAAA;AAChB,4CAA0C;AAAjC,+FAAA,KAAK,OAAA;AACd,+DAAiE;AAAxD,2HAAA,qBAAqB,OAAA;AAQ9B,yEAAuE;AAA9D,iIAAA,sBAAsB,OAAA"}
@@ -1,5 +1,6 @@
1
1
  import { ArgvParser, EnvOptionConfig, LocalizationDictionary, LocalizationFunction, OptionConfig, ParsedArgs, type ConfigurationFiles } from '@cli-forge/parser';
2
2
  import { CLI, CLICommandOptions, Command, ErrorHandler, SDKCommand } from './public-api';
3
+ import type { PromptProvider, PromptOptionConfig } from './prompt-types';
3
4
  /**
4
5
  * The base class for a CLI application. This class is used to define the structure of the CLI.
5
6
  *
@@ -58,6 +59,12 @@ export declare class InternalCLI<TArgs extends ParsedArgs = ParsedArgs, THandler
58
59
  private registeredErrorHandlers;
59
60
  private registeredMiddleware;
60
61
  private registeredInitHooks;
62
+ registeredPromptProviders: PromptProvider[];
63
+ /**
64
+ * Stores prompt config for each option, keyed by option name.
65
+ * Set when .option() is called with a `prompt` property.
66
+ */
67
+ promptConfigs: Map<string, PromptOptionConfig<any>>;
61
68
  /**
62
69
  * Set when a `$0` alias replaces the root builder via `.command()`.
63
70
  * The $0 builder should only run if no explicit subcommand is given,
@@ -107,8 +114,12 @@ export declare class InternalCLI<TArgs extends ParsedArgs = ParsedArgs, THandler
107
114
  [key in TCommandName]: CLI<TCommandArgs, TChildHandlerReturn, {}, CLI<TArgs, THandlerReturn, TChildren, TParent>>;
108
115
  }, TParent>;
109
116
  commands(...a0: Command[] | Command[][]): any;
110
- option<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig): any;
111
- positional<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig): any;
117
+ option<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig & {
118
+ prompt?: PromptOptionConfig<TArgs>;
119
+ }): any;
120
+ positional<TOption extends string, const TOptionConfig extends OptionConfig<any, any, any>>(name: TOption, config: TOptionConfig & {
121
+ prompt?: PromptOptionConfig<TArgs>;
122
+ }): any;
112
123
  conflicts(...args: [string, string, ...string[]]): CLI<TArgs, THandlerReturn, TChildren, TParent>;
113
124
  implies(option: string, ...impliedOptions: string[]): CLI<TArgs, THandlerReturn, TChildren, TParent>;
114
125
  env(a0?: string | EnvOptionConfig | undefined): CLI<TArgs, THandlerReturn, TChildren, TParent>;
@@ -152,6 +163,7 @@ export declare class InternalCLI<TArgs extends ParsedArgs = ParsedArgs, THandler
152
163
  private versionHandler;
153
164
  private withErrorHandlers;
154
165
  errorHandler(handler: ErrorHandler): CLI<TArgs, THandlerReturn, TChildren, TParent>;
166
+ withPromptProvider(provider: PromptProvider): CLI<TArgs, THandlerReturn, TChildren, TParent>;
155
167
  group(labelOrConfigObject: string | {
156
168
  label: string;
157
169
  keys: (keyof TArgs)[];
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InternalCLI = void 0;
4
- /* eslint-disable @typescript-eslint/ban-types */
4
+ /* eslint-disable @typescript-eslint/no-empty-object-type */
5
5
  const parser_1 = require("@cli-forge/parser");
6
6
  const cli_option_groups_1 = require("./cli-option-groups");
7
7
  const format_help_1 = require("./format-help");
8
8
  const interactive_shell_1 = require("./interactive-shell");
9
+ const resolve_prompts_1 = require("./resolve-prompts");
9
10
  const utils_1 = require("./utils");
10
11
  /**
11
12
  * The base class for a CLI application. This class is used to define the structure of the CLI.
@@ -79,6 +80,12 @@ class InternalCLI {
79
80
  ];
80
81
  registeredMiddleware = new Set();
81
82
  registeredInitHooks = [];
83
+ registeredPromptProviders = [];
84
+ /**
85
+ * Stores prompt config for each option, keyed by option name.
86
+ * Set when .option() is called with a `prompt` property.
87
+ */
88
+ promptConfigs = new Map();
82
89
  /**
83
90
  * Set when a `$0` alias replaces the root builder via `.command()`.
84
91
  * The $0 builder should only run if no explicit subcommand is given,
@@ -222,12 +229,20 @@ class InternalCLI {
222
229
  return this;
223
230
  }
224
231
  option(name, config) {
225
- this.parser.option(name, config);
232
+ const { prompt, ...parserConfig } = config;
233
+ if (prompt !== undefined) {
234
+ this.promptConfigs.set(name, prompt);
235
+ }
236
+ this.parser.option(name, parserConfig);
226
237
  // Interface modifies the return type to reflect new params, cast is necessay.... I think 🤔
227
238
  return this;
228
239
  }
229
240
  positional(name, config) {
230
- this.parser.positional(name, config);
241
+ const { prompt, ...parserConfig } = config;
242
+ if (prompt !== undefined) {
243
+ this.promptConfigs.set(name, prompt);
244
+ }
245
+ this.parser.positional(name, parserConfig);
231
246
  // Interface modifies the return type to reflect new params, cast is necessay.... I think 🤔
232
247
  return this;
233
248
  }
@@ -568,6 +583,13 @@ class InternalCLI {
568
583
  this.registeredErrorHandlers.unshift(handler);
569
584
  return this;
570
585
  }
586
+ withPromptProvider(provider) {
587
+ if (!provider.prompt && !provider.promptBatch) {
588
+ throw new Error("Prompt provider must implement at least one of 'prompt' or 'promptBatch'");
589
+ }
590
+ this.registeredPromptProviders.push(provider);
591
+ return this;
592
+ }
571
593
  group(labelOrConfigObject, keys) {
572
594
  const config = typeof labelOrConfigObject === 'object'
573
595
  ? labelOrConfigObject
@@ -734,6 +756,40 @@ class InternalCLI {
734
756
  // seeded with the accumulated values from the discovery loop.
735
757
  // The alreadyParsed values ensure proper required-option
736
758
  // validation and prevent positional re-consumption.
759
+ // Prompt for missing option values before final validation.
760
+ // Collect prompt providers from the full command chain.
761
+ const allPromptProviders = [
762
+ ...this.registeredPromptProviders,
763
+ ];
764
+ const allPromptConfigs = new Map(this.promptConfigs);
765
+ {
766
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
767
+ let walkCmd = this;
768
+ for (const command of this.commandChain) {
769
+ walkCmd = walkCmd.registeredCommands[command];
770
+ for (const p of walkCmd.registeredPromptProviders) {
771
+ allPromptProviders.push(p);
772
+ }
773
+ for (const [k, v] of walkCmd.promptConfigs) {
774
+ allPromptConfigs.set(k, v);
775
+ }
776
+ }
777
+ }
778
+ if (allPromptProviders.length > 0 || allPromptConfigs.size > 0) {
779
+ const promptedValues = await (0, resolve_prompts_1.resolvePrompts)({
780
+ configuredOptions: this.parser.configuredOptions,
781
+ configuredImplies: this.parser.configuredImplies,
782
+ promptConfigs: allPromptConfigs,
783
+ providers: allPromptProviders,
784
+ currentArgs: mergedArgs,
785
+ });
786
+ // Inject prompted values into accumulated args
787
+ for (const [key, value] of Object.entries(promptedValues)) {
788
+ if (value !== undefined) {
789
+ mergedArgs[key] = value;
790
+ }
791
+ }
792
+ }
737
793
  try {
738
794
  argv = this.parser
739
795
  .clone({
@@ -783,6 +839,8 @@ class InternalCLI {
783
839
  }
784
840
  clone.commandChain = [...this.commandChain];
785
841
  clone.requiresCommand = this.requiresCommand;
842
+ clone.registeredPromptProviders = [...this.registeredPromptProviders];
843
+ clone.promptConfigs = new Map(this.promptConfigs);
786
844
  return clone;
787
845
  }
788
846
  }
@@ -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;