Skip to content

Commit

Permalink
Merge pull request #90 from mitkodkn/master
Browse files Browse the repository at this point in the history
Add Bulgarian language
  • Loading branch information
LoicMahieu authored May 28, 2024
2 parents 62baad3 + fa0e1d8 commit 87b82c4
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 16 deletions.
34 changes: 18 additions & 16 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import * as ar from './locales/ar';
import * as bg from './locales/bg';
import * as bs from './locales/bs';
import * as cs from './locales/cs';
import * as da from './locales/da';
import * as de from './locales/de';
import * as en from './locales/en';
Expand All @@ -8,26 +10,27 @@ import * as fr from './locales/fr';
import * as he from './locales/he';
import * as id from './locales/id';
import * as it from './locales/it';
import * as ja from './locales/ja';
import * as ko from './locales/ko';
import * as lt from './locales/lt';
import * as nb from './locales/nb';
import * as nl from './locales/nl';
import * as pt from './locales/pt';
import * as tr from './locales/tr';
import * as lt from './locales/lt';
import * as pl from './locales/pl';
import * as sk from './locales/sk';
import * as pt from './locales/pt';
import * as ru from './locales/ru';
import * as cs from './locales/cs';
import * as sk from './locales/sk';
import * as th from './locales/th';
import * as tr from './locales/tr';
import * as uz from './locales/uz';
import * as vi from './locales/vi';
import * as zh from './locales/zh';
import * as zhtw from './locales/zhtw';
import * as th from './locales/th';
import * as ja from './locales/ja';
import * as ko from './locales/ko';

export {
ar,
bg,
bs,
cs,
da,
de,
en,
Expand All @@ -36,20 +39,19 @@ export {
he,
id,
it,
ja,
ko,
lt,
nb,
nl,
pt,
tr,
lt,
pl,
sk,
pt,
ru,
cs,
sk,
th,
tr,
uz,
vi,
zh,
th,
ja,
zhtw,
ko,
};
72 changes: 72 additions & 0 deletions src/locales/bg.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/*eslint-disable no-template-curly-in-string*/

import { LocaleObject, printValue } from 'yup';

// Based on https://github.com/jquense/yup/blob/2973d0a/src/locale.js
export const mixed: LocaleObject['mixed'] = {
default: '${path} е невалидно',
required: '${path} е задължително поле',
defined: '${path} трябва да бъде дефинирано',
notNull: '${path} не може да бъде празно',
oneOf: '${path} трябва да бъде една от следните стойности: ${values}',
notOneOf: '${path} не трябва да бъде някоя от следните стойности: ${values}',
notType: ({ path, type, value, originalValue }) => {
const isCast = originalValue != null && originalValue !== value;
let msg =
`${path} трябва да бъде \`${type}\` тип, ` +
`Но крайната стойност беше: \`${printValue(value, true)}\`` +
(isCast
? ` (преобразувано от стойност \`${printValue(originalValue, true)}\`).`
: '.');

if (value === null) {
msg +=
`\n Ако "null" е предвидено като празна стойност, уверете се, че схемата е маркирана като` +
' `.nullable()`';
}

return msg;
},
};

export const string: LocaleObject['string'] = {
length: '${path} трябва да бъде точно ${length} символа',
min: '${path} трябва да бъде поне ${min} символа',
max: '${path} трябва да бъде максимум ${max} символа',
matches: '${path} трябва да съвпада с: "${regex}"',
email: '${path} трябва да бъде валиден имейл',
url: '${path} трябва да бъде валиден URL',
uuid: '${path} трябва да бъде валиден UUID',
trim: '${path} трябва да бъде подрязан низ',
lowercase: '${path} трябва да бъде с малки букви',
uppercase: '${path} трябва да бъде с големи букви',
};

export const number: LocaleObject['number'] = {
min: '${path} трябва да бъде по-голямо или равно на ${min}',
max: '${path} трябва да бъде по-малко или равно на ${max}',
lessThan: '${path} трябва да бъде по-малко от ${less}',
moreThan: '${path} трябва да бъде по-голямо от ${more}',
positive: '${path} трябва да бъде положително число',
negative: '${path} трябва да бъде отрицателно число',
integer: '${path} трябва да бъде цяло число',
};

export const date: LocaleObject['date'] = {
min: '${path} полето трябва да бъде след ${min}',
max: '${path} полето трябва да бъде преди ${max}',
};

export const boolean: LocaleObject['boolean'] = {
isValue: '${path} полето трябва да бъде ${value}',
};

export const object: LocaleObject['object'] = {
noUnknown: '${path} полето има неспецифицирани ключове: ${unknown}',
};

export const array: LocaleObject['array'] = {
min: '${path} полето трябва да има поне ${min} елемента',
max: '${path} полето трябва да има не повече от ${max} елемента',
length: '${path} трябва да има ${length} елемента',
};

0 comments on commit 87b82c4

Please sign in to comment.