diff --git a/modules/cache.ts b/modules/cache.ts new file mode 100644 index 0000000000..8463cde1ed --- /dev/null +++ b/modules/cache.ts @@ -0,0 +1,21 @@ +import { defineNuxtModule } from 'nuxt/kit' +import { provider } from 'std-env' + +export default defineNuxtModule({ + meta: { + name: 'vercel-cache', + }, + setup(_, nuxt) { + if (provider !== 'vercel') { + return + } + + nuxt.hook('nitro:config', (nitroConfig) => { + nitroConfig.storage = nitroConfig.storage || {} + nitroConfig.storage.cache = { + driver: 'vercel-runtime-cache', + ...nitroConfig.storage.cache, + } + }) + }, +}) diff --git a/package.json b/package.json index 77fc42e64a..5ea93313cc 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ "marked": "^17.0.1", "playwright-core": "^1.57.0", "simple-git-hooks": "2.13.1", + "std-env": "^3.10.0", "typescript": "5.9.3", "unocss": "^66.6.0", "vitest": "^4.0.18", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 13a4dcc5af..dfa20b2099 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -119,6 +119,9 @@ importers: simple-git-hooks: specifier: 2.13.1 version: 2.13.1 + std-env: + specifier: ^3.10.0 + version: 3.10.0 typescript: specifier: 5.9.3 version: 5.9.3