@bemoje/cli 0.0.10 → 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.
Files changed (245) hide show
  1. package/cjs/arg/ArgumentBuilder.js +15 -0
  2. package/cjs/arg/ArgumentBuilder.js.map +1 -1
  3. package/cjs/cmd/CommandBuilder.js +191 -70
  4. package/cjs/cmd/CommandBuilder.js.map +1 -1
  5. package/cjs/cmd/CommandBuilderMetaData.js +1 -0
  6. package/cjs/cmd/CommandBuilderMetaData.js.map +1 -1
  7. package/cjs/cmd/DefaultHelpConfig.js +1 -0
  8. package/cjs/cmd/DefaultHelpConfig.js.map +1 -1
  9. package/cjs/db/JsonFile.js +1 -1
  10. package/cjs/index.js +28 -0
  11. package/cjs/index.js.map +1 -1
  12. package/cjs/opt/OptionBuilder.js +6 -0
  13. package/cjs/opt/OptionBuilder.js.map +1 -1
  14. package/cjs/prompt/additions/commandSearchPrompt/commandSearchPrompt.js +39 -0
  15. package/cjs/prompt/additions/commandSearchPrompt/commandSearchPrompt.js.map +1 -0
  16. package/cjs/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js +3 -0
  17. package/cjs/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js.map +1 -0
  18. package/cjs/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js +34 -0
  19. package/cjs/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js.map +1 -0
  20. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js +3 -0
  21. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js.map +1 -0
  22. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js +3 -0
  23. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js.map +1 -0
  24. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptOptions.js +3 -0
  25. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptOptions.js.map +1 -0
  26. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptResult.js +3 -0
  27. package/cjs/prompt/additions/searchPrompt/core/ISearchPromptResult.js.map +1 -0
  28. package/cjs/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js +5 -0
  29. package/cjs/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js.map +1 -0
  30. package/cjs/prompt/additions/searchPrompt/core/createSearchPromptObject.js +177 -0
  31. package/cjs/prompt/additions/searchPrompt/core/createSearchPromptObject.js.map +1 -0
  32. package/cjs/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js +12 -0
  33. package/cjs/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js.map +1 -0
  34. package/cjs/prompt/additions/searchPrompt/searchPrompt.js +37 -0
  35. package/cjs/prompt/additions/searchPrompt/searchPrompt.js.map +1 -0
  36. package/cjs/prompt/core/AbstractUserPrompt.js +88 -0
  37. package/cjs/prompt/core/AbstractUserPrompt.js.map +1 -0
  38. package/cjs/prompt/core/AutoCompleteMultiSelectPrompt.js +90 -0
  39. package/cjs/prompt/core/AutoCompleteMultiSelectPrompt.js.map +1 -0
  40. package/cjs/prompt/core/AutocompletePrompt.js +111 -0
  41. package/cjs/prompt/core/AutocompletePrompt.js.map +1 -0
  42. package/cjs/prompt/core/ConfirmPrompt.js +34 -0
  43. package/cjs/prompt/core/ConfirmPrompt.js.map +1 -0
  44. package/cjs/prompt/core/DatePrompt.js +58 -0
  45. package/cjs/prompt/core/DatePrompt.js.map +1 -0
  46. package/cjs/prompt/core/InvisiblePrompt.js +49 -0
  47. package/cjs/prompt/core/InvisiblePrompt.js.map +1 -0
  48. package/cjs/prompt/core/ListPrompt.js +56 -0
  49. package/cjs/prompt/core/ListPrompt.js.map +1 -0
  50. package/cjs/prompt/core/MultiSelectPrompt.js +90 -0
  51. package/cjs/prompt/core/MultiSelectPrompt.js.map +1 -0
  52. package/cjs/prompt/core/NumberPrompt.js +70 -0
  53. package/cjs/prompt/core/NumberPrompt.js.map +1 -0
  54. package/cjs/prompt/core/PasswordPrompt.js +49 -0
  55. package/cjs/prompt/core/PasswordPrompt.js.map +1 -0
  56. package/cjs/prompt/core/SearchPrompt.js +112 -0
  57. package/cjs/prompt/core/SearchPrompt.js.map +1 -0
  58. package/cjs/prompt/core/SelectPrompt.js +62 -0
  59. package/cjs/prompt/core/SelectPrompt.js.map +1 -0
  60. package/cjs/prompt/core/TextPrompt.js +49 -0
  61. package/cjs/prompt/core/TextPrompt.js.map +1 -0
  62. package/cjs/prompt/core/TogglePrompt.js +48 -0
  63. package/cjs/prompt/core/TogglePrompt.js.map +1 -0
  64. package/cjs/prompt/core/types.js +3 -0
  65. package/cjs/prompt/core/types.js.map +1 -0
  66. package/cjs/prompt/example.js +117 -0
  67. package/cjs/prompt/example.js.map +1 -0
  68. package/cjs/prompt/prompt.js +62 -0
  69. package/cjs/prompt/prompt.js.map +1 -0
  70. package/esm/arg/ArgumentBuilder.js +15 -0
  71. package/esm/arg/ArgumentBuilder.js.map +1 -1
  72. package/esm/cmd/CommandBuilder.js +191 -70
  73. package/esm/cmd/CommandBuilder.js.map +1 -1
  74. package/esm/cmd/CommandBuilderMetaData.js +1 -0
  75. package/esm/cmd/CommandBuilderMetaData.js.map +1 -1
  76. package/esm/cmd/DefaultHelpConfig.js +1 -0
  77. package/esm/cmd/DefaultHelpConfig.js.map +1 -1
  78. package/esm/db/JsonFile.js +1 -1
  79. package/esm/index.js +28 -0
  80. package/esm/index.js.map +1 -1
  81. package/esm/opt/OptionBuilder.js +6 -0
  82. package/esm/opt/OptionBuilder.js.map +1 -1
  83. package/esm/prompt/additions/commandSearchPrompt/commandSearchPrompt.js +32 -0
  84. package/esm/prompt/additions/commandSearchPrompt/commandSearchPrompt.js.map +1 -0
  85. package/esm/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js +2 -0
  86. package/esm/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.js.map +1 -0
  87. package/esm/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js +27 -0
  88. package/esm/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.js.map +1 -0
  89. package/esm/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js +2 -0
  90. package/esm/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.js.map +1 -0
  91. package/esm/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js +2 -0
  92. package/esm/prompt/additions/searchPrompt/core/ISearchPromptMetaData.js.map +1 -0
  93. package/esm/prompt/additions/searchPrompt/core/ISearchPromptOptions.js +2 -0
  94. package/esm/prompt/additions/searchPrompt/core/ISearchPromptOptions.js.map +1 -0
  95. package/esm/prompt/additions/searchPrompt/core/ISearchPromptResult.js +2 -0
  96. package/esm/prompt/additions/searchPrompt/core/ISearchPromptResult.js.map +1 -0
  97. package/esm/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js +2 -0
  98. package/esm/prompt/additions/searchPrompt/core/PROMPT_META_DATA.js.map +1 -0
  99. package/esm/prompt/additions/searchPrompt/core/createSearchPromptObject.js +173 -0
  100. package/esm/prompt/additions/searchPrompt/core/createSearchPromptObject.js.map +1 -0
  101. package/esm/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js +8 -0
  102. package/esm/prompt/additions/searchPrompt/core/getSearchPromptMetaData.js.map +1 -0
  103. package/esm/prompt/additions/searchPrompt/searchPrompt.js +30 -0
  104. package/esm/prompt/additions/searchPrompt/searchPrompt.js.map +1 -0
  105. package/esm/prompt/core/AbstractUserPrompt.js +81 -0
  106. package/esm/prompt/core/AbstractUserPrompt.js.map +1 -0
  107. package/esm/prompt/core/AutoCompleteMultiSelectPrompt.js +86 -0
  108. package/esm/prompt/core/AutoCompleteMultiSelectPrompt.js.map +1 -0
  109. package/esm/prompt/core/AutocompletePrompt.js +107 -0
  110. package/esm/prompt/core/AutocompletePrompt.js.map +1 -0
  111. package/esm/prompt/core/ConfirmPrompt.js +30 -0
  112. package/esm/prompt/core/ConfirmPrompt.js.map +1 -0
  113. package/esm/prompt/core/DatePrompt.js +54 -0
  114. package/esm/prompt/core/DatePrompt.js.map +1 -0
  115. package/esm/prompt/core/InvisiblePrompt.js +45 -0
  116. package/esm/prompt/core/InvisiblePrompt.js.map +1 -0
  117. package/esm/prompt/core/ListPrompt.js +52 -0
  118. package/esm/prompt/core/ListPrompt.js.map +1 -0
  119. package/esm/prompt/core/MultiSelectPrompt.js +86 -0
  120. package/esm/prompt/core/MultiSelectPrompt.js.map +1 -0
  121. package/esm/prompt/core/NumberPrompt.js +66 -0
  122. package/esm/prompt/core/NumberPrompt.js.map +1 -0
  123. package/esm/prompt/core/PasswordPrompt.js +45 -0
  124. package/esm/prompt/core/PasswordPrompt.js.map +1 -0
  125. package/esm/prompt/core/SearchPrompt.js +108 -0
  126. package/esm/prompt/core/SearchPrompt.js.map +1 -0
  127. package/esm/prompt/core/SelectPrompt.js +58 -0
  128. package/esm/prompt/core/SelectPrompt.js.map +1 -0
  129. package/esm/prompt/core/TextPrompt.js +45 -0
  130. package/esm/prompt/core/TextPrompt.js.map +1 -0
  131. package/esm/prompt/core/TogglePrompt.js +44 -0
  132. package/esm/prompt/core/TogglePrompt.js.map +1 -0
  133. package/esm/prompt/core/types.js +2 -0
  134. package/esm/prompt/core/types.js.map +1 -0
  135. package/esm/prompt/example.js +112 -0
  136. package/esm/prompt/example.js.map +1 -0
  137. package/esm/prompt/prompt.js +59 -0
  138. package/esm/prompt/prompt.js.map +1 -0
  139. package/package.json +2 -1
  140. package/types/arg/ArgumentBuilder.d.ts +14 -0
  141. package/types/arg/ArgumentBuilder.d.ts.map +1 -0
  142. package/types/arg/ArgumentParserSelector.d.ts +1 -0
  143. package/types/arg/ArgumentParserSelector.d.ts.map +1 -0
  144. package/types/arg/ArgumentReader.d.ts +1 -0
  145. package/types/arg/ArgumentReader.d.ts.map +1 -0
  146. package/types/arg/ArgumentValidatorSelector.d.ts +1 -0
  147. package/types/arg/ArgumentValidatorSelector.d.ts.map +1 -0
  148. package/types/cmd/CommandBuilder.d.ts +152 -46
  149. package/types/cmd/CommandBuilder.d.ts.map +1 -0
  150. package/types/cmd/CommandBuilderMetaData.d.ts +3 -0
  151. package/types/cmd/CommandBuilderMetaData.d.ts.map +1 -0
  152. package/types/cmd/CommandFeatureSelector.d.ts +1 -0
  153. package/types/cmd/CommandFeatureSelector.d.ts.map +1 -0
  154. package/types/cmd/DefaultHelpConfig.d.ts +1 -0
  155. package/types/cmd/DefaultHelpConfig.d.ts.map +1 -0
  156. package/types/core/OutputManager.d.ts +1 -0
  157. package/types/core/OutputManager.d.ts.map +1 -0
  158. package/types/core/ParserSelector.d.ts +1 -0
  159. package/types/core/ParserSelector.d.ts.map +1 -0
  160. package/types/core/ValidatorSelector.d.ts +1 -0
  161. package/types/core/ValidatorSelector.d.ts.map +1 -0
  162. package/types/core/splitCombinedArgvShorts.d.ts +1 -0
  163. package/types/core/splitCombinedArgvShorts.d.ts.map +1 -0
  164. package/types/db/AbstractJsonFileSection.d.ts +1 -0
  165. package/types/db/AbstractJsonFileSection.d.ts.map +1 -0
  166. package/types/db/AppDataSection.d.ts +1 -0
  167. package/types/db/AppDataSection.d.ts.map +1 -0
  168. package/types/db/ConfigSection.d.ts +1 -0
  169. package/types/db/ConfigSection.d.ts.map +1 -0
  170. package/types/db/JsonFile.d.ts +1 -0
  171. package/types/db/JsonFile.d.ts.map +1 -0
  172. package/types/db/PresetsSection.d.ts +1 -0
  173. package/types/db/PresetsSection.d.ts.map +1 -0
  174. package/types/index.d.ts +29 -0
  175. package/types/index.d.ts.map +1 -0
  176. package/types/opt/OptionArgumentParserSelector.d.ts +1 -0
  177. package/types/opt/OptionArgumentParserSelector.d.ts.map +1 -0
  178. package/types/opt/OptionArgumentValidatorSelector.d.ts +1 -0
  179. package/types/opt/OptionArgumentValidatorSelector.d.ts.map +1 -0
  180. package/types/opt/OptionBuilder.d.ts +3 -0
  181. package/types/opt/OptionBuilder.d.ts.map +1 -0
  182. package/types/opt/OptionHelpers.d.ts +1 -0
  183. package/types/opt/OptionHelpers.d.ts.map +1 -0
  184. package/types/opt/OptionReader.d.ts +1 -0
  185. package/types/opt/OptionReader.d.ts.map +1 -0
  186. package/types/prompt/additions/commandSearchPrompt/commandSearchPrompt.d.ts +21 -0
  187. package/types/prompt/additions/commandSearchPrompt/commandSearchPrompt.d.ts.map +1 -0
  188. package/types/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.d.ts +5 -0
  189. package/types/prompt/additions/commandSearchPrompt/core/ICommandSearchPromptResult.d.ts.map +1 -0
  190. package/types/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.d.ts +13 -0
  191. package/types/prompt/additions/commandSearchPrompt/core/createCommandSearchPromptObject.d.ts.map +1 -0
  192. package/types/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.d.ts +5 -0
  193. package/types/prompt/additions/searchPrompt/core/ISearchPromptChoiceMetaData.d.ts.map +1 -0
  194. package/types/prompt/additions/searchPrompt/core/ISearchPromptMetaData.d.ts +9 -0
  195. package/types/prompt/additions/searchPrompt/core/ISearchPromptMetaData.d.ts.map +1 -0
  196. package/types/prompt/additions/searchPrompt/core/ISearchPromptOptions.d.ts +44 -0
  197. package/types/prompt/additions/searchPrompt/core/ISearchPromptOptions.d.ts.map +1 -0
  198. package/types/prompt/additions/searchPrompt/core/ISearchPromptResult.d.ts +6 -0
  199. package/types/prompt/additions/searchPrompt/core/ISearchPromptResult.d.ts.map +1 -0
  200. package/types/prompt/additions/searchPrompt/core/PROMPT_META_DATA.d.ts +4 -0
  201. package/types/prompt/additions/searchPrompt/core/PROMPT_META_DATA.d.ts.map +1 -0
  202. package/types/prompt/additions/searchPrompt/core/createSearchPromptObject.d.ts +13 -0
  203. package/types/prompt/additions/searchPrompt/core/createSearchPromptObject.d.ts.map +1 -0
  204. package/types/prompt/additions/searchPrompt/core/getSearchPromptMetaData.d.ts +4 -0
  205. package/types/prompt/additions/searchPrompt/core/getSearchPromptMetaData.d.ts.map +1 -0
  206. package/types/prompt/additions/searchPrompt/searchPrompt.d.ts +21 -0
  207. package/types/prompt/additions/searchPrompt/searchPrompt.d.ts.map +1 -0
  208. package/types/prompt/core/AbstractUserPrompt.d.ts +55 -0
  209. package/types/prompt/core/AbstractUserPrompt.d.ts.map +1 -0
  210. package/types/prompt/core/AutoCompleteMultiSelectPrompt.d.ts +54 -0
  211. package/types/prompt/core/AutoCompleteMultiSelectPrompt.d.ts.map +1 -0
  212. package/types/prompt/core/AutocompletePrompt.d.ts +66 -0
  213. package/types/prompt/core/AutocompletePrompt.d.ts.map +1 -0
  214. package/types/prompt/core/ConfirmPrompt.d.ts +21 -0
  215. package/types/prompt/core/ConfirmPrompt.d.ts.map +1 -0
  216. package/types/prompt/core/DatePrompt.d.ts +37 -0
  217. package/types/prompt/core/DatePrompt.d.ts.map +1 -0
  218. package/types/prompt/core/InvisiblePrompt.d.ts +30 -0
  219. package/types/prompt/core/InvisiblePrompt.d.ts.map +1 -0
  220. package/types/prompt/core/ListPrompt.d.ts +34 -0
  221. package/types/prompt/core/ListPrompt.d.ts.map +1 -0
  222. package/types/prompt/core/MultiSelectPrompt.d.ts +54 -0
  223. package/types/prompt/core/MultiSelectPrompt.d.ts.map +1 -0
  224. package/types/prompt/core/NumberPrompt.d.ts +42 -0
  225. package/types/prompt/core/NumberPrompt.d.ts.map +1 -0
  226. package/types/prompt/core/PasswordPrompt.d.ts +30 -0
  227. package/types/prompt/core/PasswordPrompt.d.ts.map +1 -0
  228. package/types/prompt/core/SearchPrompt.d.ts +71 -0
  229. package/types/prompt/core/SearchPrompt.d.ts.map +1 -0
  230. package/types/prompt/core/SelectPrompt.d.ts +38 -0
  231. package/types/prompt/core/SelectPrompt.d.ts.map +1 -0
  232. package/types/prompt/core/TextPrompt.d.ts +30 -0
  233. package/types/prompt/core/TextPrompt.d.ts.map +1 -0
  234. package/types/prompt/core/TogglePrompt.d.ts +29 -0
  235. package/types/prompt/core/TogglePrompt.d.ts.map +1 -0
  236. package/types/prompt/core/types.d.ts +215 -0
  237. package/types/prompt/core/types.d.ts.map +1 -0
  238. package/types/prompt/example.d.ts +2 -0
  239. package/types/prompt/example.d.ts.map +1 -0
  240. package/types/prompt/prompt.d.ts +33 -0
  241. package/types/prompt/prompt.d.ts.map +1 -0
  242. package/types/types/IConfig.d.ts +1 -0
  243. package/types/types/IConfig.d.ts.map +1 -0
  244. package/types/types/IPreset.d.ts +1 -0
  245. package/types/types/IPreset.d.ts.map +1 -0
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = __importDefault(require("fs"));
7
+ const prompt_1 = require("./prompt");
8
+ async function example() {
9
+ // TextPrompt
10
+ await prompt_1.prompt
11
+ .text('user', 'What is your username?') //
12
+ .run();
13
+ // PasswordPrompt
14
+ await prompt_1.prompt
15
+ .password('pass', 'Enter password') //
16
+ .run();
17
+ // NumberPrompt
18
+ await prompt_1.prompt
19
+ .number('age', 'How old are you?')
20
+ .validate((value) => (value < 18 ? `Nightclub is 18+ only` : true))
21
+ .run();
22
+ // ConfirmPrompt
23
+ await prompt_1.prompt
24
+ .confirm('confirm', 'Can you confirm this is your age?') //
25
+ .initial(true)
26
+ .run();
27
+ // ListPrompt
28
+ await prompt_1.prompt
29
+ .list('kws', 'Enter some keywords')
30
+ .separator(' ')
31
+ .validate((arr) => (arr.length > 1 ? true : 'Please enter more than one'))
32
+ .run();
33
+ // TogglePrompt
34
+ await prompt_1.prompt
35
+ .toggle('cool', 'Toggle Cool Mode') //
36
+ .initial(true)
37
+ .active('on')
38
+ .inactive('off')
39
+ .run();
40
+ // SelectPrompt
41
+ await prompt_1.prompt
42
+ .select('col1', 'Pick a color')
43
+ .choices([
44
+ { title: 'Red', description: 'This option has a description', value: '#ff0000' },
45
+ { title: 'Green', value: '#00ff00', disabled: true },
46
+ { title: 'Blue', value: '#0000ff' },
47
+ ])
48
+ .initial(0)
49
+ .hint('Select your favorite.')
50
+ .warn('Really not a good idea,')
51
+ .run();
52
+ // MultiSelectPrompt
53
+ await prompt_1.prompt
54
+ .multiselect('col2', 'Pick between 1 and 3 colors')
55
+ .choices([
56
+ { title: 'Black', value: '#000000', disabled: false, selected: false },
57
+ { title: 'Red', value: '#ff0000', disabled: false, selected: false },
58
+ { title: 'Green', value: '#00ff00', disabled: true, selected: false },
59
+ { title: 'Blue', value: '#0000ff', disabled: false, selected: false },
60
+ { title: 'White', value: '#ffffff', disabled: false, selected: true },
61
+ ])
62
+ .instructions('Here are some instructions')
63
+ .min(1)
64
+ .max(3)
65
+ .hint('Select your favorite.')
66
+ .warn('Really not a good idea,')
67
+ .run();
68
+ // AutoCompleteMultiSelectPrompt
69
+ await prompt_1.prompt
70
+ .autocompleteMultiSelect('col3', 'Pick between 1 and 3 colors')
71
+ .choices([
72
+ { title: 'Black', value: '#000000', disabled: false, selected: false },
73
+ { title: 'Red', value: '#ff0000', disabled: false, selected: false },
74
+ { title: 'Green', value: '#00ff00', disabled: true, selected: false },
75
+ { title: 'Blue', value: '#0000ff', disabled: false, selected: false },
76
+ { title: 'White', value: '#ffffff', disabled: false, selected: true },
77
+ ])
78
+ .instructions('Here are some instructions')
79
+ .min(1)
80
+ .max(3)
81
+ .hint('Select your favorite.')
82
+ .warn('Really not a good idea,')
83
+ .run();
84
+ // DatePrompt
85
+ await prompt_1.prompt
86
+ .date('future', 'Select a date in the future')
87
+ .initial(new Date())
88
+ .validate((date) => (date > new Date() ? true : 'Date must be in the future'))
89
+ .run();
90
+ // InvisiblePrompt
91
+ await prompt_1.prompt
92
+ .invisible('invisible', 'This is invisible') //
93
+ .initial('secret')
94
+ .run();
95
+ // AutocompletePrompt
96
+ await prompt_1.prompt
97
+ .autocomplete('actor', 'Pick your favorite actor')
98
+ .choices([
99
+ { title: 'Cage' },
100
+ { title: 'Clooney', value: 'silver-fox' },
101
+ { title: 'Gyllenhaal' },
102
+ { title: 'Gibson' },
103
+ { title: 'Grant' },
104
+ ])
105
+ .run();
106
+ // SearchPrompt
107
+ await prompt_1.prompt
108
+ .search('test')
109
+ .choices(fs_1.default.readFileSync(__filename, 'utf8').split(/[\s\n\r]/))
110
+ .filtering({ includes: true, startsWith: true })
111
+ .clearFirst(true)
112
+ .limit(30)
113
+ .separator(' ')
114
+ .run();
115
+ }
116
+ // example().catch(console.error)
117
+ //# 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,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.prompt = void 0;
4
+ const AutoCompleteMultiSelectPrompt_1 = require("./core/AutoCompleteMultiSelectPrompt");
5
+ const AutocompletePrompt_1 = require("./core/AutocompletePrompt");
6
+ const ConfirmPrompt_1 = require("./core/ConfirmPrompt");
7
+ const DatePrompt_1 = require("./core/DatePrompt");
8
+ const InvisiblePrompt_1 = require("./core/InvisiblePrompt");
9
+ const ListPrompt_1 = require("./core/ListPrompt");
10
+ const MultiSelectPrompt_1 = require("./core/MultiSelectPrompt");
11
+ const NumberPrompt_1 = require("./core/NumberPrompt");
12
+ const PasswordPrompt_1 = require("./core/PasswordPrompt");
13
+ const SearchPrompt_1 = require("./core/SearchPrompt");
14
+ const SelectPrompt_1 = require("./core/SelectPrompt");
15
+ const TextPrompt_1 = require("./core/TextPrompt");
16
+ const TogglePrompt_1 = require("./core/TogglePrompt");
17
+ /**
18
+ * User prompt module
19
+ */
20
+ exports.prompt = {
21
+ text: (name, message, callback) => {
22
+ return new TextPrompt_1.TextPrompt(name, message, callback);
23
+ },
24
+ number: (name, message, callback) => {
25
+ return new NumberPrompt_1.NumberPrompt(name, message, callback);
26
+ },
27
+ confirm: (name, message, callback) => {
28
+ return new ConfirmPrompt_1.ConfirmPrompt(name, message, callback);
29
+ },
30
+ password: (name, message, callback) => {
31
+ return new PasswordPrompt_1.PasswordPrompt(name, message, callback);
32
+ },
33
+ invisible: (name, message, callback) => {
34
+ return new InvisiblePrompt_1.InvisiblePrompt(name, message, callback);
35
+ },
36
+ list: (name, message, callback) => {
37
+ return new ListPrompt_1.ListPrompt(name, message, callback);
38
+ },
39
+ toggle: (name, message, callback) => {
40
+ return new TogglePrompt_1.TogglePrompt(name, message, callback);
41
+ },
42
+ select: (name, message, callback) => {
43
+ return new SelectPrompt_1.SelectPrompt(name, message, callback);
44
+ },
45
+ multiselect: (name, message, callback) => {
46
+ return new MultiSelectPrompt_1.MultiSelectPrompt(name, message, callback);
47
+ },
48
+ autocomplete: (name, message, callback) => {
49
+ return new AutocompletePrompt_1.AutocompletePrompt(name, message, callback);
50
+ },
51
+ autocompleteMultiSelect: (name, message, callback) => {
52
+ return new AutoCompleteMultiSelectPrompt_1.AutoCompleteMultiSelectPrompt(name, message, callback);
53
+ },
54
+ date: (name, message, callback) => {
55
+ return new DatePrompt_1.DatePrompt(name, message, callback);
56
+ },
57
+ search: (name, callback) => {
58
+ return new SearchPrompt_1.SearchPrompt(name, callback);
59
+ },
60
+ };
61
+ exports.default = exports.prompt;
62
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../../../packages/cli/src/prompt/prompt.ts"],"names":[],"mappings":";;;AAAA,wFAAoF;AACpF,kEAA8D;AAC9D,wDAAoD;AACpD,kDAA8C;AAC9C,4DAAwD;AACxD,kDAA8C;AAC9C,gEAA4D;AAC5D,sDAAkD;AAClD,0DAAsD;AACtD,sDAAkD;AAClD,sDAAkD;AAClD,kDAA8C;AAC9C,sDAAkD;AAElD;;GAEG;AACU,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAqC,EAAE,EAAE;QAC7E,OAAO,IAAI,uBAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IACD,MAAM,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAuC,EAAE,EAAE;QACjF,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClD,CAAC;IACD,OAAO,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAwC,EAAE,EAAE;QACnF,OAAO,IAAI,6BAAa,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAC;IACD,QAAQ,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAyC,EAAE,EAAE;QACrF,OAAO,IAAI,+BAAc,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACpD,CAAC;IACD,SAAS,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAA0C,EAAE,EAAE;QACvF,OAAO,IAAI,iCAAe,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACrD,CAAC;IACD,IAAI,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAqC,EAAE,EAAE;QAC7E,OAAO,IAAI,uBAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IACD,MAAM,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAuC,EAAE,EAAE;QACjF,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClD,CAAC;IACD,MAAM,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAuC,EAAE,EAAE;QACjF,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAClD,CAAC;IACD,WAAW,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAA4C,EAAE,EAAE;QAC3F,OAAO,IAAI,qCAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACvD,CAAC;IACD,YAAY,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAA6C,EAAE,EAAE;QAC7F,OAAO,IAAI,uCAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,CAAC;IACD,uBAAuB,EAAE,CACvB,IAAY,EACZ,OAAe,EACf,QAAwD,EACxD,EAAE;QACF,OAAO,IAAI,6DAA6B,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,EAAE,CAAC,IAAY,EAAE,OAAe,EAAE,QAAqC,EAAE,EAAE;QAC7E,OAAO,IAAI,uBAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;IACD,MAAM,EAAE,CAAC,IAAY,EAAE,QAAuC,EAAE,EAAE;QAChE,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACzC,CAAC;CACF,CAAA;AAED,kBAAe,cAAM,CAAA"}
@@ -10,11 +10,19 @@ export class ArgumentBuilder {
10
10
  cmd;
11
11
  $;
12
12
  index;
13
+ userConfirmation;
13
14
  constructor(cmd, name) {
14
15
  this.cmd = cmd;
15
16
  this.$ = new Argument(name);
16
17
  this.index = cmd.meta.argValidators.length;
17
18
  cmd.meta.argValidators[this.index] = [];
19
+ this.cmd.meta.argBuilders.push(this);
20
+ }
21
+ get hasValidators() {
22
+ return this.cmd.meta.argValidators[this.index].length > 0;
23
+ }
24
+ get hasParser() {
25
+ return this.cmd.meta.argParsers[this.index] !== undefined;
18
26
  }
19
27
  description(string) {
20
28
  this.$.description = string;
@@ -37,5 +45,12 @@ export class ArgumentBuilder {
37
45
  get get() {
38
46
  return realizeLazyProperty(this, 'get', new ArgumentReader(this));
39
47
  }
48
+ /**
49
+ * Only works with async actionHandlers.
50
+ */
51
+ userMustConfirmIf(options) {
52
+ this.userConfirmation = options;
53
+ return this;
54
+ }
40
55
  }
41
56
  //# sourceMappingURL=ArgumentBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArgumentBuilder.js","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;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD;;GAEG;AACH,MAAM,OAAO,eAAe;IAIL;IAHZ,CAAC,CAAU;IACX,KAAK,CAAQ;IAEtB,YAAqB,GAAmB,EAAE,IAAY;QAAjC,QAAG,GAAH,GAAG,CAAgB;QACtC,IAAI,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAA;QAC1C,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;IACzC,CAAC;IAED,WAAW,CAAC,MAAc;QACxB,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,MAAM,CAAA;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CAAC,KAAc,EAAE,WAAoB;QAC1C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CAAC,MAAyB;QAC/B,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,GAAG;QACL,OAAO,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;IACnE,CAAC;CACF"}
1
+ {"version":3,"file":"ArgumentBuilder.js","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;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD;;GAEG;AACH,MAAM,OAAO,eAAe;IAKL;IAJZ,CAAC,CAAU;IACX,KAAK,CAAQ;IACtB,gBAAgB,CAA2D;IAE3E,YAAqB,GAAmB,EAAE,IAAY;QAAjC,QAAG,GAAH,GAAG,CAAgB;QACtC,IAAI,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAA;QAC1C,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACvC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;IAC3D,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,SAAS,CAAA;IAC3D,CAAC;IAED,WAAW,CAAC,MAAc;QACxB,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,MAAM,CAAA;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CAAC,KAAc,EAAE,WAAoB;QAC1C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CAAC,MAAyB;QAC/B,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,GAAG;QACL,OAAO,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;IACnE,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,OAAiE;QACjF,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;CACF"}