diff --git a/modules/cache.ts b/modules/cache.ts index 7587ed90f5..8921765a91 100644 --- a/modules/cache.ts +++ b/modules/cache.ts @@ -1,5 +1,5 @@ import process from 'node:process' -import { defineNuxtModule } from 'nuxt/kit' +import { defineNuxtModule, useRuntimeConfig } from 'nuxt/kit' import { provider } from 'std-env' // Storage key for fetch cache - must match shared/utils/fetch-cache-config.ts @@ -14,9 +14,17 @@ export default defineNuxtModule({ return } + const config = useRuntimeConfig() + nuxt.hook('nitro:config', nitroConfig => { nitroConfig.storage = nitroConfig.storage || {} + const upstash = { + driver: 'upstash' as const, + url: config.upstash.redisRestUrl, + token: config.upstash.redisRestToken, + } + // Main cache storage (for defineCachedFunction, etc.) nitroConfig.storage.cache = { ...nitroConfig.storage.cache, @@ -30,9 +38,8 @@ export default defineNuxtModule({ } const env = process.env.VERCEL_ENV - nitroConfig.storage.atproto = { - driver: env === 'production' ? 'vercel-kv' : 'vercel-runtime-cache', - } + nitroConfig.storage.atproto = + env === 'production' ? upstash : { driver: 'vercel-runtime-cache' } }) }, }) diff --git a/package.json b/package.json index d935fffc76..22eb0c8ca5 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,6 @@ "@unocss/nuxt": "66.6.0", "@unocss/preset-wind4": "66.6.0", "@upstash/redis": "1.36.1", - "@vercel/kv": "3.0.0", "@vite-pwa/assets-generator": "1.0.2", "@vite-pwa/nuxt": "1.1.0", "@voidzero-dev/vite-plus-core": "0.0.0-833c515fa25cef20905a7f9affb156dfa6f151ab", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 28a40bfe2f..02bee3d327 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,9 +98,6 @@ importers: '@upstash/redis': specifier: 1.36.1 version: 1.36.1 - '@vercel/kv': - specifier: 3.0.0 - version: 3.0.0 '@vite-pwa/assets-generator': specifier: 1.0.2 version: 1.0.2 @@ -14051,6 +14048,7 @@ snapshots: '@vercel/kv@3.0.0': dependencies: '@upstash/redis': 1.36.1 + optional: true '@vercel/nft@1.3.0(rollup@4.57.0)': dependencies: