wrangler 0.0.0-cfd2e880 → 0.0.0-cffacf5c
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/README.md +0 -4
- package/bin/wrangler.js +29 -9
- package/miniflare-dist/index.mjs +175 -125
- package/package.json +29 -10
- package/src/__tests__/access.test.ts +25 -0
- package/src/__tests__/api-dev.test.ts +222 -3
- package/src/__tests__/api-devregistry.test.js +64 -0
- package/src/__tests__/api.test.ts +80 -0
- package/src/__tests__/configuration.test.ts +511 -374
- package/src/__tests__/d1.test.ts +123 -0
- package/src/__tests__/delete.test.ts +263 -0
- package/src/__tests__/deployments.test.ts +105 -0
- package/src/__tests__/dev.test.tsx +327 -60
- package/src/__tests__/generate.test.ts +207 -63
- package/src/__tests__/get-host-from-url.test.ts +16 -0
- package/src/__tests__/helpers/mock-auth-domain.ts +20 -0
- package/src/__tests__/helpers/mock-cfetch.ts +20 -58
- package/src/__tests__/helpers/mock-dialogs.ts +1 -1
- package/src/__tests__/helpers/mock-kv.ts +1 -1
- package/src/__tests__/helpers/mock-oauth-flow.ts +74 -53
- package/src/__tests__/helpers/mock-process.ts +8 -13
- package/src/__tests__/helpers/msw/blob-worker.cjs +19 -0
- package/src/__tests__/helpers/msw/handlers/access.ts +13 -0
- package/src/__tests__/helpers/msw/handlers/deployments.ts +59 -0
- package/src/__tests__/helpers/msw/handlers/namespaces.ts +7 -7
- package/src/__tests__/helpers/msw/handlers/oauth.ts +15 -20
- package/src/__tests__/helpers/msw/handlers/r2.ts +8 -8
- package/src/__tests__/helpers/msw/handlers/script.ts +75 -0
- package/src/__tests__/helpers/msw/handlers/user.ts +6 -6
- package/src/__tests__/helpers/msw/handlers/zones.ts +22 -0
- package/src/__tests__/helpers/msw/index.ts +19 -2
- package/src/__tests__/helpers/msw/read-file-sync.js +61 -0
- package/src/__tests__/helpers/worker-scripts/child-wrangler.toml +1 -0
- package/src/__tests__/helpers/{hello-world-worker.js → worker-scripts/hello-world-worker.js} +0 -0
- package/src/__tests__/helpers/worker-scripts/hello-world-wrangler.toml +1 -0
- package/src/__tests__/helpers/worker-scripts/parent-worker.js +8 -0
- package/src/__tests__/helpers/worker-scripts/parent-wrangler.toml +5 -0
- package/src/__tests__/index.test.ts +86 -65
- package/src/__tests__/init.test.ts +881 -308
- package/src/__tests__/jest.setup.ts +28 -11
- package/src/__tests__/kv.test.ts +655 -540
- package/src/__tests__/logout.test.ts +47 -0
- package/src/__tests__/metrics.test.ts +89 -44
- package/src/__tests__/middleware.scheduled.test.ts +145 -0
- package/src/__tests__/middleware.test.ts +727 -745
- package/src/__tests__/pages-deployment-tail.test.ts +884 -0
- package/src/__tests__/pages.test.ts +1838 -939
- package/src/__tests__/paths.test.ts +23 -1
- package/src/__tests__/publish.test.ts +1460 -736
- package/src/__tests__/pubsub.test.ts +211 -88
- package/src/__tests__/queues.test.ts +522 -0
- package/src/__tests__/r2.test.ts +290 -268
- package/src/__tests__/secret.test.ts +208 -84
- package/src/__tests__/tail.test.ts +243 -119
- package/src/__tests__/tsconfig-sanity.ts +12 -0
- package/src/__tests__/tsconfig.json +8 -0
- package/src/__tests__/tsconfig.tsbuildinfo +1 -0
- package/src/__tests__/type-generation.test.ts +233 -0
- package/src/__tests__/user.test.ts +47 -73
- package/src/__tests__/utils-collectKeyValues.test.ts +47 -0
- package/src/__tests__/whoami.test.tsx +6 -2
- package/src/__tests__/worker-namespace.test.ts +120 -123
- package/src/api/dev.ts +141 -53
- package/src/api/index.ts +1 -1
- package/src/bundle-reporter.tsx +41 -2
- package/src/bundle.ts +277 -154
- package/src/cfetch/index.ts +40 -3
- package/src/cfetch/internal.ts +54 -91
- package/src/cli.ts +3 -4
- package/src/config/config.ts +12 -0
- package/src/config/environment.ts +92 -0
- package/src/config/index.ts +111 -4
- package/src/config/validation.ts +290 -1
- package/src/config-cache.ts +1 -1
- package/src/create-worker-preview.ts +31 -6
- package/src/create-worker-upload-form.ts +38 -4
- package/src/d1/backups.tsx +223 -0
- package/src/d1/constants.ts +2 -0
- package/src/d1/create.tsx +63 -0
- package/src/d1/delete.tsx +56 -0
- package/src/d1/execute.tsx +352 -0
- package/src/d1/formatTimeAgo.ts +14 -0
- package/src/d1/index.ts +101 -0
- package/src/d1/list.tsx +48 -0
- package/src/d1/migrations/apply.tsx +196 -0
- package/src/d1/migrations/create.tsx +77 -0
- package/src/d1/migrations/helpers.ts +147 -0
- package/src/d1/migrations/index.tsx +3 -0
- package/src/d1/migrations/list.tsx +79 -0
- package/src/d1/migrations/options.ts +18 -0
- package/src/d1/options.ts +22 -0
- package/src/d1/types.tsx +24 -0
- package/src/d1/utils.ts +48 -0
- package/src/delete.ts +108 -0
- package/src/deployments.ts +83 -0
- package/src/deprecated/index.ts +145 -0
- package/src/dev/dev-vars.ts +11 -8
- package/src/dev/dev.tsx +115 -48
- package/src/dev/get-local-persistence-path.tsx +31 -0
- package/src/dev/local.tsx +389 -44
- package/src/dev/remote.tsx +288 -110
- package/src/dev/start-server.ts +198 -60
- package/src/dev/use-esbuild.ts +29 -7
- package/src/dev-registry.tsx +41 -0
- package/src/dev.tsx +193 -76
- package/src/dialogs.tsx +24 -10
- package/src/dispatch-namespace.ts +5 -4
- package/src/docs/index.ts +97 -0
- package/src/entry.ts +1 -1
- package/src/environment-variables/factory.ts +88 -0
- package/src/environment-variables/misc-variables.ts +30 -0
- package/src/generate/index.ts +300 -0
- package/src/git-client.ts +100 -7
- package/src/index.tsx +237 -1894
- package/src/init.ts +167 -51
- package/src/inspect.ts +47 -27
- package/src/is-interactive.ts +4 -0
- package/src/jest.d.ts +4 -0
- package/src/{kv.ts → kv/helpers.ts} +3 -3
- package/src/kv/index.ts +596 -0
- package/src/logger.ts +27 -8
- package/src/metrics/metrics-config.ts +3 -3
- package/src/metrics/send-event.ts +5 -1
- package/src/miniflare-cli/assets.ts +77 -35
- package/src/miniflare-cli/index.ts +22 -25
- package/src/miniflare-cli/tsconfig.json +9 -0
- package/src/miniflare-cli/tsconfig.tsbuildinfo +1 -0
- package/src/miniflare-cli/types.ts +11 -0
- package/src/module-collection.ts +9 -0
- package/src/pages/build.tsx +34 -2
- package/src/pages/constants.ts +4 -1
- package/src/pages/deployment-tails.tsx +284 -0
- package/src/pages/deployments.tsx +5 -27
- package/src/pages/dev.tsx +257 -103
- package/src/pages/errors.ts +48 -4
- package/src/pages/functions/buildPlugin.ts +84 -87
- package/src/pages/functions/buildWorker.ts +120 -110
- package/src/pages/functions/routes-transformation.ts +1 -14
- package/src/pages/functions/routes-validation.test.ts +403 -0
- package/src/pages/functions/routes-validation.ts +202 -0
- package/src/pages/functions/tsconfig.json +8 -0
- package/src/pages/functions/tsconfig.tsbuildinfo +1 -0
- package/src/pages/functions.tsx +5 -19
- package/src/pages/index.tsx +8 -0
- package/src/pages/prompt-select-project.tsx +31 -0
- package/src/pages/publish.tsx +121 -95
- package/src/pages/types.ts +1 -9
- package/src/pages/upload.tsx +71 -22
- package/src/pages/utils.ts +13 -2
- package/src/paths.ts +30 -4
- package/src/proxy.ts +375 -167
- package/src/publish/index.ts +270 -0
- package/src/{publish.ts → publish/publish.ts} +260 -80
- package/src/pubsub/pubsub-commands.tsx +4 -3
- package/src/queues/cli/commands/consumer/add.ts +71 -0
- package/src/queues/cli/commands/consumer/index.ts +22 -0
- package/src/queues/cli/commands/consumer/remove.ts +38 -0
- package/src/queues/cli/commands/create.ts +25 -0
- package/src/queues/cli/commands/delete.ts +26 -0
- package/src/queues/cli/commands/index.ts +36 -0
- package/src/queues/cli/commands/list.ts +25 -0
- package/src/queues/client.ts +135 -0
- package/src/queues/utils.ts +18 -0
- package/src/r2/constants.ts +4 -0
- package/src/{r2.ts → r2/helpers.ts} +2 -2
- package/src/r2/index.ts +289 -0
- package/src/routes.ts +140 -0
- package/src/secret/index.ts +379 -0
- package/src/sites.tsx +3 -3
- package/src/tail/createTail.ts +379 -0
- package/src/tail/index.ts +199 -300
- package/src/tail/printing.ts +2 -2
- package/src/tsconfig-sanity.ts +16 -0
- package/src/type-generation.ts +181 -0
- package/src/user/access.ts +68 -0
- package/src/user/auth-variables.ts +113 -0
- package/src/user/choose-account.tsx +1 -1
- package/src/user/index.ts +0 -1
- package/src/user/user.tsx +90 -43
- package/src/utils/collectKeyValues.ts +14 -0
- package/src/worker.ts +48 -1
- package/src/yargs-types.ts +24 -0
- package/src/zones.ts +33 -9
- package/templates/__tests__/pages-dev-util.test.ts +128 -0
- package/templates/__tests__/tsconfig-sanity.ts +12 -0
- package/templates/__tests__/tsconfig.json +8 -0
- package/templates/__tests__/tsconfig.tsbuildinfo +1 -0
- package/templates/d1-beta-facade.js +241 -0
- package/templates/facade.d.ts +14 -0
- package/templates/first-party-worker-module-facade.ts +4 -3
- package/templates/format-dev-errors.ts +7 -6
- package/templates/init-tests/test-jest-new-worker.js +23 -0
- package/templates/init-tests/test-vitest-new-worker.js +24 -0
- package/templates/init-tests/test-vitest-new-worker.ts +25 -0
- package/templates/middleware/loader-modules.ts +0 -2
- package/templates/middleware/loader-sw.ts +51 -31
- package/templates/middleware/middleware-miniflare3-json-error.ts +20 -0
- package/templates/middleware/middleware-scheduled.ts +2 -1
- package/templates/new-worker.js +1 -1
- package/templates/pages-dev-pipeline.ts +31 -0
- package/templates/pages-dev-util.ts +52 -0
- package/templates/pages-shim.ts +4 -1
- package/templates/pages-template-plugin.ts +5 -1
- package/templates/pages-template-worker.ts +21 -4
- package/templates/serve-static-assets.ts +16 -14
- package/templates/tsconfig-sanity.ts +11 -0
- package/templates/tsconfig.init.json +106 -0
- package/templates/tsconfig.json +5 -102
- package/templates/tsconfig.tsbuildinfo +1 -0
- package/wrangler-dist/cli.d.ts +606 -49
- package/wrangler-dist/cli.js +144952 -134581
- package/src/__tests__/helpers/msw/handlers/index.ts +0 -13
- package/src/environment-variables.ts +0 -35
- package/src/faye-websocket.d.ts +0 -6
- package/src/generate.ts +0 -131
- package/src/miniflare-cli/enum-keys.ts +0 -17
- package/src/preview.ts +0 -31
- package/src/user/env-vars.ts +0 -46
package/README.md
CHANGED
package/bin/wrangler.js
CHANGED
|
@@ -62,15 +62,21 @@ Consider using a Node.js version manager such as https://volta.sh/ or https://gi
|
|
|
62
62
|
...process.argv.slice(2),
|
|
63
63
|
],
|
|
64
64
|
{
|
|
65
|
-
stdio: "inherit",
|
|
65
|
+
stdio: ["inherit", "inherit", "inherit", "ipc"],
|
|
66
66
|
env: {
|
|
67
67
|
...process.env,
|
|
68
68
|
NODE_EXTRA_CA_CERTS: pathToCACerts,
|
|
69
69
|
},
|
|
70
70
|
}
|
|
71
|
-
)
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
)
|
|
72
|
+
.on("exit", (code) =>
|
|
73
|
+
process.exit(code === undefined || code === null ? 0 : code)
|
|
74
|
+
)
|
|
75
|
+
.on("message", (message) => {
|
|
76
|
+
if (process.send) {
|
|
77
|
+
process.send(message);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
74
80
|
}
|
|
75
81
|
|
|
76
82
|
/**
|
|
@@ -87,7 +93,15 @@ function runDelegatedWrangler() {
|
|
|
87
93
|
} = JSON.parse(fs.readFileSync(packageJsonPath));
|
|
88
94
|
const resolvedBinaryPath = path.resolve(packageJsonPath, "..", binaryPath);
|
|
89
95
|
|
|
90
|
-
|
|
96
|
+
// Make sure the user knows we're delegating to a different installation
|
|
97
|
+
const currentPackageJsonPath = path.resolve(__dirname, "..", "package.json");
|
|
98
|
+
const currentPackage = JSON.parse(fs.readFileSync(currentPackageJsonPath));
|
|
99
|
+
const argv = process.argv.slice(2).join(" ");
|
|
100
|
+
console.log(
|
|
101
|
+
`Delegating to locally-installed wrangler@${version} over global wrangler@${currentPackage.version}...
|
|
102
|
+
Run \`npx wrangler ${argv}\` to use the local version directly.
|
|
103
|
+
`
|
|
104
|
+
);
|
|
91
105
|
|
|
92
106
|
// this call to `spawn` is simpler because the delegated version will do all
|
|
93
107
|
// of the other work.
|
|
@@ -95,11 +109,17 @@ function runDelegatedWrangler() {
|
|
|
95
109
|
process.execPath,
|
|
96
110
|
[resolvedBinaryPath, ...process.argv.slice(2)],
|
|
97
111
|
{
|
|
98
|
-
stdio: "inherit",
|
|
112
|
+
stdio: ["inherit", "inherit", "inherit", "ipc"],
|
|
99
113
|
}
|
|
100
|
-
)
|
|
101
|
-
|
|
102
|
-
|
|
114
|
+
)
|
|
115
|
+
.on("exit", (code) =>
|
|
116
|
+
process.exit(code === undefined || code === null ? 0 : code)
|
|
117
|
+
)
|
|
118
|
+
.on("message", (message) => {
|
|
119
|
+
if (process.send) {
|
|
120
|
+
process.send(message);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
103
123
|
}
|
|
104
124
|
|
|
105
125
|
/**
|
package/miniflare-dist/index.mjs
CHANGED
|
@@ -111,10 +111,10 @@ var require_mime = __commonJS({
|
|
|
111
111
|
}
|
|
112
112
|
});
|
|
113
113
|
|
|
114
|
-
// ../pages-shared/
|
|
114
|
+
// ../pages-shared/environment-polyfills/index.ts
|
|
115
115
|
var polyfill;
|
|
116
116
|
var init_environment_polyfills = __esm({
|
|
117
|
-
"../pages-shared/
|
|
117
|
+
"../pages-shared/environment-polyfills/index.ts"() {
|
|
118
118
|
polyfill = (environment) => {
|
|
119
119
|
Object.entries(environment).map(([name, value]) => {
|
|
120
120
|
Object.defineProperty(globalThis, name, {
|
|
@@ -128,27 +128,49 @@ var init_environment_polyfills = __esm({
|
|
|
128
128
|
}
|
|
129
129
|
});
|
|
130
130
|
|
|
131
|
-
// ../pages-shared/
|
|
131
|
+
// ../pages-shared/environment-polyfills/miniflare-tre.ts
|
|
132
|
+
var miniflare_tre_exports = {};
|
|
133
|
+
__export(miniflare_tre_exports, {
|
|
134
|
+
default: () => miniflare_tre_default
|
|
135
|
+
});
|
|
136
|
+
var miniflare_tre_default;
|
|
137
|
+
var init_miniflare_tre = __esm({
|
|
138
|
+
"../pages-shared/environment-polyfills/miniflare-tre.ts"() {
|
|
139
|
+
init_environment_polyfills();
|
|
140
|
+
miniflare_tre_default = async () => {
|
|
141
|
+
const mf = await import("@miniflare/tre");
|
|
142
|
+
polyfill({
|
|
143
|
+
fetch: mf.fetch,
|
|
144
|
+
Headers: mf.Headers,
|
|
145
|
+
Request: mf.Request,
|
|
146
|
+
Response: mf.Response
|
|
147
|
+
});
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
// ../pages-shared/environment-polyfills/miniflare.ts
|
|
132
153
|
var miniflare_exports = {};
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
Response as MiniflareResponse
|
|
138
|
-
} from "@miniflare/core";
|
|
154
|
+
__export(miniflare_exports, {
|
|
155
|
+
default: () => miniflare_default
|
|
156
|
+
});
|
|
157
|
+
var miniflare_default;
|
|
139
158
|
var init_miniflare = __esm({
|
|
140
|
-
"../pages-shared/
|
|
159
|
+
"../pages-shared/environment-polyfills/miniflare.ts"() {
|
|
141
160
|
init_environment_polyfills();
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
161
|
+
miniflare_default = async () => {
|
|
162
|
+
const mf = await import("@miniflare/core");
|
|
163
|
+
polyfill({
|
|
164
|
+
fetch: mf.fetch,
|
|
165
|
+
Headers: mf.Headers,
|
|
166
|
+
Request: mf.Request,
|
|
167
|
+
Response: mf.Response
|
|
168
|
+
});
|
|
169
|
+
};
|
|
148
170
|
}
|
|
149
171
|
});
|
|
150
172
|
|
|
151
|
-
// ../pages-shared/
|
|
173
|
+
// ../pages-shared/asset-server/responses.ts
|
|
152
174
|
function mergeHeaders(base, extra) {
|
|
153
175
|
base = new Headers(base ?? {});
|
|
154
176
|
extra = new Headers(extra ?? {});
|
|
@@ -159,7 +181,7 @@ function mergeHeaders(base, extra) {
|
|
|
159
181
|
}
|
|
160
182
|
var OkResponse, MovedPermanentlyResponse, FoundResponse, NotModifiedResponse, PermanentRedirectResponse, NotFoundResponse, MethodNotAllowedResponse, NotAcceptableResponse, InternalServerErrorResponse, SeeOtherResponse, TemporaryRedirectResponse;
|
|
161
183
|
var init_responses = __esm({
|
|
162
|
-
"../pages-shared/
|
|
184
|
+
"../pages-shared/asset-server/responses.ts"() {
|
|
163
185
|
OkResponse = class extends Response {
|
|
164
186
|
constructor(...[body, init]) {
|
|
165
187
|
super(body, {
|
|
@@ -278,10 +300,10 @@ ${err.stack}`;
|
|
|
278
300
|
}
|
|
279
301
|
});
|
|
280
302
|
|
|
281
|
-
// ../pages-shared/
|
|
303
|
+
// ../pages-shared/asset-server/rulesEngine.ts
|
|
282
304
|
var ESCAPE_REGEX_CHARACTERS, escapeRegex, HOST_PLACEHOLDER_REGEX, PLACEHOLDER_REGEX2, replacer, generateRulesMatcher;
|
|
283
305
|
var init_rulesEngine = __esm({
|
|
284
|
-
"../pages-shared/
|
|
306
|
+
"../pages-shared/asset-server/rulesEngine.ts"() {
|
|
285
307
|
ESCAPE_REGEX_CHARACTERS = /[-/\\^$*+?.()|[\]{}]/g;
|
|
286
308
|
escapeRegex = (str) => {
|
|
287
309
|
return str.replace(ESCAPE_REGEX_CHARACTERS, "\\$&");
|
|
@@ -329,7 +351,16 @@ var init_rulesEngine = __esm({
|
|
|
329
351
|
}
|
|
330
352
|
});
|
|
331
353
|
|
|
332
|
-
// ../pages-shared/
|
|
354
|
+
// ../pages-shared/asset-server/url.ts
|
|
355
|
+
function stringifyURLToRootRelativePathname(url) {
|
|
356
|
+
return `${url.pathname}${url.search}${url.hash}`;
|
|
357
|
+
}
|
|
358
|
+
var init_url = __esm({
|
|
359
|
+
"../pages-shared/asset-server/url.ts"() {
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
|
|
363
|
+
// ../pages-shared/asset-server/handler.ts
|
|
333
364
|
var handler_exports = {};
|
|
334
365
|
__export(handler_exports, {
|
|
335
366
|
ANALYTICS_VERSION: () => ANALYTICS_VERSION2,
|
|
@@ -339,6 +370,7 @@ __export(handler_exports, {
|
|
|
339
370
|
HEADERS_VERSION_V1: () => HEADERS_VERSION_V1,
|
|
340
371
|
REDIRECTS_VERSION: () => REDIRECTS_VERSION2,
|
|
341
372
|
generateHandler: () => generateHandler,
|
|
373
|
+
getResponseFromMatch: () => getResponseFromMatch,
|
|
342
374
|
normaliseHeaders: () => normaliseHeaders,
|
|
343
375
|
parseQualityWeightedList: () => parseQualityWeightedList
|
|
344
376
|
});
|
|
@@ -409,22 +441,7 @@ async function generateHandler({
|
|
|
409
441
|
async function generateResponse() {
|
|
410
442
|
const match = staticRedirectsMatcher() || generateRedirectsMatcher()({ request })[0];
|
|
411
443
|
if (match) {
|
|
412
|
-
|
|
413
|
-
const destination = new URL(to, request.url);
|
|
414
|
-
const location = destination.origin === new URL(request.url).origin ? `${destination.pathname}${destination.search || search}${destination.hash}` : `${destination.href}${destination.search ? "" : search}${destination.hash}`;
|
|
415
|
-
switch (status) {
|
|
416
|
-
case 301:
|
|
417
|
-
return new MovedPermanentlyResponse(location);
|
|
418
|
-
case 303:
|
|
419
|
-
return new SeeOtherResponse(location);
|
|
420
|
-
case 307:
|
|
421
|
-
return new TemporaryRedirectResponse(location);
|
|
422
|
-
case 308:
|
|
423
|
-
return new PermanentRedirectResponse(location);
|
|
424
|
-
case 302:
|
|
425
|
-
default:
|
|
426
|
-
return new FoundResponse(location);
|
|
427
|
-
}
|
|
444
|
+
return getResponseFromMatch(match, url);
|
|
428
445
|
}
|
|
429
446
|
if (!request.method.match(/^(get|head)$/i)) {
|
|
430
447
|
return new MethodNotAllowedResponse();
|
|
@@ -491,34 +508,6 @@ async function generateHandler({
|
|
|
491
508
|
...Object.fromEntries(existingHeaders.entries()),
|
|
492
509
|
...Object.fromEntries(extraHeaders.entries())
|
|
493
510
|
});
|
|
494
|
-
const headersMatcher = generateRulesMatcher(
|
|
495
|
-
headerRules,
|
|
496
|
-
({ set = {}, unset = [] }, replacements) => {
|
|
497
|
-
const replacedSet = {};
|
|
498
|
-
Object.keys(set).forEach((key) => {
|
|
499
|
-
replacedSet[key] = replacer(set[key], replacements);
|
|
500
|
-
});
|
|
501
|
-
return {
|
|
502
|
-
set: replacedSet,
|
|
503
|
-
unset
|
|
504
|
-
};
|
|
505
|
-
}
|
|
506
|
-
);
|
|
507
|
-
const matches = headersMatcher({ request });
|
|
508
|
-
const setMap = /* @__PURE__ */ new Set();
|
|
509
|
-
matches.forEach(({ set = {}, unset = [] }) => {
|
|
510
|
-
Object.keys(set).forEach((key) => {
|
|
511
|
-
if (setMap.has(key.toLowerCase())) {
|
|
512
|
-
headers.append(key, set[key]);
|
|
513
|
-
} else {
|
|
514
|
-
headers.set(key, set[key]);
|
|
515
|
-
setMap.add(key.toLowerCase());
|
|
516
|
-
}
|
|
517
|
-
});
|
|
518
|
-
unset.forEach((key) => {
|
|
519
|
-
headers.delete(key);
|
|
520
|
-
});
|
|
521
|
-
});
|
|
522
511
|
if (earlyHintsCache) {
|
|
523
512
|
const preEarlyHintsHeaders = new Headers(headers);
|
|
524
513
|
const earlyHintsCacheKey = `${protocol}//${host}${pathname}`;
|
|
@@ -537,8 +526,15 @@ async function generateHandler({
|
|
|
537
526
|
(async () => {
|
|
538
527
|
try {
|
|
539
528
|
const links = [];
|
|
540
|
-
const transformedResponse = new HTMLRewriter().on("link[rel
|
|
529
|
+
const transformedResponse = new HTMLRewriter().on("link[rel~=preconnect],link[rel~=preload]", {
|
|
541
530
|
element(element) {
|
|
531
|
+
for (const [attributeName] of element.attributes) {
|
|
532
|
+
if (!ALLOWED_EARLY_HINT_LINK_ATTRIBUTES.includes(
|
|
533
|
+
attributeName.toLowerCase()
|
|
534
|
+
)) {
|
|
535
|
+
return;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
542
538
|
const href = element.getAttribute("href") || void 0;
|
|
543
539
|
const rel = element.getAttribute("rel") || void 0;
|
|
544
540
|
const as = element.getAttribute("as") || void 0;
|
|
@@ -568,6 +564,34 @@ async function generateHandler({
|
|
|
568
564
|
);
|
|
569
565
|
}
|
|
570
566
|
}
|
|
567
|
+
const headersMatcher = generateRulesMatcher(
|
|
568
|
+
headerRules,
|
|
569
|
+
({ set = {}, unset = [] }, replacements) => {
|
|
570
|
+
const replacedSet = {};
|
|
571
|
+
Object.keys(set).forEach((key) => {
|
|
572
|
+
replacedSet[key] = replacer(set[key], replacements);
|
|
573
|
+
});
|
|
574
|
+
return {
|
|
575
|
+
set: replacedSet,
|
|
576
|
+
unset
|
|
577
|
+
};
|
|
578
|
+
}
|
|
579
|
+
);
|
|
580
|
+
const matches = headersMatcher({ request });
|
|
581
|
+
const setMap = /* @__PURE__ */ new Set();
|
|
582
|
+
matches.forEach(({ set = {}, unset = [] }) => {
|
|
583
|
+
unset.forEach((key) => {
|
|
584
|
+
headers.delete(key);
|
|
585
|
+
});
|
|
586
|
+
Object.keys(set).forEach((key) => {
|
|
587
|
+
if (setMap.has(key.toLowerCase())) {
|
|
588
|
+
headers.append(key, set[key]);
|
|
589
|
+
} else {
|
|
590
|
+
headers.set(key, set[key]);
|
|
591
|
+
setMap.add(key.toLowerCase());
|
|
592
|
+
}
|
|
593
|
+
});
|
|
594
|
+
});
|
|
571
595
|
return new Response(
|
|
572
596
|
[101, 204, 205, 304].includes(response.status) ? null : response.body,
|
|
573
597
|
{
|
|
@@ -696,6 +720,27 @@ async function generateHandler({
|
|
|
696
720
|
);
|
|
697
721
|
}
|
|
698
722
|
}
|
|
723
|
+
function getResponseFromMatch({
|
|
724
|
+
status,
|
|
725
|
+
to
|
|
726
|
+
}, requestUrl) {
|
|
727
|
+
const destination = new URL(to, requestUrl);
|
|
728
|
+
destination.search = destination.search || requestUrl.search;
|
|
729
|
+
const location = destination.origin === requestUrl.origin ? stringifyURLToRootRelativePathname(destination) : destination.toString();
|
|
730
|
+
switch (status) {
|
|
731
|
+
case 301:
|
|
732
|
+
return new MovedPermanentlyResponse(location);
|
|
733
|
+
case 303:
|
|
734
|
+
return new SeeOtherResponse(location);
|
|
735
|
+
case 307:
|
|
736
|
+
return new TemporaryRedirectResponse(location);
|
|
737
|
+
case 308:
|
|
738
|
+
return new PermanentRedirectResponse(location);
|
|
739
|
+
case 302:
|
|
740
|
+
default:
|
|
741
|
+
return new FoundResponse(location);
|
|
742
|
+
}
|
|
743
|
+
}
|
|
699
744
|
function parseQualityWeightedList(list = "") {
|
|
700
745
|
const items = {};
|
|
701
746
|
list.replace(/\s/g, "").split(",").forEach((el) => {
|
|
@@ -716,11 +761,12 @@ function isPreview(url) {
|
|
|
716
761
|
}
|
|
717
762
|
return false;
|
|
718
763
|
}
|
|
719
|
-
var ASSET_PRESERVATION_CACHE, CACHE_CONTROL_PRESERVATION, CACHE_CONTROL_BROWSER, REDIRECTS_VERSION2, HEADERS_VERSION2, HEADERS_VERSION_V1, ANALYTICS_VERSION2;
|
|
764
|
+
var ASSET_PRESERVATION_CACHE, CACHE_CONTROL_PRESERVATION, CACHE_CONTROL_BROWSER, REDIRECTS_VERSION2, HEADERS_VERSION2, HEADERS_VERSION_V1, ANALYTICS_VERSION2, ALLOWED_EARLY_HINT_LINK_ATTRIBUTES;
|
|
720
765
|
var init_handler = __esm({
|
|
721
|
-
"../pages-shared/
|
|
766
|
+
"../pages-shared/asset-server/handler.ts"() {
|
|
722
767
|
init_responses();
|
|
723
768
|
init_rulesEngine();
|
|
769
|
+
init_url();
|
|
724
770
|
ASSET_PRESERVATION_CACHE = "assetPreservationCache";
|
|
725
771
|
CACHE_CONTROL_PRESERVATION = "public, s-maxage=604800";
|
|
726
772
|
CACHE_CONTROL_BROWSER = "public, max-age=0, must-revalidate";
|
|
@@ -728,6 +774,7 @@ var init_handler = __esm({
|
|
|
728
774
|
HEADERS_VERSION2 = 2;
|
|
729
775
|
HEADERS_VERSION_V1 = 1;
|
|
730
776
|
ANALYTICS_VERSION2 = 1;
|
|
777
|
+
ALLOWED_EARLY_HINT_LINK_ATTRIBUTES = ["rel", "as", "href"];
|
|
731
778
|
}
|
|
732
779
|
});
|
|
733
780
|
|
|
@@ -738,11 +785,11 @@ import {
|
|
|
738
785
|
DurableObjectStub
|
|
739
786
|
} from "@miniflare/durable-objects";
|
|
740
787
|
import {
|
|
741
|
-
Log,
|
|
742
|
-
LogLevel,
|
|
788
|
+
Log as MiniflareLog,
|
|
789
|
+
LogLevel as MiniflareLogLevel,
|
|
743
790
|
Miniflare,
|
|
744
|
-
|
|
745
|
-
|
|
791
|
+
Request as MiniflareRequest,
|
|
792
|
+
Response as MiniflareResponse
|
|
746
793
|
} from "miniflare";
|
|
747
794
|
|
|
748
795
|
// ../../node_modules/yargs/lib/platform-shims/esm.mjs
|
|
@@ -5564,7 +5611,7 @@ var FatalError = class extends Error {
|
|
|
5564
5611
|
import { existsSync, lstatSync, readFileSync as readFileSync5 } from "node:fs";
|
|
5565
5612
|
import { join } from "node:path";
|
|
5566
5613
|
|
|
5567
|
-
// ../pages-shared/
|
|
5614
|
+
// ../pages-shared/metadata-generator/constants.ts
|
|
5568
5615
|
var REDIRECTS_VERSION = 1;
|
|
5569
5616
|
var HEADERS_VERSION = 2;
|
|
5570
5617
|
var ANALYTICS_VERSION = 1;
|
|
@@ -5578,12 +5625,13 @@ var UNSET_OPERATOR = "! ";
|
|
|
5578
5625
|
var SPLAT_REGEX = /\*/g;
|
|
5579
5626
|
var PLACEHOLDER_REGEX = /:\w+/g;
|
|
5580
5627
|
|
|
5581
|
-
// ../pages-shared/
|
|
5628
|
+
// ../pages-shared/metadata-generator/createMetadataObject.ts
|
|
5582
5629
|
function createMetadataObject({
|
|
5583
5630
|
redirects,
|
|
5584
5631
|
headers,
|
|
5585
5632
|
webAnalyticsToken,
|
|
5586
5633
|
deploymentId,
|
|
5634
|
+
failOpen,
|
|
5587
5635
|
logger = (_message) => {
|
|
5588
5636
|
}
|
|
5589
5637
|
}) {
|
|
@@ -5591,7 +5639,8 @@ function createMetadataObject({
|
|
|
5591
5639
|
...constructRedirects({ redirects, logger }),
|
|
5592
5640
|
...constructHeaders({ headers, logger }),
|
|
5593
5641
|
...constructWebAnalytics({ webAnalyticsToken, logger }),
|
|
5594
|
-
deploymentId
|
|
5642
|
+
deploymentId,
|
|
5643
|
+
failOpen
|
|
5595
5644
|
};
|
|
5596
5645
|
}
|
|
5597
5646
|
function constructRedirects({
|
|
@@ -5622,7 +5671,11 @@ function constructRedirects({
|
|
|
5622
5671
|
for (const rule of redirects.rules) {
|
|
5623
5672
|
if (!rule.from.match(SPLAT_REGEX) && !rule.from.match(PLACEHOLDER_REGEX)) {
|
|
5624
5673
|
if (canCreateStaticRule) {
|
|
5625
|
-
staticRedirects[rule.from] = {
|
|
5674
|
+
staticRedirects[rule.from] = {
|
|
5675
|
+
status: rule.status,
|
|
5676
|
+
to: rule.to,
|
|
5677
|
+
lineNumber: rule.lineNumber
|
|
5678
|
+
};
|
|
5626
5679
|
continue;
|
|
5627
5680
|
} else {
|
|
5628
5681
|
logger(
|
|
@@ -5691,7 +5744,7 @@ function constructWebAnalytics({
|
|
|
5691
5744
|
};
|
|
5692
5745
|
}
|
|
5693
5746
|
|
|
5694
|
-
// ../pages-shared/
|
|
5747
|
+
// ../pages-shared/metadata-generator/validateURL.ts
|
|
5695
5748
|
var extractPathname = (path = "/", includeSearch, includeHash) => {
|
|
5696
5749
|
if (!path.startsWith("/"))
|
|
5697
5750
|
path = `/${path}`;
|
|
@@ -5734,7 +5787,7 @@ var validateUrl = (token, onlyRelative = false, includeSearch = false, includeHa
|
|
|
5734
5787
|
];
|
|
5735
5788
|
};
|
|
5736
5789
|
|
|
5737
|
-
// ../pages-shared/
|
|
5790
|
+
// ../pages-shared/metadata-generator/parseHeaders.ts
|
|
5738
5791
|
var LINE_IS_PROBABLY_A_PATH = new RegExp(/^([^\s]+:\/\/|^\/)/);
|
|
5739
5792
|
function parseHeaders(input) {
|
|
5740
5793
|
const lines = input.split("\n");
|
|
@@ -5869,7 +5922,7 @@ function isValidRule(rule) {
|
|
|
5869
5922
|
return Object.keys(rule.headers).length > 0 || rule.unsetHeaders.length > 0;
|
|
5870
5923
|
}
|
|
5871
5924
|
|
|
5872
|
-
// ../pages-shared/
|
|
5925
|
+
// ../pages-shared/metadata-generator/parseRedirects.ts
|
|
5873
5926
|
function parseRedirects(input) {
|
|
5874
5927
|
const lines = input.split("\n");
|
|
5875
5928
|
const rules = [];
|
|
@@ -5964,11 +6017,6 @@ function parseRedirects(input) {
|
|
|
5964
6017
|
|
|
5965
6018
|
// src/miniflare-cli/assets.ts
|
|
5966
6019
|
var import_mime = __toESM(require_mime());
|
|
5967
|
-
import { fetch as miniflareFetch2 } from "@miniflare/core";
|
|
5968
|
-
import {
|
|
5969
|
-
Response as MiniflareResponse2,
|
|
5970
|
-
Request as MiniflareRequest2
|
|
5971
|
-
} from "@miniflare/core";
|
|
5972
6020
|
import { watch } from "chokidar";
|
|
5973
6021
|
|
|
5974
6022
|
// src/pages/hash.tsx
|
|
@@ -5984,28 +6032,34 @@ var hashFile = (filepath) => {
|
|
|
5984
6032
|
|
|
5985
6033
|
// src/miniflare-cli/assets.ts
|
|
5986
6034
|
async function generateASSETSBinding(options) {
|
|
5987
|
-
const assetsFetch = options.directory !== void 0 ? await generateAssetsFetch(options.directory, options.log) : invalidAssetsFetch;
|
|
6035
|
+
const assetsFetch = options.directory !== void 0 ? await generateAssetsFetch(options.directory, options.log, options.tre) : invalidAssetsFetch;
|
|
6036
|
+
const miniflare = options.tre ? await import("@miniflare/tre") : await import("@miniflare/core");
|
|
6037
|
+
const Request = miniflare.Request;
|
|
6038
|
+
const Response2 = miniflare.Response;
|
|
6039
|
+
const fetch2 = options.tre ? miniflare.fetch : (await import("@miniflare/web-sockets")).upgradingFetch;
|
|
5988
6040
|
return async function(miniflareRequest) {
|
|
5989
6041
|
if (options.proxyPort) {
|
|
5990
6042
|
try {
|
|
5991
6043
|
const url = new URL(miniflareRequest.url);
|
|
5992
6044
|
url.host = `localhost:${options.proxyPort}`;
|
|
5993
|
-
|
|
6045
|
+
const proxyRequest = new Request(url, miniflareRequest);
|
|
6046
|
+
if (proxyRequest.headers.get("Upgrade") === "websocket") {
|
|
6047
|
+
proxyRequest.headers.delete("Sec-WebSocket-Accept");
|
|
6048
|
+
proxyRequest.headers.delete("Sec-WebSocket-Key");
|
|
6049
|
+
}
|
|
6050
|
+
return await fetch2(proxyRequest);
|
|
5994
6051
|
} catch (thrown) {
|
|
5995
6052
|
options.log.error(new Error(`Could not proxy request: ${thrown}`));
|
|
5996
|
-
return new
|
|
5997
|
-
|
|
5998
|
-
|
|
5999
|
-
status: 502
|
|
6000
|
-
}
|
|
6001
|
-
);
|
|
6053
|
+
return new Response2(`[wrangler] Could not proxy request: ${thrown}`, {
|
|
6054
|
+
status: 502
|
|
6055
|
+
});
|
|
6002
6056
|
}
|
|
6003
6057
|
} else {
|
|
6004
6058
|
try {
|
|
6005
6059
|
return await assetsFetch(miniflareRequest);
|
|
6006
6060
|
} catch (thrown) {
|
|
6007
6061
|
options.log.error(new Error(`Could not serve static asset: ${thrown}`));
|
|
6008
|
-
return new
|
|
6062
|
+
return new Response2(
|
|
6009
6063
|
`[wrangler] Could not serve static asset: ${thrown}`,
|
|
6010
6064
|
{ status: 502 }
|
|
6011
6065
|
);
|
|
@@ -6013,8 +6067,11 @@ async function generateASSETSBinding(options) {
|
|
|
6013
6067
|
}
|
|
6014
6068
|
};
|
|
6015
6069
|
}
|
|
6016
|
-
async function generateAssetsFetch(directory, log) {
|
|
6017
|
-
await Promise.resolve().then(() => (init_miniflare(), miniflare_exports));
|
|
6070
|
+
async function generateAssetsFetch(directory, log, tre) {
|
|
6071
|
+
const polyfill2 = tre ? (await Promise.resolve().then(() => (init_miniflare_tre(), miniflare_tre_exports))).default : (await Promise.resolve().then(() => (init_miniflare(), miniflare_exports))).default;
|
|
6072
|
+
await polyfill2();
|
|
6073
|
+
const miniflare = tre ? await import("@miniflare/tre") : await import("@miniflare/core");
|
|
6074
|
+
const Request = miniflare.Request;
|
|
6018
6075
|
const { generateHandler: generateHandler2, parseQualityWeightedList: parseQualityWeightedList2 } = await Promise.resolve().then(() => (init_handler(), handler_exports));
|
|
6019
6076
|
const headersFile = join(directory, "_headers");
|
|
6020
6077
|
const redirectsFile = join(directory, "_redirects");
|
|
@@ -6099,13 +6156,16 @@ async function generateAssetsFetch(directory, log) {
|
|
|
6099
6156
|
);
|
|
6100
6157
|
}
|
|
6101
6158
|
const body = readFileSync5(filepath);
|
|
6102
|
-
|
|
6159
|
+
let contentType = (0, import_mime.getType)(filepath) || "application/octet-stream";
|
|
6160
|
+
if (contentType.startsWith("text/") && !contentType.includes("charset")) {
|
|
6161
|
+
contentType = `${contentType}; charset=utf-8`;
|
|
6162
|
+
}
|
|
6103
6163
|
return { body, contentType };
|
|
6104
6164
|
}
|
|
6105
6165
|
});
|
|
6106
6166
|
};
|
|
6107
6167
|
return async (input, init) => {
|
|
6108
|
-
const request = new
|
|
6168
|
+
const request = new Request(input, init);
|
|
6109
6169
|
return await generateResponse(request);
|
|
6110
6170
|
};
|
|
6111
6171
|
}
|
|
@@ -6115,18 +6175,6 @@ var invalidAssetsFetch = () => {
|
|
|
6115
6175
|
);
|
|
6116
6176
|
};
|
|
6117
6177
|
|
|
6118
|
-
// src/miniflare-cli/enum-keys.ts
|
|
6119
|
-
var enumObject = (e) => {
|
|
6120
|
-
const copy = { ...e };
|
|
6121
|
-
Object.values(e).forEach(
|
|
6122
|
-
(value) => typeof value === "number" && delete copy[value]
|
|
6123
|
-
);
|
|
6124
|
-
return copy;
|
|
6125
|
-
};
|
|
6126
|
-
var enumKeys = (e) => {
|
|
6127
|
-
return Object.keys(enumObject(e));
|
|
6128
|
-
};
|
|
6129
|
-
|
|
6130
6178
|
// src/miniflare-cli/request-context.ts
|
|
6131
6179
|
var getRequestContextCheckOptions = async () => {
|
|
6132
6180
|
let hasAsyncLocalStorage = true;
|
|
@@ -6147,7 +6195,7 @@ var getRequestContextCheckOptions = async () => {
|
|
|
6147
6195
|
};
|
|
6148
6196
|
|
|
6149
6197
|
// src/miniflare-cli/index.ts
|
|
6150
|
-
var
|
|
6198
|
+
var MiniflareNoOpLog = class extends MiniflareLog {
|
|
6151
6199
|
log() {
|
|
6152
6200
|
}
|
|
6153
6201
|
error(message) {
|
|
@@ -6155,18 +6203,19 @@ var NoOpLog = class extends Log {
|
|
|
6155
6203
|
}
|
|
6156
6204
|
};
|
|
6157
6205
|
async function main() {
|
|
6158
|
-
const args = await yargs_default(hideBin(process.argv)).help(false).version(false).
|
|
6159
|
-
choices: enumKeys(LogLevel)
|
|
6160
|
-
}).argv;
|
|
6161
|
-
const logLevel = LogLevel[args.log ?? "INFO"];
|
|
6206
|
+
const args = await yargs_default(hideBin(process.argv)).help(false).version(false).argv;
|
|
6162
6207
|
const requestContextCheckOptions = await getRequestContextCheckOptions();
|
|
6163
6208
|
const config = {
|
|
6164
6209
|
...JSON.parse(args._[0] ?? "{}"),
|
|
6165
6210
|
...requestContextCheckOptions
|
|
6166
6211
|
};
|
|
6167
|
-
|
|
6168
|
-
if (
|
|
6169
|
-
|
|
6212
|
+
let logLevelString = config.logLevel.toUpperCase();
|
|
6213
|
+
if (logLevelString === "LOG")
|
|
6214
|
+
logLevelString = "INFO";
|
|
6215
|
+
const logLevel = MiniflareLogLevel[logLevelString];
|
|
6216
|
+
config.log = logLevel === MiniflareLogLevel.NONE ? new MiniflareNoOpLog() : new MiniflareLog(logLevel, config.logOptions);
|
|
6217
|
+
if (logLevel === MiniflareLogLevel.DEBUG) {
|
|
6218
|
+
console.log("MINIFLARE OPTIONS:\n", JSON.stringify(config, null, 2));
|
|
6170
6219
|
}
|
|
6171
6220
|
config.bindings = {
|
|
6172
6221
|
...config.bindings,
|
|
@@ -6184,12 +6233,12 @@ async function main() {
|
|
|
6184
6233
|
namespace.get = (id) => {
|
|
6185
6234
|
const stub = new DurableObjectStub(factory, id);
|
|
6186
6235
|
stub.fetch = (...reqArgs) => {
|
|
6187
|
-
const requestFromArgs = new
|
|
6236
|
+
const requestFromArgs = new MiniflareRequest(...reqArgs);
|
|
6188
6237
|
const url = new URL(requestFromArgs.url);
|
|
6189
6238
|
url.host = host;
|
|
6190
6239
|
if (port !== void 0)
|
|
6191
6240
|
url.port = port.toString();
|
|
6192
|
-
const request = new
|
|
6241
|
+
const request = new MiniflareRequest(
|
|
6193
6242
|
url.toString(),
|
|
6194
6243
|
requestFromArgs
|
|
6195
6244
|
);
|
|
@@ -6222,7 +6271,8 @@ async function main() {
|
|
|
6222
6271
|
const options = {
|
|
6223
6272
|
log: config.log,
|
|
6224
6273
|
proxyPort: opts.proxyPort,
|
|
6225
|
-
directory: opts.directory
|
|
6274
|
+
directory: opts.directory,
|
|
6275
|
+
tre: false
|
|
6226
6276
|
};
|
|
6227
6277
|
config.serviceBindings = {
|
|
6228
6278
|
...config.serviceBindings,
|
|
@@ -6248,7 +6298,7 @@ async function main() {
|
|
|
6248
6298
|
}`,
|
|
6249
6299
|
serviceBindings: {
|
|
6250
6300
|
DO: async (request) => {
|
|
6251
|
-
request = new
|
|
6301
|
+
request = new MiniflareRequest(request);
|
|
6252
6302
|
const name = request.headers.get("x-miniflare-durable-object-name");
|
|
6253
6303
|
const idString = request.headers.get(
|
|
6254
6304
|
"x-miniflare-durable-object-id"
|
|
@@ -6256,7 +6306,7 @@ async function main() {
|
|
|
6256
6306
|
request.headers.delete("x-miniflare-durable-object-name");
|
|
6257
6307
|
request.headers.delete("x-miniflare-durable-object-id");
|
|
6258
6308
|
if (!name || !idString) {
|
|
6259
|
-
return new
|
|
6309
|
+
return new MiniflareResponse(
|
|
6260
6310
|
"[durable-object-proxy-err] Missing `x-miniflare-durable-object-name` or `x-miniflare-durable-object-id` headers.",
|
|
6261
6311
|
{ status: 400 }
|
|
6262
6312
|
);
|
|
@@ -6264,14 +6314,14 @@ async function main() {
|
|
|
6264
6314
|
const namespace = await mf?.getDurableObjectNamespace(name);
|
|
6265
6315
|
const id = namespace?.idFromString(idString);
|
|
6266
6316
|
if (!id) {
|
|
6267
|
-
return new
|
|
6317
|
+
return new MiniflareResponse(
|
|
6268
6318
|
"[durable-object-proxy-err] Could not generate an ID. Possibly due to a mismatched DO name and ID?",
|
|
6269
6319
|
{ status: 500 }
|
|
6270
6320
|
);
|
|
6271
6321
|
}
|
|
6272
6322
|
const stub = namespace?.get(id);
|
|
6273
6323
|
if (!stub) {
|
|
6274
|
-
return new
|
|
6324
|
+
return new MiniflareResponse(
|
|
6275
6325
|
"[durable-object-proxy-err] Could not generate a stub. Possibly due to a mismatched DO name and ID?",
|
|
6276
6326
|
{ status: 500 }
|
|
6277
6327
|
);
|
|
@@ -6286,7 +6336,7 @@ async function main() {
|
|
|
6286
6336
|
}
|
|
6287
6337
|
process.send && process.send(
|
|
6288
6338
|
JSON.stringify({
|
|
6289
|
-
mfPort,
|
|
6339
|
+
port: mfPort,
|
|
6290
6340
|
ready: true,
|
|
6291
6341
|
durableObjectsPort: durableObjectsMfPort
|
|
6292
6342
|
})
|