From 1b0a249ad66288ff56675e4db905959ff0079726 Mon Sep 17 00:00:00 2001 From: Divyansh Singh <40380293+brc-dd@users.noreply.github.com> Date: Sun, 16 Apr 2023 20:58:27 +0530 Subject: [PATCH] fix(search): esm interop mark.js import --- src/client/theme-default/components/VPLocalSearchBox.vue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/client/theme-default/components/VPLocalSearchBox.vue b/src/client/theme-default/components/VPLocalSearchBox.vue index d1f9a7d9..0e35321c 100644 --- a/src/client/theme-default/components/VPLocalSearchBox.vue +++ b/src/client/theme-default/components/VPLocalSearchBox.vue @@ -9,7 +9,6 @@ import { useScrollLock, useSessionStorage } from '@vueuse/core' -import Mark from 'mark.js' import MiniSearch, { type SearchResult } from 'minisearch' import { useRouter } from 'vitepress' import { @@ -110,10 +109,11 @@ watch(filterText, () => { enableNoResults.value = false }) -const mark = computed(() => { +const mark = computedAsync(async () => { if (!resultsEl.value) return - return new Mark(resultsEl.value) -}) + const mod = await import('mark.js') + return markRaw(new (mod.default ?? mod)(resultsEl.value)) +}, null) debouncedWatch( () => [searchIndex.value, filterText.value, showDetailedList.value] as const,