initial commit - code moved to separate repo
This commit is contained in:
115
components/x-date-pickers/locales/utils/pickersLocaleTextApi.ts
Normal file
115
components/x-date-pickers/locales/utils/pickersLocaleTextApi.ts
Normal file
@ -0,0 +1,115 @@
|
||||
import { TimeViewWithMeridiem } from '../../internals/models';
|
||||
import { DateView, TimeView, MuiPickersAdapter, FieldSectionContentType } from '../../models';
|
||||
|
||||
export interface PickersComponentSpecificLocaleText {
|
||||
/**
|
||||
* Title displayed in the toolbar of the `DatePicker` and its variants.
|
||||
* Will be overridden by the `toolbarTitle` translation key passed directly on the picker.
|
||||
*/
|
||||
datePickerToolbarTitle: string;
|
||||
/**
|
||||
* Title displayed in the toolbar of the `TimePicker` and its variants.
|
||||
* Will be overridden by the `toolbarTitle` translation key passed directly on the picker.
|
||||
*/
|
||||
timePickerToolbarTitle: string;
|
||||
/**
|
||||
* Title displayed in the toolbar of the `DateTimePicker` and its variants.
|
||||
* Will be overridden by the `toolbarTitle` translation key passed directly on the picker.
|
||||
*/
|
||||
dateTimePickerToolbarTitle: string;
|
||||
/**
|
||||
* Title displayed in the toolbar of the `DateRangePicker` and its variants.
|
||||
* Will be overridden by the `toolbarTitle` translation key passed directly on the picker.
|
||||
*/
|
||||
dateRangePickerToolbarTitle: string;
|
||||
}
|
||||
|
||||
export interface PickersComponentAgnosticLocaleText<TDate> {
|
||||
// Calendar navigation
|
||||
previousMonth: string;
|
||||
nextMonth: string;
|
||||
|
||||
// Calendar week number
|
||||
calendarWeekNumberHeaderLabel: string;
|
||||
calendarWeekNumberHeaderText: string;
|
||||
calendarWeekNumberAriaLabelText: (weekNumber: number) => string;
|
||||
calendarWeekNumberText: (weekNumber: number) => string;
|
||||
|
||||
// View navigation
|
||||
openPreviousView: string;
|
||||
openNextView: string;
|
||||
calendarViewSwitchingButtonAriaLabel: (currentView: DateView) => string;
|
||||
|
||||
// DateRange placeholders
|
||||
start: string;
|
||||
end: string;
|
||||
|
||||
// Action bar
|
||||
cancelButtonLabel: string;
|
||||
clearButtonLabel: string;
|
||||
okButtonLabel: string;
|
||||
todayButtonLabel: string;
|
||||
|
||||
// Clock labels
|
||||
clockLabelText: (view: TimeView, time: TDate | null, adapter: MuiPickersAdapter<TDate>) => string;
|
||||
hoursClockNumberText: (hours: string) => string;
|
||||
minutesClockNumberText: (minutes: string) => string;
|
||||
secondsClockNumberText: (seconds: string) => string;
|
||||
|
||||
// Digital clock labels
|
||||
selectViewText: (view: TimeViewWithMeridiem) => string;
|
||||
|
||||
// Open picker labels
|
||||
openDatePickerDialogue: (date: TDate | null, utils: MuiPickersAdapter<TDate>) => string;
|
||||
openTimePickerDialogue: (date: TDate | null, utils: MuiPickersAdapter<TDate>) => string;
|
||||
|
||||
// Clear button label
|
||||
fieldClearLabel: string;
|
||||
|
||||
// Table labels
|
||||
timeTableLabel: string;
|
||||
dateTableLabel: string;
|
||||
|
||||
// Field section placeholders
|
||||
fieldYearPlaceholder: (params: { digitAmount: number; format: string }) => string;
|
||||
fieldMonthPlaceholder: (params: {
|
||||
contentType: FieldSectionContentType;
|
||||
format: string;
|
||||
}) => string;
|
||||
fieldDayPlaceholder: (params: { format: string }) => string;
|
||||
fieldWeekDayPlaceholder: (params: {
|
||||
contentType: FieldSectionContentType;
|
||||
format: string;
|
||||
}) => string;
|
||||
fieldHoursPlaceholder: (params: { format: string }) => string;
|
||||
fieldMinutesPlaceholder: (params: { format: string }) => string;
|
||||
fieldSecondsPlaceholder: (params: { format: string }) => string;
|
||||
fieldMeridiemPlaceholder: (params: { format: string }) => string;
|
||||
}
|
||||
|
||||
export interface PickersLocaleText<TDate>
|
||||
extends PickersComponentAgnosticLocaleText<TDate>,
|
||||
PickersComponentSpecificLocaleText { }
|
||||
|
||||
export type PickersInputLocaleText<TDate> = Partial<PickersLocaleText<TDate>>;
|
||||
|
||||
/**
|
||||
* Translations that can be provided directly to the picker components.
|
||||
* It contains some generic translations like `toolbarTitle`
|
||||
* which will be dispatched to various translations keys in `PickersLocaleText`, depending on the pickers received them.
|
||||
*/
|
||||
export interface PickersInputComponentLocaleText<TDate>
|
||||
extends Partial<PickersComponentAgnosticLocaleText<TDate>> {
|
||||
/**
|
||||
* Title displayed in the toolbar of this picker.
|
||||
* Will override the global translation keys like `datePickerToolbarTitle` passed to the `LocalizationProvider`.
|
||||
*/
|
||||
toolbarTitle?: string;
|
||||
}
|
||||
|
||||
export type PickersTranslationKeys = keyof PickersLocaleText<any>;
|
||||
|
||||
export type LocalizedComponent<
|
||||
TDate,
|
||||
Props extends { localeText?: PickersInputComponentLocaleText<TDate> },
|
||||
> = Omit<Props, 'localeText'> & { localeText?: PickersInputLocaleText<TDate> };
|
Reference in New Issue
Block a user