-
-
-
+
+
+
+
+
diff --git a/docs/.vitepress/theme/style.css b/docs/.vitepress/theme/style.css
index deb181470..83abdb3d3 100644
--- a/docs/.vitepress/theme/style.css
+++ b/docs/.vitepress/theme/style.css
@@ -385,6 +385,12 @@ html.dark .VPNav .VPSwitchAppearance .icon .moon {
transition: transform 0.3s cubic-bezier(0.34, 1.4, 0.64, 1);
}
+@media (min-width: 960px) {
+ .VPSidebar {
+ padding-right: 24px !important;
+ }
+}
+
/* Links in the page text: a faint underline shows they are links, and on hover a solid
underline draws in from the left. Drawn with backgrounds so it also follows links that
wrap onto a second line. */
diff --git a/docs/.vitepress/theme/utils/getSVGIcon.ts b/docs/.vitepress/theme/utils/getSVGIcon.ts
index b901c92e9..622288365 100644
--- a/docs/.vitepress/theme/utils/getSVGIcon.ts
+++ b/docs/.vitepress/theme/utils/getSVGIcon.ts
@@ -11,7 +11,7 @@ const allowedAttrs = [
'class',
];
-export default function getSVGIcon(element?: HTMLElement, attrs?: Record
) {
+export default function getSVGIcon(element?: Element, attrs?: Record) {
const svg = element ?? document.querySelector('#previewer svg');
if (!svg) return;
diff --git a/docs/.vitepress/theme/utils/useSearchShortcut.ts b/docs/.vitepress/theme/utils/useSearchShortcut.ts
index 192ce782f..7204cf90c 100644
--- a/docs/.vitepress/theme/utils/useSearchShortcut.ts
+++ b/docs/.vitepress/theme/utils/useSearchShortcut.ts
@@ -14,6 +14,8 @@ export default function useSearchShortcut(callback: () => void) {
// Check for Cmd+K (Mac), Ctrl+K (Windows/Linux), or forward slash
if (((event.metaKey || event.ctrlKey) && event.key === 'k') || event.key === '/') {
event.preventDefault();
+ // Algolia listens for the same keys on window, so claim them before it sees them
+ event.stopImmediatePropagation();
callback();
}
}
@@ -24,11 +26,11 @@ export default function useSearchShortcut(callback: () => void) {
shortcutText.value = isMac ? '⌘K' : 'Ctrl+K';
// Add keyboard shortcut listener
- window.addEventListener('keydown', handleKeydown);
+ window.addEventListener('keydown', handleKeydown, { capture: true });
});
onBeforeUnmount(() => {
- window.removeEventListener('keydown', handleKeydown);
+ window.removeEventListener('keydown', handleKeydown, { capture: true });
});
return { shortcutText };
diff --git a/docs/package.json b/docs/package.json
index 2c10eba72..38cebf0f1 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -77,6 +77,7 @@
"react": "19.3.1",
"react-dom": "19.3.1",
"sandpack-vue3": "3.1.12",
- "vue": "^3.5.44"
+ "vue": "^3.5.44",
+ "vue-sonner": "^2.0.9"
}
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f8bc8a4cd..8d5df073b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -212,6 +212,9 @@ importers:
vue:
specifier: ^3.5.44
version: 3.5.44(typescript@6.0.3)
+ vue-sonner:
+ specifier: ^2.0.9
+ version: 2.0.9
devDependencies:
'@docsearch/js':
specifier: 3.8.2
@@ -13348,6 +13351,20 @@ packages:
vite:
optional: true
+ vue-sonner@2.0.9:
+ resolution: {integrity: sha512-i6BokNlNDL93fpzNxN/LZSn6D6MzlO+i3qXt6iVZne3x1k7R46d5HlFB4P8tYydhgqOrRbIZEsnRd3kG7qGXyw==}
+ peerDependencies:
+ '@nuxt/kit': ^4.0.3
+ '@nuxt/schema': ^4.0.3
+ nuxt: ^4.0.3
+ peerDependenciesMeta:
+ '@nuxt/kit':
+ optional: true
+ '@nuxt/schema':
+ optional: true
+ nuxt:
+ optional: true
+
vue-tsc@3.3.11:
resolution: {integrity: sha512-gOb0B9rtU2+f1dszwPqSH5kAieIF9ReeLhD3kSRNHv5WZZUQz/JdVXW0RTdqhNTMlQkqKzrTTviqKr/4FYZraQ==}
hasBin: true
@@ -27098,6 +27115,8 @@ snapshots:
- unloader
- webpack
+ vue-sonner@2.0.9: {}
+
vue-tsc@3.3.11(typescript@6.0.3):
dependencies:
'@volar/typescript': 2.4.28(typescript@6.0.3)