wrangler 0.0.0-e6733a3 → 0.0.0-e6c71262

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 (380) hide show
  1. package/Cloudflare_CA.pem +18 -0
  2. package/README.md +47 -14
  3. package/bin/wrangler.js +180 -28
  4. package/kv-asset-handler.js +1 -0
  5. package/miniflare-dist/index.mjs +6442 -0
  6. package/package.json +198 -124
  7. package/src/__tests__/access.test.ts +25 -0
  8. package/src/__tests__/api-dev.test.ts +238 -0
  9. package/src/__tests__/api-devregistry.test.ts +121 -0
  10. package/src/__tests__/api.test.ts +102 -0
  11. package/src/__tests__/config-cache-without-cache-dir.test.ts +38 -0
  12. package/src/__tests__/config-cache.test.ts +42 -0
  13. package/src/__tests__/configuration.test.ts +4671 -0
  14. package/src/__tests__/constellation.test.ts +371 -0
  15. package/src/__tests__/d1/d1.test.ts +82 -0
  16. package/src/__tests__/d1/execute.test.ts +66 -0
  17. package/src/__tests__/d1/migrate.test.ts +257 -0
  18. package/src/__tests__/d1/splitter.test.ts +255 -0
  19. package/src/__tests__/delete.test.ts +272 -0
  20. package/src/__tests__/deployments.test.ts +369 -0
  21. package/src/__tests__/dev.test.tsx +1613 -62
  22. package/src/__tests__/generate.test.ts +254 -0
  23. package/src/__tests__/get-host-from-url.test.ts +16 -0
  24. package/src/__tests__/guess-worker-format.test.ts +120 -0
  25. package/src/__tests__/helpers/cmd-shim.d.ts +11 -0
  26. package/src/__tests__/helpers/end-event-loop.ts +6 -0
  27. package/src/__tests__/helpers/mock-account-id.ts +48 -0
  28. package/src/__tests__/helpers/mock-auth-domain.ts +20 -0
  29. package/src/__tests__/helpers/mock-bin.ts +36 -0
  30. package/src/__tests__/helpers/mock-console.ts +112 -0
  31. package/src/__tests__/helpers/mock-dialogs.ts +139 -0
  32. package/src/__tests__/helpers/mock-get-pages-upload-token.ts +25 -0
  33. package/src/__tests__/helpers/mock-get-zone-from-host.ts +11 -0
  34. package/src/__tests__/helpers/mock-http-server.ts +46 -0
  35. package/src/__tests__/helpers/mock-istty.ts +74 -0
  36. package/src/__tests__/helpers/mock-known-routes.ts +12 -0
  37. package/src/__tests__/helpers/mock-kv.ts +46 -0
  38. package/src/__tests__/helpers/mock-oauth-flow.ts +263 -0
  39. package/src/__tests__/helpers/mock-process.ts +34 -0
  40. package/src/__tests__/helpers/mock-set-timeout.ts +16 -0
  41. package/src/__tests__/helpers/mock-stdin.ts +108 -0
  42. package/src/__tests__/helpers/mock-web-socket.ts +29 -0
  43. package/src/__tests__/helpers/msw/blob-worker.cjs +19 -0
  44. package/src/__tests__/helpers/msw/handlers/access.ts +13 -0
  45. package/src/__tests__/helpers/msw/handlers/deployments.ts +160 -0
  46. package/src/__tests__/helpers/msw/handlers/namespaces.ts +81 -0
  47. package/src/__tests__/helpers/msw/handlers/oauth.ts +31 -0
  48. package/src/__tests__/helpers/msw/handlers/r2.ts +60 -0
  49. package/src/__tests__/helpers/msw/handlers/script.ts +56 -0
  50. package/src/__tests__/helpers/msw/handlers/user.ts +52 -0
  51. package/src/__tests__/helpers/msw/handlers/zones.ts +20 -0
  52. package/src/__tests__/helpers/msw/index.ts +52 -0
  53. package/src/__tests__/helpers/msw/read-file-sync.js +61 -0
  54. package/src/__tests__/helpers/run-in-tmp.ts +38 -0
  55. package/src/__tests__/helpers/run-wrangler.ts +16 -0
  56. package/src/__tests__/helpers/string-dynamic-values-matcher.ts +28 -0
  57. package/src/__tests__/helpers/worker-scripts/child-wrangler.toml +1 -0
  58. package/src/__tests__/helpers/worker-scripts/hello-world-worker.js +5 -0
  59. package/src/__tests__/helpers/worker-scripts/hello-world-wrangler.toml +1 -0
  60. package/src/__tests__/helpers/worker-scripts/parent-worker.js +11 -0
  61. package/src/__tests__/helpers/worker-scripts/parent-wrangler.toml +5 -0
  62. package/src/__tests__/helpers/write-worker-source.ts +31 -0
  63. package/src/__tests__/helpers/write-wrangler-toml.ts +17 -0
  64. package/src/__tests__/https-options.test.ts +163 -0
  65. package/src/__tests__/index.test.ts +279 -284
  66. package/src/__tests__/init.test.ts +3419 -0
  67. package/src/__tests__/jest.setup.ts +173 -16
  68. package/src/__tests__/kv.test.ts +1794 -1093
  69. package/src/__tests__/logger.test.ts +207 -0
  70. package/src/__tests__/logout.test.ts +47 -0
  71. package/src/__tests__/metrics.test.ts +493 -0
  72. package/src/__tests__/middleware.scheduled.test.ts +145 -0
  73. package/src/__tests__/middleware.test.ts +816 -0
  74. package/src/__tests__/mtls-certificates.test.ts +589 -0
  75. package/src/__tests__/package-manager.test.ts +353 -0
  76. package/src/__tests__/pages/deployment-list.test.ts +80 -0
  77. package/src/__tests__/pages/functions-build.test.ts +528 -0
  78. package/src/__tests__/pages/pages.test.ts +81 -0
  79. package/src/__tests__/pages/project-create.test.ts +63 -0
  80. package/src/__tests__/pages/project-list.test.ts +110 -0
  81. package/src/__tests__/pages/project-upload.test.ts +500 -0
  82. package/src/__tests__/pages/publish.test.ts +2864 -0
  83. package/src/__tests__/pages-deployment-tail.test.ts +957 -0
  84. package/src/__tests__/parse.test.ts +436 -0
  85. package/src/__tests__/paths.test.ts +39 -0
  86. package/src/__tests__/publish.test.ts +8849 -0
  87. package/src/__tests__/pubsub.test.ts +496 -0
  88. package/src/__tests__/queues.test.ts +532 -0
  89. package/src/__tests__/r2.test.ts +374 -0
  90. package/src/__tests__/route.test.ts +45 -0
  91. package/src/__tests__/secret.test.ts +693 -0
  92. package/src/__tests__/tail.test.ts +989 -0
  93. package/src/__tests__/test-old-node-version.js +31 -0
  94. package/src/__tests__/traverse-module-graph.test.ts +220 -0
  95. package/src/__tests__/tsconfig-sanity.ts +12 -0
  96. package/src/__tests__/tsconfig.json +8 -0
  97. package/src/__tests__/tsconfig.tsbuildinfo +1 -0
  98. package/src/__tests__/type-generation.test.ts +234 -0
  99. package/src/__tests__/unstableDev.test.ts +61 -0
  100. package/src/__tests__/user.test.ts +118 -0
  101. package/src/__tests__/utils-collectKeyValues.test.ts +47 -0
  102. package/src/__tests__/validate-dev-props.test.ts +56 -0
  103. package/src/__tests__/version.test.ts +35 -0
  104. package/src/__tests__/whoami.test.tsx +172 -0
  105. package/src/__tests__/worker-namespace.test.ts +340 -0
  106. package/src/abort.d.ts +3 -0
  107. package/src/api/dev.ts +321 -0
  108. package/src/api/index.ts +11 -0
  109. package/src/api/mtls-certificate.ts +148 -0
  110. package/src/api/pages/create-worker-bundle-contents.ts +79 -0
  111. package/src/api/pages/index.ts +5 -0
  112. package/src/api/pages/publish.tsx +371 -0
  113. package/src/bundle-reporter.ts +68 -0
  114. package/src/bundle.ts +929 -0
  115. package/src/cfetch/index.ts +127 -71
  116. package/src/cfetch/internal.ts +240 -46
  117. package/src/cli.ts +25 -6
  118. package/src/config/README.md +107 -0
  119. package/src/config/config.ts +282 -0
  120. package/src/config/diagnostics.ts +80 -0
  121. package/src/config/environment.ts +650 -0
  122. package/src/config/index.ts +424 -0
  123. package/src/config/validation-helpers.ts +597 -0
  124. package/src/config/validation.ts +2457 -0
  125. package/src/config-cache.ts +85 -0
  126. package/src/constellation/createProject.tsx +51 -0
  127. package/src/constellation/deleteProject.ts +51 -0
  128. package/src/constellation/deleteProjectModel.ts +76 -0
  129. package/src/constellation/index.ts +75 -0
  130. package/src/constellation/listCatalog.tsx +35 -0
  131. package/src/constellation/listModel.tsx +49 -0
  132. package/src/constellation/listProject.tsx +28 -0
  133. package/src/constellation/listRuntime.tsx +28 -0
  134. package/src/constellation/options.ts +17 -0
  135. package/src/constellation/types.ts +17 -0
  136. package/src/constellation/uploadModel.tsx +84 -0
  137. package/src/constellation/utils.ts +90 -0
  138. package/src/create-worker-preview.ts +293 -0
  139. package/src/create-worker-upload-form.ts +380 -0
  140. package/src/d1/backups.tsx +219 -0
  141. package/src/d1/constants.ts +5 -0
  142. package/src/d1/create.tsx +102 -0
  143. package/src/d1/delete.ts +53 -0
  144. package/src/d1/execute.tsx +371 -0
  145. package/src/d1/formatTimeAgo.ts +14 -0
  146. package/src/d1/index.ts +100 -0
  147. package/src/d1/list.tsx +62 -0
  148. package/src/d1/migrations/apply.tsx +235 -0
  149. package/src/d1/migrations/create.tsx +79 -0
  150. package/src/d1/migrations/helpers.ts +171 -0
  151. package/src/d1/migrations/index.ts +3 -0
  152. package/src/d1/migrations/list.tsx +95 -0
  153. package/src/d1/migrations/options.ts +23 -0
  154. package/src/d1/options.ts +22 -0
  155. package/src/d1/splitter.ts +161 -0
  156. package/src/d1/types.ts +32 -0
  157. package/src/d1/utils.ts +49 -0
  158. package/src/delete.ts +100 -0
  159. package/src/deployments.ts +368 -0
  160. package/src/deprecated/index.ts +144 -0
  161. package/src/dev/dev-vars.ts +39 -0
  162. package/src/dev/dev.tsx +605 -0
  163. package/src/dev/get-local-persistence-path.ts +31 -0
  164. package/src/dev/local.tsx +952 -0
  165. package/src/dev/remote.tsx +635 -0
  166. package/src/dev/start-server.ts +545 -0
  167. package/src/dev/use-esbuild.ts +215 -0
  168. package/src/dev/validate-dev-props.ts +40 -0
  169. package/src/dev-registry.ts +213 -0
  170. package/src/dev.tsx +918 -752
  171. package/src/dialogs.ts +136 -0
  172. package/src/dispatch-namespace.ts +211 -0
  173. package/src/docs/helpers.ts +50 -0
  174. package/src/docs/index.ts +54 -0
  175. package/src/durable.ts +102 -0
  176. package/src/entry.ts +344 -0
  177. package/src/environment-variables/factory.ts +89 -0
  178. package/src/environment-variables/misc-variables.ts +30 -0
  179. package/src/errors.ts +11 -0
  180. package/src/generate/index.ts +304 -0
  181. package/src/git-client.ts +135 -0
  182. package/src/global-wrangler-config-path.ts +26 -0
  183. package/src/https-options.ts +127 -0
  184. package/src/index.ts +769 -0
  185. package/src/init.ts +1123 -0
  186. package/src/inspect.ts +836 -477
  187. package/src/intl-polyfill.d.ts +139 -0
  188. package/src/is-ci.ts +14 -0
  189. package/src/is-interactive.ts +16 -0
  190. package/src/jest.d.ts +4 -0
  191. package/src/kv/helpers.ts +433 -0
  192. package/src/kv/index.ts +594 -0
  193. package/src/logger.ts +123 -0
  194. package/src/metrics/index.ts +5 -0
  195. package/src/metrics/metrics-config.ts +239 -0
  196. package/src/metrics/metrics-dispatcher.ts +96 -0
  197. package/src/metrics/metrics-usage-headers.ts +24 -0
  198. package/src/metrics/send-event.ts +99 -0
  199. package/src/miniflare-cli/README.md +30 -0
  200. package/src/miniflare-cli/assets.ts +251 -0
  201. package/src/miniflare-cli/index.ts +210 -0
  202. package/src/miniflare-cli/request-context.ts +40 -0
  203. package/src/miniflare-cli/tsconfig.json +9 -0
  204. package/src/miniflare-cli/tsconfig.tsbuildinfo +1 -0
  205. package/src/miniflare-cli/types.ts +11 -0
  206. package/src/module-collection.ts +322 -53
  207. package/src/mtls-certificate/cli.ts +155 -0
  208. package/src/open-in-browser.ts +17 -0
  209. package/src/package-manager.ts +219 -0
  210. package/src/pages/build.ts +423 -0
  211. package/src/pages/buildFunctions.ts +140 -0
  212. package/src/pages/constants.ts +18 -0
  213. package/src/pages/deployment-tails.ts +281 -0
  214. package/src/pages/deployments.tsx +84 -0
  215. package/src/pages/dev.ts +734 -0
  216. package/src/pages/errors.ts +67 -0
  217. package/src/pages/functions/buildPlugin.ts +114 -0
  218. package/src/pages/functions/buildWorker.ts +350 -0
  219. package/src/pages/functions/filepath-routing.test.ts +234 -0
  220. package/src/pages/functions/filepath-routing.ts +189 -0
  221. package/src/pages/functions/identifiers.ts +78 -0
  222. package/src/pages/functions/routes-consolidation.test.ts +250 -0
  223. package/src/pages/functions/routes-consolidation.ts +73 -0
  224. package/src/pages/functions/routes-transformation.test.ts +282 -0
  225. package/src/pages/functions/routes-transformation.ts +115 -0
  226. package/src/pages/functions/routes-validation.test.ts +403 -0
  227. package/src/pages/functions/routes-validation.ts +202 -0
  228. package/src/pages/functions/routes.ts +151 -0
  229. package/src/pages/functions/tsconfig.json +8 -0
  230. package/src/pages/functions/tsconfig.tsbuildinfo +1 -0
  231. package/src/pages/functions.ts +86 -0
  232. package/src/pages/hash.ts +13 -0
  233. package/src/pages/index.ts +102 -0
  234. package/src/pages/projects.tsx +159 -0
  235. package/src/pages/prompt-select-project.tsx +31 -0
  236. package/src/pages/publish.tsx +267 -0
  237. package/src/pages/types.ts +46 -0
  238. package/src/pages/upload.tsx +469 -0
  239. package/src/pages/utils.ts +23 -0
  240. package/src/parse.ts +308 -0
  241. package/src/paths.ts +71 -0
  242. package/src/proxy.ts +652 -252
  243. package/src/publish/index.ts +274 -0
  244. package/src/publish/publish.ts +1067 -0
  245. package/src/pubsub/index.ts +286 -0
  246. package/src/pubsub/pubsub-commands.ts +623 -0
  247. package/src/queues/cli/commands/consumer/add.ts +71 -0
  248. package/src/queues/cli/commands/consumer/index.ts +19 -0
  249. package/src/queues/cli/commands/consumer/remove.ts +31 -0
  250. package/src/queues/cli/commands/create.ts +25 -0
  251. package/src/queues/cli/commands/delete.ts +26 -0
  252. package/src/queues/cli/commands/index.ts +35 -0
  253. package/src/queues/cli/commands/list.ts +25 -0
  254. package/src/queues/client.ts +136 -0
  255. package/src/queues/utils.ts +18 -0
  256. package/src/r2/constants.ts +4 -0
  257. package/src/r2/helpers.ts +132 -0
  258. package/src/r2/index.ts +289 -0
  259. package/src/routes.ts +140 -0
  260. package/src/secret/index.ts +379 -0
  261. package/src/selfsigned.d.ts +29 -0
  262. package/src/sites.ts +484 -0
  263. package/src/tail/createTail.ts +415 -0
  264. package/src/tail/filters.ts +277 -0
  265. package/src/tail/index.ts +211 -0
  266. package/src/tail/printing.ts +132 -0
  267. package/src/traverse-module-graph.ts +54 -0
  268. package/src/tsconfig-sanity.ts +16 -0
  269. package/src/type-generation.ts +187 -0
  270. package/src/update-check.ts +19 -0
  271. package/src/user/access.ts +68 -0
  272. package/src/user/auth-variables.ts +113 -0
  273. package/src/user/choose-account.tsx +39 -0
  274. package/src/user/generate-auth-url.ts +33 -0
  275. package/src/user/generate-random-state.ts +16 -0
  276. package/src/user/index.ts +2 -0
  277. package/src/user/user.ts +1234 -0
  278. package/src/utils/collectKeyValues.ts +14 -0
  279. package/src/utils/render.ts +93 -0
  280. package/src/whoami.ts +135 -0
  281. package/src/worker.ts +294 -0
  282. package/src/yargs-types.ts +37 -0
  283. package/src/zones.ts +191 -0
  284. package/templates/__tests__/pages-dev-util.test.ts +128 -0
  285. package/templates/__tests__/tsconfig-sanity.ts +12 -0
  286. package/templates/__tests__/tsconfig.json +8 -0
  287. package/templates/__tests__/tsconfig.tsbuildinfo +1 -0
  288. package/templates/checked-fetch.js +23 -0
  289. package/templates/d1-beta-facade.js +244 -0
  290. package/templates/facade.d.ts +14 -0
  291. package/templates/first-party-worker-module-facade.ts +19 -0
  292. package/templates/format-dev-errors.ts +34 -0
  293. package/templates/gitignore +172 -0
  294. package/templates/init-tests/test-jest-new-worker.js +23 -0
  295. package/templates/init-tests/test-vitest-new-worker.js +24 -0
  296. package/templates/init-tests/test-vitest-new-worker.ts +25 -0
  297. package/templates/middleware/common.ts +62 -0
  298. package/templates/middleware/loader-modules.ts +84 -0
  299. package/templates/middleware/loader-sw.ts +233 -0
  300. package/templates/middleware/middleware-miniflare3-json-error.ts +32 -0
  301. package/templates/middleware/middleware-pretty-error.ts +40 -0
  302. package/templates/middleware/middleware-scheduled.ts +15 -0
  303. package/templates/new-worker-scheduled.js +17 -0
  304. package/templates/new-worker-scheduled.ts +32 -0
  305. package/templates/new-worker.js +15 -0
  306. package/templates/new-worker.ts +33 -0
  307. package/templates/no-op-worker.js +10 -0
  308. package/templates/pages-dev-pipeline.ts +31 -0
  309. package/templates/pages-dev-util.ts +55 -0
  310. package/templates/pages-shim.ts +12 -0
  311. package/templates/pages-template-plugin.ts +180 -0
  312. package/templates/pages-template-worker.ts +189 -0
  313. package/templates/serve-static-assets.ts +66 -0
  314. package/templates/service-bindings-module-facade.js +55 -0
  315. package/templates/service-bindings-sw-facade.js +42 -0
  316. package/templates/tsconfig-sanity.ts +11 -0
  317. package/templates/tsconfig.init.json +105 -0
  318. package/templates/tsconfig.json +8 -0
  319. package/templates/tsconfig.tsbuildinfo +1 -0
  320. package/wrangler-dist/cli.d.ts +1673 -0
  321. package/wrangler-dist/cli.js +144054 -113972
  322. package/wrangler-dist/wasm-sync.wasm +0 -0
  323. package/pages/functions/buildWorker.ts +0 -62
  324. package/pages/functions/filepath-routing.test.ts +0 -39
  325. package/pages/functions/filepath-routing.ts +0 -221
  326. package/pages/functions/identifiers.ts +0 -78
  327. package/pages/functions/routes.ts +0 -158
  328. package/pages/functions/template-worker.ts +0 -144
  329. package/src/__tests__/mock-cfetch.ts +0 -171
  330. package/src/__tests__/mock-dialogs.ts +0 -65
  331. package/src/__tests__/run-in-tmp.ts +0 -19
  332. package/src/__tests__/run-wrangler.ts +0 -32
  333. package/src/api/form_data.ts +0 -131
  334. package/src/api/preview.ts +0 -128
  335. package/src/api/worker.ts +0 -155
  336. package/src/config.ts +0 -487
  337. package/src/dialogs.tsx +0 -77
  338. package/src/index.tsx +0 -1974
  339. package/src/kv.tsx +0 -267
  340. package/src/pages.tsx +0 -1031
  341. package/src/publish.ts +0 -358
  342. package/src/sites.tsx +0 -114
  343. package/src/tail.tsx +0 -73
  344. package/src/user.tsx +0 -1025
  345. package/static-asset-facade.js +0 -47
  346. package/vendor/@cloudflare/kv-asset-handler/CHANGELOG.md +0 -332
  347. package/vendor/@cloudflare/kv-asset-handler/LICENSE_APACHE +0 -176
  348. package/vendor/@cloudflare/kv-asset-handler/LICENSE_MIT +0 -25
  349. package/vendor/@cloudflare/kv-asset-handler/README.md +0 -245
  350. package/vendor/@cloudflare/kv-asset-handler/dist/index.d.ts +0 -32
  351. package/vendor/@cloudflare/kv-asset-handler/dist/index.js +0 -354
  352. package/vendor/@cloudflare/kv-asset-handler/dist/mocks.d.ts +0 -13
  353. package/vendor/@cloudflare/kv-asset-handler/dist/mocks.js +0 -148
  354. package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.d.ts +0 -1
  355. package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.js +0 -436
  356. package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.d.ts +0 -1
  357. package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.js +0 -40
  358. package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.d.ts +0 -1
  359. package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.js +0 -42
  360. package/vendor/@cloudflare/kv-asset-handler/dist/types.d.ts +0 -26
  361. package/vendor/@cloudflare/kv-asset-handler/dist/types.js +0 -31
  362. package/vendor/@cloudflare/kv-asset-handler/package.json +0 -52
  363. package/vendor/@cloudflare/kv-asset-handler/src/index.ts +0 -296
  364. package/vendor/@cloudflare/kv-asset-handler/src/mocks.ts +0 -136
  365. package/vendor/@cloudflare/kv-asset-handler/src/test/getAssetFromKV.ts +0 -464
  366. package/vendor/@cloudflare/kv-asset-handler/src/test/mapRequestToAsset.ts +0 -33
  367. package/vendor/@cloudflare/kv-asset-handler/src/test/serveSinglePageApp.ts +0 -42
  368. package/vendor/@cloudflare/kv-asset-handler/src/types.ts +0 -39
  369. package/vendor/wrangler-mime/CHANGELOG.md +0 -289
  370. package/vendor/wrangler-mime/LICENSE +0 -21
  371. package/vendor/wrangler-mime/Mime.js +0 -97
  372. package/vendor/wrangler-mime/README.md +0 -187
  373. package/vendor/wrangler-mime/cli.js +0 -46
  374. package/vendor/wrangler-mime/index.js +0 -4
  375. package/vendor/wrangler-mime/lite.js +0 -4
  376. package/vendor/wrangler-mime/package.json +0 -52
  377. package/vendor/wrangler-mime/types/other.js +0 -1
  378. package/vendor/wrangler-mime/types/standard.js +0 -1
  379. package/wrangler-dist/cli.js.map +0 -7
  380. /package/src/__tests__/{clipboardy-mock.js → helpers/clipboardy-mock.js} +0 -0
package/package.json CHANGED
@@ -1,126 +1,200 @@
1
1
  {
2
- "name": "wrangler",
3
- "version": "0.0.0-e6733a3",
4
- "author": "wrangler@cloudflare.com",
5
- "description": "Command-line interface for all things Cloudflare Workers",
6
- "bin": {
7
- "wrangler": "./bin/wrangler.js",
8
- "wrangler2": "./bin/wrangler.js"
9
- },
10
- "license": "MIT OR Apache-2.0",
11
- "bugs": {
12
- "url": "https://github.com/cloudflare/wrangler/issues"
13
- },
14
- "homepage": "https://github.com/cloudflare/wrangler#readme",
15
- "keywords": [
16
- "wrangler",
17
- "cloudflare",
18
- "workers",
19
- "cloudflare workers",
20
- "edge",
21
- "compute",
22
- "serverless",
23
- "serverless application",
24
- "serverless module",
25
- "wasm",
26
- "web",
27
- "assembly",
28
- "webassembly",
29
- "rust",
30
- "emscripten",
31
- "rust",
32
- "typescript",
33
- "graphql",
34
- "router",
35
- "http",
36
- "cli"
37
- ],
38
- "dependencies": {
39
- "esbuild": "0.14.1",
40
- "miniflare": "2.1.0",
41
- "path-to-regexp": "^6.2.0",
42
- "semiver": "^1.1.0"
43
- },
44
- "optionalDependencies": {
45
- "fsevents": "~2.3.2"
46
- },
47
- "devDependencies": {
48
- "@babel/types": "^7.16.0",
49
- "@iarna/toml": "^2.2.5",
50
- "@types/estree": "^0.0.50",
51
- "@types/mime": "^2.0.3",
52
- "@types/react": "^17.0.37",
53
- "@types/serve-static": "^1.13.10",
54
- "@types/signal-exit": "^3.0.1",
55
- "@types/ws": "^8.2.1",
56
- "@types/yargs": "^17.0.7",
57
- "acorn": "^8.6.0",
58
- "acorn-walk": "^8.2.0",
59
- "chokidar": "^3.5.2",
60
- "clipboardy": "^3.0.0",
61
- "command-exists": "^1.2.9",
62
- "devtools-protocol": "^0.0.955664",
63
- "execa": "^6.0.0",
64
- "faye-websocket": "^0.11.4",
65
- "finalhandler": "^1.1.2",
66
- "find-up": "^6.2.0",
67
- "formdata-node": "^4.3.1",
68
- "ink": "^3.2.0",
69
- "ink-select-input": "^4.2.1",
70
- "ink-table": "^3.0.0",
71
- "ink-testing-library": "^2.1.0",
72
- "ink-text-input": "^4.0.2",
73
- "mime": "^3.0.0",
74
- "node-fetch": "^3.1.0",
75
- "open": "^8.4.0",
76
- "react": "^17.0.2",
77
- "react-error-boundary": "^3.1.4",
78
- "serve-static": "^1.14.1",
79
- "signal-exit": "^3.0.6",
80
- "tmp-promise": "^3.0.3",
81
- "undici": "^4.11.1",
82
- "ws": "^8.3.0",
83
- "yargs": "^17.3.0"
84
- },
85
- "files": [
86
- "src",
87
- "bin",
88
- "pages",
89
- "miniflare-config-stubs",
90
- "wrangler-dist",
91
- "static-asset-facade.js",
92
- "vendor",
93
- "import_meta_url.js"
94
- ],
95
- "scripts": {
96
- "clean": "rm -rf wrangler-dist",
97
- "bundle": "node -r esbuild-register scripts/bundle.ts",
98
- "build": "npm run clean && npm run bundle",
99
- "start": "npm run bundle && NODE_OPTIONS=--enable-source-maps ./bin/wrangler.js",
100
- "test": "CF_API_TOKEN=some-api-token CF_ACCOUNT_ID=some-account-id jest --silent=false --verbose=true"
101
- },
102
- "engines": {
103
- "node": ">=16.7.0"
104
- },
105
- "jest": {
106
- "restoreMocks": true,
107
- "testRegex": ".*.(test|spec)\\.[jt]sx?$",
108
- "transformIgnorePatterns": [
109
- "node_modules/(?!node-fetch|fetch-blob|find-up|locate-path|p-locate|p-limit|yocto-queue|path-exists|data-uri-to-buffer|formdata-polyfill|execa|strip-final-newline|npm-run-path|path-key|onetime|mimic-fn|human-signals|is-stream)"
110
- ],
111
- "moduleNameMapper": {
112
- "clipboardy": "<rootDir>/src/__tests__/clipboardy-mock.js"
113
- },
114
- "transform": {
115
- "^.+\\.c?(t|j)sx?$": [
116
- "esbuild-jest",
117
- {
118
- "sourcemap": true
119
- }
120
- ]
121
- },
122
- "setupFilesAfterEnv": [
123
- "<rootDir>/src/__tests__/jest.setup.ts"
124
- ]
125
- }
2
+ "name": "wrangler",
3
+ "version": "0.0.0-e6c71262",
4
+ "description": "Command-line interface for all things Cloudflare Workers",
5
+ "keywords": [
6
+ "wrangler",
7
+ "cloudflare",
8
+ "workers",
9
+ "cloudflare workers",
10
+ "edge",
11
+ "compute",
12
+ "serverless",
13
+ "serverless application",
14
+ "serverless module",
15
+ "wasm",
16
+ "web",
17
+ "assembly",
18
+ "webassembly",
19
+ "rust",
20
+ "emscripten",
21
+ "typescript",
22
+ "graphql",
23
+ "router",
24
+ "http",
25
+ "cli"
26
+ ],
27
+ "homepage": "https://github.com/cloudflare/workers-sdk#readme",
28
+ "bugs": {
29
+ "url": "https://github.com/cloudflare/workers-sdk/issues"
30
+ },
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "https://github.com/cloudflare/workers-sdk.git",
34
+ "directory": "packages/wrangler"
35
+ },
36
+ "license": "MIT OR Apache-2.0",
37
+ "author": "wrangler@cloudflare.com",
38
+ "main": "wrangler-dist/cli.js",
39
+ "types": "wrangler-dist/cli.d.ts",
40
+ "bin": {
41
+ "wrangler": "./bin/wrangler.js",
42
+ "wrangler2": "./bin/wrangler.js"
43
+ },
44
+ "files": [
45
+ "src",
46
+ "bin",
47
+ "miniflare-config-stubs",
48
+ "miniflare-dist",
49
+ "wrangler-dist",
50
+ "templates",
51
+ "vendor",
52
+ "import_meta_url.js",
53
+ "kv-asset-handler.js",
54
+ "Cloudflare_CA.pem"
55
+ ],
56
+ "scripts": {
57
+ "assert-git-version": "node -r esbuild-register scripts/assert-git-version.ts",
58
+ "build": "npm run clean && npm run bundle && npm run emit-types",
59
+ "bundle": "node -r esbuild-register scripts/bundle.ts",
60
+ "check:type": "node -r esbuild-register scripts/tsc-all.ts",
61
+ "clean": "rimraf wrangler-dist miniflare-dist emitted-types",
62
+ "dev": "npm run clean && concurrently -c black,blue --kill-others-on-fail false 'npm run bundle -- --watch' 'npm run check:type -- --watch --preserveWatchOutput'",
63
+ "emit-types": "tsc -p tsconfig.emit.json && node -r esbuild-register scripts/emit-types.ts",
64
+ "prepublishOnly": "SOURCEMAPS=false npm run build",
65
+ "start": "npm run bundle && cross-env NODE_OPTIONS=--enable-source-maps ./bin/wrangler.js",
66
+ "test": "npm run assert-git-version && jest",
67
+ "test-watch": "npm run test -- --runInBand --testTimeout=50000 --watch",
68
+ "test:ci": "npm run test -- --coverage",
69
+ "test:debug": "npm run test -- --silent=false --verbose=true",
70
+ "test:e2e": "vitest --no-threads ./e2e"
71
+ },
72
+ "jest": {
73
+ "coverageReporters": [
74
+ "json",
75
+ "html",
76
+ "text",
77
+ "cobertura"
78
+ ],
79
+ "moduleNameMapper": {
80
+ "clipboardy": "<rootDir>/src/__tests__/helpers/clipboardy-mock.js",
81
+ "miniflare/cli": "<rootDir>/../../node_modules/miniflare/dist/src/cli.js"
82
+ },
83
+ "restoreMocks": true,
84
+ "setupFilesAfterEnv": [
85
+ "<rootDir>/src/__tests__/jest.setup.ts"
86
+ ],
87
+ "testRegex": "src/__tests__/.*\\.(test|spec)\\.[jt]sx?$",
88
+ "testTimeout": 30000,
89
+ "transform": {
90
+ "^.+\\.c?(t|j)sx?$": [
91
+ "esbuild-jest",
92
+ {
93
+ "sourcemap": true
94
+ }
95
+ ]
96
+ },
97
+ "transformIgnorePatterns": [
98
+ "node_modules/(?!find-up|locate-path|p-locate|p-limit|p-timeout|p-queue|yocto-queue|path-exists|execa|strip-final-newline|npm-run-path|path-key|onetime|mimic-fn|human-signals|is-stream|get-port|supports-color|pretty-bytes|npx-import)"
99
+ ]
100
+ },
101
+ "dependencies": {
102
+ "@cloudflare/kv-asset-handler": "^0.2.0",
103
+ "@esbuild-plugins/node-globals-polyfill": "^0.1.1",
104
+ "@esbuild-plugins/node-modules-polyfill": "^0.1.4",
105
+ "@miniflare/core": "2.14.0",
106
+ "@miniflare/d1": "2.14.0",
107
+ "@miniflare/durable-objects": "2.14.0",
108
+ "blake3-wasm": "^2.1.5",
109
+ "chokidar": "^3.5.3",
110
+ "esbuild": "0.16.3",
111
+ "miniflare": "2.14.0",
112
+ "nanoid": "^3.3.3",
113
+ "path-to-regexp": "^6.2.0",
114
+ "selfsigned": "^2.0.1",
115
+ "source-map": "^0.7.4",
116
+ "xxhash-wasm": "^1.0.1"
117
+ },
118
+ "devDependencies": {
119
+ "@cloudflare/types": "^6.18.4",
120
+ "@cloudflare/workers-types": "^4.20221111.1",
121
+ "@iarna/toml": "^3.0.0",
122
+ "@microsoft/api-extractor": "^7.28.3",
123
+ "@miniflare/tre": "3.0.0-next.13",
124
+ "@types/better-sqlite3": "^7.6.0",
125
+ "@types/busboy": "^1.5.0",
126
+ "@types/command-exists": "^1.2.0",
127
+ "@types/express": "^4.17.13",
128
+ "@types/glob-to-regexp": "0.4.1",
129
+ "@types/javascript-time-ago": "^2.0.3",
130
+ "@types/mime": "^2.0.3",
131
+ "@types/prompts": "^2.0.14",
132
+ "@types/react": "^17.0.37",
133
+ "@types/serve-static": "^1.13.10",
134
+ "@types/signal-exit": "^3.0.1",
135
+ "@types/supports-color": "^8.1.1",
136
+ "@types/ws": "^8.5.3",
137
+ "@types/yargs": "^17.0.10",
138
+ "@webcontainer/env": "^1.0.1",
139
+ "body-parser": "^1.20.0",
140
+ "chalk": "^2.4.2",
141
+ "cli-table3": "^0.6.3",
142
+ "clipboardy": "^3.0.0",
143
+ "cmd-shim": "^4.1.0",
144
+ "command-exists": "^1.2.9",
145
+ "concurrently": "^7.2.2",
146
+ "devtools-protocol": "^0.0.955664",
147
+ "dotenv": "^16.0.0",
148
+ "execa": "^6.1.0",
149
+ "express": "^4.18.1",
150
+ "finalhandler": "^1.2.0",
151
+ "find-up": "^6.3.0",
152
+ "get-port": "^6.1.2",
153
+ "glob-to-regexp": "0.4.1",
154
+ "http-terminator": "^3.2.0",
155
+ "ignore": "^5.2.0",
156
+ "ink": "^3.2.0",
157
+ "ink-select-input": "^4.2.1",
158
+ "ink-spinner": "^4.0.3",
159
+ "ink-table": "^3.0.0",
160
+ "ink-testing-library": "^2.1.0",
161
+ "ink-text-input": "^4.0.3",
162
+ "is-ci": "^3.0.1",
163
+ "javascript-time-ago": "^2.5.4",
164
+ "jest-fetch-mock": "^3.0.3",
165
+ "jest-websocket-mock": "^2.3.0",
166
+ "mime": "^3.0.0",
167
+ "minimatch": "^5.1.0",
168
+ "msw": "^0.49.1",
169
+ "npx-import": "^1.1.3",
170
+ "open": "^8.4.0",
171
+ "p-queue": "^7.2.0",
172
+ "pretty-bytes": "^6.0.0",
173
+ "prompts": "^2.4.2",
174
+ "react": "^17.0.2",
175
+ "react-error-boundary": "^3.1.4",
176
+ "remove-accents-esm": "^0.0.1",
177
+ "semiver": "^1.1.0",
178
+ "serve-static": "^1.15.0",
179
+ "shellac": "^0.7.3",
180
+ "signal-exit": "^3.0.7",
181
+ "strip-ansi": "^7.0.1",
182
+ "supports-color": "^9.2.2",
183
+ "timeago.js": "^4.0.2",
184
+ "tmp-promise": "^3.0.3",
185
+ "ts-dedent": "^2.2.0",
186
+ "undici": "5.20.0",
187
+ "update-check": "^1.5.4",
188
+ "vitest": "^0.29.2",
189
+ "ws": "^8.5.0",
190
+ "xdg-app-paths": "^7.3.0",
191
+ "yargs": "^17.4.1",
192
+ "yoga-layout": "file:../../vendor/yoga-layout-2.0.0-beta.1.tgz"
193
+ },
194
+ "optionalDependencies": {
195
+ "fsevents": "~2.3.2"
196
+ },
197
+ "engines": {
198
+ "node": ">=16.13.0"
199
+ }
126
200
  }
@@ -0,0 +1,25 @@
1
+ import { domainUsesAccess, getAccessToken } from "../user/access";
2
+ import { msw, mswAccessHandlers } from "./helpers/msw";
3
+
4
+ describe("access", () => {
5
+ beforeEach(() => {
6
+ msw.use(...mswAccessHandlers);
7
+ });
8
+
9
+ describe("basic", () => {
10
+ it("should correctly detect an access protected domain", async () => {
11
+ expect(await domainUsesAccess("access-protected.com")).toBeTruthy();
12
+ expect(await domainUsesAccess("not-access-protected.com")).toBeFalsy();
13
+ });
14
+ it("should not fail without cloudflared installed", async () => {
15
+ expect(await getAccessToken("not-access-protected.com")).toBeFalsy();
16
+ });
17
+ it("should error without cloudflared installed on an access protected domain", async () => {
18
+ await expect(getAccessToken("access-protected.com")).rejects.toEqual(
19
+ new Error(
20
+ "To use Wrangler with Cloudflare Access, please install `cloudflared` from https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/installation"
21
+ )
22
+ );
23
+ });
24
+ });
25
+ });
@@ -0,0 +1,238 @@
1
+ import * as fs from "node:fs";
2
+ import { Request } from "undici";
3
+ import { unstable_dev } from "../api";
4
+ import { runInTempDir } from "./helpers/run-in-tmp";
5
+
6
+ jest.unmock("undici");
7
+
8
+ describe("unstable_dev", () => {
9
+ it("should return Hello World", async () => {
10
+ const worker = await unstable_dev(
11
+ "src/__tests__/helpers/worker-scripts/hello-world-worker.js",
12
+ {
13
+ experimental: {
14
+ disableExperimentalWarning: true,
15
+ disableDevRegistry: true,
16
+ },
17
+ }
18
+ );
19
+ const resp = await worker.fetch();
20
+ if (resp) {
21
+ const text = await resp.text();
22
+ expect(text).toMatchInlineSnapshot(`"Hello World!"`);
23
+ }
24
+ await worker.stop();
25
+ });
26
+
27
+ it("should return the port that the server started on (1)", async () => {
28
+ const worker = await unstable_dev(
29
+ "src/__tests__/helpers/worker-scripts/hello-world-worker.js",
30
+ {
31
+ experimental: {
32
+ disableExperimentalWarning: true,
33
+ disableDevRegistry: true,
34
+ },
35
+ }
36
+ );
37
+ expect(worker.port).toBeGreaterThan(0);
38
+ await worker.stop();
39
+ });
40
+
41
+ it("should return the port that the server started on (2)", async () => {
42
+ const worker = await unstable_dev(
43
+ "src/__tests__/helpers/worker-scripts/hello-world-worker.js",
44
+ {
45
+ port: 9191,
46
+ experimental: {
47
+ disableExperimentalWarning: true,
48
+ disableDevRegistry: true,
49
+ },
50
+ }
51
+ );
52
+ expect(worker.port).toBe(9191);
53
+ await worker.stop();
54
+ });
55
+ });
56
+
57
+ describe("unstable dev fetch input protocol", () => {
58
+ it("should use http localProtocol", async () => {
59
+ const worker = await unstable_dev(
60
+ "src/__tests__/helpers/worker-scripts/hello-world-worker.js",
61
+ {
62
+ localProtocol: "http",
63
+ experimental: {
64
+ disableExperimentalWarning: true,
65
+ disableDevRegistry: true,
66
+ },
67
+ }
68
+ );
69
+ const res = await worker.fetch();
70
+ if (res) {
71
+ const text = await res.text();
72
+ expect(text).toMatchInlineSnapshot(`"Hello World!"`);
73
+ }
74
+ await worker.stop();
75
+ });
76
+
77
+ it("should use undefined localProtocol", async () => {
78
+ const worker = await unstable_dev(
79
+ "src/__tests__/helpers/worker-scripts/hello-world-worker.js",
80
+ {
81
+ localProtocol: undefined,
82
+ experimental: {
83
+ disableExperimentalWarning: true,
84
+ disableDevRegistry: true,
85
+ },
86
+ }
87
+ );
88
+ const res = await worker.fetch();
89
+ if (res) {
90
+ const text = await res.text();
91
+ expect(text).toMatchInlineSnapshot(`"Hello World!"`);
92
+ }
93
+ await worker.stop();
94
+ });
95
+ });
96
+
97
+ describe("unstable dev fetch input parsing", () => {
98
+ runInTempDir();
99
+
100
+ it("should pass in a request object unchanged", async () => {
101
+ const scriptContent = `
102
+ export default {
103
+ fetch(request, env, ctx) {
104
+ const url = new URL(request.url);
105
+ if (url.pathname === "/test") {
106
+ if (request.method === "POST") {
107
+ return new Response("requestPOST");
108
+ }
109
+ return new Response("requestGET");
110
+ }
111
+ return new Response('Hello world');
112
+ }
113
+ };
114
+ `;
115
+ fs.writeFileSync("index.js", scriptContent);
116
+ const port = 21213;
117
+ const worker = await unstable_dev("index.js", {
118
+ port,
119
+ experimental: {
120
+ disableExperimentalWarning: true,
121
+ disableDevRegistry: true,
122
+ },
123
+ });
124
+ const req = new Request("http://0.0.0.0:21213/test", {
125
+ method: "POST",
126
+ });
127
+ const resp = await worker.fetch(req);
128
+ let text;
129
+ if (resp) text = await resp.text();
130
+ expect(text).toMatchInlineSnapshot(`"requestPOST"`);
131
+ await worker.stop();
132
+ });
133
+
134
+ it("should strip back to pathname for URL objects", async () => {
135
+ const scriptContent = `
136
+ export default {
137
+ fetch(request, env, ctx) {
138
+ const url = new URL(request.url);
139
+ if (url.pathname === "/test") {
140
+ return new Response("request");
141
+ }
142
+ return new Response('Hello world');
143
+ }
144
+ };
145
+ `;
146
+ fs.writeFileSync("index.js", scriptContent);
147
+ const worker = await unstable_dev("index.js", {
148
+ experimental: {
149
+ disableExperimentalWarning: true,
150
+ disableDevRegistry: true,
151
+ },
152
+ });
153
+ const url = new URL("http://localhost:80/test");
154
+ const resp = await worker.fetch(url);
155
+ let text;
156
+ if (resp) text = await resp.text();
157
+ expect(text).toMatchInlineSnapshot(`"request"`);
158
+ await worker.stop();
159
+ });
160
+
161
+ it("should allow full url passed in string, and stripped back to pathname", async () => {
162
+ const scriptContent = `
163
+ export default {
164
+ fetch(request, env, ctx) {
165
+ const url = new URL(request.url);
166
+ if (url.pathname === "/test") {
167
+ return new Response("request");
168
+ }
169
+ return new Response('Hello world');
170
+ }
171
+ };
172
+ `;
173
+ fs.writeFileSync("index.js", scriptContent);
174
+ const worker = await unstable_dev("index.js", {
175
+ experimental: {
176
+ disableExperimentalWarning: true,
177
+ disableDevRegistry: true,
178
+ },
179
+ });
180
+ const resp = await worker.fetch("http://example.com/test");
181
+ let text;
182
+ if (resp) text = await resp.text();
183
+ expect(text).toMatchInlineSnapshot(`"request"`);
184
+ await worker.stop();
185
+ });
186
+
187
+ it("should allow pathname to be passed in", async () => {
188
+ const scriptContent = `
189
+ export default {
190
+ fetch(request, env, ctx) {
191
+ const url = new URL(request.url);
192
+ if (url.pathname === "/test") {
193
+ return new Response("request");
194
+ }
195
+ return new Response('Hello world');
196
+ }
197
+ };
198
+ `;
199
+ fs.writeFileSync("index.js", scriptContent);
200
+ const worker = await unstable_dev("index.js", {
201
+ experimental: {
202
+ disableExperimentalWarning: true,
203
+ disableDevRegistry: true,
204
+ },
205
+ });
206
+ const resp = await worker.fetch("/test");
207
+ let text;
208
+ if (resp) text = await resp.text();
209
+ expect(text).toMatchInlineSnapshot(`"request"`);
210
+ await worker.stop();
211
+ });
212
+
213
+ it("should allow no input be passed in", async () => {
214
+ const scriptContent = `
215
+ export default {
216
+ fetch(request, env, ctx) {
217
+ const url = new URL(request.url);
218
+ if (url.pathname === "/test") {
219
+ return new Response("request");
220
+ }
221
+ return new Response('Hello world');
222
+ }
223
+ };
224
+ `;
225
+ fs.writeFileSync("index.js", scriptContent);
226
+ const worker = await unstable_dev("index.js", {
227
+ experimental: {
228
+ disableExperimentalWarning: true,
229
+ disableDevRegistry: true,
230
+ },
231
+ });
232
+ const resp = await worker.fetch("");
233
+ let text;
234
+ if (resp) text = await resp.text();
235
+ expect(text).toMatchInlineSnapshot(`"Hello world"`);
236
+ await worker.stop();
237
+ });
238
+ });