From 7f55b584d0758031cb7ff98afc6d185e2b919b4c Mon Sep 17 00:00:00 2001 From: Xevion Date: Wed, 16 Jul 2025 19:31:29 -0500 Subject: [PATCH] feat: add sitemap.xml generation, functioning build --- nuxt.config.ts | 5 +++ package.json | 1 + pnpm-lock.yaml | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 105 insertions(+) diff --git a/nuxt.config.ts b/nuxt.config.ts index f85dbc8..9b34935 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -4,6 +4,10 @@ import tailwindcss from '@tailwindcss/vite'; export default defineNuxtConfig({ compatibilityDate: '2025-07-15', devtools: { enabled: true }, + site: { + url: 'the-office.xevion.dev', + name: 'The Office', + }, css: ['~/assets/tailwind.css', '@fontsource-variable/roboto-slab', '@fontsource/open-sans'], nitro: { prerender: { @@ -21,6 +25,7 @@ export default defineNuxtConfig({ '@nuxt/image', 'shadcn-nuxt', '@pinia/nuxt', + '@nuxtjs/sitemap', ], shadcn: { prefix: '', diff --git a/package.json b/package.json index fd63869..24656d7 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "@nuxt/image": "1.10.0", "@nuxt/test-utils": "3.19.2", "@nuxt/ui": "3.2.0", + "@nuxtjs/sitemap": "7.4.3", "@pinia/nuxt": "0.11.1", "@tailwindcss/vite": "^4.1.11", "class-variance-authority": "^0.7.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d48f5aa..1042475 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,6 +26,9 @@ importers: '@nuxt/ui': specifier: 3.2.0 version: 3.2.0(@babel/parser@7.28.0)(@netlify/blobs@9.1.2)(axios@1.10.0)(db0@0.3.2)(embla-carousel@8.6.0)(ioredis@5.6.1)(jwt-decode@4.0.0)(magicast@0.3.5)(typescript@5.8.3)(vite@7.0.4(@types/node@24.0.14)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.0))(vue-router@4.5.1(vue@3.5.17(typescript@5.8.3)))(vue@3.5.17(typescript@5.8.3))(zod@3.25.76) + '@nuxtjs/sitemap': + specifier: 7.4.3 + version: 7.4.3(h3@1.15.3)(magicast@0.3.5)(vite@7.0.4(@types/node@24.0.14)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.0))(vue@3.5.17(typescript@5.8.3)) '@pinia/nuxt': specifier: 0.11.1 version: 0.11.1(magicast@0.3.5)(pinia@3.0.3(typescript@5.8.3)(vue@3.5.17(typescript@5.8.3))) @@ -966,6 +969,10 @@ packages: '@nuxtjs/color-mode@3.5.2': resolution: {integrity: sha512-cC6RfgZh3guHBMLLjrBB2Uti5eUoGM9KyauOaYS9ETmxNWBMTvpgjvSiSJp1OFljIXPIqVTJ3xtJpSNZiO3ZaA==} + '@nuxtjs/sitemap@7.4.3': + resolution: {integrity: sha512-edJ0bVuKS87PefTnKVMqcEwSZbur0yLg2eCKU2kjNDI1jC9tOnCHwXMHQficiKPXZolzqmlK7+U23Tv95OzVbg==} + engines: {node: '>=18.0.0'} + '@oxc-minify/binding-android-arm64@0.77.1': resolution: {integrity: sha512-NDu8wVwDZgpsTsfOKB8grPem16myaGgDJ1V0sk/3JEKm8H1H40O4s1qmgDmPF8etpm4iezy83hSj66mhzcCpXA==} engines: {node: '>=14.0.0'} @@ -2302,6 +2309,10 @@ packages: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} + chalk@5.4.1: + resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + chokidar@3.6.0: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} @@ -3036,6 +3047,10 @@ packages: fast-npm-meta@0.4.4: resolution: {integrity: sha512-cq8EVW3jpX1U3dO1AYanz2BJ6n9ITQgCwE1xjNwI5jO2a9erE369OZNO8Wt/Wbw8YHhCD/dimH9BxRsY+6DinA==} + fast-xml-parser@5.2.5: + resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==} + hasBin: true + fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} @@ -3238,6 +3253,11 @@ packages: resolution: {integrity: sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + h3-compression@0.3.2: + resolution: {integrity: sha512-B+yCKyDRnO0BXSfjAP4tCXJgJwmnKp3GyH5Yh66mY9KuOCrrGQSPk/gBFG2TgH7OyB/6mvqNZ1X0XNVuy0qRsw==} + peerDependencies: + h3: ^1.6.0 + h3@1.15.3: resolution: {integrity: sha512-z6GknHqyX0h9aQaTx22VZDf6QyZn+0Nh+Ym8O/u0SGSkyF5cuTJYKlc8MkzW3Nzf9LE1ivcpmYC3FUGpywhuUQ==} @@ -3941,6 +3961,12 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + nuxt-site-config-kit@3.2.2: + resolution: {integrity: sha512-SmTBVm6JQd5zHBy04/qn0gWo3rg1HTRGT/H91hxk/o+mDB3ll+TkzpZekD46RUBO/AD02ArLG5n2ndu6zhWsHA==} + + nuxt-site-config@3.2.2: + resolution: {integrity: sha512-0zCo8nZKk11F4oEWvioTPpxYesJtiwWGfanh1coOfPmvGdYuCcJ/pusy8zdPb6xQkvAYqpTZUy7KKfjXjrE8rA==} + nuxt@4.0.0: resolution: {integrity: sha512-HMhAEW59Ws3ty8SUZ0icOPoqP5xMaThZA5h7A7pz1Gl/feW1FwtJZnqjZ/aO/Xv2TlTIbkil2OOolDpJOAQjUg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -4722,6 +4748,11 @@ packages: sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + site-config-stack@3.2.2: + resolution: {integrity: sha512-T1NphPh1sWlsIXbD1q1HDgHbX40miTyi++cDqXkVOuHQ/eQnGp6w8cwB8u9XmgSZsnmZpsQJgPUTNH7SX173AA==} + peerDependencies: + vue: ^3 + slash@5.1.0: resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} engines: {node: '>=14.16'} @@ -4824,6 +4855,9 @@ packages: strip-literal@3.0.0: resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} + strnum@2.1.1: + resolution: {integrity: sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==} + structured-clone-es@1.0.0: resolution: {integrity: sha512-FL8EeKFFyNQv5cMnXI31CIMCsFarSVI2bF0U0ImeNE3g/F1IvJQyqzOXxPBRXiwQfyBTlbNe88jh1jFW0O/jiQ==} @@ -6770,6 +6804,30 @@ snapshots: transitivePeerDependencies: - magicast + '@nuxtjs/sitemap@7.4.3(h3@1.15.3)(magicast@0.3.5)(vite@7.0.4(@types/node@24.0.14)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.0))(vue@3.5.17(typescript@5.8.3))': + dependencies: + '@nuxt/devtools-kit': 2.6.2(magicast@0.3.5)(vite@7.0.4(@types/node@24.0.14)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.0)) + '@nuxt/kit': 3.17.7(magicast@0.3.5) + chalk: 5.4.1 + defu: 6.1.4 + fast-xml-parser: 5.2.5 + h3-compression: 0.3.2(h3@1.15.3) + nuxt-site-config: 3.2.2(magicast@0.3.5)(vue@3.5.17(typescript@5.8.3)) + ofetch: 1.4.1 + pathe: 2.0.3 + pkg-types: 2.2.0 + radix3: 1.1.2 + semver: 7.7.2 + sirv: 3.0.1 + std-env: 3.9.0 + ufo: 1.6.1 + ultrahtml: 1.6.0 + transitivePeerDependencies: + - h3 + - magicast + - vite + - vue + '@oxc-minify/binding-android-arm64@0.77.1': optional: true @@ -7964,6 +8022,8 @@ snapshots: ansi-styles: 4.3.0 supports-color: 7.2.0 + chalk@5.4.1: {} + chokidar@3.6.0: dependencies: anymatch: 3.1.3 @@ -8761,6 +8821,10 @@ snapshots: fast-npm-meta@0.4.4: {} + fast-xml-parser@5.2.5: + dependencies: + strnum: 2.1.1 + fastq@1.19.1: dependencies: reusify: 1.1.0 @@ -8980,6 +9044,10 @@ snapshots: dependencies: duplexer: 0.1.2 + h3-compression@0.3.2(h3@1.15.3): + dependencies: + h3: 1.15.3 + h3@1.15.3: dependencies: cookie-es: 1.2.2 @@ -9719,6 +9787,30 @@ snapshots: dependencies: boolbase: 1.0.0 + nuxt-site-config-kit@3.2.2(magicast@0.3.5)(vue@3.5.17(typescript@5.8.3)): + dependencies: + '@nuxt/kit': 3.17.7(magicast@0.3.5) + pkg-types: 2.2.0 + site-config-stack: 3.2.2(vue@3.5.17(typescript@5.8.3)) + std-env: 3.9.0 + ufo: 1.6.1 + transitivePeerDependencies: + - magicast + - vue + + nuxt-site-config@3.2.2(magicast@0.3.5)(vue@3.5.17(typescript@5.8.3)): + dependencies: + '@nuxt/kit': 3.17.7(magicast@0.3.5) + nuxt-site-config-kit: 3.2.2(magicast@0.3.5)(vue@3.5.17(typescript@5.8.3)) + pathe: 2.0.3 + pkg-types: 2.2.0 + sirv: 3.0.1 + site-config-stack: 3.2.2(vue@3.5.17(typescript@5.8.3)) + ufo: 1.6.1 + transitivePeerDependencies: + - magicast + - vue + nuxt@4.0.0(@netlify/blobs@9.1.2)(@parcel/watcher@2.5.1)(@types/node@24.0.14)(@vue/compiler-sfc@3.5.17)(db0@0.3.2)(eslint@9.31.0(jiti@2.4.2))(ioredis@5.6.1)(lightningcss@1.30.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.45.0)(sass@1.89.2)(terser@5.43.1)(typescript@5.8.3)(vite@7.0.4(@types/node@24.0.14)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(yaml@2.8.0))(vue-tsc@3.0.1(typescript@5.8.3))(yaml@2.8.0): dependencies: '@nuxt/cli': 3.26.2(magicast@0.3.5) @@ -10697,6 +10789,11 @@ snapshots: sisteransi@1.0.5: {} + site-config-stack@3.2.2(vue@3.5.17(typescript@5.8.3)): + dependencies: + ufo: 1.6.1 + vue: 3.5.17(typescript@5.8.3) + slash@5.1.0: {} smob@1.5.0: {} @@ -10793,6 +10890,8 @@ snapshots: dependencies: js-tokens: 9.0.1 + strnum@2.1.1: {} + structured-clone-es@1.0.0: {} stylehacks@7.0.6(postcss@8.5.6):