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.
- checksums.yaml +4 -4
- data/README.md +605 -0
- data/avo-cli.gemspec +22 -23
- data/exe/avo +6 -0
- data/lib/avo/cli/runner.rb +86 -0
- data/lib/avo/cli/version.rb +7 -0
- data/lib/avo-cli.rb +5 -0
- data/payload/README.md +605 -0
- data/payload/bin/run.cmd +3 -0
- data/payload/bin/run.js +5 -0
- data/payload/dist/base-command.js +60 -0
- data/payload/dist/client.js +77 -0
- data/payload/dist/commands/create.js +26 -0
- data/payload/dist/commands/delete.js +22 -0
- data/payload/dist/commands/get.js +19 -0
- data/payload/dist/commands/list.js +47 -0
- data/payload/dist/commands/login.js +93 -0
- data/payload/dist/commands/logout.js +13 -0
- data/payload/dist/commands/schema.js +58 -0
- data/payload/dist/commands/update.js +27 -0
- data/payload/dist/config.js +57 -0
- data/payload/dist/data.js +33 -0
- data/payload/dist/errors.js +93 -0
- data/payload/dist/hooks/command-not-found.js +22 -0
- data/payload/dist/index.js +1 -0
- data/payload/dist/list.js +7 -0
- data/payload/dist/payload.js +35 -0
- data/payload/dist/record-command.js +51 -0
- data/payload/dist/schema.js +29 -0
- data/payload/dist/store.js +91 -0
- data/payload/dist/suggest.js +29 -0
- data/payload/dist/table.js +40 -0
- data/payload/dist/write-command.js +26 -0
- data/payload/node_modules/@inquirer/ansi/LICENSE +22 -0
- data/payload/node_modules/@inquirer/ansi/README.md +89 -0
- data/payload/node_modules/@inquirer/ansi/dist/commonjs/index.d.ts +14 -0
- data/payload/node_modules/@inquirer/ansi/dist/commonjs/index.js +28 -0
- data/payload/node_modules/@inquirer/ansi/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/ansi/dist/esm/index.d.ts +14 -0
- data/payload/node_modules/@inquirer/ansi/dist/esm/index.js +21 -0
- data/payload/node_modules/@inquirer/ansi/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/ansi/package.json +97 -0
- data/payload/node_modules/@inquirer/core/LICENSE +22 -0
- data/payload/node_modules/@inquirer/core/README.md +383 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/index.d.ts +13 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/index.js +46 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/Separator.d.ts +10 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/Separator.js +28 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/create-prompt.d.ts +4 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/create-prompt.js +156 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/errors.d.ts +20 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/errors.js +29 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/hook-engine.d.ts +23 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/hook-engine.js +118 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/key.d.ts +12 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/key.js +29 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/make-theme.d.ts +3 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/make-theme.js +33 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/pagination/use-pagination.d.ts +16 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/pagination/use-pagination.js +124 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/promise-polyfill.d.ts +7 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/promise-polyfill.js +18 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/screen-manager.d.ts +14 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/screen-manager.js +82 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/theme.d.ts +155 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/theme.js +27 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-effect.d.ts +2 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-effect.js +14 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-keypress.d.ts +3 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-keypress.js +23 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-memo.d.ts +1 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-memo.js +17 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-prefix.d.ts +5 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-prefix.js +38 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-ref.d.ts +6 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-ref.js +7 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-state.d.ts +4 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/use-state.js +23 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/utils.d.ts +13 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/lib/utils.js +32 -0
- data/payload/node_modules/@inquirer/core/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/core/dist/esm/index.d.ts +13 -0
- data/payload/node_modules/@inquirer/core/dist/esm/index.js +12 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/Separator.d.ts +10 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/Separator.js +21 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/create-prompt.d.ts +4 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js +117 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/errors.d.ts +20 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/errors.js +21 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/hook-engine.d.ts +23 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/hook-engine.js +110 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/key.d.ts +12 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/key.js +19 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/make-theme.d.ts +3 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/make-theme.js +30 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.d.ts +16 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.js +121 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.d.ts +7 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.js +14 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/screen-manager.d.ts +14 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/screen-manager.js +79 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/theme.d.ts +155 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/theme.js +21 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-effect.d.ts +2 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-effect.js +11 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-keypress.d.ts +3 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-keypress.js +20 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-memo.d.ts +1 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-memo.js +14 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-prefix.d.ts +5 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-prefix.js +35 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-ref.d.ts +6 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-ref.js +4 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-state.d.ts +4 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/use-state.js +20 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/utils.d.ts +13 -0
- data/payload/node_modules/@inquirer/core/dist/esm/lib/utils.js +25 -0
- data/payload/node_modules/@inquirer/core/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/core/node_modules/mute-stream/LICENSE +15 -0
- data/payload/node_modules/@inquirer/core/node_modules/mute-stream/README.md +68 -0
- data/payload/node_modules/@inquirer/core/node_modules/mute-stream/lib/index.js +142 -0
- data/payload/node_modules/@inquirer/core/node_modules/mute-stream/package.json +54 -0
- data/payload/node_modules/@inquirer/core/package.json +119 -0
- data/payload/node_modules/@inquirer/figures/LICENSE +22 -0
- data/payload/node_modules/@inquirer/figures/dist/commonjs/index.d.ts +275 -0
- data/payload/node_modules/@inquirer/figures/dist/commonjs/index.js +321 -0
- data/payload/node_modules/@inquirer/figures/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/figures/dist/esm/index.d.ts +275 -0
- data/payload/node_modules/@inquirer/figures/dist/esm/index.js +314 -0
- data/payload/node_modules/@inquirer/figures/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/figures/package.json +98 -0
- data/payload/node_modules/@inquirer/input/LICENSE +22 -0
- data/payload/node_modules/@inquirer/input/README.md +101 -0
- data/payload/node_modules/@inquirer/input/dist/commonjs/index.d.ts +20 -0
- data/payload/node_modules/@inquirer/input/dist/commonjs/index.js +99 -0
- data/payload/node_modules/@inquirer/input/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/input/dist/esm/index.d.ts +20 -0
- data/payload/node_modules/@inquirer/input/dist/esm/index.js +97 -0
- data/payload/node_modules/@inquirer/input/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/input/package.json +110 -0
- data/payload/node_modules/@inquirer/password/LICENSE +22 -0
- data/payload/node_modules/@inquirer/password/README.md +93 -0
- data/payload/node_modules/@inquirer/password/dist/commonjs/index.d.ts +10 -0
- data/payload/node_modules/@inquirer/password/dist/commonjs/index.js +57 -0
- data/payload/node_modules/@inquirer/password/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/password/dist/esm/index.d.ts +10 -0
- data/payload/node_modules/@inquirer/password/dist/esm/index.js +55 -0
- data/payload/node_modules/@inquirer/password/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/password/package.json +111 -0
- data/payload/node_modules/@inquirer/type/LICENSE +22 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/index.d.ts +2 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/index.js +18 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/inquirer.d.ts +38 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/inquirer.js +2 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/utils.d.ts +29 -0
- data/payload/node_modules/@inquirer/type/dist/commonjs/utils.js +3 -0
- data/payload/node_modules/@inquirer/type/dist/esm/index.d.ts +2 -0
- data/payload/node_modules/@inquirer/type/dist/esm/index.js +2 -0
- data/payload/node_modules/@inquirer/type/dist/esm/inquirer.d.ts +38 -0
- data/payload/node_modules/@inquirer/type/dist/esm/inquirer.js +1 -0
- data/payload/node_modules/@inquirer/type/dist/esm/package.json +3 -0
- data/payload/node_modules/@inquirer/type/dist/esm/utils.d.ts +29 -0
- data/payload/node_modules/@inquirer/type/dist/esm/utils.js +2 -0
- data/payload/node_modules/@inquirer/type/package.json +106 -0
- data/payload/node_modules/@oclif/core/LICENSE +21 -0
- data/payload/node_modules/@oclif/core/README.md +150 -0
- data/payload/node_modules/@oclif/core/lib/args.d.ts +56 -0
- data/payload/node_modules/@oclif/core/lib/args.js +85 -0
- data/payload/node_modules/@oclif/core/lib/cache.d.ts +27 -0
- data/payload/node_modules/@oclif/core/lib/cache.js +40 -0
- data/payload/node_modules/@oclif/core/lib/command.d.ts +192 -0
- data/payload/node_modules/@oclif/core/lib/command.js +350 -0
- data/payload/node_modules/@oclif/core/lib/config/config.d.ts +135 -0
- data/payload/node_modules/@oclif/core/lib/config/config.js +749 -0
- data/payload/node_modules/@oclif/core/lib/config/index.d.ts +3 -0
- data/payload/node_modules/@oclif/core/lib/config/index.js +9 -0
- data/payload/node_modules/@oclif/core/lib/config/plugin-loader.d.ts +38 -0
- data/payload/node_modules/@oclif/core/lib/config/plugin-loader.js +188 -0
- data/payload/node_modules/@oclif/core/lib/config/plugin.d.ts +51 -0
- data/payload/node_modules/@oclif/core/lib/config/plugin.js +373 -0
- data/payload/node_modules/@oclif/core/lib/config/ts-path.d.ts +9 -0
- data/payload/node_modules/@oclif/core/lib/config/ts-path.js +293 -0
- data/payload/node_modules/@oclif/core/lib/config/util.d.ts +23 -0
- data/payload/node_modules/@oclif/core/lib/config/util.js +54 -0
- data/payload/node_modules/@oclif/core/lib/constraints.d.ts +217 -0
- data/payload/node_modules/@oclif/core/lib/constraints.js +638 -0
- data/payload/node_modules/@oclif/core/lib/errors/error.d.ts +8 -0
- data/payload/node_modules/@oclif/core/lib/errors/error.js +63 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/cli.d.ts +29 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/cli.js +77 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/exit.d.ts +7 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/exit.js +14 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/module-load.d.ts +6 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/module-load.js +12 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/pretty-print.d.ts +9 -0
- data/payload/node_modules/@oclif/core/lib/errors/errors/pretty-print.js +67 -0
- data/payload/node_modules/@oclif/core/lib/errors/exit.d.ts +1 -0
- data/payload/node_modules/@oclif/core/lib/errors/exit.js +7 -0
- data/payload/node_modules/@oclif/core/lib/errors/handle.d.ts +14 -0
- data/payload/node_modules/@oclif/core/lib/errors/handle.js +60 -0
- data/payload/node_modules/@oclif/core/lib/errors/index.d.ts +8 -0
- data/payload/node_modules/@oclif/core/lib/errors/index.js +17 -0
- data/payload/node_modules/@oclif/core/lib/errors/warn.d.ts +8 -0
- data/payload/node_modules/@oclif/core/lib/errors/warn.js +40 -0
- data/payload/node_modules/@oclif/core/lib/execute.d.ts +44 -0
- data/payload/node_modules/@oclif/core/lib/execute.js +61 -0
- data/payload/node_modules/@oclif/core/lib/flags.d.ts +181 -0
- data/payload/node_modules/@oclif/core/lib/flags.js +129 -0
- data/payload/node_modules/@oclif/core/lib/flush.d.ts +1 -0
- data/payload/node_modules/@oclif/core/lib/flush.js +26 -0
- data/payload/node_modules/@oclif/core/lib/help/command.d.ts +33 -0
- data/payload/node_modules/@oclif/core/lib/help/command.js +352 -0
- data/payload/node_modules/@oclif/core/lib/help/docopts.d.ts +69 -0
- data/payload/node_modules/@oclif/core/lib/help/docopts.js +198 -0
- data/payload/node_modules/@oclif/core/lib/help/formatter.d.ts +96 -0
- data/payload/node_modules/@oclif/core/lib/help/formatter.js +194 -0
- data/payload/node_modules/@oclif/core/lib/help/index.d.ts +46 -0
- data/payload/node_modules/@oclif/core/lib/help/index.js +345 -0
- data/payload/node_modules/@oclif/core/lib/help/root.d.ts +11 -0
- data/payload/node_modules/@oclif/core/lib/help/root.js +47 -0
- data/payload/node_modules/@oclif/core/lib/help/util.d.ts +7 -0
- data/payload/node_modules/@oclif/core/lib/help/util.js +99 -0
- data/payload/node_modules/@oclif/core/lib/index.d.ts +20 -0
- data/payload/node_modules/@oclif/core/lib/index.js +101 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/alphabet.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/alphabet.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/args.d.ts +22 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/args.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/config.d.ts +139 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/config.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/errors.d.ts +27 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/errors.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/flags.d.ts +34 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/flags.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/help.d.ts +58 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/help.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/hooks.d.ts +185 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/hooks.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/index.d.ts +16 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/index.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/logger.d.ts +9 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/logger.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/manifest.d.ts +7 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/manifest.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/parser.d.ts +520 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/parser.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/pjson.d.ts +314 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/pjson.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/plugin.d.ts +104 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/plugin.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/s3-manifest.d.ts +14 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/s3-manifest.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/theme.d.ts +32 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/theme.js +44 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/topic.d.ts +5 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/topic.js +2 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/ts-config.d.ts +23 -0
- data/payload/node_modules/@oclif/core/lib/interfaces/ts-config.js +2 -0
- data/payload/node_modules/@oclif/core/lib/logger.d.ts +14 -0
- data/payload/node_modules/@oclif/core/lib/logger.js +89 -0
- data/payload/node_modules/@oclif/core/lib/main.d.ts +4 -0
- data/payload/node_modules/@oclif/core/lib/main.js +106 -0
- data/payload/node_modules/@oclif/core/lib/module-loader.d.ts +71 -0
- data/payload/node_modules/@oclif/core/lib/module-loader.js +206 -0
- data/payload/node_modules/@oclif/core/lib/parser/errors.d.ts +58 -0
- data/payload/node_modules/@oclif/core/lib/parser/errors.js +117 -0
- data/payload/node_modules/@oclif/core/lib/parser/help.d.ts +3 -0
- data/payload/node_modules/@oclif/core/lib/parser/help.js +29 -0
- data/payload/node_modules/@oclif/core/lib/parser/index.d.ts +5 -0
- data/payload/node_modules/@oclif/core/lib/parser/index.js +25 -0
- data/payload/node_modules/@oclif/core/lib/parser/parse.d.ts +37 -0
- data/payload/node_modules/@oclif/core/lib/parser/parse.js +545 -0
- data/payload/node_modules/@oclif/core/lib/parser/validate.d.ts +5 -0
- data/payload/node_modules/@oclif/core/lib/parser/validate.js +287 -0
- data/payload/node_modules/@oclif/core/lib/performance.d.ts +73 -0
- data/payload/node_modules/@oclif/core/lib/performance.js +227 -0
- data/payload/node_modules/@oclif/core/lib/screen.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/screen.js +20 -0
- data/payload/node_modules/@oclif/core/lib/settings.d.ts +36 -0
- data/payload/node_modules/@oclif/core/lib/settings.js +7 -0
- data/payload/node_modules/@oclif/core/lib/symbols.d.ts +1 -0
- data/payload/node_modules/@oclif/core/lib/symbols.js +4 -0
- data/payload/node_modules/@oclif/core/lib/util/aggregate-flags.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/util/aggregate-flags.js +12 -0
- data/payload/node_modules/@oclif/core/lib/util/cache-command.d.ts +3 -0
- data/payload/node_modules/@oclif/core/lib/util/cache-command.js +120 -0
- data/payload/node_modules/@oclif/core/lib/util/cache-default-value.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/util/cache-default-value.js +28 -0
- data/payload/node_modules/@oclif/core/lib/util/determine-priority.d.ts +18 -0
- data/payload/node_modules/@oclif/core/lib/util/determine-priority.js +51 -0
- data/payload/node_modules/@oclif/core/lib/util/ensure-arg-object.d.ts +12 -0
- data/payload/node_modules/@oclif/core/lib/util/ensure-arg-object.js +13 -0
- data/payload/node_modules/@oclif/core/lib/util/find-root.d.ts +16 -0
- data/payload/node_modules/@oclif/core/lib/util/find-root.js +185 -0
- data/payload/node_modules/@oclif/core/lib/util/fs.d.ts +35 -0
- data/payload/node_modules/@oclif/core/lib/util/fs.js +93 -0
- data/payload/node_modules/@oclif/core/lib/util/ids.d.ts +3 -0
- data/payload/node_modules/@oclif/core/lib/util/ids.js +11 -0
- data/payload/node_modules/@oclif/core/lib/util/os.d.ts +19 -0
- data/payload/node_modules/@oclif/core/lib/util/os.js +58 -0
- data/payload/node_modules/@oclif/core/lib/util/read-pjson.d.ts +7 -0
- data/payload/node_modules/@oclif/core/lib/util/read-pjson.js +55 -0
- data/payload/node_modules/@oclif/core/lib/util/read-tsconfig.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/util/read-tsconfig.js +77 -0
- data/payload/node_modules/@oclif/core/lib/util/util.d.ts +23 -0
- data/payload/node_modules/@oclif/core/lib/util/util.js +103 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/base.d.ts +34 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/base.js +183 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/simple.d.ts +11 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/simple.js +47 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/spinner.d.ts +19 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/spinner.js +88 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/types.d.ts +5 -0
- data/payload/node_modules/@oclif/core/lib/ux/action/types.js +2 -0
- data/payload/node_modules/@oclif/core/lib/ux/colorize-json.d.ts +29 -0
- data/payload/node_modules/@oclif/core/lib/ux/colorize-json.js +100 -0
- data/payload/node_modules/@oclif/core/lib/ux/index.d.ts +70 -0
- data/payload/node_modules/@oclif/core/lib/ux/index.js +89 -0
- data/payload/node_modules/@oclif/core/lib/ux/list.d.ts +3 -0
- data/payload/node_modules/@oclif/core/lib/ux/list.js +28 -0
- data/payload/node_modules/@oclif/core/lib/ux/supports-color.d.ts +1 -0
- data/payload/node_modules/@oclif/core/lib/ux/supports-color.js +7 -0
- data/payload/node_modules/@oclif/core/lib/ux/theme.d.ts +9 -0
- data/payload/node_modules/@oclif/core/lib/ux/theme.js +45 -0
- data/payload/node_modules/@oclif/core/lib/ux/write.d.ts +2 -0
- data/payload/node_modules/@oclif/core/lib/ux/write.js +34 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/LICENSE.md +23 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/README.md +57 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.d.ts +9 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.js +59 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.d.ts +9 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.js +54 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/dist/esm/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/balanced-match/package.json +68 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/LICENSE +23 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/README.md +105 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.d.ts +8 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.js +289 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.d.ts +8 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.js +285 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/dist/esm/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/brace-expansion/package.json +64 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/LICENSE +202 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/README.md +389 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/bin/cli.js +218 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/ejs.js +1820 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/ejs.min.js +1 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/jakefile.js +206 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/ejs.js +853 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/package.json +1 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/parseargs.js +122 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/cjs/utils.js +242 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/ejs.js +936 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/parseargs.js +136 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/lib/esm/utils.js +259 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/package.json +49 -0
- data/payload/node_modules/@oclif/core/node_modules/ejs/usage.txt +24 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/LICENSE.md +55 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/README.md +528 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.d.ts +22 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.js +845 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.js +150 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.js +30 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.d.ts +174 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.js +1127 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.d.ts +22 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.js +841 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/ast.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.js +146 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.js +26 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/escape.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.d.ts +174 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.js +1114 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/index.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/package.json +3 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.js +34 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
- data/payload/node_modules/@oclif/core/node_modules/minimatch/package.json +73 -0
- data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/index.js +216 -0
- data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/license +9 -0
- data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/package.json +62 -0
- data/payload/node_modules/@oclif/core/node_modules/wrap-ansi/readme.md +91 -0
- data/payload/node_modules/@oclif/core/package.json +135 -0
- data/payload/node_modules/@oclif/plugin-help/LICENSE +21 -0
- data/payload/node_modules/@oclif/plugin-help/README.md +35 -0
- data/payload/node_modules/@oclif/plugin-help/lib/commands/help.d.ts +12 -0
- data/payload/node_modules/@oclif/plugin-help/lib/commands/help.js +20 -0
- data/payload/node_modules/@oclif/plugin-help/lib/index.d.ts +4 -0
- data/payload/node_modules/@oclif/plugin-help/lib/index.js +4 -0
- data/payload/node_modules/@oclif/plugin-help/oclif.manifest.json +43 -0
- data/payload/node_modules/@oclif/plugin-help/package.json +68 -0
- data/payload/node_modules/ansi-escapes/index.d.ts +248 -0
- data/payload/node_modules/ansi-escapes/index.js +157 -0
- data/payload/node_modules/ansi-escapes/license +9 -0
- data/payload/node_modules/ansi-escapes/package.json +57 -0
- data/payload/node_modules/ansi-escapes/readme.md +245 -0
- data/payload/node_modules/ansi-regex/index.d.ts +37 -0
- data/payload/node_modules/ansi-regex/index.js +10 -0
- data/payload/node_modules/ansi-regex/license +9 -0
- data/payload/node_modules/ansi-regex/package.json +55 -0
- data/payload/node_modules/ansi-regex/readme.md +78 -0
- data/payload/node_modules/ansi-styles/index.d.ts +345 -0
- data/payload/node_modules/ansi-styles/index.js +163 -0
- data/payload/node_modules/ansi-styles/license +9 -0
- data/payload/node_modules/ansi-styles/package.json +56 -0
- data/payload/node_modules/ansi-styles/readme.md +152 -0
- data/payload/node_modules/ansis/LICENSE +15 -0
- data/payload/node_modules/ansis/README.md +3 -0
- data/payload/node_modules/ansis/index.d.ts +1 -0
- data/payload/node_modules/ansis/index.js +1 -0
- data/payload/node_modules/ansis/index.mjs +1 -0
- data/payload/node_modules/ansis/package.json +20 -0
- data/payload/node_modules/clean-stack/index.d.ts +56 -0
- data/payload/node_modules/clean-stack/index.js +45 -0
- data/payload/node_modules/clean-stack/license +9 -0
- data/payload/node_modules/clean-stack/package.json +42 -0
- data/payload/node_modules/clean-stack/readme.md +77 -0
- data/payload/node_modules/cli-spinners/index.d.ts +128 -0
- data/payload/node_modules/cli-spinners/index.js +15 -0
- data/payload/node_modules/cli-spinners/license +9 -0
- data/payload/node_modules/cli-spinners/package.json +50 -0
- data/payload/node_modules/cli-spinners/readme.md +54 -0
- data/payload/node_modules/cli-spinners/spinners.json +1622 -0
- data/payload/node_modules/cli-width/LICENSE +13 -0
- data/payload/node_modules/cli-width/README.md +71 -0
- data/payload/node_modules/cli-width/index.d.ts +13 -0
- data/payload/node_modules/cli-width/index.js +49 -0
- data/payload/node_modules/cli-width/package.json +40 -0
- data/payload/node_modules/color-convert/CHANGELOG.md +54 -0
- data/payload/node_modules/color-convert/LICENSE +21 -0
- data/payload/node_modules/color-convert/README.md +68 -0
- data/payload/node_modules/color-convert/conversions.js +839 -0
- data/payload/node_modules/color-convert/index.js +81 -0
- data/payload/node_modules/color-convert/package.json +48 -0
- data/payload/node_modules/color-convert/route.js +97 -0
- data/payload/node_modules/color-name/LICENSE +8 -0
- data/payload/node_modules/color-name/README.md +11 -0
- data/payload/node_modules/color-name/index.js +152 -0
- data/payload/node_modules/color-name/package.json +28 -0
- data/payload/node_modules/debug/LICENSE +20 -0
- data/payload/node_modules/debug/README.md +481 -0
- data/payload/node_modules/debug/package.json +64 -0
- data/payload/node_modules/debug/src/browser.js +272 -0
- data/payload/node_modules/debug/src/common.js +292 -0
- data/payload/node_modules/debug/src/index.js +10 -0
- data/payload/node_modules/debug/src/node.js +263 -0
- data/payload/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
- data/payload/node_modules/emoji-regex/README.md +73 -0
- data/payload/node_modules/emoji-regex/es2015/index.js +6 -0
- data/payload/node_modules/emoji-regex/es2015/text.js +6 -0
- data/payload/node_modules/emoji-regex/index.d.ts +23 -0
- data/payload/node_modules/emoji-regex/index.js +6 -0
- data/payload/node_modules/emoji-regex/package.json +50 -0
- data/payload/node_modules/emoji-regex/text.js +6 -0
- data/payload/node_modules/escape-string-regexp/index.d.ts +18 -0
- data/payload/node_modules/escape-string-regexp/index.js +13 -0
- data/payload/node_modules/escape-string-regexp/license +9 -0
- data/payload/node_modules/escape-string-regexp/package.json +38 -0
- data/payload/node_modules/escape-string-regexp/readme.md +34 -0
- data/payload/node_modules/fdir/LICENSE +7 -0
- data/payload/node_modules/fdir/README.md +91 -0
- data/payload/node_modules/fdir/dist/index.cjs +588 -0
- data/payload/node_modules/fdir/dist/index.d.cts +155 -0
- data/payload/node_modules/fdir/dist/index.d.mts +155 -0
- data/payload/node_modules/fdir/dist/index.mjs +570 -0
- data/payload/node_modules/fdir/package.json +103 -0
- data/payload/node_modules/get-package-type/CHANGELOG.md +10 -0
- data/payload/node_modules/get-package-type/LICENSE +21 -0
- data/payload/node_modules/get-package-type/README.md +32 -0
- data/payload/node_modules/get-package-type/async.cjs +52 -0
- data/payload/node_modules/get-package-type/cache.cjs +3 -0
- data/payload/node_modules/get-package-type/index.cjs +7 -0
- data/payload/node_modules/get-package-type/is-node-modules.cjs +15 -0
- data/payload/node_modules/get-package-type/package.json +35 -0
- data/payload/node_modules/get-package-type/sync.cjs +42 -0
- data/payload/node_modules/has-flag/index.d.ts +39 -0
- data/payload/node_modules/has-flag/index.js +8 -0
- data/payload/node_modules/has-flag/license +9 -0
- data/payload/node_modules/has-flag/package.json +46 -0
- data/payload/node_modules/has-flag/readme.md +89 -0
- data/payload/node_modules/indent-string/index.d.ts +42 -0
- data/payload/node_modules/indent-string/index.js +35 -0
- data/payload/node_modules/indent-string/license +9 -0
- data/payload/node_modules/indent-string/package.json +37 -0
- data/payload/node_modules/indent-string/readme.md +70 -0
- data/payload/node_modules/is-docker/cli.js +5 -0
- data/payload/node_modules/is-docker/index.d.ts +13 -0
- data/payload/node_modules/is-docker/index.js +29 -0
- data/payload/node_modules/is-docker/license +9 -0
- data/payload/node_modules/is-docker/package.json +44 -0
- data/payload/node_modules/is-docker/readme.md +27 -0
- data/payload/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
- data/payload/node_modules/is-fullwidth-code-point/index.js +50 -0
- data/payload/node_modules/is-fullwidth-code-point/license +9 -0
- data/payload/node_modules/is-fullwidth-code-point/package.json +42 -0
- data/payload/node_modules/is-fullwidth-code-point/readme.md +39 -0
- data/payload/node_modules/is-inside-container/cli.js +5 -0
- data/payload/node_modules/is-inside-container/index.d.ts +13 -0
- data/payload/node_modules/is-inside-container/index.js +23 -0
- data/payload/node_modules/is-inside-container/license +9 -0
- data/payload/node_modules/is-inside-container/package.json +51 -0
- data/payload/node_modules/is-inside-container/readme.md +36 -0
- data/payload/node_modules/is-wsl/index.d.ts +15 -0
- data/payload/node_modules/is-wsl/index.js +36 -0
- data/payload/node_modules/is-wsl/license +9 -0
- data/payload/node_modules/is-wsl/package.json +58 -0
- data/payload/node_modules/is-wsl/readme.md +21 -0
- data/payload/node_modules/lilconfig/LICENSE +21 -0
- data/payload/node_modules/lilconfig/package.json +42 -0
- data/payload/node_modules/lilconfig/readme.md +98 -0
- data/payload/node_modules/lilconfig/src/index.d.ts +54 -0
- data/payload/node_modules/lilconfig/src/index.js +460 -0
- data/payload/node_modules/ms/index.js +162 -0
- data/payload/node_modules/ms/license.md +21 -0
- data/payload/node_modules/ms/package.json +38 -0
- data/payload/node_modules/ms/readme.md +59 -0
- data/payload/node_modules/picomatch/LICENSE +21 -0
- data/payload/node_modules/picomatch/README.md +743 -0
- data/payload/node_modules/picomatch/index.js +17 -0
- data/payload/node_modules/picomatch/lib/constants.js +184 -0
- data/payload/node_modules/picomatch/lib/parse.js +1425 -0
- data/payload/node_modules/picomatch/lib/picomatch.js +361 -0
- data/payload/node_modules/picomatch/lib/scan.js +403 -0
- data/payload/node_modules/picomatch/lib/utils.js +72 -0
- data/payload/node_modules/picomatch/package.json +83 -0
- data/payload/node_modules/picomatch/posix.js +3 -0
- data/payload/node_modules/powershell-utils/index.d.ts +122 -0
- data/payload/node_modules/powershell-utils/index.js +58 -0
- data/payload/node_modules/powershell-utils/license +9 -0
- data/payload/node_modules/powershell-utils/package.json +47 -0
- data/payload/node_modules/powershell-utils/readme.md +153 -0
- data/payload/node_modules/semver/LICENSE +15 -0
- data/payload/node_modules/semver/README.md +680 -0
- data/payload/node_modules/semver/bin/semver.js +195 -0
- data/payload/node_modules/semver/classes/comparator.js +143 -0
- data/payload/node_modules/semver/classes/index.js +7 -0
- data/payload/node_modules/semver/classes/range.js +577 -0
- data/payload/node_modules/semver/classes/semver.js +350 -0
- data/payload/node_modules/semver/functions/clean.js +8 -0
- data/payload/node_modules/semver/functions/cmp.js +54 -0
- data/payload/node_modules/semver/functions/coerce.js +62 -0
- data/payload/node_modules/semver/functions/compare-build.js +9 -0
- data/payload/node_modules/semver/functions/compare-loose.js +5 -0
- data/payload/node_modules/semver/functions/compare.js +7 -0
- data/payload/node_modules/semver/functions/diff.js +60 -0
- data/payload/node_modules/semver/functions/eq.js +5 -0
- data/payload/node_modules/semver/functions/gt.js +5 -0
- data/payload/node_modules/semver/functions/gte.js +5 -0
- data/payload/node_modules/semver/functions/inc.js +21 -0
- data/payload/node_modules/semver/functions/lt.js +5 -0
- data/payload/node_modules/semver/functions/lte.js +5 -0
- data/payload/node_modules/semver/functions/major.js +5 -0
- data/payload/node_modules/semver/functions/minor.js +5 -0
- data/payload/node_modules/semver/functions/neq.js +5 -0
- data/payload/node_modules/semver/functions/parse.js +18 -0
- data/payload/node_modules/semver/functions/patch.js +5 -0
- data/payload/node_modules/semver/functions/prerelease.js +8 -0
- data/payload/node_modules/semver/functions/rcompare.js +5 -0
- data/payload/node_modules/semver/functions/rsort.js +5 -0
- data/payload/node_modules/semver/functions/satisfies.js +12 -0
- data/payload/node_modules/semver/functions/sort.js +5 -0
- data/payload/node_modules/semver/functions/truncate.js +48 -0
- data/payload/node_modules/semver/functions/valid.js +8 -0
- data/payload/node_modules/semver/index.js +93 -0
- data/payload/node_modules/semver/internal/constants.js +37 -0
- data/payload/node_modules/semver/internal/debug.js +11 -0
- data/payload/node_modules/semver/internal/identifiers.js +29 -0
- data/payload/node_modules/semver/internal/lrucache.js +42 -0
- data/payload/node_modules/semver/internal/parse-options.js +17 -0
- data/payload/node_modules/semver/internal/re.js +223 -0
- data/payload/node_modules/semver/package.json +78 -0
- data/payload/node_modules/semver/preload.js +4 -0
- data/payload/node_modules/semver/range.bnf +17 -0
- data/payload/node_modules/semver/ranges/gtr.js +6 -0
- data/payload/node_modules/semver/ranges/intersects.js +9 -0
- data/payload/node_modules/semver/ranges/ltr.js +6 -0
- data/payload/node_modules/semver/ranges/max-satisfying.js +27 -0
- data/payload/node_modules/semver/ranges/min-satisfying.js +26 -0
- data/payload/node_modules/semver/ranges/min-version.js +63 -0
- data/payload/node_modules/semver/ranges/outside.js +82 -0
- data/payload/node_modules/semver/ranges/simplify.js +49 -0
- data/payload/node_modules/semver/ranges/subset.js +249 -0
- data/payload/node_modules/semver/ranges/to-comparators.js +10 -0
- data/payload/node_modules/semver/ranges/valid.js +13 -0
- data/payload/node_modules/signal-exit/LICENSE.txt +16 -0
- data/payload/node_modules/signal-exit/README.md +74 -0
- data/payload/node_modules/signal-exit/dist/cjs/browser.d.ts +12 -0
- data/payload/node_modules/signal-exit/dist/cjs/browser.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/cjs/browser.js +10 -0
- data/payload/node_modules/signal-exit/dist/cjs/browser.js.map +1 -0
- data/payload/node_modules/signal-exit/dist/cjs/index.d.ts +48 -0
- data/payload/node_modules/signal-exit/dist/cjs/index.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/cjs/index.js +279 -0
- data/payload/node_modules/signal-exit/dist/cjs/index.js.map +1 -0
- data/payload/node_modules/signal-exit/dist/cjs/package.json +3 -0
- data/payload/node_modules/signal-exit/dist/cjs/signals.d.ts +29 -0
- data/payload/node_modules/signal-exit/dist/cjs/signals.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/cjs/signals.js +42 -0
- data/payload/node_modules/signal-exit/dist/cjs/signals.js.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/browser.d.ts +12 -0
- data/payload/node_modules/signal-exit/dist/mjs/browser.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/browser.js +4 -0
- data/payload/node_modules/signal-exit/dist/mjs/browser.js.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/index.d.ts +48 -0
- data/payload/node_modules/signal-exit/dist/mjs/index.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/index.js +275 -0
- data/payload/node_modules/signal-exit/dist/mjs/index.js.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/package.json +3 -0
- data/payload/node_modules/signal-exit/dist/mjs/signals.d.ts +29 -0
- data/payload/node_modules/signal-exit/dist/mjs/signals.d.ts.map +1 -0
- data/payload/node_modules/signal-exit/dist/mjs/signals.js +39 -0
- data/payload/node_modules/signal-exit/dist/mjs/signals.js.map +1 -0
- data/payload/node_modules/signal-exit/package.json +106 -0
- data/payload/node_modules/string-width/index.d.ts +29 -0
- data/payload/node_modules/string-width/index.js +47 -0
- data/payload/node_modules/string-width/license +9 -0
- data/payload/node_modules/string-width/package.json +56 -0
- data/payload/node_modules/string-width/readme.md +50 -0
- data/payload/node_modules/strip-ansi/index.d.ts +17 -0
- data/payload/node_modules/strip-ansi/index.js +4 -0
- data/payload/node_modules/strip-ansi/license +9 -0
- data/payload/node_modules/strip-ansi/package.json +54 -0
- data/payload/node_modules/strip-ansi/readme.md +46 -0
- data/payload/node_modules/supports-color/browser.js +24 -0
- data/payload/node_modules/supports-color/index.js +152 -0
- data/payload/node_modules/supports-color/license +9 -0
- data/payload/node_modules/supports-color/package.json +58 -0
- data/payload/node_modules/supports-color/readme.md +77 -0
- data/payload/node_modules/tinyglobby/LICENSE +21 -0
- data/payload/node_modules/tinyglobby/README.md +25 -0
- data/payload/node_modules/tinyglobby/dist/index.cjs +335 -0
- data/payload/node_modules/tinyglobby/dist/index.d.cts +148 -0
- data/payload/node_modules/tinyglobby/dist/index.d.mts +148 -0
- data/payload/node_modules/tinyglobby/dist/index.mjs +307 -0
- data/payload/node_modules/tinyglobby/package.json +70 -0
- data/payload/node_modules/type-fest/base.d.ts +39 -0
- data/payload/node_modules/type-fest/index.d.ts +2 -0
- data/payload/node_modules/type-fest/license +9 -0
- data/payload/node_modules/type-fest/package.json +58 -0
- data/payload/node_modules/type-fest/readme.md +760 -0
- data/payload/node_modules/type-fest/source/async-return-type.d.ts +23 -0
- data/payload/node_modules/type-fest/source/asyncify.d.ts +31 -0
- data/payload/node_modules/type-fest/source/basic.d.ts +51 -0
- data/payload/node_modules/type-fest/source/conditional-except.d.ts +43 -0
- data/payload/node_modules/type-fest/source/conditional-keys.d.ts +43 -0
- data/payload/node_modules/type-fest/source/conditional-pick.d.ts +42 -0
- data/payload/node_modules/type-fest/source/entries.d.ts +57 -0
- data/payload/node_modules/type-fest/source/entry.d.ts +60 -0
- data/payload/node_modules/type-fest/source/except.d.ts +22 -0
- data/payload/node_modules/type-fest/source/fixed-length-array.d.ts +38 -0
- data/payload/node_modules/type-fest/source/iterable-element.d.ts +46 -0
- data/payload/node_modules/type-fest/source/literal-union.d.ts +33 -0
- data/payload/node_modules/type-fest/source/merge-exclusive.d.ts +39 -0
- data/payload/node_modules/type-fest/source/merge.d.ts +25 -0
- data/payload/node_modules/type-fest/source/mutable.d.ts +38 -0
- data/payload/node_modules/type-fest/source/opaque.d.ts +65 -0
- data/payload/node_modules/type-fest/source/package-json.d.ts +611 -0
- data/payload/node_modules/type-fest/source/partial-deep.d.ts +72 -0
- data/payload/node_modules/type-fest/source/promisable.d.ts +23 -0
- data/payload/node_modules/type-fest/source/promise-value.d.ts +27 -0
- data/payload/node_modules/type-fest/source/readonly-deep.d.ts +59 -0
- data/payload/node_modules/type-fest/source/require-at-least-one.d.ts +33 -0
- data/payload/node_modules/type-fest/source/require-exactly-one.d.ts +35 -0
- data/payload/node_modules/type-fest/source/set-optional.d.ts +33 -0
- data/payload/node_modules/type-fest/source/set-required.d.ts +33 -0
- data/payload/node_modules/type-fest/source/set-return-type.d.ts +29 -0
- data/payload/node_modules/type-fest/source/simplify.d.ts +4 -0
- data/payload/node_modules/type-fest/source/stringified.d.ts +21 -0
- data/payload/node_modules/type-fest/source/tsconfig-json.d.ts +870 -0
- data/payload/node_modules/type-fest/source/typed-array.d.ts +15 -0
- data/payload/node_modules/type-fest/source/union-to-intersection.d.ts +58 -0
- data/payload/node_modules/type-fest/source/utilities.d.ts +5 -0
- data/payload/node_modules/type-fest/source/value-of.d.ts +40 -0
- data/payload/node_modules/type-fest/ts41/camel-case.d.ts +64 -0
- data/payload/node_modules/type-fest/ts41/delimiter-case.d.ts +85 -0
- data/payload/node_modules/type-fest/ts41/get.d.ts +131 -0
- data/payload/node_modules/type-fest/ts41/index.d.ts +10 -0
- data/payload/node_modules/type-fest/ts41/kebab-case.d.ts +36 -0
- data/payload/node_modules/type-fest/ts41/pascal-case.d.ts +36 -0
- data/payload/node_modules/type-fest/ts41/snake-case.d.ts +35 -0
- data/payload/node_modules/type-fest/ts41/utilities.d.ts +8 -0
- data/payload/node_modules/undici-types/LICENSE +21 -0
- data/payload/node_modules/undici-types/README.md +6 -0
- data/payload/node_modules/undici-types/agent.d.ts +31 -0
- data/payload/node_modules/undici-types/api.d.ts +43 -0
- data/payload/node_modules/undici-types/balanced-pool.d.ts +29 -0
- data/payload/node_modules/undici-types/cache.d.ts +36 -0
- data/payload/node_modules/undici-types/client.d.ts +108 -0
- data/payload/node_modules/undici-types/connector.d.ts +34 -0
- data/payload/node_modules/undici-types/content-type.d.ts +21 -0
- data/payload/node_modules/undici-types/cookies.d.ts +28 -0
- data/payload/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
- data/payload/node_modules/undici-types/dispatcher.d.ts +256 -0
- data/payload/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
- data/payload/node_modules/undici-types/errors.d.ts +149 -0
- data/payload/node_modules/undici-types/eventsource.d.ts +61 -0
- data/payload/node_modules/undici-types/fetch.d.ts +209 -0
- data/payload/node_modules/undici-types/file.d.ts +39 -0
- data/payload/node_modules/undici-types/filereader.d.ts +54 -0
- data/payload/node_modules/undici-types/formdata.d.ts +108 -0
- data/payload/node_modules/undici-types/global-dispatcher.d.ts +9 -0
- data/payload/node_modules/undici-types/global-origin.d.ts +7 -0
- data/payload/node_modules/undici-types/handlers.d.ts +15 -0
- data/payload/node_modules/undici-types/header.d.ts +4 -0
- data/payload/node_modules/undici-types/index.d.ts +71 -0
- data/payload/node_modules/undici-types/interceptors.d.ts +17 -0
- data/payload/node_modules/undici-types/mock-agent.d.ts +50 -0
- data/payload/node_modules/undici-types/mock-client.d.ts +25 -0
- data/payload/node_modules/undici-types/mock-errors.d.ts +12 -0
- data/payload/node_modules/undici-types/mock-interceptor.d.ts +93 -0
- data/payload/node_modules/undici-types/mock-pool.d.ts +25 -0
- data/payload/node_modules/undici-types/package.json +55 -0
- data/payload/node_modules/undici-types/patch.d.ts +33 -0
- data/payload/node_modules/undici-types/pool-stats.d.ts +19 -0
- data/payload/node_modules/undici-types/pool.d.ts +39 -0
- data/payload/node_modules/undici-types/proxy-agent.d.ts +28 -0
- data/payload/node_modules/undici-types/readable.d.ts +65 -0
- data/payload/node_modules/undici-types/retry-agent.d.ts +8 -0
- data/payload/node_modules/undici-types/retry-handler.d.ts +116 -0
- data/payload/node_modules/undici-types/util.d.ts +18 -0
- data/payload/node_modules/undici-types/webidl.d.ts +228 -0
- data/payload/node_modules/undici-types/websocket.d.ts +150 -0
- data/payload/node_modules/widest-line/index.d.ts +21 -0
- data/payload/node_modules/widest-line/index.js +16 -0
- data/payload/node_modules/widest-line/license +9 -0
- data/payload/node_modules/widest-line/package.json +54 -0
- data/payload/node_modules/widest-line/readme.md +34 -0
- data/payload/node_modules/wordwrap/LICENSE +18 -0
- data/payload/node_modules/wordwrap/README.markdown +70 -0
- data/payload/node_modules/wordwrap/example/center.js +10 -0
- data/payload/node_modules/wordwrap/example/meat.js +3 -0
- data/payload/node_modules/wordwrap/index.js +76 -0
- data/payload/node_modules/wordwrap/package.json +34 -0
- data/payload/node_modules/wordwrap/test/break.js +32 -0
- data/payload/node_modules/wordwrap/test/idleness.txt +63 -0
- data/payload/node_modules/wordwrap/test/wrap.js +33 -0
- data/payload/node_modules/wrap-ansi/index.js +186 -0
- data/payload/node_modules/wrap-ansi/license +9 -0
- data/payload/node_modules/wrap-ansi/package.json +61 -0
- data/payload/node_modules/wrap-ansi/readme.md +97 -0
- data/payload/node_modules/wsl-utils/index.d.ts +180 -0
- data/payload/node_modules/wsl-utils/index.js +140 -0
- data/payload/node_modules/wsl-utils/license +9 -0
- data/payload/node_modules/wsl-utils/package.json +48 -0
- data/payload/node_modules/wsl-utils/readme.md +223 -0
- data/payload/node_modules/wsl-utils/utilities.js +19 -0
- data/payload/node_modules/yoctocolors-cjs/index.d.ts +94 -0
- data/payload/node_modules/yoctocolors-cjs/index.js +98 -0
- data/payload/node_modules/yoctocolors-cjs/license +9 -0
- data/payload/node_modules/yoctocolors-cjs/package.json +67 -0
- data/payload/node_modules/yoctocolors-cjs/readme.md +130 -0
- data/payload/oclif.manifest.json +793 -0
- data/payload/package.json +80 -0
- metadata +809 -35
- data/Gemfile +0 -19
- data/Gemfile.lock +0 -78
- data/LICENSE.md +0 -7
- data/bin/avo +0 -9
- data/bin/rspec +0 -4
- data/lib/avo_cli/cli.rb +0 -60
- data/lib/avo_cli/rules/base.rb +0 -31
- data/lib/avo_cli/rules/fields_as_class_methods.rb +0 -14
- data/lib/avo_cli/scanner.rb +0 -42
- data/lib/avo_cli/scanners/base.rb +0 -13
- data/lib/avo_cli/scanners/resource_scanner.rb +0 -27
- data/lib/avo_cli/version.rb +0 -3
- data/lib/avo_cli.rb +0 -23
- data/lib/support.rb +0 -52
- data/linter.png +0 -0
- data/readme.md +0 -40
|
@@ -0,0 +1,293 @@
|
|
|
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.TS_CONFIGS = void 0;
|
|
7
|
+
exports.tsPath = tsPath;
|
|
8
|
+
const promises_1 = require("node:fs/promises");
|
|
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 warn_1 = require("../errors/warn");
|
|
13
|
+
const settings_1 = require("../settings");
|
|
14
|
+
const fs_1 = require("../util/fs");
|
|
15
|
+
const read_tsconfig_1 = require("../util/read-tsconfig");
|
|
16
|
+
const util_1 = require("../util/util");
|
|
17
|
+
const util_2 = require("./util");
|
|
18
|
+
const debug = (0, util_2.makeDebug)('ts-path');
|
|
19
|
+
exports.TS_CONFIGS = {};
|
|
20
|
+
const REGISTERED = new Set();
|
|
21
|
+
function determineRuntime() {
|
|
22
|
+
/**
|
|
23
|
+
* Examples:
|
|
24
|
+
* #!/usr/bin/env bun
|
|
25
|
+
* bun bin/run.js
|
|
26
|
+
* bun bin/dev.js
|
|
27
|
+
*/
|
|
28
|
+
if (process.execPath.split(node_path_1.sep).includes('bun'))
|
|
29
|
+
return 'bun';
|
|
30
|
+
/**
|
|
31
|
+
* Examples:
|
|
32
|
+
* #!/usr/bin/env node
|
|
33
|
+
* #!/usr/bin/env node --loader ts-node/esm --experimental-specifier-resolution=node --no-warnings
|
|
34
|
+
* node bin/run.js
|
|
35
|
+
* node bin/dev.js
|
|
36
|
+
*/
|
|
37
|
+
if (process.execArgv.length === 0)
|
|
38
|
+
return 'node';
|
|
39
|
+
/**
|
|
40
|
+
* Examples:
|
|
41
|
+
* #!/usr/bin/env ts-node
|
|
42
|
+
* #!/usr/bin/env node_modules/.bin/ts-node
|
|
43
|
+
* ts-node bin/run.js
|
|
44
|
+
* ts-node bin/dev.js
|
|
45
|
+
*/
|
|
46
|
+
if (process.execArgv[0] === '--require' && process.execArgv[1].split(node_path_1.sep).includes('ts-node'))
|
|
47
|
+
return 'ts-node';
|
|
48
|
+
if (process.execArgv[0].split(node_path_1.sep).includes('ts-node'))
|
|
49
|
+
return 'ts-node';
|
|
50
|
+
/**
|
|
51
|
+
* Examples:
|
|
52
|
+
* #!/usr/bin/env tsx
|
|
53
|
+
* #!/usr/bin/env node_modules/.bin/tsx
|
|
54
|
+
* tsx bin/run.js
|
|
55
|
+
* tsx bin/dev.js
|
|
56
|
+
*/
|
|
57
|
+
if (process.execArgv[0] === '--require' && process.execArgv[1].split(node_path_1.sep).includes('tsx'))
|
|
58
|
+
return 'tsx';
|
|
59
|
+
return 'node';
|
|
60
|
+
}
|
|
61
|
+
const RUN_TIME = determineRuntime();
|
|
62
|
+
function isErrno(error) {
|
|
63
|
+
return 'code' in error && error.code === 'ENOENT';
|
|
64
|
+
}
|
|
65
|
+
async function loadTSConfig(root) {
|
|
66
|
+
try {
|
|
67
|
+
if (exports.TS_CONFIGS[root])
|
|
68
|
+
return exports.TS_CONFIGS[root];
|
|
69
|
+
const tsconfig = await (0, read_tsconfig_1.readTSConfig)(root);
|
|
70
|
+
if (!tsconfig)
|
|
71
|
+
return;
|
|
72
|
+
debug('tsconfig: %O', tsconfig);
|
|
73
|
+
exports.TS_CONFIGS[root] = tsconfig;
|
|
74
|
+
return exports.TS_CONFIGS[root];
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
if (isErrno(error))
|
|
78
|
+
return;
|
|
79
|
+
debug(`Could not parse tsconfig.json. Skipping typescript path lookup for ${root}.`);
|
|
80
|
+
(0, warn_1.memoizedWarn)(`Could not parse tsconfig.json for ${root}. Falling back to compiled source.`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
async function registerTsx(root, moduleType) {
|
|
84
|
+
if (REGISTERED.has(root))
|
|
85
|
+
return;
|
|
86
|
+
try {
|
|
87
|
+
const apiPath = moduleType === 'module' ? 'tsx/esm/api' : 'tsx/cjs/api';
|
|
88
|
+
const tsxPath = require.resolve(apiPath, { paths: [root] });
|
|
89
|
+
if (!tsxPath)
|
|
90
|
+
return;
|
|
91
|
+
debug('registering tsx at', root);
|
|
92
|
+
debug('tsx path:', tsxPath);
|
|
93
|
+
const { href } = (0, node_url_1.pathToFileURL)(tsxPath);
|
|
94
|
+
debug('tsx href:', href);
|
|
95
|
+
const { register } = await import(href);
|
|
96
|
+
debug('Successfully imported tsx');
|
|
97
|
+
register();
|
|
98
|
+
REGISTERED.add(root);
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
debug(`Could not find tsx. Skipping tsx registration for ${root}.`);
|
|
102
|
+
debug(error);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
async function registerTSNode(root, tsconfig) {
|
|
106
|
+
if (REGISTERED.has(root))
|
|
107
|
+
return;
|
|
108
|
+
debug('registering ts-node at', root);
|
|
109
|
+
const tsNodePath = require.resolve('ts-node', { paths: [root, __dirname] });
|
|
110
|
+
debug('ts-node path:', tsNodePath);
|
|
111
|
+
let tsNode;
|
|
112
|
+
try {
|
|
113
|
+
tsNode = require(tsNodePath);
|
|
114
|
+
debug('Successfully required ts-node');
|
|
115
|
+
}
|
|
116
|
+
catch (error) {
|
|
117
|
+
debug(`Could not find ts-node at ${tsNodePath}. Skipping ts-node registration for ${root}.`);
|
|
118
|
+
debug(error);
|
|
119
|
+
(0, warn_1.memoizedWarn)(`Could not find ts-node at ${tsNodePath}. Please ensure that ts-node is a devDependency. Falling back to compiled source.`);
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
const typeRoots = [(0, node_path_1.join)(root, 'node_modules', '@types')];
|
|
123
|
+
const rootDirs = [];
|
|
124
|
+
if (tsconfig.compilerOptions.rootDirs) {
|
|
125
|
+
for (const r of tsconfig.compilerOptions.rootDirs) {
|
|
126
|
+
rootDirs.push((0, node_path_1.join)(root, r));
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
else if (tsconfig.compilerOptions.rootDir) {
|
|
130
|
+
rootDirs.push((0, node_path_1.join)(root, tsconfig.compilerOptions.rootDir));
|
|
131
|
+
}
|
|
132
|
+
else if (tsconfig.compilerOptions.baseUrl) {
|
|
133
|
+
rootDirs.push((0, node_path_1.join)(root, tsconfig.compilerOptions.baseUrl));
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
rootDirs.push((0, node_path_1.join)(root, 'src'));
|
|
137
|
+
}
|
|
138
|
+
// Because we need to provide a modified `rootDirs` to ts-node, we need to
|
|
139
|
+
// remove `baseUrl` and `rootDir` from `compilerOptions` so that they
|
|
140
|
+
// don't conflict.
|
|
141
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
142
|
+
const { baseUrl, rootDir, ...rest } = tsconfig.compilerOptions;
|
|
143
|
+
const conf = {
|
|
144
|
+
compilerOptions: {
|
|
145
|
+
...rest,
|
|
146
|
+
rootDirs,
|
|
147
|
+
typeRoots,
|
|
148
|
+
},
|
|
149
|
+
...tsconfig['ts-node'],
|
|
150
|
+
cwd: root,
|
|
151
|
+
esm: tsconfig['ts-node']?.esm ?? true,
|
|
152
|
+
experimentalSpecifierResolution: tsconfig['ts-node']?.experimentalSpecifierResolution ?? 'explicit',
|
|
153
|
+
scope: true,
|
|
154
|
+
scopeDir: root,
|
|
155
|
+
skipProject: true,
|
|
156
|
+
transpileOnly: true,
|
|
157
|
+
};
|
|
158
|
+
debug('ts-node options: %O', conf);
|
|
159
|
+
tsNode.register(conf);
|
|
160
|
+
REGISTERED.add(root);
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Skip ts-node registration for ESM plugins in production.
|
|
164
|
+
* The node/ts-node ecosystem is not mature enough to support auto-transpiling ESM modules at this time.
|
|
165
|
+
* See the following:
|
|
166
|
+
* - https://github.com/TypeStrong/ts-node/issues/1791#issuecomment-1149754228
|
|
167
|
+
* - https://github.com/nodejs/node/issues/49432
|
|
168
|
+
* - https://github.com/nodejs/node/pull/49407
|
|
169
|
+
* - https://github.com/nodejs/node/issues/34049
|
|
170
|
+
*
|
|
171
|
+
* We still register tsx/ts-node for ESM plugins when NODE_ENV is "test" or "development" and root plugin is also ESM
|
|
172
|
+
* since that allows plugins to be auto-transpiled when developing locally using `bin/dev.js`.
|
|
173
|
+
*/
|
|
174
|
+
function cannotTranspileEsm(rootPlugin, plugin, isProduction) {
|
|
175
|
+
return ((isProduction || rootPlugin?.moduleType === 'commonjs') &&
|
|
176
|
+
plugin?.moduleType === 'module' &&
|
|
177
|
+
!plugin?.pjson.devDependencies?.tsx);
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* If the dev script is run with ts-node for an ESM plugin, skip ts-node registration
|
|
181
|
+
* and fall back on compiled source since ts-node executable cannot transpile ESM in Node 20+
|
|
182
|
+
*
|
|
183
|
+
* See the following:
|
|
184
|
+
* https://nodejs.org/en/blog/announcements/v20-release-announce#custom-esm-loader-hooks-nearing-stable
|
|
185
|
+
* https://github.com/oclif/core/issues/817
|
|
186
|
+
* https://github.com/TypeStrong/ts-node/issues/1997
|
|
187
|
+
*/
|
|
188
|
+
function cannotUseTsNode(root, plugin, isProduction) {
|
|
189
|
+
if (plugin?.moduleType !== 'module' || isProduction)
|
|
190
|
+
return false;
|
|
191
|
+
const nodeMajor = Number.parseInt(process.version.replace('v', '').split('.')[0], 10);
|
|
192
|
+
return RUN_TIME === 'ts-node' && nodeMajor >= 20;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Determine the path to the source file from the compiled ./lib files
|
|
196
|
+
*/
|
|
197
|
+
async function determinePath(root, orig, plugin) {
|
|
198
|
+
const tsconfig = await loadTSConfig(root);
|
|
199
|
+
if (!tsconfig)
|
|
200
|
+
return orig;
|
|
201
|
+
debug(`Determining path for ${orig}`);
|
|
202
|
+
if (RUN_TIME === 'bun') {
|
|
203
|
+
debug(`Skipping ts-node registration for ${root} because the runtime is: ${RUN_TIME}`);
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
// attempt to register tsx first. If it fails to register, we will fall back to ts-node
|
|
207
|
+
await registerTsx(root, plugin?.moduleType);
|
|
208
|
+
// if tsx registration succeeded, then this will exit early since the path will be in REGISTERED already
|
|
209
|
+
await registerTSNode(root, tsconfig);
|
|
210
|
+
}
|
|
211
|
+
const { baseUrl, outDir, rootDir, rootDirs } = tsconfig.compilerOptions;
|
|
212
|
+
const rootDirPath = rootDir ?? (rootDirs ?? [])[0] ?? baseUrl;
|
|
213
|
+
if (!rootDirPath) {
|
|
214
|
+
debug(`no rootDir, rootDirs, or baseUrl specified in tsconfig.json. Returning default path ${orig}`);
|
|
215
|
+
return orig;
|
|
216
|
+
}
|
|
217
|
+
if (!outDir) {
|
|
218
|
+
debug(`no outDir specified in tsconfig.json. Returning default path ${orig}`);
|
|
219
|
+
return orig;
|
|
220
|
+
}
|
|
221
|
+
// rewrite path from ./lib/foo to ./src/foo
|
|
222
|
+
const lib = (0, node_path_1.join)(root, outDir); // ./lib
|
|
223
|
+
const src = (0, node_path_1.join)(root, rootDirPath); // ./src
|
|
224
|
+
const relative = (0, node_path_1.relative)(lib, orig); // ./commands
|
|
225
|
+
// For hooks, it might point to a js file, not a module. Something like "./hooks/myhook.js" which doesn't need the js.
|
|
226
|
+
const out = (0, node_path_1.join)(src, relative).replace(/\.js$/, ''); // ./src/commands
|
|
227
|
+
// this can be a directory of commands or point to a hook file
|
|
228
|
+
// if it's a directory, we check if the path exists. If so, return the path to the directory.
|
|
229
|
+
// For hooks, it might point to a module, not a file. Something like "./hooks/myhook"
|
|
230
|
+
// That file doesn't exist, and the real file is "./hooks/myhook.ts"
|
|
231
|
+
// In that case we attempt to resolve to the filename. If it fails it will revert back to the lib path
|
|
232
|
+
debug(`lib dir: ${lib}`);
|
|
233
|
+
debug(`src dir: ${src}`);
|
|
234
|
+
debug(`src directory to find: ${out}`);
|
|
235
|
+
if ((0, fs_1.existsSync)(out)) {
|
|
236
|
+
debug(`Found source directory for ${orig} at ${out}`);
|
|
237
|
+
return out;
|
|
238
|
+
}
|
|
239
|
+
const sourceFiles = await Promise.all([
|
|
240
|
+
(0, promises_1.access)(`${out}.ts`)
|
|
241
|
+
.then(() => `${out}.ts`)
|
|
242
|
+
.catch(() => false),
|
|
243
|
+
(0, promises_1.access)(`${out}.tsx`)
|
|
244
|
+
.then(() => `${out}.tsx`)
|
|
245
|
+
.catch(() => false),
|
|
246
|
+
]);
|
|
247
|
+
if (sourceFiles.some(Boolean)) {
|
|
248
|
+
debug(`Found source file for ${orig} at ${out}`);
|
|
249
|
+
return out;
|
|
250
|
+
}
|
|
251
|
+
debug(`No source file found. Returning default path ${orig}`);
|
|
252
|
+
if (!(0, util_1.isProd)())
|
|
253
|
+
(0, warn_1.memoizedWarn)(`Could not find source for ${orig} based on tsconfig. Defaulting to compiled source.`);
|
|
254
|
+
return orig;
|
|
255
|
+
}
|
|
256
|
+
async function tsPath(root, orig, plugin) {
|
|
257
|
+
const rootPlugin = plugin?.options.isRoot ? plugin : cache_1.default.getInstance().get('rootPlugin');
|
|
258
|
+
if (!orig)
|
|
259
|
+
return orig;
|
|
260
|
+
orig = orig.startsWith(root) ? orig : (0, node_path_1.join)(root, orig);
|
|
261
|
+
// NOTE: The order of these checks matter!
|
|
262
|
+
const enableAutoTranspile = settings_1.settings.enableAutoTranspile ?? settings_1.settings.tsnodeEnabled;
|
|
263
|
+
if (enableAutoTranspile === false) {
|
|
264
|
+
debug(`Skipping typescript path lookup for ${root} because enableAutoTranspile is explicitly set to false`);
|
|
265
|
+
return orig;
|
|
266
|
+
}
|
|
267
|
+
const isProduction = (0, util_1.isProd)();
|
|
268
|
+
// Do not skip ts-node registration if the plugin is linked
|
|
269
|
+
if (enableAutoTranspile === undefined && isProduction && plugin?.type !== 'link') {
|
|
270
|
+
debug(`Skipping typescript path lookup for ${root} because NODE_ENV is NOT "test" or "development"`);
|
|
271
|
+
return orig;
|
|
272
|
+
}
|
|
273
|
+
if (cannotTranspileEsm(rootPlugin, plugin, isProduction)) {
|
|
274
|
+
debug(`Skipping typescript path lookup for ${root} because it's an ESM module (NODE_ENV: ${process.env.NODE_ENV}, root plugin module type: ${rootPlugin?.moduleType})`);
|
|
275
|
+
const warningIsDisabled = process.env.OCLIF_DISABLE_LINKED_ESM_WARNING && (0, util_1.isTruthy)(process.env.OCLIF_DISABLE_LINKED_ESM_WARNING);
|
|
276
|
+
// Only warn if the plugin is linked AND the warning is not disabled
|
|
277
|
+
if (plugin?.type === 'link' && !warningIsDisabled)
|
|
278
|
+
(0, warn_1.memoizedWarn)(`${plugin?.name} is a linked ESM module and cannot be auto-transpiled. Existing compiled source will be used instead.`);
|
|
279
|
+
return orig;
|
|
280
|
+
}
|
|
281
|
+
if (cannotUseTsNode(root, plugin, isProduction)) {
|
|
282
|
+
debug(`Skipping typescript path lookup for ${root} because ts-node is run in node version ${process.version}"`);
|
|
283
|
+
(0, warn_1.memoizedWarn)(`ts-node executable cannot transpile ESM in Node 20. Existing compiled source will be used instead. See https://github.com/oclif/core/issues/817.`);
|
|
284
|
+
return orig;
|
|
285
|
+
}
|
|
286
|
+
try {
|
|
287
|
+
return await determinePath(root, orig, plugin);
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
debug(error);
|
|
291
|
+
return orig;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare function makeDebug(...scope: string[]): (..._: any) => void;
|
|
2
|
+
export declare function getPermutations(arr: string[]): Array<string[]>;
|
|
3
|
+
export declare function getCommandIdPermutations(commandId: string): string[];
|
|
4
|
+
/**
|
|
5
|
+
* Return an array of ids that represent all the usable combinations that a user could enter.
|
|
6
|
+
*
|
|
7
|
+
* For example, if the command ids are:
|
|
8
|
+
* - foo:bar:baz
|
|
9
|
+
* - one:two:three
|
|
10
|
+
* Then the usable ids would be:
|
|
11
|
+
* - foo
|
|
12
|
+
* - foo:bar
|
|
13
|
+
* - foo:bar:baz
|
|
14
|
+
* - one
|
|
15
|
+
* - one:two
|
|
16
|
+
* - one:two:three
|
|
17
|
+
*
|
|
18
|
+
* This allows us to determine which parts of the argv array belong to the command id whenever the topicSeparator is a space.
|
|
19
|
+
*
|
|
20
|
+
* @param commandIds string[]
|
|
21
|
+
* @returns string[]
|
|
22
|
+
*/
|
|
23
|
+
export declare const collectUsableIds: (commandIds: string[]) => Set<string>;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.collectUsableIds = void 0;
|
|
4
|
+
exports.makeDebug = makeDebug;
|
|
5
|
+
exports.getPermutations = getPermutations;
|
|
6
|
+
exports.getCommandIdPermutations = getCommandIdPermutations;
|
|
7
|
+
const logger_1 = require("../logger");
|
|
8
|
+
function makeDebug(...scope) {
|
|
9
|
+
return (formatter, ...args) => (0, logger_1.getLogger)(['config', ...scope].join(':')).debug(formatter, ...args);
|
|
10
|
+
}
|
|
11
|
+
// Adapted from https://github.com/angus-c/just/blob/master/packages/array-permutations/index.js
|
|
12
|
+
function getPermutations(arr) {
|
|
13
|
+
if (arr.length === 0)
|
|
14
|
+
return [];
|
|
15
|
+
if (arr.length === 1)
|
|
16
|
+
return [arr];
|
|
17
|
+
const output = [];
|
|
18
|
+
const partialPermutations = getPermutations(arr.slice(1));
|
|
19
|
+
const first = arr[0];
|
|
20
|
+
for (let i = 0, len = partialPermutations.length; i < len; i++) {
|
|
21
|
+
const partial = partialPermutations[i];
|
|
22
|
+
for (let j = 0, len2 = partial.length; j <= len2; j++) {
|
|
23
|
+
const start = partial.slice(0, j);
|
|
24
|
+
const end = partial.slice(j);
|
|
25
|
+
const merged = [...start, first, ...end];
|
|
26
|
+
output.push(merged);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return output;
|
|
30
|
+
}
|
|
31
|
+
function getCommandIdPermutations(commandId) {
|
|
32
|
+
return getPermutations(commandId.split(':')).flatMap((c) => c.join(':'));
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Return an array of ids that represent all the usable combinations that a user could enter.
|
|
36
|
+
*
|
|
37
|
+
* For example, if the command ids are:
|
|
38
|
+
* - foo:bar:baz
|
|
39
|
+
* - one:two:three
|
|
40
|
+
* Then the usable ids would be:
|
|
41
|
+
* - foo
|
|
42
|
+
* - foo:bar
|
|
43
|
+
* - foo:bar:baz
|
|
44
|
+
* - one
|
|
45
|
+
* - one:two
|
|
46
|
+
* - one:two:three
|
|
47
|
+
*
|
|
48
|
+
* This allows us to determine which parts of the argv array belong to the command id whenever the topicSeparator is a space.
|
|
49
|
+
*
|
|
50
|
+
* @param commandIds string[]
|
|
51
|
+
* @returns string[]
|
|
52
|
+
*/
|
|
53
|
+
const collectUsableIds = (commandIds) => new Set(commandIds.flatMap((id) => id.split(':').map((_, i, a) => a.slice(0, i + 1).join(':'))));
|
|
54
|
+
exports.collectUsableIds = collectUsableIds;
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { Constraint, FlagGroup, FlagOutput, MultiFlagTester, SingleFlagTester } from './interfaces/parser';
|
|
2
|
+
import { Validation } from './parser/errors';
|
|
3
|
+
/**
|
|
4
|
+
* Establish a constraint on a single flag.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* flag('foo').is.requiredAny()
|
|
8
|
+
*
|
|
9
|
+
* @param flagName The flag to constrain
|
|
10
|
+
*/
|
|
11
|
+
export declare function flag(flagName: string): ConstraintImpl;
|
|
12
|
+
/**
|
|
13
|
+
* Establish a constraint on multiple flags.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* flags('foo', 'bar').are.mutuallyExclusive()
|
|
17
|
+
*
|
|
18
|
+
* @param flagNames The flags to constrain
|
|
19
|
+
*/
|
|
20
|
+
export declare function flags(...flagNames: string[]): ConstraintImpl;
|
|
21
|
+
/**
|
|
22
|
+
* Declare a set of flags to be evaluated as one instead of separately.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* flag('foo').is.dependentOn(combinationOf('bar', 'baz'))
|
|
26
|
+
*
|
|
27
|
+
* @param flagNames Flags to be combined
|
|
28
|
+
*/
|
|
29
|
+
export declare function combinationOf(...flagNames: string[]): FlagGroup;
|
|
30
|
+
declare class ConstraintImpl implements Constraint {
|
|
31
|
+
/**
|
|
32
|
+
* No-op chain property allowing constraints to be more human-readable.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* flags('foo', 'bar').are.mutuallyExclusive()
|
|
36
|
+
*/
|
|
37
|
+
readonly are: ConstraintImpl;
|
|
38
|
+
/**
|
|
39
|
+
* No-op chain property allowing constraints to be more human-readable.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* flag('foo').is.dependentOn('bar')
|
|
43
|
+
*/
|
|
44
|
+
readonly is: ConstraintImpl;
|
|
45
|
+
private readonly constrainedFlags;
|
|
46
|
+
private constraintApplicatorFunctionHolder;
|
|
47
|
+
private topLevelCondition;
|
|
48
|
+
private underConstructionCondition;
|
|
49
|
+
constructor(constrainedFlags: string[]);
|
|
50
|
+
/**
|
|
51
|
+
* Chain property allowing constraint conditions to be combined with logical AND.
|
|
52
|
+
*
|
|
53
|
+
* By default, logical operators are evaluated left-to-right, but groups can be created with additional {@code when}/{@code unless} clauses.
|
|
54
|
+
*
|
|
55
|
+
* @example <caption> when someFn returns true AND someOtherFn returns true, using --foo requires --bar to be used as well.</caption>
|
|
56
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(someFn).and.thisIsTrue(someOtherFn)
|
|
57
|
+
*
|
|
58
|
+
* @example <caption>--foo requires --bar when (fnA returns true AND fnB returns true) OR fnC returns true</caption>
|
|
59
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(fnA).and.thisIsTrue(fnB).or.thisIsTrue(fnC)
|
|
60
|
+
*
|
|
61
|
+
* @example <caption>--foo requires --bar when fnA returns true AND (fnB returns true OR fnC returns true)</caption>
|
|
62
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(fnA).and.when.thisIsTrue(fnB).or.thisIsTrue(fnC)
|
|
63
|
+
*/
|
|
64
|
+
get and(): ConstraintImpl;
|
|
65
|
+
/**
|
|
66
|
+
* Chain property allowing constraint conditions to be combined with logical OR.
|
|
67
|
+
*
|
|
68
|
+
* By default, logical operators are evaluated left-to-right, but groups can be created with additional {@code when}/{@code unless} clauses.
|
|
69
|
+
*
|
|
70
|
+
* @example <caption> when EITHER someFn OR someOtherFn return true, using --foo requires --bar to be used as well.</caption>
|
|
71
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(someFn).or.thisIsTrue(someOtherFn)
|
|
72
|
+
*
|
|
73
|
+
* @example <caption>--foo requires --bar when (fnA returns true AND fnB returns true) OR fnC returns true</caption>
|
|
74
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(fnA).and.thisIsTrue(fnB).or.thisIsTrue(fnC)
|
|
75
|
+
*
|
|
76
|
+
* @example <caption>--foo requires --bar when fnA returns true AND (fnB returns true OR fnC returns true)</caption>
|
|
77
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(fnA).and.when.thisIsTrue(fnB).or.thisIsTrue(fnC)
|
|
78
|
+
*
|
|
79
|
+
*/
|
|
80
|
+
get or(): ConstraintImpl;
|
|
81
|
+
/**
|
|
82
|
+
* Chain property allowing constraints to be conditional upon a certain criterion NOT being met.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* flag('foo').is.dependentOn('bar').unless.thisIsTrue(someFn)
|
|
86
|
+
*/
|
|
87
|
+
get unless(): ConstraintImpl;
|
|
88
|
+
/**
|
|
89
|
+
* Chain property allowing constraints to be conditional upon a certain criterion being met.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* flag('foo').is.dependentOn('bar').when.thisIsTrue(someFn)
|
|
93
|
+
*/
|
|
94
|
+
get when(): ConstraintImpl;
|
|
95
|
+
_evaluateAgainstFlags(flags: FlagOutput): Validation;
|
|
96
|
+
/**
|
|
97
|
+
* Chain method allowing constraint to be made conditional upon EVERY established criterion being true.
|
|
98
|
+
*
|
|
99
|
+
* @example <caption>If --flagA is 'someVal' AND --flagB is 'someOtherVal', then using --foo requires using --bar too</caption>
|
|
100
|
+
* flag('foo').is.dependentOn('bar').when.allFlagCriteriaSatisfied({
|
|
101
|
+
* flagA: (v) => v === 'someVal',
|
|
102
|
+
* flagB: (v) => v !== 'someOtherVal'
|
|
103
|
+
* })
|
|
104
|
+
*
|
|
105
|
+
* @param criterionTester An object whose keys are flag names and whose values are functions that accept the
|
|
106
|
+
* value of that flag and return a boolean.
|
|
107
|
+
*/
|
|
108
|
+
allFlagCriteriaSatisfied(criterionTester: SingleFlagTester): ConstraintImpl;
|
|
109
|
+
/**
|
|
110
|
+
* Chain method allowing constraint to be made conditional upon ANY established criterion being true.
|
|
111
|
+
*
|
|
112
|
+
* @example <caption>If --flagA is 'someVal' OR --flagB is 'someOtherVal', then using --foo requires using --bar too</caption>
|
|
113
|
+
* flag('foo').is.dependentOn('bar').when.anyFlagCriterionSatisfied({
|
|
114
|
+
* flagA: (v) => v === 'someVal',
|
|
115
|
+
* flagB: (v) => v !== 'someOtherVal'
|
|
116
|
+
* })
|
|
117
|
+
*
|
|
118
|
+
* @param criterionTester An object whose keys are flag names and whose values are functions that accept the
|
|
119
|
+
* value of that flag and return a boolean.
|
|
120
|
+
*/
|
|
121
|
+
anyFlagCriterionSatisfied(criterionTester: SingleFlagTester): ConstraintImpl;
|
|
122
|
+
/**
|
|
123
|
+
* Chain method allowing the constrained flags to require the presence of at least one of the flags specified here.
|
|
124
|
+
*
|
|
125
|
+
* @example <caption>If --foo is used, then EITHER --bar OR --baz must be used as well</caption>
|
|
126
|
+
* flag('foo').is.dependentOn('bar', 'baz')
|
|
127
|
+
*
|
|
128
|
+
* @example <caption>If --foo is used, then BOTH --bar AND --baz must be used as well</caption>
|
|
129
|
+
* flag('foo').is.dependentOn(combinationOf('bar', 'baz'))
|
|
130
|
+
*
|
|
131
|
+
* @example <caption>If --foo is used, then EITHER --bar OR the combination of --baz1 and --baz2 must be used as well</caption>
|
|
132
|
+
* flag('foo').is.dependentOn('bar', combinationOf('baz1', 'baz2'))
|
|
133
|
+
*
|
|
134
|
+
* @param dependencyFlagGroups
|
|
135
|
+
*/
|
|
136
|
+
dependentOn(...dependencyFlagGroups: FlagGroup[]): ConstraintImpl;
|
|
137
|
+
/**
|
|
138
|
+
* Chain method allowing the constrained flags to be made exclusive with the flags provided here.
|
|
139
|
+
*
|
|
140
|
+
* @example <caption>Neither --foo1 nor --foo2 can be used with --bar OR --baz</caption>
|
|
141
|
+
* flags('foo1', 'foo2').are.exclusiveWith('bar', 'baz')
|
|
142
|
+
*
|
|
143
|
+
* @example <caption>Neither --foo1 nor --foo2 can be used with the combination of --bar and --baz, but may be used with --bar or --baz separately</caption>
|
|
144
|
+
* flags('foo1', 'foo2').are.exclusiveWith(combinationOf('bar', 'baz'))
|
|
145
|
+
*
|
|
146
|
+
* @example <caption>Neither --foo1 nor --foo2 can be used with --bar, or with the combination of --baz1 and --baz2</caption>
|
|
147
|
+
* flags('foo1', 'foo2').are.exclusiveWith('bar', combinationOf('baz1', 'baz2'))
|
|
148
|
+
*
|
|
149
|
+
* @param exclusionFlagGroups
|
|
150
|
+
*/
|
|
151
|
+
exclusiveWith(...exclusionFlagGroups: FlagGroup[]): ConstraintImpl;
|
|
152
|
+
/**
|
|
153
|
+
* Establish a group of flags as mutually dependent, meaning that they must either be used together or not at all.
|
|
154
|
+
*
|
|
155
|
+
* @example <caption>--foo cannot be used without --bar, and vice versa</caption>
|
|
156
|
+
* flags('foo', 'bar').are.mutuallyDependent()
|
|
157
|
+
*/
|
|
158
|
+
mutuallyDependent(): ConstraintImpl;
|
|
159
|
+
/**
|
|
160
|
+
* Establish a group of flags as mutually exclusive, meaning that at most one of them can be used simultaneously.
|
|
161
|
+
*
|
|
162
|
+
* @example <caption>--foo and --bar cannot both be used at the same time</caption>
|
|
163
|
+
* flags('foo', 'bar').are.mutuallyExclusive()
|
|
164
|
+
*/
|
|
165
|
+
mutuallyExclusive(): ConstraintImpl;
|
|
166
|
+
/**
|
|
167
|
+
* Establish a group of flags as being collectively required.
|
|
168
|
+
*
|
|
169
|
+
* @example <caption>--foo and --bar are both always required</caption>
|
|
170
|
+
* flags('foo', 'bar').are.requiredAll()
|
|
171
|
+
*/
|
|
172
|
+
requiredAll(): ConstraintImpl;
|
|
173
|
+
/**
|
|
174
|
+
* Establish that at least one of the constrained flags must always be used.
|
|
175
|
+
*
|
|
176
|
+
* @example <caption>Must use at least one of --foo, --bar, or --baz</caption>
|
|
177
|
+
* flags('foo', 'bar', 'baz').are.requiredAny()
|
|
178
|
+
*/
|
|
179
|
+
requiredAny(): ConstraintImpl;
|
|
180
|
+
/**
|
|
181
|
+
* Establish that at least N of the specified flags must be used.
|
|
182
|
+
*
|
|
183
|
+
* @example <caption>At least 2 of the 3 flags --foo, --bar, and --baz must be used</caption>
|
|
184
|
+
* flags('foo', 'bar', 'baz').are.requiredAtLeastN(2)
|
|
185
|
+
*
|
|
186
|
+
* @param n
|
|
187
|
+
*/
|
|
188
|
+
requiredAtLeastN(n: number): ConstraintImpl;
|
|
189
|
+
/**
|
|
190
|
+
* Establish that at most N of the specified flags must be used.
|
|
191
|
+
*
|
|
192
|
+
* @example <caption>No more than 2 of the 3 flags --foo, --bar, and --baz may be used</caption>
|
|
193
|
+
* flags('foo', 'bar', 'baz').are.requiredAtMostN(2)
|
|
194
|
+
*
|
|
195
|
+
* @param n
|
|
196
|
+
*/
|
|
197
|
+
requiredAtMostN(n: number): ConstraintImpl;
|
|
198
|
+
/**
|
|
199
|
+
* Establish that exactly N of the specified flags must be used.
|
|
200
|
+
*
|
|
201
|
+
* @example <caption>Exactly 2 of the 3 flags --foo, --bar, and --baz must be used</caption>
|
|
202
|
+
* flags('foo', 'bar', 'baz').are.requiredExactlyN(2)
|
|
203
|
+
*
|
|
204
|
+
* @param n
|
|
205
|
+
*/
|
|
206
|
+
requiredExactlyN(n: number): ConstraintImpl;
|
|
207
|
+
/**
|
|
208
|
+
* Chain method allowing the constraint to be made contingent on the return of a method that accepts all flags.
|
|
209
|
+
*
|
|
210
|
+
* @example <caption>--foo1 and --foo2 are required if --bar is equal to --baz</caption>
|
|
211
|
+
* flags('foo1', 'foo2').are.requiredAll().when.thisIsTrue((flags) => flags.bar === flags.baz)
|
|
212
|
+
*
|
|
213
|
+
* @param flagTester A method that accepts the flag values mapped by their name, and returns a boolean
|
|
214
|
+
*/
|
|
215
|
+
thisIsTrue(flagTester: MultiFlagTester): ConstraintImpl;
|
|
216
|
+
}
|
|
217
|
+
export {};
|