diff --git a/src/components/LanguageToggle.tsx b/src/components/LanguageToggle.tsx index cc7b3fd..c47456c 100644 --- a/src/components/LanguageToggle.tsx +++ b/src/components/LanguageToggle.tsx @@ -26,7 +26,8 @@ const languages: LanguageOption[] = [ { code: 'nl', name: 'Dutch', nativeName: 'Nederlands', flag: '๐Ÿ‡ณ๐Ÿ‡ฑ' }, { code: 'pl', name: 'Polish', nativeName: 'Polski', flag: '๐Ÿ‡ต๐Ÿ‡ฑ' }, { code: 'ru', name: 'Russian', nativeName: 'ะ ัƒััะบะธะน', flag: '๐Ÿ‡ท๐Ÿ‡บ' }, - { code: 'ko', name: 'Korean', nativeName: 'ํ•œ๊ตญ์–ด', flag: '๐Ÿ‡ฐ๐Ÿ‡ต๐Ÿ‡ฐ๐Ÿ‡ท' }, + { code: 'ko', name: 'Korean', nativeName: 'ํ•œ๊ตญ์–ด', flag: '๐Ÿ‡ฐ๐Ÿ‡ท' }, + { code: 'ko-KP', name: 'Korean (North)', nativeName: '์กฐ์„ ์–ด', flag: '๐Ÿ‡ฐ๐Ÿ‡ต' }, { code: 'th', name: 'Thai', nativeName: 'เน„เธ—เธข', flag: '๐Ÿ‡น๐Ÿ‡ญ' }, { code: 'ja', name: 'Japanese', nativeName: 'ๆ—ฅๆœฌ่ชž', flag: '๐Ÿ‡ฏ๐Ÿ‡ต' }, ]; diff --git a/src/contexts/language.ts b/src/contexts/language.ts index fb908a2..3881d84 100644 --- a/src/contexts/language.ts +++ b/src/contexts/language.ts @@ -7,7 +7,7 @@ import en from '@/i18n/en'; * `react-refresh/only-export-components` rule. */ -export type Language = 'en' | 'es' | 'th' | 'ja' | 'pt' | 'fr' | 'de' | 'it' | 'nl' | 'pl' | 'ru' | 'ko'; +export type Language = 'en' | 'es' | 'th' | 'ja' | 'pt' | 'fr' | 'de' | 'it' | 'nl' | 'pl' | 'ru' | 'ko' | 'ko-KP'; type TranslationKey = string; type TranslationValue = string | { [key: string]: TranslationValue }; @@ -49,6 +49,8 @@ export const LANGUAGE_LOADERS: Record Promise> = { pl: () => import('@/i18n/pl').then((m) => m.default), ru: () => import('@/i18n/ru').then((m) => m.default), ko: () => import('@/i18n/ko').then((m) => m.default), + // North Korean option reuses the same Korean dictionary (mutually intelligible). + 'ko-KP': () => import('@/i18n/ko').then((m) => m.default), }; /** Get a nested value from an object using dot notation (`nav.home`). */ diff --git a/src/lib/dateFnsI18n.ts b/src/lib/dateFnsI18n.ts index ccc3b6d..a6d1dd6 100644 --- a/src/lib/dateFnsI18n.ts +++ b/src/lib/dateFnsI18n.ts @@ -71,7 +71,7 @@ export function setDateLocale(language: Language): void { } else if (language === 'ru') { activeLocale = ruLocale; activeCode = 'ru-RU'; - } else if (language === 'ko') { + } else if (language === 'ko' || language === 'ko-KP') { activeLocale = koLocale; activeCode = 'ko-KR'; } else { diff --git a/src/pages/CreateTourPage.tsx b/src/pages/CreateTourPage.tsx index bd4fd41..0c73eb6 100644 --- a/src/pages/CreateTourPage.tsx +++ b/src/pages/CreateTourPage.tsx @@ -77,7 +77,8 @@ const ALL_LANGUAGES = [ { code: 'eu', label: 'Basque', flag: '๐Ÿด' }, { code: 'gl', label: 'Galician', flag: '๐Ÿด' }, // Asian - { code: 'ko', label: 'Korean', flag: '๐Ÿ‡ฐ๐Ÿ‡ต๐Ÿ‡ฐ๐Ÿ‡ท' }, + { code: 'ko', label: 'Korean', flag: '๐Ÿ‡ฐ๐Ÿ‡ท' }, + { code: 'ko-KP', label: 'Korean (North)', flag: '๐Ÿ‡ฐ๐Ÿ‡ต' }, { code: 'vi', label: 'Vietnamese', flag: '๐Ÿ‡ป๐Ÿ‡ณ' }, { code: 'th', label: 'Thai', flag: '๐Ÿ‡น๐Ÿ‡ญ' }, { code: 'id', label: 'Indonesian', flag: '๐Ÿ‡ฎ๐Ÿ‡ฉ' },