From 82fb7ebe23efce2a4f400544d214a6fe694d9e50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Atakan=20C=2E=20CO=C5=9EKUNDERE?= Date: Wed, 23 Oct 2024 09:52:09 +0300 Subject: [PATCH] Added locales for Azerbaijani language --- README.md | 1 + src/index.ts | 2 ++ src/locales/az.ts | 73 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 76 insertions(+) create mode 100644 src/locales/az.ts diff --git a/README.md b/README.md index b9e17bf..793922b 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,7 @@ setLocale(fr); Locales implemented: +- `az` - `ar` - `bg` - `bs` diff --git a/src/index.ts b/src/index.ts index 584a88e..151ad9c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,3 +1,4 @@ +import * as az from "./locales/az" import * as ar from './locales/ar'; import * as bg from './locales/bg'; import * as bs from './locales/bs'; @@ -29,6 +30,7 @@ import * as zhtw from './locales/zhtw'; import * as ro from './locales/ro'; export { + az, ar, bg, bs, diff --git a/src/locales/az.ts b/src/locales/az.ts new file mode 100644 index 0000000..577058c --- /dev/null +++ b/src/locales/az.ts @@ -0,0 +1,73 @@ +/*eslint-disable no-template-curly-in-string*/ + +import { printValue, LocaleObject } from 'yup'; + +// Based on https://github.com/jquense/yup/blob/b940eef48eb7456622ae384d0ffa7363d4fbad25/src/locale.ts +export const mixed: LocaleObject['mixed'] = { + default: '${path} etibarsızdır.', + required: '${path} tələb olunan sahədir', + defined: '${path} müəyyən edilməlidir', + notNull: '${path} boş ola bilməz', + oneOf: '${path} aşağıdakı dəyərlərdən biri olmalıdır: ${values}', + notOneOf: '${path} aşağıdakı dəyərlərdən biri olmamalıdır: ${values}', + notType: ({ path, type, value, originalValue }) => { + const isCast = originalValue != null && originalValue !== value; + let msg = + `${path} növü \`${type}\` olmalıdır, ` + + `Amma son dəyər belə idi: \`${printValue(value, true)}\`` + + (isCast + ? ` (\`${printValue(originalValue, true)}\` dəyərindən çevrilmişdir).` + : '.'); + + if (value === null) { + msg += + `\n Əgər "NULL" boş bir dəyər kimi nəzərdə tutulubsa, sxemi belə işarələdiyinizdən əmin olun` + + ' `.nullable()`'; + } + + return msg; + }, +}; + +export const string: LocaleObject['string'] = { + length: '${path} dəqiq olaraq ${length} simvol olmalıdır', + min: '${path} ən azı ${min} simvol olmalıdır', + max: '${path} ən çox ${max} simvol olmalıdır', + matches: '${path} aşağıdakı ilə uyğun olmalıdır: "${regex}"', + email: '${path} keçərli bir e -poçt olmalıdır', + url: '${path} keçərli bir URL olmalıdır', + uuid: '${path} keçərli bir UUID olmalıdır', + trim: '${path} kəsilmiş olmalıdır', + lowercase: '${path} kiçik hərf olmalıdır', + uppercase: '${path} böyük hərf olmalıdır', +}; + +export const number: LocaleObject['number'] = { + min: "${path} ${min} -dən böyük və ya bərabər olmalıdır.", + max: "${path} ${max} -dən kiçik və ya bərabər olmalıdır.", + lessThan: "${path} ${less} -dən az olmalıdır", + moreThan: "${path} ${more} -dən çox olmalıdır", + positive: '${path} müsbət bir ədəd olmalıdır', + negative: '${path} mənfi bir ədəd olmalıdır', + integer: '${path} tam ədəd olmalıdır', +}; + +export const date: LocaleObject['date'] = { + min: "${path} sahə ${min} -dən sonra olmalıdır", + max: "${path} sahə ${max} -dən əvvəl olmalıdır.", +}; + +export const boolean: LocaleObject['boolean'] = { + isValue: '${path} sahə ${value} olmalıdır', +}; + +export const object: LocaleObject['object'] = { + noUnknown: + '${path} sahə, təyin olunmamış açarlara sahib ola bilməz', +}; + +export const array: LocaleObject['array'] = { + min: '${path} sahənin ən azı ${min} elementi olmalıdır', + max: '${path} sahənin ${max} elementdən az və ya ona bərabər olması gərəkir', + length: '${path} ${length} elementə malik olmalıdır', +}; \ No newline at end of file