Files
headless-2026-03/wp-content/themes/headless/nuxt.config.ts

74 lines
1.5 KiB
TypeScript

import { version, description } from "./package.json";
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
modules: [
"@lewebsimple/nuxt-graphql",
"@nuxt/image",
"@nuxt/ui",
"@nuxtjs/seo",
"nuxt-auth-utils",
"nuxt-svgo",
],
compatibilityDate: "2026-03-18",
devtools: { enabled: true },
css: ["~/assets/css/_main.css"],
components: {
dirs: [
{ path: "~/components/nodes", global: true },
{ path: "~/components/sections", global: true },
{ path: "~/components", pathPrefix: false },
],
},
ui: { colorMode: false },
runtimeConfig: {
wpUrl: "",
},
ogImage: { enabled: false },
site: {
name: description,
url: "",
},
robots: { sitemap: `${process.env.NUXT_WP_URL}/sitemap_index.xml` },
sitemap: false,
graphql: {
client: {
cache: { keyVersion: version },
ssrForwardHeaders: ["authorization", "cookie"],
},
server: {
context: ["server/graphql/context.ts"],
schema: [
{
type: "remote",
endpoint: `${process.env.NUXT_WP_URL}/graphql`,
hooks: ["server/graphql/wp-hooks.ts"],
},
],
},
},
svgo: {
autoImportPath: "~/assets/svg/",
componentPrefix: "Svg",
defaultImport: "component",
},
vite: {
optimizeDeps: {
include: [
"@vue/devtools-core",
"@vue/devtools-kit",
"es-toolkit",
"tailwind-variants",
"zod",
],
},
},
});