mirror of
https://github.com/vercel/components.build.git
synced 2026-09-14 20:06:39 +08:00
55fae375a4
* Update Geistdocs * Update geistdocs.tsx * Run translation script * Delete toc.tsx * Update route.ts * Update route.ts
52 lines
1.2 KiB
TypeScript
52 lines
1.2 KiB
TypeScript
import { createTokenizer as createTokenizerJapanese } from "@orama/tokenizers/japanese";
|
|
import { createTokenizer as createTokenizerMandarin } from "@orama/tokenizers/mandarin";
|
|
import { createFromSource } from "fumadocs-core/search/server";
|
|
import { translations } from "@/geistdocs";
|
|
import { source } from "@/lib/geistdocs/source";
|
|
|
|
const localeMap: {
|
|
[key: string]: {
|
|
language?: string;
|
|
components?: {
|
|
tokenizer:
|
|
| ReturnType<typeof createTokenizerMandarin>
|
|
| ReturnType<typeof createTokenizerJapanese>;
|
|
};
|
|
search?: {
|
|
threshold: number;
|
|
tolerance: number;
|
|
};
|
|
};
|
|
} = Object.fromEntries(
|
|
Object.entries(translations).map(([locale, translation]) => [
|
|
locale,
|
|
{ language: translation.displayName.toLowerCase() },
|
|
])
|
|
);
|
|
|
|
if ("cn" in translations) {
|
|
localeMap.cn = {
|
|
components: {
|
|
tokenizer: createTokenizerMandarin(),
|
|
},
|
|
search: {
|
|
threshold: 0,
|
|
tolerance: 0,
|
|
},
|
|
};
|
|
}
|
|
|
|
if ("jp" in translations) {
|
|
localeMap.jp = {
|
|
components: {
|
|
tokenizer: createTokenizerJapanese(),
|
|
},
|
|
search: {
|
|
threshold: 0,
|
|
tolerance: 0,
|
|
},
|
|
};
|
|
}
|
|
|
|
export const { GET } = createFromSource(source, { localeMap });
|