one 1.1.483 → 1.1.484
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/dist/cjs/cli/build.cjs +5 -41
- package/dist/cjs/cli/build.js +4 -44
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js +4 -42
- package/dist/cjs/cli/build.native.js.map +2 -2
- package/dist/cjs/server/createRoutesManifest.js.map +1 -1
- package/dist/cjs/server/createRoutesManifest.native.js.map +1 -1
- package/dist/cjs/server/getServerManifest.cjs +15 -7
- package/dist/cjs/server/getServerManifest.js +17 -8
- package/dist/cjs/server/getServerManifest.js.map +1 -1
- package/dist/cjs/server/getServerManifest.native.js +8 -5
- package/dist/cjs/server/getServerManifest.native.js.map +2 -2
- package/dist/cjs/utils/getPathnameFromFilePath.cjs +76 -0
- package/dist/cjs/utils/getPathnameFromFilePath.js +70 -0
- package/dist/cjs/utils/getPathnameFromFilePath.js.map +6 -0
- package/dist/cjs/utils/getPathnameFromFilePath.native.js +73 -0
- package/dist/cjs/utils/getPathnameFromFilePath.native.js.map +6 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.cjs +38 -8
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js +48 -17
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +50 -7
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +2 -2
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.cjs +9 -6
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.js +7 -6
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.js.map +1 -1
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.native.js +4 -9
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.native.js.map +2 -2
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.cjs +54 -9
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js +83 -15
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js.map +2 -2
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +73 -9
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +2 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.cjs +9 -6
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js +8 -6
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +8 -6
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +2 -2
- package/dist/cjs/vercel/build/getPathFromRoute.cjs +31 -0
- package/dist/cjs/vercel/build/getPathFromRoute.js +24 -0
- package/dist/cjs/vercel/build/getPathFromRoute.js.map +6 -0
- package/dist/cjs/vercel/build/getPathFromRoute.native.js +31 -0
- package/dist/cjs/vercel/build/getPathFromRoute.native.js.map +6 -0
- package/dist/esm/cli/build.js +4 -43
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs +4 -40
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +4 -43
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/server/createRoutesManifest.js.map +1 -1
- package/dist/esm/server/createRoutesManifest.mjs.map +1 -1
- package/dist/esm/server/createRoutesManifest.native.js.map +1 -1
- package/dist/esm/server/getServerManifest.js +17 -8
- package/dist/esm/server/getServerManifest.js.map +1 -1
- package/dist/esm/server/getServerManifest.mjs +15 -7
- package/dist/esm/server/getServerManifest.mjs.map +1 -1
- package/dist/esm/server/getServerManifest.native.js +8 -4
- package/dist/esm/server/getServerManifest.native.js.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.js +46 -0
- package/dist/esm/utils/getPathnameFromFilePath.js.map +6 -0
- package/dist/esm/utils/getPathnameFromFilePath.mjs +42 -0
- package/dist/esm/utils/getPathnameFromFilePath.mjs.map +1 -0
- package/dist/esm/utils/getPathnameFromFilePath.native.js +45 -0
- package/dist/esm/utils/getPathnameFromFilePath.native.js.map +1 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js +49 -18
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs +38 -8
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js +45 -8
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/esm/vercel/build/config/vc-build-output-config-base.js +7 -6
- package/dist/esm/vercel/build/config/vc-build-output-config-base.js.map +1 -1
- package/dist/esm/vercel/build/config/vc-build-output-config-base.mjs +9 -6
- package/dist/esm/vercel/build/config/vc-build-output-config-base.mjs.map +1 -1
- package/dist/esm/vercel/build/config/vc-build-output-config-base.native.js +3 -6
- package/dist/esm/vercel/build/config/vc-build-output-config-base.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js +88 -13
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs +53 -8
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js +52 -8
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js +8 -5
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs +8 -5
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js +8 -5
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.js +8 -0
- package/dist/esm/vercel/build/getPathFromRoute.js.map +6 -0
- package/dist/esm/vercel/build/getPathFromRoute.mjs +8 -0
- package/dist/esm/vercel/build/getPathFromRoute.mjs.map +1 -0
- package/dist/esm/vercel/build/getPathFromRoute.native.js +8 -0
- package/dist/esm/vercel/build/getPathFromRoute.native.js.map +1 -0
- package/package.json +9 -8
- package/src/cli/build.ts +3 -57
- package/src/server/createRoutesManifest.ts +1 -0
- package/src/server/getServerManifest.ts +12 -3
- package/src/utils/getPathnameFromFilePath.ts +62 -0
- package/src/vercel/build/buildVercelOutputDirectory.ts +55 -20
- package/src/vercel/build/config/vc-build-output-config-base.ts +6 -5
- package/src/vercel/build/generate/createApiServerlessFunction.ts +138 -12
- package/src/vercel/build/generate/createSsrServerlessFunction.ts +9 -6
- package/src/vercel/build/getPathFromRoute.ts +8 -0
- package/src/vite/types.ts +1 -0
- package/types/cli/build.d.ts.map +1 -1
- package/types/server/createRoutesManifest.d.ts +1 -0
- package/types/server/createRoutesManifest.d.ts.map +1 -1
- package/types/server/getServerManifest.d.ts +1 -0
- package/types/server/getServerManifest.d.ts.map +1 -1
- package/types/utils/getPathnameFromFilePath.d.ts +4 -0
- package/types/utils/getPathnameFromFilePath.d.ts.map +1 -0
- package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -1
- package/types/vercel/build/config/vc-build-output-config-base.d.ts +2 -5
- package/types/vercel/build/config/vc-build-output-config-base.d.ts.map +1 -1
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts +2 -1
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts.map +1 -1
- package/types/vercel/build/generate/createSsrServerlessFunction.d.ts +2 -2
- package/types/vercel/build/generate/createSsrServerlessFunction.d.ts.map +1 -1
- package/types/vercel/build/getPathFromRoute.d.ts +3 -0
- package/types/vercel/build/getPathFromRoute.d.ts.map +1 -0
- package/types/vite/types.d.ts +1 -0
- package/types/vite/types.d.ts.map +1 -1
@@ -8,31 +8,40 @@ function getServerManifest(route) {
|
|
8
8
|
if (route2.children.length)
|
9
9
|
return route2.children.flatMap((child) => getFlatNodes(child, [...layouts || [], route2]));
|
10
10
|
let key;
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
11
|
+
if (route2.type === "api")
|
12
|
+
key = getContextKey(route2.contextKey).replace(/\/index$/, "") || "/";
|
13
|
+
else {
|
14
|
+
const parentSegments = layouts?.flatMap((route3) => {
|
15
|
+
const key2 = getContextKey(route3.route).replace(/\/index$/, "") || "/";
|
16
|
+
return key2 === "/" || key2.startsWith("/(") ? [] : [key2];
|
17
|
+
});
|
18
|
+
key = (parentSegments ? parentSegments.join("") : "") + getContextKey(route2.route).replace(/\/index$/, "") || "/";
|
19
|
+
}
|
20
|
+
return [[key, { ...route2, layouts }]];
|
15
21
|
}
|
16
22
|
const flat = getFlatNodes(route).sort(([, a], [, b]) => sortRoutes(b, a)).reverse(), pathToRoute = {};
|
17
23
|
for (const [path, route2] of flat)
|
18
24
|
pathToRoute[path] && (console.warn(`
|
19
25
|
[one] \u274C Duplicate routes error`), console.warn(" Multiple routes at the same path! One route will always win over the other."), console.warn(` path: ${path}`), console.warn(` first route: ${pathToRoute[path].contextKey}`), console.warn(` second route: ${route2.contextKey}
|
20
26
|
`)), pathToRoute[path] = route2;
|
21
|
-
const apiRoutes = [], middlewareRoutes = [], pageRoutes = [], addedMiddlewares = {};
|
27
|
+
const apiRoutes = [], middlewareRoutes = [], pageRoutes = [], allRoutes = [], addedMiddlewares = {};
|
22
28
|
for (const [path, node] of flat) {
|
23
29
|
if (node.type === "api") {
|
24
|
-
|
30
|
+
const route3 = getGeneratedNamedRouteRegex(path, node);
|
31
|
+
apiRoutes.push(route3), allRoutes.push(route3);
|
25
32
|
continue;
|
26
33
|
}
|
27
34
|
if (node.middlewares?.length)
|
28
35
|
for (const middleware of node.middlewares)
|
29
36
|
addedMiddlewares[middleware.contextKey] || (addedMiddlewares[middleware.contextKey] = !0, middlewareRoutes.push(getGeneratedNamedRouteRegex(path, middleware)));
|
30
|
-
|
37
|
+
const route2 = getGeneratedNamedRouteRegex(path, node);
|
38
|
+
pageRoutes.push(route2), allRoutes.push(route2);
|
31
39
|
}
|
32
40
|
return {
|
33
41
|
apiRoutes,
|
34
42
|
middlewareRoutes,
|
35
|
-
pageRoutes
|
43
|
+
pageRoutes,
|
44
|
+
allRoutes
|
36
45
|
};
|
37
46
|
}
|
38
47
|
function getGeneratedNamedRouteRegex(normalizedRoute, node) {
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/server/getServerManifest.ts"],
|
4
|
-
"mappings": "AAWA,SAAS,eAAe,sBAAsB;AAC9C,SAAS,kBAAkB;
|
4
|
+
"mappings": "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",
|
5
5
|
"names": ["route", "key"]
|
6
6
|
}
|
@@ -7,10 +7,14 @@ function getServerManifest(route) {
|
|
7
7
|
function getFlatNodes(route2, layouts) {
|
8
8
|
if (route2.children.length) return route2.children.flatMap(child => getFlatNodes(child, [...(layouts || []), route2]));
|
9
9
|
let key;
|
10
|
-
|
11
|
-
const
|
12
|
-
|
13
|
-
|
10
|
+
if (route2.type === "api") key = getContextKey(route2.contextKey).replace(/\/index$/, "") || "/";else {
|
11
|
+
const parentSegments = layouts?.flatMap(route3 => {
|
12
|
+
const key2 = getContextKey(route3.route).replace(/\/index$/, "") || "/";
|
13
|
+
return key2 === "/" || key2.startsWith("/(") ? [] : [key2];
|
14
|
+
});
|
15
|
+
key = (parentSegments ? parentSegments.join("") : "") + getContextKey(route2.route).replace(/\/index$/, "") || "/";
|
16
|
+
}
|
17
|
+
return [[key, {
|
14
18
|
...route2,
|
15
19
|
layouts
|
16
20
|
}]];
|
@@ -23,19 +27,23 @@ function getServerManifest(route) {
|
|
23
27
|
const apiRoutes = [],
|
24
28
|
middlewareRoutes = [],
|
25
29
|
pageRoutes = [],
|
30
|
+
allRoutes = [],
|
26
31
|
addedMiddlewares = {};
|
27
32
|
for (const [path, node] of flat) {
|
28
33
|
if (node.type === "api") {
|
29
|
-
|
34
|
+
const route3 = getGeneratedNamedRouteRegex(path, node);
|
35
|
+
apiRoutes.push(route3), allRoutes.push(route3);
|
30
36
|
continue;
|
31
37
|
}
|
32
38
|
if (node.middlewares?.length) for (const middleware of node.middlewares) addedMiddlewares[middleware.contextKey] || (addedMiddlewares[middleware.contextKey] = !0, middlewareRoutes.push(getGeneratedNamedRouteRegex(path, middleware)));
|
33
|
-
|
39
|
+
const route2 = getGeneratedNamedRouteRegex(path, node);
|
40
|
+
pageRoutes.push(route2), allRoutes.push(route2);
|
34
41
|
}
|
35
42
|
return {
|
36
43
|
apiRoutes,
|
37
44
|
middlewareRoutes,
|
38
|
-
pageRoutes
|
45
|
+
pageRoutes,
|
46
|
+
allRoutes
|
39
47
|
};
|
40
48
|
}
|
41
49
|
function getGeneratedNamedRouteRegex(normalizedRoute, node) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getContextKey","matchGroupName","sortRoutes","isNotFoundRoute","route","dynamic","length","notFound","getServerManifest","getFlatNodes","route2","layouts","children","flatMap","child","key","type","contextKey","replace","route3","key2","startsWith","flat","sort","a","b","reverse","pathToRoute","path","console","warn","apiRoutes","middlewareRoutes","pageRoutes","addedMiddlewares","node","
|
1
|
+
{"version":3,"names":["getContextKey","matchGroupName","sortRoutes","isNotFoundRoute","route","dynamic","length","notFound","getServerManifest","getFlatNodes","route2","layouts","children","flatMap","child","key","type","contextKey","replace","parentSegments","route3","key2","startsWith","join","flat","sort","a","b","reverse","pathToRoute","path","console","warn","apiRoutes","middlewareRoutes","pageRoutes","allRoutes","addedMiddlewares","node","getGeneratedNamedRouteRegex","push","middlewares","middleware","normalizedRoute","getRouteEntry","generated","isNotFound","result","getPathMeta","file","page","namedRegex","urlPath","urlCleanPath","routeKeys","buildGetSafeRouteKey","currentCharCode","currentLength","incrementNext","i","String","fromCharCode","removeTrailingSlash","segments","slice","split","getSafeRouteKey","urlPathParts","routeSegments","map","segment","index","test","name","optional","repeat","parseParam","cleanedKey","invalidKey","Number","isNaN","parseInt","content","insideParensRegex","groupName","group","trim","filter","Boolean","escapeStringRegexp","p","insideBracketsRegex","tripleDotRegex","replaceRegex","hasRegExpRegex","str","param"],"sources":["../../../src/server/getServerManifest.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -14,7 +14,7 @@ function getServerManifest(route) {
|
|
14
14
|
var key2 = getContextKey(route3.route).replace(/\/index$/, "") || "/";
|
15
15
|
return key2 === "/" || key2.startsWith("/(") ? [] : [key2];
|
16
16
|
});
|
17
|
-
key = parentSegments + getContextKey(route2.route).replace(/\/index$/, "") || "/";
|
17
|
+
key = (parentSegments ? parentSegments.join("") : "") + getContextKey(route2.route).replace(/\/index$/, "") || "/";
|
18
18
|
}
|
19
19
|
return [[key, {
|
20
20
|
...route2,
|
@@ -49,6 +49,7 @@ function getServerManifest(route) {
|
|
49
49
|
var apiRoutes = [],
|
50
50
|
middlewareRoutes = [],
|
51
51
|
pageRoutes = [],
|
52
|
+
allRoutes = [],
|
52
53
|
addedMiddlewares = {},
|
53
54
|
_iteratorNormalCompletion1 = !0,
|
54
55
|
_didIteratorError1 = !1,
|
@@ -58,7 +59,8 @@ function getServerManifest(route) {
|
|
58
59
|
var [path1, node] = _step1.value,
|
59
60
|
_node_middlewares;
|
60
61
|
if (node.type === "api") {
|
61
|
-
|
62
|
+
var _$route1 = getGeneratedNamedRouteRegex(path1, node);
|
63
|
+
apiRoutes.push(_$route1), allRoutes.push(_$route1);
|
62
64
|
continue;
|
63
65
|
}
|
64
66
|
if (!((_node_middlewares = node.middlewares) === null || _node_middlewares === void 0) && _node_middlewares.length) {
|
@@ -80,7 +82,8 @@ function getServerManifest(route) {
|
|
80
82
|
}
|
81
83
|
}
|
82
84
|
}
|
83
|
-
|
85
|
+
var _$route2 = getGeneratedNamedRouteRegex(path1, node);
|
86
|
+
pageRoutes.push(_$route2), allRoutes.push(_$route2);
|
84
87
|
}
|
85
88
|
} catch (err) {
|
86
89
|
_didIteratorError1 = !0, _iteratorError1 = err;
|
@@ -94,7 +97,8 @@ function getServerManifest(route) {
|
|
94
97
|
return {
|
95
98
|
apiRoutes,
|
96
99
|
middlewareRoutes,
|
97
|
-
pageRoutes
|
100
|
+
pageRoutes,
|
101
|
+
allRoutes
|
98
102
|
};
|
99
103
|
}
|
100
104
|
function getGeneratedNamedRouteRegex(normalizedRoute, node) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getContextKey","matchGroupName","sortRoutes","isNotFoundRoute","route","dynamic","length","notFound","getServerManifest","getFlatNodes","route2","layouts","children","flatMap","child","key","type","contextKey","replace","parentSegments","route3","key2","startsWith","flat","sort","param","param1","a","b","reverse","pathToRoute","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","path","_$route","value","console","warn","err","return","apiRoutes","middlewareRoutes","pageRoutes","addedMiddlewares","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","path1","node","_node_middlewares","
|
1
|
+
{"version":3,"names":["getContextKey","matchGroupName","sortRoutes","isNotFoundRoute","route","dynamic","length","notFound","getServerManifest","getFlatNodes","route2","layouts","children","flatMap","child","key","type","contextKey","replace","parentSegments","route3","key2","startsWith","join","flat","sort","param","param1","a","b","reverse","pathToRoute","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","path","_$route","value","console","warn","err","return","apiRoutes","middlewareRoutes","pageRoutes","allRoutes","addedMiddlewares","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","path1","node","_node_middlewares","_$route1","getGeneratedNamedRouteRegex","push","middlewares","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","middleware","_$route2","normalizedRoute","getRouteEntry"],"sources":["../../../src/server/getServerManifest.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import Path from "node:path";
|
2
|
+
function getPathnameFromFilePath(inputPath, params = {}, strict = !1, options = {}) {
|
3
|
+
const path = inputPath.replace(/\+(spa|ssg|ssr|api)\.tsx?$/, ""), dirname = Path.dirname(path).replace(/\([^\/]+\)/gi, ""), file = Path.basename(path), fileName = options.preserveExtensions ? file : file.replace(/\.[a-z]+$/, "");
|
4
|
+
function paramsError(part) {
|
5
|
+
throw new Error(
|
6
|
+
`[one] Params doesn't fit route:
|
7
|
+
|
8
|
+
- path: ${path}
|
9
|
+
- part: ${part}
|
10
|
+
- fileName: ${fileName}
|
11
|
+
- params:
|
12
|
+
|
13
|
+
${JSON.stringify(params, null, 2)}`
|
14
|
+
);
|
15
|
+
}
|
16
|
+
const nameWithParams = (() => {
|
17
|
+
if (fileName === "index")
|
18
|
+
return "/";
|
19
|
+
if (fileName.startsWith("[...")) {
|
20
|
+
const part = fileName.replace("[...", "").replace("]", "");
|
21
|
+
if (!params[part]) {
|
22
|
+
if (strict)
|
23
|
+
throw paramsError(part);
|
24
|
+
return "/*";
|
25
|
+
}
|
26
|
+
return `/${params[part]}`;
|
27
|
+
}
|
28
|
+
return `/${fileName.split("/").map((part) => {
|
29
|
+
if (part[0] === "[") {
|
30
|
+
const found = params[part.slice(1, part.length - 1)];
|
31
|
+
if (!found) {
|
32
|
+
if (strict)
|
33
|
+
throw paramsError(part);
|
34
|
+
return ":" + part.replace("[", "").replace("]", "");
|
35
|
+
}
|
36
|
+
return found;
|
37
|
+
}
|
38
|
+
return part;
|
39
|
+
}).join("/")}`;
|
40
|
+
})();
|
41
|
+
return `${dirname}${nameWithParams}`.replace(/\/\/+/gi, "/");
|
42
|
+
}
|
43
|
+
export {
|
44
|
+
getPathnameFromFilePath
|
45
|
+
};
|
46
|
+
//# sourceMappingURL=getPathnameFromFilePath.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/utils/getPathnameFromFilePath.ts"],
|
4
|
+
"mappings": "AAAA,OAAO,UAAU;AAEV,SAAS,wBACd,WACA,SAAS,CAAC,GACV,SAAS,IACT,UAA4C,CAAC,GAC7C;AACA,QAAM,OAAO,UAAU,QAAQ,8BAA8B,EAAE,GACzD,UAAU,KAAK,QAAQ,IAAI,EAAE,QAAQ,gBAAgB,EAAE,GACvD,OAAO,KAAK,SAAS,IAAI,GACzB,WAAW,QAAQ,qBAAqB,OAAO,KAAK,QAAQ,aAAa,EAAE;AAEjF,WAAS,YAAY,MAAc;AACjC,UAAM,IAAI;AAAA,MACR;AAAA;AAAA,gBAEU,IAAI;AAAA,gBACJ,IAAI;AAAA,oBACA,QAAQ;AAAA;AAAA;AAAA,EAG1B,KAAK,UAAU,QAAQ,MAAM,CAAC,CAAC;AAAA,IAC7B;AAAA,EACF;AAEA,QAAM,kBAAkB,MAAM;AAC5B,QAAI,aAAa;AACf,aAAO;AAET,QAAI,SAAS,WAAW,MAAM,GAAG;AAC/B,YAAM,OAAO,SAAS,QAAQ,QAAQ,EAAE,EAAE,QAAQ,KAAK,EAAE;AACzD,UAAI,CAAC,OAAO,IAAI,GAAG;AACjB,YAAI;AACF,gBAAM,YAAY,IAAI;AAExB,eAAO;AAAA,MACT;AACA,aAAO,IAAI,OAAO,IAAI,CAAC;AAAA,IACzB;AACA,WAAO,IAAI,SACR,MAAM,GAAG,EACT,IAAI,CAAC,SAAS;AACb,UAAI,KAAK,CAAC,MAAM,KAAK;AACnB,cAAM,QAAQ,OAAO,KAAK,MAAM,GAAG,KAAK,SAAS,CAAC,CAAC;AACnD,YAAI,CAAC,OAAO;AACV,cAAI;AACF,kBAAM,YAAY,IAAI;AAGxB,iBAAO,MAAM,KAAK,QAAQ,KAAK,EAAE,EAAE,QAAQ,KAAK,EAAE;AAAA,QACpD;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT,CAAC,EACA,KAAK,GAAG,CAAC;AAAA,EACd,GAAG;AAGH,SAAO,GAAG,OAAO,GAAG,cAAc,GAAG,QAAQ,WAAW,GAAG;AAC7D;",
|
5
|
+
"names": []
|
6
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import Path from "node:path";
|
2
|
+
function getPathnameFromFilePath(inputPath, params = {}, strict = !1, options = {}) {
|
3
|
+
const path = inputPath.replace(/\+(spa|ssg|ssr|api)\.tsx?$/, ""),
|
4
|
+
dirname = Path.dirname(path).replace(/\([^\/]+\)/gi, ""),
|
5
|
+
file = Path.basename(path),
|
6
|
+
fileName = options.preserveExtensions ? file : file.replace(/\.[a-z]+$/, "");
|
7
|
+
function paramsError(part) {
|
8
|
+
throw new Error(`[one] Params doesn't fit route:
|
9
|
+
|
10
|
+
- path: ${path}
|
11
|
+
- part: ${part}
|
12
|
+
- fileName: ${fileName}
|
13
|
+
- params:
|
14
|
+
|
15
|
+
${JSON.stringify(params, null, 2)}`);
|
16
|
+
}
|
17
|
+
const nameWithParams = (() => {
|
18
|
+
if (fileName === "index") return "/";
|
19
|
+
if (fileName.startsWith("[...")) {
|
20
|
+
const part = fileName.replace("[...", "").replace("]", "");
|
21
|
+
if (!params[part]) {
|
22
|
+
if (strict) throw paramsError(part);
|
23
|
+
return "/*";
|
24
|
+
}
|
25
|
+
return `/${params[part]}`;
|
26
|
+
}
|
27
|
+
return `/${fileName.split("/").map(part => {
|
28
|
+
if (part[0] === "[") {
|
29
|
+
const found = params[part.slice(1, part.length - 1)];
|
30
|
+
if (!found) {
|
31
|
+
if (strict) throw paramsError(part);
|
32
|
+
return ":" + part.replace("[", "").replace("]", "");
|
33
|
+
}
|
34
|
+
return found;
|
35
|
+
}
|
36
|
+
return part;
|
37
|
+
}).join("/")}`;
|
38
|
+
})();
|
39
|
+
return `${dirname}${nameWithParams}`.replace(/\/\/+/gi, "/");
|
40
|
+
}
|
41
|
+
export { getPathnameFromFilePath };
|
42
|
+
//# sourceMappingURL=getPathnameFromFilePath.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Path","getPathnameFromFilePath","inputPath","params","strict","options","path","replace","dirname","file","basename","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","nameWithParams","startsWith","split","map","found","slice","length","join"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AAEV,SAASC,wBACdC,SAAA,EACAC,MAAA,GAAS,CAAC,GACVC,MAAA,GAAS,IACTC,OAAA,GAA4C,CAAC,GAC7C;EACA,MAAMC,IAAA,GAAOJ,SAAA,CAAUK,OAAA,CAAQ,8BAA8B,EAAE;IACzDC,OAAA,GAAUR,IAAA,CAAKQ,OAAA,CAAQF,IAAI,EAAEC,OAAA,CAAQ,gBAAgB,EAAE;IACvDE,IAAA,GAAOT,IAAA,CAAKU,QAAA,CAASJ,IAAI;IACzBK,QAAA,GAAWN,OAAA,CAAQO,kBAAA,GAAqBH,IAAA,GAAOA,IAAA,CAAKF,OAAA,CAAQ,aAAa,EAAE;EAEjF,SAASM,YAAYC,IAAA,EAAc;IACjC,MAAM,IAAIC,KAAA,CACR;AAAA;AAAA,gBAEUT,IAAI;AAAA,gBACJQ,IAAI;AAAA,oBACAH,QAAQ;AAAA;AAAA;AAAA,EAG1BK,IAAA,CAAKC,SAAA,CAAUd,MAAA,EAAQ,MAAM,CAAC,CAAC,EAC7B;EACF;EAEA,MAAMe,cAAA,IAAkB,MAAM;IAC5B,IAAIP,QAAA,KAAa,SACf,OAAO;IAET,IAAIA,QAAA,CAASQ,UAAA,CAAW,MAAM,GAAG;MAC/B,MAAML,IAAA,GAAOH,QAAA,CAASJ,OAAA,CAAQ,QAAQ,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;MACzD,IAAI,CAACJ,MAAA,CAAOW,IAAI,GAAG;QACjB,IAAIV,MAAA,EACF,MAAMS,WAAA,CAAYC,IAAI;QAExB,OAAO;MACT;MACA,OAAO,IAAIX,MAAA,CAAOW,IAAI,CAAC;IACzB;IACA,OAAO,IAAIH,QAAA,CACRS,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKP,IAAA,IAAS;MACb,IAAIA,IAAA,CAAK,CAAC,MAAM,KAAK;QACnB,MAAMQ,KAAA,GAAQnB,MAAA,CAAOW,IAAA,CAAKS,KAAA,CAAM,GAAGT,IAAA,CAAKU,MAAA,GAAS,CAAC,CAAC;QACnD,IAAI,CAACF,KAAA,EAAO;UACV,IAAIlB,MAAA,EACF,MAAMS,WAAA,CAAYC,IAAI;UAGxB,OAAO,MAAMA,IAAA,CAAKP,OAAA,CAAQ,KAAK,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;QACpD;QACA,OAAOe,KAAA;MACT;MACA,OAAOR,IAAA;IACT,CAAC,EACAW,IAAA,CAAK,GAAG,CAAC;EACd,GAAG;EAGH,OAAO,GAAGjB,OAAO,GAAGU,cAAc,GAAGX,OAAA,CAAQ,WAAW,GAAG;AAC7D","ignoreList":[]}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import Path from "node:path";
|
2
|
+
function getPathnameFromFilePath(inputPath) {
|
3
|
+
var params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {},
|
4
|
+
strict = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !1,
|
5
|
+
options = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {},
|
6
|
+
path = inputPath.replace(/\+(spa|ssg|ssr|api)\.tsx?$/, ""),
|
7
|
+
dirname = Path.dirname(path).replace(/\([^\/]+\)/gi, ""),
|
8
|
+
file = Path.basename(path),
|
9
|
+
fileName = options.preserveExtensions ? file : file.replace(/\.[a-z]+$/, "");
|
10
|
+
function paramsError(part) {
|
11
|
+
throw new Error(`[one] Params doesn't fit route:
|
12
|
+
|
13
|
+
- path: ${path}
|
14
|
+
- part: ${part}
|
15
|
+
- fileName: ${fileName}
|
16
|
+
- params:
|
17
|
+
|
18
|
+
${JSON.stringify(params, null, 2)}`);
|
19
|
+
}
|
20
|
+
var nameWithParams = function () {
|
21
|
+
if (fileName === "index") return "/";
|
22
|
+
if (fileName.startsWith("[...")) {
|
23
|
+
var part = fileName.replace("[...", "").replace("]", "");
|
24
|
+
if (!params[part]) {
|
25
|
+
if (strict) throw paramsError(part);
|
26
|
+
return "/*";
|
27
|
+
}
|
28
|
+
return `/${params[part]}`;
|
29
|
+
}
|
30
|
+
return `/${fileName.split("/").map(function (part2) {
|
31
|
+
if (part2[0] === "[") {
|
32
|
+
var found = params[part2.slice(1, part2.length - 1)];
|
33
|
+
if (!found) {
|
34
|
+
if (strict) throw paramsError(part2);
|
35
|
+
return ":" + part2.replace("[", "").replace("]", "");
|
36
|
+
}
|
37
|
+
return found;
|
38
|
+
}
|
39
|
+
return part2;
|
40
|
+
}).join("/")}`;
|
41
|
+
}();
|
42
|
+
return `${dirname}${nameWithParams}`.replace(/\/\/+/gi, "/");
|
43
|
+
}
|
44
|
+
export { getPathnameFromFilePath };
|
45
|
+
//# sourceMappingURL=getPathnameFromFilePath.native.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Path","getPathnameFromFilePath","inputPath","params","arguments","length","strict","options","path","replace","dirname","file","basename","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","nameWithParams","startsWith","split","map","part2","found","slice","join"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AAEV,SAASC,wBACdC,SAAA,EACA;EAIA,IAAAC,MAAM,GAAOC,SAAA,CAAUC,MAAA,GAAQ,KAAAD,SAAA,iBAAgCA,SACzD,MAAU;IAAKE,MAAA,GAAQF,SAAM,CAAAC,MAAQ,QAAAD,SACrC,QAAO,KAAK,IAAAA,SAAa,EACzB;IAAAG,OAAW,GAAAH,SAAQ,CAAAC,MAAA,QAAqBD,SAAO,CAAK,YAAQ,IAAAA,SAAe;IAAAI,IAAA,GAAAN,SAAA,CAAAO,OAAA;IAAAC,OAAA,GAAAV,IAAA,CAAAU,OAAA,CAAAF,IAAA,EAAAC,OAAA;IAAAE,IAAA,GAAAX,IAAA,CAAAY,QAAA,CAAAJ,IAAA;IAAAK,QAAA,GAAAN,OAAA,CAAAO,kBAAA,GAAAH,IAAA,GAAAA,IAAA,CAAAF,OAAA;EAEjF,SAASM,YAAYC,IAAA,EAAc;IACjC,MAAM,IAAIC,KAAA;AAAA;AACR,gBAAAT,IAAA;AAAA,gBAEUQ,IAAI;AAAA,oBACAH,QAAA;AAAA;AACQ;AAAA,EAAAK,IAAA,CAAAC,SAAA,CAAAhB,MAAA;EAG1B;EAA+B,IAC7BiB,cAAA;IACF,IAAAP,QAAA,cAEA,OAAM;IACJ,IAAIA,QAAA,CAAAQ,UAAa;MACf,IAAAL,IAAO,GAAAH,QAAA,CAAAJ,OAAA,aAAAA,OAAA;MAET,IAAI,CAAAN,MAAS,CAAAa,IAAA;QACX,IAAMV,MAAA,EACF,MAACS,WAAc,CAAAC,IAAA;QACjB,OAAI;MACF;MAEF,WAAOb,MAAA,CAAAa,IAAA;IAAA;IAET,WAAOH,QAAI,CAAOS,KAAK,MAAAC,GAAA,WAAAC,KAAA;MACzB,IAAAA,KAAA;QACA,IAAOC,KAAI,GAAAtB,MACR,CAAAqB,KAAM,CAAGE,KACT,CAAI,CAAC,EAAAF,KAAA,CAAAnB,MAAS;QACb,IAAI,CAAAoB,KAAM;UACR,IAAMnB,MAAA,EACF,MAACS,WAAO,CAAAS,KAAA;UACV,OAAI,MAAAA,KAAA,CAAAf,OAAA,UAAAA,OAAA;QACF;QAGF,OAAAgB,KAAO;MAA2C;MAEpD,OAAAD,KAAO;IAAA,EACT,CAAAG,IAAA;EACA;EAAO,OAER,GAAKjB,OAAI,GAAAU,cAAA,GAAAX,OAAA;AAAA;AAId,SACFR,uBAAA","ignoreList":[]}
|
@@ -3,9 +3,9 @@ import FSExtra from "fs-extra";
|
|
3
3
|
import { isMatching, P } from "ts-pattern";
|
4
4
|
import { createApiServerlessFunction } from "./generate/createApiServerlessFunction";
|
5
5
|
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction";
|
6
|
-
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base";
|
7
6
|
import { serverlessVercelPackageJson } from "./config/vc-package-base";
|
8
|
-
import {
|
7
|
+
import { vercelBuildOutputConfigBase } from "./config/vc-build-output-config-base";
|
8
|
+
import { getPathFromRoute } from "./getPathFromRoute";
|
9
9
|
const { copy, ensureDir, existsSync, writeJSON } = FSExtra;
|
10
10
|
async function moveAllFiles(src, dest) {
|
11
11
|
try {
|
@@ -30,17 +30,7 @@ const buildVercelOutputDirectory = async ({
|
|
30
30
|
const compiledRoute = compiltedApiRoutes.find((compiled) => compiled.facadeModuleId.includes(route.file.replace("./", "")));
|
31
31
|
compiledRoute ? (postBuildLogs.push(
|
32
32
|
`[one.build][vercel] generating serverless function for apiRoute ${route.page}`
|
33
|
-
), await createApiServerlessFunction(
|
34
|
-
route.page,
|
35
|
-
compiledRoute.code,
|
36
|
-
oneOptionsRoot,
|
37
|
-
postBuildLogs
|
38
|
-
), route.page !== route.urlCleanPath && await createApiServerlessFunction(
|
39
|
-
route.urlCleanPath,
|
40
|
-
compiledRoute.code,
|
41
|
-
oneOptionsRoot,
|
42
|
-
postBuildLogs
|
43
|
-
)) : console.warn(`
|
33
|
+
), await createApiServerlessFunction(route, compiledRoute.code, oneOptionsRoot, postBuildLogs)) : console.warn(`
|
44
34
|
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route.file);
|
45
35
|
}
|
46
36
|
}
|
@@ -52,7 +42,7 @@ const buildVercelOutputDirectory = async ({
|
|
52
42
|
routeToBuildInfo[route.file] && (postBuildLogs.push(
|
53
43
|
`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`
|
54
44
|
), await createSsrServerlessFunction(
|
55
|
-
route
|
45
|
+
route,
|
56
46
|
buildInfoForWriting,
|
57
47
|
oneOptionsRoot,
|
58
48
|
postBuildLogs
|
@@ -65,7 +55,7 @@ const buildVercelOutputDirectory = async ({
|
|
65
55
|
const distMiddlewareDir = resolve(join(oneOptionsRoot, "dist", "middlewares"));
|
66
56
|
if (existsSync(distMiddlewareDir)) {
|
67
57
|
const vercelMiddlewareDir = resolve(
|
68
|
-
join(oneOptionsRoot, ".vercel/output/functions/_middleware")
|
58
|
+
join(oneOptionsRoot, ".vercel/output/functions/_middleware.func")
|
69
59
|
);
|
70
60
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(
|
71
61
|
`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`
|
@@ -74,12 +64,34 @@ const buildVercelOutputDirectory = async ({
|
|
74
64
|
postBuildLogs.push(
|
75
65
|
`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`
|
76
66
|
), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
67
|
+
const wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js", wrappedMiddlewareEntryPointPath = resolve(
|
68
|
+
join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename)
|
69
|
+
);
|
70
|
+
await FSExtra.writeFile(
|
71
|
+
wrappedMiddlewareEntryPointPath,
|
72
|
+
`
|
73
|
+
import middlewareFunction from './_middleware.js'
|
74
|
+
|
75
|
+
const next = (e) => {
|
76
|
+
const t = new Headers(null == e ? void 0 : e.headers)
|
77
|
+
t.set('x-middleware-next', '1')
|
78
|
+
return new Response(null, { ...e, headers: t })
|
79
|
+
}
|
80
|
+
|
81
|
+
const wrappedMiddlewareFunction = (request, event) => {
|
82
|
+
return middlewareFunction({ request, event, next })
|
83
|
+
}
|
84
|
+
|
85
|
+
export { wrappedMiddlewareFunction as default }
|
86
|
+
`
|
87
|
+
);
|
77
88
|
const middlewareVercelConfigFilePath = resolve(join(vercelMiddlewareDir, ".vc-config.json"));
|
78
89
|
postBuildLogs.push(
|
79
90
|
`[one.build][vercel] writing .vc-config.json to ${middlewareVercelConfigFilePath}`
|
80
91
|
), await writeJSON(middlewareVercelConfigFilePath, {
|
81
|
-
|
82
|
-
|
92
|
+
runtime: "edge",
|
93
|
+
// Seems that middlewares only work with edge runtime
|
94
|
+
entrypoint: wrappedMiddlewareEntryPointFilename
|
83
95
|
});
|
84
96
|
}
|
85
97
|
const vercelOutputStaticDir = resolve(join(oneOptionsRoot, ".vercel/output/static"));
|
@@ -87,7 +99,26 @@ const buildVercelOutputDirectory = async ({
|
|
87
99
|
`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`
|
88
100
|
), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
89
101
|
const vercelConfigFilePath = resolve(join(oneOptionsRoot, ".vercel/output", "config.json"));
|
90
|
-
await writeJSON(vercelConfigFilePath,
|
102
|
+
await writeJSON(vercelConfigFilePath, {
|
103
|
+
...vercelBuildOutputConfigBase,
|
104
|
+
routes: [
|
105
|
+
...vercelBuildOutputConfigBase.routes,
|
106
|
+
...existsSync(distMiddlewareDir) ? [
|
107
|
+
{
|
108
|
+
src: "/(.*)",
|
109
|
+
middlewarePath: "_middleware",
|
110
|
+
continue: !0
|
111
|
+
}
|
112
|
+
] : [],
|
113
|
+
{
|
114
|
+
handle: "rewrite"
|
115
|
+
},
|
116
|
+
...buildInfoForWriting.manifest.allRoutes.filter((r) => r.routeKeys && Object.keys(r.routeKeys).length > 0).map((r) => ({
|
117
|
+
src: r.namedRegex,
|
118
|
+
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
119
|
+
}))
|
120
|
+
]
|
121
|
+
}), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
91
122
|
};
|
92
123
|
export {
|
93
124
|
buildVercelOutputDirectory
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],
|
4
|
-
"mappings": "AAAA,SAAS,MAAM,eAAe;AAE9B,OAAO,aAAa;AAEpB,SAAS,YAAY,SAAS;AAE9B,SAAS,mCAAmC;AAC5C,SAAS,mCAAmC;
|
4
|
+
"mappings": "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",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -3,9 +3,9 @@ import FSExtra from "fs-extra";
|
|
3
3
|
import { isMatching, P } from "ts-pattern";
|
4
4
|
import { createApiServerlessFunction } from "./generate/createApiServerlessFunction.mjs";
|
5
5
|
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction.mjs";
|
6
|
-
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base.mjs";
|
7
6
|
import { serverlessVercelPackageJson } from "./config/vc-package-base.mjs";
|
8
|
-
import {
|
7
|
+
import { vercelBuildOutputConfigBase } from "./config/vc-build-output-config-base.mjs";
|
8
|
+
import { getPathFromRoute } from "./getPathFromRoute.mjs";
|
9
9
|
const {
|
10
10
|
copy,
|
11
11
|
ensureDir,
|
@@ -39,7 +39,7 @@ const buildVercelOutputDirectory = async ({
|
|
39
39
|
}, o));
|
40
40
|
for (const route of buildInfoForWriting.manifest.apiRoutes) {
|
41
41
|
const compiledRoute = compiltedApiRoutes.find(compiled => compiled.facadeModuleId.includes(route.file.replace("./", "")));
|
42
|
-
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route.page}`), await createApiServerlessFunction(route
|
42
|
+
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route.page}`), await createApiServerlessFunction(route, compiledRoute.code, oneOptionsRoot, postBuildLogs)) : console.warn(`
|
43
43
|
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route.file);
|
44
44
|
}
|
45
45
|
}
|
@@ -48,7 +48,7 @@ const buildVercelOutputDirectory = async ({
|
|
48
48
|
for (const route of buildInfoForWriting.manifest.pageRoutes) switch (route.type) {
|
49
49
|
case "ssr":
|
50
50
|
{
|
51
|
-
routeToBuildInfo[route.file] && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route
|
51
|
+
routeToBuildInfo[route.file] && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route, buildInfoForWriting, oneOptionsRoot, postBuildLogs));
|
52
52
|
break;
|
53
53
|
}
|
54
54
|
default:
|
@@ -56,20 +56,50 @@ const buildVercelOutputDirectory = async ({
|
|
56
56
|
}
|
57
57
|
const distMiddlewareDir = resolve(join(oneOptionsRoot, "dist", "middlewares"));
|
58
58
|
if (existsSync(distMiddlewareDir)) {
|
59
|
-
const vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware"));
|
59
|
+
const vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware.func"));
|
60
60
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
61
61
|
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "index.js"));
|
62
62
|
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
63
|
+
const wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js",
|
64
|
+
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename));
|
65
|
+
await FSExtra.writeFile(wrappedMiddlewareEntryPointPath, `
|
66
|
+
import middlewareFunction from './_middleware.js'
|
67
|
+
|
68
|
+
const next = (e) => {
|
69
|
+
const t = new Headers(null == e ? void 0 : e.headers)
|
70
|
+
t.set('x-middleware-next', '1')
|
71
|
+
return new Response(null, { ...e, headers: t })
|
72
|
+
}
|
73
|
+
|
74
|
+
const wrappedMiddlewareFunction = (request, event) => {
|
75
|
+
return middlewareFunction({ request, event, next })
|
76
|
+
}
|
77
|
+
|
78
|
+
export { wrappedMiddlewareFunction as default }
|
79
|
+
`);
|
63
80
|
const middlewareVercelConfigFilePath = resolve(join(vercelMiddlewareDir, ".vc-config.json"));
|
64
81
|
postBuildLogs.push(`[one.build][vercel] writing .vc-config.json to ${middlewareVercelConfigFilePath}`), await writeJSON(middlewareVercelConfigFilePath, {
|
65
|
-
|
66
|
-
|
82
|
+
runtime: "edge",
|
83
|
+
// Seems that middlewares only work with edge runtime
|
84
|
+
entrypoint: wrappedMiddlewareEntryPointFilename
|
67
85
|
});
|
68
86
|
}
|
69
87
|
const vercelOutputStaticDir = resolve(join(oneOptionsRoot, ".vercel/output/static"));
|
70
88
|
await ensureDir(vercelOutputStaticDir), postBuildLogs.push(`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
71
89
|
const vercelConfigFilePath = resolve(join(oneOptionsRoot, ".vercel/output", "config.json"));
|
72
|
-
await writeJSON(vercelConfigFilePath,
|
90
|
+
await writeJSON(vercelConfigFilePath, {
|
91
|
+
...vercelBuildOutputConfigBase,
|
92
|
+
routes: [...vercelBuildOutputConfigBase.routes, ...(existsSync(distMiddlewareDir) ? [{
|
93
|
+
src: "/(.*)",
|
94
|
+
middlewarePath: "_middleware",
|
95
|
+
continue: !0
|
96
|
+
}] : []), {
|
97
|
+
handle: "rewrite"
|
98
|
+
}, ...buildInfoForWriting.manifest.allRoutes.filter(r => r.routeKeys && Object.keys(r.routeKeys).length > 0).map(r => ({
|
99
|
+
src: r.namedRegex,
|
100
|
+
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
101
|
+
}))]
|
102
|
+
}), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
73
103
|
};
|
74
104
|
export { buildVercelOutputDirectory };
|
75
105
|
//# sourceMappingURL=buildVercelOutputDirectory.mjs.map
|