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.
- package/LLM.md +6807 -888
- package/README.md +375 -957
- package/dist/account-05zgta47.js +475 -0
- package/dist/account-b2ag1esh.js +475 -0
- package/dist/account-bxtcz61a.js +475 -0
- package/dist/account-gyfqg964.js +475 -0
- package/dist/account-q6pvs9d9.js +475 -0
- package/dist/account-rp4zbvw1.js +475 -0
- package/dist/bridge/client.d.ts +5 -0
- package/dist/bridge/client.d.ts.map +1 -1
- package/dist/bridge/gateway-runtime.d.ts +1 -1
- package/dist/bridge/gateway-runtime.d.ts.map +1 -1
- package/dist/bridge/miniflare.d.ts +67 -0
- package/dist/bridge/miniflare.d.ts.map +1 -1
- package/dist/bridge/proxy.d.ts +2 -1
- package/dist/bridge/proxy.d.ts.map +1 -1
- package/dist/bridge/server.d.ts.map +1 -1
- package/dist/browser.d.ts +2520 -40
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +3 -3
- package/dist/build-2s5paw5p.js +54 -0
- package/dist/build-4c350cp7.js +54 -0
- package/dist/build-e7wym63t.js +54 -0
- package/dist/build-ge6qp3t4.js +54 -0
- package/dist/build-ta8c6t11.js +54 -0
- package/dist/build-wvjj8f28.js +54 -0
- package/dist/build-ypg6f2kw.js +54 -0
- package/dist/build-yts8wwgf.js +54 -0
- package/dist/build-yzkdqexs.js +54 -0
- package/dist/cli/build-manifest.d.ts +12 -0
- package/dist/cli/build-manifest.d.ts.map +1 -1
- package/dist/cli/commands/deploy/metadata.d.ts +18 -0
- package/dist/cli/commands/deploy/metadata.d.ts.map +1 -0
- package/dist/cli/commands/deploy/prepare.d.ts +23 -0
- package/dist/cli/commands/deploy/prepare.d.ts.map +1 -0
- package/dist/cli/commands/deploy/runtime.d.ts +4 -0
- package/dist/cli/commands/deploy/runtime.d.ts.map +1 -0
- package/dist/cli/commands/deploy/verification.d.ts +36 -0
- package/dist/cli/commands/deploy/verification.d.ts.map +1 -0
- package/dist/cli/commands/deploy.d.ts +2 -2
- package/dist/cli/commands/deploy.d.ts.map +1 -1
- package/dist/cli/commands/secrets.d.ts +4 -0
- package/dist/cli/commands/secrets.d.ts.map +1 -0
- package/dist/cli/commands/type-generation/generator.d.ts +67 -1
- package/dist/cli/commands/type-generation/generator.d.ts.map +1 -1
- package/dist/cli/help-pages/pages/core.d.ts +1 -1
- package/dist/cli/help-pages/pages/core.d.ts.map +1 -1
- package/dist/cli/help-pages/shared.d.ts +1 -1
- package/dist/cli/help-pages/shared.d.ts.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -2
- package/dist/cli/package-metadata.d.ts.map +1 -1
- package/dist/cli/preview-bindings.d.ts.map +1 -1
- package/dist/cloudflare/index.js +2 -2
- package/dist/cloudflare/preview-registry-store.d.ts +1 -1
- package/dist/cloudflare/preview-registry-store.d.ts.map +1 -1
- package/dist/cloudflare/types.d.ts +1 -1
- package/dist/cloudflare/types.d.ts.map +1 -1
- package/dist/config/binding-resolution-helpers.d.ts +5 -0
- package/dist/config/binding-resolution-helpers.d.ts.map +1 -1
- package/dist/config/compiler/bindings.d.ts +14 -0
- package/dist/config/compiler/bindings.d.ts.map +1 -0
- package/dist/config/compiler/core-helpers.d.ts +6 -0
- package/dist/config/compiler/core-helpers.d.ts.map +1 -0
- package/dist/config/compiler/do-workers.d.ts +34 -0
- package/dist/config/compiler/do-workers.d.ts.map +1 -0
- package/dist/config/compiler/paths.d.ts +18 -0
- package/dist/config/compiler/paths.d.ts.map +1 -0
- package/dist/config/compiler/types.d.ts +267 -0
- package/dist/config/compiler/types.d.ts.map +1 -0
- package/dist/config/compiler.d.ts +11 -175
- package/dist/config/compiler.d.ts.map +1 -1
- package/dist/config/deploy-resources.d.ts.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/local-dev-vars.d.ts +15 -0
- package/dist/config/local-dev-vars.d.ts.map +1 -0
- package/dist/config/preview-resources.d.ts.map +1 -1
- package/dist/config/preview.d.ts.map +1 -1
- package/dist/config/resolve.d.ts.map +1 -1
- package/dist/config/resource-resolution.d.ts.map +1 -1
- package/dist/config/schema-bindings.d.ts +559 -19
- package/dist/config/schema-bindings.d.ts.map +1 -1
- package/dist/config/schema-env.d.ts +1306 -34
- package/dist/config/schema-env.d.ts.map +1 -1
- package/dist/config/schema-normalization.d.ts +97 -1
- package/dist/config/schema-normalization.d.ts.map +1 -1
- package/dist/config/schema-runtime.d.ts +245 -7
- package/dist/config/schema-runtime.d.ts.map +1 -1
- package/dist/config/schema.d.ts +2976 -57
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config-6m0n7d84.js +59 -0
- package/dist/config-7cf004ag.js +59 -0
- package/dist/config-b98dp58n.js +59 -0
- package/dist/config-cf3djhqy.js +59 -0
- package/dist/config-entry.js +1 -1
- package/dist/config-wa7hm0w9.js +59 -0
- package/dist/deploy-1jfagtn9.js +1055 -0
- package/dist/deploy-2afw0jfg.js +1055 -0
- package/dist/deploy-2fzj68kq.js +1055 -0
- package/dist/deploy-57nzn9wj.js +1045 -0
- package/dist/deploy-asyryrvm.js +1055 -0
- package/dist/deploy-hc927rw6.js +1045 -0
- package/dist/deploy-pnnf8tgy.js +1045 -0
- package/dist/deploy-q33bw715.js +1055 -0
- package/dist/deploy-tmdgecs3.js +1055 -0
- package/dist/deploy-v0y8kczr.js +1055 -0
- package/dist/deploy-xhj6zbcx.js +1055 -0
- package/dist/dev-1mvcts8w.js +2515 -0
- package/dist/dev-2a283xts.js +2515 -0
- package/dist/dev-62nhytf8.js +2505 -0
- package/dist/dev-75acm2xj.js +2478 -0
- package/dist/dev-802rg9dp.js +2515 -0
- package/dist/dev-d1bb2t0f.js +2515 -0
- package/dist/dev-dwry8494.js +2489 -0
- package/dist/dev-g6112y4w.js +2515 -0
- package/dist/dev-h2kneh95.js +2496 -0
- package/dist/dev-kybq3mwr.js +2489 -0
- package/dist/dev-n8qndkyg.js +2512 -0
- package/dist/dev-p32fkbwf.js +2489 -0
- package/dist/dev-qm9d4mfh.js +2478 -0
- package/dist/dev-rcthnse5.js +2473 -0
- package/dist/dev-server/dev-server-state.d.ts +1 -0
- package/dist/dev-server/dev-server-state.d.ts.map +1 -1
- package/dist/dev-server/miniflare-bindings.d.ts +44 -1
- package/dist/dev-server/miniflare-bindings.d.ts.map +1 -1
- package/dist/dev-server/miniflare-dev-config.d.ts +1 -0
- package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -1
- package/dist/dev-server/miniflare-log.d.ts +8 -0
- package/dist/dev-server/miniflare-log.d.ts.map +1 -1
- package/dist/dev-server/miniflare-worker-config.d.ts +31 -1
- package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -1
- package/dist/dev-server/server.d.ts.map +1 -1
- package/dist/dev-server/vite-process.d.ts +1 -0
- package/dist/dev-server/vite-process.d.ts.map +1 -1
- package/dist/dev-tgwja5mz.js +2496 -0
- package/dist/doctor-2shhdak6.js +245 -0
- package/dist/doctor-5g73w40j.js +245 -0
- package/dist/doctor-gamefzcs.js +245 -0
- package/dist/doctor-rn53ctfs.js +245 -0
- package/dist/index-01kehw41.js +348 -0
- package/dist/index-06bg0z9y.js +185 -0
- package/dist/index-0d7tw5r4.js +136 -0
- package/dist/index-0m6e4mxz.js +133 -0
- package/dist/index-0vah20er.js +1410 -0
- package/dist/index-0wa0ebm1.js +68 -0
- package/dist/index-1714y3cz.js +1410 -0
- package/dist/index-1qs5gcm7.js +895 -0
- package/dist/index-29k04v43.js +574 -0
- package/dist/index-2jywf4pz.js +1372 -0
- package/dist/index-2qhk9nbx.js +1372 -0
- package/dist/index-2vq6bveq.js +574 -0
- package/dist/index-36h8gkhb.js +1088 -0
- package/dist/index-38fq7pww.js +560 -0
- package/dist/index-3bxqn033.js +1410 -0
- package/dist/index-3jme4hgw.js +1234 -0
- package/dist/index-3p7s9mk9.js +360 -0
- package/dist/index-47w35sft.js +244 -0
- package/dist/index-4by4c7rm.js +52 -0
- package/dist/index-4phjwd6h.js +412 -0
- package/dist/index-4z5jrw0j.js +594 -0
- package/dist/index-51mzqy0d.js +895 -0
- package/dist/index-53pqqpq9.js +74 -0
- package/dist/index-5enq8ntr.js +1766 -0
- package/dist/index-5fnq9r9m.js +1410 -0
- package/dist/index-5w9f2b17.js +695 -0
- package/dist/index-627srx16.js +45 -0
- package/dist/index-6bqgf5x8.js +227 -0
- package/dist/index-6xknvbyk.js +1088 -0
- package/dist/index-7ef3ktz5.js +1372 -0
- package/dist/index-7hpjfdzh.js +185 -0
- package/dist/index-8052df4m.js +627 -0
- package/dist/index-82epjzrr.js +1410 -0
- package/dist/index-82z7rvz6.js +1238 -0
- package/dist/index-8atc1yb9.js +68 -0
- package/dist/index-8tj0awnv.js +476 -0
- package/dist/index-8x745h59.js +1069 -0
- package/dist/index-9bawzcny.js +574 -0
- package/dist/index-9bjjqdfc.js +236 -0
- package/dist/index-9d7x3vfr.js +236 -0
- package/dist/index-9nf8zs4p.js +1069 -0
- package/dist/index-acwbmagz.js +412 -0
- package/dist/index-aqjdaem7.js +74 -0
- package/dist/index-b6448fd0.js +133 -0
- package/dist/index-b9j55r7q.js +240 -0
- package/dist/index-bdatd1za.js +1372 -0
- package/dist/index-c3nxftnp.js +699 -0
- package/dist/index-c643s0gv.js +488 -0
- package/dist/index-d2md1j3d.js +185 -0
- package/dist/index-dbr6bfz6.js +528 -0
- package/dist/index-dd1g0g7e.js +360 -0
- package/dist/index-dktb9az5.js +1372 -0
- package/dist/index-dm9q84c7.js +360 -0
- package/dist/index-f51mkh13.js +1088 -0
- package/dist/index-f86n1fpd.js +55 -0
- package/dist/index-fnk0tkw7.js +412 -0
- package/dist/index-g5aq66bj.js +1534 -0
- package/dist/index-gj5qh491.js +54 -0
- package/dist/index-gq39t0rx.js +895 -0
- package/dist/index-h5dqna7q.js +1410 -0
- package/dist/index-hjs9j2g9.js +895 -0
- package/dist/index-hn5nbxbt.js +147 -0
- package/dist/index-hpjh0qjx.js +1723 -0
- package/dist/index-hs6ekcfs.js +412 -0
- package/dist/index-jdzrvnfj.js +52 -0
- package/dist/index-jg720mq7.js +476 -0
- package/dist/index-jrzddxvt.js +2167 -0
- package/dist/index-kgstnk6g.js +239 -0
- package/dist/index-khnw972v.js +117 -0
- package/dist/index-kwqff3ba.js +1410 -0
- package/dist/index-m2v0fj08.js +74 -0
- package/dist/index-mjve6tqn.js +447 -0
- package/dist/index-mkxzgn0q.js +1372 -0
- package/dist/index-mzmq3v0d.js +1088 -0
- package/dist/index-ng9n3znd.js +1372 -0
- package/dist/index-nhbkm2ba.js +467 -0
- package/dist/index-nrfhk0k5.js +1088 -0
- package/dist/index-p0zppqxm.js +467 -0
- package/dist/index-pkxf6h87.js +895 -0
- package/dist/index-pqp4312v.js +52 -0
- package/dist/index-pw9jn6kz.js +574 -0
- package/dist/index-q31ne0xa.js +412 -0
- package/dist/index-qf2dkqxh.js +249 -0
- package/dist/index-qmtdf7k5.js +639 -0
- package/dist/index-qwgr4q7s.js +37 -0
- package/dist/index-rab2dfh3.js +494 -0
- package/dist/index-rz7rx80s.js +1410 -0
- package/dist/index-s37h3jgk.js +572 -0
- package/dist/index-sb705m7d.js +52 -0
- package/dist/index-syscwrjp.js +1576 -0
- package/dist/index-t14zr0ys.js +1063 -0
- package/dist/index-tjc99447.js +68 -0
- package/dist/index-v35460hf.js +574 -0
- package/dist/index-v7q00d1e.js +1410 -0
- package/dist/index-vkkmx4xe.js +1372 -0
- package/dist/index-vrps1gky.js +2202 -0
- package/dist/index-w4c9vmvg.js +1517 -0
- package/dist/index-wqd8n2qk.js +574 -0
- package/dist/index-x12e6fzy.js +476 -0
- package/dist/index-xagpz645.js +2199 -0
- package/dist/index-xbth1r6e.js +572 -0
- package/dist/index-xm9fqhcb.js +447 -0
- package/dist/index-y59hnmd0.js +132 -0
- package/dist/index-y7mkb00x.js +133 -0
- package/dist/index-z40mjts9.js +212 -0
- package/dist/index-z5k5bjc7.js +1218 -0
- package/dist/index-z73sytma.js +895 -0
- package/dist/index-zjv6apef.js +1410 -0
- package/dist/index.js +8 -8
- package/dist/init-cwpergap.js +180 -0
- package/dist/login-83bjfhvz.js +77 -0
- package/dist/login-ddw888xb.js +77 -0
- package/dist/login-e7pytkdc.js +77 -0
- package/dist/login-fe0brfcr.js +77 -0
- package/dist/login-h7sm5trm.js +77 -0
- package/dist/login-vd0m3xr4.js +77 -0
- package/dist/previews-2wfvsjfy.js +1337 -0
- package/dist/previews-31feb8r3.js +1337 -0
- package/dist/previews-3w4pxqby.js +1337 -0
- package/dist/previews-93ttrf5f.js +1337 -0
- package/dist/previews-bdrefjzx.js +1337 -0
- package/dist/previews-cfcn56b4.js +1337 -0
- package/dist/previews-mssq1hrm.js +1337 -0
- package/dist/previews-tcaz1gt8.js +1337 -0
- package/dist/productions-4h80j2c7.js +505 -0
- package/dist/productions-86jaqt7m.js +505 -0
- package/dist/productions-bn2q31my.js +505 -0
- package/dist/productions-dv8g7f6g.js +505 -0
- package/dist/productions-e2m9s4tr.js +505 -0
- package/dist/productions-fgshs1m7.js +505 -0
- package/dist/productions-hphmt68n.js +505 -0
- package/dist/productions-vhq7yx86.js +505 -0
- package/dist/runtime/index.js +8 -8
- package/dist/secrets/local-secrets.d.ts +46 -0
- package/dist/secrets/local-secrets.d.ts.map +1 -0
- package/dist/secrets-8wcj47nh.js +91 -0
- package/dist/secrets-b2ww34ta.js +91 -0
- package/dist/secrets-b7g4z621.js +91 -0
- package/dist/shims/local-media-bindings.d.ts +19 -0
- package/dist/shims/local-media-bindings.d.ts.map +1 -0
- package/dist/shims/local-worker-loader.d.ts +3 -0
- package/dist/shims/local-worker-loader.d.ts.map +1 -0
- package/dist/sveltekit/index.js +163 -26
- package/dist/sveltekit/local-bindings.d.ts +4 -0
- package/dist/sveltekit/local-bindings.d.ts.map +1 -0
- package/dist/sveltekit/platform.d.ts +8 -0
- package/dist/sveltekit/platform.d.ts.map +1 -1
- package/dist/test/ai-search.d.ts +39 -0
- package/dist/test/ai-search.d.ts.map +1 -0
- package/dist/test/binding-hints.d.ts.map +1 -1
- package/dist/test/cf.d.ts +3 -3
- package/dist/test/containers.d.ts +87 -0
- package/dist/test/containers.d.ts.map +1 -0
- package/dist/test/index.d.ts +4 -1
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +2833 -543
- package/dist/test/local-worker-loader.d.ts +3 -0
- package/dist/test/local-worker-loader.d.ts.map +1 -0
- package/dist/test/offline-bindings.d.ts +65 -0
- package/dist/test/offline-bindings.d.ts.map +1 -0
- package/dist/test/queue.d.ts.map +1 -1
- package/dist/test/remote-ai.d.ts.map +1 -1
- package/dist/test/should-skip.d.ts +14 -0
- package/dist/test/should-skip.d.ts.map +1 -1
- package/dist/test/simple-context-bindings.d.ts.map +1 -1
- package/dist/test/simple-context-durable-objects.d.ts.map +1 -1
- package/dist/test/simple-context-gateway-script.d.ts +1 -1
- package/dist/test/simple-context-gateway-script.d.ts.map +1 -1
- package/dist/test/simple-context-lifecycle.d.ts.map +1 -1
- package/dist/test/simple-context-mfconfig.d.ts +4 -1
- package/dist/test/simple-context-mfconfig.d.ts.map +1 -1
- package/dist/test/simple-context-multi-worker.d.ts.map +1 -1
- package/dist/test/simple-context-startup.d.ts.map +1 -1
- package/dist/test/tail.d.ts.map +1 -1
- package/dist/test/utilities/artifacts.d.ts +11 -0
- package/dist/test/utilities/artifacts.d.ts.map +1 -0
- package/dist/test/utilities/context.d.ts +39 -0
- package/dist/test/utilities/context.d.ts.map +1 -0
- package/dist/test/utilities/d1.d.ts +21 -0
- package/dist/test/utilities/d1.d.ts.map +1 -0
- package/dist/test/utilities/env.d.ts +40 -0
- package/dist/test/utilities/env.d.ts.map +1 -0
- package/dist/test/utilities/kv.d.ts +11 -0
- package/dist/test/utilities/kv.d.ts.map +1 -0
- package/dist/test/utilities/media.d.ts +16 -0
- package/dist/test/utilities/media.d.ts.map +1 -0
- package/dist/test/utilities/platform.d.ts +38 -0
- package/dist/test/utilities/platform.d.ts.map +1 -0
- package/dist/test/utilities/queue.d.ts +5 -0
- package/dist/test/utilities/queue.d.ts.map +1 -0
- package/dist/test/utilities/r2.d.ts +12 -0
- package/dist/test/utilities/r2.d.ts.map +1 -0
- package/dist/test/utilities/workflows.d.ts +26 -0
- package/dist/test/utilities/workflows.d.ts.map +1 -0
- package/dist/test/utilities.d.ts +10 -106
- package/dist/test/utilities.d.ts.map +1 -1
- package/dist/types-2ejrbba1.js +695 -0
- package/dist/types-7jkbm95a.js +695 -0
- package/dist/types-a2fk9yns.js +695 -0
- package/dist/types-dyb3c6zw.js +695 -0
- package/dist/types-e2n9f3pd.js +695 -0
- package/dist/types-j4s6qcrc.js +695 -0
- package/dist/utils/send-email.d.ts.map +1 -1
- package/dist/utils/send-email.js +1 -1
- package/dist/vite/index.js +6 -6
- package/dist/vite/plugin-context.d.ts.map +1 -1
- package/dist/worker-663em30d.js +513 -0
- package/dist/worker-argxc7fb.js +513 -0
- package/dist/worker-entry/composed-worker.d.ts.map +1 -1
- package/dist/worker-entry/surface-paths.d.ts +2 -0
- package/dist/worker-entry/surface-paths.d.ts.map +1 -1
- package/dist/worker-fcdsnj14.js +513 -0
- package/dist/worker-fk42rzse.js +513 -0
- package/dist/worker-jkemk8d2.js +513 -0
- package/dist/worker-m4ze8djx.js +513 -0
- package/dist/worker-wnan5dca.js +513 -0
- package/dist/worker-yw3atfb1.js +513 -0
- package/dist/workflows/local-workflow-entrypoints.d.ts +7 -0
- package/dist/workflows/local-workflow-entrypoints.d.ts.map +1 -0
- 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 @@
|
|
|
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"}
|
package/dist/sveltekit/index.js
CHANGED
|
@@ -1,21 +1,119 @@
|
|
|
1
|
-
import"../index-
|
|
1
|
+
import"../index-dbr6bfz6.js";
|
|
2
2
|
import {
|
|
3
|
+
createLocalWorkerLoaderBinding,
|
|
3
4
|
extractBindingHints
|
|
4
|
-
} from "../index-
|
|
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
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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
|
-
|
|
25
|
+
loadConfig,
|
|
26
|
+
normalizeHyperdriveBinding
|
|
27
|
+
} from "../index-syscwrjp.js";
|
|
14
28
|
import"../index-1d4jg11n.js";
|
|
15
29
|
import"../index-mg8vwqxf.js";
|
|
16
|
-
import"../index-
|
|
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
|
-
|
|
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
|
-
|
|
208
|
+
function getConfigFileFromEnv() {
|
|
209
|
+
return process.env.DEVFLARE_CONFIG_PATH;
|
|
210
|
+
}
|
|
211
|
+
async function loadConfigFromCurrentCwd() {
|
|
105
212
|
const cwd = process.cwd();
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return
|
|
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
|
-
|
|
118
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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
|
|
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`,
|
|
137
|
-
*
|
|
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>;
|