| /** | |
| * Visitor-language helpers. | |
| * | |
| * Only the example prompt and sentence segmentation follow the browser's | |
| * language; the interface itself stays in English. | |
| */ | |
| const FALLBACK = 'en'; | |
| /** The visitor's preferred language tag, e.g. "ko-KR". */ | |
| export function browserLocale(): string { | |
| if (typeof navigator === 'undefined') return FALLBACK; | |
| return navigator.language || FALLBACK; | |
| } | |
| /** Base language subtag, e.g. "ko". */ | |
| export function browserLanguage(): string { | |
| return browserLocale().toLowerCase().split('-')[0]; | |
| } | |
| export function isKorean(): boolean { | |
| return browserLanguage() === 'ko'; | |
| } | |
| /** Example prompt to start from, in the visitor's language. */ | |
| export function defaultPrompt(): string { | |
| return isKorean() | |
| ? '๊ฐ์๊ณผ ๊ด๋ จ๋ ์์ ์ ํํธ์ ์จ์ค.' | |
| : 'Write a short poem about autumn.'; | |
| } | |