@qwik.dev/router 2.0.0-beta.11 → 2.0.0-beta.14
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/lib/adapters/azure-swa/vite/index.mjs +28 -207
- package/lib/adapters/bun-server/vite/index.mjs +16 -202
- package/lib/adapters/cloud-run/vite/index.mjs +15 -201
- package/lib/adapters/cloudflare-pages/vite/index.mjs +65 -6
- package/lib/adapters/deno-server/vite/index.mjs +18 -204
- package/lib/adapters/netlify-edge/vite/index.mjs +58 -246
- package/lib/adapters/node-server/vite/index.mjs +16 -202
- package/lib/adapters/shared/vite/index.d.ts +4 -4
- package/lib/adapters/shared/vite/index.mjs +250 -149
- package/lib/adapters/ssg/vite/index.mjs +12 -199
- package/lib/adapters/vercel-edge/vite/index.d.ts +1 -1
- package/lib/adapters/vercel-edge/vite/index.mjs +50 -235
- package/lib/chunks/error-handler.mjs +57 -0
- package/lib/chunks/format-error.mjs +137 -0
- package/lib/chunks/fs.mjs +254 -0
- package/lib/chunks/index.mjs +884 -0
- package/lib/chunks/mime-types.mjs +52 -0
- package/lib/chunks/routing.qwik.mjs +429 -0
- package/lib/chunks/types.qwik.mjs +22 -0
- package/lib/index.d.ts +11 -4
- package/lib/index.qwik.mjs +533 -1019
- package/lib/middleware/aws-lambda/index.mjs +38 -28
- package/lib/middleware/azure-swa/index.mjs +65 -48
- package/lib/middleware/bun/index.mjs +104 -119
- package/lib/middleware/cloudflare-pages/index.mjs +69 -49
- package/lib/middleware/deno/index.mjs +94 -114
- package/lib/middleware/firebase/index.mjs +26 -18
- package/lib/middleware/netlify-edge/index.mjs +53 -38
- package/lib/middleware/node/index.mjs +184 -167
- package/lib/middleware/request-handler/index.d.ts +22 -4
- package/lib/middleware/request-handler/index.mjs +1203 -877
- package/lib/middleware/vercel-edge/index.mjs +72 -49
- package/lib/service-worker/index.mjs +4 -0
- package/lib/ssg/index.mjs +14 -22
- package/lib/vite/index.d.ts +13 -7
- package/lib/vite/index.mjs +1609 -1217
- package/package.json +27 -44
- package/lib/adapters/azure-swa/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/azure-swa/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/azure-swa/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/azure-swa/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/azure-swa/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/azure-swa/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/azure-swa/vite/index.cjs +0 -5
- package/lib/adapters/bun-server/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/bun-server/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/bun-server/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/bun-server/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/bun-server/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/bun-server/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/bun-server/vite/index.cjs +0 -5
- package/lib/adapters/cloud-run/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/cloud-run/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/cloud-run/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/cloud-run/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/cloud-run/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/cloud-run/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/cloud-run/vite/index.cjs +0 -5
- package/lib/adapters/cloudflare-pages/vite/index-Bg_9YkM5.js +0 -22
- package/lib/adapters/cloudflare-pages/vite/index-C1aDmh1S.cjs +0 -1
- package/lib/adapters/cloudflare-pages/vite/index-CHT9Y93A.js +0 -254
- package/lib/adapters/cloudflare-pages/vite/index-Ck7KvpK1.cjs +0 -11
- package/lib/adapters/cloudflare-pages/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/cloudflare-pages/vite/index-Cp1cjAds.js +0 -645
- package/lib/adapters/cloudflare-pages/vite/index-D9RL9dvJ.cjs +0 -5
- package/lib/adapters/cloudflare-pages/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/cloudflare-pages/vite/index.cjs +0 -1
- package/lib/adapters/deno-server/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/deno-server/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/deno-server/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/deno-server/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/deno-server/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/deno-server/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/deno-server/vite/index.cjs +0 -5
- package/lib/adapters/netlify-edge/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/netlify-edge/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/netlify-edge/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/netlify-edge/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/netlify-edge/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/netlify-edge/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/netlify-edge/vite/index.cjs +0 -6
- package/lib/adapters/node-server/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/node-server/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/node-server/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/node-server/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/node-server/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/node-server/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/node-server/vite/index.cjs +0 -5
- package/lib/adapters/shared/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/shared/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/shared/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/shared/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/shared/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/shared/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/shared/vite/index.cjs +0 -5
- package/lib/adapters/ssg/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/ssg/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/ssg/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/ssg/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/ssg/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/ssg/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/ssg/vite/index.cjs +0 -5
- package/lib/adapters/vercel-edge/vite/index-BqUeglYs.cjs +0 -1
- package/lib/adapters/vercel-edge/vite/index-CBIchDYq.js +0 -651
- package/lib/adapters/vercel-edge/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/vercel-edge/vite/index-CrwlB95_.js +0 -22
- package/lib/adapters/vercel-edge/vite/index-DTIOTwZo.cjs +0 -11
- package/lib/adapters/vercel-edge/vite/index-vQuPcef3.cjs +0 -1
- package/lib/adapters/vercel-edge/vite/index.cjs +0 -5
- package/lib/index.qwik.cjs +0 -2126
- package/lib/middleware/aws-lambda/index.cjs +0 -1
- package/lib/middleware/azure-swa/index.cjs +0 -1
- package/lib/middleware/bun/index.cjs +0 -1
- package/lib/middleware/cloudflare-pages/index.cjs +0 -1
- package/lib/middleware/deno/index.cjs +0 -1
- package/lib/middleware/firebase/index.cjs +0 -1
- package/lib/middleware/netlify-edge/index.cjs +0 -1
- package/lib/middleware/node/index.cjs +0 -1
- package/lib/middleware/request-handler/index.cjs +0 -18
- package/lib/middleware/vercel-edge/index.cjs +0 -1
- package/lib/service-worker.cjs +0 -1
- package/lib/service-worker.mjs +0 -5
- package/lib/ssg/deno.cjs +0 -1
- package/lib/ssg/deno.mjs +0 -6
- package/lib/ssg/index-CBIchDYq.js +0 -651
- package/lib/ssg/index-ClHGw5z1.js +0 -6
- package/lib/ssg/index-DTIOTwZo.cjs +0 -11
- package/lib/ssg/index-vQuPcef3.cjs +0 -1
- package/lib/ssg/index.cjs +0 -1
- package/lib/ssg/node.cjs +0 -11
- package/lib/ssg/node.mjs +0 -651
- package/lib/vite/index.cjs +0 -42
|
@@ -1,148 +1,128 @@
|
|
|
1
|
-
import { setServerPlatform
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
html: "text/html",
|
|
17
|
-
ico: "image/x-icon",
|
|
18
|
-
jng: "image/x-jng",
|
|
19
|
-
jpeg: "image/jpeg",
|
|
20
|
-
jpg: "image/jpeg",
|
|
21
|
-
js: "application/javascript",
|
|
22
|
-
json: "application/json",
|
|
23
|
-
kar: "audio/midi",
|
|
24
|
-
m4a: "audio/x-m4a",
|
|
25
|
-
m4v: "video/x-m4v",
|
|
26
|
-
mid: "audio/midi",
|
|
27
|
-
midi: "audio/midi",
|
|
28
|
-
mng: "video/x-mng",
|
|
29
|
-
mov: "video/quicktime",
|
|
30
|
-
mp3: "audio/mpeg",
|
|
31
|
-
mp4: "video/mp4",
|
|
32
|
-
mpeg: "video/mpeg",
|
|
33
|
-
mpg: "video/mpeg",
|
|
34
|
-
ogg: "audio/ogg",
|
|
35
|
-
pdf: "application/pdf",
|
|
36
|
-
png: "image/png",
|
|
37
|
-
rar: "application/x-rar-compressed",
|
|
38
|
-
shtml: "text/html",
|
|
39
|
-
svg: "image/svg+xml",
|
|
40
|
-
svgz: "image/svg+xml",
|
|
41
|
-
tif: "image/tiff",
|
|
42
|
-
tiff: "image/tiff",
|
|
43
|
-
ts: "video/mp2t",
|
|
44
|
-
txt: "text/plain",
|
|
45
|
-
wbmp: "image/vnd.wap.wbmp",
|
|
46
|
-
webm: "video/webm",
|
|
47
|
-
webp: "image/webp",
|
|
48
|
-
wmv: "video/x-ms-wmv",
|
|
49
|
-
woff: "font/woff",
|
|
50
|
-
woff2: "font/woff2",
|
|
51
|
-
xml: "text/xml",
|
|
52
|
-
zip: "application/zip"
|
|
53
|
-
};
|
|
54
|
-
function E(n) {
|
|
55
|
-
n.qwikCityPlan && !n.qwikRouterConfig && (console.warn("qwikCityPlan is deprecated. Simply remove it."), n.qwikRouterConfig = n.qwikCityPlan), n.manifest && w(n.manifest);
|
|
56
|
-
const l = n.static?.root ?? m(b(import.meta.url), "..", "..", "dist");
|
|
57
|
-
async function p(t, e) {
|
|
1
|
+
import { setServerPlatform } from '@qwik.dev/core/server';
|
|
2
|
+
import { isStaticPath, getNotFound, mergeHeadersCookies, requestHandler } from '@qwik.dev/router/middleware/request-handler';
|
|
3
|
+
import { M as MIME_TYPES } from '../../chunks/mime-types.mjs';
|
|
4
|
+
import { join, fromFileUrl, extname } from 'https://deno.land/std/path/mod.ts';
|
|
5
|
+
|
|
6
|
+
function createQwikRouter(opts) {
|
|
7
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
8
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
9
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
10
|
+
}
|
|
11
|
+
if (opts.manifest) {
|
|
12
|
+
setServerPlatform(opts.manifest);
|
|
13
|
+
}
|
|
14
|
+
const staticFolder = opts.static?.root ?? join(fromFileUrl(import.meta.url), "..", "..", "dist");
|
|
15
|
+
async function router(request, info) {
|
|
58
16
|
try {
|
|
59
|
-
const
|
|
17
|
+
const url = new URL(request.url);
|
|
18
|
+
const serverRequestEv = {
|
|
60
19
|
mode: "server",
|
|
61
20
|
locale: void 0,
|
|
62
|
-
url
|
|
21
|
+
url,
|
|
63
22
|
// @ts-ignore
|
|
64
23
|
env: Deno.env,
|
|
65
|
-
request
|
|
66
|
-
getWritableStream: (
|
|
67
|
-
const { readable
|
|
68
|
-
|
|
69
|
-
|
|
24
|
+
request,
|
|
25
|
+
getWritableStream: (status, headers, cookies, resolve) => {
|
|
26
|
+
const { readable, writable } = new TransformStream();
|
|
27
|
+
const response = new Response(readable, {
|
|
28
|
+
status,
|
|
29
|
+
headers: mergeHeadersCookies(headers, cookies)
|
|
70
30
|
});
|
|
71
|
-
|
|
31
|
+
resolve(response);
|
|
32
|
+
return writable;
|
|
72
33
|
},
|
|
73
34
|
platform: {
|
|
74
|
-
ssr:
|
|
35
|
+
ssr: true
|
|
75
36
|
},
|
|
76
|
-
getClientConn: () =>
|
|
77
|
-
|
|
37
|
+
getClientConn: () => {
|
|
38
|
+
return opts.getClientConn ? opts.getClientConn(request, info) : {
|
|
39
|
+
ip: info.remoteAddr.hostname
|
|
40
|
+
};
|
|
78
41
|
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
42
|
+
};
|
|
43
|
+
const handledResponse = await requestHandler(serverRequestEv, opts);
|
|
44
|
+
if (handledResponse) {
|
|
45
|
+
handledResponse.completion.then((v) => {
|
|
46
|
+
if (v) {
|
|
47
|
+
console.error(v);
|
|
48
|
+
}
|
|
83
49
|
});
|
|
84
|
-
const
|
|
85
|
-
if (
|
|
86
|
-
return
|
|
50
|
+
const response = await handledResponse.response;
|
|
51
|
+
if (response) {
|
|
52
|
+
return response;
|
|
53
|
+
}
|
|
87
54
|
}
|
|
88
55
|
return null;
|
|
89
|
-
} catch (
|
|
90
|
-
|
|
56
|
+
} catch (e) {
|
|
57
|
+
console.error(e);
|
|
58
|
+
return new Response(String(e || "Error"), {
|
|
91
59
|
status: 500,
|
|
92
60
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
93
61
|
});
|
|
94
62
|
}
|
|
95
63
|
}
|
|
96
|
-
const
|
|
64
|
+
const notFound = async (request) => {
|
|
97
65
|
try {
|
|
98
|
-
const
|
|
99
|
-
|
|
66
|
+
const url = new URL(request.url);
|
|
67
|
+
const notFoundHtml = !request.headers.get("accept")?.includes("text/html") || isStaticPath(request.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
|
|
68
|
+
return new Response(notFoundHtml, {
|
|
100
69
|
status: 404,
|
|
101
|
-
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found":
|
|
70
|
+
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname }
|
|
102
71
|
});
|
|
103
72
|
} catch (e) {
|
|
104
|
-
|
|
73
|
+
console.error(e);
|
|
74
|
+
return new Response(String(e || "Error"), {
|
|
105
75
|
status: 500,
|
|
106
76
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
107
77
|
});
|
|
108
78
|
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
79
|
+
};
|
|
80
|
+
const openStaticFile = async (url) => {
|
|
81
|
+
const pathname = url.pathname;
|
|
82
|
+
const fileName = pathname.slice(url.pathname.lastIndexOf("/"));
|
|
83
|
+
let filePath;
|
|
84
|
+
if (fileName.includes(".")) {
|
|
85
|
+
filePath = join(staticFolder, pathname);
|
|
86
|
+
} else if (!globalThis.__NO_TRAILING_SLASH__) {
|
|
87
|
+
filePath = join(staticFolder, pathname + "index.html");
|
|
88
|
+
} else {
|
|
89
|
+
filePath = join(staticFolder, pathname, "index.html");
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
filePath,
|
|
114
93
|
// @ts-ignore
|
|
115
|
-
content: await Deno.open(
|
|
94
|
+
content: await Deno.open(filePath, { read: true })
|
|
116
95
|
};
|
|
117
96
|
};
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
const
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
"Cache-Control": n.static?.cacheControl || "max-age=3600"
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
return null;
|
|
135
|
-
} catch (e) {
|
|
136
|
-
return console.error(e), new Response(String(e || "Error"), {
|
|
137
|
-
status: 500,
|
|
138
|
-
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
97
|
+
const staticFile = async (request) => {
|
|
98
|
+
try {
|
|
99
|
+
const url = new URL(request.url);
|
|
100
|
+
if (isStaticPath(request.method || "GET", url)) {
|
|
101
|
+
const { filePath, content } = await openStaticFile(url);
|
|
102
|
+
const ext = extname(filePath).replace(/^\./, "");
|
|
103
|
+
return new Response(content.readable, {
|
|
104
|
+
status: 200,
|
|
105
|
+
headers: {
|
|
106
|
+
"content-type": MIME_TYPES[ext] || "text/plain; charset=utf-8",
|
|
107
|
+
"Cache-Control": opts.static?.cacheControl || "max-age=3600"
|
|
108
|
+
}
|
|
139
109
|
});
|
|
140
110
|
}
|
|
111
|
+
return null;
|
|
112
|
+
} catch (e) {
|
|
113
|
+
console.error(e);
|
|
114
|
+
return new Response(String(e || "Error"), {
|
|
115
|
+
status: 500,
|
|
116
|
+
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
117
|
+
});
|
|
141
118
|
}
|
|
142
119
|
};
|
|
120
|
+
return {
|
|
121
|
+
router,
|
|
122
|
+
notFound,
|
|
123
|
+
staticFile
|
|
124
|
+
};
|
|
143
125
|
}
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
E as createQwikRouter
|
|
148
|
-
};
|
|
126
|
+
const createQwikCity = createQwikRouter;
|
|
127
|
+
|
|
128
|
+
export { createQwikCity, createQwikRouter };
|
|
@@ -1,24 +1,32 @@
|
|
|
1
|
-
import { createQwikRouter as
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { createQwikRouter as createQwikRouter$1 } from '@qwik.dev/router/middleware/node';
|
|
2
|
+
|
|
3
|
+
function createQwikRouter(opts) {
|
|
4
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
5
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
6
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
7
|
+
}
|
|
8
|
+
const { staticFile, notFound, router } = createQwikRouter$1({
|
|
9
|
+
render: opts.render,
|
|
10
|
+
manifest: opts.manifest,
|
|
11
|
+
qwikRouterConfig: opts.qwikRouterConfig,
|
|
8
12
|
static: {
|
|
9
13
|
cacheControl: "public, max-age=31557600"
|
|
10
14
|
},
|
|
11
|
-
getOrigin(
|
|
12
|
-
|
|
15
|
+
getOrigin(req) {
|
|
16
|
+
if (process.env.IS_OFFLINE) {
|
|
17
|
+
return `http://${req.headers.host}`;
|
|
18
|
+
}
|
|
19
|
+
return null;
|
|
13
20
|
}
|
|
14
21
|
});
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
22
|
+
const qwikApp = (req, res) => {
|
|
23
|
+
return staticFile(req, res, () => {
|
|
24
|
+
router(req, res, () => notFound(req, res, () => {
|
|
25
|
+
}));
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
return qwikApp;
|
|
19
29
|
}
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
c as createQwikRouter
|
|
24
|
-
};
|
|
30
|
+
const createQwikCity = createQwikRouter;
|
|
31
|
+
|
|
32
|
+
export { createQwikCity, createQwikRouter };
|
|
@@ -1,55 +1,70 @@
|
|
|
1
|
-
import { setServerPlatform
|
|
2
|
-
import { isStaticPath
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { setServerPlatform } from '@qwik.dev/core/server';
|
|
2
|
+
import { isStaticPath, mergeHeadersCookies, requestHandler, getNotFound } from '@qwik.dev/router/middleware/request-handler';
|
|
3
|
+
|
|
4
|
+
function createQwikRouter(opts) {
|
|
5
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
6
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
7
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
8
|
+
}
|
|
9
|
+
if (opts.manifest) {
|
|
10
|
+
setServerPlatform(opts.manifest);
|
|
11
|
+
}
|
|
12
|
+
async function onNetlifyEdgeRequest(request, context) {
|
|
6
13
|
try {
|
|
7
|
-
const
|
|
8
|
-
if (
|
|
9
|
-
return
|
|
10
|
-
|
|
14
|
+
const url = new URL(request.url);
|
|
15
|
+
if (isStaticPath(request.method, url) || url.pathname.startsWith("/.netlify")) {
|
|
16
|
+
return context.next();
|
|
17
|
+
}
|
|
18
|
+
const serverRequestEv = {
|
|
11
19
|
mode: "server",
|
|
12
20
|
locale: void 0,
|
|
13
|
-
url
|
|
21
|
+
url,
|
|
14
22
|
env: Deno.env,
|
|
15
|
-
request
|
|
16
|
-
getWritableStream: (
|
|
17
|
-
const { readable
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
request,
|
|
24
|
+
getWritableStream: (status, headers, cookies, resolve) => {
|
|
25
|
+
const { readable, writable } = new TransformStream();
|
|
26
|
+
const response = new Response(readable, {
|
|
27
|
+
status,
|
|
28
|
+
headers: mergeHeadersCookies(headers, cookies)
|
|
20
29
|
});
|
|
21
|
-
|
|
30
|
+
resolve(response);
|
|
31
|
+
return writable;
|
|
32
|
+
},
|
|
33
|
+
getClientConn: () => {
|
|
34
|
+
return {
|
|
35
|
+
ip: context.ip,
|
|
36
|
+
country: context.geo.country?.code
|
|
37
|
+
};
|
|
22
38
|
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
a && console.error(a);
|
|
39
|
+
platform: context
|
|
40
|
+
};
|
|
41
|
+
const handledResponse = await requestHandler(serverRequestEv, opts);
|
|
42
|
+
if (handledResponse) {
|
|
43
|
+
handledResponse.completion.then((v) => {
|
|
44
|
+
if (v) {
|
|
45
|
+
console.error(v);
|
|
46
|
+
}
|
|
32
47
|
});
|
|
33
|
-
const
|
|
34
|
-
if (
|
|
35
|
-
return
|
|
48
|
+
const response = await handledResponse.response;
|
|
49
|
+
if (response) {
|
|
50
|
+
return response;
|
|
51
|
+
}
|
|
36
52
|
}
|
|
37
|
-
const
|
|
38
|
-
return new Response(
|
|
53
|
+
const notFoundHtml = !request.headers.get("accept")?.includes("text/html") || isStaticPath(request.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
|
|
54
|
+
return new Response(notFoundHtml, {
|
|
39
55
|
status: 404,
|
|
40
|
-
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found":
|
|
56
|
+
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname }
|
|
41
57
|
});
|
|
42
58
|
} catch (e) {
|
|
43
|
-
|
|
59
|
+
console.error(e);
|
|
60
|
+
return new Response(String(e || "Error"), {
|
|
44
61
|
status: 500,
|
|
45
62
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "netlify-edge" }
|
|
46
63
|
});
|
|
47
64
|
}
|
|
48
65
|
}
|
|
49
|
-
return
|
|
66
|
+
return onNetlifyEdgeRequest;
|
|
50
67
|
}
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
R as createQwikRouter
|
|
55
|
-
};
|
|
68
|
+
const createQwikCity = createQwikRouter;
|
|
69
|
+
|
|
70
|
+
export { createQwikCity, createQwikRouter };
|