avo-cli 0.0.2 → 4.2.0.beta.1

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 (814) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +605 -0
  3. data/avo-cli.gemspec +22 -23
  4. data/exe/avo +6 -0
  5. data/lib/avo/cli/runner.rb +86 -0
  6. data/lib/avo/cli/version.rb +7 -0
  7. data/lib/avo-cli.rb +5 -0
  8. data/payload/README.md +605 -0
  9. data/payload/bin/run.cmd +3 -0
  10. data/payload/bin/run.js +5 -0
  11. data/payload/dist/base-command.js +60 -0
  12. data/payload/dist/client.js +77 -0
  13. data/payload/dist/commands/create.js +26 -0
  14. data/payload/dist/commands/delete.js +22 -0
  15. data/payload/dist/commands/get.js +19 -0
  16. data/payload/dist/commands/list.js +47 -0
  17. data/payload/dist/commands/login.js +93 -0
  18. data/payload/dist/commands/logout.js +13 -0
  19. data/payload/dist/commands/schema.js +58 -0
  20. data/payload/dist/commands/update.js +27 -0
  21. data/payload/dist/config.js +57 -0
  22. data/payload/dist/data.js +33 -0
  23. data/payload/dist/errors.js +93 -0
  24. data/payload/dist/hooks/command-not-found.js +22 -0
  25. data/payload/dist/index.js +1 -0
  26. data/payload/dist/list.js +7 -0
  27. data/payload/dist/payload.js +35 -0
  28. data/payload/dist/record-command.js +51 -0
  29. data/payload/dist/schema.js +29 -0
  30. data/payload/dist/store.js +91 -0
  31. data/payload/dist/suggest.js +29 -0
  32. data/payload/dist/table.js +40 -0
  33. data/payload/dist/write-command.js +26 -0
  34. data/payload/node_modules/@inquirer/ansi/LICENSE +22 -0
  35. data/payload/node_modules/@inquirer/ansi/README.md +89 -0
  36. data/payload/node_modules/@inquirer/ansi/dist/commonjs/index.d.ts +14 -0
  37. data/payload/node_modules/@inquirer/ansi/dist/commonjs/index.js +28 -0
  38. data/payload/node_modules/@inquirer/ansi/dist/commonjs/package.json +3 -0
  39. data/payload/node_modules/@inquirer/ansi/dist/esm/index.d.ts +14 -0
  40. data/payload/node_modules/@inquirer/ansi/dist/esm/index.js +21 -0
  41. data/payload/node_modules/@inquirer/ansi/dist/esm/package.json +3 -0
  42. data/payload/node_modules/@inquirer/ansi/package.json +97 -0
  43. data/payload/node_modules/@inquirer/core/LICENSE +22 -0
  44. data/payload/node_modules/@inquirer/core/README.md +383 -0
  45. data/payload/node_modules/@inquirer/core/dist/commonjs/index.d.ts +13 -0
  46. data/payload/node_modules/@inquirer/core/dist/commonjs/index.js +46 -0
  47. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/Separator.d.ts +10 -0
  48. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/Separator.js +28 -0
  49. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/create-prompt.d.ts +4 -0
  50. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/create-prompt.js +156 -0
  51. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/errors.d.ts +20 -0
  52. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/errors.js +29 -0
  53. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/hook-engine.d.ts +23 -0
  54. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/hook-engine.js +118 -0
  55. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/key.d.ts +12 -0
  56. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/key.js +29 -0
  57. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/make-theme.d.ts +3 -0
  58. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/make-theme.js +33 -0
  59. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/pagination/use-pagination.d.ts +16 -0
  60. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/pagination/use-pagination.js +124 -0
  61. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/promise-polyfill.d.ts +7 -0
  62. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/promise-polyfill.js +18 -0
  63. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/screen-manager.d.ts +14 -0
  64. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/screen-manager.js +82 -0
  65. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/theme.d.ts +155 -0
  66. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/theme.js +27 -0
  67. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-effect.d.ts +2 -0
  68. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-effect.js +14 -0
  69. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-keypress.d.ts +3 -0
  70. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-keypress.js +23 -0
  71. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-memo.d.ts +1 -0
  72. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-memo.js +17 -0
  73. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-prefix.d.ts +5 -0
  74. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-prefix.js +38 -0
  75. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-ref.d.ts +6 -0
  76. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-ref.js +7 -0
  77. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-state.d.ts +4 -0
  78. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-state.js +23 -0
  79. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/utils.d.ts +13 -0
  80. data/payload/node_modules/@inquirer/core/dist/commonjs/lib/utils.js +32 -0
  81. data/payload/node_modules/@inquirer/core/dist/commonjs/package.json +3 -0
  82. data/payload/node_modules/@inquirer/core/dist/esm/index.d.ts +13 -0
  83. data/payload/node_modules/@inquirer/core/dist/esm/index.js +12 -0
  84. data/payload/node_modules/@inquirer/core/dist/esm/lib/Separator.d.ts +10 -0
  85. data/payload/node_modules/@inquirer/core/dist/esm/lib/Separator.js +21 -0
  86. data/payload/node_modules/@inquirer/core/dist/esm/lib/create-prompt.d.ts +4 -0
  87. data/payload/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js +117 -0
  88. data/payload/node_modules/@inquirer/core/dist/esm/lib/errors.d.ts +20 -0
  89. data/payload/node_modules/@inquirer/core/dist/esm/lib/errors.js +21 -0
  90. data/payload/node_modules/@inquirer/core/dist/esm/lib/hook-engine.d.ts +23 -0
  91. data/payload/node_modules/@inquirer/core/dist/esm/lib/hook-engine.js +110 -0
  92. data/payload/node_modules/@inquirer/core/dist/esm/lib/key.d.ts +12 -0
  93. data/payload/node_modules/@inquirer/core/dist/esm/lib/key.js +19 -0
  94. data/payload/node_modules/@inquirer/core/dist/esm/lib/make-theme.d.ts +3 -0
  95. data/payload/node_modules/@inquirer/core/dist/esm/lib/make-theme.js +30 -0
  96. data/payload/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.d.ts +16 -0
  97. data/payload/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.js +121 -0
  98. data/payload/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.d.ts +7 -0
  99. data/payload/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.js +14 -0
  100. data/payload/node_modules/@inquirer/core/dist/esm/lib/screen-manager.d.ts +14 -0
  101. data/payload/node_modules/@inquirer/core/dist/esm/lib/screen-manager.js +79 -0
  102. data/payload/node_modules/@inquirer/core/dist/esm/lib/theme.d.ts +155 -0
  103. data/payload/node_modules/@inquirer/core/dist/esm/lib/theme.js +21 -0
  104. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-effect.d.ts +2 -0
  105. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-effect.js +11 -0
  106. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-keypress.d.ts +3 -0
  107. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-keypress.js +20 -0
  108. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-memo.d.ts +1 -0
  109. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-memo.js +14 -0
  110. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-prefix.d.ts +5 -0
  111. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-prefix.js +35 -0
  112. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-ref.d.ts +6 -0
  113. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-ref.js +4 -0
  114. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-state.d.ts +4 -0
  115. data/payload/node_modules/@inquirer/core/dist/esm/lib/use-state.js +20 -0
  116. data/payload/node_modules/@inquirer/core/dist/esm/lib/utils.d.ts +13 -0
  117. data/payload/node_modules/@inquirer/core/dist/esm/lib/utils.js +25 -0
  118. data/payload/node_modules/@inquirer/core/dist/esm/package.json +3 -0
  119. data/payload/node_modules/@inquirer/core/node_modules/mute-stream/LICENSE +15 -0
  120. data/payload/node_modules/@inquirer/core/node_modules/mute-stream/README.md +68 -0
  121. data/payload/node_modules/@inquirer/core/node_modules/mute-stream/lib/index.js +142 -0
  122. data/payload/node_modules/@inquirer/core/node_modules/mute-stream/package.json +54 -0
  123. data/payload/node_modules/@inquirer/core/package.json +119 -0
  124. data/payload/node_modules/@inquirer/figures/LICENSE +22 -0
  125. data/payload/node_modules/@inquirer/figures/dist/commonjs/index.d.ts +275 -0
  126. data/payload/node_modules/@inquirer/figures/dist/commonjs/index.js +321 -0
  127. data/payload/node_modules/@inquirer/figures/dist/commonjs/package.json +3 -0
  128. data/payload/node_modules/@inquirer/figures/dist/esm/index.d.ts +275 -0
  129. data/payload/node_modules/@inquirer/figures/dist/esm/index.js +314 -0
  130. data/payload/node_modules/@inquirer/figures/dist/esm/package.json +3 -0
  131. data/payload/node_modules/@inquirer/figures/package.json +98 -0
  132. data/payload/node_modules/@inquirer/input/LICENSE +22 -0
  133. data/payload/node_modules/@inquirer/input/README.md +101 -0
  134. data/payload/node_modules/@inquirer/input/dist/commonjs/index.d.ts +20 -0
  135. data/payload/node_modules/@inquirer/input/dist/commonjs/index.js +99 -0
  136. data/payload/node_modules/@inquirer/input/dist/commonjs/package.json +3 -0
  137. data/payload/node_modules/@inquirer/input/dist/esm/index.d.ts +20 -0
  138. data/payload/node_modules/@inquirer/input/dist/esm/index.js +97 -0
  139. data/payload/node_modules/@inquirer/input/dist/esm/package.json +3 -0
  140. data/payload/node_modules/@inquirer/input/package.json +110 -0
  141. data/payload/node_modules/@inquirer/password/LICENSE +22 -0
  142. data/payload/node_modules/@inquirer/password/README.md +93 -0
  143. data/payload/node_modules/@inquirer/password/dist/commonjs/index.d.ts +10 -0
  144. data/payload/node_modules/@inquirer/password/dist/commonjs/index.js +57 -0
  145. data/payload/node_modules/@inquirer/password/dist/commonjs/package.json +3 -0
  146. data/payload/node_modules/@inquirer/password/dist/esm/index.d.ts +10 -0
  147. data/payload/node_modules/@inquirer/password/dist/esm/index.js +55 -0
  148. data/payload/node_modules/@inquirer/password/dist/esm/package.json +3 -0
  149. data/payload/node_modules/@inquirer/password/package.json +111 -0
  150. data/payload/node_modules/@inquirer/type/LICENSE +22 -0
  151. data/payload/node_modules/@inquirer/type/dist/commonjs/index.d.ts +2 -0
  152. data/payload/node_modules/@inquirer/type/dist/commonjs/index.js +18 -0
  153. data/payload/node_modules/@inquirer/type/dist/commonjs/inquirer.d.ts +38 -0
  154. data/payload/node_modules/@inquirer/type/dist/commonjs/inquirer.js +2 -0
  155. data/payload/node_modules/@inquirer/type/dist/commonjs/package.json +3 -0
  156. data/payload/node_modules/@inquirer/type/dist/commonjs/utils.d.ts +29 -0
  157. data/payload/node_modules/@inquirer/type/dist/commonjs/utils.js +3 -0
  158. data/payload/node_modules/@inquirer/type/dist/esm/index.d.ts +2 -0
  159. data/payload/node_modules/@inquirer/type/dist/esm/index.js +2 -0
  160. data/payload/node_modules/@inquirer/type/dist/esm/inquirer.d.ts +38 -0
  161. data/payload/node_modules/@inquirer/type/dist/esm/inquirer.js +1 -0
  162. data/payload/node_modules/@inquirer/type/dist/esm/package.json +3 -0
  163. data/payload/node_modules/@inquirer/type/dist/esm/utils.d.ts +29 -0
  164. data/payload/node_modules/@inquirer/type/dist/esm/utils.js +2 -0
  165. data/payload/node_modules/@inquirer/type/package.json +106 -0
  166. data/payload/node_modules/@oclif/core/LICENSE +21 -0
  167. data/payload/node_modules/@oclif/core/README.md +150 -0
  168. data/payload/node_modules/@oclif/core/lib/args.d.ts +56 -0
  169. data/payload/node_modules/@oclif/core/lib/args.js +85 -0
  170. data/payload/node_modules/@oclif/core/lib/cache.d.ts +27 -0
  171. data/payload/node_modules/@oclif/core/lib/cache.js +40 -0
  172. data/payload/node_modules/@oclif/core/lib/command.d.ts +192 -0
  173. data/payload/node_modules/@oclif/core/lib/command.js +350 -0
  174. data/payload/node_modules/@oclif/core/lib/config/config.d.ts +135 -0
  175. data/payload/node_modules/@oclif/core/lib/config/config.js +749 -0
  176. data/payload/node_modules/@oclif/core/lib/config/index.d.ts +3 -0
  177. data/payload/node_modules/@oclif/core/lib/config/index.js +9 -0
  178. data/payload/node_modules/@oclif/core/lib/config/plugin-loader.d.ts +38 -0
  179. data/payload/node_modules/@oclif/core/lib/config/plugin-loader.js +188 -0
  180. data/payload/node_modules/@oclif/core/lib/config/plugin.d.ts +51 -0
  181. data/payload/node_modules/@oclif/core/lib/config/plugin.js +373 -0
  182. data/payload/node_modules/@oclif/core/lib/config/ts-path.d.ts +9 -0
  183. data/payload/node_modules/@oclif/core/lib/config/ts-path.js +293 -0
  184. data/payload/node_modules/@oclif/core/lib/config/util.d.ts +23 -0
  185. data/payload/node_modules/@oclif/core/lib/config/util.js +54 -0
  186. data/payload/node_modules/@oclif/core/lib/constraints.d.ts +217 -0
  187. data/payload/node_modules/@oclif/core/lib/constraints.js +638 -0
  188. data/payload/node_modules/@oclif/core/lib/errors/error.d.ts +8 -0
  189. data/payload/node_modules/@oclif/core/lib/errors/error.js +63 -0
  190. data/payload/node_modules/@oclif/core/lib/errors/errors/cli.d.ts +29 -0
  191. data/payload/node_modules/@oclif/core/lib/errors/errors/cli.js +77 -0
  192. data/payload/node_modules/@oclif/core/lib/errors/errors/exit.d.ts +7 -0
  193. data/payload/node_modules/@oclif/core/lib/errors/errors/exit.js +14 -0
  194. data/payload/node_modules/@oclif/core/lib/errors/errors/module-load.d.ts +6 -0
  195. data/payload/node_modules/@oclif/core/lib/errors/errors/module-load.js +12 -0
  196. data/payload/node_modules/@oclif/core/lib/errors/errors/pretty-print.d.ts +9 -0
  197. data/payload/node_modules/@oclif/core/lib/errors/errors/pretty-print.js +67 -0
  198. data/payload/node_modules/@oclif/core/lib/errors/exit.d.ts +1 -0
  199. data/payload/node_modules/@oclif/core/lib/errors/exit.js +7 -0
  200. data/payload/node_modules/@oclif/core/lib/errors/handle.d.ts +14 -0
  201. data/payload/node_modules/@oclif/core/lib/errors/handle.js +60 -0
  202. data/payload/node_modules/@oclif/core/lib/errors/index.d.ts +8 -0
  203. data/payload/node_modules/@oclif/core/lib/errors/index.js +17 -0
  204. data/payload/node_modules/@oclif/core/lib/errors/warn.d.ts +8 -0
  205. data/payload/node_modules/@oclif/core/lib/errors/warn.js +40 -0
  206. data/payload/node_modules/@oclif/core/lib/execute.d.ts +44 -0
  207. data/payload/node_modules/@oclif/core/lib/execute.js +61 -0
  208. data/payload/node_modules/@oclif/core/lib/flags.d.ts +181 -0
  209. data/payload/node_modules/@oclif/core/lib/flags.js +129 -0
  210. data/payload/node_modules/@oclif/core/lib/flush.d.ts +1 -0
  211. data/payload/node_modules/@oclif/core/lib/flush.js +26 -0
  212. data/payload/node_modules/@oclif/core/lib/help/command.d.ts +33 -0
  213. data/payload/node_modules/@oclif/core/lib/help/command.js +352 -0
  214. data/payload/node_modules/@oclif/core/lib/help/docopts.d.ts +69 -0
  215. data/payload/node_modules/@oclif/core/lib/help/docopts.js +198 -0
  216. data/payload/node_modules/@oclif/core/lib/help/formatter.d.ts +96 -0
  217. data/payload/node_modules/@oclif/core/lib/help/formatter.js +194 -0
  218. data/payload/node_modules/@oclif/core/lib/help/index.d.ts +46 -0
  219. data/payload/node_modules/@oclif/core/lib/help/index.js +345 -0
  220. data/payload/node_modules/@oclif/core/lib/help/root.d.ts +11 -0
  221. data/payload/node_modules/@oclif/core/lib/help/root.js +47 -0
  222. data/payload/node_modules/@oclif/core/lib/help/util.d.ts +7 -0
  223. data/payload/node_modules/@oclif/core/lib/help/util.js +99 -0
  224. data/payload/node_modules/@oclif/core/lib/index.d.ts +20 -0
  225. data/payload/node_modules/@oclif/core/lib/index.js +101 -0
  226. data/payload/node_modules/@oclif/core/lib/interfaces/alphabet.d.ts +2 -0
  227. data/payload/node_modules/@oclif/core/lib/interfaces/alphabet.js +2 -0
  228. data/payload/node_modules/@oclif/core/lib/interfaces/args.d.ts +22 -0
  229. data/payload/node_modules/@oclif/core/lib/interfaces/args.js +2 -0
  230. data/payload/node_modules/@oclif/core/lib/interfaces/config.d.ts +139 -0
  231. data/payload/node_modules/@oclif/core/lib/interfaces/config.js +2 -0
  232. data/payload/node_modules/@oclif/core/lib/interfaces/errors.d.ts +27 -0
  233. data/payload/node_modules/@oclif/core/lib/interfaces/errors.js +2 -0
  234. data/payload/node_modules/@oclif/core/lib/interfaces/flags.d.ts +34 -0
  235. data/payload/node_modules/@oclif/core/lib/interfaces/flags.js +2 -0
  236. data/payload/node_modules/@oclif/core/lib/interfaces/help.d.ts +58 -0
  237. data/payload/node_modules/@oclif/core/lib/interfaces/help.js +2 -0
  238. data/payload/node_modules/@oclif/core/lib/interfaces/hooks.d.ts +185 -0
  239. data/payload/node_modules/@oclif/core/lib/interfaces/hooks.js +2 -0
  240. data/payload/node_modules/@oclif/core/lib/interfaces/index.d.ts +16 -0
  241. data/payload/node_modules/@oclif/core/lib/interfaces/index.js +2 -0
  242. data/payload/node_modules/@oclif/core/lib/interfaces/logger.d.ts +9 -0
  243. data/payload/node_modules/@oclif/core/lib/interfaces/logger.js +2 -0
  244. data/payload/node_modules/@oclif/core/lib/interfaces/manifest.d.ts +7 -0
  245. data/payload/node_modules/@oclif/core/lib/interfaces/manifest.js +2 -0
  246. data/payload/node_modules/@oclif/core/lib/interfaces/parser.d.ts +520 -0
  247. data/payload/node_modules/@oclif/core/lib/interfaces/parser.js +2 -0
  248. data/payload/node_modules/@oclif/core/lib/interfaces/pjson.d.ts +314 -0
  249. data/payload/node_modules/@oclif/core/lib/interfaces/pjson.js +2 -0
  250. data/payload/node_modules/@oclif/core/lib/interfaces/plugin.d.ts +104 -0
  251. data/payload/node_modules/@oclif/core/lib/interfaces/plugin.js +2 -0
  252. data/payload/node_modules/@oclif/core/lib/interfaces/s3-manifest.d.ts +14 -0
  253. data/payload/node_modules/@oclif/core/lib/interfaces/s3-manifest.js +2 -0
  254. data/payload/node_modules/@oclif/core/lib/interfaces/theme.d.ts +32 -0
  255. data/payload/node_modules/@oclif/core/lib/interfaces/theme.js +44 -0
  256. data/payload/node_modules/@oclif/core/lib/interfaces/topic.d.ts +5 -0
  257. data/payload/node_modules/@oclif/core/lib/interfaces/topic.js +2 -0
  258. data/payload/node_modules/@oclif/core/lib/interfaces/ts-config.d.ts +23 -0
  259. data/payload/node_modules/@oclif/core/lib/interfaces/ts-config.js +2 -0
  260. data/payload/node_modules/@oclif/core/lib/logger.d.ts +14 -0
  261. data/payload/node_modules/@oclif/core/lib/logger.js +89 -0
  262. data/payload/node_modules/@oclif/core/lib/main.d.ts +4 -0
  263. data/payload/node_modules/@oclif/core/lib/main.js +106 -0
  264. data/payload/node_modules/@oclif/core/lib/module-loader.d.ts +71 -0
  265. data/payload/node_modules/@oclif/core/lib/module-loader.js +206 -0
  266. data/payload/node_modules/@oclif/core/lib/parser/errors.d.ts +58 -0
  267. data/payload/node_modules/@oclif/core/lib/parser/errors.js +117 -0
  268. data/payload/node_modules/@oclif/core/lib/parser/help.d.ts +3 -0
  269. data/payload/node_modules/@oclif/core/lib/parser/help.js +29 -0
  270. data/payload/node_modules/@oclif/core/lib/parser/index.d.ts +5 -0
  271. data/payload/node_modules/@oclif/core/lib/parser/index.js +25 -0
  272. data/payload/node_modules/@oclif/core/lib/parser/parse.d.ts +37 -0
  273. data/payload/node_modules/@oclif/core/lib/parser/parse.js +545 -0
  274. data/payload/node_modules/@oclif/core/lib/parser/validate.d.ts +5 -0
  275. data/payload/node_modules/@oclif/core/lib/parser/validate.js +287 -0
  276. data/payload/node_modules/@oclif/core/lib/performance.d.ts +73 -0
  277. data/payload/node_modules/@oclif/core/lib/performance.js +227 -0
  278. data/payload/node_modules/@oclif/core/lib/screen.d.ts +2 -0
  279. data/payload/node_modules/@oclif/core/lib/screen.js +20 -0
  280. data/payload/node_modules/@oclif/core/lib/settings.d.ts +36 -0
  281. data/payload/node_modules/@oclif/core/lib/settings.js +7 -0
  282. data/payload/node_modules/@oclif/core/lib/symbols.d.ts +1 -0
  283. data/payload/node_modules/@oclif/core/lib/symbols.js +4 -0
  284. data/payload/node_modules/@oclif/core/lib/util/aggregate-flags.d.ts +2 -0
  285. data/payload/node_modules/@oclif/core/lib/util/aggregate-flags.js +12 -0
  286. data/payload/node_modules/@oclif/core/lib/util/cache-command.d.ts +3 -0
  287. data/payload/node_modules/@oclif/core/lib/util/cache-command.js +120 -0
  288. data/payload/node_modules/@oclif/core/lib/util/cache-default-value.d.ts +2 -0
  289. data/payload/node_modules/@oclif/core/lib/util/cache-default-value.js +28 -0
  290. data/payload/node_modules/@oclif/core/lib/util/determine-priority.d.ts +18 -0
  291. data/payload/node_modules/@oclif/core/lib/util/determine-priority.js +51 -0
  292. data/payload/node_modules/@oclif/core/lib/util/ensure-arg-object.d.ts +12 -0
  293. data/payload/node_modules/@oclif/core/lib/util/ensure-arg-object.js +13 -0
  294. data/payload/node_modules/@oclif/core/lib/util/find-root.d.ts +16 -0
  295. data/payload/node_modules/@oclif/core/lib/util/find-root.js +185 -0
  296. data/payload/node_modules/@oclif/core/lib/util/fs.d.ts +35 -0
  297. data/payload/node_modules/@oclif/core/lib/util/fs.js +93 -0
  298. data/payload/node_modules/@oclif/core/lib/util/ids.d.ts +3 -0
  299. data/payload/node_modules/@oclif/core/lib/util/ids.js +11 -0
  300. data/payload/node_modules/@oclif/core/lib/util/os.d.ts +19 -0
  301. data/payload/node_modules/@oclif/core/lib/util/os.js +58 -0
  302. data/payload/node_modules/@oclif/core/lib/util/read-pjson.d.ts +7 -0
  303. data/payload/node_modules/@oclif/core/lib/util/read-pjson.js +55 -0
  304. data/payload/node_modules/@oclif/core/lib/util/read-tsconfig.d.ts +2 -0
  305. data/payload/node_modules/@oclif/core/lib/util/read-tsconfig.js +77 -0
  306. data/payload/node_modules/@oclif/core/lib/util/util.d.ts +23 -0
  307. data/payload/node_modules/@oclif/core/lib/util/util.js +103 -0
  308. data/payload/node_modules/@oclif/core/lib/ux/action/base.d.ts +34 -0
  309. data/payload/node_modules/@oclif/core/lib/ux/action/base.js +183 -0
  310. data/payload/node_modules/@oclif/core/lib/ux/action/simple.d.ts +11 -0
  311. data/payload/node_modules/@oclif/core/lib/ux/action/simple.js +47 -0
  312. data/payload/node_modules/@oclif/core/lib/ux/action/spinner.d.ts +19 -0
  313. data/payload/node_modules/@oclif/core/lib/ux/action/spinner.js +88 -0
  314. data/payload/node_modules/@oclif/core/lib/ux/action/types.d.ts +5 -0
  315. data/payload/node_modules/@oclif/core/lib/ux/action/types.js +2 -0
  316. data/payload/node_modules/@oclif/core/lib/ux/colorize-json.d.ts +29 -0
  317. data/payload/node_modules/@oclif/core/lib/ux/colorize-json.js +100 -0
  318. data/payload/node_modules/@oclif/core/lib/ux/index.d.ts +70 -0
  319. data/payload/node_modules/@oclif/core/lib/ux/index.js +89 -0
  320. data/payload/node_modules/@oclif/core/lib/ux/list.d.ts +3 -0
  321. data/payload/node_modules/@oclif/core/lib/ux/list.js +28 -0
  322. data/payload/node_modules/@oclif/core/lib/ux/supports-color.d.ts +1 -0
  323. data/payload/node_modules/@oclif/core/lib/ux/supports-color.js +7 -0
  324. data/payload/node_modules/@oclif/core/lib/ux/theme.d.ts +9 -0
  325. data/payload/node_modules/@oclif/core/lib/ux/theme.js +45 -0
  326. data/payload/node_modules/@oclif/core/lib/ux/write.d.ts +2 -0
  327. data/payload/node_modules/@oclif/core/lib/ux/write.js +34 -0
  328. data/payload/node_modules/@oclif/core/node_modules/balanced-match/LICENSE.md +23 -0
  329. data/payload/node_modules/@oclif/core/node_modules/balanced-match/README.md +57 -0
  330. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.d.ts +9 -0
  331. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.d.ts.map +1 -0
  332. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.js +59 -0
  333. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.js.map +1 -0
  334. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/package.json +3 -0
  335. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.d.ts +9 -0
  336. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.d.ts.map +1 -0
  337. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.js +54 -0
  338. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.js.map +1 -0
  339. data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/package.json +3 -0
  340. data/payload/node_modules/@oclif/core/node_modules/balanced-match/package.json +68 -0
  341. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/LICENSE +23 -0
  342. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/README.md +105 -0
  343. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.d.ts +8 -0
  344. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -0
  345. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.js +289 -0
  346. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -0
  347. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/package.json +3 -0
  348. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.d.ts +8 -0
  349. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -0
  350. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.js +285 -0
  351. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.js.map +1 -0
  352. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/package.json +3 -0
  353. data/payload/node_modules/@oclif/core/node_modules/brace-expansion/package.json +64 -0
  354. data/payload/node_modules/@oclif/core/node_modules/ejs/LICENSE +202 -0
  355. data/payload/node_modules/@oclif/core/node_modules/ejs/README.md +389 -0
  356. data/payload/node_modules/@oclif/core/node_modules/ejs/bin/cli.js +218 -0
  357. data/payload/node_modules/@oclif/core/node_modules/ejs/ejs.js +1820 -0
  358. data/payload/node_modules/@oclif/core/node_modules/ejs/ejs.min.js +1 -0
  359. data/payload/node_modules/@oclif/core/node_modules/ejs/jakefile.js +206 -0
  360. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/ejs.js +853 -0
  361. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/package.json +1 -0
  362. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/parseargs.js +122 -0
  363. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/utils.js +242 -0
  364. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/ejs.js +936 -0
  365. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/package.json +3 -0
  366. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/parseargs.js +136 -0
  367. data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/utils.js +259 -0
  368. data/payload/node_modules/@oclif/core/node_modules/ejs/package.json +49 -0
  369. data/payload/node_modules/@oclif/core/node_modules/ejs/usage.txt +24 -0
  370. data/payload/node_modules/@oclif/core/node_modules/minimatch/LICENSE.md +55 -0
  371. data/payload/node_modules/@oclif/core/node_modules/minimatch/README.md +528 -0
  372. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  373. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  374. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  375. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  376. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.d.ts +22 -0
  377. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  378. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.js +845 -0
  379. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  380. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  381. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  382. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.js +150 -0
  383. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  384. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  385. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  386. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  387. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  388. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.d.ts +174 -0
  389. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  390. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.js +1127 -0
  391. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  392. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/package.json +3 -0
  393. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  394. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  395. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  396. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  397. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  398. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  399. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  400. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  401. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.d.ts +22 -0
  402. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  403. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.js +841 -0
  404. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  405. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  406. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  407. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.js +146 -0
  408. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  409. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  410. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  411. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.js +26 -0
  412. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  413. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.d.ts +174 -0
  414. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  415. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.js +1114 -0
  416. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.js.map +1 -0
  417. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/package.json +3 -0
  418. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  419. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  420. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.js +34 -0
  421. data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  422. data/payload/node_modules/@oclif/core/node_modules/minimatch/package.json +73 -0
  423. data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/index.js +216 -0
  424. data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/license +9 -0
  425. data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/package.json +62 -0
  426. data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/readme.md +91 -0
  427. data/payload/node_modules/@oclif/core/package.json +135 -0
  428. data/payload/node_modules/@oclif/plugin-help/LICENSE +21 -0
  429. data/payload/node_modules/@oclif/plugin-help/README.md +35 -0
  430. data/payload/node_modules/@oclif/plugin-help/lib/commands/help.d.ts +12 -0
  431. data/payload/node_modules/@oclif/plugin-help/lib/commands/help.js +20 -0
  432. data/payload/node_modules/@oclif/plugin-help/lib/index.d.ts +4 -0
  433. data/payload/node_modules/@oclif/plugin-help/lib/index.js +4 -0
  434. data/payload/node_modules/@oclif/plugin-help/oclif.manifest.json +43 -0
  435. data/payload/node_modules/@oclif/plugin-help/package.json +68 -0
  436. data/payload/node_modules/ansi-escapes/index.d.ts +248 -0
  437. data/payload/node_modules/ansi-escapes/index.js +157 -0
  438. data/payload/node_modules/ansi-escapes/license +9 -0
  439. data/payload/node_modules/ansi-escapes/package.json +57 -0
  440. data/payload/node_modules/ansi-escapes/readme.md +245 -0
  441. data/payload/node_modules/ansi-regex/index.d.ts +37 -0
  442. data/payload/node_modules/ansi-regex/index.js +10 -0
  443. data/payload/node_modules/ansi-regex/license +9 -0
  444. data/payload/node_modules/ansi-regex/package.json +55 -0
  445. data/payload/node_modules/ansi-regex/readme.md +78 -0
  446. data/payload/node_modules/ansi-styles/index.d.ts +345 -0
  447. data/payload/node_modules/ansi-styles/index.js +163 -0
  448. data/payload/node_modules/ansi-styles/license +9 -0
  449. data/payload/node_modules/ansi-styles/package.json +56 -0
  450. data/payload/node_modules/ansi-styles/readme.md +152 -0
  451. data/payload/node_modules/ansis/LICENSE +15 -0
  452. data/payload/node_modules/ansis/README.md +3 -0
  453. data/payload/node_modules/ansis/index.d.ts +1 -0
  454. data/payload/node_modules/ansis/index.js +1 -0
  455. data/payload/node_modules/ansis/index.mjs +1 -0
  456. data/payload/node_modules/ansis/package.json +20 -0
  457. data/payload/node_modules/clean-stack/index.d.ts +56 -0
  458. data/payload/node_modules/clean-stack/index.js +45 -0
  459. data/payload/node_modules/clean-stack/license +9 -0
  460. data/payload/node_modules/clean-stack/package.json +42 -0
  461. data/payload/node_modules/clean-stack/readme.md +77 -0
  462. data/payload/node_modules/cli-spinners/index.d.ts +128 -0
  463. data/payload/node_modules/cli-spinners/index.js +15 -0
  464. data/payload/node_modules/cli-spinners/license +9 -0
  465. data/payload/node_modules/cli-spinners/package.json +50 -0
  466. data/payload/node_modules/cli-spinners/readme.md +54 -0
  467. data/payload/node_modules/cli-spinners/spinners.json +1622 -0
  468. data/payload/node_modules/cli-width/LICENSE +13 -0
  469. data/payload/node_modules/cli-width/README.md +71 -0
  470. data/payload/node_modules/cli-width/index.d.ts +13 -0
  471. data/payload/node_modules/cli-width/index.js +49 -0
  472. data/payload/node_modules/cli-width/package.json +40 -0
  473. data/payload/node_modules/color-convert/CHANGELOG.md +54 -0
  474. data/payload/node_modules/color-convert/LICENSE +21 -0
  475. data/payload/node_modules/color-convert/README.md +68 -0
  476. data/payload/node_modules/color-convert/conversions.js +839 -0
  477. data/payload/node_modules/color-convert/index.js +81 -0
  478. data/payload/node_modules/color-convert/package.json +48 -0
  479. data/payload/node_modules/color-convert/route.js +97 -0
  480. data/payload/node_modules/color-name/LICENSE +8 -0
  481. data/payload/node_modules/color-name/README.md +11 -0
  482. data/payload/node_modules/color-name/index.js +152 -0
  483. data/payload/node_modules/color-name/package.json +28 -0
  484. data/payload/node_modules/debug/LICENSE +20 -0
  485. data/payload/node_modules/debug/README.md +481 -0
  486. data/payload/node_modules/debug/package.json +64 -0
  487. data/payload/node_modules/debug/src/browser.js +272 -0
  488. data/payload/node_modules/debug/src/common.js +292 -0
  489. data/payload/node_modules/debug/src/index.js +10 -0
  490. data/payload/node_modules/debug/src/node.js +263 -0
  491. data/payload/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  492. data/payload/node_modules/emoji-regex/README.md +73 -0
  493. data/payload/node_modules/emoji-regex/es2015/index.js +6 -0
  494. data/payload/node_modules/emoji-regex/es2015/text.js +6 -0
  495. data/payload/node_modules/emoji-regex/index.d.ts +23 -0
  496. data/payload/node_modules/emoji-regex/index.js +6 -0
  497. data/payload/node_modules/emoji-regex/package.json +50 -0
  498. data/payload/node_modules/emoji-regex/text.js +6 -0
  499. data/payload/node_modules/escape-string-regexp/index.d.ts +18 -0
  500. data/payload/node_modules/escape-string-regexp/index.js +13 -0
  501. data/payload/node_modules/escape-string-regexp/license +9 -0
  502. data/payload/node_modules/escape-string-regexp/package.json +38 -0
  503. data/payload/node_modules/escape-string-regexp/readme.md +34 -0
  504. data/payload/node_modules/fdir/LICENSE +7 -0
  505. data/payload/node_modules/fdir/README.md +91 -0
  506. data/payload/node_modules/fdir/dist/index.cjs +588 -0
  507. data/payload/node_modules/fdir/dist/index.d.cts +155 -0
  508. data/payload/node_modules/fdir/dist/index.d.mts +155 -0
  509. data/payload/node_modules/fdir/dist/index.mjs +570 -0
  510. data/payload/node_modules/fdir/package.json +103 -0
  511. data/payload/node_modules/get-package-type/CHANGELOG.md +10 -0
  512. data/payload/node_modules/get-package-type/LICENSE +21 -0
  513. data/payload/node_modules/get-package-type/README.md +32 -0
  514. data/payload/node_modules/get-package-type/async.cjs +52 -0
  515. data/payload/node_modules/get-package-type/cache.cjs +3 -0
  516. data/payload/node_modules/get-package-type/index.cjs +7 -0
  517. data/payload/node_modules/get-package-type/is-node-modules.cjs +15 -0
  518. data/payload/node_modules/get-package-type/package.json +35 -0
  519. data/payload/node_modules/get-package-type/sync.cjs +42 -0
  520. data/payload/node_modules/has-flag/index.d.ts +39 -0
  521. data/payload/node_modules/has-flag/index.js +8 -0
  522. data/payload/node_modules/has-flag/license +9 -0
  523. data/payload/node_modules/has-flag/package.json +46 -0
  524. data/payload/node_modules/has-flag/readme.md +89 -0
  525. data/payload/node_modules/indent-string/index.d.ts +42 -0
  526. data/payload/node_modules/indent-string/index.js +35 -0
  527. data/payload/node_modules/indent-string/license +9 -0
  528. data/payload/node_modules/indent-string/package.json +37 -0
  529. data/payload/node_modules/indent-string/readme.md +70 -0
  530. data/payload/node_modules/is-docker/cli.js +5 -0
  531. data/payload/node_modules/is-docker/index.d.ts +13 -0
  532. data/payload/node_modules/is-docker/index.js +29 -0
  533. data/payload/node_modules/is-docker/license +9 -0
  534. data/payload/node_modules/is-docker/package.json +44 -0
  535. data/payload/node_modules/is-docker/readme.md +27 -0
  536. data/payload/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  537. data/payload/node_modules/is-fullwidth-code-point/index.js +50 -0
  538. data/payload/node_modules/is-fullwidth-code-point/license +9 -0
  539. data/payload/node_modules/is-fullwidth-code-point/package.json +42 -0
  540. data/payload/node_modules/is-fullwidth-code-point/readme.md +39 -0
  541. data/payload/node_modules/is-inside-container/cli.js +5 -0
  542. data/payload/node_modules/is-inside-container/index.d.ts +13 -0
  543. data/payload/node_modules/is-inside-container/index.js +23 -0
  544. data/payload/node_modules/is-inside-container/license +9 -0
  545. data/payload/node_modules/is-inside-container/package.json +51 -0
  546. data/payload/node_modules/is-inside-container/readme.md +36 -0
  547. data/payload/node_modules/is-wsl/index.d.ts +15 -0
  548. data/payload/node_modules/is-wsl/index.js +36 -0
  549. data/payload/node_modules/is-wsl/license +9 -0
  550. data/payload/node_modules/is-wsl/package.json +58 -0
  551. data/payload/node_modules/is-wsl/readme.md +21 -0
  552. data/payload/node_modules/lilconfig/LICENSE +21 -0
  553. data/payload/node_modules/lilconfig/package.json +42 -0
  554. data/payload/node_modules/lilconfig/readme.md +98 -0
  555. data/payload/node_modules/lilconfig/src/index.d.ts +54 -0
  556. data/payload/node_modules/lilconfig/src/index.js +460 -0
  557. data/payload/node_modules/ms/index.js +162 -0
  558. data/payload/node_modules/ms/license.md +21 -0
  559. data/payload/node_modules/ms/package.json +38 -0
  560. data/payload/node_modules/ms/readme.md +59 -0
  561. data/payload/node_modules/picomatch/LICENSE +21 -0
  562. data/payload/node_modules/picomatch/README.md +743 -0
  563. data/payload/node_modules/picomatch/index.js +17 -0
  564. data/payload/node_modules/picomatch/lib/constants.js +184 -0
  565. data/payload/node_modules/picomatch/lib/parse.js +1425 -0
  566. data/payload/node_modules/picomatch/lib/picomatch.js +361 -0
  567. data/payload/node_modules/picomatch/lib/scan.js +403 -0
  568. data/payload/node_modules/picomatch/lib/utils.js +72 -0
  569. data/payload/node_modules/picomatch/package.json +83 -0
  570. data/payload/node_modules/picomatch/posix.js +3 -0
  571. data/payload/node_modules/powershell-utils/index.d.ts +122 -0
  572. data/payload/node_modules/powershell-utils/index.js +58 -0
  573. data/payload/node_modules/powershell-utils/license +9 -0
  574. data/payload/node_modules/powershell-utils/package.json +47 -0
  575. data/payload/node_modules/powershell-utils/readme.md +153 -0
  576. data/payload/node_modules/semver/LICENSE +15 -0
  577. data/payload/node_modules/semver/README.md +680 -0
  578. data/payload/node_modules/semver/bin/semver.js +195 -0
  579. data/payload/node_modules/semver/classes/comparator.js +143 -0
  580. data/payload/node_modules/semver/classes/index.js +7 -0
  581. data/payload/node_modules/semver/classes/range.js +577 -0
  582. data/payload/node_modules/semver/classes/semver.js +350 -0
  583. data/payload/node_modules/semver/functions/clean.js +8 -0
  584. data/payload/node_modules/semver/functions/cmp.js +54 -0
  585. data/payload/node_modules/semver/functions/coerce.js +62 -0
  586. data/payload/node_modules/semver/functions/compare-build.js +9 -0
  587. data/payload/node_modules/semver/functions/compare-loose.js +5 -0
  588. data/payload/node_modules/semver/functions/compare.js +7 -0
  589. data/payload/node_modules/semver/functions/diff.js +60 -0
  590. data/payload/node_modules/semver/functions/eq.js +5 -0
  591. data/payload/node_modules/semver/functions/gt.js +5 -0
  592. data/payload/node_modules/semver/functions/gte.js +5 -0
  593. data/payload/node_modules/semver/functions/inc.js +21 -0
  594. data/payload/node_modules/semver/functions/lt.js +5 -0
  595. data/payload/node_modules/semver/functions/lte.js +5 -0
  596. data/payload/node_modules/semver/functions/major.js +5 -0
  597. data/payload/node_modules/semver/functions/minor.js +5 -0
  598. data/payload/node_modules/semver/functions/neq.js +5 -0
  599. data/payload/node_modules/semver/functions/parse.js +18 -0
  600. data/payload/node_modules/semver/functions/patch.js +5 -0
  601. data/payload/node_modules/semver/functions/prerelease.js +8 -0
  602. data/payload/node_modules/semver/functions/rcompare.js +5 -0
  603. data/payload/node_modules/semver/functions/rsort.js +5 -0
  604. data/payload/node_modules/semver/functions/satisfies.js +12 -0
  605. data/payload/node_modules/semver/functions/sort.js +5 -0
  606. data/payload/node_modules/semver/functions/truncate.js +48 -0
  607. data/payload/node_modules/semver/functions/valid.js +8 -0
  608. data/payload/node_modules/semver/index.js +93 -0
  609. data/payload/node_modules/semver/internal/constants.js +37 -0
  610. data/payload/node_modules/semver/internal/debug.js +11 -0
  611. data/payload/node_modules/semver/internal/identifiers.js +29 -0
  612. data/payload/node_modules/semver/internal/lrucache.js +42 -0
  613. data/payload/node_modules/semver/internal/parse-options.js +17 -0
  614. data/payload/node_modules/semver/internal/re.js +223 -0
  615. data/payload/node_modules/semver/package.json +78 -0
  616. data/payload/node_modules/semver/preload.js +4 -0
  617. data/payload/node_modules/semver/range.bnf +17 -0
  618. data/payload/node_modules/semver/ranges/gtr.js +6 -0
  619. data/payload/node_modules/semver/ranges/intersects.js +9 -0
  620. data/payload/node_modules/semver/ranges/ltr.js +6 -0
  621. data/payload/node_modules/semver/ranges/max-satisfying.js +27 -0
  622. data/payload/node_modules/semver/ranges/min-satisfying.js +26 -0
  623. data/payload/node_modules/semver/ranges/min-version.js +63 -0
  624. data/payload/node_modules/semver/ranges/outside.js +82 -0
  625. data/payload/node_modules/semver/ranges/simplify.js +49 -0
  626. data/payload/node_modules/semver/ranges/subset.js +249 -0
  627. data/payload/node_modules/semver/ranges/to-comparators.js +10 -0
  628. data/payload/node_modules/semver/ranges/valid.js +13 -0
  629. data/payload/node_modules/signal-exit/LICENSE.txt +16 -0
  630. data/payload/node_modules/signal-exit/README.md +74 -0
  631. data/payload/node_modules/signal-exit/dist/cjs/browser.d.ts +12 -0
  632. data/payload/node_modules/signal-exit/dist/cjs/browser.d.ts.map +1 -0
  633. data/payload/node_modules/signal-exit/dist/cjs/browser.js +10 -0
  634. data/payload/node_modules/signal-exit/dist/cjs/browser.js.map +1 -0
  635. data/payload/node_modules/signal-exit/dist/cjs/index.d.ts +48 -0
  636. data/payload/node_modules/signal-exit/dist/cjs/index.d.ts.map +1 -0
  637. data/payload/node_modules/signal-exit/dist/cjs/index.js +279 -0
  638. data/payload/node_modules/signal-exit/dist/cjs/index.js.map +1 -0
  639. data/payload/node_modules/signal-exit/dist/cjs/package.json +3 -0
  640. data/payload/node_modules/signal-exit/dist/cjs/signals.d.ts +29 -0
  641. data/payload/node_modules/signal-exit/dist/cjs/signals.d.ts.map +1 -0
  642. data/payload/node_modules/signal-exit/dist/cjs/signals.js +42 -0
  643. data/payload/node_modules/signal-exit/dist/cjs/signals.js.map +1 -0
  644. data/payload/node_modules/signal-exit/dist/mjs/browser.d.ts +12 -0
  645. data/payload/node_modules/signal-exit/dist/mjs/browser.d.ts.map +1 -0
  646. data/payload/node_modules/signal-exit/dist/mjs/browser.js +4 -0
  647. data/payload/node_modules/signal-exit/dist/mjs/browser.js.map +1 -0
  648. data/payload/node_modules/signal-exit/dist/mjs/index.d.ts +48 -0
  649. data/payload/node_modules/signal-exit/dist/mjs/index.d.ts.map +1 -0
  650. data/payload/node_modules/signal-exit/dist/mjs/index.js +275 -0
  651. data/payload/node_modules/signal-exit/dist/mjs/index.js.map +1 -0
  652. data/payload/node_modules/signal-exit/dist/mjs/package.json +3 -0
  653. data/payload/node_modules/signal-exit/dist/mjs/signals.d.ts +29 -0
  654. data/payload/node_modules/signal-exit/dist/mjs/signals.d.ts.map +1 -0
  655. data/payload/node_modules/signal-exit/dist/mjs/signals.js +39 -0
  656. data/payload/node_modules/signal-exit/dist/mjs/signals.js.map +1 -0
  657. data/payload/node_modules/signal-exit/package.json +106 -0
  658. data/payload/node_modules/string-width/index.d.ts +29 -0
  659. data/payload/node_modules/string-width/index.js +47 -0
  660. data/payload/node_modules/string-width/license +9 -0
  661. data/payload/node_modules/string-width/package.json +56 -0
  662. data/payload/node_modules/string-width/readme.md +50 -0
  663. data/payload/node_modules/strip-ansi/index.d.ts +17 -0
  664. data/payload/node_modules/strip-ansi/index.js +4 -0
  665. data/payload/node_modules/strip-ansi/license +9 -0
  666. data/payload/node_modules/strip-ansi/package.json +54 -0
  667. data/payload/node_modules/strip-ansi/readme.md +46 -0
  668. data/payload/node_modules/supports-color/browser.js +24 -0
  669. data/payload/node_modules/supports-color/index.js +152 -0
  670. data/payload/node_modules/supports-color/license +9 -0
  671. data/payload/node_modules/supports-color/package.json +58 -0
  672. data/payload/node_modules/supports-color/readme.md +77 -0
  673. data/payload/node_modules/tinyglobby/LICENSE +21 -0
  674. data/payload/node_modules/tinyglobby/README.md +25 -0
  675. data/payload/node_modules/tinyglobby/dist/index.cjs +335 -0
  676. data/payload/node_modules/tinyglobby/dist/index.d.cts +148 -0
  677. data/payload/node_modules/tinyglobby/dist/index.d.mts +148 -0
  678. data/payload/node_modules/tinyglobby/dist/index.mjs +307 -0
  679. data/payload/node_modules/tinyglobby/package.json +70 -0
  680. data/payload/node_modules/type-fest/base.d.ts +39 -0
  681. data/payload/node_modules/type-fest/index.d.ts +2 -0
  682. data/payload/node_modules/type-fest/license +9 -0
  683. data/payload/node_modules/type-fest/package.json +58 -0
  684. data/payload/node_modules/type-fest/readme.md +760 -0
  685. data/payload/node_modules/type-fest/source/async-return-type.d.ts +23 -0
  686. data/payload/node_modules/type-fest/source/asyncify.d.ts +31 -0
  687. data/payload/node_modules/type-fest/source/basic.d.ts +51 -0
  688. data/payload/node_modules/type-fest/source/conditional-except.d.ts +43 -0
  689. data/payload/node_modules/type-fest/source/conditional-keys.d.ts +43 -0
  690. data/payload/node_modules/type-fest/source/conditional-pick.d.ts +42 -0
  691. data/payload/node_modules/type-fest/source/entries.d.ts +57 -0
  692. data/payload/node_modules/type-fest/source/entry.d.ts +60 -0
  693. data/payload/node_modules/type-fest/source/except.d.ts +22 -0
  694. data/payload/node_modules/type-fest/source/fixed-length-array.d.ts +38 -0
  695. data/payload/node_modules/type-fest/source/iterable-element.d.ts +46 -0
  696. data/payload/node_modules/type-fest/source/literal-union.d.ts +33 -0
  697. data/payload/node_modules/type-fest/source/merge-exclusive.d.ts +39 -0
  698. data/payload/node_modules/type-fest/source/merge.d.ts +25 -0
  699. data/payload/node_modules/type-fest/source/mutable.d.ts +38 -0
  700. data/payload/node_modules/type-fest/source/opaque.d.ts +65 -0
  701. data/payload/node_modules/type-fest/source/package-json.d.ts +611 -0
  702. data/payload/node_modules/type-fest/source/partial-deep.d.ts +72 -0
  703. data/payload/node_modules/type-fest/source/promisable.d.ts +23 -0
  704. data/payload/node_modules/type-fest/source/promise-value.d.ts +27 -0
  705. data/payload/node_modules/type-fest/source/readonly-deep.d.ts +59 -0
  706. data/payload/node_modules/type-fest/source/require-at-least-one.d.ts +33 -0
  707. data/payload/node_modules/type-fest/source/require-exactly-one.d.ts +35 -0
  708. data/payload/node_modules/type-fest/source/set-optional.d.ts +33 -0
  709. data/payload/node_modules/type-fest/source/set-required.d.ts +33 -0
  710. data/payload/node_modules/type-fest/source/set-return-type.d.ts +29 -0
  711. data/payload/node_modules/type-fest/source/simplify.d.ts +4 -0
  712. data/payload/node_modules/type-fest/source/stringified.d.ts +21 -0
  713. data/payload/node_modules/type-fest/source/tsconfig-json.d.ts +870 -0
  714. data/payload/node_modules/type-fest/source/typed-array.d.ts +15 -0
  715. data/payload/node_modules/type-fest/source/union-to-intersection.d.ts +58 -0
  716. data/payload/node_modules/type-fest/source/utilities.d.ts +5 -0
  717. data/payload/node_modules/type-fest/source/value-of.d.ts +40 -0
  718. data/payload/node_modules/type-fest/ts41/camel-case.d.ts +64 -0
  719. data/payload/node_modules/type-fest/ts41/delimiter-case.d.ts +85 -0
  720. data/payload/node_modules/type-fest/ts41/get.d.ts +131 -0
  721. data/payload/node_modules/type-fest/ts41/index.d.ts +10 -0
  722. data/payload/node_modules/type-fest/ts41/kebab-case.d.ts +36 -0
  723. data/payload/node_modules/type-fest/ts41/pascal-case.d.ts +36 -0
  724. data/payload/node_modules/type-fest/ts41/snake-case.d.ts +35 -0
  725. data/payload/node_modules/type-fest/ts41/utilities.d.ts +8 -0
  726. data/payload/node_modules/undici-types/LICENSE +21 -0
  727. data/payload/node_modules/undici-types/README.md +6 -0
  728. data/payload/node_modules/undici-types/agent.d.ts +31 -0
  729. data/payload/node_modules/undici-types/api.d.ts +43 -0
  730. data/payload/node_modules/undici-types/balanced-pool.d.ts +29 -0
  731. data/payload/node_modules/undici-types/cache.d.ts +36 -0
  732. data/payload/node_modules/undici-types/client.d.ts +108 -0
  733. data/payload/node_modules/undici-types/connector.d.ts +34 -0
  734. data/payload/node_modules/undici-types/content-type.d.ts +21 -0
  735. data/payload/node_modules/undici-types/cookies.d.ts +28 -0
  736. data/payload/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
  737. data/payload/node_modules/undici-types/dispatcher.d.ts +256 -0
  738. data/payload/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
  739. data/payload/node_modules/undici-types/errors.d.ts +149 -0
  740. data/payload/node_modules/undici-types/eventsource.d.ts +61 -0
  741. data/payload/node_modules/undici-types/fetch.d.ts +209 -0
  742. data/payload/node_modules/undici-types/file.d.ts +39 -0
  743. data/payload/node_modules/undici-types/filereader.d.ts +54 -0
  744. data/payload/node_modules/undici-types/formdata.d.ts +108 -0
  745. data/payload/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  746. data/payload/node_modules/undici-types/global-origin.d.ts +7 -0
  747. data/payload/node_modules/undici-types/handlers.d.ts +15 -0
  748. data/payload/node_modules/undici-types/header.d.ts +4 -0
  749. data/payload/node_modules/undici-types/index.d.ts +71 -0
  750. data/payload/node_modules/undici-types/interceptors.d.ts +17 -0
  751. data/payload/node_modules/undici-types/mock-agent.d.ts +50 -0
  752. data/payload/node_modules/undici-types/mock-client.d.ts +25 -0
  753. data/payload/node_modules/undici-types/mock-errors.d.ts +12 -0
  754. data/payload/node_modules/undici-types/mock-interceptor.d.ts +93 -0
  755. data/payload/node_modules/undici-types/mock-pool.d.ts +25 -0
  756. data/payload/node_modules/undici-types/package.json +55 -0
  757. data/payload/node_modules/undici-types/patch.d.ts +33 -0
  758. data/payload/node_modules/undici-types/pool-stats.d.ts +19 -0
  759. data/payload/node_modules/undici-types/pool.d.ts +39 -0
  760. data/payload/node_modules/undici-types/proxy-agent.d.ts +28 -0
  761. data/payload/node_modules/undici-types/readable.d.ts +65 -0
  762. data/payload/node_modules/undici-types/retry-agent.d.ts +8 -0
  763. data/payload/node_modules/undici-types/retry-handler.d.ts +116 -0
  764. data/payload/node_modules/undici-types/util.d.ts +18 -0
  765. data/payload/node_modules/undici-types/webidl.d.ts +228 -0
  766. data/payload/node_modules/undici-types/websocket.d.ts +150 -0
  767. data/payload/node_modules/widest-line/index.d.ts +21 -0
  768. data/payload/node_modules/widest-line/index.js +16 -0
  769. data/payload/node_modules/widest-line/license +9 -0
  770. data/payload/node_modules/widest-line/package.json +54 -0
  771. data/payload/node_modules/widest-line/readme.md +34 -0
  772. data/payload/node_modules/wordwrap/LICENSE +18 -0
  773. data/payload/node_modules/wordwrap/README.markdown +70 -0
  774. data/payload/node_modules/wordwrap/example/center.js +10 -0
  775. data/payload/node_modules/wordwrap/example/meat.js +3 -0
  776. data/payload/node_modules/wordwrap/index.js +76 -0
  777. data/payload/node_modules/wordwrap/package.json +34 -0
  778. data/payload/node_modules/wordwrap/test/break.js +32 -0
  779. data/payload/node_modules/wordwrap/test/idleness.txt +63 -0
  780. data/payload/node_modules/wordwrap/test/wrap.js +33 -0
  781. data/payload/node_modules/wrap-ansi/index.js +186 -0
  782. data/payload/node_modules/wrap-ansi/license +9 -0
  783. data/payload/node_modules/wrap-ansi/package.json +61 -0
  784. data/payload/node_modules/wrap-ansi/readme.md +97 -0
  785. data/payload/node_modules/wsl-utils/index.d.ts +180 -0
  786. data/payload/node_modules/wsl-utils/index.js +140 -0
  787. data/payload/node_modules/wsl-utils/license +9 -0
  788. data/payload/node_modules/wsl-utils/package.json +48 -0
  789. data/payload/node_modules/wsl-utils/readme.md +223 -0
  790. data/payload/node_modules/wsl-utils/utilities.js +19 -0
  791. data/payload/node_modules/yoctocolors-cjs/index.d.ts +94 -0
  792. data/payload/node_modules/yoctocolors-cjs/index.js +98 -0
  793. data/payload/node_modules/yoctocolors-cjs/license +9 -0
  794. data/payload/node_modules/yoctocolors-cjs/package.json +67 -0
  795. data/payload/node_modules/yoctocolors-cjs/readme.md +130 -0
  796. data/payload/oclif.manifest.json +793 -0
  797. data/payload/package.json +80 -0
  798. metadata +809 -35
  799. data/Gemfile +0 -19
  800. data/Gemfile.lock +0 -78
  801. data/LICENSE.md +0 -7
  802. data/bin/avo +0 -9
  803. data/bin/rspec +0 -4
  804. data/lib/avo_cli/cli.rb +0 -60
  805. data/lib/avo_cli/rules/base.rb +0 -31
  806. data/lib/avo_cli/rules/fields_as_class_methods.rb +0 -14
  807. data/lib/avo_cli/scanner.rb +0 -42
  808. data/lib/avo_cli/scanners/base.rb +0 -13
  809. data/lib/avo_cli/scanners/resource_scanner.rb +0 -27
  810. data/lib/avo_cli/version.rb +0 -3
  811. data/lib/avo_cli.rb +0 -23
  812. data/lib/support.rb +0 -52
  813. data/linter.png +0 -0
  814. data/readme.md +0 -40
@@ -0,0 +1,383 @@
1
+ # `@inquirer/core`
2
+
3
+ The `@inquirer/core` package is the library enabling the creation of Inquirer prompts.
4
+
5
+ It aims to implements a lightweight API similar to React hooks - but without JSX.
6
+
7
+ # Installation
8
+
9
+ <table>
10
+ <tr>
11
+ <th>npm</th>
12
+ <th>yarn</th>
13
+ </tr>
14
+ <tr>
15
+ <td>
16
+
17
+ ```sh
18
+ npm install @inquirer/core
19
+ ```
20
+
21
+ </td>
22
+ <td>
23
+
24
+ ```sh
25
+ yarn add @inquirer/core
26
+ ```
27
+
28
+ </td>
29
+ </tr>
30
+ </table>
31
+
32
+ # Usage
33
+
34
+ ## Basic concept
35
+
36
+ Visual terminal apps are at their core strings rendered onto the terminal.
37
+
38
+ The most basic prompt is a function returning a string that'll be rendered in the terminal. This function will run every time the prompt state change, and the new returned string will replace the previously rendered one. The prompt cursor appears after the string.
39
+
40
+ Wrapping the rendering function with `createPrompt()` will setup the rendering layer, inject the state management utilities, and wait until the `done` callback is called.
41
+
42
+ ```ts
43
+ import { createPrompt } from '@inquirer/core';
44
+
45
+ const input = createPrompt((config, done) => {
46
+ // Implement logic
47
+
48
+ return '? My question';
49
+ });
50
+
51
+ // And it is then called as
52
+ const answer = await input({
53
+ /* config */
54
+ });
55
+ ```
56
+
57
+ ## Hooks
58
+
59
+ State management and user interactions are handled through hooks. Hooks are common [within the React ecosystem](https://react.dev/reference/react/hooks), and Inquirer reimplement the common ones.
60
+
61
+ ### State hook
62
+
63
+ State lets a component “remember” information like user input. For example, an input prompt can use state to store the input value, while a list prompt can use state to track the cursor index.
64
+
65
+ `useState` declares a state variable that you can update directly.
66
+
67
+ ```ts
68
+ import { createPrompt, useState } from '@inquirer/core';
69
+
70
+ const input = createPrompt((config, done) => {
71
+ const [index, setIndex] = useState(0);
72
+
73
+ // ...
74
+ ```
75
+
76
+ ### Keypress hook
77
+
78
+ Almost all prompts need to react to user actions. In a terminal, this is done through typing.
79
+
80
+ `useKeypress` allows you to react to keypress events, and access the prompt line.
81
+
82
+ ```ts
83
+ const input = createPrompt((config, done) => {
84
+ useKeypress((key) => {
85
+ if (key.name === 'enter') {
86
+ done(answer);
87
+ }
88
+ });
89
+
90
+ // ...
91
+ ```
92
+
93
+ Behind the scenes, Inquirer prompts are wrappers around [readlines](https://nodejs.org/api/readline.html). Aside the keypress event object, the hook also pass the active readline instance to the event handler.
94
+
95
+ ```ts
96
+ const input = createPrompt((config, done) => {
97
+ useKeypress((key, readline) => {
98
+ setValue(readline.line);
99
+ });
100
+
101
+ // ...
102
+ ```
103
+
104
+ ### Ref hook
105
+
106
+ Refs let a prompt hold some information that isn’t used for rendering, like a class instance or a timeout ID. Unlike with state, updating a ref does not re-render your prompt. Refs are an “escape hatch” from the rendering paradigm.
107
+
108
+ `useRef` declares a ref. You can hold any value in it, but most often it’s used to hold a timeout ID.
109
+
110
+ ```ts
111
+ const input = createPrompt((config, done) => {
112
+ const timeout = useRef(null);
113
+
114
+ // ...
115
+ ```
116
+
117
+ ### Effect Hook
118
+
119
+ Effects let a prompt connect to and synchronize with external systems. This includes dealing with network or animations.
120
+
121
+ `useEffect` connects a component to an external system.
122
+
123
+ ```ts
124
+ const chat = createPrompt((config, done) => {
125
+ useEffect(() => {
126
+ const connection = createConnection(roomId);
127
+ connection.connect();
128
+ return () => connection.disconnect();
129
+ }, [roomId]);
130
+
131
+ // ...
132
+ ```
133
+
134
+ ### Performance hook
135
+
136
+ A common way to optimize re-rendering performance is to skip unnecessary work. For example, you can tell Inquirer to reuse a cached calculation or to skip a re-render if the data has not changed since the previous render.
137
+
138
+ `useMemo` lets you cache the result of an expensive calculation.
139
+
140
+ ```ts
141
+ const todoSelect = createPrompt((config, done) => {
142
+ const visibleTodos = useMemo(() => filterTodos(todos, tab), [todos, tab]);
143
+
144
+ // ...
145
+ ```
146
+
147
+ ### Rendering hooks
148
+
149
+ #### Prefix / loading
150
+
151
+ All default prompts, and most custom ones, uses a prefix at the beginning of the prompt line. This helps visually delineate different questions, and provides a convenient area to render a loading spinner.
152
+
153
+ `usePrefix` is a built-in hook to do this.
154
+
155
+ ```ts
156
+ const input = createPrompt((config, done) => {
157
+ const prefix = usePrefix({ status });
158
+
159
+ return `${prefix} My question`;
160
+ });
161
+ ```
162
+
163
+ #### Pagination
164
+
165
+ When looping through a long list of options (like in the `select` prompt), paginating the results appearing on the screen at once can be necessary. The `usePagination` hook is the utility used within the `select` and `checkbox` prompts to cycle through the list of options.
166
+
167
+ Pagination works by taking in the list of options and returning a subset of the rendered items that fit within the page. The hook takes in a few options. It needs a list of options (`items`), and a `pageSize` which is the number of lines to be rendered. The `active` index is the index of the currently selected/selectable item. The `loop` option is a boolean that indicates if the list should loop around when reaching the end: this is the default behavior. The pagination hook renders items only as necessary, so it takes a function that can render an item at an index, including an `active` state, called `renderItem`.
168
+
169
+ ```js
170
+ export default createPrompt((config, done) => {
171
+ const [active, setActive] = useState(0);
172
+
173
+ const allChoices = config.choices.map((choice) => choice.name);
174
+
175
+ const page = usePagination({
176
+ items: allChoices,
177
+ active: active,
178
+ renderItem: ({ item, index, isActive }) => `${isActive ? ">" : " "}${index}. ${item.toString()}`
179
+ pageSize: config.pageSize,
180
+ loop: config.loop,
181
+ });
182
+
183
+ return `... ${page}`;
184
+ });
185
+ ```
186
+
187
+ ## `createPrompt()` API
188
+
189
+ As we saw earlier, the rendering function should return a string, and eventually call `done` to close the prompt and return the answer.
190
+
191
+ ```ts
192
+ const input = createPrompt((config, done) => {
193
+ const [value, setValue] = useState();
194
+
195
+ useKeypress((key, readline) => {
196
+ if (key.name === 'enter') {
197
+ done(answer);
198
+ } else {
199
+ setValue(readline.line);
200
+ }
201
+ });
202
+
203
+ return `? ${config.message} ${value}`;
204
+ });
205
+ ```
206
+
207
+ The rendering function can also return a tuple of 2 string (`[string, string]`.) The first string represents the prompt. The second one is content to render under the prompt, like an error message. The text input cursor will appear after the first string.
208
+
209
+ ```ts
210
+ const number = createPrompt((config, done) => {
211
+ // Add some logic here
212
+
213
+ return [`? My question ${input}`, `! The input must be a number`];
214
+ });
215
+ ```
216
+
217
+ ### Typescript
218
+
219
+ If using typescript, `createPrompt` takes 2 generic arguments.
220
+
221
+ ```ts
222
+ // createPrompt<Value, Config>
223
+ const input = createPrompt<string, { message: string }>(// ...
224
+ ```
225
+
226
+ The first one is the type of the resolved value
227
+
228
+ ```ts
229
+ const answer: string = await input();
230
+ ```
231
+
232
+ The second one is the type of the prompt config; in other words the interface the created prompt will provide to users.
233
+
234
+ ```ts
235
+ const answer = await input({
236
+ message: 'My question',
237
+ });
238
+ ```
239
+
240
+ ## Key utilities
241
+
242
+ Listening for keypress events inside an inquirer prompt is a very common pattern. To ease this, we export a few utility functions taking in the keypress event object and return a boolean:
243
+
244
+ - `isEnterKey()`
245
+ - `isBackspaceKey()`
246
+ - `isSpaceKey()`
247
+ - `isUpKey()` - Note: this utility will handle vim and emacs keybindings (up, `k`, and `ctrl+p`)
248
+ - `isDownKey()` - Note: this utility will handle vim and emacs keybindings (down, `j`, and `ctrl+n`)
249
+ - `isNumberKey()` one of 1, 2, 3, 4, 5, 6, 7, 8, 9, 0
250
+
251
+ ## Theming
252
+
253
+ Theming utilities will allow you to expose customization of the prompt style. Inquirer also has a few standard theme values shared across all the official prompts.
254
+
255
+ To allow standard customization:
256
+
257
+ ```ts
258
+ import { createPrompt, usePrefix, makeTheme, type Theme } from '@inquirer/core';
259
+ import type { PartialDeep } from '@inquirer/type';
260
+
261
+ type PromptConfig = {
262
+ theme?: PartialDeep<Theme>;
263
+ };
264
+
265
+ export default createPrompt<string, PromptConfig>((config, done) => {
266
+ const theme = makeTheme(config.theme);
267
+
268
+ const prefix = usePrefix({ status, theme });
269
+
270
+ return `${prefix} ${theme.style.highlight('hello')}`;
271
+ });
272
+ ```
273
+
274
+ To setup a custom theme:
275
+
276
+ ```ts
277
+ import { createPrompt, makeTheme, type Theme } from '@inquirer/core';
278
+ import type { PartialDeep } from '@inquirer/type';
279
+
280
+ type PromptTheme = {};
281
+
282
+ const promptTheme: PromptTheme = {
283
+ icon: '!',
284
+ };
285
+
286
+ type PromptConfig = {
287
+ theme?: PartialDeep<Theme<PromptTheme>>;
288
+ };
289
+
290
+ export default createPrompt<string, PromptConfig>((config, done) => {
291
+ const theme = makeTheme(promptTheme, config.theme);
292
+
293
+ const prefix = usePrefix({ status, theme });
294
+
295
+ return `${prefix} ${theme.icon}`;
296
+ });
297
+ ```
298
+
299
+ The [default theme keys cover](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/core/src/lib/theme.ts):
300
+
301
+ ```ts
302
+ type DefaultTheme = {
303
+ prefix: string | { idle: string; done: string };
304
+ spinner: {
305
+ interval: number;
306
+ frames: string[];
307
+ };
308
+ style: {
309
+ answer: (text: string) => string;
310
+ message: (text: string, status: 'idle' | 'done' | 'loading') => string;
311
+ error: (text: string) => string;
312
+ defaultAnswer: (text: string) => string;
313
+ help: (text: string) => string;
314
+ highlight: (text: string) => string;
315
+ key: (text: string) => string;
316
+ };
317
+ };
318
+ ```
319
+
320
+ # Examples
321
+
322
+ You can refer to any `@inquirer/prompts` prompts for real examples:
323
+
324
+ - [Confirm Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/confirm/src/index.ts)
325
+ - [Input Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/input/src/index.ts)
326
+ - [Password Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/password/src/index.ts)
327
+ - [Editor Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/editor/src/index.ts)
328
+ - [Select Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/select/src/index.ts)
329
+ - [Checkbox Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/checkbox/src/index.ts)
330
+ - [Rawlist Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/rawlist/src/index.ts)
331
+ - [Expand Prompt](https://github.com/SBoudrias/Inquirer.js/blob/main/packages/expand/src/index.ts)
332
+
333
+ ```ts
334
+ import colors from 'yoctocolors';
335
+ import {
336
+ createPrompt,
337
+ useState,
338
+ useKeypress,
339
+ isEnterKey,
340
+ usePrefix,
341
+ type Status,
342
+ } from '@inquirer/core';
343
+
344
+ const confirm = createPrompt<boolean, { message: string; default?: boolean }>(
345
+ (config, done) => {
346
+ const [status, setStatus] = useState<Status>('idle');
347
+ const [value, setValue] = useState('');
348
+ const prefix = usePrefix({});
349
+
350
+ useKeypress((key, rl) => {
351
+ if (isEnterKey(key)) {
352
+ const answer = value ? /^y(es)?/i.test(value) : config.default !== false;
353
+ setValue(answer ? 'yes' : 'no');
354
+ setStatus('done');
355
+ done(answer);
356
+ } else {
357
+ setValue(rl.line);
358
+ }
359
+ });
360
+
361
+ let formattedValue = value;
362
+ let defaultValue = '';
363
+ if (status === 'done') {
364
+ formattedValue = colors.cyan(value);
365
+ } else {
366
+ defaultValue = colors.dim(config.default === false ? ' (y/N)' : ' (Y/n)');
367
+ }
368
+
369
+ const message = colors.bold(config.message);
370
+ return `${prefix} ${message}${defaultValue} ${formattedValue}`;
371
+ },
372
+ );
373
+
374
+ /**
375
+ * Which then can be used like this:
376
+ */
377
+ const answer = await confirm({ message: 'Do you want to continue?' });
378
+ ```
379
+
380
+ # License
381
+
382
+ Copyright (c) 2023 Simon Boudrias (twitter: [@vaxilart](https://twitter.com/Vaxilart))<br/>
383
+ Licensed under the MIT license.
@@ -0,0 +1,13 @@
1
+ export { isUpKey, isDownKey, isSpaceKey, isBackspaceKey, isTabKey, isNumberKey, isEnterKey, type KeypressEvent, type Keybinding, } from './lib/key.ts';
2
+ export * from './lib/errors.ts';
3
+ export { usePrefix } from './lib/use-prefix.ts';
4
+ export { useState } from './lib/use-state.ts';
5
+ export { useEffect } from './lib/use-effect.ts';
6
+ export { useMemo } from './lib/use-memo.ts';
7
+ export { useRef } from './lib/use-ref.ts';
8
+ export { useKeypress } from './lib/use-keypress.ts';
9
+ export { makeTheme } from './lib/make-theme.ts';
10
+ export type { Theme, Status } from './lib/theme.ts';
11
+ export { usePagination } from './lib/pagination/use-pagination.ts';
12
+ export { createPrompt } from './lib/create-prompt.ts';
13
+ export { Separator } from './lib/Separator.ts';
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Separator = exports.createPrompt = exports.usePagination = exports.makeTheme = exports.useKeypress = exports.useRef = exports.useMemo = exports.useEffect = exports.useState = exports.usePrefix = exports.isEnterKey = exports.isNumberKey = exports.isTabKey = exports.isBackspaceKey = exports.isSpaceKey = exports.isDownKey = exports.isUpKey = void 0;
18
+ var key_ts_1 = require("./lib/key.js");
19
+ Object.defineProperty(exports, "isUpKey", { enumerable: true, get: function () { return key_ts_1.isUpKey; } });
20
+ Object.defineProperty(exports, "isDownKey", { enumerable: true, get: function () { return key_ts_1.isDownKey; } });
21
+ Object.defineProperty(exports, "isSpaceKey", { enumerable: true, get: function () { return key_ts_1.isSpaceKey; } });
22
+ Object.defineProperty(exports, "isBackspaceKey", { enumerable: true, get: function () { return key_ts_1.isBackspaceKey; } });
23
+ Object.defineProperty(exports, "isTabKey", { enumerable: true, get: function () { return key_ts_1.isTabKey; } });
24
+ Object.defineProperty(exports, "isNumberKey", { enumerable: true, get: function () { return key_ts_1.isNumberKey; } });
25
+ Object.defineProperty(exports, "isEnterKey", { enumerable: true, get: function () { return key_ts_1.isEnterKey; } });
26
+ __exportStar(require("./lib/errors.js"), exports);
27
+ var use_prefix_ts_1 = require("./lib/use-prefix.js");
28
+ Object.defineProperty(exports, "usePrefix", { enumerable: true, get: function () { return use_prefix_ts_1.usePrefix; } });
29
+ var use_state_ts_1 = require("./lib/use-state.js");
30
+ Object.defineProperty(exports, "useState", { enumerable: true, get: function () { return use_state_ts_1.useState; } });
31
+ var use_effect_ts_1 = require("./lib/use-effect.js");
32
+ Object.defineProperty(exports, "useEffect", { enumerable: true, get: function () { return use_effect_ts_1.useEffect; } });
33
+ var use_memo_ts_1 = require("./lib/use-memo.js");
34
+ Object.defineProperty(exports, "useMemo", { enumerable: true, get: function () { return use_memo_ts_1.useMemo; } });
35
+ var use_ref_ts_1 = require("./lib/use-ref.js");
36
+ Object.defineProperty(exports, "useRef", { enumerable: true, get: function () { return use_ref_ts_1.useRef; } });
37
+ var use_keypress_ts_1 = require("./lib/use-keypress.js");
38
+ Object.defineProperty(exports, "useKeypress", { enumerable: true, get: function () { return use_keypress_ts_1.useKeypress; } });
39
+ var make_theme_ts_1 = require("./lib/make-theme.js");
40
+ Object.defineProperty(exports, "makeTheme", { enumerable: true, get: function () { return make_theme_ts_1.makeTheme; } });
41
+ var use_pagination_ts_1 = require("./lib/pagination/use-pagination.js");
42
+ Object.defineProperty(exports, "usePagination", { enumerable: true, get: function () { return use_pagination_ts_1.usePagination; } });
43
+ var create_prompt_ts_1 = require("./lib/create-prompt.js");
44
+ Object.defineProperty(exports, "createPrompt", { enumerable: true, get: function () { return create_prompt_ts_1.createPrompt; } });
45
+ var Separator_ts_1 = require("./lib/Separator.js");
46
+ Object.defineProperty(exports, "Separator", { enumerable: true, get: function () { return Separator_ts_1.Separator; } });
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Separator object
3
+ * Used to space/separate choices group
4
+ */
5
+ export declare class Separator {
6
+ readonly separator: string;
7
+ readonly type: string;
8
+ constructor(separator?: string);
9
+ static isSeparator(choice: unknown): choice is Separator;
10
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Separator = void 0;
7
+ const yoctocolors_cjs_1 = __importDefault(require("yoctocolors-cjs"));
8
+ const figures_1 = __importDefault(require("@inquirer/figures"));
9
+ /**
10
+ * Separator object
11
+ * Used to space/separate choices group
12
+ */
13
+ class Separator {
14
+ separator = yoctocolors_cjs_1.default.dim(Array.from({ length: 15 }).join(figures_1.default.line));
15
+ type = 'separator';
16
+ constructor(separator) {
17
+ if (separator) {
18
+ this.separator = separator;
19
+ }
20
+ }
21
+ static isSeparator(choice) {
22
+ return Boolean(choice &&
23
+ typeof choice === 'object' &&
24
+ 'type' in choice &&
25
+ choice.type === 'separator');
26
+ }
27
+ }
28
+ exports.Separator = Separator;
@@ -0,0 +1,4 @@
1
+ import { type Prompt, type Prettify } from '@inquirer/type';
2
+ type ViewFunction<Value, Config> = (config: Prettify<Config>, done: (value: Value) => void) => string | [string, string | undefined];
3
+ export declare function createPrompt<Value, Config>(view: ViewFunction<Value, Config>): Prompt<Value, Config>;
4
+ export {};
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.createPrompt = createPrompt;
40
+ const readline = __importStar(require("node:readline"));
41
+ const node_async_hooks_1 = require("node:async_hooks");
42
+ const mute_stream_1 = __importDefault(require("mute-stream"));
43
+ const signal_exit_1 = require("signal-exit");
44
+ const screen_manager_ts_1 = __importDefault(require("./screen-manager.js"));
45
+ const promise_polyfill_ts_1 = require("./promise-polyfill.js");
46
+ const hook_engine_ts_1 = require("./hook-engine.js");
47
+ const errors_ts_1 = require("./errors.js");
48
+ function getCallSites() {
49
+ // eslint-disable-next-line @typescript-eslint/unbound-method
50
+ const _prepareStackTrace = Error.prepareStackTrace;
51
+ let result = [];
52
+ try {
53
+ Error.prepareStackTrace = (_, callSites) => {
54
+ const callSitesWithoutCurrent = callSites.slice(1);
55
+ result = callSitesWithoutCurrent;
56
+ return callSitesWithoutCurrent;
57
+ };
58
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
59
+ new Error().stack;
60
+ }
61
+ catch {
62
+ // An error will occur if the Node flag --frozen-intrinsics is used.
63
+ // https://nodejs.org/api/cli.html#--frozen-intrinsics
64
+ return result;
65
+ }
66
+ Error.prepareStackTrace = _prepareStackTrace;
67
+ return result;
68
+ }
69
+ function createPrompt(view) {
70
+ const callSites = getCallSites();
71
+ const prompt = (config, context = {}) => {
72
+ // Default `input` to stdin
73
+ const { input = process.stdin, signal } = context;
74
+ const cleanups = new Set();
75
+ // Add mute capabilities to the output
76
+ const output = new mute_stream_1.default();
77
+ output.pipe(context.output ?? process.stdout);
78
+ const rl = readline.createInterface({
79
+ terminal: true,
80
+ input,
81
+ output,
82
+ });
83
+ const screen = new screen_manager_ts_1.default(rl);
84
+ const { promise, resolve, reject } = promise_polyfill_ts_1.PromisePolyfill.withResolver();
85
+ const cancel = () => reject(new errors_ts_1.CancelPromptError());
86
+ if (signal) {
87
+ const abort = () => reject(new errors_ts_1.AbortPromptError({ cause: signal.reason }));
88
+ if (signal.aborted) {
89
+ abort();
90
+ return Object.assign(promise, { cancel });
91
+ }
92
+ signal.addEventListener('abort', abort);
93
+ cleanups.add(() => signal.removeEventListener('abort', abort));
94
+ }
95
+ cleanups.add((0, signal_exit_1.onExit)((code, signal) => {
96
+ reject(new errors_ts_1.ExitPromptError(`User force closed the prompt with ${code} ${signal}`));
97
+ }));
98
+ // SIGINT must be explicitly handled by the prompt so the ExitPromptError can be handled.
99
+ // Otherwise, the prompt will stop and in some scenarios never resolve.
100
+ // Ref issue #1741
101
+ const sigint = () => reject(new errors_ts_1.ExitPromptError(`User force closed the prompt with SIGINT`));
102
+ rl.on('SIGINT', sigint);
103
+ cleanups.add(() => rl.removeListener('SIGINT', sigint));
104
+ // Re-renders only happen when the state change; but the readline cursor could change position
105
+ // and that also requires a re-render (and a manual one because we mute the streams).
106
+ // We set the listener after the initial workLoop to avoid a double render if render triggered
107
+ // by a state change sets the cursor to the right position.
108
+ const checkCursorPos = () => screen.checkCursorPos();
109
+ rl.input.on('keypress', checkCursorPos);
110
+ cleanups.add(() => rl.input.removeListener('keypress', checkCursorPos));
111
+ return (0, hook_engine_ts_1.withHooks)(rl, (cycle) => {
112
+ // The close event triggers immediately when the user press ctrl+c. SignalExit on the other hand
113
+ // triggers after the process is done (which happens after timeouts are done triggering.)
114
+ // We triggers the hooks cleanup phase on rl `close` so active timeouts can be cleared.
115
+ const hooksCleanup = node_async_hooks_1.AsyncResource.bind(() => hook_engine_ts_1.effectScheduler.clearAll());
116
+ rl.on('close', hooksCleanup);
117
+ cleanups.add(() => rl.removeListener('close', hooksCleanup));
118
+ cycle(() => {
119
+ try {
120
+ const nextView = view(config, (value) => {
121
+ setImmediate(() => resolve(value));
122
+ });
123
+ // Typescript won't allow this, but not all users rely on typescript.
124
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
125
+ if (nextView === undefined) {
126
+ const callerFilename = callSites[1]?.getFileName();
127
+ throw new Error(`Prompt functions must return a string.\n at ${callerFilename}`);
128
+ }
129
+ const [content, bottomContent] = typeof nextView === 'string' ? [nextView] : nextView;
130
+ screen.render(content, bottomContent);
131
+ hook_engine_ts_1.effectScheduler.run();
132
+ }
133
+ catch (error) {
134
+ reject(error);
135
+ }
136
+ });
137
+ return Object.assign(promise
138
+ .then((answer) => {
139
+ hook_engine_ts_1.effectScheduler.clearAll();
140
+ return answer;
141
+ }, (error) => {
142
+ hook_engine_ts_1.effectScheduler.clearAll();
143
+ throw error;
144
+ })
145
+ // Wait for the promise to settle, then cleanup.
146
+ .finally(() => {
147
+ cleanups.forEach((cleanup) => cleanup());
148
+ screen.done({ clearContent: Boolean(context.clearPromptOnDone) });
149
+ output.end();
150
+ })
151
+ // Once cleanup is done, let the expose promise resolve/reject to the internal one.
152
+ .then(() => promise), { cancel });
153
+ });
154
+ };
155
+ return prompt;
156
+ }
@@ -0,0 +1,20 @@
1
+ export declare class AbortPromptError extends Error {
2
+ name: string;
3
+ message: string;
4
+ constructor(options?: {
5
+ cause?: unknown;
6
+ });
7
+ }
8
+ export declare class CancelPromptError extends Error {
9
+ name: string;
10
+ message: string;
11
+ }
12
+ export declare class ExitPromptError extends Error {
13
+ name: string;
14
+ }
15
+ export declare class HookError extends Error {
16
+ name: string;
17
+ }
18
+ export declare class ValidationError extends Error {
19
+ name: string;
20
+ }