one 1.1.482 → 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/cjs/vite/one.cjs +1 -1
- package/dist/cjs/vite/one.js +1 -1
- package/dist/cjs/vite/one.js.map +1 -1
- package/dist/cjs/vite/one.native.js +3 -1
- package/dist/cjs/vite/one.native.js.map +1 -1
- 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/dist/esm/vite/one.js +1 -1
- package/dist/esm/vite/one.js.map +1 -1
- package/dist/esm/vite/one.mjs +1 -1
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +1 -1
- package/dist/esm/vite/one.native.js.map +1 -1
- 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/one.ts +1 -1
- 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
@@ -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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","
|
1
|
+
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","serverlessVercelPackageJson","vercelBuildOutputConfigBase","getPathFromRoute","copy","ensureDir","existsSync","writeJSON","moveAllFiles","src","dest","overwrite","errorOnExist","err","console","error","buildVercelOutputDirectory","apiOutput","buildInfoForWriting","clientDir","oneOptionsRoot","postBuildLogs","routeToBuildInfo","compiltedApiRoutes","output","filter","o","code","string","facadeModuleId","route","manifest","apiRoutes","compiledRoute","find","compiled","includes","file","replace","push","page","warn","vercelOutputFunctionsDir","pageRoutes","type","distMiddlewareDir","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","wrappedMiddlewareEntryPointFilename","wrappedMiddlewareEntryPointPath","writeFile","middlewareVercelConfigFilePath","runtime","entrypoint","vercelOutputStaticDir","vercelConfigFilePath","routes","middlewarePath","continue","handle","allRoutes","r","routeKeys","Object","keys","length","map","namedRegex","entries","k","v"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"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","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.native.js";
|
5
5
|
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction.native.js";
|
6
|
-
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base.native.js";
|
7
6
|
import { serverlessVercelPackageJson } from "./config/vc-package-base.native.js";
|
8
|
-
import {
|
7
|
+
import { vercelBuildOutputConfigBase } from "./config/vc-build-output-config-base.native.js";
|
8
|
+
import { getPathFromRoute } from "./getPathFromRoute.native.js";
|
9
9
|
var {
|
10
10
|
copy,
|
11
11
|
ensureDir,
|
@@ -51,7 +51,7 @@ var buildVercelOutputDirectory = async function (param) {
|
|
51
51
|
var flag = compiled.facadeModuleId.includes(route2.file.replace("./", ""));
|
52
52
|
return flag;
|
53
53
|
});
|
54
|
-
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route2.page}`), await createApiServerlessFunction(route2
|
54
|
+
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route2.page}`), await createApiServerlessFunction(route2, compiledRoute.code, oneOptionsRoot, postBuildLogs)) : console.warn(`
|
55
55
|
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route2.file);
|
56
56
|
}, _iterator = buildInfoForWriting.manifest.apiRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) await _loop();
|
57
57
|
} catch (err) {
|
@@ -76,7 +76,7 @@ var buildVercelOutputDirectory = async function (param) {
|
|
76
76
|
case "ssr":
|
77
77
|
{
|
78
78
|
var builtPageRoute = routeToBuildInfo[route.file];
|
79
|
-
builtPageRoute && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route
|
79
|
+
builtPageRoute && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route, buildInfoForWriting, oneOptionsRoot, postBuildLogs));
|
80
80
|
break;
|
81
81
|
}
|
82
82
|
default:
|
@@ -94,20 +94,57 @@ var buildVercelOutputDirectory = async function (param) {
|
|
94
94
|
}
|
95
95
|
var distMiddlewareDir = resolve(join(oneOptionsRoot, "dist", "middlewares"));
|
96
96
|
if (existsSync(distMiddlewareDir)) {
|
97
|
-
var vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware"));
|
97
|
+
var vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware.func"));
|
98
98
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
99
99
|
var vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "index.js"));
|
100
100
|
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
101
|
+
var wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js",
|
102
|
+
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename));
|
103
|
+
await FSExtra.writeFile(wrappedMiddlewareEntryPointPath, `
|
104
|
+
import middlewareFunction from './_middleware.js'
|
105
|
+
|
106
|
+
const next = (e) => {
|
107
|
+
const t = new Headers(null == e ? void 0 : e.headers)
|
108
|
+
t.set('x-middleware-next', '1')
|
109
|
+
return new Response(null, { ...e, headers: t })
|
110
|
+
}
|
111
|
+
|
112
|
+
const wrappedMiddlewareFunction = (request, event) => {
|
113
|
+
return middlewareFunction({ request, event, next })
|
114
|
+
}
|
115
|
+
|
116
|
+
export { wrappedMiddlewareFunction as default }
|
117
|
+
`);
|
101
118
|
var middlewareVercelConfigFilePath = resolve(join(vercelMiddlewareDir, ".vc-config.json"));
|
102
119
|
postBuildLogs.push(`[one.build][vercel] writing .vc-config.json to ${middlewareVercelConfigFilePath}`), await writeJSON(middlewareVercelConfigFilePath, {
|
103
|
-
|
104
|
-
|
120
|
+
runtime: "edge",
|
121
|
+
// Seems that middlewares only work with edge runtime
|
122
|
+
entrypoint: wrappedMiddlewareEntryPointFilename
|
105
123
|
});
|
106
124
|
}
|
107
125
|
var vercelOutputStaticDir = resolve(join(oneOptionsRoot, ".vercel/output/static"));
|
108
126
|
await ensureDir(vercelOutputStaticDir), postBuildLogs.push(`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
109
127
|
var vercelConfigFilePath = resolve(join(oneOptionsRoot, ".vercel/output", "config.json"));
|
110
|
-
await writeJSON(vercelConfigFilePath,
|
128
|
+
await writeJSON(vercelConfigFilePath, {
|
129
|
+
...vercelBuildOutputConfigBase,
|
130
|
+
routes: [...vercelBuildOutputConfigBase.routes, ...(existsSync(distMiddlewareDir) ? [{
|
131
|
+
src: "/(.*)",
|
132
|
+
middlewarePath: "_middleware",
|
133
|
+
continue: !0
|
134
|
+
}] : []), {
|
135
|
+
handle: "rewrite"
|
136
|
+
}, ...buildInfoForWriting.manifest.allRoutes.filter(function (r) {
|
137
|
+
return r.routeKeys && Object.keys(r.routeKeys).length > 0;
|
138
|
+
}).map(function (r) {
|
139
|
+
return {
|
140
|
+
src: r.namedRegex,
|
141
|
+
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(function (param2) {
|
142
|
+
var [k, v] = param2;
|
143
|
+
return `${k}=$${v}`;
|
144
|
+
}).join("&")}`
|
145
|
+
};
|
146
|
+
})]
|
147
|
+
}), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
111
148
|
};
|
112
149
|
export { buildVercelOutputDirectory };
|
113
150
|
//# sourceMappingURL=buildVercelOutputDirectory.native.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","
|
1
|
+
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","serverlessVercelPackageJson","vercelBuildOutputConfigBase","getPathFromRoute","copy","ensureDir","existsSync","writeJSON","moveAllFiles","src","dest","overwrite","errorOnExist","err","console","error","buildVercelOutputDirectory","param","apiOutput","buildInfoForWriting","clientDir","oneOptionsRoot","postBuildLogs","routeToBuildInfo","_apiOutput_output","compiltedApiRoutes","output","filter","o","code","string","facadeModuleId","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","route2","_step","value","compiledRoute","find","compiled","flag","includes","file","replace","push","page","warn","_iterator","manifest","apiRoutes","Symbol","iterator","next","done","return","vercelOutputFunctionsDir","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","pageRoutes","_step1","route","type","builtPageRoute","distMiddlewareDir","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","wrappedMiddlewareEntryPointFilename","wrappedMiddlewareEntryPointPath","writeFile","middlewareVercelConfigFilePath","runtime","entrypoint","vercelOutputStaticDir","vercelConfigFilePath","routes","middlewarePath","continue","handle","allRoutes","r","routeKeys","Object","keys","length"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -1,14 +1,15 @@
|
|
1
|
-
const
|
1
|
+
const vercelBuildOutputConfigBase = {
|
2
2
|
version: 3,
|
3
3
|
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
4
|
routes: [
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
// Not sure if we really need this, but having this seems to break the 'rewrite's we will add to handle dynamic routes.
|
6
|
+
// {
|
7
|
+
// src: '/(.*)',
|
8
|
+
// status: 200,
|
9
|
+
// },
|
9
10
|
]
|
10
11
|
};
|
11
12
|
export {
|
12
|
-
|
13
|
+
vercelBuildOutputConfigBase
|
13
14
|
};
|
14
15
|
//# sourceMappingURL=vc-build-output-config-base.js.map
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../src/vercel/build/config/vc-build-output-config-base.ts"],
|
4
|
-
"mappings": "AAEO,MAAM,
|
4
|
+
"mappings": "AAEO,MAAM,8BAA8B;AAAA,EACzC,SAAS;AAAA;AAAA,EAET,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMR;AACF;",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -1,10 +1,13 @@
|
|
1
|
-
const
|
1
|
+
const vercelBuildOutputConfigBase = {
|
2
2
|
version: 3,
|
3
3
|
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
|
-
routes: [
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
routes: [
|
5
|
+
// Not sure if we really need this, but having this seems to break the 'rewrite's we will add to handle dynamic routes.
|
6
|
+
// {
|
7
|
+
// src: '/(.*)',
|
8
|
+
// status: 200,
|
9
|
+
// },
|
10
|
+
]
|
8
11
|
};
|
9
|
-
export {
|
12
|
+
export { vercelBuildOutputConfigBase };
|
10
13
|
//# sourceMappingURL=vc-build-output-config-base.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["
|
1
|
+
{"version":3,"names":["vercelBuildOutputConfigBase","version","routes"],"sources":["../../../../../src/vercel/build/config/vc-build-output-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,2BAAA,GAA8B;EACzCC,OAAA,EAAS;EAAA;EAETC,MAAA,EAAQ;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;AAOV","ignoreList":[]}
|
@@ -1,10 +1,7 @@
|
|
1
|
-
var
|
1
|
+
var vercelBuildOutputConfigBase = {
|
2
2
|
version: 3,
|
3
3
|
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
|
-
routes: [
|
5
|
-
src: "/(.*)",
|
6
|
-
status: 200
|
7
|
-
}]
|
4
|
+
routes: []
|
8
5
|
};
|
9
|
-
export {
|
6
|
+
export { vercelBuildOutputConfigBase };
|
10
7
|
//# sourceMappingURL=vc-build-output-config-base.native.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["
|
1
|
+
{"version":3,"names":["vercelBuildOutputConfigBase","version","routes"],"sources":["../../../../../src/vercel/build/config/vc-build-output-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,IAAAA,2BAAM;EACXC,OAAA,EAAS;EAAA;EAETC,MAAA,EAAQ;AAAA;AAAA,SAAAF,2BAAA","ignoreList":[]}
|
@@ -1,25 +1,36 @@
|
|
1
|
-
import { join, resolve } from "node:path";
|
1
|
+
import { dirname, join, resolve } from "node:path";
|
2
|
+
import FSExtra from "fs-extra";
|
3
|
+
import { resolvePath } from "@vxrn/resolve";
|
4
|
+
import parser from "@babel/parser";
|
5
|
+
import traverse from "@babel/traverse";
|
6
|
+
import t from "@babel/types";
|
7
|
+
import generator from "@babel/generator";
|
2
8
|
import fs from "fs-extra";
|
3
9
|
import { serverlessVercelPackageJson } from "../config/vc-package-base";
|
4
10
|
import { serverlessVercelNodeJsConfig } from "../config/vc-config-base";
|
5
|
-
|
11
|
+
import { getPathFromRoute } from "../getPathFromRoute";
|
12
|
+
async function createApiServerlessFunction(route, code, oneOptionsRoot, postBuildLogs) {
|
6
13
|
try {
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
14
|
+
const path = getPathFromRoute(route);
|
15
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${path}`);
|
16
|
+
const funcFolder = join(oneOptionsRoot, `.vercel/output/functions/${path}.func`);
|
17
|
+
if (await fs.ensureDir(funcFolder), code.includes("react")) {
|
18
|
+
postBuildLogs.push(
|
19
|
+
`[one.build][vercel.createSsrServerlessFunction] detected react in depenency tree for ${path}`
|
20
|
+
);
|
21
|
+
const reactPath = dirname(resolvePath("react/package.json", oneOptionsRoot));
|
22
|
+
await fs.copy(resolve(reactPath), resolve(join(funcFolder, "node_modules", "react")));
|
23
|
+
}
|
15
24
|
const distAssetsFolder = resolve(join(funcFolder, "assets"));
|
16
25
|
postBuildLogs.push(
|
17
26
|
`[one.build][vercel.createSsrServerlessFunction] copy shared assets to ${distAssetsFolder}`
|
18
|
-
)
|
27
|
+
);
|
28
|
+
const sourceAssetsFolder = resolve(join(oneOptionsRoot, "dist", "api", "assets"));
|
29
|
+
await FSExtra.pathExists(sourceAssetsFolder) && await fs.copy(sourceAssetsFolder, distAssetsFolder), await fs.ensureDir(resolve(join(funcFolder, "entrypoint")));
|
19
30
|
const entrypointFilePath = resolve(join(funcFolder, "entrypoint", "index.js"));
|
20
31
|
postBuildLogs.push(
|
21
32
|
`[one.build][vercel.createSsrServerlessFunction] writing entrypoint to ${entrypointFilePath}`
|
22
|
-
), await fs.writeFile(entrypointFilePath, code);
|
33
|
+
), await fs.writeFile(entrypointFilePath, wrapHandlerFunctions(code));
|
23
34
|
const packageJsonFilePath = resolve(join(funcFolder, "package.json"));
|
24
35
|
return postBuildLogs.push(
|
25
36
|
`[one.build][vercel.createSsrServerlessFunction] writing package.json to ${packageJsonFilePath}`
|
@@ -31,11 +42,75 @@ async function createApiServerlessFunction(pageName, code, oneOptionsRoot, postB
|
|
31
42
|
});
|
32
43
|
} catch (e) {
|
33
44
|
console.error(
|
34
|
-
`[one.build][vercel.createSsrServerlessFunction] failed to generate func for ${
|
45
|
+
`[one.build][vercel.createSsrServerlessFunction] failed to generate func for ${route.file}`,
|
35
46
|
e
|
36
47
|
);
|
37
48
|
}
|
38
49
|
}
|
50
|
+
function wrapHandlerFunctions(code) {
|
51
|
+
const ast = parser.parse(code, {
|
52
|
+
sourceType: "module"
|
53
|
+
});
|
54
|
+
return traverse.default(ast, {
|
55
|
+
FunctionDeclaration(path) {
|
56
|
+
const { node } = path, functionNamesToHandle = [
|
57
|
+
"GET",
|
58
|
+
"POST",
|
59
|
+
"PUT",
|
60
|
+
"PATCH",
|
61
|
+
"DELETE",
|
62
|
+
"HEAD",
|
63
|
+
"OPTIONS"
|
64
|
+
// TODO: more possibilities?
|
65
|
+
];
|
66
|
+
if (!node.id || !functionNamesToHandle.includes(node.id.name) || node.extra && node.extra.isWrapper || node.extra && node.extra.isWrapped) return;
|
67
|
+
const originalName = `orig_${node.id.name}`, originalFunction = t.functionDeclaration(
|
68
|
+
t.identifier(originalName),
|
69
|
+
node.params,
|
70
|
+
node.body,
|
71
|
+
node.generator,
|
72
|
+
node.async
|
73
|
+
), requestIdentifier = t.identifier("request"), wrapperParams = [requestIdentifier], urlIdentifier = t.identifier("url"), paramsIdentifier = t.identifier("params"), urlDecl = t.variableDeclaration("const", [
|
74
|
+
t.variableDeclarator(
|
75
|
+
urlIdentifier,
|
76
|
+
t.newExpression(t.identifier("URL"), [
|
77
|
+
t.memberExpression(requestIdentifier, t.identifier("url"))
|
78
|
+
])
|
79
|
+
)
|
80
|
+
]), paramsDecl = t.variableDeclaration("const", [
|
81
|
+
t.variableDeclarator(
|
82
|
+
paramsIdentifier,
|
83
|
+
t.callExpression(
|
84
|
+
t.memberExpression(t.identifier("Object"), t.identifier("fromEntries")),
|
85
|
+
[
|
86
|
+
t.callExpression(
|
87
|
+
t.memberExpression(
|
88
|
+
t.memberExpression(
|
89
|
+
urlIdentifier,
|
90
|
+
t.identifier("searchParams")
|
91
|
+
),
|
92
|
+
t.identifier("entries")
|
93
|
+
),
|
94
|
+
[]
|
95
|
+
)
|
96
|
+
]
|
97
|
+
)
|
98
|
+
)
|
99
|
+
]), callOrigFnStatement = t.callExpression(t.identifier(originalName), [
|
100
|
+
requestIdentifier,
|
101
|
+
t.objectExpression([t.objectProperty(t.identifier("params"), paramsIdentifier)])
|
102
|
+
]), wrapperFunction = t.functionDeclaration(
|
103
|
+
t.identifier(node.id.name + ""),
|
104
|
+
wrapperParams,
|
105
|
+
t.blockStatement([urlDecl, paramsDecl, t.returnStatement(callOrigFnStatement)])
|
106
|
+
// No need to care if the wrapper function should be async,
|
107
|
+
// since we didn't use any await in the wrapper function, and we'll
|
108
|
+
// just return what the original function returns.
|
109
|
+
);
|
110
|
+
node.extra = node.extra || {}, node.extra.isWrapped = !0, wrapperFunction.extra = wrapperFunction.extra || {}, wrapperFunction.extra.isWrapper = !0, path.parentPath.isExportNamedDeclaration() ? path.replaceWithMultiple([originalFunction, t.exportNamedDeclaration(wrapperFunction, [])]) : path.replaceWithMultiple([originalFunction, wrapperFunction]);
|
111
|
+
}
|
112
|
+
}), generator.default(ast, {}).code;
|
113
|
+
}
|
39
114
|
export {
|
40
115
|
createApiServerlessFunction
|
41
116
|
};
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],
|
4
|
-
"mappings": "AAAA,SAAS,MAAM,eAAe;
|
4
|
+
"mappings": "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",
|
5
5
|
"names": []
|
6
6
|
}
|