diff --git a/docs/.vitepress/markdown/toggleStarred.ts b/docs/.vitepress/markdown/toggleStarred.ts
index 4047de36c..567348003 100644
--- a/docs/.vitepress/markdown/toggleStarred.ts
+++ b/docs/.vitepress/markdown/toggleStarred.ts
@@ -17,23 +17,27 @@
import type { MarkdownRenderer } from 'vitepress'
const excluded = ['Beginners Guide']
+const starredMarkers = [':star:', ':glowing-star:', '⭐', '🌟']
+const indexMarkers = ['🌐', ':globe_with_meridians:', ':globe-with-meridians:']
export function toggleStarredPlugin(md: MarkdownRenderer) {
md.renderer.rules.list_item_open = (tokens, index, options, env, self) => {
const contentToken = tokens[index + 2]
- // Ensure the token exists
- if (contentToken) {
- const content = contentToken.content
+ if (!contentToken) return self.renderToken(tokens, index, options)
- if (
- !excluded.includes(env.frontmatter.title) &&
- (content.includes(':star:') || content.includes(':glowing-star:'))
- ) {
- return `
`
- }
- }
+ const content = contentToken.content
+ const isStarred =
+ !excluded.includes(env.frontmatter.title) &&
+ starredMarkers.some((marker) => content.includes(marker))
+ const isIndex = indexMarkers.some((marker) => content.includes(marker))
- return self.renderToken(tokens, index, options)
+ if (!isStarred && !isIndex) return self.renderToken(tokens, index, options)
+
+ const classes = []
+ if (isStarred) classes.push('starred')
+ if (isIndex) classes.push('index')
+
+ return ``
}
}
diff --git a/docs/.vitepress/theme/components/SidebarCard.vue b/docs/.vitepress/theme/components/SidebarCard.vue
index 9d860772a..71121e70d 100644
--- a/docs/.vitepress/theme/components/SidebarCard.vue
+++ b/docs/.vitepress/theme/components/SidebarCard.vue
@@ -4,6 +4,7 @@ import ColorPicker from './ColorPicker.vue'
import ThemeSelector from './ThemeSelector.vue'
import InputField from './InputField.vue'
import ToggleStarred from './ToggleStarred.vue'
+import ToggleIndexes from './ToggleIndexes.vue'
@@ -26,6 +27,11 @@ import ToggleStarred from './ToggleStarred.vue'
+
+
+
+
+
diff --git a/docs/.vitepress/theme/components/Switch.vue b/docs/.vitepress/theme/components/Switch.vue
index f72ba9620..266224013 100644
--- a/docs/.vitepress/theme/components/Switch.vue
+++ b/docs/.vitepress/theme/components/Switch.vue
@@ -29,6 +29,13 @@ const enabled = ref(false)
.switch.enabled {
background-color: var(--vp-c-brand);
}
+
+.switch.disabled {
+ opacity: 0.5;
+ pointer-events: none;
+ background-color: var(--vp-c-bg-soft);
+ border-color: var(--vp-c-divider);
+}
diff --git a/docs/.vitepress/theme/components/ToggleStarred.vue b/docs/.vitepress/theme/components/ToggleStarred.vue
index 9b3675d47..0bcf0183e 100644
--- a/docs/.vitepress/theme/components/ToggleStarred.vue
+++ b/docs/.vitepress/theme/components/ToggleStarred.vue
@@ -1,12 +1,34 @@
-
+