@qwik.dev/router 2.0.0-beta.10 → 2.0.0-beta.13
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.cjs +61 -5
- package/lib/adapters/azure-swa/vite/index.mjs +26 -201
- package/lib/adapters/bun-server/vite/index.cjs +27 -5
- package/lib/adapters/bun-server/vite/index.mjs +14 -196
- package/lib/adapters/cloud-run/vite/index.cjs +24 -5
- package/lib/adapters/cloud-run/vite/index.mjs +13 -195
- package/lib/adapters/cloudflare-pages/vite/index.cjs +65 -1
- package/lib/adapters/cloudflare-pages/vite/index.mjs +63 -4
- package/lib/adapters/deno-server/vite/index.cjs +39 -5
- package/lib/adapters/deno-server/vite/index.mjs +16 -198
- package/lib/adapters/netlify-edge/vite/index.cjs +88 -6
- package/lib/adapters/netlify-edge/vite/index.mjs +56 -240
- package/lib/adapters/node-server/vite/index.cjs +27 -5
- package/lib/adapters/node-server/vite/index.mjs +14 -196
- package/lib/adapters/shared/vite/index.cjs +303 -2
- package/lib/adapters/shared/vite/index.d.ts +4 -4
- package/lib/adapters/shared/vite/index.mjs +248 -143
- package/lib/adapters/ssg/vite/index.cjs +19 -5
- package/lib/adapters/ssg/vite/index.mjs +11 -193
- package/lib/adapters/vercel-edge/vite/index.cjs +81 -5
- package/lib/adapters/vercel-edge/vite/index.d.ts +1 -1
- package/lib/adapters/vercel-edge/vite/index.mjs +48 -229
- package/lib/chunks/error-handler.cjs +58 -0
- package/lib/chunks/error-handler.mjs +59 -0
- package/lib/chunks/format-error.cjs +136 -0
- package/lib/chunks/format-error.mjs +137 -0
- package/lib/chunks/fs.cjs +274 -0
- package/lib/chunks/fs.mjs +275 -0
- package/lib/chunks/index.cjs +877 -0
- package/lib/chunks/index.mjs +876 -0
- package/lib/chunks/mime-types.cjs +52 -0
- package/lib/chunks/mime-types.mjs +53 -0
- package/lib/chunks/routing.qwik.cjs +452 -0
- package/lib/chunks/routing.qwik.mjs +453 -0
- package/lib/chunks/types.qwik.cjs +24 -0
- package/lib/chunks/types.qwik.mjs +25 -0
- package/lib/index.d.ts +9 -3
- package/lib/index.qwik.cjs +543 -1001
- package/lib/index.qwik.mjs +512 -972
- package/lib/middleware/aws-lambda/index.cjs +52 -1
- package/lib/middleware/aws-lambda/index.mjs +37 -26
- package/lib/middleware/azure-swa/index.cjs +92 -1
- package/lib/middleware/azure-swa/index.mjs +64 -46
- package/lib/middleware/bun/index.cjs +143 -1
- package/lib/middleware/bun/index.mjs +103 -117
- package/lib/middleware/cloudflare-pages/index.cjs +96 -1
- package/lib/middleware/cloudflare-pages/index.mjs +68 -47
- package/lib/middleware/deno/index.cjs +130 -1
- package/lib/middleware/deno/index.mjs +93 -112
- package/lib/middleware/firebase/index.cjs +33 -1
- package/lib/middleware/firebase/index.mjs +25 -16
- package/lib/middleware/netlify-edge/index.cjs +71 -1
- package/lib/middleware/netlify-edge/index.mjs +52 -36
- package/lib/middleware/node/index.cjs +219 -1
- package/lib/middleware/node/index.mjs +178 -165
- package/lib/middleware/request-handler/index.cjs +1488 -18
- package/lib/middleware/request-handler/index.d.ts +20 -2
- package/lib/middleware/request-handler/index.mjs +1225 -873
- package/lib/middleware/vercel-edge/index.cjs +98 -1
- package/lib/middleware/vercel-edge/index.mjs +71 -47
- package/lib/service-worker/index.cjs +5 -0
- package/lib/service-worker/index.mjs +5 -0
- package/lib/ssg/index.cjs +15 -1
- package/lib/ssg/index.mjs +12 -19
- package/lib/vite/index.cjs +2006 -27
- package/lib/vite/index.d.ts +9 -9
- package/lib/vite/index.mjs +1597 -1216
- package/package.json +9 -8
- 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/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/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/cloudflare-pages/vite/index-BIeHg2Cj.cjs +0 -5
- package/lib/adapters/cloudflare-pages/vite/index-C455V8_A.cjs +0 -1
- package/lib/adapters/cloudflare-pages/vite/index-ClHGw5z1.js +0 -6
- package/lib/adapters/cloudflare-pages/vite/index-D3HITboM.js +0 -645
- package/lib/adapters/cloudflare-pages/vite/index-DKcVHRBy.cjs +0 -11
- package/lib/adapters/cloudflare-pages/vite/index-DwovcBp3.js +0 -22
- package/lib/adapters/cloudflare-pages/vite/index-bogwy7wh.js +0 -250
- package/lib/adapters/cloudflare-pages/vite/index-vQuPcef3.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/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/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/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/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/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/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/node.cjs +0 -11
- package/lib/ssg/node.mjs +0 -651
|
@@ -1,148 +1,129 @@
|
|
|
1
|
-
import { setServerPlatform
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
htm: "text/html",
|
|
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
|
+
function createQwikRouter(opts) {
|
|
6
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
7
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
8
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
9
|
+
}
|
|
10
|
+
if (opts.manifest) {
|
|
11
|
+
setServerPlatform(opts.manifest);
|
|
12
|
+
}
|
|
13
|
+
const staticFolder = opts.static?.root ?? join(fromFileUrl(import.meta.url), "..", "..", "dist");
|
|
14
|
+
async function router(request, info) {
|
|
58
15
|
try {
|
|
59
|
-
const
|
|
16
|
+
const url = new URL(request.url);
|
|
17
|
+
const serverRequestEv = {
|
|
60
18
|
mode: "server",
|
|
61
19
|
locale: void 0,
|
|
62
|
-
url
|
|
20
|
+
url,
|
|
63
21
|
// @ts-ignore
|
|
64
22
|
env: Deno.env,
|
|
65
|
-
request
|
|
66
|
-
getWritableStream: (
|
|
67
|
-
const { readable
|
|
68
|
-
|
|
69
|
-
|
|
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)
|
|
70
29
|
});
|
|
71
|
-
|
|
30
|
+
resolve(response);
|
|
31
|
+
return writable;
|
|
72
32
|
},
|
|
73
33
|
platform: {
|
|
74
|
-
ssr:
|
|
34
|
+
ssr: true
|
|
75
35
|
},
|
|
76
|
-
getClientConn: () =>
|
|
77
|
-
|
|
36
|
+
getClientConn: () => {
|
|
37
|
+
return opts.getClientConn ? opts.getClientConn(request, info) : {
|
|
38
|
+
ip: info.remoteAddr.hostname
|
|
39
|
+
};
|
|
78
40
|
}
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
41
|
+
};
|
|
42
|
+
const handledResponse = await requestHandler(serverRequestEv, opts);
|
|
43
|
+
if (handledResponse) {
|
|
44
|
+
handledResponse.completion.then((v) => {
|
|
45
|
+
if (v) {
|
|
46
|
+
console.error(v);
|
|
47
|
+
}
|
|
83
48
|
});
|
|
84
|
-
const
|
|
85
|
-
if (
|
|
86
|
-
return
|
|
49
|
+
const response = await handledResponse.response;
|
|
50
|
+
if (response) {
|
|
51
|
+
return response;
|
|
52
|
+
}
|
|
87
53
|
}
|
|
88
54
|
return null;
|
|
89
|
-
} catch (
|
|
90
|
-
|
|
55
|
+
} catch (e) {
|
|
56
|
+
console.error(e);
|
|
57
|
+
return new Response(String(e || "Error"), {
|
|
91
58
|
status: 500,
|
|
92
59
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
93
60
|
});
|
|
94
61
|
}
|
|
95
62
|
}
|
|
96
|
-
const
|
|
63
|
+
const notFound = async (request) => {
|
|
97
64
|
try {
|
|
98
|
-
const
|
|
99
|
-
|
|
65
|
+
const url = new URL(request.url);
|
|
66
|
+
const notFoundHtml = !request.headers.get("accept")?.includes("text/html") || isStaticPath(request.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
|
|
67
|
+
return new Response(notFoundHtml, {
|
|
100
68
|
status: 404,
|
|
101
|
-
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found":
|
|
69
|
+
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname }
|
|
102
70
|
});
|
|
103
71
|
} catch (e) {
|
|
104
|
-
|
|
72
|
+
console.error(e);
|
|
73
|
+
return new Response(String(e || "Error"), {
|
|
105
74
|
status: 500,
|
|
106
75
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
107
76
|
});
|
|
108
77
|
}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
78
|
+
};
|
|
79
|
+
const openStaticFile = async (url) => {
|
|
80
|
+
const pathname = url.pathname;
|
|
81
|
+
const fileName = pathname.slice(url.pathname.lastIndexOf("/"));
|
|
82
|
+
let filePath;
|
|
83
|
+
if (fileName.includes(".")) {
|
|
84
|
+
filePath = join(staticFolder, pathname);
|
|
85
|
+
} else if (!globalThis.__NO_TRAILING_SLASH__) {
|
|
86
|
+
filePath = join(staticFolder, pathname + "index.html");
|
|
87
|
+
} else {
|
|
88
|
+
filePath = join(staticFolder, pathname, "index.html");
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
filePath,
|
|
114
92
|
// @ts-ignore
|
|
115
|
-
content: await Deno.open(
|
|
93
|
+
content: await Deno.open(filePath, { read: true })
|
|
116
94
|
};
|
|
117
95
|
};
|
|
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" }
|
|
96
|
+
const staticFile = async (request) => {
|
|
97
|
+
try {
|
|
98
|
+
const url = new URL(request.url);
|
|
99
|
+
if (isStaticPath(request.method || "GET", url)) {
|
|
100
|
+
const { filePath, content } = await openStaticFile(url);
|
|
101
|
+
const ext = extname(filePath).replace(/^\./, "");
|
|
102
|
+
return new Response(content.readable, {
|
|
103
|
+
status: 200,
|
|
104
|
+
headers: {
|
|
105
|
+
"content-type": MIME_TYPES[ext] || "text/plain; charset=utf-8",
|
|
106
|
+
"Cache-Control": opts.static?.cacheControl || "max-age=3600"
|
|
107
|
+
}
|
|
139
108
|
});
|
|
140
109
|
}
|
|
110
|
+
return null;
|
|
111
|
+
} catch (e) {
|
|
112
|
+
console.error(e);
|
|
113
|
+
return new Response(String(e || "Error"), {
|
|
114
|
+
status: 500,
|
|
115
|
+
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "deno-server" }
|
|
116
|
+
});
|
|
141
117
|
}
|
|
142
118
|
};
|
|
119
|
+
return {
|
|
120
|
+
router,
|
|
121
|
+
notFound,
|
|
122
|
+
staticFile
|
|
123
|
+
};
|
|
143
124
|
}
|
|
144
|
-
const
|
|
125
|
+
const createQwikCity = createQwikRouter;
|
|
145
126
|
export {
|
|
146
|
-
|
|
147
|
-
|
|
127
|
+
createQwikCity,
|
|
128
|
+
createQwikRouter
|
|
148
129
|
};
|
|
@@ -1 +1,33 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const node = require("@qwik.dev/router/middleware/node");
|
|
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
|
+
const { staticFile, notFound, router } = node.createQwikRouter({
|
|
10
|
+
render: opts.render,
|
|
11
|
+
manifest: opts.manifest,
|
|
12
|
+
qwikRouterConfig: opts.qwikRouterConfig,
|
|
13
|
+
static: {
|
|
14
|
+
cacheControl: "public, max-age=31557600"
|
|
15
|
+
},
|
|
16
|
+
getOrigin(req) {
|
|
17
|
+
if (process.env.IS_OFFLINE) {
|
|
18
|
+
return `http://${req.headers.host}`;
|
|
19
|
+
}
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
const qwikApp = (req, res) => {
|
|
24
|
+
return staticFile(req, res, () => {
|
|
25
|
+
router(req, res, () => notFound(req, res, () => {
|
|
26
|
+
}));
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
return qwikApp;
|
|
30
|
+
}
|
|
31
|
+
const createQwikCity = createQwikRouter;
|
|
32
|
+
exports.createQwikCity = createQwikCity;
|
|
33
|
+
exports.createQwikRouter = createQwikRouter;
|
|
@@ -1,24 +1,33 @@
|
|
|
1
|
-
import { createQwikRouter as
|
|
2
|
-
function
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { createQwikRouter as createQwikRouter$1 } from "@qwik.dev/router/middleware/node";
|
|
2
|
+
function createQwikRouter(opts) {
|
|
3
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
4
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
5
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
6
|
+
}
|
|
7
|
+
const { staticFile, notFound, router } = createQwikRouter$1({
|
|
8
|
+
render: opts.render,
|
|
9
|
+
manifest: opts.manifest,
|
|
10
|
+
qwikRouterConfig: opts.qwikRouterConfig,
|
|
8
11
|
static: {
|
|
9
12
|
cacheControl: "public, max-age=31557600"
|
|
10
13
|
},
|
|
11
|
-
getOrigin(
|
|
12
|
-
|
|
14
|
+
getOrigin(req) {
|
|
15
|
+
if (process.env.IS_OFFLINE) {
|
|
16
|
+
return `http://${req.headers.host}`;
|
|
17
|
+
}
|
|
18
|
+
return null;
|
|
13
19
|
}
|
|
14
20
|
});
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
21
|
+
const qwikApp = (req, res) => {
|
|
22
|
+
return staticFile(req, res, () => {
|
|
23
|
+
router(req, res, () => notFound(req, res, () => {
|
|
24
|
+
}));
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
return qwikApp;
|
|
19
28
|
}
|
|
20
|
-
const
|
|
29
|
+
const createQwikCity = createQwikRouter;
|
|
21
30
|
export {
|
|
22
|
-
|
|
23
|
-
|
|
31
|
+
createQwikCity,
|
|
32
|
+
createQwikRouter
|
|
24
33
|
};
|
|
@@ -1 +1,71 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const server = require("@qwik.dev/core/server");
|
|
4
|
+
const requestHandler = require("@qwik.dev/router/middleware/request-handler");
|
|
5
|
+
function createQwikRouter(opts) {
|
|
6
|
+
if (opts.qwikCityPlan && !opts.qwikRouterConfig) {
|
|
7
|
+
console.warn("qwikCityPlan is deprecated. Simply remove it.");
|
|
8
|
+
opts.qwikRouterConfig = opts.qwikCityPlan;
|
|
9
|
+
}
|
|
10
|
+
if (opts.manifest) {
|
|
11
|
+
server.setServerPlatform(opts.manifest);
|
|
12
|
+
}
|
|
13
|
+
async function onNetlifyEdgeRequest(request, context) {
|
|
14
|
+
try {
|
|
15
|
+
const url = new URL(request.url);
|
|
16
|
+
if (requestHandler.isStaticPath(request.method, url) || url.pathname.startsWith("/.netlify")) {
|
|
17
|
+
return context.next();
|
|
18
|
+
}
|
|
19
|
+
const serverRequestEv = {
|
|
20
|
+
mode: "server",
|
|
21
|
+
locale: void 0,
|
|
22
|
+
url,
|
|
23
|
+
env: Deno.env,
|
|
24
|
+
request,
|
|
25
|
+
getWritableStream: (status, headers, cookies, resolve) => {
|
|
26
|
+
const { readable, writable } = new TransformStream();
|
|
27
|
+
const response = new Response(readable, {
|
|
28
|
+
status,
|
|
29
|
+
headers: requestHandler.mergeHeadersCookies(headers, cookies)
|
|
30
|
+
});
|
|
31
|
+
resolve(response);
|
|
32
|
+
return writable;
|
|
33
|
+
},
|
|
34
|
+
getClientConn: () => {
|
|
35
|
+
return {
|
|
36
|
+
ip: context.ip,
|
|
37
|
+
country: context.geo.country?.code
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
platform: context
|
|
41
|
+
};
|
|
42
|
+
const handledResponse = await requestHandler.requestHandler(serverRequestEv, opts);
|
|
43
|
+
if (handledResponse) {
|
|
44
|
+
handledResponse.completion.then((v) => {
|
|
45
|
+
if (v) {
|
|
46
|
+
console.error(v);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const response = await handledResponse.response;
|
|
50
|
+
if (response) {
|
|
51
|
+
return response;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const notFoundHtml = !request.headers.get("accept")?.includes("text/html") || requestHandler.isStaticPath(request.method || "GET", url) ? "Not Found" : requestHandler.getNotFound(url.pathname);
|
|
55
|
+
return new Response(notFoundHtml, {
|
|
56
|
+
status: 404,
|
|
57
|
+
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname }
|
|
58
|
+
});
|
|
59
|
+
} catch (e) {
|
|
60
|
+
console.error(e);
|
|
61
|
+
return new Response(String(e || "Error"), {
|
|
62
|
+
status: 500,
|
|
63
|
+
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "netlify-edge" }
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return onNetlifyEdgeRequest;
|
|
68
|
+
}
|
|
69
|
+
const createQwikCity = createQwikRouter;
|
|
70
|
+
exports.createQwikCity = createQwikCity;
|
|
71
|
+
exports.createQwikRouter = createQwikRouter;
|
|
@@ -1,55 +1,71 @@
|
|
|
1
|
-
import { setServerPlatform
|
|
2
|
-
import { isStaticPath
|
|
3
|
-
function
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { setServerPlatform } from "@qwik.dev/core/server";
|
|
2
|
+
import { isStaticPath, mergeHeadersCookies, requestHandler, getNotFound } from "@qwik.dev/router/middleware/request-handler";
|
|
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
|
+
if (opts.manifest) {
|
|
9
|
+
setServerPlatform(opts.manifest);
|
|
10
|
+
}
|
|
11
|
+
async function onNetlifyEdgeRequest(request, context) {
|
|
6
12
|
try {
|
|
7
|
-
const
|
|
8
|
-
if (
|
|
9
|
-
return
|
|
10
|
-
|
|
13
|
+
const url = new URL(request.url);
|
|
14
|
+
if (isStaticPath(request.method, url) || url.pathname.startsWith("/.netlify")) {
|
|
15
|
+
return context.next();
|
|
16
|
+
}
|
|
17
|
+
const serverRequestEv = {
|
|
11
18
|
mode: "server",
|
|
12
19
|
locale: void 0,
|
|
13
|
-
url
|
|
20
|
+
url,
|
|
14
21
|
env: Deno.env,
|
|
15
|
-
request
|
|
16
|
-
getWritableStream: (
|
|
17
|
-
const { readable
|
|
18
|
-
|
|
19
|
-
|
|
22
|
+
request,
|
|
23
|
+
getWritableStream: (status, headers, cookies, resolve) => {
|
|
24
|
+
const { readable, writable } = new TransformStream();
|
|
25
|
+
const response = new Response(readable, {
|
|
26
|
+
status,
|
|
27
|
+
headers: mergeHeadersCookies(headers, cookies)
|
|
20
28
|
});
|
|
21
|
-
|
|
29
|
+
resolve(response);
|
|
30
|
+
return writable;
|
|
31
|
+
},
|
|
32
|
+
getClientConn: () => {
|
|
33
|
+
return {
|
|
34
|
+
ip: context.ip,
|
|
35
|
+
country: context.geo.country?.code
|
|
36
|
+
};
|
|
22
37
|
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
a && console.error(a);
|
|
38
|
+
platform: context
|
|
39
|
+
};
|
|
40
|
+
const handledResponse = await requestHandler(serverRequestEv, opts);
|
|
41
|
+
if (handledResponse) {
|
|
42
|
+
handledResponse.completion.then((v) => {
|
|
43
|
+
if (v) {
|
|
44
|
+
console.error(v);
|
|
45
|
+
}
|
|
32
46
|
});
|
|
33
|
-
const
|
|
34
|
-
if (
|
|
35
|
-
return
|
|
47
|
+
const response = await handledResponse.response;
|
|
48
|
+
if (response) {
|
|
49
|
+
return response;
|
|
50
|
+
}
|
|
36
51
|
}
|
|
37
|
-
const
|
|
38
|
-
return new Response(
|
|
52
|
+
const notFoundHtml = !request.headers.get("accept")?.includes("text/html") || isStaticPath(request.method || "GET", url) ? "Not Found" : getNotFound(url.pathname);
|
|
53
|
+
return new Response(notFoundHtml, {
|
|
39
54
|
status: 404,
|
|
40
|
-
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found":
|
|
55
|
+
headers: { "Content-Type": "text/html; charset=utf-8", "X-Not-Found": url.pathname }
|
|
41
56
|
});
|
|
42
57
|
} catch (e) {
|
|
43
|
-
|
|
58
|
+
console.error(e);
|
|
59
|
+
return new Response(String(e || "Error"), {
|
|
44
60
|
status: 500,
|
|
45
61
|
headers: { "Content-Type": "text/plain; charset=utf-8", "X-Error": "netlify-edge" }
|
|
46
62
|
});
|
|
47
63
|
}
|
|
48
64
|
}
|
|
49
|
-
return
|
|
65
|
+
return onNetlifyEdgeRequest;
|
|
50
66
|
}
|
|
51
|
-
const
|
|
67
|
+
const createQwikCity = createQwikRouter;
|
|
52
68
|
export {
|
|
53
|
-
|
|
54
|
-
|
|
69
|
+
createQwikCity,
|
|
70
|
+
createQwikRouter
|
|
55
71
|
};
|