Skip to content

Commit a475334

Browse files
nusrLukasTy
authored andcommitted
[l10n] Add Chinese (Taiwan) (zh-TW) locale (mui#16033)
Signed-off-by: Steve Xu <[email protected]> Co-authored-by: Lukas Tyla <[email protected]>
1 parent 90fb191 commit a475334

File tree

3 files changed

+103
-0
lines changed

3 files changed

+103
-0
lines changed

docs/data/date-pickers/localization/data.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,14 @@
4747
"totalKeysCount": 50,
4848
"githubLink": "https://github.com/mui/mui-x/blob/master/packages/x-date-pickers/src/locales/zhCN.ts"
4949
},
50+
{
51+
"languageTag": "zh-TW",
52+
"importName": "zhTW",
53+
"localeName": "Chinese (Taiwan)",
54+
"missingKeysCount": 0,
55+
"totalKeysCount": 50,
56+
"githubLink": "https://github.com/mui/mui-x/blob/master/packages/x-date-pickers/src/locales/zhTW.ts"
57+
},
5058
{
5159
"languageTag": "hr-HR",
5260
"importName": "hrHR",

packages/x-date-pickers/src/locales/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,5 @@ export * from './urPK';
3636
export * from './viVN';
3737
export * from './zhCN';
3838
export * from './zhHK';
39+
export * from './zhTW';
3940
export * from './utils/pickersLocaleTextApi';
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
import { PickersLocaleText } from './utils/pickersLocaleTextApi';
2+
import { getPickersLocalization } from './utils/getPickersLocalization';
3+
import { TimeViewWithMeridiem } from '../internals/models';
4+
5+
const views: Record<TimeViewWithMeridiem, string> = {
6+
hours: '小時',
7+
minutes: '分鐘',
8+
seconds: '秒',
9+
meridiem: '十二小時制',
10+
};
11+
12+
const zhTWPickers: Partial<PickersLocaleText> = {
13+
// Calendar navigation
14+
previousMonth: '上個月',
15+
nextMonth: '下個月',
16+
17+
// View navigation
18+
openPreviousView: '前一個視圖',
19+
openNextView: '下一個視圖',
20+
calendarViewSwitchingButtonAriaLabel: (view) =>
21+
view === 'year' ? '年視圖已打開,切換為日曆視圖' : '日曆視圖已打開,切換為年視圖',
22+
23+
// DateRange labels
24+
start: '開始',
25+
end: '結束',
26+
startDate: '開始日期',
27+
startTime: '開始時間',
28+
endDate: '結束日期',
29+
endTime: '結束時間',
30+
31+
// Action bar
32+
cancelButtonLabel: '取消',
33+
clearButtonLabel: '清除',
34+
okButtonLabel: '確認',
35+
todayButtonLabel: '今天',
36+
37+
// Toolbar titles
38+
datePickerToolbarTitle: '選擇日期',
39+
dateTimePickerToolbarTitle: '選擇日期和時間',
40+
timePickerToolbarTitle: '選擇時間',
41+
dateRangePickerToolbarTitle: '選擇時間範圍',
42+
43+
// Clock labels
44+
clockLabelText: (view, formattedTime) =>
45+
`選擇 ${views[view]}. ${!formattedTime ? '未選擇時間' : `已選擇${formattedTime}`}`,
46+
hoursClockNumberText: (hours) => `${hours}小時`,
47+
minutesClockNumberText: (minutes) => `${minutes}分鐘`,
48+
secondsClockNumberText: (seconds) => `${seconds}秒`,
49+
50+
// Digital clock labels
51+
selectViewText: (view) => `選擇 ${views[view]}`,
52+
53+
// Calendar labels
54+
calendarWeekNumberHeaderLabel: '週數',
55+
calendarWeekNumberHeaderText: '#',
56+
calendarWeekNumberAriaLabelText: (weekNumber) => `第${weekNumber}週`,
57+
calendarWeekNumberText: (weekNumber) => `${weekNumber}`,
58+
59+
// Open picker labels
60+
openDatePickerDialogue: (formattedDate) =>
61+
formattedDate ? `選擇日期,已選擇${formattedDate}` : '選擇日期',
62+
openTimePickerDialogue: (formattedTime) =>
63+
formattedTime ? `選擇時間,已選擇${formattedTime}` : '選擇時間',
64+
fieldClearLabel: '清除',
65+
66+
// Table labels
67+
timeTableLabel: '選擇時間',
68+
dateTableLabel: '選擇日期',
69+
70+
// Field section placeholders
71+
fieldYearPlaceholder: (params) => 'Y'.repeat(params.digitAmount),
72+
fieldMonthPlaceholder: (params) => (params.contentType === 'letter' ? 'MMMM' : 'MM'),
73+
fieldDayPlaceholder: () => 'DD',
74+
fieldWeekDayPlaceholder: (params) => (params.contentType === 'letter' ? 'EEEE' : 'EE'),
75+
fieldHoursPlaceholder: () => 'hh',
76+
fieldMinutesPlaceholder: () => 'mm',
77+
fieldSecondsPlaceholder: () => 'ss',
78+
fieldMeridiemPlaceholder: () => 'aa',
79+
80+
// View names
81+
year: '年份',
82+
month: '月份',
83+
day: '日期',
84+
weekDay: '星期',
85+
hours: '時',
86+
minutes: '分',
87+
seconds: '秒',
88+
meridiem: '十二小時制',
89+
90+
// Common
91+
empty: '空',
92+
};
93+
94+
export const zhTW = getPickersLocalization(zhTWPickers);

0 commit comments

Comments
 (0)