one 1.1.450 → 1.1.451
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 +15 -22
- package/dist/cjs/cli/build.js +14 -31
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js +15 -24
- package/dist/cjs/cli/build.native.js.map +2 -2
- package/dist/cjs/cli.cjs +0 -4
- package/dist/cjs/cli.js +0 -4
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/cli.native.js +0 -4
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/serve.cjs +1 -2
- package/dist/cjs/serve.js +1 -2
- package/dist/cjs/serve.js.map +1 -1
- package/dist/cjs/serve.native.js +1 -2
- package/dist/cjs/serve.native.js.map +2 -2
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.cjs +103 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js +102 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js.map +6 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +111 -0
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.cjs +33 -0
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.js +30 -0
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.native.js +35 -0
- package/dist/cjs/vercel/build/config/vc-build-output-config-base.native.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-config-base.cjs +45 -0
- package/dist/cjs/vercel/build/config/vc-config-base.js +40 -0
- package/dist/cjs/vercel/build/config/vc-config-base.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-config-base.native.js +33 -0
- package/dist/cjs/vercel/build/config/vc-config-base.native.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-package-base.cjs +28 -0
- package/dist/cjs/vercel/build/config/vc-package-base.js +21 -0
- package/dist/cjs/vercel/build/config/vc-package-base.js.map +6 -0
- package/dist/cjs/vercel/build/config/vc-package-base.native.js +28 -0
- package/dist/cjs/vercel/build/config/vc-package-base.native.js.map +6 -0
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.cjs +58 -0
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js +63 -0
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js.map +6 -0
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +52 -0
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +6 -0
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.cjs +103 -0
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js +106 -0
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js.map +6 -0
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +95 -0
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +6 -0
- package/dist/cjs/vite/one-server-only.cjs +3 -1
- package/dist/cjs/vite/one-server-only.js +1 -1
- package/dist/cjs/vite/one-server-only.js.map +1 -1
- package/dist/cjs/vite/types.native.js.map +1 -1
- package/dist/esm/cli/build.js +14 -30
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs +15 -22
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +16 -25
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli.js +0 -4
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +0 -4
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +0 -4
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/serve.js +1 -2
- package/dist/esm/serve.js.map +1 -1
- package/dist/esm/serve.mjs +1 -2
- package/dist/esm/serve.mjs.map +1 -1
- package/dist/esm/serve.native.js +1 -2
- package/dist/esm/serve.native.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js +85 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js.map +6 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs +69 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js +107 -0
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.js +14 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.js.map +6 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.mjs +10 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.mjs.map +1 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.native.js +10 -0
- package/dist/esm/vercel/build/config/vc-build-output-config-base.native.js.map +1 -0
- package/dist/esm/vercel/build/config/vc-config-base.js +24 -0
- package/dist/esm/vercel/build/config/vc-config-base.js.map +6 -0
- package/dist/esm/vercel/build/config/vc-config-base.mjs +22 -0
- package/dist/esm/vercel/build/config/vc-config-base.mjs.map +1 -0
- package/dist/esm/vercel/build/config/vc-config-base.native.js +10 -0
- package/dist/esm/vercel/build/config/vc-config-base.native.js.map +1 -0
- package/dist/esm/vercel/build/config/vc-package-base.js +5 -0
- package/dist/esm/vercel/build/config/vc-package-base.js.map +6 -0
- package/dist/esm/vercel/build/config/vc-package-base.mjs +5 -0
- package/dist/esm/vercel/build/config/vc-package-base.mjs.map +1 -0
- package/dist/esm/vercel/build/config/vc-package-base.native.js +5 -0
- package/dist/esm/vercel/build/config/vc-package-base.native.js.map +1 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js +42 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js.map +6 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs +24 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js +24 -0
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js +85 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js.map +6 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs +69 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js +69 -0
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -0
- package/dist/esm/vite/one-server-only.js +1 -1
- package/dist/esm/vite/one-server-only.js.map +1 -1
- package/dist/esm/vite/one-server-only.mjs +3 -1
- package/dist/esm/vite/one-server-only.mjs.map +1 -1
- package/package.json +9 -8
- package/src/cli/build.ts +34 -31
- package/src/cli.ts +0 -4
- package/src/serve.ts +0 -1
- package/src/server/createRoutesManifest.ts +1 -1
- package/src/vercel/build/buildVercelOutputDirectory.ts +126 -0
- package/src/vercel/build/config/vc-build-output-config-base.ts +12 -0
- package/src/vercel/build/config/vc-config-base.ts +22 -0
- package/src/vercel/build/config/vc-package-base.ts +1 -0
- package/src/vercel/build/generate/createApiServerlessFunction.ts +66 -0
- package/src/vercel/build/generate/createSsrServerlessFunction.ts +108 -0
- package/src/vite/one-server-only.tsx +6 -1
- package/src/vite/types.ts +2 -3
- package/types/cli/build.d.ts.map +1 -1
- package/types/serve.d.ts +1 -8
- package/types/serve.d.ts.map +1 -1
- package/types/server/createRoutesManifest.d.ts +1 -1
- package/types/server/createRoutesManifest.d.ts.map +1 -1
- package/types/vercel/build/buildVercelOutputDirectory.d.ts +10 -0
- package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -0
- package/types/vercel/build/config/vc-build-output-config-base.d.ts +8 -0
- package/types/vercel/build/config/vc-build-output-config-base.d.ts.map +1 -0
- package/types/vercel/build/config/vc-config-base.d.ts +9 -0
- package/types/vercel/build/config/vc-config-base.d.ts.map +1 -0
- package/types/vercel/build/config/vc-package-base.d.ts +4 -0
- package/types/vercel/build/config/vc-package-base.d.ts.map +1 -0
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts +2 -0
- package/types/vercel/build/generate/createApiServerlessFunction.d.ts.map +1 -0
- package/types/vercel/build/generate/createSsrServerlessFunction.d.ts +3 -0
- package/types/vercel/build/generate/createSsrServerlessFunction.d.ts.map +1 -0
- package/types/vite/one-server-only.d.ts.map +1 -1
- package/types/vite/types.d.ts +3 -3
- package/types/vite/types.d.ts.map +1 -1
package/dist/esm/serve.mjs
CHANGED
@@ -33,8 +33,7 @@ async function serve(args = {}) {
|
|
33
33
|
...removeUndefined({
|
34
34
|
port: args.port ? +args.port : void 0,
|
35
35
|
host: args.host,
|
36
|
-
compress: args.compress
|
37
|
-
platform: args.platform
|
36
|
+
compress: args.compress
|
38
37
|
}),
|
39
38
|
async beforeRegisterRoutes(options, app) {
|
40
39
|
await oneServe(oneOptions, buildInfo, app);
|
package/dist/esm/serve.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["FSExtra","setServerGlobals","setupBuildInfo","ensureExists","process","on","err","console","error","stack","serve","args","buildInfo","readJSON","oneOptions","labelProcess","removeUndefined","loadEnv","vxrnServe","oneServe","app","server","port","host","compress","
|
1
|
+
{"version":3,"names":["FSExtra","setServerGlobals","setupBuildInfo","ensureExists","process","on","err","console","error","stack","serve","args","buildInfo","readJSON","oneOptions","labelProcess","removeUndefined","loadEnv","vxrnServe","oneServe","app","server","port","host","compress","beforeRegisterRoutes","options","afterRegisterRoutes"],"sources":["../../src/serve.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO;AAEP,OAAOA,OAAA,MAAa;AAGpB,SAASC,gBAAA,QAAwB;AACjC,SAASC,cAAA,QAAsB;AAC/B,SAASC,YAAA,QAAoB;AAG7BC,OAAA,CAAQC,EAAA,CAAG,qBAAsBC,GAAA,IAAQ;EACvCC,OAAA,CAAQC,KAAA,CAAM,4BAA4BF,GAAA,EAAKG,KAAA,IAASH,GAAG;AAC7D,CAAC;AAED,eAAsBI,MAAMC,IAAA,GAA+C,CAAC,GAAG;EAC7E,MAAMC,SAAA,GAAa,MAAMZ,OAAA,CAAQa,QAAA,CAAS,qBAAqB;IACzD;MAAEC;IAAW,IAAIF,SAAA;EAEvBX,gBAAA,CAAiB,GACjBC,cAAA,CAAeU,SAAS,GACxBT,YAAA,CAAaW,UAAU;EAGvB,MAAM;MAAEC;IAAa,IAAI,MAAM,OAAO,yBAAqB;IACrD;MAAEC;IAAgB,IAAI,MAAM,OAAO,6BAAyB;IAC5D;MAAEC,OAAA;MAASP,KAAA,EAAOQ;IAAU,IAAI,MAAM,OAAO,YAAY;IACzD;MAAEC;IAAS,IAAI,MAAM,OAAO,uBAAmB;EAErD,OAAAJ,YAAA,CAAa,OAAO,GAEhBJ,IAAA,CAAKM,OAAA,KACP,MAAMA,OAAA,CAAQ,YAAY,IAGrB,MAAMC,SAAA,CAAU;IACrBE,GAAA,EAAKT,IAAA,CAAKS,GAAA;IAAA;IAEV,GAAGN,UAAA,CAAWO,MAAA;IAAA;IAEd,GAAGL,eAAA,CAAgB;MACjBM,IAAA,EAAMX,IAAA,CAAKW,IAAA,GAAO,CAACX,IAAA,CAAKW,IAAA,GAAO;MAC/BC,IAAA,EAAMZ,IAAA,CAAKY,IAAA;MACXC,QAAA,EAAUb,IAAA,CAAKa;IACjB,CAAC;IAED,MAAMC,qBAAqBC,OAAA,EAASN,GAAA,EAAK;MACvC,MAAMD,QAAA,CAASL,UAAA,EAAYF,SAAA,EAAWQ,GAAG;IAC3C;IAEA,MAAMO,oBAAoBD,OAAA,EAASN,GAAA,EAAK,CAAC;EAC3C,CAAC;AACH","ignoreList":[]}
|
package/dist/esm/serve.native.js
CHANGED
@@ -34,8 +34,7 @@ async function serve() {
|
|
34
34
|
...removeUndefined({
|
35
35
|
port: args.port ? +args.port : void 0,
|
36
36
|
host: args.host,
|
37
|
-
compress: args.compress
|
38
|
-
platform: args.platform
|
37
|
+
compress: args.compress
|
39
38
|
}),
|
40
39
|
async beforeRegisterRoutes(options, app) {
|
41
40
|
await oneServe(oneOptions, buildInfo, app);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["FSExtra","setServerGlobals","setupBuildInfo","ensureExists","process","on","err","console","error","stack","serve","args","arguments","length","buildInfo","readJSON","oneOptions","labelProcess","removeUndefined","loadEnv","vxrnServe","oneServe","app","server","port","host","compress","
|
1
|
+
{"version":3,"names":["FSExtra","setServerGlobals","setupBuildInfo","ensureExists","process","on","err","console","error","stack","serve","args","arguments","length","buildInfo","readJSON","oneOptions","labelProcess","removeUndefined","loadEnv","vxrnServe","oneServe","app","server","port","host","compress","beforeRegisterRoutes","options","afterRegisterRoutes"],"sources":["../../src/serve.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO;AAEP,OAAOA,OAAA,MAAa;AAGpB,SAASC,gBAAA,QAAwB;AACjC,SAASC,cAAA,QAAsB;AAC/B,SAASC,YAAA,QAAoB;AAG7BC,OAAA,CAAQC,EAAA,CAAG,qBAAqB,UAASC,GAAA;EACvCC,OAAA,CAAQC,KAAA,CAAM,4BAA4BF,GAAA,EAAKG,KAAA,IAASH,GAAG;AAC7D,CAAC;AAED,eAAsBI,MAAA,EAAM;EAC1B,IAAAC,IAAM,GAAAC,SAAa,CAAAC,MAAM,QAAQD,SAAS,iBAAAA,SAClC,QAAW;IAAAE,SAAI,SAAAd,OAAA,CAAAe,QAAA;IAAA;MAAAC;IAAA,IAAAF,SAAA;EAEvBb,gBAAA,CAAiB,GACjBC,cAAA,CAAeY,SAAS,GACxBX,YAAA,CAAaa,UAAU;EAGvB;MAAMC;IAAE,IAAa,MAAI,MAAM,gCAAO;IAAqB;MACrDC;IAAE,IAAgB,MAAI,MAAM,oCAAO;IAAyB;MAC5DC,OAAE;MAAAT,KAAS,EAAAU;IAAO,IAAU,MAAI,MAAM,aAAO;IAAY;MACzDC;IAAE,IAAS,MAAI,MAAM,8BAAO;EAElC,OAAAJ,YAAA,CAAa,OAAO,GAEhBN,IAAA,CAAKQ,OAAA,KACP,MAAMA,OAAA,CAAQ,YAAY,IAGrB,MAAMC,SAAA,CAAU;IACrBE,GAAA,EAAKX,IAAA,CAAKW,GAAA;IAAA;IAEV,GAAGN,UAAA,CAAWO,MAAA;IAAA;IAEd,GAAGL,eAAA,CAAgB;MACjBM,IAAA,EAAMb,IAAA,CAAKa,IAAA,GAAO,CAACb,IAAA,CAAKa,IAAA,GAAO;MAC/BC,IAAA,EAAMd,IAAA,CAAKc,IAAA;MACXC,QAAA,EAAUf,IAAA,CAAKe;IACjB,CAAC;IAED,MAAMC,qBAAqBC,OAAA,EAASN,GAAA,EAAK;MACvC,MAAMD,QAAA,CAASL,UAAA,EAAYF,SAAA,EAAWQ,GAAG;IAC3C;IAEA,MAAMO,oBAAoBD,OAAA,EAASN,GAAA,EAAK,CAAC;EAC3C,CAAC;AACH","ignoreList":[]}
|
@@ -0,0 +1,85 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import FSExtra from "fs-extra";
|
3
|
+
import { isMatching, P } from "ts-pattern";
|
4
|
+
import { createApiServerlessFunction } from "./generate/createApiServerlessFunction";
|
5
|
+
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction";
|
6
|
+
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base";
|
7
|
+
import { serverlessVercelPackageJson } from "./config/vc-package-base";
|
8
|
+
import { vercelBuildOutputConfig } from "./config/vc-build-output-config-base";
|
9
|
+
const { copy, ensureDir, writeJSON } = FSExtra;
|
10
|
+
async function moveAllFiles(src, dest) {
|
11
|
+
try {
|
12
|
+
await copy(src, dest, { overwrite: !0, errorOnExist: !1 });
|
13
|
+
} catch (err) {
|
14
|
+
console.error("Error moving files:", err);
|
15
|
+
}
|
16
|
+
}
|
17
|
+
const buildVercelOutputDirectory = async ({
|
18
|
+
apiOutput,
|
19
|
+
buildInfoForWriting,
|
20
|
+
clientDir,
|
21
|
+
oneOptionsRoot,
|
22
|
+
postBuildLogs
|
23
|
+
}) => {
|
24
|
+
const { routeToBuildInfo } = buildInfoForWriting;
|
25
|
+
if (apiOutput) {
|
26
|
+
const compiltedApiRoutes = (apiOutput?.output ?? []).filter(
|
27
|
+
(o) => isMatching({ code: P.string, facadeModuleId: P.string }, o)
|
28
|
+
);
|
29
|
+
for (const route of buildInfoForWriting.manifest.apiRoutes) {
|
30
|
+
const compiledRoute = compiltedApiRoutes.find((compiled) => compiled.facadeModuleId.includes(route.file.replace("./", "")));
|
31
|
+
compiledRoute ? (postBuildLogs.push(
|
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
|
+
)) : console.warn(`
|
39
|
+
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route.file);
|
40
|
+
}
|
41
|
+
}
|
42
|
+
const vercelOutputFunctionsDir = join(oneOptionsRoot, "dist", ".vercel/output/functions");
|
43
|
+
await ensureDir(vercelOutputFunctionsDir);
|
44
|
+
for (const route of buildInfoForWriting.manifest.pageRoutes)
|
45
|
+
switch (route.type) {
|
46
|
+
case "ssr": {
|
47
|
+
routeToBuildInfo[route.file] && (postBuildLogs.push(
|
48
|
+
`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`
|
49
|
+
), await createSsrServerlessFunction(
|
50
|
+
route.page,
|
51
|
+
buildInfoForWriting,
|
52
|
+
oneOptionsRoot,
|
53
|
+
postBuildLogs
|
54
|
+
));
|
55
|
+
break;
|
56
|
+
}
|
57
|
+
default:
|
58
|
+
break;
|
59
|
+
}
|
60
|
+
const vercelMiddlewareDir = join(oneOptionsRoot, "dist", ".vercel/output/functions/_middleware");
|
61
|
+
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(
|
62
|
+
`[one.build][vercel] copying middlewares from ${join(oneOptionsRoot, "dist", "middlewares")} to ${vercelMiddlewareDir}`
|
63
|
+
), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
64
|
+
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "index.js"));
|
65
|
+
postBuildLogs.push(
|
66
|
+
`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`
|
67
|
+
), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(
|
68
|
+
`[one.build][vercel] writing .vc-config.json to ${join(vercelMiddlewareDir, ".vc-config.json")}`
|
69
|
+
), await writeJSON(resolve(join(vercelMiddlewareDir, ".vc-config.json")), {
|
70
|
+
...serverlessVercelNodeJsConfig,
|
71
|
+
handler: "_middleware.js"
|
72
|
+
});
|
73
|
+
const vercelOutputStaticDir = resolve(join(oneOptionsRoot, "dist", ".vercel/output/static"));
|
74
|
+
await ensureDir(vercelOutputStaticDir), postBuildLogs.push(
|
75
|
+
`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`
|
76
|
+
), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
77
|
+
const vercelConfigFilePath = resolve(
|
78
|
+
join(oneOptionsRoot, "dist", ".vercel/output", "config.json")
|
79
|
+
);
|
80
|
+
await writeJSON(vercelConfigFilePath, vercelBuildOutputConfig), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
81
|
+
};
|
82
|
+
export {
|
83
|
+
buildVercelOutputDirectory
|
84
|
+
};
|
85
|
+
//# sourceMappingURL=buildVercelOutputDirectory.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],
|
4
|
+
"mappings": "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",
|
5
|
+
"names": []
|
6
|
+
}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import FSExtra from "fs-extra";
|
3
|
+
import { isMatching, P } from "ts-pattern";
|
4
|
+
import { createApiServerlessFunction } from "./generate/createApiServerlessFunction.mjs";
|
5
|
+
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction.mjs";
|
6
|
+
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base.mjs";
|
7
|
+
import { serverlessVercelPackageJson } from "./config/vc-package-base.mjs";
|
8
|
+
import { vercelBuildOutputConfig } from "./config/vc-build-output-config-base.mjs";
|
9
|
+
const {
|
10
|
+
copy,
|
11
|
+
ensureDir,
|
12
|
+
writeJSON
|
13
|
+
} = FSExtra;
|
14
|
+
async function moveAllFiles(src, dest) {
|
15
|
+
try {
|
16
|
+
await copy(src, dest, {
|
17
|
+
overwrite: !0,
|
18
|
+
errorOnExist: !1
|
19
|
+
});
|
20
|
+
} catch (err) {
|
21
|
+
console.error("Error moving files:", err);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
const buildVercelOutputDirectory = async ({
|
25
|
+
apiOutput,
|
26
|
+
buildInfoForWriting,
|
27
|
+
clientDir,
|
28
|
+
oneOptionsRoot,
|
29
|
+
postBuildLogs
|
30
|
+
}) => {
|
31
|
+
const {
|
32
|
+
routeToBuildInfo
|
33
|
+
} = buildInfoForWriting;
|
34
|
+
if (apiOutput) {
|
35
|
+
const compiltedApiRoutes = (apiOutput?.output ?? []).filter(o => isMatching({
|
36
|
+
code: P.string,
|
37
|
+
facadeModuleId: P.string
|
38
|
+
}, o));
|
39
|
+
for (const route of buildInfoForWriting.manifest.apiRoutes) {
|
40
|
+
const compiledRoute = compiltedApiRoutes.find(compiled => compiled.facadeModuleId.includes(route.file.replace("./", "")));
|
41
|
+
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route.page}`), await createApiServerlessFunction(route.page, compiledRoute.code, oneOptionsRoot, postBuildLogs)) : console.warn(`
|
42
|
+
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route.file);
|
43
|
+
}
|
44
|
+
}
|
45
|
+
const vercelOutputFunctionsDir = join(oneOptionsRoot, "dist", ".vercel/output/functions");
|
46
|
+
await ensureDir(vercelOutputFunctionsDir);
|
47
|
+
for (const route of buildInfoForWriting.manifest.pageRoutes) switch (route.type) {
|
48
|
+
case "ssr":
|
49
|
+
{
|
50
|
+
routeToBuildInfo[route.file] && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route.page, buildInfoForWriting, oneOptionsRoot, postBuildLogs));
|
51
|
+
break;
|
52
|
+
}
|
53
|
+
default:
|
54
|
+
break;
|
55
|
+
}
|
56
|
+
const vercelMiddlewareDir = join(oneOptionsRoot, "dist", ".vercel/output/functions/_middleware");
|
57
|
+
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${join(oneOptionsRoot, "dist", "middlewares")} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
58
|
+
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "index.js"));
|
59
|
+
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(`[one.build][vercel] writing .vc-config.json to ${join(vercelMiddlewareDir, ".vc-config.json")}`), await writeJSON(resolve(join(vercelMiddlewareDir, ".vc-config.json")), {
|
60
|
+
...serverlessVercelNodeJsConfig,
|
61
|
+
handler: "_middleware.js"
|
62
|
+
});
|
63
|
+
const vercelOutputStaticDir = resolve(join(oneOptionsRoot, "dist", ".vercel/output/static"));
|
64
|
+
await ensureDir(vercelOutputStaticDir), postBuildLogs.push(`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
65
|
+
const vercelConfigFilePath = resolve(join(oneOptionsRoot, "dist", ".vercel/output", "config.json"));
|
66
|
+
await writeJSON(vercelConfigFilePath, vercelBuildOutputConfig), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
67
|
+
};
|
68
|
+
export { buildVercelOutputDirectory };
|
69
|
+
//# sourceMappingURL=buildVercelOutputDirectory.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","serverlessVercelNodeJsConfig","serverlessVercelPackageJson","vercelBuildOutputConfig","copy","ensureDir","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","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","handler","vercelOutputStaticDir","vercelConfigFilePath"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAA,EAAMC,OAAA,QAAe;AAE9B,OAAOC,OAAA,MAAa;AAEpB,SAASC,UAAA,EAAYC,CAAA,QAAS;AAE9B,SAASC,2BAAA,QAAmC;AAC5C,SAASC,2BAAA,QAAmC;AAC5C,SAASC,4BAAA,QAAoC;AAC7C,SAASC,2BAAA,QAAmC;AAC5C,SAASC,uBAAA,QAA+B;AAIxC,MAAM;EAAEC,IAAA;EAAMC,SAAA;EAAWC;AAAU,IAAIV,OAAA;AAEvC,eAAeW,aAAaC,GAAA,EAAaC,IAAA,EAAc;EACrD,IAAI;IACF,MAAML,IAAA,CAAKI,GAAA,EAAKC,IAAA,EAAM;MAAEC,SAAA,EAAW;MAAMC,YAAA,EAAc;IAAM,CAAC;EAChE,SAASC,GAAA,EAAK;IACZC,OAAA,CAAQC,KAAA,CAAM,uBAAuBF,GAAG;EAC1C;AACF;AAEO,MAAMG,0BAAA,GAA6B,MAAAA,CAAO;EAC/CC,SAAA;EACAC,mBAAA;EACAC,SAAA;EACAC,cAAA;EACAC;AACF,MAMM;EACJ,MAAM;IAAEC;EAAiB,IAAIJ,mBAAA;EAC7B,IAAID,SAAA,EAAW;IACb,MAAMM,kBAAA,IAAsBN,SAAA,EAAWO,MAAA,IAAU,EAAC,EAAGC,MAAA,CAAQC,CAAA,IAC3D5B,UAAA,CAAW;MAAE6B,IAAA,EAAM5B,CAAA,CAAE6B,MAAA;MAAQC,cAAA,EAAgB9B,CAAA,CAAE6B;IAAO,GAAGF,CAAC,CAC5D;IACA,WAAWI,KAAA,IAASZ,mBAAA,CAAoBa,QAAA,CAASC,SAAA,EAAW;MAC1D,MAAMC,aAAA,GAAgBV,kBAAA,CAAmBW,IAAA,CAAMC,QAAA,IAChCA,QAAA,CAASN,cAAA,CAAeO,QAAA,CAASN,KAAA,CAAMO,IAAA,CAAKC,OAAA,CAAQ,MAAM,EAAE,CAAC,CAE3E;MACGL,aAAA,IACFZ,aAAA,CAAckB,IAAA,CACZ,mEAAmET,KAAA,CAAMU,IAAI,EAC/E,GACA,MAAMxC,2BAAA,CACJ8B,KAAA,CAAMU,IAAA,EACNP,aAAA,CAAcN,IAAA,EACdP,cAAA,EACAC,aACF,KAEAP,OAAA,CAAQ2B,IAAA,CAAK;AAAA,sEAAkEX,KAAA,CAAMO,IAAI;IAE7F;EACF;EAEA,MAAMK,wBAAA,GAA2B/C,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,0BAA0B;EACxF,MAAMd,SAAA,CAAUoC,wBAAwB;EAExC,WAAWZ,KAAA,IAASZ,mBAAA,CAAoBa,QAAA,CAASY,UAAA,EAC/C,QAAQb,KAAA,CAAMc,IAAA;IACZ,KAAK;MAAO;QAEatB,gBAAA,CAAiBQ,KAAA,CAAMO,IAAI,MAEhDhB,aAAA,CAAckB,IAAA,CACZ,wDAAwDT,KAAA,CAAMU,IAAI,SAASV,KAAA,CAAMc,IAAI,EACvF,GACA,MAAM3C,2BAAA,CACJ6B,KAAA,CAAMU,IAAA,EACNtB,mBAAA,EACAE,cAAA,EACAC,aACF;QAEF;MACF;IACA;MAGE;EACJ;EAGF,MAAMwB,mBAAA,GAAsBlD,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,sCAAsC;EAC/F,MAAMd,SAAA,CAAUuC,mBAAmB,GACnCxB,aAAA,CAAckB,IAAA,CACZ,gDAAgD5C,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,aAAa,CAAC,OAAOyB,mBAAmB,EACvH,GACA,MAAMrC,YAAA,CAAaZ,OAAA,CAAQD,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,aAAa,CAAC,GAAGyB,mBAAmB;EAC5F,MAAMC,mCAAA,GAAsClD,OAAA,CAAQD,IAAA,CAAKkD,mBAAA,EAAqB,UAAU,CAAC;EACzFxB,aAAA,CAAckB,IAAA,CACZ,+CAA+CO,mCAAmC,EACpF,GACA,MAAMvC,SAAA,CAAUuC,mCAAA,EAAqC3C,2BAA2B,GAChFkB,aAAA,CAAckB,IAAA,CACZ,kDAAkD5C,IAAA,CAAKkD,mBAAA,EAAqB,iBAAiB,CAAC,EAChG,GACA,MAAMtC,SAAA,CAAUX,OAAA,CAAQD,IAAA,CAAKkD,mBAAA,EAAqB,iBAAiB,CAAC,GAAG;IACrE,GAAG3C,4BAAA;IACH6C,OAAA,EAAS;EACX,CAAC;EAED,MAAMC,qBAAA,GAAwBpD,OAAA,CAAQD,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,uBAAuB,CAAC;EAC3F,MAAMd,SAAA,CAAU0C,qBAAqB,GAErC3B,aAAA,CAAckB,IAAA,CACZ,iDAAiDpB,SAAS,OAAO6B,qBAAqB,EACxF,GACA,MAAMxC,YAAA,CAAaW,SAAA,EAAW6B,qBAAqB;EAInD,MAAMC,oBAAA,GAAuBrD,OAAA,CAC3BD,IAAA,CAAKyB,cAAA,EAAgB,QAAQ,kBAAkB,aAAa,CAC9D;EACA,MAAMb,SAAA,CAAU0C,oBAAA,EAAsB7C,uBAAuB,GAC7DiB,aAAA,CAAckB,IAAA,CAAK,uCAAuCU,oBAAoB,EAAE;AAClF","ignoreList":[]}
|
@@ -0,0 +1,107 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import FSExtra from "fs-extra";
|
3
|
+
import { isMatching, P } from "ts-pattern";
|
4
|
+
import { createApiServerlessFunction } from "./generate/createApiServerlessFunction.native.js";
|
5
|
+
import { createSsrServerlessFunction } from "./generate/createSsrServerlessFunction.native.js";
|
6
|
+
import { serverlessVercelNodeJsConfig } from "./config/vc-config-base.native.js";
|
7
|
+
import { serverlessVercelPackageJson } from "./config/vc-package-base.native.js";
|
8
|
+
import { vercelBuildOutputConfig } from "./config/vc-build-output-config-base.native.js";
|
9
|
+
var {
|
10
|
+
copy,
|
11
|
+
ensureDir,
|
12
|
+
writeJSON
|
13
|
+
} = FSExtra;
|
14
|
+
async function moveAllFiles(src, dest) {
|
15
|
+
try {
|
16
|
+
await copy(src, dest, {
|
17
|
+
overwrite: !0,
|
18
|
+
errorOnExist: !1
|
19
|
+
});
|
20
|
+
} catch (err) {
|
21
|
+
console.error("Error moving files:", err);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
var buildVercelOutputDirectory = async function (param) {
|
25
|
+
var {
|
26
|
+
apiOutput,
|
27
|
+
buildInfoForWriting,
|
28
|
+
clientDir,
|
29
|
+
oneOptionsRoot,
|
30
|
+
postBuildLogs
|
31
|
+
} = param,
|
32
|
+
{
|
33
|
+
routeToBuildInfo
|
34
|
+
} = buildInfoForWriting;
|
35
|
+
if (apiOutput) {
|
36
|
+
var _apiOutput_output,
|
37
|
+
compiltedApiRoutes = ((_apiOutput_output = apiOutput?.output) !== null && _apiOutput_output !== void 0 ? _apiOutput_output : []).filter(function (o) {
|
38
|
+
return isMatching({
|
39
|
+
code: P.string,
|
40
|
+
facadeModuleId: P.string
|
41
|
+
}, o);
|
42
|
+
}),
|
43
|
+
_iteratorNormalCompletion = !0,
|
44
|
+
_didIteratorError = !1,
|
45
|
+
_iteratorError = void 0;
|
46
|
+
try {
|
47
|
+
for (var _loop = async function () {
|
48
|
+
var route2 = _step.value,
|
49
|
+
compiledRoute = compiltedApiRoutes.find(function (compiled) {
|
50
|
+
var flag = compiled.facadeModuleId.includes(route2.file.replace("./", ""));
|
51
|
+
return flag;
|
52
|
+
});
|
53
|
+
compiledRoute ? (postBuildLogs.push(`[one.build][vercel] generating serverless function for apiRoute ${route2.page}`), await createApiServerlessFunction(route2.page, compiledRoute.code, oneOptionsRoot, postBuildLogs)) : console.warn(`
|
54
|
+
\u{1F528}[one.build][vercel] apiRoute missing code compilation for`, route2.file);
|
55
|
+
}, _iterator = buildInfoForWriting.manifest.apiRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) await _loop();
|
56
|
+
} catch (err) {
|
57
|
+
_didIteratorError = !0, _iteratorError = err;
|
58
|
+
} finally {
|
59
|
+
try {
|
60
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
61
|
+
} finally {
|
62
|
+
if (_didIteratorError) throw _iteratorError;
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
66
|
+
var vercelOutputFunctionsDir = join(oneOptionsRoot, "dist", ".vercel/output/functions");
|
67
|
+
await ensureDir(vercelOutputFunctionsDir);
|
68
|
+
var _iteratorNormalCompletion1 = !0,
|
69
|
+
_didIteratorError1 = !1,
|
70
|
+
_iteratorError1 = void 0;
|
71
|
+
try {
|
72
|
+
for (var _iterator1 = buildInfoForWriting.manifest.pageRoutes[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
|
73
|
+
var route = _step1.value;
|
74
|
+
switch (route.type) {
|
75
|
+
case "ssr":
|
76
|
+
{
|
77
|
+
var builtPageRoute = routeToBuildInfo[route.file];
|
78
|
+
builtPageRoute && (postBuildLogs.push(`[one.build][vercel] generate serverless function for ${route.page} with ${route.type}`), await createSsrServerlessFunction(route.page, buildInfoForWriting, oneOptionsRoot, postBuildLogs));
|
79
|
+
break;
|
80
|
+
}
|
81
|
+
default:
|
82
|
+
break;
|
83
|
+
}
|
84
|
+
}
|
85
|
+
} catch (err) {
|
86
|
+
_didIteratorError1 = !0, _iteratorError1 = err;
|
87
|
+
} finally {
|
88
|
+
try {
|
89
|
+
!_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
|
90
|
+
} finally {
|
91
|
+
if (_didIteratorError1) throw _iteratorError1;
|
92
|
+
}
|
93
|
+
}
|
94
|
+
var vercelMiddlewareDir = join(oneOptionsRoot, "dist", ".vercel/output/functions/_middleware");
|
95
|
+
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${join(oneOptionsRoot, "dist", "middlewares")} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
96
|
+
var vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "index.js"));
|
97
|
+
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(`[one.build][vercel] writing .vc-config.json to ${join(vercelMiddlewareDir, ".vc-config.json")}`), await writeJSON(resolve(join(vercelMiddlewareDir, ".vc-config.json")), {
|
98
|
+
...serverlessVercelNodeJsConfig,
|
99
|
+
handler: "_middleware.js"
|
100
|
+
});
|
101
|
+
var vercelOutputStaticDir = resolve(join(oneOptionsRoot, "dist", ".vercel/output/static"));
|
102
|
+
await ensureDir(vercelOutputStaticDir), postBuildLogs.push(`[one.build][vercel] copying static files from ${clientDir} to ${vercelOutputStaticDir}`), await moveAllFiles(clientDir, vercelOutputStaticDir);
|
103
|
+
var vercelConfigFilePath = resolve(join(oneOptionsRoot, "dist", ".vercel/output", "config.json"));
|
104
|
+
await writeJSON(vercelConfigFilePath, vercelBuildOutputConfig), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
105
|
+
};
|
106
|
+
export { buildVercelOutputDirectory };
|
107
|
+
//# sourceMappingURL=buildVercelOutputDirectory.native.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["join","resolve","FSExtra","isMatching","P","createApiServerlessFunction","createSsrServerlessFunction","serverlessVercelNodeJsConfig","serverlessVercelPackageJson","vercelBuildOutputConfig","copy","ensureDir","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","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","handler"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
const vercelBuildOutputConfig = {
|
2
|
+
version: 3,
|
3
|
+
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
|
+
routes: [
|
5
|
+
{
|
6
|
+
src: "/(.*)",
|
7
|
+
status: 200
|
8
|
+
}
|
9
|
+
]
|
10
|
+
};
|
11
|
+
export {
|
12
|
+
vercelBuildOutputConfig
|
13
|
+
};
|
14
|
+
//# sourceMappingURL=vc-build-output-config-base.js.map
|
@@ -0,0 +1,10 @@
|
|
1
|
+
const vercelBuildOutputConfig = {
|
2
|
+
version: 3,
|
3
|
+
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
|
+
routes: [{
|
5
|
+
src: "/(.*)",
|
6
|
+
status: 200
|
7
|
+
}]
|
8
|
+
};
|
9
|
+
export { vercelBuildOutputConfig };
|
10
|
+
//# sourceMappingURL=vc-build-output-config-base.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["vercelBuildOutputConfig","version","routes","src","status"],"sources":["../../../../../src/vercel/build/config/vc-build-output-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,uBAAA,GAA0B;EACrCC,OAAA,EAAS;EAAA;EAETC,MAAA,EAAQ,CACN;IACEC,GAAA,EAAK;IACLC,MAAA,EAAQ;EACV;AAEJ","ignoreList":[]}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
var vercelBuildOutputConfig = {
|
2
|
+
version: 3,
|
3
|
+
// https://vercel.com/docs/build-output-api/v3/configuration#routes
|
4
|
+
routes: [{
|
5
|
+
src: "/(.*)",
|
6
|
+
status: 200
|
7
|
+
}]
|
8
|
+
};
|
9
|
+
export { vercelBuildOutputConfig };
|
10
|
+
//# sourceMappingURL=vc-build-output-config-base.native.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["vercelBuildOutputConfig","version","routes","src","status"],"sources":["../../../../../src/vercel/build/config/vc-build-output-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,IAAAA,uBAAM;EACXC,OAAA,EAAS;EAAA;EAETC,MAAA,EAAQ,CACN;IACEC,GAAA,EAAK;IACLC,MAAA,EAAQ;EACV;AAEJ","ignoreList":[]}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
const serverlessVercelNodeJsConfig = {
|
2
|
+
environment: {},
|
3
|
+
runtime: "nodejs20.x",
|
4
|
+
handler: "entrypoint/index.js",
|
5
|
+
launcherType: "Nodejs",
|
6
|
+
shouldAddHelpers: !0,
|
7
|
+
shouldAddSourceMapSupport: !0
|
8
|
+
// @TODO: We could support edge functions in the future.
|
9
|
+
// Requires a larger discusion of how to handle edge functions in general.
|
10
|
+
// +ssr-edge.tsx or +edge.tsx down the road.
|
11
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#edge-functions
|
12
|
+
// runtime: 'edge',
|
13
|
+
// regions: 'all',
|
14
|
+
// @TODO: We could support ISR in the future as well.
|
15
|
+
// Requires a larger discusion of how to handle ISR in general.
|
16
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#prerender-functions
|
17
|
+
// We would need to generate the bypassToken and copy *.html fallback files to the *.func folder.
|
18
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#fallback-static-file
|
19
|
+
// bypassToken?: string;
|
20
|
+
};
|
21
|
+
export {
|
22
|
+
serverlessVercelNodeJsConfig
|
23
|
+
};
|
24
|
+
//# sourceMappingURL=vc-config-base.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../src/vercel/build/config/vc-config-base.ts"],
|
4
|
+
"mappings": "AAEO,MAAM,+BAA+B;AAAA,EAC1C,aAAa,CAAC;AAAA,EACd,SAAS;AAAA,EACT,SAAS;AAAA,EACT,cAAc;AAAA,EACd,kBAAkB;AAAA,EAClB,2BAA2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAa7B;",
|
5
|
+
"names": []
|
6
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
const serverlessVercelNodeJsConfig = {
|
2
|
+
environment: {},
|
3
|
+
runtime: "nodejs20.x",
|
4
|
+
handler: "entrypoint/index.js",
|
5
|
+
launcherType: "Nodejs",
|
6
|
+
shouldAddHelpers: !0,
|
7
|
+
shouldAddSourceMapSupport: !0
|
8
|
+
// @TODO: We could support edge functions in the future.
|
9
|
+
// Requires a larger discusion of how to handle edge functions in general.
|
10
|
+
// +ssr-edge.tsx or +edge.tsx down the road.
|
11
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#edge-functions
|
12
|
+
// runtime: 'edge',
|
13
|
+
// regions: 'all',
|
14
|
+
// @TODO: We could support ISR in the future as well.
|
15
|
+
// Requires a larger discusion of how to handle ISR in general.
|
16
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#prerender-functions
|
17
|
+
// We would need to generate the bypassToken and copy *.html fallback files to the *.func folder.
|
18
|
+
// https://vercel.com/docs/build-output-api/v3/primitives#fallback-static-file
|
19
|
+
// bypassToken?: string;
|
20
|
+
};
|
21
|
+
export { serverlessVercelNodeJsConfig };
|
22
|
+
//# sourceMappingURL=vc-config-base.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["serverlessVercelNodeJsConfig","environment","runtime","handler","launcherType","shouldAddHelpers","shouldAddSourceMapSupport"],"sources":["../../../../../src/vercel/build/config/vc-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,MAAMA,4BAAA,GAA+B;EAC1CC,WAAA,EAAa,CAAC;EACdC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,YAAA,EAAc;EACdC,gBAAA,EAAkB;EAClBC,yBAAA,EAA2B;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAa7B","ignoreList":[]}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
var serverlessVercelNodeJsConfig = {
|
2
|
+
environment: {},
|
3
|
+
runtime: "nodejs20.x",
|
4
|
+
handler: "entrypoint/index.js",
|
5
|
+
launcherType: "Nodejs",
|
6
|
+
shouldAddHelpers: !0,
|
7
|
+
shouldAddSourceMapSupport: !0
|
8
|
+
};
|
9
|
+
export { serverlessVercelNodeJsConfig };
|
10
|
+
//# sourceMappingURL=vc-config-base.native.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["serverlessVercelNodeJsConfig","environment","runtime","handler","launcherType","shouldAddHelpers","shouldAddSourceMapSupport"],"sources":["../../../../../src/vercel/build/config/vc-config-base.ts"],"sourcesContent":[null],"mappings":"AAEO,IAAAA,4BAAM;EACXC,WAAA,EAAa,CAAC;EACdC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,YAAA,EAAc;EACdC,gBAAA,EAAkB;EAClBC,yBAAA,EAA2B;AAAA;AAAA,SAAAN,4BAAA","ignoreList":[]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["serverlessVercelPackageJson","type"],"sources":["../../../../../src/vercel/build/config/vc-package-base.ts"],"sourcesContent":[null],"mappings":"AAAO,MAAMA,2BAAA,GAA8B;EAAEC,IAAA,EAAM;AAAS","ignoreList":[]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["serverlessVercelPackageJson"],"sources":["../../../../../src/vercel/build/config/vc-package-base.ts"],"sourcesContent":[null],"mappings":"AAAO,IAAAA,2BAAM","ignoreList":[]}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import fs from "fs-extra";
|
3
|
+
import { serverlessVercelPackageJson } from "../config/vc-package-base";
|
4
|
+
import { serverlessVercelNodeJsConfig } from "../config/vc-config-base";
|
5
|
+
async function createApiServerlessFunction(pageName, code, oneOptionsRoot, postBuildLogs) {
|
6
|
+
try {
|
7
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${pageName}`);
|
8
|
+
const funcFolder = join(oneOptionsRoot, "dist", `.vercel/output/functions/${pageName}.func`);
|
9
|
+
await fs.ensureDir(funcFolder), code.includes("react") && (postBuildLogs.push(
|
10
|
+
`[one.build][vercel.createSsrServerlessFunction] detected react in depenency tree for ${pageName}`
|
11
|
+
), await fs.copy(
|
12
|
+
resolve(join(oneOptionsRoot, "..", "..", "node_modules", "react")),
|
13
|
+
resolve(join(funcFolder, "node_modules", "react"))
|
14
|
+
));
|
15
|
+
const distAssetsFolder = resolve(join(funcFolder, "assets"));
|
16
|
+
postBuildLogs.push(
|
17
|
+
`[one.build][vercel.createSsrServerlessFunction] copy shared assets to ${distAssetsFolder}`
|
18
|
+
), await fs.copy(resolve(join(oneOptionsRoot, "dist", "api", "assets")), distAssetsFolder), await fs.ensureDir(resolve(join(funcFolder, "entrypoint")));
|
19
|
+
const entrypointFilePath = resolve(join(funcFolder, "entrypoint", "index.js"));
|
20
|
+
postBuildLogs.push(
|
21
|
+
`[one.build][vercel.createSsrServerlessFunction] writing entrypoint to ${entrypointFilePath}`
|
22
|
+
), await fs.writeFile(entrypointFilePath, code);
|
23
|
+
const packageJsonFilePath = resolve(join(funcFolder, "package.json"));
|
24
|
+
return postBuildLogs.push(
|
25
|
+
`[one.build][vercel.createSsrServerlessFunction] writing package.json to ${packageJsonFilePath}`
|
26
|
+
), await fs.writeJSON(packageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(
|
27
|
+
`[one.build][vercel.createSsrServerlessFunction] writing .vc-config.json to ${join(funcFolder, ".vc-config.json")}`
|
28
|
+
), fs.writeJson(join(funcFolder, ".vc-config.json"), {
|
29
|
+
...serverlessVercelNodeJsConfig,
|
30
|
+
handler: "entrypoint/index.js"
|
31
|
+
});
|
32
|
+
} catch (e) {
|
33
|
+
console.error(
|
34
|
+
`[one.build][vercel.createSsrServerlessFunction] failed to generate func for ${pageName}`,
|
35
|
+
e
|
36
|
+
);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
export {
|
40
|
+
createApiServerlessFunction
|
41
|
+
};
|
42
|
+
//# sourceMappingURL=createApiServerlessFunction.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],
|
4
|
+
"mappings": "AAAA,SAAS,MAAM,eAAe;AAE9B,OAAO,QAAQ;AAEf,SAAS,mCAAmC;AAC5C,SAAS,oCAAoC;AAI7C,eAAsB,4BACpB,UACA,MACA,gBACA,eACA;AACA,MAAI;AACF,kBAAc,KAAK,6DAA6D,QAAQ,EAAE;AAE1F,UAAM,aAAa,KAAK,gBAAgB,QAAQ,4BAA4B,QAAQ,OAAO;AAC3F,UAAM,GAAG,UAAU,UAAU,GAEzB,KAAK,SAAS,OAAO,MACvB,cAAc;AAAA,MACZ,wFAAwF,QAAQ;AAAA,IAClG,GACA,MAAM,GAAG;AAAA,MACP,QAAQ,KAAK,gBAAgB,MAAM,MAAM,gBAAgB,OAAO,CAAC;AAAA,MACjE,QAAQ,KAAK,YAAY,gBAAgB,OAAO,CAAC;AAAA,IACnD;AAGF,UAAM,mBAAmB,QAAQ,KAAK,YAAY,QAAQ,CAAC;AAC3D,kBAAc;AAAA,MACZ,yEAAyE,gBAAgB;AAAA,IAC3F,GACA,MAAM,GAAG,KAAK,QAAQ,KAAK,gBAAgB,QAAQ,OAAO,QAAQ,CAAC,GAAG,gBAAgB,GAEtF,MAAM,GAAG,UAAU,QAAQ,KAAK,YAAY,YAAY,CAAC,CAAC;AAC1D,UAAM,qBAAqB,QAAQ,KAAK,YAAY,cAAc,UAAU,CAAC;AAC7E,kBAAc;AAAA,MACZ,yEAAyE,kBAAkB;AAAA,IAC7F,GACA,MAAM,GAAG,UAAU,oBAAoB,IAAI;AAE3C,UAAM,sBAAsB,QAAQ,KAAK,YAAY,cAAc,CAAC;AACpE,yBAAc;AAAA,MACZ,2EAA2E,mBAAmB;AAAA,IAChG,GACA,MAAM,GAAG,UAAU,qBAAqB,2BAA2B,GAEnE,cAAc;AAAA,MACZ,8EAA8E,KAAK,YAAY,iBAAiB,CAAC;AAAA,IACnH,GAGO,GAAG,UAAU,KAAK,YAAY,iBAAiB,GAAG;AAAA,MACvD,GAAG;AAAA,MACH,SAAS;AAAA,IACX,CAAC;AAAA,EACH,SAAS,GAAG;AACV,YAAQ;AAAA,MACN,+EAA+E,QAAQ;AAAA,MACvF;AAAA,IACF;AAAA,EACF;AACF;",
|
5
|
+
"names": []
|
6
|
+
}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import fs from "fs-extra";
|
3
|
+
import { serverlessVercelPackageJson } from "../config/vc-package-base.mjs";
|
4
|
+
import { serverlessVercelNodeJsConfig } from "../config/vc-config-base.mjs";
|
5
|
+
async function createApiServerlessFunction(pageName, code, oneOptionsRoot, postBuildLogs) {
|
6
|
+
try {
|
7
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${pageName}`);
|
8
|
+
const funcFolder = join(oneOptionsRoot, "dist", `.vercel/output/functions/${pageName}.func`);
|
9
|
+
await fs.ensureDir(funcFolder), code.includes("react") && (postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] detected react in depenency tree for ${pageName}`), await fs.copy(resolve(join(oneOptionsRoot, "..", "..", "node_modules", "react")), resolve(join(funcFolder, "node_modules", "react"))));
|
10
|
+
const distAssetsFolder = resolve(join(funcFolder, "assets"));
|
11
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] copy shared assets to ${distAssetsFolder}`), await fs.copy(resolve(join(oneOptionsRoot, "dist", "api", "assets")), distAssetsFolder), await fs.ensureDir(resolve(join(funcFolder, "entrypoint")));
|
12
|
+
const entrypointFilePath = resolve(join(funcFolder, "entrypoint", "index.js"));
|
13
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing entrypoint to ${entrypointFilePath}`), await fs.writeFile(entrypointFilePath, code);
|
14
|
+
const packageJsonFilePath = resolve(join(funcFolder, "package.json"));
|
15
|
+
return postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing package.json to ${packageJsonFilePath}`), await fs.writeJSON(packageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing .vc-config.json to ${join(funcFolder, ".vc-config.json")}`), fs.writeJson(join(funcFolder, ".vc-config.json"), {
|
16
|
+
...serverlessVercelNodeJsConfig,
|
17
|
+
handler: "entrypoint/index.js"
|
18
|
+
});
|
19
|
+
} catch (e) {
|
20
|
+
console.error(`[one.build][vercel.createSsrServerlessFunction] failed to generate func for ${pageName}`, e);
|
21
|
+
}
|
22
|
+
}
|
23
|
+
export { createApiServerlessFunction };
|
24
|
+
//# sourceMappingURL=createApiServerlessFunction.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["join","resolve","fs","serverlessVercelPackageJson","serverlessVercelNodeJsConfig","createApiServerlessFunction","pageName","code","oneOptionsRoot","postBuildLogs","push","funcFolder","ensureDir","includes","copy","distAssetsFolder","entrypointFilePath","writeFile","packageJsonFilePath","writeJSON","writeJson","handler","e","console","error"],"sources":["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,IAAA,EAAMC,OAAA,QAAe;AAE9B,OAAOC,EAAA,MAAQ;AAEf,SAASC,2BAAA,QAAmC;AAC5C,SAASC,4BAAA,QAAoC;AAI7C,eAAsBC,4BACpBC,QAAA,EACAC,IAAA,EACAC,cAAA,EACAC,aAAA,EACA;EACA,IAAI;IACFA,aAAA,CAAcC,IAAA,CAAK,6DAA6DJ,QAAQ,EAAE;IAE1F,MAAMK,UAAA,GAAaX,IAAA,CAAKQ,cAAA,EAAgB,QAAQ,4BAA4BF,QAAQ,OAAO;IAC3F,MAAMJ,EAAA,CAAGU,SAAA,CAAUD,UAAU,GAEzBJ,IAAA,CAAKM,QAAA,CAAS,OAAO,MACvBJ,aAAA,CAAcC,IAAA,CACZ,wFAAwFJ,QAAQ,EAClG,GACA,MAAMJ,EAAA,CAAGY,IAAA,CACPb,OAAA,CAAQD,IAAA,CAAKQ,cAAA,EAAgB,MAAM,MAAM,gBAAgB,OAAO,CAAC,GACjEP,OAAA,CAAQD,IAAA,CAAKW,UAAA,EAAY,gBAAgB,OAAO,CAAC,CACnD;IAGF,MAAMI,gBAAA,GAAmBd,OAAA,CAAQD,IAAA,CAAKW,UAAA,EAAY,QAAQ,CAAC;IAC3DF,aAAA,CAAcC,IAAA,CACZ,yEAAyEK,gBAAgB,EAC3F,GACA,MAAMb,EAAA,CAAGY,IAAA,CAAKb,OAAA,CAAQD,IAAA,CAAKQ,cAAA,EAAgB,QAAQ,OAAO,QAAQ,CAAC,GAAGO,gBAAgB,GAEtF,MAAMb,EAAA,CAAGU,SAAA,CAAUX,OAAA,CAAQD,IAAA,CAAKW,UAAA,EAAY,YAAY,CAAC,CAAC;IAC1D,MAAMK,kBAAA,GAAqBf,OAAA,CAAQD,IAAA,CAAKW,UAAA,EAAY,cAAc,UAAU,CAAC;IAC7EF,aAAA,CAAcC,IAAA,CACZ,yEAAyEM,kBAAkB,EAC7F,GACA,MAAMd,EAAA,CAAGe,SAAA,CAAUD,kBAAA,EAAoBT,IAAI;IAE3C,MAAMW,mBAAA,GAAsBjB,OAAA,CAAQD,IAAA,CAAKW,UAAA,EAAY,cAAc,CAAC;IACpE,OAAAF,aAAA,CAAcC,IAAA,CACZ,2EAA2EQ,mBAAmB,EAChG,GACA,MAAMhB,EAAA,CAAGiB,SAAA,CAAUD,mBAAA,EAAqBf,2BAA2B,GAEnEM,aAAA,CAAcC,IAAA,CACZ,8EAA8EV,IAAA,CAAKW,UAAA,EAAY,iBAAiB,CAAC,EACnH,GAGOT,EAAA,CAAGkB,SAAA,CAAUpB,IAAA,CAAKW,UAAA,EAAY,iBAAiB,GAAG;MACvD,GAAGP,4BAAA;MACHiB,OAAA,EAAS;IACX,CAAC;EACH,SAASC,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAA,CACN,+EAA+ElB,QAAQ,IACvFgB,CACF;EACF;AACF","ignoreList":[]}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { join, resolve } from "node:path";
|
2
|
+
import fs from "fs-extra";
|
3
|
+
import { serverlessVercelPackageJson } from "../config/vc-package-base.native.js";
|
4
|
+
import { serverlessVercelNodeJsConfig } from "../config/vc-config-base.native.js";
|
5
|
+
async function createApiServerlessFunction(pageName, code, oneOptionsRoot, postBuildLogs) {
|
6
|
+
try {
|
7
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${pageName}`);
|
8
|
+
var funcFolder = join(oneOptionsRoot, "dist", `.vercel/output/functions/${pageName}.func`);
|
9
|
+
await fs.ensureDir(funcFolder), code.includes("react") && (postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] detected react in depenency tree for ${pageName}`), await fs.copy(resolve(join(oneOptionsRoot, "..", "..", "node_modules", "react")), resolve(join(funcFolder, "node_modules", "react"))));
|
10
|
+
var distAssetsFolder = resolve(join(funcFolder, "assets"));
|
11
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] copy shared assets to ${distAssetsFolder}`), await fs.copy(resolve(join(oneOptionsRoot, "dist", "api", "assets")), distAssetsFolder), await fs.ensureDir(resolve(join(funcFolder, "entrypoint")));
|
12
|
+
var entrypointFilePath = resolve(join(funcFolder, "entrypoint", "index.js"));
|
13
|
+
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing entrypoint to ${entrypointFilePath}`), await fs.writeFile(entrypointFilePath, code);
|
14
|
+
var packageJsonFilePath = resolve(join(funcFolder, "package.json"));
|
15
|
+
return postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing package.json to ${packageJsonFilePath}`), await fs.writeJSON(packageJsonFilePath, serverlessVercelPackageJson), postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] writing .vc-config.json to ${join(funcFolder, ".vc-config.json")}`), fs.writeJson(join(funcFolder, ".vc-config.json"), {
|
16
|
+
...serverlessVercelNodeJsConfig,
|
17
|
+
handler: "entrypoint/index.js"
|
18
|
+
});
|
19
|
+
} catch (e) {
|
20
|
+
console.error(`[one.build][vercel.createSsrServerlessFunction] failed to generate func for ${pageName}`, e);
|
21
|
+
}
|
22
|
+
}
|
23
|
+
export { createApiServerlessFunction };
|
24
|
+
//# sourceMappingURL=createApiServerlessFunction.native.js.map
|