fuc-new/doc/node_modules/@vuepress-plume/plugin-search/lib/client/composables/index.js
hellcat 6adbc04d4b 1
2025-10-03 17:17:08 +08:00

38 lines
1.2 KiB
JavaScript

import { computed, shallowRef, toRef } from "vue";
import { useRouteLocale } from "vuepress/client";
import { searchIndex } from "@internal/minisearchIndex";
//#region src/client/composables/locale.ts
const defaultLocales = { "/": {
placeholder: "Search",
resetButtonTitle: "Reset search",
backButtonTitle: "Close search",
noResultsText: "No results for",
footer: {
selectText: "to select",
selectKeyAriaLabel: "enter",
navigateText: "to navigate",
navigateUpKeyAriaLabel: "up arrow",
navigateDownKeyAriaLabel: "down arrow",
closeText: "to close",
closeKeyAriaLabel: "escape"
}
} };
function useLocale(locales) {
const localesRef = toRef(locales);
const routeLocale = useRouteLocale();
return computed(() => localesRef.value[routeLocale.value] ?? defaultLocales[routeLocale.value] ?? defaultLocales["/"]);
}
//#endregion
//#region src/client/composables/searchIndex.ts
const searchIndexData = shallowRef(searchIndex);
function useSearchIndex() {
return searchIndexData;
}
if (__VUEPRESS_DEV__ && (import.meta.webpackHot || import.meta.hot)) __VUE_HMR_RUNTIME__.updateSearchIndex = (data) => {
searchIndexData.value = data;
};
//#endregion
export { useLocale, useSearchIndex };