import { fileURLToPath } from 'node:url' export default defineNuxtConfig({ alias: { '~/server': fileURLToPath(new URL('./server', import.meta.url)), '~~/server': fileURLToPath(new URL('./server', import.meta.url)), }, future: { compatibilityVersion: 4 }, devtools: { enabled: true }, modules: [ '@nuxtjs/tailwindcss', '@vite-pwa/nuxt', '@vueuse/nuxt' ], experimental: { appManifest: false }, css: ['~/assets/css/main.css'], tailwindcss: { cssPath: '~/assets/css/main.css' }, app: { head: { title: 'XFlow', link: [ { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }, { rel: 'manifest', href: '/manifest.json' } ] } }, pwa: { injectRegister: 'script', registerType: 'autoUpdate', devOptions: { enabled: false, suppressWarnings: true } }, nitro: { experimental: { wasm: true }, externals: { external: ['@prisma/client', '@prisma/adapter-pg', 'pg'] } }, routeRules: { '/**': { headers: { 'Cross-Origin-Opener-Policy': 'same-origin-allow-popups' } } }, runtimeConfig: { jwtSecret: process.env.NUXT_JWT_SECRET || 'your-super-secret-jwt-key', firebaseApiKey: process.env.NUXT_FIREBASE_API_KEY || process.env.FIREBASE_API_KEY || '', giteaUrl: process.env.GITEA_URL || '', giteaToken: process.env.GITEA_TOKEN || '', giteaOrg: process.env.GITEA_ORG || '', giteaMindmapRepo: process.env.GITEA_MINDMAP_REPO || '', giteaProjectRepo: process.env.GITEA_PROJECT_REPO || '', deepseekApiKey: process.env.DEEPSEEK_API_KEY || '', qwenApiKey: '', public: { apiBase: process.env.NUXT_PUBLIC_API_BASE || '/api', firebaseApiKey: process.env.NUXT_PUBLIC_FIREBASE_API_KEY || process.env.FIREBASE_API_KEY || '', firebaseAuthDomain: process.env.NUXT_PUBLIC_FIREBASE_AUTH_DOMAIN || process.env.FIREBASE_AUTH_DOMAIN || '', firebaseProjectId: process.env.NUXT_PUBLIC_FIREBASE_PROJECT_ID || process.env.FIREBASE_PROJECT_ID || '', firebaseAppId: process.env.NUXT_PUBLIC_FIREBASE_APP_ID || process.env.FIREBASE_APP_ID || '', firebaseMessagingSenderId: process.env.NUXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID || process.env.FIREBASE_MESSAGING_SENDER_ID || '' } }, compatibilityDate: '2025-04-23' })