devflare 1.0.0-next.67 → 1.0.0-next.69
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/dist/_chunks/{build-DCgW1i8g.js → build-DplSo6Gc.js} +1 -1
- package/dist/_chunks/{build-artifacts-Btqs5gPy.js → build-artifacts-CkwCap5N.js} +1 -1
- package/dist/_chunks/{cli-DXnofibT.js → cli-3RIFRu7O.js} +4 -4
- package/dist/_chunks/{context-ZQydom21.js → context-DGMev2AF.js} +22 -11
- package/dist/_chunks/{deploy-DqYme109.js → deploy-z1_wbNn2.js} +1 -1
- package/dist/_chunks/{dev-DOoDj7SJ.js → dev-D8JuhNjD.js} +2 -2
- package/dist/_chunks/{env-DyL6JOXI.js → env-D4uJqqgu.js} +1 -1
- package/dist/_chunks/{runtime-CuMe2D6n.js → runtime-BlKTWIgD.js} +1 -1
- package/dist/_chunks/{vite-Dxuhm1BP.js → vite-Bml-Whp8.js} +1 -1
- package/dist/_chunks/{vite-process-BxZ8pb7i.js → vite-process-CDa3yQui.js} +1 -1
- package/dist/_chunks/{workspace-DE60No0K.js → workspace-CrvqPLTX.js} +2 -2
- package/dist/bridge/client.d.ts.map +1 -1
- package/dist/browser.js +2 -2
- package/dist/cli/index.js +1 -1
- package/dist/index.js +2 -2
- package/dist/runtime/index.js +2 -2
- package/dist/sveltekit/index.js +76 -12
- package/dist/sveltekit/platform.d.ts +22 -0
- package/dist/sveltekit/platform.d.ts.map +1 -1
- package/dist/test/index.js +3 -3
- package/dist/vite/index.js +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as cyanBold, f as logLine, o as dim, r as createCliTheme } from "./ui-BhCdDC2N.js";
|
|
2
|
-
import { t as prepareBuildArtifacts } from "./build-artifacts-
|
|
2
|
+
import { t as prepareBuildArtifacts } from "./build-artifacts-CkwCap5N.js";
|
|
3
3
|
//#region src/cli/commands/build.ts
|
|
4
4
|
async function runBuildCommand(parsed, logger, options) {
|
|
5
5
|
const theme = createCliTheme(parsed.options);
|
|
@@ -4,7 +4,7 @@ import { c as writeWranglerConfig, i as isolateViteBuildOutputPaths$1, o as reba
|
|
|
4
4
|
import { f as logLine } from "./ui-BhCdDC2N.js";
|
|
5
5
|
import { n as getPackageVersion } from "./package-metadata-CLI488gB.js";
|
|
6
6
|
import { t as resolvePackageSpecifier } from "./resolve-package-DeJUGxoE.js";
|
|
7
|
-
import { i as writeGeneratedViteConfig, l as prepareComposedWorkerEntrypoint, n as resolveEffectiveViteProject } from "./vite-
|
|
7
|
+
import { i as writeGeneratedViteConfig, l as prepareComposedWorkerEntrypoint, n as resolveEffectiveViteProject } from "./vite-Bml-Whp8.js";
|
|
8
8
|
import { t as bundleWorkerEntry } from "./worker-bundler-Isj5jiW6.js";
|
|
9
9
|
import { t as detectViteProject } from "./vite-utils-D8kPPxUy.js";
|
|
10
10
|
import { t as getDependencies } from "./dependencies-wKqrxKV_.js";
|
|
@@ -1140,19 +1140,19 @@ async function runInit(parsed, logger, options) {
|
|
|
1140
1140
|
return runInitCommand(parsed, logger, options);
|
|
1141
1141
|
}
|
|
1142
1142
|
async function runDev(parsed, logger, options) {
|
|
1143
|
-
const { runDevCommand } = await import("./dev-
|
|
1143
|
+
const { runDevCommand } = await import("./dev-D8JuhNjD.js");
|
|
1144
1144
|
return runDevCommand(parsed, logger, options);
|
|
1145
1145
|
}
|
|
1146
1146
|
async function runWorkspace(parsed, logger, options) {
|
|
1147
|
-
const { runWorkspaceCommand } = await import("./workspace-
|
|
1147
|
+
const { runWorkspaceCommand } = await import("./workspace-CrvqPLTX.js");
|
|
1148
1148
|
return runWorkspaceCommand(parsed, logger, options);
|
|
1149
1149
|
}
|
|
1150
1150
|
async function runBuild(parsed, logger, options) {
|
|
1151
|
-
const { runBuildCommand } = await import("./build-
|
|
1151
|
+
const { runBuildCommand } = await import("./build-DplSo6Gc.js");
|
|
1152
1152
|
return runBuildCommand(parsed, logger, options);
|
|
1153
1153
|
}
|
|
1154
1154
|
async function runDeploy(parsed, logger, options) {
|
|
1155
|
-
const { runDeployCommand } = await import("./deploy-
|
|
1155
|
+
const { runDeployCommand } = await import("./deploy-z1_wbNn2.js");
|
|
1156
1156
|
return runDeployCommand(parsed, logger, {
|
|
1157
1157
|
...options,
|
|
1158
1158
|
requireExplicitDeployTarget: true
|
|
@@ -1138,17 +1138,28 @@ var BridgeClient = class {
|
|
|
1138
1138
|
}
|
|
1139
1139
|
openConnection(WebSocketCtor) {
|
|
1140
1140
|
return new Promise((resolve, reject) => {
|
|
1141
|
+
let socket = null;
|
|
1142
|
+
const isCurrent = () => socket !== null && this.ws === socket;
|
|
1143
|
+
const releaseConnectSlot = () => {
|
|
1144
|
+
if (isCurrent()) this.connectPromise = null;
|
|
1145
|
+
};
|
|
1141
1146
|
const timeout = setTimeout(() => {
|
|
1147
|
+
socket?.close();
|
|
1142
1148
|
reject(/* @__PURE__ */ new Error(`Connection timeout: ${this.url}`));
|
|
1143
|
-
this.ws?.close();
|
|
1144
1149
|
}, this.connectTimeout);
|
|
1145
1150
|
try {
|
|
1146
|
-
|
|
1147
|
-
this.ws
|
|
1148
|
-
|
|
1151
|
+
socket = new WebSocketCtor(this.url);
|
|
1152
|
+
this.ws = socket;
|
|
1153
|
+
socket.binaryType = "arraybuffer";
|
|
1154
|
+
const adapter = new BridgeWsAdapter(socket);
|
|
1149
1155
|
this.adapter = adapter;
|
|
1150
|
-
|
|
1156
|
+
socket.onopen = () => {
|
|
1151
1157
|
clearTimeout(timeout);
|
|
1158
|
+
if (!isCurrent()) {
|
|
1159
|
+
socket?.close();
|
|
1160
|
+
reject(/* @__PURE__ */ new Error(`Bridge connection superseded: ${this.url}`));
|
|
1161
|
+
return;
|
|
1162
|
+
}
|
|
1152
1163
|
this.codec = new TransportV2Codec(adapter, {
|
|
1153
1164
|
capabilities: [...BRIDGE_CLIENT_CAPABILITIES],
|
|
1154
1165
|
onUnknownControl: (data) => this.handleJsonMessage(data),
|
|
@@ -1157,28 +1168,28 @@ var BridgeClient = class {
|
|
|
1157
1168
|
this.codec.sendHello();
|
|
1158
1169
|
this.codec.handshake.catch(() => {});
|
|
1159
1170
|
this.isConnected = true;
|
|
1160
|
-
|
|
1171
|
+
releaseConnectSlot();
|
|
1161
1172
|
resolve();
|
|
1162
1173
|
};
|
|
1163
|
-
|
|
1174
|
+
socket.onerror = (event) => {
|
|
1164
1175
|
clearTimeout(timeout);
|
|
1165
|
-
|
|
1176
|
+
releaseConnectSlot();
|
|
1166
1177
|
adapter.onerror?.({ error: event.error });
|
|
1167
1178
|
reject(/* @__PURE__ */ new Error("WebSocket connection failed"));
|
|
1168
1179
|
};
|
|
1169
|
-
|
|
1180
|
+
socket.onclose = (event) => {
|
|
1170
1181
|
adapter.onclose?.({
|
|
1171
1182
|
code: event?.code ?? 1006,
|
|
1172
1183
|
reason: event?.reason ?? ""
|
|
1173
1184
|
});
|
|
1185
|
+
if (!isCurrent()) return;
|
|
1174
1186
|
this.handleDisconnect();
|
|
1175
1187
|
};
|
|
1176
|
-
|
|
1188
|
+
socket.onmessage = (event) => {
|
|
1177
1189
|
adapter.onmessage?.({ data: event.data });
|
|
1178
1190
|
};
|
|
1179
1191
|
} catch (error) {
|
|
1180
1192
|
clearTimeout(timeout);
|
|
1181
|
-
this.connectPromise = null;
|
|
1182
1193
|
reject(error);
|
|
1183
1194
|
}
|
|
1184
1195
|
});
|
|
@@ -7,7 +7,7 @@ import { _ as yellowBold, d as green, f as logLine, g as yellow, o as dim, r as
|
|
|
7
7
|
import { n as getPackageVersion } from "./package-metadata-CLI488gB.js";
|
|
8
8
|
import { t as resolvePackageSpecifier } from "./resolve-package-DeJUGxoE.js";
|
|
9
9
|
import { t as asOptionalString } from "./command-utils-DjaaMQX7.js";
|
|
10
|
-
import { a as createBuildManifest, i as compareManifests, n as applyDeploymentStrategy, o as formatDriftWarning, r as describeDeploymentStrategy, s as readBuildManifest, t as prepareBuildArtifacts } from "./build-artifacts-
|
|
10
|
+
import { a as createBuildManifest, i as compareManifests, n as applyDeploymentStrategy, o as formatDriftWarning, r as describeDeploymentStrategy, s as readBuildManifest, t as prepareBuildArtifacts } from "./build-artifacts-CkwCap5N.js";
|
|
11
11
|
import { t as getDependencies } from "./dependencies-wKqrxKV_.js";
|
|
12
12
|
import { n as preparePreviewScopedResourcesForDeploy } from "./preview-resources-CQIu2-NY.js";
|
|
13
13
|
import { basename, dirname, isAbsolute, join, resolve } from "pathe";
|
|
@@ -4,9 +4,9 @@ import { t as applyLocalDevVarsToConfig } from "./local-dev-vars-BFLS-HoI.js";
|
|
|
4
4
|
import { a as cyanBold, f as logLine, g as yellow, o as dim, r as createCliTheme } from "./ui-BhCdDC2N.js";
|
|
5
5
|
import { clearLocalSendEmailBindings, setLocalSendEmailBindings } from "../utils/send-email.js";
|
|
6
6
|
import { s as resolveServiceBindings, t as discoverRoutes } from "./routes-CRXB3-iw.js";
|
|
7
|
-
import { l as prepareComposedWorkerEntrypoint, m as hasWorkerSurfacePaths, n as resolveEffectiveViteProject } from "./vite-
|
|
7
|
+
import { l as prepareComposedWorkerEntrypoint, m as hasWorkerSurfacePaths, n as resolveEffectiveViteProject } from "./vite-Bml-Whp8.js";
|
|
8
8
|
import { t as bundleWorkerEntry } from "./worker-bundler-Isj5jiW6.js";
|
|
9
|
-
import { _ as createMiniflareLog, a as logWorkerHandlerDetection, c as resolveViteIntegration, d as createRuntimeStdioForwarder, f as buildMiniflareDevConfig, g as runD1Migrations, h as resolveMainWorkerSurfacePaths, i as logRemoteBindingRequirements, l as resolveWorkerConfigWatchPath, m as collectWorkerWatchRoots, n as logMiniflareBindingDiagnostics, o as maybeStartBrowserShim, p as resolveR2PresignOrigin, r as logMiniflareConfigDiagnostics, s as maybeStartDOBundler, t as startViteProcess } from "./vite-process-
|
|
9
|
+
import { _ as createMiniflareLog, a as logWorkerHandlerDetection, c as resolveViteIntegration, d as createRuntimeStdioForwarder, f as buildMiniflareDevConfig, g as runD1Migrations, h as resolveMainWorkerSurfacePaths, i as logRemoteBindingRequirements, l as resolveWorkerConfigWatchPath, m as collectWorkerWatchRoots, n as logMiniflareBindingDiagnostics, o as maybeStartBrowserShim, p as resolveR2PresignOrigin, r as logMiniflareConfigDiagnostics, s as maybeStartDOBundler, t as startViteProcess } from "./vite-process-CDa3yQui.js";
|
|
10
10
|
import { n as bundleWorkflowEntrypointScript } from "./r2-presign-runtime-C75FkLMd.js";
|
|
11
11
|
import { r as stopSpawnedProcessTree, t as detectViteProject } from "./vite-utils-D8kPPxUy.js";
|
|
12
12
|
import { dirname, relative, resolve } from "pathe";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as createFetchEvent, b as createContextProxy, n as getContextOrNull, v as runWithEventContext } from "./context-
|
|
1
|
+
import { D as createFetchEvent, b as createContextProxy, n as getContextOrNull, v as runWithEventContext } from "./context-DGMev2AF.js";
|
|
2
2
|
import { AwsV4Signer } from "aws4fetch";
|
|
3
3
|
//#region src/runtime/exports.ts
|
|
4
4
|
/**
|
|
@@ -2,7 +2,7 @@ import { d as resolveConfigEnvVars } from "./preview-j9Kbx4-G.js";
|
|
|
2
2
|
import { i as resolveConfigPath, o as loadResolvedConfig, r as loadConfig, s as resolveResources, u as resolveConfigForEnvironment } from "./loader-BC0skbnH.js";
|
|
3
3
|
import { o as normalizeDOBinding } from "./schema-normalization-CTdiY17P.js";
|
|
4
4
|
import { c as writeWranglerConfig, i as isolateViteBuildOutputPaths, n as compileConfig, o as rebaseWranglerConfigPaths, r as compileToProgrammaticConfig, t as compileBuildConfig } from "./compiler-UxXQgEPq.js";
|
|
5
|
-
import { _ as resolveFetchHandler, o as assertExplicit2ArgStyle } from "./runtime-
|
|
5
|
+
import { _ as resolveFetchHandler, o as assertExplicit2ArgStyle } from "./runtime-BlKTWIgD.js";
|
|
6
6
|
import { s as resolveServiceBindings, t as discoverRoutes } from "./routes-CRXB3-iw.js";
|
|
7
7
|
import { n as findDurableObjectClasses } from "./durable-object-DuMPM8re.js";
|
|
8
8
|
import { r as SUPPORTED_WORKER_EXTENSIONS } from "./worker-entrypoint-C8j23t6d.js";
|
|
@@ -3,7 +3,7 @@ import { g as normalizeR2Binding, n as getLocalKVNamespaceIdentifier, r as getSi
|
|
|
3
3
|
import { C as buildSendEmailConfig, D as buildVersionMetadataConfig, E as buildTailConsumersConfig, O as buildWorkerLoadersConfig, S as buildSecretsStoreConfig, T as buildStreamingTailConsumersConfig, _ as buildMtlsCertificatesConfig, b as buildQueueProducers, c as buildAiSearchInstancesConfig, d as buildArtifactsConfig, f as buildDispatchNamespacesConfig, g as buildMediaConfig, h as buildImagesConfig, k as buildWorkflowsConfig, l as buildAiSearchNamespacesConfig, m as buildHyperdrivesConfig, n as getRouteDirectoryCandidate, p as buildFlagshipConfig, u as buildAnalyticsEngineConfig, v as buildPipelinesConfig, w as buildStreamConfig, x as buildRateLimitsConfig, y as buildQueueConsumers } from "./routes-CRXB3-iw.js";
|
|
4
4
|
import { r as transformDurableObject } from "./durable-object-DuMPM8re.js";
|
|
5
5
|
import { i as findFiles } from "./glob-DRw9sbfF.js";
|
|
6
|
-
import { d as DEFAULT_FETCH_ENTRY_FILES, f as DEFAULT_QUEUE_ENTRY_FILES, g as discoverDurableObjectFiles, h as resolveWorkerSurfacePaths, i as writeGeneratedViteConfig, m as hasWorkerSurfacePaths, p as DEFAULT_SCHEDULED_ENTRY_FILES, u as DEFAULT_EMAIL_ENTRY_FILES } from "./vite-
|
|
6
|
+
import { d as DEFAULT_FETCH_ENTRY_FILES, f as DEFAULT_QUEUE_ENTRY_FILES, g as discoverDurableObjectFiles, h as resolveWorkerSurfacePaths, i as writeGeneratedViteConfig, m as hasWorkerSurfacePaths, p as DEFAULT_SCHEDULED_ENTRY_FILES, u as DEFAULT_EMAIL_ENTRY_FILES } from "./vite-Bml-Whp8.js";
|
|
7
7
|
import { a as createWorkerdBundlerDefaults, i as writeWorkerCompatibleBundle, n as ensureDebugShim, r as resolveWorkerCompatibleRolldownConfig } from "./worker-bundler-Isj5jiW6.js";
|
|
8
8
|
import { t as R2_PRESIGN_RUNTIME_JS } from "./r2-presign-runtime-C75FkLMd.js";
|
|
9
9
|
import { n as buildLocalSecretWrappedBindingConfig } from "./local-secrets-C0n5oRgI.js";
|
|
@@ -6,9 +6,9 @@ import { t as applyLocalDevVarsToConfig } from "./local-dev-vars-BFLS-HoI.js";
|
|
|
6
6
|
import { a as cyanBold, f as logLine, g as yellow, o as dim, r as createCliTheme } from "./ui-BhCdDC2N.js";
|
|
7
7
|
import { setLocalSendEmailBindings } from "../utils/send-email.js";
|
|
8
8
|
import { s as resolveServiceBindings, t as discoverRoutes } from "./routes-CRXB3-iw.js";
|
|
9
|
-
import { l as prepareComposedWorkerEntrypoint } from "./vite-
|
|
9
|
+
import { l as prepareComposedWorkerEntrypoint } from "./vite-Bml-Whp8.js";
|
|
10
10
|
import { t as bundleWorkerEntry } from "./worker-bundler-Isj5jiW6.js";
|
|
11
|
-
import { _ as createMiniflareLog, c as resolveViteIntegration, d as createRuntimeStdioForwarder, f as buildMiniflareDevConfig, g as runD1Migrations, h as resolveMainWorkerSurfacePaths, p as resolveR2PresignOrigin, t as startViteProcess, u as createBrowserShim, v as createDOBundler } from "./vite-process-
|
|
11
|
+
import { _ as createMiniflareLog, c as resolveViteIntegration, d as createRuntimeStdioForwarder, f as buildMiniflareDevConfig, g as runD1Migrations, h as resolveMainWorkerSurfacePaths, p as resolveR2PresignOrigin, t as startViteProcess, u as createBrowserShim, v as createDOBundler } from "./vite-process-CDa3yQui.js";
|
|
12
12
|
import { n as bundleWorkflowEntrypointScript } from "./r2-presign-runtime-C75FkLMd.js";
|
|
13
13
|
import { dirname, resolve } from "pathe";
|
|
14
14
|
import { createConsola } from "consola";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/bridge/client.ts"],"names":[],"mappings":"AA6CA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAA;AAkC3E,MAAM,WAAW,mBAAmB;IACnC,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,mCAAmC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,4BAA4B;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IACjC,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAC9B,OAAO,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAA;CACtC;AAED,MAAM,WAAW,YAAY;IAC5B,UAAU,EAAE,+BAA+B,CAAC,UAAU,CAAC,CAAA;IACvD,MAAM,EAAE,UAAU,EAAE,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,0DAA0D;IAC1D,WAAW,EAAE;QACZ,OAAO,EAAE,MAAM,IAAI,CAAA;QACnB,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;KAC9B,GAAG,IAAI,CAAA;IACR,kEAAkE;IAClE,KAAK,EAAE,OAAO,CAAA;IACd,8CAA8C;IAC9C,MAAM,EAAE,OAAO,CAAA;CACf;AAED,MAAM,WAAW,aAAa;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,KAAK,IAAI,CAAA;IAC9C,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACjD;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;CAC9B;AAMD,qBAAa,YAAY;IACxB,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,cAAc,CAAkD;IAExE,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,WAAW,CAAQ;IAE3B,YAAY,OAAO,GAAE,mBAAwB,EAK5C;IAED,4BAA4B;IAC5B,MAAM,IAAI,MAAM,CAEf;IAED,6CAA6C;IAC7C,UAAU,IAAI,MAAM,CAGnB;IAMD,4BAA4B;IACtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/bridge/client.ts"],"names":[],"mappings":"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"}
|
package/dist/browser.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { n as defineConfig, t as ref } from "./_chunks/ref-CYJNAAe_.js";
|
|
2
2
|
import { t as workerName } from "./_chunks/workerName-kEXwmV2m.js";
|
|
3
3
|
import { n as getDurableObjectOptions, t as durableObject } from "./_chunks/decorators-eXNZ1S0N.js";
|
|
4
|
-
import { F as BridgeClient, I as getClient, M as createEnvProxy, N as initEnv, P as setBindingHints } from "./_chunks/context-
|
|
5
|
-
import { i as vars, r as env } from "./_chunks/env-
|
|
4
|
+
import { F as BridgeClient, I as getClient, M as createEnvProxy, N as initEnv, P as setBindingHints } from "./_chunks/context-DGMev2AF.js";
|
|
5
|
+
import { i as vars, r as env } from "./_chunks/env-D4uJqqgu.js";
|
|
6
6
|
//#region src/browser.ts
|
|
7
7
|
function createUnsupportedApiError(name) {
|
|
8
8
|
return /* @__PURE__ */ new Error(`${name} is not available in browser environments; import from devflare/test or devflare/runtime in a worker/Node context instead.`);
|
package/dist/cli/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as runCli, t as parseArgs } from "../_chunks/cli-
|
|
1
|
+
import { n as runCli, t as parseArgs } from "../_chunks/cli-3RIFRu7O.js";
|
|
2
2
|
export { parseArgs, runCli };
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,6 @@ import { a as ConfigResourceResolutionError, d as configSchema, n as ConfigValid
|
|
|
5
5
|
import { n as compileConfig, s as stringifyConfig } from "./_chunks/compiler-UxXQgEPq.js";
|
|
6
6
|
import { t as workerName } from "./_chunks/workerName-kEXwmV2m.js";
|
|
7
7
|
import { n as getDurableObjectOptions, t as durableObject } from "./_chunks/decorators-eXNZ1S0N.js";
|
|
8
|
-
import { n as runCli, t as parseArgs } from "./_chunks/cli-
|
|
9
|
-
import { i as vars, r as env } from "./_chunks/env-
|
|
8
|
+
import { n as runCli, t as parseArgs } from "./_chunks/cli-3RIFRu7O.js";
|
|
9
|
+
import { i as vars, r as env } from "./_chunks/env-D4uJqqgu.js";
|
|
10
10
|
export { ConfigNotFoundError, ConfigResourceResolutionError, ConfigValidationError, compileConfig, configSchema, defineConfig as default, defineConfig, defineWorkspace, durableObject, env, getDurableObjectOptions, loadConfig, loadResolvedConfig, parseArgs, preview, ref, runCli, stringifyConfig, vars, workerName };
|
package/dist/runtime/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as getDurableObjectOptions, t as durableObject } from "../_chunks/decorators-eXNZ1S0N.js";
|
|
2
|
-
import { A as createTailEvent, C as createDurableObjectWebSocketCloseEvent, D as createFetchEvent, E as createEmailEvent, O as createQueueEvent, S as createDurableObjectFetchEvent, T as createDurableObjectWebSocketMessageEvent, _ as runWithContext, a as getDurableObjectFetchEvent, b as createContextProxy, c as getDurableObjectWebSocketMessageEvent, d as getEventContextOrNull, f as getFetchEvent, g as hasContext, h as getTailEvent, i as getDurableObjectEvent, k as createScheduledEvent, l as getEmailEvent, m as getScheduledEvent, n as getContextOrNull, o as getDurableObjectWebSocketCloseEvent, p as getQueueEvent, r as getDurableObjectAlarmEvent, s as getDurableObjectWebSocketErrorEvent, t as getContext, u as getEventContext, v as runWithEventContext, w as createDurableObjectWebSocketErrorEvent, x as createDurableObjectAlarmEvent, y as ContextAccessError } from "../_chunks/context-
|
|
2
|
+
import { A as createTailEvent, C as createDurableObjectWebSocketCloseEvent, D as createFetchEvent, E as createEmailEvent, O as createQueueEvent, S as createDurableObjectFetchEvent, T as createDurableObjectWebSocketMessageEvent, _ as runWithContext, a as getDurableObjectFetchEvent, b as createContextProxy, c as getDurableObjectWebSocketMessageEvent, d as getEventContextOrNull, f as getFetchEvent, g as hasContext, h as getTailEvent, i as getDurableObjectEvent, k as createScheduledEvent, l as getEmailEvent, m as getScheduledEvent, n as getContextOrNull, o as getDurableObjectWebSocketCloseEvent, p as getQueueEvent, r as getDurableObjectAlarmEvent, s as getDurableObjectWebSocketErrorEvent, t as getContext, u as getEventContext, v as runWithEventContext, w as createDurableObjectWebSocketErrorEvent, x as createDurableObjectAlarmEvent, y as ContextAccessError } from "../_chunks/context-DGMev2AF.js";
|
|
3
3
|
import { clearLocalSendEmailBindings, setLocalSendEmailBindings } from "../utils/send-email.js";
|
|
4
|
-
import { C as vars, S as locals, _ as resolveFetchHandler, a as matchFetchRoute, b as env, c as assertExplicitScheduledHandlerStyle, d as defineQueueHandler, f as defineScheduledHandler, g as markWorkerStyle, h as markResolveStyle, i as invokeRouteModules, l as createResolveFetch, m as invokeFetchModule, n as presignR2Put, o as assertExplicit2ArgStyle, p as invokeFetchHandler, r as createRouteResolve, s as assertExplicitQueueHandlerStyle, t as presignR2Get, u as defineFetchHandler, v as sequence, x as event, y as ctx } from "../_chunks/runtime-
|
|
4
|
+
import { C as vars, S as locals, _ as resolveFetchHandler, a as matchFetchRoute, b as env, c as assertExplicitScheduledHandlerStyle, d as defineQueueHandler, f as defineScheduledHandler, g as markWorkerStyle, h as markResolveStyle, i as invokeRouteModules, l as createResolveFetch, m as invokeFetchModule, n as presignR2Put, o as assertExplicit2ArgStyle, p as invokeFetchHandler, r as createRouteResolve, s as assertExplicitQueueHandlerStyle, t as presignR2Get, u as defineFetchHandler, v as sequence, x as event, y as ctx } from "../_chunks/runtime-BlKTWIgD.js";
|
|
5
5
|
export { ContextAccessError, assertExplicit2ArgStyle, assertExplicitQueueHandlerStyle, assertExplicitScheduledHandlerStyle, clearLocalSendEmailBindings, createContextProxy, createDurableObjectAlarmEvent, createDurableObjectFetchEvent, createDurableObjectWebSocketCloseEvent, createDurableObjectWebSocketErrorEvent, createDurableObjectWebSocketMessageEvent, createEmailEvent, createFetchEvent, createQueueEvent, createResolveFetch, createRouteResolve, createScheduledEvent, createTailEvent, ctx, defineFetchHandler, defineQueueHandler, defineScheduledHandler, durableObject, env, event, getContext, getContextOrNull, getDurableObjectAlarmEvent, getDurableObjectEvent, getDurableObjectFetchEvent, getDurableObjectOptions, getDurableObjectWebSocketCloseEvent, getDurableObjectWebSocketErrorEvent, getDurableObjectWebSocketMessageEvent, getEmailEvent, getEventContext, getEventContextOrNull, getFetchEvent, getQueueEvent, getScheduledEvent, getTailEvent, hasContext, invokeFetchHandler, invokeFetchModule, invokeRouteModules, locals, markResolveStyle, markWorkerStyle, matchFetchRoute, presignR2Get, presignR2Put, resolveFetchHandler, runWithContext, runWithEventContext, sequence, setLocalSendEmailBindings, vars };
|
package/dist/sveltekit/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as loadConfig } from "../_chunks/loader-BC0skbnH.js";
|
|
2
2
|
import { l as normalizeHyperdriveBinding } from "../_chunks/schema-normalization-CTdiY17P.js";
|
|
3
|
-
import { D as createFetchEvent, I as getClient, M as createEnvProxy, P as setBindingHints, v as runWithEventContext } from "../_chunks/context-
|
|
3
|
+
import { D as createFetchEvent, I as getClient, M as createEnvProxy, P as setBindingHints, v as runWithEventContext } from "../_chunks/context-DGMev2AF.js";
|
|
4
4
|
import { createLocalSendEmailBinding } from "../utils/send-email.js";
|
|
5
5
|
import { i as extractBindingHints, n as createLocalWorkerLoaderBinding, t as createLocalHyperdrive } from "../_chunks/local-hyperdrive-CcORzo76.js";
|
|
6
6
|
import { t as buildLocalSecretNodeBindings } from "../_chunks/local-secrets-C0n5oRgI.js";
|
|
@@ -88,6 +88,45 @@ function createDevExecutionContext(pendingErrors) {
|
|
|
88
88
|
};
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
|
+
* Total budget for riding out a transient bridge outage while (re)connecting for a request. An HMR worker
|
|
92
|
+
* reload or a brief coordinator restart drops the bridge socket for well under a second; retrying within this
|
|
93
|
+
* window keeps the request's bindings available instead of failing it. Kept modest so a bridge that is
|
|
94
|
+
* genuinely down (devflare not running) still surfaces the error promptly rather than hanging every request.
|
|
95
|
+
*/
|
|
96
|
+
const BRIDGE_CONNECT_MAX_WAIT_MS = 3e3;
|
|
97
|
+
/** Delay between bridge (re)connect attempts within {@link BRIDGE_CONNECT_MAX_WAIT_MS}. */
|
|
98
|
+
const BRIDGE_CONNECT_RETRY_DELAY_MS = 150;
|
|
99
|
+
/**
|
|
100
|
+
* Connect to the bridge, riding out a TRANSIENT outage with a bounded retry.
|
|
101
|
+
*
|
|
102
|
+
* The bridge socket drops for a fraction of a second whenever the dev runtime reloads a worker (HMR /
|
|
103
|
+
* config change) or the coordinator briefly restarts (e.g. after a worker threw). A single per-request
|
|
104
|
+
* `connect()` attempt rejects the instant the socket is refused, which the SvelteKit handle turns into
|
|
105
|
+
* "dropped every binding for this request" — so an unrelated route 500s with a missing D1/KV/R2 binding
|
|
106
|
+
* mid-reload. Retrying for a short window instead lets the reconnect land and the request proceed. The LAST
|
|
107
|
+
* error is rethrown only once the budget is spent (the bridge really is down), so a genuine
|
|
108
|
+
* misconfiguration still fails fast rather than hanging.
|
|
109
|
+
*
|
|
110
|
+
* Exported for unit testing; `sleep`/`now` are injectable so the retry schedule is asserted without real time.
|
|
111
|
+
*
|
|
112
|
+
* @param connect - the bridge client's `connect()`; a fresh attempt each call (the client dedups in-flight ones).
|
|
113
|
+
* @param options - `maxWaitMs` total budget, `retryDelayMs` between attempts, and injectable `sleep`/`now` for tests.
|
|
114
|
+
*/
|
|
115
|
+
async function connectBridgeWithRetry(connect, options = {}) {
|
|
116
|
+
const maxWaitMs = options.maxWaitMs ?? BRIDGE_CONNECT_MAX_WAIT_MS;
|
|
117
|
+
const retryDelayMs = options.retryDelayMs ?? BRIDGE_CONNECT_RETRY_DELAY_MS;
|
|
118
|
+
const sleep = options.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
|
|
119
|
+
const now = options.now ?? Date.now;
|
|
120
|
+
const deadline = now() + maxWaitMs;
|
|
121
|
+
for (;;) try {
|
|
122
|
+
await connect();
|
|
123
|
+
return;
|
|
124
|
+
} catch (error) {
|
|
125
|
+
if (now() + retryDelayMs >= deadline) throw error;
|
|
126
|
+
await sleep(retryDelayMs);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
91
130
|
* Create a platform object that routes bindings through the bridge
|
|
92
131
|
*
|
|
93
132
|
* Use this in dev mode to get access to Miniflare bindings via WebSocket RPC.
|
|
@@ -119,7 +158,7 @@ async function createDevflarePlatform(options = {}) {
|
|
|
119
158
|
const cacheKey = getPlatformCacheKey(bridgeUrl, hints);
|
|
120
159
|
if (shouldUseCachedPlatform(localBindings) && platformCache?.key === cacheKey) return platformCache.platform;
|
|
121
160
|
const client = getClient({ url: bridgeUrl });
|
|
122
|
-
await client.connect();
|
|
161
|
+
await connectBridgeWithRetry(() => client.connect());
|
|
123
162
|
const env = overlayLocalBindings(createEnvProxy({
|
|
124
163
|
client,
|
|
125
164
|
hints,
|
|
@@ -238,8 +277,35 @@ function resolveWithPlatformContext(event, resolve, platform) {
|
|
|
238
277
|
if (!(event.request instanceof Request)) return resolve(event);
|
|
239
278
|
return runWithEventContext(createFetchEvent(event.request, platform.env, platform.context), () => resolve(event));
|
|
240
279
|
}
|
|
241
|
-
|
|
242
|
-
|
|
280
|
+
/**
|
|
281
|
+
* Build this request's dev platform, reporting a failure instead of throwing.
|
|
282
|
+
*
|
|
283
|
+
* A dev request should still be served when the bridge is unreachable — just without bindings — so the
|
|
284
|
+
* failure is deliberately swallowed here. Equally deliberately, this covers ONLY the setup: resolving
|
|
285
|
+
* options and connecting. An error raised by the request itself belongs to the request. Catching that
|
|
286
|
+
* here (as one try around setup AND `resolve()` used to) blamed it on the platform, hid the real cause,
|
|
287
|
+
* and re-ran the whole request — repeating every side effect and running the second pass outside the
|
|
288
|
+
* context {@link resolveWithPlatformContext} established for the first.
|
|
289
|
+
*
|
|
290
|
+
* @param resolveOptions - produces the platform options; may itself fail (config load, hint extraction).
|
|
291
|
+
* @returns the platform, or null when it could not be built.
|
|
292
|
+
*/
|
|
293
|
+
async function createPlatformOrReport(resolveOptions) {
|
|
294
|
+
try {
|
|
295
|
+
return await createDevflarePlatform(await resolveOptions());
|
|
296
|
+
} catch (error) {
|
|
297
|
+
console.error("[devflare] Failed to create platform:", error);
|
|
298
|
+
return null;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Attach a built platform to the event and resolve the request under its context.
|
|
303
|
+
*
|
|
304
|
+
* @param event - the SvelteKit request event.
|
|
305
|
+
* @param resolve - SvelteKit's resolve for this handle.
|
|
306
|
+
* @param platform - the platform from {@link createPlatformOrReport}.
|
|
307
|
+
*/
|
|
308
|
+
function serveWithPlatform(event, resolve, platform) {
|
|
243
309
|
event.platform = platform;
|
|
244
310
|
return resolveWithPlatformContext(event, resolve, platform);
|
|
245
311
|
}
|
|
@@ -285,10 +351,9 @@ async function getCustomPlatformOptions(options) {
|
|
|
285
351
|
function createHandle(options = {}) {
|
|
286
352
|
const { shouldEnable, ...platformOptions } = options;
|
|
287
353
|
return async ({ event, resolve }) => {
|
|
288
|
-
if (shouldEnable ? shouldEnable() : process.env.NODE_ENV !== "production" && process.env.DEVFLARE_DEV === "true")
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
console.error("[devflare] Failed to create platform:", error);
|
|
354
|
+
if (shouldEnable ? shouldEnable() : process.env.NODE_ENV !== "production" && process.env.DEVFLARE_DEV === "true") {
|
|
355
|
+
const platform = await createPlatformOrReport(() => getCustomPlatformOptions(platformOptions));
|
|
356
|
+
if (platform) return serveWithPlatform(event, resolve, platform);
|
|
292
357
|
}
|
|
293
358
|
return resolve(event);
|
|
294
359
|
};
|
|
@@ -317,10 +382,9 @@ function createHandle(options = {}) {
|
|
|
317
382
|
*/
|
|
318
383
|
const handle = async (input) => {
|
|
319
384
|
const { event, resolve } = input;
|
|
320
|
-
if (process.env.NODE_ENV !== "production" && process.env.DEVFLARE_DEV === "true")
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
console.error("[devflare] Failed to create platform:", error);
|
|
385
|
+
if (process.env.NODE_ENV !== "production" && process.env.DEVFLARE_DEV === "true") {
|
|
386
|
+
const platform = await createPlatformOrReport(getAutoPlatformOptions);
|
|
387
|
+
if (platform) return serveWithPlatform(event, resolve, platform);
|
|
324
388
|
}
|
|
325
389
|
return resolve(event);
|
|
326
390
|
};
|
|
@@ -36,6 +36,28 @@ export interface DevflarePlatformOptions {
|
|
|
36
36
|
* Returns a snapshot of the pending errors and clears the buffer.
|
|
37
37
|
*/
|
|
38
38
|
export declare function drainWaitUntilErrors(platform: Platform): unknown[];
|
|
39
|
+
/**
|
|
40
|
+
* Connect to the bridge, riding out a TRANSIENT outage with a bounded retry.
|
|
41
|
+
*
|
|
42
|
+
* The bridge socket drops for a fraction of a second whenever the dev runtime reloads a worker (HMR /
|
|
43
|
+
* config change) or the coordinator briefly restarts (e.g. after a worker threw). A single per-request
|
|
44
|
+
* `connect()` attempt rejects the instant the socket is refused, which the SvelteKit handle turns into
|
|
45
|
+
* "dropped every binding for this request" — so an unrelated route 500s with a missing D1/KV/R2 binding
|
|
46
|
+
* mid-reload. Retrying for a short window instead lets the reconnect land and the request proceed. The LAST
|
|
47
|
+
* error is rethrown only once the budget is spent (the bridge really is down), so a genuine
|
|
48
|
+
* misconfiguration still fails fast rather than hanging.
|
|
49
|
+
*
|
|
50
|
+
* Exported for unit testing; `sleep`/`now` are injectable so the retry schedule is asserted without real time.
|
|
51
|
+
*
|
|
52
|
+
* @param connect - the bridge client's `connect()`; a fresh attempt each call (the client dedups in-flight ones).
|
|
53
|
+
* @param options - `maxWaitMs` total budget, `retryDelayMs` between attempts, and injectable `sleep`/`now` for tests.
|
|
54
|
+
*/
|
|
55
|
+
export declare function connectBridgeWithRetry(connect: () => Promise<void>, options?: {
|
|
56
|
+
maxWaitMs?: number;
|
|
57
|
+
retryDelayMs?: number;
|
|
58
|
+
sleep?: (ms: number) => Promise<void>;
|
|
59
|
+
now?: () => number;
|
|
60
|
+
}): Promise<void>;
|
|
39
61
|
/**
|
|
40
62
|
* Create a platform object that routes bindings through the bridge
|
|
41
63
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/sveltekit/platform.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,YAAY,EAA8C,MAAM,WAAW,CAAA;AAUzF;;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;AAkDD;;;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,
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/sveltekit/platform.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,YAAY,EAA8C,MAAM,WAAW,CAAA;AAUzF;;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;AAkDD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,EAAE,CAQlE;AAYD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sBAAsB,CAC3C,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC5B,OAAO,GAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACb,GACJ,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,sBAAsB,CAC3C,OAAO,GAAE,uBAA4B,GACnC,OAAO,CAAC,QAAQ,CAAC,CAsDnB;AA4BD;;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;AA8HD;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IACnE;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAA;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAC3B,CAAC,SAAS;IACT,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;IAChD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CACzD,EACA,OAAO,GAAE,mBAAwB,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAiBpE;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,MAAM,GAClB,CAAC,SAAS;IACT,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;IAChD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;CACzD,SAEM,CAAC,KACN,OAAO,CAAC,QAAQ,CAalB,CAAA"}
|
package/dist/test/index.js
CHANGED
|
@@ -4,10 +4,10 @@ import { _ as normalizeSecretsStoreBinding, f as normalizeMediaBinding, h as nor
|
|
|
4
4
|
import { t as applyLocalDevVarsToConfig } from "../_chunks/local-dev-vars-BFLS-HoI.js";
|
|
5
5
|
import { g as isAuthenticated, p as getApiToken } from "../_chunks/api-BKClUlUf.js";
|
|
6
6
|
import { d as getPrimaryAccount, n as getEffectiveAccountId } from "../_chunks/preferences-CbYERA_m.js";
|
|
7
|
-
import { A as createTailEvent, D as createFetchEvent, E as createEmailEvent, F as BridgeClient, M as createEnvProxy, O as createQueueEvent, P as setBindingHints, _ as runWithContext, k as createScheduledEvent, v as runWithEventContext, x as createDurableObjectAlarmEvent } from "../_chunks/context-
|
|
7
|
+
import { A as createTailEvent, D as createFetchEvent, E as createEmailEvent, F as BridgeClient, M as createEnvProxy, O as createQueueEvent, P as setBindingHints, _ as runWithContext, k as createScheduledEvent, v as runWithEventContext, x as createDurableObjectAlarmEvent } from "../_chunks/context-DGMev2AF.js";
|
|
8
8
|
import { createLocalSendEmailBinding, wrapEnvSendEmailBindings } from "../utils/send-email.js";
|
|
9
|
-
import { n as __setTestContext, r as env, t as __clearTestContext } from "../_chunks/env-
|
|
10
|
-
import { _ as resolveFetchHandler, a as matchFetchRoute, m as invokeFetchModule, r as createRouteResolve } from "../_chunks/runtime-
|
|
9
|
+
import { n as __setTestContext, r as env, t as __clearTestContext } from "../_chunks/env-D4uJqqgu.js";
|
|
10
|
+
import { _ as resolveFetchHandler, a as matchFetchRoute, m as invokeFetchModule, r as createRouteResolve } from "../_chunks/runtime-BlKTWIgD.js";
|
|
11
11
|
import { i as extractBindingHints, n as createLocalWorkerLoaderBinding, r as disposeLocalWorkerLoaderBindings, t as createLocalHyperdrive } from "../_chunks/local-hyperdrive-CcORzo76.js";
|
|
12
12
|
import { E as buildTailConsumersConfig, T as buildStreamingTailConsumersConfig, a as hasServiceBindings, i as hasCrossWorkerDOs, m as buildHyperdrivesConfig, o as resolveDOBindings, r as clearBundleCache, s as resolveServiceBindings, t as discoverRoutes, u as buildAnalyticsEngineConfig } from "../_chunks/routes-CRXB3-iw.js";
|
|
13
13
|
import { i as findFiles, t as DEFAULT_DO_PATTERN } from "../_chunks/glob-DRw9sbfF.js";
|
package/dist/vite/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
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-
|
|
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-Bml-Whp8.js";
|
|
2
2
|
export { devflarePlugin as default, devflarePlugin, getCloudflareConfig, getDevflareConfigs, getPluginContext, hasInlineViteConfig, resolveEffectiveViteProject, resolveViteUserConfig, writeGeneratedViteConfig };
|
package/package.json
CHANGED