wrangler 0.0.0-e928f94 → 0.0.0-e93063e9
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/Cloudflare_CA.pem +18 -0
- package/README.md +47 -14
- package/bin/wrangler.js +180 -28
- package/kv-asset-handler.js +1 -0
- package/miniflare-dist/index.mjs +6364 -0
- package/package.json +194 -113
- package/src/__tests__/access.test.ts +25 -0
- package/src/__tests__/api-dev.test.ts +238 -0
- package/src/__tests__/api-devregistry.test.js +64 -0
- package/src/__tests__/api.test.ts +80 -0
- package/src/__tests__/config-cache-without-cache-dir.test.ts +38 -0
- package/src/__tests__/config-cache.test.ts +42 -0
- package/src/__tests__/configuration.test.ts +4163 -0
- package/src/__tests__/d1/d1.test.ts +123 -0
- package/src/__tests__/d1/splitter.test.ts +255 -0
- package/src/__tests__/delete.test.ts +266 -0
- package/src/__tests__/deployments.test.ts +105 -0
- package/src/__tests__/dev.test.tsx +1586 -0
- package/src/__tests__/generate.test.ts +238 -0
- package/src/__tests__/get-host-from-url.test.ts +16 -0
- package/src/__tests__/guess-worker-format.test.ts +85 -0
- package/src/__tests__/{clipboardy-mock.js → helpers/clipboardy-mock.js} +0 -0
- package/src/__tests__/helpers/cmd-shim.d.ts +11 -0
- package/src/__tests__/helpers/mock-account-id.ts +48 -0
- package/src/__tests__/helpers/mock-auth-domain.ts +20 -0
- package/src/__tests__/helpers/mock-bin.ts +36 -0
- package/src/__tests__/helpers/mock-cfetch.ts +278 -0
- package/src/__tests__/helpers/mock-console.ts +106 -0
- package/src/__tests__/helpers/mock-dialogs.ts +137 -0
- package/src/__tests__/helpers/mock-get-zone-from-host.ts +8 -0
- package/src/__tests__/helpers/mock-http-server.ts +46 -0
- package/src/__tests__/helpers/mock-istty.ts +74 -0
- package/src/__tests__/helpers/mock-known-routes.ts +7 -0
- package/src/__tests__/helpers/mock-kv.ts +33 -0
- package/src/__tests__/helpers/mock-oauth-flow.ts +271 -0
- package/src/__tests__/helpers/mock-process.ts +34 -0
- package/src/__tests__/helpers/mock-stdin.ts +108 -0
- package/src/__tests__/helpers/mock-web-socket.ts +29 -0
- 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 +104 -0
- package/src/__tests__/helpers/msw/handlers/oauth.ts +31 -0
- package/src/__tests__/helpers/msw/handlers/r2.ts +80 -0
- package/src/__tests__/helpers/msw/handlers/script.ts +75 -0
- package/src/__tests__/helpers/msw/handlers/user.ts +63 -0
- package/src/__tests__/helpers/msw/handlers/zones.ts +22 -0
- package/src/__tests__/helpers/msw/index.ts +21 -0
- package/src/__tests__/helpers/msw/read-file-sync.js +61 -0
- package/src/__tests__/helpers/run-in-tmp.ts +38 -0
- package/src/__tests__/helpers/run-wrangler.ts +16 -0
- package/src/__tests__/helpers/worker-scripts/child-wrangler.toml +1 -0
- package/src/__tests__/helpers/worker-scripts/hello-world-worker.js +5 -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__/helpers/write-worker-source.ts +31 -0
- package/src/__tests__/helpers/write-wrangler-toml.ts +17 -0
- package/src/__tests__/https-options.test.ts +163 -0
- package/src/__tests__/index.test.ts +264 -149
- package/src/__tests__/init.test.ts +3147 -0
- package/src/__tests__/jest.setup.ts +198 -0
- package/src/__tests__/kv.test.ts +1788 -0
- package/src/__tests__/logger.test.ts +141 -0
- package/src/__tests__/logout.test.ts +47 -0
- package/src/__tests__/metrics.test.ts +493 -0
- package/src/__tests__/middleware.scheduled.test.ts +145 -0
- package/src/__tests__/middleware.test.ts +750 -0
- package/src/__tests__/package-manager.test.ts +353 -0
- package/src/__tests__/pages-deployment-tail.test.ts +884 -0
- package/src/__tests__/pages.test.ts +2899 -0
- package/src/__tests__/parse.test.ts +330 -0
- package/src/__tests__/paths.test.ts +39 -0
- package/src/__tests__/publish.test.ts +7769 -0
- package/src/__tests__/pubsub.test.ts +490 -0
- package/src/__tests__/queues.test.ts +522 -0
- package/src/__tests__/r2.test.ts +393 -0
- package/src/__tests__/route.test.ts +45 -0
- package/src/__tests__/secret.test.ts +701 -0
- package/src/__tests__/tail.test.ts +905 -0
- package/src/__tests__/test-old-node-version.js +31 -0
- 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 +129 -0
- package/src/__tests__/utils-collectKeyValues.test.ts +47 -0
- package/src/__tests__/validate-dev-props.test.ts +56 -0
- package/src/__tests__/version.test.ts +35 -0
- package/src/__tests__/whoami.test.tsx +183 -0
- package/src/__tests__/worker-namespace.test.ts +326 -0
- package/src/abort.d.ts +3 -0
- package/src/api/dev.ts +247 -0
- package/src/api/index.ts +2 -0
- package/src/bundle-reporter.ts +68 -0
- package/src/bundle.ts +823 -0
- package/src/cfetch/index.ts +158 -0
- package/src/cfetch/internal.ts +261 -0
- package/src/cli.ts +26 -8
- package/src/config/README.md +107 -0
- package/src/config/config.ts +275 -0
- package/src/config/diagnostics.ts +80 -0
- package/src/config/environment.ts +577 -0
- package/src/config/index.ts +358 -0
- package/src/config/validation-helpers.ts +597 -0
- package/src/config/validation.ts +2151 -0
- package/src/config-cache.ts +85 -0
- package/src/create-worker-preview.ts +282 -0
- package/src/create-worker-upload-form.ts +325 -0
- 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.ts +56 -0
- package/src/d1/execute.tsx +323 -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 +197 -0
- package/src/d1/migrations/create.tsx +77 -0
- package/src/d1/migrations/helpers.ts +147 -0
- package/src/d1/migrations/index.ts +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/splitter.ts +161 -0
- package/src/d1/types.ts +24 -0
- package/src/d1/utils.ts +48 -0
- package/src/delete.ts +103 -0
- package/src/deployments.ts +83 -0
- package/src/deprecated/index.ts +145 -0
- package/src/dev/dev-vars.ts +39 -0
- package/src/dev/dev.tsx +614 -0
- package/src/dev/get-local-persistence-path.ts +31 -0
- package/src/dev/local.tsx +932 -0
- package/src/dev/remote.tsx +630 -0
- package/src/dev/start-server.ts +543 -0
- package/src/dev/use-esbuild.ts +204 -0
- package/src/dev/validate-dev-props.ts +31 -0
- package/src/dev-registry.ts +201 -0
- package/src/dev.tsx +929 -704
- package/src/dialogs.ts +136 -0
- package/src/dispatch-namespace.ts +207 -0
- package/src/docs/index.ts +97 -0
- package/src/durable.ts +102 -0
- package/src/entry.ts +329 -0
- package/src/environment-variables/factory.ts +88 -0
- package/src/environment-variables/misc-variables.ts +30 -0
- package/src/errors.ts +11 -0
- package/src/generate/index.ts +300 -0
- package/src/git-client.ts +135 -0
- package/src/global-wrangler-config-path.ts +26 -0
- package/src/https-options.ts +127 -0
- package/src/index.ts +694 -0
- package/src/init.ts +1023 -0
- package/src/inspect.ts +767 -0
- package/src/intl-polyfill.d.ts +139 -0
- package/src/is-ci.ts +14 -0
- package/src/is-interactive.ts +16 -0
- package/src/jest.d.ts +4 -0
- package/src/kv/helpers.ts +430 -0
- package/src/kv/index.ts +596 -0
- package/src/logger.ts +104 -0
- package/src/metrics/index.ts +5 -0
- package/src/metrics/metrics-config.ts +239 -0
- package/src/metrics/metrics-dispatcher.ts +96 -0
- package/src/metrics/metrics-usage-headers.ts +24 -0
- package/src/metrics/send-event.ts +97 -0
- package/src/miniflare-cli/README.md +30 -0
- package/src/miniflare-cli/assets.ts +250 -0
- package/src/miniflare-cli/index.ts +210 -0
- package/src/miniflare-cli/request-context.ts +40 -0
- 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 +256 -53
- package/src/open-in-browser.ts +17 -0
- package/src/package-manager.ts +219 -0
- package/src/pages/build.ts +270 -0
- package/src/pages/constants.ts +18 -0
- package/src/pages/deployment-tails.ts +284 -0
- package/src/pages/deployments.tsx +84 -0
- package/src/pages/dev.ts +711 -0
- package/src/pages/errors.ts +66 -0
- package/src/pages/functions/buildPlugin.ts +107 -0
- package/src/pages/functions/buildWorker.ts +166 -0
- package/src/pages/functions/filepath-routing.test.ts +234 -0
- package/src/pages/functions/filepath-routing.ts +189 -0
- package/src/pages/functions/identifiers.ts +78 -0
- package/src/pages/functions/routes-consolidation.test.ts +250 -0
- package/src/pages/functions/routes-consolidation.ts +73 -0
- package/src/pages/functions/routes-transformation.test.ts +282 -0
- package/src/pages/functions/routes-transformation.ts +115 -0
- package/src/pages/functions/routes-validation.test.ts +403 -0
- package/src/pages/functions/routes-validation.ts +202 -0
- package/src/pages/functions/routes.ts +151 -0
- package/src/pages/functions/tsconfig.json +8 -0
- package/src/pages/functions/tsconfig.tsbuildinfo +1 -0
- package/src/pages/functions.ts +82 -0
- package/src/pages/hash.ts +13 -0
- package/src/pages/index.ts +102 -0
- package/src/pages/projects.tsx +167 -0
- package/src/pages/prompt-select-project.tsx +31 -0
- package/src/pages/publish.tsx +462 -0
- package/src/pages/types.ts +41 -0
- package/src/pages/upload.tsx +447 -0
- package/src/pages/utils.ts +23 -0
- package/src/parse.ts +286 -0
- package/src/paths.ts +71 -0
- package/src/proxy.ts +694 -0
- package/src/publish/index.ts +270 -0
- package/src/publish/publish.ts +1038 -0
- package/src/pubsub/index.ts +286 -0
- package/src/pubsub/pubsub-commands.ts +624 -0
- 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/helpers.ts +131 -0
- package/src/r2/index.ts +289 -0
- package/src/routes.ts +140 -0
- package/src/secret/index.ts +379 -0
- package/src/selfsigned.d.ts +29 -0
- package/src/sites.ts +372 -0
- package/src/tail/createTail.ts +379 -0
- package/src/tail/filters.ts +277 -0
- package/src/tail/index.ts +213 -0
- package/src/tail/printing.ts +107 -0
- package/src/tsconfig-sanity.ts +16 -0
- package/src/type-generation.ts +181 -0
- package/src/update-check.ts +19 -0
- package/src/user/access.ts +68 -0
- package/src/user/auth-variables.ts +113 -0
- package/src/user/choose-account.tsx +39 -0
- package/src/user/generate-auth-url.ts +33 -0
- package/src/user/generate-random-state.ts +16 -0
- package/src/user/index.ts +2 -0
- package/src/user/user.ts +1232 -0
- package/src/utils/collectKeyValues.ts +14 -0
- package/src/whoami.ts +135 -0
- package/src/worker.ts +251 -0
- package/src/yargs-types.ts +24 -0
- package/src/zones.ts +191 -0
- 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/checked-fetch.js +17 -0
- package/templates/d1-beta-facade.js +241 -0
- package/templates/facade.d.ts +14 -0
- package/templates/first-party-worker-module-facade.ts +19 -0
- package/templates/format-dev-errors.ts +33 -0
- package/templates/gitignore +171 -0
- 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/common.ts +62 -0
- package/templates/middleware/loader-modules.ts +82 -0
- package/templates/middleware/loader-sw.ts +233 -0
- package/templates/middleware/middleware-miniflare3-json-error.ts +20 -0
- package/templates/middleware/middleware-pretty-error.ts +40 -0
- package/templates/middleware/middleware-scheduled.ts +15 -0
- package/templates/new-worker-scheduled.js +17 -0
- package/templates/new-worker-scheduled.ts +32 -0
- package/templates/new-worker.js +15 -0
- package/templates/new-worker.ts +30 -0
- package/templates/no-op-worker.js +10 -0
- package/templates/pages-dev-pipeline.ts +31 -0
- package/templates/pages-dev-util.ts +52 -0
- package/templates/pages-shim.ts +12 -0
- package/templates/pages-template-plugin.ts +176 -0
- package/templates/pages-template-worker.ts +189 -0
- package/templates/serve-static-assets.ts +65 -0
- package/templates/service-bindings-module-facade.js +54 -0
- package/templates/service-bindings-sw-facade.js +42 -0
- package/templates/tsconfig-sanity.ts +11 -0
- package/templates/tsconfig.init.json +106 -0
- package/templates/tsconfig.json +8 -0
- package/templates/tsconfig.tsbuildinfo +1 -0
- package/wrangler-dist/cli.d.ts +906 -0
- package/wrangler-dist/cli.js +133533 -113146
- package/wrangler-dist/wasm-sync.wasm +0 -0
- package/src/__tests__/fixtures/init/.gitkeep +0 -0
- package/src/__tests__/mock-cfetch.js +0 -46
- package/src/api/form_data.ts +0 -141
- package/src/api/inspect.ts +0 -441
- package/src/api/preview.ts +0 -128
- package/src/api/worker.ts +0 -161
- package/src/cfetch.ts +0 -72
- package/src/config.ts +0 -122
- package/src/dialogs.tsx +0 -85
- package/src/index.tsx +0 -1858
- package/src/kv.tsx +0 -211
- package/src/pages.tsx +0 -843
- package/src/publish.ts +0 -346
- package/src/sites.tsx +0 -115
- package/src/tail.tsx +0 -71
- package/src/user.tsx +0 -1029
- package/static-asset-facade.js +0 -47
- package/vendor/@cloudflare/kv-asset-handler/CHANGELOG.md +0 -332
- package/vendor/@cloudflare/kv-asset-handler/LICENSE_APACHE +0 -176
- package/vendor/@cloudflare/kv-asset-handler/LICENSE_MIT +0 -25
- package/vendor/@cloudflare/kv-asset-handler/README.md +0 -245
- package/vendor/@cloudflare/kv-asset-handler/dist/index.d.ts +0 -32
- package/vendor/@cloudflare/kv-asset-handler/dist/index.js +0 -354
- package/vendor/@cloudflare/kv-asset-handler/dist/mocks.d.ts +0 -13
- package/vendor/@cloudflare/kv-asset-handler/dist/mocks.js +0 -148
- package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.d.ts +0 -1
- package/vendor/@cloudflare/kv-asset-handler/dist/test/getAssetFromKV.js +0 -436
- package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.d.ts +0 -1
- package/vendor/@cloudflare/kv-asset-handler/dist/test/mapRequestToAsset.js +0 -40
- package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.d.ts +0 -1
- package/vendor/@cloudflare/kv-asset-handler/dist/test/serveSinglePageApp.js +0 -42
- package/vendor/@cloudflare/kv-asset-handler/dist/types.d.ts +0 -26
- package/vendor/@cloudflare/kv-asset-handler/dist/types.js +0 -31
- package/vendor/@cloudflare/kv-asset-handler/package.json +0 -52
- package/vendor/@cloudflare/kv-asset-handler/src/index.ts +0 -296
- package/vendor/@cloudflare/kv-asset-handler/src/mocks.ts +0 -136
- package/vendor/@cloudflare/kv-asset-handler/src/test/getAssetFromKV.ts +0 -464
- package/vendor/@cloudflare/kv-asset-handler/src/test/mapRequestToAsset.ts +0 -33
- package/vendor/@cloudflare/kv-asset-handler/src/test/serveSinglePageApp.ts +0 -42
- package/vendor/@cloudflare/kv-asset-handler/src/types.ts +0 -39
- package/vendor/wrangler-mime/CHANGELOG.md +0 -289
- package/vendor/wrangler-mime/LICENSE +0 -21
- package/vendor/wrangler-mime/Mime.js +0 -97
- package/vendor/wrangler-mime/README.md +0 -187
- package/vendor/wrangler-mime/cli.js +0 -46
- package/vendor/wrangler-mime/index.js +0 -4
- package/vendor/wrangler-mime/lite.js +0 -4
- package/vendor/wrangler-mime/package.json +0 -52
- package/vendor/wrangler-mime/types/other.js +0 -1
- package/vendor/wrangler-mime/types/standard.js +0 -1
- package/wrangler-dist/cli.js.map +0 -7
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import { existsSync, lstatSync, readFileSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { createMetadataObject } from "@cloudflare/pages-shared/metadata-generator/createMetadataObject";
|
|
4
|
+
import { parseHeaders } from "@cloudflare/pages-shared/metadata-generator/parseHeaders";
|
|
5
|
+
import { parseRedirects } from "@cloudflare/pages-shared/metadata-generator/parseRedirects";
|
|
6
|
+
import { watch } from "chokidar";
|
|
7
|
+
import { getType } from "mime";
|
|
8
|
+
import { hashFile } from "../pages/hash";
|
|
9
|
+
import type { Metadata } from "@cloudflare/pages-shared/asset-server/metadata";
|
|
10
|
+
import type {
|
|
11
|
+
ParsedRedirects,
|
|
12
|
+
ParsedHeaders,
|
|
13
|
+
} from "@cloudflare/pages-shared/metadata-generator/types";
|
|
14
|
+
import type {
|
|
15
|
+
RequestInfo as TreRequestInfo,
|
|
16
|
+
RequestInit as TreRequestInit,
|
|
17
|
+
} from "@miniflare/tre";
|
|
18
|
+
|
|
19
|
+
interface Logger {
|
|
20
|
+
log: (message: string) => void;
|
|
21
|
+
warn: (message: string) => void;
|
|
22
|
+
error: (error: Error) => void;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export interface Options {
|
|
26
|
+
log: Logger;
|
|
27
|
+
proxyPort?: number;
|
|
28
|
+
directory?: string;
|
|
29
|
+
tre: boolean;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export default async function generateASSETSBinding(options: Options) {
|
|
33
|
+
const assetsFetch =
|
|
34
|
+
options.directory !== undefined
|
|
35
|
+
? await generateAssetsFetch(options.directory, options.log, options.tre)
|
|
36
|
+
: invalidAssetsFetch;
|
|
37
|
+
|
|
38
|
+
const miniflare = options.tre
|
|
39
|
+
? await import("@miniflare/tre")
|
|
40
|
+
: await import("@miniflare/core");
|
|
41
|
+
|
|
42
|
+
const Request = miniflare.Request;
|
|
43
|
+
const Response = miniflare.Response;
|
|
44
|
+
// WebSockets won't work with `--experimental-local` until we expose something like `upgradingFetch` from `@miniflare/tre`.
|
|
45
|
+
const fetch = (
|
|
46
|
+
options.tre
|
|
47
|
+
? miniflare.fetch
|
|
48
|
+
: (await import("@miniflare/web-sockets")).upgradingFetch
|
|
49
|
+
) as (request: Request) => Promise<Response>;
|
|
50
|
+
|
|
51
|
+
return async function (miniflareRequest: Request) {
|
|
52
|
+
if (options.proxyPort) {
|
|
53
|
+
try {
|
|
54
|
+
const url = new URL(miniflareRequest.url);
|
|
55
|
+
url.host = `localhost:${options.proxyPort}`;
|
|
56
|
+
const proxyRequest = new Request(url, miniflareRequest);
|
|
57
|
+
if (proxyRequest.headers.get("Upgrade") === "websocket") {
|
|
58
|
+
proxyRequest.headers.delete("Sec-WebSocket-Accept");
|
|
59
|
+
proxyRequest.headers.delete("Sec-WebSocket-Key");
|
|
60
|
+
}
|
|
61
|
+
return await fetch(proxyRequest as Request);
|
|
62
|
+
} catch (thrown) {
|
|
63
|
+
options.log.error(new Error(`Could not proxy request: ${thrown}`));
|
|
64
|
+
|
|
65
|
+
// TODO: Pretty error page
|
|
66
|
+
return new Response(`[wrangler] Could not proxy request: ${thrown}`, {
|
|
67
|
+
status: 502,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
} else {
|
|
71
|
+
try {
|
|
72
|
+
return await assetsFetch(miniflareRequest);
|
|
73
|
+
} catch (thrown) {
|
|
74
|
+
options.log.error(new Error(`Could not serve static asset: ${thrown}`));
|
|
75
|
+
|
|
76
|
+
// TODO: Pretty error page
|
|
77
|
+
return new Response(
|
|
78
|
+
`[wrangler] Could not serve static asset: ${thrown}`,
|
|
79
|
+
{ status: 502 }
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
async function generateAssetsFetch(
|
|
87
|
+
directory: string,
|
|
88
|
+
log: Logger,
|
|
89
|
+
tre: boolean
|
|
90
|
+
): Promise<typeof fetch> {
|
|
91
|
+
// Defer importing miniflare until we really need it
|
|
92
|
+
|
|
93
|
+
// NOTE: These dynamic imports bring in `global` type augmentations from
|
|
94
|
+
// `@cloudflare/pages-shared/environment-polyfills/types.ts`, allowing us to
|
|
95
|
+
// use `fetch`, `Headers`, `Request` and `Response` as globals in this file
|
|
96
|
+
// and the *entire* `miniflare-cli` TypeScript project.
|
|
97
|
+
const polyfill = tre
|
|
98
|
+
? (
|
|
99
|
+
await import(
|
|
100
|
+
"@cloudflare/pages-shared/environment-polyfills/miniflare-tre"
|
|
101
|
+
)
|
|
102
|
+
).default
|
|
103
|
+
: (await import("@cloudflare/pages-shared/environment-polyfills/miniflare"))
|
|
104
|
+
.default;
|
|
105
|
+
|
|
106
|
+
await polyfill();
|
|
107
|
+
|
|
108
|
+
const miniflare = tre
|
|
109
|
+
? await import("@miniflare/tre")
|
|
110
|
+
: await import("@miniflare/core");
|
|
111
|
+
const Request = miniflare.Request;
|
|
112
|
+
|
|
113
|
+
const { generateHandler, parseQualityWeightedList } = await import(
|
|
114
|
+
"@cloudflare/pages-shared/asset-server/handler"
|
|
115
|
+
);
|
|
116
|
+
|
|
117
|
+
const headersFile = join(directory, "_headers");
|
|
118
|
+
const redirectsFile = join(directory, "_redirects");
|
|
119
|
+
const workerFile = join(directory, "_worker.js");
|
|
120
|
+
|
|
121
|
+
const ignoredFiles = [headersFile, redirectsFile, workerFile];
|
|
122
|
+
|
|
123
|
+
let redirects: ParsedRedirects | undefined;
|
|
124
|
+
if (existsSync(redirectsFile)) {
|
|
125
|
+
const contents = readFileSync(redirectsFile, "utf-8");
|
|
126
|
+
redirects = parseRedirects(contents);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
let headers: ParsedHeaders | undefined;
|
|
130
|
+
if (existsSync(headersFile)) {
|
|
131
|
+
const contents = readFileSync(headersFile, "utf-8");
|
|
132
|
+
headers = parseHeaders(contents);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
let metadata = createMetadataObject({
|
|
136
|
+
redirects,
|
|
137
|
+
headers,
|
|
138
|
+
logger: log.warn.bind(log),
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
watch([headersFile, redirectsFile], { persistent: true }).on(
|
|
142
|
+
"change",
|
|
143
|
+
(path) => {
|
|
144
|
+
switch (path) {
|
|
145
|
+
case headersFile: {
|
|
146
|
+
log.log("_headers modified. Re-evaluating...");
|
|
147
|
+
const contents = readFileSync(headersFile).toString();
|
|
148
|
+
headers = parseHeaders(contents);
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
case redirectsFile: {
|
|
152
|
+
log.log("_redirects modified. Re-evaluating...");
|
|
153
|
+
const contents = readFileSync(redirectsFile).toString();
|
|
154
|
+
redirects = parseRedirects(contents);
|
|
155
|
+
break;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
metadata = createMetadataObject({
|
|
160
|
+
redirects,
|
|
161
|
+
headers,
|
|
162
|
+
logger: log.warn,
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
);
|
|
166
|
+
|
|
167
|
+
const generateResponse = async (request: Request) => {
|
|
168
|
+
const assetKeyEntryMap = new Map<string, string>();
|
|
169
|
+
|
|
170
|
+
return await generateHandler<string>({
|
|
171
|
+
request,
|
|
172
|
+
metadata: metadata as Metadata,
|
|
173
|
+
xServerEnvHeader: "dev",
|
|
174
|
+
logError: console.error,
|
|
175
|
+
findAssetEntryForPath: async (path) => {
|
|
176
|
+
const filepath = join(directory, path);
|
|
177
|
+
|
|
178
|
+
if (
|
|
179
|
+
existsSync(filepath) &&
|
|
180
|
+
lstatSync(filepath).isFile() &&
|
|
181
|
+
!ignoredFiles.includes(filepath)
|
|
182
|
+
) {
|
|
183
|
+
const hash = hashFile(filepath);
|
|
184
|
+
assetKeyEntryMap.set(hash, filepath);
|
|
185
|
+
return hash;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
return null;
|
|
189
|
+
},
|
|
190
|
+
getAssetKey: (assetEntry) => {
|
|
191
|
+
return assetEntry;
|
|
192
|
+
},
|
|
193
|
+
negotiateContent: (contentRequest) => {
|
|
194
|
+
let rawAcceptEncoding: string | undefined;
|
|
195
|
+
if (
|
|
196
|
+
contentRequest.cf &&
|
|
197
|
+
"clientAcceptEncoding" in contentRequest.cf &&
|
|
198
|
+
contentRequest.cf.clientAcceptEncoding
|
|
199
|
+
) {
|
|
200
|
+
rawAcceptEncoding = contentRequest.cf.clientAcceptEncoding as string;
|
|
201
|
+
} else {
|
|
202
|
+
rawAcceptEncoding =
|
|
203
|
+
contentRequest.headers.get("Accept-Encoding") || undefined;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const acceptEncoding = parseQualityWeightedList(rawAcceptEncoding);
|
|
207
|
+
|
|
208
|
+
if (
|
|
209
|
+
acceptEncoding["identity"] === 0 ||
|
|
210
|
+
(acceptEncoding["*"] === 0 &&
|
|
211
|
+
acceptEncoding["identity"] === undefined)
|
|
212
|
+
) {
|
|
213
|
+
throw new Error("No acceptable encodings available");
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
return { encoding: null };
|
|
217
|
+
},
|
|
218
|
+
fetchAsset: async (assetKey) => {
|
|
219
|
+
const filepath = assetKeyEntryMap.get(assetKey);
|
|
220
|
+
if (!filepath) {
|
|
221
|
+
throw new Error(
|
|
222
|
+
"Could not fetch asset. Please file an issue on GitHub (https://github.com/cloudflare/wrangler2/issues/new/choose) with reproduction steps."
|
|
223
|
+
);
|
|
224
|
+
}
|
|
225
|
+
const body = readFileSync(filepath) as unknown as ReadableStream;
|
|
226
|
+
|
|
227
|
+
let contentType = getType(filepath) || "application/octet-stream";
|
|
228
|
+
if (
|
|
229
|
+
contentType.startsWith("text/") &&
|
|
230
|
+
!contentType.includes("charset")
|
|
231
|
+
) {
|
|
232
|
+
contentType = `${contentType}; charset=utf-8`;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
return { body, contentType };
|
|
236
|
+
},
|
|
237
|
+
});
|
|
238
|
+
};
|
|
239
|
+
|
|
240
|
+
return (async (input: TreRequestInfo, init?: TreRequestInit) => {
|
|
241
|
+
const request = new Request(input, init);
|
|
242
|
+
return await generateResponse(request as unknown as Request);
|
|
243
|
+
}) as typeof fetch;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
const invalidAssetsFetch: typeof fetch = () => {
|
|
247
|
+
throw new Error(
|
|
248
|
+
"Trying to fetch assets directly when there is no `directory` option specified."
|
|
249
|
+
);
|
|
250
|
+
};
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { fetch } from "@miniflare/core";
|
|
2
|
+
import {
|
|
3
|
+
DurableObjectNamespace,
|
|
4
|
+
DurableObjectStub,
|
|
5
|
+
} from "@miniflare/durable-objects";
|
|
6
|
+
import {
|
|
7
|
+
Log as MiniflareLog,
|
|
8
|
+
LogLevel as MiniflareLogLevel,
|
|
9
|
+
Miniflare,
|
|
10
|
+
Request as MiniflareRequest,
|
|
11
|
+
Response as MiniflareResponse,
|
|
12
|
+
} from "miniflare";
|
|
13
|
+
import yargs from "yargs";
|
|
14
|
+
import { hideBin } from "yargs/helpers";
|
|
15
|
+
import { FatalError } from "../errors";
|
|
16
|
+
import generateASSETSBinding from "./assets";
|
|
17
|
+
import { getRequestContextCheckOptions } from "./request-context";
|
|
18
|
+
import type { LoggerLevel } from "../logger";
|
|
19
|
+
import type { Options } from "./assets";
|
|
20
|
+
import type { EnablePagesAssetsServiceBindingOptions } from "./types";
|
|
21
|
+
import type { AddressInfo } from "net";
|
|
22
|
+
|
|
23
|
+
// miniflare defines this but importing it throws:
|
|
24
|
+
// Dynamic require of "path" is not supported
|
|
25
|
+
class MiniflareNoOpLog extends MiniflareLog {
|
|
26
|
+
log(): void {}
|
|
27
|
+
|
|
28
|
+
error(message: Error): void {
|
|
29
|
+
throw message;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async function main() {
|
|
34
|
+
const args = await yargs(hideBin(process.argv)).help(false).version(false)
|
|
35
|
+
.argv;
|
|
36
|
+
|
|
37
|
+
const requestContextCheckOptions = await getRequestContextCheckOptions();
|
|
38
|
+
const config = {
|
|
39
|
+
...JSON.parse((args._[0] as string) ?? "{}"),
|
|
40
|
+
...requestContextCheckOptions,
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
let logLevelString: Uppercase<LoggerLevel> = config.logLevel.toUpperCase();
|
|
44
|
+
if (logLevelString === "LOG") logLevelString = "INFO";
|
|
45
|
+
const logLevel = MiniflareLogLevel[logLevelString];
|
|
46
|
+
|
|
47
|
+
config.log =
|
|
48
|
+
logLevel === MiniflareLogLevel.NONE
|
|
49
|
+
? new MiniflareNoOpLog()
|
|
50
|
+
: new MiniflareLog(logLevel, config.logOptions);
|
|
51
|
+
|
|
52
|
+
if (logLevel === MiniflareLogLevel.DEBUG) {
|
|
53
|
+
console.log("MINIFLARE OPTIONS:\n", JSON.stringify(config, null, 2));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
config.bindings = {
|
|
57
|
+
...config.bindings,
|
|
58
|
+
...(config.externalDurableObjects &&
|
|
59
|
+
Object.fromEntries(
|
|
60
|
+
Object.entries(
|
|
61
|
+
config.externalDurableObjects as Record<
|
|
62
|
+
string,
|
|
63
|
+
{ name: string; host: string; port: number }
|
|
64
|
+
>
|
|
65
|
+
).map(([binding, { name, host, port }]) => {
|
|
66
|
+
const factory = () => {
|
|
67
|
+
throw new FatalError(
|
|
68
|
+
"An external Durable Object instance's state has somehow been attempted to be accessed.",
|
|
69
|
+
1
|
|
70
|
+
);
|
|
71
|
+
};
|
|
72
|
+
const namespace = new DurableObjectNamespace(name as string, factory);
|
|
73
|
+
namespace.get = (id) => {
|
|
74
|
+
const stub = new DurableObjectStub(factory, id);
|
|
75
|
+
stub.fetch = (...reqArgs) => {
|
|
76
|
+
const requestFromArgs = new MiniflareRequest(...reqArgs);
|
|
77
|
+
const url = new URL(requestFromArgs.url);
|
|
78
|
+
url.host = host;
|
|
79
|
+
if (port !== undefined) url.port = port.toString();
|
|
80
|
+
const request = new MiniflareRequest(
|
|
81
|
+
url.toString(),
|
|
82
|
+
requestFromArgs
|
|
83
|
+
);
|
|
84
|
+
request.headers.set("x-miniflare-durable-object-name", name);
|
|
85
|
+
request.headers.set(
|
|
86
|
+
"x-miniflare-durable-object-id",
|
|
87
|
+
id.toString()
|
|
88
|
+
);
|
|
89
|
+
|
|
90
|
+
return fetch(request);
|
|
91
|
+
};
|
|
92
|
+
return stub;
|
|
93
|
+
};
|
|
94
|
+
return [binding, namespace];
|
|
95
|
+
})
|
|
96
|
+
)),
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
let mf: Miniflare | undefined;
|
|
100
|
+
let durableObjectsMf: Miniflare | undefined = undefined;
|
|
101
|
+
let durableObjectsMfPort: number | undefined = undefined;
|
|
102
|
+
|
|
103
|
+
try {
|
|
104
|
+
if (args._[1]) {
|
|
105
|
+
const opts: EnablePagesAssetsServiceBindingOptions = JSON.parse(
|
|
106
|
+
args._[1] as string
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
if (isNaN(opts.proxyPort || NaN) && !opts.directory) {
|
|
110
|
+
throw new Error(
|
|
111
|
+
"MiniflareCLIOptions: built in service bindings set to true, but no port or directory provided"
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
const options: Options = {
|
|
116
|
+
log: config.log,
|
|
117
|
+
proxyPort: opts.proxyPort,
|
|
118
|
+
directory: opts.directory,
|
|
119
|
+
tre: false,
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
config.serviceBindings = {
|
|
123
|
+
...config.serviceBindings,
|
|
124
|
+
ASSETS: await generateASSETSBinding(options),
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
mf = new Miniflare(config);
|
|
128
|
+
// Start Miniflare development server
|
|
129
|
+
const mfServer = await mf.startServer();
|
|
130
|
+
const mfPort = (mfServer.address() as AddressInfo).port;
|
|
131
|
+
await mf.startScheduler();
|
|
132
|
+
|
|
133
|
+
const internalDurableObjectClassNames = Object.values(
|
|
134
|
+
config.durableObjects as Record<string, string>
|
|
135
|
+
);
|
|
136
|
+
|
|
137
|
+
if (internalDurableObjectClassNames.length > 0) {
|
|
138
|
+
durableObjectsMf = new Miniflare({
|
|
139
|
+
host: config.host,
|
|
140
|
+
port: 0,
|
|
141
|
+
script: `
|
|
142
|
+
export default {
|
|
143
|
+
fetch(request, env) {
|
|
144
|
+
return env.DO.fetch(request)
|
|
145
|
+
}
|
|
146
|
+
}`,
|
|
147
|
+
serviceBindings: {
|
|
148
|
+
DO: async (request: MiniflareRequest) => {
|
|
149
|
+
request = new MiniflareRequest(request);
|
|
150
|
+
|
|
151
|
+
const name = request.headers.get("x-miniflare-durable-object-name");
|
|
152
|
+
const idString = request.headers.get(
|
|
153
|
+
"x-miniflare-durable-object-id"
|
|
154
|
+
);
|
|
155
|
+
request.headers.delete("x-miniflare-durable-object-name");
|
|
156
|
+
request.headers.delete("x-miniflare-durable-object-id");
|
|
157
|
+
|
|
158
|
+
if (!name || !idString) {
|
|
159
|
+
return new MiniflareResponse(
|
|
160
|
+
"[durable-object-proxy-err] Missing `x-miniflare-durable-object-name` or `x-miniflare-durable-object-id` headers.",
|
|
161
|
+
{ status: 400 }
|
|
162
|
+
);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
const namespace = await mf?.getDurableObjectNamespace(name);
|
|
166
|
+
const id = namespace?.idFromString(idString);
|
|
167
|
+
|
|
168
|
+
if (!id) {
|
|
169
|
+
return new MiniflareResponse(
|
|
170
|
+
"[durable-object-proxy-err] Could not generate an ID. Possibly due to a mismatched DO name and ID?",
|
|
171
|
+
{ status: 500 }
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
const stub = namespace?.get(id);
|
|
176
|
+
|
|
177
|
+
if (!stub) {
|
|
178
|
+
return new MiniflareResponse(
|
|
179
|
+
"[durable-object-proxy-err] Could not generate a stub. Possibly due to a mismatched DO name and ID?",
|
|
180
|
+
{ status: 500 }
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
return stub.fetch(request);
|
|
185
|
+
},
|
|
186
|
+
},
|
|
187
|
+
modules: true,
|
|
188
|
+
});
|
|
189
|
+
const server = await durableObjectsMf.startServer();
|
|
190
|
+
durableObjectsMfPort = (server.address() as AddressInfo).port;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
process.send &&
|
|
194
|
+
process.send(
|
|
195
|
+
JSON.stringify({
|
|
196
|
+
port: mfPort,
|
|
197
|
+
ready: true,
|
|
198
|
+
durableObjectsPort: durableObjectsMfPort,
|
|
199
|
+
})
|
|
200
|
+
);
|
|
201
|
+
} catch (e) {
|
|
202
|
+
mf?.log.error(e as Error);
|
|
203
|
+
process.exitCode = 1;
|
|
204
|
+
// Unmount any mounted workers
|
|
205
|
+
await mf?.dispose();
|
|
206
|
+
await durableObjectsMf?.dispose();
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
await main();
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { MiniflareOptions } from "miniflare";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Certain runtime APIs are only available to workers during the "request context",
|
|
5
|
+
* which is any code that returns after receiving a request and before returning
|
|
6
|
+
* a response.
|
|
7
|
+
*
|
|
8
|
+
* Miniflare emulates this behavior by using an [`AsyncLocalStorage`](https://nodejs.org/api/async_context.html#class-asynclocalstorage) and
|
|
9
|
+
* [checking at runtime](https://github.com/cloudflare/miniflare/blob/master/packages/shared/src/context.ts#L21-L36)
|
|
10
|
+
* to see if you're using those APIs during the request context.
|
|
11
|
+
*
|
|
12
|
+
* In certain environments `AsyncLocalStorage` is unavailable, such as in a
|
|
13
|
+
* [webcontainer](https://github.com/stackblitz/webcontainer-core).
|
|
14
|
+
* This function figures out if we're able to run those "request context" checks
|
|
15
|
+
* and returns [a set of options](https://miniflare.dev/core/standards#global-functionality-limits)
|
|
16
|
+
* that indicate to miniflare whether to run the checks or not.
|
|
17
|
+
*/
|
|
18
|
+
export const getRequestContextCheckOptions = async (): Promise<
|
|
19
|
+
Pick<MiniflareOptions, "globalAsyncIO" | "globalTimers" | "globalRandom">
|
|
20
|
+
> => {
|
|
21
|
+
// check that there's an implementation of AsyncLocalStorage
|
|
22
|
+
let hasAsyncLocalStorage = true;
|
|
23
|
+
try {
|
|
24
|
+
// ripped from the example here https://nodejs.org/api/async_context.html#class-asynclocalstorage
|
|
25
|
+
const { AsyncLocalStorage } = await import("node:async_hooks");
|
|
26
|
+
const storage = new AsyncLocalStorage<string>();
|
|
27
|
+
|
|
28
|
+
hasAsyncLocalStorage = storage.run("some-value", () => {
|
|
29
|
+
return storage.getStore() === "some-value";
|
|
30
|
+
});
|
|
31
|
+
} catch (e) {
|
|
32
|
+
hasAsyncLocalStorage = false;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return {
|
|
36
|
+
globalAsyncIO: hasAsyncLocalStorage,
|
|
37
|
+
globalRandom: hasAsyncLocalStorage,
|
|
38
|
+
globalTimers: hasAsyncLocalStorage,
|
|
39
|
+
};
|
|
40
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../pages-shared/metadata-generator/constants.ts","../../../pages-shared/asset-server/metadata.ts","../../../pages-shared/metadata-generator/types.ts","../../../pages-shared/metadata-generator/createMetadataObject.ts","../../../pages-shared/metadata-generator/validateURL.ts","../../../pages-shared/metadata-generator/parseHeaders.ts","../../../pages-shared/metadata-generator/parseRedirects.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/anymatch/index.d.ts","../../../../node_modules/chokidar/types/index.d.ts","../../../../node_modules/@types/mime/index.d.ts","../../../../node_modules/blake3-wasm/dist/base/hash-fn.d.ts","../../../../node_modules/blake3-wasm/dist/node/hash-fn.d.ts","../../../../node_modules/blake3-wasm/dist/base/disposable.d.ts","../../../../node_modules/blake3-wasm/dist/base/hash-reader.d.ts","../../../../node_modules/blake3-wasm/dist/base/hash-instance.d.ts","../../../../node_modules/blake3-wasm/dist/base/index.d.ts","../../../../node_modules/blake3-wasm/dist/node/hash-reader.d.ts","../../../../node_modules/blake3-wasm/dist/wasm/nodejs/blake3_js.d.ts","../../../../node_modules/blake3-wasm/dist/node/hash-instance.d.ts","../../../../node_modules/blake3-wasm/dist/node/index.d.ts","../../../../node_modules/blake3-wasm/dist/index.d.ts","../pages/hash.ts","../../../../node_modules/buffer/index.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/readable.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/file.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/fetch.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/formdata.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/connector.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/client.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/errors.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/dispatcher.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/global-dispatcher.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/global-origin.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/pool-stats.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/pool.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/handlers.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/balanced-pool.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/agent.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/mock-interceptor.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/mock-agent.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/mock-client.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/mock-pool.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/mock-errors.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/proxy-agent.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/api.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/filereader.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/diagnostics-channel.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/types/interceptors.d.ts","../../../../node_modules/@miniflare/tre/node_modules/undici/index.d.ts","../../../../node_modules/@types/better-sqlite3/index.d.ts","../../../../node_modules/zod/lib/helpers/typeAliases.d.ts","../../../../node_modules/zod/lib/helpers/util.d.ts","../../../../node_modules/zod/lib/ZodError.d.ts","../../../../node_modules/zod/lib/locales/en.d.ts","../../../../node_modules/zod/lib/errors.d.ts","../../../../node_modules/zod/lib/helpers/parseUtil.d.ts","../../../../node_modules/zod/lib/helpers/enumUtil.d.ts","../../../../node_modules/zod/lib/helpers/errorUtil.d.ts","../../../../node_modules/zod/lib/helpers/partialUtil.d.ts","../../../../node_modules/zod/lib/types.d.ts","../../../../node_modules/zod/lib/external.d.ts","../../../../node_modules/zod/lib/index.d.ts","../../../../node_modules/zod/index.d.ts","../../../../node_modules/@miniflare/tre/dist/src/index.d.ts","../../../../node_modules/undici/types/readable.d.ts","../../../../node_modules/undici/types/file.d.ts","../../../../node_modules/undici/types/fetch.d.ts","../../../../node_modules/undici/types/formdata.d.ts","../../../../node_modules/undici/types/dispatcher.d.ts","../../../../node_modules/undici/types/global-dispatcher.d.ts","../../../../node_modules/undici/types/connector.d.ts","../../../../node_modules/undici/types/client.d.ts","../../../../node_modules/undici/types/pool-stats.d.ts","../../../../node_modules/undici/types/pool.d.ts","../../../../node_modules/undici/types/balanced-pool.d.ts","../../../../node_modules/undici/types/errors.d.ts","../../../../node_modules/undici/types/agent.d.ts","../../../../node_modules/undici/types/mock-interceptor.d.ts","../../../../node_modules/undici/types/mock-agent.d.ts","../../../../node_modules/undici/types/mock-client.d.ts","../../../../node_modules/undici/types/mock-pool.d.ts","../../../../node_modules/undici/types/mock-errors.d.ts","../../../../node_modules/undici/types/proxy-agent.d.ts","../../../../node_modules/undici/types/api.d.ts","../../../../node_modules/undici/types/diagnostics-channel.d.ts","../../../../node_modules/undici/index.d.ts","../../../../node_modules/@miniflare/shared/dist/src/index.d.ts","../../../../node_modules/@miniflare/queues/dist/src/index.d.ts","../../../../node_modules/@types/ws/index.d.ts","../../../../node_modules/@miniflare/web-sockets/dist/src/index.d.ts","../../../../node_modules/@miniflare/core/dist/src/index.d.ts","../../../../node_modules/html-rewriter-wasm/dist/html_rewriter.d.ts","../../../../node_modules/@miniflare/html-rewriter/dist/src/index.d.ts","../../../../node_modules/@miniflare/cache/dist/src/index.d.ts","../../../pages-shared/environment-polyfills/types.ts","../../../pages-shared/environment-polyfills/index.ts","../../../pages-shared/environment-polyfills/miniflare-tre.ts","../../../pages-shared/environment-polyfills/miniflare.ts","../../../pages-shared/asset-server/responses.ts","../../../pages-shared/asset-server/rulesEngine.ts","../../../pages-shared/asset-server/url.ts","../../../pages-shared/asset-server/handler.ts","./assets.ts","../../../../node_modules/@miniflare/durable-objects/dist/src/index.d.ts","../../../../node_modules/cron-schedule/dist/cron.d.ts","../../../../node_modules/cron-schedule/dist/schedulers/interval-based.d.ts","../../../../node_modules/cron-schedule/dist/utils.d.ts","../../../../node_modules/cron-schedule/dist/schedulers/timer-based.d.ts","../../../../node_modules/cron-schedule/dist/cron-parser.d.ts","../../../../node_modules/cron-schedule/dist/index.d.ts","../../../../node_modules/@miniflare/scheduler/dist/src/index.d.ts","../../../../node_modules/@miniflare/d1/dist/src/index.d.ts","../../../../node_modules/@miniflare/http-server/dist/src/index.d.ts","../../../../node_modules/@miniflare/kv/dist/src/index.d.ts","../../../../node_modules/@miniflare/storage-memory/dist/src/index.d.ts","../../../../node_modules/@miniflare/r2/dist/src/index.d.ts","../../../../node_modules/@miniflare/sites/dist/src/index.d.ts","../../../../node_modules/miniflare/dist/src/index.d.ts","../../../../node_modules/@types/yargs-parser/index.d.ts","../../../../node_modules/@types/yargs/index.d.ts","../../../../node_modules/@types/yargs/helpers.d.ts","../errors.ts","./request-context.ts","../../../../node_modules/chalk/types/index.d.ts","../../../../node_modules/cli-table3/index.d.ts","../../../../node_modules/esbuild/lib/main.d.ts","../environment-variables/factory.ts","../logger.ts","./types.ts","./index.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"2960cbcc4b0351c460086aaa9564c4d736f9e79ea4f5c7dfe739d410c3ef6cd6","def7b5d1ab0fa0066484b30711e74e57ecc670086979a6c8cca27d562df673a8","78147e236d9bc0fa67ee714509096a3ae12b61585e7c9c677d2db13bfad1dfd1","fbd2911c6e78b8dfb461c56faf961addd29b4c703862899e981f5ac51adcc50f","e6810fe972f338c46e739bd468228555dbc1ce26c1f935a3b630ae5c9a708c26","31215562f58f4a3f12e16b024c2f103a237a7e0fe3a26a01ea1769794709ed4c","d8863d3810f11874fb7f3fa134fade1c951504ce534a196ff8e12d37430c1ca2","0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4","affectsGlobalScope":true},"ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be",{"version":"9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303","affectsGlobalScope":true},"95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216","afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565",{"version":"34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f","f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf","2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90","76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409","0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122","6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be",{"version":"4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c","affectsGlobalScope":true},"80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00","a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083","196fee5541bfd59699dab615fee2ae7a6f5fe0a6337bcbbfd656ebf1ae329a63","160cc6e3d06938535bc887754afe5798c22d81ce83a9792ebfe2371a70f2ffc2","4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd","a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"eecd493fc62c4dba3d988e2d7dff63299bf12ab49f5c9021dfef8dcc1ff2089e","abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6","945a841f9a591197154c85386bc5a1467d42d325104bb36db51bc566bbb240be","10c39ce1df102994b47d4bc0c71aa9a6aea76f4651a5ec51914431f50bc883a1",{"version":"8207e7e6db9aa5fc7e61c8f17ba74cf9c115d26f51f91ee93f790815a7ea9dfb","affectsGlobalScope":true},"9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492","ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553","29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324","0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3","d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"a7971f9fb2a32ec7788ec6cda9d7a33c02023dfe9a62db2030ad1359649d8050","c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637",{"version":"b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11","998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151","ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4",{"version":"daa2956e185fbca0591cb8cbe075c115301cbac7863092103f2aed6078dfb612","affectsGlobalScope":true},"badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e","c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2","235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0","bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1","9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958","c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"1503a452a67127e5c2da794d1c7c44344d5038373aae16c9b03ac964db159edd","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","a7e430e32eaefba6b1ebf23a94a4562bfe7051cc83558d33ddc8ff342f3c18e9","be27a64e821a3e5af838650e4aa25805c60f057d0c37a9762c378d19d364b3e6","3845c0e7c437e55f04706850a6f4d2b77fb156f0f62b3424baec592cd63fdbde","51f759e4141a3ba41ec8cd8ea27e496203a48b47fb7fa18cb3476a5f1a612d2a","27b601e49914267cead7ccae1143a20b5dd1af46bac908282de11e6a0d565ce1","a50b878bb1c68ce37c2be4966df199ad874271e7acf9874977aaccc6ad5701a7","e330783fe403d4c5b7b1736b4831f3545d6406be8198a3f41461b0aa6e2196e7","0006f481166f6e16544c93786e7b1c177022ef29da136dadeeecf6afb8c220f9","007187957dcf9b10b40a3fe36958c7ebf60bc4c3b877ea7b1ab20efa2abad35d","5a99e72f06d1d7da9b3ac27de8eccdbc940f1c5294e7d4d16efbc3f3c30b227e","696412d3a480a587ea26da8222bd9efda45c7d0b14e60aa3e172139b2f1b099c","824b7c3f7277d883f40a445cc4b8fbfb5285193516a1256ae2a4dec486989978","53f751014cc08afeae6c3199b89b0ab0718e4f97da8b7845c5b2333748277938","bd0e4e3f7b33dd520f3920623a0df181b0574462b2f8c7bbc738497f3e21c76d","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","e7c20bf3e73ed0996fabeb09284e93181900b6fa18c35aa16643c5449dffb64a","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","76a28d995c53b19a373152b77032640052ded6b94a01208a30160e88ddf1275d","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","816924ed387a5206dc920674f9cb50ed9ef196aa1c92ef145618d4bb22abdcff","79865c228ab0062d1e8897fc2ef7b682c4918358cc42320bc804580f6aef7a1d","e0345e0fe484fe0035aefcd7b2f5f1a0c30d5e6bc678034c41a8288450633de7","af374d0ff9768de7abbc20dde30bb08af34dfca1beaa38867d44469128814025","731b1cf869c8d522aa62a3e2846daee0e0cdcdc277087f498d8cc5069972d03b","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","0ec3e3408326da3cfb8371edf27ba4b6beb44277a4e206ddb41ae32e91602b56","fecd3ded75d4ab2921b8f702e4b2317990cf203da118461e95349ac742b8579d","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","8cf23a0959cf72d938eb7c58d6ecc261491c1b4a5553f06dfb9fe6c21d4eaf63","0bf2d6bcd257ec8906339f4e07eede29ce9428b8f2aa56d5e764a88f70ec06be","10a38b861bbc21d9a4d195db18ef4dfa2135e2efeb5c2e3f70c7ad04dd460407","4115949ddc65bf2ccb507498a9c55486300284914dae5e2565f63e1967dfbeba","71afbc331804623823a208d7afaf53c39fefd4b249940a57470fb9722f3da954","957a167314e1b95b2ec1159dc5847d51e00946955ee051bd2b1a7ccf71ece9bf","67d510008ecf71f23942071e9e74cb9c308ab5cc6a55f4eea04532b92ef10453","01de4e744cb973d50806feacf14170a8febfa636ec63ec84a962edf0afde7a84","ee36be1145b9ca7c3d97cc5eb4a31b1f521ee10f32accf1949ce0b51627d967c","d1c90d3bfed34818ddc386c7bc3bcbd84c8bec56b8d76eaf177b3c2045e13b5c","a1f35b67778f29808580e3b667da49b1fba8b1426dd996276f81785c90382697","82cdcebf5c7df704cce2c3d1f905b5539b2f1ef3f701f8314e7a558dbc24fa38","f93a52992fcec143deca2d7395c45ec8b486097018aa53e2f678703e3a7d90ef","3938877ee9772bc01aab80426060c1f0120e9ac5615a3c716ed86d91f5afad9b","9afae14803f3b7343ed6d193173008715c1fa3421a353a818c805244ed737a84","bb98c05ae5cb9bd7cb7ad76fe517251a661787a6f24337b842f47faf393f79c7","a93bf95f7009c90e7d1edb092560d4052e3ebbe9b9ad2d796bcd95dc4306825c","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","014b34d4c2ef27191fdf3feabb6557ec92127f813910725b6e79ed9a49e466b6","72efc3e8cee3cb13144cb63bb8aacf28f918439a2ff222de89e0e5d7ba9c7170","b61efb129c7011068cb4ccbbd86d5741ac82653476b09f46d3d06dd99b5b687e","2b7961486503fa279a4f1a52928d8c31fc6558c335b750878721467210552dd7","d1f62988c7e8e8650f7ed39520a766648155abbf75dd89f60e24f069433301d4","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","c2e6ee0fefffef81618dfbf64b6d5b10656f43e0e0ff4f465041cdf4c945d6eb","e7c20bf3e73ed0996fabeb09284e93181900b6fa18c35aa16643c5449dffb64a","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","e3a01aa1ecb30fec4df9c2eb7b1f171734a8695881ec765d9570419d145beedd","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","494bde4ef5a4a831720708a9a717e9e2496c9565579312679f6e5308a37b6bd7","731b1cf869c8d522aa62a3e2846daee0e0cdcdc277087f498d8cc5069972d03b","4294c1f43690edc39a6808a7b03c40cd2a743be2ab01784b4cb816f21cd36316","4fd5dcd2e0eb7da80ad88f8f48b3b735ac5324285d82034de3af387c936408b8","0ec3e3408326da3cfb8371edf27ba4b6beb44277a4e206ddb41ae32e91602b56","65481893d11ccce2bb261af34318333ba96d6f2db75ce36c54ee6c5d3a313a37","8cf23a0959cf72d938eb7c58d6ecc261491c1b4a5553f06dfb9fe6c21d4eaf63","78c864d5bae9757396df937dfd1626d5d9a53da9d6af53b03e2769fea8aab1dd","ceb4ebb74834b8c1a4f1820e6540a7360a5d132a85f00900f843ecaee289a0b4","10a38b861bbc21d9a4d195db18ef4dfa2135e2efeb5c2e3f70c7ad04dd460407","4115949ddc65bf2ccb507498a9c55486300284914dae5e2565f63e1967dfbeba","71afbc331804623823a208d7afaf53c39fefd4b249940a57470fb9722f3da954","957a167314e1b95b2ec1159dc5847d51e00946955ee051bd2b1a7ccf71ece9bf","67d510008ecf71f23942071e9e74cb9c308ab5cc6a55f4eea04532b92ef10453","76189e37253c79eb62a149ca2990927528885cd6f67723a51553b2783bc96835","ee36be1145b9ca7c3d97cc5eb4a31b1f521ee10f32accf1949ce0b51627d967c","ebabd24e7d25189769228dcc7bf876d2d309a5dd690b759f0fc039cb46f45e59","26a79958c897e34197de141fa47a40c038c5c7b895126cd86ddb21df0e8f876b","4cc2a360e2a14879c6d08bccf0058788aee8bbc2be3d235825bf5607f99cd005","a9449feb833d86b15c8395de565baec68bc6a6cebd25ceb285d5f50503cb5a21","b4358a89fcd9c579f84a6c68e2ce44ca91b07e4db3f8f403c2b7a72c1a1e04b6","b8d2ea7d6877f4e46240140491195cb5ce391c911585d7bb17366c116339ce08","5431bbbff15457874bdab94844fa625fa0630e8759602f7238c05bd69fa1251e","fca196a63dcdda993cc0767c1d8038e0fea130723b6349256aec6f0dc6afeee6","e1b9a037e8bbf12c413c1a6b18ea985e09202fe3dbbf3da593568a91a7dc0ebf","9f6feba8fdfd2b341c5d40e402cb452182e8e0fc0920bce34e6ab46dec104c29",{"version":"ec35e4acced0edca4b3f807597b61bca0e322a5404135a937ac11ca2958c7410","affectsGlobalScope":true},"d6e12bebdaf02b4e069bdb5d8733b6ca4d897c92067df5fdf863a65b826cb054","ab0d2c81d176bada32f9d00a2eeb2cc11b15c3db09642c6c5b389b652d51a89f","9ed04a7dcb3f2e0de2fa41e8be03534796040c3344724348843fa2c8480952f9","9af5244c220c69d4ae5a46c8079d65ca6631af5d9d986ca0338befb5a0d9c89d","d1a62621df744be36150eedc3ab8e0b51644124ff8cdbbe4bda8bad88d571c80","732ed62c7082d8f1f5ec29d9ef460b8bfa53d883a0340a2286d54278eeef6263","2e83378510dee46446c905395440ca2570415a7b87e690fa2b8344ea0f08df07","0fa9cd6f735789c788aa61cd40a77671f65c9cb1947982ae9a843e1b323befb9","c696d5435fc5ca90b63eccfd1996e72b4acd167e6825ac8112250dbc3f69677f","ef0278858bd800e01280578b41c084a8c3570d21789c29e82221b3112d7c325e","45306ff1bba208bb2dae87c9474b590fa223dc37bb0f1dd278328a862630ae8d","1457c248ae8b97429eccedd53528a48b4252aa01e207579a6aa81b4734f3105d","40ac2fda208f54fb7ddd3ebd0e0fdd718012e4469532433c5d6155136cc1a40b","c14788310fec17ac61ef6b527dd1e9d658cf0e13867b1d36924ab04009ecc3f5","6064f7c5739df85dcc9ced0a610be5cd585f70d95aba985f59ea405f834673a7","2d997a81857e5713b21b135b75dd3200c2d31524c8bbeafe48e133a89763d711","cd16d42c93a3db88d2c6ca91a0aa3458168028ee1366ccd949014436aa5bbb34","97b0b39526debcd440291fb6aeb601178ac33b2ad84e54c78c16057362955f2d","d72f2c32cb958d1023a10035be28e091344a7cb3a14def96d13d39c72f3a3767","9518e804fc9700036ae4c81262bbf34a1f554fa4831494f0fec84b7c4c8c1d48","d194ce90bef1ab1418dae22ebc0a9f697251de4444303c8a0d7edc509caac962","bf093cdf9d9b079e168b1c1ba6aa23e7eab84b8d13e1591f1e871c7b31b1c71f","c3c579c496ac9a5b7bb864d2d9f898209d9b28b6b47d1bf1cc9f2b2d3471b2ea","f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","105b9a2234dcb06ae922f2cd8297201136d416503ff7d16c72bfc8791e9895c1","9cc884a6f8547dec935f930b8aad8212aaae876ebeaab5cd42d20b45251860e7","8526249c4486650b51b73ef9ae452fb6ef3254b2e73a1625c68889a9a3bfc070","dd472d8f41c142352cb21b03d602c5acf88b41d7656cd6b01414b0dd3a047afd","091f417275a51ab3c47b949723e9e8a193012157ecc64a96e2d7b1505e82f395","e6d2c107b358421399671d5afc04f9a0993833121c74bcbd3648ac3a65770936","00b0c44ae6980b240d20aaf79b4f03fa38ff78028fa71a987a0414fb6ba0717a","bf45a2498ec7911454362c65ef3c87b161d91490d2d96a554f3263886c0e3503","458f69ee6d4fe10fcb2e0c3c75bc6327796bd3e3cef05668456180404ed2e9c0","95586a6a375ad871afbc7a0e7989a6c590487b3c51aea25a60268ee79c94af8c","04aa5b1f66fd253029621989d3feb63b05e898f06370c267c83f94d941936c00"],"options":{"allowSyntheticDefaultImports":true,"alwaysStrict":false,"esModuleInterop":true,"jsx":2,"module":99,"skipLibCheck":true,"strict":true,"target":99},"fileIdsList":[[104,190,191,195],[65,70,79,96,103,104,111,190,191,192,194],[104,154,191],[104,111,191,195],[104,190,191,195,196],[79,81,103,104,111,190,191,195],[96,104,191],[104,191],[65,96,104,111,190,191],[104,191,195,214],[104,111,154,190,191],[104,191,218],[103,104,111,153,154,167],[104,129,130,131,132,133,134,135,136,137,139,140,141,142,143,144,145,146,147,148,149,150,151,152],[103,104,135,139],[93,103,104,135],[103,104,133,135,139],[100,103,104,132,135],[84,100,104],[84,103,104,132,135],[65,76,79,93,103,104,128,131,134],[79,104,133],[65,96,103,104,111,131,135],[65,104,111],[104,111,129,130],[104,135],[104],[104,135,142,143],[104,133,135,143,144],[104,134],[79,104,130,135],[104,135,139,143,144],[104,139],[103,104,133,135,138],[100,104,135,142],[65,93,104],[104,190,191,193,195],[104,111],[61,104],[64,104],[65,70,104],[66,76,77,84,93,103,104],[66,67,76,84,104],[68,104],[69,70,77,85,104],[70,93,100,104],[71,73,76,84,104],[72,104],[73,74,104],[75,76,104],[76,104],[76,77,78,93,103,104],[76,77,78,93,104],[79,84,93,103,104],[76,77,79,80,84,93,100,103,104],[79,81,93,100,103,104],[61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],[76,82,104],[83,103,104],[73,76,84,93,104],[85,104],[86,104],[64,87,104],[88,102,104,108],[89,104],[90,104],[76,91,104],[91,92,104,106],[76,93,94,95,104],[93,95,104],[93,94,104],[96,104],[97,104],[76,98,99,104],[98,99,104],[70,84,100,104],[101,104],[84,102,104],[65,79,90,103,104],[70,104],[93,104,105],[104,106],[104,107],[65,70,76,78,87,93,103,104,106,108],[93,104,109],[76,79,81,93,100,103,104,109,111],[104,223],[104,115,118],[104,117],[104,115,117,118,119],[104,124],[104,111,115],[93,104,111,115,116,120,121,122],[104,111,118],[104,116,120,121,123],[76,77,104,111,112],[104,209],[104,209,210,211,212,213],[104,209,211],[79,81,104,111,191,192,194,195,197,198,208,215,216,217,218,219,220,221],[104,170,171,172,173,174,175,176,178,179,180,181,182,183,184,185,186,187,188,189],[103,104,173,178],[93,103,104,173],[103,104,173,176,178],[100,103,104,173,175],[84,103,104,173,175],[65,76,79,93,103,104,169,172],[79,104,176],[65,96,103,104,111,172,173],[104,111,170,171],[104,173],[104,173,181,182],[104,173,176,182,183],[104,180],[79,104,171,173],[104,173,178,182,183],[104,178],[103,104,173,176,177],[100,104,173,181],[104,166],[104,155,156,166],[104,157,158],[104,155,156,157,159,160,164],[104,156,157],[104,165],[104,157],[104,155,156,157,160,161,162,163],[55,104,203,204,205],[104,199],[104,168,200],[104,195,200],[96,104,195,197,198],[54,55,56,104],[54,56,58,104],[104,232],[104,228,229,230,231],[55,56,57,59,60,77,86,104,113,114,126,168,194,195,201,202,206],[84,104,195,207,208,222,224,225,226,227,232,233],[64,104,222],[77,86,104,125]],"referencedMap":[[198,1],[195,2],[216,3],[208,4],[197,5],[217,6],[218,7],[192,8],[220,9],[215,10],[191,11],[221,12],[219,8],[168,13],[153,14],[142,15],[149,16],[141,17],[133,18],[132,19],[151,20],[135,21],[134,22],[130,23],[129,24],[150,24],[131,25],[136,26],[137,27],[140,26],[152,26],[144,28],[145,29],[147,30],[143,31],[146,32],[138,33],[139,34],[148,35],[128,36],[194,37],[154,38],[114,27],[61,39],[62,39],[64,40],[65,41],[66,42],[67,43],[68,44],[69,45],[70,46],[71,47],[72,48],[73,49],[74,49],[75,50],[76,51],[77,52],[78,53],[63,27],[110,27],[79,54],[80,55],[81,56],[111,57],[82,58],[83,59],[84,60],[85,61],[86,62],[87,63],[88,64],[89,65],[90,66],[91,67],[92,68],[93,69],[95,70],[94,71],[96,72],[97,73],[98,74],[99,75],[100,76],[101,77],[102,78],[103,79],[104,80],[105,81],[106,82],[107,83],[108,84],[109,85],[193,86],[223,27],[225,87],[224,87],[112,27],[117,27],[115,27],[119,88],[118,89],[120,90],[125,91],[116,92],[123,93],[121,94],[124,95],[122,27],[127,27],[228,27],[113,96],[229,27],[213,97],[209,27],[214,98],[210,97],[212,99],[211,27],[230,27],[196,27],[222,100],[12,27],[11,27],[2,27],[13,27],[14,27],[15,27],[16,27],[17,27],[18,27],[19,27],[20,27],[3,27],[4,27],[24,27],[21,27],[22,27],[23,27],[25,27],[26,27],[27,27],[5,27],[28,27],[29,27],[30,27],[31,27],[6,27],[32,27],[33,27],[34,27],[35,27],[7,27],[36,27],[41,27],[42,27],[37,27],[38,27],[39,27],[40,27],[8,27],[46,27],[43,27],[44,27],[45,27],[47,27],[9,27],[48,27],[49,27],[50,27],[51,27],[52,27],[1,27],[10,27],[53,27],[190,101],[181,102],[188,103],[179,104],[176,105],[175,19],[189,106],[173,107],[180,108],[171,109],[170,24],[172,110],[174,111],[183,112],[184,113],[186,114],[182,115],[185,116],[177,117],[178,118],[187,119],[169,36],[167,120],[157,121],[159,122],[165,123],[161,27],[162,27],[160,124],[163,120],[155,27],[156,27],[166,125],[158,126],[164,127],[206,128],[55,27],[203,27],[204,27],[205,27],[200,129],[201,130],[202,131],[199,132],[54,27],[57,133],[59,134],[60,134],[56,27],[58,27],[231,135],[226,27],[232,136],[207,137],[234,138],[227,139],[233,27],[126,140]],"exportedModulesMap":[[198,1],[195,2],[216,3],[208,4],[197,5],[217,6],[218,7],[192,8],[220,9],[215,10],[191,11],[221,12],[219,8],[168,13],[153,14],[142,15],[149,16],[141,17],[133,18],[132,19],[151,20],[135,21],[134,22],[130,23],[129,24],[150,24],[131,25],[136,26],[137,27],[140,26],[152,26],[144,28],[145,29],[147,30],[143,31],[146,32],[138,33],[139,34],[148,35],[128,36],[194,37],[154,38],[114,27],[61,39],[62,39],[64,40],[65,41],[66,42],[67,43],[68,44],[69,45],[70,46],[71,47],[72,48],[73,49],[74,49],[75,50],[76,51],[77,52],[78,53],[63,27],[110,27],[79,54],[80,55],[81,56],[111,57],[82,58],[83,59],[84,60],[85,61],[86,62],[87,63],[88,64],[89,65],[90,66],[91,67],[92,68],[93,69],[95,70],[94,71],[96,72],[97,73],[98,74],[99,75],[100,76],[101,77],[102,78],[103,79],[104,80],[105,81],[106,82],[107,83],[108,84],[109,85],[193,86],[223,27],[225,87],[224,87],[112,27],[117,27],[115,27],[119,88],[118,89],[120,90],[125,91],[116,92],[123,93],[121,94],[124,95],[122,27],[127,27],[228,27],[113,96],[229,27],[213,97],[209,27],[214,98],[210,97],[212,99],[211,27],[230,27],[196,27],[222,100],[12,27],[11,27],[2,27],[13,27],[14,27],[15,27],[16,27],[17,27],[18,27],[19,27],[20,27],[3,27],[4,27],[24,27],[21,27],[22,27],[23,27],[25,27],[26,27],[27,27],[5,27],[28,27],[29,27],[30,27],[31,27],[6,27],[32,27],[33,27],[34,27],[35,27],[7,27],[36,27],[41,27],[42,27],[37,27],[38,27],[39,27],[40,27],[8,27],[46,27],[43,27],[44,27],[45,27],[47,27],[9,27],[48,27],[49,27],[50,27],[51,27],[52,27],[1,27],[10,27],[53,27],[190,101],[181,102],[188,103],[179,104],[176,105],[175,19],[189,106],[173,107],[180,108],[171,109],[170,24],[172,110],[174,111],[183,112],[184,113],[186,114],[182,115],[185,116],[177,117],[178,118],[187,119],[169,36],[167,120],[157,121],[159,122],[165,123],[161,27],[162,27],[160,124],[163,120],[155,27],[156,27],[166,125],[158,126],[164,127],[206,128],[55,27],[203,27],[204,27],[205,27],[200,129],[201,130],[202,131],[199,132],[54,27],[57,133],[59,134],[60,134],[56,27],[58,27],[231,135],[226,27],[232,136],[207,137],[234,138],[227,139],[233,27],[126,140]],"semanticDiagnosticsPerFile":[198,195,216,208,197,217,218,192,220,215,191,221,219,168,153,142,149,141,133,132,151,135,134,130,129,150,131,136,137,140,152,144,145,147,143,146,138,139,148,128,194,154,114,61,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,63,110,79,80,81,111,82,83,84,85,86,87,88,89,90,91,92,93,95,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109,193,223,225,224,112,117,115,119,118,120,125,116,123,121,124,122,127,228,113,229,213,209,214,210,212,211,230,196,222,12,11,2,13,14,15,16,17,18,19,20,3,4,24,21,22,23,25,26,27,5,28,29,30,31,6,32,33,34,35,7,36,41,42,37,38,39,40,8,46,43,44,45,47,9,48,49,50,51,52,1,10,53,190,181,188,179,176,175,189,173,180,171,170,172,174,183,184,186,182,185,177,178,187,169,167,157,159,165,161,162,160,163,155,156,166,158,164,206,55,203,204,205,200,201,202,199,54,57,59,60,56,58,231,226,232,207,234,227,233,126],"affectedFilesPendingEmit":[[198,1],[195,1],[216,1],[208,1],[197,1],[217,1],[218,1],[192,1],[220,1],[215,1],[191,1],[221,1],[219,1],[168,1],[153,1],[142,1],[149,1],[141,1],[133,1],[132,1],[151,1],[135,1],[134,1],[130,1],[129,1],[150,1],[131,1],[136,1],[137,1],[140,1],[152,1],[144,1],[145,1],[147,1],[143,1],[146,1],[138,1],[139,1],[148,1],[128,1],[194,1],[154,1],[114,1],[61,1],[62,1],[64,1],[65,1],[66,1],[67,1],[68,1],[69,1],[70,1],[71,1],[72,1],[73,1],[74,1],[75,1],[76,1],[77,1],[78,1],[63,1],[110,1],[79,1],[80,1],[81,1],[111,1],[82,1],[83,1],[84,1],[85,1],[86,1],[87,1],[88,1],[89,1],[90,1],[91,1],[92,1],[93,1],[95,1],[94,1],[96,1],[97,1],[98,1],[99,1],[100,1],[101,1],[102,1],[103,1],[104,1],[105,1],[106,1],[107,1],[108,1],[109,1],[193,1],[223,1],[225,1],[224,1],[112,1],[117,1],[115,1],[119,1],[118,1],[120,1],[125,1],[116,1],[123,1],[121,1],[124,1],[122,1],[127,1],[228,1],[113,1],[229,1],[213,1],[209,1],[214,1],[210,1],[212,1],[211,1],[230,1],[196,1],[222,1],[2,1],[3,1],[4,1],[5,1],[6,1],[7,1],[8,1],[9,1],[10,1],[190,1],[181,1],[188,1],[179,1],[176,1],[175,1],[189,1],[173,1],[180,1],[171,1],[170,1],[172,1],[174,1],[183,1],[184,1],[186,1],[182,1],[185,1],[177,1],[178,1],[187,1],[169,1],[167,1],[157,1],[159,1],[165,1],[161,1],[162,1],[160,1],[163,1],[155,1],[156,1],[166,1],[158,1],[164,1],[206,1],[55,1],[203,1],[204,1],[205,1],[200,1],[201,1],[202,1],[199,1],[54,1],[57,1],[59,1],[60,1],[56,1],[58,1],[231,1],[226,1],[232,1],[207,1],[234,1],[227,1],[233,1],[126,1]]},"version":"4.8.4"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// `./assets` dynamically imports `@cloudflare/pages-shared/environment-polyfills`.
|
|
2
|
+
// `@cloudflare/pages-shared/environment-polyfills/types.ts` defines `global`
|
|
3
|
+
// augmentations that pollute the `import`-site's typing environment.
|
|
4
|
+
//
|
|
5
|
+
// This type is used in the main `wrangler` TypeScript project. We split it out
|
|
6
|
+
// into a separate file (rather than putting it in `./index.ts`) so that
|
|
7
|
+
// `import`ing it doesn't bring in the `global` augmentations.
|
|
8
|
+
export interface EnablePagesAssetsServiceBindingOptions {
|
|
9
|
+
proxyPort?: number;
|
|
10
|
+
directory?: string;
|
|
11
|
+
}
|