UNPKG

@geezee/react-ui

Version:

Modern and minimalist React UI library.

145 lines (122 loc) 3.76 kB
import deDE from '@geezee/rc-picker/lib/locale/de_DE'; import enUS from '@geezee/rc-picker/lib/locale/en_US'; import zhCN from '@geezee/rc-picker/lib/locale/zh_CN'; import 'dayjs/locale/de'; var langPlaceholder = { 'en-US': { placeholder: 'Select date', yearPlaceholder: 'Select year', quarterPlaceholder: 'Select quarter', monthPlaceholder: 'Select month', weekPlaceholder: 'Select week', rangePlaceholder: ['Start date', 'End date'], rangeYearPlaceholder: ['Start year', 'End year'], rangeMonthPlaceholder: ['Start month', 'End month'], rangeWeekPlaceholder: ['Start week', 'End week'], timePlaceholder: 'Select time', timeRangePlaceholder: ['Start time', 'End time'] }, 'de-DE': { placeholder: 'Datum wählen', yearPlaceholder: 'Jahr wählen', quarterPlaceholder: 'Quartal wählen', monthPlaceholder: 'Monat wählen', weekPlaceholder: 'Woche wählen', rangePlaceholder: ['Startdatum', 'Enddatum'], rangeYearPlaceholder: ['Startjahr', 'Endjahr'], rangeMonthPlaceholder: ['Startmonat', 'Endmonat'], rangeWeekPlaceholder: ['Startwoche', 'Endwoche'], timePlaceholder: 'Zeit wählen', timeRangePlaceholder: ['Startzeit', 'Endzeit'] }, 'zh-CN': { placeholder: '请选择日期', yearPlaceholder: '请选择年份', quarterPlaceholder: '请选择季度', monthPlaceholder: '请选择月份', weekPlaceholder: '请选择周', rangePlaceholder: ['开始日期', '结束日期'], rangeYearPlaceholder: ['开始年份', '结束年份'], rangeMonthPlaceholder: ['开始月份', '结束月份'], rangeWeekPlaceholder: ['开始周', '结束周'], timePlaceholder: '请选择时间', timeRangePlaceholder: ['开始时间', '结束时间'] } }; export var normalizeLocaleString = function normalizeLocaleString(locale) { switch (locale) { case 'en-US': case 'en_US': case 'en': case 'english': return 'en-US'; case 'zh-CN': case 'zh_CN': case 'zh': case '中文': case '中文简体': return 'zh-CN'; case 'de-DE': return 'de-DE'; default: return 'en-US'; } }; // get date picker locale export var getLocale = function getLocale(locale) { switch (normalizeLocaleString(locale)) { case 'zh-CN': return zhCN; case 'de-DE': return deDE; // TODO add more locale default: return enUS; } }; // get picker placeholder text export function getPlaceholder(picker, locale, customizePlaceholder) { if (customizePlaceholder !== undefined) { return customizePlaceholder; } var lang = langPlaceholder[normalizeLocaleString(locale)]; switch (picker) { case 'year': return lang.yearPlaceholder; case 'quarter': return lang.quarterPlaceholder; case 'month': return lang.monthPlaceholder; case 'week': return lang.weekPlaceholder; case 'time': return lang.timePlaceholder; default: return lang.placeholder; } } // get range placeholder text export function getRangePlaceholder(picker, locale, customizePlaceholder) { if (customizePlaceholder !== undefined) { return customizePlaceholder; } var lang = langPlaceholder[normalizeLocaleString(locale)]; switch (locale) { case 'zh-CN': case 'zh': lang = langPlaceholder['zh-CN']; break; case 'de-DE': lang = langPlaceholder['de-DE']; break; } switch (picker) { case 'year': return lang.rangeYearPlaceholder; case 'month': return lang.rangeMonthPlaceholder; case 'week': return lang.rangeWeekPlaceholder; case 'time': return lang.timeRangePlaceholder; default: return lang.rangePlaceholder; } }