From 1472ce21c6c16b197dbe407ba0ee2faed7508a51 Mon Sep 17 00:00:00 2001 From: yuyinws Date: Sat, 17 Aug 2024 22:41:26 +0800 Subject: [PATCH] docs: add group icon --- docs/.vitepress/config/shared.ts | 6 ++++- docs/.vitepress/theme/index.ts | 10 +++++++++ docs/package.json | 3 ++- pnpm-lock.yaml | 38 ++++++++++++++++++++++++++++++++ 4 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 docs/.vitepress/theme/index.ts diff --git a/docs/.vitepress/config/shared.ts b/docs/.vitepress/config/shared.ts index 65907247..4111e668 100644 --- a/docs/.vitepress/config/shared.ts +++ b/docs/.vitepress/config/shared.ts @@ -4,6 +4,7 @@ import { search as ptSearch } from './pt' import { search as ruSearch } from './ru' import { search as esSearch } from './es' import { search as koSearch } from './ko' +import { groupIconPlugin } from 'vitepress-plugin-group-icons' export const shared = defineConfig({ title: 'VitePress', @@ -25,7 +26,10 @@ export const shared = defineConfig({ return code.replace(/\[\!\!code/g, '[!code') } } - ] + ], + config: (md) => { + md.use(groupIconPlugin) + } }, sitemap: { diff --git a/docs/.vitepress/theme/index.ts b/docs/.vitepress/theme/index.ts new file mode 100644 index 00000000..9d6d7346 --- /dev/null +++ b/docs/.vitepress/theme/index.ts @@ -0,0 +1,10 @@ +import DefaultTheme from 'vitepress/theme' +import type { EnhanceAppContext } from 'vitepress' +import { GroupIconComponent } from 'vitepress-plugin-group-icons/client' + +export default { + extends: DefaultTheme, + enhanceApp({ app }: EnhanceAppContext) { + app.use(GroupIconComponent) + }, +} diff --git a/docs/package.json b/docs/package.json index 25c3a0af..0433eaed 100644 --- a/docs/package.json +++ b/docs/package.json @@ -13,6 +13,7 @@ "@lunariajs/core": "^0.1.1", "markdown-it-mathjax3": "^4.3.2", "open-cli": "^8.0.0", - "vitepress": "workspace:*" + "vitepress": "workspace:*", + "vitepress-plugin-group-icons": "^0.0.9" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 628787a7..0cddc724 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -311,6 +311,9 @@ importers: vitepress: specifier: workspace:* version: link:.. + vitepress-plugin-group-icons: + specifier: ^0.0.9 + version: 0.0.9(vitepress@)(vue@3.4.38(typescript@5.5.4)) packages: @@ -743,6 +746,17 @@ packages: resolution: {integrity: sha512-e5+YUKENATs1JgYHMzTr2MW/NDcXGfYFAuOQU8gJgF/kEh4EqKgfGrfLI67bMD4tbhZVlkigz/9YYwWcbOFthg==} engines: {node: '>=10.13.0'} + '@iconify-json/logos@1.1.44': + resolution: {integrity: sha512-sIc355/sSq4GihU4eFTDVbXoeg2rZD3yH6tNOJTNouDu9Fx259BSWH+XEEQwm/YImDIllcGqmJuNBjAu4UVs2g==} + + '@iconify/types@2.0.0': + resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} + + '@iconify/vue@4.1.2': + resolution: {integrity: sha512-CQnYqLiQD5LOAaXhBrmj1mdL2/NCJvwcC4jtW2Z8ukhThiFkLDkutarTOV2trfc9EXqUqRs0KqXOL9pZ/IyysA==} + peerDependencies: + vue: '>=3' + '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -2648,6 +2662,12 @@ packages: terser: optional: true + vitepress-plugin-group-icons@0.0.9: + resolution: {integrity: sha512-6kWyZZsf1xg9GuG+PK0CxKBFuCrxqwAfG/hurq3EaxBhCZY6KGJZG9neqJQwzKymor3+os4PRTv4KicdWCqcrA==} + peerDependencies: + vitepress: ^1.0.0 + vue: ^3.0.0 + vitest@2.0.5: resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -3086,6 +3106,17 @@ snapshots: '@hutson/parse-repository-url@5.0.0': {} + '@iconify-json/logos@1.1.44': + dependencies: + '@iconify/types': 2.0.0 + + '@iconify/types@2.0.0': {} + + '@iconify/vue@4.1.2(vue@3.4.38(typescript@5.5.4))': + dependencies: + '@iconify/types': 2.0.0 + vue: 3.4.38(typescript@5.5.4) + '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 @@ -5027,6 +5058,13 @@ snapshots: '@types/node': 22.4.0 fsevents: 2.3.3 + vitepress-plugin-group-icons@0.0.9(vitepress@)(vue@3.4.38(typescript@5.5.4)): + dependencies: + '@iconify-json/logos': 1.1.44 + '@iconify/vue': 4.1.2(vue@3.4.38(typescript@5.5.4)) + vitepress: 'link:' + vue: 3.4.38(typescript@5.5.4) + vitest@2.0.5(@types/node@22.4.0)(supports-color@9.4.0): dependencies: '@ampproject/remapping': 2.3.0