Files
cultureat-bak/wp-content/themes/ccat/nuxt.config.ts
2025-09-24 12:36:12 -04:00

102 lines
1.7 KiB
TypeScript

import PluginVue from "@vitejs/plugin-vue";
const isDev = process.env.NODE_ENV === "development";
export default defineNuxtConfig({
modules: [
"@nuxt/eslint",
"@nuxt/image",
"@nuxt/ui",
"@nuxthub/core",
"@nuxtjs/device",
"@nuxtjs/robots",
"@nuxtjs/sitemap",
"@vueuse/nuxt",
"nuxt-auth-utils",
"nuxt-graphql-middleware",
"nuxt-svgo",
],
components: {
dirs: [
{ path: "~/components", pathPrefix: false },
],
},
imports: {
dirs: ["~~/shared/schemas"],
},
devtools: { enabled: true },
css: ["~/assets/css/main.css"],
site: {
indexable: false,
url: "https://cultureat.ca",
name: "Conseil de la culture de l'Abitibi-Témiscamingue",
},
ui: {
colorMode: false,
},
runtimeConfig: {
public: {
},
},
future: { compatibilityVersion: 4 },
compatibilityDate: "2025-03-01",
nitro: {
preset: "cloudflare_module",
rollupConfig: {
plugins: [
PluginVue(),
],
},
},
hub: {
workers: true,
},
eslint: {
config: {
stylistic: {
arrowParens: true,
commaDangle: "always-multiline",
indent: 2,
quotes: "double",
semi: true,
},
},
},
graphqlMiddleware: {
graphqlEndpoint: process.env.NUXT_GRAPHQL_ENDPOINT || "https://wp.cultureat.ca/graphql",
downloadSchema: isDev,
schemaPath: "server/schema.graphql",
},
image: {
format: ["avif", "webp"],
quality: 80,
domains: ["wp.cultureat.ca", "cultureat.ledevsimple.ca"],
},
robots: {
sitemap: [
"/sitemap.xml",
],
},
sitemap: {},
svgo: {
autoImportPath: "~/assets/svg/",
componentPrefix: "svg",
defaultImport: "component",
},
});