@zuplo/cli 6.73.8 → 6.73.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/dist/cli.js +2 -11
  2. package/dist/cli.js.map +1 -1
  3. package/dist/common/cli-dispatcher.d.ts +6 -0
  4. package/dist/common/cli-dispatcher.d.ts.map +1 -0
  5. package/dist/common/cli-dispatcher.js +19 -0
  6. package/dist/common/cli-dispatcher.js.map +1 -0
  7. package/dist/common/cli-dispatcher.test.d.ts +2 -0
  8. package/dist/common/cli-dispatcher.test.d.ts.map +1 -0
  9. package/dist/common/cli-dispatcher.test.js +78 -0
  10. package/dist/common/cli-dispatcher.test.js.map +1 -0
  11. package/dist/tsconfig.tsbuildinfo +1 -1
  12. package/node_modules/@zuplo/core/customer.cli.minified.js +253 -253
  13. package/node_modules/@zuplo/core/index.minified.js +259 -259
  14. package/node_modules/@zuplo/core/package.json +1 -1
  15. package/node_modules/@zuplo/graphql/package.json +1 -1
  16. package/node_modules/@zuplo/openapi-tools/package.json +2 -2
  17. package/node_modules/@zuplo/otel/package.json +1 -1
  18. package/node_modules/@zuplo/runtime/out/esm/{chunk-W5A5ADF4.js → chunk-7POELG2I.js} +3 -3
  19. package/node_modules/@zuplo/runtime/out/esm/{chunk-W5A5ADF4.js.map → chunk-7POELG2I.js.map} +1 -1
  20. package/node_modules/@zuplo/runtime/out/esm/index.js +1 -1
  21. package/node_modules/@zuplo/runtime/out/esm/mcp-gateway/index.js +1 -1
  22. package/node_modules/@zuplo/runtime/package.json +1 -1
  23. package/node_modules/js-yaml/README.md +5 -3
  24. package/node_modules/js-yaml/dist/js-yaml.js +3009 -2402
  25. package/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
  26. package/node_modules/js-yaml/dist/js-yaml.min.js +2 -33
  27. package/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
  28. package/node_modules/js-yaml/dist/js-yaml.mjs +3073 -2381
  29. package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
  30. package/node_modules/js-yaml/lib/loader.js +7 -11
  31. package/node_modules/js-yaml/lib/type/float.js +1 -1
  32. package/node_modules/js-yaml/lib/type/int.js +4 -4
  33. package/node_modules/js-yaml/package.json +10 -4
  34. package/node_modules/tar/README.md +34 -6
  35. package/node_modules/tar/dist/commonjs/create.d.ts.map +1 -1
  36. package/node_modules/tar/dist/commonjs/create.js +3 -4
  37. package/node_modules/tar/dist/commonjs/create.js.map +1 -1
  38. package/node_modules/tar/dist/commonjs/cwd-error.d.ts +1 -1
  39. package/node_modules/tar/dist/commonjs/cwd-error.d.ts.map +1 -1
  40. package/node_modules/tar/dist/commonjs/cwd-error.js.map +1 -1
  41. package/node_modules/tar/dist/commonjs/extract.js.map +1 -1
  42. package/node_modules/tar/dist/commonjs/get-write-flag.d.ts.map +1 -1
  43. package/node_modules/tar/dist/commonjs/get-write-flag.js +7 -4
  44. package/node_modules/tar/dist/commonjs/get-write-flag.js.map +1 -1
  45. package/node_modules/tar/dist/commonjs/header.d.ts.map +1 -1
  46. package/node_modules/tar/dist/commonjs/header.js +60 -37
  47. package/node_modules/tar/dist/commonjs/header.js.map +1 -1
  48. package/node_modules/tar/dist/commonjs/index.min.js +3 -3
  49. package/node_modules/tar/dist/commonjs/index.min.js.map +3 -3
  50. package/node_modules/tar/dist/commonjs/large-numbers.d.ts.map +1 -1
  51. package/node_modules/tar/dist/commonjs/large-numbers.js.map +1 -1
  52. package/node_modules/tar/dist/commonjs/list.d.ts +1 -1
  53. package/node_modules/tar/dist/commonjs/list.d.ts.map +1 -1
  54. package/node_modules/tar/dist/commonjs/list.js +2 -7
  55. package/node_modules/tar/dist/commonjs/list.js.map +1 -1
  56. package/node_modules/tar/dist/commonjs/make-command.d.ts +2 -2
  57. package/node_modules/tar/dist/commonjs/make-command.d.ts.map +1 -1
  58. package/node_modules/tar/dist/commonjs/make-command.js +3 -12
  59. package/node_modules/tar/dist/commonjs/make-command.js.map +1 -1
  60. package/node_modules/tar/dist/commonjs/mkdir.d.ts.map +1 -1
  61. package/node_modules/tar/dist/commonjs/mkdir.js +5 -6
  62. package/node_modules/tar/dist/commonjs/mkdir.js.map +1 -1
  63. package/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts +1 -1
  64. package/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts.map +1 -1
  65. package/node_modules/tar/dist/commonjs/normalize-windows-path.js +2 -2
  66. package/node_modules/tar/dist/commonjs/normalize-windows-path.js.map +1 -1
  67. package/node_modules/tar/dist/commonjs/options.d.ts +14 -6
  68. package/node_modules/tar/dist/commonjs/options.d.ts.map +1 -1
  69. package/node_modules/tar/dist/commonjs/options.js.map +1 -1
  70. package/node_modules/tar/dist/commonjs/pack.d.ts +8 -4
  71. package/node_modules/tar/dist/commonjs/pack.d.ts.map +1 -1
  72. package/node_modules/tar/dist/commonjs/pack.js +47 -19
  73. package/node_modules/tar/dist/commonjs/pack.js.map +1 -1
  74. package/node_modules/tar/dist/commonjs/parse.d.ts +11 -4
  75. package/node_modules/tar/dist/commonjs/parse.d.ts.map +1 -1
  76. package/node_modules/tar/dist/commonjs/parse.js +61 -26
  77. package/node_modules/tar/dist/commonjs/parse.js.map +1 -1
  78. package/node_modules/tar/dist/commonjs/path-reservations.d.ts.map +1 -1
  79. package/node_modules/tar/dist/commonjs/path-reservations.js +2 -2
  80. package/node_modules/tar/dist/commonjs/path-reservations.js.map +1 -1
  81. package/node_modules/tar/dist/commonjs/pax.d.ts +1 -1
  82. package/node_modules/tar/dist/commonjs/pax.d.ts.map +1 -1
  83. package/node_modules/tar/dist/commonjs/pax.js +30 -6
  84. package/node_modules/tar/dist/commonjs/pax.js.map +1 -1
  85. package/node_modules/tar/dist/commonjs/read-entry.d.ts +3 -3
  86. package/node_modules/tar/dist/commonjs/read-entry.d.ts.map +1 -1
  87. package/node_modules/tar/dist/commonjs/read-entry.js +2 -6
  88. package/node_modules/tar/dist/commonjs/read-entry.js.map +1 -1
  89. package/node_modules/tar/dist/commonjs/replace.d.ts.map +1 -1
  90. package/node_modules/tar/dist/commonjs/replace.js +5 -10
  91. package/node_modules/tar/dist/commonjs/replace.js.map +1 -1
  92. package/node_modules/tar/dist/commonjs/symlink-error.d.ts +2 -2
  93. package/node_modules/tar/dist/commonjs/symlink-error.d.ts.map +1 -1
  94. package/node_modules/tar/dist/commonjs/symlink-error.js.map +1 -1
  95. package/node_modules/tar/dist/commonjs/types.d.ts +9 -0
  96. package/node_modules/tar/dist/commonjs/types.d.ts.map +1 -1
  97. package/node_modules/tar/dist/commonjs/types.js +21 -1
  98. package/node_modules/tar/dist/commonjs/types.js.map +1 -1
  99. package/node_modules/tar/dist/commonjs/unpack.d.ts +4 -4
  100. package/node_modules/tar/dist/commonjs/unpack.d.ts.map +1 -1
  101. package/node_modules/tar/dist/commonjs/unpack.js +39 -64
  102. package/node_modules/tar/dist/commonjs/unpack.js.map +1 -1
  103. package/node_modules/tar/dist/commonjs/warn-method.d.ts +2 -2
  104. package/node_modules/tar/dist/commonjs/warn-method.d.ts.map +1 -1
  105. package/node_modules/tar/dist/commonjs/warn-method.js.map +1 -1
  106. package/node_modules/tar/dist/commonjs/winchars.js +1 -1
  107. package/node_modules/tar/dist/commonjs/winchars.js.map +1 -1
  108. package/node_modules/tar/dist/commonjs/write-entry.d.ts +11 -11
  109. package/node_modules/tar/dist/commonjs/write-entry.d.ts.map +1 -1
  110. package/node_modules/tar/dist/commonjs/write-entry.js +12 -13
  111. package/node_modules/tar/dist/commonjs/write-entry.js.map +1 -1
  112. package/node_modules/tar/dist/esm/create.d.ts.map +1 -1
  113. package/node_modules/tar/dist/esm/create.js +3 -4
  114. package/node_modules/tar/dist/esm/create.js.map +1 -1
  115. package/node_modules/tar/dist/esm/cwd-error.d.ts +1 -1
  116. package/node_modules/tar/dist/esm/cwd-error.d.ts.map +1 -1
  117. package/node_modules/tar/dist/esm/cwd-error.js.map +1 -1
  118. package/node_modules/tar/dist/esm/extract.js.map +1 -1
  119. package/node_modules/tar/dist/esm/get-write-flag.d.ts.map +1 -1
  120. package/node_modules/tar/dist/esm/get-write-flag.js +7 -4
  121. package/node_modules/tar/dist/esm/get-write-flag.js.map +1 -1
  122. package/node_modules/tar/dist/esm/header.d.ts.map +1 -1
  123. package/node_modules/tar/dist/esm/header.js +60 -37
  124. package/node_modules/tar/dist/esm/header.js.map +1 -1
  125. package/node_modules/tar/dist/esm/index.min.js +3 -3
  126. package/node_modules/tar/dist/esm/index.min.js.map +3 -3
  127. package/node_modules/tar/dist/esm/large-numbers.d.ts.map +1 -1
  128. package/node_modules/tar/dist/esm/large-numbers.js.map +1 -1
  129. package/node_modules/tar/dist/esm/list.d.ts +1 -1
  130. package/node_modules/tar/dist/esm/list.d.ts.map +1 -1
  131. package/node_modules/tar/dist/esm/list.js +2 -7
  132. package/node_modules/tar/dist/esm/list.js.map +1 -1
  133. package/node_modules/tar/dist/esm/make-command.d.ts +2 -2
  134. package/node_modules/tar/dist/esm/make-command.d.ts.map +1 -1
  135. package/node_modules/tar/dist/esm/make-command.js +3 -12
  136. package/node_modules/tar/dist/esm/make-command.js.map +1 -1
  137. package/node_modules/tar/dist/esm/mkdir.d.ts.map +1 -1
  138. package/node_modules/tar/dist/esm/mkdir.js +5 -6
  139. package/node_modules/tar/dist/esm/mkdir.js.map +1 -1
  140. package/node_modules/tar/dist/esm/normalize-windows-path.d.ts +1 -1
  141. package/node_modules/tar/dist/esm/normalize-windows-path.d.ts.map +1 -1
  142. package/node_modules/tar/dist/esm/normalize-windows-path.js +2 -2
  143. package/node_modules/tar/dist/esm/normalize-windows-path.js.map +1 -1
  144. package/node_modules/tar/dist/esm/options.d.ts +14 -6
  145. package/node_modules/tar/dist/esm/options.d.ts.map +1 -1
  146. package/node_modules/tar/dist/esm/options.js.map +1 -1
  147. package/node_modules/tar/dist/esm/pack.d.ts +8 -4
  148. package/node_modules/tar/dist/esm/pack.d.ts.map +1 -1
  149. package/node_modules/tar/dist/esm/pack.js +48 -20
  150. package/node_modules/tar/dist/esm/pack.js.map +1 -1
  151. package/node_modules/tar/dist/esm/parse.d.ts +11 -4
  152. package/node_modules/tar/dist/esm/parse.d.ts.map +1 -1
  153. package/node_modules/tar/dist/esm/parse.js +62 -27
  154. package/node_modules/tar/dist/esm/parse.js.map +1 -1
  155. package/node_modules/tar/dist/esm/path-reservations.d.ts.map +1 -1
  156. package/node_modules/tar/dist/esm/path-reservations.js +2 -2
  157. package/node_modules/tar/dist/esm/path-reservations.js.map +1 -1
  158. package/node_modules/tar/dist/esm/pax.d.ts +1 -1
  159. package/node_modules/tar/dist/esm/pax.d.ts.map +1 -1
  160. package/node_modules/tar/dist/esm/pax.js +30 -6
  161. package/node_modules/tar/dist/esm/pax.js.map +1 -1
  162. package/node_modules/tar/dist/esm/read-entry.d.ts +3 -3
  163. package/node_modules/tar/dist/esm/read-entry.d.ts.map +1 -1
  164. package/node_modules/tar/dist/esm/read-entry.js +2 -6
  165. package/node_modules/tar/dist/esm/read-entry.js.map +1 -1
  166. package/node_modules/tar/dist/esm/replace.d.ts.map +1 -1
  167. package/node_modules/tar/dist/esm/replace.js +6 -11
  168. package/node_modules/tar/dist/esm/replace.js.map +1 -1
  169. package/node_modules/tar/dist/esm/symlink-error.d.ts +2 -2
  170. package/node_modules/tar/dist/esm/symlink-error.d.ts.map +1 -1
  171. package/node_modules/tar/dist/esm/symlink-error.js.map +1 -1
  172. package/node_modules/tar/dist/esm/types.d.ts +9 -0
  173. package/node_modules/tar/dist/esm/types.d.ts.map +1 -1
  174. package/node_modules/tar/dist/esm/types.js +20 -0
  175. package/node_modules/tar/dist/esm/types.js.map +1 -1
  176. package/node_modules/tar/dist/esm/unpack.d.ts +4 -4
  177. package/node_modules/tar/dist/esm/unpack.d.ts.map +1 -1
  178. package/node_modules/tar/dist/esm/unpack.js +39 -64
  179. package/node_modules/tar/dist/esm/unpack.js.map +1 -1
  180. package/node_modules/tar/dist/esm/warn-method.d.ts +2 -2
  181. package/node_modules/tar/dist/esm/warn-method.d.ts.map +1 -1
  182. package/node_modules/tar/dist/esm/warn-method.js.map +1 -1
  183. package/node_modules/tar/dist/esm/winchars.js +1 -1
  184. package/node_modules/tar/dist/esm/winchars.js.map +1 -1
  185. package/node_modules/tar/dist/esm/write-entry.d.ts +11 -11
  186. package/node_modules/tar/dist/esm/write-entry.d.ts.map +1 -1
  187. package/node_modules/tar/dist/esm/write-entry.js +14 -15
  188. package/node_modules/tar/dist/esm/write-entry.js.map +1 -1
  189. package/node_modules/tar/package.json +15 -9
  190. package/node_modules/undici/docs/docs/api/Client.md +3 -0
  191. package/node_modules/undici/lib/dispatcher/agent.js +2 -2
  192. package/node_modules/undici/lib/dispatcher/client-h1.js +140 -23
  193. package/node_modules/undici/lib/dispatcher/client.js +3 -2
  194. package/node_modules/undici/lib/dispatcher/dispatcher-base.js +10 -1
  195. package/node_modules/undici/lib/dispatcher/pool-base.js +2 -2
  196. package/node_modules/undici/lib/dispatcher/pool.js +2 -2
  197. package/node_modules/undici/lib/web/cookies/parse.js +16 -23
  198. package/node_modules/undici/lib/web/websocket/permessage-deflate.js +13 -31
  199. package/node_modules/undici/lib/web/websocket/receiver.js +110 -24
  200. package/node_modules/undici/lib/web/websocket/websocket.js +8 -1
  201. package/node_modules/undici/package.json +1 -1
  202. package/node_modules/undici/types/client.d.ts +17 -0
  203. package/package.json +9 -9
  204. /package/node_modules/@zuplo/runtime/out/esm/{chunk-W5A5ADF4.js.LEGAL.txt → chunk-7POELG2I.js.LEGAL.txt} +0 -0
package/dist/cli.js CHANGED
@@ -4,7 +4,6 @@ import { readFileSync } from "node:fs";
4
4
  import { fileURLToPath } from "node:url";
5
5
  import { confirm } from "@inquirer/prompts";
6
6
  import { gte } from "semver";
7
- import undici from "undici";
8
7
  import { hideBin } from "yargs/helpers";
9
8
  import yargs from "yargs/yargs";
10
9
  import bucket from "./cmds/bucket/index.js";
@@ -35,6 +34,7 @@ import whoami from "./cmds/whoami.js";
35
34
  import { captureCliInvocationEvent } from "./common/analytics/cli-invocation.js";
36
35
  import { captureError, shutdownAnalytics } from "./common/analytics/lib.js";
37
36
  import { ApiError } from "./common/api/client.js";
37
+ import { configureCliDispatcher } from "./common/cli-dispatcher.js";
38
38
  import { logger } from "./common/logger.js";
39
39
  import { checkPnpmLifecycle } from "./common/middleware/check-pnpm-lifecycle.js";
40
40
  import { logLevel } from "./common/middleware/logging.js";
@@ -57,16 +57,7 @@ if (gte(process.versions.node, MIN_NODE_VERSION)) {
57
57
  await printCriticalFailureToConsoleAndExit(`Unable to load @zuplo/cli. The package.json is missing or malformed.`);
58
58
  }
59
59
  await warnNodeVersion(cliVersion, RECOMMENDED_NODE_VERSION);
60
- undici.setGlobalDispatcher(undici.getGlobalDispatcher().compose((dispatch) => {
61
- return (opts, handler) => {
62
- opts.headers = {
63
- ...opts.headers,
64
- "user-agent": `ZuploCLI/${cliVersion}`,
65
- ...(process.env.ZUPLO_CANARY ? { "zp-canary": "true" } : {}),
66
- };
67
- return dispatch(opts, handler);
68
- };
69
- }));
60
+ configureCliDispatcher(cliVersion);
70
61
  const cli = yargs(hideBin(process.argv))
71
62
  .env("ZUPLO")
72
63
  .option("prompt", {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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","sourcesContent":["import * as dotenv from \"dotenv\";\n\ndotenv.config();\n\nimport { readFileSync } from \"node:fs\";\nimport { fileURLToPath } from \"node:url\";\nimport { confirm } from \"@inquirer/prompts\";\nimport { gte } from \"semver\";\n// Undici must be imported first to set the global dispatcher\n// If fetch is used before undici, the process will crash\nimport undici from \"undici\";\nimport { hideBin } from \"yargs/helpers\";\nimport yargs from \"yargs/yargs\";\nimport bucket from \"./cmds/bucket/index.js\";\nimport build from \"./cmds/build.js\";\nimport caCertificate from \"./cmds/ca-certificate/index.js\";\nimport compile from \"./cmds/compile.js\";\nimport customDomain from \"./cmds/custom-domain/index.js\";\nimport deleteZup from \"./cmds/delete.js\";\nimport deploy from \"./cmds/deploy.js\";\nimport dev from \"./cmds/dev.js\";\nimport docs from \"./cmds/docs.js\";\nimport editor from \"./cmds/editor.js\";\nimport info from \"./cmds/info.js\";\nimport init from \"./cmds/init.js\";\nimport link from \"./cmds/link.js\";\nimport list from \"./cmds/list.js\";\nimport login from \"./cmds/login.js\";\nimport logout from \"./cmds/logout.js\";\nimport mtlsCertificates from \"./cmds/mtls-certificates/index.js\";\nimport oas from \"./cmds/open-api/index.js\";\nimport project from \"./cmds/project/index.js\";\nimport proxies from \"./cmds/proxies/index.js\";\nimport source from \"./cmds/source/index.js\";\nimport test from \"./cmds/test.js\";\nimport tunnel from \"./cmds/tunnel/index.js\";\nimport variable from \"./cmds/variable/index.js\";\nimport whoami from \"./cmds/whoami.js\";\nimport { captureCliInvocationEvent } from \"./common/analytics/cli-invocation.js\";\nimport { captureError, shutdownAnalytics } from \"./common/analytics/lib.js\";\nimport { ApiError } from \"./common/api/client.js\";\nimport { logger } from \"./common/logger.js\";\nimport { checkPnpmLifecycle } from \"./common/middleware/check-pnpm-lifecycle.js\";\nimport { logLevel } from \"./common/middleware/logging.js\";\nimport { warnIfOutdatedVersion, warnNodeVersion } from \"./common/outdated.js\";\nimport setBlocking, {\n printCriticalFailureToConsole,\n printCriticalFailureToConsoleAndExit,\n} from \"./common/output.js\";\n\n// This allows us to stop the CLI from executing so we can connect the profiler\n\n// biome-ignore lint/style/noProcessEnv: Migrated from ESLint\nif (process.env.ZUPLO_CLI_PROFILING) {\n await confirm({ message: \"Continue executing CLI?\", default: true });\n}\n\n// Note: We cannot set this to be higher than 18.0.0 because of the way\n// our documentation works -- we tell them to use npx @zuplo/cli@latest (even in CI/CD jobs)\n// If we set this to be higher than 18.0.0, then we will break them.\n// Instead we set the value in package.json to be engine.node >= 20.0.0, so it will warn\nconst MIN_NODE_VERSION = \"18.0.0\";\nconst RECOMMENDED_NODE_VERSION = \"20.0.0\";\n\nif (gte(process.versions.node, MIN_NODE_VERSION)) {\n let cliVersion: string;\n try {\n const packageJson = JSON.parse(\n readFileSync(\n fileURLToPath(new URL(\"../package.json\", import.meta.url)),\n \"utf-8\"\n )\n );\n cliVersion = packageJson.version;\n } catch (e) {\n cliVersion = \"0.0.0\";\n logger.error(e);\n await printCriticalFailureToConsoleAndExit(\n `Unable to load @zuplo/cli. The package.json is missing or malformed.`\n );\n }\n\n await warnNodeVersion(cliVersion, RECOMMENDED_NODE_VERSION);\n\n undici.setGlobalDispatcher(\n undici.getGlobalDispatcher().compose((dispatch) => {\n return (opts, handler) => {\n opts.headers = {\n ...opts.headers,\n \"user-agent\": `ZuploCLI/${cliVersion}`,\n\n // biome-ignore lint/style/noProcessEnv: Migrated from ESLint\n ...(process.env.ZUPLO_CANARY ? { \"zp-canary\": \"true\" } : {}),\n };\n return dispatch(opts, handler);\n };\n })\n );\n\n const cli = yargs(hideBin(process.argv))\n // This means that all env vars will have to be prefixed with ZUPLO_\n .env(\"ZUPLO\")\n .option(\"prompt\", {\n type: \"boolean\",\n describe: \"Bypass confirmation prompts\",\n default: true,\n hidden: true,\n })\n .option(\"verbose\", {\n alias: \"v\",\n type: \"count\",\n describe: \"Increase verbosity level (-v, -vv, -vvv)\",\n default: 0,\n })\n // setBlocking forces synchronous TTY writes so error messages flush before\n // process.exit. Runs first so subsequent middleware (including the\n // preflight, which can exit) benefit from it.\n .middleware(setBlocking)\n .middleware(logLevel)\n .middleware(checkPnpmLifecycle)\n .middleware((argv) => {\n void captureCliInvocationEvent(argv, cliVersion);\n })\n .command(caCertificate)\n .command(compile)\n .command(customDomain)\n .command(deleteZup) // delete is a reserved keyword in JavaScript, so we call this function deleteZup\n .command(deploy)\n .command(dev)\n .command(docs)\n .command(editor)\n .command(info)\n .command(init)\n .command(list)\n .command(link)\n .command(login)\n .command(logout)\n .command(test)\n .command(oas)\n .command(mtlsCertificates)\n .command(project)\n .command(source)\n .command(tunnel)\n .command(variable)\n .command(build)\n .command(bucket)\n .command(proxies)\n .command(whoami)\n .demandCommand()\n .strictCommands()\n .version(cliVersion)\n .fail(false)\n .help();\n\n let exitCode = 0;\n try {\n await cli.argv;\n\n // Don't block\n void warnIfOutdatedVersion(cliVersion);\n } catch (err) {\n exitCode = 1;\n if (err instanceof Error) {\n await captureError(err);\n }\n if (err instanceof ApiError) {\n // The API client has already logged the structured error and printed\n // a user-facing diagnostic. Nothing more to display here.\n } else {\n printCriticalFailureToConsole(err.message ?? err);\n cli.showHelp();\n }\n } finally {\n await shutdownAnalytics();\n process.exit(exitCode);\n }\n} else {\n await printCriticalFailureToConsoleAndExit(\n `The Zuplo CLI requires at least node.js v${MIN_NODE_VERSION}. You are using v${process.versions.node}. Please update your version of node.js.\n\n Consider using a Node.js version manager such as https://github.com/nvm-sh/nvm.`\n );\n}\n"]}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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","sourcesContent":["import * as dotenv from \"dotenv\";\n\ndotenv.config();\n\nimport { readFileSync } from \"node:fs\";\nimport { fileURLToPath } from \"node:url\";\nimport { confirm } from \"@inquirer/prompts\";\nimport { gte } from \"semver\";\nimport { hideBin } from \"yargs/helpers\";\nimport yargs from \"yargs/yargs\";\nimport bucket from \"./cmds/bucket/index.js\";\nimport build from \"./cmds/build.js\";\nimport caCertificate from \"./cmds/ca-certificate/index.js\";\nimport compile from \"./cmds/compile.js\";\nimport customDomain from \"./cmds/custom-domain/index.js\";\nimport deleteZup from \"./cmds/delete.js\";\nimport deploy from \"./cmds/deploy.js\";\nimport dev from \"./cmds/dev.js\";\nimport docs from \"./cmds/docs.js\";\nimport editor from \"./cmds/editor.js\";\nimport info from \"./cmds/info.js\";\nimport init from \"./cmds/init.js\";\nimport link from \"./cmds/link.js\";\nimport list from \"./cmds/list.js\";\nimport login from \"./cmds/login.js\";\nimport logout from \"./cmds/logout.js\";\nimport mtlsCertificates from \"./cmds/mtls-certificates/index.js\";\nimport oas from \"./cmds/open-api/index.js\";\nimport project from \"./cmds/project/index.js\";\nimport proxies from \"./cmds/proxies/index.js\";\nimport source from \"./cmds/source/index.js\";\nimport test from \"./cmds/test.js\";\nimport tunnel from \"./cmds/tunnel/index.js\";\nimport variable from \"./cmds/variable/index.js\";\nimport whoami from \"./cmds/whoami.js\";\nimport { captureCliInvocationEvent } from \"./common/analytics/cli-invocation.js\";\nimport { captureError, shutdownAnalytics } from \"./common/analytics/lib.js\";\nimport { ApiError } from \"./common/api/client.js\";\nimport { configureCliDispatcher } from \"./common/cli-dispatcher.js\";\nimport { logger } from \"./common/logger.js\";\nimport { checkPnpmLifecycle } from \"./common/middleware/check-pnpm-lifecycle.js\";\nimport { logLevel } from \"./common/middleware/logging.js\";\nimport { warnIfOutdatedVersion, warnNodeVersion } from \"./common/outdated.js\";\nimport setBlocking, {\n printCriticalFailureToConsole,\n printCriticalFailureToConsoleAndExit,\n} from \"./common/output.js\";\n\n// This allows us to stop the CLI from executing so we can connect the profiler\n\n// biome-ignore lint/style/noProcessEnv: Migrated from ESLint\nif (process.env.ZUPLO_CLI_PROFILING) {\n await confirm({ message: \"Continue executing CLI?\", default: true });\n}\n\n// Note: We cannot set this to be higher than 18.0.0 because of the way\n// our documentation works -- we tell them to use npx @zuplo/cli@latest (even in CI/CD jobs)\n// If we set this to be higher than 18.0.0, then we will break them.\n// Instead we set the value in package.json to be engine.node >= 20.0.0, so it will warn\nconst MIN_NODE_VERSION = \"18.0.0\";\nconst RECOMMENDED_NODE_VERSION = \"20.0.0\";\n\nif (gte(process.versions.node, MIN_NODE_VERSION)) {\n let cliVersion: string;\n try {\n const packageJson = JSON.parse(\n readFileSync(\n fileURLToPath(new URL(\"../package.json\", import.meta.url)),\n \"utf-8\"\n )\n );\n cliVersion = packageJson.version;\n } catch (e) {\n cliVersion = \"0.0.0\";\n logger.error(e);\n await printCriticalFailureToConsoleAndExit(\n `Unable to load @zuplo/cli. The package.json is missing or malformed.`\n );\n }\n\n await warnNodeVersion(cliVersion, RECOMMENDED_NODE_VERSION);\n\n // Install CLI identity headers on undici's global dispatcher before any\n // command handlers run fetch.\n configureCliDispatcher(cliVersion);\n\n const cli = yargs(hideBin(process.argv))\n // This means that all env vars will have to be prefixed with ZUPLO_\n .env(\"ZUPLO\")\n .option(\"prompt\", {\n type: \"boolean\",\n describe: \"Bypass confirmation prompts\",\n default: true,\n hidden: true,\n })\n .option(\"verbose\", {\n alias: \"v\",\n type: \"count\",\n describe: \"Increase verbosity level (-v, -vv, -vvv)\",\n default: 0,\n })\n // setBlocking forces synchronous TTY writes so error messages flush before\n // process.exit. Runs first so subsequent middleware (including the\n // preflight, which can exit) benefit from it.\n .middleware(setBlocking)\n .middleware(logLevel)\n .middleware(checkPnpmLifecycle)\n .middleware((argv) => {\n void captureCliInvocationEvent(argv, cliVersion);\n })\n .command(caCertificate)\n .command(compile)\n .command(customDomain)\n .command(deleteZup) // delete is a reserved keyword in JavaScript, so we call this function deleteZup\n .command(deploy)\n .command(dev)\n .command(docs)\n .command(editor)\n .command(info)\n .command(init)\n .command(list)\n .command(link)\n .command(login)\n .command(logout)\n .command(test)\n .command(oas)\n .command(mtlsCertificates)\n .command(project)\n .command(source)\n .command(tunnel)\n .command(variable)\n .command(build)\n .command(bucket)\n .command(proxies)\n .command(whoami)\n .demandCommand()\n .strictCommands()\n .version(cliVersion)\n .fail(false)\n .help();\n\n let exitCode = 0;\n try {\n await cli.argv;\n\n // Don't block\n void warnIfOutdatedVersion(cliVersion);\n } catch (err) {\n exitCode = 1;\n if (err instanceof Error) {\n await captureError(err);\n }\n if (err instanceof ApiError) {\n // The API client has already logged the structured error and printed\n // a user-facing diagnostic. Nothing more to display here.\n } else {\n printCriticalFailureToConsole(err.message ?? err);\n cli.showHelp();\n }\n } finally {\n await shutdownAnalytics();\n process.exit(exitCode);\n }\n} else {\n await printCriticalFailureToConsoleAndExit(\n `The Zuplo CLI requires at least node.js v${MIN_NODE_VERSION}. You are using v${process.versions.node}. Please update your version of node.js.\n\n Consider using a Node.js version manager such as https://github.com/nvm-sh/nvm.`\n );\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import { type Dispatcher } from "undici";
2
+ export declare function createCliHeadersInterceptor(
3
+ cliVersion: string
4
+ ): Dispatcher.DispatcherComposeInterceptor;
5
+ export declare function configureCliDispatcher(cliVersion: string): void;
6
+ //# sourceMappingURL=cli-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-dispatcher.d.ts","sourceRoot":"","sources":["../../src/common/cli-dispatcher.ts"],"names":[],"mappings":"AAAA,OAAe,EAAE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AAKjD,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,GACjB,UAAU,CAAC,4BAA4B,CAazC;AAMD,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAM/D"}
@@ -0,0 +1,19 @@
1
+ import undici from "undici";
2
+ export function createCliHeadersInterceptor(cliVersion) {
3
+ return (dispatch) => {
4
+ return (opts, handler) => {
5
+ opts.headers = {
6
+ ...opts.headers,
7
+ "user-agent": `ZuploCLI/${cliVersion}`,
8
+ ...(process.env.ZUPLO_CANARY ? { "zp-canary": "true" } : {}),
9
+ };
10
+ return dispatch(opts, handler);
11
+ };
12
+ };
13
+ }
14
+ export function configureCliDispatcher(cliVersion) {
15
+ undici.setGlobalDispatcher(undici
16
+ .getGlobalDispatcher()
17
+ .compose(createCliHeadersInterceptor(cliVersion)));
18
+ }
19
+ //# sourceMappingURL=cli-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-dispatcher.js","sourceRoot":"","sources":["../../src/common/cli-dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,MAA2B,MAAM,QAAQ,CAAC;AAKjD,MAAM,UAAU,2BAA2B,CACzC,UAAkB;IAElB,OAAO,CAAC,QAAQ,EAAE,EAAE;QAClB,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,YAAY,EAAE,YAAY,UAAU,EAAE;gBAGtC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7D,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAMD,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,MAAM,CAAC,mBAAmB,CACxB,MAAM;SACH,mBAAmB,EAAE;SACrB,OAAO,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC,CACpD,CAAC;AACJ,CAAC","sourcesContent":["import undici, { type Dispatcher } from \"undici\";\n\n/**\n * Interceptor that attaches CLI identity headers to every outbound request.\n */\nexport function createCliHeadersInterceptor(\n cliVersion: string\n): Dispatcher.DispatcherComposeInterceptor {\n return (dispatch) => {\n return (opts, handler) => {\n opts.headers = {\n ...opts.headers,\n \"user-agent\": `ZuploCLI/${cliVersion}`,\n\n // biome-ignore lint/style/noProcessEnv: Migrated from ESLint\n ...(process.env.ZUPLO_CANARY ? { \"zp-canary\": \"true\" } : {}),\n };\n return dispatch(opts, handler);\n };\n };\n}\n\n/**\n * Installs the CLI header interceptor on undici's global dispatcher.\n * Must run before any fetch so requests go through undici.\n */\nexport function configureCliDispatcher(cliVersion: string): void {\n undici.setGlobalDispatcher(\n undici\n .getGlobalDispatcher()\n .compose(createCliHeadersInterceptor(cliVersion))\n );\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cli-dispatcher.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-dispatcher.test.d.ts","sourceRoot":"","sources":["../../src/common/cli-dispatcher.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,78 @@
1
+ import { afterEach, beforeEach, describe, it } from "node:test";
2
+ import { assert } from "chai";
3
+ import { Agent, MockAgent, setGlobalDispatcher } from "undici";
4
+ import { configureCliDispatcher } from "./cli-dispatcher.js";
5
+ describe("configureCliDispatcher", () => {
6
+ let mockAgent;
7
+ let previousCanary;
8
+ beforeEach(() => {
9
+ previousCanary = process.env.ZUPLO_CANARY;
10
+ delete process.env.ZUPLO_CANARY;
11
+ mockAgent = new MockAgent();
12
+ mockAgent.disableNetConnect();
13
+ setGlobalDispatcher(mockAgent);
14
+ });
15
+ afterEach(async () => {
16
+ if (previousCanary === undefined) {
17
+ delete process.env.ZUPLO_CANARY;
18
+ }
19
+ else {
20
+ process.env.ZUPLO_CANARY = previousCanary;
21
+ }
22
+ await mockAgent.close();
23
+ setGlobalDispatcher(new Agent());
24
+ });
25
+ it("sets ZuploCLI user-agent on outbound fetch requests", async () => {
26
+ configureCliDispatcher("1.2.3");
27
+ mockAgent
28
+ .get("https://example.com")
29
+ .intercept({
30
+ path: "/v1/ping",
31
+ method: "GET",
32
+ headers: {
33
+ "user-agent": "ZuploCLI/1.2.3",
34
+ },
35
+ })
36
+ .reply(200, { ok: true });
37
+ const response = await fetch("https://example.com/v1/ping");
38
+ assert.strictEqual(response.status, 200);
39
+ assert.strictEqual(mockAgent.pendingInterceptors().length, 0);
40
+ });
41
+ it("sets zp-canary when ZUPLO_CANARY is set", async () => {
42
+ process.env.ZUPLO_CANARY = "1";
43
+ configureCliDispatcher("9.9.9");
44
+ mockAgent
45
+ .get("https://example.com")
46
+ .intercept({
47
+ path: "/v1/ping",
48
+ method: "GET",
49
+ headers: {
50
+ "user-agent": "ZuploCLI/9.9.9",
51
+ "zp-canary": "true",
52
+ },
53
+ })
54
+ .reply(200, { ok: true });
55
+ const response = await fetch("https://example.com/v1/ping");
56
+ assert.strictEqual(response.status, 200);
57
+ assert.strictEqual(mockAgent.pendingInterceptors().length, 0);
58
+ });
59
+ it("does not set zp-canary when ZUPLO_CANARY is unset", async () => {
60
+ configureCliDispatcher("1.0.0");
61
+ let seenHeaders;
62
+ mockAgent
63
+ .get("https://example.com")
64
+ .intercept({
65
+ path: "/v1/ping",
66
+ method: "GET",
67
+ })
68
+ .reply((opts) => {
69
+ seenHeaders = opts.headers;
70
+ return { statusCode: 200, data: { ok: true } };
71
+ });
72
+ await fetch("https://example.com/v1/ping");
73
+ assert.ok(seenHeaders);
74
+ assert.strictEqual(seenHeaders["user-agent"], "ZuploCLI/1.0.0");
75
+ assert.isUndefined(seenHeaders["zp-canary"]);
76
+ });
77
+ });
78
+ //# sourceMappingURL=cli-dispatcher.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-dispatcher.test.js","sourceRoot":"","sources":["../../src/common/cli-dispatcher.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { afterEach, beforeEach, describe, it } from \"node:test\";\nimport { assert } from \"chai\";\nimport { Agent, MockAgent, setGlobalDispatcher } from \"undici\";\nimport { configureCliDispatcher } from \"./cli-dispatcher.js\";\n\ndescribe(\"configureCliDispatcher\", () => {\n let mockAgent: MockAgent;\n let previousCanary: string | undefined;\n\n beforeEach(() => {\n previousCanary = process.env.ZUPLO_CANARY;\n delete process.env.ZUPLO_CANARY;\n\n mockAgent = new MockAgent();\n mockAgent.disableNetConnect();\n setGlobalDispatcher(mockAgent);\n });\n\n afterEach(async () => {\n if (previousCanary === undefined) {\n delete process.env.ZUPLO_CANARY;\n } else {\n process.env.ZUPLO_CANARY = previousCanary;\n }\n\n await mockAgent.close();\n setGlobalDispatcher(new Agent());\n });\n\n it(\"sets ZuploCLI user-agent on outbound fetch requests\", async () => {\n configureCliDispatcher(\"1.2.3\");\n\n mockAgent\n .get(\"https://example.com\")\n .intercept({\n path: \"/v1/ping\",\n method: \"GET\",\n headers: {\n \"user-agent\": \"ZuploCLI/1.2.3\",\n },\n })\n .reply(200, { ok: true });\n\n const response = await fetch(\"https://example.com/v1/ping\");\n assert.strictEqual(response.status, 200);\n assert.strictEqual(mockAgent.pendingInterceptors().length, 0);\n });\n\n it(\"sets zp-canary when ZUPLO_CANARY is set\", async () => {\n process.env.ZUPLO_CANARY = \"1\";\n configureCliDispatcher(\"9.9.9\");\n\n mockAgent\n .get(\"https://example.com\")\n .intercept({\n path: \"/v1/ping\",\n method: \"GET\",\n headers: {\n \"user-agent\": \"ZuploCLI/9.9.9\",\n \"zp-canary\": \"true\",\n },\n })\n .reply(200, { ok: true });\n\n const response = await fetch(\"https://example.com/v1/ping\");\n assert.strictEqual(response.status, 200);\n assert.strictEqual(mockAgent.pendingInterceptors().length, 0);\n });\n\n it(\"does not set zp-canary when ZUPLO_CANARY is unset\", async () => {\n configureCliDispatcher(\"1.0.0\");\n\n let seenHeaders: Record<string, string | string[] | undefined> | undefined;\n\n mockAgent\n .get(\"https://example.com\")\n .intercept({\n path: \"/v1/ping\",\n method: \"GET\",\n })\n .reply((opts) => {\n seenHeaders = opts.headers as Record<\n string,\n string | string[] | undefined\n >;\n return { statusCode: 200, data: { ok: true } };\n });\n\n await fetch(\"https://example.com/v1/ping\");\n\n assert.ok(seenHeaders);\n assert.strictEqual(seenHeaders[\"user-agent\"], \"ZuploCLI/1.0.0\");\n assert.isUndefined(seenHeaders[\"zp-canary\"]);\n });\n});\n"]}
@@ -1 +1 @@
1
- {"root":["../src/cli.ts","../src/internal.ts","../src/types.d.ts","../src/__tests__/archive-utils.test.ts","../src/__tests__/import-openapi.test.ts","../src/__tests__/outdated.test.ts","../src/__tests__/populate.test.ts","../src/__tests__/tsconfig-upgrader.test.ts","../src/__tests__/integration/confirm-linked-config.integration.test.ts","../src/__tests__/integration/confirm-production-deploy.integration.test.ts","../src/__tests__/integration/custom-domain.integration.test.ts","../src/__tests__/integration/delete.integration.test.ts","../src/__tests__/integration/deploy.integration.test.ts","../src/__tests__/integration/get-project-param.integration.test.ts","../src/__tests__/integration/info.integration.test.ts","../src/__tests__/integration/jest-mocks-setup.ts","../src/__tests__/integration/jest-setup.ts","../src/__tests__/integration/link.integration.test.ts","../src/__tests__/integration/linked-config-cascade.integration.test.ts","../src/__tests__/integration/list.integration.test.ts","../src/__tests__/integration/test-utils.ts","../src/__tests__/integration/tunnel.integration.test.ts","../src/__tests__/integration/variable.integration.test.ts","../src/__tests__/integration/whoami.integration.test.ts","../src/bucket/models.ts","../src/bucket/list/handler.ts","../src/build/handler.ts","../src/ca-certificate/models.ts","../src/ca-certificate/validation.test.ts","../src/ca-certificate/validation.ts","../src/ca-certificate/create/handler.ts","../src/ca-certificate/delete/handler.ts","../src/ca-certificate/describe/handler.ts","../src/ca-certificate/list/handler.ts","../src/ca-certificate/update/handler.ts","../src/cmds/build.ts","../src/cmds/compile.ts","../src/cmds/delete.ts","../src/cmds/deploy.ts","../src/cmds/dev.ts","../src/cmds/docs.ts","../src/cmds/editor.ts","../src/cmds/info.ts","../src/cmds/init.ts","../src/cmds/link.ts","../src/cmds/list.ts","../src/cmds/login.ts","../src/cmds/logout.ts","../src/cmds/test.ts","../src/cmds/whoami.ts","../src/cmds/bucket/index.ts","../src/cmds/bucket/list.ts","../src/cmds/ca-certificate/create.ts","../src/cmds/ca-certificate/delete.ts","../src/cmds/ca-certificate/describe.ts","../src/cmds/ca-certificate/index.ts","../src/cmds/ca-certificate/list.ts","../src/cmds/ca-certificate/update.ts","../src/cmds/custom-domain/create.ts","../src/cmds/custom-domain/delete.ts","../src/cmds/custom-domain/index.ts","../src/cmds/custom-domain/list.ts","../src/cmds/custom-domain/update.ts","../src/cmds/mtls-certificates/create.ts","../src/cmds/mtls-certificates/delete.ts","../src/cmds/mtls-certificates/describe.ts","../src/cmds/mtls-certificates/disable.ts","../src/cmds/mtls-certificates/index.ts","../src/cmds/mtls-certificates/list.ts","../src/cmds/mtls-certificates/update.ts","../src/cmds/open-api/convert.ts","../src/cmds/open-api/index.ts","../src/cmds/open-api/merge.ts","../src/cmds/open-api/overlay.ts","../src/cmds/project/create.ts","../src/cmds/project/index.ts","../src/cmds/project/info.ts","../src/cmds/project/list.ts","../src/cmds/proxies/create.ts","../src/cmds/proxies/delete.ts","../src/cmds/proxies/describe.ts","../src/cmds/proxies/index.ts","../src/cmds/proxies/update.ts","../src/cmds/source/import-openapi.ts","../src/cmds/source/index.ts","../src/cmds/source/migrate.ts","../src/cmds/source/upgrade.ts","../src/cmds/tunnel/create.ts","../src/cmds/tunnel/delete.ts","../src/cmds/tunnel/describe.ts","../src/cmds/tunnel/index.ts","../src/cmds/tunnel/list.ts","../src/cmds/tunnel/rotate-token.ts","../src/cmds/tunnel/services/describe.ts","../src/cmds/tunnel/services/index.ts","../src/cmds/tunnel/services/update.ts","../src/cmds/variable/create.ts","../src/cmds/variable/index.ts","../src/cmds/variable/update.ts","../src/common/alias.ts","../src/common/args.ts","../src/common/constants.ts","../src/common/handler.ts","../src/common/logger.ts","../src/common/models.ts","../src/common/outdated.ts","../src/common/output.ts","../src/common/populate.ts","../src/common/read-linked-config.test.ts","../src/common/read-linked-config.ts","../src/common/runner.ts","../src/common/settings.ts","../src/common/terminal.test.ts","../src/common/terminal.ts","../src/common/worker-output.ts","../src/common/analytics/cli-invocation.test.ts","../src/common/analytics/cli-invocation.ts","../src/common/analytics/lib.ts","../src/common/analytics/package-manager.test.ts","../src/common/analytics/package-manager.ts","../src/common/api/client.ts","../src/common/api/lib.ts","../src/common/machine-id/lib.ts","../src/common/middleware/authentication.ts","../src/common/middleware/check-pnpm-lifecycle.test.ts","../src/common/middleware/check-pnpm-lifecycle.ts","../src/common/middleware/confirm-linked-config.ts","../src/common/middleware/confirm-production-deploy.ts","../src/common/middleware/get-account-param.ts","../src/common/middleware/get-environment-param.test.ts","../src/common/middleware/get-environment-param.ts","../src/common/middleware/get-project-param.ts","../src/common/middleware/logging.ts","../src/common/middleware/user-configuration.ts","../src/common/middleware/user-identification.ts","../src/common/middleware/validate-fleet.ts","../src/common/upgraders/lib.ts","../src/common/upgraders/package-json-upgrader.ts","../src/common/upgraders/tsconfig-upgrader.ts","../src/common/upgraders/vscode-settings-json-upgrader.ts","../src/common/utils/box.ts","../src/common/utils/branch.ts","../src/common/utils/build-environment-prompt-choices.test.ts","../src/common/utils/build-environment-prompt-choices.ts","../src/common/utils/format-environment-type.test.ts","../src/common/utils/format-environment-type.ts","../src/common/utils/pnpm-lifecycle.test.ts","../src/common/utils/pnpm-lifecycle.ts","../src/common/utils/ports.ts","../src/common/utils/prefixed-output.ts","../src/common/utils/pretty-print-environment-prompt.test.ts","../src/common/utils/pretty-print-environment-prompt.ts","../src/common/utils/sort-environments-for-prompt.test.ts","../src/common/utils/sort-environments-for-prompt.ts","../src/common/utils/stringify-config.test.ts","../src/common/utils/stringify-config.ts","../src/common/utils/types.ts","../src/common/utils/urls.ts","../src/common/validators/argument-validators.spec.ts","../src/common/validators/argument-validators.ts","../src/common/validators/file-system-validator.ts","../src/common/validators/lib.ts","../src/common/validators/project-name-validator.ts","../src/common/xdg/lib.ts","../src/compile/handler.ts","../src/custom-domain/models.ts","../src/custom-domain/create/handler.ts","../src/custom-domain/delete/handler.ts","../src/custom-domain/list/handler.ts","../src/custom-domain/update/handler.ts","../src/delete/handler.ts","../src/delete/poll-deployment.ts","../src/deploy/archive.local-registry.test.ts","../src/deploy/archive.test.ts","../src/deploy/archive.ts","../src/deploy/environments.ts","../src/deploy/file-upload.ts","../src/deploy/handler.ts","../src/deploy/poll-deployment.ts","../src/dev/handler.ts","../src/docs/handler.ts","../src/editor/handler.ts","../src/editor/e2e/editor.spec.ts","../src/init/handler.ts","../src/link/handler.ts","../src/list/handler.ts","../src/login/login.ts","../src/login/logout.ts","../src/login/tokens.ts","../src/mtls-certificates/models.ts","../src/mtls-certificates/create/handler.ts","../src/mtls-certificates/delete/handler.ts","../src/mtls-certificates/describe/handler.ts","../src/mtls-certificates/disable/handler.ts","../src/mtls-certificates/list/handler.ts","../src/mtls-certificates/update/handler.ts","../src/open-api/convert/handler.spec.ts","../src/open-api/convert/handler.ts","../src/open-api/merge/handler.spec.ts","../src/open-api/merge/handler.ts","../src/open-api/overlay/handler.spec.ts","../src/open-api/overlay/handler.ts","../src/project/create/handler.ts","../src/project/info/handler.ts","../src/project/list/handler.ts","../src/proxies/models.ts","../src/proxies/create/handler.ts","../src/proxies/delete/handler.ts","../src/proxies/describe/handler.ts","../src/proxies/update/handler.ts","../src/source/migrate/dev-portal/handler.ts","../src/source/migrate/dev-portal/types.ts","../src/source/update/handler.ts","../src/test/esbuild-config.ts","../src/test/handler.ts","../src/test/invoke-test.ts","../src/test/test-files.test.ts","../src/test/test-files.ts","../src/test/esbuild-plugins/node-test-prep-plugin.ts","../src/tunnel/models.ts","../src/tunnel/create/handler.ts","../src/tunnel/delete/handler.ts","../src/tunnel/delete/poll-teardown-operation.ts","../src/tunnel/describe/handler.ts","../src/tunnel/list/handler.ts","../src/tunnel/rotate-token/handler.ts","../src/tunnel/services/describe/handler.ts","../src/tunnel/services/update/handler.ts","../src/tunnel/services/update/poll-provisioning-operations.ts","../src/variable/models.ts","../src/variable/create/handler.ts","../src/variable/update/handler.ts","../src/whoami/handler.ts"],"version":"5.8.2"}
1
+ {"root":["../src/cli.ts","../src/internal.ts","../src/types.d.ts","../src/__tests__/archive-utils.test.ts","../src/__tests__/import-openapi.test.ts","../src/__tests__/outdated.test.ts","../src/__tests__/populate.test.ts","../src/__tests__/tsconfig-upgrader.test.ts","../src/__tests__/integration/confirm-linked-config.integration.test.ts","../src/__tests__/integration/confirm-production-deploy.integration.test.ts","../src/__tests__/integration/custom-domain.integration.test.ts","../src/__tests__/integration/delete.integration.test.ts","../src/__tests__/integration/deploy.integration.test.ts","../src/__tests__/integration/get-project-param.integration.test.ts","../src/__tests__/integration/info.integration.test.ts","../src/__tests__/integration/jest-mocks-setup.ts","../src/__tests__/integration/jest-setup.ts","../src/__tests__/integration/link.integration.test.ts","../src/__tests__/integration/linked-config-cascade.integration.test.ts","../src/__tests__/integration/list.integration.test.ts","../src/__tests__/integration/test-utils.ts","../src/__tests__/integration/tunnel.integration.test.ts","../src/__tests__/integration/variable.integration.test.ts","../src/__tests__/integration/whoami.integration.test.ts","../src/bucket/models.ts","../src/bucket/list/handler.ts","../src/build/handler.ts","../src/ca-certificate/models.ts","../src/ca-certificate/validation.test.ts","../src/ca-certificate/validation.ts","../src/ca-certificate/create/handler.ts","../src/ca-certificate/delete/handler.ts","../src/ca-certificate/describe/handler.ts","../src/ca-certificate/list/handler.ts","../src/ca-certificate/update/handler.ts","../src/cmds/build.ts","../src/cmds/compile.ts","../src/cmds/delete.ts","../src/cmds/deploy.ts","../src/cmds/dev.ts","../src/cmds/docs.ts","../src/cmds/editor.ts","../src/cmds/info.ts","../src/cmds/init.ts","../src/cmds/link.ts","../src/cmds/list.ts","../src/cmds/login.ts","../src/cmds/logout.ts","../src/cmds/test.ts","../src/cmds/whoami.ts","../src/cmds/bucket/index.ts","../src/cmds/bucket/list.ts","../src/cmds/ca-certificate/create.ts","../src/cmds/ca-certificate/delete.ts","../src/cmds/ca-certificate/describe.ts","../src/cmds/ca-certificate/index.ts","../src/cmds/ca-certificate/list.ts","../src/cmds/ca-certificate/update.ts","../src/cmds/custom-domain/create.ts","../src/cmds/custom-domain/delete.ts","../src/cmds/custom-domain/index.ts","../src/cmds/custom-domain/list.ts","../src/cmds/custom-domain/update.ts","../src/cmds/mtls-certificates/create.ts","../src/cmds/mtls-certificates/delete.ts","../src/cmds/mtls-certificates/describe.ts","../src/cmds/mtls-certificates/disable.ts","../src/cmds/mtls-certificates/index.ts","../src/cmds/mtls-certificates/list.ts","../src/cmds/mtls-certificates/update.ts","../src/cmds/open-api/convert.ts","../src/cmds/open-api/index.ts","../src/cmds/open-api/merge.ts","../src/cmds/open-api/overlay.ts","../src/cmds/project/create.ts","../src/cmds/project/index.ts","../src/cmds/project/info.ts","../src/cmds/project/list.ts","../src/cmds/proxies/create.ts","../src/cmds/proxies/delete.ts","../src/cmds/proxies/describe.ts","../src/cmds/proxies/index.ts","../src/cmds/proxies/update.ts","../src/cmds/source/import-openapi.ts","../src/cmds/source/index.ts","../src/cmds/source/migrate.ts","../src/cmds/source/upgrade.ts","../src/cmds/tunnel/create.ts","../src/cmds/tunnel/delete.ts","../src/cmds/tunnel/describe.ts","../src/cmds/tunnel/index.ts","../src/cmds/tunnel/list.ts","../src/cmds/tunnel/rotate-token.ts","../src/cmds/tunnel/services/describe.ts","../src/cmds/tunnel/services/index.ts","../src/cmds/tunnel/services/update.ts","../src/cmds/variable/create.ts","../src/cmds/variable/index.ts","../src/cmds/variable/update.ts","../src/common/alias.ts","../src/common/args.ts","../src/common/cli-dispatcher.test.ts","../src/common/cli-dispatcher.ts","../src/common/constants.ts","../src/common/handler.ts","../src/common/logger.ts","../src/common/models.ts","../src/common/outdated.ts","../src/common/output.ts","../src/common/populate.ts","../src/common/read-linked-config.test.ts","../src/common/read-linked-config.ts","../src/common/runner.ts","../src/common/settings.ts","../src/common/terminal.test.ts","../src/common/terminal.ts","../src/common/worker-output.ts","../src/common/analytics/cli-invocation.test.ts","../src/common/analytics/cli-invocation.ts","../src/common/analytics/lib.ts","../src/common/analytics/package-manager.test.ts","../src/common/analytics/package-manager.ts","../src/common/api/client.ts","../src/common/api/lib.ts","../src/common/machine-id/lib.ts","../src/common/middleware/authentication.ts","../src/common/middleware/check-pnpm-lifecycle.test.ts","../src/common/middleware/check-pnpm-lifecycle.ts","../src/common/middleware/confirm-linked-config.ts","../src/common/middleware/confirm-production-deploy.ts","../src/common/middleware/get-account-param.ts","../src/common/middleware/get-environment-param.test.ts","../src/common/middleware/get-environment-param.ts","../src/common/middleware/get-project-param.ts","../src/common/middleware/logging.ts","../src/common/middleware/user-configuration.ts","../src/common/middleware/user-identification.ts","../src/common/middleware/validate-fleet.ts","../src/common/upgraders/lib.ts","../src/common/upgraders/package-json-upgrader.ts","../src/common/upgraders/tsconfig-upgrader.ts","../src/common/upgraders/vscode-settings-json-upgrader.ts","../src/common/utils/box.ts","../src/common/utils/branch.ts","../src/common/utils/build-environment-prompt-choices.test.ts","../src/common/utils/build-environment-prompt-choices.ts","../src/common/utils/format-environment-type.test.ts","../src/common/utils/format-environment-type.ts","../src/common/utils/pnpm-lifecycle.test.ts","../src/common/utils/pnpm-lifecycle.ts","../src/common/utils/ports.ts","../src/common/utils/prefixed-output.ts","../src/common/utils/pretty-print-environment-prompt.test.ts","../src/common/utils/pretty-print-environment-prompt.ts","../src/common/utils/sort-environments-for-prompt.test.ts","../src/common/utils/sort-environments-for-prompt.ts","../src/common/utils/stringify-config.test.ts","../src/common/utils/stringify-config.ts","../src/common/utils/types.ts","../src/common/utils/urls.ts","../src/common/validators/argument-validators.spec.ts","../src/common/validators/argument-validators.ts","../src/common/validators/file-system-validator.ts","../src/common/validators/lib.ts","../src/common/validators/project-name-validator.ts","../src/common/xdg/lib.ts","../src/compile/handler.ts","../src/custom-domain/models.ts","../src/custom-domain/create/handler.ts","../src/custom-domain/delete/handler.ts","../src/custom-domain/list/handler.ts","../src/custom-domain/update/handler.ts","../src/delete/handler.ts","../src/delete/poll-deployment.ts","../src/deploy/archive.local-registry.test.ts","../src/deploy/archive.test.ts","../src/deploy/archive.ts","../src/deploy/environments.ts","../src/deploy/file-upload.ts","../src/deploy/handler.ts","../src/deploy/poll-deployment.ts","../src/dev/handler.ts","../src/docs/handler.ts","../src/editor/handler.ts","../src/editor/e2e/editor.spec.ts","../src/init/handler.ts","../src/link/handler.ts","../src/list/handler.ts","../src/login/login.ts","../src/login/logout.ts","../src/login/tokens.ts","../src/mtls-certificates/models.ts","../src/mtls-certificates/create/handler.ts","../src/mtls-certificates/delete/handler.ts","../src/mtls-certificates/describe/handler.ts","../src/mtls-certificates/disable/handler.ts","../src/mtls-certificates/list/handler.ts","../src/mtls-certificates/update/handler.ts","../src/open-api/convert/handler.spec.ts","../src/open-api/convert/handler.ts","../src/open-api/merge/handler.spec.ts","../src/open-api/merge/handler.ts","../src/open-api/overlay/handler.spec.ts","../src/open-api/overlay/handler.ts","../src/project/create/handler.ts","../src/project/info/handler.ts","../src/project/list/handler.ts","../src/proxies/models.ts","../src/proxies/create/handler.ts","../src/proxies/delete/handler.ts","../src/proxies/describe/handler.ts","../src/proxies/update/handler.ts","../src/source/migrate/dev-portal/handler.ts","../src/source/migrate/dev-portal/types.ts","../src/source/update/handler.ts","../src/test/esbuild-config.ts","../src/test/handler.ts","../src/test/invoke-test.ts","../src/test/test-files.test.ts","../src/test/test-files.ts","../src/test/esbuild-plugins/node-test-prep-plugin.ts","../src/tunnel/models.ts","../src/tunnel/create/handler.ts","../src/tunnel/delete/handler.ts","../src/tunnel/delete/poll-teardown-operation.ts","../src/tunnel/describe/handler.ts","../src/tunnel/list/handler.ts","../src/tunnel/rotate-token/handler.ts","../src/tunnel/services/describe/handler.ts","../src/tunnel/services/update/handler.ts","../src/tunnel/services/update/poll-provisioning-operations.ts","../src/variable/models.ts","../src/variable/create/handler.ts","../src/variable/update/handler.ts","../src/whoami/handler.ts"],"version":"5.8.2"}