import type { XMarketingConfig } from "./types/config"; export default defineAppConfig({ ui: { primary: "brand", colors: { primary: "brand", secondary: "deep", neutral: "zinc", }, button: { slots: { base: "font-medium tracking-wide", }, variants: { size: { lg: "px-8 py-4 text-base", xl: "px-10 py-5 text-lg", }, }, }, card: { slots: { root: "overflow-hidden", body: "p-0", }, }, }, xMarketing: { /** Site name — used by the shipped shell for the SEO title template * ("%s | name") and og:site_name. Leave undefined to keep bare titles. */ name: undefined, /** Canonical site URL — used as og:url on the shipped home page. */ url: undefined, config: { markerProjectId: undefined, emailMarketingNewsletters: { organizationId: undefined, }, }, header: { /** Set false to opt out of the default navbar in the shipped shell. */ active: true as boolean, logo: { src: undefined, srcDark: undefined, alt: undefined, }, nav: { buttons: [], links: [], }, }, footer: { /** Set false to opt out of the default footer in the shipped shell. */ active: true as boolean, logo: { src: undefined, alt: undefined, }, bg: { color: undefined, img: { src: undefined, alt: undefined, }, }, body: undefined, socials: [], columns: [], }, /** Cookie-consent banner in the shipped shell; gates tracking injection. */ consent: { active: true as boolean, }, blog: { active: true as boolean, title: "Blog", description: "Welcome to our blog. Here you can find the latest news, updates, and articles.", meta: { title: "Blog", description: "Welcome to our blog. Here you can find the latest news, updates, and articles.", }, }, /** * Tracking + analytics configuration consumed by * `` and `useConsentTracking()`. * * Convenience IDs (gtmId / ga4Id / clarityId) auto-generate the * standard snippet for that tool. Use `scripts[]` for everything * else (Meta Pixel, Hotjar, Segment, LinkedIn Insight, etc.). * * Scripts only fire after the visitor grants consent for the * matching category (analytics or marketing). */ tracking: { // ---- Convenience IDs (string-only, zero-config) ---- /** Google Tag Manager container ID, e.g. "GTM-XXXXXXX". */ gtmId: undefined, /** Google Analytics 4 measurement ID, e.g. "G-XXXXXXXX". */ ga4Id: undefined, /** Microsoft Clarity project ID, e.g. "abc123def4". */ clarityId: undefined, // ---- Escape hatch: arbitrary scripts ---- scripts: [], // ---- Behavior ---- /** Auto-inject configured scripts on consent. Default: true. */ autoInject: true as boolean, }, }, }); declare module "@nuxt/schema" { interface AppConfigInput { xMarketing?: XMarketingConfig; } }