diff --git a/package.json b/package.json index dd66c7ca..85c6acf3 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "devDependencies": { "@babel/parser": "^7.22.16", "@modyfi/vite-plugin-yaml": "^1.0.4", - "@nuxt/content": "npm:@nuxt/content-edge@2.8.2-28233414.6d70135", + "@nuxt/content": "npm:@nuxt/content-edge@2.9.0-28315240.7dcbf13", "@nuxtjs/color-mode": "^3.3.0", "@nuxtjs/i18n": "8.0.0-beta.13", "@types/js-yaml": "^4.0.5", @@ -29,7 +29,7 @@ "mfm-js": "^0.23.3", "misskey-js": "^0.0.16", "nprogress": "^0.2.0", - "nuxt": "^3.8.0", + "nuxt": "^3.8.1", "postcss": "^8.4.29", "rellax": "^1.12.1", "sass": "^1.66.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 33681634..c45ce1a7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,8 +20,8 @@ devDependencies: specifier: ^1.0.4 version: 1.0.4(vite@4.5.0) '@nuxt/content': - specifier: npm:@nuxt/content-edge@2.8.2-28233414.6d70135 - version: /@nuxt/content-edge@2.8.2-28233414.6d70135(vue@3.3.7) + specifier: npm:@nuxt/content-edge@2.9.0-28315240.7dcbf13 + version: /@nuxt/content-edge@2.9.0-28315240.7dcbf13(nuxt@3.8.1)(vue@3.3.7) '@nuxtjs/color-mode': specifier: ^3.3.0 version: 3.3.0 @@ -74,8 +74,8 @@ devDependencies: specifier: ^0.2.0 version: 0.2.0 nuxt: - specifier: ^3.8.0 - version: 3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) + specifier: ^3.8.1 + version: 3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) postcss: specifier: ^8.4.29 version: 8.4.31 @@ -1255,21 +1255,26 @@ packages: - supports-color dev: true - /@nuxt/content-edge@2.8.2-28233414.6d70135(vue@3.3.7): - resolution: {integrity: sha512-JBhIByJpVsIi/NJnNrNjiEWygP81K1CMaqOdhmSnPukYE+Mawp6CeYEsm2baYXKsLISAUDsC9h17JAxdVOJCRA==} + /@nuxt/content-edge@2.9.0-28315240.7dcbf13(nuxt@3.8.1)(vue@3.3.7): + resolution: {integrity: sha512-/XW5dk+EdhMo9+l87SRExGcCoiqp1PMMbKQ/CO3MzvvEtfyAIDxAEjdjgPYuDjkUI9NWcu4h67DUg+5xeQrmMQ==} dependencies: '@nuxt/kit': 3.8.1 - '@nuxtjs/mdc': 0.1.6 - '@vueuse/head': 1.3.1(vue@3.3.7) + '@nuxtjs/mdc': 0.2.6 + '@vueuse/core': 10.5.0(vue@3.3.7) + '@vueuse/head': 2.0.0(vue@3.3.7) + '@vueuse/nuxt': 10.5.0(nuxt@3.8.1)(vue@3.3.7) consola: 3.2.3 defu: 6.1.3 destr: 2.0.2 json5: 2.2.3 knitwork: 1.0.0 listhen: 1.5.5 + mdast-util-to-string: 4.0.0 mdurl: 1.0.1 micromark: 4.0.0 micromark-util-sanitize-uri: 2.0.0 + micromark-util-types: 2.0.0 + minisearch: 6.2.0 ohash: 1.1.3 pathe: 1.1.1 scule: 1.0.0 @@ -1277,6 +1282,7 @@ packages: slugify: 1.6.6 socket.io-client: 4.7.2 ufo: 1.3.1 + unist-util-stringify-position: 4.0.0 unstorage: 1.9.0 ws: 8.14.2 transitivePeerDependencies: @@ -1290,8 +1296,10 @@ packages: - '@planetscale/database' - '@upstash/redis' - '@vercel/kv' + - '@vue/composition-api' - bufferutil - idb-keyval + - nuxt - rollup - supports-color - utf-8-validate @@ -1302,7 +1310,7 @@ packages: resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==} dev: true - /@nuxt/devtools-kit@1.0.0(nuxt@3.8.0)(vite@4.5.0): + /@nuxt/devtools-kit@1.0.0(nuxt@3.8.1)(vite@4.5.0): resolution: {integrity: sha512-cNloBepQYCBW6x/ctfCvyYRZudxhfgh5w5JDswpCzn7KXmm8U6abG2jyT0FXIaceW1d5QYMpGCN1RUw24wSvOA==} peerDependencies: nuxt: ^3.7.4 @@ -1311,7 +1319,7 @@ packages: '@nuxt/kit': 3.8.1 '@nuxt/schema': 3.8.1 execa: 7.2.0 - nuxt: 3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) + nuxt: 3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) vite: 4.5.0(@types/node@18.18.7)(sass@1.69.5) transitivePeerDependencies: - rollup @@ -1334,7 +1342,7 @@ packages: semver: 7.5.4 dev: true - /@nuxt/devtools@1.0.0(nuxt@3.8.0)(vite@4.5.0): + /@nuxt/devtools@1.0.0(nuxt@3.8.1)(vite@4.5.0): resolution: {integrity: sha512-pM5AvystXlFPYOsGbH8PBxEYkttiEWHsZnGw660iMw8QedB6mAweT21XX9LDS69cqnRY5uTFqVOmO9Y4EYL3hg==} hasBin: true peerDependencies: @@ -1342,7 +1350,7 @@ packages: vite: '*' dependencies: '@antfu/utils': 0.7.6 - '@nuxt/devtools-kit': 1.0.0(nuxt@3.8.0)(vite@4.5.0) + '@nuxt/devtools-kit': 1.0.0(nuxt@3.8.1)(vite@4.5.0) '@nuxt/devtools-wizard': 1.0.0 '@nuxt/kit': 3.8.1 birpc: 0.2.14 @@ -1362,7 +1370,7 @@ packages: local-pkg: 0.5.0 magicast: 0.3.0 nitropack: 2.7.2 - nuxt: 3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) + nuxt: 3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) nypm: 0.3.3 ofetch: 1.3.3 ohash: 1.1.3 @@ -1525,16 +1533,16 @@ packages: resolution: {integrity: sha512-5gc02Pu1HycOVUWJ8aYsWeeXcSTPe8iX8+KIrhyEtEoOSkY0eMBuo0ssljB8wALuEmepv31DlYe5gpiRwkjESA==} dev: true - /@nuxt/vite-builder@3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vue@3.3.7): - resolution: {integrity: sha512-F9BfH+c/Idp6sBGVHR4QJSuoO42evtE4D0OelD45NgkqVvmBmOawlj0Oz5fDKoV64LDPI2+yE+xnBdQtsNv/VA==} + /@nuxt/vite-builder@3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vue@3.3.8): + resolution: {integrity: sha512-Ot/twGONxj22T9U4bxp771ibKVFlZxIiYDHY/e6mZsE4Blc0efKo6MzPPPo0W4/tXQbtKKEq41uINN3dMI3mag==} engines: {node: ^14.18.0 || >=16.10.0} peerDependencies: vue: ^3.3.4 dependencies: - '@nuxt/kit': 3.8.0 - '@rollup/plugin-replace': 5.0.4(rollup@3.29.4) - '@vitejs/plugin-vue': 4.4.0(vite@4.5.0)(vue@3.3.7) - '@vitejs/plugin-vue-jsx': 3.0.2(vite@4.5.0)(vue@3.3.7) + '@nuxt/kit': 3.8.1 + '@rollup/plugin-replace': 5.0.5 + '@vitejs/plugin-vue': 4.4.0(vite@4.5.0)(vue@3.3.8) + '@vitejs/plugin-vue-jsx': 3.0.2(vite@4.5.0)(vue@3.3.8) autoprefixer: 10.4.16(postcss@8.4.31) clear: 0.1.0 consola: 3.2.3 @@ -1555,8 +1563,6 @@ packages: perfect-debounce: 1.0.0 pkg-types: 1.0.3 postcss: 8.4.31 - postcss-import: 15.1.0(postcss@8.4.31) - postcss-url: 10.1.3(postcss@8.4.31) rollup-plugin-visualizer: 5.9.2(rollup@3.29.4) std-env: 3.4.3 strip-literal: 1.3.0 @@ -1565,7 +1571,7 @@ packages: vite: 4.5.0(@types/node@18.18.7)(sass@1.69.5) vite-node: 0.33.0(@types/node@18.18.7)(sass@1.69.5) vite-plugin-checker: 0.6.2(typescript@5.2.2)(vite@4.5.0) - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) vue-bundle-renderer: 2.0.0 transitivePeerDependencies: - '@types/node' @@ -1645,8 +1651,8 @@ packages: - vue-router dev: true - /@nuxtjs/mdc@0.1.6: - resolution: {integrity: sha512-zJuq5KwU3d1Dlh1sudnpVtIFoap09ZrvO9IAM1iP4tipzSRkgHFbCOTMEmK17Rx7KSdmvBbFP+/4MBaJdj1NqQ==} + /@nuxtjs/mdc@0.2.6: + resolution: {integrity: sha512-FDjJXfvFsNgtt3lm7mxjPymv5lovdOMS5bHxnAS/Vcoqd8qC4nkiSnKpZD2eLf4UGQKKNOMSn1mlC2viQHu2sg==} dependencies: '@nuxt/kit': 3.8.1 '@types/hast': 3.0.2 @@ -1662,9 +1668,9 @@ packages: micromark-util-sanitize-uri: 2.0.0 ohash: 1.1.3 property-information: 6.3.0 - rehype-external-links: 2.1.0 + rehype-external-links: 3.0.0 rehype-raw: 6.1.1 - rehype-slug: 5.1.0 + rehype-slug: 6.0.0 rehype-sort-attribute-values: 5.0.0 rehype-sort-attributes: 5.0.0 remark-emoji: 4.0.1 @@ -1673,7 +1679,7 @@ packages: remark-parse: 10.0.2 remark-rehype: 10.1.0 scule: 1.0.0 - shiki-es: 0.14.0 + shikiji: 0.6.12 ufo: 1.3.1 unified: 11.0.4 unist-builder: 4.0.0 @@ -1931,6 +1937,19 @@ packages: rollup: 3.29.4 dev: true + /@rollup/plugin-replace@5.0.5: + resolution: {integrity: sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.0.5(rollup@3.29.4) + magic-string: 0.30.5 + dev: true + /@rollup/plugin-terser@0.4.4(rollup@3.29.4): resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} engines: {node: '>=14.0.0'} @@ -2339,6 +2358,10 @@ packages: resolution: {integrity: sha512-ue/hDUpPjC85m+PM9OQDMZr3LywT+CT6mPsQq8OJtCLiERkGRcQUFvu9XASF5XWqyZFXbf15lvb3JFJ4dRLWPg==} dev: true + /@types/web-bluetooth@0.0.18: + resolution: {integrity: sha512-v/ZHEj9xh82usl8LMR3GarzFY1IrbXJw5L4QfQhokjRV91q+SelFqxQWSep1ucXEZ22+dSTwLFkXeur25sPIbw==} + dev: true + /@types/webxr@0.5.7: resolution: {integrity: sha512-Rcgs5c2eNFnHp53YOjgtKfl/zWX1Y+uFGUwlSXrWcZWu3yhANRezmph4MninmqybUYT6g9ZE0aQ9QIdPkLR3Kg==} dev: true @@ -2354,6 +2377,13 @@ packages: '@unhead/shared': 1.8.0 dev: true + /@unhead/dom@1.8.3: + resolution: {integrity: sha512-rPj9PiRTDf+Qy7tSK/UCGxwKfsOOQ+YniANxQy9v2AhWsDy2amW7kbfgR9fVaSlOFdpsyuh2wLCbMcyj9Wn0Jw==} + dependencies: + '@unhead/schema': 1.8.3 + '@unhead/shared': 1.8.3 + dev: true + /@unhead/schema@1.8.0: resolution: {integrity: sha512-4xI8wgC2bobvuhNG/MbZcFdmS/Xx0JgPc2xgSimvrvSeZUZzFvsXvzerMT9R4XXuSaQt2g8DwjJrF3dh7suGNA==} dependencies: @@ -2361,12 +2391,25 @@ packages: zhead: 2.2.4 dev: true + /@unhead/schema@1.8.3: + resolution: {integrity: sha512-3XbcJzdlyLr/RV2TKaygI21YorlU6XPgHn/MoWjQvH4PYiHkH8PtTGg8Je6k3gvcUURSiDfucFKaGEYdJXAVqQ==} + dependencies: + hookable: 5.5.3 + zhead: 2.2.4 + dev: true + /@unhead/shared@1.8.0: resolution: {integrity: sha512-BoOgy/B4tgFvX3Obw0QzHhlReodenQxRPs5V5E+UJATUmz9/A8cOu4n731u+EM50dCAbJB1xEz8BGF67XCUY+Q==} dependencies: '@unhead/schema': 1.8.0 dev: true + /@unhead/shared@1.8.3: + resolution: {integrity: sha512-E1knEiAO0iENLzZd+LjWA4mUp8JRaSxo5V0vMjSENyf5hSVB/SxAVjDPmTIelLY7KrP5mJrNMen2ZmQrr/AZJw==} + dependencies: + '@unhead/schema': 1.8.3 + dev: true + /@unhead/ssr@1.8.0: resolution: {integrity: sha512-uuDKVbto5gqBZiPgbbQgK9EHxFsZJp1dD8AmVUbSmezDM1FnMkVS5oH9UfMmJ1RtYnPTqkOcoKmRXZmqEyrv9g==} dependencies: @@ -2374,6 +2417,13 @@ packages: '@unhead/shared': 1.8.0 dev: true + /@unhead/ssr@1.8.3: + resolution: {integrity: sha512-GSTkUCL4qymGkPU8BXiV74Epj0yyXJgmfTSJ3EqalpQTYyJHl910Mq2oDWk7Xyl5lHBrz2Bn0lzNXfSkS7Ao0Q==} + dependencies: + '@unhead/schema': 1.8.3 + '@unhead/shared': 1.8.3 + dev: true + /@unhead/vue@1.8.0(vue@3.3.7): resolution: {integrity: sha512-gpKVw3qHpTfOFVujlPalXdDrK6abGwwAs7VNkwZ2BjwK5RvPA7mujG6Nw5XkTh0bxY3U0yOknEZ7TWO8ep0pZQ==} peerDependencies: @@ -2386,6 +2436,18 @@ packages: vue: 3.3.7(typescript@5.2.2) dev: true + /@unhead/vue@1.8.3(vue@3.3.8): + resolution: {integrity: sha512-sj/1VosMreUQXd68rn5jDLdpgFVdN0mKrjW/8eZMWbomZkzbzs7FxyRUApd584xNjFVdtyWrTepmrNSKmEwKgg==} + peerDependencies: + vue: '>=2.7 || >=3' + dependencies: + '@unhead/schema': 1.8.3 + '@unhead/shared': 1.8.3 + hookable: 5.5.3 + unhead: 1.8.3 + vue: 3.3.8(typescript@5.2.2) + dev: true + /@vercel/nft@0.24.3: resolution: {integrity: sha512-IyBdIxmFAeGZnEfMgt4QrGK7XX4lWazlQj34HEi9dw04/WeDBJ7r1yaOIO5tTf9pbfvwUFodj9b0H+NDGGoOMg==} engines: {node: '>=16'} @@ -2393,7 +2455,7 @@ packages: dependencies: '@mapbox/node-pre-gyp': 1.0.11 '@rollup/pluginutils': 4.2.1 - acorn: 8.10.0 + acorn: 8.11.2 async-sema: 3.1.1 bindings: 1.5.0 estree-walker: 2.0.2 @@ -2407,7 +2469,7 @@ packages: - supports-color dev: true - /@vitejs/plugin-vue-jsx@3.0.2(vite@4.5.0)(vue@3.3.7): + /@vitejs/plugin-vue-jsx@3.0.2(vite@4.5.0)(vue@3.3.8): resolution: {integrity: sha512-obF26P2Z4Ogy3cPp07B4VaW6rpiu0ue4OT2Y15UxT5BZZ76haUY9guOsZV3uWh/I6xc+VeiW+ZVabRE82FyzWw==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -2418,12 +2480,12 @@ packages: '@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.23.2) '@vue/babel-plugin-jsx': 1.1.5(@babel/core@7.23.2) vite: 4.5.0(@types/node@18.18.7)(sass@1.69.5) - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) transitivePeerDependencies: - supports-color dev: true - /@vitejs/plugin-vue@4.4.0(vite@4.5.0)(vue@3.3.7): + /@vitejs/plugin-vue@4.4.0(vite@4.5.0)(vue@3.3.8): resolution: {integrity: sha512-xdguqb+VUwiRpSg+nsc2HtbAUSGak25DXYvpQQi4RVU1Xq1uworyoH/md9Rfd8zMmPR/pSghr309QNcftUVseg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -2431,10 +2493,10 @@ packages: vue: ^3.2.25 dependencies: vite: 4.5.0(@types/node@18.18.7)(sass@1.69.5) - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) dev: true - /@vue-macros/common@1.8.0(vue@3.3.7): + /@vue-macros/common@1.8.0(vue@3.3.8): resolution: {integrity: sha512-auDJJzE0z3uRe3867e0DsqcseKImktNf5ojCZgUKqiVxb2yTlwlgOVAYCgoep9oITqxkXQymSvFeKhedi8PhaA==} engines: {node: '>=16.14.0'} peerDependencies: @@ -2449,7 +2511,7 @@ packages: ast-kit: 0.11.2 local-pkg: 0.4.3 magic-string-ast: 0.3.0 - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) transitivePeerDependencies: - rollup dev: true @@ -2486,6 +2548,15 @@ packages: source-map-js: 1.0.2 dev: true + /@vue/compiler-core@3.3.8: + resolution: {integrity: sha512-hN/NNBUECw8SusQvDSqqcVv6gWq8L6iAktUR0UF3vGu2OhzRqcOiAno0FmBJWwxhYEXRlQJT5XnoKsVq1WZx4g==} + dependencies: + '@babel/parser': 7.23.0 + '@vue/shared': 3.3.8 + estree-walker: 2.0.2 + source-map-js: 1.0.2 + dev: true + /@vue/compiler-dom@3.3.7: resolution: {integrity: sha512-0LwkyJjnUPssXv/d1vNJ0PKfBlDoQs7n81CbO6Q0zdL7H1EzqYRrTVXDqdBVqro0aJjo/FOa1qBAPVI4PGSHBw==} dependencies: @@ -2493,6 +2564,13 @@ packages: '@vue/shared': 3.3.7 dev: true + /@vue/compiler-dom@3.3.8: + resolution: {integrity: sha512-+PPtv+p/nWDd0AvJu3w8HS0RIm/C6VGBIRe24b9hSyNWOAPEUosFZ5diwawwP8ip5sJ8n0Pe87TNNNHnvjs0FQ==} + dependencies: + '@vue/compiler-core': 3.3.8 + '@vue/shared': 3.3.8 + dev: true + /@vue/compiler-sfc@3.3.7: resolution: {integrity: sha512-7pfldWy/J75U/ZyYIXRVqvLRw3vmfxDo2YLMwVtWVNew8Sm8d6wodM+OYFq4ll/UxfqVr0XKiVwti32PCrruAw==} dependencies: @@ -2508,6 +2586,21 @@ packages: source-map-js: 1.0.2 dev: true + /@vue/compiler-sfc@3.3.8: + resolution: {integrity: sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA==} + dependencies: + '@babel/parser': 7.23.0 + '@vue/compiler-core': 3.3.8 + '@vue/compiler-dom': 3.3.8 + '@vue/compiler-ssr': 3.3.8 + '@vue/reactivity-transform': 3.3.8 + '@vue/shared': 3.3.8 + estree-walker: 2.0.2 + magic-string: 0.30.5 + postcss: 8.4.31 + source-map-js: 1.0.2 + dev: true + /@vue/compiler-ssr@3.3.7: resolution: {integrity: sha512-TxOfNVVeH3zgBc82kcUv+emNHo+vKnlRrkv8YvQU5+Y5LJGJwSNzcmLUoxD/dNzv0bhQ/F0s+InlgV0NrApJZg==} dependencies: @@ -2515,6 +2608,13 @@ packages: '@vue/shared': 3.3.7 dev: true + /@vue/compiler-ssr@3.3.8: + resolution: {integrity: sha512-hXCqQL/15kMVDBuoBYpUnSYT8doDNwsjvm3jTefnXr+ytn294ySnT8NlsFHmTgKNjwpuFy7XVV8yTeLtNl/P6w==} + dependencies: + '@vue/compiler-dom': 3.3.8 + '@vue/shared': 3.3.8 + dev: true + /@vue/devtools-api@6.5.1: resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==} dev: true @@ -2529,12 +2629,28 @@ packages: magic-string: 0.30.5 dev: true + /@vue/reactivity-transform@3.3.8: + resolution: {integrity: sha512-49CvBzmZNtcHua0XJ7GdGifM8GOXoUMOX4dD40Y5DxI3R8OUhMlvf2nvgUAcPxaXiV5MQQ1Nwy09ADpnLQUqRw==} + dependencies: + '@babel/parser': 7.23.0 + '@vue/compiler-core': 3.3.8 + '@vue/shared': 3.3.8 + estree-walker: 2.0.2 + magic-string: 0.30.5 + dev: true + /@vue/reactivity@3.3.7: resolution: {integrity: sha512-cZNVjWiw00708WqT0zRpyAgduG79dScKEPYJXq2xj/aMtk3SKvL3FBt2QKUlh6EHBJ1m8RhBY+ikBUzwc7/khg==} dependencies: '@vue/shared': 3.3.7 dev: true + /@vue/reactivity@3.3.8: + resolution: {integrity: sha512-ctLWitmFBu6mtddPyOKpHg8+5ahouoTCRtmAHZAXmolDtuZXfjL2T3OJ6DL6ezBPQB1SmMnpzjiWjCiMYmpIuw==} + dependencies: + '@vue/shared': 3.3.8 + dev: true + /@vue/runtime-core@3.3.7: resolution: {integrity: sha512-LHq9du3ubLZFdK/BP0Ysy3zhHqRfBn80Uc+T5Hz3maFJBGhci1MafccnL3rpd5/3wVfRHAe6c+PnlO2PAavPTQ==} dependencies: @@ -2542,6 +2658,13 @@ packages: '@vue/shared': 3.3.7 dev: true + /@vue/runtime-core@3.3.8: + resolution: {integrity: sha512-qurzOlb6q26KWQ/8IShHkMDOuJkQnQcTIp1sdP4I9MbCf9FJeGVRXJFr2mF+6bXh/3Zjr9TDgURXrsCr9bfjUw==} + dependencies: + '@vue/reactivity': 3.3.8 + '@vue/shared': 3.3.8 + dev: true + /@vue/runtime-dom@3.3.7: resolution: {integrity: sha512-PFQU1oeJxikdDmrfoNQay5nD4tcPNYixUBruZzVX/l0eyZvFKElZUjW4KctCcs52nnpMGO6UDK+jF5oV4GT5Lw==} dependencies: @@ -2550,6 +2673,14 @@ packages: csstype: 3.1.2 dev: true + /@vue/runtime-dom@3.3.8: + resolution: {integrity: sha512-Noy5yM5UIf9UeFoowBVgghyGGPIDPy1Qlqt0yVsUdAVbqI8eeMSsTqBtauaEoT2UFXUk5S64aWVNJN4MJ2vRdA==} + dependencies: + '@vue/runtime-core': 3.3.8 + '@vue/shared': 3.3.8 + csstype: 3.1.2 + dev: true + /@vue/server-renderer@3.3.7(vue@3.3.7): resolution: {integrity: sha512-UlpKDInd1hIZiNuVVVvLgxpfnSouxKQOSE2bOfQpBuGwxRV/JqqTCyyjXUWiwtVMyeRaZhOYYqntxElk8FhBhw==} peerDependencies: @@ -2560,12 +2691,38 @@ packages: vue: 3.3.7(typescript@5.2.2) dev: true + /@vue/server-renderer@3.3.8(vue@3.3.8): + resolution: {integrity: sha512-zVCUw7RFskvPuNlPn/8xISbrf0zTWsTSdYTsUTN1ERGGZGVnRxM2QZ3x1OR32+vwkkCm0IW6HmJ49IsPm7ilLg==} + peerDependencies: + vue: 3.3.8 + dependencies: + '@vue/compiler-ssr': 3.3.8 + '@vue/shared': 3.3.8 + vue: 3.3.8(typescript@5.2.2) + dev: true + /@vue/shared@3.3.7: resolution: {integrity: sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==} dev: true - /@vueuse/head@1.3.1(vue@3.3.7): - resolution: {integrity: sha512-XCcHGfDzkGlHS7KIPJVYN//L7jpfASLsN7MUE19ndHVQLnPIDxqFLDl7IROsY81PKzawVAUe4OYVWcGixseWxA==} + /@vue/shared@3.3.8: + resolution: {integrity: sha512-8PGwybFwM4x8pcfgqEQFy70NaQxASvOC5DJwLQfpArw1UDfUXrJkdxD3BhVTMS+0Lef/TU7YO0Jvr0jJY8T+mw==} + dev: true + + /@vueuse/core@10.5.0(vue@3.3.7): + resolution: {integrity: sha512-z/tI2eSvxwLRjOhDm0h/SXAjNm8N5ld6/SC/JQs6o6kpJ6Ya50LnEL8g5hoYu005i28L0zqB5L5yAl8Jl26K3A==} + dependencies: + '@types/web-bluetooth': 0.0.18 + '@vueuse/metadata': 10.5.0 + '@vueuse/shared': 10.5.0(vue@3.3.7) + vue-demi: 0.14.6(vue@3.3.7) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + dev: true + + /@vueuse/head@2.0.0(vue@3.3.7): + resolution: {integrity: sha512-ykdOxTGs95xjD4WXE4na/umxZea2Itl0GWBILas+O4oqS7eXIods38INvk3XkJKjqMdWPcpCyLX/DioLQxU1KA==} peerDependencies: vue: '>=2.7 || >=3' dependencies: @@ -2576,6 +2733,37 @@ packages: vue: 3.3.7(typescript@5.2.2) dev: true + /@vueuse/metadata@10.5.0: + resolution: {integrity: sha512-fEbElR+MaIYyCkeM0SzWkdoMtOpIwO72x8WsZHRE7IggiOlILttqttM69AS13nrDxosnDBYdyy3C5mR1LCxHsw==} + dev: true + + /@vueuse/nuxt@10.5.0(nuxt@3.8.1)(vue@3.3.7): + resolution: {integrity: sha512-x1mpjwcPB5DGA3cTM29Hf3bralslrma3Jr0fXm3Js3dbUHdadC/iVMf831W+sKPjZBhiZxR0S94B8gmGlvZ/1Q==} + peerDependencies: + nuxt: ^3.0.0 + dependencies: + '@nuxt/kit': 3.8.1 + '@vueuse/core': 10.5.0(vue@3.3.7) + '@vueuse/metadata': 10.5.0 + local-pkg: 0.5.0 + nuxt: 3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0) + vue-demi: 0.14.6(vue@3.3.7) + transitivePeerDependencies: + - '@vue/composition-api' + - rollup + - supports-color + - vue + dev: true + + /@vueuse/shared@10.5.0(vue@3.3.7): + resolution: {integrity: sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==} + dependencies: + vue-demi: 0.14.6(vue@3.3.7) + transitivePeerDependencies: + - '@vue/composition-api' + - vue + dev: true + /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: true @@ -3380,10 +3568,6 @@ packages: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} dev: true - /cuint@0.2.2: - resolution: {integrity: sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==} - dev: true - /debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} peerDependencies: @@ -4307,21 +4491,23 @@ packages: web-namespaces: 2.0.1 dev: true - /hast-util-has-property@2.0.1: - resolution: {integrity: sha512-X2+RwZIMTMKpXUzlotatPzWj8bspCymtXH3cfG3iQKV+wPF53Vgaqxi/eLqGck0wKq1kS9nvoB1wchbCPEL8sg==} + /hast-util-from-parse5@8.0.1: + resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + devlop: 1.1.0 + hastscript: 8.0.0 + property-information: 6.3.0 + vfile: 6.0.1 + vfile-location: 5.0.2 + web-namespaces: 2.0.1 dev: true - /hast-util-heading-rank@2.1.1: - resolution: {integrity: sha512-iAuRp+ESgJoRFJbSyaqsfvJDY6zzmFoEnL1gtz1+U8gKtGGj1p0CVlysuUAUjq95qlZESHINLThwJzNGmgGZxA==} + /hast-util-heading-rank@3.0.0: + resolution: {integrity: sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==} dependencies: - '@types/hast': 2.3.7 - dev: true - - /hast-util-is-element@2.1.3: - resolution: {integrity: sha512-O1bKah6mhgEq2WtVMk+Ta5K7pPMqsBBlmzysLdcwKVrqzZQ0CHqUPiIVspNhAG1rvxpvJjtGee17XfauZYKqVA==} - dependencies: - '@types/hast': 2.3.7 - '@types/unist': 2.0.9 + '@types/hast': 3.0.2 dev: true /hast-util-is-element@3.0.0: @@ -4336,6 +4522,12 @@ packages: '@types/hast': 2.3.7 dev: true + /hast-util-parse-selector@4.0.0: + resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} + dependencies: + '@types/hast': 3.0.2 + dev: true + /hast-util-raw@7.2.3: resolution: {integrity: sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==} dependencies: @@ -4352,6 +4544,41 @@ packages: zwitch: 2.0.4 dev: true + /hast-util-raw@9.0.1: + resolution: {integrity: sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + '@ungap/structured-clone': 1.2.0 + hast-util-from-parse5: 8.0.1 + hast-util-to-parse5: 8.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.0.2 + parse5: 7.1.2 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.1 + web-namespaces: 2.0.1 + zwitch: 2.0.4 + dev: true + + /hast-util-to-html@9.0.0: + resolution: {integrity: sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==} + dependencies: + '@types/hast': 3.0.2 + '@types/unist': 3.0.1 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-raw: 9.0.1 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.0.2 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.3 + zwitch: 2.0.4 + dev: true + /hast-util-to-parse5@7.1.0: resolution: {integrity: sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==} dependencies: @@ -4363,10 +4590,16 @@ packages: zwitch: 2.0.4 dev: true - /hast-util-to-string@2.0.0: - resolution: {integrity: sha512-02AQ3vLhuH3FisaMM+i/9sm4OXGSq1UhOOCpTLLQtHdL3tZt7qil69r8M8iDkZYyC0HCFylcYoP+8IO7ddta1A==} + /hast-util-to-parse5@8.0.0: + resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} dependencies: - '@types/hast': 2.3.7 + '@types/hast': 3.0.2 + comma-separated-tokens: 2.0.3 + devlop: 1.1.0 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + web-namespaces: 2.0.1 + zwitch: 2.0.4 dev: true /hast-util-to-string@3.0.0: @@ -4375,6 +4608,12 @@ packages: '@types/hast': 3.0.2 dev: true + /hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + dependencies: + '@types/hast': 3.0.2 + dev: true + /hastscript@7.2.0: resolution: {integrity: sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==} dependencies: @@ -4385,6 +4624,16 @@ packages: space-separated-tokens: 2.0.2 dev: true + /hastscript@8.0.0: + resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} + dependencies: + '@types/hast': 3.0.2 + comma-separated-tokens: 2.0.3 + hast-util-parse-selector: 4.0.0 + property-information: 6.3.0 + space-separated-tokens: 2.0.2 + dev: true + /hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} dev: true @@ -4405,6 +4654,10 @@ packages: resolution: {integrity: sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==} dev: true + /html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + dev: true + /http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} dev: true @@ -5747,12 +6000,6 @@ packages: hasBin: true dev: true - /mime@2.5.2: - resolution: {integrity: sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==} - engines: {node: '>=4.0.0'} - hasBin: true - dev: true - /mime@3.0.0: resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} engines: {node: '>=10.0.0'} @@ -5779,12 +6026,6 @@ packages: engines: {node: '>=10'} dev: true - /minimatch@3.0.8: - resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==} - dependencies: - brace-expansion: 1.1.11 - dev: true - /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -5868,6 +6109,10 @@ packages: engines: {node: '>=16 || 14 >=14.17'} dev: true + /minisearch@6.2.0: + resolution: {integrity: sha512-BECkorDF1TY2rGKt9XHdSeP9TP29yUbrAaCh/C03wpyf1vx3uYcP/+8XlMcpTkgoU0rBVnHMAOaP83Rc9Tm+TQ==} + dev: true + /minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} @@ -6261,8 +6506,8 @@ packages: fsevents: 2.3.3 dev: true - /nuxt@3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0): - resolution: {integrity: sha512-ZnisJYx5AcUl7xlw18m6zfINBpNhld+ZF+jdTLRZxkLjKSFZeFMGqKxOR1jNVSmxfIXM/guK0uV9GPm6HK/z7g==} + /nuxt@3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vite@4.5.0): + resolution: {integrity: sha512-RSGO56Gv0x2f6AXWw4o4GoBaVdsD0qkPCjrX7Ud/jzH3cRJoyYMPuq/9AOLvf2o1ecZWl39j5elqJ4QHmggyOA==} engines: {node: ^14.18.0 || >=16.10.0} hasBin: true peerDependencies: @@ -6275,18 +6520,18 @@ packages: optional: true dependencies: '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.0.0(nuxt@3.8.0)(vite@4.5.0) - '@nuxt/kit': 3.8.0 - '@nuxt/schema': 3.8.0 + '@nuxt/devtools': 1.0.0(nuxt@3.8.1)(vite@4.5.0) + '@nuxt/kit': 3.8.1 + '@nuxt/schema': 3.8.1 '@nuxt/telemetry': 2.5.2 '@nuxt/ui-templates': 1.3.1 - '@nuxt/vite-builder': 3.8.0(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vue@3.3.7) + '@nuxt/vite-builder': 3.8.1(@types/node@18.18.7)(sass@1.69.5)(typescript@5.2.2)(vue@3.3.8) '@types/node': 18.18.7 - '@unhead/dom': 1.8.0 - '@unhead/ssr': 1.8.0 - '@unhead/vue': 1.8.0(vue@3.3.7) - '@vue/shared': 3.3.7 - acorn: 8.10.0 + '@unhead/dom': 1.8.3 + '@unhead/ssr': 1.8.3 + '@unhead/vue': 1.8.3(vue@3.3.8) + '@vue/shared': 3.3.8 + acorn: 8.11.2 c12: 1.5.1 chokidar: 3.5.3 cookie-es: 1.0.0 @@ -6300,7 +6545,7 @@ packages: globby: 13.2.2 h3: 1.8.2 hookable: 5.5.3 - jiti: 1.20.0 + jiti: 1.21.0 klona: 2.0.6 knitwork: 1.0.0 magic-string: 0.30.5 @@ -6324,12 +6569,12 @@ packages: unenv: 1.7.4 unimport: 3.4.0(rollup@3.29.4) unplugin: 1.5.0 - unplugin-vue-router: 0.7.0(vue-router@4.2.5)(vue@3.3.7) + unplugin-vue-router: 0.7.0(vue-router@4.2.5)(vue@3.3.8) untyped: 1.4.0 - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) vue-bundle-renderer: 2.0.0 vue-devtools-stub: 0.1.0 - vue-router: 4.2.5(vue@3.3.7) + vue-router: 4.2.5(vue@3.3.8) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -6546,6 +6791,12 @@ packages: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} dev: true + /parse5@7.1.2: + resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + dependencies: + entities: 4.5.0 + dev: true + /parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} @@ -6973,19 +7224,6 @@ packages: postcss-selector-parser: 6.0.13 dev: true - /postcss-url@10.1.3(postcss@8.4.31): - resolution: {integrity: sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==} - engines: {node: '>=10'} - peerDependencies: - postcss: ^8.0.0 - dependencies: - make-dir: 3.1.0 - mime: 2.5.2 - minimatch: 3.0.8 - postcss: 8.4.31 - xxhashjs: 0.2.2 - dev: true - /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} dev: true @@ -7178,16 +7416,15 @@ packages: redis-errors: 1.2.0 dev: true - /rehype-external-links@2.1.0: - resolution: {integrity: sha512-2YMJZVM1hxZnwl9IPkbN5Pjn78kXkAX7lq9VEtlaGA29qIls25vZN+ucNIJdbQUe+9NNFck17BiOhGmsD6oLIg==} + /rehype-external-links@3.0.0: + resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} dependencies: - '@types/hast': 2.3.7 - extend: 3.0.2 - hast-util-is-element: 2.1.3 + '@types/hast': 3.0.2 + '@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 - unified: 10.1.2 - unist-util-visit: 4.1.2 + unist-util-visit: 5.0.0 dev: true /rehype-raw@6.1.1: @@ -7198,16 +7435,14 @@ packages: unified: 10.1.2 dev: true - /rehype-slug@5.1.0: - resolution: {integrity: sha512-Gf91dJoXneiorNEnn+Phx97CO7oRMrpi+6r155tTxzGuLtm+QrI4cTwCa9e1rtePdL4i9tSO58PeSS6HWfgsiw==} + /rehype-slug@6.0.0: + resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} dependencies: - '@types/hast': 2.3.7 + '@types/hast': 3.0.2 github-slugger: 2.0.0 - hast-util-has-property: 2.0.1 - hast-util-heading-rank: 2.1.1 - hast-util-to-string: 2.0.0 - unified: 10.1.2 - unist-util-visit: 4.1.2 + hast-util-heading-rank: 3.0.0 + hast-util-to-string: 3.0.0 + unist-util-visit: 5.0.0 dev: true /rehype-sort-attribute-values@5.0.0: @@ -7536,6 +7771,12 @@ packages: resolution: {integrity: sha512-e+/aueHx0YeIEut6RXC6K8gSf0PykwZiHD7q7AHtpTW8Kd8TpFUIWqTwhAnrGjOyOMyrwv+syr5WPagMpDpVYQ==} dev: true + /shikiji@0.6.12: + resolution: {integrity: sha512-sm7Wg8P4w6T3quDAZQxvk0P02o2hheIFEdbaEuGOhGnqLDjVsP28GDUVPdgbacOIc1auapNVNCVEykhPploLyg==} + dependencies: + hast-util-to-html: 9.0.0 + dev: true + /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: true @@ -7972,7 +8213,7 @@ packages: hasBin: true dependencies: '@jridgewell/source-map': 0.3.5 - acorn: 8.10.0 + acorn: 8.11.2 commander: 2.20.3 source-map-support: 0.5.21 dev: true @@ -8147,6 +8388,15 @@ packages: hookable: 5.5.3 dev: true + /unhead@1.8.3: + resolution: {integrity: sha512-2/5NJs7nY1MgCkUNuyevALM9nSgGp2loRv5QPhYyZXUPdF+F76CpKvkqATEOEJ/1yDzWjCaWrNh4u5lS6BEioA==} + dependencies: + '@unhead/dom': 1.8.3 + '@unhead/schema': 1.8.3 + '@unhead/shared': 1.8.3 + hookable: 5.5.3 + dev: true + /unicode-emoji-modifier-base@1.0.0: resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} engines: {node: '>=4'} @@ -8289,7 +8539,7 @@ packages: engines: {node: '>= 10.0.0'} dev: true - /unplugin-vue-router@0.7.0(vue-router@4.2.5)(vue@3.3.7): + /unplugin-vue-router@0.7.0(vue-router@4.2.5)(vue@3.3.8): resolution: {integrity: sha512-ddRreGq0t5vlSB7OMy4e4cfU1w2AwBQCwmvW3oP/0IHQiokzbx4hd3TpwBu3eIAFVuhX2cwNQwp1U32UybTVCw==} peerDependencies: vue-router: ^4.1.0 @@ -8299,7 +8549,7 @@ packages: dependencies: '@babel/types': 7.23.0 '@rollup/pluginutils': 5.0.5(rollup@3.29.4) - '@vue-macros/common': 1.8.0(vue@3.3.7) + '@vue-macros/common': 1.8.0(vue@3.3.8) ast-walker-scope: 0.5.0 chokidar: 3.5.3 fast-glob: 3.3.1 @@ -8309,7 +8559,7 @@ packages: pathe: 1.1.1 scule: 1.0.0 unplugin: 1.5.0 - vue-router: 4.2.5(vue@3.3.7) + vue-router: 4.2.5(vue@3.3.8) yaml: 2.3.3 transitivePeerDependencies: - rollup @@ -8462,6 +8712,13 @@ packages: vfile: 5.3.7 dev: true + /vfile-location@5.0.2: + resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} + dependencies: + '@types/unist': 3.0.1 + vfile: 6.0.1 + dev: true + /vfile-message@3.1.4: resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} dependencies: @@ -8778,13 +9035,13 @@ packages: vue: 3.3.7(typescript@5.2.2) dev: true - /vue-router@4.2.5(vue@3.3.7): + /vue-router@4.2.5(vue@3.3.8): resolution: {integrity: sha512-DIUpKcyg4+PTQKfFPX88UWhlagBEBEfJ5A8XDXRJLUnZOvcpMF8o/dnL90vpVkGaPbjvXazV/rC1qBKrZlFugw==} peerDependencies: vue: ^3.2.0 dependencies: '@vue/devtools-api': 6.5.1 - vue: 3.3.7(typescript@5.2.2) + vue: 3.3.8(typescript@5.2.2) dev: true /vue@3.3.7(typescript@5.2.2): @@ -8803,6 +9060,22 @@ packages: typescript: 5.2.2 dev: true + /vue@3.3.8(typescript@5.2.2): + resolution: {integrity: sha512-5VSX/3DabBikOXMsxzlW8JyfeLKlG9mzqnWgLQLty88vdZL7ZJgrdgBOmrArwxiLtmS+lNNpPcBYqrhE6TQW5w==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@vue/compiler-dom': 3.3.8 + '@vue/compiler-sfc': 3.3.8 + '@vue/runtime-dom': 3.3.8 + '@vue/server-renderer': 3.3.8(vue@3.3.8) + '@vue/shared': 3.3.8 + typescript: 5.2.2 + dev: true + /web-namespaces@2.0.1: resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} dev: true @@ -8917,12 +9190,6 @@ packages: engines: {node: '>=0.4.0'} dev: true - /xxhashjs@0.2.2: - resolution: {integrity: sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==} - dependencies: - cuint: 0.2.2 - dev: true - /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} diff --git a/server/plugins/i18nRedirector.ts b/server/plugins/i18nRedirector.ts index f70f3015..03d9215c 100644 --- a/server/plugins/i18nRedirector.ts +++ b/server/plugins/i18nRedirector.ts @@ -1,4 +1,11 @@ import { useRuntimeConfig } from '#imports'; +import { withTrailingSlash } from 'ufo'; +import type { LocaleObject } from '@nuxtjs/i18n/dist/runtime/composables'; +import type { NitroRuntimeConfig } from "nitropack"; + +interface MiHubRuntimeConfig extends NitroRuntimeConfig { + locales: LocaleObject[]; +} export default defineNitroPlugin((nitroApp) => { nitroApp.hooks.hook('render:html', (html, { event }) => { @@ -6,10 +13,13 @@ export default defineNitroPlugin((nitroApp) => { return; } - console.log(event.path); - const runtimeConfig = useRuntimeConfig(); - //@ts-ignore + const runtimeConfig: MiHubRuntimeConfig = useRuntimeConfig(); if (!event.path.match(new RegExp(`^/(${runtimeConfig.locales.map((l) => l.code).join('|')})/`))) { + const links = runtimeConfig.locales.map((l) => { + const url = withTrailingSlash(`/${l.code}${event.path.replace(/\.html$/g, '/')}`); + return `${l.name}`; + }); + html.htmlAttrs = []; const remainingList: string[] = []; @@ -24,7 +34,10 @@ export default defineNitroPlugin((nitroApp) => { html.head = remainingList.map((v) => v + '\n'); //@ts-ignore html.head.push('\n'); - html.body = ['\n\n']; + html.body = [ + '\n\n', + `\n`, + ]; html.bodyAppend = []; html.bodyPrepend = []; }