avo-cli 0.0.3 → 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,749 @@
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.Config = void 0;
7
+ const ejs_1 = __importDefault(require("ejs"));
8
+ const node_os_1 = require("node:os");
9
+ const node_path_1 = require("node:path");
10
+ const node_url_1 = require("node:url");
11
+ const cache_1 = __importDefault(require("../cache"));
12
+ const errors_1 = require("../errors");
13
+ const util_1 = require("../help/util");
14
+ const logger_1 = require("../logger");
15
+ const module_loader_1 = require("../module-loader");
16
+ const performance_1 = require("../performance");
17
+ const settings_1 = require("../settings");
18
+ const determine_priority_1 = require("../util/determine-priority");
19
+ const fs_1 = require("../util/fs");
20
+ const ids_1 = require("../util/ids");
21
+ const os_1 = require("../util/os");
22
+ const util_2 = require("../util/util");
23
+ const ux_1 = require("../ux");
24
+ const theme_1 = require("../ux/theme");
25
+ const plugin_loader_1 = __importDefault(require("./plugin-loader"));
26
+ const ts_path_1 = require("./ts-path");
27
+ const util_3 = require("./util");
28
+ const debug = (0, util_3.makeDebug)();
29
+ const _pjson = cache_1.default.getInstance().get('@oclif/core');
30
+ const BASE = `${_pjson.name}@${_pjson.version}`;
31
+ const ROOT_ONLY_HOOKS = new Set(['preparse']);
32
+ function displayWarnings() {
33
+ if (process.listenerCount('warning') > 1)
34
+ return;
35
+ process.on('warning', (warning) => {
36
+ console.error(warning.stack);
37
+ if (warning.detail)
38
+ console.error(warning.detail);
39
+ });
40
+ }
41
+ function channelFromVersion(version) {
42
+ const m = version.match(/[^-]+(?:-([^.]+))?/);
43
+ return (m && m[1]) || 'stable';
44
+ }
45
+ function isConfig(o) {
46
+ return o && Boolean(o._base);
47
+ }
48
+ class Permutations extends Map {
49
+ validPermutations = new Map();
50
+ add(permutation, commandId) {
51
+ this.validPermutations.set(permutation, commandId);
52
+ for (const id of (0, util_3.collectUsableIds)([permutation])) {
53
+ if (this.has(id)) {
54
+ this.set(id, this.get(id).add(commandId));
55
+ }
56
+ else {
57
+ this.set(id, new Set([commandId]));
58
+ }
59
+ }
60
+ }
61
+ get(key) {
62
+ return super.get(key) ?? new Set();
63
+ }
64
+ getAllValid() {
65
+ return [...this.validPermutations.keys()];
66
+ }
67
+ getValid(key) {
68
+ return this.validPermutations.get(key);
69
+ }
70
+ hasValid(key) {
71
+ return this.validPermutations.has(key);
72
+ }
73
+ }
74
+ class Config {
75
+ options;
76
+ arch;
77
+ bin;
78
+ binAliases;
79
+ binPath;
80
+ cacheDir;
81
+ channel;
82
+ configDir;
83
+ dataDir;
84
+ dirname;
85
+ flexibleTaxonomy;
86
+ home;
87
+ isSingleCommandCLI = false;
88
+ name;
89
+ npmRegistry;
90
+ nsisCustomization;
91
+ pjson;
92
+ platform;
93
+ plugins = new Map();
94
+ root;
95
+ shell;
96
+ theme;
97
+ topicSeparator = ':';
98
+ updateConfig;
99
+ userAgent;
100
+ userPJSON;
101
+ valid;
102
+ version;
103
+ warned = false;
104
+ windows;
105
+ _base = BASE;
106
+ _commandIDs;
107
+ _commands = new Map();
108
+ _topics = new Map();
109
+ commandPermutations = new Permutations();
110
+ pluginLoader;
111
+ rootPlugin;
112
+ topicPermutations = new Permutations();
113
+ constructor(options) {
114
+ this.options = options;
115
+ }
116
+ static async load(opts = module.filename || __dirname) {
117
+ (0, logger_1.setLogger)(opts);
118
+ // Handle the case when a file URL string is passed in such as 'import.meta.url'; covert to file path.
119
+ if (typeof opts === 'string' && opts.startsWith('file://')) {
120
+ opts = (0, node_url_1.fileURLToPath)(opts);
121
+ }
122
+ if (typeof opts === 'string')
123
+ opts = { root: opts };
124
+ if (isConfig(opts)) {
125
+ debug(`reloading config from ${opts._base} to ${BASE}`);
126
+ const pluginMap = new Map(opts.getPluginsList().map((p) => [p.name, p]));
127
+ const config = new Config({ ...opts.options, plugins: pluginMap });
128
+ await config.load();
129
+ return config;
130
+ }
131
+ const config = new Config(opts);
132
+ await config.load();
133
+ return config;
134
+ }
135
+ get commandIDs() {
136
+ if (this._commandIDs)
137
+ return this._commandIDs;
138
+ this._commandIDs = this.commands.map((c) => c.id);
139
+ return this._commandIDs;
140
+ }
141
+ get commands() {
142
+ return [...this._commands.values()];
143
+ }
144
+ get isProd() {
145
+ return (0, util_2.isProd)();
146
+ }
147
+ static get rootPlugin() {
148
+ return this.rootPlugin;
149
+ }
150
+ get topics() {
151
+ return [...this._topics.values()];
152
+ }
153
+ get versionDetails() {
154
+ const [cliVersion, architecture, nodeVersion] = this.userAgent.split(' ');
155
+ return {
156
+ architecture,
157
+ cliVersion,
158
+ nodeVersion,
159
+ osVersion: `${(0, node_os_1.type)()} ${(0, node_os_1.release)()}`,
160
+ pluginVersions: Object.fromEntries([...this.plugins.values()].map((p) => [p.name, { root: p.root, type: p.type, version: p.version }])),
161
+ rootPath: this.root,
162
+ shell: this.shell,
163
+ };
164
+ }
165
+ dir(category) {
166
+ const base = process.env[`XDG_${category.toUpperCase()}_HOME`] ||
167
+ (this.windows && process.env.LOCALAPPDATA) ||
168
+ (0, node_path_1.join)(this.home, category === 'data' ? '.local/share' : '.' + category);
169
+ return (0, node_path_1.join)(base, this.dirname);
170
+ }
171
+ findCommand(id, opts = {}) {
172
+ const lookupId = this.getCmdLookupId(id);
173
+ const command = this._commands.get(lookupId);
174
+ if (opts.must && !command)
175
+ (0, errors_1.error)(`command ${lookupId} not found`);
176
+ return command;
177
+ }
178
+ /**
179
+ * Find all command ids that include the provided command id.
180
+ *
181
+ * For example, if the command ids are:
182
+ * - foo:bar:baz
183
+ * - one:two:three
184
+ *
185
+ * `bar` would return `foo:bar:baz`
186
+ *
187
+ * @param partialCmdId string
188
+ * @param argv string[] process.argv containing the flags and arguments provided by the user
189
+ * @returns string[]
190
+ */
191
+ findMatches(partialCmdId, argv) {
192
+ const flags = argv
193
+ .filter((arg) => !(0, util_1.getHelpFlagAdditions)(this).includes(arg) && arg.startsWith('-'))
194
+ .map((a) => a.replaceAll('-', ''));
195
+ const possibleMatches = [...this.commandPermutations.get(partialCmdId)].map((k) => this._commands.get(k));
196
+ const matches = possibleMatches.filter((command) => {
197
+ const cmdFlags = Object.entries(command.flags).flatMap(([flag, def]) => def.char ? [def.char, flag] : [flag]);
198
+ // A command is a match if the provided flags belong to the full command
199
+ return flags.every((f) => cmdFlags.includes(f));
200
+ });
201
+ return matches;
202
+ }
203
+ findTopic(name, opts = {}) {
204
+ const lookupId = this.getTopicLookupId(name);
205
+ const topic = this._topics.get(lookupId);
206
+ if (topic)
207
+ return topic;
208
+ if (opts.must)
209
+ throw new Error(`topic ${name} not found`);
210
+ }
211
+ /**
212
+ * Returns an array of all command ids. If flexible taxonomy is enabled then all permutations will be appended to the array.
213
+ * @returns string[]
214
+ */
215
+ getAllCommandIDs() {
216
+ return this.getAllCommands().map((c) => c.id);
217
+ }
218
+ /**
219
+ * Returns an array of all commands. If flexible taxonomy is enabled then all permutations will be appended to the array.
220
+ * @returns Command.Loadable[]
221
+ */
222
+ getAllCommands() {
223
+ const commands = [...this._commands.values()];
224
+ const validPermutations = [...this.commandPermutations.getAllValid()];
225
+ for (const permutation of validPermutations) {
226
+ if (!this._commands.has(permutation)) {
227
+ const cmd = this._commands.get(this.getCmdLookupId(permutation));
228
+ commands.push({ ...cmd, id: permutation });
229
+ }
230
+ }
231
+ return commands;
232
+ }
233
+ getPluginsList() {
234
+ return [...this.plugins.values()];
235
+ }
236
+ // eslint-disable-next-line complexity
237
+ async load() {
238
+ settings_1.settings.performanceEnabled =
239
+ (settings_1.settings.performanceEnabled === undefined ? this.options.enablePerf : settings_1.settings.performanceEnabled) ?? false;
240
+ if (settings_1.settings.debug)
241
+ displayWarnings();
242
+ (0, logger_1.setLogger)(this.options);
243
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, 'config.load');
244
+ this.pluginLoader = new plugin_loader_1.default({ plugins: this.options.plugins, root: this.options.root });
245
+ this.rootPlugin = await this.pluginLoader.loadRoot({ pjson: this.options.pjson });
246
+ // Cache the root plugin so that we can reference it later when determining if
247
+ // we should skip ts-node registration for an ESM plugin.
248
+ const cache = cache_1.default.getInstance();
249
+ cache.set('rootPlugin', this.rootPlugin);
250
+ cache.set('exitCodes', this.rootPlugin.pjson.oclif.exitCodes ?? {});
251
+ this.root = this.rootPlugin.root;
252
+ this.pjson = this.rootPlugin.pjson;
253
+ this.plugins.set(this.rootPlugin.name, this.rootPlugin);
254
+ this.root = this.rootPlugin.root;
255
+ this.pjson = this.rootPlugin.pjson;
256
+ this.name = this.pjson.name;
257
+ this.version = this.options.version || this.pjson.version || '0.0.0';
258
+ this.channel = this.options.channel || channelFromVersion(this.version);
259
+ this.valid = this.rootPlugin.valid;
260
+ this.arch = (0, node_os_1.arch)() === 'ia32' ? 'x86' : (0, node_os_1.arch)();
261
+ this.platform = await (0, os_1.getPlatform)();
262
+ this.windows = this.platform === 'win32';
263
+ this.bin = this.pjson.oclif.bin || this.name;
264
+ this.binAliases = this.pjson.oclif.binAliases;
265
+ this.nsisCustomization = this.pjson.oclif.nsisCustomization;
266
+ this.dirname = this.pjson.oclif.dirname || this.name;
267
+ this.flexibleTaxonomy = this.pjson.oclif.flexibleTaxonomy || false;
268
+ // currently, only colons or spaces are valid separators
269
+ if (this.pjson.oclif.topicSeparator && [' ', ':'].includes(this.pjson.oclif.topicSeparator))
270
+ this.topicSeparator = this.pjson.oclif.topicSeparator;
271
+ if (this.platform === 'win32')
272
+ this.dirname = this.dirname.replace('/', '\\');
273
+ this.userAgent = `${this.name}/${this.version} ${this.platform}-${this.arch} node-${process.version}`;
274
+ this.shell = await (0, os_1.getShell)();
275
+ this.home = process.env.HOME || (this.windows && this.windowsHome()) || (0, os_1.getHomeDir)() || (0, node_os_1.tmpdir)();
276
+ this.cacheDir = this.scopedEnvVar('CACHE_DIR') || this.macosCacheDir() || this.dir('cache');
277
+ this.configDir = this.scopedEnvVar('CONFIG_DIR') || this.dir('config');
278
+ this.dataDir = this.scopedEnvVar('DATA_DIR') || this.dir('data');
279
+ this.binPath = this.scopedEnvVar('BINPATH');
280
+ this.npmRegistry = this.scopedEnvVar('NPM_REGISTRY') || this.pjson.oclif.npmRegistry;
281
+ this.theme = await this.loadTheme();
282
+ this.updateConfig = {
283
+ ...this.pjson.oclif.update,
284
+ node: this.pjson.oclif.update?.node ?? {},
285
+ s3: this.buildS3Config(),
286
+ };
287
+ this.isSingleCommandCLI = Boolean(typeof this.pjson.oclif.commands !== 'string' &&
288
+ this.pjson.oclif.commands?.strategy === 'single' &&
289
+ this.pjson.oclif.commands?.target);
290
+ this.maybeAdjustDebugSetting();
291
+ await this.loadPluginsAndCommands();
292
+ debug('config done');
293
+ marker?.addDetails({
294
+ commandPermutations: this.commands.length,
295
+ commands: [...this.plugins.values()].reduce((acc, p) => acc + p.commands.length, 0),
296
+ plugins: this.plugins.size,
297
+ topics: this.topics.length,
298
+ });
299
+ marker?.stop();
300
+ }
301
+ async loadPluginsAndCommands(opts) {
302
+ const pluginsMarker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, 'config.loadAllPlugins');
303
+ const { errors, plugins } = await this.pluginLoader.loadChildren({
304
+ dataDir: this.dataDir,
305
+ devPlugins: this.options.devPlugins,
306
+ force: opts?.force ?? false,
307
+ pluginAdditions: this.options.pluginAdditions,
308
+ rootPlugin: this.rootPlugin,
309
+ userPlugins: this.options.userPlugins,
310
+ });
311
+ this.plugins = plugins;
312
+ pluginsMarker?.stop();
313
+ const commandsMarker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, 'config.loadAllCommands');
314
+ for (const plugin of this.plugins.values()) {
315
+ this.loadCommands(plugin);
316
+ this.loadTopics(plugin);
317
+ }
318
+ commandsMarker?.stop();
319
+ for (const error of errors) {
320
+ this.warn(error);
321
+ }
322
+ }
323
+ async loadTheme() {
324
+ if (this.scopedEnvVarTrue('DISABLE_THEME'))
325
+ return;
326
+ const userThemeFile = (0, node_path_1.resolve)(this.configDir, 'theme.json');
327
+ const getDefaultTheme = async () => {
328
+ if (!this.pjson.oclif.theme)
329
+ return;
330
+ if (typeof this.pjson.oclif.theme === 'string') {
331
+ return (0, fs_1.safeReadJson)((0, node_path_1.resolve)(this.root, this.pjson.oclif.theme));
332
+ }
333
+ return this.pjson.oclif.theme;
334
+ };
335
+ const [defaultTheme, userTheme] = await Promise.all([
336
+ getDefaultTheme(),
337
+ (0, fs_1.safeReadJson)(userThemeFile),
338
+ ]);
339
+ // Merge the default theme with the user theme, giving the user theme precedence.
340
+ const merged = { ...defaultTheme, ...userTheme };
341
+ return Object.keys(merged).length > 0 ? (0, theme_1.parseTheme)(merged) : undefined;
342
+ }
343
+ macosCacheDir() {
344
+ return (this.platform === 'darwin' && (0, node_path_1.join)(this.home, 'Library', 'Caches', this.dirname)) || undefined;
345
+ }
346
+ async runCommand(id, argv = [], cachedCommand = null) {
347
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, `config.runCommand#${id}`);
348
+ debug('runCommand %s %o', id, argv);
349
+ let c = cachedCommand ?? this.findCommand(id);
350
+ if (!c) {
351
+ const matches = this.flexibleTaxonomy ? this.findMatches(id, argv) : [];
352
+ const hookResult = this.flexibleTaxonomy && matches.length > 0
353
+ ? await this.runHook('command_incomplete', { argv, id, matches })
354
+ : await this.runHook('command_not_found', { argv, id });
355
+ if (hookResult.successes[0])
356
+ return hookResult.successes[0].result;
357
+ if (hookResult.failures[0])
358
+ throw hookResult.failures[0].error;
359
+ throw new errors_1.CLIError(`command ${id} not found`);
360
+ }
361
+ if (this.isJitPluginCommand(c)) {
362
+ const pluginName = c.pluginName;
363
+ const pluginVersion = this.pjson.oclif.jitPlugins[pluginName];
364
+ const jitResult = await this.runHook('jit_plugin_not_installed', {
365
+ argv,
366
+ command: c,
367
+ id,
368
+ pluginName,
369
+ pluginVersion,
370
+ });
371
+ if (jitResult.failures[0])
372
+ throw jitResult.failures[0].error;
373
+ if (jitResult.successes[0]) {
374
+ await this.loadPluginsAndCommands({ force: true });
375
+ c = this.findCommand(id) ?? c;
376
+ }
377
+ else {
378
+ // this means that no jit_plugin_not_installed hook exists, so we should run the default behavior
379
+ const result = await this.runHook('command_not_found', { argv, id });
380
+ if (result.successes[0])
381
+ return result.successes[0].result;
382
+ if (result.failures[0])
383
+ throw result.failures[0].error;
384
+ throw new errors_1.CLIError(`command ${id} not found`);
385
+ }
386
+ }
387
+ const command = await c.load();
388
+ await this.runHook('prerun', { argv, Command: command });
389
+ const result = (await command.run(argv, this));
390
+ // If plugins:uninstall was run, we need to remove all the uninstalled plugins
391
+ // from this.plugins so that the postrun hook doesn't attempt to run any
392
+ // hooks that might have existed in the uninstalled plugins.
393
+ if (c.id === 'plugins:uninstall') {
394
+ for (const arg of argv)
395
+ this.plugins.delete(arg);
396
+ }
397
+ await this.runHook('postrun', { argv, Command: command, result });
398
+ marker?.addDetails({ command: id, plugin: c.pluginName });
399
+ marker?.stop();
400
+ return result;
401
+ }
402
+ async runHook(event, opts, timeout, captureErrors) {
403
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, `config.runHook#${event}`);
404
+ debug('start %s hook', event);
405
+ const search = (m) => {
406
+ if (typeof m === 'function')
407
+ return m;
408
+ if (m.default && typeof m.default === 'function')
409
+ return m.default;
410
+ return Object.values(m).find((m) => typeof m === 'function');
411
+ };
412
+ const withTimeout = async (ms, promise) => {
413
+ let id;
414
+ const timeout = new Promise((_, reject) => {
415
+ id = setTimeout(() => {
416
+ reject(new Error(`Timed out after ${ms} ms.`));
417
+ }, ms).unref();
418
+ });
419
+ return Promise.race([promise, timeout]).then((result) => {
420
+ clearTimeout(id);
421
+ return result;
422
+ });
423
+ };
424
+ const final = {
425
+ failures: [],
426
+ successes: [],
427
+ };
428
+ const plugins = ROOT_ONLY_HOOKS.has(event) ? [this.rootPlugin] : [...this.plugins.values()];
429
+ const promises = plugins.map(async (p) => {
430
+ const debug = (0, logger_1.makeDebug)([p.name, 'hooks', event].join(':'));
431
+ const context = {
432
+ config: this,
433
+ debug,
434
+ error(message, options = {}) {
435
+ (0, errors_1.error)(message, options);
436
+ },
437
+ exit(code = 0) {
438
+ (0, errors_1.exit)(code);
439
+ },
440
+ log(message, ...args) {
441
+ ux_1.ux.stdout(message, ...args);
442
+ },
443
+ warn(message) {
444
+ (0, errors_1.warn)(message);
445
+ },
446
+ };
447
+ const hooks = p.hooks[event] || [];
448
+ for (const hook of hooks) {
449
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, `config.runHook#${p.name}(${hook.target})`);
450
+ try {
451
+ /* eslint-disable no-await-in-loop */
452
+ const { filePath, isESM, module } = await (0, module_loader_1.loadWithData)(p, await (0, ts_path_1.tsPath)(p.root, hook.target, p));
453
+ debug('start', isESM ? '(import)' : '(require)', filePath);
454
+ // If no hook is found using the identifier, then we should `search` for the hook but only if the hook identifier is 'default'
455
+ // A named identifier (e.g. MY_HOOK) that isn't found indicates that the hook isn't implemented in the plugin.
456
+ const hookFn = module[hook.identifier] ?? (hook.identifier === 'default' ? search(module) : undefined);
457
+ if (!hookFn) {
458
+ debug('No hook found for hook definition:', hook);
459
+ continue;
460
+ }
461
+ const result = timeout
462
+ ? await withTimeout(timeout, hookFn.call(context, { ...opts, config: this, context }))
463
+ : await hookFn.call(context, { ...opts, config: this, context });
464
+ final.successes.push({ plugin: p, result });
465
+ if (p.name === '@oclif/plugin-legacy' && event === 'init') {
466
+ this.insertLegacyPlugins(result);
467
+ }
468
+ debug('done');
469
+ }
470
+ catch (error) {
471
+ final.failures.push({ error: error, plugin: p });
472
+ debug(error);
473
+ // Do not throw the error if
474
+ // captureErrors is set to true
475
+ // error.oclif.exit is undefined or 0
476
+ // error.code is MODULE_NOT_FOUND
477
+ if (!captureErrors &&
478
+ error.oclif?.exit !== undefined &&
479
+ error.oclif?.exit !== 0 &&
480
+ error.code !== 'MODULE_NOT_FOUND')
481
+ throw error;
482
+ }
483
+ marker?.addDetails({
484
+ event,
485
+ hook: hook.target,
486
+ plugin: p.name,
487
+ });
488
+ marker?.stop();
489
+ }
490
+ });
491
+ await Promise.all(promises);
492
+ debug('%s hook done', event);
493
+ marker?.stop();
494
+ return final;
495
+ }
496
+ s3Key(type, ext, options = {}) {
497
+ if (typeof ext === 'object')
498
+ options = ext;
499
+ else if (ext)
500
+ options.ext = ext;
501
+ const template = this.updateConfig.s3?.templates?.[options.platform ? 'target' : 'vanilla'][type] ?? '';
502
+ return ejs_1.default.render(template, { ...this, ...options });
503
+ }
504
+ s3Url(key) {
505
+ const { host } = this.updateConfig.s3 ?? { host: undefined };
506
+ if (!host)
507
+ throw new Error('no s3 host is set');
508
+ const url = new node_url_1.URL(host);
509
+ url.pathname = (0, node_path_1.join)(url.pathname, key);
510
+ return url.toString();
511
+ }
512
+ scopedEnvVar(k) {
513
+ return process.env[this.scopedEnvVarKeys(k).find((k) => process.env[k])];
514
+ }
515
+ /**
516
+ * this DOES NOT account for bin aliases, use scopedEnvVarKeys instead which will account for bin aliases
517
+ * @param k {string}, the unscoped key you want to get the value for
518
+ * @returns {string} returns the env var key
519
+ */
520
+ scopedEnvVarKey(k) {
521
+ return [this.bin, k]
522
+ .map((p) => p.replaceAll('@', '').replaceAll(/[/-]/g, '_'))
523
+ .join('_')
524
+ .toUpperCase();
525
+ }
526
+ /**
527
+ * gets the scoped env var keys for a given key, including bin aliases
528
+ * @param k {string}, the env key e.g. 'debug'
529
+ * @returns {string[]} e.g. ['SF_DEBUG', 'SFDX_DEBUG']
530
+ */
531
+ scopedEnvVarKeys(k) {
532
+ return [this.bin, ...(this.binAliases ?? [])]
533
+ .filter(Boolean)
534
+ .map((alias) => [alias.replaceAll('@', '').replaceAll(/[/-]/g, '_'), k].join('_').toUpperCase());
535
+ }
536
+ scopedEnvVarTrue(k) {
537
+ const v = this.scopedEnvVar(k);
538
+ return v === '1' || v === 'true';
539
+ }
540
+ windowsHome() {
541
+ return this.windowsHomedriveHome() || this.windowsUserprofileHome();
542
+ }
543
+ windowsHomedriveHome() {
544
+ return process.env.HOMEDRIVE && process.env.HOMEPATH && (0, node_path_1.join)(process.env.HOMEDRIVE, process.env.HOMEPATH);
545
+ }
546
+ windowsUserprofileHome() {
547
+ return process.env.USERPROFILE;
548
+ }
549
+ buildS3Config() {
550
+ const s3 = this.pjson.oclif.update?.s3;
551
+ const bucket = this.scopedEnvVar('S3_BUCKET') ?? s3?.bucket;
552
+ const host = s3?.host ?? (bucket && `https://${bucket}.s3.amazonaws.com`);
553
+ const templates = {
554
+ ...s3?.templates,
555
+ target: {
556
+ baseDir: '<%- bin %>',
557
+ manifest: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- platform %>-<%- arch %>",
558
+ unversioned: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-<%- platform %>-<%- arch %><%- ext %>",
559
+ versioned: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-v<%- version %>/<%- bin %>-v<%- version %>-<%- platform %>-<%- arch %><%- ext %>",
560
+ ...(s3?.templates && s3?.templates.target),
561
+ },
562
+ vanilla: {
563
+ baseDir: '<%- bin %>',
564
+ manifest: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %>version",
565
+ unversioned: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %><%- ext %>",
566
+ versioned: "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-v<%- version %>/<%- bin %>-v<%- version %><%- ext %>",
567
+ ...(s3?.templates && s3?.templates.vanilla),
568
+ },
569
+ };
570
+ return {
571
+ bucket,
572
+ host,
573
+ templates,
574
+ };
575
+ }
576
+ getCmdLookupId(id) {
577
+ if (this._commands.has(id))
578
+ return id;
579
+ if (this.commandPermutations.hasValid(id))
580
+ return this.commandPermutations.getValid(id);
581
+ return id;
582
+ }
583
+ getTopicLookupId(id) {
584
+ if (this._topics.has(id))
585
+ return id;
586
+ if (this.topicPermutations.hasValid(id))
587
+ return this.topicPermutations.getValid(id);
588
+ return id;
589
+ }
590
+ /**
591
+ * Insert legacy plugins
592
+ *
593
+ * Replace invalid CLI plugins (cli-engine plugins, mostly Heroku) loaded via `this.loadPlugins`
594
+ * with oclif-compatible ones returned by @oclif/plugin-legacy init hook.
595
+ *
596
+ * @param plugins array of oclif-compatible plugins
597
+ */
598
+ insertLegacyPlugins(plugins) {
599
+ for (const plugin of plugins) {
600
+ this.plugins.set(plugin.name, plugin);
601
+ // Delete all commands from the legacy plugin so that we can re-add them.
602
+ // This is necessary because determinePriority will pick the initial
603
+ // command that was added, which won't have been converted by PluginLegacy yet.
604
+ for (const cmd of plugin.commands ?? []) {
605
+ this._commands.delete(cmd.id);
606
+ for (const alias of [...(cmd.aliases ?? []), ...(cmd.hiddenAliases ?? [])]) {
607
+ this._commands.delete(alias);
608
+ }
609
+ }
610
+ this.loadCommands(plugin);
611
+ }
612
+ }
613
+ isJitPluginCommand(c) {
614
+ // Return true if the command's plugin is listed under oclif.jitPlugins AND if the plugin hasn't been loaded to this.plugins
615
+ return (Object.keys(this.pjson.oclif.jitPlugins ?? {}).includes(c.pluginName ?? '') &&
616
+ Boolean(c?.pluginName && !this.plugins.has(c.pluginName)));
617
+ }
618
+ loadCommands(plugin) {
619
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, `config.loadCommands#${plugin.name}`, { plugin: plugin.name });
620
+ for (const command of plugin.commands) {
621
+ // set canonical command id
622
+ if (this._commands.has(command.id)) {
623
+ const prioritizedCommand = (0, determine_priority_1.determinePriority)(this.pjson.oclif.plugins ?? [], [
624
+ this._commands.get(command.id),
625
+ command,
626
+ ]);
627
+ this._commands.set(prioritizedCommand.id, prioritizedCommand);
628
+ }
629
+ else {
630
+ this._commands.set(command.id, command);
631
+ }
632
+ // v3 moved command id permutations to the manifest, but some plugins may not have
633
+ // the new manifest yet. For those, we need to calculate the permutations here.
634
+ const permutations = this.flexibleTaxonomy && command.permutations === undefined
635
+ ? (0, util_3.getCommandIdPermutations)(command.id)
636
+ : (command.permutations ?? [command.id]);
637
+ // set every permutation
638
+ for (const permutation of permutations) {
639
+ this.commandPermutations.add(permutation, command.id);
640
+ }
641
+ const handleAlias = (alias, hidden = false) => {
642
+ const aliasWithDefaultTopicSeparator = (0, ids_1.toStandardizedId)(alias, this);
643
+ if (this._commands.has(aliasWithDefaultTopicSeparator)) {
644
+ const prioritizedCommand = (0, determine_priority_1.determinePriority)(this.pjson.oclif.plugins ?? [], [
645
+ this._commands.get(aliasWithDefaultTopicSeparator),
646
+ command,
647
+ ]);
648
+ this._commands.set(aliasWithDefaultTopicSeparator, {
649
+ ...prioritizedCommand,
650
+ id: aliasWithDefaultTopicSeparator,
651
+ });
652
+ }
653
+ else {
654
+ this._commands.set(aliasWithDefaultTopicSeparator, { ...command, hidden, id: aliasWithDefaultTopicSeparator });
655
+ }
656
+ // set every permutation of the aliases
657
+ // v3 moved command alias permutations to the manifest, but some plugins may not have
658
+ // the new manifest yet. For those, we need to calculate the permutations here.
659
+ const aliasPermutations = this.flexibleTaxonomy && command.aliasPermutations === undefined
660
+ ? (0, util_3.getCommandIdPermutations)(aliasWithDefaultTopicSeparator)
661
+ : (command.permutations ?? [aliasWithDefaultTopicSeparator]);
662
+ // set every permutation
663
+ for (const permutation of aliasPermutations) {
664
+ this.commandPermutations.add(permutation, command.id);
665
+ }
666
+ };
667
+ // set command aliases
668
+ for (const alias of command.aliases ?? []) {
669
+ handleAlias(alias);
670
+ }
671
+ // set hidden command aliases
672
+ for (const alias of command.hiddenAliases ?? []) {
673
+ handleAlias(alias, true);
674
+ }
675
+ }
676
+ marker?.addDetails({ commandCount: plugin.commands.length });
677
+ marker?.stop();
678
+ }
679
+ loadTopics(plugin) {
680
+ const marker = performance_1.Performance.mark(performance_1.OCLIF_MARKER_OWNER, `config.loadTopics#${plugin.name}`, { plugin: plugin.name });
681
+ for (const topic of (0, util_2.compact)(plugin.topics)) {
682
+ const existing = this._topics.get(topic.name);
683
+ if (existing) {
684
+ existing.description = topic.description || existing.description;
685
+ existing.hidden = existing.hidden || topic.hidden;
686
+ }
687
+ else {
688
+ this._topics.set(topic.name, topic);
689
+ }
690
+ const permutations = this.flexibleTaxonomy ? (0, util_3.getCommandIdPermutations)(topic.name) : [topic.name];
691
+ for (const permutation of permutations) {
692
+ this.topicPermutations.add(permutation, topic.name);
693
+ }
694
+ }
695
+ // Add missing topics for displaying help when partial commands are entered.
696
+ for (const c of plugin.commands.filter((c) => !c.hidden)) {
697
+ const parts = c.id.split(':');
698
+ while (parts.length > 0) {
699
+ const name = parts.join(':');
700
+ if (name && !this._topics.has(name)) {
701
+ this._topics.set(name, { description: c.summary || c.description, name });
702
+ }
703
+ parts.pop();
704
+ }
705
+ }
706
+ marker?.stop();
707
+ }
708
+ maybeAdjustDebugSetting() {
709
+ if (this.scopedEnvVarTrue('DEBUG')) {
710
+ settings_1.settings.debug = true;
711
+ displayWarnings();
712
+ }
713
+ }
714
+ warn(err, scope) {
715
+ if (this.warned)
716
+ return;
717
+ if (typeof err === 'string') {
718
+ process.emitWarning(err);
719
+ return;
720
+ }
721
+ if (err instanceof Error) {
722
+ const modifiedErr = err;
723
+ modifiedErr.name = `${err.name} Plugin: ${this.name}`;
724
+ modifiedErr.detail = (0, util_2.compact)([
725
+ err.detail,
726
+ `module: ${this._base}`,
727
+ scope && `task: ${scope}`,
728
+ `plugin: ${this.name}`,
729
+ `root: ${this.root}`,
730
+ 'See more details with DEBUG=*',
731
+ ]).join('\n');
732
+ process.emitWarning(err);
733
+ return;
734
+ }
735
+ // err is an object
736
+ process.emitWarning('Config.warn expected either a string or Error, but instead received an object');
737
+ err.name = `${err.name} Plugin: ${this.name}`;
738
+ err.detail = (0, util_2.compact)([
739
+ err.detail,
740
+ `module: ${this._base}`,
741
+ scope && `task: ${scope}`,
742
+ `plugin: ${this.name}`,
743
+ `root: ${this.root}`,
744
+ 'See more details with DEBUG=*',
745
+ ]).join('\n');
746
+ process.emitWarning(JSON.stringify(err));
747
+ }
748
+ }
749
+ exports.Config = Config;