diff --git a/docs/package.json b/docs/package.json index 18273d807..0a5f86b2b 100644 --- a/docs/package.json +++ b/docs/package.json @@ -10,9 +10,10 @@ "docs:preview": "vitepress preview", "build:iconNodes": "node ../scripts/writeIconNodes.mjs", "build:metaJson": "node ../scripts/writeIconMetaIndex.mjs", + "build:vercelJson": "node ../scripts/writeVercelOutput.mjs", "dev": "npx nitropack dev", "build:api": "npx nitropack build", - "build": "pnpm build:iconNodes && pnpm build:metaJson && pnpm build:api && pnpm docs:build", + "build": "pnpm build:iconNodes && pnpm build:metaJson && pnpm build:api && pnpm docs:build && pnpm build:vercelJson", "preview": "node .output/server/index.mjs" }, "keywords": [], diff --git a/scripts/writeIconNodes.mjs b/scripts/writeIconNodes.mjs index 129e5cb9f..2dc3de9d6 100644 --- a/scripts/writeIconNodes.mjs +++ b/scripts/writeIconNodes.mjs @@ -11,7 +11,7 @@ const icons = renderIconsObject(svgFiles, ICONS_DIR, true); const iconNodesDirectory = path.resolve(currentDir, 'iconNodes'); if (fs.existsSync(iconNodesDirectory)) { - fs.unlinkSync(path.resolve(currentDir, 'iconNodes')); + fs.rmSync(path.resolve(currentDir, 'iconNodes'), { recursive: true, force: true }); } if (!fs.existsSync(iconNodesDirectory)) { diff --git a/scripts/writeVercelOutput.mjs b/scripts/writeVercelOutput.mjs new file mode 100644 index 000000000..6c53a6e76 --- /dev/null +++ b/scripts/writeVercelOutput.mjs @@ -0,0 +1,26 @@ +import path from 'path'; +import fs from 'fs'; + +const currentDir = process.cwd(); + +const output = JSON.stringify( + { + version: 3, + overrides: {}, + routes: [ + { + handle: 'filesystem', + }, + { + src: '(?/api/.*)', + dest: '/__nitro?url=$url', + }, + ], + }, + null, + 2, +); + +const vercelOutputJosn = path.resolve(currentDir, '.vercel/output/config.json'); + +fs.writeFileSync(vercelOutputJosn, output, 'utf-8');