devflare 1.0.0-next.5 → 1.0.0-next.51
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/LICENSE +21 -0
- package/LLM.md +17312 -2139
- package/README.md +397 -605
- package/bin/devflare.js +30 -14
- package/dist/_chunks/account-Csog80ie.js +462 -0
- package/dist/_chunks/account-resources-CsmVowJp.js +159 -0
- package/dist/_chunks/ai-CBEuLdoP.js +322 -0
- package/dist/_chunks/api-TzdliH-6.js +568 -0
- package/dist/_chunks/build-Ccza8VQz.js +24 -0
- package/dist/_chunks/build-artifacts-BNssqhxE.js +483 -0
- package/dist/_chunks/cli-CU7wSG1-.js +1163 -0
- package/dist/_chunks/cloudflare-BaloqI3H.js +157 -0
- package/dist/_chunks/colors-DiK6wPJ5.js +13 -0
- package/dist/_chunks/command-utils-_bGRraDR.js +45 -0
- package/dist/_chunks/compiler-BtLp9T9N.js +500 -0
- package/dist/_chunks/config-QU8UEWmA.js +78 -0
- package/dist/_chunks/config-path-1yI7BiDU.js +42 -0
- package/dist/_chunks/context-CX50Y2Kb.js +2250 -0
- package/dist/_chunks/decorators-QmV57ixr.js +19 -0
- package/dist/_chunks/dependencies-C2oxFjU_.js +57 -0
- package/dist/_chunks/deploy-aifBaMVv.js +1032 -0
- package/dist/_chunks/dev-DF_3baGr.js +3483 -0
- package/dist/_chunks/doctor-tR9kGT_Z.js +219 -0
- package/dist/_chunks/durable-object-DMtH0XYX.js +234 -0
- package/dist/_chunks/env-S0_nMVz1.js +125 -0
- package/dist/_chunks/family-DKPp4wqj.js +143 -0
- package/dist/_chunks/generated-artifacts-dMJY4KAt.js +32 -0
- package/dist/_chunks/glob-CmQOvunB.js +56 -0
- package/dist/_chunks/init-DnkJOmpW.js +165 -0
- package/dist/_chunks/loader-OQ2AWpqm.js +1308 -0
- package/dist/_chunks/local-dev-vars-CTSa-wvF.js +81 -0
- package/dist/_chunks/local-hyperdrive-CJ90j46O.js +119 -0
- package/dist/_chunks/local-media-bindings-DsAW4AMF.js +335 -0
- package/dist/_chunks/local-secrets-CYoHfvQ1.js +123 -0
- package/dist/_chunks/local-workflow-entrypoints-8d_mXh8T.js +90 -0
- package/dist/_chunks/login-rVWUZOKC.js +51 -0
- package/dist/_chunks/package-metadata-DjHBLB-z.js +39 -0
- package/dist/_chunks/preferences-BKp_7XJx.js +241 -0
- package/dist/_chunks/preview-C3Cdr8an.js +462 -0
- package/dist/_chunks/preview-registry-ClAbLTHH.js +1186 -0
- package/dist/_chunks/preview-resources-DRWR0gaB.js +359 -0
- package/dist/_chunks/previews-BxNq8Y_J.js +1134 -0
- package/dist/_chunks/productions-DK7xwbEs.js +411 -0
- package/dist/_chunks/ref-CYJNAAe_.js +178 -0
- package/dist/_chunks/remote-CZnP-HLJ.js +79 -0
- package/dist/_chunks/remote-config-D39BY9ji.js +132 -0
- package/dist/_chunks/resolve-package-qizBfCIm.js +152 -0
- package/dist/_chunks/rolldown-runtime-CvQ6eiug.js +14 -0
- package/dist/_chunks/routes-B6XiI8Sa.js +851 -0
- package/dist/_chunks/runtime-DL-Nz3k8.js +550 -0
- package/dist/_chunks/schema-normalization-GjhTATHL.js +666 -0
- package/dist/_chunks/secrets-qT1JaBGt.js +95 -0
- package/dist/_chunks/tail-CuWI04BL.js +239 -0
- package/dist/_chunks/token-Dmi0KXyX.js +333 -0
- package/dist/_chunks/tokens-iVcgNXi-.js +221 -0
- package/dist/_chunks/types-BquPXsFg.js +484 -0
- package/dist/_chunks/ui-BUoZApvE.js +103 -0
- package/dist/_chunks/usage-BBTGzjon.js +272 -0
- package/dist/_chunks/vite-D_wLDGBs.js +1267 -0
- package/dist/_chunks/vite-utils-OVLMV605.js +183 -0
- package/dist/_chunks/worker-DEF-e8LL.js +410 -0
- package/dist/_chunks/worker-bundler-dTTnYU3n.js +458 -0
- package/dist/_chunks/worker-entrypoint-CQW77lG8.js +247 -0
- package/dist/_chunks/workerName-CFJsLZA-.js +23 -0
- package/dist/bridge/client.d.ts +49 -7
- package/dist/bridge/client.d.ts.map +1 -1
- package/dist/bridge/gateway-runtime.d.ts +8 -0
- package/dist/bridge/gateway-runtime.d.ts.map +1 -0
- package/dist/bridge/index.d.ts +6 -6
- package/dist/bridge/index.d.ts.map +1 -1
- package/dist/bridge/log.d.ts +5 -0
- package/dist/bridge/log.d.ts.map +1 -0
- package/dist/bridge/miniflare.d.ts +85 -2
- package/dist/bridge/miniflare.d.ts.map +1 -1
- package/dist/bridge/proxy.d.ts +12 -11
- package/dist/bridge/proxy.d.ts.map +1 -1
- package/dist/bridge/server.d.ts +2 -1
- package/dist/bridge/server.d.ts.map +1 -1
- package/dist/bridge/v2/body-streams.d.ts +53 -0
- package/dist/bridge/v2/body-streams.d.ts.map +1 -0
- package/dist/bridge/v2/codec.d.ts +106 -0
- package/dist/bridge/v2/codec.d.ts.map +1 -0
- package/dist/bridge/v2/control-messages.d.ts +46 -0
- package/dist/bridge/v2/control-messages.d.ts.map +1 -0
- package/dist/bridge/v2/frames.d.ts +109 -0
- package/dist/bridge/v2/frames.d.ts.map +1 -0
- package/dist/bridge/v2/index.d.ts +11 -0
- package/dist/bridge/v2/index.d.ts.map +1 -0
- package/dist/bridge/v2/serialization.d.ts +48 -0
- package/dist/bridge/v2/serialization.d.ts.map +1 -0
- package/dist/bridge/v2/transport.d.ts +31 -0
- package/dist/bridge/v2/transport.d.ts.map +1 -0
- package/dist/bridge/v2/value-codec.d.ts +61 -0
- package/dist/bridge/v2/value-codec.d.ts.map +1 -0
- package/dist/bridge/{serialization.d.ts → v2/value-serialization.d.ts} +40 -18
- package/dist/bridge/v2/value-serialization.d.ts.map +1 -0
- package/dist/bridge/{protocol.d.ts → v2/wire.d.ts} +32 -8
- package/dist/bridge/v2/wire.d.ts.map +1 -0
- package/dist/bridge/v2/ws-relay.d.ts +53 -0
- package/dist/bridge/v2/ws-relay.d.ts.map +1 -0
- package/dist/browser-shim/handler.d.ts +2 -2
- package/dist/browser-shim/handler.d.ts.map +1 -1
- package/dist/browser-shim/index.d.ts +2 -2
- package/dist/browser-shim/server.d.ts +63 -0
- package/dist/browser-shim/server.d.ts.map +1 -1
- package/dist/browser.d.ts +5705 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +80 -0
- package/dist/bundler/defaults.d.ts +23 -0
- package/dist/bundler/defaults.d.ts.map +1 -0
- package/dist/bundler/do-bundler.d.ts +7 -0
- package/dist/bundler/do-bundler.d.ts.map +1 -1
- package/dist/bundler/index.d.ts +3 -1
- package/dist/bundler/index.d.ts.map +1 -1
- package/dist/bundler/rolldown-shared.d.ts +53 -0
- package/dist/bundler/rolldown-shared.d.ts.map +1 -0
- package/dist/bundler/worker-bundler.d.ts +13 -0
- package/dist/bundler/worker-bundler.d.ts.map +1 -0
- package/dist/bundler/worker-compat.d.ts +4 -0
- package/dist/bundler/worker-compat.d.ts.map +1 -0
- package/dist/cli/build-manifest.d.ts +66 -0
- package/dist/cli/build-manifest.d.ts.map +1 -0
- package/dist/cli/command-utils.d.ts +18 -0
- package/dist/cli/command-utils.d.ts.map +1 -0
- package/dist/cli/commands/account.d.ts +2 -2
- package/dist/cli/commands/account.d.ts.map +1 -1
- package/dist/cli/commands/ai.d.ts +1 -1
- package/dist/cli/commands/ai.d.ts.map +1 -1
- package/dist/cli/commands/build-artifacts.d.ts +40 -0
- package/dist/cli/commands/build-artifacts.d.ts.map +1 -0
- package/dist/cli/commands/build.d.ts +2 -2
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/config.d.ts +4 -0
- package/dist/cli/commands/config.d.ts.map +1 -0
- 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/dev.d.ts +9 -1
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/doctor.d.ts +2 -2
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/init.d.ts +2 -2
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/login.d.ts +4 -0
- package/dist/cli/commands/login.d.ts.map +1 -0
- package/dist/cli/commands/previews-support/cleanup.d.ts +9 -0
- package/dist/cli/commands/previews-support/cleanup.d.ts.map +1 -0
- package/dist/cli/commands/previews-support/family.d.ts +10 -0
- package/dist/cli/commands/previews-support/family.d.ts.map +1 -0
- package/dist/cli/commands/previews-support/render.d.ts +8 -0
- package/dist/cli/commands/previews-support/render.d.ts.map +1 -0
- package/dist/cli/commands/previews-support/theme.d.ts +10 -0
- package/dist/cli/commands/previews-support/theme.d.ts.map +1 -0
- package/dist/cli/commands/previews-support/types.d.ts +70 -0
- package/dist/cli/commands/previews-support/types.d.ts.map +1 -0
- package/dist/cli/commands/previews.d.ts +4 -0
- package/dist/cli/commands/previews.d.ts.map +1 -0
- package/dist/cli/commands/productions.d.ts +4 -0
- package/dist/cli/commands/productions.d.ts.map +1 -0
- package/dist/cli/commands/remote.d.ts +1 -1
- package/dist/cli/commands/remote.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/tail.d.ts +44 -0
- package/dist/cli/commands/tail.d.ts.map +1 -0
- package/dist/cli/commands/token.d.ts +4 -0
- package/dist/cli/commands/token.d.ts.map +1 -0
- package/dist/cli/commands/type-generation/discovery.d.ts +7 -0
- package/dist/cli/commands/type-generation/discovery.d.ts.map +1 -0
- package/dist/cli/commands/type-generation/generator.d.ts +121 -0
- package/dist/cli/commands/type-generation/generator.d.ts.map +1 -0
- package/dist/cli/commands/type-generation/models.d.ts +27 -0
- package/dist/cli/commands/type-generation/models.d.ts.map +1 -0
- package/dist/cli/commands/types.d.ts +2 -2
- package/dist/cli/commands/types.d.ts.map +1 -1
- package/dist/cli/commands/worker.d.ts +4 -0
- package/dist/cli/commands/worker.d.ts.map +1 -0
- package/dist/cli/config-path.d.ts +6 -0
- package/dist/cli/config-path.d.ts.map +1 -0
- package/dist/cli/dependencies.d.ts +2 -1
- package/dist/cli/dependencies.d.ts.map +1 -1
- package/dist/cli/deploy-strategy.d.ts +17 -0
- package/dist/cli/deploy-strategy.d.ts.map +1 -0
- package/dist/cli/deploy-target.d.ts +17 -0
- package/dist/cli/deploy-target.d.ts.map +1 -0
- package/dist/cli/generated-artifacts.d.ts +12 -0
- package/dist/cli/generated-artifacts.d.ts.map +1 -0
- package/dist/cli/gradual-deploy.d.ts +49 -0
- package/dist/cli/gradual-deploy.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/account.d.ts +3 -0
- package/dist/cli/help-pages/pages/account.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/core.d.ts +4 -0
- package/dist/cli/help-pages/pages/core.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/index.d.ts +3 -0
- package/dist/cli/help-pages/pages/index.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/misc.d.ts +3 -0
- package/dist/cli/help-pages/pages/misc.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/previews.d.ts +3 -0
- package/dist/cli/help-pages/pages/previews.d.ts.map +1 -0
- package/dist/cli/help-pages/pages/productions.d.ts +3 -0
- package/dist/cli/help-pages/pages/productions.d.ts.map +1 -0
- package/dist/cli/help-pages/render.d.ts +12 -0
- package/dist/cli/help-pages/render.d.ts.map +1 -0
- package/dist/cli/help-pages/shared.d.ts +15 -0
- package/dist/cli/help-pages/shared.d.ts.map +1 -0
- package/dist/cli/help-pages/types.d.ts +23 -0
- package/dist/cli/help-pages/types.d.ts.map +1 -0
- package/dist/cli/help.d.ts +6 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/package-metadata.d.ts +16 -0
- package/dist/cli/package-metadata.d.ts.map +1 -0
- package/dist/cli/preview-bindings.d.ts +49 -0
- package/dist/cli/preview-bindings.d.ts.map +1 -0
- package/dist/cli/preview.d.ts +10 -0
- package/dist/cli/preview.d.ts.map +1 -0
- package/dist/cli/ui.d.ts +37 -0
- package/dist/cli/ui.d.ts.map +1 -0
- package/dist/cli/workspace-build-guard.d.ts +14 -0
- package/dist/cli/workspace-build-guard.d.ts.map +1 -0
- package/dist/cli/wrangler-auth.d.ts +1 -1
- package/dist/cloudflare/account-core.d.ts +6 -0
- package/dist/cloudflare/account-core.d.ts.map +1 -0
- package/dist/cloudflare/account-resources.d.ts +40 -0
- package/dist/cloudflare/account-resources.d.ts.map +1 -0
- package/dist/cloudflare/account-status.d.ts +11 -0
- package/dist/cloudflare/account-status.d.ts.map +1 -0
- package/dist/cloudflare/account-workers.d.ts +14 -0
- package/dist/cloudflare/account-workers.d.ts.map +1 -0
- package/dist/cloudflare/account.d.ts +7 -64
- package/dist/cloudflare/account.d.ts.map +1 -1
- package/dist/cloudflare/api.d.ts +71 -3
- package/dist/cloudflare/api.d.ts.map +1 -1
- package/dist/cloudflare/auth.d.ts +1 -1
- package/dist/cloudflare/auth.d.ts.map +1 -1
- package/dist/cloudflare/index.d.ts +61 -6
- package/dist/cloudflare/index.d.ts.map +1 -1
- package/dist/cloudflare/index.js +4 -13
- package/dist/cloudflare/known-permission-group-ids.generated.d.ts +10 -0
- package/dist/cloudflare/known-permission-group-ids.generated.d.ts.map +1 -0
- package/dist/cloudflare/kv-namespace.d.ts +4 -0
- package/dist/cloudflare/kv-namespace.d.ts.map +1 -0
- package/dist/cloudflare/preferences.d.ts +7 -0
- package/dist/cloudflare/preferences.d.ts.map +1 -1
- package/dist/cloudflare/preview-registry-cache.d.ts +6 -0
- package/dist/cloudflare/preview-registry-cache.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-inference.d.ts +14 -0
- package/dist/cloudflare/preview-registry-inference.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-records.d.ts +4 -0
- package/dist/cloudflare/preview-registry-records.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-shape.d.ts +47 -0
- package/dist/cloudflare/preview-registry-shape.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-store.d.ts +14 -0
- package/dist/cloudflare/preview-registry-store.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-transport.d.ts +4 -0
- package/dist/cloudflare/preview-registry-transport.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry-types.d.ts +103 -0
- package/dist/cloudflare/preview-registry-types.d.ts.map +1 -0
- package/dist/cloudflare/preview-registry.d.ts +42 -0
- package/dist/cloudflare/preview-registry.d.ts.map +1 -0
- package/dist/cloudflare/preview-urls.d.ts +3 -0
- package/dist/cloudflare/preview-urls.d.ts.map +1 -0
- package/dist/cloudflare/registry-schema.d.ts +253 -0
- package/dist/cloudflare/registry-schema.d.ts.map +1 -0
- package/dist/cloudflare/remote-config.d.ts.map +1 -1
- package/dist/cloudflare/tokens.d.ts +44 -0
- package/dist/cloudflare/tokens.d.ts.map +1 -0
- package/dist/cloudflare/types.d.ts +124 -7
- package/dist/cloudflare/types.d.ts.map +1 -1
- package/dist/cloudflare/usage.d.ts +31 -3
- package/dist/cloudflare/usage.d.ts.map +1 -1
- package/dist/config/binding-resolution-helpers.d.ts +41 -0
- package/dist/config/binding-resolution-helpers.d.ts.map +1 -0
- package/dist/config/compatibility.d.ts +3 -0
- package/dist/config/compatibility.d.ts.map +1 -0
- 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 +309 -0
- package/dist/config/compiler/types.d.ts.map +1 -0
- package/dist/config/compiler.d.ts +22 -134
- package/dist/config/compiler.d.ts.map +1 -1
- package/dist/config/cron.d.ts +19 -0
- package/dist/config/cron.d.ts.map +1 -0
- package/dist/config/define.d.ts +8 -5
- package/dist/config/define.d.ts.map +1 -1
- package/dist/config/deploy-resources.d.ts +58 -0
- package/dist/config/deploy-resources.d.ts.map +1 -0
- package/dist/config/env-vars.d.ts +309 -0
- package/dist/config/env-vars.d.ts.map +1 -0
- package/dist/config/framework-providers.d.ts +9 -0
- package/dist/config/framework-providers.d.ts.map +1 -0
- package/dist/config/index.d.ts +12 -5
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/loader.d.ts +2 -1
- package/dist/config/loader.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 +83 -0
- package/dist/config/preview-resources.d.ts.map +1 -0
- package/dist/config/preview.d.ts +29 -0
- package/dist/config/preview.d.ts.map +1 -0
- package/dist/config/ref.d.ts +16 -25
- package/dist/config/ref.d.ts.map +1 -1
- package/dist/config/resolve-phased.d.ts +72 -0
- package/dist/config/resolve-phased.d.ts.map +1 -0
- package/dist/config/resolve.d.ts +11 -0
- package/dist/config/resolve.d.ts.map +1 -0
- package/dist/config/resource-resolution.d.ts +80 -0
- package/dist/config/resource-resolution.d.ts.map +1 -0
- package/dist/config/schema-bindings.d.ts +2087 -0
- package/dist/config/schema-bindings.d.ts.map +1 -0
- package/dist/config/schema-build.d.ts +67 -0
- package/dist/config/schema-build.d.ts.map +1 -0
- package/dist/config/schema-env.d.ts +3771 -0
- package/dist/config/schema-env.d.ts.map +1 -0
- package/dist/config/schema-normalization.d.ts +267 -0
- package/dist/config/schema-normalization.d.ts.map +1 -0
- package/dist/config/schema-runtime.d.ts +557 -0
- package/dist/config/schema-runtime.d.ts.map +1 -0
- package/dist/config/schema-types-bindings-platform.d.ts +520 -0
- package/dist/config/schema-types-bindings-platform.d.ts.map +1 -0
- package/dist/config/schema-types-bindings-resources.d.ts +802 -0
- package/dist/config/schema-types-bindings-resources.d.ts.map +1 -0
- package/dist/config/schema-types-bindings.d.ts +293 -0
- package/dist/config/schema-types-bindings.d.ts.map +1 -0
- package/dist/config/schema-types-build.d.ts +86 -0
- package/dist/config/schema-types-build.d.ts.map +1 -0
- package/dist/config/schema-types-runtime-server.d.ts +122 -0
- package/dist/config/schema-types-runtime-server.d.ts.map +1 -0
- package/dist/config/schema-types-runtime.d.ts +913 -0
- package/dist/config/schema-types-runtime.d.ts.map +1 -0
- package/dist/config/schema-types.d.ts +458 -0
- package/dist/config/schema-types.d.ts.map +1 -0
- package/dist/config/schema.d.ts +5699 -2021
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/service-bindings-validation.d.ts +36 -0
- package/dist/config/service-bindings-validation.d.ts.map +1 -0
- package/dist/config-entry.d.ts +7 -0
- package/dist/config-entry.d.ts.map +1 -0
- package/dist/config-entry.js +3 -0
- package/dist/decorators/durable-object.d.ts.map +1 -1
- package/dist/decorators/index.d.ts +2 -2
- package/dist/decorators/index.js +2 -9
- package/dist/dev-server/d1-migrations.d.ts +36 -0
- package/dist/dev-server/d1-migrations.d.ts.map +1 -0
- package/dist/dev-server/dev-server-state.d.ts +59 -0
- package/dist/dev-server/dev-server-state.d.ts.map +1 -0
- package/dist/dev-server/gateway-script.d.ts +21 -0
- package/dist/dev-server/gateway-script.d.ts.map +1 -0
- package/dist/dev-server/index.d.ts +1 -1
- package/dist/dev-server/miniflare-bindings.d.ts +90 -0
- package/dist/dev-server/miniflare-bindings.d.ts.map +1 -0
- package/dist/dev-server/miniflare-dev-config.d.ts +36 -0
- package/dist/dev-server/miniflare-dev-config.d.ts.map +1 -0
- package/dist/dev-server/miniflare-log.d.ts +20 -0
- package/dist/dev-server/miniflare-log.d.ts.map +1 -0
- package/dist/dev-server/miniflare-worker-config.d.ts +93 -0
- package/dist/dev-server/miniflare-worker-config.d.ts.map +1 -0
- package/dist/dev-server/reload-queue.d.ts +13 -0
- package/dist/dev-server/reload-queue.d.ts.map +1 -0
- package/dist/dev-server/runtime-stdio.d.ts +8 -0
- package/dist/dev-server/runtime-stdio.d.ts.map +1 -0
- package/dist/dev-server/server-startup-helpers.d.ts +84 -0
- package/dist/dev-server/server-startup-helpers.d.ts.map +1 -0
- package/dist/dev-server/server.d.ts +2 -0
- package/dist/dev-server/server.d.ts.map +1 -1
- package/dist/dev-server/vite-process.d.ts +15 -0
- package/dist/dev-server/vite-process.d.ts.map +1 -0
- package/dist/dev-server/vite-utils.d.ts +19 -1
- package/dist/dev-server/vite-utils.d.ts.map +1 -1
- package/dist/dev-server/worker-source-watcher.d.ts +17 -0
- package/dist/dev-server/worker-source-watcher.d.ts.map +1 -0
- package/dist/dev-server/worker-surface-paths.d.ts +6 -0
- package/dist/dev-server/worker-surface-paths.d.ts.map +1 -0
- package/dist/env.d.ts +10 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/index.d.ts +8 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -298
- package/dist/runtime/context-events.d.ts +13 -0
- package/dist/runtime/context-events.d.ts.map +1 -0
- package/dist/runtime/context-types.d.ts +82 -0
- package/dist/runtime/context-types.d.ts.map +1 -0
- package/dist/runtime/context.d.ts +20 -44
- package/dist/runtime/context.d.ts.map +1 -1
- package/dist/runtime/exports.d.ts +70 -55
- package/dist/runtime/exports.d.ts.map +1 -1
- package/dist/runtime/index.d.ts +10 -3
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +5 -111
- package/dist/runtime/middleware.d.ts +119 -67
- package/dist/runtime/middleware.d.ts.map +1 -1
- package/dist/runtime/router/index.d.ts +7 -0
- package/dist/runtime/router/index.d.ts.map +1 -0
- package/dist/runtime/router/types.d.ts +24 -0
- package/dist/runtime/router/types.d.ts.map +1 -0
- package/dist/runtime/validation.d.ts +18 -4
- package/dist/runtime/validation.d.ts.map +1 -1
- package/dist/secrets/local-secrets.d.ts +46 -0
- package/dist/secrets/local-secrets.d.ts.map +1 -0
- package/dist/shims/local-hyperdrive.d.ts +12 -0
- package/dist/shims/local-hyperdrive.d.ts.map +1 -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.d.ts +1 -1
- package/dist/sveltekit/index.d.ts.map +1 -1
- package/dist/sveltekit/index.js +313 -167
- 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 +20 -2
- 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/alarm.d.ts +55 -0
- package/dist/test/alarm.d.ts.map +1 -0
- package/dist/test/binding-hints.d.ts +10 -0
- package/dist/test/binding-hints.d.ts.map +1 -0
- package/dist/test/cf.d.ts +71 -35
- package/dist/test/cf.d.ts.map +1 -1
- package/dist/test/containers.d.ts +87 -0
- package/dist/test/containers.d.ts.map +1 -0
- package/dist/test/email.d.ts +16 -7
- package/dist/test/email.d.ts.map +1 -1
- package/dist/test/index.d.ts +20 -21
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +4981 -70
- package/dist/test/offline-bindings.d.ts +115 -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/remote-cloudflare.d.ts +13 -0
- package/dist/test/remote-cloudflare.d.ts.map +1 -0
- package/dist/test/remote-vectorize.d.ts.map +1 -1
- package/dist/test/resolve-service-bindings.d.ts +64 -4
- package/dist/test/resolve-service-bindings.d.ts.map +1 -1
- package/dist/test/scheduled.d.ts.map +1 -1
- package/dist/test/should-skip.d.ts +14 -18
- package/dist/test/should-skip.d.ts.map +1 -1
- package/dist/test/simple-context-bindings.d.ts +13 -0
- package/dist/test/simple-context-bindings.d.ts.map +1 -0
- package/dist/test/simple-context-durable-objects.d.ts +6 -0
- package/dist/test/simple-context-durable-objects.d.ts.map +1 -0
- package/dist/test/simple-context-env.d.ts +35 -0
- package/dist/test/simple-context-env.d.ts.map +1 -0
- package/dist/test/simple-context-gateway-script.d.ts +2 -0
- package/dist/test/simple-context-gateway-script.d.ts.map +1 -0
- package/dist/test/simple-context-handlers.d.ts +12 -0
- package/dist/test/simple-context-handlers.d.ts.map +1 -0
- package/dist/test/simple-context-lifecycle.d.ts +32 -0
- package/dist/test/simple-context-lifecycle.d.ts.map +1 -0
- package/dist/test/simple-context-mfconfig.d.ts +10 -0
- package/dist/test/simple-context-mfconfig.d.ts.map +1 -0
- package/dist/test/simple-context-multi-worker.d.ts +16 -0
- package/dist/test/simple-context-multi-worker.d.ts.map +1 -0
- package/dist/test/simple-context-paths.d.ts +40 -0
- package/dist/test/simple-context-paths.d.ts.map +1 -0
- package/dist/test/simple-context-runtime.d.ts +19 -0
- package/dist/test/simple-context-runtime.d.ts.map +1 -0
- package/dist/test/simple-context-startup.d.ts +11 -0
- package/dist/test/simple-context-startup.d.ts.map +1 -0
- package/dist/test/simple-context-transport.d.ts +14 -0
- package/dist/test/simple-context-transport.d.ts.map +1 -0
- package/dist/test/simple-context.d.ts +8 -27
- package/dist/test/simple-context.d.ts.map +1 -1
- package/dist/test/tail.d.ts +3 -2
- package/dist/test/tail.d.ts.map +1 -1
- package/dist/test/utilities/analytics-engine.d.ts +22 -0
- package/dist/test/utilities/analytics-engine.d.ts.map +1 -0
- 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 +43 -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 +41 -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 +2 -0
- package/dist/test/utilities/r2.d.ts.map +1 -0
- package/dist/test/utilities/stream-flagship.d.ts +27 -0
- package/dist/test/utilities/stream-flagship.d.ts.map +1 -0
- package/dist/test/utilities/vectorize.d.ts +38 -0
- package/dist/test/utilities/vectorize.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 +13 -98
- package/dist/test/utilities.d.ts.map +1 -1
- package/dist/test/worker.d.ts +6 -0
- package/dist/test/worker.d.ts.map +1 -1
- package/dist/transform/durable-object.d.ts.map +1 -1
- package/dist/transform/index.d.ts +2 -2
- package/dist/transform/worker-entrypoint.d.ts +5 -0
- package/dist/transform/worker-entrypoint.d.ts.map +1 -1
- package/dist/utils/entrypoint-discovery.d.ts +6 -3
- package/dist/utils/entrypoint-discovery.d.ts.map +1 -1
- package/dist/utils/glob.d.ts.map +1 -1
- package/dist/utils/resolve-package.d.ts.map +1 -1
- package/dist/utils/send-email.d.ts +15 -0
- package/dist/utils/send-email.d.ts.map +1 -0
- package/dist/utils/send-email.js +163 -0
- package/dist/vite/config-file.d.ts +25 -0
- package/dist/vite/config-file.d.ts.map +1 -0
- package/dist/vite/index.d.ts +3 -2
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +2 -339
- package/dist/vite/plugin-config-hook.d.ts +28 -0
- package/dist/vite/plugin-config-hook.d.ts.map +1 -0
- package/dist/vite/plugin-context.d.ts +27 -0
- package/dist/vite/plugin-context.d.ts.map +1 -0
- package/dist/vite/plugin-durable-objects.d.ts +18 -0
- package/dist/vite/plugin-durable-objects.d.ts.map +1 -0
- package/dist/vite/plugin-programmatic.d.ts +44 -0
- package/dist/vite/plugin-programmatic.d.ts.map +1 -0
- package/dist/vite/plugin-service-bindings.d.ts +13 -0
- package/dist/vite/plugin-service-bindings.d.ts.map +1 -0
- package/dist/vite/plugin-transform.d.ts +41 -0
- package/dist/vite/plugin-transform.d.ts.map +1 -0
- package/dist/vite/plugin.d.ts +10 -41
- package/dist/vite/plugin.d.ts.map +1 -1
- package/dist/worker-entry/composed-worker.d.ts +7 -0
- package/dist/worker-entry/composed-worker.d.ts.map +1 -0
- package/dist/worker-entry/durable-object-discovery.d.ts +20 -0
- package/dist/worker-entry/durable-object-discovery.d.ts.map +1 -0
- package/dist/worker-entry/extensions.d.ts +5 -0
- package/dist/worker-entry/extensions.d.ts.map +1 -0
- package/dist/worker-entry/routes.d.ts +22 -0
- package/dist/worker-entry/routes.d.ts.map +1 -0
- package/dist/worker-entry/surface-paths.d.ts +26 -0
- package/dist/worker-entry/surface-paths.d.ts.map +1 -0
- package/dist/worker-entry/validate-fetch-style.d.ts +12 -0
- package/dist/worker-entry/validate-fetch-style.d.ts.map +1 -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 +159 -116
- package/R2.md +0 -170
- package/dist/account-rvrj687w.js +0 -397
- package/dist/ai-dx4fr9jh.js +0 -107
- package/dist/bridge/protocol.d.ts.map +0 -1
- package/dist/bridge/serialization.d.ts.map +0 -1
- package/dist/browser-shim/worker.d.ts +0 -14
- package/dist/browser-shim/worker.d.ts.map +0 -1
- package/dist/build-mnf6v8gd.js +0 -53
- package/dist/deploy-nhceck39.js +0 -70
- package/dist/dev-b9dmrj7b.js +0 -2417
- package/dist/doctor-fmgb3d28.js +0 -190
- package/dist/durable-object-t4kbb0yt.js +0 -13
- package/dist/index-07q6yxyc.js +0 -168
- package/dist/index-18hvb6gb.js +0 -194
- package/dist/index-1xpj0m4r.js +0 -57
- package/dist/index-37x76zdn.js +0 -4
- package/dist/index-3t6rypgc.js +0 -13
- package/dist/index-67qcae0f.js +0 -183
- package/dist/index-a855bdsx.js +0 -18
- package/dist/index-d8bdkx2h.js +0 -109
- package/dist/index-ep3445yc.js +0 -2225
- package/dist/index-gz1gndna.js +0 -307
- package/dist/index-hcex3rgh.js +0 -266
- package/dist/index-m2q41jwa.js +0 -462
- package/dist/index-n7rs26ft.js +0 -77
- package/dist/index-pf5s73n9.js +0 -1413
- package/dist/index-rbht7m9r.js +0 -36
- package/dist/index-tfyxa77h.js +0 -850
- package/dist/index-tk6ej9dj.js +0 -94
- package/dist/index-z14anrqp.js +0 -226
- package/dist/init-f9mgmew3.js +0 -186
- package/dist/remote-q59qk463.js +0 -97
- package/dist/test/bridge-context.d.ts +0 -76
- package/dist/test/bridge-context.d.ts.map +0 -1
- package/dist/test/multi-worker-context.d.ts +0 -114
- package/dist/test/multi-worker-context.d.ts.map +0 -1
- package/dist/types-5nyrz1sz.js +0 -454
- package/dist/worker-entrypoint-m9th0rg0.js +0 -13
|
@@ -44,6 +44,11 @@ export interface WorkerTransformResult {
|
|
|
44
44
|
* Find all exported functions in a worker.ts file using TypeScript AST
|
|
45
45
|
*/
|
|
46
46
|
export declare function findExportedFunctions(code: string): ExportedFunction[];
|
|
47
|
+
/**
|
|
48
|
+
* Returns true when the filename has an extension that permits TS-only syntax.
|
|
49
|
+
* Gates injection of interfaces and type annotations into emitted worker code.
|
|
50
|
+
*/
|
|
51
|
+
export declare function shouldEmitTsSyntax(filename: string): boolean;
|
|
47
52
|
/**
|
|
48
53
|
* Check if a file should be transformed as a worker entrypoint
|
|
49
54
|
* Returns true if the file has exported functions that could be RPC methods
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-entrypoint.d.ts","sourceRoot":"","sources":["../../src/transform/worker-entrypoint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-entrypoint.d.ts","sourceRoot":"","sources":["../../src/transform/worker-entrypoint.ts"],"names":[],"mappings":"AAuBA,OAAO,WAAW,MAAM,cAAc,CAAA;AAQtC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAA;IACd,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAA;IACX,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,yCAAyC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kEAAkE;IAClE,aAAa,CAAC,EAAE,OAAO,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAA;IAC3C,4DAA4D;IAC5D,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAA;CACjB;AAMD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAuHtE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAW7E;AAMD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,sBAA2B,GAClC,qBAAqB,GAAG,IAAI,CAyK9B;AA4CD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAoBjG"}
|
|
@@ -12,11 +12,14 @@ export interface DiscoveredEntrypoint {
|
|
|
12
12
|
*/
|
|
13
13
|
export declare function findEntrypointClasses(code: string): string[];
|
|
14
14
|
/**
|
|
15
|
-
* Discover entrypoint classes from
|
|
16
|
-
*
|
|
15
|
+
* Discover entrypoint classes from a glob pattern synchronously.
|
|
16
|
+
* Respects `.gitignore` automatically.
|
|
17
|
+
*
|
|
18
|
+
* @param cwd - Working directory for glob resolution
|
|
19
|
+
* @param pattern - Glob pattern for entrypoint files (default: recursive `ep.*.{ts,js}` matching)
|
|
17
20
|
* @returns Array of discovered entrypoints
|
|
18
21
|
*/
|
|
19
|
-
export declare function discoverEntrypointsSync(
|
|
22
|
+
export declare function discoverEntrypointsSync(cwd: string, pattern?: string): DiscoveredEntrypoint[];
|
|
20
23
|
/**
|
|
21
24
|
* Discover entrypoint classes from ep.*.ts files using glob pattern (async).
|
|
22
25
|
* Respects .gitignore automatically.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint-discovery.d.ts","sourceRoot":"","sources":["../../src/utils/entrypoint-discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entrypoint-discovery.d.ts","sourceRoot":"","sources":["../../src/utils/entrypoint-discovery.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CAChB;AAYD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAa5D;AAMD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,SAA6B,GAClC,oBAAoB,EAAE,CAuBxB;AAMD;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC7C,GAAG,EAAE,MAAM,EACX,OAAO,SAA6B,GAClC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAoBjC"}
|
package/dist/utils/glob.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glob.d.ts","sourceRoot":"","sources":["../../src/utils/glob.ts"],"names":[],"mappings":"AAaA,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AAEnD,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAE3D,kDAAkD;AAClD,eAAO,MAAM,wBAAwB,oBAAoB,CAAA;AAMzD,MAAM,WAAW,WAAW;IAC3B,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAA;IACX,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAA;CACnB;AAMD;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC9B,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"glob.d.ts","sourceRoot":"","sources":["../../src/utils/glob.ts"],"names":[],"mappings":"AAaA,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AAEnD,0DAA0D;AAC1D,eAAO,MAAM,0BAA0B,oBAAoB,CAAA;AAE3D,kDAAkD;AAClD,eAAO,MAAM,wBAAwB,oBAAoB,CAAA;AAMzD,MAAM,WAAW,WAAW;IAC3B,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAA;IACX,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,OAAO,CAAA;CACnB;AAMD;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAC9B,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CAWnB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CASxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-package.d.ts","sourceRoot":"","sources":["../../src/utils/resolve-package.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolve-package.d.ts","sourceRoot":"","sources":["../../src/utils/resolve-package.ts"],"names":[],"mappings":"AA2FA;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA2DlF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface LocalSendEmailBindingConfig {
|
|
2
|
+
destinationAddress?: string;
|
|
3
|
+
allowedDestinationAddresses?: string[];
|
|
4
|
+
allowedSenderAddresses?: string[];
|
|
5
|
+
}
|
|
6
|
+
export declare function createEmailMessageRaw(raw: unknown): string | ReadableStream<Uint8Array>;
|
|
7
|
+
export declare function normalizeSendEmailMessage(message: unknown): Parameters<SendEmail['send']>[0];
|
|
8
|
+
export declare function wrapSendEmailBinding(binding: SendEmail): SendEmail;
|
|
9
|
+
export declare function createLocalSendEmailBinding(config?: LocalSendEmailBindingConfig, options?: {
|
|
10
|
+
onSend?: (message: Parameters<SendEmail['send']>[0]) => void | Promise<void>;
|
|
11
|
+
}): SendEmail;
|
|
12
|
+
export declare function setLocalSendEmailBindings(bindings: Record<string, LocalSendEmailBindingConfig>): void;
|
|
13
|
+
export declare function clearLocalSendEmailBindings(): void;
|
|
14
|
+
export declare function wrapEnvSendEmailBindings<TEnv>(env: TEnv): TEnv;
|
|
15
|
+
//# sourceMappingURL=send-email.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-email.d.ts","sourceRoot":"","sources":["../../src/utils/send-email.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,2BAA2B;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;IACtC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAA;CACjC;AAqID,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC,CAgBvF;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAsB5F;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,CAmBlE;AAED,wBAAgB,2BAA2B,CAC1C,MAAM,GAAE,2BAAgC,EACxC,OAAO,GAAE;IACR,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvE,GACJ,SAAS,CAuCX;AAED,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,2BAA2B,CAAC,GACnD,IAAI,CAMN;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAiBD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,IAAI,CAoD9D"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
//#region src/utils/send-email.ts
|
|
2
|
+
const RAW_EMAIL = "EmailMessage::raw";
|
|
3
|
+
const wrappedSendEmailBindings = /* @__PURE__ */ new WeakMap();
|
|
4
|
+
const wrappedEnvBindings = /* @__PURE__ */ new WeakMap();
|
|
5
|
+
const localSendEmailBindings = /* @__PURE__ */ new Map();
|
|
6
|
+
function hasOwn(value, key) {
|
|
7
|
+
return Object.prototype.hasOwnProperty.call(value, key);
|
|
8
|
+
}
|
|
9
|
+
function isRecord(value) {
|
|
10
|
+
return typeof value === "object" && value !== null;
|
|
11
|
+
}
|
|
12
|
+
function isSendEmailBinding(value) {
|
|
13
|
+
if (!isRecord(value)) return false;
|
|
14
|
+
try {
|
|
15
|
+
return typeof value.send === "function" && typeof value.sendBatch !== "function";
|
|
16
|
+
} catch {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function isComposableSendEmailMessage(message) {
|
|
21
|
+
return isRecord(message) && typeof message.from === "string" && (typeof message.to === "string" || Array.isArray(message.to));
|
|
22
|
+
}
|
|
23
|
+
function formatEmailAddress(value) {
|
|
24
|
+
if (!value) return;
|
|
25
|
+
return typeof value === "string" ? value : String(value);
|
|
26
|
+
}
|
|
27
|
+
function formatEmailList(value) {
|
|
28
|
+
if (!value) return;
|
|
29
|
+
return Array.isArray(value) ? value.join(", ") : value;
|
|
30
|
+
}
|
|
31
|
+
function normalizeBodyText(value) {
|
|
32
|
+
return value.replace(/\r?\n/g, "\r\n");
|
|
33
|
+
}
|
|
34
|
+
function buildMultipartAlternativeBody(message, boundary) {
|
|
35
|
+
const parts = [];
|
|
36
|
+
if (message.text) parts.push(`--${boundary}`, "Content-Type: text/plain; charset=UTF-8", "", normalizeBodyText(message.text));
|
|
37
|
+
if (message.html) parts.push(`--${boundary}`, "Content-Type: text/html; charset=UTF-8", "", normalizeBodyText(message.html));
|
|
38
|
+
parts.push(`--${boundary}--`);
|
|
39
|
+
return parts.join("\r\n");
|
|
40
|
+
}
|
|
41
|
+
function buildRawEmail(message) {
|
|
42
|
+
const lines = [];
|
|
43
|
+
const messageId = `<${Date.now()}-${Math.random().toString(36).slice(2)}@devflare.dev>`;
|
|
44
|
+
lines.push(`From: ${message.from}`);
|
|
45
|
+
lines.push(`To: ${formatEmailList(message.to)}`);
|
|
46
|
+
lines.push(`Date: ${(/* @__PURE__ */ new Date()).toUTCString()}`);
|
|
47
|
+
lines.push(`Message-ID: ${messageId}`);
|
|
48
|
+
if (message.subject) lines.push(`Subject: ${message.subject}`);
|
|
49
|
+
const replyTo = formatEmailAddress(message.replyTo);
|
|
50
|
+
if (replyTo) lines.push(`Reply-To: ${replyTo}`);
|
|
51
|
+
const cc = formatEmailList(message.cc);
|
|
52
|
+
if (cc) lines.push(`Cc: ${cc}`);
|
|
53
|
+
const bcc = formatEmailList(message.bcc);
|
|
54
|
+
if (bcc) lines.push(`Bcc: ${bcc}`);
|
|
55
|
+
if (message.headers) for (const [key, value] of Object.entries(message.headers)) lines.push(`${key}: ${value}`);
|
|
56
|
+
lines.push("MIME-Version: 1.0");
|
|
57
|
+
if (message.text && message.html) {
|
|
58
|
+
const boundary = `devflare-alt-${crypto.randomUUID()}`;
|
|
59
|
+
lines.push(`Content-Type: multipart/alternative; boundary="${boundary}"`);
|
|
60
|
+
lines.push("");
|
|
61
|
+
lines.push(buildMultipartAlternativeBody(message, boundary));
|
|
62
|
+
return lines.join("\r\n");
|
|
63
|
+
}
|
|
64
|
+
lines.push(`Content-Type: ${message.html ? "text/html" : "text/plain"}; charset=UTF-8`);
|
|
65
|
+
lines.push("");
|
|
66
|
+
lines.push(normalizeBodyText(message.html ?? message.text ?? ""));
|
|
67
|
+
return lines.join("\r\n");
|
|
68
|
+
}
|
|
69
|
+
function createEmailMessageRaw(raw) {
|
|
70
|
+
if (typeof raw === "string" || raw instanceof ReadableStream) return raw;
|
|
71
|
+
if (raw instanceof Uint8Array) {
|
|
72
|
+
const copy = new Uint8Array(raw.byteLength);
|
|
73
|
+
copy.set(raw);
|
|
74
|
+
return new Blob([copy]).stream();
|
|
75
|
+
}
|
|
76
|
+
if (raw instanceof ArrayBuffer) return new Blob([new Uint8Array(raw.slice(0))]).stream();
|
|
77
|
+
throw new Error("Unsupported EmailMessage raw payload");
|
|
78
|
+
}
|
|
79
|
+
function normalizeSendEmailMessage(message) {
|
|
80
|
+
if (!isComposableSendEmailMessage(message)) return message;
|
|
81
|
+
if (hasOwn(message, RAW_EMAIL)) return message;
|
|
82
|
+
if (hasOwn(message, "raw") && message.raw !== void 0) return {
|
|
83
|
+
from: message.from,
|
|
84
|
+
to: message.to,
|
|
85
|
+
[RAW_EMAIL]: createEmailMessageRaw(message.raw)
|
|
86
|
+
};
|
|
87
|
+
return {
|
|
88
|
+
from: message.from,
|
|
89
|
+
to: message.to,
|
|
90
|
+
[RAW_EMAIL]: createEmailMessageRaw(buildRawEmail(message))
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function wrapSendEmailBinding(binding) {
|
|
94
|
+
const cached = wrappedSendEmailBindings.get(binding);
|
|
95
|
+
if (cached) return cached;
|
|
96
|
+
const wrapped = new Proxy(binding, { get(target, prop, receiver) {
|
|
97
|
+
if (prop === "send") return async (message) => target.send(normalizeSendEmailMessage(message));
|
|
98
|
+
const value = Reflect.get(target, prop, receiver);
|
|
99
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
100
|
+
} });
|
|
101
|
+
wrappedSendEmailBindings.set(binding, wrapped);
|
|
102
|
+
return wrapped;
|
|
103
|
+
}
|
|
104
|
+
function createLocalSendEmailBinding(config = {}, options = {}) {
|
|
105
|
+
return { async send(message) {
|
|
106
|
+
const normalized = normalizeSendEmailMessage(message);
|
|
107
|
+
if (isRecord(normalized)) {
|
|
108
|
+
const from = typeof normalized.from === "string" ? normalized.from : void 0;
|
|
109
|
+
const recipients = Array.isArray(normalized.to) ? normalized.to.filter((value) => typeof value === "string") : typeof normalized.to === "string" ? [normalized.to] : [];
|
|
110
|
+
if (from && config.allowedSenderAddresses && !config.allowedSenderAddresses.includes(from)) throw new Error(`email from ${from} not allowed`);
|
|
111
|
+
for (const recipient of recipients) {
|
|
112
|
+
if (config.destinationAddress !== void 0 && recipient !== config.destinationAddress) throw new Error(`email to ${recipient} not allowed`);
|
|
113
|
+
if (config.allowedDestinationAddresses !== void 0 && !config.allowedDestinationAddresses.includes(recipient)) throw new Error(`email to ${recipient} not allowed`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
await options.onSend?.(normalized);
|
|
117
|
+
} };
|
|
118
|
+
}
|
|
119
|
+
function setLocalSendEmailBindings(bindings) {
|
|
120
|
+
localSendEmailBindings.clear();
|
|
121
|
+
for (const [name, config] of Object.entries(bindings)) localSendEmailBindings.set(name, createLocalSendEmailBinding(config));
|
|
122
|
+
}
|
|
123
|
+
function clearLocalSendEmailBindings() {
|
|
124
|
+
localSendEmailBindings.clear();
|
|
125
|
+
}
|
|
126
|
+
function needsEnvSendEmailWrapping(env) {
|
|
127
|
+
if (localSendEmailBindings.size > 0) return true;
|
|
128
|
+
for (const key of Reflect.ownKeys(env)) if (isSendEmailBinding(Reflect.get(env, key))) return true;
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
function wrapEnvSendEmailBindings(env) {
|
|
132
|
+
if (!isRecord(env)) return env;
|
|
133
|
+
if (!needsEnvSendEmailWrapping(env)) return env;
|
|
134
|
+
const cached = wrappedEnvBindings.get(env);
|
|
135
|
+
if (cached) return cached;
|
|
136
|
+
const wrapped = new Proxy(env, {
|
|
137
|
+
get(target, prop, receiver) {
|
|
138
|
+
if (typeof prop === "string" && localSendEmailBindings.has(prop)) return localSendEmailBindings.get(prop);
|
|
139
|
+
const value = Reflect.get(target, prop, receiver);
|
|
140
|
+
return isSendEmailBinding(value) ? wrapSendEmailBinding(value) : value;
|
|
141
|
+
},
|
|
142
|
+
has(target, prop) {
|
|
143
|
+
return Reflect.has(target, prop) || typeof prop === "string" && localSendEmailBindings.has(prop);
|
|
144
|
+
},
|
|
145
|
+
ownKeys(target) {
|
|
146
|
+
return Array.from(new Set([...Reflect.ownKeys(target), ...localSendEmailBindings.keys()]));
|
|
147
|
+
},
|
|
148
|
+
getOwnPropertyDescriptor(target, prop) {
|
|
149
|
+
if (typeof prop === "string" && localSendEmailBindings.has(prop)) return {
|
|
150
|
+
configurable: true,
|
|
151
|
+
enumerable: true,
|
|
152
|
+
writable: false,
|
|
153
|
+
value: localSendEmailBindings.get(prop)
|
|
154
|
+
};
|
|
155
|
+
const descriptor = Reflect.getOwnPropertyDescriptor(target, prop);
|
|
156
|
+
if (descriptor) return descriptor;
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
wrappedEnvBindings.set(env, wrapped);
|
|
160
|
+
return wrapped;
|
|
161
|
+
}
|
|
162
|
+
//#endregion
|
|
163
|
+
export { clearLocalSendEmailBindings, createEmailMessageRaw, createLocalSendEmailBinding, normalizeSendEmailMessage, setLocalSendEmailBindings, wrapEnvSendEmailBindings, wrapSendEmailBinding };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ConfigEnv, UserConfig } from 'vite';
|
|
2
|
+
import { type DevflareConfig } from '../config/index.js';
|
|
3
|
+
import type { ViteProjectDetection } from '../dev-server/vite-utils.js';
|
|
4
|
+
export interface EffectiveViteProjectDetection extends ViteProjectDetection {
|
|
5
|
+
hasDevflareViteConfig: boolean;
|
|
6
|
+
shouldStartVite: boolean;
|
|
7
|
+
wantsViteIntegration: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function hasInlineViteConfig(viteConfig: DevflareConfig['vite'] | undefined): boolean;
|
|
10
|
+
export declare function resolveEffectiveViteProject(detection: ViteProjectDetection, config: DevflareConfig, environment?: string): EffectiveViteProjectDetection;
|
|
11
|
+
export declare function resolveViteUserConfig(configEnv: ConfigEnv, options?: {
|
|
12
|
+
cwd?: string;
|
|
13
|
+
configPath?: string;
|
|
14
|
+
environment?: string;
|
|
15
|
+
localConfigPath?: string | null;
|
|
16
|
+
bridgePort?: number;
|
|
17
|
+
}): Promise<UserConfig>;
|
|
18
|
+
export declare function writeGeneratedViteConfig(options: {
|
|
19
|
+
cwd: string;
|
|
20
|
+
configPath?: string;
|
|
21
|
+
environment?: string;
|
|
22
|
+
localConfigPath?: string | null;
|
|
23
|
+
bridgePort?: number;
|
|
24
|
+
}): Promise<string>;
|
|
25
|
+
//# sourceMappingURL=config-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-file.d.ts","sourceRoot":"","sources":["../../src/vite/config-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAwB,UAAU,EAAE,MAAM,MAAM,CAAA;AACvE,OAAO,EAAE,KAAK,cAAc,EAAc,MAAM,WAAW,CAAA;AAE3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAMpE,MAAM,WAAW,6BAA8B,SAAQ,oBAAoB;IAC1E,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;IACxB,oBAAoB,EAAE,OAAO,CAAA;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,OAAO,CAE3F;AAED,wBAAgB,2BAA2B,CAC1C,SAAS,EAAE,oBAAoB,EAC/B,MAAM,EAAE,cAAc,EACtB,WAAW,CAAC,EAAE,MAAM,GAClB,6BAA6B,CAU/B;AAqDD,wBAAsB,qBAAqB,CAC1C,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE;IACR,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;CACd,GACJ,OAAO,CAAC,UAAU,CAAC,CA8BrB;AA8DD,wBAAsB,wBAAwB,CAAC,OAAO,EAAE;IACvD,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBlB"}
|
package/dist/vite/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { devflarePlugin, getPluginContext, getCloudflareConfig, getDevflareConfigs, type DevflarePluginOptions, type DevflarePluginContext, type AuxiliaryWorkerConfig, type DODiscoveryResult } from './plugin';
|
|
2
|
-
export {
|
|
1
|
+
export { devflarePlugin, getPluginContext, getCloudflareConfig, getDevflareConfigs, type DevflarePluginOptions, type DevflarePluginContext, type AuxiliaryWorkerConfig, type DODiscoveryResult } from './plugin.js';
|
|
2
|
+
export { hasInlineViteConfig, resolveEffectiveViteProject, resolveViteUserConfig, writeGeneratedViteConfig, type EffectiveViteProjectDetection } from './config-file.js';
|
|
3
|
+
export { devflarePlugin as default } from './plugin.js';
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/vite/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACN,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vite/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACN,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,UAAU,CAAA;AACjB,OAAO,EACN,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,6BAA6B,EAClC,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,cAAc,IAAI,OAAO,EAAE,MAAM,UAAU,CAAA"}
|
package/dist/vite/index.js
CHANGED
|
@@ -1,339 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
findFiles
|
|
4
|
-
} from "../index-rbht7m9r.js";
|
|
5
|
-
import {
|
|
6
|
-
findDurableObjectClasses
|
|
7
|
-
} from "../index-gz1gndna.js";
|
|
8
|
-
import {
|
|
9
|
-
compileConfig,
|
|
10
|
-
compileToProgrammaticConfig,
|
|
11
|
-
writeWranglerConfig
|
|
12
|
-
} from "../index-67qcae0f.js";
|
|
13
|
-
import {
|
|
14
|
-
loadConfig
|
|
15
|
-
} from "../index-hcex3rgh.js";
|
|
16
|
-
import {
|
|
17
|
-
__require
|
|
18
|
-
} from "../index-37x76zdn.js";
|
|
19
|
-
|
|
20
|
-
// src/vite/plugin.ts
|
|
21
|
-
import { resolve } from "pathe";
|
|
22
|
-
var CONFIG_DIR = ".devflare";
|
|
23
|
-
var VIRTUAL_DO_ENTRY = "virtual:devflare-do-entry";
|
|
24
|
-
var RESOLVED_VIRTUAL_DO_ENTRY = "\x00" + VIRTUAL_DO_ENTRY;
|
|
25
|
-
var pluginContext = {
|
|
26
|
-
wranglerConfig: null,
|
|
27
|
-
cloudflareConfig: null,
|
|
28
|
-
projectRoot: process.cwd(),
|
|
29
|
-
auxiliaryWorkerConfig: null,
|
|
30
|
-
durableObjects: null
|
|
31
|
-
};
|
|
32
|
-
function getPluginContext() {
|
|
33
|
-
return pluginContext;
|
|
34
|
-
}
|
|
35
|
-
async function discoverDurableObjects(projectRoot, pattern, workerName) {
|
|
36
|
-
const files = new Map;
|
|
37
|
-
const matchedFiles = await findFiles(pattern, { cwd: projectRoot });
|
|
38
|
-
const fs = await import("node:fs/promises");
|
|
39
|
-
for (const filePath of matchedFiles) {
|
|
40
|
-
try {
|
|
41
|
-
const code = await fs.readFile(filePath, "utf-8");
|
|
42
|
-
const classNames = findDurableObjectClasses(code);
|
|
43
|
-
if (classNames.length > 0) {
|
|
44
|
-
files.set(filePath, classNames);
|
|
45
|
-
}
|
|
46
|
-
} catch (error) {
|
|
47
|
-
console.warn(`[devflare] Failed to read DO file: ${filePath}`, error);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return { files, workerName };
|
|
51
|
-
}
|
|
52
|
-
function generateVirtualDOEntry(discovery) {
|
|
53
|
-
const lines = [
|
|
54
|
-
"// Auto-generated by devflare — DO entry module",
|
|
55
|
-
"// Re-exports all Durable Object classes discovered from files.durableObjects pattern",
|
|
56
|
-
""
|
|
57
|
-
];
|
|
58
|
-
for (const [filePath, classNames] of discovery.files) {
|
|
59
|
-
const normalizedPath = filePath.replace(/\\/g, "/");
|
|
60
|
-
lines.push(`export { ${classNames.join(", ")} } from '${normalizedPath}'`);
|
|
61
|
-
}
|
|
62
|
-
lines.push("");
|
|
63
|
-
lines.push("// Default fetch handler for DO worker");
|
|
64
|
-
lines.push("export default {");
|
|
65
|
-
lines.push("\tasync fetch(request: Request): Promise<Response> {");
|
|
66
|
-
lines.push('\t\treturn new Response("Devflare DO Worker", { status: 200 })');
|
|
67
|
-
lines.push("\t}");
|
|
68
|
-
lines.push("}");
|
|
69
|
-
return lines.join(`
|
|
70
|
-
`);
|
|
71
|
-
}
|
|
72
|
-
function createAuxiliaryWorkerConfig(wranglerConfig, discovery) {
|
|
73
|
-
const doBindings = wranglerConfig.durable_objects?.bindings?.map((binding) => ({
|
|
74
|
-
name: binding.name,
|
|
75
|
-
class_name: binding.class_name
|
|
76
|
-
})) ?? [];
|
|
77
|
-
return {
|
|
78
|
-
config: {
|
|
79
|
-
name: discovery.workerName,
|
|
80
|
-
main: VIRTUAL_DO_ENTRY,
|
|
81
|
-
compatibility_date: wranglerConfig.compatibility_date,
|
|
82
|
-
compatibility_flags: wranglerConfig.compatibility_flags,
|
|
83
|
-
durable_objects: { bindings: doBindings },
|
|
84
|
-
migrations: wranglerConfig.migrations,
|
|
85
|
-
kv_namespaces: wranglerConfig.kv_namespaces,
|
|
86
|
-
d1_databases: wranglerConfig.d1_databases,
|
|
87
|
-
r2_buckets: wranglerConfig.r2_buckets,
|
|
88
|
-
browser: wranglerConfig.browser
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
function devflarePlugin(options = {}) {
|
|
93
|
-
const {
|
|
94
|
-
configPath,
|
|
95
|
-
environment,
|
|
96
|
-
doTransforms = true,
|
|
97
|
-
watchConfig = true,
|
|
98
|
-
bridgePort = process.env.DEVFLARE_BRIDGE_PORT ? parseInt(process.env.DEVFLARE_BRIDGE_PORT, 10) : undefined,
|
|
99
|
-
wsProxyPatterns = []
|
|
100
|
-
} = options;
|
|
101
|
-
let projectRoot;
|
|
102
|
-
let devflareConfig;
|
|
103
|
-
return {
|
|
104
|
-
name: "devflare",
|
|
105
|
-
enforce: "pre",
|
|
106
|
-
async config(config, { command }) {
|
|
107
|
-
const cwd = config.root ?? process.cwd();
|
|
108
|
-
const returnConfig = {};
|
|
109
|
-
let lfConfig = null;
|
|
110
|
-
try {
|
|
111
|
-
lfConfig = await loadConfig({
|
|
112
|
-
cwd,
|
|
113
|
-
configFile: configPath
|
|
114
|
-
});
|
|
115
|
-
} catch (error) {
|
|
116
|
-
if (command === "build") {
|
|
117
|
-
console.warn("[devflare] Could not load config:", error);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
if (lfConfig) {
|
|
121
|
-
const workerNameValue = lfConfig.name ?? "unknown";
|
|
122
|
-
returnConfig.define = {
|
|
123
|
-
...config.define ?? {},
|
|
124
|
-
__DEVFLARE_WORKER_NAME__: JSON.stringify(workerNameValue)
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
if (command === "serve" && process.env.DEVFLARE_DEV && lfConfig) {
|
|
128
|
-
const port = bridgePort ?? 8787;
|
|
129
|
-
const patterns = [...wsProxyPatterns];
|
|
130
|
-
if (lfConfig.wsRoutes && lfConfig.wsRoutes.length > 0) {
|
|
131
|
-
for (const route of lfConfig.wsRoutes) {
|
|
132
|
-
if (!patterns.includes(route.pattern)) {
|
|
133
|
-
patterns.push(route.pattern);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
const proxyConfig = {};
|
|
138
|
-
for (const pattern of patterns) {
|
|
139
|
-
proxyConfig[pattern] = {
|
|
140
|
-
target: `http://127.0.0.1:${port}`,
|
|
141
|
-
changeOrigin: true,
|
|
142
|
-
ws: true,
|
|
143
|
-
configure: (proxy) => {
|
|
144
|
-
proxy.on("error", (err) => {
|
|
145
|
-
console.error(`[devflare] Proxy error: ${err.message}`);
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
if (Object.keys(proxyConfig).length > 0) {
|
|
151
|
-
console.log(`[devflare] WebSocket proxy configured for: ${patterns.join(", ")}`);
|
|
152
|
-
returnConfig.server = {
|
|
153
|
-
proxy: proxyConfig
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
return Object.keys(returnConfig).length > 0 ? returnConfig : undefined;
|
|
158
|
-
},
|
|
159
|
-
resolveId(id) {
|
|
160
|
-
if (id === VIRTUAL_DO_ENTRY) {
|
|
161
|
-
return RESOLVED_VIRTUAL_DO_ENTRY;
|
|
162
|
-
}
|
|
163
|
-
return null;
|
|
164
|
-
},
|
|
165
|
-
async load(id) {
|
|
166
|
-
if (id === RESOLVED_VIRTUAL_DO_ENTRY) {
|
|
167
|
-
if (!pluginContext.durableObjects) {
|
|
168
|
-
return `// No Durable Objects configured
|
|
169
|
-
export default { fetch: () => new Response("No DOs") }`;
|
|
170
|
-
}
|
|
171
|
-
return generateVirtualDOEntry(pluginContext.durableObjects);
|
|
172
|
-
}
|
|
173
|
-
return null;
|
|
174
|
-
},
|
|
175
|
-
async configResolved(config) {
|
|
176
|
-
projectRoot = config.root;
|
|
177
|
-
pluginContext.projectRoot = projectRoot;
|
|
178
|
-
try {
|
|
179
|
-
devflareConfig = await loadConfig({
|
|
180
|
-
cwd: projectRoot,
|
|
181
|
-
configFile: configPath
|
|
182
|
-
});
|
|
183
|
-
const wranglerConfig = compileConfig(devflareConfig, environment);
|
|
184
|
-
pluginContext.wranglerConfig = wranglerConfig;
|
|
185
|
-
const cloudflareConfig = compileToProgrammaticConfig(devflareConfig, environment);
|
|
186
|
-
pluginContext.cloudflareConfig = cloudflareConfig;
|
|
187
|
-
const doPatternConfig = devflareConfig.files?.durableObjects;
|
|
188
|
-
const doPattern = typeof doPatternConfig === "string" ? doPatternConfig : DEFAULT_DO_PATTERN;
|
|
189
|
-
if (doPatternConfig !== false) {
|
|
190
|
-
const doWorkerName = `${wranglerConfig.name}-do`;
|
|
191
|
-
const discovery = await discoverDurableObjects(projectRoot, doPattern, doWorkerName);
|
|
192
|
-
pluginContext.durableObjects = discovery;
|
|
193
|
-
if (discovery.files.size > 0) {
|
|
194
|
-
if (wranglerConfig.durable_objects?.bindings) {
|
|
195
|
-
for (const binding of wranglerConfig.durable_objects.bindings) {
|
|
196
|
-
binding.script_name = doWorkerName;
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
if (cloudflareConfig.durable_objects) {
|
|
200
|
-
const doConfig = cloudflareConfig.durable_objects;
|
|
201
|
-
for (const binding of doConfig.bindings) {
|
|
202
|
-
binding.script_name = doWorkerName;
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
pluginContext.auxiliaryWorkerConfig = createAuxiliaryWorkerConfig(wranglerConfig, discovery);
|
|
206
|
-
console.log(`[devflare] Discovered ${discovery.files.size} DO file(s):`);
|
|
207
|
-
for (const [filePath, classes] of discovery.files) {
|
|
208
|
-
console.log(` • ${filePath.replace(projectRoot, ".")} → ${classes.join(", ")}`);
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
const configDir = resolve(projectRoot, CONFIG_DIR);
|
|
213
|
-
const fs = await import("node:fs/promises");
|
|
214
|
-
await fs.mkdir(configDir, { recursive: true });
|
|
215
|
-
const gitignorePath = resolve(configDir, ".gitignore");
|
|
216
|
-
try {
|
|
217
|
-
await fs.access(gitignorePath);
|
|
218
|
-
} catch {
|
|
219
|
-
await fs.writeFile(gitignorePath, `*
|
|
220
|
-
`, "utf-8");
|
|
221
|
-
}
|
|
222
|
-
await writeWranglerConfig(configDir, wranglerConfig, "wrangler.jsonc");
|
|
223
|
-
if (config.command === "serve") {
|
|
224
|
-
console.log("[devflare] Config generated to .devflare/wrangler.jsonc");
|
|
225
|
-
if (pluginContext.auxiliaryWorkerConfig) {
|
|
226
|
-
console.log("[devflare] ✓ Auxiliary DO worker configured");
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
if (config.command === "build") {
|
|
230
|
-
console.log(`[devflare] Generated ${CONFIG_DIR}/wrangler.jsonc`);
|
|
231
|
-
}
|
|
232
|
-
} catch (error) {
|
|
233
|
-
if (error instanceof Error) {
|
|
234
|
-
console.error("[devflare] Config error:", error.message);
|
|
235
|
-
}
|
|
236
|
-
throw error;
|
|
237
|
-
}
|
|
238
|
-
},
|
|
239
|
-
configureServer(server) {
|
|
240
|
-
if (!watchConfig)
|
|
241
|
-
return;
|
|
242
|
-
const configFileName = configPath || "devflare.config.ts";
|
|
243
|
-
const fullConfigPath = resolve(projectRoot, configFileName);
|
|
244
|
-
server.watcher.add(fullConfigPath);
|
|
245
|
-
server.watcher.on("change", async (changedPath) => {
|
|
246
|
-
if (changedPath === fullConfigPath) {
|
|
247
|
-
console.log("[devflare] Config changed, reloading...");
|
|
248
|
-
try {
|
|
249
|
-
devflareConfig = await loadConfig({
|
|
250
|
-
cwd: projectRoot,
|
|
251
|
-
configFile: configPath
|
|
252
|
-
});
|
|
253
|
-
const wranglerConfig = compileConfig(devflareConfig, environment);
|
|
254
|
-
pluginContext.wranglerConfig = wranglerConfig;
|
|
255
|
-
const cloudflareConfig = compileToProgrammaticConfig(devflareConfig, environment);
|
|
256
|
-
pluginContext.cloudflareConfig = cloudflareConfig;
|
|
257
|
-
console.log("[devflare] Config reloaded");
|
|
258
|
-
server.ws.send({
|
|
259
|
-
type: "full-reload",
|
|
260
|
-
path: "*"
|
|
261
|
-
});
|
|
262
|
-
} catch (error) {
|
|
263
|
-
console.error("[devflare] Failed to reload config:", error);
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
});
|
|
267
|
-
},
|
|
268
|
-
async transform(code, id) {
|
|
269
|
-
if (id.includes("node_modules"))
|
|
270
|
-
return null;
|
|
271
|
-
if (!id.endsWith(".ts") && !id.endsWith(".tsx") && !id.endsWith(".js")) {
|
|
272
|
-
return null;
|
|
273
|
-
}
|
|
274
|
-
if (id.endsWith("worker.ts") || id.endsWith("worker.js")) {
|
|
275
|
-
const {
|
|
276
|
-
shouldTransformWorker,
|
|
277
|
-
transformWorkerEntrypoint
|
|
278
|
-
} = await import("../worker-entrypoint-m9th0rg0.js");
|
|
279
|
-
if (shouldTransformWorker(code, id)) {
|
|
280
|
-
const result = transformWorkerEntrypoint(code, id);
|
|
281
|
-
if (result) {
|
|
282
|
-
return {
|
|
283
|
-
code: result.code,
|
|
284
|
-
map: result.map
|
|
285
|
-
};
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
if (doTransforms) {
|
|
290
|
-
if (code.includes("DurableObject") || code.includes("@durableObject")) {
|
|
291
|
-
const { transformDurableObject } = await import("../durable-object-t4kbb0yt.js");
|
|
292
|
-
return transformDurableObject(code, id);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
return null;
|
|
296
|
-
}
|
|
297
|
-
};
|
|
298
|
-
}
|
|
299
|
-
async function getCloudflareConfig(options = {}) {
|
|
300
|
-
const cwd = options.cwd ?? process.cwd();
|
|
301
|
-
const devflareConfig = await loadConfig({
|
|
302
|
-
cwd,
|
|
303
|
-
configFile: options.configPath
|
|
304
|
-
});
|
|
305
|
-
return compileToProgrammaticConfig(devflareConfig, options.environment);
|
|
306
|
-
}
|
|
307
|
-
async function getDevflareConfigs(options = {}) {
|
|
308
|
-
const cwd = options.cwd ?? process.cwd();
|
|
309
|
-
const devflareConfig = await loadConfig({
|
|
310
|
-
cwd,
|
|
311
|
-
configFile: options.configPath
|
|
312
|
-
});
|
|
313
|
-
const wranglerConfig = compileConfig(devflareConfig, options.environment);
|
|
314
|
-
const cloudflareConfig = { ...wranglerConfig };
|
|
315
|
-
const auxiliaryWorkers = [];
|
|
316
|
-
const doPatternConfig = devflareConfig.files?.durableObjects;
|
|
317
|
-
const doPattern = typeof doPatternConfig === "string" ? doPatternConfig : DEFAULT_DO_PATTERN;
|
|
318
|
-
if (doPatternConfig !== false) {
|
|
319
|
-
const doWorkerName = `${wranglerConfig.name}-do`;
|
|
320
|
-
const discovery = await discoverDurableObjects(cwd, doPattern, doWorkerName);
|
|
321
|
-
if (discovery.files.size > 0) {
|
|
322
|
-
if (cloudflareConfig.durable_objects) {
|
|
323
|
-
const doConfig = cloudflareConfig.durable_objects;
|
|
324
|
-
for (const binding of doConfig.bindings) {
|
|
325
|
-
binding.script_name = doWorkerName;
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
auxiliaryWorkers.push(createAuxiliaryWorkerConfig(wranglerConfig, discovery));
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
return { cloudflareConfig, auxiliaryWorkers };
|
|
332
|
-
}
|
|
333
|
-
export {
|
|
334
|
-
getPluginContext,
|
|
335
|
-
getDevflareConfigs,
|
|
336
|
-
getCloudflareConfig,
|
|
337
|
-
devflarePlugin,
|
|
338
|
-
devflarePlugin as default
|
|
339
|
-
};
|
|
1
|
+
import { a as devflarePlugin, c as getDevflareConfigs, i as writeGeneratedViteConfig, n as resolveEffectiveViteProject, o as getPluginContext, r as resolveViteUserConfig, s as getCloudflareConfig, t as hasInlineViteConfig } from "../_chunks/vite-D_wLDGBs.js";
|
|
2
|
+
export { devflarePlugin as default, devflarePlugin, getCloudflareConfig, getDevflareConfigs, getPluginContext, hasInlineViteConfig, resolveEffectiveViteProject, resolveViteUserConfig, writeGeneratedViteConfig };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { DevflareConfig } from '../config/schema.js';
|
|
2
|
+
/**
|
|
3
|
+
* Try to load the devflare config without throwing. Returns `null` if the
|
|
4
|
+
* config does not exist (the plugin still works without one).
|
|
5
|
+
*/
|
|
6
|
+
export declare function tryLoadDevflareConfig(cwd: string, configPath: string | undefined, command: 'serve' | 'build'): Promise<DevflareConfig | null>;
|
|
7
|
+
/**
|
|
8
|
+
* Build the `define` map injecting `__DEVFLARE_WORKER_NAME__` as a build-time
|
|
9
|
+
* constant. Caller is responsible for merging this into any existing `define`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function buildWorkerNameDefine(lfConfig: DevflareConfig, existing: Record<string, unknown>): Record<string, unknown>;
|
|
12
|
+
/**
|
|
13
|
+
* Build the `server.proxy` config that forwards WebSocket upgrades to the
|
|
14
|
+
* Miniflare bridge. Returns `null` when no patterns are configured.
|
|
15
|
+
*/
|
|
16
|
+
export declare function buildWebSocketProxyConfig(lfConfig: DevflareConfig, bridgePort: number, wsProxyPatterns: string[]): Record<string, unknown> | null;
|
|
17
|
+
/**
|
|
18
|
+
* Build the additional Vite config returned by the plugin's `config()` hook.
|
|
19
|
+
* Loads the devflare config, derives `define` and (in dev under
|
|
20
|
+
* `DEVFLARE_DEV`) `server.proxy`. Returns `undefined` when there is nothing
|
|
21
|
+
* to merge.
|
|
22
|
+
*/
|
|
23
|
+
export declare function buildPluginConfigHookResult(cwd: string, options: {
|
|
24
|
+
configPath: string | undefined;
|
|
25
|
+
bridgePort: number | undefined;
|
|
26
|
+
wsProxyPatterns: string[];
|
|
27
|
+
}, command: 'serve' | 'build', existingDefine: Record<string, unknown>): Promise<Record<string, unknown> | undefined>;
|
|
28
|
+
//# sourceMappingURL=plugin-config-hook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-config-hook.d.ts","sourceRoot":"","sources":["../../src/vite/plugin-config-hook.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEtD;;;GAGG;AACH,wBAAsB,qBAAqB,CAC1C,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,OAAO,GAAG,OAAO,GACxB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAShC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EAAE,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAmChC;AAED;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAChD,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACR,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,EAAE,MAAM,EAAE,CAAA;CACzB,EACD,OAAO,EAAE,OAAO,GAAG,OAAO,EAC1B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAkB9C"}
|