diff --git a/docs/.vuepress/client.ts b/docs/.vuepress/client.ts new file mode 100644 index 00000000..a3f515cf --- /dev/null +++ b/docs/.vuepress/client.ts @@ -0,0 +1,10 @@ +import { type ClientConfig, defineClientConfig } from 'vuepress/client' +import HeroTintPlateConfig from './themes/components/HeroTintPlateConfig.vue' +import CanIUseConfig from './themes/components/CanIUseConfig.vue' + +export default defineClientConfig({ + enhance({ app }) { + app.component('HeroTintPlateConfig', HeroTintPlateConfig) + app.component('CanIUseConfig', CanIUseConfig) + }, +}) as ClientConfig diff --git a/docs/.vuepress/navbar.ts b/docs/.vuepress/navbar.ts index 1fded558..e13c3537 100644 --- a/docs/.vuepress/navbar.ts +++ b/docs/.vuepress/navbar.ts @@ -33,6 +33,7 @@ export const zhNavbar = [ text: '更多', icon: 'icon-park-outline:more-three', items: [ + { text: '主题工具', link: '/tools/' }, { text: '友情链接', link: '/friends/' }, { text: 'Vuepress', diff --git a/docs/.vuepress/notes.ts b/docs/.vuepress/notes.ts index 46528174..e930fa9f 100644 --- a/docs/.vuepress/notes.ts +++ b/docs/.vuepress/notes.ts @@ -124,6 +124,18 @@ export const zhNotes = definePlumeNotesConfig({ }, ], }, + { + dir: 'tools', + link: '/tools/', + sidebar: [ + { + text: '工具', + icon: 'tabler:tools', + link: '/tools/', + items: ['home-hero-tint-plate', 'caniuse'], + }, + ], + }, ], }) diff --git a/docs/.vuepress/themes/components/CanIUseConfig.vue b/docs/.vuepress/themes/components/CanIUseConfig.vue new file mode 100644 index 00000000..8c9e8b4f --- /dev/null +++ b/docs/.vuepress/themes/components/CanIUseConfig.vue @@ -0,0 +1,267 @@ + + + + + diff --git a/docs/.vuepress/themes/components/CodeViewer.vue b/docs/.vuepress/themes/components/CodeViewer.vue new file mode 100644 index 00000000..3b1ea74c --- /dev/null +++ b/docs/.vuepress/themes/components/CodeViewer.vue @@ -0,0 +1,13 @@ + + + diff --git a/docs/.vuepress/themes/components/CustomTintPlate.vue b/docs/.vuepress/themes/components/CustomTintPlate.vue new file mode 100644 index 00000000..fbd10999 --- /dev/null +++ b/docs/.vuepress/themes/components/CustomTintPlate.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/docs/.vuepress/themes/components/DemoWrapper.vue b/docs/.vuepress/themes/components/DemoWrapper.vue new file mode 100644 index 00000000..d1076921 --- /dev/null +++ b/docs/.vuepress/themes/components/DemoWrapper.vue @@ -0,0 +1,12 @@ + diff --git a/docs/.vuepress/themes/components/HeroTintPlateConfig.vue b/docs/.vuepress/themes/components/HeroTintPlateConfig.vue new file mode 100644 index 00000000..5c2cbd88 --- /dev/null +++ b/docs/.vuepress/themes/components/HeroTintPlateConfig.vue @@ -0,0 +1,155 @@ + + + + + diff --git a/docs/.vuepress/themes/components/InputRange.vue b/docs/.vuepress/themes/components/InputRange.vue new file mode 100644 index 00000000..daf41fb4 --- /dev/null +++ b/docs/.vuepress/themes/components/InputRange.vue @@ -0,0 +1,36 @@ + + + + + diff --git a/docs/.vuepress/themes/components/SingleTintPlate.vue b/docs/.vuepress/themes/components/SingleTintPlate.vue new file mode 100644 index 00000000..f6b77a1d --- /dev/null +++ b/docs/.vuepress/themes/components/SingleTintPlate.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/docs/.vuepress/themes/components/TripletTintPlate.vue b/docs/.vuepress/themes/components/TripletTintPlate.vue new file mode 100644 index 00000000..88b74123 --- /dev/null +++ b/docs/.vuepress/themes/components/TripletTintPlate.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/docs/.vuepress/themes/composables/caniuse.ts b/docs/.vuepress/themes/composables/caniuse.ts new file mode 100644 index 00000000..9ac85d3f --- /dev/null +++ b/docs/.vuepress/themes/composables/caniuse.ts @@ -0,0 +1,46 @@ +export function resolveCanIUse(feature: string, mode: string, versions: string): string { + if (!feature) + return '' + + if (mode === 'image') { + const link = 'https://caniuse.bitsofco.de/image/' + const alt = `Data on support for the ${feature} feature across the major browsers from caniuse.com` + return `

+ + + ${alt} +

` + } + + const periods = resolveVersions(versions) + const accessible = 'false' + const image = 'none' + const url = 'https://caniuse.bitsofco.de/embed/index.html' + const src = `${url}?feat=${feature}&periods=${periods}&accessible-colours=${accessible}&image-base=${image}` + + return `
` +} + +function resolveVersions(versions: string): string { + if (!versions) + return 'future_1,current,past_1,past_2' + + const list = versions + .split(',') + .map(v => Number(v.trim())) + .filter(v => !Number.isNaN(v) && v >= -5 && v <= 3) + + list.push(0) + + const uniq = [...new Set(list)].sort((a, b) => b - a) + const result: string[] = [] + uniq.forEach((v) => { + if (v < 0) + result.push(`past_${Math.abs(v)}`) + if (v === 0) + result.push('current') + if (v > 0) + result.push(`future_${v}`) + }) + return result.join(',') +} diff --git a/docs/README.md b/docs/README.md index 577501c4..a126b9a4 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,7 +5,7 @@ config: - type: hero full: true - background: filter-blur + background: tint-plate hero: name: Theme Plume tagline: VuePress Next Theme diff --git a/docs/en/README.md b/docs/en/README.md index dcc45ac1..b9f038a7 100644 --- a/docs/en/README.md +++ b/docs/en/README.md @@ -5,7 +5,7 @@ config: - type: hero full: true - background: filter-blur + background: tint-plate hero: name: Theme Plume tagline: Vuepress Next Theme diff --git a/docs/notes/theme/config/notes配置.md b/docs/notes/theme/config/notes配置.md index 39987023..8726e347 100644 --- a/docs/notes/theme/config/notes配置.md +++ b/docs/notes/theme/config/notes配置.md @@ -121,9 +121,13 @@ interface NotesSidebarItem { */ items?: NotesSidebar /** - * 侧边栏图标 + * - 支持 iconify 图标,直接使用 iconify name 即可自动加载 + * @see https://icon-sets.iconify.design/ + * + * - 如果 iconify 图标不满足您的需求,也可以支持传入 svg 字符串。 + * - 还支持使用 本地图片 或 远程图片,本地图片的路径需要以 `/` 开头。 */ - icon?: string + icon?: string | { svg: string } } ``` @@ -135,7 +139,8 @@ interface NotesSidebarItem { ### 侧边栏图标 -主题不仅可以通过 侧边栏配置中 `icon` 配置图标,还可以通过 文件中的 frontmatter 中 `icon` 字段 配置图标。 +主题不仅可以通过 侧边栏配置中 `icon` 配置图标,还可以通过 文件中的 frontmatter 中 `icon` 字段 配置图标, +与 侧边栏配置中的 `icon` 一致。 ```md --- diff --git a/docs/notes/theme/config/导航栏配置.md b/docs/notes/theme/config/导航栏配置.md index 3d77e96d..567f0a83 100644 --- a/docs/notes/theme/config/导航栏配置.md +++ b/docs/notes/theme/config/导航栏配置.md @@ -91,10 +91,13 @@ type NavItem = string | { */ link: string /** - * 支持 iconify 图标,直接使用 iconify name 即可自动加载 + * - 支持 iconify 图标,直接使用 iconify name 即可自动加载 * @see https://icon-sets.iconify.design/ + * + * - 如果 iconify 图标不满足您的需求,也可以支持传入 svg 字符串。 + * - 还支持使用 本地图片 或 远程图片,本地图片的路径需要以 `/` 开头。 */ - icon?: string + icon?: string | { svg: string } /** * 控制元素何时被激活 */ diff --git a/docs/notes/theme/guide/markdown/进阶.md b/docs/notes/theme/guide/markdown/进阶.md index 5ef2a619..d8fc7e1b 100644 --- a/docs/notes/theme/guide/markdown/进阶.md +++ b/docs/notes/theme/guide/markdown/进阶.md @@ -327,6 +327,9 @@ export default defineUserConfig({ @[caniuse](feature) ``` +为了方便使用,主题提供了工具支持:[caniuse 特性搜索](/tools/caniuse/),你可以直接使用该工具 +帮助生成 markdown 代码。 + ### 语法 ``` md diff --git a/docs/notes/theme/guide/自定义首页.md b/docs/notes/theme/guide/自定义首页.md index b694bf55..4a6dda50 100644 --- a/docs/notes/theme/guide/自定义首页.md +++ b/docs/notes/theme/guide/自定义首页.md @@ -144,6 +144,8 @@ config: 适用于 文档 类型站点,放置于 首位。 +**工具支持: [首页背景色板配置工具](/tools/home-hero-tint-plate/)** + ```ts interface PlumeThemeHomeHero extends PlumeHomeConfigBase { type: 'hero' @@ -158,14 +160,36 @@ interface PlumeThemeHomeHero extends PlumeHomeConfigBase { } } /** - * 背景图片,"filter-blur" 为预设效果 + * 背景图片,"tint-plate" 为预设效果, 也可以配置为图片地址 */ - background?: 'filter-blur' | string + background?: 'tint-plate' | string + + /** + * 当 background 为预设背景时,可以配置 RGB 值,用于调整背景 + * 该配置仅在 `background` 为 `tint-plate` 时生效 + */ + tintPlate?: TintPlate /** * 如果是非预设背景,可以设置背景图片的滤镜效果 */ filter?: string } +interface TintPlateObj { + // value 表示 基准色值,范围为 0 ~ 255 + // offset 表示 基准色值的偏移量,范围为 0 ~ (255 - value) + r: { value: number, offset: number } + g: { value: number, offset: number } + b: { value: number, offset: number } +} +type TintPlate = + | number // 210 + | string // '210,210,210' => red,green,blue + // { r: { value: 220, offset: 36 }, g: { value: 220, offset: 36 }, b: { value: 220, offset: 36 } } + | TintPlate + // { light: 210, dark: 20 } + // { light: '210,210,210', dark: '20,20,20' } + | { light: number | string, dark: number | string } + | { light: TintPlate, dark: TintPlate } ``` **示例:** @@ -177,7 +201,7 @@ config: - type: hero full: true - background: filter-blur + background: tint-plate hero: name: Theme Plume tagline: Vuepress Next Theme @@ -200,6 +224,32 @@ config: Theme Plume ::: +当 `background` 配置为 `tint-plate` 时,还可以额外配置 `tintPlate` 调整 背景色调,范围为 `0 ~ 255`: + +```md +--- +home: true +config: + - + type: hero + full: true + background: tint-plate + tintPlate: 210 +--- +``` + +`tintPlate` 用于配置 RGB 值: + +- 配置为单个值时,表示配置 red,green,blue 三个颜色值为相同值,范围: 0 - 255。示例: `210`。 +- 配置为三个值时,表示配置 red,green,blue 三个颜色值为不同值,范围: 0 - 255。示例: `210,210,210`。 +- 配置为 `TintPlate`,则可以更加灵活的控制每个颜色值和对应的偏移量。 +- 还可以配置为 `{ light, dark }`,在深色模式和浅色模式下使用不同的颜色值。 + +::: info +为了便于用户配置 美观的个性化的背景,主题还提供了 [首页背景色板配置工具](/tools/home-hero-tint-plate/) +进行可视化操作,生成配置内容,你可以直接复制它们用于自己的项目中。 +::: + ### features - 类型: `PlumeThemeHomeFeatures` diff --git a/docs/notes/tools/README.md b/docs/notes/tools/README.md new file mode 100644 index 00000000..ca92add8 --- /dev/null +++ b/docs/notes/tools/README.md @@ -0,0 +1,15 @@ +--- +title: 主题工具包 +author: pengzhanbo +createTime: 2024/04/16 16:27:03 +permalink: /tools/ +--- + +## 概述 + +主题工具包 旨在帮助用户在使用本主题提供的一些功能时,降低其使用门槛。 + +## 工具列表 + +- [caniuse 特性搜索](./caniuse.md) +- [首页背景色板配置](./home-hero-tint-plate.md) diff --git a/docs/notes/tools/caniuse.md b/docs/notes/tools/caniuse.md new file mode 100644 index 00000000..e9ec65ee --- /dev/null +++ b/docs/notes/tools/caniuse.md @@ -0,0 +1,15 @@ +--- +title: caniuse 特性搜索 +author: pengzhanbo +icon: fa-brands:css3 +createTime: 2024/04/16 12:41:26 +permalink: /tools/caniuse/ +readingTime: false +editLink: false +contributors: false +lastUpdated: false +--- + +本工具用于帮助搜索 caniuse 中的特性。并生成 caniuse markdown 代码。 + + diff --git a/docs/notes/tools/home-hero-tint-plate.md b/docs/notes/tools/home-hero-tint-plate.md new file mode 100644 index 00000000..3c56fbf4 --- /dev/null +++ b/docs/notes/tools/home-hero-tint-plate.md @@ -0,0 +1,16 @@ +--- +title: 首页背景色板配置 +author: pengzhanbo +icon: icon-park-outline:hand-painted-plate +createTime: 2024/04/15 20:17:42 +permalink: /tools/home-hero-tint-plate/ +readingTime: false +editLink: false +contributors: false +lastUpdated: false +--- + +为了更直观更方便的配置首页 Hero 区域 的 背景色板,主题提供了 色板配置工具, +帮助生成相对应的配置信息。 + + diff --git a/docs/package.json b/docs/package.json index e20dc46c..2495a440 100644 --- a/docs/package.json +++ b/docs/package.json @@ -12,14 +12,14 @@ "vuepress": "2.0.0-rc.9" }, "dependencies": { - "@iconify/json": "^2.2.200", + "@iconify/json": "^2.2.201", "@vuepress/bundler-vite": "2.0.0-rc.9", "anywhere": "^1.6.0", "chart.js": "^4.4.2", "echarts": "^5.5.0", "flowchart.ts": "^3.0.0", "mermaid": "^10.9.0", - "vue": "^3.4.21", + "vue": "^3.4.22", "vuepress-theme-plume": "workspace:*" }, "devDependencies": { diff --git a/package.json b/package.json index 3284badb..70f77056 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "stylelint": "^16.3.1", "tsconfig-vuepress": "^4.5.0", "typescript": "^5.4.5", - "vite": "^5.2.8" + "vite": "^5.2.9" }, "pnpm": { "patchedDependencies": { diff --git a/plugins/plugin-blog-data/package.json b/plugins/plugin-blog-data/package.json index de6bcd2a..0014de56 100644 --- a/plugins/plugin-blog-data/package.json +++ b/plugins/plugin-blog-data/package.json @@ -43,7 +43,7 @@ "@vue/devtools-api": "6.5.1", "chokidar": "^3.6.0", "create-filter": "^1.0.1", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/plugins/plugin-content-update/package.json b/plugins/plugin-content-update/package.json index ef05c17d..2523d119 100644 --- a/plugins/plugin-content-update/package.json +++ b/plugins/plugin-content-update/package.json @@ -40,7 +40,7 @@ "vuepress": "2.0.0-rc.9" }, "dependencies": { - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/plugins/plugin-copy-code/package.json b/plugins/plugin-copy-code/package.json index a486a2c8..a37665d3 100644 --- a/plugins/plugin-copy-code/package.json +++ b/plugins/plugin-copy-code/package.json @@ -41,7 +41,7 @@ }, "dependencies": { "@vuepress-plume/plugin-content-update": "workspace:*", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/plugins/plugin-iconify/package.json b/plugins/plugin-iconify/package.json index 23f5d52d..8c508169 100644 --- a/plugins/plugin-iconify/package.json +++ b/plugins/plugin-iconify/package.json @@ -41,7 +41,7 @@ }, "dependencies": { "@iconify/vue": "^4.1.1", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/plugins/plugin-md-power/package.json b/plugins/plugin-md-power/package.json index 7aeea7bf..8fbfee05 100644 --- a/plugins/plugin-md-power/package.json +++ b/plugins/plugin-md-power/package.json @@ -46,15 +46,15 @@ } }, "dependencies": { - "@iconify/utils": "^2.1.22", + "@iconify/utils": "^2.1.23", "@vueuse/core": "^10.9.0", "local-pkg": "^0.5.0", "markdown-it-container": "^4.0.0", "nanoid": "^5.0.7", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "devDependencies": { - "@iconify/json": "^2.2.200", + "@iconify/json": "^2.2.201", "@types/markdown-it": "^14.0.1" }, "publishConfig": { diff --git a/plugins/plugin-notes-data/package.json b/plugins/plugin-notes-data/package.json index fd59ec8e..9a58c443 100644 --- a/plugins/plugin-notes-data/package.json +++ b/plugins/plugin-notes-data/package.json @@ -43,7 +43,7 @@ "@vue/devtools-api": "6.5.1", "chokidar": "^3.6.0", "create-filter": "^1.0.1", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/plugins/plugin-notes-data/src/shared/index.ts b/plugins/plugin-notes-data/src/shared/index.ts index a197e814..2b7a3773 100644 --- a/plugins/plugin-notes-data/src/shared/index.ts +++ b/plugins/plugin-notes-data/src/shared/index.ts @@ -71,7 +71,7 @@ export interface NotesSidebarItem { /** * 侧边栏图标 */ - icon?: string + icon?: string | { svg: string } } export type NotesData = Record diff --git a/plugins/plugin-page-collection/package.json b/plugins/plugin-page-collection/package.json index 85bfe24c..ae322db1 100644 --- a/plugins/plugin-page-collection/package.json +++ b/plugins/plugin-page-collection/package.json @@ -36,7 +36,7 @@ "dependencies": { "@netlify/functions": "^2.6.0", "leancloud-storage": "^4.15.2", - "vue": "^3.4.21", + "vue": "^3.4.22", "vue-router": "4.3.0", "vuepress-plugin-netlify-functions": "workspace:*" }, diff --git a/plugins/plugin-search/package.json b/plugins/plugin-search/package.json index 4ff732d8..e3d9fdb3 100644 --- a/plugins/plugin-search/package.json +++ b/plugins/plugin-search/package.json @@ -48,7 +48,7 @@ "mark.js": "^8.11.1", "minisearch": "^6.3.0", "p-map": "^7.0.2", - "vue": "^3.4.21" + "vue": "^3.4.22" }, "publishConfig": { "access": "public" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 315454d0..3c93aa4a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,14 +74,14 @@ importers: specifier: ^5.4.5 version: 5.4.5 vite: - specifier: ^5.2.8 - version: 5.2.8(@types/node@20.9.1) + specifier: ^5.2.9 + version: 5.2.9(@types/node@20.9.1) docs: dependencies: '@iconify/json': - specifier: ^2.2.200 - version: 2.2.200 + specifier: ^2.2.201 + version: 2.2.201 '@vuepress/bundler-vite': specifier: 2.0.0-rc.9 version: 2.0.0-rc.9(@types/node@20.9.1)(typescript@5.4.5) @@ -101,11 +101,11 @@ importers: specifier: ^10.9.0 version: 10.9.0 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) vuepress-theme-plume: specifier: workspace:* version: link:../theme @@ -133,13 +133,13 @@ importers: version: 1.1.0 vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-baidu-tongji: dependencies: vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-blog-data: dependencies: @@ -153,11 +153,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-caniuse: dependencies: @@ -166,7 +166,7 @@ importers: version: 4.0.0 vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) devDependencies: '@types/markdown-it': specifier: ^14.0.1 @@ -175,11 +175,11 @@ importers: plugins/plugin-content-update: dependencies: vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-copy-code: dependencies: @@ -187,32 +187,32 @@ importers: specifier: workspace:* version: link:../plugin-content-update vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-iconify: dependencies: '@iconify/vue': specifier: ^4.1.1 - version: 4.1.1(vue@3.4.21) + version: 4.1.1(vue@3.4.22) vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-md-power: dependencies: '@iconify/utils': - specifier: ^2.1.22 - version: 2.1.22 + specifier: ^2.1.23 + version: 2.1.23 '@vueuse/core': specifier: ^10.9.0 - version: 10.9.0(vue@3.4.21) + version: 10.9.0(vue@3.4.22) local-pkg: specifier: ^0.5.0 version: 0.5.0 @@ -223,15 +223,15 @@ importers: specifier: ^5.0.7 version: 5.0.7 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) devDependencies: '@iconify/json': - specifier: ^2.2.200 - version: 2.2.200 + specifier: ^2.2.201 + version: 2.2.201 '@types/markdown-it': specifier: ^14.0.1 version: 14.0.1 @@ -270,7 +270,7 @@ importers: version: 1.0.32 vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) devDependencies: '@types/node': specifier: ^20.12.7 @@ -288,11 +288,11 @@ importers: specifier: ^1.0.1 version: 1.0.1 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-search: dependencies: @@ -301,10 +301,10 @@ importers: version: 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) '@vueuse/core': specifier: ^10.9.0 - version: 10.9.0(vue@3.4.21) + version: 10.9.0(vue@3.4.22) '@vueuse/integrations': specifier: ^10.9.0 - version: 10.9.0(focus-trap@7.5.4)(vue@3.4.21) + version: 10.9.0(focus-trap@7.5.4)(vue@3.4.22) chokidar: specifier: ^3.6.0 version: 3.6.0 @@ -321,11 +321,11 @@ importers: specifier: ^7.0.2 version: 7.0.2 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) plugins/plugin-shikiji: dependencies: @@ -340,7 +340,7 @@ importers: version: 3.0.4 floating-vue: specifier: ^5.2.2 - version: 5.2.2(vue@3.4.21) + version: 5.2.2(vue@3.4.22) mdast-util-from-markdown: specifier: ^2.0.0 version: 2.0.0 @@ -364,7 +364,7 @@ importers: version: 0.2.5(typescript@5.4.5) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) theme: dependencies: @@ -445,7 +445,7 @@ importers: version: 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) '@vueuse/core': specifier: ^10.9.0 - version: 10.9.0(vue@3.4.21) + version: 10.9.0(vue@3.4.22) bcrypt-ts: specifier: ^5.0.2 version: 5.0.2 @@ -462,14 +462,14 @@ importers: specifier: ^5.0.7 version: 5.0.7 vue: - specifier: ^3.4.21 - version: 3.4.21(typescript@5.4.5) + specifier: ^3.4.22 + version: 3.4.22(typescript@5.4.5) vue-router: specifier: 4.3.0 - version: 4.3.0(vue@3.4.21) + version: 4.3.0(vue@3.4.22) vuepress: specifier: 2.0.0-rc.9 - version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + version: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) vuepress-plugin-md-enhance: specifier: 2.0.0-rc.32 version: 2.0.0-rc.32(katex@0.16.10)(markdown-it@14.1.0)(typescript@5.4.5)(vuepress@2.0.0-rc.9) @@ -523,9 +523,6 @@ packages: peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' - peerDependenciesMeta: - '@algolia/client-search': - optional: true dependencies: '@algolia/client-search': 4.20.0 algoliasearch: 4.20.0 @@ -668,6 +665,14 @@ packages: dependencies: '@babel/types': 7.23.6 + /@babel/parser@7.24.4: + resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==} + engines: {node: '>=6.0.0'} + hasBin: true + dependencies: + '@babel/types': 7.23.6 + dev: false + /@babel/runtime@7.21.5: resolution: {integrity: sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==} engines: {node: '>=6.9.0'} @@ -1771,8 +1776,8 @@ packages: resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} dev: false - /@iconify/json@2.2.200: - resolution: {integrity: sha512-hnGvv2qeQD+DYhbCZSjnIlSi63dPFNmnMWCqLh0cL0kOqQBYsL61ViMjiusjVHKgBWf+fI4Sp6/bsoFuEWbhQg==} + /@iconify/json@2.2.201: + resolution: {integrity: sha512-5jM9TAa55YSEfx2WX1/GsHL9FSSH1PsA38V3p26SDmnOSmfb3V7r5yBgO8oIFkXdFQFk59MgESEOziapNtTGkw==} dependencies: '@iconify/types': 2.0.0 pathe: 1.1.2 @@ -1780,8 +1785,8 @@ packages: /@iconify/types@2.0.0: resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} - /@iconify/utils@2.1.22: - resolution: {integrity: sha512-6UHVzTVXmvO8uS6xFF+L/QTSpTzA/JZxtgU+KYGFyDYMEObZ1bu/b5l+zNJjHy+0leWjHI+C0pXlzGvv3oXZMA==} + /@iconify/utils@2.1.23: + resolution: {integrity: sha512-YGNbHKM5tyDvdWZ92y2mIkrfvm5Fvhe6WJSkWu7vvOFhMtYDP0casZpoRz0XEHZCrYsR4stdGT3cZ52yp5qZdQ==} dependencies: '@antfu/install-pkg': 0.1.1 '@antfu/utils': 0.7.7 @@ -1794,13 +1799,13 @@ packages: - supports-color dev: false - /@iconify/vue@4.1.1(vue@3.4.21): + /@iconify/vue@4.1.1(vue@3.4.22): resolution: {integrity: sha512-RL85Bm/DAe8y6rT6pux7D2FJSiUEM/TPfyK7GrbAOfTSwrhvwJW+S5yijdGcmtXouA8MtuH9C7l4hiSE4mLMjg==} peerDependencies: vue: '>=3' dependencies: '@iconify/types': 2.0.0 - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) dev: false /@import-maps/resolve@1.0.1: @@ -4033,7 +4038,7 @@ packages: - supports-color dev: false - /@vitejs/plugin-vue@5.0.4(vite@5.2.2)(vue@3.4.21): + /@vitejs/plugin-vue@5.0.4(vite@5.2.2)(vue@3.4.22): resolution: {integrity: sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: @@ -4041,7 +4046,7 @@ packages: vue: ^3.2.25 dependencies: vite: 5.2.2(@types/node@20.9.1) - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) dev: false /@volar/language-core@1.11.1: @@ -4065,12 +4070,29 @@ packages: estree-walker: 2.0.2 source-map-js: 1.2.0 + /@vue/compiler-core@3.4.22: + resolution: {integrity: sha512-FBDRCBE/rFPA8OfTUrARx2c49N7zoImlGT7hsFikv0pZxQlFhffQwewpEXaLynZW0/DspVXmNA+QQ9dXINpWmg==} + dependencies: + '@babel/parser': 7.24.4 + '@vue/shared': 3.4.22 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.0 + dev: false + /@vue/compiler-dom@3.4.21: resolution: {integrity: sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==} dependencies: '@vue/compiler-core': 3.4.21 '@vue/shared': 3.4.21 + /@vue/compiler-dom@3.4.22: + resolution: {integrity: sha512-YkAS+jZc6Ip360kT3lZbMQZteiYBbHDSVKr94Jdd8Zjr7VjSkkXKAFFR/FW+2tNtBYXOps6xrWlOquy3GeYB0w==} + dependencies: + '@vue/compiler-core': 3.4.22 + '@vue/shared': 3.4.22 + dev: false + /@vue/compiler-sfc@3.4.21: resolution: {integrity: sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==} dependencies: @@ -4083,12 +4105,35 @@ packages: magic-string: 0.30.7 postcss: 8.4.38 source-map-js: 1.2.0 + dev: true + + /@vue/compiler-sfc@3.4.22: + resolution: {integrity: sha512-Pncp5Vc8E2Ef1o5uveO8WA1IqM7rt0R1jN8D4qitQYOUxC97iITGYA8oMInQ3UcDS7ip+SegyA2HbAEB4V6NMQ==} + dependencies: + '@babel/parser': 7.24.4 + '@vue/compiler-core': 3.4.22 + '@vue/compiler-dom': 3.4.22 + '@vue/compiler-ssr': 3.4.22 + '@vue/shared': 3.4.22 + estree-walker: 2.0.2 + magic-string: 0.30.9 + postcss: 8.4.38 + source-map-js: 1.2.0 + dev: false /@vue/compiler-ssr@3.4.21: resolution: {integrity: sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==} dependencies: '@vue/compiler-dom': 3.4.21 '@vue/shared': 3.4.21 + dev: true + + /@vue/compiler-ssr@3.4.22: + resolution: {integrity: sha512-ycb2sL0SW6AkgVMrvaU/TIAEk7FQWyv/oYya44E/V9xURM+ij9Oev5bVobSS7GLJzkUieWW3SrYcK/PZpb5i4A==} + dependencies: + '@vue/compiler-dom': 3.4.22 + '@vue/shared': 3.4.22 + dev: false /@vue/devtools-api@6.5.1: resolution: {integrity: sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==} @@ -4118,44 +4163,48 @@ packages: vue-template-compiler: 2.7.16 dev: false - /@vue/reactivity@3.4.21: - resolution: {integrity: sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==} + /@vue/reactivity@3.4.22: + resolution: {integrity: sha512-+golHRRfcGoahBrhoTauFNIIAhxntRV3BI8HHqVvCdsuWivxW1MI0E9AOXVsz4H/ZlWM1ahudWTX6PhUrNR2yQ==} dependencies: - '@vue/shared': 3.4.21 + '@vue/shared': 3.4.22 dev: false - /@vue/runtime-core@3.4.21: - resolution: {integrity: sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==} + /@vue/runtime-core@3.4.22: + resolution: {integrity: sha512-cbA8lcL4g1907EdY1a1KmP5IRWfbqjgBRcgJPkF//yn96XSC1/VAJBZiAGLiyw0P77Rw2Ao7d9U51vU1GC6yUQ==} dependencies: - '@vue/reactivity': 3.4.21 - '@vue/shared': 3.4.21 + '@vue/reactivity': 3.4.22 + '@vue/shared': 3.4.22 dev: false - /@vue/runtime-dom@3.4.21: - resolution: {integrity: sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==} + /@vue/runtime-dom@3.4.22: + resolution: {integrity: sha512-AXxRHrFkLX1y2+70CO2wDKRxW0WZcQKTOXS31AK+jZ1RLPtI6sEHVpYNfyE9WgbgXOqPtX4gfIfuoFYi8iCu2w==} dependencies: - '@vue/runtime-core': 3.4.21 - '@vue/shared': 3.4.21 + '@vue/runtime-core': 3.4.22 + '@vue/shared': 3.4.22 csstype: 3.1.3 dev: false - /@vue/server-renderer@3.4.21(vue@3.4.21): - resolution: {integrity: sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==} + /@vue/server-renderer@3.4.22(vue@3.4.22): + resolution: {integrity: sha512-okiNxiCOhJlx6IOrTZvhIVwf2UYKay0hnIPqWu4h19bkNv1gmG4Ic6U3zXY287AWF26lQuFMa515Qzc+R0aAYg==} peerDependencies: - vue: 3.4.21 + vue: 3.4.22 dependencies: - '@vue/compiler-ssr': 3.4.21 - '@vue/shared': 3.4.21 - vue: 3.4.21(typescript@5.4.5) + '@vue/compiler-ssr': 3.4.22 + '@vue/shared': 3.4.22 + vue: 3.4.22(typescript@5.4.5) dev: false /@vue/shared@3.4.21: resolution: {integrity: sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==} + /@vue/shared@3.4.22: + resolution: {integrity: sha512-cg7R9XNk4ovV3bKka/1a464O2oY0l5Fyt0rwGR4hSJRPjUJ0WVjrPdsr4W0JbUriwiM8EKcCcCjeKN5pRMs2Zg==} + dev: false + /@vuepress/bundler-vite@2.0.0-rc.9(@types/node@20.9.1)(typescript@5.4.5): resolution: {integrity: sha512-GcM2eSqW2mPY5xXX4i5kuZujvwUeiTpsLX5kgau9LzPox+FdA3SMUkppCY3hsou2o2RxXPTfjocE7OlYQrUqvA==} dependencies: - '@vitejs/plugin-vue': 5.0.4(vite@5.2.2)(vue@3.4.21) + '@vitejs/plugin-vue': 5.0.4(vite@5.2.2)(vue@3.4.22) '@vuepress/client': 2.0.0-rc.9(typescript@5.4.5) '@vuepress/core': 2.0.0-rc.9(typescript@5.4.5) '@vuepress/shared': 2.0.0-rc.9 @@ -4166,8 +4215,8 @@ packages: postcss-load-config: 5.0.3(postcss@8.4.38) rollup: 4.13.0 vite: 5.2.2(@types/node@20.9.1) - vue: 3.4.21(typescript@5.4.5) - vue-router: 4.3.0(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vue-router: 4.3.0(vue@3.4.22) transitivePeerDependencies: - '@types/node' - jiti @@ -4202,8 +4251,8 @@ packages: dependencies: '@vue/devtools-api': 6.6.1 '@vuepress/shared': 2.0.0-rc.9 - vue: 3.4.21(typescript@5.4.5) - vue-router: 4.3.0(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vue-router: 4.3.0(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4215,7 +4264,7 @@ packages: '@vuepress/markdown': 2.0.0-rc.9(patch_hash=f3on36z73gmvj4jugj25dg7wje) '@vuepress/shared': 2.0.0-rc.9 '@vuepress/utils': 2.0.0-rc.9 - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) transitivePeerDependencies: - supports-color - typescript @@ -4230,8 +4279,8 @@ packages: cheerio: 1.0.0-rc.12 fflate: 0.8.2 gray-matter: 4.0.3 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4245,8 +4294,8 @@ packages: cheerio: 1.0.0-rc.12 fflate: 0.8.2 gray-matter: 4.0.3 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4280,9 +4329,9 @@ packages: peerDependencies: vuepress: 2.0.0-rc.9 dependencies: - '@vueuse/core': 10.9.0(vue@3.4.21) - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + '@vueuse/core': 10.9.0(vue@3.4.22) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - '@vue/composition-api' - typescript @@ -4308,8 +4357,8 @@ packages: dependencies: '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) giscus: 1.5.0 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4322,7 +4371,7 @@ packages: '@types/markdown-it': 13.0.7 markdown-it: 14.1.0 markdown-it-container: 4.0.0 - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) dev: false /@vuepress/plugin-docsearch@2.0.0-rc.24(@algolia/client-search@4.20.0)(search-insights@2.7.0)(typescript@5.4.5)(vuepress@2.0.0-rc.9): @@ -4334,10 +4383,10 @@ packages: '@docsearch/js': 3.6.0(@algolia/client-search@4.20.0)(search-insights@2.7.0) '@docsearch/react': 3.6.0(@algolia/client-search@4.20.0)(search-insights@2.7.0) '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) - '@vueuse/core': 10.9.0(vue@3.4.21) + '@vueuse/core': 10.9.0(vue@3.4.22) ts-debounce: 4.0.0 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - '@algolia/client-search' - '@types/react' @@ -4353,8 +4402,8 @@ packages: peerDependencies: vuepress: 2.0.0-rc.9 dependencies: - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4365,7 +4414,7 @@ packages: vuepress: 2.0.0-rc.9 dependencies: execa: 8.0.1 - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) dev: false /@vuepress/plugin-medium-zoom@2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9): @@ -4375,8 +4424,8 @@ packages: dependencies: '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) medium-zoom: 1.1.0 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4386,8 +4435,8 @@ packages: peerDependencies: vuepress: 2.0.0-rc.9 dependencies: - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4398,7 +4447,7 @@ packages: vuepress: 2.0.0-rc.9 dependencies: chokidar: 3.6.0 - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) dev: false /@vuepress/plugin-reading-time@2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9): @@ -4407,8 +4456,8 @@ packages: vuepress: 2.0.0-rc.9 dependencies: '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4419,7 +4468,7 @@ packages: vuepress: 2.0.0-rc.9 dependencies: '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4431,7 +4480,7 @@ packages: dependencies: '@vuepress/helper': 2.0.0-rc.24(typescript@5.4.5)(vuepress@2.0.0-rc.9) sitemap: 7.1.1 - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4442,8 +4491,8 @@ packages: vuepress: 2.0.0-rc.9 dependencies: '@vue/devtools-api': 6.6.1 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4453,9 +4502,9 @@ packages: peerDependencies: vuepress: 2.0.0-rc.9 dependencies: - vue: 3.4.21(typescript@5.4.5) - vue-router: 4.3.0(vue@3.4.21) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vue-router: 4.3.0(vue@3.4.22) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - typescript dev: false @@ -4484,19 +4533,19 @@ packages: - supports-color dev: false - /@vueuse/core@10.9.0(vue@3.4.21): + /@vueuse/core@10.9.0(vue@3.4.22): resolution: {integrity: sha512-/1vjTol8SXnx6xewDEKfS0Ra//ncg4Hb0DaZiwKf7drgfMsKFExQ+FnnENcN6efPen+1kIzhLQoGSy0eDUVOMg==} dependencies: '@types/web-bluetooth': 0.0.20 '@vueuse/metadata': 10.9.0 - '@vueuse/shared': 10.9.0(vue@3.4.21) - vue-demi: 0.14.7(vue@3.4.21) + '@vueuse/shared': 10.9.0(vue@3.4.22) + vue-demi: 0.14.7(vue@3.4.22) transitivePeerDependencies: - '@vue/composition-api' - vue dev: false - /@vueuse/integrations@10.9.0(focus-trap@7.5.4)(vue@3.4.21): + /@vueuse/integrations@10.9.0(focus-trap@7.5.4)(vue@3.4.22): resolution: {integrity: sha512-acK+A01AYdWSvL4BZmCoJAcyHJ6EqhmkQEXbQLwev1MY7NBnS+hcEMx/BzVoR9zKI+UqEPMD9u6PsyAuiTRT4Q==} peerDependencies: async-validator: '*' @@ -4537,10 +4586,10 @@ packages: universal-cookie: optional: true dependencies: - '@vueuse/core': 10.9.0(vue@3.4.21) - '@vueuse/shared': 10.9.0(vue@3.4.21) + '@vueuse/core': 10.9.0(vue@3.4.22) + '@vueuse/shared': 10.9.0(vue@3.4.22) focus-trap: 7.5.4 - vue-demi: 0.14.7(vue@3.4.21) + vue-demi: 0.14.7(vue@3.4.22) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -4550,10 +4599,10 @@ packages: resolution: {integrity: sha512-iddNbg3yZM0X7qFY2sAotomgdHK7YJ6sKUvQqbvwnf7TmaVPxS4EJydcNsVejNdS8iWCtDk+fYXr7E32nyTnGA==} dev: false - /@vueuse/shared@10.9.0(vue@3.4.21): + /@vueuse/shared@10.9.0(vue@3.4.22): resolution: {integrity: sha512-Uud2IWncmAfJvRaFYzv5OHDli+FbOzxiVEQdLCKQKLyhz94PIyFC3CHcH7EDMwIn8NPtD06+PNbC/PiO0LGLtw==} dependencies: - vue-demi: 0.14.7(vue@3.4.21) + vue-demi: 0.14.7(vue@3.4.22) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -8503,7 +8552,7 @@ packages: resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} dev: true - /floating-vue@5.2.2(vue@3.4.21): + /floating-vue@5.2.2(vue@3.4.22): resolution: {integrity: sha512-afW+h2CFafo+7Y9Lvw/xsqjaQlKLdJV7h1fCHfcYQ1C4SVMlu7OAekqWgu5d4SgvkBVU0pVpLlVsrSTBURFRkg==} peerDependencies: '@nuxt/kit': ^3.2.0 @@ -8513,8 +8562,8 @@ packages: optional: true dependencies: '@floating-ui/dom': 1.1.1 - vue: 3.4.21(typescript@5.4.5) - vue-resize: 2.0.0-alpha.1(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vue-resize: 2.0.0-alpha.1(vue@3.4.22) dev: false /flowchart.ts@3.0.0: @@ -10656,6 +10705,14 @@ packages: engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + + /magic-string@0.30.9: + resolution: {integrity: sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + dev: false /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} @@ -15284,8 +15341,8 @@ packages: fsevents: 2.3.3 dev: false - /vite@5.2.8(@types/node@20.9.1): - resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==} + /vite@5.2.9(@types/node@20.9.1): + resolution: {integrity: sha512-uOQWfuZBlc6Y3W/DTuQ1Sr+oIXWvqljLvS881SVmAj00d5RdgShLcuXWxseWPd4HXwiYBFW/vXHfKFeqj9uQnw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -15320,7 +15377,7 @@ packages: fsevents: 2.3.3 dev: true - /vue-demi@0.14.7(vue@3.4.21): + /vue-demi@0.14.7(vue@3.4.22): resolution: {integrity: sha512-EOG8KXDQNwkJILkx/gPcoL/7vH+hORoBaKgGe+6W7VFMvCYJfmF2dGbvgDroVnI8LU7/kTu8mbjRZGBU1z9NTA==} engines: {node: '>=12'} hasBin: true @@ -15332,7 +15389,7 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) dev: false /vue-eslint-parser@9.4.2(eslint@9.0.0): @@ -15353,21 +15410,21 @@ packages: - supports-color dev: true - /vue-resize@2.0.0-alpha.1(vue@3.4.21): + /vue-resize@2.0.0-alpha.1(vue@3.4.22): resolution: {integrity: sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==} peerDependencies: vue: ^3.0.0 dependencies: - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) dev: false - /vue-router@4.3.0(vue@3.4.21): + /vue-router@4.3.0(vue@3.4.22): resolution: {integrity: sha512-dqUcs8tUeG+ssgWhcPbjHvazML16Oga5w34uCUmsk7i0BcnskoLGwjpa15fqMr2Fa5JgVBrdL2MEgqz6XZ/6IQ==} peerDependencies: vue: ^3.2.0 dependencies: '@vue/devtools-api': 6.5.1 - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) dev: false /vue-template-compiler@2.7.16: @@ -15377,19 +15434,19 @@ packages: he: 1.2.0 dev: false - /vue@3.4.21(typescript@5.4.5): - resolution: {integrity: sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==} + /vue@3.4.22(typescript@5.4.5): + resolution: {integrity: sha512-CIx7NiP+n5WHBCG/fDNaUPP4qbQ5CIa8XIHZE3HpfS/rb2vmSIsp74BxsZyrrGKF0vHW3GoToqP3l0hzrMTecw==} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@vue/compiler-dom': 3.4.21 - '@vue/compiler-sfc': 3.4.21 - '@vue/runtime-dom': 3.4.21 - '@vue/server-renderer': 3.4.21(vue@3.4.21) - '@vue/shared': 3.4.21 + '@vue/compiler-dom': 3.4.22 + '@vue/compiler-sfc': 3.4.22 + '@vue/runtime-dom': 3.4.22 + '@vue/server-renderer': 3.4.22(vue@3.4.22) + '@vue/shared': 3.4.22 typescript: 5.4.5 dev: false @@ -15468,12 +15525,12 @@ packages: '@mdit/plugin-uml': 0.8.0(markdown-it@14.1.0) '@types/markdown-it': 13.0.7 '@vuepress/helper': 2.0.0-rc.21(typescript@5.4.5)(vuepress@2.0.0-rc.9) - '@vueuse/core': 10.9.0(vue@3.4.21) + '@vueuse/core': 10.9.0(vue@3.4.22) balloon-css: 1.2.0 js-yaml: 4.1.0 katex: 0.16.10 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) vuepress-plugin-sass-palette: 2.0.0-rc.32(typescript@5.4.5)(vuepress@2.0.0-rc.9) vuepress-shared: 2.0.0-rc.32(typescript@5.4.5)(vuepress@2.0.0-rc.9) transitivePeerDependencies: @@ -15495,7 +15552,7 @@ packages: '@vuepress/helper': 2.0.0-rc.21(typescript@5.4.5)(vuepress@2.0.0-rc.9) chokidar: 3.6.0 sass: 1.72.0 - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) vuepress-shared: 2.0.0-rc.32(typescript@5.4.5)(vuepress@2.0.0-rc.9) transitivePeerDependencies: - '@vue/composition-api' @@ -15509,21 +15566,21 @@ packages: vuepress: 2.0.0-rc.9 dependencies: '@vuepress/helper': 2.0.0-rc.21(typescript@5.4.5)(vuepress@2.0.0-rc.9) - '@vueuse/core': 10.9.0(vue@3.4.21) + '@vueuse/core': 10.9.0(vue@3.4.22) cheerio: 1.0.0-rc.12 dayjs: 1.11.10 execa: 8.0.1 fflate: 0.8.2 gray-matter: 4.0.3 semver: 7.6.0 - vue: 3.4.21(typescript@5.4.5) - vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21) + vue: 3.4.22(typescript@5.4.5) + vuepress: 2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22) transitivePeerDependencies: - '@vue/composition-api' - typescript dev: false - /vuepress@2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.21): + /vuepress@2.0.0-rc.9(@vuepress/bundler-vite@2.0.0-rc.9)(typescript@5.4.5)(vue@3.4.22): resolution: {integrity: sha512-jT1ln2lawdph+vVI6n2JfEUhQIcyc1RQWDdQu9DffhJGywJunFcumnUJudpqd1SNIES2Fz1hVCD6gdrE/rVKOQ==} engines: {node: '>=18.16.0'} hasBin: true @@ -15544,7 +15601,7 @@ packages: '@vuepress/markdown': 2.0.0-rc.9(patch_hash=f3on36z73gmvj4jugj25dg7wje) '@vuepress/shared': 2.0.0-rc.9 '@vuepress/utils': 2.0.0-rc.9 - vue: 3.4.21(typescript@5.4.5) + vue: 3.4.22(typescript@5.4.5) transitivePeerDependencies: - supports-color - typescript diff --git a/theme/package.json b/theme/package.json index 6ad101d2..5d94de3b 100644 --- a/theme/package.json +++ b/theme/package.json @@ -30,6 +30,17 @@ "types": "./lib/client/index.d.ts", "import": "./lib/client/index.js" }, + "./client/components/*": { + "import": "./lib/client/components/*" + }, + "./client/composables": { + "types": "./lib/client/composables/index.d.ts", + "import": "./lib/client/composables/index.js" + }, + "./client/composables/*": { + "types": "./lib/client/composables/*.d.ts", + "import": "./lib/client/composables/*.js" + }, "./shared": { "types": "./lib/shared/index.d.ts", "import": "./lib/shared/index.js" @@ -86,7 +97,7 @@ "katex": "^0.16.10", "lodash.merge": "^4.6.2", "nanoid": "^5.0.7", - "vue": "^3.4.21", + "vue": "^3.4.22", "vue-router": "4.3.0", "vuepress-plugin-md-enhance": "2.0.0-rc.32", "vuepress-plugin-md-power": "workspace:*" diff --git a/theme/src/client/components/Flyout/MenuGroup.vue b/theme/src/client/components/Flyout/MenuGroup.vue index 15898aa4..bfb5981b 100644 --- a/theme/src/client/components/Flyout/MenuGroup.vue +++ b/theme/src/client/components/Flyout/MenuGroup.vue @@ -1,9 +1,10 @@ @@ -11,7 +12,7 @@ defineProps<{