@qwik.dev/router 2.0.0-alpha.9 → 2.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/adapters/static/vite.d.ts +1 -1
- package/lib/adapters/azure-swa/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/azure-swa/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/azure-swa/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/azure-swa/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/azure-swa/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/azure-swa/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/azure-swa/vite/index.cjs +5 -96
- package/lib/adapters/azure-swa/vite/index.d.ts +13 -13
- package/lib/adapters/azure-swa/vite/index.mjs +201 -26
- package/lib/adapters/bun-server/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/bun-server/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/bun-server/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/bun-server/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/bun-server/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/bun-server/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/bun-server/vite/index.cjs +5 -50
- package/lib/adapters/bun-server/vite/index.d.ts +14 -14
- package/lib/adapters/bun-server/vite/index.mjs +196 -12
- package/lib/adapters/cloud-run/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/cloud-run/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/cloud-run/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/cloud-run/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/cloud-run/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/cloud-run/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/cloud-run/vite/index.cjs +5 -47
- package/lib/adapters/cloud-run/vite/index.d.ts +13 -13
- package/lib/adapters/cloud-run/vite/index.mjs +195 -11
- package/lib/adapters/cloudflare-pages/vite/index-BIeHg2Cj.cjs +5 -0
- package/lib/adapters/cloudflare-pages/vite/index-C455V8_A.cjs +1 -0
- package/lib/adapters/cloudflare-pages/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/cloudflare-pages/vite/index-D3HITboM.js +645 -0
- package/lib/adapters/cloudflare-pages/vite/index-DKcVHRBy.cjs +11 -0
- package/lib/adapters/cloudflare-pages/vite/index-DwovcBp3.js +22 -0
- package/lib/adapters/cloudflare-pages/vite/index-bogwy7wh.js +250 -0
- package/lib/adapters/cloudflare-pages/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/cloudflare-pages/vite/index.cjs +1 -115
- package/lib/adapters/cloudflare-pages/vite/index.d.ts +27 -27
- package/lib/adapters/cloudflare-pages/vite/index.mjs +4 -78
- package/lib/adapters/deno-server/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/deno-server/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/deno-server/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/deno-server/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/deno-server/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/deno-server/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/deno-server/vite/index.cjs +5 -62
- package/lib/adapters/deno-server/vite/index.d.ts +14 -14
- package/lib/adapters/deno-server/vite/index.mjs +198 -14
- package/lib/adapters/netlify-edge/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/netlify-edge/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/netlify-edge/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/netlify-edge/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/netlify-edge/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/netlify-edge/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/netlify-edge/vite/index.cjs +6 -129
- package/lib/adapters/netlify-edge/vite/index.d.ts +44 -44
- package/lib/adapters/netlify-edge/vite/index.mjs +240 -60
- package/lib/adapters/node-server/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/node-server/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/node-server/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/node-server/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/node-server/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/node-server/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/node-server/vite/index.cjs +5 -50
- package/lib/adapters/node-server/vite/index.d.ts +14 -14
- package/lib/adapters/node-server/vite/index.mjs +196 -12
- package/lib/adapters/shared/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/shared/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/shared/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/shared/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/shared/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/shared/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/shared/vite/index.cjs +5 -371
- package/lib/adapters/shared/vite/index.d.ts +108 -114
- package/lib/adapters/shared/vite/index.mjs +158 -288
- package/lib/adapters/ssg/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/ssg/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/ssg/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/ssg/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/ssg/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/ssg/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/ssg/vite/index.cjs +5 -0
- package/lib/adapters/ssg/vite/index.d.ts +13 -0
- package/lib/adapters/ssg/vite/index.mjs +201 -0
- package/lib/adapters/vercel-edge/vite/index-BqUeglYs.cjs +1 -0
- package/lib/adapters/vercel-edge/vite/index-CBIchDYq.js +651 -0
- package/lib/adapters/vercel-edge/vite/index-ClHGw5z1.js +6 -0
- package/lib/adapters/vercel-edge/vite/index-CrwlB95_.js +22 -0
- package/lib/adapters/vercel-edge/vite/index-DTIOTwZo.cjs +11 -0
- package/lib/adapters/vercel-edge/vite/index-vQuPcef3.cjs +1 -0
- package/lib/adapters/vercel-edge/vite/index.cjs +5 -118
- package/lib/adapters/vercel-edge/vite/index.d.ts +45 -45
- package/lib/adapters/vercel-edge/vite/index.mjs +230 -51
- package/lib/index.d.ts +1000 -810
- package/lib/index.qwik.cjs +438 -203
- package/lib/index.qwik.mjs +440 -205
- package/lib/middleware/aws-lambda/index.cjs +1 -0
- package/lib/middleware/aws-lambda/index.d.ts +49 -48
- package/lib/middleware/aws-lambda/index.mjs +27 -41
- package/lib/middleware/azure-swa/index.cjs +1 -0
- package/lib/middleware/azure-swa/index.d.ts +28 -28
- package/lib/middleware/azure-swa/index.mjs +46 -269
- package/lib/middleware/bun/index.cjs +1 -0
- package/lib/middleware/bun/index.d.ts +35 -35
- package/lib/middleware/bun/index.mjs +68 -120
- package/lib/middleware/cloudflare-pages/index.cjs +1 -0
- package/lib/middleware/cloudflare-pages/index.d.ts +35 -35
- package/lib/middleware/cloudflare-pages/index.mjs +48 -80
- package/lib/middleware/deno/index.cjs +1 -0
- package/lib/middleware/deno/index.d.ts +47 -47
- package/lib/middleware/deno/index.mjs +63 -110
- package/lib/middleware/firebase/index.cjs +1 -0
- package/lib/middleware/firebase/index.d.ts +26 -26
- package/lib/middleware/firebase/index.mjs +16 -28
- package/lib/middleware/netlify-edge/index.cjs +1 -0
- package/lib/middleware/netlify-edge/index.d.ts +27 -27
- package/lib/middleware/netlify-edge/index.mjs +36 -64
- package/lib/middleware/node/index.cjs +1 -314
- package/lib/middleware/node/index.d.ts +64 -64
- package/lib/middleware/node/index.mjs +116 -198
- package/lib/middleware/request-handler/index.cjs +11 -1538
- package/lib/middleware/request-handler/index.d.ts +711 -676
- package/lib/middleware/request-handler/index.mjs +895 -1281
- package/lib/middleware/vercel-edge/index.cjs +1 -0
- package/lib/middleware/vercel-edge/index.d.ts +26 -26
- package/lib/middleware/vercel-edge/index.mjs +47 -82
- package/lib/modules.d.ts +4 -12
- package/lib/service-worker.cjs +1 -267
- package/lib/service-worker.d.ts +15 -4
- package/lib/service-worker.mjs +3 -263
- package/lib/ssg/deno.cjs +1 -0
- package/lib/ssg/deno.mjs +6 -0
- package/lib/ssg/index-CBIchDYq.js +651 -0
- package/lib/ssg/index-ClHGw5z1.js +6 -0
- package/lib/ssg/index-DTIOTwZo.cjs +11 -0
- package/lib/ssg/index-vQuPcef3.cjs +1 -0
- package/lib/ssg/index.cjs +1 -0
- package/lib/{static → ssg}/index.d.ts +96 -96
- package/lib/ssg/index.mjs +22 -0
- package/lib/ssg/node.cjs +11 -0
- package/lib/ssg/node.mjs +651 -0
- package/lib/vite/index.cjs +29 -27484
- package/lib/vite/index.d.ts +170 -154
- package/lib/vite/index.mjs +1422 -27288
- package/modules.d.ts +4 -12
- package/package.json +51 -40
- package/ssg.d.ts +2 -0
- package/static.d.ts +1 -1
- package/lib/adapters/static/vite/index.cjs +0 -361
- package/lib/adapters/static/vite/index.d.ts +0 -10
- package/lib/adapters/static/vite/index.mjs +0 -324
- package/lib/static/deno.mjs +0 -8
- package/lib/static/index.cjs +0 -67
- package/lib/static/index.mjs +0 -48
- package/lib/static/node.cjs +0 -1124
- package/lib/static/node.mjs +0 -1086
- package/middleware/request-handler/generated/not-found-paths.ts +0 -7
- package/middleware/request-handler/generated/static-paths.ts +0 -35
|
@@ -1,15 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import { getNotFound } from "@qwik
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
import { basename, extname, join } from "node:path";
|
|
9
|
-
import { fileURLToPath } from "node:url";
|
|
10
|
-
|
|
11
|
-
// packages/qwik-router/src/middleware/request-handler/mime-types.ts
|
|
12
|
-
var MIME_TYPES = {
|
|
1
|
+
import { setServerPlatform as R } from "@qwik.dev/core/server";
|
|
2
|
+
import { requestHandler as b, isStaticPath as x, getNotFound as C } from "@qwik.dev/router/middleware/request-handler";
|
|
3
|
+
import { createReadStream as k } from "node:fs";
|
|
4
|
+
import { join as v, basename as S, extname as T } from "node:path";
|
|
5
|
+
import { fileURLToPath as j } from "node:url";
|
|
6
|
+
import { Http2ServerRequest as O } from "node:http2";
|
|
7
|
+
const _ = {
|
|
13
8
|
"3gp": "video/3gpp",
|
|
14
9
|
"3gpp": "video/3gpp",
|
|
15
10
|
asf: "video/x-ms-asf",
|
|
@@ -59,229 +54,152 @@ var MIME_TYPES = {
|
|
|
59
54
|
xml: "text/xml",
|
|
60
55
|
zip: "application/zip"
|
|
61
56
|
};
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
import { Http2ServerRequest } from "node:http2";
|
|
65
|
-
function computeOrigin(req, opts) {
|
|
66
|
-
var _a;
|
|
67
|
-
return ((_a = opts == null ? void 0 : opts.getOrigin) == null ? void 0 : _a.call(opts, req)) ?? (opts == null ? void 0 : opts.origin) ?? process.env.ORIGIN ?? fallbackOrigin(req);
|
|
57
|
+
function w(e, t) {
|
|
58
|
+
return t?.getOrigin?.(e) ?? t?.origin ?? process.env.ORIGIN ?? A(e);
|
|
68
59
|
}
|
|
69
|
-
function
|
|
70
|
-
const { PROTOCOL_HEADER, HOST_HEADER } = process.env;
|
|
71
|
-
|
|
72
|
-
const protocol = PROTOCOL_HEADER && headers[PROTOCOL_HEADER] || (req.socket.encrypted || req.connection.encrypted ? "https" : "http");
|
|
73
|
-
const hostHeader = HOST_HEADER ?? (req instanceof Http2ServerRequest ? ":authority" : "host");
|
|
74
|
-
const host = headers[hostHeader];
|
|
75
|
-
return `${protocol}://${host}`;
|
|
60
|
+
function A(e) {
|
|
61
|
+
const { PROTOCOL_HEADER: t, HOST_HEADER: n } = process.env, u = e.headers, h = t && u[t] || (e.socket.encrypted || e.connection.encrypted ? "https" : "http"), o = n ?? (e instanceof O ? ":authority" : "host"), r = u[o];
|
|
62
|
+
return `${h}://${r}`;
|
|
76
63
|
}
|
|
77
|
-
function
|
|
78
|
-
return
|
|
64
|
+
function y(e, t) {
|
|
65
|
+
return F(e.originalUrl || e.url || "/", t);
|
|
79
66
|
}
|
|
80
|
-
function
|
|
81
|
-
|
|
82
|
-
return ignoredErrors.some((ignored) => message.includes(ignored));
|
|
67
|
+
function P(e = "") {
|
|
68
|
+
return ["The stream has been destroyed", "write after end"].some((n) => e.includes(n));
|
|
83
69
|
}
|
|
84
|
-
|
|
85
|
-
function
|
|
86
|
-
const
|
|
87
|
-
return new URL(
|
|
70
|
+
const H = /^:(method|scheme|authority|path)$/i;
|
|
71
|
+
function F(e, t) {
|
|
72
|
+
const n = /\/\/|\\\\/g;
|
|
73
|
+
return new URL(e.replace(n, "/"), t);
|
|
88
74
|
}
|
|
89
|
-
async function
|
|
90
|
-
const
|
|
91
|
-
const nodeRequestHeaders = req.headers;
|
|
75
|
+
async function L(e, t, n, u, h) {
|
|
76
|
+
const o = new Headers(), r = t.headers;
|
|
92
77
|
try {
|
|
93
|
-
for (const [
|
|
94
|
-
if (
|
|
95
|
-
|
|
78
|
+
for (const [a, l] of Object.entries(r))
|
|
79
|
+
if (!H.test(a)) {
|
|
80
|
+
if (typeof l == "string")
|
|
81
|
+
o.set(a, l);
|
|
82
|
+
else if (Array.isArray(l))
|
|
83
|
+
for (const f of l)
|
|
84
|
+
o.append(a, f);
|
|
96
85
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
} else if (Array.isArray(value)) {
|
|
100
|
-
for (const v of value) {
|
|
101
|
-
requestHeaders.append(key, v);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
} catch (err) {
|
|
106
|
-
console.error(err);
|
|
86
|
+
} catch (a) {
|
|
87
|
+
console.error(a);
|
|
107
88
|
}
|
|
108
|
-
const
|
|
109
|
-
for await (const
|
|
110
|
-
yield
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
method: req.method,
|
|
117
|
-
headers: requestHeaders,
|
|
118
|
-
body,
|
|
119
|
-
signal: controller.signal,
|
|
89
|
+
const m = async function* () {
|
|
90
|
+
for await (const a of t)
|
|
91
|
+
yield a;
|
|
92
|
+
}, i = t.method === "HEAD" || t.method === "GET" ? void 0 : m(), c = new AbortController(), s = {
|
|
93
|
+
method: t.method,
|
|
94
|
+
headers: o,
|
|
95
|
+
body: i,
|
|
96
|
+
signal: c.signal,
|
|
120
97
|
duplex: "half"
|
|
121
98
|
};
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
})
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
request: new Request(url.href, options),
|
|
99
|
+
return n.on("close", () => {
|
|
100
|
+
c.abort();
|
|
101
|
+
}), {
|
|
102
|
+
mode: u,
|
|
103
|
+
url: e,
|
|
104
|
+
request: new Request(e.href, s),
|
|
129
105
|
env: {
|
|
130
|
-
get(
|
|
131
|
-
return process.env[
|
|
106
|
+
get(a) {
|
|
107
|
+
return process.env[a];
|
|
132
108
|
}
|
|
133
109
|
},
|
|
134
|
-
getWritableStream: (
|
|
135
|
-
|
|
110
|
+
getWritableStream: (a, l, f) => {
|
|
111
|
+
n.statusCode = a;
|
|
136
112
|
try {
|
|
137
|
-
for (const [
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
const cookieHeaders = cookies.headers();
|
|
144
|
-
if (cookieHeaders.length > 0) {
|
|
145
|
-
res.setHeader("Set-Cookie", cookieHeaders);
|
|
146
|
-
}
|
|
147
|
-
} catch (err) {
|
|
148
|
-
console.error(err);
|
|
113
|
+
for (const [g, E] of l)
|
|
114
|
+
H.test(g) || n.setHeader(g, E);
|
|
115
|
+
const p = f.headers();
|
|
116
|
+
p.length > 0 && n.setHeader("Set-Cookie", p);
|
|
117
|
+
} catch (p) {
|
|
118
|
+
console.error(p);
|
|
149
119
|
}
|
|
150
120
|
return new WritableStream({
|
|
151
|
-
write(
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
res.write(chunk, (error) => {
|
|
156
|
-
if (error && !isIgnoredError(error.message)) {
|
|
157
|
-
console.error(error);
|
|
158
|
-
}
|
|
121
|
+
write(p) {
|
|
122
|
+
n.closed || n.destroyed || n.write(p, (g) => {
|
|
123
|
+
g && !P(g.message) && console.error(g);
|
|
159
124
|
});
|
|
160
125
|
},
|
|
161
126
|
close() {
|
|
162
|
-
|
|
127
|
+
n.end();
|
|
163
128
|
}
|
|
164
129
|
});
|
|
165
130
|
},
|
|
166
|
-
getClientConn: () => {
|
|
167
|
-
|
|
168
|
-
ip: req.socket.remoteAddress
|
|
169
|
-
};
|
|
131
|
+
getClientConn: () => h ? h(t) : {
|
|
132
|
+
ip: t.socket.remoteAddress
|
|
170
133
|
},
|
|
171
134
|
platform: {
|
|
172
|
-
ssr:
|
|
173
|
-
incomingMessage:
|
|
135
|
+
ssr: !0,
|
|
136
|
+
incomingMessage: t,
|
|
174
137
|
node: process.versions.node
|
|
175
138
|
// Weirdly needed to make typecheck of insights happy
|
|
176
139
|
},
|
|
177
140
|
locale: void 0
|
|
178
141
|
};
|
|
179
|
-
return serverRequestEv;
|
|
180
142
|
}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
const router = async (req, res, next) => {
|
|
201
|
-
try {
|
|
202
|
-
const origin = computeOrigin(req, opts);
|
|
203
|
-
const serverRequestEv = await fromNodeHttp(
|
|
204
|
-
getUrl(req, origin),
|
|
205
|
-
req,
|
|
206
|
-
res,
|
|
207
|
-
"server",
|
|
208
|
-
opts.getClientConn
|
|
209
|
-
);
|
|
210
|
-
const handled = await requestHandler(serverRequestEv, opts, qwikSerializer);
|
|
211
|
-
if (handled) {
|
|
212
|
-
const err = await handled.completion;
|
|
213
|
-
if (err) {
|
|
214
|
-
throw err;
|
|
215
|
-
}
|
|
216
|
-
if (handled.requestEv.headersSent) {
|
|
217
|
-
return;
|
|
143
|
+
function N(e) {
|
|
144
|
+
e.qwikCityPlan && !e.qwikRouterConfig && (console.warn("qwikCityPlan is deprecated. Simply remove it."), e.qwikRouterConfig = e.qwikCityPlan), e.manifest && R(e.manifest);
|
|
145
|
+
const t = e.static?.root ?? v(j(import.meta.url), "..", "..", "dist");
|
|
146
|
+
return {
|
|
147
|
+
router: async (o, r, m) => {
|
|
148
|
+
try {
|
|
149
|
+
const i = w(o, e), c = await L(
|
|
150
|
+
y(o, i),
|
|
151
|
+
o,
|
|
152
|
+
r,
|
|
153
|
+
"server",
|
|
154
|
+
e.getClientConn
|
|
155
|
+
), s = await b(c, e);
|
|
156
|
+
if (s) {
|
|
157
|
+
const d = await s.completion;
|
|
158
|
+
if (d)
|
|
159
|
+
throw d;
|
|
160
|
+
if (s.requestEv.headersSent)
|
|
161
|
+
return;
|
|
218
162
|
}
|
|
163
|
+
m();
|
|
164
|
+
} catch (i) {
|
|
165
|
+
console.error(i), m(i);
|
|
219
166
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
const origin = computeOrigin(req, opts);
|
|
230
|
-
const url = getUrl(req, origin);
|
|
231
|
-
const notFoundHtml = isStaticPath(req.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
|
|
232
|
-
res.writeHead(404, {
|
|
233
|
-
"Content-Type": "text/html; charset=utf-8",
|
|
234
|
-
"X-Not-Found": url.pathname
|
|
235
|
-
});
|
|
236
|
-
res.end(notFoundHtml);
|
|
237
|
-
}
|
|
238
|
-
} catch (e) {
|
|
239
|
-
console.error(e);
|
|
240
|
-
next(e);
|
|
241
|
-
}
|
|
242
|
-
};
|
|
243
|
-
const staticFile = async (req, res, next) => {
|
|
244
|
-
var _a2;
|
|
245
|
-
try {
|
|
246
|
-
const origin = computeOrigin(req, opts);
|
|
247
|
-
const url = getUrl(req, origin);
|
|
248
|
-
if (isStaticPath(req.method || "GET", url)) {
|
|
249
|
-
const pathname = url.pathname;
|
|
250
|
-
let filePath;
|
|
251
|
-
if (basename(pathname).includes(".")) {
|
|
252
|
-
filePath = join(staticFolder, pathname);
|
|
253
|
-
} else if (opts.qwikRouterConfig.trailingSlash) {
|
|
254
|
-
filePath = join(staticFolder, pathname + "index.html");
|
|
255
|
-
} else {
|
|
256
|
-
filePath = join(staticFolder, pathname, "index.html");
|
|
257
|
-
}
|
|
258
|
-
const ext = extname(filePath).replace(/^\./, "");
|
|
259
|
-
const stream = createReadStream(filePath);
|
|
260
|
-
stream.on("error", next);
|
|
261
|
-
const contentType = MIME_TYPES[ext];
|
|
262
|
-
if (contentType) {
|
|
263
|
-
res.setHeader("Content-Type", contentType);
|
|
167
|
+
},
|
|
168
|
+
notFound: async (o, r, m) => {
|
|
169
|
+
try {
|
|
170
|
+
if (!r.headersSent) {
|
|
171
|
+
const i = w(o, e), c = y(o, i), s = !o.headers.accept?.includes("text/html") || x(o.method || "GET", c) ? "Not Found" : C(c.pathname);
|
|
172
|
+
r.writeHead(404, {
|
|
173
|
+
"Content-Type": "text/html; charset=utf-8",
|
|
174
|
+
"X-Not-Found": c.pathname
|
|
175
|
+
}), r.end(s);
|
|
264
176
|
}
|
|
265
|
-
|
|
266
|
-
|
|
177
|
+
} catch (i) {
|
|
178
|
+
console.error(i), m(i);
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
staticFile: async (o, r, m) => {
|
|
182
|
+
try {
|
|
183
|
+
const i = w(o, e), c = y(o, i);
|
|
184
|
+
if (x(o.method || "GET", c)) {
|
|
185
|
+
const s = c.pathname;
|
|
186
|
+
let d;
|
|
187
|
+
S(s).includes(".") ? d = v(t, s) : globalThis.__NO_TRAILING_SLASH__ ? d = v(t, s, "index.html") : d = v(t, s + "index.html");
|
|
188
|
+
const a = T(d).replace(/^\./, ""), l = k(d);
|
|
189
|
+
l.on("error", m);
|
|
190
|
+
const f = _[a];
|
|
191
|
+
f && r.setHeader("Content-Type", f), e.static?.cacheControl && r.setHeader("Cache-Control", e.static.cacheControl), l.pipe(r);
|
|
192
|
+
return;
|
|
267
193
|
}
|
|
268
|
-
|
|
269
|
-
|
|
194
|
+
return m();
|
|
195
|
+
} catch (i) {
|
|
196
|
+
console.error(i), m(i);
|
|
270
197
|
}
|
|
271
|
-
return next();
|
|
272
|
-
} catch (e) {
|
|
273
|
-
console.error(e);
|
|
274
|
-
next(e);
|
|
275
198
|
}
|
|
276
199
|
};
|
|
277
|
-
return {
|
|
278
|
-
router,
|
|
279
|
-
notFound,
|
|
280
|
-
staticFile
|
|
281
|
-
};
|
|
282
200
|
}
|
|
283
|
-
|
|
201
|
+
const $ = N;
|
|
284
202
|
export {
|
|
285
|
-
createQwikCity,
|
|
286
|
-
createQwikRouter
|
|
203
|
+
$ as createQwikCity,
|
|
204
|
+
N as createQwikRouter
|
|
287
205
|
};
|