diff --git a/docs/content/2.guides/1.content.md b/docs/content/2.guides/1.content.md new file mode 100644 index 0000000..0f076af --- /dev/null +++ b/docs/content/2.guides/1.content.md @@ -0,0 +1,122 @@ +--- +title: Nuxt Content +description: How to use the Nuxt Schema.org module with Nuxt Content. +--- + +## Introduction + +Nuxt Schema.org integrates with Nuxt Content out of the box, supporting a `schemaOrg` frontmatter key that can be used to configure your pages +schema.org data. + +You can see a demo of this integration in the [Nuxt OG Image & Nuxt Content Playground](https://stackblitz.com/edit/github-hgunsf?file=package.json). + +## Setup + +No extra set up is required, simply add the `schemaOrg` key to your frontmatter. + +It's recommended to provide an array of Schema.org nodes, otherwise you will be extending the [`WebPage`{lang="ts"}](https://unhead.unjs.io/schema-org/schema/webpage) node with the provided data. + +::code-group + +```md [Array] +--- +schemaOrg: + # Define new nodes + - "@type": "BlogPosting" + headline: "How to Use Our Product" + author: + type: "Person" + name: "Jane Smith" + datePublished: "2023-10-01" +--- +``` + +```md [Object] +--- +schemaOrg: + # Augment WebPage to an AboutPage + "@type": "AboutPage" +--- +``` + +:: + +## Markdown Recipes + +### Blog Post + +```md +--- +title: 'My Blog Post' +schemaOrg: + - type: "BlogPosting" + headline: "How to Use Our Product" + author: + type: "Person" + name: "Jane Smith" + datePublished: "2023-10-01" +--- +``` + +### FAQ Page + +```md +--- +title: 'FAQ' +schemaOrg: + type: FaqPage + mainEntity: + - "@type": "Question" + name: "What is your return policy?" + acceptedAnswer: + "@type": "Answer" + text: "You can return any item within 30 days of purchase." + - "@type": "Question" + name: "Do you offer technical support?" + acceptedAnswer: + "@type": "Answer" + text: "Yes, we offer 24/7 technical support." +--- +``` + +### About Page + +```md +--- +title: 'About' +schemaOrg: + "@type": "AboutPage" +--- +``` + +### Contact Page + +```md +--- +title: 'Contact' +schemaOrg: + "@type": "ContactPage" + mainEntity: + "@type": "ContactPoint" + contactType: "Customer Service" + telephone: "+1-800-555-5555" + email: "support@example.com" +--- +``` + + +### Product Page + +```md +--- +title: 'Product' +schemaOrg: + - "@type": "Product" + name: "Product XYZ" + description: "A high-quality product that meets your needs." + offers: + "@type": "Offer" + price: "29.99" + priceCurrency: "USD" +--- +``` diff --git a/package.json b/package.json index 434189e..87938db 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,7 @@ }, "devDependencies": { "@antfu/eslint-config": "^3.9.2", + "@nuxt/content": "^2.13.4", "@nuxt/module-builder": "^0.8.4", "@nuxt/schema": "^3.14.1592", "@nuxt/test-utils": "^3.14.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1de8551..f488e71 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,19 +10,19 @@ importers: dependencies: '@nuxt/devtools-kit': specifier: ^1.6.1 - version: 1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) + version: 1.6.1(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) '@nuxt/kit': specifier: ^3.14.1592 - version: 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + version: 3.14.1592(magicast@0.3.5)(rollup@4.27.3) '@unhead/schema-org': specifier: ^1.11.11 version: 1.11.11 nuxt-site-config: specifier: ^2.2.21 - version: 2.2.21(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) + version: 2.2.21(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) nuxt-site-config-kit: specifier: ^2.2.21 - version: 2.2.21(magicast@0.3.5)(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3)) + version: 2.2.21(magicast@0.3.5)(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)) pathe: specifier: ^1.1.2 version: 1.1.2 @@ -33,24 +33,27 @@ importers: '@antfu/eslint-config': specifier: ^3.9.2 version: 3.9.2(@typescript-eslint/utils@8.15.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.6.3))(@vue/compiler-sfc@3.5.13)(eslint@9.15.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0)) + '@nuxt/content': + specifier: ^2.13.4 + version: 2.13.4(ioredis@5.4.1)(magicast@0.3.5)(nuxt@3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)))(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)) '@nuxt/module-builder': specifier: ^0.8.4 - version: 0.8.4(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@3.29.5))(nuxi@3.15.0)(typescript@5.6.3) + version: 0.8.4(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.27.3))(nuxi@3.15.0)(typescript@5.6.3) '@nuxt/schema': specifier: ^3.14.1592 - version: 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + version: 3.14.1592(magicast@0.3.5)(rollup@4.27.3) '@nuxt/test-utils': specifier: ^3.14.4 - version: 3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) + version: 3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) '@nuxt/ui': specifier: ^2.19.2 - version: 2.19.2(change-case@5.4.4)(focus-trap@7.6.1)(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) + version: 2.19.2(change-case@5.4.4)(focus-trap@7.6.1)(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) '@nuxtjs/i18n': specifier: ^9.1.0 - version: 9.1.0(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(rollup@3.29.5)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + version: 9.1.0(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(rollup@4.27.3)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) '@nuxtjs/robots': specifier: ^4.1.11 - version: 4.1.11(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) + version: 4.1.11(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) bumpp: specifier: ^9.8.1 version: 9.8.1(magicast@0.3.5) @@ -62,7 +65,7 @@ importers: version: 9.15.0(jiti@2.4.0) nuxt: specifier: ^3.14.1592 - version: 3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@3.29.5)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) + version: 3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) typescript: specifier: 5.6.3 version: 5.6.3 @@ -1165,6 +1168,9 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@nuxt/content@2.13.4': + resolution: {integrity: sha512-NBaHL/SNYUK7+RLgOngSFmKqEPYc0dYdnwVFsxIdrOZUoUbD8ERJJDaoRwwtyYCMOgUeFA/zxAkuADytp+DKiQ==} + '@nuxt/devalue@2.0.2': resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==} @@ -1267,6 +1273,9 @@ packages: resolution: {integrity: sha512-2wDdZsGgvr6SWMSUaTgQhk7ytVuca3RkTR1zijDaQ6u6wnk8MeVPujINVBO/U6ufYTggSf+TM66R7bzGYf/brg==} engines: {node: ^14.16.0 || >=16.11.0} + '@nuxtjs/mdc@0.9.5': + resolution: {integrity: sha512-bTnlY+oiW8QsmrLoiYN+rkSYxl7asELlwYeU9QPSkun5BVx7Yd8RajH8I+0QJZiMZzIHaO3LEgf3lzp5Lg6E0A==} + '@nuxtjs/robots@4.1.11': resolution: {integrity: sha512-neHIO1WnnURwq/XE7z8SSrf7OvjwD+pfRPpCHdMdaly6aGN8U0z4ZAq53gIrcYMi/xzE+D63QlxeODQgKjLQfQ==} @@ -1587,16 +1596,26 @@ packages: '@shikijs/engine-oniguruma@1.23.1': resolution: {integrity: sha512-KQ+lgeJJ5m2ISbUZudLR1qHeH3MnSs2mjFg7bnencgs5jDVPeJ2NVDJ3N5ZHbcTsOIh0qIueyAJnwg7lg7kwXQ==} + '@shikijs/transformers@1.23.1': + resolution: {integrity: sha512-yQ2Cn0M9i46p30KwbyIzLvKDk+dQNU+lj88RGO0XEj54Hn4Cof1bZoDb9xBRWxFE4R8nmK63w7oHnJwvOtt0NQ==} + '@shikijs/types@1.23.1': resolution: {integrity: sha512-98A5hGyEhzzAgQh2dAeHKrWW4HfCMeoFER2z16p5eJ+vmPeF6lZ/elEne6/UCU551F/WqkopqRsr1l2Yu6+A0g==} '@shikijs/vscode-textmate@9.3.0': resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} + '@sindresorhus/is@4.6.0': + resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} + engines: {node: '>=10'} + '@sindresorhus/merge-streams@2.3.0': resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} engines: {node: '>=18'} + '@socket.io/component-emitter@3.1.2': + resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} + '@stylistic/eslint-plugin@2.11.0': resolution: {integrity: sha512-PNRHbydNG5EH8NK4c+izdJlxajIR6GxcUhzsYNRsn6Myep4dsZt0qFCz3rCPnkvgO5FYibDcMqgNHUT+zvjYZw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1671,6 +1690,9 @@ packages: '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} + '@types/unist@2.0.11': + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} @@ -1982,6 +2004,11 @@ packages: '@vueuse/core@11.2.0': resolution: {integrity: sha512-JIUwRcOqOWzcdu1dGlfW04kaJhW3EXnnjJJfLTtddJanymTL7lF1C0+dVVZ/siLfc73mWn+cGP1PE1PKPruRSA==} + '@vueuse/head@2.0.0': + resolution: {integrity: sha512-ykdOxTGs95xjD4WXE4na/umxZea2Itl0GWBILas+O4oqS7eXIods38INvk3XkJKjqMdWPcpCyLX/DioLQxU1KA==} + peerDependencies: + vue: '>=2.7 || >=3' + '@vueuse/integrations@11.2.0': resolution: {integrity: sha512-zGXz3dsxNHKwiD9jPMvR3DAxQEOV6VWIEYTGVSB9PNpk4pTWR+pXrHz9gvXWcP2sTk3W2oqqS6KwWDdntUvNVA==} peerDependencies: @@ -2222,6 +2249,9 @@ packages: b4a@1.6.7: resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -2350,6 +2380,10 @@ packages: change-case@5.4.4: resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} + char-regex@1.0.2: + resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} + engines: {node: '>=10'} + character-entities-html4@2.1.0: resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} @@ -2359,6 +2393,9 @@ packages: character-entities@2.0.2: resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -2698,6 +2735,9 @@ packages: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detab@3.0.2: + resolution: {integrity: sha512-7Bp16Bk8sk0Y6gdXiCtnpGbghn8atnTJdd/82aWvS5ESnlcNvgUc10U2NYS0PAiDSGjWiI8qs/Cv1b2uSGdQ8w==} + detect-libc@1.0.3: resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} engines: {node: '>=0.10'} @@ -2773,6 +2813,12 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + emojilib@2.4.0: + resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} + + emoticon@4.1.0: + resolution: {integrity: sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==} + encodeurl@1.0.2: resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} engines: {node: '>= 0.8'} @@ -2784,6 +2830,13 @@ packages: encoding-sniffer@0.2.0: resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==} + engine.io-client@6.6.2: + resolution: {integrity: sha512-TAr+NKeoVTjEVW8P3iHguO1LO6RlUz9O5Y8o7EY0fU+gY1NYqas7NN3slpFtbXEsLMHk0h90fJMfKjRkQ0qUIw==} + + engine.io-parser@5.2.3: + resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==} + engines: {node: '>=10.0.0'} + enhanced-resolve@5.17.1: resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} engines: {node: '>=10.13.0'} @@ -3088,6 +3141,9 @@ packages: resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==} engines: {node: '>=12.0.0'} + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + externality@1.0.2: resolution: {integrity: sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==} @@ -3152,6 +3208,11 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} + flat@6.0.1: + resolution: {integrity: sha512-/3FfIa8mbrg3xE7+wAhWeV+bd7L2Mof+xtZb5dRDKZ+wDvYJK4WDYeIOuOhre5Yv5aQObZrlbRmk3RTSiuQBtw==} + engines: {node: '>=18'} + hasBin: true + flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} @@ -3246,6 +3307,9 @@ packages: git-url-parse@15.0.0: resolution: {integrity: sha512-5reeBufLi+i4QD3ZFftcJs9jC26aULFLBU23FeKM/b1rI0K6ofIeAblmDVO7Ht22zTDE9+CkJ3ZVb0CgJmz3UQ==} + github-slugger@2.0.0: + resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -3337,12 +3401,36 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hast-util-from-parse5@8.0.2: + resolution: {integrity: sha512-SfMzfdAi/zAoZ1KkFEyyeXBn7u/ShQrfd675ZEE9M3qj+PMFX05xubzRyF76CCSJu8au9jgVxDV1+okFvgZU4A==} + + hast-util-heading-rank@3.0.0: + resolution: {integrity: sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==} + + hast-util-is-element@3.0.0: + resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} + + hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} + hast-util-to-html@9.0.3: resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} + hast-util-to-parse5@8.0.0: + resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} + + hast-util-to-string@3.0.1: + resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} + hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + hastscript@9.0.0: + resolution: {integrity: sha512-jzaLBGavEDKHrc5EfFImKN7nZKKBdSLIdGvCwDZ9TfzbF2ffXiov8CKE445L2Z1Ek2t/m4SKQ2j6Ipv7NyUolw==} + hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} @@ -3462,6 +3550,16 @@ packages: iron-webcrypto@1.2.1: resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} + is-absolute-url@4.0.1: + resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + + is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -3477,6 +3575,9 @@ packages: resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} engines: {node: '>= 0.4'} + is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} engines: {node: '>=8'} @@ -3503,6 +3604,9 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + is-https@4.0.0: resolution: {integrity: sha512-FeMLiqf8E5g6SdiVJsPcNZX8k4h2fBs1wp5Bb6uaNxn58ufK1axBqQZdmAQsqh0t9BuwFObybrdVJh6MKyPlyg==} @@ -3526,6 +3630,10 @@ packages: resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} engines: {node: '>=12'} + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} @@ -3832,6 +3940,9 @@ packages: mdn-data@2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + media-typer@0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} @@ -3996,6 +4107,9 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} + minisearch@7.1.1: + resolution: {integrity: sha512-b3YZEYCEH4EdCAtYP7OlDyx7FdPwNzuNwLQ34SfJpM9dlbBZzeXndGavTrC+VCiRWomL21SWfMc6SCKO/U2ZNw==} + minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} @@ -4089,6 +4203,10 @@ packages: node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-emoji@2.1.3: + resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} + engines: {node: '>=18'} + node-fetch-native@1.6.4: resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} @@ -4255,6 +4373,9 @@ packages: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + parse-entities@4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + parse-git-config@3.0.0: resolution: {integrity: sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA==} engines: {node: '>=8'} @@ -4699,6 +4820,40 @@ packages: resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} hasBin: true + rehype-external-links@3.0.0: + resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} + + rehype-raw@7.0.0: + resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + + rehype-slug@6.0.0: + resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} + + rehype-sort-attribute-values@5.0.1: + resolution: {integrity: sha512-lU3ABJO5frbUgV132YS6SL7EISf//irIm9KFMaeu5ixHfgWf6jhe+09Uf/Ef8pOYUJWKOaQJDRJGCXs6cNsdsQ==} + + rehype-sort-attributes@5.0.1: + resolution: {integrity: sha512-Bxo+AKUIELcnnAZwJDt5zUDDRpt4uzhfz9d0PVGhcxYWsbFj5Cv35xuWxu5r1LeYNFNhgGqsr9Q2QiIOM/Qctg==} + + remark-emoji@5.0.1: + resolution: {integrity: sha512-QCqTSvcZ65Ym+P+VyBKd4JfJfh7icMl7cIOGVmPMzWkDtdD8pQ0nQG7yxGolVIiMzSx90EZ7SwNiVpYpfTxn7w==} + engines: {node: '>=18'} + + remark-gfm@4.0.0: + resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} + + remark-mdc@3.4.0: + resolution: {integrity: sha512-0bKazg69CnSp5aLIQapkZcv0nS+2SuLd7xz4TMOcxEhukSXKL7f40bEPbNKGbJ4eY65nWAQKyCD1JCtzndmnxw==} + + remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + + remark-rehype@11.1.1: + resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} + + remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + replace-in-file@6.3.5: resolution: {integrity: sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==} engines: {node: '>=10'} @@ -4876,6 +5031,10 @@ packages: peerDependencies: vue: ^3 + skin-tone@2.0.0: + resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} + engines: {node: '>=8'} + slash@4.0.0: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} @@ -4887,9 +5046,21 @@ packages: slashes@3.0.12: resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==} + slugify@1.6.6: + resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==} + engines: {node: '>=8.0.0'} + smob@1.5.0: resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} + socket.io-client@4.8.1: + resolution: {integrity: sha512-hJVXfu3E28NmzGk8o1sHhN3om52tRvwYeidbj7xKy2eIIse5IoKX3USlS6Tqt3BHAtflLIkCQBkzVrEEfWUyYQ==} + engines: {node: '>=10.0.0'} + + socket.io-parser@4.2.4: + resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} + engines: {node: '>=10.0.0'} + source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -5159,6 +5330,9 @@ packages: trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + ts-api-utils@1.4.0: resolution: {integrity: sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ==} engines: {node: '>=16'} @@ -5267,13 +5441,23 @@ packages: unhead@1.11.11: resolution: {integrity: sha512-98tM2R8OWJhvS6uqTewkfIrsPqFU/VwnKpU2tVZ+jPXSWgWSLmM3K2Y2v5AEM4bZjmC/XH8pLVGzbqB7xzFI/Q==} + unicode-emoji-modifier-base@1.0.0: + resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} + engines: {node: '>=4'} + unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} + unified@11.0.5: + resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} + unimport@3.13.2: resolution: {integrity: sha512-VKAepeIb6BWLtBl4tmyHY1/7rJgz3ynmZrWf8cU1a+v5Uv/k1gyyAEeGBnYcrwy8bxG5sflxEx4a9VQUqOVHUA==} + unist-builder@4.0.0: + resolution: {integrity: sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==} + unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} @@ -5414,6 +5598,9 @@ packages: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} + vfile-location@5.0.3: + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} + vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} @@ -5613,6 +5800,9 @@ packages: resolution: {integrity: sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==} engines: {node: '>=10.13.0'} + web-namespaces@2.0.1: + resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} + webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -5677,6 +5867,18 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + ws@8.18.0: resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} @@ -5693,6 +5895,10 @@ packages: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} engines: {node: '>=12'} + xmlhttprequest-ssl@2.1.2: + resolution: {integrity: sha512-TEU+nJVUUnA4CYJFLvK5X9AOeH4KvDvhIfm0vV1GaQRtchnG0hgK5p8hw/xjv8cunWYCsiPCSDzObPyhEwq3KQ==} + engines: {node: '>=0.4.0'} + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -6488,13 +6694,13 @@ snapshots: '@intlify/shared@11.0.0-beta.1': {} - '@intlify/unplugin-vue-i18n@5.3.1(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(rollup@3.29.5)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))': + '@intlify/unplugin-vue-i18n@5.3.1(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(rollup@4.27.3)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.15.0(jiti@2.4.0)) '@intlify/bundle-utils': 9.0.0(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3))) '@intlify/shared': 10.0.4 '@intlify/vue-i18n-extensions': 7.0.0(@intlify/shared@10.0.4)(@vue/compiler-dom@3.5.13)(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.3(rollup@4.27.3) '@typescript-eslint/scope-manager': 8.15.0 '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3) debug: 4.3.7(supports-color@9.4.0) @@ -6599,11 +6805,11 @@ snapshots: - encoding - supports-color - '@miyaneee/rollup-plugin-json5@1.2.0(rollup@3.29.5)': + '@miyaneee/rollup-plugin-json5@1.2.0(rollup@4.27.3)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.3(rollup@4.27.3) json5: 2.2.3 - rollup: 3.29.5 + rollup: 4.27.3 '@netlify/functions@2.8.2': dependencies: @@ -6628,18 +6834,59 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@nuxt/devalue@2.0.2': {} - - '@nuxt/devtools-kit@1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))': + '@nuxt/content@2.13.4(ioredis@5.4.1)(magicast@0.3.5)(nuxt@3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)))(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3))': dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - execa: 7.2.0 - vite: 5.4.11(@types/node@22.9.1)(terser@5.36.0) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@nuxtjs/mdc': 0.9.5(magicast@0.3.5)(rollup@4.27.3) + '@vueuse/core': 11.2.0(vue@3.5.13(typescript@5.6.3)) + '@vueuse/head': 2.0.0(vue@3.5.13(typescript@5.6.3)) + '@vueuse/nuxt': 11.2.0(magicast@0.3.5)(nuxt@3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)))(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)) + consola: 3.2.3 + defu: 6.1.4 + destr: 2.0.3 + json5: 2.2.3 + knitwork: 1.1.0 + listhen: 1.9.0 + mdast-util-to-string: 4.0.0 + mdurl: 2.0.0 + micromark: 4.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-types: 2.0.1 + minisearch: 7.1.1 + ohash: 1.1.4 + pathe: 1.1.2 + scule: 1.3.0 + shiki: 1.23.1 + slugify: 1.6.6 + socket.io-client: 4.8.1 + ufo: 1.5.4 + unist-util-stringify-position: 4.0.0 + unstorage: 1.13.1(ioredis@5.4.1) + ws: 8.18.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' + - '@upstash/redis' + - '@vercel/kv' + - '@vue/composition-api' + - bufferutil + - idb-keyval + - ioredis - magicast + - nuxt - rollup - supports-color + - utf-8-validate + - vue + + '@nuxt/devalue@2.0.2': {} '@nuxt/devtools-kit@1.6.1(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))': dependencies: @@ -6712,53 +6959,6 @@ snapshots: rc9: 2.1.2 semver: 7.6.3 - '@nuxt/devtools@1.6.1(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': - dependencies: - '@antfu/utils': 0.7.10 - '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - '@nuxt/devtools-wizard': 1.6.1 - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@vue/devtools-core': 7.6.4(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - '@vue/devtools-kit': 7.6.4 - birpc: 0.2.19 - consola: 3.2.3 - cronstrue: 2.51.0 - destr: 2.0.3 - error-stack-parser-es: 0.1.5 - execa: 7.2.0 - fast-npm-meta: 0.2.2 - flatted: 3.3.2 - get-port-please: 3.1.2 - hookable: 5.5.3 - image-meta: 0.2.1 - is-installed-globally: 1.0.0 - launch-editor: 2.9.1 - local-pkg: 0.5.1 - magicast: 0.3.5 - nypm: 0.3.12 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - rc9: 2.1.2 - scule: 1.3.0 - semver: 7.6.3 - simple-git: 3.27.0 - sirv: 2.0.4 - tinyglobby: 0.2.10 - unimport: 3.13.2(rollup@3.29.5) - vite: 5.4.11(@types/node@22.9.1)(terser@5.36.0) - vite-plugin-inspect: 0.8.8(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@3.29.5))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - vite-plugin-vue-inspector: 5.1.3(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - which: 3.0.1 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - rollup - - supports-color - - utf-8-validate - - vue - '@nuxt/devtools@1.6.1(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': dependencies: '@antfu/utils': 0.7.10 @@ -6806,14 +7006,14 @@ snapshots: - utf-8-validate - vue - '@nuxt/icon@1.7.2(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': + '@nuxt/icon@1.7.2(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': dependencies: '@iconify/collections': 1.0.481 '@iconify/types': 2.0.0 '@iconify/utils': 2.1.33 '@iconify/vue': 4.2.0-dev.2(vue@3.5.13(typescript@5.6.3)) - '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) consola: 3.2.3 local-pkg: 0.5.1 mlly: 1.7.3 @@ -6828,33 +7028,6 @@ snapshots: - vite - vue - '@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@3.29.5)': - dependencies: - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - c12: 2.0.1(magicast@0.3.5) - consola: 3.2.3 - defu: 6.1.4 - destr: 2.0.3 - globby: 14.0.2 - hash-sum: 2.0.0 - ignore: 6.0.2 - jiti: 2.4.0 - klona: 2.0.6 - knitwork: 1.1.0 - mlly: 1.7.3 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - semver: 7.6.3 - ufo: 1.5.4 - unctx: 2.3.1 - unimport: 3.13.2(rollup@3.29.5) - untyped: 1.5.1 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - '@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.27.3)': dependencies: '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) @@ -6882,9 +7055,9 @@ snapshots: - rollup - supports-color - '@nuxt/module-builder@0.8.4(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@3.29.5))(nuxi@3.15.0)(typescript@5.6.3)': + '@nuxt/module-builder@0.8.4(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.27.3))(nuxi@3.15.0)(typescript@5.6.3)': dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) citty: 0.1.6 consola: 3.2.3 defu: 6.1.4 @@ -6901,26 +7074,6 @@ snapshots: - typescript - vue-tsc - '@nuxt/schema@3.14.1592(magicast@0.3.5)(rollup@3.29.5)': - dependencies: - c12: 2.0.1(magicast@0.3.5) - compatx: 0.1.8 - consola: 3.2.3 - defu: 6.1.4 - hookable: 5.5.3 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - std-env: 3.8.0 - ufo: 1.5.4 - uncrypto: 0.1.3 - unimport: 3.13.2(rollup@3.29.5) - untyped: 1.5.1 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - '@nuxt/schema@3.14.1592(magicast@0.3.5)(rollup@4.27.3)': dependencies: c12: 2.0.1(magicast@0.3.5) @@ -6941,31 +7094,6 @@ snapshots: - rollup - supports-color - '@nuxt/telemetry@2.6.0(magicast@0.3.5)(rollup@3.29.5)': - dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - ci-info: 4.1.0 - consola: 3.2.3 - create-require: 1.1.1 - defu: 6.1.4 - destr: 2.0.3 - dotenv: 16.4.5 - git-url-parse: 15.0.0 - is-docker: 3.0.0 - jiti: 1.21.6 - mri: 1.2.0 - nanoid: 5.0.8 - ofetch: 1.4.1 - package-manager-detector: 0.2.4 - parse-git-config: 3.0.0 - pathe: 1.1.2 - rc9: 2.1.2 - std-env: 3.8.0 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - '@nuxt/telemetry@2.6.0(magicast@0.3.5)(rollup@4.27.3)': dependencies: '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) @@ -6991,10 +7119,10 @@ snapshots: - rollup - supports-color - '@nuxt/test-utils@3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3)': + '@nuxt/test-utils@3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3)': dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) c12: 2.0.1(magicast@0.3.5) consola: 3.2.3 defu: 6.1.4 @@ -7018,7 +7146,7 @@ snapshots: unenv: 1.10.0 unplugin: 1.15.0(webpack-sources@3.2.3) vite: 5.4.11(@types/node@22.9.1)(terser@5.36.0) - vitest-environment-nuxt: 1.0.1(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) + vitest-environment-nuxt: 1.0.1(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) vue: 3.5.13(typescript@5.6.3) vue-router: 4.4.5(vue@3.5.13(typescript@5.6.3)) optionalDependencies: @@ -7029,15 +7157,15 @@ snapshots: - supports-color - webpack-sources - '@nuxt/ui@2.19.2(change-case@5.4.4)(focus-trap@7.6.1)(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': + '@nuxt/ui@2.19.2(change-case@5.4.4)(focus-trap@7.6.1)(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': dependencies: '@headlessui/tailwindcss': 0.2.1(tailwindcss@3.4.14) '@headlessui/vue': 1.7.23(vue@3.5.13(typescript@5.6.3)) '@iconify-json/heroicons': 1.2.1 - '@nuxt/icon': 1.7.2(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxtjs/color-mode': 3.5.2(magicast@0.3.5)(rollup@3.29.5) - '@nuxtjs/tailwindcss': 6.12.2(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/icon': 1.7.2(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@nuxtjs/color-mode': 3.5.2(magicast@0.3.5)(rollup@4.27.3) + '@nuxtjs/tailwindcss': 6.12.2(magicast@0.3.5)(rollup@4.27.3) '@popperjs/core': 2.11.8 '@tailwindcss/aspect-ratio': 0.4.2(tailwindcss@3.4.14) '@tailwindcss/container-queries': 0.1.1(tailwindcss@3.4.14) @@ -7073,10 +7201,10 @@ snapshots: - vite - vue - '@nuxt/vite-builder@3.14.1592(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(optionator@0.9.4)(rollup@3.29.5)(terser@5.36.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))': + '@nuxt/vite-builder@3.14.1592(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))': dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@rollup/plugin-replace': 6.0.1(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@rollup/plugin-replace': 6.0.1(rollup@4.27.3) '@vitejs/plugin-vue': 5.2.0(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) '@vitejs/plugin-vue-jsx': 4.1.0(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) autoprefixer: 10.4.20(postcss@8.4.49) @@ -7099,7 +7227,7 @@ snapshots: perfect-debounce: 1.0.0 pkg-types: 1.2.1 postcss: 8.4.49 - rollup-plugin-visualizer: 5.12.0(rollup@3.29.5) + rollup-plugin-visualizer: 5.12.0(rollup@4.27.3) std-env: 3.8.0 strip-literal: 2.1.0 ufo: 1.5.4 @@ -7132,68 +7260,9 @@ snapshots: - vti - vue-tsc - '@nuxt/vite-builder@3.14.1592(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))': + '@nuxtjs/color-mode@3.5.2(magicast@0.3.5)(rollup@4.27.3)': dependencies: '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) - '@rollup/plugin-replace': 6.0.1(rollup@4.27.3) - '@vitejs/plugin-vue': 5.2.0(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - '@vitejs/plugin-vue-jsx': 4.1.0(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - autoprefixer: 10.4.20(postcss@8.4.49) - clear: 0.1.0 - consola: 3.2.3 - cssnano: 7.0.6(postcss@8.4.49) - defu: 6.1.4 - esbuild: 0.24.0 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - externality: 1.0.2 - get-port-please: 3.1.2 - h3: 1.13.0 - jiti: 2.4.0 - knitwork: 1.1.0 - magic-string: 0.30.13 - mlly: 1.7.3 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - postcss: 8.4.49 - rollup-plugin-visualizer: 5.12.0(rollup@4.27.3) - std-env: 3.8.0 - strip-literal: 2.1.0 - ufo: 1.5.4 - unenv: 1.10.0 - unplugin: 1.16.0 - vite: 5.4.11(@types/node@22.9.1)(terser@5.36.0) - vite-node: 2.1.5(@types/node@22.9.1)(terser@5.36.0) - vite-plugin-checker: 0.8.0(eslint@9.15.0(jiti@2.4.0))(optionator@0.9.4)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - vue: 3.5.13(typescript@5.6.3) - vue-bundle-renderer: 2.1.1 - transitivePeerDependencies: - - '@biomejs/biome' - - '@types/node' - - eslint - - less - - lightningcss - - magicast - - meow - - optionator - - rollup - - sass - - sass-embedded - - stylelint - - stylus - - sugarss - - supports-color - - terser - - typescript - - vls - - vti - - vue-tsc - - '@nuxtjs/color-mode@3.5.2(magicast@0.3.5)(rollup@3.29.5)': - dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) pathe: 1.1.2 pkg-types: 1.2.1 semver: 7.6.3 @@ -7202,15 +7271,15 @@ snapshots: - rollup - supports-color - '@nuxtjs/i18n@9.1.0(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(rollup@3.29.5)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))': + '@nuxtjs/i18n@9.1.0(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(rollup@4.27.3)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))': dependencies: '@intlify/h3': 0.6.1 '@intlify/shared': 10.0.4 - '@intlify/unplugin-vue-i18n': 5.3.1(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(rollup@3.29.5)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) + '@intlify/unplugin-vue-i18n': 5.3.1(@vue/compiler-dom@3.5.13)(eslint@9.15.0(jiti@2.4.0))(rollup@4.27.3)(typescript@5.6.3)(vue-i18n@10.0.4(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) '@intlify/utils': 0.13.0 - '@miyaneee/rollup-plugin-json5': 1.2.0(rollup@3.29.5) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@rollup/plugin-yaml': 4.1.2(rollup@3.29.5) + '@miyaneee/rollup-plugin-json5': 1.2.0(rollup@4.27.3) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@rollup/plugin-yaml': 4.1.2(rollup@4.27.3) '@vue/compiler-sfc': 3.5.13 debug: 4.3.7(supports-color@9.4.0) defu: 6.1.4 @@ -7224,7 +7293,7 @@ snapshots: sucrase: 3.35.0 ufo: 1.5.4 unplugin: 1.16.0 - unplugin-vue-router: 0.10.8(rollup@3.29.5)(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) + unplugin-vue-router: 0.10.8(rollup@4.27.3)(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) vue-i18n: 10.0.4(vue@3.5.13(typescript@5.6.3)) vue-router: 4.4.5(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: @@ -7237,14 +7306,57 @@ snapshots: - typescript - vue - '@nuxtjs/robots@4.1.11(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': + '@nuxtjs/mdc@0.9.5(magicast@0.3.5)(rollup@4.27.3)': dependencies: - '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@shikijs/transformers': 1.23.1 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@vue/compiler-core': 3.5.13 + consola: 3.2.3 + debug: 4.3.7(supports-color@9.4.0) + defu: 6.1.4 + destr: 2.0.3 + detab: 3.0.2 + github-slugger: 2.0.0 + hast-util-to-string: 3.0.1 + mdast-util-to-hast: 13.2.0 + micromark-util-sanitize-uri: 2.0.1 + ohash: 1.1.4 + parse5: 7.2.1 + pathe: 1.1.2 + property-information: 6.5.0 + rehype-external-links: 3.0.0 + rehype-raw: 7.0.0 + rehype-slug: 6.0.0 + rehype-sort-attribute-values: 5.0.1 + rehype-sort-attributes: 5.0.1 + remark-emoji: 5.0.1 + remark-gfm: 4.0.0 + remark-mdc: 3.4.0 + remark-parse: 11.0.0 + remark-rehype: 11.1.1 + scule: 1.3.0 + shiki: 1.23.1 + ufo: 1.5.4 + unified: 11.0.5 + unist-builder: 4.0.0 + unist-util-visit: 5.0.0 + unwasm: 0.3.9 + vfile: 6.0.3 + transitivePeerDependencies: + - magicast + - rollup + - supports-color + + '@nuxtjs/robots@4.1.11(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3))': + dependencies: + '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) consola: 3.2.3 defu: 6.1.4 - nuxt-site-config: 2.2.21(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - nuxt-site-config-kit: 2.2.21(magicast@0.3.5)(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3)) + nuxt-site-config: 2.2.21(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) + nuxt-site-config-kit: 2.2.21(magicast@0.3.5)(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)) pathe: 1.1.2 pkg-types: 1.2.1 sirv: 3.0.0 @@ -7257,9 +7369,9 @@ snapshots: - vite - vue - '@nuxtjs/tailwindcss@6.12.2(magicast@0.3.5)(rollup@3.29.5)': + '@nuxtjs/tailwindcss@6.12.2(magicast@0.3.5)(rollup@4.27.3)': dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) autoprefixer: 10.4.20(postcss@8.4.49) consola: 3.2.3 defu: 6.1.4 @@ -7456,13 +7568,6 @@ snapshots: optionalDependencies: rollup: 3.29.5 - '@rollup/plugin-replace@6.0.1(rollup@3.29.5)': - dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - magic-string: 0.30.13 - optionalDependencies: - rollup: 3.29.5 - '@rollup/plugin-replace@6.0.1(rollup@4.27.3)': dependencies: '@rollup/pluginutils': 5.1.3(rollup@4.27.3) @@ -7478,13 +7583,13 @@ snapshots: optionalDependencies: rollup: 4.27.3 - '@rollup/plugin-yaml@4.1.2(rollup@3.29.5)': + '@rollup/plugin-yaml@4.1.2(rollup@4.27.3)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.3(rollup@4.27.3) js-yaml: 4.1.0 tosource: 2.0.0-alpha.3 optionalDependencies: - rollup: 3.29.5 + rollup: 4.27.3 '@rollup/pluginutils@4.2.1': dependencies: @@ -7581,6 +7686,10 @@ snapshots: '@shikijs/types': 1.23.1 '@shikijs/vscode-textmate': 9.3.0 + '@shikijs/transformers@1.23.1': + dependencies: + shiki: 1.23.1 + '@shikijs/types@1.23.1': dependencies: '@shikijs/vscode-textmate': 9.3.0 @@ -7588,8 +7697,12 @@ snapshots: '@shikijs/vscode-textmate@9.3.0': {} + '@sindresorhus/is@4.6.0': {} + '@sindresorhus/merge-streams@2.3.0': {} + '@socket.io/component-emitter@3.1.2': {} + '@stylistic/eslint-plugin@2.11.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.6.3)': dependencies: '@typescript-eslint/utils': 8.15.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.6.3) @@ -7672,6 +7785,8 @@ snapshots: '@types/resolve@1.20.2': {} + '@types/unist@2.0.11': {} + '@types/unist@3.0.3': {} '@types/web-bluetooth@0.0.20': {} @@ -8060,19 +8175,6 @@ snapshots: loupe: 3.1.2 tinyrainbow: 1.2.0 - '@vue-macros/common@1.15.0(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3))': - dependencies: - '@babel/types': 7.26.0 - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - '@vue/compiler-sfc': 3.5.13 - ast-kit: 1.3.1 - local-pkg: 0.5.1 - magic-string-ast: 0.6.3 - optionalDependencies: - vue: 3.5.13(typescript@5.6.3) - transitivePeerDependencies: - - rollup - '@vue-macros/common@1.15.0(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3))': dependencies: '@babel/types': 7.26.0 @@ -8208,6 +8310,14 @@ snapshots: - '@vue/composition-api' - vue + '@vueuse/head@2.0.0(vue@3.5.13(typescript@5.6.3))': + dependencies: + '@unhead/dom': 1.11.11 + '@unhead/schema': 1.11.11 + '@unhead/ssr': 1.11.11 + '@unhead/vue': 1.11.11(vue@3.5.13(typescript@5.6.3)) + vue: 3.5.13(typescript@5.6.3) + '@vueuse/integrations@11.2.0(change-case@5.4.4)(focus-trap@7.6.1)(fuse.js@7.0.0)(vue@3.5.13(typescript@5.6.3))': dependencies: '@vueuse/core': 11.2.0(vue@3.5.13(typescript@5.6.3)) @@ -8467,6 +8577,8 @@ snapshots: b4a@1.6.7: {} + bail@2.0.2: {} + balanced-match@1.0.2: {} bare-events@2.5.0: @@ -8615,12 +8727,16 @@ snapshots: change-case@5.4.4: {} + char-regex@1.0.2: {} + character-entities-html4@2.1.0: {} character-entities-legacy@3.0.0: {} character-entities@2.0.2: {} + character-reference-invalid@2.0.1: {} + check-error@2.1.1: {} cheerio-select@2.1.0: @@ -8921,6 +9037,8 @@ snapshots: destroy@1.2.0: {} + detab@3.0.2: {} + detect-libc@1.0.3: {} detect-libc@2.0.3: {} @@ -8983,6 +9101,10 @@ snapshots: emoji-regex@9.2.2: {} + emojilib@2.4.0: {} + + emoticon@4.1.0: {} + encodeurl@1.0.2: {} encodeurl@2.0.0: {} @@ -8992,6 +9114,20 @@ snapshots: iconv-lite: 0.6.3 whatwg-encoding: 3.1.1 + engine.io-client@6.6.2: + dependencies: + '@socket.io/component-emitter': 3.1.2 + debug: 4.3.7(supports-color@9.4.0) + engine.io-parser: 5.2.3 + ws: 8.17.1 + xmlhttprequest-ssl: 2.1.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + engine.io-parser@5.2.3: {} + enhanced-resolve@5.17.1: dependencies: graceful-fs: 4.2.11 @@ -9466,6 +9602,8 @@ snapshots: expect-type@1.1.0: {} + extend@3.0.2: {} + externality@1.0.2: dependencies: enhanced-resolve: 5.17.1 @@ -9528,6 +9666,8 @@ snapshots: flatted: 3.3.2 keyv: 4.5.4 + flat@6.0.1: {} + flatted@3.3.2: {} floating-vue@5.2.2(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.27.3))(vue@3.5.13(typescript@5.6.3)): @@ -9625,6 +9765,8 @@ snapshots: dependencies: git-up: 7.0.0 + github-slugger@2.0.0: {} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -9733,6 +9875,45 @@ snapshots: dependencies: function-bind: 1.1.2 + hast-util-from-parse5@8.0.2: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + devlop: 1.1.0 + hastscript: 9.0.0 + property-information: 6.5.0 + vfile: 6.0.3 + vfile-location: 5.0.3 + web-namespaces: 2.0.1 + + hast-util-heading-rank@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-is-element@3.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-parse-selector@4.0.0: + dependencies: + '@types/hast': 3.0.4 + + hast-util-raw@9.1.0: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + '@ungap/structured-clone': 1.2.0 + hast-util-from-parse5: 8.0.2 + hast-util-to-parse5: 8.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + parse5: 7.2.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + hast-util-to-html@9.0.3: dependencies: '@types/hast': 3.0.4 @@ -9747,10 +9928,32 @@ snapshots: stringify-entities: 4.0.4 zwitch: 2.0.4 + hast-util-to-parse5@8.0.0: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + + hast-util-to-string@3.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-whitespace@3.0.0: dependencies: '@types/hast': 3.0.4 + hastscript@9.0.0: + dependencies: + '@types/hast': 3.0.4 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + hookable@5.5.3: {} hosted-git-info@2.8.9: {} @@ -9845,16 +10048,6 @@ snapshots: transitivePeerDependencies: - supports-color - impound@0.2.0(rollup@3.29.5): - dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - mlly: 1.7.3 - pathe: 1.1.2 - unenv: 1.10.0 - unplugin: 1.16.0 - transitivePeerDependencies: - - rollup - impound@0.2.0(rollup@4.27.3): dependencies: '@rollup/pluginutils': 5.1.3(rollup@4.27.3) @@ -9900,6 +10093,15 @@ snapshots: iron-webcrypto@1.2.1: {} + is-absolute-url@4.0.1: {} + + is-alphabetical@2.0.1: {} + + is-alphanumerical@2.0.1: + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + is-arrayish@0.2.1: {} is-binary-path@2.1.0: @@ -9914,6 +10116,8 @@ snapshots: dependencies: hasown: 2.0.2 + is-decimal@2.0.1: {} + is-docker@2.2.1: {} is-docker@3.0.0: {} @@ -9930,6 +10134,8 @@ snapshots: dependencies: is-extglob: 2.1.1 + is-hexadecimal@2.0.1: {} + is-https@4.0.0: {} is-inside-container@1.0.0: @@ -9947,6 +10153,8 @@ snapshots: is-path-inside@4.0.0: {} + is-plain-obj@4.1.0: {} + is-reference@1.2.1: dependencies: '@types/estree': 1.0.6 @@ -10347,6 +10555,8 @@ snapshots: mdn-data@2.0.30: {} + mdurl@2.0.0: {} + media-typer@0.3.0: {} merge-stream@2.0.0: {} @@ -10591,6 +10801,8 @@ snapshots: minipass@7.1.2: {} + minisearch@7.1.1: {} + minizlib@2.1.2: dependencies: minipass: 3.3.6 @@ -10758,6 +10970,13 @@ snapshots: node-addon-api@7.1.1: {} + node-emoji@2.1.3: + dependencies: + '@sindresorhus/is': 4.6.0 + char-regex: 1.0.2 + emojilib: 2.4.0 + skin-tone: 2.0.0 + node-fetch-native@1.6.4: {} node-fetch@2.7.0: @@ -10806,10 +11025,10 @@ snapshots: nuxi@3.15.0: {} - nuxt-site-config-kit@2.2.21(magicast@0.3.5)(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3)): + nuxt-site-config-kit@2.2.21(magicast@0.3.5)(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)): dependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) pkg-types: 1.2.1 site-config-stack: 2.2.21(vue@3.5.13(typescript@5.6.3)) std-env: 3.8.0 @@ -10820,12 +11039,12 @@ snapshots: - supports-color - vue - nuxt-site-config@2.2.21(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)): + nuxt-site-config@2.2.21(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)): dependencies: - '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - nuxt-site-config-kit: 2.2.21(magicast@0.3.5)(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3)) + '@nuxt/devtools-kit': 1.6.1(magicast@0.3.5)(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)) + '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@4.27.3) + nuxt-site-config-kit: 2.2.21(magicast@0.3.5)(rollup@4.27.3)(vue@3.5.13(typescript@5.6.3)) pathe: 1.1.2 pkg-types: 1.2.1 sirv: 3.0.0 @@ -10838,119 +11057,6 @@ snapshots: - vite - vue - nuxt@3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@3.29.5)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)): - dependencies: - '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.6.1(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vue@3.5.13(typescript@5.6.3)) - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/telemetry': 2.6.0(magicast@0.3.5)(rollup@3.29.5) - '@nuxt/vite-builder': 3.14.1592(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(magicast@0.3.5)(optionator@0.9.4)(rollup@3.29.5)(terser@5.36.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - '@unhead/dom': 1.11.11 - '@unhead/shared': 1.11.11 - '@unhead/ssr': 1.11.11 - '@unhead/vue': 1.11.11(vue@3.5.13(typescript@5.6.3)) - '@vue/shared': 3.5.13 - acorn: 8.14.0 - c12: 2.0.1(magicast@0.3.5) - chokidar: 4.0.1 - compatx: 0.1.8 - consola: 3.2.3 - cookie-es: 1.2.2 - defu: 6.1.4 - destr: 2.0.3 - devalue: 5.1.1 - errx: 0.1.0 - esbuild: 0.24.0 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - globby: 14.0.2 - h3: 1.13.0 - hookable: 5.5.3 - ignore: 6.0.2 - impound: 0.2.0(rollup@3.29.5) - jiti: 2.4.0 - klona: 2.0.6 - knitwork: 1.1.0 - magic-string: 0.30.13 - mlly: 1.7.3 - nanotar: 0.1.1 - nitropack: 2.10.4(typescript@5.6.3) - nuxi: 3.15.0 - nypm: 0.3.12 - ofetch: 1.4.1 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - radix3: 1.1.2 - scule: 1.3.0 - semver: 7.6.3 - std-env: 3.8.0 - strip-literal: 2.1.0 - tinyglobby: 0.2.10 - ufo: 1.5.4 - ultrahtml: 1.5.3 - uncrypto: 0.1.3 - unctx: 2.3.1 - unenv: 1.10.0 - unhead: 1.11.11 - unimport: 3.13.2(rollup@3.29.5) - unplugin: 1.16.0 - unplugin-vue-router: 0.10.8(rollup@3.29.5)(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)) - unstorage: 1.13.1(ioredis@5.4.1) - untyped: 1.5.1 - vue: 3.5.13(typescript@5.6.3) - vue-bundle-renderer: 2.1.1 - vue-devtools-stub: 0.1.0 - vue-router: 4.4.5(vue@3.5.13(typescript@5.6.3)) - optionalDependencies: - '@parcel/watcher': 2.5.0 - '@types/node': 22.9.1 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@biomejs/biome' - - '@capacitor/preferences' - - '@electric-sql/pglite' - - '@libsql/client' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - better-sqlite3 - - bufferutil - - drizzle-orm - - encoding - - eslint - - idb-keyval - - ioredis - - less - - lightningcss - - magicast - - meow - - mysql2 - - optionator - - rollup - - sass - - sass-embedded - - stylelint - - stylus - - sugarss - - supports-color - - terser - - typescript - - utf-8-validate - - vite - - vls - - vti - - vue-tsc - - xml2js - nuxt@3.14.1592(@parcel/watcher@2.5.0)(@types/node@22.9.1)(eslint@9.15.0(jiti@2.4.0))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.27.3)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)): dependencies: '@nuxt/devalue': 2.0.2 @@ -11170,6 +11276,17 @@ snapshots: dependencies: callsites: 3.1.0 + parse-entities@4.0.1: + dependencies: + '@types/unist': 2.0.11 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + parse-git-config@3.0.0: dependencies: git-config-path: 2.0.0 @@ -11592,6 +11709,105 @@ snapshots: dependencies: jsesc: 0.5.0 + rehype-external-links@3.0.0: + dependencies: + '@types/hast': 3.0.4 + '@ungap/structured-clone': 1.2.0 + hast-util-is-element: 3.0.0 + is-absolute-url: 4.0.1 + space-separated-tokens: 2.0.2 + unist-util-visit: 5.0.0 + + rehype-raw@7.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-raw: 9.1.0 + vfile: 6.0.3 + + rehype-slug@6.0.0: + dependencies: + '@types/hast': 3.0.4 + github-slugger: 2.0.0 + hast-util-heading-rank: 3.0.0 + hast-util-to-string: 3.0.1 + unist-util-visit: 5.0.0 + + rehype-sort-attribute-values@5.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-is-element: 3.0.0 + unist-util-visit: 5.0.0 + + rehype-sort-attributes@5.0.1: + dependencies: + '@types/hast': 3.0.4 + unist-util-visit: 5.0.0 + + remark-emoji@5.0.1: + dependencies: + '@types/mdast': 4.0.4 + emoticon: 4.1.0 + mdast-util-find-and-replace: 3.0.1 + node-emoji: 2.1.3 + unified: 11.0.5 + + remark-gfm@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-gfm: 3.0.0 + micromark-extension-gfm: 3.0.0 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-mdc@3.4.0: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + flat: 6.0.1 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark: 4.0.1 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.1 + parse-entities: 4.0.1 + scule: 1.3.0 + stringify-entities: 4.0.4 + unified: 11.0.5 + unist-util-visit: 5.0.0 + unist-util-visit-parents: 6.0.1 + yaml: 2.6.1 + transitivePeerDependencies: + - supports-color + + remark-parse@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.1 + unified: 11.0.5 + transitivePeerDependencies: + - supports-color + + remark-rehype@11.1.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + mdast-util-to-hast: 13.2.0 + unified: 11.0.5 + vfile: 6.0.3 + + remark-stringify@11.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-to-markdown: 2.1.2 + unified: 11.0.5 + replace-in-file@6.3.5: dependencies: chalk: 4.1.2 @@ -11635,15 +11851,6 @@ snapshots: optionalDependencies: '@babel/code-frame': 7.26.2 - rollup-plugin-visualizer@5.12.0(rollup@3.29.5): - dependencies: - open: 8.4.2 - picomatch: 2.3.1 - source-map: 0.7.4 - yargs: 17.7.2 - optionalDependencies: - rollup: 3.29.5 - rollup-plugin-visualizer@5.12.0(rollup@4.27.3): dependencies: open: 8.4.2 @@ -11804,14 +12011,38 @@ snapshots: ufo: 1.5.4 vue: 3.5.13(typescript@5.6.3) + skin-tone@2.0.0: + dependencies: + unicode-emoji-modifier-base: 1.0.0 + slash@4.0.0: {} slash@5.1.0: {} slashes@3.0.12: {} + slugify@1.6.6: {} + smob@1.5.0: {} + socket.io-client@4.8.1: + dependencies: + '@socket.io/component-emitter': 3.1.2 + debug: 4.3.7(supports-color@9.4.0) + engine.io-client: 6.6.2 + socket.io-parser: 4.2.4 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + socket.io-parser@4.2.4: + dependencies: + '@socket.io/component-emitter': 3.1.2 + debug: 4.3.7(supports-color@9.4.0) + transitivePeerDependencies: + - supports-color + source-map-js@1.2.1: {} source-map-support@0.5.21: @@ -12095,6 +12326,8 @@ snapshots: trim-lines@3.0.1: {} + trough@2.2.0: {} + ts-api-utils@1.4.0(typescript@5.6.3): dependencies: typescript: 5.6.3 @@ -12214,25 +12447,19 @@ snapshots: '@unhead/shared': 1.11.11 hookable: 5.5.3 + unicode-emoji-modifier-base@1.0.0: {} + unicorn-magic@0.1.0: {} - unimport@3.13.2(rollup@3.29.5): + unified@11.0.5: dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - acorn: 8.14.0 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - fast-glob: 3.3.2 - local-pkg: 0.5.1 - magic-string: 0.30.13 - mlly: 1.7.3 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - strip-literal: 2.1.0 - unplugin: 1.16.0 - transitivePeerDependencies: - - rollup + '@types/unist': 3.0.3 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 6.0.3 unimport@3.13.2(rollup@4.27.3): dependencies: @@ -12252,6 +12479,10 @@ snapshots: transitivePeerDependencies: - rollup + unist-builder@4.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is@6.0.0: dependencies: '@types/unist': 3.0.3 @@ -12304,28 +12535,6 @@ snapshots: - rollup - supports-color - unplugin-vue-router@0.10.8(rollup@3.29.5)(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)): - dependencies: - '@babel/types': 7.26.0 - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - '@vue-macros/common': 1.15.0(rollup@3.29.5)(vue@3.5.13(typescript@5.6.3)) - ast-walker-scope: 0.6.2 - chokidar: 3.6.0 - fast-glob: 3.3.2 - json5: 2.2.3 - local-pkg: 0.5.1 - magic-string: 0.30.13 - mlly: 1.7.3 - pathe: 1.1.2 - scule: 1.3.0 - unplugin: 1.16.0 - yaml: 2.6.1 - optionalDependencies: - vue-router: 4.4.5(vue@3.5.13(typescript@5.6.3)) - transitivePeerDependencies: - - rollup - - vue - unplugin-vue-router@0.10.8(rollup@4.27.3)(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3)): dependencies: '@babel/types': 7.26.0 @@ -12431,6 +12640,11 @@ snapshots: vary@1.1.2: {} + vfile-location@5.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile: 6.0.3 + vfile-message@4.0.2: dependencies: '@types/unist': 3.0.3 @@ -12485,24 +12699,6 @@ snapshots: optionator: 0.9.4 typescript: 5.6.3 - vite-plugin-inspect@0.8.8(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@3.29.5))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)): - dependencies: - '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - debug: 4.3.7(supports-color@9.4.0) - error-stack-parser-es: 0.1.5 - fs-extra: 11.2.0 - open: 10.1.0 - perfect-debounce: 1.0.0 - picocolors: 1.1.1 - sirv: 3.0.0 - vite: 5.4.11(@types/node@22.9.1)(terser@5.36.0) - optionalDependencies: - '@nuxt/kit': 3.14.1592(magicast@0.3.5)(rollup@3.29.5) - transitivePeerDependencies: - - rollup - - supports-color - vite-plugin-inspect@0.8.8(@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.27.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0)): dependencies: '@antfu/utils': 0.7.10 @@ -12546,9 +12742,9 @@ snapshots: fsevents: 2.3.3 terser: 5.36.0 - vitest-environment-nuxt@1.0.1(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3): + vitest-environment-nuxt@1.0.1(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3): dependencies: - '@nuxt/test-utils': 3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@3.29.5)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) + '@nuxt/test-utils': 3.14.4(h3@1.13.0)(magicast@0.3.5)(nitropack@2.10.4(typescript@5.6.3))(rollup@4.27.3)(vite@5.4.11(@types/node@22.9.1)(terser@5.36.0))(vitest@2.1.5(@types/node@22.9.1)(terser@5.36.0))(vue-router@4.4.5(vue@3.5.13(typescript@5.6.3)))(vue@3.5.13(typescript@5.6.3))(webpack-sources@3.2.3) transitivePeerDependencies: - '@cucumber/cucumber' - '@jest/globals' @@ -12682,6 +12878,8 @@ snapshots: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 + web-namespaces@2.0.1: {} + webidl-conversions@3.0.1: {} webpack-sources@3.2.3: {} @@ -12762,10 +12960,14 @@ snapshots: wrappy@1.0.2: {} + ws@8.17.1: {} + ws@8.18.0: {} xml-name-validator@4.0.0: {} + xmlhttprequest-ssl@2.1.2: {} + y18n@5.0.8: {} yallist@3.1.1: {} diff --git a/src/module.ts b/src/module.ts index 10bb8ac..70dae43 100644 --- a/src/module.ts +++ b/src/module.ts @@ -7,9 +7,11 @@ import { addImports, addPlugin, addServerHandler, + addServerPlugin, createResolver, defineNuxtModule, hasNuxtModule, + hasNuxtModuleCompatibility, useLogger, } from '@nuxt/kit' import { schemaOrgAutoImports, schemaOrgComponents } from '@unhead/schema-org/vue' @@ -128,6 +130,11 @@ export default defineNuxtModule({ nuxt.options.alias['#schema-org'] = resolve('./runtime') + // convert ogImage key to head data + if (hasNuxtModule('@nuxt/content') && await hasNuxtModuleCompatibility('@nuxt/content', '^2')) { + addServerPlugin(resolve('./runtime/server/plugins/nuxt-content')) + } + if (!config.reactive) // tree-shake all schema-org functions nuxt.options.optimization.treeShake.composables.client['nuxt-schema-org'] = schemaOrgAutoImports[0].imports diff --git a/src/runtime/server/plugins/nuxt-content.ts b/src/runtime/server/plugins/nuxt-content.ts new file mode 100644 index 0000000..1207cc7 --- /dev/null +++ b/src/runtime/server/plugins/nuxt-content.ts @@ -0,0 +1,47 @@ +import type { ParsedContent } from '@nuxt/content' +import type { DataKeys, ScriptBase, TagUserProperties } from '@unhead/schema' +import type { UseHeadInput } from 'unhead' +import type { UnheadAugmentation } from '../../types' +import { defineWebPage } from '@unhead/schema-org' +import { defu } from 'defu' +import { defineNitroPlugin } from 'nitropack/runtime' +import { useSchemaOrgConfig } from '../utils/config' + +export default defineNitroPlugin((nitroApp) => { + const config = useSchemaOrgConfig() + nitroApp.hooks.hook('content:file:afterParse', async (content: ParsedContent) => { + if (content._draft || content._extension !== 'md' || content._partial || content.indexable === false || content.index === false) + return + + if (!content.schemaOrg) { + return + } + const nodes = Array.isArray(content.schemaOrg) ? content.schemaOrg : [defineWebPage(content.schemaOrg)] + + // we need to recursively go through all nodes and swap `type` for `@type` + const replaceType = (node: any) => { + if (node.type) { + node['@type'] = node.type + delete node.type + } + Object.entries(node).forEach(([, value]) => { + if (typeof value === 'object') { + replaceType(value) + } + }) + return node + } + + const script: (ScriptBase & TagUserProperties & DataKeys) & UnheadAugmentation['script'] = { + type: 'application/ld+json', + key: 'schema-org-graph', + nodes: nodes.map(replaceType), + ...config.scriptAttributes, + } + + content.head = defu(> { + script: [script], + }, content.head) + return content + }) +}) diff --git a/src/runtime/server/utils/config.ts b/src/runtime/server/utils/config.ts index 558e59a..474ae15 100644 --- a/src/runtime/server/utils/config.ts +++ b/src/runtime/server/utils/config.ts @@ -1,7 +1,7 @@ import type { ModuleRuntimeConfig } from '#schema-org/types' import type { H3Event } from 'h3' -import { useRuntimeConfig } from '#imports' import { defu } from 'defu' +import { useRuntimeConfig } from 'nitropack/runtime' export function useSchemaOrgConfig(e?: H3Event) { const runtimeConfig = useRuntimeConfig(e) diff --git a/test/fixtures/content/.nuxtrc b/test/fixtures/content/.nuxtrc new file mode 100644 index 0000000..167e6c7 --- /dev/null +++ b/test/fixtures/content/.nuxtrc @@ -0,0 +1,2 @@ +imports.autoImport=true +typescript.includeWorkspace=true diff --git a/test/fixtures/content/app.vue b/test/fixtures/content/app.vue new file mode 100644 index 0000000..8f62b8b --- /dev/null +++ b/test/fixtures/content/app.vue @@ -0,0 +1,3 @@ + diff --git a/test/fixtures/content/content/about.md b/test/fixtures/content/content/about.md new file mode 100644 index 0000000..586b586 --- /dev/null +++ b/test/fixtures/content/content/about.md @@ -0,0 +1,7 @@ +--- +title: About +schemaOrg: + "@type": "AboutPage" +--- + +hello diff --git a/test/fixtures/content/content/index.md b/test/fixtures/content/content/index.md new file mode 100644 index 0000000..43d64b3 --- /dev/null +++ b/test/fixtures/content/content/index.md @@ -0,0 +1,10 @@ +--- +title: Home +schemaOrg: + - "@type": "Person" + name: "John Doe" + - "@type": "Organization" + name: "Example Inc." +--- + +# bar diff --git a/test/fixtures/content/content/posts/bar.md b/test/fixtures/content/content/posts/bar.md new file mode 100644 index 0000000..fe8f244 --- /dev/null +++ b/test/fixtures/content/content/posts/bar.md @@ -0,0 +1,11 @@ +--- +schemaOrg: + - type: "BlogPosting" + headline: "How to Use Our Product" + author: + type: "Person" + name: "Jane Smith" + datePublished: "2023-10-01" +--- + +# bar diff --git a/test/fixtures/content/content/question-answer.md b/test/fixtures/content/content/question-answer.md new file mode 100644 index 0000000..699eb85 --- /dev/null +++ b/test/fixtures/content/content/question-answer.md @@ -0,0 +1,19 @@ +--- +title: FAQ +schemaOrg: + "@type": FaqPage + mainEntity: + - "@type": "Question" + name: "What is your return policy?" + acceptedAnswer: + "@type": "Answer" + text: "You can return any item within 30 days of purchase." + - "@type": "Question" + name: "Do you offer technical support?" + acceptedAnswer: + "@type": "Answer" + text: "Yes, we offer 24/7 technical support." +--- + +hello + diff --git a/test/fixtures/content/nuxt.config.ts b/test/fixtures/content/nuxt.config.ts new file mode 100644 index 0000000..0852589 --- /dev/null +++ b/test/fixtures/content/nuxt.config.ts @@ -0,0 +1,16 @@ +import NuxtSchemaOrg from '../../../src/module' + +// https://v3.nuxtjs.org/api/configuration/nuxt.config +export default defineNuxtConfig({ + modules: [ + NuxtSchemaOrg, + '@nuxt/content', + ], + + site: { + url: 'https://nuxtseo.com', + }, + + devtools: { enabled: true }, + compatibilityDate: '2024-09-11', +}) diff --git a/test/fixtures/content/pages/[...slug].vue b/test/fixtures/content/pages/[...slug].vue new file mode 100644 index 0000000..55dc024 --- /dev/null +++ b/test/fixtures/content/pages/[...slug].vue @@ -0,0 +1,14 @@ + + + diff --git a/test/integration/content.test.ts b/test/integration/content.test.ts new file mode 100644 index 0000000..d03f0c7 --- /dev/null +++ b/test/integration/content.test.ts @@ -0,0 +1,118 @@ +import { fileURLToPath } from 'node:url' +import { setup } from '@nuxt/test-utils' +import { describe, expect, it } from 'vitest' +import { $fetchSchemaOrg } from './utils' + +await setup({ + rootDir: fileURLToPath(new URL('../fixtures/content', import.meta.url)), + server: true, + browser: false, +}) + +describe('content', () => { + it('render faq', async () => { + const schema = await $fetchSchemaOrg('/question-answer') + + // Snapshot + expect(schema).toMatchInlineSnapshot(` + { + "@context": "https://schema.org", + "@graph": [ + { + "@id": "https://nuxtseo.com/#website", + "@type": "WebSite", + "description": "The quickest and easiest way to build Schema.org graphs for Nuxt.", + "name": "nuxt-schema-org", + "url": "https://nuxtseo.com", + }, + { + "@id": "https://nuxtseo.com/question-answer/#webpage", + "@type": [ + "WebPage", + "FaqPage", + ], + "description": "hello", + "isPartOf": { + "@id": "https://nuxtseo.com/#website", + }, + "mainEntity": [ + { + "@type": "Question", + "acceptedAnswer": { + "@type": "Answer", + "text": "You can return any item within 30 days of purchase.", + }, + "name": "What is your return policy?", + }, + { + "@type": "Question", + "acceptedAnswer": { + "@type": "Answer", + "text": "Yes, we offer 24/7 technical support.", + }, + "name": "Do you offer technical support?", + }, + ], + "name": "FAQ", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "https://nuxtseo.com/question-answer", + ], + }, + ], + "url": "https://nuxtseo.com/question-answer", + }, + ], + } + `) + }) + + it('render blog', async () => { + const schema = await $fetchSchemaOrg('/posts/bar') + + // Snapshot + expect(schema).toMatchInlineSnapshot(` + { + "@context": "https://schema.org", + "@graph": [ + { + "@id": "https://nuxtseo.com/#website", + "@type": "WebSite", + "description": "The quickest and easiest way to build Schema.org graphs for Nuxt.", + "name": "nuxt-schema-org", + "url": "https://nuxtseo.com", + }, + { + "@id": "https://nuxtseo.com/posts/bar/#webpage", + "@type": "WebPage", + "description": "The quickest and easiest way to build Schema.org graphs for Nuxt.", + "isPartOf": { + "@id": "https://nuxtseo.com/#website", + }, + "name": "bar", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "https://nuxtseo.com/posts/bar", + ], + }, + ], + "url": "https://nuxtseo.com/posts/bar", + }, + { + "@type": "BlogPosting", + "author": { + "@type": "Person", + "name": "Jane Smith", + }, + "datePublished": "2023-10-01", + "headline": "How to Use Our Product", + }, + ], + } + `) + }) +})