diff --git a/src/_common b/src/_common index 6e7dece66..becfba8b1 160000 --- a/src/_common +++ b/src/_common @@ -1 +1 @@ -Subproject commit 6e7dece66605fc33704bbc98ef62b7dd4cc243a1 +Subproject commit becfba8b1e450af231fe6ed80b16fcae2d56f27a diff --git a/src/config-provider/context.ts b/src/config-provider/context.ts index 7c376353f..6f7d6ce04 100644 --- a/src/config-provider/context.ts +++ b/src/config-provider/context.ts @@ -2,8 +2,8 @@ import { InjectionKey, ComputedRef } from 'vue'; import _mergeWith from 'lodash/mergeWith'; import merge from 'lodash/merge'; import isArray from 'lodash/isArray'; -import defaultConfig from '../locale/default-config'; -import defaultZhLocale from '../locale/zh_CN'; +import defaultConfig from '../_common/js/global-config/mobile/default-config'; +import defaultZhLocale from '../_common/js/global-config/mobile/locale/zh_CN'; import { GlobalConfigProvider } from './type'; export const defaultGlobalConfig = merge(defaultConfig, defaultZhLocale); diff --git a/src/locale/CONTRIBUTING.md b/src/locale/CONTRIBUTING.md deleted file mode 100644 index d8bcd1898..000000000 --- a/src/locale/CONTRIBUTING.md +++ /dev/null @@ -1,35 +0,0 @@ -# How to add a language pack - -English | [简体中文](./CONTRIBUTING_zh-CN.md) - -Follow these two steps: - -## Add translation language pack - -### Language pack file naming - -Language packs are uniformly named in English. The naming follows the locale regional setting specification and is divided into two parts: language code and region code. The format is `language__country_region`. For example, `en` represents the language code, `US` represents the area code, and the final complete language package name is `en_US`, which represents "English spoken in the United States". Other common locale examples: - -| Area Description | Corresponding Code | -|---|---| -| English | en | -| English - United States | en-US | -| Simplified Chinese | zh-CN | -| Traditional Chinese in Taiwan | zh-TW | -| Singapore Simplified Chinese | zh-SG | -| General Arabic | ar-001 | -| Kuwaiti Arabic | ar-KW | - -Complete language pack naming reference: https://zh.wikipedia.org/wiki/%E5%8C%BA%E5%9F%9F%E8%AE%BE%E7%BD%AE - -### start translating - -A large number of string variables have been extracted from the component for replacement when the language pack is switched. You can refer to [en_US](./locale/en_US.ts) to translate the corresponding language. If you find an unsupported component string variable, please open a new issue for discussion, and implement the language pack after the component is implemented. - -Added new language pack information description in the document: https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/config-provider/config-provider.md. - -After implementing the language pack, you can initiate a PR in the tdesign-mobile-vue repository. - -## About RTL - -There are many languages that follow the writing direction from right to left, such as Arabic, Hebrew, etc., which are not supported in TDesign at present. RTL adaptation may involve the adjustment of the default UI implementation of components. If you need RTL language support Or have experience in RTL adaptation, welcome to discuss in [GitHub discussion](https://github.com/Tencent/tdesign/discussions/343). diff --git a/src/locale/CONTRIBUTING_zh-CN.md b/src/locale/CONTRIBUTING_zh-CN.md deleted file mode 100644 index 29bdc15e7..000000000 --- a/src/locale/CONTRIBUTING_zh-CN.md +++ /dev/null @@ -1,35 +0,0 @@ -# 如何新增语言包 - -[English](./CONTRIBUTING.md) | 简体中文 - -参照以下两个步骤: - -## 新增翻译语言包 - -### 语言包文件命名 - -语言包统一以英文命名,命名遵循 locale 区域设置规范,分为语言编码和地区编码两部分,格式为 `language_CountryRegion`。比如 `en` 表示语言编码,`US` 表示地区编码,最终完整语言包名为 `en_US` 表示“美国讲的英语”。其他常见 locale 例子: - -| 区域描述 | 对应 Code | -| ---------------- | --------- | -| 英语 | en | -| 英语 - 美国 | en_US | -| 简体中文 | zh_CN | -| 台湾地区繁体中文 | zh_TW | -| 新加坡简体中文 | zh_SG | -| 通用阿拉伯语 | ar_001 | -| 科威特阿拉伯语 | ar_KW | - -完整语言包命名参考:https://zh.wikipedia.org/wiki/%E5%8C%BA%E5%9F%9F%E8%AE%BE%E7%BD%AE - -### 着手翻译 - -组件中已经抽取了大量字符串变量,供语言包切换时替换,你可以参考 [en_US](./locale/en_US.ts) 来进行对应语言的翻译工作。如果你发现有未支持的组件字符串变量,请新开一个 issue 讨论,待组件实现后再实现语言包。 - -文档中补充新增语言包信息描述:https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/config-provider/config-provider.md。 - -实现语言包后可以在仓库中发起 PR。 - -## 关于 RTL - -有很多语言遵循由右到左的书写方向,如 阿拉伯语、希伯来语等,目前 TDesign 中还未支持,RTL 适配可能涉及对组件默认 UI 实现的调整,如果你对 RTL 语言支持有需求或者对 RTL 适配有经验,欢迎在 [GitHub discussion](https://github.com/Tencent/tdesign/discussions/343) 讨论。 diff --git a/src/locale/ar_001.ts b/src/locale/ar_001.ts deleted file mode 100644 index ad4bb9797..000000000 --- a/src/locale/ar_001.ts +++ /dev/null @@ -1,89 +0,0 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/ar_001'; - -export default { - actionSheet: { - cancel: 'الإلغاء', - }, - calendar: { - confirm: 'أكد', - title: 'انتقِ التاريخ', - weekdays: ['يوم الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'], - monthTitle: '{شهر واحد} {سنة واحدة}', - months: [ - 'يناير', - 'فبراير', - 'مارس', - 'أبريل', - 'مايو', - 'يونيو', - 'يوليو', - 'أغسطس', - 'سبتمبر', - 'أكتوبر', - 'نوفمبر', - 'ديسمبر', - ], - }, - cascader: { - title: 'العنوان', - placeholder: 'اختر الخيارات', - }, - dropdownMenu: { - reset: 'إعادة الضبط', - confirm: 'أكد', - }, - dateTimePicker: { - title: 'انتقِ التاريخ', - cancel: 'الإلغاء', - confirm: 'أكد', - format: 'DD-MM-YYYY', - yearLabel: 'سنة', - monthLabel: 'الشهر', - dateLabel: 'التاريخ', - hourLabel: 'الساعة', - minuteLabel: 'دقيقة', - secondLabel: 'ثانيا', - }, - picker: { - cancel: 'الإلغاء', - confirm: 'أكد', - }, - pullDownRefresh: { - loadingTexts: ['اسحب للتحديث', 'مرتخية للتجديد', 'منعش', 'اكتمل التحديث'], - }, - rate: { - valueText: '{القيمة} نتيجة', - noValueText: 'لا توجد نقاط', - }, - tabBar: { - newsAriaLabel: 'هناك أخبار جديدة', - moreNewsAriaLabel: 'هناك الكثير من الأخبار السيئة', - haveMoreNewsAriaLabel: 'هناك { قيمة }+ أخبار', - haveNewsAriaLabel: 'هناك { قيمة } أخبار', - }, - table: { - empty: 'البيانات الفارغة', - }, - list: { - loading: 'التحميل...', - loadingMoreText: 'انقر لتحميل المزيد', - pulling: 'اسحب للتحديث...', - loosing: 'مرتخية للتجديد...', - success: 'تم التحديث بنجاح', - }, - upload: { - progress: { - uploadingText: 'جارٍ التحميل...', - waitingText: 'الانتظار', - failText: 'فشل', - successText: 'النجاح', - }, - }, - guide: { - next: 'التالي', - skip: 'تخطي', - finish: 'أنهي', - back: 'العودة', - }, -}; diff --git a/src/locale/ar_KW.ts b/src/locale/ar_KW.ts new file mode 100644 index 000000000..b1cd6cee6 --- /dev/null +++ b/src/locale/ar_KW.ts @@ -0,0 +1,3 @@ +import arKW from '../_common/js/global-config/mobile/locale/ar_KW'; + +export default arKW; diff --git a/src/locale/default-config.ts b/src/locale/default-config.ts deleted file mode 100644 index 5df17586c..000000000 --- a/src/locale/default-config.ts +++ /dev/null @@ -1,3 +0,0 @@ -export default { - classPrefix: 't', -} as const; diff --git a/src/locale/en_US.ts b/src/locale/en_US.ts index a4a69aee9..20a33afd7 100644 --- a/src/locale/en_US.ts +++ b/src/locale/en_US.ts @@ -1,89 +1,3 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/en'; +import enUs from '../_common/js/global-config/mobile/locale/en_US'; -export default { - actionSheet: { - cancel: 'Cancel', - }, - calendar: { - confirm: 'Confirm', - title: 'Select Date', - weekdays: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], - monthTitle: '{month} {year}', - months: [ - 'January', - 'February', - 'March', - 'April', - 'May', - 'June', - 'July', - 'August', - 'September', - 'October', - 'November', - 'December', - ], - }, - cascader: { - title: 'Title', - placeholder: 'Select options', - }, - dropdownMenu: { - reset: 'Reset', - confirm: 'Confirm', - }, - dateTimePicker: { - title: 'Select Date', - cancel: 'Cancel', - confirm: 'Confirm', - format: 'YYYY-MM-DD', - yearLabel: 'Year', - monthLabel: 'Month', - dateLabel: 'Date', - hourLabel: 'Hour', - minuteLabel: 'Minute', - secondLabel: 'Second', - }, - picker: { - cancel: 'Cancel', - confirm: 'Confirm', - }, - pullDownRefresh: { - loadingTexts: ['Pull to refresh', 'Loose to refresh', 'Refreshing ', 'Refresh completed'], - }, - rate: { - valueText: '{value} score', - noValueText: 'No score', - }, - tabBar: { - newsAriaLabel: 'There is new news', - moreNewsAriaLabel: 'There is a lot of news', - haveMoreNewsAriaLabel: 'There are {value}+ news', - haveNewsAriaLabel: 'There are {value} news', - }, - table: { - empty: 'Empty Data', - }, - list: { - loading: 'Loading...', - loadingMoreText: 'Click to load more', - pulling: 'Pull to refresh...', - loosing: 'Loose to refresh...', - success: 'Refresh successful', - }, - upload: { - progress: { - uploadingText: 'Uploading...', - waitingText: 'Waiting', - failText: 'Failed', - successText: 'Success', - }, - }, - guide: { - next: 'Next', - skip: 'Skip', - finish: 'Finish', - back: 'Back', - }, -}; +export default enUs; diff --git a/src/locale/it-it.ts b/src/locale/it-it.ts deleted file mode 100644 index 8c578c902..000000000 --- a/src/locale/it-it.ts +++ /dev/null @@ -1,89 +0,0 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/it-it'; - -export default { - actionSheet: { - cancel: 'Annulla', - }, - calendar: { - confirm: 'Conferma', - title: 'Seleziona Data', - weekdays: ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'], - monthTitle: '{mese} {anno}', - months: [ - 'Gennaio', - 'Febbraio', - 'Marzo', - 'Aprile', - 'Maggio', - 'Giugno', - 'Luglio', - 'Agosto', - 'Settembre', - 'Ottobre', - 'Novembre', - 'Dicembre', - ], - }, - cascader: { - title: 'Titolo', - placeholder: 'Seleziona opzioni', - }, - dropdownMenu: { - reset: 'Reimposta', - confirm: 'Conferma', - }, - dateTimePicker: { - title: 'Seleziona Data', - cancel: 'Annulla', - confirm: 'Conferma', - format: 'DD-MM-YYYY', - yearLabel: 'Anno', - monthLabel: 'Mese', - dateLabel: 'Data', - hourLabel: 'Ora', - minuteLabel: 'Minuto', - secondLabel: 'Secondo', - }, - picker: { - cancel: 'Annulla', - confirm: 'Conferma', - }, - pullDownRefresh: { - loadingTexts: ['Tirare per aggiornare', 'Libera da aggiornare', 'Rinfrescante', 'Aggiornamento completato'], - }, - rate: { - valueText: '{valore} punteggio', - noValueText: 'Nessun punteggio', - }, - tabBar: { - newsAriaLabel: 'Ci sono nuove notizie', - moreNewsAriaLabel: 'Ci sono molte notizie', - haveMoreNewsAriaLabel: 'Ci sono {valore}+ notizie', - haveNewsAriaLabel: 'Ci sono {valore} notizie', - }, - table: { - empty: 'Dati Vuoti', - }, - list: { - loading: 'Caricamento...', - loadingMoreText: 'Fai clic per caricare di più', - pulling: 'Estrai per aggiornare...', - loosing: 'Libera da aggiornare...', - success: 'Aggiorna riuscito', - }, - upload: { - progress: { - uploadingText: 'Invio...', - waitingText: 'Attesa', - failText: 'Fallito', - successText: 'Successo', - }, - }, - guide: { - next: 'Successivo', - skip: 'Salta', - finish: 'Finisci', - back: 'Indietro', - }, -}; diff --git a/src/locale/it_IT.ts b/src/locale/it_IT.ts new file mode 100644 index 000000000..77684cfc1 --- /dev/null +++ b/src/locale/it_IT.ts @@ -0,0 +1,3 @@ +import itIT from '../_common/js/global-config/mobile/locale/it_IT'; + +export default itIT; diff --git a/src/locale/ja.ts b/src/locale/ja.ts deleted file mode 100644 index b5e1d8772..000000000 --- a/src/locale/ja.ts +++ /dev/null @@ -1,76 +0,0 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/ja'; - -export default { - actionSheet: { - cancel: 'キャンセル', - }, - calendar: { - confirm: '確認', - title: '日付の選択', - weekdays: ['日', '月', '火', '水', '木', '金', '土'], - monthTitle: '{month} {year}', - months: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], - }, - cascader: { - title: 'タイトル', - placeholder: 'オプションを選択', - }, - dropdownMenu: { - reset: 'リセット', - confirm: '確認', - }, - dateTimePicker: { - title: '日付を選択', - cancel: 'キャンセル', - confirm: '確認', - format: 'YYYY-MM-DD', - yearLabel: '年', - monthLabel: '月', - dateLabel: '日', - hourLabel: '時', - minuteLabel: '分', - secondLabel: '秒', - }, - picker: { - cancel: 'キャンセル', - confirm: '確認', - }, - pullDownRefresh: { - loadingTexts: ['更新に引っ張ってください', '緩めて更新中', '更新中…', '更新が完了しました'], - }, - rate: { - valueText: '{value} 点', - noValueText: 'スコアなし', - }, - tabBar: { - newsAriaLabel: '新しいニュースがあります', - moreNewsAriaLabel: 'たくさんのニュースがあります', - haveMoreNewsAriaLabel: '{value}+ 件のニュースがあります', - haveNewsAriaLabel: '{value} 件のニュースがあります', - }, - table: { - empty: 'データがありません', - }, - list: { - loading: '読み込み中…', - loadingMoreText: 'もっと見るにはクリックしてください', - pulling: '更新に引っ張ってください…', - loosing: '緩めて更新中…', - success: '更新が成功しました', - }, - upload: { - progress: { - uploadingText: 'アップロード中…', - waitingText: '待機中', - failText: '失敗しました', - successText: '成功しました', - }, - }, - guide: { - next: '次へ', - skip: 'スキップ', - finish: '完了', - back: '戻る', - }, -}; diff --git a/src/locale/ja_JP.ts b/src/locale/ja_JP.ts new file mode 100644 index 000000000..1b8675f66 --- /dev/null +++ b/src/locale/ja_JP.ts @@ -0,0 +1,3 @@ +import jaJP from '../_common/js/global-config/mobile/locale/ja_JP'; + +export default jaJP; diff --git a/src/locale/ko.ts b/src/locale/ko.ts deleted file mode 100644 index a3626e29d..000000000 --- a/src/locale/ko.ts +++ /dev/null @@ -1,76 +0,0 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/ko'; - -export default { - actionSheet: { - cancel: '취소', - }, - calendar: { - confirm: '확인', - title: '날짜 선택', - weekdays: ['일', '월', '화', '수', '목', '금', '토'], - monthTitle: '{month} {year}', - months: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'], - }, - cascader: { - title: '제목', - placeholder: '옵션 선택', - }, - dropdownMenu: { - reset: '초기화', - confirm: '확인', - }, - dateTimePicker: { - title: '날짜 선택', - cancel: '취소', - confirm: '확인', - format: 'YYYY-MM-DD', - yearLabel: '년', - monthLabel: '월', - dateLabel: '일', - hourLabel: '시', - minuteLabel: '분', - secondLabel: '초', - }, - picker: { - cancel: '취소', - confirm: '확인', - }, - pullDownRefresh: { - loadingTexts: ['새로고침을 당겨주세요', '느슨하게 하여 새로 고침', '새로고침 중...', '새로고침 완료'], - }, - rate: { - valueText: '{value}점', - noValueText: '점수 없음', - }, - tabBar: { - newsAriaLabel: '새 뉴스가 있습니다', - moreNewsAriaLabel: '많은 뉴스가 있습니다', - haveMoreNewsAriaLabel: '{value}+건의 뉴스가 있습니다', - haveNewsAriaLabel: '{value}건의 뉴스가 있습니다', - }, - table: { - empty: '빈 데이터', - }, - list: { - loading: '로딩 중...', - loadingMoreText: '더 많은 것을 보시려면 클릭하세요', - pulling: '새로고침을 당겨주세요...', - loosing: '느슨하게 하여 새로 고침...', - success: '새로고침 성공', - }, - upload: { - progress: { - uploadingText: '업로드 중...', - waitingText: '대기 중', - failText: '실패했습니다', - successText: '성공했습니다', - }, - }, - guide: { - next: '다음', - skip: '건너뛰기', - finish: '완료', - back: '뒤로', - }, -}; diff --git a/src/locale/ko_KR.ts b/src/locale/ko_KR.ts new file mode 100644 index 000000000..2277bcd11 --- /dev/null +++ b/src/locale/ko_KR.ts @@ -0,0 +1,3 @@ +import koKR from '../_common/js/global-config/mobile/locale/ko_KR'; + +export default koKR; diff --git a/src/locale/ru.ts b/src/locale/ru.ts deleted file mode 100644 index 9cee12ed2..000000000 --- a/src/locale/ru.ts +++ /dev/null @@ -1,88 +0,0 @@ -import 'dayjs/locale/ru'; - -export default { - actionSheet: { - cancel: 'Отмена', - }, - calendar: { - confirm: 'Подтвердить', - title: 'Выберите дату', - weekdays: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'], - monthTitle: '{month} {year}', - months: [ - 'Январь', - 'Февраль', - 'Март', - 'Апрель', - 'Май', - 'Июнь', - 'Июль', - 'Август', - 'Сентябрь', - 'Октябрь', - 'Ноябрь', - 'Декабрь', - ], - }, - cascader: { - title: 'Название', - placeholder: 'Выберите опцию', - }, - dropdownMenu: { - reset: 'Сброс', - confirm: 'Подтвердить', - }, - dateTimePicker: { - title: 'Выберите время', - cancel: 'Отмена', - confirm: 'Подтвердить', - format: 'DD.MM.YYYY', - yearLabel: 'Год', - monthLabel: 'Месяц', - dateLabel: 'День', - hourLabel: 'Час', - minuteLabel: 'Минута', - secondLabel: 'Секунда', - }, - picker: { - cancel: 'Отмена', - confirm: 'Подтвердить', - }, - pullDownRefresh: { - loadingTexts: ['Потяните вниз для обновления', 'Отпустите для обновления', 'Обновление...', 'Обновление завершено'], - }, - rate: { - valueText: '{value} баллов', - noValueText: 'Без оценки', - }, - tabBar: { - newsAriaLabel: 'Есть новые сообщения', - moreNewsAriaLabel: 'Есть много новых сообщений', - haveMoreNewsAriaLabel: 'Есть {value}+ сообщений', - haveNewsAriaLabel: 'Есть {value} сообщений', - }, - table: { - empty: 'Нет данных', - }, - list: { - loading: 'Загрузка...', - loadingMoreText: 'Нажмите, чтобы загрузить больше', - pulling: 'Потяните, чтобы обновить...', - loosing: 'Отпустите, чтобы обновить...', - success: 'Успешно обновлено', - }, - upload: { - progress: { - uploadingText: 'Загрузка...', - waitingText: 'Ожидание загрузки', - failText: 'Ошибка загрузки', - successText: 'Загрузка завершена', - }, - }, - guide: { - next: 'Далее', - skip: 'Пропустить', - finish: 'Готово', - back: 'Назад', - }, -}; diff --git a/src/locale/ru_RU.ts b/src/locale/ru_RU.ts new file mode 100644 index 000000000..29cb3b935 --- /dev/null +++ b/src/locale/ru_RU.ts @@ -0,0 +1,3 @@ +import ruRU from '../_common/js/global-config/mobile/locale/ru_RU'; + +export default ruRU; diff --git a/src/locale/zh_CN.ts b/src/locale/zh_CN.ts index b14467446..0fd291bc8 100644 --- a/src/locale/zh_CN.ts +++ b/src/locale/zh_CN.ts @@ -1,76 +1,3 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/zh-cn'; +import zhCn from '../_common/js/global-config/mobile/locale/zh_CN'; -export default { - actionSheet: { - cancel: '取消', - }, - calendar: { - title: '请选择日期', - confirm: '确认', - weekdays: ['日', '一', '二', '三', '四', '五', '六'], - monthTitle: '{year} 年 {month}', - months: ['1 月', '2 月', '3 月', '4 月', '5 月', '6 月', '7 月', '8 月', '9 月', '10 月', '11 月', '12 月'], - }, - cascader: { - title: '标题', - placeholder: '选择选项', - }, - dropdownMenu: { - reset: '重置', - confirm: '确定', - }, - dateTimePicker: { - title: '选择时间', - cancel: '取消', - confirm: '确定', - format: 'YYYY-MM-DD', - yearLabel: '年', - monthLabel: '月', - dateLabel: '日', - hourLabel: '时', - minuteLabel: '分', - secondLabel: '秒', - }, - picker: { - cancel: '取消', - confirm: '确认', - }, - pullDownRefresh: { - loadingTexts: ['下拉刷新', '松手刷新', '正在刷新', '刷新完成'], - }, - rate: { - valueText: '{value} 分', - noValueText: '未评分', - }, - tabBar: { - newsAriaLabel: '有新的消息', - moreNewsAriaLabel: '有很多消息', - haveMoreNewsAriaLabel: '有 {value}+ 条消息', - haveNewsAriaLabel: '有 {value} 条消息', - }, - table: { - empty: '暂无数据', - }, - list: { - loading: '加载中...', - loadingMoreText: '点击加载更多', - pulling: '下拉即可刷新...', - loosing: '释放即可刷新...', - success: '刷新成功', - }, - upload: { - progress: { - uploadingText: '上传中...', - waitingText: '待上传', - failText: '上传失败', - successText: '上传成功', - }, - }, - guide: { - next: '下一步', - skip: '跳过', - finish: '完成', - back: '返回', - }, -}; +export default zhCn; diff --git a/src/locale/zh_TW.ts b/src/locale/zh_TW.ts index bd85c7bd2..ae820dd5d 100644 --- a/src/locale/zh_TW.ts +++ b/src/locale/zh_TW.ts @@ -1,76 +1,3 @@ -// 文件有效,为国际化做准备 -import 'dayjs/locale/zh-tw'; +import zh_TW from '../_common/js/global-config/mobile/locale/zh_TW'; -export default { - actionSheet: { - cancel: '取消', - }, - calendar: { - title: '請選擇日期', - confirm: '確認', - weekdays: ['日', '一', '二', '三', '四', '五', '六'], - monthTitle: '{year} 年 {month}', - months: ['1 月', '2 月', '3 月', '4 月', '5 月', '6 月', '7 月', '8 月', '9 月', '10 月', '11 月', '12 月'], - }, - cascader: { - title: '標題', - placeholder: '選擇選項', - }, - dropdownMenu: { - reset: '重置', - confirm: '確定', - }, - dateTimePicker: { - title: '選擇時間', - cancel: '取消', - confirm: '確定', - format: 'YYYY-MM-DD', - yearLabel: '年', - monthLabel: '月', - dateLabel: '日', - hourLabel: '時', - minuteLabel: '分', - secondLabel: '秒', - }, - picker: { - cancel: '取消', - confirm: '確認', - }, - pullDownRefresh: { - loadingTexts: ['下拉刷新', '鬆手刷新', '正在刷新', '刷新完成'], - }, - rate: { - valueText: '{value} 分', - noValueText: '未評分', - }, - tabBar: { - newsAriaLabel: '有新消息', - moreNewsAriaLabel: '有很多消息', - haveMoreNewsAriaLabel: '有 {value}+ 條消息', - haveNewsAriaLabel: '有 {value} 條消息', - }, - table: { - empty: '暫無數據', - }, - list: { - loading: '加載中...', - loadingMoreText: '點擊加載更多', - pulling: '下拉即可刷新...', - loosing: '釋放即可刷新...', - success: '刷新成功', - }, - upload: { - progress: { - uploadingText: '上傳中...', - waitingText: '待上傳', - failText: '上傳失敗', - successText: '上傳成功', - }, - }, - guide: { - next: '下一步', - skip: '跳過', - finish: '完成', - back: '返回', - }, -}; +export default zh_TW;