From 6fe709b2216296e0236e54cd43554a08a0105034 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=9Eaziz=20J=C3=BCn=C4=B1s?= <12zhunus@gmail.com> Date: Fri, 31 Mar 2023 21:01:58 +0600 Subject: [PATCH] [l10n] Add Kazakh (kz-KZ) locale (#8451) Co-authored-by: alexandre --- docs/data/date-pickers/localization/data.json | 10 ++- packages/x-date-pickers/src/locales/index.ts | 1 + packages/x-date-pickers/src/locales/kzKZ.ts | 80 +++++++++++++++++++ scripts/x-date-pickers-pro.exports.json | 1 + scripts/x-date-pickers.exports.json | 1 + 5 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 packages/x-date-pickers/src/locales/kzKZ.ts diff --git a/docs/data/date-pickers/localization/data.json b/docs/data/date-pickers/localization/data.json index 3da78ddd3a51..dd39f6a9bd08 100644 --- a/docs/data/date-pickers/localization/data.json +++ b/docs/data/date-pickers/localization/data.json @@ -29,7 +29,7 @@ "localeName": "Danish", "missingKeysCount": 0, "totalKeysCount": 35, - "githubLink": "https://github.com/mui/mui-x/blob/-/packages/x-date-pickers/src/locales/daDK.ts/" + "githubLink": "https://github.com/mui/mui-x/blob/master/packages/x-date-pickers/src/locales/daDK.ts" }, { "languageTag": "nl-NL", @@ -103,6 +103,14 @@ "totalKeysCount": 35, "githubLink": "https://github.com/mui/mui-x/blob/master/packages/x-date-pickers/src/locales/jaJP.ts" }, + { + "languageTag": "kz-KZ", + "importName": "kzKZ", + "localeName": "Kazakh", + "missingKeysCount": 1, + "totalKeysCount": 35, + "githubLink": "https://github.com/mui/mui-x/blob/master/packages/x-date-pickers/src/locales/kzKZ.ts" + }, { "languageTag": "ko-KR", "importName": "koKR", diff --git a/packages/x-date-pickers/src/locales/index.ts b/packages/x-date-pickers/src/locales/index.ts index f4f5837cb249..a26f1aca66a3 100644 --- a/packages/x-date-pickers/src/locales/index.ts +++ b/packages/x-date-pickers/src/locales/index.ts @@ -15,6 +15,7 @@ export * from './svSE'; export * from './itIT'; export * from './zhCN'; export * from './koKR'; +export * from './kzKZ'; export * from './isIS'; export * from './jaJP'; export * from './ukUA'; diff --git a/packages/x-date-pickers/src/locales/kzKZ.ts b/packages/x-date-pickers/src/locales/kzKZ.ts new file mode 100644 index 000000000000..50589f09fd34 --- /dev/null +++ b/packages/x-date-pickers/src/locales/kzKZ.ts @@ -0,0 +1,80 @@ +import { PickersLocaleText } from './utils/pickersLocaleTextApi'; +import { getPickersLocalization } from './utils/getPickersLocalization'; + +// Translation map for Clock Label +const timeViews = { + hours: 'Сағатты', + minutes: 'Минутты', + seconds: 'Секундты', +}; + +const kzKZPickers: Partial> = { + // Calendar navigation + previousMonth: 'Алдыңғы ай', + nextMonth: 'Келесі ай', + + // View navigation + openPreviousView: 'Алдыңғы көріністі ашу', + openNextView: 'Келесі көріністі ашу', + calendarViewSwitchingButtonAriaLabel: (view) => + view === 'year' + ? 'жылдық көріністі ашу, күнтізбе көрінісіне ауысу' + : 'күнтізбе көрінісін ашу, жылдық көрінісіне ауысу', + + // DateRange placeholders + start: 'Бастау', + end: 'Cоңы', + + // Action bar + cancelButtonLabel: 'Бас тарту', + clearButtonLabel: 'Тазарту', + okButtonLabel: 'Ок', + todayButtonLabel: 'Бүгін', + + // Toolbar titles + datePickerToolbarTitle: 'Күнді таңдау', + dateTimePickerToolbarTitle: 'Күн мен уақытты таңдау', + timePickerToolbarTitle: 'Уақытты таңдау', + dateRangePickerToolbarTitle: 'Кезеңді таңдаңыз', + + // Clock labels + clockLabelText: (view, time, adapter) => + `${timeViews[view]} таңдау. ${ + time === null ? 'Уақыт таңдалмаған' : `Таңдалған уақыт ${adapter.format(time, 'fullTime')}` + }`, + hoursClockNumberText: (hours) => `${hours} сағат`, + minutesClockNumberText: (minutes) => `${minutes} минут`, + secondsClockNumberText: (seconds) => `${seconds} секунд`, + + // Calendar labels + calendarWeekNumberHeaderLabel: 'Апта нөмірі', + calendarWeekNumberHeaderText: '№', + calendarWeekNumberAriaLabelText: (weekNumber) => `Апта ${weekNumber}`, + calendarWeekNumberText: (weekNumber) => `${weekNumber}`, + + // Open picker labels + openDatePickerDialogue: (value, utils) => + value !== null && utils.isValid(value) + ? `Күнді таңдаңыз, таңдалған күн ${utils.format(value, 'fullDate')}` + : 'Күнді таңдаңыз', + openTimePickerDialogue: (value, utils) => + value !== null && utils.isValid(value) + ? `Уақытты таңдаңыз, таңдалған уақыт ${utils.format(value, 'fullTime')}` + : 'Уақытты таңдаңыз', + + // Table labels + timeTableLabel: 'уақытты таңдау', + dateTableLabel: 'күнді таңдау', + + // Field section placeholders + fieldYearPlaceholder: (params) => 'Ж'.repeat(params.digitAmount), + fieldMonthPlaceholder: (params) => (params.contentType === 'letter' ? 'AAAA' : 'AA'), + fieldDayPlaceholder: () => 'КК', + // fieldWeekDayPlaceholder: params => params.contentType === 'letter' ? 'EEEE' : 'EE', + fieldHoursPlaceholder: () => 'сс', + fieldMinutesPlaceholder: () => 'мм', + fieldSecondsPlaceholder: () => 'сс', + fieldMeridiemPlaceholder: () => '(т|к)', +}; + +export const kzKZ = getPickersLocalization(kzKZPickers); diff --git a/scripts/x-date-pickers-pro.exports.json b/scripts/x-date-pickers-pro.exports.json index 9626c4ac2798..99629741f3cb 100644 --- a/scripts/x-date-pickers-pro.exports.json +++ b/scripts/x-date-pickers-pro.exports.json @@ -136,6 +136,7 @@ { "name": "itIT", "kind": "Variable" }, { "name": "jaJP", "kind": "Variable" }, { "name": "koKR", "kind": "Variable" }, + { "name": "kzKZ", "kind": "Variable" }, { "name": "LicenseInfo", "kind": "Class" }, { "name": "LocalizationProvider", "kind": "Function" }, { "name": "LocalizationProviderProps", "kind": "Interface" }, diff --git a/scripts/x-date-pickers.exports.json b/scripts/x-date-pickers.exports.json index 50a708637eb1..85e276e530da 100644 --- a/scripts/x-date-pickers.exports.json +++ b/scripts/x-date-pickers.exports.json @@ -102,6 +102,7 @@ { "name": "itIT", "kind": "Variable" }, { "name": "jaJP", "kind": "Variable" }, { "name": "koKR", "kind": "Variable" }, + { "name": "kzKZ", "kind": "Variable" }, { "name": "LocalizationProvider", "kind": "Function" }, { "name": "LocalizationProviderProps", "kind": "Interface" }, { "name": "LocalizedComponent", "kind": "TypeAlias" },