one 1.1.524 → 1.1.525
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/utils/getPathnameFromFilePath.cjs +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.js +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.js.map +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.native.js +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.native.js.map +2 -2
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.cjs +40 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js +38 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +60 -5
- package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +2 -2
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.cjs +3 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js +3 -1
- package/dist/cjs/vercel/build/generate/createApiServerlessFunction.native.js.map +2 -2
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.cjs +3 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js +3 -1
- package/dist/cjs/vercel/build/generate/createSsrServerlessFunction.native.js.map +2 -2
- package/dist/cjs/vercel/build/getPathFromRoute.cjs +2 -1
- package/dist/cjs/vercel/build/getPathFromRoute.js +2 -2
- package/dist/cjs/vercel/build/getPathFromRoute.js.map +1 -1
- package/dist/cjs/vercel/build/getPathFromRoute.native.js +2 -0
- package/dist/cjs/vercel/build/getPathFromRoute.native.js.map +2 -2
- package/dist/esm/utils/getPathnameFromFilePath.js +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.js.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.mjs +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.mjs.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.native.js +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.native.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js +38 -5
- package/dist/esm/vercel/build/buildVercelOutputDirectory.js.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs +40 -5
- package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -1
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js +57 -5
- package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs +3 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js +3 -1
- package/dist/esm/vercel/build/generate/createApiServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.js.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs +3 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.mjs.map +1 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js +3 -1
- package/dist/esm/vercel/build/generate/createSsrServerlessFunction.native.js.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.js +2 -2
- package/dist/esm/vercel/build/getPathFromRoute.js.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.mjs +2 -1
- package/dist/esm/vercel/build/getPathFromRoute.mjs.map +1 -1
- package/dist/esm/vercel/build/getPathFromRoute.native.js +2 -0
- package/dist/esm/vercel/build/getPathFromRoute.native.js.map +1 -1
- package/package.json +9 -9
- package/src/utils/getPathnameFromFilePath.ts +2 -2
- package/src/vercel/build/buildVercelOutputDirectory.ts +44 -4
- package/src/vercel/build/generate/createApiServerlessFunction.ts +1 -1
- package/src/vercel/build/generate/createSsrServerlessFunction.ts +1 -1
- package/src/vercel/build/getPathFromRoute.ts +2 -2
- package/types/utils/getPathnameFromFilePath.d.ts +1 -0
- package/types/utils/getPathnameFromFilePath.d.ts.map +1 -1
- package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -1
- package/types/vercel/build/getPathFromRoute.d.ts +3 -1
- package/types/vercel/build/getPathFromRoute.d.ts.map +1 -1
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/utils/getPathnameFromFilePath.ts"],
|
4
|
-
"mappings": "AAAA,OAAO,UAAU;AAEV,SAAS,wBACd,WACA,SAAS,CAAC,GACV,SAAS,IACT,
|
4
|
+
"mappings": "AAAA,OAAO,UAAU;AAEV,SAAS,wBACd,WACA,SAAS,CAAC,GACV,SAAS,IACT,UAAoE,CAAC,GACrE;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,WAAW,CAAC,QAAQ;AACnC,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
5
|
"names": []
|
6
6
|
}
|
@@ -15,7 +15,7 @@ function getPathnameFromFilePath(inputPath, params = {}, strict = !1, options =
|
|
15
15
|
${JSON.stringify(params, null, 2)}`);
|
16
16
|
}
|
17
17
|
const nameWithParams = (() => {
|
18
|
-
if (fileName === "index") return "/";
|
18
|
+
if (fileName === "index" && !options.includeIndex) return "/";
|
19
19
|
if (fileName.startsWith("[...")) {
|
20
20
|
const part = fileName.replace("[...", "").replace("]", "");
|
21
21
|
if (!params[part]) {
|
@@ -1 +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,
|
1
|
+
{"version":3,"names":["Path","getPathnameFromFilePath","inputPath","params","strict","options","path","replace","dirname","file","basename","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","nameWithParams","includeIndex","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,GAAoE,CAAC,GACrE;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,WAAW,CAACN,OAAA,CAAQc,YAAA,EACnC,OAAO;IAET,IAAIR,QAAA,CAASS,UAAA,CAAW,MAAM,GAAG;MAC/B,MAAMN,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,CACRU,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKR,IAAA,IAAS;MACb,IAAIA,IAAA,CAAK,CAAC,MAAM,KAAK;QACnB,MAAMS,KAAA,GAAQpB,MAAA,CAAOW,IAAA,CAAKU,KAAA,CAAM,GAAGV,IAAA,CAAKW,MAAA,GAAS,CAAC,CAAC;QACnD,IAAI,CAACF,KAAA,EAAO;UACV,IAAInB,MAAA,EACF,MAAMS,WAAA,CAAYC,IAAI;UAGxB,OAAO,MAAMA,IAAA,CAAKP,OAAA,CAAQ,KAAK,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;QACpD;QACA,OAAOgB,KAAA;MACT;MACA,OAAOT,IAAA;IACT,CAAC,EACAY,IAAA,CAAK,GAAG,CAAC;EACd,GAAG;EAGH,OAAO,GAAGlB,OAAO,GAAGU,cAAc,GAAGX,OAAA,CAAQ,WAAW,GAAG;AAC7D","ignoreList":[]}
|
@@ -18,7 +18,7 @@ function getPathnameFromFilePath(inputPath) {
|
|
18
18
|
${JSON.stringify(params, null, 2)}`);
|
19
19
|
}
|
20
20
|
var nameWithParams = function () {
|
21
|
-
if (fileName === "index") return "/";
|
21
|
+
if (fileName === "index" && !options.includeIndex) return "/";
|
22
22
|
if (fileName.startsWith("[...")) {
|
23
23
|
var part = fileName.replace("[...", "").replace("]", "");
|
24
24
|
if (!params[part]) {
|
@@ -1 +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,
|
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","includeIndex","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,iBAAAN,OAAA,CAAAc,YAAA,EAEA,OAAM;IACJ,IAAIR,QAAA,CAAAS,UAAa,OAAY;MAC3B,IAAAN,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,CAAOU,KAAK,MAAAC,GAAA,WAAAC,KAAA;MACzB,IAAAA,KAAA;QACA,IAAOC,KAAI,GAAAvB,MACR,CAAAsB,KAAM,CAAGE,KACT,CAAI,CAAC,EAAAF,KAAA,CAAApB,MAAS;QACb,IAAI,CAAAqB,KAAM;UACR,IAAMpB,MAAA,EACF,MAACS,WAAO,CAAAU,KAAA;UACV,OAAI,MAAAA,KAAA,CAAAhB,OAAA,UAAAA,OAAA;QACF;QAGF,OAAAiB,KAAO;MAA2C;MAEpD,OAAAD,KAAO;IAAA,EACT,CAAAG,IAAA;EACA;EAAO,OAER,GAAKlB,OAAI,GAAAU,cAAA,GAAAX,OAAA;AAAA;AAId,SACFR,uBAAA","ignoreList":[]}
|
@@ -14,6 +14,9 @@ async function moveAllFiles(src, dest) {
|
|
14
14
|
console.error("Error moving files:", err);
|
15
15
|
}
|
16
16
|
}
|
17
|
+
function getMiddlewaresByNamedRegex(buildInfoForWriting) {
|
18
|
+
return buildInfoForWriting.manifest.allRoutes.filter((r) => r.middlewares && r.middlewares.length > 0).map((r) => [r.namedRegex, r.middlewares.map((m) => m.contextKey.startsWith("dist/middlewares/") ? m.contextKey.substring(17) : m.contextKey)]).sort((a, b) => b[0].length - a[0].length);
|
19
|
+
}
|
17
20
|
const buildVercelOutputDirectory = async ({
|
18
21
|
apiOutput,
|
19
22
|
buildInfoForWriting,
|
@@ -60,17 +63,30 @@ const buildVercelOutputDirectory = async ({
|
|
60
63
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(
|
61
64
|
`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`
|
62
65
|
), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
63
|
-
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "
|
66
|
+
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "package.json"));
|
64
67
|
postBuildLogs.push(
|
65
68
|
`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`
|
66
69
|
), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
67
70
|
const wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js", wrappedMiddlewareEntryPointPath = resolve(
|
68
71
|
join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename)
|
69
|
-
)
|
72
|
+
), middlewaresByNamedRegex = getMiddlewaresByNamedRegex(buildInfoForWriting), middlewaresToVariableNameMap = middlewaresByNamedRegex.reduce((acc, [namedRegex, middlewares]) => ((Array.isArray(middlewares) ? middlewares : [middlewares]).forEach((middleware) => {
|
73
|
+
const middlewareVariableName = middleware.replace(/\.[a-z]+$/, "").replaceAll("/", "_");
|
74
|
+
acc[middleware] = middlewareVariableName;
|
75
|
+
}), acc), {});
|
70
76
|
await FSExtra.writeFile(
|
71
77
|
wrappedMiddlewareEntryPointPath,
|
72
78
|
`
|
73
|
-
|
79
|
+
const middlewaresByNamedRegex = ${JSON.stringify(middlewaresByNamedRegex)}
|
80
|
+
${Object.entries(middlewaresToVariableNameMap).map(([path, variableName]) => `import ${variableName} from './${path}'`).join(`
|
81
|
+
`)}
|
82
|
+
|
83
|
+
function getMiddleware(path) {
|
84
|
+
switch (path){
|
85
|
+
${Object.entries(middlewaresToVariableNameMap).map(([path, variableName]) => `case '${path}': return ${variableName}`).join(`
|
86
|
+
`)}
|
87
|
+
default: return null
|
88
|
+
}
|
89
|
+
}
|
74
90
|
|
75
91
|
const next = (e) => {
|
76
92
|
const t = new Headers(null == e ? void 0 : e.headers)
|
@@ -79,7 +95,24 @@ const next = (e) => {
|
|
79
95
|
}
|
80
96
|
|
81
97
|
const wrappedMiddlewareFunction = (request, event) => {
|
82
|
-
|
98
|
+
const url = new URL(request.url)
|
99
|
+
const pathname = url.pathname
|
100
|
+
|
101
|
+
// Find matching middlewares for this request
|
102
|
+
const matchingMiddlewares = middlewaresByNamedRegex
|
103
|
+
.filter(([namedRegex]) => new RegExp(namedRegex).test(pathname))
|
104
|
+
.reduce((prev, current) => prev.length > current[1]?.length ? prev : current[1], []);
|
105
|
+
|
106
|
+
// Import and execute the middleware function
|
107
|
+
const boundNext = () => {
|
108
|
+
if (matchingMiddlewares.length === 0) {
|
109
|
+
return next(request)
|
110
|
+
}
|
111
|
+
|
112
|
+
const middleware = getMiddleware(matchingMiddlewares.shift())
|
113
|
+
return middleware ? middleware({request, event, next: boundNext}) : next(request)
|
114
|
+
};
|
115
|
+
return boundNext()
|
83
116
|
}
|
84
117
|
|
85
118
|
export { wrappedMiddlewareFunction as default }
|
@@ -115,7 +148,7 @@ export { wrappedMiddlewareFunction as default }
|
|
115
148
|
},
|
116
149
|
...buildInfoForWriting.manifest.allRoutes.filter((r) => r.routeKeys && Object.keys(r.routeKeys).length > 0).map((r) => ({
|
117
150
|
src: r.namedRegex,
|
118
|
-
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
151
|
+
dest: `${getPathFromRoute(r) || "/"}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
119
152
|
}))
|
120
153
|
]
|
121
154
|
}), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
@@ -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;AAE5C,SAAS,mCAAmC;AAC5C,SAAS,mCAAmC;AAG5C,SAAS,wBAAwB;AAEjC,MAAM,EAAE,MAAM,WAAW,YAAY,UAAU,IAAI;AAEnD,eAAe,aAAa,KAAa,MAAc;AACrD,MAAI;AACF,UAAM,KAAK,KAAK,MAAM,EAAE,WAAW,IAAM,cAAc,GAAM,CAAC;AAAA,EAChE,SAAS,KAAK;AACZ,YAAQ,MAAM,uBAAuB,GAAG;AAAA,EAC1C;AACF;AAEO,MAAM,6BAA6B,OAAO;AAAA,EAC/C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAMM;AACJ,QAAM,EAAE,iBAAiB,IAAI;AAC7B,MAAI,WAAW;AACb,UAAM,sBAAsB,WAAW,UAAU,CAAC,GAAG;AAAA,MAAO,CAAC,MAC3D,WAAW,EAAE,MAAM,EAAE,QAAQ,gBAAgB,EAAE,OAAO,GAAG,CAAC;AAAA,IAC5D;AACA,eAAW,SAAS,oBAAoB,SAAS,WAAW;AAC1D,YAAM,gBAAgB,mBAAmB,KAAK,CAAC,aAChC,SAAS,eAAe,SAAS,MAAM,KAAK,QAAQ,MAAM,EAAE,CAAC,CAE3E;AACD,MAAI,iBACF,cAAc;AAAA,QACZ,mEAAmE,MAAM,IAAI;AAAA,MAC/E,GAEA,MAAM,4BAA4B,OAAO,cAAc,MAAM,gBAAgB,aAAa,KAE1F,QAAQ,KAAK;AAAA,sEAAkE,MAAM,IAAI;AAAA,IAE7F;AAAA,EACF;AAEA,QAAM,2BAA2B,KAAK,gBAAgB,0BAA0B;AAChF,QAAM,UAAU,wBAAwB;AAExC,aAAW,SAAS,oBAAoB,SAAS;AAC/C,YAAQ,MAAM,MAAM;AAAA,MAClB,KAAK,OAAO;AAGV,QADuB,iBAAiB,MAAM,IAAI,MAEhD,cAAc;AAAA,UACZ,wDAAwD,MAAM,IAAI,SAAS,MAAM,IAAI;AAAA,QACvF,GACA,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAEF;AAAA,MACF;AAAA,MACA;AAGE;AAAA,IACJ;AAGF,QAAM,oBAAoB,QAAQ,KAAK,gBAAgB,QAAQ,aAAa,CAAC;AAC7E,MAAI,WAAW,iBAAiB,GAAG;AACjC,UAAM,sBAAsB;AAAA,MAC1B,KAAK,gBAAgB,2CAA2C;AAAA,IAClE;AACA,UAAM,UAAU,mBAAmB,GACnC,cAAc;AAAA,MACZ,gDAAgD,iBAAiB,OAAO,mBAAmB;AAAA,IAC7F,GACA,MAAM,aAAa,QAAQ,KAAK,gBAAgB,QAAQ,aAAa,CAAC,GAAG,mBAAmB;AAC5F,UAAM,sCAAsC,QAAQ,KAAK,qBAAqB,
|
4
|
+
"mappings": "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",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -22,6 +22,9 @@ async function moveAllFiles(src, dest) {
|
|
22
22
|
console.error("Error moving files:", err);
|
23
23
|
}
|
24
24
|
}
|
25
|
+
function getMiddlewaresByNamedRegex(buildInfoForWriting) {
|
26
|
+
return buildInfoForWriting.manifest.allRoutes.filter(r => r.middlewares && r.middlewares.length > 0).map(r => [r.namedRegex, r.middlewares.map(m => m.contextKey.startsWith("dist/middlewares/") ? m.contextKey.substring(17) : m.contextKey)]).sort((a, b) => b[0].length - a[0].length);
|
27
|
+
}
|
25
28
|
const buildVercelOutputDirectory = async ({
|
26
29
|
apiOutput,
|
27
30
|
buildInfoForWriting,
|
@@ -58,12 +61,27 @@ const buildVercelOutputDirectory = async ({
|
|
58
61
|
if (existsSync(distMiddlewareDir)) {
|
59
62
|
const vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware.func"));
|
60
63
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
61
|
-
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "
|
64
|
+
const vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "package.json"));
|
62
65
|
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
63
66
|
const wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js",
|
64
|
-
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename))
|
67
|
+
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename)),
|
68
|
+
middlewaresByNamedRegex = getMiddlewaresByNamedRegex(buildInfoForWriting),
|
69
|
+
middlewaresToVariableNameMap = middlewaresByNamedRegex.reduce((acc, [namedRegex, middlewares]) => ((Array.isArray(middlewares) ? middlewares : [middlewares]).forEach(middleware => {
|
70
|
+
const middlewareVariableName = middleware.replace(/\.[a-z]+$/, "").replaceAll("/", "_");
|
71
|
+
acc[middleware] = middlewareVariableName;
|
72
|
+
}), acc), {});
|
65
73
|
await FSExtra.writeFile(wrappedMiddlewareEntryPointPath, `
|
66
|
-
|
74
|
+
const middlewaresByNamedRegex = ${JSON.stringify(middlewaresByNamedRegex)}
|
75
|
+
${Object.entries(middlewaresToVariableNameMap).map(([path, variableName]) => `import ${variableName} from './${path}'`).join(`
|
76
|
+
`)}
|
77
|
+
|
78
|
+
function getMiddleware(path) {
|
79
|
+
switch (path){
|
80
|
+
${Object.entries(middlewaresToVariableNameMap).map(([path, variableName]) => `case '${path}': return ${variableName}`).join(`
|
81
|
+
`)}
|
82
|
+
default: return null
|
83
|
+
}
|
84
|
+
}
|
67
85
|
|
68
86
|
const next = (e) => {
|
69
87
|
const t = new Headers(null == e ? void 0 : e.headers)
|
@@ -72,7 +90,24 @@ const next = (e) => {
|
|
72
90
|
}
|
73
91
|
|
74
92
|
const wrappedMiddlewareFunction = (request, event) => {
|
75
|
-
|
93
|
+
const url = new URL(request.url)
|
94
|
+
const pathname = url.pathname
|
95
|
+
|
96
|
+
// Find matching middlewares for this request
|
97
|
+
const matchingMiddlewares = middlewaresByNamedRegex
|
98
|
+
.filter(([namedRegex]) => new RegExp(namedRegex).test(pathname))
|
99
|
+
.reduce((prev, current) => prev.length > current[1]?.length ? prev : current[1], []);
|
100
|
+
|
101
|
+
// Import and execute the middleware function
|
102
|
+
const boundNext = () => {
|
103
|
+
if (matchingMiddlewares.length === 0) {
|
104
|
+
return next(request)
|
105
|
+
}
|
106
|
+
|
107
|
+
const middleware = getMiddleware(matchingMiddlewares.shift())
|
108
|
+
return middleware ? middleware({request, event, next: boundNext}) : next(request)
|
109
|
+
};
|
110
|
+
return boundNext()
|
76
111
|
}
|
77
112
|
|
78
113
|
export { wrappedMiddlewareFunction as default }
|
@@ -97,7 +132,7 @@ export { wrappedMiddlewareFunction as default }
|
|
97
132
|
handle: "rewrite"
|
98
133
|
}, ...buildInfoForWriting.manifest.allRoutes.filter(r => r.routeKeys && Object.keys(r.routeKeys).length > 0).map(r => ({
|
99
134
|
src: r.namedRegex,
|
100
|
-
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
135
|
+
dest: `${getPathFromRoute(r) || "/"}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
|
101
136
|
}))]
|
102
137
|
}), postBuildLogs.push(`[one.build] wrote vercel config to: ${vercelConfigFilePath}`);
|
103
138
|
};
|
@@ -1 +1 @@
|
|
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","
|
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","getMiddlewaresByNamedRegex","buildInfoForWriting","manifest","allRoutes","filter","r","middlewares","length","map","namedRegex","m","contextKey","startsWith","substring","sort","a","b","buildVercelOutputDirectory","apiOutput","clientDir","oneOptionsRoot","postBuildLogs","routeToBuildInfo","compiltedApiRoutes","output","o","code","string","facadeModuleId","route","apiRoutes","compiledRoute","find","compiled","includes","file","replace","push","page","warn","vercelOutputFunctionsDir","pageRoutes","type","distMiddlewareDir","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","wrappedMiddlewareEntryPointFilename","wrappedMiddlewareEntryPointPath","middlewaresByNamedRegex","middlewaresToVariableNameMap","reduce","acc","Array","isArray","forEach","middleware","middlewareVariableName","replaceAll","writeFile","JSON","stringify","Object","entries","path","variableName","middlewareVercelConfigFilePath","runtime","entrypoint","vercelOutputStaticDir","vercelConfigFilePath","routes","middlewarePath","continue","handle","routeKeys","keys","k","v"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -22,6 +22,17 @@ async function moveAllFiles(src, dest) {
|
|
22
22
|
console.error("Error moving files:", err);
|
23
23
|
}
|
24
24
|
}
|
25
|
+
function getMiddlewaresByNamedRegex(buildInfoForWriting) {
|
26
|
+
return buildInfoForWriting.manifest.allRoutes.filter(function (r) {
|
27
|
+
return r.middlewares && r.middlewares.length > 0;
|
28
|
+
}).map(function (r) {
|
29
|
+
return [r.namedRegex, r.middlewares.map(function (m) {
|
30
|
+
return m.contextKey.startsWith("dist/middlewares/") ? m.contextKey.substring(17) : m.contextKey;
|
31
|
+
})];
|
32
|
+
}).sort(function (a, b) {
|
33
|
+
return b[0].length - a[0].length;
|
34
|
+
});
|
35
|
+
}
|
25
36
|
var buildVercelOutputDirectory = async function (param) {
|
26
37
|
var {
|
27
38
|
apiOutput,
|
@@ -96,12 +107,36 @@ var buildVercelOutputDirectory = async function (param) {
|
|
96
107
|
if (existsSync(distMiddlewareDir)) {
|
97
108
|
var vercelMiddlewareDir = resolve(join(oneOptionsRoot, ".vercel/output/functions/_middleware.func"));
|
98
109
|
await ensureDir(vercelMiddlewareDir), postBuildLogs.push(`[one.build][vercel] copying middlewares from ${distMiddlewareDir} to ${vercelMiddlewareDir}`), await moveAllFiles(resolve(join(oneOptionsRoot, "dist", "middlewares")), vercelMiddlewareDir);
|
99
|
-
var vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "
|
110
|
+
var vercelMiddlewarePackageJsonFilePath = resolve(join(vercelMiddlewareDir, "package.json"));
|
100
111
|
postBuildLogs.push(`[one.build][vercel] writing package.json to ${vercelMiddlewarePackageJsonFilePath}`), await writeJSON(vercelMiddlewarePackageJsonFilePath, serverlessVercelPackageJson);
|
101
112
|
var wrappedMiddlewareEntryPointFilename = "_wrapped_middleware.js",
|
102
|
-
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename))
|
113
|
+
wrappedMiddlewareEntryPointPath = resolve(join(vercelMiddlewareDir, wrappedMiddlewareEntryPointFilename)),
|
114
|
+
middlewaresByNamedRegex = getMiddlewaresByNamedRegex(buildInfoForWriting),
|
115
|
+
middlewaresToVariableNameMap = middlewaresByNamedRegex.reduce(function (acc, param2) {
|
116
|
+
var [namedRegex, middlewares] = param2;
|
117
|
+
return (Array.isArray(middlewares) ? middlewares : [middlewares]).forEach(function (middleware) {
|
118
|
+
var middlewareVariableName = middleware.replace(/\.[a-z]+$/, "").replaceAll("/", "_");
|
119
|
+
acc[middleware] = middlewareVariableName;
|
120
|
+
}), acc;
|
121
|
+
}, {});
|
103
122
|
await FSExtra.writeFile(wrappedMiddlewareEntryPointPath, `
|
104
|
-
|
123
|
+
const middlewaresByNamedRegex = ${JSON.stringify(middlewaresByNamedRegex)}
|
124
|
+
${Object.entries(middlewaresToVariableNameMap).map(function (param2) {
|
125
|
+
var [path, variableName] = param2;
|
126
|
+
return `import ${variableName} from './${path}'`;
|
127
|
+
}).join(`
|
128
|
+
`)}
|
129
|
+
|
130
|
+
function getMiddleware(path) {
|
131
|
+
switch (path){
|
132
|
+
${Object.entries(middlewaresToVariableNameMap).map(function (param2) {
|
133
|
+
var [path, variableName] = param2;
|
134
|
+
return `case '${path}': return ${variableName}`;
|
135
|
+
}).join(`
|
136
|
+
`)}
|
137
|
+
default: return null
|
138
|
+
}
|
139
|
+
}
|
105
140
|
|
106
141
|
const next = (e) => {
|
107
142
|
const t = new Headers(null == e ? void 0 : e.headers)
|
@@ -110,7 +145,24 @@ const next = (e) => {
|
|
110
145
|
}
|
111
146
|
|
112
147
|
const wrappedMiddlewareFunction = (request, event) => {
|
113
|
-
|
148
|
+
const url = new URL(request.url)
|
149
|
+
const pathname = url.pathname
|
150
|
+
|
151
|
+
// Find matching middlewares for this request
|
152
|
+
const matchingMiddlewares = middlewaresByNamedRegex
|
153
|
+
.filter(([namedRegex]) => new RegExp(namedRegex).test(pathname))
|
154
|
+
.reduce((prev, current) => prev.length > current[1]?.length ? prev : current[1], []);
|
155
|
+
|
156
|
+
// Import and execute the middleware function
|
157
|
+
const boundNext = () => {
|
158
|
+
if (matchingMiddlewares.length === 0) {
|
159
|
+
return next(request)
|
160
|
+
}
|
161
|
+
|
162
|
+
const middleware = getMiddleware(matchingMiddlewares.shift())
|
163
|
+
return middleware ? middleware({request, event, next: boundNext}) : next(request)
|
164
|
+
};
|
165
|
+
return boundNext()
|
114
166
|
}
|
115
167
|
|
116
168
|
export { wrappedMiddlewareFunction as default }
|
@@ -138,7 +190,7 @@ export { wrappedMiddlewareFunction as default }
|
|
138
190
|
}).map(function (r) {
|
139
191
|
return {
|
140
192
|
src: r.namedRegex,
|
141
|
-
dest: `${getPathFromRoute(r)}?${Object.entries(r.routeKeys).map(function (param2) {
|
193
|
+
dest: `${getPathFromRoute(r) || "/"}?${Object.entries(r.routeKeys).map(function (param2) {
|
142
194
|
var [k, v] = param2;
|
143
195
|
return `${k}=$${v}`;
|
144
196
|
}).join("&")}`
|
@@ -1 +1 @@
|
|
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","
|
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","getMiddlewaresByNamedRegex","buildInfoForWriting","manifest","allRoutes","filter","r","middlewares","length","map","namedRegex","m","contextKey","startsWith","substring","sort","a","b","buildVercelOutputDirectory","param","apiOutput","clientDir","oneOptionsRoot","postBuildLogs","routeToBuildInfo","_apiOutput_output","compiltedApiRoutes","output","o","code","string","facadeModuleId","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","route2","_step","value","compiledRoute","find","compiled","flag","includes","file","replace","push","page","warn","_iterator","apiRoutes","Symbol","iterator","next","done","return","vercelOutputFunctionsDir","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","pageRoutes","_step1","route","type","builtPageRoute","distMiddlewareDir","vercelMiddlewareDir","vercelMiddlewarePackageJsonFilePath","wrappedMiddlewareEntryPointFilename","wrappedMiddlewareEntryPointPath","middlewaresByNamedRegex","middlewaresToVariableNameMap","reduce","acc","param2","Array","isArray","forEach","middleware","middlewareVariableName","replaceAll","writeFile","JSON","stringify","Object","entries","path","variableName","middlewareVercelConfigFilePath","runtime"],"sources":["../../../../src/vercel/build/buildVercelOutputDirectory.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -11,7 +11,7 @@ import { serverlessVercelNodeJsConfig } from "../config/vc-config-base";
|
|
11
11
|
import { getPathFromRoute } from "../getPathFromRoute";
|
12
12
|
async function createApiServerlessFunction(route, code, oneOptionsRoot, postBuildLogs) {
|
13
13
|
try {
|
14
|
-
const path = getPathFromRoute(route);
|
14
|
+
const path = getPathFromRoute(route, { includeIndex: !0 });
|
15
15
|
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${path}`);
|
16
16
|
const funcFolder = join(oneOptionsRoot, `.vercel/output/functions/${path}.func`);
|
17
17
|
if (await fs.ensureDir(funcFolder), code.includes("react")) {
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],
|
4
|
-
"mappings": "AAAA,SAAS,SAAS,MAAM,eAAe;AACvC,OAAO,aAAa;AACpB,SAAS,mBAAmB;AAE5B,OAAO,YAAY;AACnB,OAAO,cAAc;AACrB,OAAO,OAAO;AACd,OAAO,eAAe;AAEtB,OAAO,QAAQ;AAGf,SAAS,mCAAmC;AAC5C,SAAS,oCAAoC;AAC7C,SAAS,wBAAwB;AAIjC,eAAsB,4BACpB,OACA,MACA,gBACA,eACA;AACA,MAAI;AACF,UAAM,OAAO,iBAAiB,
|
4
|
+
"mappings": "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",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -11,7 +11,9 @@ import { serverlessVercelNodeJsConfig } from "../config/vc-config-base.mjs";
|
|
11
11
|
import { getPathFromRoute } from "../getPathFromRoute.mjs";
|
12
12
|
async function createApiServerlessFunction(route, code, oneOptionsRoot, postBuildLogs) {
|
13
13
|
try {
|
14
|
-
const path = getPathFromRoute(route
|
14
|
+
const path = getPathFromRoute(route, {
|
15
|
+
includeIndex: !0
|
16
|
+
});
|
15
17
|
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${path}`);
|
16
18
|
const funcFolder = join(oneOptionsRoot, `.vercel/output/functions/${path}.func`);
|
17
19
|
if (await fs.ensureDir(funcFolder), code.includes("react")) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["dirname","join","resolve","FSExtra","resolvePath","parser","traverse","t","generator","fs","serverlessVercelPackageJson","serverlessVercelNodeJsConfig","getPathFromRoute","createApiServerlessFunction","route","code","oneOptionsRoot","postBuildLogs","path","push","funcFolder","ensureDir","includes","reactPath","copy","distAssetsFolder","sourceAssetsFolder","pathExists","entrypointFilePath","writeFile","wrapHandlerFunctions","packageJsonFilePath","writeJSON","writeJson","handler","e","console","error","file","ast","parse","sourceType","default","FunctionDeclaration","node","functionNamesToHandle","id","name","extra","isWrapper","isWrapped","originalName","originalFunction","functionDeclaration","identifier","params","body","async","requestIdentifier","wrapperParams","urlIdentifier","paramsIdentifier","urlDecl","variableDeclaration","variableDeclarator","newExpression","memberExpression","paramsDecl","callExpression","callOrigFnStatement","objectExpression","objectProperty","wrapperFunction","blockStatement","returnStatement","parentPath","isExportNamedDeclaration","replaceWithMultiple","exportNamedDeclaration"],"sources":["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,EAASC,IAAA,EAAMC,OAAA,QAAe;AACvC,OAAOC,OAAA,MAAa;AACpB,SAASC,WAAA,QAAmB;AAE5B,OAAOC,MAAA,MAAY;AACnB,OAAOC,QAAA,MAAc;AACrB,OAAOC,CAAA,MAAO;AACd,OAAOC,SAAA,MAAe;AAEtB,OAAOC,EAAA,MAAQ;AAGf,SAASC,2BAAA,QAAmC;AAC5C,SAASC,4BAAA,QAAoC;AAC7C,SAASC,gBAAA,QAAwB;AAIjC,eAAsBC,4BACpBC,KAAA,EACAC,IAAA,EACAC,cAAA,EACAC,aAAA,EACA;EACA,IAAI;IACF,MAAMC,IAAA,GAAON,gBAAA,CAAiBE,
|
1
|
+
{"version":3,"names":["dirname","join","resolve","FSExtra","resolvePath","parser","traverse","t","generator","fs","serverlessVercelPackageJson","serverlessVercelNodeJsConfig","getPathFromRoute","createApiServerlessFunction","route","code","oneOptionsRoot","postBuildLogs","path","includeIndex","push","funcFolder","ensureDir","includes","reactPath","copy","distAssetsFolder","sourceAssetsFolder","pathExists","entrypointFilePath","writeFile","wrapHandlerFunctions","packageJsonFilePath","writeJSON","writeJson","handler","e","console","error","file","ast","parse","sourceType","default","FunctionDeclaration","node","functionNamesToHandle","id","name","extra","isWrapper","isWrapped","originalName","originalFunction","functionDeclaration","identifier","params","body","async","requestIdentifier","wrapperParams","urlIdentifier","paramsIdentifier","urlDecl","variableDeclaration","variableDeclarator","newExpression","memberExpression","paramsDecl","callExpression","callOrigFnStatement","objectExpression","objectProperty","wrapperFunction","blockStatement","returnStatement","parentPath","isExportNamedDeclaration","replaceWithMultiple","exportNamedDeclaration"],"sources":["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -11,7 +11,9 @@ import { serverlessVercelNodeJsConfig } from "../config/vc-config-base.native.js
|
|
11
11
|
import { getPathFromRoute } from "../getPathFromRoute.native.js";
|
12
12
|
async function createApiServerlessFunction(route, code, oneOptionsRoot, postBuildLogs) {
|
13
13
|
try {
|
14
|
-
var path = getPathFromRoute(route
|
14
|
+
var path = getPathFromRoute(route, {
|
15
|
+
includeIndex: !0
|
16
|
+
});
|
15
17
|
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] pageName: ${path}`);
|
16
18
|
var funcFolder = join(oneOptionsRoot, `.vercel/output/functions/${path}.func`);
|
17
19
|
if (await fs.ensureDir(funcFolder), code.includes("react")) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["dirname","join","resolve","FSExtra","resolvePath","parser","traverse","t","generator","fs","serverlessVercelPackageJson","serverlessVercelNodeJsConfig","getPathFromRoute","createApiServerlessFunction","route","code","oneOptionsRoot","postBuildLogs","path","push","funcFolder","ensureDir","includes","reactPath","copy","distAssetsFolder","sourceAssetsFolder","pathExists","entrypointFilePath","writeFile","wrapHandlerFunctions","packageJsonFilePath","writeJSON","writeJson","handler","e","console","error","file","ast","parse","sourceType","default","FunctionDeclaration","node","functionNamesToHandle","id","name","extra","isWrapper","isWrapped","originalName","originalFunction","functionDeclaration","identifier","params","body","async","requestIdentifier","wrapperParams","urlIdentifier","paramsIdentifier","urlDecl","variableDeclaration","variableDeclarator","newExpression","memberExpression","paramsDecl","callExpression","callOrigFnStatement","objectExpression","objectProperty","wrapperFunction","blockStatement","returnStatement","parentPath","isExportNamedDeclaration","replaceWithMultiple","exportNamedDeclaration","output"],"sources":["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAA,EAASC,IAAA,EAAMC,OAAA,QAAe;AACvC,OAAOC,OAAA,MAAa;AACpB,SAASC,WAAA,QAAmB;AAE5B,OAAOC,MAAA,MAAY;AACnB,OAAOC,QAAA,MAAc;AACrB,OAAOC,CAAA,MAAO;AACd,OAAOC,SAAA,MAAe;AAEtB,OAAOC,EAAA,MAAQ;AAGf,SAASC,2BAAA,QAAmC;AAC5C,SAASC,4BAAA,QAAoC;AAC7C,SAASC,gBAAA,QAAwB;AAIjC,eAAsBC,4BACpBC,KAAA,EACAC,IAAA,EACAC,cAAA,EACAC,aAAA,EACA;EACA,IAAI;IACF,IAAAC,IAAM,GAAAN,gBAAO,CAAAE,KAAiB;
|
1
|
+
{"version":3,"names":["dirname","join","resolve","FSExtra","resolvePath","parser","traverse","t","generator","fs","serverlessVercelPackageJson","serverlessVercelNodeJsConfig","getPathFromRoute","createApiServerlessFunction","route","code","oneOptionsRoot","postBuildLogs","path","includeIndex","push","funcFolder","ensureDir","includes","reactPath","copy","distAssetsFolder","sourceAssetsFolder","pathExists","entrypointFilePath","writeFile","wrapHandlerFunctions","packageJsonFilePath","writeJSON","writeJson","handler","e","console","error","file","ast","parse","sourceType","default","FunctionDeclaration","node","functionNamesToHandle","id","name","extra","isWrapper","isWrapped","originalName","originalFunction","functionDeclaration","identifier","params","body","async","requestIdentifier","wrapperParams","urlIdentifier","paramsIdentifier","urlDecl","variableDeclaration","variableDeclarator","newExpression","memberExpression","paramsDecl","callExpression","callOrigFnStatement","objectExpression","objectProperty","wrapperFunction","blockStatement","returnStatement","parentPath","isExportNamedDeclaration","replaceWithMultiple","exportNamedDeclaration","output"],"sources":["../../../../../src/vercel/build/generate/createApiServerlessFunction.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -5,7 +5,7 @@ import { serverlessVercelPackageJson } from "../config/vc-package-base";
|
|
5
5
|
import { getPathFromRoute } from "../getPathFromRoute";
|
6
6
|
async function createSsrServerlessFunction(route, buildInfo, oneOptionsRoot, postBuildLogs) {
|
7
7
|
try {
|
8
|
-
const path = getPathFromRoute(route);
|
8
|
+
const path = getPathFromRoute(route, { includeIndex: !0 });
|
9
9
|
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] path: ${path}`);
|
10
10
|
const buildInfoAsString = JSON.stringify(buildInfo), funcFolder = resolve(join(oneOptionsRoot, `.vercel/output/functions/${path}.func`));
|
11
11
|
await fs.ensureDir(funcFolder);
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../src/vercel/build/generate/createSsrServerlessFunction.ts"],
|
4
|
-
"mappings": "AAAA,OAAO,QAAQ;AACf,SAAS,MAAM,eAAe;AAC9B,SAAS,oCAAoC;AAC7C,SAAS,mCAAmC;AAE5C,SAAS,wBAAwB;AAIjC,eAAsB,4BACpB,OACA,WACA,gBACA,eACA;AACA,MAAI;AACF,UAAM,OAAO,iBAAiB,
|
4
|
+
"mappings": "AAAA,OAAO,QAAQ;AACf,SAAS,MAAM,eAAe;AAC9B,SAAS,oCAAoC;AAC7C,SAAS,mCAAmC;AAE5C,SAAS,wBAAwB;AAIjC,eAAsB,4BACpB,OACA,WACA,gBACA,eACA;AACA,MAAI;AACF,UAAM,OAAO,iBAAiB,OAAO,EAAE,cAAc,GAAK,CAAC;AAC3D,kBAAc,KAAK,yDAAyD,IAAI,EAAE;AAElF,UAAM,oBAAoB,KAAK,UAAU,SAAS,GAC5C,aAAa,QAAQ,KAAK,gBAAgB,4BAA4B,IAAI,OAAO,CAAC;AACxF,UAAM,GAAG,UAAU,UAAU;AAE7B,UAAM,iBAAiB,QAAQ,KAAK,gBAAgB,QAAQ,QAAQ,CAAC,GAC/D,eAAe,QAAQ,KAAK,YAAY,QAAQ,CAAC;AACvD,UAAM,GAAG,UAAU,YAAY,GAC/B,cAAc;AAAA,MACZ,+EAA+E,cAAc,OAAO,YAAY;AAAA,IAClH,GACA,MAAM,GAAG,KAAK,gBAAgB,YAAY,GAE1C,cAAc,KAAK,wEAAwE,GAC3F,MAAM,GAAG,UAAU,KAAK,YAAY,cAAc,GAAG,kBAAkB,iBAAiB,EAAE,GAE1F,MAAM,GAAG,UAAU,KAAK,YAAY,YAAY,CAAC;AACjD,UAAM,qBAAqB,QAAQ,KAAK,YAAY,cAAc,UAAU,CAAC;AAC7E,kBAAc;AAAA,MACZ,yEAAyE,kBAAkB;AAAA,IAC7F,GACA,MAAM,GAAG;AAAA,MACP;AAAA,MACA;AAAA;AAAA;AAAA,sBAGgB,KAAK,UAAU,MAAM,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IA4C5C;AAEA,UAAM,sBAAsB,QAAQ,KAAK,YAAY,cAAc,CAAC;AACpE,kBAAc;AAAA,MACZ,2EAA2E,mBAAmB;AAAA,IAChG,GACA,MAAM,GAAG,UAAU,qBAAqB,2BAA2B;AAInE,UAAM,mBAAmB,QAAQ,KAAK,YAAY,iBAAiB,CAAC;AACpE,yBAAc;AAAA,MACZ,8EAA8E,gBAAgB;AAAA,IAChG,GACO,GAAG,UAAU,kBAAkB;AAAA,MACpC,GAAG;AAAA,MACH,SAAS;AAAA,MACT,aAAa;AAAA,QACX,GAAG,6BAA6B;AAAA,QAChC,yBAAyB;AAAA,MAC3B;AAAA,IACF,CAAC;AAAA,EACH,SAAS,GAAG;AACV,YAAQ;AAAA,MACN,+EAA+E,MAAM,IAAI;AAAA,MACzF;AAAA,IACF;AAAA,EACF;AACF;",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -5,7 +5,9 @@ import { serverlessVercelPackageJson } from "../config/vc-package-base.mjs";
|
|
5
5
|
import { getPathFromRoute } from "../getPathFromRoute.mjs";
|
6
6
|
async function createSsrServerlessFunction(route, buildInfo, oneOptionsRoot, postBuildLogs) {
|
7
7
|
try {
|
8
|
-
const path = getPathFromRoute(route
|
8
|
+
const path = getPathFromRoute(route, {
|
9
|
+
includeIndex: !0
|
10
|
+
});
|
9
11
|
postBuildLogs.push(`[one.build][vercel.createSsrServerlessFunction] path: ${path}`);
|
10
12
|
const buildInfoAsString = JSON.stringify(buildInfo),
|
11
13
|
funcFolder = resolve(join(oneOptionsRoot, `.vercel/output/functions/${path}.func`));
|