devflare 1.0.0-next.3 → 1.0.0-next.30

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 (537) hide show
  1. package/LLM.md +15961 -1751
  2. package/README.md +389 -605
  3. package/bin/devflare.js +24 -14
  4. package/dist/account-fvf5gxc9.js +475 -0
  5. package/dist/api-2n6dd2ws.js +33 -0
  6. package/dist/bridge/client.d.ts +48 -6
  7. package/dist/bridge/client.d.ts.map +1 -1
  8. package/dist/bridge/gateway-runtime.d.ts +8 -0
  9. package/dist/bridge/gateway-runtime.d.ts.map +1 -0
  10. package/dist/bridge/index.d.ts +3 -3
  11. package/dist/bridge/index.d.ts.map +1 -1
  12. package/dist/bridge/log.d.ts +5 -0
  13. package/dist/bridge/log.d.ts.map +1 -0
  14. package/dist/bridge/miniflare.d.ts +74 -1
  15. package/dist/bridge/miniflare.d.ts.map +1 -1
  16. package/dist/bridge/proxy.d.ts +11 -10
  17. package/dist/bridge/proxy.d.ts.map +1 -1
  18. package/dist/bridge/server.d.ts +2 -1
  19. package/dist/bridge/server.d.ts.map +1 -1
  20. package/dist/bridge/v2/body-streams.d.ts +53 -0
  21. package/dist/bridge/v2/body-streams.d.ts.map +1 -0
  22. package/dist/bridge/v2/codec.d.ts +106 -0
  23. package/dist/bridge/v2/codec.d.ts.map +1 -0
  24. package/dist/bridge/v2/control-messages.d.ts +51 -0
  25. package/dist/bridge/v2/control-messages.d.ts.map +1 -0
  26. package/dist/bridge/v2/frames.d.ts +109 -0
  27. package/dist/bridge/v2/frames.d.ts.map +1 -0
  28. package/dist/bridge/v2/index.d.ts +11 -0
  29. package/dist/bridge/v2/index.d.ts.map +1 -0
  30. package/dist/bridge/v2/serialization.d.ts +48 -0
  31. package/dist/bridge/v2/serialization.d.ts.map +1 -0
  32. package/dist/bridge/v2/transport.d.ts +31 -0
  33. package/dist/bridge/v2/transport.d.ts.map +1 -0
  34. package/dist/bridge/v2/value-codec.d.ts +61 -0
  35. package/dist/bridge/v2/value-codec.d.ts.map +1 -0
  36. package/dist/bridge/{serialization.d.ts → v2/value-serialization.d.ts} +40 -18
  37. package/dist/bridge/v2/value-serialization.d.ts.map +1 -0
  38. package/dist/bridge/{protocol.d.ts → v2/wire.d.ts} +28 -4
  39. package/dist/bridge/v2/wire.d.ts.map +1 -0
  40. package/dist/bridge/v2/ws-relay.d.ts +53 -0
  41. package/dist/bridge/v2/ws-relay.d.ts.map +1 -0
  42. package/dist/browser-shim/handler.d.ts +1 -1
  43. package/dist/browser-shim/handler.d.ts.map +1 -1
  44. package/dist/browser-shim/server.d.ts +63 -0
  45. package/dist/browser-shim/server.d.ts.map +1 -1
  46. package/dist/browser.d.ts +4585 -0
  47. package/dist/browser.d.ts.map +1 -0
  48. package/dist/browser.js +147 -0
  49. package/dist/build-x1fhfsgs.js +54 -0
  50. package/dist/bundler/defaults.d.ts +23 -0
  51. package/dist/bundler/defaults.d.ts.map +1 -0
  52. package/dist/bundler/do-bundler.d.ts +7 -0
  53. package/dist/bundler/do-bundler.d.ts.map +1 -1
  54. package/dist/bundler/index.d.ts +2 -0
  55. package/dist/bundler/index.d.ts.map +1 -1
  56. package/dist/bundler/rolldown-shared.d.ts +53 -0
  57. package/dist/bundler/rolldown-shared.d.ts.map +1 -0
  58. package/dist/bundler/worker-bundler.d.ts +13 -0
  59. package/dist/bundler/worker-bundler.d.ts.map +1 -0
  60. package/dist/bundler/worker-compat.d.ts +4 -0
  61. package/dist/bundler/worker-compat.d.ts.map +1 -0
  62. package/dist/cli/build-manifest.d.ts +66 -0
  63. package/dist/cli/build-manifest.d.ts.map +1 -0
  64. package/dist/cli/command-utils.d.ts +18 -0
  65. package/dist/cli/command-utils.d.ts.map +1 -0
  66. package/dist/cli/commands/account.d.ts +1 -1
  67. package/dist/cli/commands/account.d.ts.map +1 -1
  68. package/dist/cli/commands/build-artifacts.d.ts +40 -0
  69. package/dist/cli/commands/build-artifacts.d.ts.map +1 -0
  70. package/dist/cli/commands/build.d.ts.map +1 -1
  71. package/dist/cli/commands/config.d.ts +4 -0
  72. package/dist/cli/commands/config.d.ts.map +1 -0
  73. package/dist/cli/commands/deploy/metadata.d.ts +18 -0
  74. package/dist/cli/commands/deploy/metadata.d.ts.map +1 -0
  75. package/dist/cli/commands/deploy/prepare.d.ts +23 -0
  76. package/dist/cli/commands/deploy/prepare.d.ts.map +1 -0
  77. package/dist/cli/commands/deploy/runtime.d.ts +4 -0
  78. package/dist/cli/commands/deploy/runtime.d.ts.map +1 -0
  79. package/dist/cli/commands/deploy/verification.d.ts +36 -0
  80. package/dist/cli/commands/deploy/verification.d.ts.map +1 -0
  81. package/dist/cli/commands/deploy.d.ts +2 -2
  82. package/dist/cli/commands/deploy.d.ts.map +1 -1
  83. package/dist/cli/commands/dev.d.ts +8 -0
  84. package/dist/cli/commands/dev.d.ts.map +1 -1
  85. package/dist/cli/commands/doctor.d.ts.map +1 -1
  86. package/dist/cli/commands/init.d.ts.map +1 -1
  87. package/dist/cli/commands/login.d.ts +4 -0
  88. package/dist/cli/commands/login.d.ts.map +1 -0
  89. package/dist/cli/commands/previews-support/cleanup.d.ts +9 -0
  90. package/dist/cli/commands/previews-support/cleanup.d.ts.map +1 -0
  91. package/dist/cli/commands/previews-support/family.d.ts +10 -0
  92. package/dist/cli/commands/previews-support/family.d.ts.map +1 -0
  93. package/dist/cli/commands/previews-support/render.d.ts +8 -0
  94. package/dist/cli/commands/previews-support/render.d.ts.map +1 -0
  95. package/dist/cli/commands/previews-support/theme.d.ts +10 -0
  96. package/dist/cli/commands/previews-support/theme.d.ts.map +1 -0
  97. package/dist/cli/commands/previews-support/types.d.ts +70 -0
  98. package/dist/cli/commands/previews-support/types.d.ts.map +1 -0
  99. package/dist/cli/commands/previews.d.ts +4 -0
  100. package/dist/cli/commands/previews.d.ts.map +1 -0
  101. package/dist/cli/commands/productions.d.ts +4 -0
  102. package/dist/cli/commands/productions.d.ts.map +1 -0
  103. package/dist/cli/commands/secrets.d.ts +4 -0
  104. package/dist/cli/commands/secrets.d.ts.map +1 -0
  105. package/dist/cli/commands/token.d.ts +4 -0
  106. package/dist/cli/commands/token.d.ts.map +1 -0
  107. package/dist/cli/commands/type-generation/discovery.d.ts +7 -0
  108. package/dist/cli/commands/type-generation/discovery.d.ts.map +1 -0
  109. package/dist/cli/commands/type-generation/generator.d.ts +112 -0
  110. package/dist/cli/commands/type-generation/generator.d.ts.map +1 -0
  111. package/dist/cli/commands/type-generation/models.d.ts +27 -0
  112. package/dist/cli/commands/type-generation/models.d.ts.map +1 -0
  113. package/dist/cli/commands/types.d.ts.map +1 -1
  114. package/dist/cli/commands/worker.d.ts +4 -0
  115. package/dist/cli/commands/worker.d.ts.map +1 -0
  116. package/dist/cli/config-path.d.ts +6 -0
  117. package/dist/cli/config-path.d.ts.map +1 -0
  118. package/dist/cli/dependencies.d.ts +1 -0
  119. package/dist/cli/dependencies.d.ts.map +1 -1
  120. package/dist/cli/deploy-strategy.d.ts +17 -0
  121. package/dist/cli/deploy-strategy.d.ts.map +1 -0
  122. package/dist/cli/deploy-target.d.ts +17 -0
  123. package/dist/cli/deploy-target.d.ts.map +1 -0
  124. package/dist/cli/generated-artifacts.d.ts +12 -0
  125. package/dist/cli/generated-artifacts.d.ts.map +1 -0
  126. package/dist/cli/help-pages/pages/account.d.ts +3 -0
  127. package/dist/cli/help-pages/pages/account.d.ts.map +1 -0
  128. package/dist/cli/help-pages/pages/core.d.ts +4 -0
  129. package/dist/cli/help-pages/pages/core.d.ts.map +1 -0
  130. package/dist/cli/help-pages/pages/index.d.ts +3 -0
  131. package/dist/cli/help-pages/pages/index.d.ts.map +1 -0
  132. package/dist/cli/help-pages/pages/misc.d.ts +3 -0
  133. package/dist/cli/help-pages/pages/misc.d.ts.map +1 -0
  134. package/dist/cli/help-pages/pages/previews.d.ts +3 -0
  135. package/dist/cli/help-pages/pages/previews.d.ts.map +1 -0
  136. package/dist/cli/help-pages/pages/productions.d.ts +3 -0
  137. package/dist/cli/help-pages/pages/productions.d.ts.map +1 -0
  138. package/dist/cli/help-pages/render.d.ts +12 -0
  139. package/dist/cli/help-pages/render.d.ts.map +1 -0
  140. package/dist/cli/help-pages/shared.d.ts +15 -0
  141. package/dist/cli/help-pages/shared.d.ts.map +1 -0
  142. package/dist/cli/help-pages/types.d.ts +23 -0
  143. package/dist/cli/help-pages/types.d.ts.map +1 -0
  144. package/dist/cli/help.d.ts +6 -0
  145. package/dist/cli/help.d.ts.map +1 -0
  146. package/dist/cli/index.d.ts +1 -0
  147. package/dist/cli/index.d.ts.map +1 -1
  148. package/dist/cli/index.js +12 -0
  149. package/dist/cli/package-metadata.d.ts +16 -0
  150. package/dist/cli/package-metadata.d.ts.map +1 -0
  151. package/dist/cli/preview-bindings.d.ts +49 -0
  152. package/dist/cli/preview-bindings.d.ts.map +1 -0
  153. package/dist/cli/preview.d.ts +10 -0
  154. package/dist/cli/preview.d.ts.map +1 -0
  155. package/dist/cli/ui.d.ts +37 -0
  156. package/dist/cli/ui.d.ts.map +1 -0
  157. package/dist/cli/workspace-build-guard.d.ts +14 -0
  158. package/dist/cli/workspace-build-guard.d.ts.map +1 -0
  159. package/dist/cloudflare/account-core.d.ts +6 -0
  160. package/dist/cloudflare/account-core.d.ts.map +1 -0
  161. package/dist/cloudflare/account-resources.d.ts +40 -0
  162. package/dist/cloudflare/account-resources.d.ts.map +1 -0
  163. package/dist/cloudflare/account-status.d.ts +11 -0
  164. package/dist/cloudflare/account-status.d.ts.map +1 -0
  165. package/dist/cloudflare/account-workers.d.ts +14 -0
  166. package/dist/cloudflare/account-workers.d.ts.map +1 -0
  167. package/dist/cloudflare/account.d.ts +7 -64
  168. package/dist/cloudflare/account.d.ts.map +1 -1
  169. package/dist/cloudflare/api.d.ts +71 -3
  170. package/dist/cloudflare/api.d.ts.map +1 -1
  171. package/dist/cloudflare/auth.d.ts.map +1 -1
  172. package/dist/cloudflare/index.d.ts +57 -2
  173. package/dist/cloudflare/index.d.ts.map +1 -1
  174. package/dist/cloudflare/index.js +49 -2
  175. package/dist/cloudflare/known-permission-group-ids.generated.d.ts +10 -0
  176. package/dist/cloudflare/known-permission-group-ids.generated.d.ts.map +1 -0
  177. package/dist/cloudflare/kv-namespace.d.ts +4 -0
  178. package/dist/cloudflare/kv-namespace.d.ts.map +1 -0
  179. package/dist/cloudflare/preferences.d.ts +7 -0
  180. package/dist/cloudflare/preferences.d.ts.map +1 -1
  181. package/dist/cloudflare/preview-registry-cache.d.ts +6 -0
  182. package/dist/cloudflare/preview-registry-cache.d.ts.map +1 -0
  183. package/dist/cloudflare/preview-registry-inference.d.ts +14 -0
  184. package/dist/cloudflare/preview-registry-inference.d.ts.map +1 -0
  185. package/dist/cloudflare/preview-registry-records.d.ts +4 -0
  186. package/dist/cloudflare/preview-registry-records.d.ts.map +1 -0
  187. package/dist/cloudflare/preview-registry-shape.d.ts +47 -0
  188. package/dist/cloudflare/preview-registry-shape.d.ts.map +1 -0
  189. package/dist/cloudflare/preview-registry-store.d.ts +14 -0
  190. package/dist/cloudflare/preview-registry-store.d.ts.map +1 -0
  191. package/dist/cloudflare/preview-registry-transport.d.ts +4 -0
  192. package/dist/cloudflare/preview-registry-transport.d.ts.map +1 -0
  193. package/dist/cloudflare/preview-registry-types.d.ts +103 -0
  194. package/dist/cloudflare/preview-registry-types.d.ts.map +1 -0
  195. package/dist/cloudflare/preview-registry.d.ts +42 -0
  196. package/dist/cloudflare/preview-registry.d.ts.map +1 -0
  197. package/dist/cloudflare/preview-urls.d.ts +3 -0
  198. package/dist/cloudflare/preview-urls.d.ts.map +1 -0
  199. package/dist/cloudflare/registry-schema.d.ts +253 -0
  200. package/dist/cloudflare/registry-schema.d.ts.map +1 -0
  201. package/dist/cloudflare/tokens.d.ts +44 -0
  202. package/dist/cloudflare/tokens.d.ts.map +1 -0
  203. package/dist/cloudflare/types.d.ts +124 -7
  204. package/dist/cloudflare/types.d.ts.map +1 -1
  205. package/dist/cloudflare/usage.d.ts +30 -2
  206. package/dist/cloudflare/usage.d.ts.map +1 -1
  207. package/dist/config/binding-resolution-helpers.d.ts +41 -0
  208. package/dist/config/binding-resolution-helpers.d.ts.map +1 -0
  209. package/dist/config/compatibility.d.ts +3 -0
  210. package/dist/config/compatibility.d.ts.map +1 -0
  211. package/dist/config/compiler/bindings.d.ts +14 -0
  212. package/dist/config/compiler/bindings.d.ts.map +1 -0
  213. package/dist/config/compiler/core-helpers.d.ts +6 -0
  214. package/dist/config/compiler/core-helpers.d.ts.map +1 -0
  215. package/dist/config/compiler/do-workers.d.ts +34 -0
  216. package/dist/config/compiler/do-workers.d.ts.map +1 -0
  217. package/dist/config/compiler/paths.d.ts +18 -0
  218. package/dist/config/compiler/paths.d.ts.map +1 -0
  219. package/dist/config/compiler/types.d.ts +267 -0
  220. package/dist/config/compiler/types.d.ts.map +1 -0
  221. package/dist/config/compiler.d.ts +22 -134
  222. package/dist/config/compiler.d.ts.map +1 -1
  223. package/dist/config/define.d.ts +7 -4
  224. package/dist/config/define.d.ts.map +1 -1
  225. package/dist/config/deploy-resources.d.ts +58 -0
  226. package/dist/config/deploy-resources.d.ts.map +1 -0
  227. package/dist/config/env-vars.d.ts +309 -0
  228. package/dist/config/env-vars.d.ts.map +1 -0
  229. package/dist/config/framework-providers.d.ts +9 -0
  230. package/dist/config/framework-providers.d.ts.map +1 -0
  231. package/dist/config/index.d.ts +12 -5
  232. package/dist/config/index.d.ts.map +1 -1
  233. package/dist/config/loader.d.ts +1 -0
  234. package/dist/config/loader.d.ts.map +1 -1
  235. package/dist/config/local-dev-vars.d.ts +15 -0
  236. package/dist/config/local-dev-vars.d.ts.map +1 -0
  237. package/dist/config/preview-resources.d.ts +83 -0
  238. package/dist/config/preview-resources.d.ts.map +1 -0
  239. package/dist/config/preview.d.ts +31 -0
  240. package/dist/config/preview.d.ts.map +1 -0
  241. package/dist/config/ref.d.ts +14 -23
  242. package/dist/config/ref.d.ts.map +1 -1
  243. package/dist/config/resolve-phased.d.ts +72 -0
  244. package/dist/config/resolve-phased.d.ts.map +1 -0
  245. package/dist/config/resolve.d.ts +11 -0
  246. package/dist/config/resolve.d.ts.map +1 -0
  247. package/dist/config/resource-resolution.d.ts +80 -0
  248. package/dist/config/resource-resolution.d.ts.map +1 -0
  249. package/dist/config/schema-bindings.d.ts +1495 -0
  250. package/dist/config/schema-bindings.d.ts.map +1 -0
  251. package/dist/config/schema-build.d.ts +67 -0
  252. package/dist/config/schema-build.d.ts.map +1 -0
  253. package/dist/config/schema-env.d.ts +3005 -0
  254. package/dist/config/schema-env.d.ts.map +1 -0
  255. package/dist/config/schema-normalization.d.ts +184 -0
  256. package/dist/config/schema-normalization.d.ts.map +1 -0
  257. package/dist/config/schema-runtime.d.ts +500 -0
  258. package/dist/config/schema-runtime.d.ts.map +1 -0
  259. package/dist/config/schema-types-bindings-platform.d.ts +378 -0
  260. package/dist/config/schema-types-bindings-platform.d.ts.map +1 -0
  261. package/dist/config/schema-types-bindings-resources.d.ts +551 -0
  262. package/dist/config/schema-types-bindings-resources.d.ts.map +1 -0
  263. package/dist/config/schema-types-bindings.d.ts +254 -0
  264. package/dist/config/schema-types-bindings.d.ts.map +1 -0
  265. package/dist/config/schema-types-build.d.ts +86 -0
  266. package/dist/config/schema-types-build.d.ts.map +1 -0
  267. package/dist/config/schema-types-runtime.d.ts +917 -0
  268. package/dist/config/schema-types-runtime.d.ts.map +1 -0
  269. package/dist/config/schema-types.d.ts +390 -0
  270. package/dist/config/schema-types.d.ts.map +1 -0
  271. package/dist/config/schema.d.ts +4495 -2214
  272. package/dist/config/schema.d.ts.map +1 -1
  273. package/dist/config/service-bindings-validation.d.ts +36 -0
  274. package/dist/config/service-bindings-validation.d.ts.map +1 -0
  275. package/dist/config-2d6x21jn.js +105 -0
  276. package/dist/config-entry.d.ts +7 -0
  277. package/dist/config-entry.d.ts.map +1 -0
  278. package/dist/config-entry.js +16 -0
  279. package/dist/decorators/durable-object.d.ts.map +1 -1
  280. package/dist/deploy-g85w9drn.js +1066 -0
  281. package/dist/dev-server/d1-migrations.d.ts +36 -0
  282. package/dist/dev-server/d1-migrations.d.ts.map +1 -0
  283. package/dist/dev-server/dev-server-state.d.ts +59 -0
  284. package/dist/dev-server/dev-server-state.d.ts.map +1 -0
  285. package/dist/dev-server/gateway-script.d.ts +21 -0
  286. package/dist/dev-server/gateway-script.d.ts.map +1 -0
  287. package/dist/dev-server/miniflare-bindings.d.ts +59 -0
  288. package/dist/dev-server/miniflare-bindings.d.ts.map +1 -0
  289. package/dist/dev-server/miniflare-dev-config.d.ts +36 -0
  290. package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -0
  291. package/dist/dev-server/miniflare-log.d.ts +20 -0
  292. package/dist/dev-server/miniflare-log.d.ts.map +1 -0
  293. package/dist/dev-server/miniflare-worker-config.d.ts +74 -0
  294. package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -0
  295. package/dist/dev-server/reload-queue.d.ts +13 -0
  296. package/dist/dev-server/reload-queue.d.ts.map +1 -0
  297. package/dist/dev-server/runtime-stdio.d.ts +8 -0
  298. package/dist/dev-server/runtime-stdio.d.ts.map +1 -0
  299. package/dist/dev-server/server-startup-helpers.d.ts +84 -0
  300. package/dist/dev-server/server-startup-helpers.d.ts.map +1 -0
  301. package/dist/dev-server/server.d.ts +2 -0
  302. package/dist/dev-server/server.d.ts.map +1 -1
  303. package/dist/dev-server/vite-process.d.ts +15 -0
  304. package/dist/dev-server/vite-process.d.ts.map +1 -0
  305. package/dist/dev-server/vite-utils.d.ts +19 -1
  306. package/dist/dev-server/vite-utils.d.ts.map +1 -1
  307. package/dist/dev-server/worker-source-watcher.d.ts +17 -0
  308. package/dist/dev-server/worker-source-watcher.d.ts.map +1 -0
  309. package/dist/dev-server/worker-surface-paths.d.ts +6 -0
  310. package/dist/dev-server/worker-surface-paths.d.ts.map +1 -0
  311. package/dist/dev-ymkq3thq.js +2609 -0
  312. package/dist/{doctor-fmgb3d28.js → doctor-sjrcz7x9.js} +104 -35
  313. package/dist/{durable-object-t4kbb0yt.js → durable-object-v3gsnybk.js} +1 -1
  314. package/dist/env.d.ts +10 -0
  315. package/dist/env.d.ts.map +1 -1
  316. package/dist/index-0gtmnw0m.js +895 -0
  317. package/dist/index-11p28kxx.js +256 -0
  318. package/dist/index-15fpa5tx.js +232 -0
  319. package/dist/index-1d4jg11n.js +542 -0
  320. package/dist/index-2sc756r1.js +1578 -0
  321. package/dist/index-3edvz3hs.js +124 -0
  322. package/dist/index-3jme4hgw.js +1234 -0
  323. package/dist/index-467tm7r4.js +1033 -0
  324. package/dist/index-5yvpk954.js +699 -0
  325. package/dist/index-627srx16.js +45 -0
  326. package/dist/index-62b3gt2g.js +12 -0
  327. package/dist/index-6sj0v0dk.js +2284 -0
  328. package/dist/index-706k4606.js +52 -0
  329. package/dist/index-7zfv1g9m.js +147 -0
  330. package/dist/index-85yjb686.js +413 -0
  331. package/dist/index-aabgympv.js +39 -0
  332. package/dist/{index-z14anrqp.js → index-aqrwyy57.js} +93 -31
  333. package/dist/index-c4jmfzz7.js +109 -0
  334. package/dist/index-c8p4njqy.js +479 -0
  335. package/dist/index-dm9q84c7.js +360 -0
  336. package/dist/index-fjmdb57t.js +581 -0
  337. package/dist/index-g4fcnwhc.js +1205 -0
  338. package/dist/{index-18hvb6gb.js → index-gn5wy09x.js} +13 -2
  339. package/dist/index-hpwa6vsw.js +239 -0
  340. package/dist/index-mg8vwqxf.js +514 -0
  341. package/dist/index-pmeashfz.js +476 -0
  342. package/dist/{index-07q6yxyc.js → index-q8f4kawk.js} +68 -32
  343. package/dist/index-qmmqww7h.js +133 -0
  344. package/dist/{index-rbht7m9r.js → index-qwgr4q7s.js} +2 -1
  345. package/dist/index-qz6nbwpw.js +111 -0
  346. package/dist/index-sqkbyw0c.js +1428 -0
  347. package/dist/index-stgn34cr.js +148 -0
  348. package/dist/index-t9y0sve5.js +155 -0
  349. package/dist/index-thwacc28.js +74 -0
  350. package/dist/index-vhqww6tt.js +307 -0
  351. package/dist/{index-1xpj0m4r.js → index-z9gy8w6b.js} +1 -1
  352. package/dist/index-za0r01bx.js +588 -0
  353. package/dist/index-zwmphmc5.js +185 -0
  354. package/dist/index.d.ts +3 -7
  355. package/dist/index.d.ts.map +1 -1
  356. package/dist/index.js +34 -269
  357. package/dist/{init-f9mgmew3.js → init-cwpergap.js} +63 -69
  358. package/dist/login-fthspvbx.js +77 -0
  359. package/dist/previews-aa16z2hj.js +1337 -0
  360. package/dist/productions-vemjgfz0.js +505 -0
  361. package/dist/runtime/context-events.d.ts +13 -0
  362. package/dist/runtime/context-events.d.ts.map +1 -0
  363. package/dist/runtime/context-types.d.ts +82 -0
  364. package/dist/runtime/context-types.d.ts.map +1 -0
  365. package/dist/runtime/context.d.ts +20 -44
  366. package/dist/runtime/context.d.ts.map +1 -1
  367. package/dist/runtime/exports.d.ts +70 -55
  368. package/dist/runtime/exports.d.ts.map +1 -1
  369. package/dist/runtime/index.d.ts +8 -1
  370. package/dist/runtime/index.d.ts.map +1 -1
  371. package/dist/runtime/index.js +108 -99
  372. package/dist/runtime/middleware.d.ts +102 -60
  373. package/dist/runtime/middleware.d.ts.map +1 -1
  374. package/dist/runtime/router/index.d.ts +7 -0
  375. package/dist/runtime/router/index.d.ts.map +1 -0
  376. package/dist/runtime/router/types.d.ts +24 -0
  377. package/dist/runtime/router/types.d.ts.map +1 -0
  378. package/dist/runtime/validation.d.ts +17 -3
  379. package/dist/runtime/validation.d.ts.map +1 -1
  380. package/dist/secrets/local-secrets.d.ts +46 -0
  381. package/dist/secrets/local-secrets.d.ts.map +1 -0
  382. package/dist/secrets-b0x50dd1.js +91 -0
  383. package/dist/shims/local-hyperdrive.d.ts +12 -0
  384. package/dist/shims/local-hyperdrive.d.ts.map +1 -0
  385. package/dist/shims/local-media-bindings.d.ts +19 -0
  386. package/dist/shims/local-media-bindings.d.ts.map +1 -0
  387. package/dist/shims/local-worker-loader.d.ts +3 -0
  388. package/dist/shims/local-worker-loader.d.ts.map +1 -0
  389. package/dist/sveltekit/index.js +169 -75
  390. package/dist/sveltekit/local-bindings.d.ts +4 -0
  391. package/dist/sveltekit/local-bindings.d.ts.map +1 -0
  392. package/dist/sveltekit/platform.d.ts +19 -1
  393. package/dist/sveltekit/platform.d.ts.map +1 -1
  394. package/dist/test/ai-search.d.ts +39 -0
  395. package/dist/test/ai-search.d.ts.map +1 -0
  396. package/dist/test/binding-hints.d.ts +11 -0
  397. package/dist/test/binding-hints.d.ts.map +1 -0
  398. package/dist/test/cf.d.ts +35 -21
  399. package/dist/test/cf.d.ts.map +1 -1
  400. package/dist/test/containers.d.ts +87 -0
  401. package/dist/test/containers.d.ts.map +1 -0
  402. package/dist/test/email.d.ts +16 -7
  403. package/dist/test/email.d.ts.map +1 -1
  404. package/dist/test/index.d.ts +5 -8
  405. package/dist/test/index.d.ts.map +1 -1
  406. package/dist/test/index.js +4641 -43
  407. package/dist/test/offline-bindings.d.ts +65 -0
  408. package/dist/test/offline-bindings.d.ts.map +1 -0
  409. package/dist/test/queue.d.ts.map +1 -1
  410. package/dist/test/remote-ai.d.ts.map +1 -1
  411. package/dist/test/remote-cloudflare.d.ts +13 -0
  412. package/dist/test/remote-cloudflare.d.ts.map +1 -0
  413. package/dist/test/remote-vectorize.d.ts.map +1 -1
  414. package/dist/test/resolve-service-bindings.d.ts +63 -3
  415. package/dist/test/resolve-service-bindings.d.ts.map +1 -1
  416. package/dist/test/scheduled.d.ts.map +1 -1
  417. package/dist/test/should-skip.d.ts +14 -18
  418. package/dist/test/should-skip.d.ts.map +1 -1
  419. package/dist/test/simple-context-bindings.d.ts +13 -0
  420. package/dist/test/simple-context-bindings.d.ts.map +1 -0
  421. package/dist/test/simple-context-durable-objects.d.ts +6 -0
  422. package/dist/test/simple-context-durable-objects.d.ts.map +1 -0
  423. package/dist/test/simple-context-env.d.ts +35 -0
  424. package/dist/test/simple-context-env.d.ts.map +1 -0
  425. package/dist/test/simple-context-gateway-script.d.ts +2 -0
  426. package/dist/test/simple-context-gateway-script.d.ts.map +1 -0
  427. package/dist/test/simple-context-handlers.d.ts +12 -0
  428. package/dist/test/simple-context-handlers.d.ts.map +1 -0
  429. package/dist/test/simple-context-lifecycle.d.ts +32 -0
  430. package/dist/test/simple-context-lifecycle.d.ts.map +1 -0
  431. package/dist/test/simple-context-mfconfig.d.ts +10 -0
  432. package/dist/test/simple-context-mfconfig.d.ts.map +1 -0
  433. package/dist/test/simple-context-multi-worker.d.ts +16 -0
  434. package/dist/test/simple-context-multi-worker.d.ts.map +1 -0
  435. package/dist/test/simple-context-paths.d.ts +40 -0
  436. package/dist/test/simple-context-paths.d.ts.map +1 -0
  437. package/dist/test/simple-context-runtime.d.ts +19 -0
  438. package/dist/test/simple-context-runtime.d.ts.map +1 -0
  439. package/dist/test/simple-context-startup.d.ts +11 -0
  440. package/dist/test/simple-context-startup.d.ts.map +1 -0
  441. package/dist/test/simple-context-transport.d.ts +14 -0
  442. package/dist/test/simple-context-transport.d.ts.map +1 -0
  443. package/dist/test/simple-context.d.ts +7 -26
  444. package/dist/test/simple-context.d.ts.map +1 -1
  445. package/dist/test/tail.d.ts +2 -1
  446. package/dist/test/tail.d.ts.map +1 -1
  447. package/dist/test/utilities/artifacts.d.ts +11 -0
  448. package/dist/test/utilities/artifacts.d.ts.map +1 -0
  449. package/dist/test/utilities/context.d.ts +39 -0
  450. package/dist/test/utilities/context.d.ts.map +1 -0
  451. package/dist/test/utilities/d1.d.ts +21 -0
  452. package/dist/test/utilities/d1.d.ts.map +1 -0
  453. package/dist/test/utilities/env.d.ts +40 -0
  454. package/dist/test/utilities/env.d.ts.map +1 -0
  455. package/dist/test/utilities/kv.d.ts +11 -0
  456. package/dist/test/utilities/kv.d.ts.map +1 -0
  457. package/dist/test/utilities/media.d.ts +16 -0
  458. package/dist/test/utilities/media.d.ts.map +1 -0
  459. package/dist/test/utilities/platform.d.ts +41 -0
  460. package/dist/test/utilities/platform.d.ts.map +1 -0
  461. package/dist/test/utilities/queue.d.ts +5 -0
  462. package/dist/test/utilities/queue.d.ts.map +1 -0
  463. package/dist/test/utilities/r2.d.ts +2 -0
  464. package/dist/test/utilities/r2.d.ts.map +1 -0
  465. package/dist/test/utilities/workflows.d.ts +26 -0
  466. package/dist/test/utilities/workflows.d.ts.map +1 -0
  467. package/dist/test/utilities.d.ts +10 -98
  468. package/dist/test/utilities.d.ts.map +1 -1
  469. package/dist/test/worker.d.ts +6 -0
  470. package/dist/test/worker.d.ts.map +1 -1
  471. package/dist/token-35jcdqq8.js +419 -0
  472. package/dist/transform/durable-object.d.ts.map +1 -1
  473. package/dist/transform/worker-entrypoint.d.ts +5 -0
  474. package/dist/transform/worker-entrypoint.d.ts.map +1 -1
  475. package/dist/types-03w8zkg6.js +705 -0
  476. package/dist/utils/entrypoint-discovery.d.ts +6 -3
  477. package/dist/utils/entrypoint-discovery.d.ts.map +1 -1
  478. package/dist/utils/resolve-package.d.ts.map +1 -1
  479. package/dist/utils/send-email.d.ts +15 -0
  480. package/dist/utils/send-email.d.ts.map +1 -0
  481. package/dist/utils/send-email.js +19 -0
  482. package/dist/vite/config-file.d.ts +25 -0
  483. package/dist/vite/config-file.d.ts.map +1 -0
  484. package/dist/vite/index.d.ts +1 -0
  485. package/dist/vite/index.d.ts.map +1 -1
  486. package/dist/vite/index.js +25 -331
  487. package/dist/vite/plugin-config-hook.d.ts +28 -0
  488. package/dist/vite/plugin-config-hook.d.ts.map +1 -0
  489. package/dist/vite/plugin-context.d.ts +27 -0
  490. package/dist/vite/plugin-context.d.ts.map +1 -0
  491. package/dist/vite/plugin-durable-objects.d.ts +18 -0
  492. package/dist/vite/plugin-durable-objects.d.ts.map +1 -0
  493. package/dist/vite/plugin-programmatic.d.ts +44 -0
  494. package/dist/vite/plugin-programmatic.d.ts.map +1 -0
  495. package/dist/vite/plugin-service-bindings.d.ts +13 -0
  496. package/dist/vite/plugin-service-bindings.d.ts.map +1 -0
  497. package/dist/vite/plugin-transform.d.ts +41 -0
  498. package/dist/vite/plugin-transform.d.ts.map +1 -0
  499. package/dist/vite/plugin.d.ts +10 -41
  500. package/dist/vite/plugin.d.ts.map +1 -1
  501. package/dist/worker-55q6b8nc.js +513 -0
  502. package/dist/worker-entry/composed-worker.d.ts +7 -0
  503. package/dist/worker-entry/composed-worker.d.ts.map +1 -0
  504. package/dist/worker-entry/durable-object-discovery.d.ts +20 -0
  505. package/dist/worker-entry/durable-object-discovery.d.ts.map +1 -0
  506. package/dist/worker-entry/extensions.d.ts +5 -0
  507. package/dist/worker-entry/extensions.d.ts.map +1 -0
  508. package/dist/worker-entry/routes.d.ts +22 -0
  509. package/dist/worker-entry/routes.d.ts.map +1 -0
  510. package/dist/worker-entry/surface-paths.d.ts +26 -0
  511. package/dist/worker-entry/surface-paths.d.ts.map +1 -0
  512. package/dist/{worker-entrypoint-m9th0rg0.js → worker-entrypoint-3rmzd4c1.js} +3 -1
  513. package/dist/workflows/local-workflow-entrypoints.d.ts +7 -0
  514. package/dist/workflows/local-workflow-entrypoints.d.ts.map +1 -0
  515. package/package.json +154 -115
  516. package/dist/account-rvrj687w.js +0 -397
  517. package/dist/bridge/protocol.d.ts.map +0 -1
  518. package/dist/bridge/serialization.d.ts.map +0 -1
  519. package/dist/browser-shim/worker.d.ts +0 -14
  520. package/dist/browser-shim/worker.d.ts.map +0 -1
  521. package/dist/build-mnf6v8gd.js +0 -53
  522. package/dist/deploy-nhceck39.js +0 -70
  523. package/dist/dev-pa8dhm20.js +0 -2162
  524. package/dist/index-67qcae0f.js +0 -183
  525. package/dist/index-ep3445yc.js +0 -2225
  526. package/dist/index-gz1gndna.js +0 -307
  527. package/dist/index-hcex3rgh.js +0 -266
  528. package/dist/index-m2q41jwa.js +0 -462
  529. package/dist/index-n7rs26ft.js +0 -77
  530. package/dist/index-pf5s73n9.js +0 -1413
  531. package/dist/index-tfyxa77h.js +0 -850
  532. package/dist/index-tk6ej9dj.js +0 -94
  533. package/dist/test/bridge-context.d.ts +0 -76
  534. package/dist/test/bridge-context.d.ts.map +0 -1
  535. package/dist/test/multi-worker-context.d.ts +0 -114
  536. package/dist/test/multi-worker-context.d.ts.map +0 -1
  537. package/dist/types-5nyrz1sz.js +0 -454
@@ -0,0 +1,479 @@
1
+ // src/config/env-vars.ts
2
+ import { existsSync } from "node:fs";
3
+ import { readFile } from "node:fs/promises";
4
+ import { dirname, resolve } from "pathe";
5
+ var ENV_DESCRIPTOR_FLAG = "__devflareEnvDescriptor";
6
+ function createDescriptor(state) {
7
+ const descriptor = {
8
+ [ENV_DESCRIPTOR_FLAG]: true,
9
+ __state: state,
10
+ optional() {
11
+ return createDescriptor({
12
+ ...state,
13
+ optional: true
14
+ });
15
+ },
16
+ parse(parser) {
17
+ return createDescriptor({
18
+ ...state,
19
+ parser
20
+ });
21
+ },
22
+ parser(parser) {
23
+ return this.parse(parser);
24
+ },
25
+ default(value) {
26
+ return createDescriptor({
27
+ ...state,
28
+ defaultValue: value,
29
+ hasDefault: true,
30
+ optional: false
31
+ });
32
+ },
33
+ dev(value) {
34
+ return createDescriptor({
35
+ ...state,
36
+ devValue: value,
37
+ hasDevDefault: true
38
+ });
39
+ }
40
+ };
41
+ return descriptor;
42
+ }
43
+ function createEnvVarDescriptor(name) {
44
+ return createDescriptor({
45
+ name,
46
+ optional: false,
47
+ hasDefault: false,
48
+ hasDevDefault: false
49
+ });
50
+ }
51
+ var env = new Proxy({}, {
52
+ get(_target, prop) {
53
+ if (typeof prop !== "string") {
54
+ return;
55
+ }
56
+ return createEnvVarDescriptor(prop);
57
+ }
58
+ });
59
+ function isEnvVarDescriptor(value) {
60
+ return Boolean(value && typeof value === "object" && value[ENV_DESCRIPTOR_FLAG] === true);
61
+ }
62
+ function parseEnvValue(rawValue) {
63
+ const trimmed = rawValue.trim();
64
+ const quote = trimmed[0];
65
+ if ((quote === '"' || quote === "'" || quote === "`") && trimmed.endsWith(quote) && trimmed.length >= 2) {
66
+ const inner = trimmed.slice(1, -1);
67
+ if (quote !== '"') {
68
+ return inner;
69
+ }
70
+ return inner.replace(/\\n/g, `
71
+ `).replace(/\\r/g, "\r").replace(/\\t/g, "\t").replace(/\\"/g, '"').replace(/\\\\/g, "\\");
72
+ }
73
+ return trimmed;
74
+ }
75
+ function parseDevflareEnvFile(contents) {
76
+ const values = {};
77
+ for (const line of contents.split(/\r?\n/)) {
78
+ const trimmed = line.trim();
79
+ if (!trimmed || trimmed.startsWith("#")) {
80
+ continue;
81
+ }
82
+ const assignment = trimmed.startsWith("export ") ? trimmed.slice("export ".length).trimStart() : trimmed;
83
+ const equalsIndex = assignment.indexOf("=");
84
+ if (equalsIndex <= 0) {
85
+ continue;
86
+ }
87
+ const key = assignment.slice(0, equalsIndex).trim();
88
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(key)) {
89
+ continue;
90
+ }
91
+ values[key] = parseEnvValue(assignment.slice(equalsIndex + 1));
92
+ }
93
+ return values;
94
+ }
95
+ function collectAncestorDirectories(startDir) {
96
+ const directories = [];
97
+ let current = resolve(startDir);
98
+ while (true) {
99
+ directories.push(current);
100
+ const parent = dirname(current);
101
+ if (parent === current) {
102
+ break;
103
+ }
104
+ current = parent;
105
+ }
106
+ return directories.reverse();
107
+ }
108
+ function getDevflareDotenvPaths(startDir) {
109
+ return collectAncestorDirectories(startDir).flatMap((directory) => [
110
+ resolve(directory, ".env.dev"),
111
+ resolve(directory, ".env")
112
+ ]);
113
+ }
114
+ async function loadDevflareDotenv(startDir) {
115
+ const values = {};
116
+ const files = [];
117
+ for (const filePath of getDevflareDotenvPaths(startDir)) {
118
+ if (!existsSync(filePath)) {
119
+ continue;
120
+ }
121
+ Object.assign(values, parseDevflareEnvFile(await readFile(filePath, "utf8")));
122
+ files.push(filePath);
123
+ }
124
+ return { values, files };
125
+ }
126
+ async function loadDevflareDotenvIntoProcess(startDir) {
127
+ const loaded = await loadDevflareDotenv(startDir);
128
+ for (const [key, value] of Object.entries(loaded.values)) {
129
+ if (process.env[key] === undefined) {
130
+ process.env[key] = value;
131
+ }
132
+ }
133
+ return loaded;
134
+ }
135
+ function formatMissingEnvTree(missing) {
136
+ const root = {};
137
+ for (const item of missing) {
138
+ let current = root;
139
+ for (const segment of item.path.slice(0, -1)) {
140
+ const next = current[segment];
141
+ if (!next || typeof next !== "object") {
142
+ current[segment] = {};
143
+ }
144
+ current = current[segment];
145
+ }
146
+ current[item.path[item.path.length - 1] ?? item.name] = item.name;
147
+ }
148
+ const lines = [];
149
+ const writeNode = (node, depth) => {
150
+ const indent = "\t".repeat(depth);
151
+ for (const [key, value] of Object.entries(node)) {
152
+ if (value && typeof value === "object") {
153
+ lines.push(`${indent}${key}:`);
154
+ writeNode(value, depth + 1);
155
+ } else {
156
+ lines.push(`${indent}${key}: ${String(value)}`);
157
+ }
158
+ }
159
+ };
160
+ writeNode(root, 1);
161
+ return lines.join(`
162
+ `);
163
+ }
164
+
165
+ class EnvVarResolutionError extends Error {
166
+ missing;
167
+ mode;
168
+ code = "ENV_VARS_MISSING";
169
+ constructor(missing, mode) {
170
+ super([
171
+ "These environment variables are missing:",
172
+ "",
173
+ formatMissingEnvTree(missing)
174
+ ].join(`
175
+ `));
176
+ this.missing = missing;
177
+ this.mode = mode;
178
+ this.name = "EnvVarResolutionError";
179
+ }
180
+ }
181
+
182
+ class EnvVarParseError extends Error {
183
+ variableName;
184
+ path;
185
+ code = "ENV_VAR_PARSE_FAILED";
186
+ constructor(variableName, path, cause) {
187
+ super(`Could not parse environment variable ${variableName} for vars.${path.join(".")}.
188
+ ` + `Parser error: ${cause instanceof Error ? cause.message : String(cause)}`);
189
+ this.variableName = variableName;
190
+ this.path = path;
191
+ this.name = "EnvVarParseError";
192
+ }
193
+ }
194
+ function isPlainObject(value) {
195
+ if (!value || typeof value !== "object" || Array.isArray(value) || isEnvVarDescriptor(value)) {
196
+ return false;
197
+ }
198
+ const prototype = Object.getPrototypeOf(value);
199
+ return prototype === Object.prototype || prototype === null;
200
+ }
201
+ var OMIT_VALUE = Symbol("omit optional env var");
202
+ function resolveDescriptorValue(descriptor, sources, path, mode, missing) {
203
+ const state = descriptor.__state;
204
+ const rawValue = sources[state.name];
205
+ if (rawValue !== undefined) {
206
+ try {
207
+ return state.parser ? state.parser(rawValue) : rawValue;
208
+ } catch (error) {
209
+ throw new EnvVarParseError(state.name, path, error);
210
+ }
211
+ }
212
+ if (mode === "dev" && state.hasDevDefault) {
213
+ return state.devValue;
214
+ }
215
+ if (state.hasDefault) {
216
+ return state.defaultValue;
217
+ }
218
+ if (state.optional) {
219
+ return OMIT_VALUE;
220
+ }
221
+ missing.push({ path, name: state.name });
222
+ return OMIT_VALUE;
223
+ }
224
+ function resolveVarValue(value, sources, path, mode, missing) {
225
+ if (isEnvVarDescriptor(value)) {
226
+ return resolveDescriptorValue(value, sources, path, mode, missing);
227
+ }
228
+ if (Array.isArray(value)) {
229
+ return value.map((item, index) => resolveVarValue(item, sources, [...path, String(index)], mode, missing)).filter((item) => item !== OMIT_VALUE);
230
+ }
231
+ if (isPlainObject(value)) {
232
+ const resolved = {};
233
+ for (const [key, childValue] of Object.entries(value)) {
234
+ const child = resolveVarValue(childValue, sources, [...path, key], mode, missing);
235
+ if (child !== OMIT_VALUE) {
236
+ resolved[key] = child;
237
+ }
238
+ }
239
+ return resolved;
240
+ }
241
+ return value;
242
+ }
243
+ function resolveVarsObject(vars, sources, mode, missing) {
244
+ if (!vars) {
245
+ return vars;
246
+ }
247
+ const resolved = resolveVarValue(vars, sources, [], mode, missing);
248
+ return resolved === OMIT_VALUE ? undefined : resolved;
249
+ }
250
+ async function resolveConfigEnvVars(config, options) {
251
+ const startDir = options.configPath ? dirname(resolve(options.cwd, options.configPath)) : options.cwd;
252
+ const dotenv = await loadDevflareDotenv(startDir);
253
+ const sources = {
254
+ ...dotenv.values,
255
+ ...process.env
256
+ };
257
+ const missing = [];
258
+ const vars = resolveVarsObject(config.vars, sources, options.mode, missing);
259
+ if (missing.length > 0) {
260
+ throw new EnvVarResolutionError(missing, options.mode);
261
+ }
262
+ return vars === config.vars ? config : {
263
+ ...config,
264
+ vars
265
+ };
266
+ }
267
+
268
+ // src/config/preview.ts
269
+ var PREVIEW_SCOPED_NAME_PREFIX = "__DEVFLARE_PREVIEW_SCOPE__:";
270
+ function getPreviewScopedSeparator(options) {
271
+ return options?.separator ?? "-";
272
+ }
273
+ function encodePreviewScopedName(value) {
274
+ return `${PREVIEW_SCOPED_NAME_PREFIX}${JSON.stringify(value)}`;
275
+ }
276
+ function invalidPreviewScopedName(reason) {
277
+ throw new Error(`Invalid Devflare preview-scoped value: ${reason}. Recreate it with preview.scope(...) instead of constructing preview markers manually.`);
278
+ }
279
+ function decodePreviewScopedName(value) {
280
+ const payload = value.slice(PREVIEW_SCOPED_NAME_PREFIX.length);
281
+ let parsed;
282
+ try {
283
+ parsed = JSON.parse(payload);
284
+ } catch {
285
+ invalidPreviewScopedName("the encoded payload is not valid JSON");
286
+ }
287
+ const baseName = typeof parsed.baseName === "string" ? parsed.baseName : "";
288
+ if (!baseName.trim()) {
289
+ invalidPreviewScopedName("the encoded payload is missing a non-empty baseName");
290
+ }
291
+ return {
292
+ baseName,
293
+ separator: typeof parsed.separator === "string" && parsed.separator.length > 0 ? parsed.separator : "-"
294
+ };
295
+ }
296
+ function normalizePreviewFragment(rawValue) {
297
+ let normalized = rawValue.toLowerCase().replace(/[^a-z0-9-]+/g, "-").replace(/-+/g, "-").replace(/^-+|-+$/g, "");
298
+ if (!normalized) {
299
+ normalized = "preview";
300
+ }
301
+ if (!/^[a-z]/.test(normalized)) {
302
+ normalized = `b-${normalized}`;
303
+ }
304
+ return normalized;
305
+ }
306
+ function getPreviewIdentifierFromEnv(env2) {
307
+ const explicitIdentifier = env2.DEVFLARE_PREVIEW_IDENTIFIER?.trim();
308
+ if (explicitIdentifier) {
309
+ return {
310
+ identifier: normalizePreviewFragment(explicitIdentifier),
311
+ source: "env-identifier"
312
+ };
313
+ }
314
+ const previewPr = env2.DEVFLARE_PREVIEW_PR?.trim();
315
+ if (previewPr) {
316
+ return {
317
+ identifier: normalizePreviewFragment(`pr-${previewPr}`),
318
+ source: "env-pr"
319
+ };
320
+ }
321
+ const previewBranch = env2.DEVFLARE_PREVIEW_BRANCH?.trim();
322
+ if (previewBranch) {
323
+ return {
324
+ identifier: normalizePreviewFragment(previewBranch),
325
+ source: "env-branch"
326
+ };
327
+ }
328
+ return {
329
+ identifier: undefined,
330
+ source: "none"
331
+ };
332
+ }
333
+ function resolvePreviewIdentifier(options = {}) {
334
+ if (options.identifier?.trim()) {
335
+ return {
336
+ identifier: normalizePreviewFragment(options.identifier),
337
+ source: "identifier"
338
+ };
339
+ }
340
+ const env2 = options.env ?? process.env;
341
+ const envIdentifier = getPreviewIdentifierFromEnv(env2);
342
+ if (envIdentifier.identifier) {
343
+ return envIdentifier;
344
+ }
345
+ return options.environment === "preview" ? {
346
+ identifier: "preview",
347
+ source: "environment"
348
+ } : {
349
+ identifier: undefined,
350
+ source: "none"
351
+ };
352
+ }
353
+ function mapRecordValues(record, mapper) {
354
+ return Object.fromEntries(Object.entries(record).map(([key, value]) => [key, mapper(value)]));
355
+ }
356
+ var preview = {
357
+ scope(defaults = {}) {
358
+ return (baseName, options = {}) => {
359
+ if (!baseName.trim()) {
360
+ throw new Error("preview.scope(...) requires a non-empty baseName.");
361
+ }
362
+ return encodePreviewScopedName({
363
+ baseName,
364
+ separator: getPreviewScopedSeparator({
365
+ ...defaults,
366
+ ...options
367
+ })
368
+ });
369
+ };
370
+ }
371
+ };
372
+ function isPreviewScopedName(value) {
373
+ return typeof value === "string" && value.startsWith(PREVIEW_SCOPED_NAME_PREFIX);
374
+ }
375
+ function materializePreviewScopedString(value, options = {}) {
376
+ if (!isPreviewScopedName(value)) {
377
+ return value;
378
+ }
379
+ const scoped = decodePreviewScopedName(value);
380
+ const previewIdentifier = resolvePreviewIdentifier(options).identifier;
381
+ return previewIdentifier ? `${scoped.baseName}${scoped.separator}${previewIdentifier}` : scoped.baseName;
382
+ }
383
+ function materializePreviewScopedConfig(config, options = {}) {
384
+ if (!config.bindings) {
385
+ return config;
386
+ }
387
+ const bindings = config.bindings;
388
+ const hasPreviewIdentifier = Boolean(resolvePreviewIdentifier(options).identifier);
389
+ return {
390
+ ...config,
391
+ bindings: {
392
+ ...bindings,
393
+ ...bindings.kv ? {
394
+ kv: mapRecordValues(bindings.kv, (binding) => {
395
+ return typeof binding === "string" ? materializePreviewScopedString(binding, options) : binding;
396
+ })
397
+ } : {},
398
+ ...bindings.d1 ? {
399
+ d1: mapRecordValues(bindings.d1, (binding) => {
400
+ return typeof binding === "string" ? materializePreviewScopedString(binding, options) : binding;
401
+ })
402
+ } : {},
403
+ ...bindings.r2 ? {
404
+ r2: mapRecordValues(bindings.r2, (binding) => {
405
+ return materializePreviewScopedString(binding, options);
406
+ })
407
+ } : {},
408
+ ...bindings.queues ? {
409
+ queues: {
410
+ ...bindings.queues,
411
+ ...bindings.queues.producers ? {
412
+ producers: mapRecordValues(bindings.queues.producers, (queueName) => {
413
+ return materializePreviewScopedString(queueName, options);
414
+ })
415
+ } : {},
416
+ ...bindings.queues.consumers ? {
417
+ consumers: bindings.queues.consumers.map((consumer) => ({
418
+ ...consumer,
419
+ queue: materializePreviewScopedString(consumer.queue, options),
420
+ ...consumer.deadLetterQueue ? {
421
+ deadLetterQueue: materializePreviewScopedString(consumer.deadLetterQueue, options)
422
+ } : {}
423
+ }))
424
+ } : {}
425
+ }
426
+ } : {},
427
+ ...bindings.services ? {
428
+ services: mapRecordValues(bindings.services, (binding) => ({
429
+ ...binding,
430
+ service: materializePreviewScopedString(binding.service, options)
431
+ }))
432
+ } : {},
433
+ ...bindings.vectorize ? {
434
+ vectorize: mapRecordValues(bindings.vectorize, (binding) => ({
435
+ ...binding,
436
+ indexName: materializePreviewScopedString(binding.indexName, options)
437
+ }))
438
+ } : {},
439
+ ...bindings.hyperdrive ? {
440
+ hyperdrive: mapRecordValues(bindings.hyperdrive, (binding) => {
441
+ if (typeof binding === "string") {
442
+ return materializePreviewScopedString(binding, options);
443
+ }
444
+ if (binding && typeof binding === "object" && "name" in binding && typeof binding.name === "string") {
445
+ if (hasPreviewIdentifier && binding.previewId) {
446
+ return {
447
+ id: binding.previewId,
448
+ ...binding.localConnectionString && {
449
+ localConnectionString: binding.localConnectionString
450
+ },
451
+ ...!binding.localConnectionString && binding.previewLocalConnectionString && {
452
+ localConnectionString: binding.previewLocalConnectionString
453
+ }
454
+ };
455
+ }
456
+ return {
457
+ ...binding,
458
+ name: materializePreviewScopedString(binding.name, options)
459
+ };
460
+ }
461
+ return binding;
462
+ })
463
+ } : {},
464
+ ...bindings.browser ? {
465
+ browser: mapRecordValues(bindings.browser, (binding) => {
466
+ return typeof binding === "string" ? materializePreviewScopedString(binding, options) : binding;
467
+ })
468
+ } : {},
469
+ ...bindings.analyticsEngine ? {
470
+ analyticsEngine: mapRecordValues(bindings.analyticsEngine, (binding) => ({
471
+ ...binding,
472
+ dataset: materializePreviewScopedString(binding.dataset, options)
473
+ }))
474
+ } : {}
475
+ }
476
+ };
477
+ }
478
+
479
+ export { env, isEnvVarDescriptor, getDevflareDotenvPaths, loadDevflareDotenvIntoProcess, EnvVarResolutionError, resolveConfigEnvVars, resolvePreviewIdentifier, preview, isPreviewScopedName, materializePreviewScopedString, materializePreviewScopedConfig };