summaryrefslogtreecommitdiff
path: root/packages/integrations
diff options
context:
space:
mode:
Diffstat (limited to 'packages/integrations')
-rw-r--r--packages/integrations/vercel/src/edge/adapter.ts24
1 files changed, 16 insertions, 8 deletions
diff --git a/packages/integrations/vercel/src/edge/adapter.ts b/packages/integrations/vercel/src/edge/adapter.ts
index c4457ffdd..4193681d2 100644
--- a/packages/integrations/vercel/src/edge/adapter.ts
+++ b/packages/integrations/vercel/src/edge/adapter.ts
@@ -1,4 +1,5 @@
import type { AstroAdapter, AstroConfig, AstroIntegration } from 'astro';
+import esbuild from 'esbuild';
import { relative as relativePath } from 'node:path';
import { fileURLToPath } from 'node:url';
@@ -74,18 +75,25 @@ export default function vercelEdge({ includeFiles = [] }: VercelEdgeConfig = {})
}
}
- vite.ssr = {
- target: 'webworker',
- noExternal: true,
- };
-
- vite.build ||= {};
- vite.build.minify = true;
+ vite.ssr ||= {};
+ vite.ssr.target ||= 'webworker';
}
},
'astro:build:done': async ({ routes }) => {
const entry = new URL(serverEntry, buildTempFolder);
const generatedFiles = await getFilesFromFolder(buildTempFolder);
+ const entryPath = fileURLToPath(entry);
+
+ await esbuild.build({
+ target: 'es2020',
+ platform: 'browser',
+ entryPoints: [entryPath],
+ outfile: entryPath,
+ allowOverwrite: true,
+ format: 'esm',
+ bundle: true,
+ minify: true,
+ });
// Copy entry and other server files
const commonAncestor = await copyFilesToFunction(
@@ -100,7 +108,7 @@ export default function vercelEdge({ includeFiles = [] }: VercelEdgeConfig = {})
// https://vercel.com/docs/build-output-api/v3#vercel-primitives/edge-functions/configuration
await writeJson(new URL(`./.vc-config.json`, functionFolder), {
runtime: 'edge',
- entrypoint: relativePath(commonAncestor, fileURLToPath(entry)),
+ entrypoint: relativePath(commonAncestor, entryPath),
});
// Output configuration