Files
dancefinder-app/nuxt.config.js
T
argoyle a91bcd897e
dancefinder-app / build (pull_request) Successful in 2m41s
dancefinder-app / deploy-prod (pull_request) Has been skipped
fix: add vite optimizeDeps for runtime-discovered dependencies
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 17:37:28 +02:00

97 lines
2.0 KiB
JavaScript

import { defineNuxtConfig } from 'nuxt/config'
import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'
export default defineNuxtConfig({
build: {
transpile: ['vuetify', 'date-fns'],
},
devServer: {
port: 3001,
},
devtools: { enabled: true },
i18n: {
detectBrowserLanguage: {
useCookie: true,
cookieKey: 'nuxt_i18n_redirected',
redirectOn: 'root', // recommended
alwaysRedirect: true,
fallbackLocale: 'sv',
},
langDir: 'translations',
lazy: true,
locales: [
{ code: 'sv', name: 'Svenska', file: 'sv.ts' },
{ code: 'en', name: 'English', file: 'en.ts' },
],
defaultLocale: 'sv',
vueI18n: './i18n.config.ts', // if you are using custom path, default
},
modules: [
(_options, nuxt) => {
nuxt.hooks.hook('vite:extendConfig', (config) => {
// @ts-expect-error
config.plugins.push(
vuetify({
autoImport: true,
// styles: { configFile: "assets/settings.scss" },
}),
)
})
},
'@nuxt/eslint',
'@pinia/nuxt',
'pinia-plugin-persistedstate/nuxt',
'@nuxtjs/i18n',
'@nuxt/devtools',
],
piniaPersistedstate: {
cookieOptions: {
sameSite: 'strict',
},
storage: 'localStorage',
},
ssr: false,
vite: {
css: {
preprocessorOptions: {
scss: {
api: 'modern',
},
},
},
optimizeDeps: {
include: [
'@vue/devtools-core',
'@vue/devtools-kit',
'@auth0/auth0-vue',
'@apollo/client/core',
'@apollo/client/link/context',
'@apollo/client/link/ws',
'@apollo/client/utilities',
'@opentelemetry/api',
'@vue/apollo-composable',
'@grafana/faro-web-sdk',
'@grafana/faro-web-tracing',
'@opentelemetry/instrumentation-fetch',
],
},
resolve: {
dedupe: ['pinia'],
},
vue: {
template: {
transformAssetUrls,
},
},
},
compatibilityDate: '2024-11-03',
})