summaryrefslogtreecommitdiff
path: root/packages/integrations/vercel/src
diff options
context:
space:
mode:
authorGravatar Slawek Kolodziej <hfrntt@gmail.com> 2023-09-06 06:43:53 +0200
committerGravatar GitHub <noreply@github.com> 2023-09-06 05:43:53 +0100
commit9ffa1a84e81f52d55ffe07826b8b1f10fc023ee9 (patch)
tree00c13135d268e4705357a69b9949ae3d9c2340ed /packages/integrations/vercel/src
parent61ad70fdc52035964c43ecdb4cf7468f6c2b61e7 (diff)
downloadastro-9ffa1a84e81f52d55ffe07826b8b1f10fc023ee9.tar.gz
astro-9ffa1a84e81f52d55ffe07826b8b1f10fc023ee9.tar.zst
astro-9ffa1a84e81f52d55ffe07826b8b1f10fc023ee9.zip
fix: include route prefix in vercel func names, fix #8401 (#8408)
* fix: include route prefix in vercel func names * chore: add changeset * chore: update pnpm lockfile * refactor: simplify logic that generates vercel func names * fix: properly remove entryFile prefix from func name * refactor: change how vercel function names are generated --------- Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Diffstat (limited to 'packages/integrations/vercel/src')
-rw-r--r--packages/integrations/vercel/src/serverless/adapter.ts23
1 files changed, 17 insertions, 6 deletions
diff --git a/packages/integrations/vercel/src/serverless/adapter.ts b/packages/integrations/vercel/src/serverless/adapter.ts
index a7178b3e3..32735da03 100644
--- a/packages/integrations/vercel/src/serverless/adapter.ts
+++ b/packages/integrations/vercel/src/serverless/adapter.ts
@@ -207,14 +207,25 @@ You can set functionPerRoute: false to prevent surpassing the limit.`
// Multiple entrypoint support
if (_entryPoints.size) {
- for (const [route, entryFile] of _entryPoints) {
- const func = basename(entryFile.toString()).replace(/\.mjs$/, '');
+ const getRouteFuncName = (route: RouteData) =>
+ route.component.replace('src/pages/', '')
+
+ const getFallbackFuncName = (entryFile: URL) =>
+ basename(entryFile.toString())
+ .replace('entry.', '')
+ .replace(/\.mjs$/, '');
+
+ for (const [route, entryFile] of _entryPoints) {
+ const func = route.component.startsWith('src/pages/')
+ ? getRouteFuncName(route)
+ : getFallbackFuncName(entryFile)
+
await createFunctionFolder(func, entryFile, filesToInclude, logger);
routeDefinitions.push({
- src: route.pattern.source,
- dest: func,
- });
- }
+ src: route.pattern.source,
+ dest: func,
+ });
+ }
} else {
await createFunctionFolder(
'render',