feat: add Uzbek(latn) locale (#47899)

* feat: add Uzbek(latn) locale

* size-limit

* Update docs/react/i18n.zh-CN.md

Co-authored-by: afc163 <afc163@gmail.com>
Signed-off-by: Amumu <yoyo837@hotmail.com>

---------

Signed-off-by: Amumu <yoyo837@hotmail.com>
Co-authored-by: afc163 <afc163@gmail.com>
Co-authored-by: lijianan <574980606@qq.com>
This commit is contained in:
Amumu 2024-03-16 09:30:36 +08:00 committed by GitHub
parent 7247c3b035
commit e088adf0da
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 5469 additions and 0 deletions

View File

@ -0,0 +1,3 @@
import uzUZ from '../../date-picker/locale/uz_UZ';
export default uzUZ;

View File

@ -0,0 +1,28 @@
import CalendarLocale from 'rc-picker/lib/locale/uz_UZ';
import TimePickerLocale from '../../time-picker/locale/uz_UZ';
import type { PickerLocale } from '../generatePicker';
// Merge into a locale object
const locale: PickerLocale = {
lang: {
placeholder: 'Sanani tanlang',
yearPlaceholder: 'Yilni tanlang',
quarterPlaceholder: 'Chorakni tanlang',
monthPlaceholder: 'Oyni tanlang',
weekPlaceholder: 'Haftani tanlang',
rangePlaceholder: ['Boshlanish sanasi', 'Tugallanish sanasi'],
rangeYearPlaceholder: ['Boshlanish yili', 'Tugallanish yili'],
rangeMonthPlaceholder: ['Boshlanish oyi', 'Tugallanish oyi'],
rangeWeekPlaceholder: ['Boshlanish haftasi', 'Tugallanish haftasi'],
...CalendarLocale,
},
timePickerLocale: {
...TimePickerLocale,
},
};
// All settings at:
// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json
export default locale;

File diff suppressed because it is too large Load Diff

View File

@ -61,6 +61,7 @@ import 'dayjs/locale/tr';
import 'dayjs/locale/uk';
import 'dayjs/locale/ur';
import 'dayjs/locale/vi';
import 'dayjs/locale/uz-latn';
import 'dayjs/locale/zh-cn';
import 'dayjs/locale/zh-hk';
import 'dayjs/locale/zh-tw';
@ -151,6 +152,7 @@ import zhCN from '../../locale/zh_CN';
import zhHK from '../../locale/zh_HK';
import zhTW from '../../locale/zh_TW';
import myMM from '../../locale/my_MM';
import uzUZ from '../../locale/uz_UZ';
dayjs.extend(preParsePostFormat);
@ -224,6 +226,7 @@ const locales = [
zhTW,
urPK,
myMM,
uzUZ,
];
const { Option } = Select;

149
components/locale/uz_UZ.ts Normal file
View File

@ -0,0 +1,149 @@
/* eslint-disable no-template-curly-in-string */
import Pagination from 'rc-pagination/lib/locale/uz_UZ';
import type { Locale } from '.';
import Calendar from '../calendar/locale/uz_UZ';
import DatePicker from '../date-picker/locale/uz_UZ';
import TimePicker from '../time-picker/locale/uz_UZ';
const typeTemplate: string = '${label} ${type} turi emas';
const localeValues: Locale = {
// NOTE: In
// https://github.com/react-component/picker/blob/master/src/locale/uz_UZ.ts
// and
// https://github.com/react-component/pagination/blob/master/src/locale/uz_UZ.ts
// both implemented as uz-latn Uzbek
locale: 'uz-latn',
Pagination,
DatePicker,
TimePicker,
Calendar,
global: {
placeholder: 'Iltimos tanlang',
},
Table: {
filterTitle: 'Filtr',
filterConfirm: 'OK',
filterReset: 'Tshlash',
filterEmptyText: 'Filtrlarsiz',
filterCheckall: 'Barcha elementlarni tanlash',
filterSearchPlaceholder: 'Filtrlarda qidiruv',
emptyText: "Ma'lumotlar topilmadi",
selectAll: 'Barchasini tanlash',
selectInvert: 'Tanlovni aylantirish',
selectNone: "Barcha ma'lumotlarni tozalang",
selectionAll: "Barcha ma'lumotlarni tanlash",
sortTitle: 'Tartiblash',
expand: 'Satirni yozish',
collapse: "Satirni yig'ish",
triggerDesc: 'Kamayish tartibida tartiblash uchun bosing',
triggerAsc: "O'sish tartibida tartiblash uchun bosing",
cancelSort: 'Tartiblshni rad etish uchun bosing',
},
Tour: {
Next: "So'ngra",
Previous: 'Ortga',
Finish: 'Tugatish',
},
Modal: {
okText: 'OK',
cancelText: "O'chirish",
justOkText: 'OK',
},
Popconfirm: {
okText: 'OK',
cancelText: 'Bekor qilish',
},
Transfer: {
titles: ['', ''],
searchPlaceholder: 'Qidiruv',
itemUnit: 'элем.',
itemsUnit: 'элем.',
remove: 'Oʻchirish',
selectAll: "Barch ma'lumotlarni tanlash",
selectCurrent: 'Joriy sahifani tanlash',
selectInvert: 'Tanlovni aylantirish',
removeAll: "Barcha ma'lumotlarni o'chirish",
removeCurrent: "Joriy sahifani o'chirish",
},
Upload: {
uploading: 'Yuklanish...',
removeFile: "Faylni o'chirish",
uploadError: 'Yuklashda xatolik yuz berdi',
previewFile: "Faylni oldindan ko'rish",
downloadFile: 'Faylni yuklash',
},
Empty: {
description: 'Maʼlumot topilmadi',
},
Icon: {
icon: 'ikonka',
},
Text: {
edit: 'Tahrirlash',
copy: 'Nusxalash',
copied: 'Nusxalandi',
expand: 'Ochib qoyish',
},
Form: {
optional: '(shart emas)',
defaultValidateMessages: {
default: '${label} maydonini tekshirishda xatolik yuz berdi',
required: 'Iltimos, ${label} kiriting',
enum: '${label}, [${enum}] dan biri boʻlishi kerak',
whitespace: '${label} boʻsh boʻlishi mumkin emas',
date: {
format: '${label} toʻgʻri sana formatida emas',
parse: '${label} sanaga aylantirilmaydi',
invalid: "${label} tog'ri sana emas",
},
types: {
string: typeTemplate,
method: typeTemplate,
array: typeTemplate,
object: typeTemplate,
number: typeTemplate,
date: typeTemplate,
boolean: typeTemplate,
integer: typeTemplate,
float: typeTemplate,
regexp: typeTemplate,
email: typeTemplate,
url: typeTemplate,
hex: typeTemplate,
},
string: {
len: '${label}, ${len} ta belgidan iborat boʻlishi kerak',
min: '${label} должна быть больше или равна ${min} символов',
max: '${label}, ${max} belgidan katta yoki teng boʻlishi kerak',
range: '${label} uzunligi ${min}-${max} belgilar orasida boʻlishi kerak',
},
number: {
len: '${label}, ${len} ga teng boʻlishi kerak',
min: '${label}, ${min} dan katta yoki teng boʻlishi kerak',
max: '${label}, ${max} dan kichik yoki teng boʻlishi kerak',
range: '${label}, ${min}-${max} orasida boʻlishi kerak',
},
array: {
len: '${label} elementlari soni ${len} ga teng boʻlishi kerak',
min: '${label} elementlari soni ${min} dan katta yoki teng boʻlishi kerak',
max: '${label} elementlari soni ${max} dan kam yoki teng boʻlishi kerak',
range: '${label} elementlari soni ${min} va ${max} orasida boʻlishi kerak',
},
pattern: {
mismatch: '${label}, ${pattern} andazasiga mos emas',
},
},
},
Image: {
preview: 'Korib chiqish',
},
QRCode: {
expired: 'QR-kod eskirgan',
refresh: 'Yangilash',
},
};
export default localeValues;

View File

@ -0,0 +1,8 @@
import type { TimePickerLocale } from '../index';
const locale: TimePickerLocale = {
placeholder: 'Vaqtni tanlang',
rangePlaceholder: ['Boshlanish vaqti', 'Tugallanish vaqti'],
};
export default locale;

View File

@ -96,6 +96,7 @@ The following languages are currently supported:
| Turkmen | tk_TK |
| Urdu (Pakistan) | ur_PK |
| Ukrainian | uk_UA |
| Uzbek(latn) | uz_UZ |
| Vietnamese | vi_VN |
| Chinese (Simplified) | zh_CN |
| Chinese (Traditional) | zh_HK |

View File

@ -93,6 +93,7 @@ return (
| 土库曼 | tk_TK |
| 乌尔都语 (巴基斯坦) | ur_PK |
| 乌克兰语 | uk_UA |
| 乌兹别克语(拉丁字母) | uz_UZ |
| 越南语 | vi_VN |
| 简体中文 | zh_CN |
| 繁体中文(中国香港) | zh_HK |