@flowscripter/dynamic-cli-framework 1.7.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (500) hide show
  1. package/cli-plugin.ts +1 -104
  2. package/dist/cli-plugin.d.ts +1 -58
  3. package/dist/cli-plugin.d.ts.map +1 -1
  4. package/dist/cli-plugin.js +1 -25
  5. package/dist/index.d.ts +70 -69
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +27 -26
  8. package/dist/src/cli/BaseCLI.d.ts +6 -6
  9. package/dist/src/cli/BaseCLI.d.ts.map +1 -1
  10. package/dist/src/cli/BaseCLI.js +1 -2
  11. package/dist/src/{api → cli}/BaseCLIFeatureOptions.d.ts.map +1 -1
  12. package/dist/src/cli/DefaultRuntimeCLI.d.ts +3 -3
  13. package/dist/src/cli/DefaultRuntimeCLI.d.ts.map +1 -1
  14. package/dist/src/cli/DynamicPluginRuntimeCLI.d.ts +3 -3
  15. package/dist/src/cli/DynamicPluginRuntimeCLI.d.ts.map +1 -1
  16. package/dist/src/cli/DynamicPluginRuntimeCLI.js +3 -3
  17. package/dist/src/command/MultiCommandCliHelpCommand.d.ts +7 -7
  18. package/dist/src/command/MultiCommandCliHelpCommand.d.ts.map +1 -1
  19. package/dist/src/command/MultiCommandCliHelpCommand.js +3 -3
  20. package/dist/src/command/SingleCommandCliHelpCommand.d.ts +6 -6
  21. package/dist/src/command/SingleCommandCliHelpCommand.d.ts.map +1 -1
  22. package/dist/src/command/SingleCommandCliHelpCommand.js +2 -2
  23. package/dist/src/command/UsageCommand.d.ts +3 -3
  24. package/dist/src/command/UsageCommand.d.ts.map +1 -1
  25. package/dist/src/command/UsageCommand.js +1 -1
  26. package/dist/src/command/VersionCommand.d.ts +2 -2
  27. package/dist/src/command/VersionCommand.d.ts.map +1 -1
  28. package/dist/src/command/VersionCommand.js +1 -1
  29. package/dist/src/launcher.d.ts +2 -5
  30. package/dist/src/launcher.d.ts.map +1 -1
  31. package/dist/src/runtime/DefaultContext.d.ts +2 -2
  32. package/dist/src/runtime/DefaultContext.d.ts.map +1 -1
  33. package/dist/src/runtime/argument/ArgumentTypeGuards.d.ts +2 -2
  34. package/dist/src/runtime/argument/ArgumentTypeGuards.d.ts.map +1 -1
  35. package/dist/src/runtime/command/CommandTypeGuards.d.ts +5 -5
  36. package/dist/src/runtime/command/CommandTypeGuards.d.ts.map +1 -1
  37. package/dist/src/runtime/command/CommandValidator.d.ts +2 -2
  38. package/dist/src/runtime/command/CommandValidator.d.ts.map +1 -1
  39. package/dist/src/runtime/command/CommandValidator.js +1 -1
  40. package/dist/src/runtime/parser.d.ts +3 -32
  41. package/dist/src/runtime/parser.d.ts.map +1 -1
  42. package/dist/src/runtime/registry/DefaultCommandRegistry.d.ts +6 -6
  43. package/dist/src/runtime/registry/DefaultCommandRegistry.d.ts.map +1 -1
  44. package/dist/src/runtime/registry/DefaultServiceProviderRegistry.d.ts +2 -2
  45. package/dist/src/runtime/registry/DefaultServiceProviderRegistry.d.ts.map +1 -1
  46. package/dist/src/runtime/runner.d.ts +5 -5
  47. package/dist/src/runtime/runner.d.ts.map +1 -1
  48. package/dist/src/runtime/runner.js +2 -2
  49. package/dist/src/runtime/scanner.d.ts +4 -4
  50. package/dist/src/runtime/scanner.d.ts.map +1 -1
  51. package/dist/src/runtime/values/ValuePopulationResult.d.ts +2 -2
  52. package/dist/src/runtime/values/ValuePopulationResult.d.ts.map +1 -1
  53. package/dist/src/runtime/values/argumentValueMerge.d.ts +1 -1
  54. package/dist/src/runtime/values/argumentValueMerge.d.ts.map +1 -1
  55. package/dist/src/runtime/values/argumentValueMerge.js +2 -2
  56. package/dist/src/runtime/values/argumentValueValidation.d.ts +6 -6
  57. package/dist/src/runtime/values/argumentValueValidation.d.ts.map +1 -1
  58. package/dist/src/runtime/values/argumentValueValidation.js +2 -2
  59. package/dist/src/runtime/values/globalCommandValuePopulation.d.ts +2 -2
  60. package/dist/src/runtime/values/globalCommandValuePopulation.d.ts.map +1 -1
  61. package/dist/src/runtime/values/globalCommandValuePopulation.js +2 -2
  62. package/dist/src/runtime/values/subCommandValuePopulation.d.ts +2 -2
  63. package/dist/src/runtime/values/subCommandValuePopulation.d.ts.map +1 -1
  64. package/dist/src/runtime/values/subCommandValuePopulation.js +4 -4
  65. package/dist/src/service/argumentPrompter/ArgumentPrompterServiceProvider.d.ts +4 -4
  66. package/dist/src/service/argumentPrompter/ArgumentPrompterServiceProvider.d.ts.map +1 -1
  67. package/dist/src/service/argumentPrompter/ArgumentPrompterServiceProvider.js +1 -1
  68. package/dist/src/service/argumentPrompter/DefaultArgumentPrompterService.d.ts +2 -2
  69. package/dist/src/service/argumentPrompter/DefaultArgumentPrompterService.d.ts.map +1 -1
  70. package/dist/src/service/argumentPrompter/DefaultArgumentPrompterService.js +3 -3
  71. package/dist/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.d.ts +3 -3
  72. package/dist/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.d.ts.map +1 -1
  73. package/dist/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.js +1 -1
  74. package/dist/src/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.d.ts +2 -2
  75. package/dist/src/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.d.ts.map +1 -1
  76. package/dist/src/service/banner/BannerServiceProvider.d.ts +3 -3
  77. package/dist/src/service/banner/BannerServiceProvider.d.ts.map +1 -1
  78. package/dist/src/service/banner/BannerServiceProvider.js +2 -2
  79. package/dist/src/service/banner/command/NoBannerCommand.d.ts +4 -4
  80. package/dist/src/service/banner/command/NoBannerCommand.d.ts.map +1 -1
  81. package/dist/src/service/banner/command/NoBannerCommand.js +1 -1
  82. package/dist/src/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.d.ts +2 -2
  83. package/dist/src/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.d.ts.map +1 -1
  84. package/dist/src/service/completion/CompletionServiceProvider.d.ts +5 -5
  85. package/dist/src/service/completion/CompletionServiceProvider.d.ts.map +1 -1
  86. package/dist/src/service/completion/CompletionServiceProvider.js +6 -7
  87. package/dist/src/service/completion/DefaultCompletionService.d.ts +3 -3
  88. package/dist/src/service/completion/DefaultCompletionService.d.ts.map +1 -1
  89. package/dist/src/service/completion/DefaultCompletionService.js +1 -1
  90. package/dist/src/service/completion/command/CompletionCompleteSubCommand.d.ts +5 -5
  91. package/dist/src/service/completion/command/CompletionCompleteSubCommand.d.ts.map +1 -1
  92. package/dist/src/service/completion/command/CompletionCompleteSubCommand.js +3 -3
  93. package/dist/src/service/completion/command/CompletionGroupCommand.d.ts +3 -3
  94. package/dist/src/service/completion/command/CompletionGroupCommand.d.ts.map +1 -1
  95. package/dist/src/service/completion/command/CompletionIntegrationSubCommand.d.ts +5 -5
  96. package/dist/src/service/completion/command/CompletionIntegrationSubCommand.d.ts.map +1 -1
  97. package/dist/src/service/completion/command/CompletionIntegrationSubCommand.js +3 -3
  98. package/dist/src/service/completion/shell/ShellHandler.d.ts +1 -1
  99. package/dist/src/service/completion/shell/ShellHandler.d.ts.map +1 -1
  100. package/dist/src/service/completion/shell/bash.d.ts +1 -1
  101. package/dist/src/service/completion/shell/bash.d.ts.map +1 -1
  102. package/dist/src/service/completion/shell/fish.d.ts +1 -1
  103. package/dist/src/service/completion/shell/fish.d.ts.map +1 -1
  104. package/dist/src/service/completion/shell/powershell.d.ts +1 -1
  105. package/dist/src/service/completion/shell/powershell.d.ts.map +1 -1
  106. package/dist/src/service/completion/shell/zsh.d.ts +1 -1
  107. package/dist/src/service/completion/shell/zsh.d.ts.map +1 -1
  108. package/dist/src/service/configuration/ConfigurationServiceProvider.d.ts +5 -5
  109. package/dist/src/service/configuration/ConfigurationServiceProvider.d.ts.map +1 -1
  110. package/dist/src/service/configuration/ConfigurationServiceProvider.js +1 -1
  111. package/dist/src/service/configuration/DefaultKeyValueService.d.ts +1 -1
  112. package/dist/src/service/configuration/DefaultKeyValueService.d.ts.map +1 -1
  113. package/dist/src/service/configuration/DefaultKeyValueService.js +1 -1
  114. package/dist/src/service/configuration/DefaultSecretService.d.ts +1 -1
  115. package/dist/src/service/configuration/DefaultSecretService.d.ts.map +1 -1
  116. package/dist/src/service/configuration/command/ConfigCommand.d.ts +4 -4
  117. package/dist/src/service/configuration/command/ConfigCommand.d.ts.map +1 -1
  118. package/dist/src/service/configuration/command/ConfigCommand.js +1 -1
  119. package/dist/src/service/configuration/command/DumpConfigCommand.d.ts +2 -2
  120. package/dist/src/service/configuration/command/DumpConfigCommand.d.ts.map +1 -1
  121. package/dist/src/service/configuration/command/DumpConfigCommand.js +2 -2
  122. package/dist/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.d.ts +3 -3
  123. package/dist/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.d.ts.map +1 -1
  124. package/dist/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.js +2 -2
  125. package/dist/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.d.ts +2 -2
  126. package/dist/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.d.ts.map +1 -1
  127. package/dist/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.js +1 -1
  128. package/dist/src/service/imagePrinter/DefaultImagePrinterService.d.ts +1 -1
  129. package/dist/src/service/imagePrinter/DefaultImagePrinterService.d.ts.map +1 -1
  130. package/dist/src/service/imagePrinter/ImagePrinterServiceProvider.d.ts +3 -3
  131. package/dist/src/service/imagePrinter/ImagePrinterServiceProvider.d.ts.map +1 -1
  132. package/dist/src/service/imagePrinter/ImagePrinterServiceProvider.js +1 -1
  133. package/dist/src/service/plugin/DefaultPluginService.d.ts +1 -1
  134. package/dist/src/service/plugin/DefaultPluginService.d.ts.map +1 -1
  135. package/dist/src/service/plugin/DefaultPluginServiceProvider.d.ts +3 -3
  136. package/dist/src/service/plugin/DefaultPluginServiceProvider.d.ts.map +1 -1
  137. package/dist/src/service/plugin/DefaultPluginServiceProvider.js +1 -1
  138. package/dist/src/service/plugin/command/PluginAddSubCommand.d.ts +4 -4
  139. package/dist/src/service/plugin/command/PluginAddSubCommand.d.ts.map +1 -1
  140. package/dist/src/service/plugin/command/PluginAddSubCommand.js +3 -3
  141. package/dist/src/service/plugin/command/PluginGroupCommand.d.ts +3 -3
  142. package/dist/src/service/plugin/command/PluginGroupCommand.d.ts.map +1 -1
  143. package/dist/src/service/plugin/command/PluginListSubCommand.d.ts +3 -3
  144. package/dist/src/service/plugin/command/PluginListSubCommand.d.ts.map +1 -1
  145. package/dist/src/service/plugin/command/PluginListSubCommand.js +2 -2
  146. package/dist/src/service/plugin/command/PluginRemoveSubCommand.d.ts +4 -4
  147. package/dist/src/service/plugin/command/PluginRemoveSubCommand.d.ts.map +1 -1
  148. package/dist/src/service/plugin/command/PluginRemoveSubCommand.js +3 -3
  149. package/dist/src/service/plugin/command/PluginSearchSubCommand.d.ts +4 -4
  150. package/dist/src/service/plugin/command/PluginSearchSubCommand.d.ts.map +1 -1
  151. package/dist/src/service/plugin/command/PluginSearchSubCommand.js +3 -3
  152. package/dist/src/service/plugin/command/PluginUpgradeSubCommand.d.ts +3 -3
  153. package/dist/src/service/plugin/command/PluginUpgradeSubCommand.d.ts.map +1 -1
  154. package/dist/src/service/plugin/command/PluginUpgradeSubCommand.js +2 -2
  155. package/dist/src/service/prettyPrinter/DefaultPrettyPrinterService.d.ts +2 -2
  156. package/dist/src/service/prettyPrinter/DefaultPrettyPrinterService.d.ts.map +1 -1
  157. package/dist/src/service/prettyPrinter/PrettyPrinterServiceProvider.d.ts +3 -3
  158. package/dist/src/service/prettyPrinter/PrettyPrinterServiceProvider.d.ts.map +1 -1
  159. package/dist/src/service/prettyPrinter/PrettyPrinterServiceProvider.js +1 -1
  160. package/dist/src/service/printer/DefaultPrinterService.d.ts +7 -2
  161. package/dist/src/service/printer/DefaultPrinterService.d.ts.map +1 -1
  162. package/dist/src/service/printer/DefaultPrinterService.js +60 -3
  163. package/dist/src/service/printer/PrinterServiceProvider.d.ts +4 -4
  164. package/dist/src/service/printer/PrinterServiceProvider.d.ts.map +1 -1
  165. package/dist/src/service/printer/PrinterServiceProvider.js +2 -2
  166. package/dist/src/service/printer/command/DarkModeCommand.d.ts +4 -4
  167. package/dist/src/service/printer/command/DarkModeCommand.d.ts.map +1 -1
  168. package/dist/src/service/printer/command/DarkModeCommand.js +1 -1
  169. package/dist/src/service/printer/command/LogLevelCommand.d.ts +4 -4
  170. package/dist/src/service/printer/command/LogLevelCommand.d.ts.map +1 -1
  171. package/dist/src/service/printer/command/LogLevelCommand.js +2 -2
  172. package/dist/src/service/printer/command/NoColorCommand.d.ts +4 -4
  173. package/dist/src/service/printer/command/NoColorCommand.d.ts.map +1 -1
  174. package/dist/src/service/printer/command/NoColorCommand.js +1 -1
  175. package/dist/src/service/printer/command/NoHyperlinksCommand.d.ts +4 -4
  176. package/dist/src/service/printer/command/NoHyperlinksCommand.d.ts.map +1 -1
  177. package/dist/src/service/printer/command/NoHyperlinksCommand.js +1 -1
  178. package/dist/src/service/printer/terminal/Progress.d.ts +2 -2
  179. package/dist/src/service/printer/terminal/Progress.d.ts.map +1 -1
  180. package/dist/src/service/printer/terminal/Progress.js +2 -2
  181. package/dist/src/service/printer/terminal/Quote.d.ts +10 -0
  182. package/dist/src/service/printer/terminal/Quote.d.ts.map +1 -0
  183. package/dist/src/service/printer/terminal/Quote.js +50 -0
  184. package/dist/src/service/printer/terminal/Spinner.d.ts +2 -2
  185. package/dist/src/service/printer/terminal/Spinner.d.ts.map +1 -1
  186. package/dist/src/service/printer/terminal/Spinner.js +2 -2
  187. package/dist/src/service/prompter/DefaultPrompterService.d.ts +3 -3
  188. package/dist/src/service/prompter/DefaultPrompterService.d.ts.map +1 -1
  189. package/dist/src/service/prompter/DefaultPrompterService.js +1 -1
  190. package/dist/src/service/prompter/PrompterServiceProvider.d.ts +4 -4
  191. package/dist/src/service/prompter/PrompterServiceProvider.d.ts.map +1 -1
  192. package/dist/src/service/prompter/PrompterServiceProvider.js +1 -1
  193. package/dist/src/service/prompter/command/NoPromptCommand.d.ts +4 -4
  194. package/dist/src/service/prompter/command/NoPromptCommand.d.ts.map +1 -1
  195. package/dist/src/service/prompter/command/NoPromptCommand.js +1 -1
  196. package/dist/src/service/prompter/prompt/PromptContext.d.ts +2 -2
  197. package/dist/src/service/prompter/prompt/PromptContext.d.ts.map +1 -1
  198. package/dist/src/service/prompter/prompt/promptAcknowledge.d.ts +1 -1
  199. package/dist/src/service/prompter/prompt/promptAcknowledge.d.ts.map +1 -1
  200. package/dist/src/service/prompter/prompt/promptAcknowledge.js +1 -1
  201. package/dist/src/service/prompter/prompt/promptMultiSelect.d.ts +1 -1
  202. package/dist/src/service/prompter/prompt/promptMultiSelect.d.ts.map +1 -1
  203. package/dist/src/service/prompter/prompt/promptOpenUrl.d.ts +1 -1
  204. package/dist/src/service/prompter/prompt/promptOpenUrl.d.ts.map +1 -1
  205. package/dist/src/service/prompter/prompt/promptSingleSelect.d.ts +1 -1
  206. package/dist/src/service/prompter/prompt/promptSingleSelect.d.ts.map +1 -1
  207. package/dist/src/service/prompter/prompt/promptText.d.ts +1 -1
  208. package/dist/src/service/prompter/prompt/promptText.d.ts.map +1 -1
  209. package/dist/src/service/prompter/prompt/promptToggle.d.ts +1 -1
  210. package/dist/src/service/prompter/prompt/promptToggle.d.ts.map +1 -1
  211. package/dist/src/service/prompter/prompt/promptToggle.js +1 -1
  212. package/dist/src/service/shutdown/DefaultShutdownService.d.ts +1 -1
  213. package/dist/src/service/shutdown/DefaultShutdownService.d.ts.map +1 -1
  214. package/dist/src/service/shutdown/ShutdownServiceProvider.d.ts +3 -3
  215. package/dist/src/service/shutdown/ShutdownServiceProvider.d.ts.map +1 -1
  216. package/dist/src/service/shutdown/ShutdownServiceProvider.js +1 -1
  217. package/dist/src/service/syntaxHighlighter/DefaultSyntaxHighlighterService.d.ts +2 -2
  218. package/dist/src/service/syntaxHighlighter/DefaultSyntaxHighlighterService.d.ts.map +1 -1
  219. package/dist/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.d.ts +3 -3
  220. package/dist/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.d.ts.map +1 -1
  221. package/dist/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.js +2 -2
  222. package/dist/src/service/tableGenerator/DefaultTableGeneratorService.d.ts +3 -3
  223. package/dist/src/service/tableGenerator/DefaultTableGeneratorService.d.ts.map +1 -1
  224. package/dist/src/service/tableGenerator/DefaultTableGeneratorService.js +2 -2
  225. package/dist/src/service/tableGenerator/TableGeneratorServiceProvider.d.ts +3 -3
  226. package/dist/src/service/tableGenerator/TableGeneratorServiceProvider.d.ts.map +1 -1
  227. package/dist/src/service/tableGenerator/TableGeneratorServiceProvider.js +2 -2
  228. package/dist/src/service/treePrinter/DefaultTreePrinterService.d.ts +2 -2
  229. package/dist/src/service/treePrinter/DefaultTreePrinterService.d.ts.map +1 -1
  230. package/dist/src/service/treePrinter/TreePrinterServiceProvider.d.ts +3 -3
  231. package/dist/src/service/treePrinter/TreePrinterServiceProvider.d.ts.map +1 -1
  232. package/dist/src/service/treePrinter/TreePrinterServiceProvider.js +2 -2
  233. package/dist/src/terminal/ImageRenderer.d.ts.map +1 -1
  234. package/dist/src/terminal/ImageRenderer.js +7 -5
  235. package/dist/src/util/configHelper.d.ts +4 -4
  236. package/dist/src/util/configHelper.d.ts.map +1 -1
  237. package/dist/src/util/envVarHelper.d.ts +4 -4
  238. package/dist/src/util/envVarHelper.d.ts.map +1 -1
  239. package/dist/src/util/envVarHelper.js +2 -2
  240. package/dist/src/util/helpHelper.d.ts +8 -8
  241. package/dist/src/util/helpHelper.d.ts.map +1 -1
  242. package/dist/src/util/helpHelper.js +1 -1
  243. package/dist/src/util/runnerHelper.d.ts +2 -2
  244. package/dist/src/util/runnerHelper.d.ts.map +1 -1
  245. package/dist/src/util/runnerHelper.js +1 -1
  246. package/index.ts +70 -69
  247. package/package.json +2 -1
  248. package/src/cli/BaseCLI.ts +10 -11
  249. package/src/cli/DefaultRuntimeCLI.ts +3 -3
  250. package/src/cli/DynamicPluginRuntimeCLI.ts +8 -8
  251. package/src/command/MultiCommandCliHelpCommand.ts +13 -13
  252. package/src/command/SingleCommandCliHelpCommand.ts +12 -12
  253. package/src/command/UsageCommand.ts +5 -5
  254. package/src/command/VersionCommand.ts +4 -4
  255. package/src/launcher.ts +8 -6
  256. package/src/runtime/DefaultContext.ts +2 -2
  257. package/src/runtime/argument/ArgumentTypeGuards.ts +2 -2
  258. package/src/runtime/command/CommandTypeGuards.ts +5 -5
  259. package/src/runtime/command/CommandValidator.ts +13 -13
  260. package/src/runtime/parser.ts +6 -38
  261. package/src/runtime/registry/DefaultCommandRegistry.ts +6 -6
  262. package/src/runtime/registry/DefaultServiceProviderRegistry.ts +2 -2
  263. package/src/runtime/runner.ts +13 -13
  264. package/src/runtime/scanner.ts +4 -4
  265. package/src/runtime/values/ValuePopulationResult.ts +2 -2
  266. package/src/runtime/values/argumentValueMerge.ts +3 -3
  267. package/src/runtime/values/argumentValueValidation.ts +10 -10
  268. package/src/runtime/values/globalCommandValuePopulation.ts +4 -4
  269. package/src/runtime/values/subCommandValuePopulation.ts +10 -7
  270. package/src/service/argumentPrompter/ArgumentPrompterServiceProvider.ts +5 -5
  271. package/src/service/argumentPrompter/DefaultArgumentPrompterService.ts +12 -12
  272. package/src/service/asciiBannerGenerator/AsciiBannerGeneratorServiceProvider.ts +5 -5
  273. package/src/service/asciiBannerGenerator/DefaultAsciiBannerGeneratorService.ts +2 -5
  274. package/src/service/banner/BannerServiceProvider.ts +7 -7
  275. package/src/service/banner/command/NoBannerCommand.ts +4 -4
  276. package/src/service/chiselAsciiBannerGenerator/ChiselFontAsciiBannerGeneratorService.ts +2 -2
  277. package/src/service/completion/CompletionServiceProvider.ts +14 -15
  278. package/src/service/completion/DefaultCompletionService.ts +5 -5
  279. package/src/service/completion/command/CompletionCompleteSubCommand.ts +8 -8
  280. package/src/service/completion/command/CompletionGroupCommand.ts +3 -3
  281. package/src/service/completion/command/CompletionIntegrationSubCommand.ts +8 -8
  282. package/src/service/completion/shell/ShellHandler.ts +1 -1
  283. package/src/service/completion/shell/bash.ts +1 -1
  284. package/src/service/completion/shell/fish.ts +1 -1
  285. package/src/service/completion/shell/powershell.ts +1 -1
  286. package/src/service/completion/shell/zsh.ts +1 -1
  287. package/src/service/configuration/ConfigurationServiceProvider.ts +6 -6
  288. package/src/service/configuration/DefaultKeyValueService.ts +2 -2
  289. package/src/service/configuration/DefaultSecretService.ts +1 -1
  290. package/src/service/configuration/command/ConfigCommand.ts +4 -4
  291. package/src/service/configuration/command/DumpConfigCommand.ts +6 -6
  292. package/src/service/dataDumpGenerator/DataDumpGeneratorServiceProvider.ts +6 -6
  293. package/src/service/dataDumpGenerator/DefaultDataDumpGeneratorService.ts +2 -2
  294. package/src/service/imagePrinter/DefaultImagePrinterService.ts +1 -1
  295. package/src/service/imagePrinter/ImagePrinterServiceProvider.ts +4 -4
  296. package/src/service/plugin/DefaultPluginService.ts +1 -1
  297. package/src/service/plugin/DefaultPluginServiceProvider.ts +4 -4
  298. package/src/service/plugin/command/PluginAddSubCommand.ts +8 -8
  299. package/src/service/plugin/command/PluginGroupCommand.ts +3 -3
  300. package/src/service/plugin/command/PluginListSubCommand.ts +7 -7
  301. package/src/service/plugin/command/PluginRemoveSubCommand.ts +8 -8
  302. package/src/service/plugin/command/PluginSearchSubCommand.ts +8 -8
  303. package/src/service/plugin/command/PluginUpgradeSubCommand.ts +7 -7
  304. package/src/service/prettyPrinter/DefaultPrettyPrinterService.ts +3 -3
  305. package/src/service/prettyPrinter/PrettyPrinterServiceProvider.ts +4 -4
  306. package/src/service/printer/DefaultPrinterService.ts +70 -8
  307. package/src/service/printer/PrinterServiceProvider.ts +7 -7
  308. package/src/service/printer/command/DarkModeCommand.ts +4 -4
  309. package/src/service/printer/command/LogLevelCommand.ts +5 -5
  310. package/src/service/printer/command/NoColorCommand.ts +4 -4
  311. package/src/service/printer/command/NoHyperlinksCommand.ts +4 -4
  312. package/src/service/printer/terminal/Progress.ts +2 -2
  313. package/src/service/printer/terminal/Quote.ts +66 -0
  314. package/src/service/printer/terminal/Spinner.ts +2 -2
  315. package/src/service/prompter/DefaultPrompterService.ts +3 -3
  316. package/src/service/prompter/PrompterServiceProvider.ts +5 -5
  317. package/src/service/prompter/command/NoPromptCommand.ts +4 -4
  318. package/src/service/prompter/prompt/PromptContext.ts +2 -2
  319. package/src/service/prompter/prompt/promptAcknowledge.ts +1 -1
  320. package/src/service/prompter/prompt/promptMultiSelect.ts +1 -1
  321. package/src/service/prompter/prompt/promptOpenUrl.ts +1 -1
  322. package/src/service/prompter/prompt/promptSingleSelect.ts +1 -1
  323. package/src/service/prompter/prompt/promptText.ts +2 -2
  324. package/src/service/prompter/prompt/promptToggle.ts +1 -1
  325. package/src/service/shutdown/DefaultShutdownService.ts +1 -1
  326. package/src/service/shutdown/ShutdownServiceProvider.ts +5 -5
  327. package/src/service/syntaxHighlighter/DefaultSyntaxHighlighterService.ts +2 -2
  328. package/src/service/syntaxHighlighter/SyntaxHighlighterServiceProvider.ts +6 -6
  329. package/src/service/tableGenerator/DefaultTableGeneratorService.ts +4 -4
  330. package/src/service/tableGenerator/TableGeneratorServiceProvider.ts +6 -6
  331. package/src/service/treePrinter/DefaultTreePrinterService.ts +2 -2
  332. package/src/service/treePrinter/TreePrinterServiceProvider.ts +6 -6
  333. package/src/terminal/ImageRenderer.ts +7 -5
  334. package/src/util/configHelper.ts +6 -6
  335. package/src/util/envVarHelper.ts +10 -10
  336. package/src/util/helpHelper.ts +19 -16
  337. package/src/util/runnerHelper.ts +4 -4
  338. package/dist/src/api/CLI.d.ts +0 -17
  339. package/dist/src/api/CLI.d.ts.map +0 -1
  340. package/dist/src/api/CLI.js +0 -0
  341. package/dist/src/api/CLIConfig.d.ts +0 -22
  342. package/dist/src/api/CLIConfig.d.ts.map +0 -1
  343. package/dist/src/api/CLIConfig.js +0 -0
  344. package/dist/src/api/Context.d.ts +0 -23
  345. package/dist/src/api/Context.d.ts.map +0 -1
  346. package/dist/src/api/Context.js +0 -0
  347. package/dist/src/api/RunResult.d.ts +0 -128
  348. package/dist/src/api/RunResult.d.ts.map +0 -1
  349. package/dist/src/api/RunResult.js +0 -73
  350. package/dist/src/api/argument/Argument.d.ts +0 -62
  351. package/dist/src/api/argument/Argument.d.ts.map +0 -1
  352. package/dist/src/api/argument/Argument.js +0 -0
  353. package/dist/src/api/argument/ArgumentValueTypes.d.ts +0 -68
  354. package/dist/src/api/argument/ArgumentValueTypes.d.ts.map +0 -1
  355. package/dist/src/api/argument/ArgumentValueTypes.js +0 -18
  356. package/dist/src/api/argument/ComplexOption.d.ts +0 -21
  357. package/dist/src/api/argument/ComplexOption.d.ts.map +0 -1
  358. package/dist/src/api/argument/ComplexOption.js +0 -1
  359. package/dist/src/api/argument/GlobalCommandArgument.d.ts +0 -16
  360. package/dist/src/api/argument/GlobalCommandArgument.d.ts.map +0 -1
  361. package/dist/src/api/argument/GlobalCommandArgument.js +0 -0
  362. package/dist/src/api/argument/Option.d.ts +0 -29
  363. package/dist/src/api/argument/Option.d.ts.map +0 -1
  364. package/dist/src/api/argument/Option.js +0 -0
  365. package/dist/src/api/argument/Positional.d.ts +0 -26
  366. package/dist/src/api/argument/Positional.d.ts.map +0 -1
  367. package/dist/src/api/argument/Positional.js +0 -0
  368. package/dist/src/api/argument/SubCommandArgument.d.ts +0 -18
  369. package/dist/src/api/argument/SubCommandArgument.d.ts.map +0 -1
  370. package/dist/src/api/argument/SubCommandArgument.js +0 -1
  371. package/dist/src/api/command/Command.d.ts +0 -26
  372. package/dist/src/api/command/Command.d.ts.map +0 -1
  373. package/dist/src/api/command/Command.js +0 -0
  374. package/dist/src/api/command/GlobalCommand.d.ts +0 -28
  375. package/dist/src/api/command/GlobalCommand.d.ts.map +0 -1
  376. package/dist/src/api/command/GlobalCommand.js +0 -0
  377. package/dist/src/api/command/GlobalModifierCommand.d.ts +0 -12
  378. package/dist/src/api/command/GlobalModifierCommand.d.ts.map +0 -1
  379. package/dist/src/api/command/GlobalModifierCommand.js +0 -0
  380. package/dist/src/api/command/GroupCommand.d.ts +0 -19
  381. package/dist/src/api/command/GroupCommand.d.ts.map +0 -1
  382. package/dist/src/api/command/GroupCommand.js +0 -0
  383. package/dist/src/api/command/SubCommand.d.ts +0 -37
  384. package/dist/src/api/command/SubCommand.d.ts.map +0 -1
  385. package/dist/src/api/command/SubCommand.js +0 -0
  386. package/dist/src/api/command/UsageExample.d.ts +0 -20
  387. package/dist/src/api/command/UsageExample.d.ts.map +0 -1
  388. package/dist/src/api/command/UsageExample.js +0 -0
  389. package/dist/src/api/plugin/CLIPlugin.d.ts +0 -31
  390. package/dist/src/api/plugin/CLIPlugin.d.ts.map +0 -1
  391. package/dist/src/api/plugin/CLIPlugin.js +0 -2
  392. package/dist/src/api/plugin/CommandFactory.d.ts +0 -23
  393. package/dist/src/api/plugin/CommandFactory.d.ts.map +0 -1
  394. package/dist/src/api/plugin/CommandFactory.js +0 -7
  395. package/dist/src/api/plugin/ServiceProviderFactory.d.ts +0 -25
  396. package/dist/src/api/plugin/ServiceProviderFactory.d.ts.map +0 -1
  397. package/dist/src/api/plugin/ServiceProviderFactory.js +0 -7
  398. package/dist/src/api/plugin/createCLIPlugin.d.ts +0 -14
  399. package/dist/src/api/plugin/createCLIPlugin.d.ts.map +0 -1
  400. package/dist/src/api/plugin/createCLIPlugin.js +0 -30
  401. package/dist/src/api/service/ServiceProvider.d.ts +0 -47
  402. package/dist/src/api/service/ServiceProvider.d.ts.map +0 -1
  403. package/dist/src/api/service/ServiceProvider.js +0 -0
  404. package/dist/src/api/service/core/ArgumentPrompterService.d.ts +0 -6
  405. package/dist/src/api/service/core/ArgumentPrompterService.d.ts.map +0 -1
  406. package/dist/src/api/service/core/ArgumentPrompterService.js +0 -1
  407. package/dist/src/api/service/core/AsciiBannerGeneratorService.d.ts +0 -59
  408. package/dist/src/api/service/core/AsciiBannerGeneratorService.d.ts.map +0 -1
  409. package/dist/src/api/service/core/AsciiBannerGeneratorService.js +0 -1
  410. package/dist/src/api/service/core/CompletionService.d.ts +0 -22
  411. package/dist/src/api/service/core/CompletionService.d.ts.map +0 -1
  412. package/dist/src/api/service/core/CompletionService.js +0 -8
  413. package/dist/src/api/service/core/DataDumpGeneratorService.d.ts +0 -22
  414. package/dist/src/api/service/core/DataDumpGeneratorService.d.ts.map +0 -1
  415. package/dist/src/api/service/core/DataDumpGeneratorService.js +0 -7
  416. package/dist/src/api/service/core/ImagePrinterService.d.ts +0 -21
  417. package/dist/src/api/service/core/ImagePrinterService.d.ts.map +0 -1
  418. package/dist/src/api/service/core/ImagePrinterService.js +0 -1
  419. package/dist/src/api/service/core/KeyValueService.d.ts +0 -40
  420. package/dist/src/api/service/core/KeyValueService.d.ts.map +0 -1
  421. package/dist/src/api/service/core/KeyValueService.js +0 -7
  422. package/dist/src/api/service/core/PluginService.d.ts +0 -55
  423. package/dist/src/api/service/core/PluginService.d.ts.map +0 -1
  424. package/dist/src/api/service/core/PluginService.js +0 -6
  425. package/dist/src/api/service/core/PrettyPrinterService.d.ts +0 -35
  426. package/dist/src/api/service/core/PrettyPrinterService.d.ts.map +0 -1
  427. package/dist/src/api/service/core/PrettyPrinterService.js +0 -1
  428. package/dist/src/api/service/core/PrinterService.d.ts +0 -339
  429. package/dist/src/api/service/core/PrinterService.d.ts.map +0 -1
  430. package/dist/src/api/service/core/PrinterService.js +0 -42
  431. package/dist/src/api/service/core/PrompterService.d.ts +0 -35
  432. package/dist/src/api/service/core/PrompterService.d.ts.map +0 -1
  433. package/dist/src/api/service/core/PrompterService.js +0 -10
  434. package/dist/src/api/service/core/SecretService.d.ts +0 -25
  435. package/dist/src/api/service/core/SecretService.d.ts.map +0 -1
  436. package/dist/src/api/service/core/SecretService.js +0 -0
  437. package/dist/src/api/service/core/ShutdownService.d.ts +0 -24
  438. package/dist/src/api/service/core/ShutdownService.d.ts.map +0 -1
  439. package/dist/src/api/service/core/ShutdownService.js +0 -1
  440. package/dist/src/api/service/core/SyntaxHighlighterService.d.ts +0 -49
  441. package/dist/src/api/service/core/SyntaxHighlighterService.d.ts.map +0 -1
  442. package/dist/src/api/service/core/SyntaxHighlighterService.js +0 -1
  443. package/dist/src/api/service/core/Table.d.ts +0 -18
  444. package/dist/src/api/service/core/Table.d.ts.map +0 -1
  445. package/dist/src/api/service/core/Table.js +0 -49
  446. package/dist/src/api/service/core/TableGeneratorService.d.ts +0 -32
  447. package/dist/src/api/service/core/TableGeneratorService.d.ts.map +0 -1
  448. package/dist/src/api/service/core/TableGeneratorService.js +0 -7
  449. package/dist/src/api/service/core/TreePrinterService.d.ts +0 -9
  450. package/dist/src/api/service/core/TreePrinterService.d.ts.map +0 -1
  451. package/dist/src/api/service/core/TreePrinterService.js +0 -1
  452. package/dist/src/runtime/registry/CommandRegistry.d.ts +0 -89
  453. package/dist/src/runtime/registry/CommandRegistry.d.ts.map +0 -1
  454. package/dist/src/runtime/registry/CommandRegistry.js +0 -0
  455. package/dist/src/runtime/registry/ServiceProviderRegistry.d.ts +0 -11
  456. package/dist/src/runtime/registry/ServiceProviderRegistry.d.ts.map +0 -1
  457. package/dist/src/runtime/registry/ServiceProviderRegistry.js +0 -0
  458. package/src/api/CLI.ts +0 -17
  459. package/src/api/CLIConfig.ts +0 -24
  460. package/src/api/Context.ts +0 -25
  461. package/src/api/RunResult.ts +0 -158
  462. package/src/api/argument/Argument.ts +0 -75
  463. package/src/api/argument/ArgumentValueTypes.ts +0 -80
  464. package/src/api/argument/ComplexOption.ts +0 -27
  465. package/src/api/argument/GlobalCommandArgument.ts +0 -17
  466. package/src/api/argument/Option.ts +0 -32
  467. package/src/api/argument/Positional.ts +0 -27
  468. package/src/api/argument/SubCommandArgument.ts +0 -20
  469. package/src/api/command/Command.ts +0 -28
  470. package/src/api/command/GlobalCommand.ts +0 -30
  471. package/src/api/command/GlobalModifierCommand.ts +0 -12
  472. package/src/api/command/GroupCommand.ts +0 -20
  473. package/src/api/command/SubCommand.ts +0 -41
  474. package/src/api/command/UsageExample.ts +0 -21
  475. package/src/api/plugin/CLIPlugin.ts +0 -35
  476. package/src/api/plugin/CommandFactory.ts +0 -25
  477. package/src/api/plugin/ServiceProviderFactory.ts +0 -27
  478. package/src/api/plugin/createCLIPlugin.ts +0 -47
  479. package/src/api/service/ServiceProvider.ts +0 -52
  480. package/src/api/service/core/ArgumentPrompterService.ts +0 -8
  481. package/src/api/service/core/AsciiBannerGeneratorService.ts +0 -69
  482. package/src/api/service/core/CompletionService.ts +0 -32
  483. package/src/api/service/core/DataDumpGeneratorService.ts +0 -27
  484. package/src/api/service/core/ImagePrinterService.ts +0 -25
  485. package/src/api/service/core/KeyValueService.ts +0 -44
  486. package/src/api/service/core/PluginService.ts +0 -63
  487. package/src/api/service/core/PrettyPrinterService.ts +0 -39
  488. package/src/api/service/core/PrinterService.ts +0 -400
  489. package/src/api/service/core/PrompterService.ts +0 -42
  490. package/src/api/service/core/SecretService.ts +0 -27
  491. package/src/api/service/core/ShutdownService.ts +0 -27
  492. package/src/api/service/core/SyntaxHighlighterService.ts +0 -54
  493. package/src/api/service/core/Table.ts +0 -67
  494. package/src/api/service/core/TableGeneratorService.ts +0 -39
  495. package/src/api/service/core/TreePrinterService.ts +0 -10
  496. package/src/runtime/registry/CommandRegistry.ts +0 -116
  497. package/src/runtime/registry/ServiceProviderRegistry.ts +0 -11
  498. /package/dist/src/{api → cli}/BaseCLIFeatureOptions.d.ts +0 -0
  499. /package/dist/src/{api → cli}/BaseCLIFeatureOptions.js +0 -0
  500. /package/src/{api → cli}/BaseCLIFeatureOptions.ts +0 -0
@@ -1,49 +0,0 @@
1
- export default class Table {
2
- rowCount;
3
- columnCount;
4
- options;
5
- #columnOptions = new Map();
6
- #rowOptions = new Map();
7
- #cells = new Map();
8
- constructor(rowCount, columnCount, options) {
9
- this.rowCount = rowCount;
10
- this.columnCount = columnCount;
11
- this.options = options ?? {};
12
- }
13
- row(rowIndex, rowOptions) {
14
- if (rowIndex < 0 || rowIndex >= this.rowCount) {
15
- throw new Error(`Row index ${rowIndex} out of bounds [0, ${this.rowCount})`);
16
- }
17
- this.#rowOptions.set(rowIndex, rowOptions);
18
- return this;
19
- }
20
- column(columnIndex, columnOptions) {
21
- if (columnIndex < 0 || columnIndex >= this.columnCount) {
22
- throw new Error(`Column index ${columnIndex} out of bounds [0, ${this.columnCount})`);
23
- }
24
- this.#columnOptions.set(columnIndex, columnOptions);
25
- return this;
26
- }
27
- cell(rowIndex, columnIndex, contents, cellOptions) {
28
- if (rowIndex < 0 || rowIndex >= this.rowCount) {
29
- throw new Error(`Row index ${rowIndex} out of bounds [0, ${this.rowCount})`);
30
- }
31
- if (columnIndex < 0 || columnIndex >= this.columnCount) {
32
- throw new Error(`Column index ${columnIndex} out of bounds [0, ${this.columnCount})`);
33
- }
34
- this.#cells.set(`${rowIndex},${columnIndex}`, {
35
- contents,
36
- options: cellOptions,
37
- });
38
- return this;
39
- }
40
- getColumnOptions(columnIndex) {
41
- return this.#columnOptions.get(columnIndex);
42
- }
43
- getRowOptions(rowIndex) {
44
- return this.#rowOptions.get(rowIndex);
45
- }
46
- getCell(rowIndex, columnIndex) {
47
- return this.#cells.get(`${rowIndex},${columnIndex}`);
48
- }
49
- }
@@ -1,32 +0,0 @@
1
- export declare const TABLE_GENERATOR_SERVICE_ID = "@flowscripter/dynamic-cli-framework/table-generator-service";
2
- export declare enum Align {
3
- LEFT = 0,
4
- CENTER = 1,
5
- RIGHT = 2
6
- }
7
- export interface TableOptions {
8
- border?: boolean;
9
- borderColor?: string;
10
- borderBackgroundColor?: string;
11
- padding?: number;
12
- maxWidth?: number;
13
- align?: Align;
14
- }
15
- export interface ColumnOptions {
16
- flexWeight?: number;
17
- minWidth?: number;
18
- maxWidth?: number;
19
- align?: Align;
20
- }
21
- export interface RowOptions {
22
- align?: Align;
23
- }
24
- export interface CellOptions {
25
- align?: Align;
26
- }
27
- export default interface TableGeneratorService {
28
- createTable(rowCount: number, columnCount: number, options?: TableOptions): Table;
29
- render(table: Table): string;
30
- }
31
- import type Table from "./Table.ts";
32
- //# sourceMappingURL=TableGeneratorService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableGeneratorService.d.ts","sourceRoot":"","sources":["../../../../../src/api/service/core/TableGeneratorService.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B,gEACwB,CAAC;AAEhE,oBAAY,KAAK;IACf,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;CACV;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,MAAM,CAAC,OAAO,WAAW,qBAAqB;IAC5C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC;IAClF,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CAC9B;AAED,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC"}
@@ -1,7 +0,0 @@
1
- export const TABLE_GENERATOR_SERVICE_ID = "@flowscripter/dynamic-cli-framework/table-generator-service";
2
- export var Align;
3
- (function (Align) {
4
- Align[Align["LEFT"] = 0] = "LEFT";
5
- Align[Align["CENTER"] = 1] = "CENTER";
6
- Align[Align["RIGHT"] = 2] = "RIGHT";
7
- })(Align || (Align = {}));
@@ -1,9 +0,0 @@
1
- export declare const TREE_PRINTER_SERVICE_ID = "@flowscripter/dynamic-cli-framework/tree-printer-service";
2
- export interface TreeNode {
3
- label: string;
4
- children?: Array<TreeNode | string>;
5
- }
6
- export default interface TreePrinterService {
7
- print(node: TreeNode): string;
8
- }
9
- //# sourceMappingURL=TreePrinterService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TreePrinterService.d.ts","sourceRoot":"","sources":["../../../../../src/api/service/core/TreePrinterService.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,6DAA6D,CAAC;AAElG,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,CAAC,OAAO,WAAW,kBAAkB;IACzC,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC/B"}
@@ -1 +0,0 @@
1
- export const TREE_PRINTER_SERVICE_ID = "@flowscripter/dynamic-cli-framework/tree-printer-service";
@@ -1,89 +0,0 @@
1
- import type GroupCommand from "../../api/command/GroupCommand.ts";
2
- import type SubCommand from "../../api/command/SubCommand.ts";
3
- import type GlobalCommand from "../../api/command/GlobalCommand.ts";
4
- import type GlobalModifierCommand from "../../api/command/GlobalModifierCommand.ts";
5
- import type Command from "../../api/command/Command.ts";
6
- /**
7
- * Interface used by a {@link CLI} to register {@link Command} instances.
8
- */
9
- export default interface CommandRegistry {
10
- /**
11
- * Get all registered {@link SubCommand} instances.
12
- */
13
- getSubCommands(): ReadonlyArray<SubCommand>;
14
- /**
15
- * Get all registered {@link GroupCommand} instances.
16
- */
17
- getGroupCommands(): ReadonlyArray<GroupCommand>;
18
- /**
19
- * Get all registered {@link GlobalCommand} instances.
20
- */
21
- getGlobalCommands(): ReadonlyArray<GlobalCommand>;
22
- /**
23
- * Get all registered {@link GlobalModifierCommand} instances.
24
- */
25
- getGlobalModifierCommands(): ReadonlyArray<GlobalModifierCommand>;
26
- /**
27
- * Get a registered {@link SubCommand} by name.
28
- */
29
- getSubCommandByName(name: string): SubCommand | undefined;
30
- /**
31
- * Get a registered {@link GroupCommand} by name.
32
- */
33
- getGroupCommandByName(name: string): GroupCommand | undefined;
34
- /**
35
- * Get a registered {@link GroupCommand} and member {@link SubCommand} by
36
- * combined name e.g. `<group-command-name>:<member-sub-command-name>`.
37
- */
38
- getGroupCommandAndMemberSubCommandByJoinedName(getGroupCommandAndMemberSubCommandByName: string): {
39
- groupCommand: GroupCommand;
40
- command: SubCommand;
41
- } | undefined;
42
- /**
43
- * Get a registered {@link GlobalCommand} by name.
44
- */
45
- getGlobalCommandByName(name: string): GlobalCommand | undefined;
46
- /**
47
- * Get a registered {@link GlobalCommand} by short alias.
48
- */
49
- /**
50
- * Get a registered {@link GlobalModifierCommand} by name.
51
- */
52
- getGlobalModifierCommandByName(name: string): GlobalModifierCommand | undefined;
53
- /**
54
- * Get a registered {@link GlobalModifierCommand} by short alias.
55
- */
56
- /**
57
- * Get a map of all registered {@link GroupCommand} and member {@link SubCommand} instance combinations by
58
- * combined name e.g. `<group-command-name>:<member-sub-command-name>`.
59
- */
60
- getGroupAndMemberCommandsByJoinedName(): ReadonlyMap<string, {
61
- groupCommand: GroupCommand;
62
- command: SubCommand;
63
- }>;
64
- /**
65
- * Get a map of all registered {@link GlobalModifierCommand} instances by name provided by the specified service.
66
- */
67
- getGlobalModifierCommandsByNameProvidedByService(serviceId: string): ReadonlyMap<string, GlobalModifierCommand>;
68
- /**
69
- * Get a map of all registered {@link GlobalModifierCommand} instances by short alias provided by the specified service.
70
- */
71
- getGlobalModifierCommandsByShortAliasProvidedByService(serviceId: string): ReadonlyMap<string, GlobalModifierCommand>;
72
- /**
73
- * Get a map of all registered {@link GlobalModifierCommand} instances by name not provided by a service.
74
- */
75
- getGlobalModifierCommandsByNameNotProvidedByService(): ReadonlyMap<string, GlobalModifierCommand>;
76
- /**
77
- * Get a map of all registered {@link GlobalModifierCommand} instances by short alias not provided by a service.
78
- */
79
- getGlobalModifierCommandsByShortAliasNotProvidedByService(): ReadonlyMap<string, GlobalModifierCommand>;
80
- /**
81
- * Get a map of all registered non-modifier {@link Command} instances by name.
82
- */
83
- getNonModifierCommandsByName(): ReadonlyMap<string, Command>;
84
- /**
85
- * Get a map of all registered {@link GlobalCommand} instances by short alias.
86
- */
87
- getGlobalCommandsByShortAlias(): ReadonlyMap<string, GlobalCommand>;
88
- }
89
- //# sourceMappingURL=CommandRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CommandRegistry.d.ts","sourceRoot":"","sources":["../../../../src/runtime/registry/CommandRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,mCAAmC,CAAC;AAClE,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AACpE,OAAO,KAAK,qBAAqB,MAAM,4CAA4C,CAAC;AACpF,OAAO,KAAK,OAAO,MAAM,8BAA8B,CAAC;AAExD;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,eAAe;IACtC;;OAEG;IACH,cAAc,IAAI,aAAa,CAAC,UAAU,CAAC,CAAC;IAE5C;;OAEG;IACH,gBAAgB,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC;IAEhD;;OAEG;IACH,iBAAiB,IAAI,aAAa,CAAC,aAAa,CAAC,CAAC;IAElD;;OAEG;IACH,yBAAyB,IAAI,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAElE;;OAEG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;IAE1D;;OAEG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAE9D;;;OAGG;IACH,8CAA8C,CAC5C,wCAAwC,EAAE,MAAM,GAC/C;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,UAAU,CAAA;KAAE,GAAG,SAAS,CAAC;IAEnE;;OAEG;IACH,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAEhE;;OAEG;IAGH;;OAEG;IACH,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,CAAC;IAEhF;;OAEG;IAKH;;;OAGG;IACH,qCAAqC,IAAI,WAAW,CAClD,MAAM,EACN;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,UAAU,CAAA;KAAE,CACpD,CAAC;IAEF;;OAEG;IACH,gDAAgD,CAC9C,SAAS,EAAE,MAAM,GAChB,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE9C;;OAEG;IACH,sDAAsD,CACpD,SAAS,EAAE,MAAM,GAChB,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE9C;;OAEG;IACH,mDAAmD,IAAI,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAElG;;OAEG;IACH,yDAAyD,IAAI,WAAW,CACtE,MAAM,EACN,qBAAqB,CACtB,CAAC;IAEF;;OAEG;IACH,4BAA4B,IAAI,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE7D;;OAEG;IACH,6BAA6B,IAAI,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACrE"}
File without changes
@@ -1,11 +0,0 @@
1
- import type { ServiceProvider } from "../../api/service/ServiceProvider.ts";
2
- /**
3
- * Interface used by a {@link CLI} to register {@link ServiceProvider} instances.
4
- */
5
- export default interface ServiceProviderRegistry {
6
- /**
7
- * Return all {@link ServiceProvider} instances registered in order of descending {@link ServiceProvider.servicePriority}
8
- */
9
- getServiceProviders(): ReadonlyArray<ServiceProvider>;
10
- }
11
- //# sourceMappingURL=ServiceProviderRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ServiceProviderRegistry.d.ts","sourceRoot":"","sources":["../../../../src/runtime/registry/ServiceProviderRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,uBAAuB;IAC9C;;OAEG;IACH,mBAAmB,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;CACvD"}
package/src/api/CLI.ts DELETED
@@ -1,17 +0,0 @@
1
- /**
2
- * Interface to be implemented by a CLI application.
3
- */
4
- import type RunResult from "./RunResult.ts";
5
- import type CLIConfig from "./CLIConfig.ts";
6
-
7
- export default interface CLI {
8
- /**
9
- * Run the CLI with the provided arguments which do not include the invoked executable name.
10
- *
11
- * @param args the arguments to parse.
12
- * @param cliConfig the {@link CLIConfig} for the CLI application.
13
- *
14
- * @return result of parsing arguments and running appropriate {@link Command} instances.
15
- */
16
- run(args: ReadonlyArray<string>, cliConfig: CLIConfig): Promise<RunResult>;
17
- }
@@ -1,24 +0,0 @@
1
- /**
2
- * Interface specifying common configuration for a {@link CLI} application.
3
- */
4
- export default interface CLIConfig {
5
- /**
6
- * Name of the CLI application.
7
- */
8
- readonly name: string;
9
-
10
- /**
11
- * Optional description of the CLI application.
12
- */
13
- readonly description?: string;
14
-
15
- /**
16
- * Optional sub-message to display below the banner.
17
- */
18
- readonly subMessage?: string;
19
-
20
- /**
21
- * Version of the CLI application.
22
- */
23
- readonly version: string;
24
- }
@@ -1,25 +0,0 @@
1
- /**
2
- * Interface allowing a {@link CLI} to pass context to a {@link Command} instance.
3
- */
4
- import type CLIConfig from "./CLIConfig.ts";
5
-
6
- export default interface Context {
7
- /**
8
- * The {@link CLIConfig} in use by the {@link CLI}.
9
- */
10
- readonly cliConfig: CLIConfig;
11
-
12
- /**
13
- * Return the service identified by the specified ID.
14
- *
15
- * @param id the ID of the service to retrieve.
16
- */
17
- getServiceById(id: string): unknown;
18
-
19
- /**
20
- * Check if the specified service exists in the context.
21
- *
22
- * @param id the ID of the desired service.
23
- */
24
- doesServiceExist(id: string): boolean;
25
- }
@@ -1,158 +0,0 @@
1
- /**
2
- * State of a {@link CLI} after invocation.
3
- */
4
- import type Command from "./command/Command.ts";
5
- import type Argument from "./argument/Argument.ts";
6
- import type ComplexOption from "./argument/ComplexOption.ts";
7
- import type {
8
- PopulatedArgumentValues,
9
- PopulatedArgumentValueType,
10
- } from "./argument/ArgumentValueTypes.ts";
11
-
12
- export enum RunState {
13
- /**
14
- * Arguments were successfully parsed and the specified command(s) were successfully executed.
15
- */
16
- SUCCESS = 0,
17
-
18
- /**
19
- * The arguments supplied were invalid or could not be parsed.
20
- */
21
- PARSE_ERROR = 1,
22
-
23
- /**
24
- * Arguments were successfully parsed but no command was discovered.
25
- */
26
- NO_COMMAND = 2,
27
-
28
- /**
29
- * Arguments were successfully parsed and command(s) discovered but command execution failed.
30
- */
31
- EXECUTION_ERROR = 3,
32
-
33
- /**
34
- * General runtime error related to the framework.
35
- */
36
- RUNTIME_ERROR = 4,
37
-
38
- /**
39
- * Execution was interrupted by a signal (e.g. Ctrl-C or SIGTERM).
40
- */
41
- INTERRUPTED = 130,
42
- }
43
-
44
- /**
45
- * Possible reasons for an invalid argument.
46
- */
47
- export enum InvalidArgumentReason {
48
- /**
49
- * The argument value was not specified.
50
- */
51
- MISSING_VALUE = 0,
52
-
53
- /**
54
- * The value specified was not the correct type for the argument.
55
- */
56
- INCORRECT_VALUE_TYPE = 1,
57
-
58
- /**
59
- * The argument does not support multiple values.
60
- */
61
- ILLEGAL_MULTIPLE_VALUES = 2,
62
-
63
- /**
64
- * The value specified was not one of the defined allowable values for the argument.
65
- */
66
- ILLEGAL_VALUE = 3,
67
-
68
- /**
69
- * The arguments specified resulted in a sparse array of values.
70
- */
71
- ILLEGAL_SPARSE_ARRAY = 4,
72
-
73
- /**
74
- * The argument specified an unknown complex option property.
75
- */
76
- UNKNOWN_PROPERTY = 5,
77
-
78
- /**
79
- * Complex option nesting exceeds maximum of {@link MAXIMUM_COMPLEX_OPTION_NESTING_DEPTH}.
80
- */
81
- NESTING_DEPTH_EXCEEDED = 6,
82
-
83
- /**
84
- * Array value nesting exceeds maximum of {@link MAXIMUM_ARGUMENT_ARRAY_SIZE}.
85
- */
86
- ARRAY_SIZE_EXCEEDED = 7,
87
-
88
- /**
89
- * Attempt to set a primitive value on a complex object object.
90
- */
91
- OPTION_IS_COMPLEX = 8,
92
-
93
- /**
94
- * The value failed a custom validation function defined on the argument.
95
- */
96
- CUSTOM_VALIDATION = 9,
97
- }
98
-
99
- /**
100
- * Details of an invalid parsed argument.
101
- */
102
- export interface InvalidArgument {
103
- /**
104
- * A reason for the parsing error
105
- */
106
- readonly reason: InvalidArgumentReason;
107
-
108
- /**
109
- * The name of the argument specified (if it was able to be populated)
110
- */
111
- readonly name?: string;
112
-
113
- /**
114
- * The {@link Argument} (if it was able to be populated)
115
- */
116
- readonly argument?: Argument | ComplexOption;
117
-
118
- /**
119
- * The argument value (if it was able to be populated).
120
- *
121
- * NOTE: This value is unlikely to be valid as it is the cause of the invalid argument error.
122
- */
123
- readonly value?:
124
- | PopulatedArgumentValues
125
- | PopulatedArgumentValueType
126
- | Array<PopulatedArgumentValues | PopulatedArgumentValueType>;
127
-
128
- /**
129
- * An optional message providing detail about the validation failure.
130
- * Populated when {@link reason} is {@link InvalidArgumentReason.CUSTOM_VALIDATION}.
131
- */
132
- readonly message?: string;
133
- }
134
-
135
- /**
136
- * Result of a {@link CLI} invocation.
137
- */
138
- export default interface RunResult {
139
- /**
140
- * The state after processing the invocation.
141
- */
142
- readonly runState: RunState;
143
-
144
- /**
145
- * Populated if {@link runState} is {@link RunState.SUCCESS}, {@link RunState.PARSE_ERROR} or {@link RunState.EXECUTION_ERROR}.
146
- */
147
- readonly command?: Command;
148
-
149
- /**
150
- * Populated if {@link runState} is {@link RunState.PARSE_ERROR}
151
- */
152
- readonly invalidArguments?: ReadonlyArray<InvalidArgument>;
153
-
154
- /**
155
- * Populated if {@link runState} is {@link RunState.EXECUTION_ERROR} or {@link RunState.RUNTIME_ERROR}.
156
- */
157
- readonly error?: Error;
158
- }
@@ -1,75 +0,0 @@
1
- import type {
2
- ArgumentSingleValueType,
3
- ArgumentValues,
4
- ArgumentValueType,
5
- ArgumentValueTypeName,
6
- } from "./ArgumentValueTypes.ts";
7
-
8
- /**
9
- * Interface to be implemented by all {@link Command} arguments.
10
- */
11
- export default interface Argument {
12
- /**
13
- * Type of the argument value.
14
- */
15
- readonly type: ArgumentValueTypeName;
16
-
17
- /**
18
- * Optional list of values that the value must match. This is not supported for {@link ArgumentValueTypeName.BOOLEAN}.
19
- */
20
- readonly allowableValues?: ReadonlyArray<ArgumentSingleValueType>;
21
-
22
- /**
23
- * Optional (default is `false`) for {@link ArgumentValueTypeName.STRING} when comparing a value against {@link allowableValues}.
24
- */
25
- readonly isCaseInsensitive?: boolean;
26
-
27
- /**
28
- * Optional for {@link ArgumentValueTypeName.INTEGER} or {@link ArgumentValueTypeName.NUMBER} when validating a value.
29
- */
30
- readonly minValueInclusive?: number;
31
-
32
- /**
33
- * Optional for {@link ArgumentValueTypeName.INTEGER} or {@link ArgumentValueTypeName.NUMBER} when validating a value.
34
- */
35
- readonly maxValueInclusive?: number;
36
-
37
- /**
38
- * Optional configuration key to use for the argument. Must consist of alphanumeric non-whitespace uppercase
39
- * ASCII or `_` characters. Must not start with a digit.
40
- *
41
- * If not specified a default configuration key is determined as follows: The {@link SubCommandArgument.name} is capitalized
42
- * and any `-` characters are replaced with `_` characters. If the result starts with a digit, it is
43
- * prefixed with `_`. Some examples:
44
- *
45
- * * name: `FooBar` => configuration key: `FOOBAR`
46
- * * name: `Hello-World-` => configuration key: `HELLO_WORLD_`
47
- * * name: `3` => configuration key: `_3`
48
- *
49
- * NOTE: Regardless of whether a {@link configurationKey} is specified, or the default is relied upon,
50
- * it will only be used if the parent {@link Command} has specified {@link Command.enableConfiguration} as `true`.
51
- */
52
- readonly configurationKey?: string;
53
-
54
- /**
55
- * Optional custom validation function invoked after all built-in validation
56
- * has passed. Receives the validated and type-converted value.
57
- *
58
- * Return `undefined` if the value is valid, or a string describing the
59
- * validation error. The error string is associated with
60
- * {@link InvalidArgumentReason.CUSTOM_VALIDATION}.
61
- *
62
- * Example: ensure array values are unique:
63
- * ```typescript
64
- * validate: (value) => {
65
- * const arr = value as string[];
66
- * return new Set(arr).size !== arr.length
67
- * ? "values must be unique"
68
- * : undefined;
69
- * }
70
- * ```
71
- */
72
- readonly validate?: (
73
- value: ArgumentValueType | ArgumentValues | Array<ArgumentValues>,
74
- ) => string | undefined;
75
- }
@@ -1,80 +0,0 @@
1
- /**
2
- * The type of single {@link Argument} values which are supported.
3
- *
4
- * NOTE: JavaScript does not have a special runtime value for INTEGER so this is covered by `number`.
5
- * NOTE: `string` is also used for PASSWORD values.
6
- */
7
- export type ArgumentSingleValueType = number | string | boolean;
8
-
9
- /**
10
- * The type of the value to be parsed as an argument can be: `boolean`, `number` or `string` or an array of these.
11
- */
12
- export type ArgumentValueType = ArgumentSingleValueType | Array<ArgumentSingleValueType>;
13
-
14
- /**
15
- * A container object for populated argument values.
16
- *
17
- * The following are all valid examples:
18
- *
19
- * * `{ }`
20
- * * `{ foo: 1 }`
21
- * * `{ foo: true }`
22
- * * `{ foo: 'bar' }`
23
- * * `{ foo: [ 1, 2 ] }`
24
- * * `{ foo: [ true, true ] }`
25
- * * `{ foo: [ 'bar', 'gar' ] }`
26
- * * `{ foo: { a: 1 } }`
27
- * * `{ foo: { a: { b: 'c'} } }`
28
- * * `{ foo: [ { a: { b: 'c'} }, { a: { b: 'c'} } ] }`
29
- *
30
- * An array of arrays is not allowed, so the following is an INVALID example:
31
- *
32
- * * `{ foo: [ [ 1, 2 ], [3, 4 ] ] }`
33
- */
34
- export type ArgumentValues = {
35
- [argName: string]: ArgumentValueType | ArgumentValues | Array<ArgumentValues>;
36
- };
37
-
38
- /**
39
- * Enum of possible {@link Argument} value types.
40
- */
41
- export enum ArgumentValueTypeName {
42
- STRING = 0,
43
- NUMBER = 1,
44
- INTEGER = 2,
45
- BOOLEAN = 3,
46
- SECRET = 4,
47
- }
48
-
49
- /**
50
- * Only possible value for {@link ComplexOption.type}.
51
- */
52
- export enum ComplexValueTypeName {
53
- COMPLEX = 5,
54
- }
55
-
56
- /**
57
- * Populated single value type is very similar to {@link ArgumentSingleValueType} but allows for an illegal
58
- * undefined value.
59
- */
60
- export type PopulatedArgumentSingleValueType = ArgumentSingleValueType | undefined;
61
-
62
- /**
63
- * Populated argument value types are very similar to {@link ArgumentValueType} but allow for illegal
64
- * undefined values.
65
- */
66
- export type PopulatedArgumentValueType =
67
- | PopulatedArgumentSingleValueType
68
- | Array<PopulatedArgumentSingleValueType>;
69
-
70
- /**
71
- * Populated values are very similar to {@link ArgumentValues} but allow for illegal
72
- * undefined properties and array entries.
73
- */
74
- export interface PopulatedArgumentValues {
75
- [argName: string]:
76
- | PopulatedArgumentValueType
77
- | PopulatedArgumentValues
78
- | Array<PopulatedArgumentValues | undefined>
79
- | undefined;
80
- }
@@ -1,27 +0,0 @@
1
- import type Option from "./Option.ts";
2
- import type { ArgumentValues, ComplexValueTypeName } from "./ArgumentValueTypes.ts";
3
-
4
- export const MAXIMUM_COMPLEX_OPTION_NESTING_DEPTH = 10;
5
-
6
- /**
7
- * A container option argument for defining {@link SubCommand} nested argument hierarchies.
8
- */
9
- export default interface ComplexOption extends Omit<
10
- Option,
11
- "type" | "defaultValue" | "allowableValues"
12
- > {
13
- /**
14
- * Type of the argument value.
15
- */
16
- readonly type: ComplexValueTypeName;
17
-
18
- /**
19
- * List of child {@link Option} properties.
20
- */
21
- readonly properties: ReadonlyArray<Option | ComplexOption>;
22
-
23
- /**
24
- * Default value for the argument if not specified.
25
- */
26
- readonly defaultValue?: ArgumentValues | Array<ArgumentValues>;
27
- }
@@ -1,17 +0,0 @@
1
- import type Argument from "./Argument.ts";
2
- import type { ArgumentSingleValueType } from "./ArgumentValueTypes.ts";
3
-
4
- /**
5
- * Interface to be implemented by a single {@link Argument} defined by a {@link GlobalCommand}.
6
- */
7
- export default interface GlobalCommandArgument extends Argument {
8
- /**
9
- * Default value for the argument if not specified.
10
- */
11
- readonly defaultValue?: ArgumentSingleValueType;
12
-
13
- /**
14
- * If this is `true` the argument does not need to be specified nor have a default value. The default is `false`.
15
- */
16
- readonly isOptional?: boolean;
17
- }