@bemoje/cli 0.0.11 → 0.0.13

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 +196 -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 +196 -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 +1 -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
@@ -4,6 +4,7 @@ import fs from 'fs-extra';
4
4
  import isAsyncFunction from 'is-async-function';
5
5
  import os from 'os';
6
6
  import path from 'path';
7
+ import prompts from 'prompts';
7
8
  import { ArgumentBuilder } from '../arg/ArgumentBuilder';
8
9
  import { arrAssign } from '@bemoje/util';
9
10
  import { arrLast } from '@bemoje/util';
@@ -43,12 +44,12 @@ export class CommandBuilder {
43
44
  constructor(name, callback, parent, isNative = false) {
44
45
  this.meta.isNative = isNative;
45
46
  this.$ = new Command(name);
47
+ commanderBackRefs.set(this.$, this);
46
48
  if (parent) {
47
49
  this.parent = parent;
48
50
  this.parent.meta.subcommands.push(this);
49
51
  this.parent.$.addCommand(this.$);
50
52
  }
51
- commanderBackRefs.set(this.$, this);
52
53
  this.initializeHelp();
53
54
  if (callback)
54
55
  callback.call(this, this);
@@ -85,10 +86,18 @@ export class CommandBuilder {
85
86
  this.presetsEnabled();
86
87
  }
87
88
  deleteDataFile() {
88
- const filepath = this.dataFilepath;
89
+ const filepath = this.jsonFilepath;
89
90
  if (fs.existsSync(filepath))
90
91
  removeFile(filepath);
91
92
  }
93
+ /**
94
+ * Set the program version to `str`.
95
+ *
96
+ * This method auto-registers the "-V, --version" flag
97
+ * which will print the version number when passed.
98
+ *
99
+ * You can optionally supply the flags and description to override the defaults.
100
+ */
92
101
  version(string) {
93
102
  this.$.version(string);
94
103
  const opt = this.options.find((o) => o.attributeName() === 'version');
@@ -96,6 +105,11 @@ export class CommandBuilder {
96
105
  this.meta.globalOptions.push(opt);
97
106
  return this;
98
107
  }
108
+ /**
109
+ * Set the description. If more than one sentence or string is given,
110
+ * then the first will be used as summary and the whole text as description.
111
+ * @param lines - description lines
112
+ */
99
113
  description(...lines) {
100
114
  const description = lines.join('\n');
101
115
  const summary = description.split(/(\. ?|\n|$)/)[0];
@@ -103,16 +117,32 @@ export class CommandBuilder {
103
117
  this.$.description(description);
104
118
  return this;
105
119
  }
120
+ /**
121
+ * Set an alias for the command.
122
+ * You may call more than once to add multiple aliases.
123
+ * Only the first alias is shown in the auto-generated help.
124
+ */
106
125
  alias(alias) {
107
126
  this.assertCommandNameNotReserved(alias);
108
127
  this.$.alias(alias);
109
128
  return this;
110
129
  }
130
+ /**
131
+ * Set aliases for the command. This overwrites all previously set aliases.
132
+ * Only the first alias is shown in the auto-generated help.
133
+ */
111
134
  aliases(...aliases) {
112
135
  aliases.forEach((alias) => this.assertCommandNameNotReserved(alias));
113
136
  this.$.aliases(aliases);
114
137
  return this;
115
138
  }
139
+ /**
140
+ * Set the command usage.
141
+ */
142
+ usage(str) {
143
+ this.$.usage(str);
144
+ return this;
145
+ }
116
146
  enableBuiltinOptions(options) {
117
147
  if (!options || options.debug)
118
148
  this.globalOption('-D, --debug', 'Output debugging information.');
@@ -133,6 +163,10 @@ export class CommandBuilder {
133
163
  else if (typeof cb === 'string') {
134
164
  ins.description(cb);
135
165
  }
166
+ if (ins.$.variadic && !ins.hasParser && !ins.hasValidators) {
167
+ ins.parser.string();
168
+ ins.validator.isStringArray();
169
+ }
136
170
  return this;
137
171
  }
138
172
  option(flags, cb) {
@@ -146,6 +180,10 @@ export class CommandBuilder {
146
180
  else if (typeof cb === 'string') {
147
181
  ins.description(cb);
148
182
  }
183
+ if (ins.$.variadic && !ins.hasParser && !ins.hasValidators) {
184
+ ins.parser.string();
185
+ ins.validator.isStringArray();
186
+ }
149
187
  return this;
150
188
  }
151
189
  globalOption(flags, cb) {
@@ -162,14 +200,27 @@ export class CommandBuilder {
162
200
  this.meta.hiddenGlobalOptions.add(opt);
163
201
  });
164
202
  }
203
+ /**
204
+ * Create a subcommand.
205
+ * @param flags - command name and arguments, args are `<required>` or `[optional]` and last may also be `variadic...`
206
+ * @param description - describe the command
207
+ */
165
208
  command(name, cb) {
166
209
  new CommandBuilder(name, cb, this);
167
210
  return this;
168
211
  }
212
+ /**
213
+ * Create a native subcommand.
214
+ * @param flags - command name and arguments, args are `<required>` or `[optional]` and last may also be `variadic...`
215
+ * @param description - describe the command
216
+ */
169
217
  nativeCommand(name, cb) {
170
218
  new CommandBuilder(name, cb, this, true);
171
219
  return this;
172
220
  }
221
+ /**
222
+ * Register callback function for the command to execute when invoked.
223
+ */
173
224
  action(fn) {
174
225
  const isAsync = isAsyncFunction(fn) || /^\(.+\) ?=> ?tslib_1\.__awaiter\(/.test(fn.toString().trim());
175
226
  this.meta.isActionAsync = isAsync;
@@ -177,6 +228,16 @@ export class CommandBuilder {
177
228
  this.initializeActionWrapper(isAsync);
178
229
  return this;
179
230
  }
231
+ usageExamples(...examples) {
232
+ const table = examples.map(({ command, description }) => {
233
+ if (command.length + (description?.length || 0) > 100) {
234
+ this.throwCommanderError(`Usage example description too long: ${command}`);
235
+ }
236
+ return [command, description ?? ''];
237
+ });
238
+ this.description(this.$.description() + '\n\n' + 'Usage Examples:\n' + formatTableForTerminal(table));
239
+ return this;
240
+ }
180
241
  errorHandler(fn) {
181
242
  Object.defineProperty(this.meta, 'errorHandler', { value: fn, configurable: true });
182
243
  return this;
@@ -214,14 +275,49 @@ export class CommandBuilder {
214
275
  this.features.autoAssignSubCommandAliases(boolean);
215
276
  return this;
216
277
  }
278
+ /**
279
+ * Allow excess command-arguments on the command line. Pass false to make excess arguments an error.
280
+ *
281
+ * @returns `this` command for chaining
282
+ */
217
283
  allowExcessArguments(bool = true) {
218
284
  this.$.allowExcessArguments(bool);
219
285
  return this;
220
286
  }
287
+ /**
288
+ * Allow unknown options on the command line.
289
+ *
290
+ * @returns `this` command for chaining
291
+ */
221
292
  allowUnknownOption(bool = true) {
222
293
  this.$.allowUnknownOption(bool);
223
294
  return this;
224
295
  }
296
+ /**
297
+ * Enable positional options. Positional means global options are specified before subcommands which lets
298
+ * subcommands reuse the same option names, and also enables subcommands to turn on passThroughOptions.
299
+ *
300
+ * The default behaviour is non-positional and global options may appear anywhere on the command line.
301
+ *
302
+ * @returns `this` command for chaining
303
+ */
304
+ enablePositionalOptions(positional) {
305
+ this.$.enablePositionalOptions(positional);
306
+ return this;
307
+ }
308
+ /**
309
+ * Pass through options that come after command-arguments rather than treat them as command-options,
310
+ * so actual command-options come before command-arguments. Turning this on for a subcommand requires
311
+ * positional options to have been enabled on the program (parent commands).
312
+ *
313
+ * The default behaviour is non-positional and options may appear before or after command-arguments.
314
+ *
315
+ * @returns `this` command for chaining
316
+ */
317
+ passThroughOptions(passThrough) {
318
+ this.$.passThroughOptions(passThrough);
319
+ return this;
320
+ }
225
321
  /**
226
322
  * Register callback to use as replacement for calling process.exit.
227
323
  */
@@ -229,13 +325,6 @@ export class CommandBuilder {
229
325
  this.$.exitOverride(callback);
230
326
  return this;
231
327
  }
232
- throwInsteadOfProcessExit() {
233
- const onErr = (err) => {
234
- throw err;
235
- };
236
- this.exitOverride(onErr);
237
- this.errorHandler(onErr);
238
- }
239
328
  /**
240
329
  * Add hook for life cycle event.
241
330
  */
@@ -265,6 +354,19 @@ export class CommandBuilder {
265
354
  this.$.showSuggestionAfterError(displaySuggestion);
266
355
  return this;
267
356
  }
357
+ /**
358
+ * Override default decision whether to add implicit help command.
359
+ * @example ```
360
+ * addHelpCommand() // force on
361
+ * addHelpCommand(false); // force off
362
+ * addHelpCommand('help [cmd]', 'display help for [cmd]'); // force on with custom details
363
+ * ```
364
+ * @returns `this` command for chaining
365
+ */
366
+ addHelpCommand(enableOrNameAndArgs, description) {
367
+ this.$.addHelpCommand(enableOrNameAndArgs, description);
368
+ return this;
369
+ }
268
370
  /**
269
371
  * Add additional text to be displayed with the built-in help.
270
372
  *
@@ -353,7 +455,7 @@ export class CommandBuilder {
353
455
  * Output help information for this command.
354
456
  */
355
457
  outputHelp() {
356
- console.log(this.getRenderedHelp());
458
+ console.log(this.getHelpInformation());
357
459
  }
358
460
  /**
359
461
  * Display error message and exit (or call exitOverride).
@@ -367,7 +469,7 @@ export class CommandBuilder {
367
469
  if (!arg)
368
470
  return arg;
369
471
  const parse = this.meta.argParsers[i > last ? last : i];
370
- return parse ? (Array.isArray(arg) ? arg.map(parse) : parse(arg)) : arg;
472
+ return parse ? (Array.isArray(arg) ? arg.map((a) => parse(a)) : parse(arg)) : arg;
371
473
  });
372
474
  }
373
475
  /**
@@ -376,7 +478,7 @@ export class CommandBuilder {
376
478
  parseOptions(opts) {
377
479
  for (const [key, value] of Object.entries(opts)) {
378
480
  const parse = this.meta.optParsers[key];
379
- opts[key] = parse ? (Array.isArray(value) ? value.map(parse) : parse(value)) : value;
481
+ opts[key] = parse ? (Array.isArray(value) ? value.map((o) => parse(o)) : parse(value)) : value;
380
482
  }
381
483
  return opts;
382
484
  }
@@ -424,6 +526,13 @@ export class CommandBuilder {
424
526
  ensureThat(options, isObject);
425
527
  this.assertValidOptions(options);
426
528
  }
529
+ throwRatherThanExitProcess() {
530
+ const throwError = (error) => {
531
+ throw error;
532
+ };
533
+ this.errorHandler(throwError);
534
+ this.exitOverride(throwError);
535
+ }
427
536
  get name() {
428
537
  return this.$.name();
429
538
  }
@@ -458,7 +567,7 @@ export class CommandBuilder {
458
567
  return false;
459
568
  return arrLast(this.arguments).variadic;
460
569
  }
461
- get dataFilepath() {
570
+ get jsonFilepath() {
462
571
  return path.join(CommandBuilder.dataDirectory, this.root.name + '.json');
463
572
  }
464
573
  /**
@@ -572,19 +681,55 @@ export class CommandBuilder {
572
681
  getSiblings() {
573
682
  return [...this.getSiblingsIterator()];
574
683
  }
575
- getClosestNonNativeParent() {
576
- for (const anc of this.getAncestorsIterator({ includeSelf: true })) {
577
- if (!anc.meta.isNative)
578
- return anc;
579
- }
580
- this.throwCommanderError('No non-native parent found');
581
- }
582
- getRenderedHelp() {
684
+ /**
685
+ * Render the help string for the command.
686
+ */
687
+ getHelpInformation() {
583
688
  return this.$.helpInformation();
584
689
  }
585
- getOptsWithGlobalsParsed() {
690
+ getOptsWithGlobals() {
586
691
  return this.parseOptions(this.$.optsWithGlobals());
587
692
  }
693
+ /**
694
+ * Parse `argv`, setting options and invoking commands when defined.
695
+ *
696
+ * The default expectation is that the arguments are from node and have the application as argv[0]
697
+ * and the script being run in argv[1], with user parameters after that.
698
+ *
699
+ * @example
700
+ * ```
701
+ * program.parse(process.argv);
702
+ * program.parse(); // implicitly use process.argv and auto-detect node vs electron conventions
703
+ * program.parse(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0]
704
+ * ```
705
+ *
706
+ * @returns `this` command for chaining
707
+ */
708
+ parse(argv, options) {
709
+ this.$.parse(argv, options);
710
+ return this;
711
+ }
712
+ /**
713
+ * Parse `argv`, setting options and invoking commands when defined.
714
+ *
715
+ * Use parseAsync instead of parse if any of your action handlers are async. Returns a Promise.
716
+ *
717
+ * The default expectation is that the arguments are from node and have the application as argv[0]
718
+ * and the script being run in argv[1], with user parameters after that.
719
+ *
720
+ * @example
721
+ * ```
722
+ * program.parseAsync(process.argv);
723
+ * program.parseAsync(); // implicitly use process.argv and auto-detect node vs electron conventions
724
+ * program.parseAsync(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0]
725
+ * ```
726
+ *
727
+ * @returns Promise
728
+ */
729
+ async parseAsync(argv, options) {
730
+ await this.$.parseAsync(argv, options);
731
+ return this;
732
+ }
588
733
  getParsedValidArgsOptsWithPresets() {
589
734
  const [presetArgs, presetOpts, presetOrder] = this.getPresetArgsAndOpts();
590
735
  const args = this.getParsedValidArgsWithPresets(presetArgs);
@@ -599,9 +744,9 @@ export class CommandBuilder {
599
744
  return this.padArgsWithUndefinedUntilExpectedLength(result);
600
745
  }
601
746
  getParsedValidOptsWithPresets(presetOpts) {
602
- const parsed = this.getOptsWithGlobalsParsed();
747
+ const parsed = this.getOptsWithGlobals();
603
748
  const opts = presetOpts.length ? objAssign({}, ...presetOpts, parsed) : parsed;
604
- this.deleteOptionsWithDefaultOrNoValue(opts);
749
+ this.hideOptionsWithDefaultOrNoValueOrArePresets(opts);
605
750
  this.assertValidOptions(opts);
606
751
  return opts;
607
752
  }
@@ -637,10 +782,11 @@ export class CommandBuilder {
637
782
  });
638
783
  }
639
784
  }
640
- deleteOptionsWithDefaultOrNoValue(opts) {
641
- const names = new Set(this.getOwnAndGlobalOptions().map((o) => o.attributeName()));
785
+ hideOptionsWithDefaultOrNoValueOrArePresets(opts) {
786
+ const allOpts = this.getOwnAndGlobalOptions();
787
+ const optMap = Object.fromEntries(allOpts.map((o) => [o.attributeName(), o]));
642
788
  for (const [key, value] of Object.entries(opts)) {
643
- if (!names.has(key) || value === false || value == null) {
789
+ if (value == null || !optMap[key] || optMap[key].defaultValue === value) {
644
790
  setNonEnumerable(opts, key);
645
791
  }
646
792
  }
@@ -685,7 +831,7 @@ export class CommandBuilder {
685
831
  return;
686
832
  }
687
833
  this.nativeCommand('util', (u) => {
688
- const cmd = u.getClosestNonNativeParent();
834
+ const cmd = u.parent;
689
835
  u.alias('u');
690
836
  u.description('Utility commands.');
691
837
  if (cmd.features.isConfigEnabled) {
@@ -703,7 +849,7 @@ export class CommandBuilder {
703
849
  function createUtilFilepathCommand(f) {
704
850
  f.alias('f');
705
851
  f.description('Print filepath to JSON file containing user data, eg. config and presets.');
706
- f.action(async () => console.log(cmd.dataFilepath));
852
+ f.action(async () => console.log(cmd.jsonFilepath));
707
853
  }
708
854
  function createUtilListCommand(l) {
709
855
  l.alias('l');
@@ -983,6 +1129,25 @@ export class CommandBuilder {
983
1129
  }
984
1130
  }
985
1131
  }
1132
+ async getUserConfirmations(args) {
1133
+ for (let i = 0; i < args.length; i++) {
1134
+ const arg = args[i];
1135
+ const argb = this.meta.argBuilders[i];
1136
+ if (!argb || !argb.userConfirmation)
1137
+ continue;
1138
+ const { predicate, message } = argb.userConfirmation;
1139
+ if (predicate(arg)) {
1140
+ const result = await prompts({
1141
+ type: 'confirm',
1142
+ name: 'isConfirmed',
1143
+ message,
1144
+ initial: true,
1145
+ });
1146
+ if (!result.isConfirmed)
1147
+ this.outputError('Aborted.');
1148
+ }
1149
+ }
1150
+ }
986
1151
  initializeActionWrapper(isAsync = false) {
987
1152
  if (isAsync) {
988
1153
  this.$.action(async () => {
@@ -991,7 +1156,8 @@ export class CommandBuilder {
991
1156
  const [args, opts] = this.getParsedValidArgsOptsWithPresets();
992
1157
  if (opts['help'])
993
1158
  return this.outputHelp();
994
- const owg = this.$.optsWithGlobals();
1159
+ await this.getUserConfirmations(args);
1160
+ const optswg = this.$.optsWithGlobals();
995
1161
  await this.meta.actionHandler.call(this, ...args, opts, this);
996
1162
  }
997
1163
  catch (error) {
@@ -1037,46 +1203,6 @@ export class CommandBuilder {
1037
1203
  this.throwCommanderError(`Name '${name}' is reserved and is not available as name or alias.`);
1038
1204
  }
1039
1205
  }
1040
- /**
1041
- * Parse `argv`, setting options and invoking commands when defined.
1042
- *
1043
- * The default expectation is that the arguments are from node and have the application as argv[0]
1044
- * and the script being run in argv[1], with user parameters after that.
1045
- *
1046
- * @example
1047
- * ```
1048
- * program.parse(process.argv);
1049
- * program.parse(); // implicitly use process.argv and auto-detect node vs electron conventions
1050
- * program.parse(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0]
1051
- * ```
1052
- *
1053
- * @returns `this` command for chaining
1054
- */
1055
- parse(argv, options) {
1056
- this.$.parse(argv, options);
1057
- return this;
1058
- }
1059
- /**
1060
- * Parse `argv`, setting options and invoking commands when defined.
1061
- *
1062
- * Use parseAsync instead of parse if any of your action handlers are async. Returns a Promise.
1063
- *
1064
- * The default expectation is that the arguments are from node and have the application as argv[0]
1065
- * and the script being run in argv[1], with user parameters after that.
1066
- *
1067
- * @example
1068
- * ```
1069
- * program.parseAsync(process.argv);
1070
- * program.parseAsync(); // implicitly use process.argv and auto-detect node vs electron conventions
1071
- * program.parseAsync(my-args, { from: 'user' }); // just user supplied arguments, nothing special about argv[0]
1072
- * ```
1073
- *
1074
- * @returns Promise
1075
- */
1076
- async parseAsync(argv, options) {
1077
- await this.$.parseAsync(argv, options);
1078
- return this;
1079
- }
1080
1206
  }
1081
1207
  export const commanderBackRefs = new WeakMap();
1082
1208
  const oldParse = Command.prototype.parse;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandBuilder.js","sourceRoot":"","sources":["../../../../../packages/cli/src/cmd/CommandBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandBuilder.js","sourceRoot":"","sources":["../../../../../packages/cli/src/cmd/CommandBuilder.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export class CommandBuilderMetaData {
6
6
  globalOptions = [];
7
7
  hiddenGlobalOptions = new Set();
8
8
  presetOptionKeys = [];
9
+ argBuilders = [];
9
10
  argParsers = [];
10
11
  argValidators = [];
11
12
  optParsers = {};