diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..ca2b787 Binary files /dev/null and b/.DS_Store differ diff --git a/docs/.vitepress/cache/deps/_metadata.json b/docs/.vitepress/cache/deps/_metadata.json index c983b80..db69e3d 100644 --- a/docs/.vitepress/cache/deps/_metadata.json +++ b/docs/.vitepress/cache/deps/_metadata.json @@ -1,31 +1,31 @@ { - "hash": "8d1488a8", + "hash": "1cdb2662", "configHash": "6bb8cdf2", - "lockfileHash": "efbac7d7", - "browserHash": "7fa9f6be", + "lockfileHash": "f84ebc7b", + "browserHash": "32d6c109", "optimized": { "vue": { "src": "../../../../node_modules/.pnpm/vue@3.5.12_typescript@5.6.3/node_modules/vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "f29975de", + "fileHash": "2029d163", "needsInterop": false }, "vitepress > @vue/devtools-api": { "src": "../../../../node_modules/.pnpm/@vue+devtools-api@7.5.4/node_modules/@vue/devtools-api/dist/index.js", "file": "vitepress___@vue_devtools-api.js", - "fileHash": "f1167e4b", + "fileHash": "02f5f3ec", "needsInterop": false }, "vitepress > @vueuse/core": { "src": "../../../../node_modules/.pnpm/@vueuse+core@11.1.0_vue@3.5.12_typescript@5.6.3_/node_modules/@vueuse/core/index.mjs", "file": "vitepress___@vueuse_core.js", - "fileHash": "50a3d5c0", + "fileHash": "b0f77eba", "needsInterop": false }, "@shikijs/vitepress-twoslash/client": { "src": "../../../../node_modules/.pnpm/@shikijs+vitepress-twoslash@1.22.1_@nuxt+kit@3.13.2_magicast@0.3.5_rollup@4.24.0_webpack-sources@3.2.3__typescript@5.6.3/node_modules/@shikijs/vitepress-twoslash/dist/client.mjs", "file": "@shikijs_vitepress-twoslash_client.js", - "fileHash": "bcf092d4", + "fileHash": "bb186c04", "needsInterop": false } }, diff --git a/docs/.vitepress/config.ts b/docs/.vitepress/config.ts index df66a90..145cb6d 100644 --- a/docs/.vitepress/config.ts +++ b/docs/.vitepress/config.ts @@ -55,7 +55,8 @@ export default defineConfig({ ], socialLinks: [ - { icon: 'github', link: 'https://github.com/vuejs/vitepress' }, + { icon: 'npm', link: 'https://www.npmjs.com/org/nailyjs' }, + { icon: 'github', link: 'https://github.com/nailyjs/core' }, ], }, diff --git a/docs/.vitepress/theme/style.less b/docs/.vitepress/theme/style.less index 8861559..940bb3b 100644 --- a/docs/.vitepress/theme/style.less +++ b/docs/.vitepress/theme/style.less @@ -132,20 +132,55 @@ * Custom CSS * -------------------------------------------------------------------------- */ -:root { - --vp-nav-bg-color: transparent; - --vp-local-nav-bg-color: transparent; - --vp-sidebar-bg-color: transparent; -} +html.dark { + .Layout { + --overlay-blurple: #7a5cd633; + --overlay-red: #ff000033; + --overlay-green: #00ff0033; + background: linear-gradient(215deg, var(--overlay-blurple), transparent 90%), radial-gradient(var(--overlay-red), transparent 40%) no-repeat -60vw -40vh / 105vw 200vh, radial-gradient(var(--overlay-green), transparent 65%) no-repeat 50% calc(100% + 20rem) / 80rem 30rem; + } + + body { + background-color: hsl(224deg 19.56% 4.66%) + } + &:root { + --vp-nav-bg-color: transparent; + --vp-local-nav-bg-color: transparent; + --vp-sidebar-bg-color: transparent; + --vp-c-bg-elv: #3c1b33; + } -.dark body { - background-color: hsl(224deg 19.56% 4.66%) -} + @media (max-width: 1280px) { + .VPLocalNav.has-sidebar { + border-bottom: none !important; + } + } -.dark .Layout { - --overlay-blurple: #7a5cd633; - --overlay-red: #ff000033; - --overlay-green: #00ff0033; - background: linear-gradient(215deg, var(--overlay-blurple), transparent 90%), radial-gradient(var(--overlay-red), transparent 40%) no-repeat -60vw -40vh / 105vw 200vh, radial-gradient(var(--overlay-green), transparent 65%) no-repeat 50% calc(100% + 20rem) / 80rem 30rem; + .VPNavBar, .VPLocalNav.has-sidebar { + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + } + + .VPLocalNav.has-sidebar .container { + border-bottom: 1px solid var(--vp-c-gutter); + } + + .VPNavScreen { + background-color: transparent; + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + } + + aside { + border-right: 1px solid var(--vp-c-gutter); + + &.open { + @media (max-width: 960px) { + backdrop-filter: blur(20px); + -webkit-backdrop-filter: blur(20px); + background-color: #191d466e; + } + } + } } diff --git a/docs/en/rpc-guide/index.md b/docs/en/rpc-guide/index.md new file mode 100644 index 0000000..ddf0d9e --- /dev/null +++ b/docs/en/rpc-guide/index.md @@ -0,0 +1,3 @@ +# RPC Guide + +> Wait to be translated diff --git a/docs/rpc-guide/index.md b/docs/rpc-guide/index.md index 816fa21..96c74d4 100644 --- a/docs/rpc-guide/index.md +++ b/docs/rpc-guide/index.md @@ -86,7 +86,7 @@ pnpm add unplugin-rpc @nailyjs/rpc @nailyjs/ioc @nailyjs/backend ```typescript twoslash import Rpc from 'unplugin-rpc/vite' -import { defineConfig } from 'vite' +import { defineConfig, type UserConfig } from 'vite' export default defineConfig({ plugins: [ @@ -95,11 +95,49 @@ export default defineConfig({ entryExport: 'app', // 后端入口文件的路径,默认是`./backend/main.ts`。 serverEntry: './backend/main.ts', + // 当后端使用`vite build`命令打包时,会采用下面的配置。 + // 这个配置项会与默认的配置项进行合并 + // 默认配置项可以在`unplugin-rpc`的`src/index.ts`下的`buildServer`函数中找到。 + viteOptions: {}, + // 是否在vite关闭时打包后端代码,默认是`true`。 + buildOnViteCloseBundle: true, }), ], }) ``` +::: warning 关于`buildOnViteCloseBundle` + +有时候你得调整一下你的配置,比如当你在使用`vite-ssg`打包项目的时候,你可能需要将这个配置项设置为`false`,然后在`vite-ssg`打包完成的`ssgOptions.onFinished`回调中手动build后端代码。此时你可以在`vite.config.ts`中这样配置: + +```typescript twoslash +/// + +import Rpc from 'unplugin-rpc/vite' +import { defineConfig } from 'vite' +// 导入这个函数,这个函数执行的时候就会去build后端的代码 +import { buildServer } from 'unplugin-rpc' + +export default defineConfig({ + plugins: [ + Rpc({ + buildOnViteCloseBundle: false, + // ... 其他配置 + }) + ], + + // 在vite-ssg打包完成后,手动调用buildServer函数来build后端代码 + ssgOptions: { + async onFinished() { + await buildServer() + } + } +}) +``` + +你可以参考[vitesse-naily](https://github.com/nailyjs/vitesse-naily/blob/main/vite.config.ts)的`vite.config.ts`文件,看看如何配置`vite-ssg`支持。 +::: + 你可以看到这个插件的配置文件中定义了`entryExport`和`serverEntry`,所以你得在项目根目录创建`./backend/main.ts`文件,填入如下内容: ```typescript twoslash diff --git a/package.json b/package.json index 28e7690..6fd0dfe 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "unocss": "^0.63.6", "unplugin-swc": "^1.5.1", "vite": "^5.4.2", + "vite-ssg": "^0.23.8", "vitepress": "^1.4.1", "vitest": "^2.1.2" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4fc50a3..04bd2ab 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,7 +10,7 @@ importers: devDependencies: '@antfu/eslint-config': specifier: ^3.7.3 - version: 3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0)) + version: 3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0)) '@celljs/rpc': specifier: ^3.1.1 version: 3.1.1 @@ -31,7 +31,7 @@ importers: version: 9.0.4 '@vitest/coverage-v8': specifier: 2.1.3 - version: 2.1.3(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0)) + version: 2.1.3(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0)) '@vitest/ui': specifier: 2.1.3 version: 2.1.3(vitest@2.1.3) @@ -86,12 +86,15 @@ importers: vite: specifier: ^5.4.2 version: 5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0) + vite-ssg: + specifier: ^0.23.8 + version: 0.23.8(vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) vitepress: specifier: ^1.4.1 version: 1.4.1(@algolia/client-search@4.24.0)(@types/node@22.7.8)(axios@1.7.7)(less@4.2.0)(postcss@8.4.47)(search-insights@2.17.2)(terser@5.36.0)(typescript@5.6.3) vitest: specifier: ^2.1.2 - version: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0) + version: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0) packages/backend: dependencies: @@ -173,7 +176,7 @@ importers: devDependencies: '@antfu/eslint-config': specifier: ^3.0.0 - version: 3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0)) + version: 3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0)) '@nuxt/kit': specifier: ^3.13.0 version: 3.13.2(magicast@0.3.5)(rollup@4.24.0)(webpack-sources@3.2.3) @@ -218,7 +221,7 @@ importers: version: 5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0) vitest: specifier: ^2.0.5 - version: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0) + version: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0) webpack: specifier: ^5.94.0 version: 5.95.0(@swc/core@1.7.39(@swc/helpers@0.5.13))(esbuild@0.23.1) @@ -1461,6 +1464,20 @@ packages: '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + '@unhead/dom@1.11.10': + resolution: {integrity: sha512-nL1mdRzYVATZIYauK15zOI2YyM3YxCLfhbTqljEjDFJeiJUzTTi+a//5FHiUk84ewSucFnrwHNey/pEXFlyY1A==} + + '@unhead/schema@1.11.10': + resolution: {integrity: sha512-lXh7cm5XtFaw3gc+ZVXTSfIHXiBpAywbjtEiOsz5TR4GxOjj2rtfOAl4C3Difk1yupP6L2otYmOZdn/i8EXSJg==} + + '@unhead/shared@1.11.10': + resolution: {integrity: sha512-YQgZcOyo1id7drUeDPGn0R83pirvIcV+Car3/m7ZfCLL1Syab6uXmRckVRd69yVbUL4eirIm9IzzmvzM/OuGuw==} + + '@unhead/vue@1.11.10': + resolution: {integrity: sha512-v6ddp4YEQCNILhYrx37Yt0GKRIFeTrb3VSmTbjh+URT+ua1mwgmNFTfl2ZldtTtri3tEkwSG1/5wLRq20ma70g==} + peerDependencies: + vue: '>=2.7 || >=3' + '@unocss/astro@0.63.6': resolution: {integrity: sha512-5Fjlv6dpQo6o2PUAcEv8p24G8rn8Op79xLFofq2V+iA/Q32G9/UsxTLOpj+yc+q0YdJrFfDCT2X/3pvVY8Db5g==} peerDependencies: @@ -1780,6 +1797,10 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + agent-base@7.1.1: + resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} + engines: {node: '>= 14'} + ajv-keywords@3.5.2: resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} peerDependencies: @@ -1983,6 +2004,9 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + camel-case@4.1.2: + resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} + caniuse-lite@1.0.30001669: resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==} @@ -2050,6 +2074,10 @@ packages: class-validator@0.14.1: resolution: {integrity: sha512-2VEG9JICxIqTpoK1eMzZqaV+u/EiwEJkMGzTrZf6sU/fwsnOITVgYJ8yojSy6CaXtO9V0Cc6ZQZ8h8m4UBuLwQ==} + clean-css@5.3.3: + resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==} + engines: {node: '>= 10.0'} + clean-regexp@1.0.0: resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} engines: {node: '>=4'} @@ -2097,6 +2125,10 @@ packages: comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -2208,9 +2240,17 @@ packages: engines: {node: '>=4'} hasBin: true + cssstyle@4.1.0: + resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} + engines: {node: '>=18'} + csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + data-urls@5.0.0: + resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} + engines: {node: '>=18'} + data-view-buffer@1.0.1: resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} engines: {node: '>= 0.4'} @@ -2251,6 +2291,9 @@ packages: supports-color: optional: true + decimal.js@10.4.3: + resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} @@ -2340,6 +2383,9 @@ packages: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} + dot-case@3.0.4: + resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} + dotenv-expand@11.0.6: resolution: {integrity: sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g==} engines: {node: '>=12'} @@ -3035,12 +3081,24 @@ packages: hosted-git-info@2.8.9: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + html-encoding-sniffer@4.0.0: + resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} + engines: {node: '>=18'} + html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + html-minifier-terser@7.2.0: + resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==} + engines: {node: ^14.13.1 || >=16.0.0} + hasBin: true + html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + html5parser@2.0.2: + resolution: {integrity: sha512-L0y+IdTVxHsovmye8MBtFgBvWZnq1C9WnI/SmJszxoQjmUH1psX2uzDk21O5k5et6udxdGjwxkbmT9eVRoG05w==} + http-assert@1.5.0: resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==} engines: {node: '>= 0.8'} @@ -3057,6 +3115,10 @@ packages: resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} engines: {node: '>= 0.8'} + http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} + engines: {node: '>= 14'} + http-proxy-middleware@3.0.3: resolution: {integrity: sha512-usY0HG5nyDUwtqpiZdETNbmKtw3QQ1jwYFZ9wi5iHzX2BcILwQKtYDJPo7XHTsu5Z0B2Hj3W9NNnbd+AjFWjqg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -3065,6 +3127,10 @@ packages: resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==} engines: {node: '>=8.0.0'} + https-proxy-agent@7.0.5: + resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} + engines: {node: '>= 14'} + human-id@1.0.2: resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} @@ -3228,6 +3294,9 @@ packages: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} + is-potential-custom-element-name@1.0.1: + resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -3352,6 +3421,15 @@ packages: resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} engines: {node: '>=12.0.0'} + jsdom@24.1.3: + resolution: {integrity: sha512-MyL55p3Ut3cXbeBEG7Hcv0mVM8pp8PBNWxRqchZnSfAiES1v1mRnMeFfaHWIPULpwsYfvO+ZmMZz5tGCnjzDUQ==} + engines: {node: '>=18'} + peerDependencies: + canvas: ^2.11.2 + peerDependenciesMeta: + canvas: + optional: true + jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true @@ -3528,6 +3606,9 @@ packages: loupe@3.1.2: resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} + lower-case@2.0.2: + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -3824,6 +3905,9 @@ packages: neo-async@2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + no-case@3.0.4: + resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + node-fetch-native@1.6.4: resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} @@ -3856,6 +3940,9 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + nwsapi@2.2.13: + resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} + nypm@0.3.12: resolution: {integrity: sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==} engines: {node: ^14.16.0 || >=16.10.0} @@ -3966,6 +4053,9 @@ packages: package-manager-detector@0.2.2: resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} + param-case@3.0.4: + resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} + parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -3986,10 +4076,16 @@ packages: resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==} engines: {node: '>= 0.10'} + parse5@7.2.0: + resolution: {integrity: sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==} + parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} + pascal-case@3.1.2: + resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} + path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -4110,6 +4206,11 @@ packages: engines: {node: '>=10.13.0'} hasBin: true + prettier@3.3.3: + resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} + engines: {node: '>=14'} + hasBin: true + promise-retry@2.0.1: resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} engines: {node: '>=10'} @@ -4134,6 +4235,9 @@ packages: pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} + psl@1.9.0: + resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} + pstree.remy@1.1.8: resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} @@ -4149,6 +4253,9 @@ packages: resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==} engines: {node: '>=0.6'} + querystringify@2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -4218,6 +4325,10 @@ packages: resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} hasBin: true + relateurl@0.2.7: + resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} + engines: {node: '>= 0.10'} + require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -4264,6 +4375,9 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rrweb-cssom@0.7.1: + resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==} + run-applescript@5.0.0: resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} engines: {node: '>=12'} @@ -4296,6 +4410,10 @@ packages: sax@1.4.1: resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} + schema-utils@3.3.0: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} @@ -4581,6 +4699,9 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + symbol-tree@3.2.4: + resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + synckit@0.6.2: resolution: {integrity: sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==} engines: {node: '>=12.20'} @@ -4693,9 +4814,17 @@ packages: resolution: {integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==} hasBin: true + tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} + engines: {node: '>=6'} + tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + tr46@5.0.0: + resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} + engines: {node: '>=18'} + traverse@0.6.10: resolution: {integrity: sha512-hN4uFRxbK+PX56DxYiGHsTn2dME3TVr9vbNqlQGcGcPhJAn+tdP126iA+TArMpI4YSgnTkMWyoLl5bf81Hi5TA==} engines: {node: '>= 0.4'} @@ -4866,6 +4995,9 @@ packages: undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + unhead@1.11.10: + resolution: {integrity: sha512-hypXrAI47wE3wIhkze0RMPGAWcoo45Q1+XzdqLD/OnTCzjFXQrpuE4zBy8JRexyrqp+Ud2+nFTUNf/mjfFSymw==} + unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} @@ -4892,6 +5024,10 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} + universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} + universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -4943,6 +5079,9 @@ packages: uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + url-parse@1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + url-pattern@1.0.3: resolution: {integrity: sha512-uQcEj/2puA4aq1R3A2+VNVBgaWYR24FdWjl7VNW83rnWftlhyzOZ/tBjezRiC2UkIzuxC8Top3IekN3vUf1WxA==} engines: {node: '>=0.12.0'} @@ -4986,6 +5125,21 @@ packages: '@nuxt/kit': optional: true + vite-ssg@0.23.8: + resolution: {integrity: sha512-uWjdxL2PrvmbUxj7K+YFR8hTuhUZ90r2PrP73evsN/XarjQzKvIbbopqczyGUSAdRXggN3C4sdnk4jqDOGbF4A==} + engines: {node: '>=14.0.0'} + hasBin: true + peerDependencies: + critters: ^0.0.24 + vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 + vue: ^3.2.10 + vue-router: ^4.0.1 + peerDependenciesMeta: + critters: + optional: true + vue-router: + optional: true + vite@5.4.9: resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==} engines: {node: ^18.0.0 || >=20.0.0} @@ -5091,6 +5245,10 @@ packages: typescript: optional: true + w3c-xmlserializer@5.0.0: + resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} + engines: {node: '>=18'} + watchpack@2.4.2: resolution: {integrity: sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==} engines: {node: '>=10.13.0'} @@ -5098,6 +5256,10 @@ packages: webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} + webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} @@ -5115,6 +5277,18 @@ packages: webpack-cli: optional: true + whatwg-encoding@3.1.1: + resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} + engines: {node: '>=18'} + + whatwg-mimetype@4.0.0: + resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} + engines: {node: '>=18'} + + whatwg-url@14.0.0: + resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} + engines: {node: '>=18'} + whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} @@ -5171,6 +5345,13 @@ packages: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} engines: {node: '>=12'} + xml-name-validator@5.0.0: + resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} + engines: {node: '>=18'} + + xmlchars@2.2.0: + resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -5218,6 +5399,9 @@ packages: resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} + zhead@2.2.4: + resolution: {integrity: sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==} + zod-validation-error@1.5.0: resolution: {integrity: sha512-/7eFkAI4qV0tcxMBB/3+d2c1P6jzzZYdYSlBuAklzMuCrJu5bzJfHS0yVAS87dRHVlhftd6RFJDIvv03JgkSbw==} engines: {node: '>=16.0.0'} @@ -5341,7 +5525,7 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@antfu/eslint-config@3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0))': + '@antfu/eslint-config@3.8.0(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0))': dependencies: '@antfu/install-pkg': 0.4.1 '@clack/prompts': 0.7.0 @@ -5350,7 +5534,7 @@ snapshots: '@stylistic/eslint-plugin': 2.9.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) '@typescript-eslint/eslint-plugin': 8.11.0(@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) '@typescript-eslint/parser': 8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@vitest/eslint-plugin': 1.1.7(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0)) + '@vitest/eslint-plugin': 1.1.7(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0)) eslint: 9.13.0(jiti@2.3.3) eslint-config-flat-gitignore: 0.3.0(eslint@9.13.0(jiti@2.3.3)) eslint-flat-config-utils: 0.4.0 @@ -6627,6 +6811,29 @@ snapshots: '@ungap/structured-clone@1.2.0': {} + '@unhead/dom@1.11.10': + dependencies: + '@unhead/schema': 1.11.10 + '@unhead/shared': 1.11.10 + + '@unhead/schema@1.11.10': + dependencies: + hookable: 5.5.3 + zhead: 2.2.4 + + '@unhead/shared@1.11.10': + dependencies: + '@unhead/schema': 1.11.10 + + '@unhead/vue@1.11.10(vue@3.5.12(typescript@5.6.3))': + dependencies: + '@unhead/schema': 1.11.10 + '@unhead/shared': 1.11.10 + defu: 6.1.4 + hookable: 5.5.3 + unhead: 1.11.10 + vue: 3.5.12(typescript@5.6.3) + '@unocss/astro@0.63.6(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0))': dependencies: '@unocss/core': 0.63.6 @@ -6783,7 +6990,7 @@ snapshots: vite: 5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0) vue: 3.5.12(typescript@5.6.3) - '@vitest/coverage-v8@2.1.3(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0))': + '@vitest/coverage-v8@2.1.3(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -6797,17 +7004,17 @@ snapshots: std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0) + vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0) transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0))': + '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)(vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0))': dependencies: '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) eslint: 9.13.0(jiti@2.3.3) optionalDependencies: typescript: 5.6.3 - vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0) + vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0) '@vitest/expect@2.1.3': dependencies: @@ -6852,7 +7059,7 @@ snapshots: sirv: 2.0.4 tinyglobby: 0.2.9 tinyrainbow: 1.2.0 - vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0) + vitest: 2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0) '@vitest/utils@2.1.3': dependencies: @@ -7082,6 +7289,12 @@ snapshots: acorn@8.13.0: {} + agent-base@7.1.1: + dependencies: + debug: 4.3.7(supports-color@5.5.0) + transitivePeerDependencies: + - supports-color + ajv-keywords@3.5.2(ajv@6.12.6): dependencies: ajv: 6.12.6 @@ -7327,6 +7540,11 @@ snapshots: callsites@3.1.0: {} + camel-case@4.1.2: + dependencies: + pascal-case: 3.1.2 + tslib: 2.8.0 + caniuse-lite@1.0.30001669: {} ccount@2.0.1: {} @@ -7394,6 +7612,10 @@ snapshots: libphonenumber-js: 1.11.12 validator: 13.12.0 + clean-css@5.3.3: + dependencies: + source-map: 0.6.1 + clean-regexp@1.0.0: dependencies: escape-string-regexp: 1.0.5 @@ -7441,6 +7663,8 @@ snapshots: comma-separated-tokens@2.0.3: {} + commander@10.0.1: {} + commander@12.1.0: {} commander@2.20.3: {} @@ -7538,8 +7762,17 @@ snapshots: cssesc@3.0.0: {} + cssstyle@4.1.0: + dependencies: + rrweb-cssom: 0.7.1 + csstype@3.1.3: {} + data-urls@5.0.0: + dependencies: + whatwg-mimetype: 4.0.0 + whatwg-url: 14.0.0 + data-view-buffer@1.0.1: dependencies: call-bind: 1.0.7 @@ -7574,6 +7807,8 @@ snapshots: optionalDependencies: supports-color: 5.5.0 + decimal.js@10.4.3: {} + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 @@ -7649,6 +7884,11 @@ snapshots: dependencies: esutils: 2.0.3 + dot-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.8.0 + dotenv-expand@11.0.6: dependencies: dotenv: 16.4.5 @@ -8561,10 +8801,28 @@ snapshots: hosted-git-info@2.8.9: {} + html-encoding-sniffer@4.0.0: + dependencies: + whatwg-encoding: 3.1.1 + html-escaper@2.0.2: {} + html-minifier-terser@7.2.0: + dependencies: + camel-case: 4.1.2 + clean-css: 5.3.3 + commander: 10.0.1 + entities: 4.5.0 + param-case: 3.0.4 + relateurl: 0.2.7 + terser: 5.36.0 + html-void-elements@3.0.0: {} + html5parser@2.0.2: + dependencies: + tslib: 2.8.0 + http-assert@1.5.0: dependencies: deep-equal: 1.0.1 @@ -8593,6 +8851,13 @@ snapshots: statuses: 2.0.1 toidentifier: 1.0.1 + http-proxy-agent@7.0.2: + dependencies: + agent-base: 7.1.1 + debug: 4.3.7(supports-color@5.5.0) + transitivePeerDependencies: + - supports-color + http-proxy-middleware@3.0.3: dependencies: '@types/http-proxy': 1.17.15 @@ -8612,6 +8877,13 @@ snapshots: transitivePeerDependencies: - debug + https-proxy-agent@7.0.5: + dependencies: + agent-base: 7.1.1 + debug: 4.3.7(supports-color@5.5.0) + transitivePeerDependencies: + - supports-color + human-id@1.0.2: {} human-signals@2.1.0: {} @@ -8627,7 +8899,6 @@ snapshots: iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 - optional: true ignore-by-default@1.0.1: {} @@ -8762,6 +9033,8 @@ snapshots: is-plain-object@5.0.0: {} + is-potential-custom-element-name@1.0.1: {} + is-regex@1.1.4: dependencies: call-bind: 1.0.7 @@ -8875,6 +9148,34 @@ snapshots: jsdoc-type-pratt-parser@4.1.0: {} + jsdom@24.1.3: + dependencies: + cssstyle: 4.1.0 + data-urls: 5.0.0 + decimal.js: 10.4.3 + form-data: 4.0.1 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.5 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.13 + parse5: 7.2.0 + rrweb-cssom: 0.7.1 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 4.1.4 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 14.0.0 + ws: 8.18.0 + xml-name-validator: 5.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + jsesc@0.5.0: {} jsesc@3.0.2: {} @@ -9083,6 +9384,10 @@ snapshots: loupe@3.1.2: {} + lower-case@2.0.2: + dependencies: + tslib: 2.8.0 + lru-cache@10.4.3: {} lru-cache@4.1.5: @@ -9537,6 +9842,11 @@ snapshots: neo-async@2.6.2: {} + no-case@3.0.4: + dependencies: + lower-case: 2.0.2 + tslib: 2.8.0 + node-fetch-native@1.6.4: {} node-gzip@1.1.2: {} @@ -9577,6 +9887,8 @@ snapshots: dependencies: boolbase: 1.0.0 + nwsapi@2.2.13: {} + nypm@0.3.12: dependencies: citty: 0.1.6 @@ -9690,6 +10002,11 @@ snapshots: package-manager-detector@0.2.2: {} + param-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.8.0 + parent-module@1.0.1: dependencies: callsites: 3.1.0 @@ -9710,8 +10027,17 @@ snapshots: parse-node-version@1.0.1: {} + parse5@7.2.0: + dependencies: + entities: 4.5.0 + parseurl@1.3.3: {} + pascal-case@3.1.2: + dependencies: + no-case: 3.0.4 + tslib: 2.8.0 + path-browserify@1.0.1: {} path-exists@4.0.0: {} @@ -9789,6 +10115,8 @@ snapshots: prettier@2.8.8: {} + prettier@3.3.3: {} + promise-retry@2.0.1: dependencies: err-code: 2.0.3 @@ -9813,6 +10141,8 @@ snapshots: pseudomap@1.0.2: {} + psl@1.9.0: {} + pstree.remy@1.1.8: {} punycode.js@2.3.1: {} @@ -9823,6 +10153,8 @@ snapshots: dependencies: side-channel: 1.0.6 + querystringify@2.2.0: {} + queue-microtask@1.2.3: {} randombytes@2.1.0: @@ -9903,6 +10235,8 @@ snapshots: dependencies: jsesc: 0.5.0 + relateurl@0.2.7: {} + require-directory@2.1.1: {} requires-port@1.0.0: {} @@ -9957,6 +10291,8 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.24.0 fsevents: 2.3.3 + rrweb-cssom@0.7.1: {} + run-applescript@5.0.0: dependencies: execa: 5.1.1 @@ -9991,6 +10327,10 @@ snapshots: sax@1.4.1: optional: true + saxes@6.0.0: + dependencies: + xmlchars: 2.2.0 + schema-utils@3.3.0: dependencies: '@types/json-schema': 7.0.15 @@ -10301,6 +10641,8 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + symbol-tree@3.2.4: {} + synckit@0.6.2: dependencies: tslib: 2.8.0 @@ -10397,10 +10739,21 @@ snapshots: touch@3.1.1: {} + tough-cookie@4.1.4: + dependencies: + psl: 1.9.0 + punycode: 2.3.1 + universalify: 0.2.0 + url-parse: 1.5.10 + tr46@1.0.1: dependencies: punycode: 2.3.1 + tr46@5.0.0: + dependencies: + punycode: 2.3.1 + traverse@0.6.10: dependencies: gopd: 1.0.1 @@ -10595,6 +10948,13 @@ snapshots: undici-types@6.19.8: {} + unhead@1.11.10: + dependencies: + '@unhead/dom': 1.11.10 + '@unhead/schema': 1.11.10 + '@unhead/shared': 1.11.10 + hookable: 5.5.3 + unicorn-magic@0.1.0: {} unimport@3.13.1(rollup@4.24.0)(webpack-sources@3.2.3): @@ -10641,6 +11001,8 @@ snapshots: universalify@0.1.2: {} + universalify@0.2.0: {} + universalify@2.0.1: {} unocss@0.63.6(postcss@8.4.47)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0)): @@ -10713,6 +11075,11 @@ snapshots: dependencies: punycode: 2.3.1 + url-parse@1.5.10: + dependencies: + querystringify: 2.2.0 + requires-port: 1.0.0 + url-pattern@1.0.3: {} util-deprecate@1.0.2: {} @@ -10773,6 +11140,25 @@ snapshots: - rollup - supports-color + vite-ssg@0.23.8(vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)): + dependencies: + '@unhead/dom': 1.11.10 + '@unhead/vue': 1.11.10(vue@3.5.12(typescript@5.6.3)) + fs-extra: 11.2.0 + html-minifier-terser: 7.2.0 + html5parser: 2.0.2 + jsdom: 24.1.3 + kolorist: 1.8.0 + prettier: 3.3.3 + vite: 5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0) + vue: 3.5.12(typescript@5.6.3) + yargs: 17.7.2 + transitivePeerDependencies: + - bufferutil + - canvas + - supports-color + - utf-8-validate + vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0): dependencies: esbuild: 0.21.5 @@ -10833,7 +11219,7 @@ snapshots: - typescript - universal-cookie - vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(less@4.2.0)(terser@5.36.0): + vitest@2.1.3(@types/node@22.7.8)(@vitest/ui@2.1.3)(jsdom@24.1.3)(less@4.2.0)(terser@5.36.0): dependencies: '@vitest/expect': 2.1.3 '@vitest/mocker': 2.1.3(@vitest/spy@2.1.3)(vite@5.4.9(@types/node@22.7.8)(less@4.2.0)(terser@5.36.0)) @@ -10857,6 +11243,7 @@ snapshots: optionalDependencies: '@types/node': 22.7.8 '@vitest/ui': 2.1.3(vitest@2.1.3) + jsdom: 24.1.3 transitivePeerDependencies: - less - lightningcss @@ -10907,6 +11294,10 @@ snapshots: optionalDependencies: typescript: 5.6.3 + w3c-xmlserializer@5.0.0: + dependencies: + xml-name-validator: 5.0.0 + watchpack@2.4.2: dependencies: glob-to-regexp: 0.4.1 @@ -10914,6 +11305,8 @@ snapshots: webidl-conversions@4.0.2: {} + webidl-conversions@7.0.0: {} + webpack-sources@3.2.3: {} webpack-virtual-modules@0.6.2: {} @@ -10948,6 +11341,17 @@ snapshots: - esbuild - uglify-js + whatwg-encoding@3.1.1: + dependencies: + iconv-lite: 0.6.3 + + whatwg-mimetype@4.0.0: {} + + whatwg-url@14.0.0: + dependencies: + tr46: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-url@7.1.0: dependencies: lodash.sortby: 4.7.0 @@ -11007,6 +11411,10 @@ snapshots: xml-name-validator@4.0.0: {} + xml-name-validator@5.0.0: {} + + xmlchars@2.2.0: {} + y18n@5.0.8: {} yallist@2.1.2: {} @@ -11043,6 +11451,8 @@ snapshots: yocto-queue@1.1.1: {} + zhead@2.2.4: {} + zod-validation-error@1.5.0(zod@3.23.8): dependencies: zod: 3.23.8