dedalus-cli 0.0.0-stage → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +296 -2
- package/SKILL.md +73 -0
- package/api.md +340 -0
- package/dist/cjs/bin.d.ts +3 -0
- package/dist/cjs/bin.d.ts.map +1 -0
- package/dist/cjs/bin.js +7 -0
- package/dist/cjs/bin.js.map +1 -0
- package/dist/cjs/cli/completions.d.ts +6 -0
- package/dist/cjs/cli/completions.d.ts.map +1 -0
- package/dist/cjs/cli/completions.js +11 -0
- package/dist/cjs/cli/completions.js.map +1 -0
- package/dist/cjs/cli/credentials.d.ts +169 -0
- package/dist/cjs/cli/credentials.d.ts.map +1 -0
- package/dist/cjs/cli/credentials.js +630 -0
- package/dist/cjs/cli/credentials.js.map +1 -0
- package/dist/cjs/cli/keychain.d.ts +34 -0
- package/dist/cjs/cli/keychain.d.ts.map +1 -0
- package/dist/cjs/cli/keychain.js +246 -0
- package/dist/cjs/cli/keychain.js.map +1 -0
- package/dist/cjs/cli/list.d.ts +23 -0
- package/dist/cjs/cli/list.d.ts.map +1 -0
- package/dist/cjs/cli/list.js +32 -0
- package/dist/cjs/cli/list.js.map +1 -0
- package/dist/cjs/cli/login.d.ts +137 -0
- package/dist/cjs/cli/login.d.ts.map +1 -0
- package/dist/cjs/cli/login.js +2060 -0
- package/dist/cjs/cli/login.js.map +1 -0
- package/dist/cjs/cli/runtime.d.ts +98 -0
- package/dist/cjs/cli/runtime.d.ts.map +1 -0
- package/dist/cjs/cli/runtime.js +1356 -0
- package/dist/cjs/cli/runtime.js.map +1 -0
- package/dist/cjs/cli/toon.d.ts +6 -0
- package/dist/cjs/cli/toon.d.ts.map +1 -0
- package/dist/cjs/cli/toon.js +165 -0
- package/dist/cjs/cli/toon.js.map +1 -0
- package/dist/cjs/cli/upgrade.d.ts +28 -0
- package/dist/cjs/cli/upgrade.d.ts.map +1 -0
- package/dist/cjs/cli/upgrade.js +1191 -0
- package/dist/cjs/cli/upgrade.js.map +1 -0
- package/dist/cjs/commands/index.d.ts +47 -0
- package/dist/cjs/commands/index.d.ts.map +1 -0
- package/dist/cjs/commands/index.js +1202 -0
- package/dist/cjs/commands/index.js.map +1 -0
- package/dist/cjs/custom/browser-routing.d.ts +4 -0
- package/dist/cjs/custom/browser-routing.d.ts.map +1 -0
- package/dist/cjs/custom/browser-routing.js +51 -0
- package/dist/cjs/custom/browser-routing.js.map +1 -0
- package/dist/cjs/custom/images.d.ts +6 -0
- package/dist/cjs/custom/images.d.ts.map +1 -0
- package/dist/cjs/custom/images.js +74 -0
- package/dist/cjs/custom/images.js.map +1 -0
- package/dist/cjs/custom/machines.d.ts +20 -0
- package/dist/cjs/custom/machines.d.ts.map +1 -0
- package/dist/cjs/custom/machines.js +84 -0
- package/dist/cjs/custom/machines.js.map +1 -0
- package/dist/cjs/custom/ssh-picker.d.ts +19 -0
- package/dist/cjs/custom/ssh-picker.d.ts.map +1 -0
- package/dist/cjs/custom/ssh-picker.js +157 -0
- package/dist/cjs/custom/ssh-picker.js.map +1 -0
- package/dist/cjs/custom/ssh.d.ts +18 -0
- package/dist/cjs/custom/ssh.d.ts.map +1 -0
- package/dist/cjs/custom/ssh.js +152 -0
- package/dist/cjs/custom/ssh.js.map +1 -0
- package/dist/cjs/feedback/bundle.d.ts +41 -0
- package/dist/cjs/feedback/bundle.d.ts.map +1 -0
- package/dist/cjs/feedback/bundle.js +88 -0
- package/dist/cjs/feedback/bundle.js.map +1 -0
- package/dist/cjs/feedback/command.d.ts +6 -0
- package/dist/cjs/feedback/command.d.ts.map +1 -0
- package/dist/cjs/feedback/command.js +100 -0
- package/dist/cjs/feedback/command.js.map +1 -0
- package/dist/cjs/feedback/diagnostics.d.ts +30 -0
- package/dist/cjs/feedback/diagnostics.d.ts.map +1 -0
- package/dist/cjs/feedback/diagnostics.js +278 -0
- package/dist/cjs/feedback/diagnostics.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +11 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/sdk/api-promise.d.ts +31 -0
- package/dist/cjs/sdk/api-promise.d.ts.map +1 -0
- package/dist/cjs/sdk/api-promise.js +73 -0
- package/dist/cjs/sdk/api-promise.js.map +1 -0
- package/dist/cjs/sdk/client.d.ts +267 -0
- package/dist/cjs/sdk/client.d.ts.map +1 -0
- package/dist/cjs/sdk/client.js +965 -0
- package/dist/cjs/sdk/client.js.map +1 -0
- package/dist/cjs/sdk/core/api-promise.d.ts +3 -0
- package/dist/cjs/sdk/core/api-promise.d.ts.map +1 -0
- package/dist/cjs/sdk/core/api-promise.js +8 -0
- package/dist/cjs/sdk/core/api-promise.js.map +1 -0
- package/dist/cjs/sdk/core/error.d.ts +46 -0
- package/dist/cjs/sdk/core/error.d.ts.map +1 -0
- package/dist/cjs/sdk/core/error.js +135 -0
- package/dist/cjs/sdk/core/error.js.map +1 -0
- package/dist/cjs/sdk/core/pagination.d.ts +38 -0
- package/dist/cjs/sdk/core/pagination.d.ts.map +1 -0
- package/dist/cjs/sdk/core/pagination.js +98 -0
- package/dist/cjs/sdk/core/pagination.js.map +1 -0
- package/dist/cjs/sdk/core/resource.d.ts +2 -0
- package/dist/cjs/sdk/core/resource.d.ts.map +1 -0
- package/dist/cjs/sdk/core/resource.js +7 -0
- package/dist/cjs/sdk/core/resource.js.map +1 -0
- package/dist/cjs/sdk/core/uploads.d.ts +3 -0
- package/dist/cjs/sdk/core/uploads.d.ts.map +1 -0
- package/dist/cjs/sdk/core/uploads.js +7 -0
- package/dist/cjs/sdk/core/uploads.js.map +1 -0
- package/dist/cjs/sdk/error.d.ts +3 -0
- package/dist/cjs/sdk/error.d.ts.map +1 -0
- package/dist/cjs/sdk/error.js +20 -0
- package/dist/cjs/sdk/error.js.map +1 -0
- package/dist/cjs/sdk/helpers/images.d.ts +31 -0
- package/dist/cjs/sdk/helpers/images.d.ts.map +1 -0
- package/dist/cjs/sdk/helpers/images.js +195 -0
- package/dist/cjs/sdk/helpers/images.js.map +1 -0
- package/dist/cjs/sdk/index.d.ts +7 -0
- package/dist/cjs/sdk/index.d.ts.map +1 -0
- package/dist/cjs/sdk/index.js +29 -0
- package/dist/cjs/sdk/index.js.map +1 -0
- package/dist/cjs/sdk/internal/builtin-types.d.ts +73 -0
- package/dist/cjs/sdk/internal/builtin-types.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/builtin-types.js +4 -0
- package/dist/cjs/sdk/internal/builtin-types.js.map +1 -0
- package/dist/cjs/sdk/internal/detect-platform.d.ts +15 -0
- package/dist/cjs/sdk/internal/detect-platform.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/detect-platform.js +185 -0
- package/dist/cjs/sdk/internal/detect-platform.js.map +1 -0
- package/dist/cjs/sdk/internal/errors.d.ts +3 -0
- package/dist/cjs/sdk/internal/errors.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/errors.js +41 -0
- package/dist/cjs/sdk/internal/errors.js.map +1 -0
- package/dist/cjs/sdk/internal/headers.d.ts +43 -0
- package/dist/cjs/sdk/internal/headers.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/headers.js +142 -0
- package/dist/cjs/sdk/internal/headers.js.map +1 -0
- package/dist/cjs/sdk/internal/parse.d.ts +3 -0
- package/dist/cjs/sdk/internal/parse.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/parse.js +7 -0
- package/dist/cjs/sdk/internal/parse.js.map +1 -0
- package/dist/cjs/sdk/internal/qs/formats.d.ts +7 -0
- package/dist/cjs/sdk/internal/qs/formats.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/qs/formats.js +13 -0
- package/dist/cjs/sdk/internal/qs/formats.js.map +1 -0
- package/dist/cjs/sdk/internal/qs/index.d.ts +10 -0
- package/dist/cjs/sdk/internal/qs/index.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/qs/index.js +14 -0
- package/dist/cjs/sdk/internal/qs/index.js.map +1 -0
- package/dist/cjs/sdk/internal/qs/stringify.d.ts +3 -0
- package/dist/cjs/sdk/internal/qs/stringify.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/qs/stringify.js +278 -0
- package/dist/cjs/sdk/internal/qs/stringify.js.map +1 -0
- package/dist/cjs/sdk/internal/qs/types.d.ts +57 -0
- package/dist/cjs/sdk/internal/qs/types.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/qs/types.js +3 -0
- package/dist/cjs/sdk/internal/qs/types.js.map +1 -0
- package/dist/cjs/sdk/internal/qs/utils.d.ts +15 -0
- package/dist/cjs/sdk/internal/qs/utils.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/qs/utils.js +230 -0
- package/dist/cjs/sdk/internal/qs/utils.js.map +1 -0
- package/dist/cjs/sdk/internal/request-options.d.ts +33 -0
- package/dist/cjs/sdk/internal/request-options.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/request-options.js +15 -0
- package/dist/cjs/sdk/internal/request-options.js.map +1 -0
- package/dist/cjs/sdk/internal/shim-types.d.ts +17 -0
- package/dist/cjs/sdk/internal/shim-types.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/shim-types.js +4 -0
- package/dist/cjs/sdk/internal/shim-types.js.map +1 -0
- package/dist/cjs/sdk/internal/shims.d.ts +26 -0
- package/dist/cjs/sdk/internal/shims.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/shims.js +92 -0
- package/dist/cjs/sdk/internal/shims.js.map +1 -0
- package/dist/cjs/sdk/internal/to-file.d.ts +45 -0
- package/dist/cjs/sdk/internal/to-file.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/to-file.js +91 -0
- package/dist/cjs/sdk/internal/to-file.js.map +1 -0
- package/dist/cjs/sdk/internal/types.d.ts +63 -0
- package/dist/cjs/sdk/internal/types.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/types.js +4 -0
- package/dist/cjs/sdk/internal/types.js.map +1 -0
- package/dist/cjs/sdk/internal/uploads.d.ts +42 -0
- package/dist/cjs/sdk/internal/uploads.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/uploads.js +158 -0
- package/dist/cjs/sdk/internal/uploads.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/base64.d.ts +3 -0
- package/dist/cjs/sdk/internal/utils/base64.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/base64.js +38 -0
- package/dist/cjs/sdk/internal/utils/base64.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/body.d.ts +40 -0
- package/dist/cjs/sdk/internal/utils/body.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/body.js +148 -0
- package/dist/cjs/sdk/internal/utils/body.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/bytes.d.ts +4 -0
- package/dist/cjs/sdk/internal/utils/bytes.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/bytes.js +31 -0
- package/dist/cjs/sdk/internal/utils/bytes.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/env.d.ts +9 -0
- package/dist/cjs/sdk/internal/utils/env.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/env.js +22 -0
- package/dist/cjs/sdk/internal/utils/env.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/log.d.ts +52 -0
- package/dist/cjs/sdk/internal/utils/log.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/log.js +413 -0
- package/dist/cjs/sdk/internal/utils/log.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/path.d.ts +41 -0
- package/dist/cjs/sdk/internal/utils/path.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/path.js +115 -0
- package/dist/cjs/sdk/internal/utils/path.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/query-string.d.ts +21 -0
- package/dist/cjs/sdk/internal/utils/query-string.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/query-string.js +128 -0
- package/dist/cjs/sdk/internal/utils/query-string.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/query.d.ts +2 -0
- package/dist/cjs/sdk/internal/utils/query.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/query.js +12 -0
- package/dist/cjs/sdk/internal/utils/query.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/sleep.d.ts +2 -0
- package/dist/cjs/sdk/internal/utils/sleep.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/sleep.js +7 -0
- package/dist/cjs/sdk/internal/utils/sleep.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/uuid.d.ts +5 -0
- package/dist/cjs/sdk/internal/utils/uuid.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/uuid.js +19 -0
- package/dist/cjs/sdk/internal/utils/uuid.js.map +1 -0
- package/dist/cjs/sdk/internal/utils/values.d.ts +18 -0
- package/dist/cjs/sdk/internal/utils/values.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils/values.js +112 -0
- package/dist/cjs/sdk/internal/utils/values.js.map +1 -0
- package/dist/cjs/sdk/internal/utils.d.ts +8 -0
- package/dist/cjs/sdk/internal/utils.d.ts.map +1 -0
- package/dist/cjs/sdk/internal/utils.js +25 -0
- package/dist/cjs/sdk/internal/utils.js.map +1 -0
- package/dist/cjs/sdk/pagination.d.ts +3 -0
- package/dist/cjs/sdk/pagination.d.ts.map +1 -0
- package/dist/cjs/sdk/pagination.js +20 -0
- package/dist/cjs/sdk/pagination.js.map +1 -0
- package/dist/cjs/sdk/resource.d.ts +6 -0
- package/dist/cjs/sdk/resource.d.ts.map +1 -0
- package/dist/cjs/sdk/resource.js +12 -0
- package/dist/cjs/sdk/resource.js.map +1 -0
- package/dist/cjs/sdk/resources/images/images.d.ts +202 -0
- package/dist/cjs/sdk/resources/images/images.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/images/images.js +139 -0
- package/dist/cjs/sdk/resources/images/images.js.map +1 -0
- package/dist/cjs/sdk/resources/images/index.d.ts +5 -0
- package/dist/cjs/sdk/resources/images/index.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/images/index.js +9 -0
- package/dist/cjs/sdk/resources/images/index.js.map +1 -0
- package/dist/cjs/sdk/resources/images/uploads.d.ts +50 -0
- package/dist/cjs/sdk/resources/images/uploads.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/images/uploads.js +28 -0
- package/dist/cjs/sdk/resources/images/uploads.js.map +1 -0
- package/dist/cjs/sdk/resources/images.d.ts +2 -0
- package/dist/cjs/sdk/resources/images.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/images.js +19 -0
- package/dist/cjs/sdk/resources/images.js.map +1 -0
- package/dist/cjs/sdk/resources/index.d.ts +6 -0
- package/dist/cjs/sdk/resources/index.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/index.js +11 -0
- package/dist/cjs/sdk/resources/index.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/autoresizing.d.ts +115 -0
- package/dist/cjs/sdk/resources/machines/autoresizing.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/autoresizing.js +46 -0
- package/dist/cjs/sdk/resources/machines/autoresizing.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/executions.d.ts +341 -0
- package/dist/cjs/sdk/resources/machines/executions/executions.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/executions.js +161 -0
- package/dist/cjs/sdk/resources/machines/executions/executions.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/index.d.ts +5 -0
- package/dist/cjs/sdk/resources/machines/executions/index.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/index.js +9 -0
- package/dist/cjs/sdk/resources/machines/executions/index.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/logs.d.ts +103 -0
- package/dist/cjs/sdk/resources/machines/executions/logs.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions/logs.js +48 -0
- package/dist/cjs/sdk/resources/machines/executions/logs.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions.d.ts +2 -0
- package/dist/cjs/sdk/resources/machines/executions.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/executions.js +19 -0
- package/dist/cjs/sdk/resources/machines/executions.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/index.d.ts +9 -0
- package/dist/cjs/sdk/resources/machines/index.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/index.js +13 -0
- package/dist/cjs/sdk/resources/machines/index.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/machines.d.ts +496 -0
- package/dist/cjs/sdk/resources/machines/machines.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/machines.js +220 -0
- package/dist/cjs/sdk/resources/machines/machines.js.map +1 -0
- package/dist/cjs/sdk/resources/machines/ssh.d.ts +175 -0
- package/dist/cjs/sdk/resources/machines/ssh.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines/ssh.js +89 -0
- package/dist/cjs/sdk/resources/machines/ssh.js.map +1 -0
- package/dist/cjs/sdk/resources/machines.d.ts +2 -0
- package/dist/cjs/sdk/resources/machines.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/machines.js +19 -0
- package/dist/cjs/sdk/resources/machines.js.map +1 -0
- package/dist/cjs/sdk/resources/organization/autoresizing.d.ts +86 -0
- package/dist/cjs/sdk/resources/organization/autoresizing.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/organization/autoresizing.js +38 -0
- package/dist/cjs/sdk/resources/organization/autoresizing.js.map +1 -0
- package/dist/cjs/sdk/resources/organization/index.d.ts +4 -0
- package/dist/cjs/sdk/resources/organization/index.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/organization/index.js +9 -0
- package/dist/cjs/sdk/resources/organization/index.js.map +1 -0
- package/dist/cjs/sdk/resources/organization/organization.d.ts +10 -0
- package/dist/cjs/sdk/resources/organization/organization.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/organization/organization.js +46 -0
- package/dist/cjs/sdk/resources/organization/organization.js.map +1 -0
- package/dist/cjs/sdk/resources/organization.d.ts +2 -0
- package/dist/cjs/sdk/resources/organization.d.ts.map +1 -0
- package/dist/cjs/sdk/resources/organization.js +19 -0
- package/dist/cjs/sdk/resources/organization.js.map +1 -0
- package/dist/cjs/sdk/resources.d.ts +3 -0
- package/dist/cjs/sdk/resources.d.ts.map +1 -0
- package/dist/cjs/sdk/resources.js +9 -0
- package/dist/cjs/sdk/resources.js.map +1 -0
- package/dist/cjs/sdk/uploads.d.ts +2 -0
- package/dist/cjs/sdk/uploads.d.ts.map +1 -0
- package/dist/cjs/sdk/uploads.js +7 -0
- package/dist/cjs/sdk/uploads.js.map +1 -0
- package/dist/cjs/sdk/version.d.ts +2 -0
- package/dist/cjs/sdk/version.d.ts.map +1 -0
- package/dist/cjs/sdk/version.js +6 -0
- package/dist/cjs/sdk/version.js.map +1 -0
- package/dist/esm/bin.d.ts +3 -0
- package/dist/esm/bin.d.ts.map +1 -0
- package/dist/esm/bin.js +5 -0
- package/dist/esm/bin.js.map +1 -0
- package/dist/esm/cli/completions.d.ts +6 -0
- package/dist/esm/cli/completions.d.ts.map +1 -0
- package/dist/esm/cli/completions.js +8 -0
- package/dist/esm/cli/completions.js.map +1 -0
- package/dist/esm/cli/credentials.d.ts +169 -0
- package/dist/esm/cli/credentials.d.ts.map +1 -0
- package/dist/esm/cli/credentials.js +614 -0
- package/dist/esm/cli/credentials.js.map +1 -0
- package/dist/esm/cli/keychain.d.ts +34 -0
- package/dist/esm/cli/keychain.d.ts.map +1 -0
- package/dist/esm/cli/keychain.js +237 -0
- package/dist/esm/cli/keychain.js.map +1 -0
- package/dist/esm/cli/list.d.ts +23 -0
- package/dist/esm/cli/list.d.ts.map +1 -0
- package/dist/esm/cli/list.js +27 -0
- package/dist/esm/cli/list.js.map +1 -0
- package/dist/esm/cli/login.d.ts +137 -0
- package/dist/esm/cli/login.d.ts.map +1 -0
- package/dist/esm/cli/login.js +2053 -0
- package/dist/esm/cli/login.js.map +1 -0
- package/dist/esm/cli/runtime.d.ts +98 -0
- package/dist/esm/cli/runtime.d.ts.map +1 -0
- package/dist/esm/cli/runtime.js +1345 -0
- package/dist/esm/cli/runtime.js.map +1 -0
- package/dist/esm/cli/toon.d.ts +6 -0
- package/dist/esm/cli/toon.d.ts.map +1 -0
- package/dist/esm/cli/toon.js +161 -0
- package/dist/esm/cli/toon.js.map +1 -0
- package/dist/esm/cli/upgrade.d.ts +28 -0
- package/dist/esm/cli/upgrade.d.ts.map +1 -0
- package/dist/esm/cli/upgrade.js +1186 -0
- package/dist/esm/cli/upgrade.js.map +1 -0
- package/dist/esm/commands/index.d.ts +47 -0
- package/dist/esm/commands/index.d.ts.map +1 -0
- package/dist/esm/commands/index.js +1195 -0
- package/dist/esm/commands/index.js.map +1 -0
- package/dist/esm/custom/browser-routing.d.ts +4 -0
- package/dist/esm/custom/browser-routing.d.ts.map +1 -0
- package/dist/esm/custom/browser-routing.js +47 -0
- package/dist/esm/custom/browser-routing.js.map +1 -0
- package/dist/esm/custom/images.d.ts +6 -0
- package/dist/esm/custom/images.d.ts.map +1 -0
- package/dist/esm/custom/images.js +68 -0
- package/dist/esm/custom/images.js.map +1 -0
- package/dist/esm/custom/machines.d.ts +20 -0
- package/dist/esm/custom/machines.d.ts.map +1 -0
- package/dist/esm/custom/machines.js +76 -0
- package/dist/esm/custom/machines.js.map +1 -0
- package/dist/esm/custom/ssh-picker.d.ts +19 -0
- package/dist/esm/custom/ssh-picker.d.ts.map +1 -0
- package/dist/esm/custom/ssh-picker.js +149 -0
- package/dist/esm/custom/ssh-picker.js.map +1 -0
- package/dist/esm/custom/ssh.d.ts +18 -0
- package/dist/esm/custom/ssh.d.ts.map +1 -0
- package/dist/esm/custom/ssh.js +147 -0
- package/dist/esm/custom/ssh.js.map +1 -0
- package/dist/esm/feedback/bundle.d.ts +41 -0
- package/dist/esm/feedback/bundle.d.ts.map +1 -0
- package/dist/esm/feedback/bundle.js +83 -0
- package/dist/esm/feedback/bundle.js.map +1 -0
- package/dist/esm/feedback/command.d.ts +6 -0
- package/dist/esm/feedback/command.d.ts.map +1 -0
- package/dist/esm/feedback/command.js +92 -0
- package/dist/esm/feedback/command.js.map +1 -0
- package/dist/esm/feedback/diagnostics.d.ts +30 -0
- package/dist/esm/feedback/diagnostics.d.ts.map +1 -0
- package/dist/esm/feedback/diagnostics.js +270 -0
- package/dist/esm/feedback/diagnostics.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/sdk/api-promise.d.ts +31 -0
- package/dist/esm/sdk/api-promise.d.ts.map +1 -0
- package/dist/esm/sdk/api-promise.js +68 -0
- package/dist/esm/sdk/api-promise.js.map +1 -0
- package/dist/esm/sdk/client.d.ts +267 -0
- package/dist/esm/sdk/client.d.ts.map +1 -0
- package/dist/esm/sdk/client.js +928 -0
- package/dist/esm/sdk/client.js.map +1 -0
- package/dist/esm/sdk/core/api-promise.d.ts +3 -0
- package/dist/esm/sdk/core/api-promise.d.ts.map +1 -0
- package/dist/esm/sdk/core/api-promise.js +3 -0
- package/dist/esm/sdk/core/api-promise.js.map +1 -0
- package/dist/esm/sdk/core/error.d.ts +46 -0
- package/dist/esm/sdk/core/error.d.ts.map +1 -0
- package/dist/esm/sdk/core/error.js +119 -0
- package/dist/esm/sdk/core/error.js.map +1 -0
- package/dist/esm/sdk/core/pagination.d.ts +38 -0
- package/dist/esm/sdk/core/pagination.d.ts.map +1 -0
- package/dist/esm/sdk/core/pagination.js +92 -0
- package/dist/esm/sdk/core/pagination.js.map +1 -0
- package/dist/esm/sdk/core/resource.d.ts +2 -0
- package/dist/esm/sdk/core/resource.d.ts.map +1 -0
- package/dist/esm/sdk/core/resource.js +3 -0
- package/dist/esm/sdk/core/resource.js.map +1 -0
- package/dist/esm/sdk/core/uploads.d.ts +3 -0
- package/dist/esm/sdk/core/uploads.d.ts.map +1 -0
- package/dist/esm/sdk/core/uploads.js +3 -0
- package/dist/esm/sdk/core/uploads.js.map +1 -0
- package/dist/esm/sdk/error.d.ts +3 -0
- package/dist/esm/sdk/error.d.ts.map +1 -0
- package/dist/esm/sdk/error.js +4 -0
- package/dist/esm/sdk/error.js.map +1 -0
- package/dist/esm/sdk/helpers/images.d.ts +31 -0
- package/dist/esm/sdk/helpers/images.d.ts.map +1 -0
- package/dist/esm/sdk/helpers/images.js +189 -0
- package/dist/esm/sdk/helpers/images.js.map +1 -0
- package/dist/esm/sdk/index.d.ts +7 -0
- package/dist/esm/sdk/index.d.ts.map +1 -0
- package/dist/esm/sdk/index.js +8 -0
- package/dist/esm/sdk/index.js.map +1 -0
- package/dist/esm/sdk/internal/builtin-types.d.ts +73 -0
- package/dist/esm/sdk/internal/builtin-types.d.ts.map +1 -0
- package/dist/esm/sdk/internal/builtin-types.js +3 -0
- package/dist/esm/sdk/internal/builtin-types.js.map +1 -0
- package/dist/esm/sdk/internal/detect-platform.d.ts +15 -0
- package/dist/esm/sdk/internal/detect-platform.d.ts.map +1 -0
- package/dist/esm/sdk/internal/detect-platform.js +180 -0
- package/dist/esm/sdk/internal/detect-platform.js.map +1 -0
- package/dist/esm/sdk/internal/errors.d.ts +3 -0
- package/dist/esm/sdk/internal/errors.d.ts.map +1 -0
- package/dist/esm/sdk/internal/errors.js +36 -0
- package/dist/esm/sdk/internal/errors.js.map +1 -0
- package/dist/esm/sdk/internal/headers.d.ts +43 -0
- package/dist/esm/sdk/internal/headers.d.ts.map +1 -0
- package/dist/esm/sdk/internal/headers.js +133 -0
- package/dist/esm/sdk/internal/headers.js.map +1 -0
- package/dist/esm/sdk/internal/parse.d.ts +3 -0
- package/dist/esm/sdk/internal/parse.d.ts.map +1 -0
- package/dist/esm/sdk/internal/parse.js +3 -0
- package/dist/esm/sdk/internal/parse.js.map +1 -0
- package/dist/esm/sdk/internal/qs/formats.d.ts +7 -0
- package/dist/esm/sdk/internal/qs/formats.d.ts.map +1 -0
- package/dist/esm/sdk/internal/qs/formats.js +9 -0
- package/dist/esm/sdk/internal/qs/formats.js.map +1 -0
- package/dist/esm/sdk/internal/qs/index.d.ts +10 -0
- package/dist/esm/sdk/internal/qs/index.d.ts.map +1 -0
- package/dist/esm/sdk/internal/qs/index.js +10 -0
- package/dist/esm/sdk/internal/qs/index.js.map +1 -0
- package/dist/esm/sdk/internal/qs/stringify.d.ts +3 -0
- package/dist/esm/sdk/internal/qs/stringify.d.ts.map +1 -0
- package/dist/esm/sdk/internal/qs/stringify.js +275 -0
- package/dist/esm/sdk/internal/qs/stringify.js.map +1 -0
- package/dist/esm/sdk/internal/qs/types.d.ts +57 -0
- package/dist/esm/sdk/internal/qs/types.d.ts.map +1 -0
- package/dist/esm/sdk/internal/qs/types.js +2 -0
- package/dist/esm/sdk/internal/qs/types.js.map +1 -0
- package/dist/esm/sdk/internal/qs/utils.d.ts +15 -0
- package/dist/esm/sdk/internal/qs/utils.d.ts.map +1 -0
- package/dist/esm/sdk/internal/qs/utils.js +217 -0
- package/dist/esm/sdk/internal/qs/utils.js.map +1 -0
- package/dist/esm/sdk/internal/request-options.d.ts +33 -0
- package/dist/esm/sdk/internal/request-options.d.ts.map +1 -0
- package/dist/esm/sdk/internal/request-options.js +11 -0
- package/dist/esm/sdk/internal/request-options.js.map +1 -0
- package/dist/esm/sdk/internal/shim-types.d.ts +17 -0
- package/dist/esm/sdk/internal/shim-types.d.ts.map +1 -0
- package/dist/esm/sdk/internal/shim-types.js +3 -0
- package/dist/esm/sdk/internal/shim-types.js.map +1 -0
- package/dist/esm/sdk/internal/shims.d.ts +26 -0
- package/dist/esm/sdk/internal/shims.d.ts.map +1 -0
- package/dist/esm/sdk/internal/shims.js +85 -0
- package/dist/esm/sdk/internal/shims.js.map +1 -0
- package/dist/esm/sdk/internal/to-file.d.ts +45 -0
- package/dist/esm/sdk/internal/to-file.d.ts.map +1 -0
- package/dist/esm/sdk/internal/to-file.js +88 -0
- package/dist/esm/sdk/internal/to-file.js.map +1 -0
- package/dist/esm/sdk/internal/types.d.ts +63 -0
- package/dist/esm/sdk/internal/types.d.ts.map +1 -0
- package/dist/esm/sdk/internal/types.js +3 -0
- package/dist/esm/sdk/internal/types.js.map +1 -0
- package/dist/esm/sdk/internal/uploads.d.ts +42 -0
- package/dist/esm/sdk/internal/uploads.d.ts.map +1 -0
- package/dist/esm/sdk/internal/uploads.js +148 -0
- package/dist/esm/sdk/internal/uploads.js.map +1 -0
- package/dist/esm/sdk/internal/utils/base64.d.ts +3 -0
- package/dist/esm/sdk/internal/utils/base64.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/base64.js +33 -0
- package/dist/esm/sdk/internal/utils/base64.js.map +1 -0
- package/dist/esm/sdk/internal/utils/body.d.ts +40 -0
- package/dist/esm/sdk/internal/utils/body.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/body.js +140 -0
- package/dist/esm/sdk/internal/utils/body.js.map +1 -0
- package/dist/esm/sdk/internal/utils/bytes.d.ts +4 -0
- package/dist/esm/sdk/internal/utils/bytes.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/bytes.js +26 -0
- package/dist/esm/sdk/internal/utils/bytes.js.map +1 -0
- package/dist/esm/sdk/internal/utils/env.d.ts +9 -0
- package/dist/esm/sdk/internal/utils/env.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/env.js +18 -0
- package/dist/esm/sdk/internal/utils/env.js.map +1 -0
- package/dist/esm/sdk/internal/utils/log.d.ts +52 -0
- package/dist/esm/sdk/internal/utils/log.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/log.js +405 -0
- package/dist/esm/sdk/internal/utils/log.js.map +1 -0
- package/dist/esm/sdk/internal/utils/path.d.ts +41 -0
- package/dist/esm/sdk/internal/utils/path.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/path.js +108 -0
- package/dist/esm/sdk/internal/utils/path.js.map +1 -0
- package/dist/esm/sdk/internal/utils/query-string.d.ts +21 -0
- package/dist/esm/sdk/internal/utils/query-string.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/query-string.js +125 -0
- package/dist/esm/sdk/internal/utils/query-string.js.map +1 -0
- package/dist/esm/sdk/internal/utils/query.d.ts +2 -0
- package/dist/esm/sdk/internal/utils/query.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/query.js +9 -0
- package/dist/esm/sdk/internal/utils/query.js.map +1 -0
- package/dist/esm/sdk/internal/utils/sleep.d.ts +2 -0
- package/dist/esm/sdk/internal/utils/sleep.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/sleep.js +3 -0
- package/dist/esm/sdk/internal/utils/sleep.js.map +1 -0
- package/dist/esm/sdk/internal/utils/uuid.d.ts +5 -0
- package/dist/esm/sdk/internal/utils/uuid.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/uuid.js +15 -0
- package/dist/esm/sdk/internal/utils/uuid.js.map +1 -0
- package/dist/esm/sdk/internal/utils/values.d.ts +18 -0
- package/dist/esm/sdk/internal/utils/values.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils/values.js +94 -0
- package/dist/esm/sdk/internal/utils/values.js.map +1 -0
- package/dist/esm/sdk/internal/utils.d.ts +8 -0
- package/dist/esm/sdk/internal/utils.d.ts.map +1 -0
- package/dist/esm/sdk/internal/utils.js +9 -0
- package/dist/esm/sdk/internal/utils.js.map +1 -0
- package/dist/esm/sdk/pagination.d.ts +3 -0
- package/dist/esm/sdk/pagination.d.ts.map +1 -0
- package/dist/esm/sdk/pagination.js +4 -0
- package/dist/esm/sdk/pagination.js.map +1 -0
- package/dist/esm/sdk/resource.d.ts +6 -0
- package/dist/esm/sdk/resource.d.ts.map +1 -0
- package/dist/esm/sdk/resource.js +8 -0
- package/dist/esm/sdk/resource.js.map +1 -0
- package/dist/esm/sdk/resources/images/images.d.ts +202 -0
- package/dist/esm/sdk/resources/images/images.d.ts.map +1 -0
- package/dist/esm/sdk/resources/images/images.js +102 -0
- package/dist/esm/sdk/resources/images/images.js.map +1 -0
- package/dist/esm/sdk/resources/images/index.d.ts +5 -0
- package/dist/esm/sdk/resources/images/index.d.ts.map +1 -0
- package/dist/esm/sdk/resources/images/index.js +4 -0
- package/dist/esm/sdk/resources/images/index.js.map +1 -0
- package/dist/esm/sdk/resources/images/uploads.d.ts +50 -0
- package/dist/esm/sdk/resources/images/uploads.d.ts.map +1 -0
- package/dist/esm/sdk/resources/images/uploads.js +24 -0
- package/dist/esm/sdk/resources/images/uploads.js.map +1 -0
- package/dist/esm/sdk/resources/images.d.ts +2 -0
- package/dist/esm/sdk/resources/images.d.ts.map +1 -0
- package/dist/esm/sdk/resources/images.js +3 -0
- package/dist/esm/sdk/resources/images.js.map +1 -0
- package/dist/esm/sdk/resources/index.d.ts +6 -0
- package/dist/esm/sdk/resources/index.d.ts.map +1 -0
- package/dist/esm/sdk/resources/index.js +5 -0
- package/dist/esm/sdk/resources/index.js.map +1 -0
- package/dist/esm/sdk/resources/machines/autoresizing.d.ts +115 -0
- package/dist/esm/sdk/resources/machines/autoresizing.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/autoresizing.js +42 -0
- package/dist/esm/sdk/resources/machines/autoresizing.js.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/executions.d.ts +341 -0
- package/dist/esm/sdk/resources/machines/executions/executions.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/executions.js +124 -0
- package/dist/esm/sdk/resources/machines/executions/executions.js.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/index.d.ts +5 -0
- package/dist/esm/sdk/resources/machines/executions/index.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/index.js +4 -0
- package/dist/esm/sdk/resources/machines/executions/index.js.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/logs.d.ts +103 -0
- package/dist/esm/sdk/resources/machines/executions/logs.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/executions/logs.js +44 -0
- package/dist/esm/sdk/resources/machines/executions/logs.js.map +1 -0
- package/dist/esm/sdk/resources/machines/executions.d.ts +2 -0
- package/dist/esm/sdk/resources/machines/executions.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/executions.js +3 -0
- package/dist/esm/sdk/resources/machines/executions.js.map +1 -0
- package/dist/esm/sdk/resources/machines/index.d.ts +9 -0
- package/dist/esm/sdk/resources/machines/index.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/index.js +6 -0
- package/dist/esm/sdk/resources/machines/index.js.map +1 -0
- package/dist/esm/sdk/resources/machines/machines.d.ts +496 -0
- package/dist/esm/sdk/resources/machines/machines.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/machines.js +183 -0
- package/dist/esm/sdk/resources/machines/machines.js.map +1 -0
- package/dist/esm/sdk/resources/machines/ssh.d.ts +175 -0
- package/dist/esm/sdk/resources/machines/ssh.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines/ssh.js +85 -0
- package/dist/esm/sdk/resources/machines/ssh.js.map +1 -0
- package/dist/esm/sdk/resources/machines.d.ts +2 -0
- package/dist/esm/sdk/resources/machines.d.ts.map +1 -0
- package/dist/esm/sdk/resources/machines.js +3 -0
- package/dist/esm/sdk/resources/machines.js.map +1 -0
- package/dist/esm/sdk/resources/organization/autoresizing.d.ts +86 -0
- package/dist/esm/sdk/resources/organization/autoresizing.d.ts.map +1 -0
- package/dist/esm/sdk/resources/organization/autoresizing.js +34 -0
- package/dist/esm/sdk/resources/organization/autoresizing.js.map +1 -0
- package/dist/esm/sdk/resources/organization/index.d.ts +4 -0
- package/dist/esm/sdk/resources/organization/index.d.ts.map +1 -0
- package/dist/esm/sdk/resources/organization/index.js +4 -0
- package/dist/esm/sdk/resources/organization/index.js.map +1 -0
- package/dist/esm/sdk/resources/organization/organization.d.ts +10 -0
- package/dist/esm/sdk/resources/organization/organization.d.ts.map +1 -0
- package/dist/esm/sdk/resources/organization/organization.js +9 -0
- package/dist/esm/sdk/resources/organization/organization.js.map +1 -0
- package/dist/esm/sdk/resources/organization.d.ts +2 -0
- package/dist/esm/sdk/resources/organization.d.ts.map +1 -0
- package/dist/esm/sdk/resources/organization.js +3 -0
- package/dist/esm/sdk/resources/organization.js.map +1 -0
- package/dist/esm/sdk/resources.d.ts +3 -0
- package/dist/esm/sdk/resources.d.ts.map +1 -0
- package/dist/esm/sdk/resources.js +3 -0
- package/dist/esm/sdk/resources.js.map +1 -0
- package/dist/esm/sdk/uploads.d.ts +2 -0
- package/dist/esm/sdk/uploads.d.ts.map +1 -0
- package/dist/esm/sdk/uploads.js +3 -0
- package/dist/esm/sdk/uploads.js.map +1 -0
- package/dist/esm/sdk/version.d.ts +2 -0
- package/dist/esm/sdk/version.d.ts.map +1 -0
- package/dist/esm/sdk/version.js +3 -0
- package/dist/esm/sdk/version.js.map +1 -0
- package/man/dedalus-completion.1 +35 -0
- package/man/dedalus-images-create.1 +126 -0
- package/man/dedalus-images-delete.1 +102 -0
- package/man/dedalus-images-import.1 +34 -0
- package/man/dedalus-images-list.1 +105 -0
- package/man/dedalus-images-retrieve.1 +102 -0
- package/man/dedalus-images-update.1 +108 -0
- package/man/dedalus-images-uploads-create.1 +112 -0
- package/man/dedalus-login.1 +47 -0
- package/man/dedalus-logout.1 +28 -0
- package/man/dedalus-machines-autoresizing-retrieve.1 +104 -0
- package/man/dedalus-machines-autoresizing-update.1 +116 -0
- package/man/dedalus-machines-create.1 +119 -0
- package/man/dedalus-machines-delete.1 +107 -0
- package/man/dedalus-machines-executions-create.1 +120 -0
- package/man/dedalus-machines-executions-delete.1 +108 -0
- package/man/dedalus-machines-executions-events.1 +118 -0
- package/man/dedalus-machines-executions-list.1 +114 -0
- package/man/dedalus-machines-executions-logs-create-token.1 +108 -0
- package/man/dedalus-machines-executions-logs-retrieve.1 +108 -0
- package/man/dedalus-machines-executions-output.1 +108 -0
- package/man/dedalus-machines-executions-retrieve.1 +108 -0
- package/man/dedalus-machines-list.1 +108 -0
- package/man/dedalus-machines-reboot.1 +107 -0
- package/man/dedalus-machines-resize.1 +110 -0
- package/man/dedalus-machines-retrieve.1 +104 -0
- package/man/dedalus-machines-sleep.1 +104 -0
- package/man/dedalus-machines-ssh-create.1 +108 -0
- package/man/dedalus-machines-ssh-delete.1 +108 -0
- package/man/dedalus-machines-ssh-list.1 +114 -0
- package/man/dedalus-machines-ssh-retrieve.1 +108 -0
- package/man/dedalus-machines-update.1 +110 -0
- package/man/dedalus-machines-wake.1 +104 -0
- package/man/dedalus-organization-autoresizing-retrieve.1 +99 -0
- package/man/dedalus-organization-autoresizing-update.1 +111 -0
- package/man/dedalus-uninstall.1 +23 -0
- package/man/dedalus-upgrade.1 +32 -0
- package/man/dedalus.1 +222 -0
- package/package.json +88 -4
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Scalar. See README.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.formatRequestDetails = exports.redactHeaders = exports.redactUrl = exports.parseLogLevel = void 0;
|
|
5
|
+
exports.loggerFor = loggerFor;
|
|
6
|
+
const values_1 = require("./values");
|
|
7
|
+
const levelNumbers = {
|
|
8
|
+
off: 0,
|
|
9
|
+
error: 200,
|
|
10
|
+
warn: 300,
|
|
11
|
+
info: 400,
|
|
12
|
+
debug: 500,
|
|
13
|
+
};
|
|
14
|
+
const parseLogLevel = (maybeLevel, sourceName, client) => {
|
|
15
|
+
if (!maybeLevel) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
if ((0, values_1.hasOwn)(levelNumbers, maybeLevel)) {
|
|
19
|
+
return maybeLevel;
|
|
20
|
+
}
|
|
21
|
+
loggerFor(client).warn(`${sourceName} was set to ${JSON.stringify(maybeLevel)}, expected one of ${JSON.stringify(Object.keys(levelNumbers))}`);
|
|
22
|
+
return undefined;
|
|
23
|
+
};
|
|
24
|
+
exports.parseLogLevel = parseLogLevel;
|
|
25
|
+
function noop() { }
|
|
26
|
+
function makeLogFn(fnLevel, logger, logLevel) {
|
|
27
|
+
if (!logger || levelNumbers[fnLevel] > levelNumbers[logLevel]) {
|
|
28
|
+
return noop;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
// Don't wrap logger functions, we want the stacktrace intact!
|
|
32
|
+
return logger[fnLevel].bind(logger);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
const noopLogger = {
|
|
36
|
+
error: noop,
|
|
37
|
+
warn: noop,
|
|
38
|
+
info: noop,
|
|
39
|
+
debug: noop,
|
|
40
|
+
};
|
|
41
|
+
let cachedLoggers = /* @__PURE__ */ new WeakMap();
|
|
42
|
+
function loggerFor(client) {
|
|
43
|
+
const logger = client.logger;
|
|
44
|
+
const logLevel = client.logLevel ?? 'off';
|
|
45
|
+
if (!logger) {
|
|
46
|
+
return noopLogger;
|
|
47
|
+
}
|
|
48
|
+
const cachedLogger = cachedLoggers.get(logger);
|
|
49
|
+
if (cachedLogger && cachedLogger[0] === logLevel) {
|
|
50
|
+
return cachedLogger[1];
|
|
51
|
+
}
|
|
52
|
+
const levelLogger = {
|
|
53
|
+
error: makeLogFn('error', logger, logLevel),
|
|
54
|
+
warn: makeLogFn('warn', logger, logLevel),
|
|
55
|
+
info: makeLogFn('info', logger, logLevel),
|
|
56
|
+
debug: makeLogFn('debug', logger, logLevel),
|
|
57
|
+
};
|
|
58
|
+
cachedLoggers.set(logger, [logLevel, levelLogger]);
|
|
59
|
+
return levelLogger;
|
|
60
|
+
}
|
|
61
|
+
/** Value a credential is replaced with before it reaches a log line. */
|
|
62
|
+
const REDACTED = '***';
|
|
63
|
+
/**
|
|
64
|
+
* Header names whose value is replaced before a request or response is logged.
|
|
65
|
+
*
|
|
66
|
+
* The fixed entries are the conventional credential headers, which is all a runtime shared by every
|
|
67
|
+
* SDK could know on its own. The generated ones are the headers *this* SDK's auth schemes actually
|
|
68
|
+
* send: an OpenAPI `apiKey` scheme names its own header, and `X-Auth-Token` or `PRIVATE-TOKEN` is no
|
|
69
|
+
* less a credential for being spelled differently. Without them a `logLevel: "debug"` run prints the
|
|
70
|
+
* credential in clear text, and the generated CLI turns that level on with `--debug`, so it reaches
|
|
71
|
+
* terminals and CI logs alike.
|
|
72
|
+
*/
|
|
73
|
+
const REDACTED_HEADERS = new Set([
|
|
74
|
+
'authorization',
|
|
75
|
+
'api-key',
|
|
76
|
+
'x-api-key',
|
|
77
|
+
'cookie',
|
|
78
|
+
'set-cookie',
|
|
79
|
+
]);
|
|
80
|
+
/**
|
|
81
|
+
* Query parameters this SDK sends a credential in, from its `apiKey` schemes with `in: query`.
|
|
82
|
+
*
|
|
83
|
+
* A credential in the query string is worse off than one in a header: the request URL is logged at
|
|
84
|
+
* `info` as well as at `debug`, so it leaks a level below the one a reader would think of as
|
|
85
|
+
* verbose.
|
|
86
|
+
*/
|
|
87
|
+
const REDACTED_QUERY_PARAMS = [];
|
|
88
|
+
/**
|
|
89
|
+
* A byte's percent-encoded spelling at any depth and in either hex case, as a pattern: `%3F`,
|
|
90
|
+
* `%3f`, `%253F`. Each extra round of encoding turns the `%` into `%25` and leaves the hex alone,
|
|
91
|
+
* and encoders disagree on which case they write the hex in.
|
|
92
|
+
*/
|
|
93
|
+
const encodedBytePattern = (byte) => '%(?:25)*' +
|
|
94
|
+
[...byte.toString(16).padStart(2, '0')]
|
|
95
|
+
.map((digit) => (/[a-f]/u.test(digit) ? `[${digit}${digit.toUpperCase()}]` : digit))
|
|
96
|
+
.join('');
|
|
97
|
+
/**
|
|
98
|
+
* The UTF-8 bytes of one code point, worked out from `encodeURIComponent` rather than a
|
|
99
|
+
* `TextEncoder`: this runs while the module loads, and a runtime without `TextEncoder` (older React
|
|
100
|
+
* Native engines) must still be able to import the client. A lone surrogate, which has no UTF-8
|
|
101
|
+
* spelling, yields no bytes, and `namePattern` then matches that character only as written.
|
|
102
|
+
*/
|
|
103
|
+
const utf8Bytes = (char) => {
|
|
104
|
+
const code = char.charCodeAt(0);
|
|
105
|
+
if (char.length === 1 && code < 0x80)
|
|
106
|
+
return [code];
|
|
107
|
+
try {
|
|
108
|
+
return encodeURIComponent(char)
|
|
109
|
+
.split('%')
|
|
110
|
+
.slice(1)
|
|
111
|
+
.map((hex) => parseInt(hex, 16));
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
return [];
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* A pattern matching one credential query name in every spelling a URL can carry it in: each
|
|
119
|
+
* character as written or percent-encoded (its UTF-8 bytes, at any depth and in either hex case),
|
|
120
|
+
* and a space also as `+`. `redactUrl` decodes a top-level name before it compares, so this keeps
|
|
121
|
+
* a nested name, which nothing decodes, from slipping past with one of its bytes escaped
|
|
122
|
+
* (`api%5Fkey`). Only the hex ignores case, not the name.
|
|
123
|
+
*/
|
|
124
|
+
const namePattern = (name) => [...name]
|
|
125
|
+
.map((char) => {
|
|
126
|
+
// Only syntax characters: the pattern is compiled with the `u` flag, under which escaping
|
|
127
|
+
// anything else (`\-`) is a syntax error rather than a no-op.
|
|
128
|
+
const escaped = char.replace(/[.*+?^${}()|[\]\\/]/gu, '\\$&');
|
|
129
|
+
const encoded = utf8Bytes(char).map(encodedBytePattern).join('');
|
|
130
|
+
// A lone surrogate has no bytes to encode; an empty alternative would make it optional.
|
|
131
|
+
if (encoded === '')
|
|
132
|
+
return `(?:${escaped})`;
|
|
133
|
+
return `(?:${escaped}|${encoded}${char === ' ' ? '|\\+' : ''})`;
|
|
134
|
+
})
|
|
135
|
+
.join('');
|
|
136
|
+
/**
|
|
137
|
+
* Matches a credential query parameter wherever text carries one, nested or not, with the name,
|
|
138
|
+
* separator and `=` in group 1 and the value after it. `undefined` when this SDK places no
|
|
139
|
+
* credential in the query.
|
|
140
|
+
*
|
|
141
|
+
* A name counts after a separator, `?`, `&` or `;`, either literal or percent-encoded any number of
|
|
142
|
+
* times over (`%3F`, `%253F`): a server can echo a whole URL encoded inside another parameter's
|
|
143
|
+
* value, as a login redirect's `return_to` does, and splitting the outer query on `&` never looks
|
|
144
|
+
* inside it. `;` also counts because an HTML-escaped `&` reads `&`. The `=` after the name can
|
|
145
|
+
* be encoded the same way. The value then runs to the next literal `&`, `#` or whitespace: an
|
|
146
|
+
* encoded `%26` may end a nested value, but stopping there would leak the rest of one a sloppy
|
|
147
|
+
* encoder left half-encoded, and masking too much is harmless. `<`, `>` and `"` end it too, since
|
|
148
|
+
* no valid URL carries them unencoded, so a `Link` header's `<url>` or a quoted URL keeps its
|
|
149
|
+
* closing delimiter. `'` does not: a query value can hold it raw. No quantifier nests inside
|
|
150
|
+
* another, so matching stays linear on hostile input.
|
|
151
|
+
*/
|
|
152
|
+
const QUERY_CREDENTIAL = (() => {
|
|
153
|
+
// An empty name would build a pattern that masks every `?=`.
|
|
154
|
+
const names = REDACTED_QUERY_PARAMS.filter((name) => name !== '').map(namePattern);
|
|
155
|
+
if (names.length === 0)
|
|
156
|
+
return undefined;
|
|
157
|
+
// `\u0026` is `&` as a JSON string escapes it, which Go's `encoding/json` does by default, so a
|
|
158
|
+
// URL quoted in JSON text (a header value, a non-JSON error body quoting one) carries its
|
|
159
|
+
// separators that way.
|
|
160
|
+
const separator = `(?:[?&;]|\\\\u0026|${[0x3f, 0x26, 0x3b].map(encodedBytePattern).join('|')})`;
|
|
161
|
+
const equals = `(?:=|${encodedBytePattern(0x3d)})`;
|
|
162
|
+
return new RegExp(`(${separator}(?:${names.join('|')})${equals})[^&#\\s<>"]*`, 'gu');
|
|
163
|
+
})();
|
|
164
|
+
/** Masks the value of every credential query parameter in `text`, nested and encoded ones included. */
|
|
165
|
+
const redactQueryCredentials = (text) => QUERY_CREDENTIAL === undefined ? text : text.replace(QUERY_CREDENTIAL, `$1${REDACTED}`);
|
|
166
|
+
/**
|
|
167
|
+
* Blanks the userinfo of a URL, which is a credential wherever it appears.
|
|
168
|
+
*
|
|
169
|
+
* A `--base-url` carries whatever the caller typed, and this repo already treats userinfo as secret
|
|
170
|
+
* where it handles a base URL elsewhere (`profileKey` blanks it before a URL becomes a keychain
|
|
171
|
+
* account). Both halves go rather than the password alone: a token is as often the username
|
|
172
|
+
* (`https://<token>@host`) as the password, so keeping either back still prints one shape in full.
|
|
173
|
+
*/
|
|
174
|
+
const redactUserinfo = (url) => {
|
|
175
|
+
const scheme = url.indexOf('://');
|
|
176
|
+
if (scheme === -1)
|
|
177
|
+
return url;
|
|
178
|
+
const start = scheme + 3;
|
|
179
|
+
// The authority ends at the first of these; an `@` past one of them belongs to a path or a query.
|
|
180
|
+
let end = url.length;
|
|
181
|
+
for (const delimiter of ['/', '?', '#']) {
|
|
182
|
+
const at = url.indexOf(delimiter, start);
|
|
183
|
+
if (at !== -1 && at < end)
|
|
184
|
+
end = at;
|
|
185
|
+
}
|
|
186
|
+
const at = url.lastIndexOf('@', end);
|
|
187
|
+
return at === -1 || at < start ? url : url.slice(0, start) + REDACTED + url.slice(at);
|
|
188
|
+
};
|
|
189
|
+
/**
|
|
190
|
+
* Decodes one `application/x-www-form-urlencoded` parameter name, for comparison against the list.
|
|
191
|
+
*
|
|
192
|
+
* A name reaches the URL percent-encoded, so `api%5Fkey` has to match `api_key`. A malformed escape
|
|
193
|
+
* comes back as written rather than throwing: a log line is no place to fail over one, and a name
|
|
194
|
+
* that cannot be decoded cannot match the list anyway.
|
|
195
|
+
*/
|
|
196
|
+
const decodeQueryName = (name) => {
|
|
197
|
+
try {
|
|
198
|
+
return decodeURIComponent(name.replace(/\+/gu, ' '));
|
|
199
|
+
}
|
|
200
|
+
catch {
|
|
201
|
+
return name;
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
/**
|
|
205
|
+
* Replaces the value of every credential-bearing query parameter in a URL about to be logged.
|
|
206
|
+
*
|
|
207
|
+
* Rewritten on the query substring rather than through `new URL`, so a relative URL is handled the
|
|
208
|
+
* same way an absolute one is and no parse can throw on the logging path.
|
|
209
|
+
*/
|
|
210
|
+
const redactUrl = (url) => {
|
|
211
|
+
const url_ = redactUserinfo(url);
|
|
212
|
+
if (REDACTED_QUERY_PARAMS.length === 0)
|
|
213
|
+
return url_;
|
|
214
|
+
const mark = url_.indexOf('?');
|
|
215
|
+
// A path can nest an encoded URL too (`/proxy/https%3A%2F%2Fh%2Fv1%3Fapi_key%3D…`), and so can a
|
|
216
|
+
// fragment, so the text outside the query is scanned for a nested credential as well.
|
|
217
|
+
if (mark === -1)
|
|
218
|
+
return redactQueryCredentials(url_);
|
|
219
|
+
// A fragment is not part of the query, so splitting it off keeps it out of the rewrite.
|
|
220
|
+
const fragment = url_.indexOf('#', mark);
|
|
221
|
+
const end = fragment === -1 ? url_.length : fragment;
|
|
222
|
+
// Each pair is rewritten where it stands rather than round-tripped through `URLSearchParams`,
|
|
223
|
+
// whose serializer re-spells every *other* parameter in its own safe set -- a space comes back as
|
|
224
|
+
// `+`, a `~` as `%7E` -- and a logged URL that is not the one the request used is a URL nobody can
|
|
225
|
+
// paste back. Splitting and rejoining on `&` is lossless, so a URL carrying no credential comes
|
|
226
|
+
// out of this exactly as it went in.
|
|
227
|
+
const query = url_
|
|
228
|
+
.slice(mark + 1, end)
|
|
229
|
+
.split('&')
|
|
230
|
+
.map((pair) => {
|
|
231
|
+
const equals = pair.indexOf('=');
|
|
232
|
+
// A parameter with no `=` carries no value of its own, but it can still be a whole encoded URL
|
|
233
|
+
// (`?%2Fv1%3Fapi_key%3D…`), so it is scanned for a nested credential like any other value.
|
|
234
|
+
if (equals === -1)
|
|
235
|
+
return redactQueryCredentials(pair);
|
|
236
|
+
const name = pair.slice(0, equals);
|
|
237
|
+
// Any other value still goes through `redactQueryCredentials`: it can nest a whole encoded URL
|
|
238
|
+
// that carries a credential, as a redirect target echoing the request in `return_to` does.
|
|
239
|
+
return REDACTED_QUERY_PARAMS.includes(decodeQueryName(name))
|
|
240
|
+
? name + '=' + REDACTED
|
|
241
|
+
: redactQueryCredentials(pair);
|
|
242
|
+
})
|
|
243
|
+
.join('&');
|
|
244
|
+
return redactQueryCredentials(url_.slice(0, mark)) + '?' + query + redactQueryCredentials(url_.slice(end));
|
|
245
|
+
};
|
|
246
|
+
exports.redactUrl = redactUrl;
|
|
247
|
+
/**
|
|
248
|
+
* Replaces credential values in a caller-supplied query object.
|
|
249
|
+
*
|
|
250
|
+
* The client merges its own auth query into the URL, but a caller may pass the same parameter here
|
|
251
|
+
* and `buildURL` lets that value win — so it is as live a credential as the one in the URL.
|
|
252
|
+
*/
|
|
253
|
+
const redactQuery = (query) => {
|
|
254
|
+
const redacted = { ...query };
|
|
255
|
+
for (const [name, value] of Object.entries(redacted)) {
|
|
256
|
+
// Every other string value is cleaned as text: an operation parameter such as `return_to` can
|
|
257
|
+
// hold a URL that carries the credential, and the URL logged beside this masks it there.
|
|
258
|
+
if (typeof value === 'string')
|
|
259
|
+
redacted[name] = redactText(value);
|
|
260
|
+
else if (Array.isArray(value)) {
|
|
261
|
+
redacted[name] = value.map((item) => (typeof item === 'string' ? redactText(item) : item));
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
for (const name of REDACTED_QUERY_PARAMS) {
|
|
265
|
+
if ((0, values_1.hasOwn)(redacted, name))
|
|
266
|
+
redacted[name] = REDACTED;
|
|
267
|
+
}
|
|
268
|
+
return redacted;
|
|
269
|
+
};
|
|
270
|
+
/**
|
|
271
|
+
* Replaces the value of every credential-bearing header, for a `Headers` or a plain record alike.
|
|
272
|
+
*
|
|
273
|
+
* Every other value is cleaned as free text: a response can echo the request URL back, in a
|
|
274
|
+
* `Location` or a `Link`, either as written or nested and encoded in a `return_to`, and a header's
|
|
275
|
+
* name says nothing about whether its value quotes a credential.
|
|
276
|
+
*/
|
|
277
|
+
const redactHeaders = (headers) => Object.fromEntries((headers instanceof Headers ? [...headers] : Object.entries(headers)).map(([name, value]) => [
|
|
278
|
+
name,
|
|
279
|
+
REDACTED_HEADERS.has(name.toLowerCase()) ? REDACTED : redactText(value),
|
|
280
|
+
]));
|
|
281
|
+
exports.redactHeaders = redactHeaders;
|
|
282
|
+
/**
|
|
283
|
+
* URL-shaped runs inside free text, for their userinfo. Whitespace, quotes, `<` and `>` end one, so
|
|
284
|
+
* two quoted URLs side by side stay two matches, each with its own userinfo masked, and an `@`
|
|
285
|
+
* further on in the text is not taken for one.
|
|
286
|
+
*/
|
|
287
|
+
const URL_IN_TEXT = /\bhttps?:\/\/[^\s"'<>]+/gu;
|
|
288
|
+
/**
|
|
289
|
+
* Text that cannot hold a URL credential: no query separator (literal, encoded or JSON-escaped), no
|
|
290
|
+
* `%` escape, no scheme.
|
|
291
|
+
*/
|
|
292
|
+
const NO_URL_CREDENTIAL = /^[^?&;%:\\]*$/u;
|
|
293
|
+
/**
|
|
294
|
+
* Redacts free text that may quote a URL anywhere in it: the userinfo of every absolute URL, then
|
|
295
|
+
* every credential query parameter anywhere in the text, which covers an absolute URL's own query,
|
|
296
|
+
* a relative URL (a `Location` of `/login?api_key=…`) and one nested, encoded, inside another
|
|
297
|
+
* parameter's value alike.
|
|
298
|
+
*
|
|
299
|
+
* Runs for every SDK, not only those with a query credential: Node's `fetch` rejects a URL carrying
|
|
300
|
+
* userinfo with a message that quotes the whole URL back (`Request cannot be constructed from a URL
|
|
301
|
+
* that includes credentials: …`), and that message is logged on the connection-failure path. Gating
|
|
302
|
+
* this on the query list left the password in the log for every SDK whose document happens not to
|
|
303
|
+
* put a credential in the query.
|
|
304
|
+
*
|
|
305
|
+
* Only the userinfo and the credential values are rewritten, never the whole string: a message is
|
|
306
|
+
* not a query string, and handing one to `URLSearchParams` wholesale would swallow everything after
|
|
307
|
+
* the first parameter and take the diagnostic with it. The query scan runs over the whole text in one
|
|
308
|
+
* pass rather than URL by URL, because where a URL ends in prose is a guess and a credential value
|
|
309
|
+
* can hold a raw `'` or end in punctuation: a masked value runs to the next whitespace, `&`, `#`,
|
|
310
|
+
* `<`, `>` or `"`, so punctuation right after it (`(https://h/v1?api_key=***): error`) goes with it.
|
|
311
|
+
* Text with none of the characters a credential needs is returned as is, since header values pass
|
|
312
|
+
* through here on every request whether or not anything logs them.
|
|
313
|
+
*/
|
|
314
|
+
const redactText = (text) => NO_URL_CREDENTIAL.test(text) ? text : redactQueryCredentials(text.replace(URL_IN_TEXT, redactUserinfo));
|
|
315
|
+
/**
|
|
316
|
+
* What a log line says about a request or response body: its kind and size, never its content.
|
|
317
|
+
*
|
|
318
|
+
* A body is the data an API exists to move — a token endpoint's answer, a customer's records — and
|
|
319
|
+
* no list of field names can tell which parts of it are secret, while a debug log ends up in CI
|
|
320
|
+
* output and support tickets. The response's `content-type` is logged with its headers beside this.
|
|
321
|
+
*/
|
|
322
|
+
const describeBody = (body) => {
|
|
323
|
+
if (body === null)
|
|
324
|
+
return '[empty body]';
|
|
325
|
+
if (typeof body === 'string')
|
|
326
|
+
return `[text body: ${body.length} characters]`;
|
|
327
|
+
if (body instanceof ArrayBuffer)
|
|
328
|
+
return `[binary body: ${body.byteLength} bytes]`;
|
|
329
|
+
if (ArrayBuffer.isView(body))
|
|
330
|
+
return `[binary body: ${body.byteLength} bytes]`;
|
|
331
|
+
const BlobClass = globalThis.Blob;
|
|
332
|
+
if (BlobClass && body instanceof BlobClass) {
|
|
333
|
+
return `[binary body: ${body.size} bytes${body.type ? `, ${body.type}` : ''}]`;
|
|
334
|
+
}
|
|
335
|
+
if (typeof body === 'object') {
|
|
336
|
+
// Plain data first: a parsed JSON body is a plain object or array, and its own `constructor` key
|
|
337
|
+
// is server text, so the class name is read only off an object that is neither.
|
|
338
|
+
const proto = Object.getPrototypeOf(body);
|
|
339
|
+
if (!Array.isArray(body) && proto !== Object.prototype && proto !== null) {
|
|
340
|
+
const name = proto.constructor?.name;
|
|
341
|
+
return typeof name === 'string' && name ? `[${name} body]` : '[object body]';
|
|
342
|
+
}
|
|
343
|
+
// Its shape rather than its serialized length: this runs on every parsed response whether or
|
|
344
|
+
// not debug logging is on, and serializing a large body just to measure it would cost each call.
|
|
345
|
+
if (Array.isArray(body))
|
|
346
|
+
return `[JSON body: array of ${body.length} items]`;
|
|
347
|
+
return `[JSON body: object with ${Object.keys(body).length} keys]`;
|
|
348
|
+
}
|
|
349
|
+
return `[${typeof body} body]`;
|
|
350
|
+
};
|
|
351
|
+
const formatRequestDetails = (details) => {
|
|
352
|
+
if (details.options) {
|
|
353
|
+
// Swept through a record view rather than field by field: not every field below is declared on
|
|
354
|
+
// `RequestOptions` in every profile (`serverURL` belongs to the Speakeasy compatibility one),
|
|
355
|
+
// and the copy is what keeps the caller's own options object untouched.
|
|
356
|
+
const options = { ...details.options };
|
|
357
|
+
delete options['headers']; // redundant + leaks internals
|
|
358
|
+
// The Speakeasy profile re-adds a header bag under `fetchOptions`, and the client reads it as
|
|
359
|
+
// the request's headers whenever the flattened one is absent -- so it holds the credential a
|
|
360
|
+
// migrated call site passes. Dropped for the same reason as the field above rather than
|
|
361
|
+
// redacted, because `HeadersLike` also takes shapes (an array of pairs, `null`) that the header
|
|
362
|
+
// redaction does not, and the sent headers are already reported beside this, redacted.
|
|
363
|
+
const fetchOptions = options['fetchOptions'];
|
|
364
|
+
if (fetchOptions && typeof fetchOptions === 'object') {
|
|
365
|
+
const copy = { ...fetchOptions };
|
|
366
|
+
delete copy['headers'];
|
|
367
|
+
options['fetchOptions'] = copy;
|
|
368
|
+
}
|
|
369
|
+
const query = options['query'];
|
|
370
|
+
if (query && typeof query === 'object')
|
|
371
|
+
options['query'] = redactQuery(query);
|
|
372
|
+
if (options['body'] !== undefined)
|
|
373
|
+
options['body'] = describeBody(options['body']);
|
|
374
|
+
// These three are URL strings, not route fragments: `buildURL` takes an absolute `path` whole --
|
|
375
|
+
// userinfo, query string and all -- while `defaultBaseURL` and the Speakeasy profile's
|
|
376
|
+
// `serverURL` each replace the base URL outright. The caller-supplied escape hatches therefore
|
|
377
|
+
// carry a credential exactly as readily as the resolved URL beside them does. `serverURL` may
|
|
378
|
+
// be a `URL`, whose `username` and `password` print as fields of their own, so the redacted
|
|
379
|
+
// string goes back rather than the object.
|
|
380
|
+
for (const field of ['path', 'defaultBaseURL', 'serverURL']) {
|
|
381
|
+
const value = options[field];
|
|
382
|
+
if (typeof value === 'string')
|
|
383
|
+
options[field] = (0, exports.redactUrl)(value);
|
|
384
|
+
else if (value instanceof URL)
|
|
385
|
+
options[field] = (0, exports.redactUrl)(value.toString());
|
|
386
|
+
}
|
|
387
|
+
details.options = options;
|
|
388
|
+
}
|
|
389
|
+
if (details.body !== undefined) {
|
|
390
|
+
details.body = describeBody(details.body);
|
|
391
|
+
}
|
|
392
|
+
if (details.url) {
|
|
393
|
+
details.url = (0, exports.redactUrl)(details.url);
|
|
394
|
+
}
|
|
395
|
+
if (details.headers) {
|
|
396
|
+
details.headers = (0, exports.redactHeaders)(details.headers);
|
|
397
|
+
}
|
|
398
|
+
// The message is whatever the fetch implementation threw, and Deno's connection errors quote the
|
|
399
|
+
// request URL inside their text (see the note at the `connection failed` call sites), so a query
|
|
400
|
+
// credential rides along in a field none of the checks above look at.
|
|
401
|
+
if (typeof details.message === 'string') {
|
|
402
|
+
details.message = redactText(details.message);
|
|
403
|
+
}
|
|
404
|
+
if ('retryOfRequestLogID' in details) {
|
|
405
|
+
if (details.retryOfRequestLogID) {
|
|
406
|
+
details.retryOf = details.retryOfRequestLogID;
|
|
407
|
+
}
|
|
408
|
+
delete details.retryOfRequestLogID;
|
|
409
|
+
}
|
|
410
|
+
return details;
|
|
411
|
+
};
|
|
412
|
+
exports.formatRequestDetails = formatRequestDetails;
|
|
413
|
+
//# sourceMappingURL=log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../../../src/sdk/internal/utils/log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Percent-encode everything that isn't safe to have in a path without encoding safe chars.
|
|
3
|
+
*
|
|
4
|
+
* Taken from https://datatracker.ietf.org/doc/html/rfc3986#section-3.3:
|
|
5
|
+
* > unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
|
|
6
|
+
* > sub-delims = "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="
|
|
7
|
+
* > pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
|
|
8
|
+
*/
|
|
9
|
+
export declare function encodeURIPath(str: string): string;
|
|
10
|
+
/**
|
|
11
|
+
* Like {@link encodeURIPath} but leaves `/` unescaped, implementing RFC 6570 reserved expansion
|
|
12
|
+
* (`{+var}`) for path-like parameters such as a file path. The slash is part of the route shape for
|
|
13
|
+
* these params — `docs/example.txt` must stay nested under `.../files/docs/example.txt` rather than
|
|
14
|
+
* collapsing to a single `docs%2Fexample.txt` segment that points at a different backend path. Each
|
|
15
|
+
* `/`-separated segment is still run through {@link encodeURIPath}, so every other unsafe character is
|
|
16
|
+
* percent-encoded with the exact same rules, and the tag function below still rejects `.`/`..` segments,
|
|
17
|
+
* so a reserved value cannot smuggle in path traversal.
|
|
18
|
+
*/
|
|
19
|
+
export declare function encodeURIPathReserved(str: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Wrapper marking a path-parameter value for reserved expansion. The {@link createPathTagFunction} tag
|
|
22
|
+
* detects this instance and encodes its value with {@link encodeURIPathReserved} (slash-preserving)
|
|
23
|
+
* instead of the default per-segment encoder, while leaving all other interpolated params untouched.
|
|
24
|
+
*/
|
|
25
|
+
declare class ReservedPathParam {
|
|
26
|
+
readonly value: string;
|
|
27
|
+
constructor(value: string);
|
|
28
|
+
toString(): string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Marks a value so the `path` tag preserves `/` when encoding it (RFC 6570 reserved expansion). Used by
|
|
32
|
+
* generated request paths for parameters the spec flags with `allowReserved` (e.g. file paths).
|
|
33
|
+
*/
|
|
34
|
+
export declare const reserved: (value: unknown) => ReservedPathParam;
|
|
35
|
+
export declare const createPathTagFunction: (pathEncoder?: typeof encodeURIPath) => (statics: readonly string[], ...params: readonly unknown[]) => string;
|
|
36
|
+
/**
|
|
37
|
+
* URI-encodes path params and ensures no unsafe /./ or /../ path segments are introduced.
|
|
38
|
+
*/
|
|
39
|
+
export declare const path: (statics: readonly string[], ...params: readonly unknown[]) => string;
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=path.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/internal/utils/path.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,UAExC;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,UAEhD;AAED;;;;GAIG;AACH,cAAM,iBAAiB;IACT,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;IAClC,QAAQ,IAAI,MAAM;CAGnB;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,iBAAsD,CAAC;AAIjG,eAAO,MAAM,qBAAqB,GAAI,kCAA2B,MACjD,SAAS,SAAS,MAAM,EAAE,EAAE,GAAG,QAAQ,SAAS,OAAO,EAAE,KAAG,MAsEzE,CAAC;AAEJ;;GAEG;AACH,eAAO,MAAM,IAAI,YA3EQ,SAAS,MAAM,EAAE,aAAa,SAAS,OAAO,EAAE,KAAG,MA2EJ,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.path = exports.createPathTagFunction = exports.reserved = void 0;
|
|
4
|
+
exports.encodeURIPath = encodeURIPath;
|
|
5
|
+
exports.encodeURIPathReserved = encodeURIPathReserved;
|
|
6
|
+
const error_1 = require("../../core/error");
|
|
7
|
+
/**
|
|
8
|
+
* Percent-encode everything that isn't safe to have in a path without encoding safe chars.
|
|
9
|
+
*
|
|
10
|
+
* Taken from https://datatracker.ietf.org/doc/html/rfc3986#section-3.3:
|
|
11
|
+
* > unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
|
|
12
|
+
* > sub-delims = "!" / "$" / "&" / "'" / "(" / ")" / "*" / "+" / "," / ";" / "="
|
|
13
|
+
* > pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
|
|
14
|
+
*/
|
|
15
|
+
function encodeURIPath(str) {
|
|
16
|
+
return str.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g, encodeURIComponent);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Like {@link encodeURIPath} but leaves `/` unescaped, implementing RFC 6570 reserved expansion
|
|
20
|
+
* (`{+var}`) for path-like parameters such as a file path. The slash is part of the route shape for
|
|
21
|
+
* these params — `docs/example.txt` must stay nested under `.../files/docs/example.txt` rather than
|
|
22
|
+
* collapsing to a single `docs%2Fexample.txt` segment that points at a different backend path. Each
|
|
23
|
+
* `/`-separated segment is still run through {@link encodeURIPath}, so every other unsafe character is
|
|
24
|
+
* percent-encoded with the exact same rules, and the tag function below still rejects `.`/`..` segments,
|
|
25
|
+
* so a reserved value cannot smuggle in path traversal.
|
|
26
|
+
*/
|
|
27
|
+
function encodeURIPathReserved(str) {
|
|
28
|
+
return str.split('/').map(encodeURIPath).join('/');
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Wrapper marking a path-parameter value for reserved expansion. The {@link createPathTagFunction} tag
|
|
32
|
+
* detects this instance and encodes its value with {@link encodeURIPathReserved} (slash-preserving)
|
|
33
|
+
* instead of the default per-segment encoder, while leaving all other interpolated params untouched.
|
|
34
|
+
*/
|
|
35
|
+
class ReservedPathParam {
|
|
36
|
+
value;
|
|
37
|
+
constructor(value) {
|
|
38
|
+
this.value = value;
|
|
39
|
+
}
|
|
40
|
+
toString() {
|
|
41
|
+
return this.value;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Marks a value so the `path` tag preserves `/` when encoding it (RFC 6570 reserved expansion). Used by
|
|
46
|
+
* generated request paths for parameters the spec flags with `allowReserved` (e.g. file paths).
|
|
47
|
+
*/
|
|
48
|
+
const reserved = (value) => new ReservedPathParam('' + value);
|
|
49
|
+
exports.reserved = reserved;
|
|
50
|
+
const EMPTY = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.create(null));
|
|
51
|
+
const createPathTagFunction = (pathEncoder = encodeURIPath) => function path(statics, ...params) {
|
|
52
|
+
// If there are no params, no processing is needed.
|
|
53
|
+
if (statics.length === 1)
|
|
54
|
+
return statics[0];
|
|
55
|
+
let postPath = false;
|
|
56
|
+
const invalidSegments = [];
|
|
57
|
+
const path = statics.reduce((previousValue, currentValue, index) => {
|
|
58
|
+
if (/[?#]/.test(currentValue)) {
|
|
59
|
+
postPath = true;
|
|
60
|
+
}
|
|
61
|
+
const param = params[index];
|
|
62
|
+
// Reserved params keep `/` (file-path-like values); everything else uses the default encoder.
|
|
63
|
+
const isReserved = param instanceof ReservedPathParam;
|
|
64
|
+
const value = isReserved ? param.value : param;
|
|
65
|
+
let encoded = (postPath ? encodeURIComponent : isReserved ? encodeURIPathReserved : pathEncoder)('' + value);
|
|
66
|
+
if (index !== params.length &&
|
|
67
|
+
(value == null ||
|
|
68
|
+
(typeof value === 'object' &&
|
|
69
|
+
// handle values from other realms
|
|
70
|
+
value.toString ===
|
|
71
|
+
Object.getPrototypeOf(Object.getPrototypeOf(value.hasOwnProperty ?? EMPTY) ?? EMPTY)
|
|
72
|
+
?.toString))) {
|
|
73
|
+
encoded = value + '';
|
|
74
|
+
invalidSegments.push({
|
|
75
|
+
start: previousValue.length + currentValue.length,
|
|
76
|
+
length: encoded.length,
|
|
77
|
+
error: `Value of type ${Object.prototype.toString
|
|
78
|
+
.call(value)
|
|
79
|
+
.slice(8, -1)} is not a valid path parameter`,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
return previousValue + currentValue + (index === params.length ? '' : encoded);
|
|
83
|
+
}, '');
|
|
84
|
+
const pathOnly = path.split(/[?#]/, 1)[0];
|
|
85
|
+
const invalidSegmentPattern = /(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi;
|
|
86
|
+
let match;
|
|
87
|
+
// Find all invalid segments
|
|
88
|
+
while ((match = invalidSegmentPattern.exec(pathOnly)) !== null) {
|
|
89
|
+
invalidSegments.push({
|
|
90
|
+
start: match.index,
|
|
91
|
+
length: match[0].length,
|
|
92
|
+
error: `Value "${match[0]}" can\'t be safely passed as a path parameter`,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
invalidSegments.sort((a, b) => a.start - b.start);
|
|
96
|
+
if (invalidSegments.length > 0) {
|
|
97
|
+
let lastEnd = 0;
|
|
98
|
+
const underline = invalidSegments.reduce((acc, segment) => {
|
|
99
|
+
const spaces = ' '.repeat(segment.start - lastEnd);
|
|
100
|
+
const arrows = '^'.repeat(segment.length);
|
|
101
|
+
lastEnd = segment.start + segment.length;
|
|
102
|
+
return acc + spaces + arrows;
|
|
103
|
+
}, '');
|
|
104
|
+
throw new error_1.DedalusError(`Path parameters result in path with invalid segments:\n${invalidSegments
|
|
105
|
+
.map((e) => e.error)
|
|
106
|
+
.join('\n')}\n${path}\n${underline}`);
|
|
107
|
+
}
|
|
108
|
+
return path;
|
|
109
|
+
};
|
|
110
|
+
exports.createPathTagFunction = createPathTagFunction;
|
|
111
|
+
/**
|
|
112
|
+
* URI-encodes path params and ensures no unsafe /./ or /../ path segments are introduced.
|
|
113
|
+
*/
|
|
114
|
+
exports.path = (0, exports.createPathTagFunction)(encodeURIPath);
|
|
115
|
+
//# sourceMappingURL=path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../../../../src/sdk/internal/utils/path.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How an array is written to the query string:
|
|
3
|
+
* - `comma`: one pair, values joined with `,` (`a=1%2C2`)
|
|
4
|
+
* - `repeat`: one pair per value under the same key (`a=1&a=2`)
|
|
5
|
+
* - `indices`: one pair per value, keyed by position (`a%5B0%5D=1&a%5B1%5D=2`)
|
|
6
|
+
* - `brackets`: one pair per value, keyed with empty brackets (`a%5B%5D=1&a%5B%5D=2`)
|
|
7
|
+
*/
|
|
8
|
+
export type QueryArrayFormat = 'comma' | 'repeat' | 'indices' | 'brackets';
|
|
9
|
+
/** How `encodeQueryString` lays out arrays and nested objects; both are fixed per SDK by its config. */
|
|
10
|
+
export type QueryStringOptions = {
|
|
11
|
+
/** How an array becomes pairs; see {@link QueryArrayFormat}. */
|
|
12
|
+
readonly arrayFormat: QueryArrayFormat;
|
|
13
|
+
/** Writes nested object keys as `a.b` instead of `a[b]`. Array positions keep their brackets. */
|
|
14
|
+
readonly allowDots: boolean;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Encodes the own enumerable properties of `query` as `key=value` pairs joined with `&`, recursing
|
|
18
|
+
* into nested objects and arrays. Anything that is not an object encodes to an empty string.
|
|
19
|
+
*/
|
|
20
|
+
export declare function encodeQueryString(query: unknown, options: QueryStringOptions): string;
|
|
21
|
+
//# sourceMappingURL=query-string.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-string.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/internal/utils/query-string.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAE3E,wGAAwG;AACxG,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gEAAgE;IAChE,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,iGAAiG;IACjG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAQrF"}
|