@bemoje/cli 0.0.11 → 0.0.12
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/cjs/arg/ArgumentBuilder.js +15 -0
- package/cjs/arg/ArgumentBuilder.js.map +1 -1
- package/cjs/cmd/CommandBuilder.js +191 -70
- package/cjs/cmd/CommandBuilder.js.map +1 -1
- package/cjs/cmd/CommandBuilderMetaData.js +1 -0
- package/cjs/cmd/CommandBuilderMetaData.js.map +1 -1
- package/cjs/cmd/DefaultHelpConfig.js +1 -0
- package/cjs/cmd/DefaultHelpConfig.js.map +1 -1
- package/cjs/db/JsonFile.js +1 -1
- package/cjs/index.js +28 -0
- package/cjs/index.js.map +1 -1
- package/cjs/opt/OptionBuilder.js +6 -0
- package/cjs/opt/OptionBuilder.js.map +1 -1
- package/cjs/prompt/additions/commandSearchPrompt/commandSearchPrompt.js +39 -0
- package/cjs/prompt/additions/commandSearchPrompt/commandSearchPrompt.js.map +1 -0
- package/cjs/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js +3 -0
- package/cjs/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js.map +1 -0
- package/cjs/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js +34 -0
- package/cjs/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js +3 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js +3 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptOptions.js +3 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptOptions.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptResult.js +3 -0
- package/cjs/prompt/additions/searchPrompt/core/ISearchPromptResult.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js +5 -0
- package/cjs/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/createSearchPromptObject.js +177 -0
- package/cjs/prompt/additions/searchPrompt/core/createSearchPromptObject.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js +12 -0
- package/cjs/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js.map +1 -0
- package/cjs/prompt/additions/searchPrompt/searchPrompt.js +37 -0
- package/cjs/prompt/additions/searchPrompt/searchPrompt.js.map +1 -0
- package/cjs/prompt/core/AbstractUserPrompt.js +88 -0
- package/cjs/prompt/core/AbstractUserPrompt.js.map +1 -0
- package/cjs/prompt/core/AutoCompleteMultiSelectPrompt.js +90 -0
- package/cjs/prompt/core/AutoCompleteMultiSelectPrompt.js.map +1 -0
- package/cjs/prompt/core/AutocompletePrompt.js +111 -0
- package/cjs/prompt/core/AutocompletePrompt.js.map +1 -0
- package/cjs/prompt/core/ConfirmPrompt.js +34 -0
- package/cjs/prompt/core/ConfirmPrompt.js.map +1 -0
- package/cjs/prompt/core/DatePrompt.js +58 -0
- package/cjs/prompt/core/DatePrompt.js.map +1 -0
- package/cjs/prompt/core/InvisiblePrompt.js +49 -0
- package/cjs/prompt/core/InvisiblePrompt.js.map +1 -0
- package/cjs/prompt/core/ListPrompt.js +56 -0
- package/cjs/prompt/core/ListPrompt.js.map +1 -0
- package/cjs/prompt/core/MultiSelectPrompt.js +90 -0
- package/cjs/prompt/core/MultiSelectPrompt.js.map +1 -0
- package/cjs/prompt/core/NumberPrompt.js +70 -0
- package/cjs/prompt/core/NumberPrompt.js.map +1 -0
- package/cjs/prompt/core/PasswordPrompt.js +49 -0
- package/cjs/prompt/core/PasswordPrompt.js.map +1 -0
- package/cjs/prompt/core/SearchPrompt.js +112 -0
- package/cjs/prompt/core/SearchPrompt.js.map +1 -0
- package/cjs/prompt/core/SelectPrompt.js +62 -0
- package/cjs/prompt/core/SelectPrompt.js.map +1 -0
- package/cjs/prompt/core/TextPrompt.js +49 -0
- package/cjs/prompt/core/TextPrompt.js.map +1 -0
- package/cjs/prompt/core/TogglePrompt.js +48 -0
- package/cjs/prompt/core/TogglePrompt.js.map +1 -0
- package/cjs/prompt/core/types.js +3 -0
- package/cjs/prompt/core/types.js.map +1 -0
- package/cjs/prompt/example.js +117 -0
- package/cjs/prompt/example.js.map +1 -0
- package/cjs/prompt/prompt.js +62 -0
- package/cjs/prompt/prompt.js.map +1 -0
- package/esm/arg/ArgumentBuilder.js +15 -0
- package/esm/arg/ArgumentBuilder.js.map +1 -1
- package/esm/cmd/CommandBuilder.js +191 -70
- package/esm/cmd/CommandBuilder.js.map +1 -1
- package/esm/cmd/CommandBuilderMetaData.js +1 -0
- package/esm/cmd/CommandBuilderMetaData.js.map +1 -1
- package/esm/cmd/DefaultHelpConfig.js +1 -0
- package/esm/cmd/DefaultHelpConfig.js.map +1 -1
- package/esm/db/JsonFile.js +1 -1
- package/esm/index.js +28 -0
- package/esm/index.js.map +1 -1
- package/esm/opt/OptionBuilder.js +6 -0
- package/esm/opt/OptionBuilder.js.map +1 -1
- package/esm/prompt/additions/commandSearchPrompt/commandSearchPrompt.js +32 -0
- package/esm/prompt/additions/commandSearchPrompt/commandSearchPrompt.js.map +1 -0
- package/esm/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js +2 -0
- package/esm/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js.map +1 -0
- package/esm/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js +27 -0
- package/esm/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js +2 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js +2 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptOptions.js +2 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptOptions.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptResult.js +2 -0
- package/esm/prompt/additions/searchPrompt/core/ISearchPromptResult.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js +2 -0
- package/esm/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/createSearchPromptObject.js +173 -0
- package/esm/prompt/additions/searchPrompt/core/createSearchPromptObject.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js +8 -0
- package/esm/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js.map +1 -0
- package/esm/prompt/additions/searchPrompt/searchPrompt.js +30 -0
- package/esm/prompt/additions/searchPrompt/searchPrompt.js.map +1 -0
- package/esm/prompt/core/AbstractUserPrompt.js +81 -0
- package/esm/prompt/core/AbstractUserPrompt.js.map +1 -0
- package/esm/prompt/core/AutoCompleteMultiSelectPrompt.js +86 -0
- package/esm/prompt/core/AutoCompleteMultiSelectPrompt.js.map +1 -0
- package/esm/prompt/core/AutocompletePrompt.js +107 -0
- package/esm/prompt/core/AutocompletePrompt.js.map +1 -0
- package/esm/prompt/core/ConfirmPrompt.js +30 -0
- package/esm/prompt/core/ConfirmPrompt.js.map +1 -0
- package/esm/prompt/core/DatePrompt.js +54 -0
- package/esm/prompt/core/DatePrompt.js.map +1 -0
- package/esm/prompt/core/InvisiblePrompt.js +45 -0
- package/esm/prompt/core/InvisiblePrompt.js.map +1 -0
- package/esm/prompt/core/ListPrompt.js +52 -0
- package/esm/prompt/core/ListPrompt.js.map +1 -0
- package/esm/prompt/core/MultiSelectPrompt.js +86 -0
- package/esm/prompt/core/MultiSelectPrompt.js.map +1 -0
- package/esm/prompt/core/NumberPrompt.js +66 -0
- package/esm/prompt/core/NumberPrompt.js.map +1 -0
- package/esm/prompt/core/PasswordPrompt.js +45 -0
- package/esm/prompt/core/PasswordPrompt.js.map +1 -0
- package/esm/prompt/core/SearchPrompt.js +108 -0
- package/esm/prompt/core/SearchPrompt.js.map +1 -0
- package/esm/prompt/core/SelectPrompt.js +58 -0
- package/esm/prompt/core/SelectPrompt.js.map +1 -0
- package/esm/prompt/core/TextPrompt.js +45 -0
- package/esm/prompt/core/TextPrompt.js.map +1 -0
- package/esm/prompt/core/TogglePrompt.js +44 -0
- package/esm/prompt/core/TogglePrompt.js.map +1 -0
- package/esm/prompt/core/types.js +2 -0
- package/esm/prompt/core/types.js.map +1 -0
- package/esm/prompt/example.js +112 -0
- package/esm/prompt/example.js.map +1 -0
- package/esm/prompt/prompt.js +59 -0
- package/esm/prompt/prompt.js.map +1 -0
- package/package.json +1 -1
- package/types/arg/ArgumentBuilder.d.ts +14 -0
- package/types/arg/ArgumentBuilder.d.ts.map +1 -0
- package/types/arg/ArgumentParserSelector.d.ts +1 -0
- package/types/arg/ArgumentParserSelector.d.ts.map +1 -0
- package/types/arg/ArgumentReader.d.ts +1 -0
- package/types/arg/ArgumentReader.d.ts.map +1 -0
- package/types/arg/ArgumentValidatorSelector.d.ts +1 -0
- package/types/arg/ArgumentValidatorSelector.d.ts.map +1 -0
- package/types/cmd/CommandBuilder.d.ts +152 -46
- package/types/cmd/CommandBuilder.d.ts.map +1 -0
- package/types/cmd/CommandBuilderMetaData.d.ts +3 -0
- package/types/cmd/CommandBuilderMetaData.d.ts.map +1 -0
- package/types/cmd/CommandFeatureSelector.d.ts +1 -0
- package/types/cmd/CommandFeatureSelector.d.ts.map +1 -0
- package/types/cmd/DefaultHelpConfig.d.ts +1 -0
- package/types/cmd/DefaultHelpConfig.d.ts.map +1 -0
- package/types/core/OutputManager.d.ts +1 -0
- package/types/core/OutputManager.d.ts.map +1 -0
- package/types/core/ParserSelector.d.ts +1 -0
- package/types/core/ParserSelector.d.ts.map +1 -0
- package/types/core/ValidatorSelector.d.ts +1 -0
- package/types/core/ValidatorSelector.d.ts.map +1 -0
- package/types/core/splitCombinedArgvShorts.d.ts +1 -0
- package/types/core/splitCombinedArgvShorts.d.ts.map +1 -0
- package/types/db/AbstractJsonFileSection.d.ts +1 -0
- package/types/db/AbstractJsonFileSection.d.ts.map +1 -0
- package/types/db/AppDataSection.d.ts +1 -0
- package/types/db/AppDataSection.d.ts.map +1 -0
- package/types/db/ConfigSection.d.ts +1 -0
- package/types/db/ConfigSection.d.ts.map +1 -0
- package/types/db/JsonFile.d.ts +1 -0
- package/types/db/JsonFile.d.ts.map +1 -0
- package/types/db/PresetsSection.d.ts +1 -0
- package/types/db/PresetsSection.d.ts.map +1 -0
- package/types/index.d.ts +29 -0
- package/types/index.d.ts.map +1 -0
- package/types/opt/OptionArgumentParserSelector.d.ts +1 -0
- package/types/opt/OptionArgumentParserSelector.d.ts.map +1 -0
- package/types/opt/OptionArgumentValidatorSelector.d.ts +1 -0
- package/types/opt/OptionArgumentValidatorSelector.d.ts.map +1 -0
- package/types/opt/OptionBuilder.d.ts +3 -0
- package/types/opt/OptionBuilder.d.ts.map +1 -0
- package/types/opt/OptionHelpers.d.ts +1 -0
- package/types/opt/OptionHelpers.d.ts.map +1 -0
- package/types/opt/OptionReader.d.ts +1 -0
- package/types/opt/OptionReader.d.ts.map +1 -0
- package/types/prompt/additions/commandSearchPrompt/commandSearchPrompt.d.ts +21 -0
- package/types/prompt/additions/commandSearchPrompt/commandSearchPrompt.d.ts.map +1 -0
- package/types/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.d.ts +5 -0
- package/types/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.d.ts.map +1 -0
- package/types/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.d.ts +13 -0
- package/types/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.d.ts +5 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptMetaData.d.ts +9 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptMetaData.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptOptions.d.ts +44 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptOptions.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptResult.d.ts +6 -0
- package/types/prompt/additions/searchPrompt/core/ISearchPromptResult.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/PROMPT_META_DATA.d.ts +4 -0
- package/types/prompt/additions/searchPrompt/core/PROMPT_META_DATA.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/createSearchPromptObject.d.ts +13 -0
- package/types/prompt/additions/searchPrompt/core/createSearchPromptObject.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/core/getSearchPromptMetaData.d.ts +4 -0
- package/types/prompt/additions/searchPrompt/core/getSearchPromptMetaData.d.ts.map +1 -0
- package/types/prompt/additions/searchPrompt/searchPrompt.d.ts +21 -0
- package/types/prompt/additions/searchPrompt/searchPrompt.d.ts.map +1 -0
- package/types/prompt/core/AbstractUserPrompt.d.ts +55 -0
- package/types/prompt/core/AbstractUserPrompt.d.ts.map +1 -0
- package/types/prompt/core/AutoCompleteMultiSelectPrompt.d.ts +54 -0
- package/types/prompt/core/AutoCompleteMultiSelectPrompt.d.ts.map +1 -0
- package/types/prompt/core/AutocompletePrompt.d.ts +66 -0
- package/types/prompt/core/AutocompletePrompt.d.ts.map +1 -0
- package/types/prompt/core/ConfirmPrompt.d.ts +21 -0
- package/types/prompt/core/ConfirmPrompt.d.ts.map +1 -0
- package/types/prompt/core/DatePrompt.d.ts +37 -0
- package/types/prompt/core/DatePrompt.d.ts.map +1 -0
- package/types/prompt/core/InvisiblePrompt.d.ts +30 -0
- package/types/prompt/core/InvisiblePrompt.d.ts.map +1 -0
- package/types/prompt/core/ListPrompt.d.ts +34 -0
- package/types/prompt/core/ListPrompt.d.ts.map +1 -0
- package/types/prompt/core/MultiSelectPrompt.d.ts +54 -0
- package/types/prompt/core/MultiSelectPrompt.d.ts.map +1 -0
- package/types/prompt/core/NumberPrompt.d.ts +42 -0
- package/types/prompt/core/NumberPrompt.d.ts.map +1 -0
- package/types/prompt/core/PasswordPrompt.d.ts +30 -0
- package/types/prompt/core/PasswordPrompt.d.ts.map +1 -0
- package/types/prompt/core/SearchPrompt.d.ts +71 -0
- package/types/prompt/core/SearchPrompt.d.ts.map +1 -0
- package/types/prompt/core/SelectPrompt.d.ts +38 -0
- package/types/prompt/core/SelectPrompt.d.ts.map +1 -0
- package/types/prompt/core/TextPrompt.d.ts +30 -0
- package/types/prompt/core/TextPrompt.d.ts.map +1 -0
- package/types/prompt/core/TogglePrompt.d.ts +29 -0
- package/types/prompt/core/TogglePrompt.d.ts.map +1 -0
- package/types/prompt/core/types.d.ts +215 -0
- package/types/prompt/core/types.d.ts.map +1 -0
- package/types/prompt/example.d.ts +2 -0
- package/types/prompt/example.d.ts.map +1 -0
- package/types/prompt/prompt.d.ts +33 -0
- package/types/prompt/prompt.d.ts.map +1 -0
- package/types/types/IConfig.d.ts +1 -0
- package/types/types/IConfig.d.ts.map +1 -0
- package/types/types/IPreset.d.ts +1 -0
- package/types/types/IPreset.d.ts.map +1 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { AbstractUserPrompt } from './AbstractUserPrompt';
|
|
2
|
+
import { searchPrompt } from '../additions/searchPrompt/searchPrompt';
|
|
3
|
+
/**
|
|
4
|
+
* Interactive autocomplete user prompts in the terminal.
|
|
5
|
+
*/
|
|
6
|
+
export class SearchPrompt extends AbstractUserPrompt {
|
|
7
|
+
/**
|
|
8
|
+
* @param type - The type of prompt
|
|
9
|
+
* @param message - The message to display to the user
|
|
10
|
+
*/
|
|
11
|
+
constructor(name, callback) {
|
|
12
|
+
super('autocomplete', name, '0');
|
|
13
|
+
if (callback)
|
|
14
|
+
callback(this);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* An array of options/choices for the user to select.
|
|
18
|
+
*/
|
|
19
|
+
choices(data) {
|
|
20
|
+
Object.defineProperty(this.data, 'choices', {
|
|
21
|
+
value: data,
|
|
22
|
+
});
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Default value
|
|
27
|
+
*/
|
|
28
|
+
initial(initial) {
|
|
29
|
+
this.data['initial'] = initial;
|
|
30
|
+
return this;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The first ESCAPE keypress will clear the input
|
|
34
|
+
*/
|
|
35
|
+
clearFirst(clearFirst = true) {
|
|
36
|
+
this.data['clearFirst'] = clearFirst;
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Max number of results to show. Defaults to 25
|
|
41
|
+
*/
|
|
42
|
+
limit(limit = 25) {
|
|
43
|
+
this.data['limit'] = limit;
|
|
44
|
+
return this;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* The delimiter to use to split the user input into keywords.
|
|
48
|
+
* Defaults to ' ' (space).
|
|
49
|
+
*/
|
|
50
|
+
separator(delim = ' ') {
|
|
51
|
+
this.data['separator'] = delim;
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* When this string is encountered, the input coming after will not be considered for searching. Defaults to ':'
|
|
56
|
+
*/
|
|
57
|
+
searchStopSequence(stop) {
|
|
58
|
+
Object.defineProperty(this.data, 'searchStopSequence', { value: stop });
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Filtering options.
|
|
63
|
+
* @property includes - If true, then the search results will include keyword-matches that match anywhere in the string. Defaults to 'true'
|
|
64
|
+
* @property startsWith - If true, then the search results will include beginning-of-word-matches. Defaults to 'true'
|
|
65
|
+
*/
|
|
66
|
+
filtering(filtering) {
|
|
67
|
+
Object.defineProperty(this.data, 'filtering', { value: filtering });
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* A function to pre-render each string in the search data before searching has begun.
|
|
72
|
+
* This is useful if the same string formatting will be applied to all returned search results.
|
|
73
|
+
*
|
|
74
|
+
* @param original - The original (or pre-rendered) string.
|
|
75
|
+
*/
|
|
76
|
+
preRender(preRender) {
|
|
77
|
+
Object.defineProperty(this.data, 'preRender', { value: preRender });
|
|
78
|
+
return this;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* A function to render the search results.
|
|
82
|
+
*
|
|
83
|
+
* @param original - The original (or pre-rendered) string.
|
|
84
|
+
* @param keywords - The keywords that matched the original string.
|
|
85
|
+
*/
|
|
86
|
+
render(render) {
|
|
87
|
+
Object.defineProperty(this.data, 'render', { value: render });
|
|
88
|
+
return this;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Receive user input. The returned value will be added to the response object
|
|
92
|
+
*/
|
|
93
|
+
format(format) {
|
|
94
|
+
this.data['format'] = format;
|
|
95
|
+
return this;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Render style
|
|
99
|
+
*/
|
|
100
|
+
style(style = 'default') {
|
|
101
|
+
this.data['style'] = style;
|
|
102
|
+
return this;
|
|
103
|
+
}
|
|
104
|
+
async run(options) {
|
|
105
|
+
return await searchPrompt(this.data.choices, this.data, options);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=SearchPrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchPrompt.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/prompt/core/SearchPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAIzD,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AAErE;;GAEG;AACH,MAAM,OAAO,YAAwC,SAAQ,kBAA0C;IACrG;;;OAGG;IACH,YAAY,IAAY,EAAE,QAA0C;QAClE,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;QAChC,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAc;QACpB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE;YAC1C,KAAK,EAAE,IAAI;SACZ,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAU;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,UAAU,GAAG,IAAI;QAC1B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,UAAU,CAAA;QACpC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,GAAG,EAAE;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,KAAK,GAAG,GAAG;QACnB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,KAAK,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,IAAY;QAC7B,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACvE,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,SAAuD;QAC/D,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QACnE,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,SAA2C;QACnD,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QACnE,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,MAA0D;QAC/D,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAkB;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAgB,SAAS;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAEQ,KAAK,CAAC,GAAG,CAAC,OAAiB;QAClC,OAAO,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAA8B,EAAE,IAAI,CAAC,IAA4B,EAAE,OAAO,CAAC,CAAA;IACjH,CAAC;CACF"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { AbstractUserPrompt } from './AbstractUserPrompt';
|
|
2
|
+
/**
|
|
3
|
+
* Interactive select user prompts in the terminal.
|
|
4
|
+
*/
|
|
5
|
+
export class SelectPrompt extends AbstractUserPrompt {
|
|
6
|
+
/**
|
|
7
|
+
* @param type - The type of prompt
|
|
8
|
+
* @param message - The message to display to the user
|
|
9
|
+
*/
|
|
10
|
+
constructor(name, message, callback) {
|
|
11
|
+
super('select', name, message);
|
|
12
|
+
if (callback)
|
|
13
|
+
callback(this);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* On render callback. Keyword this refers to the current prompt
|
|
17
|
+
*/
|
|
18
|
+
onRender(onRender) {
|
|
19
|
+
this.data['onRender'] = onRender;
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Default value
|
|
24
|
+
*/
|
|
25
|
+
initial(initial) {
|
|
26
|
+
this.data['initial'] = initial;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Hint to display to the user
|
|
31
|
+
*/
|
|
32
|
+
hint(hint) {
|
|
33
|
+
this.data['hint'] = hint;
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Message to display when selecting a disabled option
|
|
38
|
+
*/
|
|
39
|
+
warn(warn) {
|
|
40
|
+
this.data['warn'] = warn;
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* An array of options/choices for the user to select.
|
|
45
|
+
*/
|
|
46
|
+
choices(choices) {
|
|
47
|
+
this.data['choices'] = choices;
|
|
48
|
+
return this;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Receive user input. The returned value will be added to the response object
|
|
52
|
+
*/
|
|
53
|
+
format(format) {
|
|
54
|
+
this.data['format'] = format;
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=SelectPrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectPrompt.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/prompt/core/SelectPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAIzD;;GAEG;AACH,MAAM,OAAO,YAAwC,SAAQ,kBAAoC;IAC/F;;;OAGG;IACH,YAAY,IAAY,EAAE,OAAe,EAAE,QAA0C;QACnF,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAC9B,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAmB;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAU;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,IAAY;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,IAAY;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAkB;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { AbstractUserPrompt } from './AbstractUserPrompt';
|
|
2
|
+
/**
|
|
3
|
+
* Interactive text user prompts in the terminal.
|
|
4
|
+
*/
|
|
5
|
+
export class TextPrompt extends AbstractUserPrompt {
|
|
6
|
+
/**
|
|
7
|
+
* @param type - The type of prompt
|
|
8
|
+
* @param message - The message to display to the user
|
|
9
|
+
*/
|
|
10
|
+
constructor(name, message, callback) {
|
|
11
|
+
super('text', name, message);
|
|
12
|
+
if (callback)
|
|
13
|
+
callback(this);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* On render callback. Keyword this refers to the current prompt
|
|
17
|
+
*/
|
|
18
|
+
onRender(onRender) {
|
|
19
|
+
this.data['onRender'] = onRender;
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Default value
|
|
24
|
+
*/
|
|
25
|
+
initial(initial) {
|
|
26
|
+
this.data['initial'] = initial;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Receive user input. Should return true if the value is valid, and an error message String otherwise.
|
|
31
|
+
* If false is returned, a default error message is shown
|
|
32
|
+
*/
|
|
33
|
+
validate(validate) {
|
|
34
|
+
this.data['validate'] = validate;
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Render style
|
|
39
|
+
*/
|
|
40
|
+
style(style = 'default') {
|
|
41
|
+
this.data['style'] = style;
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=TextPrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextPrompt.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/prompt/core/TextPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAEzD;;GAEG;AACH,MAAM,OAAO,UAAsC,SAAQ,kBAAkC;IAC3F;;;OAGG;IACH,YAAY,IAAY,EAAE,OAAe,EAAE,QAAwC;QACjF,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5B,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAmB;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAU;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,QAAsB;QAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAgB,SAAS;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { AbstractUserPrompt } from './AbstractUserPrompt';
|
|
2
|
+
/**
|
|
3
|
+
* Interactive toggle user prompts in the terminal.
|
|
4
|
+
*/
|
|
5
|
+
export class TogglePrompt extends AbstractUserPrompt {
|
|
6
|
+
/**
|
|
7
|
+
* @param type - The type of prompt
|
|
8
|
+
* @param message - The message to display to the user
|
|
9
|
+
*/
|
|
10
|
+
constructor(name, message, callback) {
|
|
11
|
+
super('toggle', name, message);
|
|
12
|
+
if (callback)
|
|
13
|
+
callback(this);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* On render callback. Keyword this refers to the current prompt
|
|
17
|
+
*/
|
|
18
|
+
onRender(onRender) {
|
|
19
|
+
this.data['onRender'] = onRender;
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Default value
|
|
24
|
+
*/
|
|
25
|
+
initial(initial) {
|
|
26
|
+
this.data['initial'] = initial;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Text for active state. Defaults to 'on'
|
|
31
|
+
*/
|
|
32
|
+
active(active = 'on') {
|
|
33
|
+
this.data['active'] = active;
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Text for inactive state. Defaults to 'off'
|
|
38
|
+
*/
|
|
39
|
+
inactive(inactive = 'off') {
|
|
40
|
+
this.data['inactive'] = inactive;
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=TogglePrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TogglePrompt.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/prompt/core/TogglePrompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAGzD;;GAEG;AACH,MAAM,OAAO,YAA0C,SAAQ,kBAAoC;IACjG;;;OAGG;IACH,YAAY,IAAY,EAAE,OAAe,EAAE,QAA0C;QACnF,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAC9B,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAmB;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAU;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,SAAkB,IAAI;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,WAAsB,KAAK;QAClC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/prompt/core/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import { prompt } from './prompt';
|
|
3
|
+
async function example() {
|
|
4
|
+
// TextPrompt
|
|
5
|
+
await prompt
|
|
6
|
+
.text('user', 'What is your username?') //
|
|
7
|
+
.run();
|
|
8
|
+
// PasswordPrompt
|
|
9
|
+
await prompt
|
|
10
|
+
.password('pass', 'Enter password') //
|
|
11
|
+
.run();
|
|
12
|
+
// NumberPrompt
|
|
13
|
+
await prompt
|
|
14
|
+
.number('age', 'How old are you?')
|
|
15
|
+
.validate((value) => (value < 18 ? `Nightclub is 18+ only` : true))
|
|
16
|
+
.run();
|
|
17
|
+
// ConfirmPrompt
|
|
18
|
+
await prompt
|
|
19
|
+
.confirm('confirm', 'Can you confirm this is your age?') //
|
|
20
|
+
.initial(true)
|
|
21
|
+
.run();
|
|
22
|
+
// ListPrompt
|
|
23
|
+
await prompt
|
|
24
|
+
.list('kws', 'Enter some keywords')
|
|
25
|
+
.separator(' ')
|
|
26
|
+
.validate((arr) => (arr.length > 1 ? true : 'Please enter more than one'))
|
|
27
|
+
.run();
|
|
28
|
+
// TogglePrompt
|
|
29
|
+
await prompt
|
|
30
|
+
.toggle('cool', 'Toggle Cool Mode') //
|
|
31
|
+
.initial(true)
|
|
32
|
+
.active('on')
|
|
33
|
+
.inactive('off')
|
|
34
|
+
.run();
|
|
35
|
+
// SelectPrompt
|
|
36
|
+
await prompt
|
|
37
|
+
.select('col1', 'Pick a color')
|
|
38
|
+
.choices([
|
|
39
|
+
{ title: 'Red', description: 'This option has a description', value: '#ff0000' },
|
|
40
|
+
{ title: 'Green', value: '#00ff00', disabled: true },
|
|
41
|
+
{ title: 'Blue', value: '#0000ff' },
|
|
42
|
+
])
|
|
43
|
+
.initial(0)
|
|
44
|
+
.hint('Select your favorite.')
|
|
45
|
+
.warn('Really not a good idea,')
|
|
46
|
+
.run();
|
|
47
|
+
// MultiSelectPrompt
|
|
48
|
+
await prompt
|
|
49
|
+
.multiselect('col2', 'Pick between 1 and 3 colors')
|
|
50
|
+
.choices([
|
|
51
|
+
{ title: 'Black', value: '#000000', disabled: false, selected: false },
|
|
52
|
+
{ title: 'Red', value: '#ff0000', disabled: false, selected: false },
|
|
53
|
+
{ title: 'Green', value: '#00ff00', disabled: true, selected: false },
|
|
54
|
+
{ title: 'Blue', value: '#0000ff', disabled: false, selected: false },
|
|
55
|
+
{ title: 'White', value: '#ffffff', disabled: false, selected: true },
|
|
56
|
+
])
|
|
57
|
+
.instructions('Here are some instructions')
|
|
58
|
+
.min(1)
|
|
59
|
+
.max(3)
|
|
60
|
+
.hint('Select your favorite.')
|
|
61
|
+
.warn('Really not a good idea,')
|
|
62
|
+
.run();
|
|
63
|
+
// AutoCompleteMultiSelectPrompt
|
|
64
|
+
await prompt
|
|
65
|
+
.autocompleteMultiSelect('col3', 'Pick between 1 and 3 colors')
|
|
66
|
+
.choices([
|
|
67
|
+
{ title: 'Black', value: '#000000', disabled: false, selected: false },
|
|
68
|
+
{ title: 'Red', value: '#ff0000', disabled: false, selected: false },
|
|
69
|
+
{ title: 'Green', value: '#00ff00', disabled: true, selected: false },
|
|
70
|
+
{ title: 'Blue', value: '#0000ff', disabled: false, selected: false },
|
|
71
|
+
{ title: 'White', value: '#ffffff', disabled: false, selected: true },
|
|
72
|
+
])
|
|
73
|
+
.instructions('Here are some instructions')
|
|
74
|
+
.min(1)
|
|
75
|
+
.max(3)
|
|
76
|
+
.hint('Select your favorite.')
|
|
77
|
+
.warn('Really not a good idea,')
|
|
78
|
+
.run();
|
|
79
|
+
// DatePrompt
|
|
80
|
+
await prompt
|
|
81
|
+
.date('future', 'Select a date in the future')
|
|
82
|
+
.initial(new Date())
|
|
83
|
+
.validate((date) => (date > new Date() ? true : 'Date must be in the future'))
|
|
84
|
+
.run();
|
|
85
|
+
// InvisiblePrompt
|
|
86
|
+
await prompt
|
|
87
|
+
.invisible('invisible', 'This is invisible') //
|
|
88
|
+
.initial('secret')
|
|
89
|
+
.run();
|
|
90
|
+
// AutocompletePrompt
|
|
91
|
+
await prompt
|
|
92
|
+
.autocomplete('actor', 'Pick your favorite actor')
|
|
93
|
+
.choices([
|
|
94
|
+
{ title: 'Cage' },
|
|
95
|
+
{ title: 'Clooney', value: 'silver-fox' },
|
|
96
|
+
{ title: 'Gyllenhaal' },
|
|
97
|
+
{ title: 'Gibson' },
|
|
98
|
+
{ title: 'Grant' },
|
|
99
|
+
])
|
|
100
|
+
.run();
|
|
101
|
+
// SearchPrompt
|
|
102
|
+
await prompt
|
|
103
|
+
.search('test')
|
|
104
|
+
.choices(fs.readFileSync(__filename, 'utf8').split(/[\s\n\r]/))
|
|
105
|
+
.filtering({ includes: true, startsWith: true })
|
|
106
|
+
.clearFirst(true)
|
|
107
|
+
.limit(30)
|
|
108
|
+
.separator(' ')
|
|
109
|
+
.run();
|
|
110
|
+
}
|
|
111
|
+
// example().catch(console.error)
|
|
112
|
+
//# sourceMappingURL=example.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../../packages/cli/src/prompt/example.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { AutoCompleteMultiSelectPrompt } from './core/AutoCompleteMultiSelectPrompt';
|
|
2
|
+
import { AutocompletePrompt } from './core/AutocompletePrompt';
|
|
3
|
+
import { ConfirmPrompt } from './core/ConfirmPrompt';
|
|
4
|
+
import { DatePrompt } from './core/DatePrompt';
|
|
5
|
+
import { InvisiblePrompt } from './core/InvisiblePrompt';
|
|
6
|
+
import { ListPrompt } from './core/ListPrompt';
|
|
7
|
+
import { MultiSelectPrompt } from './core/MultiSelectPrompt';
|
|
8
|
+
import { NumberPrompt } from './core/NumberPrompt';
|
|
9
|
+
import { PasswordPrompt } from './core/PasswordPrompt';
|
|
10
|
+
import { SearchPrompt } from './core/SearchPrompt';
|
|
11
|
+
import { SelectPrompt } from './core/SelectPrompt';
|
|
12
|
+
import { TextPrompt } from './core/TextPrompt';
|
|
13
|
+
import { TogglePrompt } from './core/TogglePrompt';
|
|
14
|
+
/**
|
|
15
|
+
* User prompt module
|
|
16
|
+
*/
|
|
17
|
+
export const prompt = {
|
|
18
|
+
text: (name, message, callback) => {
|
|
19
|
+
return new TextPrompt(name, message, callback);
|
|
20
|
+
},
|
|
21
|
+
number: (name, message, callback) => {
|
|
22
|
+
return new NumberPrompt(name, message, callback);
|
|
23
|
+
},
|
|
24
|
+
confirm: (name, message, callback) => {
|
|
25
|
+
return new ConfirmPrompt(name, message, callback);
|
|
26
|
+
},
|
|
27
|
+
password: (name, message, callback) => {
|
|
28
|
+
return new PasswordPrompt(name, message, callback);
|
|
29
|
+
},
|
|
30
|
+
invisible: (name, message, callback) => {
|
|
31
|
+
return new InvisiblePrompt(name, message, callback);
|
|
32
|
+
},
|
|
33
|
+
list: (name, message, callback) => {
|
|
34
|
+
return new ListPrompt(name, message, callback);
|
|
35
|
+
},
|
|
36
|
+
toggle: (name, message, callback) => {
|
|
37
|
+
return new TogglePrompt(name, message, callback);
|
|
38
|
+
},
|
|
39
|
+
select: (name, message, callback) => {
|
|
40
|
+
return new SelectPrompt(name, message, callback);
|
|
41
|
+
},
|
|
42
|
+
multiselect: (name, message, callback) => {
|
|
43
|
+
return new MultiSelectPrompt(name, message, callback);
|
|
44
|
+
},
|
|
45
|
+
autocomplete: (name, message, callback) => {
|
|
46
|
+
return new AutocompletePrompt(name, message, callback);
|
|
47
|
+
},
|
|
48
|
+
autocompleteMultiSelect: (name, message, callback) => {
|
|
49
|
+
return new AutoCompleteMultiSelectPrompt(name, message, callback);
|
|
50
|
+
},
|
|
51
|
+
date: (name, message, callback) => {
|
|
52
|
+
return new DatePrompt(name, message, callback);
|
|
53
|
+
},
|
|
54
|
+
search: (name, callback) => {
|
|
55
|
+
return new SearchPrompt(name, callback);
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
export default prompt;
|
|
59
|
+
//# sourceMappingURL=prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../../../packages/cli/src/prompt/prompt.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -10,11 +10,25 @@ export declare class ArgumentBuilder {
|
|
|
10
10
|
readonly cmd: CommandBuilder;
|
|
11
11
|
readonly $: Argument;
|
|
12
12
|
readonly index: number;
|
|
13
|
+
userConfirmation?: {
|
|
14
|
+
predicate: (arg: string) => boolean;
|
|
15
|
+
message: string;
|
|
16
|
+
};
|
|
13
17
|
constructor(cmd: CommandBuilder, name: string);
|
|
18
|
+
get hasValidators(): boolean;
|
|
19
|
+
get hasParser(): boolean;
|
|
14
20
|
description(string: string): this;
|
|
15
21
|
default(value: unknown, description?: string): this;
|
|
16
22
|
choices(values: readonly string[]): this;
|
|
17
23
|
get parser(): ArgumentParserSelector;
|
|
18
24
|
get validator(): ArgumentValidatorSelector;
|
|
19
25
|
get get(): ArgumentReader;
|
|
26
|
+
/**
|
|
27
|
+
* Only works with async actionHandlers.
|
|
28
|
+
*/
|
|
29
|
+
userMustConfirmIf(options: {
|
|
30
|
+
predicate: (arg: string) => boolean;
|
|
31
|
+
message: string;
|
|
32
|
+
}): this;
|
|
20
33
|
}
|
|
34
|
+
//# sourceMappingURL=ArgumentBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArgumentBuilder.d.ts","sourceRoot":"","sources":["../../../../../packages/cli/src/arg/ArgumentBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAGtD;;GAEG;AACH,qBAAa,eAAe;IAKd,QAAQ,CAAC,GAAG,EAAE,cAAc;IAJxC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAA;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,gBAAgB,CAAC,EAAE;QAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;gBAEtD,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM;IAOtD,IAAI,aAAa,YAEhB;IAED,IAAI,SAAS,YAEZ;IAED,WAAW,CAAC,MAAM,EAAE,MAAM;IAK1B,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM;IAK5C,OAAO,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE;IAKjC,IAAI,MAAM,2BAET;IAED,IAAI,SAAS,8BAEZ;IAED,IAAI,GAAG,mBAEN;IAED;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE;QAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAIpF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArgumentParserSelector.d.ts","sourceRoot":"","sources":["../../../../../packages/cli/src/arg/ArgumentParserSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjD,qBAAa,sBAAuB,SAAQ,cAAc,CAAC,eAAe,CAAC;gBAC7D,OAAO,EAAE,eAAe;IAGpC,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;CAIrD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArgumentReader.d.ts","sourceRoot":"","sources":["../../../../../packages/cli/src/arg/ArgumentReader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,qBAAa,cAAc;IACb,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe;gBAAvB,MAAM,EAAE,eAAe;IAEtD,IAAI,CAAC,mGAEJ;IACD,IAAI,QAAQ,mGAEX;IACD,IAAI,IAAI,WAEP;IACD,IAAI,OAAO,aAEV;IACD,IAAI,OAAO,QAEV;IACD,IAAI,WAAW,WAEd;IACD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,YAEX;IACD,IAAI,QAAQ,YAEX;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArgumentValidatorSelector.d.ts","sourceRoot":"","sources":["../../../../../packages/cli/src/arg/ArgumentValidatorSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAE7D,qBAAa,yBAA0B,SAAQ,iBAAiB,CAAC,eAAe,CAAC;gBACnE,OAAO,EAAE,eAAe;IAGpC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;CAInC"}
|