wrangler 0.0.0-e61fba8 → 0.0.0-e665ccc3

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 (339) hide show
  1. package/README.md +24 -4
  2. package/bin/wrangler.js +170 -62
  3. package/miniflare-dist/index.mjs +1643 -83
  4. package/package.json +198 -154
  5. package/src/__tests__/access.test.ts +25 -0
  6. package/src/__tests__/api-dev.test.ts +238 -0
  7. package/src/__tests__/api-devregistry.test.ts +121 -0
  8. package/src/__tests__/api.test.ts +102 -0
  9. package/src/__tests__/config-cache-without-cache-dir.test.ts +38 -0
  10. package/src/__tests__/config-cache.test.ts +30 -24
  11. package/src/__tests__/configuration.test.ts +4506 -3476
  12. package/src/__tests__/constellation.test.ts +371 -0
  13. package/src/__tests__/d1/d1.test.ts +82 -0
  14. package/src/__tests__/d1/execute.test.ts +66 -0
  15. package/src/__tests__/d1/migrate.test.ts +257 -0
  16. package/src/__tests__/d1/splitter.test.ts +255 -0
  17. package/src/__tests__/delete.test.ts +272 -0
  18. package/src/__tests__/deployments.test.ts +369 -0
  19. package/src/__tests__/dev.test.tsx +1590 -983
  20. package/src/__tests__/generate.test.ts +237 -0
  21. package/src/__tests__/get-host-from-url.test.ts +16 -0
  22. package/src/__tests__/guess-worker-format.test.ts +103 -68
  23. package/src/__tests__/helpers/cmd-shim.d.ts +6 -6
  24. package/src/__tests__/helpers/end-event-loop.ts +6 -0
  25. package/src/__tests__/helpers/mock-account-id.ts +24 -24
  26. package/src/__tests__/helpers/mock-auth-domain.ts +20 -0
  27. package/src/__tests__/helpers/mock-bin.ts +20 -20
  28. package/src/__tests__/helpers/mock-console.ts +64 -39
  29. package/src/__tests__/helpers/mock-dialogs.ts +88 -79
  30. package/src/__tests__/helpers/mock-get-pages-upload-token.ts +25 -0
  31. package/src/__tests__/helpers/mock-get-zone-from-host.ts +11 -0
  32. package/src/__tests__/helpers/mock-http-server.ts +30 -30
  33. package/src/__tests__/helpers/mock-istty.ts +65 -18
  34. package/src/__tests__/helpers/mock-known-routes.ts +12 -0
  35. package/src/__tests__/helpers/mock-kv.ts +41 -28
  36. package/src/__tests__/helpers/mock-oauth-flow.ts +241 -233
  37. package/src/__tests__/helpers/mock-process.ts +34 -0
  38. package/src/__tests__/helpers/mock-set-timeout.ts +16 -0
  39. package/src/__tests__/helpers/mock-stdin.ts +82 -77
  40. package/src/__tests__/helpers/mock-web-socket.ts +21 -21
  41. package/src/__tests__/helpers/msw/blob-worker.cjs +19 -0
  42. package/src/__tests__/helpers/msw/handlers/access.ts +13 -0
  43. package/src/__tests__/helpers/msw/handlers/deployments.ts +160 -0
  44. package/src/__tests__/helpers/msw/handlers/namespaces.ts +81 -0
  45. package/src/__tests__/helpers/msw/handlers/oauth.ts +31 -0
  46. package/src/__tests__/helpers/msw/handlers/r2.ts +60 -0
  47. package/src/__tests__/helpers/msw/handlers/script.ts +56 -0
  48. package/src/__tests__/helpers/msw/handlers/user.ts +52 -0
  49. package/src/__tests__/helpers/msw/handlers/zones.ts +20 -0
  50. package/src/__tests__/helpers/msw/index.ts +52 -0
  51. package/src/__tests__/helpers/msw/read-file-sync.js +61 -0
  52. package/src/__tests__/helpers/run-in-tmp.ts +27 -28
  53. package/src/__tests__/helpers/run-wrangler.ts +8 -8
  54. package/src/__tests__/helpers/string-dynamic-values-matcher.ts +28 -0
  55. package/src/__tests__/helpers/worker-scripts/child-wrangler.toml +1 -0
  56. package/src/__tests__/helpers/worker-scripts/hello-world-worker.js +5 -0
  57. package/src/__tests__/helpers/worker-scripts/hello-world-wrangler.toml +1 -0
  58. package/src/__tests__/helpers/worker-scripts/parent-worker.js +11 -0
  59. package/src/__tests__/helpers/worker-scripts/parent-wrangler.toml +5 -0
  60. package/src/__tests__/helpers/write-worker-source.ts +16 -16
  61. package/src/__tests__/helpers/write-wrangler-toml.ts +9 -9
  62. package/src/__tests__/https-options.test.ts +142 -109
  63. package/src/__tests__/index.test.ts +262 -237
  64. package/src/__tests__/init.test.ts +3167 -1608
  65. package/src/__tests__/jest.setup.ts +152 -50
  66. package/src/__tests__/kv.test.ts +1789 -1492
  67. package/src/__tests__/logger.test.ts +167 -75
  68. package/src/__tests__/logout.test.ts +47 -0
  69. package/src/__tests__/metrics.test.ts +493 -0
  70. package/src/__tests__/middleware.scheduled.test.ts +145 -0
  71. package/src/__tests__/middleware.test.ts +816 -0
  72. package/src/__tests__/mtls-certificates.test.ts +589 -0
  73. package/src/__tests__/package-manager.test.ts +303 -303
  74. package/src/__tests__/pages/deployment-list.test.ts +80 -0
  75. package/src/__tests__/pages/functions-build.test.ts +528 -0
  76. package/src/__tests__/pages/pages.test.ts +81 -0
  77. package/src/__tests__/pages/project-create.test.ts +63 -0
  78. package/src/__tests__/pages/project-list.test.ts +110 -0
  79. package/src/__tests__/pages/project-upload.test.ts +500 -0
  80. package/src/__tests__/pages/publish.test.ts +2864 -0
  81. package/src/__tests__/pages-deployment-tail.test.ts +957 -0
  82. package/src/__tests__/parse.test.ts +358 -252
  83. package/src/__tests__/paths.test.ts +39 -0
  84. package/src/__tests__/publish.test.ts +8716 -5687
  85. package/src/__tests__/pubsub.test.ts +496 -0
  86. package/src/__tests__/queues.test.ts +532 -0
  87. package/src/__tests__/r2.test.ts +369 -228
  88. package/src/__tests__/route.test.ts +18 -18
  89. package/src/__tests__/secret.test.ts +681 -469
  90. package/src/__tests__/tail.test.ts +866 -567
  91. package/src/__tests__/test-old-node-version.js +31 -0
  92. package/src/__tests__/traverse-module-graph.test.ts +220 -0
  93. package/src/__tests__/tsconfig-sanity.ts +12 -0
  94. package/src/__tests__/tsconfig.json +8 -0
  95. package/src/__tests__/tsconfig.tsbuildinfo +1 -0
  96. package/src/__tests__/type-generation.test.ts +234 -0
  97. package/src/__tests__/user.test.ts +107 -120
  98. package/src/__tests__/utils-collectKeyValues.test.ts +47 -0
  99. package/src/__tests__/validate-dev-props.test.ts +56 -0
  100. package/src/__tests__/version.test.ts +35 -0
  101. package/src/__tests__/whoami.test.tsx +165 -132
  102. package/src/__tests__/worker-namespace.test.ts +340 -0
  103. package/src/abort.d.ts +1 -1
  104. package/src/api/dev.ts +321 -0
  105. package/src/api/index.ts +11 -0
  106. package/src/api/mtls-certificate.ts +148 -0
  107. package/src/api/pages/create-worker-bundle-contents.ts +77 -0
  108. package/src/api/pages/index.ts +5 -0
  109. package/src/api/pages/publish.tsx +371 -0
  110. package/src/bundle-reporter.ts +68 -0
  111. package/src/bundle.ts +890 -165
  112. package/src/cfetch/index.ts +120 -83
  113. package/src/cfetch/internal.ts +208 -92
  114. package/src/cli.ts +23 -8
  115. package/src/config/config.ts +244 -196
  116. package/src/config/diagnostics.ts +61 -61
  117. package/src/config/environment.ts +562 -357
  118. package/src/config/index.ts +374 -196
  119. package/src/config/validation-helpers.ts +379 -366
  120. package/src/config/validation.ts +2197 -1376
  121. package/src/config-cache.ts +81 -41
  122. package/src/constellation/createProject.tsx +51 -0
  123. package/src/constellation/deleteProject.ts +51 -0
  124. package/src/constellation/deleteProjectModel.ts +68 -0
  125. package/src/constellation/index.ts +75 -0
  126. package/src/constellation/listCatalog.tsx +35 -0
  127. package/src/constellation/listModel.tsx +41 -0
  128. package/src/constellation/listProject.tsx +28 -0
  129. package/src/constellation/listRuntime.tsx +28 -0
  130. package/src/constellation/options.ts +17 -0
  131. package/src/constellation/types.ts +17 -0
  132. package/src/constellation/uploadModel.tsx +64 -0
  133. package/src/constellation/utils.ts +90 -0
  134. package/src/create-worker-preview.ts +250 -142
  135. package/src/create-worker-upload-form.ts +347 -238
  136. package/src/d1/backups.tsx +219 -0
  137. package/src/d1/constants.ts +2 -0
  138. package/src/d1/create.tsx +70 -0
  139. package/src/d1/delete.ts +53 -0
  140. package/src/d1/execute.tsx +357 -0
  141. package/src/d1/formatTimeAgo.ts +14 -0
  142. package/src/d1/index.ts +100 -0
  143. package/src/d1/list.tsx +62 -0
  144. package/src/d1/migrations/apply.tsx +212 -0
  145. package/src/d1/migrations/create.tsx +79 -0
  146. package/src/d1/migrations/helpers.ts +169 -0
  147. package/src/d1/migrations/index.ts +3 -0
  148. package/src/d1/migrations/list.tsx +95 -0
  149. package/src/d1/migrations/options.ts +23 -0
  150. package/src/d1/options.ts +22 -0
  151. package/src/d1/splitter.ts +161 -0
  152. package/src/d1/types.ts +25 -0
  153. package/src/d1/utils.ts +49 -0
  154. package/src/delete.ts +100 -0
  155. package/src/deployments.ts +368 -0
  156. package/src/deprecated/index.ts +144 -0
  157. package/src/dev/dev-vars.ts +20 -17
  158. package/src/dev/dev.tsx +535 -325
  159. package/src/dev/get-local-persistence-path.ts +31 -0
  160. package/src/dev/local.tsx +932 -301
  161. package/src/dev/remote.tsx +623 -228
  162. package/src/dev/start-server.ts +545 -0
  163. package/src/dev/use-esbuild.ts +194 -94
  164. package/src/dev/validate-dev-props.ts +40 -0
  165. package/src/dev-registry.ts +202 -0
  166. package/src/dev.tsx +934 -0
  167. package/src/dialogs.ts +136 -0
  168. package/src/dispatch-namespace.ts +211 -0
  169. package/src/docs/helpers.ts +50 -0
  170. package/src/docs/index.ts +54 -0
  171. package/src/durable.ts +87 -87
  172. package/src/entry.ts +253 -231
  173. package/src/environment-variables/factory.ts +89 -0
  174. package/src/environment-variables/misc-variables.ts +30 -0
  175. package/src/errors.ts +6 -6
  176. package/src/generate/index.ts +298 -0
  177. package/src/git-client.ts +135 -0
  178. package/src/global-wrangler-config-path.ts +26 -0
  179. package/src/https-options.ts +84 -80
  180. package/src/index.ts +768 -0
  181. package/src/init.ts +1037 -0
  182. package/src/inspect.ts +816 -595
  183. package/src/intl-polyfill.d.ts +123 -123
  184. package/src/is-ci.ts +14 -0
  185. package/src/is-interactive.ts +16 -0
  186. package/src/jest.d.ts +4 -0
  187. package/src/kv/helpers.ts +433 -0
  188. package/src/kv/index.ts +594 -0
  189. package/src/logger.ts +100 -43
  190. package/src/metrics/index.ts +5 -0
  191. package/src/metrics/metrics-config.ts +239 -0
  192. package/src/metrics/metrics-dispatcher.ts +96 -0
  193. package/src/metrics/metrics-usage-headers.ts +24 -0
  194. package/src/metrics/send-event.ts +99 -0
  195. package/src/miniflare-cli/assets.ts +255 -0
  196. package/src/miniflare-cli/index.ts +202 -33
  197. package/src/miniflare-cli/request-context.ts +18 -18
  198. package/src/miniflare-cli/tsconfig.json +9 -0
  199. package/src/miniflare-cli/tsconfig.tsbuildinfo +1 -0
  200. package/src/miniflare-cli/types.ts +11 -0
  201. package/src/module-collection.ts +290 -215
  202. package/src/mtls-certificate/cli.ts +155 -0
  203. package/src/open-in-browser.ts +4 -6
  204. package/src/package-manager.ts +173 -128
  205. package/src/pages/build.ts +423 -0
  206. package/src/pages/buildFunctions.ts +140 -0
  207. package/src/pages/constants.ts +18 -0
  208. package/src/pages/deployment-tails.ts +281 -0
  209. package/src/pages/deployments.tsx +84 -0
  210. package/src/pages/dev.ts +734 -0
  211. package/src/pages/errors.ts +67 -0
  212. package/src/pages/functions/buildPlugin.ts +114 -0
  213. package/src/pages/functions/buildWorker.ts +350 -0
  214. package/{pages → src/pages}/functions/filepath-routing.test.ts +113 -113
  215. package/src/pages/functions/filepath-routing.ts +189 -0
  216. package/src/pages/functions/identifiers.ts +78 -0
  217. package/src/pages/functions/routes-consolidation.test.ts +250 -0
  218. package/src/pages/functions/routes-consolidation.ts +73 -0
  219. package/src/pages/functions/routes-transformation.test.ts +282 -0
  220. package/src/pages/functions/routes-transformation.ts +115 -0
  221. package/src/pages/functions/routes-validation.test.ts +403 -0
  222. package/src/pages/functions/routes-validation.ts +202 -0
  223. package/src/pages/functions/routes.ts +151 -0
  224. package/src/pages/functions/tsconfig.json +8 -0
  225. package/src/pages/functions/tsconfig.tsbuildinfo +1 -0
  226. package/src/pages/functions.ts +86 -0
  227. package/src/pages/hash.ts +13 -0
  228. package/src/pages/index.ts +102 -0
  229. package/src/pages/projects.tsx +159 -0
  230. package/src/pages/prompt-select-project.tsx +31 -0
  231. package/src/pages/publish.tsx +267 -0
  232. package/src/pages/types.ts +46 -0
  233. package/src/pages/upload.tsx +469 -0
  234. package/src/pages/utils.ts +23 -0
  235. package/src/parse.ts +225 -139
  236. package/src/paths.ts +53 -8
  237. package/src/proxy.ts +623 -407
  238. package/src/publish/index.ts +274 -0
  239. package/src/publish/publish.ts +1065 -0
  240. package/src/pubsub/index.ts +286 -0
  241. package/src/pubsub/pubsub-commands.ts +623 -0
  242. package/src/queues/cli/commands/consumer/add.ts +71 -0
  243. package/src/queues/cli/commands/consumer/index.ts +19 -0
  244. package/src/queues/cli/commands/consumer/remove.ts +31 -0
  245. package/src/queues/cli/commands/create.ts +25 -0
  246. package/src/queues/cli/commands/delete.ts +26 -0
  247. package/src/queues/cli/commands/index.ts +35 -0
  248. package/src/queues/cli/commands/list.ts +25 -0
  249. package/src/queues/client.ts +136 -0
  250. package/src/queues/utils.ts +18 -0
  251. package/src/r2/constants.ts +4 -0
  252. package/src/r2/helpers.ts +132 -0
  253. package/src/r2/index.ts +289 -0
  254. package/src/routes.ts +140 -0
  255. package/src/secret/index.ts +377 -0
  256. package/src/selfsigned.d.ts +23 -23
  257. package/src/sites.ts +484 -0
  258. package/src/tail/createTail.ts +415 -0
  259. package/src/tail/filters.ts +109 -111
  260. package/src/tail/index.ts +208 -296
  261. package/src/tail/printing.ts +116 -51
  262. package/src/traverse-module-graph.ts +54 -0
  263. package/src/tsconfig-sanity.ts +16 -0
  264. package/src/type-generation.ts +181 -0
  265. package/src/update-check.ts +11 -11
  266. package/src/user/access.ts +68 -0
  267. package/src/user/auth-variables.ts +113 -0
  268. package/src/user/choose-account.tsx +39 -0
  269. package/src/user/generate-auth-url.ts +33 -0
  270. package/src/user/generate-random-state.ts +16 -0
  271. package/src/user/index.ts +2 -0
  272. package/src/user/user.ts +1234 -0
  273. package/src/utils/collectKeyValues.ts +14 -0
  274. package/src/utils/render.ts +93 -0
  275. package/src/whoami.ts +135 -0
  276. package/src/worker.ts +205 -107
  277. package/src/yargs-types.ts +37 -0
  278. package/src/zones.ts +158 -40
  279. package/templates/__tests__/pages-dev-util.test.ts +128 -0
  280. package/templates/__tests__/tsconfig-sanity.ts +12 -0
  281. package/templates/__tests__/tsconfig.json +8 -0
  282. package/templates/__tests__/tsconfig.tsbuildinfo +1 -0
  283. package/templates/checked-fetch.js +23 -0
  284. package/templates/d1-beta-facade.js +244 -0
  285. package/templates/facade.d.ts +14 -0
  286. package/templates/first-party-worker-module-facade.ts +19 -0
  287. package/templates/format-dev-errors.ts +34 -0
  288. package/templates/gitignore +1 -0
  289. package/templates/init-tests/test-jest-new-worker.js +23 -0
  290. package/templates/init-tests/test-vitest-new-worker.js +24 -0
  291. package/templates/init-tests/test-vitest-new-worker.ts +25 -0
  292. package/templates/middleware/common.ts +62 -0
  293. package/templates/middleware/loader-modules.ts +84 -0
  294. package/templates/middleware/loader-sw.ts +233 -0
  295. package/templates/middleware/middleware-miniflare3-json-error.ts +32 -0
  296. package/templates/middleware/middleware-pretty-error.ts +40 -0
  297. package/templates/middleware/middleware-scheduled.ts +15 -0
  298. package/templates/new-worker-scheduled.js +3 -3
  299. package/templates/new-worker-scheduled.ts +15 -15
  300. package/templates/new-worker.js +3 -3
  301. package/templates/new-worker.ts +18 -15
  302. package/templates/no-op-worker.js +10 -0
  303. package/templates/pages-dev-pipeline.ts +31 -0
  304. package/templates/pages-dev-util.ts +52 -0
  305. package/templates/pages-shim.ts +12 -0
  306. package/templates/pages-template-plugin.ts +180 -0
  307. package/templates/pages-template-worker.ts +189 -0
  308. package/templates/serve-static-assets.ts +66 -0
  309. package/templates/service-bindings-module-facade.js +55 -0
  310. package/templates/service-bindings-sw-facade.js +42 -0
  311. package/templates/tsconfig-sanity.ts +11 -0
  312. package/templates/tsconfig.init.json +105 -0
  313. package/templates/tsconfig.json +6 -103
  314. package/templates/tsconfig.tsbuildinfo +1 -0
  315. package/wrangler-dist/cli.d.ts +1652 -0
  316. package/wrangler-dist/cli.js +139094 -111923
  317. package/wrangler-dist/wasm-sync.wasm +0 -0
  318. package/pages/functions/buildPlugin.ts +0 -105
  319. package/pages/functions/buildWorker.ts +0 -151
  320. package/pages/functions/filepath-routing.ts +0 -189
  321. package/pages/functions/identifiers.ts +0 -78
  322. package/pages/functions/routes.ts +0 -156
  323. package/pages/functions/template-plugin.ts +0 -147
  324. package/pages/functions/template-worker.ts +0 -143
  325. package/src/__tests__/helpers/faye-websocket.d.ts +0 -6
  326. package/src/__tests__/helpers/mock-cfetch.ts +0 -211
  327. package/src/__tests__/pages.test.ts +0 -754
  328. package/src/dialogs.tsx +0 -135
  329. package/src/environment-variables.ts +0 -35
  330. package/src/index.tsx +0 -2859
  331. package/src/kv.ts +0 -408
  332. package/src/miniflare-cli/enum-keys.ts +0 -17
  333. package/src/pages.tsx +0 -2093
  334. package/src/publish.ts +0 -721
  335. package/src/r2.ts +0 -50
  336. package/src/sites.tsx +0 -326
  337. package/src/user.tsx +0 -1214
  338. package/src/whoami.tsx +0 -71
  339. package/templates/static-asset-facade.js +0 -43
@@ -7,7 +7,7 @@
7
7
 
8
8
  /**
9
9
  * These are the filters we accept in the CLI. They
10
- * were copied directly from wrangler 1 in order to
10
+ * were copied directly from Wrangler v1 in order to
11
11
  * maintain compatability, so they aren't actually the exact
12
12
  * filters we need to send up to the tail worker. They generally map 1:1,
13
13
  * but often require some transformation or
@@ -17,12 +17,12 @@
17
17
  * CLI description or see the documentation for `ApiFilter`.
18
18
  */
19
19
  export type TailCLIFilters = {
20
- status?: ("ok" | "error" | "canceled")[];
21
- header?: string;
22
- method?: string[];
23
- search?: string;
24
- samplingRate?: number;
25
- clientIp?: string[];
20
+ status?: ("ok" | "error" | "canceled")[];
21
+ header?: string;
22
+ method?: string[];
23
+ search?: string;
24
+ samplingRate?: number;
25
+ clientIp?: string[];
26
26
  };
27
27
 
28
28
  /**
@@ -33,12 +33,12 @@ export type TailCLIFilters = {
33
33
  * TailAPIFilter to be the union of those types.
34
34
  */
35
35
  export type TailAPIFilter =
36
- | SamplingRateFilter
37
- | OutcomeFilter
38
- | MethodFilter
39
- | HeaderFilter
40
- | ClientIPFilter
41
- | QueryFilter;
36
+ | SamplingRateFilter
37
+ | OutcomeFilter
38
+ | MethodFilter
39
+ | HeaderFilter
40
+ | ClientIPFilter
41
+ | QueryFilter;
42
42
 
43
43
  /**
44
44
  * Filters logs based on a given sampling rate.
@@ -46,33 +46,34 @@ export type TailAPIFilter =
46
46
  * logs through.
47
47
  */
48
48
  type SamplingRateFilter = {
49
- sampling_rate: number;
49
+ sampling_rate: number;
50
50
  };
51
51
 
52
52
  /**
53
53
  * Filters logs based on the outcome of the worker's event handler.
54
54
  */
55
55
  type OutcomeFilter = {
56
- outcome: Outcome[];
56
+ outcome: Outcome[];
57
57
  };
58
58
 
59
59
  /**
60
60
  * There are five possible outcomes we can get, three of which
61
- * (exception, exceededCpu, and unknown) are considered errors
61
+ * (exception, exceededCpu, exceededMemory, and unknown) are considered errors
62
62
  */
63
63
  export type Outcome =
64
- | "ok"
65
- | "canceled"
66
- | "exception"
67
- | "exceededCpu"
68
- | "unknown";
64
+ | "ok"
65
+ | "canceled"
66
+ | "exception"
67
+ | "exceededCpu"
68
+ | "exceededMemory"
69
+ | "unknown";
69
70
 
70
71
  /**
71
72
  * Filters logs based on the HTTP method used for the request
72
73
  * that triggered the worker.
73
74
  */
74
75
  type MethodFilter = {
75
- method: string[];
76
+ method: string[];
76
77
  };
77
78
 
78
79
  /**
@@ -80,21 +81,21 @@ type MethodFilter = {
80
81
  * triggered the worker.
81
82
  */
82
83
  type HeaderFilter = {
83
- header: {
84
- /**
85
- * Filters on the header "key", e.g. "X-CLOUDFLARE-HEADER"
86
- * or "X-CUSTOM-HEADER"
87
- */
88
- key: string;
89
-
90
- /**
91
- * Filters on the header "value", e.g. if this is set to
92
- * "filter-for-me" and the "key" is "X-SHOULD-LOG", only
93
- * events triggered by requests with the header
94
- * "X-SHOULD-LOG:filter-for-me" will be logged.
95
- */
96
- query?: string;
97
- };
84
+ header: {
85
+ /**
86
+ * Filters on the header "key", e.g. "X-CLOUDFLARE-HEADER"
87
+ * or "X-CUSTOM-HEADER"
88
+ */
89
+ key: string;
90
+
91
+ /**
92
+ * Filters on the header "value", e.g. if this is set to
93
+ * "filter-for-me" and the "key" is "X-SHOULD-LOG", only
94
+ * events triggered by requests with the header
95
+ * "X-SHOULD-LOG:filter-for-me" will be logged.
96
+ */
97
+ query?: string;
98
+ };
98
99
  };
99
100
 
100
101
  /**
@@ -103,7 +104,7 @@ type HeaderFilter = {
103
104
  * address that is running `wrangler tail`
104
105
  */
105
106
  type ClientIPFilter = {
106
- client_ip: string[];
107
+ client_ip: string[];
107
108
  };
108
109
 
109
110
  /**
@@ -112,7 +113,7 @@ type ClientIPFilter = {
112
113
  * that don't will be discarded by the tail worker.
113
114
  */
114
115
  type QueryFilter = {
115
- query: string;
116
+ query: string;
116
117
  };
117
118
 
118
119
  /**
@@ -120,8 +121,7 @@ type QueryFilter = {
120
121
  * filters and a debug flag.
121
122
  */
122
123
  export type TailFilterMessage = {
123
- filters: TailAPIFilter[];
124
- debug: boolean;
124
+ filters: TailAPIFilter[];
125
125
  };
126
126
 
127
127
  /**
@@ -129,43 +129,40 @@ export type TailFilterMessage = {
129
129
  * into a message that we can send to the tail worker.
130
130
  *
131
131
  * @param cliFilters An object containing all the filters passed in from the CLI
132
- * @param debug Whether or not we should be in debug mode
133
132
  * @returns A filter message ready to be sent to the tail worker
134
133
  */
135
134
  export function translateCLICommandToFilterMessage(
136
- cliFilters: TailCLIFilters,
137
- debug: boolean
135
+ cliFilters: TailCLIFilters
138
136
  ): TailFilterMessage {
139
- const apiFilters: TailAPIFilter[] = [];
137
+ const apiFilters: TailAPIFilter[] = [];
140
138
 
141
- if (cliFilters.samplingRate) {
142
- apiFilters.push(parseSamplingRate(cliFilters.samplingRate));
143
- }
139
+ if (cliFilters.samplingRate) {
140
+ apiFilters.push(parseSamplingRate(cliFilters.samplingRate));
141
+ }
144
142
 
145
- if (cliFilters.status) {
146
- apiFilters.push(parseOutcome(cliFilters.status));
147
- }
143
+ if (cliFilters.status) {
144
+ apiFilters.push(parseOutcome(cliFilters.status));
145
+ }
148
146
 
149
- if (cliFilters.method) {
150
- apiFilters.push(parseMethod(cliFilters.method));
151
- }
147
+ if (cliFilters.method) {
148
+ apiFilters.push(parseMethod(cliFilters.method));
149
+ }
152
150
 
153
- if (cliFilters.header) {
154
- apiFilters.push(parseHeader(cliFilters.header));
155
- }
151
+ if (cliFilters.header) {
152
+ apiFilters.push(parseHeader(cliFilters.header));
153
+ }
156
154
 
157
- if (cliFilters.clientIp) {
158
- apiFilters.push(parseIP(cliFilters.clientIp));
159
- }
155
+ if (cliFilters.clientIp) {
156
+ apiFilters.push(parseIP(cliFilters.clientIp));
157
+ }
160
158
 
161
- if (cliFilters.search) {
162
- apiFilters.push(parseQuery(cliFilters.search));
163
- }
159
+ if (cliFilters.search) {
160
+ apiFilters.push(parseQuery(cliFilters.search));
161
+ }
164
162
 
165
- return {
166
- filters: apiFilters,
167
- debug,
168
- };
163
+ return {
164
+ filters: apiFilters,
165
+ };
169
166
  }
170
167
 
171
168
  /**
@@ -176,13 +173,13 @@ export function translateCLICommandToFilterMessage(
176
173
  * @returns a SamplingRateFilter for use with the API
177
174
  */
178
175
  function parseSamplingRate(sampling_rate: number): SamplingRateFilter {
179
- if (sampling_rate <= 0 || sampling_rate >= 1) {
180
- throw new Error(
181
- "A sampling rate must be between 0 and 1 in order to have any effect.\nFor example, a sampling rate of 0.25 means 25% of events will be logged."
182
- );
183
- }
176
+ if (sampling_rate <= 0 || sampling_rate >= 1) {
177
+ throw new Error(
178
+ "A sampling rate must be between 0 and 1 in order to have any effect.\nFor example, a sampling rate of 0.25 means 25% of events will be logged."
179
+ );
180
+ }
184
181
 
185
- return { sampling_rate };
182
+ return { sampling_rate };
186
183
  }
187
184
 
188
185
  /**
@@ -193,34 +190,35 @@ function parseSamplingRate(sampling_rate: number): SamplingRateFilter {
193
190
  * @returns an OutcomeFilter for use with the API
194
191
  */
195
192
  function parseOutcome(
196
- statuses: ("ok" | "error" | "canceled")[]
193
+ statuses: ("ok" | "error" | "canceled")[]
197
194
  ): OutcomeFilter {
198
- const outcomes = new Set<Outcome>();
199
-
200
- for (const status of statuses) {
201
- switch (status) {
202
- case "ok":
203
- outcomes.add("ok");
204
- break;
205
-
206
- case "canceled":
207
- outcomes.add("canceled");
208
- break;
209
-
210
- case "error":
211
- outcomes.add("exception");
212
- outcomes.add("exceededCpu");
213
- outcomes.add("unknown");
214
- break;
215
-
216
- default:
217
- break;
218
- }
219
- }
220
-
221
- return {
222
- outcome: Array.from(outcomes),
223
- };
195
+ const outcomes = new Set<Outcome>();
196
+
197
+ for (const status of statuses) {
198
+ switch (status) {
199
+ case "ok":
200
+ outcomes.add("ok");
201
+ break;
202
+
203
+ case "canceled":
204
+ outcomes.add("canceled");
205
+ break;
206
+
207
+ case "error":
208
+ outcomes.add("exception");
209
+ outcomes.add("exceededCpu");
210
+ outcomes.add("exceededMemory");
211
+ outcomes.add("unknown");
212
+ break;
213
+
214
+ default:
215
+ break;
216
+ }
217
+ }
218
+
219
+ return {
220
+ outcome: Array.from(outcomes),
221
+ };
224
222
  }
225
223
 
226
224
  /**
@@ -231,7 +229,7 @@ function parseOutcome(
231
229
  * @returns a MethodFilter for use with the API
232
230
  */
233
231
  function parseMethod(method: string[]): MethodFilter {
234
- return { method };
232
+ return { method };
235
233
  }
236
234
 
237
235
  /**
@@ -243,14 +241,14 @@ function parseMethod(method: string[]): MethodFilter {
243
241
  * @returns a HeaderFilter for use with the API
244
242
  */
245
243
  function parseHeader(header: string): HeaderFilter {
246
- const [headerKey, headerQuery] = header.split(":", 2);
247
-
248
- return {
249
- header: {
250
- key: headerKey.trim(),
251
- query: headerQuery?.trim(),
252
- },
253
- };
244
+ const [headerKey, headerQuery] = header.split(":", 2);
245
+
246
+ return {
247
+ header: {
248
+ key: headerKey.trim(),
249
+ query: headerQuery?.trim(),
250
+ },
251
+ };
254
252
  }
255
253
 
256
254
  /**
@@ -263,7 +261,7 @@ function parseHeader(header: string): HeaderFilter {
263
261
  * @returns a ClientIPFilter for use with the API
264
262
  */
265
263
  function parseIP(client_ip: string[]): ClientIPFilter {
266
- return { client_ip };
264
+ return { client_ip };
267
265
  }
268
266
 
269
267
  /**
@@ -275,5 +273,5 @@ function parseIP(client_ip: string[]): ClientIPFilter {
275
273
  * @returns a QueryFilter for use with the API
276
274
  */
277
275
  function parseQuery(query: string): QueryFilter {
278
- return { query };
276
+ return { query };
279
277
  }