devflare 1.0.0-next.19 → 1.0.0-next.20

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 (360) hide show
  1. package/LLM.md +6807 -888
  2. package/README.md +375 -957
  3. package/dist/account-05zgta47.js +475 -0
  4. package/dist/account-b2ag1esh.js +475 -0
  5. package/dist/account-bxtcz61a.js +475 -0
  6. package/dist/account-gyfqg964.js +475 -0
  7. package/dist/account-q6pvs9d9.js +475 -0
  8. package/dist/account-rp4zbvw1.js +475 -0
  9. package/dist/bridge/client.d.ts +5 -0
  10. package/dist/bridge/client.d.ts.map +1 -1
  11. package/dist/bridge/gateway-runtime.d.ts +1 -1
  12. package/dist/bridge/gateway-runtime.d.ts.map +1 -1
  13. package/dist/bridge/miniflare.d.ts +67 -0
  14. package/dist/bridge/miniflare.d.ts.map +1 -1
  15. package/dist/bridge/proxy.d.ts +2 -1
  16. package/dist/bridge/proxy.d.ts.map +1 -1
  17. package/dist/bridge/server.d.ts.map +1 -1
  18. package/dist/browser.d.ts +2520 -40
  19. package/dist/browser.d.ts.map +1 -1
  20. package/dist/browser.js +3 -3
  21. package/dist/build-2s5paw5p.js +54 -0
  22. package/dist/build-4c350cp7.js +54 -0
  23. package/dist/build-e7wym63t.js +54 -0
  24. package/dist/build-ge6qp3t4.js +54 -0
  25. package/dist/build-ta8c6t11.js +54 -0
  26. package/dist/build-wvjj8f28.js +54 -0
  27. package/dist/build-ypg6f2kw.js +54 -0
  28. package/dist/build-yts8wwgf.js +54 -0
  29. package/dist/build-yzkdqexs.js +54 -0
  30. package/dist/cli/build-manifest.d.ts +12 -0
  31. package/dist/cli/build-manifest.d.ts.map +1 -1
  32. package/dist/cli/commands/deploy/metadata.d.ts +18 -0
  33. package/dist/cli/commands/deploy/metadata.d.ts.map +1 -0
  34. package/dist/cli/commands/deploy/prepare.d.ts +23 -0
  35. package/dist/cli/commands/deploy/prepare.d.ts.map +1 -0
  36. package/dist/cli/commands/deploy/runtime.d.ts +4 -0
  37. package/dist/cli/commands/deploy/runtime.d.ts.map +1 -0
  38. package/dist/cli/commands/deploy/verification.d.ts +36 -0
  39. package/dist/cli/commands/deploy/verification.d.ts.map +1 -0
  40. package/dist/cli/commands/deploy.d.ts +2 -2
  41. package/dist/cli/commands/deploy.d.ts.map +1 -1
  42. package/dist/cli/commands/secrets.d.ts +4 -0
  43. package/dist/cli/commands/secrets.d.ts.map +1 -0
  44. package/dist/cli/commands/type-generation/generator.d.ts +67 -1
  45. package/dist/cli/commands/type-generation/generator.d.ts.map +1 -1
  46. package/dist/cli/help-pages/pages/core.d.ts +1 -1
  47. package/dist/cli/help-pages/pages/core.d.ts.map +1 -1
  48. package/dist/cli/help-pages/shared.d.ts +1 -1
  49. package/dist/cli/help-pages/shared.d.ts.map +1 -1
  50. package/dist/cli/index.d.ts.map +1 -1
  51. package/dist/cli/index.js +2 -2
  52. package/dist/cli/package-metadata.d.ts.map +1 -1
  53. package/dist/cli/preview-bindings.d.ts.map +1 -1
  54. package/dist/cloudflare/index.js +2 -2
  55. package/dist/cloudflare/preview-registry-store.d.ts +1 -1
  56. package/dist/cloudflare/preview-registry-store.d.ts.map +1 -1
  57. package/dist/cloudflare/types.d.ts +1 -1
  58. package/dist/cloudflare/types.d.ts.map +1 -1
  59. package/dist/config/binding-resolution-helpers.d.ts +5 -0
  60. package/dist/config/binding-resolution-helpers.d.ts.map +1 -1
  61. package/dist/config/compiler/bindings.d.ts +14 -0
  62. package/dist/config/compiler/bindings.d.ts.map +1 -0
  63. package/dist/config/compiler/core-helpers.d.ts +6 -0
  64. package/dist/config/compiler/core-helpers.d.ts.map +1 -0
  65. package/dist/config/compiler/do-workers.d.ts +34 -0
  66. package/dist/config/compiler/do-workers.d.ts.map +1 -0
  67. package/dist/config/compiler/paths.d.ts +18 -0
  68. package/dist/config/compiler/paths.d.ts.map +1 -0
  69. package/dist/config/compiler/types.d.ts +267 -0
  70. package/dist/config/compiler/types.d.ts.map +1 -0
  71. package/dist/config/compiler.d.ts +11 -175
  72. package/dist/config/compiler.d.ts.map +1 -1
  73. package/dist/config/deploy-resources.d.ts.map +1 -1
  74. package/dist/config/index.d.ts +1 -1
  75. package/dist/config/index.d.ts.map +1 -1
  76. package/dist/config/local-dev-vars.d.ts +15 -0
  77. package/dist/config/local-dev-vars.d.ts.map +1 -0
  78. package/dist/config/preview-resources.d.ts.map +1 -1
  79. package/dist/config/preview.d.ts.map +1 -1
  80. package/dist/config/resolve.d.ts.map +1 -1
  81. package/dist/config/resource-resolution.d.ts.map +1 -1
  82. package/dist/config/schema-bindings.d.ts +559 -19
  83. package/dist/config/schema-bindings.d.ts.map +1 -1
  84. package/dist/config/schema-env.d.ts +1306 -34
  85. package/dist/config/schema-env.d.ts.map +1 -1
  86. package/dist/config/schema-normalization.d.ts +97 -1
  87. package/dist/config/schema-normalization.d.ts.map +1 -1
  88. package/dist/config/schema-runtime.d.ts +245 -7
  89. package/dist/config/schema-runtime.d.ts.map +1 -1
  90. package/dist/config/schema.d.ts +2976 -57
  91. package/dist/config/schema.d.ts.map +1 -1
  92. package/dist/config-6m0n7d84.js +59 -0
  93. package/dist/config-7cf004ag.js +59 -0
  94. package/dist/config-b98dp58n.js +59 -0
  95. package/dist/config-cf3djhqy.js +59 -0
  96. package/dist/config-entry.js +1 -1
  97. package/dist/config-wa7hm0w9.js +59 -0
  98. package/dist/deploy-1jfagtn9.js +1055 -0
  99. package/dist/deploy-2afw0jfg.js +1055 -0
  100. package/dist/deploy-2fzj68kq.js +1055 -0
  101. package/dist/deploy-57nzn9wj.js +1045 -0
  102. package/dist/deploy-asyryrvm.js +1055 -0
  103. package/dist/deploy-hc927rw6.js +1045 -0
  104. package/dist/deploy-pnnf8tgy.js +1045 -0
  105. package/dist/deploy-q33bw715.js +1055 -0
  106. package/dist/deploy-tmdgecs3.js +1055 -0
  107. package/dist/deploy-v0y8kczr.js +1055 -0
  108. package/dist/deploy-xhj6zbcx.js +1055 -0
  109. package/dist/dev-1mvcts8w.js +2515 -0
  110. package/dist/dev-2a283xts.js +2515 -0
  111. package/dist/dev-62nhytf8.js +2505 -0
  112. package/dist/dev-75acm2xj.js +2478 -0
  113. package/dist/dev-802rg9dp.js +2515 -0
  114. package/dist/dev-d1bb2t0f.js +2515 -0
  115. package/dist/dev-dwry8494.js +2489 -0
  116. package/dist/dev-g6112y4w.js +2515 -0
  117. package/dist/dev-h2kneh95.js +2496 -0
  118. package/dist/dev-kybq3mwr.js +2489 -0
  119. package/dist/dev-n8qndkyg.js +2512 -0
  120. package/dist/dev-p32fkbwf.js +2489 -0
  121. package/dist/dev-qm9d4mfh.js +2478 -0
  122. package/dist/dev-rcthnse5.js +2473 -0
  123. package/dist/dev-server/dev-server-state.d.ts +1 -0
  124. package/dist/dev-server/dev-server-state.d.ts.map +1 -1
  125. package/dist/dev-server/miniflare-bindings.d.ts +44 -1
  126. package/dist/dev-server/miniflare-bindings.d.ts.map +1 -1
  127. package/dist/dev-server/miniflare-dev-config.d.ts +1 -0
  128. package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -1
  129. package/dist/dev-server/miniflare-log.d.ts +8 -0
  130. package/dist/dev-server/miniflare-log.d.ts.map +1 -1
  131. package/dist/dev-server/miniflare-worker-config.d.ts +31 -1
  132. package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -1
  133. package/dist/dev-server/server.d.ts.map +1 -1
  134. package/dist/dev-server/vite-process.d.ts +1 -0
  135. package/dist/dev-server/vite-process.d.ts.map +1 -1
  136. package/dist/dev-tgwja5mz.js +2496 -0
  137. package/dist/doctor-2shhdak6.js +245 -0
  138. package/dist/doctor-5g73w40j.js +245 -0
  139. package/dist/doctor-gamefzcs.js +245 -0
  140. package/dist/doctor-rn53ctfs.js +245 -0
  141. package/dist/index-01kehw41.js +348 -0
  142. package/dist/index-06bg0z9y.js +185 -0
  143. package/dist/index-0d7tw5r4.js +136 -0
  144. package/dist/index-0m6e4mxz.js +133 -0
  145. package/dist/index-0vah20er.js +1410 -0
  146. package/dist/index-0wa0ebm1.js +68 -0
  147. package/dist/index-1714y3cz.js +1410 -0
  148. package/dist/index-1qs5gcm7.js +895 -0
  149. package/dist/index-29k04v43.js +574 -0
  150. package/dist/index-2jywf4pz.js +1372 -0
  151. package/dist/index-2qhk9nbx.js +1372 -0
  152. package/dist/index-2vq6bveq.js +574 -0
  153. package/dist/index-36h8gkhb.js +1088 -0
  154. package/dist/index-38fq7pww.js +560 -0
  155. package/dist/index-3bxqn033.js +1410 -0
  156. package/dist/index-3jme4hgw.js +1234 -0
  157. package/dist/index-3p7s9mk9.js +360 -0
  158. package/dist/index-47w35sft.js +244 -0
  159. package/dist/index-4by4c7rm.js +52 -0
  160. package/dist/index-4phjwd6h.js +412 -0
  161. package/dist/index-4z5jrw0j.js +594 -0
  162. package/dist/index-51mzqy0d.js +895 -0
  163. package/dist/index-53pqqpq9.js +74 -0
  164. package/dist/index-5enq8ntr.js +1766 -0
  165. package/dist/index-5fnq9r9m.js +1410 -0
  166. package/dist/index-5w9f2b17.js +695 -0
  167. package/dist/index-627srx16.js +45 -0
  168. package/dist/index-6bqgf5x8.js +227 -0
  169. package/dist/index-6xknvbyk.js +1088 -0
  170. package/dist/index-7ef3ktz5.js +1372 -0
  171. package/dist/index-7hpjfdzh.js +185 -0
  172. package/dist/index-8052df4m.js +627 -0
  173. package/dist/index-82epjzrr.js +1410 -0
  174. package/dist/index-82z7rvz6.js +1238 -0
  175. package/dist/index-8atc1yb9.js +68 -0
  176. package/dist/index-8tj0awnv.js +476 -0
  177. package/dist/index-8x745h59.js +1069 -0
  178. package/dist/index-9bawzcny.js +574 -0
  179. package/dist/index-9bjjqdfc.js +236 -0
  180. package/dist/index-9d7x3vfr.js +236 -0
  181. package/dist/index-9nf8zs4p.js +1069 -0
  182. package/dist/index-acwbmagz.js +412 -0
  183. package/dist/index-aqjdaem7.js +74 -0
  184. package/dist/index-b6448fd0.js +133 -0
  185. package/dist/index-b9j55r7q.js +240 -0
  186. package/dist/index-bdatd1za.js +1372 -0
  187. package/dist/index-c3nxftnp.js +699 -0
  188. package/dist/index-c643s0gv.js +488 -0
  189. package/dist/index-d2md1j3d.js +185 -0
  190. package/dist/index-dbr6bfz6.js +528 -0
  191. package/dist/index-dd1g0g7e.js +360 -0
  192. package/dist/index-dktb9az5.js +1372 -0
  193. package/dist/index-dm9q84c7.js +360 -0
  194. package/dist/index-f51mkh13.js +1088 -0
  195. package/dist/index-f86n1fpd.js +55 -0
  196. package/dist/index-fnk0tkw7.js +412 -0
  197. package/dist/index-g5aq66bj.js +1534 -0
  198. package/dist/index-gj5qh491.js +54 -0
  199. package/dist/index-gq39t0rx.js +895 -0
  200. package/dist/index-h5dqna7q.js +1410 -0
  201. package/dist/index-hjs9j2g9.js +895 -0
  202. package/dist/index-hn5nbxbt.js +147 -0
  203. package/dist/index-hpjh0qjx.js +1723 -0
  204. package/dist/index-hs6ekcfs.js +412 -0
  205. package/dist/index-jdzrvnfj.js +52 -0
  206. package/dist/index-jg720mq7.js +476 -0
  207. package/dist/index-jrzddxvt.js +2167 -0
  208. package/dist/index-kgstnk6g.js +239 -0
  209. package/dist/index-khnw972v.js +117 -0
  210. package/dist/index-kwqff3ba.js +1410 -0
  211. package/dist/index-m2v0fj08.js +74 -0
  212. package/dist/index-mjve6tqn.js +447 -0
  213. package/dist/index-mkxzgn0q.js +1372 -0
  214. package/dist/index-mzmq3v0d.js +1088 -0
  215. package/dist/index-ng9n3znd.js +1372 -0
  216. package/dist/index-nhbkm2ba.js +467 -0
  217. package/dist/index-nrfhk0k5.js +1088 -0
  218. package/dist/index-p0zppqxm.js +467 -0
  219. package/dist/index-pkxf6h87.js +895 -0
  220. package/dist/index-pqp4312v.js +52 -0
  221. package/dist/index-pw9jn6kz.js +574 -0
  222. package/dist/index-q31ne0xa.js +412 -0
  223. package/dist/index-qf2dkqxh.js +249 -0
  224. package/dist/index-qmtdf7k5.js +639 -0
  225. package/dist/index-qwgr4q7s.js +37 -0
  226. package/dist/index-rab2dfh3.js +494 -0
  227. package/dist/index-rz7rx80s.js +1410 -0
  228. package/dist/index-s37h3jgk.js +572 -0
  229. package/dist/index-sb705m7d.js +52 -0
  230. package/dist/index-syscwrjp.js +1576 -0
  231. package/dist/index-t14zr0ys.js +1063 -0
  232. package/dist/index-tjc99447.js +68 -0
  233. package/dist/index-v35460hf.js +574 -0
  234. package/dist/index-v7q00d1e.js +1410 -0
  235. package/dist/index-vkkmx4xe.js +1372 -0
  236. package/dist/index-vrps1gky.js +2202 -0
  237. package/dist/index-w4c9vmvg.js +1517 -0
  238. package/dist/index-wqd8n2qk.js +574 -0
  239. package/dist/index-x12e6fzy.js +476 -0
  240. package/dist/index-xagpz645.js +2199 -0
  241. package/dist/index-xbth1r6e.js +572 -0
  242. package/dist/index-xm9fqhcb.js +447 -0
  243. package/dist/index-y59hnmd0.js +132 -0
  244. package/dist/index-y7mkb00x.js +133 -0
  245. package/dist/index-z40mjts9.js +212 -0
  246. package/dist/index-z5k5bjc7.js +1218 -0
  247. package/dist/index-z73sytma.js +895 -0
  248. package/dist/index-zjv6apef.js +1410 -0
  249. package/dist/index.js +8 -8
  250. package/dist/init-cwpergap.js +180 -0
  251. package/dist/login-83bjfhvz.js +77 -0
  252. package/dist/login-ddw888xb.js +77 -0
  253. package/dist/login-e7pytkdc.js +77 -0
  254. package/dist/login-fe0brfcr.js +77 -0
  255. package/dist/login-h7sm5trm.js +77 -0
  256. package/dist/login-vd0m3xr4.js +77 -0
  257. package/dist/previews-2wfvsjfy.js +1337 -0
  258. package/dist/previews-31feb8r3.js +1337 -0
  259. package/dist/previews-3w4pxqby.js +1337 -0
  260. package/dist/previews-93ttrf5f.js +1337 -0
  261. package/dist/previews-bdrefjzx.js +1337 -0
  262. package/dist/previews-cfcn56b4.js +1337 -0
  263. package/dist/previews-mssq1hrm.js +1337 -0
  264. package/dist/previews-tcaz1gt8.js +1337 -0
  265. package/dist/productions-4h80j2c7.js +505 -0
  266. package/dist/productions-86jaqt7m.js +505 -0
  267. package/dist/productions-bn2q31my.js +505 -0
  268. package/dist/productions-dv8g7f6g.js +505 -0
  269. package/dist/productions-e2m9s4tr.js +505 -0
  270. package/dist/productions-fgshs1m7.js +505 -0
  271. package/dist/productions-hphmt68n.js +505 -0
  272. package/dist/productions-vhq7yx86.js +505 -0
  273. package/dist/runtime/index.js +8 -8
  274. package/dist/secrets/local-secrets.d.ts +46 -0
  275. package/dist/secrets/local-secrets.d.ts.map +1 -0
  276. package/dist/secrets-8wcj47nh.js +91 -0
  277. package/dist/secrets-b2ww34ta.js +91 -0
  278. package/dist/secrets-b7g4z621.js +91 -0
  279. package/dist/shims/local-media-bindings.d.ts +19 -0
  280. package/dist/shims/local-media-bindings.d.ts.map +1 -0
  281. package/dist/shims/local-worker-loader.d.ts +3 -0
  282. package/dist/shims/local-worker-loader.d.ts.map +1 -0
  283. package/dist/sveltekit/index.js +163 -26
  284. package/dist/sveltekit/local-bindings.d.ts +4 -0
  285. package/dist/sveltekit/local-bindings.d.ts.map +1 -0
  286. package/dist/sveltekit/platform.d.ts +8 -0
  287. package/dist/sveltekit/platform.d.ts.map +1 -1
  288. package/dist/test/ai-search.d.ts +39 -0
  289. package/dist/test/ai-search.d.ts.map +1 -0
  290. package/dist/test/binding-hints.d.ts.map +1 -1
  291. package/dist/test/cf.d.ts +3 -3
  292. package/dist/test/containers.d.ts +87 -0
  293. package/dist/test/containers.d.ts.map +1 -0
  294. package/dist/test/index.d.ts +4 -1
  295. package/dist/test/index.d.ts.map +1 -1
  296. package/dist/test/index.js +2833 -543
  297. package/dist/test/local-worker-loader.d.ts +3 -0
  298. package/dist/test/local-worker-loader.d.ts.map +1 -0
  299. package/dist/test/offline-bindings.d.ts +65 -0
  300. package/dist/test/offline-bindings.d.ts.map +1 -0
  301. package/dist/test/queue.d.ts.map +1 -1
  302. package/dist/test/remote-ai.d.ts.map +1 -1
  303. package/dist/test/should-skip.d.ts +14 -0
  304. package/dist/test/should-skip.d.ts.map +1 -1
  305. package/dist/test/simple-context-bindings.d.ts.map +1 -1
  306. package/dist/test/simple-context-durable-objects.d.ts.map +1 -1
  307. package/dist/test/simple-context-gateway-script.d.ts +1 -1
  308. package/dist/test/simple-context-gateway-script.d.ts.map +1 -1
  309. package/dist/test/simple-context-lifecycle.d.ts.map +1 -1
  310. package/dist/test/simple-context-mfconfig.d.ts +4 -1
  311. package/dist/test/simple-context-mfconfig.d.ts.map +1 -1
  312. package/dist/test/simple-context-multi-worker.d.ts.map +1 -1
  313. package/dist/test/simple-context-startup.d.ts.map +1 -1
  314. package/dist/test/tail.d.ts.map +1 -1
  315. package/dist/test/utilities/artifacts.d.ts +11 -0
  316. package/dist/test/utilities/artifacts.d.ts.map +1 -0
  317. package/dist/test/utilities/context.d.ts +39 -0
  318. package/dist/test/utilities/context.d.ts.map +1 -0
  319. package/dist/test/utilities/d1.d.ts +21 -0
  320. package/dist/test/utilities/d1.d.ts.map +1 -0
  321. package/dist/test/utilities/env.d.ts +40 -0
  322. package/dist/test/utilities/env.d.ts.map +1 -0
  323. package/dist/test/utilities/kv.d.ts +11 -0
  324. package/dist/test/utilities/kv.d.ts.map +1 -0
  325. package/dist/test/utilities/media.d.ts +16 -0
  326. package/dist/test/utilities/media.d.ts.map +1 -0
  327. package/dist/test/utilities/platform.d.ts +38 -0
  328. package/dist/test/utilities/platform.d.ts.map +1 -0
  329. package/dist/test/utilities/queue.d.ts +5 -0
  330. package/dist/test/utilities/queue.d.ts.map +1 -0
  331. package/dist/test/utilities/r2.d.ts +12 -0
  332. package/dist/test/utilities/r2.d.ts.map +1 -0
  333. package/dist/test/utilities/workflows.d.ts +26 -0
  334. package/dist/test/utilities/workflows.d.ts.map +1 -0
  335. package/dist/test/utilities.d.ts +10 -106
  336. package/dist/test/utilities.d.ts.map +1 -1
  337. package/dist/types-2ejrbba1.js +695 -0
  338. package/dist/types-7jkbm95a.js +695 -0
  339. package/dist/types-a2fk9yns.js +695 -0
  340. package/dist/types-dyb3c6zw.js +695 -0
  341. package/dist/types-e2n9f3pd.js +695 -0
  342. package/dist/types-j4s6qcrc.js +695 -0
  343. package/dist/utils/send-email.d.ts.map +1 -1
  344. package/dist/utils/send-email.js +1 -1
  345. package/dist/vite/index.js +6 -6
  346. package/dist/vite/plugin-context.d.ts.map +1 -1
  347. package/dist/worker-663em30d.js +513 -0
  348. package/dist/worker-argxc7fb.js +513 -0
  349. package/dist/worker-entry/composed-worker.d.ts.map +1 -1
  350. package/dist/worker-entry/surface-paths.d.ts +2 -0
  351. package/dist/worker-entry/surface-paths.d.ts.map +1 -1
  352. package/dist/worker-fcdsnj14.js +513 -0
  353. package/dist/worker-fk42rzse.js +513 -0
  354. package/dist/worker-jkemk8d2.js +513 -0
  355. package/dist/worker-m4ze8djx.js +513 -0
  356. package/dist/worker-wnan5dca.js +513 -0
  357. package/dist/worker-yw3atfb1.js +513 -0
  358. package/dist/workflows/local-workflow-entrypoints.d.ts +7 -0
  359. package/dist/workflows/local-workflow-entrypoints.d.ts.map +1 -0
  360. package/package.json +13 -12
@@ -0,0 +1,91 @@
1
+ import {
2
+ deleteLocalSecret,
3
+ listLocalSecrets,
4
+ writeLocalSecret
5
+ } from "./index-khnw972v.js";
6
+ import"./index-c3nxftnp.js";
7
+ import"./index-syscwrjp.js";
8
+ import"./index-1d4jg11n.js";
9
+ import"./index-mg8vwqxf.js";
10
+ import"./index-z40mjts9.js";
11
+ import"./index-q8f4kawk.js";
12
+ import"./index-37x76zdn.js";
13
+
14
+ // src/cli/commands/secrets.ts
15
+ function getStringOption(options, key) {
16
+ const value = options[key];
17
+ return typeof value === "string" ? value : undefined;
18
+ }
19
+ function getCwd(options) {
20
+ return options.cwd ?? process.cwd();
21
+ }
22
+ function requireLocalFlag(parsed, logger) {
23
+ if (parsed.options.local === true) {
24
+ return true;
25
+ }
26
+ logger.error("Local Secrets Store commands require --local.");
27
+ return false;
28
+ }
29
+ function requireStoreAndName(parsed, logger) {
30
+ const storeId = getStringOption(parsed.options, "store");
31
+ const name = getStringOption(parsed.options, "name");
32
+ if (!storeId || !name) {
33
+ logger.error("Pass --store <id> and --name <name>.");
34
+ return;
35
+ }
36
+ return { storeId, name };
37
+ }
38
+ function formatSecretRef(storeId, name) {
39
+ return `${storeId}/${name}`;
40
+ }
41
+ function usage() {
42
+ return [
43
+ "devflare secrets --local --store <id> --name <name> --value <value>",
44
+ "devflare secrets --local --store <id> --list",
45
+ "devflare secrets --local --store <id> --name <name> --delete"
46
+ ].join(`
47
+ `);
48
+ }
49
+ function runSecretsCommand(parsed, logger, options) {
50
+ if (!requireLocalFlag(parsed, logger)) {
51
+ return { exitCode: 1, output: usage() };
52
+ }
53
+ const cwd = getCwd(options);
54
+ const storeId = getStringOption(parsed.options, "store");
55
+ if (parsed.options.list === true) {
56
+ const rows = listLocalSecrets({ cwd, storeId });
57
+ const output2 = rows.map((row) => formatSecretRef(row.storeId, row.name)).join(`
58
+ `);
59
+ if (output2) {
60
+ logger.info(output2);
61
+ }
62
+ return { exitCode: 0, output: output2 };
63
+ }
64
+ const required = requireStoreAndName(parsed, logger);
65
+ if (!required) {
66
+ return { exitCode: 1, output: usage() };
67
+ }
68
+ if (parsed.options.delete === true) {
69
+ deleteLocalSecret({ cwd, storeId: required.storeId, name: required.name });
70
+ const output2 = formatSecretRef(required.storeId, required.name);
71
+ logger.success(`Deleted local secret ${output2}`);
72
+ return { exitCode: 0, output: output2 };
73
+ }
74
+ const value = getStringOption(parsed.options, "value");
75
+ if (value === undefined) {
76
+ logger.error("Pass --value <value>, --list, or --delete.");
77
+ return { exitCode: 1, output: usage() };
78
+ }
79
+ writeLocalSecret({
80
+ cwd,
81
+ storeId: required.storeId,
82
+ name: required.name,
83
+ value
84
+ });
85
+ const output = formatSecretRef(required.storeId, required.name);
86
+ logger.success(`Stored local secret ${output}`);
87
+ return { exitCode: 0, output };
88
+ }
89
+ export {
90
+ runSecretsCommand
91
+ };
@@ -0,0 +1,91 @@
1
+ import {
2
+ deleteLocalSecret,
3
+ listLocalSecrets,
4
+ writeLocalSecret
5
+ } from "./index-0d7tw5r4.js";
6
+ import"./index-c3nxftnp.js";
7
+ import"./index-syscwrjp.js";
8
+ import"./index-1d4jg11n.js";
9
+ import"./index-mg8vwqxf.js";
10
+ import"./index-z40mjts9.js";
11
+ import"./index-q8f4kawk.js";
12
+ import"./index-37x76zdn.js";
13
+
14
+ // src/cli/commands/secrets.ts
15
+ function getStringOption(options, key) {
16
+ const value = options[key];
17
+ return typeof value === "string" ? value : undefined;
18
+ }
19
+ function getCwd(options) {
20
+ return options.cwd ?? process.cwd();
21
+ }
22
+ function requireLocalFlag(parsed, logger) {
23
+ if (parsed.options.local === true) {
24
+ return true;
25
+ }
26
+ logger.error("Local Secrets Store commands require --local.");
27
+ return false;
28
+ }
29
+ function requireStoreAndName(parsed, logger) {
30
+ const storeId = getStringOption(parsed.options, "store");
31
+ const name = getStringOption(parsed.options, "name");
32
+ if (!storeId || !name) {
33
+ logger.error("Pass --store <id> and --name <name>.");
34
+ return;
35
+ }
36
+ return { storeId, name };
37
+ }
38
+ function formatSecretRef(storeId, name) {
39
+ return `${storeId}/${name}`;
40
+ }
41
+ function usage() {
42
+ return [
43
+ "devflare secrets --local --store <id> --name <name> --value <value>",
44
+ "devflare secrets --local --store <id> --list",
45
+ "devflare secrets --local --store <id> --name <name> --delete"
46
+ ].join(`
47
+ `);
48
+ }
49
+ function runSecretsCommand(parsed, logger, options) {
50
+ if (!requireLocalFlag(parsed, logger)) {
51
+ return { exitCode: 1, output: usage() };
52
+ }
53
+ const cwd = getCwd(options);
54
+ const storeId = getStringOption(parsed.options, "store");
55
+ if (parsed.options.list === true) {
56
+ const rows = listLocalSecrets({ cwd, storeId });
57
+ const output2 = rows.map((row) => formatSecretRef(row.storeId, row.name)).join(`
58
+ `);
59
+ if (output2) {
60
+ logger.info(output2);
61
+ }
62
+ return { exitCode: 0, output: output2 };
63
+ }
64
+ const required = requireStoreAndName(parsed, logger);
65
+ if (!required) {
66
+ return { exitCode: 1, output: usage() };
67
+ }
68
+ if (parsed.options.delete === true) {
69
+ deleteLocalSecret({ cwd, storeId: required.storeId, name: required.name });
70
+ const output2 = formatSecretRef(required.storeId, required.name);
71
+ logger.success(`Deleted local secret ${output2}`);
72
+ return { exitCode: 0, output: output2 };
73
+ }
74
+ const value = getStringOption(parsed.options, "value");
75
+ if (value === undefined) {
76
+ logger.error("Pass --value <value>, --list, or --delete.");
77
+ return { exitCode: 1, output: usage() };
78
+ }
79
+ writeLocalSecret({
80
+ cwd,
81
+ storeId: required.storeId,
82
+ name: required.name,
83
+ value
84
+ });
85
+ const output = formatSecretRef(required.storeId, required.name);
86
+ logger.success(`Stored local secret ${output}`);
87
+ return { exitCode: 0, output };
88
+ }
89
+ export {
90
+ runSecretsCommand
91
+ };
@@ -0,0 +1,19 @@
1
+ import type { DevflareConfig } from '../config';
2
+ export declare function createLocalImagesBinding(): ImagesBinding;
3
+ export declare function createLocalMediaBinding(): MediaBinding;
4
+ export interface LocalBindingShimServiceConfig {
5
+ localBindingNames: string[];
6
+ serviceBindings: Record<string, {
7
+ name: string;
8
+ entrypoint: string;
9
+ }>;
10
+ workers: Array<{
11
+ name: string;
12
+ modules: true;
13
+ script: string;
14
+ compatibilityDate: string;
15
+ compatibilityFlags?: string[];
16
+ }>;
17
+ }
18
+ export declare function buildLocalBindingShimServiceConfig(config: Pick<DevflareConfig, 'bindings' | 'compatibilityDate' | 'compatibilityFlags'>): LocalBindingShimServiceConfig;
19
+ //# sourceMappingURL=local-media-bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-media-bindings.d.ts","sourceRoot":"","sources":["../../src/shims/local-media-bindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AA6F/C,wBAAgB,wBAAwB,IAAI,aAAa,CAgBxD;AA0CD,wBAAgB,uBAAuB,IAAI,YAAY,CAMtD;AAED,MAAM,WAAW,6BAA6B;IAC7C,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrE,OAAO,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,IAAI,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;QACd,iBAAiB,EAAE,MAAM,CAAA;QACzB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;KAC7B,CAAC,CAAA;CACF;AAyMD,wBAAgB,kCAAkC,CACjD,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,mBAAmB,GAAG,oBAAoB,CAAC,GACnF,6BAA6B,CAkC/B"}
@@ -0,0 +1,3 @@
1
+ export declare function createLocalWorkerLoaderBinding(): WorkerLoader;
2
+ export declare function disposeLocalWorkerLoaderBindings(): Promise<void>;
3
+ //# sourceMappingURL=local-worker-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-worker-loader.d.ts","sourceRoot":"","sources":["../../src/shims/local-worker-loader.ts"],"names":[],"mappings":"AAuEA,wBAAgB,8BAA8B,IAAI,YAAY,CAY7D;AAED,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,IAAI,CAAC,CAOtE"}
@@ -1,21 +1,119 @@
1
- import"../index-97x94h0m.js";
1
+ import"../index-dbr6bfz6.js";
2
2
  import {
3
+ createLocalWorkerLoaderBinding,
3
4
  extractBindingHints
4
- } from "../index-xskax7r3.js";
5
+ } from "../index-y59hnmd0.js";
6
+ import {
7
+ createLocalImagesBinding,
8
+ createLocalMediaBinding
9
+ } from "../index-dm9q84c7.js";
10
+ import {
11
+ buildLocalSecretNodeBindings
12
+ } from "../index-hn5nbxbt.js";
5
13
  import {
6
14
  createEnvProxy,
7
- getClient
8
- } from "../index-a75ejnvt.js";
9
- import"../index-124e9t4t.js";
10
- import"../index-kawa49m8.js";
15
+ createFetchEvent,
16
+ getClient,
17
+ runWithEventContext,
18
+ setBindingHints
19
+ } from "../index-vrps1gky.js";
20
+ import {
21
+ createLocalSendEmailBinding
22
+ } from "../index-kgstnk6g.js";
23
+ import"../index-c3nxftnp.js";
11
24
  import {
12
- loadConfig
13
- } from "../index-5vzcszr2.js";
25
+ loadConfig,
26
+ normalizeHyperdriveBinding
27
+ } from "../index-syscwrjp.js";
14
28
  import"../index-1d4jg11n.js";
15
29
  import"../index-mg8vwqxf.js";
16
- import"../index-c0whkev9.js";
30
+ import"../index-z40mjts9.js";
17
31
  import"../index-q8f4kawk.js";
18
32
  import"../index-37x76zdn.js";
33
+ // src/sveltekit/local-bindings.ts
34
+ function defaultPortForDatabaseUrl(url) {
35
+ if (url.port) {
36
+ return Number(url.port);
37
+ }
38
+ return url.protocol === "mysql:" ? 3306 : 5432;
39
+ }
40
+ function createLocalHyperdriveBinding(connectionString) {
41
+ const url = new URL(connectionString);
42
+ return {
43
+ connectionString,
44
+ host: url.hostname,
45
+ port: defaultPortForDatabaseUrl(url),
46
+ user: decodeURIComponent(url.username),
47
+ password: decodeURIComponent(url.password),
48
+ database: decodeURIComponent(url.pathname.replace(/^\//, "")),
49
+ connect() {
50
+ throw new Error("Devflare local Hyperdrive exposes connectionString for local database clients. Raw socket connect() is not implemented in the SvelteKit Node adapter path.");
51
+ }
52
+ };
53
+ }
54
+ function buildLocalHyperdriveBindings(config) {
55
+ const bindings = {};
56
+ for (const [name, binding] of Object.entries(config.bindings?.hyperdrive ?? {})) {
57
+ const normalized = normalizeHyperdriveBinding(binding);
58
+ if (normalized.localConnectionString) {
59
+ bindings[name] = createLocalHyperdriveBinding(normalized.localConnectionString);
60
+ }
61
+ }
62
+ return bindings;
63
+ }
64
+ function buildSvelteKitLocalBindings(config, cwd) {
65
+ const bindings = {
66
+ ...buildLocalHyperdriveBindings(config),
67
+ ...buildLocalSecretNodeBindings(config, cwd)
68
+ };
69
+ for (const [name, binding] of Object.entries(config.bindings?.sendEmail ?? {})) {
70
+ bindings[name] = createLocalSendEmailBinding(binding);
71
+ }
72
+ for (const name of Object.keys(config.bindings?.workerLoaders ?? {})) {
73
+ bindings[name] = createLocalWorkerLoaderBinding();
74
+ }
75
+ for (const name of Object.keys(config.bindings?.images ?? {})) {
76
+ bindings[name] = createLocalImagesBinding();
77
+ }
78
+ for (const name of Object.keys(config.bindings?.media ?? {})) {
79
+ bindings[name] = createLocalMediaBinding();
80
+ }
81
+ return bindings;
82
+ }
83
+ function overlayLocalBindings(baseEnv, localBindings) {
84
+ if (Object.keys(localBindings).length === 0) {
85
+ return baseEnv;
86
+ }
87
+ return new Proxy(baseEnv, {
88
+ get(target, prop, receiver) {
89
+ if (typeof prop === "string" && prop in localBindings) {
90
+ return localBindings[prop];
91
+ }
92
+ return Reflect.get(target, prop, receiver);
93
+ },
94
+ has(target, prop) {
95
+ return typeof prop === "string" && prop in localBindings || Reflect.has(target, prop);
96
+ },
97
+ ownKeys(target) {
98
+ return Array.from(new Set([
99
+ ...Reflect.ownKeys(target),
100
+ ...Reflect.ownKeys(localBindings)
101
+ ]));
102
+ },
103
+ getOwnPropertyDescriptor(target, prop) {
104
+ if (typeof prop === "string" && prop in localBindings) {
105
+ return {
106
+ configurable: true,
107
+ enumerable: true,
108
+ writable: false,
109
+ value: localBindings[prop]
110
+ };
111
+ }
112
+ return Reflect.getOwnPropertyDescriptor(target, prop);
113
+ }
114
+ });
115
+ }
116
+
19
117
  // src/sveltekit/platform.ts
20
118
  var platformCache = null;
21
119
  function fingerprintHints(hints) {
@@ -25,6 +123,9 @@ function fingerprintHints(hints) {
25
123
  function getPlatformCacheKey(bridgeUrl, hints) {
26
124
  return `${bridgeUrl}\x00${fingerprintHints(hints)}`;
27
125
  }
126
+ function shouldUseCachedPlatform(localBindings) {
127
+ return Object.keys(localBindings).length === 0;
128
+ }
28
129
  function createDevExecutionContext(pendingErrors) {
29
130
  return {
30
131
  waitUntil: (promise) => {
@@ -39,15 +140,16 @@ function createDevExecutionContext(pendingErrors) {
39
140
  async function createDevflarePlatform(options = {}) {
40
141
  const {
41
142
  bridgeUrl = `ws://localhost:${process.env.DEVFLARE_BRIDGE_PORT ?? 8787}`,
42
- hints = {}
143
+ hints = {},
144
+ localBindings = {}
43
145
  } = options;
44
146
  const cacheKey = getPlatformCacheKey(bridgeUrl, hints);
45
- if (platformCache?.key === cacheKey) {
147
+ if (shouldUseCachedPlatform(localBindings) && platformCache?.key === cacheKey) {
46
148
  return platformCache.platform;
47
149
  }
48
150
  const client = getClient({ url: bridgeUrl });
49
151
  await client.connect();
50
- const env = createEnvProxy({ client, hints });
152
+ const env = overlayLocalBindings(createEnvProxy({ client, hints }), localBindings);
51
153
  const pendingErrors = [];
52
154
  const context = createDevExecutionContext(pendingErrors);
53
155
  const caches = {
@@ -68,7 +170,9 @@ async function createDevflarePlatform(options = {}) {
68
170
  asOrganization: "Devflare Dev"
69
171
  };
70
172
  const platform = { env, context, caches, cf, pendingErrors };
71
- platformCache = { key: cacheKey, platform };
173
+ if (shouldUseCachedPlatform(localBindings)) {
174
+ platformCache = { key: cacheKey, platform };
175
+ }
72
176
  return platform;
73
177
  }
74
178
  function createMockCache() {
@@ -101,21 +205,57 @@ function getBridgePort() {
101
205
  return parseInt(process.env.DEVFLARE_BRIDGE_PORT ?? "8787", 10);
102
206
  }
103
207
  var configCache = null;
104
- async function loadHintsFromConfig() {
208
+ function getConfigFileFromEnv() {
209
+ return process.env.DEVFLARE_CONFIG_PATH;
210
+ }
211
+ async function loadConfigFromCurrentCwd() {
105
212
  const cwd = process.cwd();
106
- if (configCache?.cwd === cwd) {
107
- const config2 = await configCache.promise;
108
- return config2 ? extractBindingHints(config2) : {};
213
+ const configFile = getConfigFileFromEnv();
214
+ if (configCache?.cwd === cwd && configCache.configFile === configFile) {
215
+ return configCache.promise;
109
216
  }
110
- const promise = loadConfig({ cwd }).catch((err) => {
217
+ const promise = loadConfig({ cwd, configFile }).catch((err) => {
111
218
  if (process.env.DEVFLARE_DEBUG) {
112
219
  console.warn("[devflare] Failed to load config for hints:", err.message);
113
220
  }
114
221
  return null;
115
222
  });
116
- configCache = { cwd, promise };
117
- const config = await promise;
118
- return config ? extractBindingHints(config) : {};
223
+ configCache = { cwd, configFile, promise };
224
+ return promise;
225
+ }
226
+ async function loadPlatformOptionsFromConfig() {
227
+ const cwd = process.cwd();
228
+ const config = await loadConfigFromCurrentCwd();
229
+ if (!config) {
230
+ return { hints: {}, localBindings: {} };
231
+ }
232
+ return {
233
+ hints: extractBindingHints(config),
234
+ localBindings: buildSvelteKitLocalBindings(config, cwd)
235
+ };
236
+ }
237
+ function resolveWithPlatformContext(event, resolve, platform) {
238
+ if (!(event.request instanceof Request)) {
239
+ return resolve(event);
240
+ }
241
+ const fetchEvent = createFetchEvent(event.request, platform.env, platform.context);
242
+ return runWithEventContext(fetchEvent, () => resolve(event));
243
+ }
244
+ async function createPlatformWithRequestContext(event, resolve, options) {
245
+ const platform = await createDevflarePlatform(options);
246
+ event.platform = platform;
247
+ return resolveWithPlatformContext(event, resolve, platform);
248
+ }
249
+ async function getAutoPlatformOptions() {
250
+ const options = await loadPlatformOptionsFromConfig();
251
+ setBindingHints(options.hints ?? {});
252
+ return options;
253
+ }
254
+ async function getCustomPlatformOptions(options) {
255
+ if (options.hints) {
256
+ setBindingHints(options.hints);
257
+ }
258
+ return options;
119
259
  }
120
260
  function createHandle(options = {}) {
121
261
  const { shouldEnable, ...platformOptions } = options;
@@ -123,8 +263,7 @@ function createHandle(options = {}) {
123
263
  const enabled = shouldEnable ? shouldEnable() : process.env.DEVFLARE_DEV === "true";
124
264
  if (enabled) {
125
265
  try {
126
- const platform = await createDevflarePlatform(platformOptions);
127
- event.platform = platform;
266
+ return await createPlatformWithRequestContext(event, resolve, await getCustomPlatformOptions(platformOptions));
128
267
  } catch (error) {
129
268
  console.error("[devflare] Failed to create platform:", error);
130
269
  }
@@ -137,9 +276,7 @@ var handle = async (input) => {
137
276
  const enabled = process.env.DEVFLARE_DEV === "true";
138
277
  if (enabled) {
139
278
  try {
140
- const hints = await loadHintsFromConfig();
141
- const platform = await createDevflarePlatform({ hints });
142
- event.platform = platform;
279
+ return await createPlatformWithRequestContext(event, resolve, await getAutoPlatformOptions());
143
280
  } catch (error) {
144
281
  console.error("[devflare] Failed to create platform:", error);
145
282
  }
@@ -0,0 +1,4 @@
1
+ import { type DevflareConfig } from '../config';
2
+ export declare function buildSvelteKitLocalBindings(config: DevflareConfig, cwd: string): Record<string, unknown>;
3
+ export declare function overlayLocalBindings(baseEnv: Record<string, unknown>, localBindings: Record<string, unknown>): Record<string, unknown>;
4
+ //# sourceMappingURL=local-bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-bindings.d.ts","sourceRoot":"","sources":["../../src/sveltekit/local-bindings.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,cAAc,EACnB,MAAM,WAAW,CAAA;AAgDlB,wBAAgB,2BAA2B,CAC1C,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,MAAM,GACT,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuBzB;AAED,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoCzB"}
@@ -24,6 +24,12 @@ export interface DevflarePlatformOptions {
24
24
  * Keys are binding names, values are binding types
25
25
  */
26
26
  hints?: BindingHints;
27
+ /**
28
+ * Local Node-side binding shims to prefer over the bridge-backed env.
29
+ * Used by the SvelteKit handle for bindings whose local API exposes
30
+ * synchronous properties or rich transformation objects.
31
+ */
32
+ localBindings?: Record<string, unknown>;
27
33
  }
28
34
  /**
29
35
  * Drain errors captured from `ctx.waitUntil()` calls on a dev platform.
@@ -117,6 +123,7 @@ export interface CreateHandleOptions extends DevflarePlatformOptions {
117
123
  export declare function createHandle<T extends {
118
124
  event: {
119
125
  platform?: unknown;
126
+ request?: Request;
120
127
  };
121
128
  resolve: (event: unknown) => Response | Promise<Response>;
122
129
  }>(options?: CreateHandleOptions): (input: T) => Promise<Response>;
@@ -145,6 +152,7 @@ export declare function createHandle<T extends {
145
152
  export declare const handle: <T extends {
146
153
  event: {
147
154
  platform?: unknown;
155
+ request?: Request;
148
156
  };
149
157
  resolve: (event: unknown) => Response | Promise<Response>;
150
158
  }>(input: T) => Promise<Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/sveltekit/platform.ts"],"names":[],"mappings":"AAQA,OAAO,EAA6B,KAAK,YAAY,EAAE,MAAM,WAAW,CAAA;AAOxE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,OAAO,EAAE,gBAAgB,CAAA;IACzB,MAAM,EAAE,YAAY,CAAA;IACpB,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,uBAAuB;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,CAAA;CACpB;AA4CD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,EAAE,CAQlE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,sBAAsB,CAC3C,OAAO,GAAE,uBAA4B,GACnC,OAAO,CAAC,QAAQ,CAAC,CAkDnB;AAyBD;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAwCD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IACnE;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAA;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CAAE,EAClI,OAAO,GAAE,mBAAwB,GAC/B,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAqBjC;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,MAAM,GAAU,CAAC,SAAS;IAAE,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CAAE,SAC3H,CAAC,KACN,OAAO,CAAC,QAAQ,CAmBlB,CAAA"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/sveltekit/platform.ts"],"names":[],"mappings":"AAQA,OAAO,EAA8C,KAAK,YAAY,EAAE,MAAM,WAAW,CAAA;AASzF;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,OAAO,EAAE,gBAAgB,CAAA;IACzB,MAAM,EAAE,YAAY,CAAA;IACpB,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,uBAAuB;IACvC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,CAAA;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACvC;AAgDD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,EAAE,CAQlE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,sBAAsB,CAC3C,OAAO,GAAE,uBAA4B,GACnC,OAAO,CAAC,QAAQ,CAAC,CAqDnB;AAyBD;;GAEG;AACH,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAsGD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IACnE;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAA;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CAAE,EACrJ,OAAO,GAAE,mBAAwB,GAC/B,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAwBjC;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,MAAM,GAAU,CAAC,SAAS;IAAE,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CAAE,SAC9I,CAAC,KACN,OAAO,CAAC,QAAQ,CAoBlB,CAAA"}
@@ -0,0 +1,39 @@
1
+ type AISearchChunk = AiSearchSearchResponse['chunks'][number];
2
+ export interface MockAISearchItemFixture {
3
+ id?: string;
4
+ key: string;
5
+ content?: string;
6
+ contentType?: string;
7
+ metadata?: Record<string, unknown>;
8
+ status?: AiSearchItemInfo['status'];
9
+ chunks?: string[];
10
+ }
11
+ export interface MockAISearchInstanceOptions {
12
+ id?: string;
13
+ namespace?: string;
14
+ info?: Partial<AiSearchInstanceInfo>;
15
+ items?: MockAISearchItemFixture[];
16
+ chatMessage?: string | ((chunks: AISearchChunk[], request: AiSearchChatCompletionsRequest) => string);
17
+ }
18
+ export interface MockAISearchNamespaceOptions {
19
+ namespace?: string;
20
+ instances?: Record<string, MockAISearchInstanceOptions | AiSearchInstance>;
21
+ }
22
+ export type MockAISearchInstance = AiSearchInstance & {
23
+ _getSearches(): AiSearchSearchRequest[];
24
+ _getItems(): AiSearchItemInfo[];
25
+ _getJobs(): AiSearchJobInfo[];
26
+ };
27
+ export type MockAISearchNamespace = AiSearchNamespace & {
28
+ _getInstances(): string[];
29
+ };
30
+ /**
31
+ * Creates a deterministic AI Search instance binding for pure unit tests.
32
+ */
33
+ export declare function createMockAISearchInstance(options?: MockAISearchInstanceOptions): MockAISearchInstance;
34
+ /**
35
+ * Creates a deterministic AI Search namespace binding for pure unit tests.
36
+ */
37
+ export declare function createMockAISearchNamespace(options?: MockAISearchNamespaceOptions): MockAISearchNamespace;
38
+ export {};
39
+ //# sourceMappingURL=ai-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-search.d.ts","sourceRoot":"","sources":["../../src/test/ai-search.ts"],"names":[],"mappings":"AAQA,KAAK,aAAa,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAG7D,MAAM,WAAW,uBAAuB;IACvC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,MAAM,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IACnC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC3C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACpC,KAAK,CAAC,EAAE,uBAAuB,EAAE,CAAA;IACjC,WAAW,CAAC,EACT,MAAM,GACN,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,8BAA8B,KAAK,MAAM,CAAC,CAAA;CACjF;AAED,MAAM,WAAW,4BAA4B;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,2BAA2B,GAAG,gBAAgB,CAAC,CAAA;CAC1E;AAED,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,GAAG;IACrD,YAAY,IAAI,qBAAqB,EAAE,CAAA;IACvC,SAAS,IAAI,gBAAgB,EAAE,CAAA;IAC/B,QAAQ,IAAI,eAAe,EAAE,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACvD,aAAa,IAAI,MAAM,EAAE,CAAA;CACzB,CAAA;AAqJD;;GAEG;AACH,wBAAgB,0BAA0B,CACzC,OAAO,GAAE,2BAAgC,GACvC,oBAAoB,CAiXtB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAC1C,OAAO,GAAE,4BAAiC,GACxC,qBAAqB,CA2IvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"binding-hints.d.ts","sourceRoot":"","sources":["../../src/test/binding-hints.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAEnD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,YAAY,CAgDxE"}
1
+ {"version":3,"file":"binding-hints.d.ts","sourceRoot":"","sources":["../../src/test/binding-hints.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAEnD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,YAAY,CAqDxE"}
package/dist/test/cf.d.ts CHANGED
@@ -16,7 +16,7 @@ export type { TraceItemOptions, TailTriggerResult } from './tail';
16
16
  * - `cf.queue` — Queue consumer testing
17
17
  * - `cf.scheduled` — Cron/scheduled handler testing
18
18
  * - `cf.worker` — Fetch handler testing
19
- * - `cf.tail` — Tail helper surface (auto-detects `src/tail.ts` when present; no public `files.tail` config key)
19
+ * - `cf.tail` — Tail helper surface (uses `files.tail`, or auto-detects `src/tail.ts` when present)
20
20
  *
21
21
  * The helpers use the real Miniflare-backed bindings created by `createTestContext()`,
22
22
  * but several helper surfaces still synthesize event/controller objects around those
@@ -133,8 +133,8 @@ export declare const cf: {
133
133
  * - `cf.tail.trigger(events)` — Trigger tail handler with trace items
134
134
  * - `cf.tail.create(options)` — Create a TraceItem with defaults
135
135
  *
136
- * When `createTestContext()` finds `src/tail.ts`, `cf.tail.trigger()` is wired automatically.
137
- * There is still no public `files.tail` config key.
136
+ * When `createTestContext()` finds `files.tail` or `src/tail.ts`,
137
+ * `cf.tail.trigger()` is wired automatically.
138
138
  */
139
139
  tail: {
140
140
  trigger: (items: Array<import("@cloudflare/workers-types").TraceItem | import("./tail").TraceItemOptions>) => Promise<import("./tail").TailTriggerResult>;