2023-12-09 14:47:03 +00:00
|
|
|
// https://nuxt.com/docs/api/configuration/nuxt-config
|
2024-01-03 16:38:11 +00:00
|
|
|
import runtimeConfig from "./runtimeConfig";
|
2024-01-17 18:32:17 +00:00
|
|
|
import { sentryVitePlugin } from "@sentry/vite-plugin";
|
2024-01-02 15:35:16 +00:00
|
|
|
import sitemap from "./sitemap";
|
2023-12-18 09:35:00 +00:00
|
|
|
|
2023-12-09 14:47:03 +00:00
|
|
|
export default defineNuxtConfig({
|
2024-01-06 14:26:18 +00:00
|
|
|
loglevel: process.env.NUXT_LOG_LEVEL || 'info',
|
2023-12-09 14:47:03 +00:00
|
|
|
devtools: {enabled: true},
|
|
|
|
css: ['~/scss/app.scss'],
|
|
|
|
modules: [
|
|
|
|
'@pinia/nuxt',
|
|
|
|
'@vueuse/nuxt',
|
2023-12-31 11:39:01 +00:00
|
|
|
'@vueuse/motion/nuxt',
|
2024-01-02 15:35:16 +00:00
|
|
|
'nuxt3-notifications',
|
|
|
|
'nuxt-simple-sitemap',
|
2024-01-05 23:31:28 +00:00
|
|
|
'@nuxt/image',
|
2024-01-14 19:52:14 +00:00
|
|
|
... process.env.NUXT_PUBLIC_GOOGLE_ANALYTICS_CODE ? ['nuxt-gtag'] : [],
|
2023-12-09 14:47:03 +00:00
|
|
|
],
|
2024-01-02 17:31:31 +00:00
|
|
|
build: {
|
2024-01-16 15:46:22 +00:00
|
|
|
transpile: ["vue-notion", "query-builder-vue-3"],
|
2024-01-02 17:31:31 +00:00
|
|
|
},
|
2023-12-09 14:47:03 +00:00
|
|
|
postcss: {
|
|
|
|
plugins: {
|
|
|
|
'postcss-import': {},
|
|
|
|
'tailwindcss/nesting': {},
|
|
|
|
tailwindcss: {},
|
|
|
|
autoprefixer: {},
|
|
|
|
},
|
|
|
|
},
|
2024-01-02 15:35:16 +00:00
|
|
|
experimental: {
|
|
|
|
inlineRouteRules: true
|
|
|
|
},
|
2023-12-09 14:47:03 +00:00
|
|
|
sentry: {
|
2024-01-05 23:31:28 +00:00
|
|
|
dsn: process.env.NUXT_PUBLIC_SENTRY_DSN,
|
2024-01-13 17:17:24 +00:00
|
|
|
lazy: true,
|
2023-12-09 16:02:23 +00:00
|
|
|
},
|
2024-01-14 19:52:14 +00:00
|
|
|
gtag: {
|
|
|
|
id: process.env.NUXT_PUBLIC_GOOGLE_ANALYTICS_CODE,
|
|
|
|
},
|
2023-12-11 10:56:21 +00:00
|
|
|
components: [
|
|
|
|
{
|
|
|
|
path: '~/components/forms',
|
|
|
|
pathPrefix: false,
|
2023-12-24 09:40:09 +00:00
|
|
|
global: true,
|
2023-12-11 10:56:21 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
path: '~/components/global',
|
|
|
|
pathPrefix: false,
|
|
|
|
},
|
2023-12-18 09:35:00 +00:00
|
|
|
{
|
|
|
|
path: '~/components/pages',
|
|
|
|
pathPrefix: false,
|
|
|
|
},
|
2023-12-11 10:56:21 +00:00
|
|
|
'~/components',
|
|
|
|
],
|
2024-01-08 18:58:07 +00:00
|
|
|
nitro: {
|
|
|
|
awsAmplify: {
|
2024-01-11 08:48:57 +00:00
|
|
|
imageOptimization: {
|
|
|
|
cacheControl: "public, max-age=600, immutable" // 10 minutes
|
|
|
|
},
|
2024-01-08 18:58:07 +00:00
|
|
|
imageSettings: {
|
2024-01-11 08:48:57 +00:00
|
|
|
formats: ['image/webp'],
|
2024-01-08 21:55:26 +00:00
|
|
|
dangerouslyAllowSVG: true,
|
2024-01-08 18:58:07 +00:00
|
|
|
}
|
|
|
|
}
|
2024-01-06 15:53:57 +00:00
|
|
|
},
|
2024-01-08 21:55:26 +00:00
|
|
|
image: {
|
2024-01-10 13:20:51 +00:00
|
|
|
quality: 95,
|
2024-01-08 21:55:26 +00:00
|
|
|
},
|
2024-01-17 18:32:17 +00:00
|
|
|
sourcemap: true,
|
|
|
|
vite: {
|
|
|
|
plugins: [
|
|
|
|
// Put the Sentry vite plugin after all other plugins
|
|
|
|
sentryVitePlugin({
|
|
|
|
authToken: process.env.SENTRY_AUTH_TOKEN,
|
|
|
|
org: "opnform",
|
|
|
|
project: "opnform-vue",
|
|
|
|
}),
|
|
|
|
],
|
|
|
|
},
|
2024-01-03 16:38:11 +00:00
|
|
|
sitemap,
|
|
|
|
runtimeConfig
|
2023-12-09 14:47:03 +00:00
|
|
|
})
|