Skip to content

Commit

Permalink
[l10n] Add Ukrainian (uk-UA) locale on the date picker (#6661)
Browse files Browse the repository at this point in the history
Co-authored-by: Alexandre Fauquette <[email protected]>
  • Loading branch information
oleksandr.korol and alexfauquette authored Nov 1, 2022
1 parent 2d782bb commit 099729f
Show file tree
Hide file tree
Showing 5 changed files with 77 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/data/date-pickers/localization/localization.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ If you want to customize some translations on specific component, you can use th
| Swedish | sv-SE | `svSE` |
| Turkish | tr-TR | `trTr` |
| Dutch | nl-NL | `nlNL` |
| Ukrainian | uk-UA | `ukUA` |

You can [find the source](https://github.com/mui/mui-x/tree/HEAD/packages/x-date-pickers/src/locales) in the GitHub repository.

Expand Down
1 change: 1 addition & 0 deletions packages/x-date-pickers/src/locales/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,5 @@ export * from './zhCN';
export * from './koKR';
export * from './isIS';
export * from './jaJP';
export * from './ukUA';
export * from './utils/pickersLocaleTextApi';
73 changes: 73 additions & 0 deletions packages/x-date-pickers/src/locales/ukUA.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
import { PickersLocaleText } from './utils/pickersLocaleTextApi';
import { getPickersLocalization } from './utils/getPickersLocalization';
import { CalendarPickerView } from '../internals/models';

// This object is not Partial<PickersLocaleText> because it is the default values

const ukUAPickers: Partial<PickersLocaleText<any>> = {
// Calendar navigation
previousMonth: 'Попередній місяць',
nextMonth: 'Наступний місяць',

// View navigation
openPreviousView: 'відкрити попередній вигляд',
openNextView: 'відкрити наступний вигляд',
calendarViewSwitchingButtonAriaLabel: (view: CalendarPickerView) =>
view === 'year'
? 'річний вигляд відкрито, перейти до календарного вигляду'
: 'календарний вигляд відкрито, перейти до річного вигляду',
inputModeToggleButtonAriaLabel: (isKeyboardInputOpen: boolean, viewType: 'calendar' | 'clock') =>
isKeyboardInputOpen
? `текстове поле відкрите, перейти до ${viewType} вигляду`
: `${viewType} вигляд наразі відкрито, перейти до текстового поля`,

// DateRange placeholders
start: 'Початок',
end: 'Кінець',

// Action bar
cancelButtonLabel: 'Відміна',
clearButtonLabel: 'Очистити',
okButtonLabel: 'OK',
todayButtonLabel: 'Сьогодні',

// Toolbar titles
datePickerToolbarTitle: 'Вибрати дату',
dateTimePickerToolbarTitle: 'Вибрати дату і час',
timePickerToolbarTitle: 'Вибрати час',
dateRangePickerToolbarTitle: 'Вибрати календарний період',

// Clock labels
clockLabelText: (view, time, adapter) =>
`Select ${view}. ${
time === null ? 'Час не вибраний' : `Вибрано час ${adapter.format(time, 'fullTime')}`
}`,
hoursClockNumberText: (hours) => `${hours} годин`,
minutesClockNumberText: (minutes) => `${minutes} хвилин`,
secondsClockNumberText: (seconds) => `${seconds} секунд`,

// 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) => 'Y'.repeat(params.digitAmount),
fieldMonthPlaceholder: (params) => (params.contentType === 'letter' ? 'MMMM' : 'MM'),
fieldDayPlaceholder: () => 'DD',
fieldHoursPlaceholder: () => 'hh',
fieldMinutesPlaceholder: () => 'mm',
fieldSecondsPlaceholder: () => 'ss',
fieldMeridiemPlaceholder: () => 'aa',
};

export const ukUA = getPickersLocalization(ukUAPickers);
1 change: 1 addition & 0 deletions scripts/x-date-pickers-pro.exports.json
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,7 @@
{ "name": "TimePickerToolbarProps", "kind": "Interface" },
{ "name": "TimeValidationError", "kind": "TypeAlias" },
{ "name": "trTR", "kind": "Variable" },
{ "name": "ukUA", "kind": "Variable" },
{ "name": "Unstable_DateField", "kind": "Variable" },
{ "name": "Unstable_DateTimeField", "kind": "Variable" },
{ "name": "Unstable_DesktopNextDatePicker", "kind": "Variable" },
Expand Down
1 change: 1 addition & 0 deletions scripts/x-date-pickers.exports.json
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,7 @@
{ "name": "TimePickerToolbarProps", "kind": "Interface" },
{ "name": "TimeValidationError", "kind": "TypeAlias" },
{ "name": "trTR", "kind": "Variable" },
{ "name": "ukUA", "kind": "Variable" },
{ "name": "Unstable_DateField", "kind": "Variable" },
{ "name": "Unstable_DateTimeField", "kind": "Variable" },
{ "name": "Unstable_DesktopNextDatePicker", "kind": "Variable" },
Expand Down

0 comments on commit 099729f

Please sign in to comment.