diff --git a/.github/workflows/continuous-deployment-workflow.yml b/.github/workflows/continuous-deployment-workflow.yml index bc8c5f5812..1060f14e7a 100644 --- a/.github/workflows/continuous-deployment-workflow.yml +++ b/.github/workflows/continuous-deployment-workflow.yml @@ -12,6 +12,8 @@ jobs: with: registry-url: https://registry.npmjs.org - run: npm ci --ignore-scripts + - run: npm run i18n:extract + - run: npm run i18n:fix - run: npm run prettier:check - run: npm run lint:check - run: npm run test:ci @@ -20,6 +22,7 @@ jobs: - run: npm run build:cjs - run: npm run build:umd - run: npm run build:types + - run: cp -r i18n build - run: cp LICENSE build/LICENSE - run: cp README.md build/README.md - run: jq 'del(.devDependencies) | del(.scripts)' package.json > build/package.json diff --git a/.github/workflows/continuous-integration-workflow.yml b/.github/workflows/continuous-integration-workflow.yml index c8faa310e9..89437b54b5 100644 --- a/.github/workflows/continuous-integration-workflow.yml +++ b/.github/workflows/continuous-integration-workflow.yml @@ -8,6 +8,8 @@ jobs: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 - run: npm ci --ignore-scripts + - run: npm run i18n:extract + - run: npm run i18n:fix - run: npm run prettier:check - run: npm run lint:check tests: @@ -24,6 +26,7 @@ jobs: with: node-version: ${{ matrix.node-version }} - run: npm ci --ignore-scripts + - run: npm run i18n:extract - run: npm run test:ci - run: npm install codecov -g if: ${{ matrix.node-version == '14.x' }} @@ -36,6 +39,8 @@ jobs: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 - run: npm ci --ignore-scripts + - run: npm run i18n:extract + - run: npm run i18n:fix - run: npm run build:es2015 - run: npm run build:esm5 - run: npm run build:cjs diff --git a/.gitignore b/.gitignore index 905e735144..52a64cc62f 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,6 @@ temp # Files for playing around locally playground.ts playground.js + +# Buided json dictionaries of i18n +i18n/**/*.json diff --git a/README.md b/README.md index 5277715dd0..1262fbbe60 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ [![codecov](https://codecov.io/gh/typestack/class-validator/branch/develop/graph/badge.svg)](https://codecov.io/gh/typestack/class-validator) [![npm version](https://badge.fury.io/js/class-validator.svg)](https://badge.fury.io/js/class-validator) [![install size](https://packagephobia.now.sh/badge?p=class-validator)](https://packagephobia.now.sh/result?p=class-validator) +[![Crowdin](https://badges.crowdin.net/class-validator/localized.svg)](https://crowdin.com/project/class-validator) Allows use of decorator and non-decorator based validation. Internally uses [validator.js][1] to perform validation. @@ -37,6 +38,7 @@ Class-validator works on both browser and node.js platforms. - [Validation decorators](#validation-decorators) - [Defining validation schema without decorators](#defining-validation-schema-without-decorators) - [Validating plain objects](#validating-plain-objects) + - [Basic support i18n](#basic-support-i18n) - [Samples](#samples) - [Extensions](#extensions) - [Release notes](#release-notes) @@ -989,6 +991,185 @@ Here is an example of using it: Due to nature of the decorators, the validated object has to be instantiated using `new Class()` syntax. If you have your class defined using class-validator decorators and you want to validate plain JS object (literal object or returned by JSON.parse), you need to transform it to the class instance via using [class-transformer](https://github.com/pleerock/class-transformer)). +## Basic support i18n + +Translations created with the machine, if you found the mistake please add a new version of translate and write a comment in the right panel in https://crowdin.com/ + +Basic set custom messages + +```typescript +import { IsOptional, Equals, Validator } from 'class-validator'; + +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', +}; + +const model = new MyClass(); + +validator.validate(model, messages: RU_I18N_MESSAGES).then(errors => { + console.log(errors[0].constraints); + // out: title должно быть равно test +}); +``` + +Load from file + +```typescript +import { IsOptional, Equals, Validator } from 'class-validator'; +import { readFileSync } from 'fs'; +import { resolve } from 'path'; + +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = JSON.parse(readFileSync(resolve(__dirname, './node_modules/class-validator/i18n/ru.json')).toString()); + +const model = new MyClass(); + +validator.validate(model, messages: RU_I18N_MESSAGES).then(errors => { + console.log(errors[0].constraints); + // out: title должен быть равен test +}); +``` + +With override + +```typescript +import { IsOptional, Equals, Validator, setClassValidatorMessages } from 'class-validator'; + +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +setClassValidatorMessages({ + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', +}); + +const model = new MyClass(); + +validator.validate(model).then(errors => { + console.log(errors[0].constraints); + // out: title должно быть равно test +}); +``` + +With change property name + +```typescript +import { IsOptional, Equals, ClassPropertyTitle, validator } from 'class-validator'; + +class MyClass { + @IsOptional() + @Equals('test') + @ClassPropertyTitle('property "title"') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', +}; +const RU_I18N_TITLES = { + 'property "title"': 'поле "заголовок"', +}; + +const model = new MyClass(); + +validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + console.log(errors[0].constraints); + // out: поле "заголовок" должно быть равно test +}); +``` + +With change target name + +```typescript +import { IsOptional, Equals, ClassPropertyTitle, validator } from 'class-validator'; + +@ClassTitle('object "MyClass"') +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property в $target должно быть равно $constraint1', +}; +const RU_I18N_TITLES = { + 'object "MyClass"': 'объекте "МойКласс"', +}; + +const model = new MyClass(); + +validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + console.log(errors[0].constraints); + // out: title в объекте "МойКласс" должно быть равно test +}); +``` + +With change arguments for validation decorator + +```typescript +import { IsOptional, Equals, validator } from 'class-validator'; + +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', +}; +const RU_I18N_TITLES = { + test: '"тест"', +}; + +const model = new MyClass(); + +validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + console.log(errors[0].constraints); + // out: title должно быть равно "тест" +}); +``` + +With change value + +```typescript +import { IsOptional, Equals, validator } from 'class-validator'; + +class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; +} + +const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property равно $value, а должно быть равно $constraint1', +}; +const RU_I18N_TITLES = { + bad_value: '"плохое_значение"', +}; + +const model = new MyClass(); + +validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + console.log(errors[0].constraints); + // out: title равно "плохое_значение", а должно быть равно test +}); +``` + ## Samples Take a look on samples in [./sample](https://github.com/pleerock/class-validator/tree/master/sample) for more examples of diff --git a/crowdin.yml b/crowdin.yml new file mode 100644 index 0000000000..98782996fa --- /dev/null +++ b/crowdin.yml @@ -0,0 +1,3 @@ +files: + - source: '*.pot' + translation: /%original_path%/%two_letters_code%.po \ No newline at end of file diff --git a/i18n/af.po b/i18n/af.po new file mode 100644 index 0000000000..bcd7f609d8 --- /dev/null +++ b/i18n/af.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: af\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Afrikaans\n" +"Language: af_ZA\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/ar.po b/i18n/ar.po new file mode 100644 index 0000000000..20ec839a00 --- /dev/null +++ b/i18n/ar.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ar\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Arabic\n" +"Language: ar_SA\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "يتوقع $IS_INSTANCE ديكور و كائن كقيمة، لكن حصل على قيمة خاطئة." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property هو $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property ليس رقم عشري صالح." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property يجب أن يكون رمز BIC أو SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property يجب أن يكون سلسلة منطقية" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property يجب أن يكون قيمة منطقية" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property يجب أن يكون عنوان BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property يجب أن يكون بطاقة ائتمان" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property يجب أن يكون عملة" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property يجب أن يكون تنسيق uri للبيانات" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property يجب أن يكون مثيل تاريخ" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property يجب أن يكون معرف الدفع الأساسي" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property يجب أن يكون تجزئة من النوع $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property يجب أن يكون لون سداسي المستوى" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property يجب أن يكون رقما سداسيا" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property يجب أن يكون لون HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property يجب أن يكون رقم بطاقة هوية" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property يجب أن يكون ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property يجب أن يكون سلسلة json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property يجب أن يكون سلسلة جاوت" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property يجب أن يكون سلسلة خطوط العرض أو الرقم" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property يجب أن يكون خط العرض، سلسلة خط الطول" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property يجب أن يكون سلسلة خط الطول أو الرقم" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property يجب أن يكون سلسلة صغيرة" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property يجب أن يكون عنوان MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property يجب أن يكون معرف Mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property يجب أن يكون رقما سالبا" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property يجب أن يكون كائن غير فارغ" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property يجب أن يكون رقم مطابق للقيود المحددة" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property يجب أن يكون سلسلة أرقام" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property يجب أن يكون رقم هاتف" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property يجب أن يكون منفذ" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property يجب أن يكون رقماً موجباً" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property يجب أن يكون رمز بريدي" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property يجب أن يكون مواصفات الإصدار السماوي" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property يجب أن يكون سلسلة" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property يجب أن يكون اسم نطاق صالح" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property يجب أن يكون قيمة إنوم صالحة" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property يجب أن يكون سلسلة تاريخ ISO 8601 صالحة" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property يجب أن يكون رمز ISO31661 Alpha2 صالح" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property يجب أن يكون رمز ISO31661 Alpha3 صالح" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property يجب أن يكون رقم هاتف صالح" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property يجب أن يكون تمثيلاً صحيحاً للوقت العسكري بتنسيق HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property يجب أن يكون مصفوفة" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property يجب أن يكون EAN (رقم المقالة الأوروبية)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property يجب أن يكون بريد إلكتروني" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property يجب أن يكون عنوان إيثيريوم" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property يجب أن يكون IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property يجب أن يكون مثيل $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property يجب أن يكون رقم صحيح" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property يجب أن يكون عنوان ip" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property يجب أن يكون ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property يجب أن يكون ISIN (معرف المخزون/الأمن)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property يجب أن يكون ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property يجب أن يكون كائنا" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property يجب أن يكون عنوان URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property يجب أن يكون معرف UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property يجب أن يكون مشفّراً بالقاعدة32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property يجب أن يكون مشفّرا بـ base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property يجب أن يكون قابلاً للتقسيم بواسطة $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property يجب أن يكون فارغاً" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property يجب أن يساوي $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property يجب أن يكون محلي" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property يجب أن يكون أطول أو يساوي $constraint1 وأقصر من أو يساوي $constraint2 حرفاً" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property يجب أن يكون أطول أو يساوي $constraint1 حرفاً" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property يجب أن يكون تنسيق uri مغناطيسي" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property يجب أن يكون تنسيق نوع MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property يجب أن يكون واحدة من القيم التالية: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property يجب أن يكون تاريخ RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property يجب أن يكون لون RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property يجب أن يكون أقصر من أو يساوي $constraint1 حرفاً" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property يجب أن يكون أقصر من أو يساوي $constraint2 حرفاً" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property يجب أن يكون حرف كبير" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property يجب أن يكون رقما بحثا صحيحا" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property يجب أن يكون رقم جواز سفر صالح" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property يجب أن يحتوي على $constraint1 قيم" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property يجب أن يحتوي على $constraint1 سلسلة" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property يجب أن يحتوي على أحرف العرض والنصف" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property يجب أن يحتوي على أحرف كاملة العرض" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property يجب أن يحتوي على أحرف نصف العرض" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property يجب أن يحتوي على أي أحرف أزواج بديلة" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property يجب أن يحتوي على $constraint1 عناصر على الأقل" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property يجب أن يحتوي على ما لا يزيد عن $constraint1 عناصر" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property يجب أن يحتوي على واحد أو أكثر من الأحرف المتعددة البايت" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property يجب أن يحتوي على أحرف ASCII فقط" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property يجب أن يحتوي على حروف فقط (أ-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property يجب أن يحتوي على أحرف وأرقام فقط" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property يجب أن يتطابق مع $constraint1 التعبير العادي" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property يجب أن لا يكون أكبر من $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property يجب أن لا يكون أقل من $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property يجب ألا يكون فارغاً" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property يجب أن لا يساوي $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property يجب أن لا يكون فارغاً أو غير محدد" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "يجب ألا يكون $property واحدة من القيم التالية: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property يجب أن لا يحتوي على $constraint1 قيم" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property يجب أن لا يحتوي على $constraint1 سلسلة" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "يجب أن يقع طول البايت $propertyفي ($constraint1، $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "يجب أن تكون جميع عناصر $propertyفريدة" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "كل قيمة في " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "الحد الأقصى المسموح به للتاريخ " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "الحد الأدنى من التاريخ المسموح به " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "يجب أن تكون الخاصية المتداخلة $property إما كائن أو مصفوفة" + diff --git a/i18n/ca.po b/i18n/ca.po new file mode 100644 index 0000000000..564a3cbcd1 --- /dev/null +++ b/i18n/ca.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ca\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Catalan\n" +"Language: ca_ES\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/cs.po b/i18n/cs.po new file mode 100644 index 0000000000..28c5526d5f --- /dev/null +++ b/i18n/cs.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: cs\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Czech\n" +"Language: cs_CZ\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE dekorátor očekává a objekt jako hodnotu, ale získal falešnou hodnotu." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property je $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property není platné desetinné číslo." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property musí být kód BIC nebo SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property musí být logický řetězec" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property musí být logická hodnota" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property musí být BTC adresa" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property musí být kreditní karta" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property musí být měna" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property musí být formát datového uri" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property musí být instance data" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property musí být Firebase Push ID" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property musí být hash typu $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property musí být hexadecimální barva" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property musí být hexadecimální číslo" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property musí být barva HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property musí být číslo průkazu totožnosti" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property musí být ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property musí být json řetězec" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property musí být jwt řetězec" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property musí být řetězec zeměpisné šířky nebo číslo" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property musí být zeměpisná šířka, řetězec zeměpisné délky" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property musí být řetězec zeměpisné délky nebo číslo" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property musí být řetězec malých písmen" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property musí být MAC adresa" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property musí být mongodb id" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property musí být záporné číslo" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property musí být neprázdný objekt" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property musí být číslo odpovídající zadaným vazbám" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property musí být číselný řetězec" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property musí být telefonní číslo" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property musí být port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property musí být kladné číslo" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property musí být PSČ" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property musí být sémantická specifikace verzí" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property musí být řetězec" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property musí být platný název domény" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property musí být platná enum hodnota" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property musí být platný ISO 8601 datový řetězec" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property musí být platný ISO31661 Alpha2 kód" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property musí být platný ISO31661 Alpha3 kód" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property musí být platné telefonní číslo" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property musí být platné znázornění vojenského času ve formátu HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property musí být pole" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property musí být EAN (Evropské číslo článku)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property musí být e-mail" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property musí být Ethereum adresa" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property musí být IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property musí být instancí $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property musí být celé číslo" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property musí být IP adresa" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property musí být ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property musí být ISIN (identifikace zásob/cenných papírů)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property musí být ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property musí být objekt" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property musí být URL adresa" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property musí být UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property musí být base32 kódován" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property musí být base64 kódován" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property musí být dělitelné $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property musí být prázdné" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property musí být rovno $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property musí být lokální" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property musí být delší nebo rovno $constraint1 a kratší nebo rovna $constraint2 znaků" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property musí být delší nebo rovna $constraint1 znakům" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property musí mít formát magnet uri" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property musí být formát MIME typu" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property musí být jedna z následujících hodnot: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property musí být RFC 3339 datum" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property musí být RGB barva" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property musí být kratší nebo rovna $constraint1 znakům" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property musí být kratší nebo rovna $constraint2 znakům" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property musí být velká písmena" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property musí být platné oktální číslo" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property musí být platné číslo pasu" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property musí obsahovat $constraint1 hodnot" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property musí obsahovat řetězec $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property musí obsahovat celou šířku a půlšířku znaků" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property musí obsahovat celé šířky znaků" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property musí obsahovat půlšířku znaků" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property musí obsahovat všechny náhradní dvojice znaků" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property musí obsahovat alespoň $constraint1 elementů" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property nesmí obsahovat více než $constraint1 elementů" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property musí obsahovat jeden nebo více multibytových znaků" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property musí obsahovat pouze ASCII znaky" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property musí obsahovat pouze písmena (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property musí obsahovat pouze písmena a čísla" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property musí odpovídat $constraint1 regulárnímu výrazu" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property nesmí být větší než $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property nesmí být menší než $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property by neměl být prázdný" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property by neměl být roven $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property by neměl být null nebo nedefinován" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property by neměl být jedna z následujících hodnot: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property by neměl obsahovat $constraint1 hodnoty" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property by neměl obsahovat řetězec $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "Délka bytu $propertymusí spadnout do rozsahu ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Všechny prvky $propertymusí být unikátní" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "každá hodnota v " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maximální povolené datum pro " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimální povolené datum pro " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "vnořená vlastnost $property musí být buď objekt, nebo pole" + diff --git a/i18n/da.po b/i18n/da.po new file mode 100644 index 0000000000..3f8368b4e3 --- /dev/null +++ b/i18n/da.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: da\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Danish\n" +"Language: da_DK\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE dekorator forventer og objekt som værdi, men fik falsk værdi." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property er $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property er ikke et gyldigt decimaltal." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property skal være en BIC eller SWIFT-kode" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property skal være en boolsk streng" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property skal være en boolsk værdi" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property skal være en BTC-adresse" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property skal være et kreditkort" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property skal være en valuta" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property skal være et data-uri format" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property skal være en dato instans" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property skal være et Firebase Push ID" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property skal være en hash af typen $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property skal være en hexadecimal farve" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property skal være et hexadecimaltal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property skal være en HSL farve" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property skal være et identitetskortnummer" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property skal være et ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property skal være en json-streng" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property skal være en jwt streng" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property skal være en breddegrad eller et tal" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property skal være en breddegrad, længdegrad streng" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property skal være en længdegrad eller et tal" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property skal være en lille streng" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property skal være en MAC-adresse" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property skal være en mongodb id" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property skal være et negativt tal" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property skal være et ikke-tomt objekt" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property skal være et tal, der stemmer overens med de angivne begrænsninger" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property skal være en talstreng" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property skal være et telefonnummer" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property skal være en port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property skal være et positivt tal" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property skal være et postnummer" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property skal være en semantisk versioneringsspecifikation" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property skal være en streng" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property skal være et gyldigt domænenavn" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property skal være en gyldig enum værdi" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property skal være en gyldig ISO 8601 datostreng" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property skal være en gyldig ISO31661 Alpha2 kode" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property skal være en gyldig ISO31661 Alpha3 kode" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property skal være et gyldigt telefonnummer" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property skal være en gyldig repræsentation af militær tid i formatet HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property skal være et array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property skal være et EAN-nummer (europæisk artikelnummer)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property skal være en e-mail" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property skal være en Ethereum adresse" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property skal være en IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property skal være en instans af $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property skal være et heltal" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property skal være en IP-adresse" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property skal være en ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property skal være en ISIN (lager-/sikkerhedsidentifikator)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property skal være en ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property skal være et objekt" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property skal være en URL-adresse" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property skal være et UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property skal være base32 kodet" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property skal være base64 indkodet" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property skal være delelig med $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property skal være tom" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property skal være lig med $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property skal være landestandard" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property skal være længere end eller lig med $constraint1 og kortere end eller lig med $constraint2 tegn" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property skal være længere end eller lig med $constraint1 tegn" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property skal være uri magnet format" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property skal være MIME type format" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property skal være en af følgende værdier: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property skal være RFC 3339 dato" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property skal være RGB farve" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property skal være kortere end eller lig med $constraint1 tegn" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property skal være kortere end eller lig med $constraint2 tegn" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property skal være stort" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property skal være gyldigt oktalt tal" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property skal være gyldigt pasnummer" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property skal indeholde $constraint1 værdier" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property skal indeholde en $constraint1 streng" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property skal indeholde bogstaver med fuld bredde og halvbredde" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property skal indeholde bogstaver med fuld bredde" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property skal indeholde en halv bredde tegn" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property skal indeholde alle surrogatpar tegn" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property skal indeholde mindst $constraint1 elementer" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property må ikke indeholde mere end $constraint1 elementer" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property skal indeholde et eller flere multibyte tegn" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property må kun indeholde ASCII-tegn" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property må kun indeholde bogstaver (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property må kun indeholde bogstaver og tal" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property skal matche $constraint1 regulært udtryk" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property må ikke være større end $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property må ikke være mindre end $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property må ikke være tom" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property bør ikke være lig med $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property bør ikke være nul eller udefineret" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property bør ikke være en af følgende værdier: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property må ikke indeholde $constraint1 værdier" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property må ikke indeholde en $constraint1 streng" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$property's byte længde skal falde ind i ($constraint1, $constraint2) interval" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Alle $propertyelementer skal være unikke" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "hver værdi i " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maksimal tilladt dato for " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "mindste tilladte dato for " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "indlejret egenskab $property skal enten være objekt eller array" + diff --git a/i18n/de.po b/i18n/de.po new file mode 100644 index 0000000000..0017aedf11 --- /dev/null +++ b/i18n/de.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: de\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: German\n" +"Language: de_DE\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE Dekorator erwartet und Objekt als Wert, bekam aber Falschwert." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property ist $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property ist keine gültige Dezimalzahl." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property muss ein BIC oder SWIFT Code sein" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property muss eine boolesche Zeichenkette sein" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property muss ein boolescher Wert sein" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property muss eine BTC-Adresse sein" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property muss eine Kreditkarte sein" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property muss eine Währung sein" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property muss ein Data uri Format sein" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property muss eine Datumsinstanz sein" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property muss eine Firebase Push-Id sein" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property muss ein Hash vom Typ $constraint1 sein" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property muss eine Hexadezimalfarbe sein" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property muss eine Hexadezimalzahl sein" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property muss eine HSL-Farbe sein" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property muss eine Personalausweisnummer sein" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property muss eine ISSN sein" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property muss ein json-String sein" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property muss ein jwt-String sein" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property muss eine Breitenzeichenkette oder eine Zahl sein" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property muss ein Breitengrad sein, Längengrad" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property muss eine Längengrad-Zeichenkette oder Zahl sein" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property muss ein Kleinbuchstaben sein" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property muss eine MAC-Adresse sein" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property muss eine Mongodb id sein" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property muss eine negative Zahl sein" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property muss ein nicht-leeres Objekt sein" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property muss eine Zahl sein, die den angegebenen Einschränkungen entspricht" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property muss eine Zahlenfolge sein" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property muss eine Telefonnummer sein" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property muss ein Port sein" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property muss eine positive Zahl sein" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property muss eine Postleitzahl sein" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property muss eine Semantische Versionierungsspezifikation sein" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property muss eine Zeichenkette sein" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property muss ein gültiger Domainname sein" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property muss ein gültiger Enum-Wert sein" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property muss ein gültiger ISO 8601 Datumsstring sein" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property muss ein gültiger ISO31661 Alpha2 Code sein" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property muss ein gültiger ISO31661 Alpha3 Code sein" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property muss eine gültige Telefonnummer sein" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property muss eine gültige Darstellung der Militärzeit im Format HH:MM sein" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property muss ein Array sein" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property muss EAN sein (Europäische Artikelnummer)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property muss eine E-Mail sein" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property muss eine Ethereum-Adresse sein" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property muss IBAN sein" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property muss eine Instanz von $constraint1name sein" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property muss eine Ganzzahl sein" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property muss eine IP-Adresse sein" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property muss eine ISBN sein" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property muss eine ISIN sein (Lager/Sicherheits-Identifikator)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property muss ein ISRC sein" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property muss ein Objekt sein" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property muss eine URL Adresse sein" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property muss eine UUID sein" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property muss base32 kodiert sein" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property muss base64 kodiert sein" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property muss durch $constraint1 teilbar sein" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property muss leer sein" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property muss gleich $constraint1 sein" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property muss lokal sein" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property muss länger als oder gleich $constraint1 und kürzer als oder gleich $constraint2 Zeichen sein" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property muss länger als oder gleich $constraint1 Zeichen sein" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property muss Magnet-Uri-Format sein" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property muss MIME-Format sein" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property muss einer der folgenden Werte sein: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property muss RFC 3339 Datum sein" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property muss RGB-Farbe sein" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property muss kürzer oder gleich $constraint1 Zeichen sein" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property muss kürzer oder gleich $constraint2 Zeichen sein" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property muss groß sein" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property muss eine gültige oktal-Nummer sein" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property muss eine gültige Passnummer sein" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property muss $constraint1 Werte enthalten" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property muss eine $constraint1 Zeichenkette enthalten" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property muss Zeichen in voller Breite und Halbbreite enthalten" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property muss Zeichen in voller Breite enthalten" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property muss eine halbe Breite enthalten" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property muss alle Ersatzpaarzeichen enthalten" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property muss mindestens $constraint1 Elemente enthalten" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property darf nicht mehr als $constraint1 Elemente enthalten" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property muss ein oder mehrere Multibyte-Zeichen enthalten" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property darf nur ASCII-Zeichen enthalten" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property darf nur Buchstaben enthalten (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property darf nur Buchstaben und Zahlen enthalten" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property muss mit $constraint1 regulären Ausdruck übereinstimmen" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property darf nicht größer als $constraint1 sein" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property darf nicht kleiner als $constraint1 sein" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property darf nicht leer sein" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property sollte nicht gleich $constraint1 sein" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property sollte nicht null oder undefiniert sein" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property sollte nicht einer der folgenden Werte sein: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property sollte keine $constraint1 Werte enthalten" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property sollte keinen $constraint1 String enthalten" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "Die Byte-Länge von $propertymuss in den Bereich ($constraint1, $constraint2) fallen" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Alle Elemente von $propertymüssen eindeutig sein" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "jeder Wert in " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maximal erlaubtes Datum für " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimales erlaubtes Datum für " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "Verschachtelte Eigenschaft $property muss entweder Objekt oder Array sein" + diff --git a/i18n/el.po b/i18n/el.po new file mode 100644 index 0000000000..c68c4137b0 --- /dev/null +++ b/i18n/el.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: el\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Greek\n" +"Language: el_GR\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/es.po b/i18n/es.po new file mode 100644 index 0000000000..a9d526106d --- /dev/null +++ b/i18n/es.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: es-ES\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Spanish\n" +"Language: es_ES\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "El decorador $IS_INSTANCE espera y el objeto como valor, pero tiene un valor falso." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property es $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property no es un número decimal válido." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property debe ser un código BIC o SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property debe ser una cadena booleana" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property debe ser un valor booleano" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property debe ser una dirección BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property debe ser una tarjeta de crédito" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property debe ser una moneda" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property debe ser un formato uri de datos" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property debe ser una instancia de fecha" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property debe ser un Id de Firebase Push" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property debe ser un hash de tipo $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property debe ser un color hexadecimal" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property debe ser un número hexadecimal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property debe ser un color HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property debe ser un número de tarjeta de identidad" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property debe ser un ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property debe ser una cadena json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property debe ser una cadena jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property debe ser una cadena o número de latitud" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property debe ser una latitud,longitud" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property debe ser una cadena o número de longitud" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property debe ser una cadena en minúsculas" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property debe ser una dirección MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property debe ser un id de mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property debe ser un número negativo" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property debe ser un objeto no vacío" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property debe ser un número conforme a las restricciones especificadas" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property debe ser una cadena numérica" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property debe ser un número de teléfono" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property debe ser un puerto" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property debe ser un número positivo" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property debe ser un código postal" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property debe ser una especificación de Versionado Semántico" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property debe ser una cadena" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property debe ser un nombre de dominio válido" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property debe ser un valor de enum válido" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property debe ser una fecha válida ISO 8601" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property debe ser un código ISO31661 Alpha2 válido" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property debe ser un código ISO31661 Alpha3 válido" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property debe ser un número de teléfono válido" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property debe ser una representación válida del tiempo militar en el formato HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property debe ser un array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property debe ser un EAN (número de artículo europeo)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property debe ser un correo electrónico" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property debe ser una dirección de Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property debe ser un IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property debe ser una instancia de $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property debe ser un número entero" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property debe ser una dirección IP" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property debe ser un ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property debe ser un ISIN (identificador de existencia/seguridad)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property debe ser un ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property debe ser un objeto" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property debe ser una dirección URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property debe ser un UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property debe ser codificado en base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property debe ser codificado en base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property debe ser divisible por $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property debe estar vacío" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property debe ser igual a $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property debe ser regional" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property debe ser mayor o igual a $constraint1 y menor o igual a $constraint2 caracteres" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property debe ser mayor o igual a $constraint1 caracteres" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property debe ser un formato magnet uri" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property debe ser un formato de tipo MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property debe ser uno de los siguientes valores: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property debe ser RFC 3339 fecha" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property debe ser color RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property debe ser menor o igual a $constraint1 caracteres" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property debe ser menor o igual a $constraint2 caracteres" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property debe ser mayúscula" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property debe ser un número octal válido" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property debe ser un número de pasaporte válido" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property debe contener $constraint1 valores" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property debe contener una cadena $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property debe contener un ancho completo y caracteres de ancho medio" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property debe contener un ancho completo de caracteres" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property debe contener un ancho medio" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property debe contener cualquier caracter de pares surroporteros" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property debe contener al menos $constraint1 elementos" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property no debe contener más de $constraint1 elementos" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property debe contener uno o más caracteres multibyte" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property debe contener sólo caracteres ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property debe contener sólo letras (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property debe contener sólo letras y números" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property debe coincidir con $constraint1 expresión regular" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property no debe ser mayor que $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property no debe ser menor que $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property no debe estar vacío" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property no debe ser igual a $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property no debe ser nulo o no debe ser definido" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property no debe ser uno de los siguientes valores: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property no debe contener valores $constraint1" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property no debe contener una cadena $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "La longitud de bytes de $propertydebe caer en el rango ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Todos los elementos de $propertydeben ser únicos" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "cada valor en " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "fecha máxima permitida para " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "fecha mínima permitida para " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "la propiedad anidada $property debe ser objeto o array" + diff --git a/i18n/fi.po b/i18n/fi.po new file mode 100644 index 0000000000..ab52b6e400 --- /dev/null +++ b/i18n/fi.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: fi\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Finnish\n" +"Language: fi_FI\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE koristeilija odottaa ja esineen arvona, mutta sai väärän arvon." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property on $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property ei ole kelvollinen desimaaliluku." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "määritteen $property on oltava BIC- tai SWIFT-koodi" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "määritteen $property on oltava totuusmerkkijono" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "määritteen $property on oltava totuusarvo" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "määritteen $property on oltava BTC osoite" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "määritteen $property on oltava luottokortti" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "määritteen $property on oltava valuutta" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "määritteen $property on oltava datan uri muoto" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "määritteen $property on oltava päivämäärä instanssi" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "määritteen $property on oltava Firebase Push ID" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "määritteen $property on oltava tyypin $constraint1 tiiviste." + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "määritteen $property on oltava heksadesimaalinen väri" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "määritteen $property on oltava heksadesimaaliluku" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "määritteen $property on oltava HSL väri" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "määritteen $property on oltava henkilökortin numero" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "määritteen $property on oltava ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "määritteen $property on oltava json merkkijono" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "määritteen $property on oltava jwt merkkijono" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "määritteen $property on oltava leveys- tai numero." + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "määritteen $property on oltava leveys,pituusaste" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "määritteen $property on oltava pituuspiiri tai numero" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "määritteen $property on oltava pieni merkkijono" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "määritteen $property on oltava MAC osoite" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "määritteen $property on oltava mongodb id" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "määritteen $property on oltava negatiivinen numero" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property on oltava ei-tyhjä objekti" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "määritteen $property on oltava määritetty rajoitus täyttävä numero" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "määritteen $property on oltava numeromerkkijono" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "määritteen $property on oltava puhelinnumero" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "määritteen $property on oltava portti" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "määritteen $property on oltava positiivinen numero" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "määritteen $property on oltava postinumero" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "määritteen $property on oltava Semanttinen versiointimääritys" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "määritteen $property on oltava merkkijono" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "määritteen $property on oltava kelvollinen verkkotunnus" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "määritteen $property on oltava kelvollinen arvo." + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "määritteen $property on oltava kelvollinen ISO 8601 merkkijono" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "määritteen $property on oltava kelvollinen ISO31661 aakkoskoodi" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "määritteen $property on oltava kelvollinen ISO31661 aakkoskoodi" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "määritteen $property on oltava kelvollinen puhelinnumero" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "määritteen $property on oltava pätevä sotilaallinen edustus muodossa HH:MM." + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "määritteen $property on oltava array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "määritteen $property on oltava EAN-numero (European Article Number)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "määritteen $property on oltava sähköposti" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "määritteen $property on oltava Ethereum osoite" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "määritteen $property on oltava IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "määritteen $property on oltava $constraint1name instanssi" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "määritteen $property on oltava kokonaisluku" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "määritteen $property on oltava ip osoite" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "määritteen $property on oltava ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "määritteen $property on oltava ISIN (varasto/tietoturvatunniste)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "määritteen $property on oltava ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "määritteen $property on oltava objekti" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "määritteen $property on oltava URL-osoite" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "määritteen $property on oltava UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "määritteen $property on oltava perus32 koodattu" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "määritteen $property on oltava base64 koodattu" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "määritteen $property on oltava jaollinen käyttäjälle $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "määritteen $property on oltava tyhjä" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "määritteen $property on oltava yhtä suuri kuin $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "määritteen $property on oltava paikallinen" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property on oltava pidempi tai yhtä suuri kuin $constraint1 ja lyhyempi tai yhtä suuri kuin $constraint2 merkkiä" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "määritteen $property on oltava pidempi tai yhtä suuri kuin $constraint1 merkkiä" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "määritteen $property on oltava magneetin uri formaatti" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "määritteen $property on oltava MIME-tyypin muoto" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "määritteen $property on oltava jokin seuraavista arvoista: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "määritteen $property on oltava RFC 3339 päivämäärä" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "määritteen $property on oltava RGB väri" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "määritteen $property on oltava lyhyempi tai yhtä suuri kuin $constraint1 merkkiä" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "määritteen $property on oltava lyhyempi tai yhtä suuri kuin $constraint2 merkkiä" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "määritteen $property on oltava isot kirjaimet" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "määritteen $property on oltava kelvollinen oktaali numero" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "määritteen $property on oltava kelvollinen passin numero" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "määritteen $property on sisällettävä $constraint1 arvoa" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "määritteen $property täytyy sisältää $constraint1 merkkijono" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "määritteen $property on sisällettävä koko- ja puoli-leveysmerkit" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "määritteen $property on sisällettävä kokopäiväisiä merkkejä" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "määritteen $property täytyy sisältää puoli-leveys merkkiä" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "määritteen $property täytyy sisältää korvikemerkkejä" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "määritteen $property on sisällettävä vähintään $constraint1 elementtiä" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property saa sisältää enintään $constraint1 elementtiä" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "määritteen $property täytyy sisältää yksi tai useampi montavumerkki" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property saa sisältää vain ASCII-merkkejä" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property saa sisältää vain kirjaimia (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property saa sisältää vain kirjaimia ja numeroita" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "määritteen $property on vastattava säännöllistä lauseketta $constraint1" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property ei saa olla suurempi kuin $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property ei saa olla pienempi kuin $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property ei saa olla tyhjä" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property ei saa olla yhtä suuri kuin $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property ei saa olla tyhjä tai määrittelemätön" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property ei saa olla yksi seuraavista arvoista: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property ei saa sisältää $constraint1 arvoa" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property ei saa sisältää $constraint1 merkkijonoa" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$propertytavun pituuden täytyy pudota ($constraint1, $constraint2) alueelle" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Kaikkien $propertyelementtien on oltava yksilöllisiä" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "jokainen arvo " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "suurin sallittu päivämäärä " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimi sallittu päivämäärä " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "sisäkkäisen ominaisuuden $property on oltava joko objekti tai matriisi" + diff --git a/i18n/fr.po b/i18n/fr.po new file mode 100644 index 0000000000..487675cabd --- /dev/null +++ b/i18n/fr.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: fr\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: French\n" +"Language: fr_FR\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "Le décorateur $IS_INSTANCE attend et l'objet en tant que valeur, mais a obtenu une valeur fausse." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property est $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property n'est pas un nombre décimal valide." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property doit être un code BIC ou SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property doit être une chaîne booléenne" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property doit être une valeur booléenne" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property doit être une adresse BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property doit être une carte de crédit" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property doit être une devise" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property doit être un format uri de données" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property doit être une instance de date" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property doit être un ID Push Firebase" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property doit être un hachage de type $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property doit être une couleur hexadécimale" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property doit être un nombre hexadécimal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property doit être une couleur HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property doit être un numéro de carte d'identité" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property doit être un ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property doit être une chaîne json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property doit être une chaîne jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property doit être une chaîne de latitude ou un nombre" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property doit être une latitude, une chaîne de longitude" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property doit être une chaîne ou un nombre de longitude" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property doit être une chaîne en minuscule" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property doit être une adresse MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property doit être un id mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property doit être un nombre négatif" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property doit être un objet non vide" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property doit être un nombre conforme aux contraintes spécifiées" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property doit être une chaîne de chiffres" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property doit être un numéro de téléphone" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property doit être un port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property doit être un nombre positif" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property doit être un code postal" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property doit être une spécification de version sémantique" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property doit être une chaîne de caractères" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property doit être un nom de domaine valide" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property doit être une valeur enum valide" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property doit être une chaîne de date ISO 8601 valide" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property doit être un code Alpha2 ISO31661 valide" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property doit être un code Alpha3 ISO31661 valide" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property doit être un numéro de téléphone valide" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property doit être une représentation valide de l'heure militaire au format HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property doit être un tableau" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property doit être un EAN (Numéro d'Article Européen)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property doit être un email" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property doit être une adresse Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property doit être un IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property doit être une instance de $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property doit être un nombre entier" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property doit être une adresse IP" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property doit être un ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property doit être un ISIN (identifiant stock/sécurité)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property doit être un ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property doit être un objet" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property doit être une adresse URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property doit être un UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property doit être encodé en base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property doit être encodé en base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property doit être divisible par $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property doit être vide" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property doit être égal à $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property doit être une locale" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property doit être supérieur ou égal à $constraint1 et inférieur ou égal à $constraint2 caractères" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property doit être supérieur ou égal à $constraint1 caractères" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property doit être au format magnet uri" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property doit être de type MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property doit être l'une des valeurs suivantes : $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property doit être une date RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property doit être de couleur RVB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property doit être inférieur ou égal à $constraint1 caractères" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property doit être inférieur ou égal à $constraint2 caractères" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property doit être en majuscule" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property doit être un nombre octal valide" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property doit être un numéro de passeport valide" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property doit contenir $constraint1 valeurs" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property doit contenir une chaîne de caractères $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property doit contenir des caractères en pleine largeur et en demi-largeur" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property doit contenir des caractères en pleine largeur" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property doit contenir une demi-largeur de caractères" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property doit contenir des caractères de paires de substitution" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property doit contenir au moins $constraint1 éléments" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property ne doit pas contenir plus de $constraint1 éléments" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property doit contenir un ou plusieurs caractères multi-octets" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property ne doit contenir que des caractères ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property doit contenir uniquement des lettres (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property ne doit contenir que des lettres et des chiffres" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property doit correspondre à l'expression régulière $constraint1" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property ne doit pas être plus grand que $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property ne doit pas être inférieur à $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property ne doit pas être vide" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property ne doit pas être égal à $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property ne doit pas être nul ou non défini" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property ne devrait pas être l'une des valeurs suivantes : $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property ne doit pas contenir de valeurs $constraint1" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property ne doit pas contenir une chaîne de caractères $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "La longueur d'octet de $property doit tomber dans l'intervalle ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Tous les éléments de $property doivent être uniques" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "chaque valeur en " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "date maximale autorisée pour " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "date minimale autorisée pour " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "la propriété imbriquée $property doit être un objet ou un tableau" + diff --git a/i18n/he.po b/i18n/he.po new file mode 100644 index 0000000000..99fb227868 --- /dev/null +++ b/i18n/he.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: he\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Hebrew\n" +"Language: he_IL\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/hu.po b/i18n/hu.po new file mode 100644 index 0000000000..88ad43d896 --- /dev/null +++ b/i18n/hu.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: hu\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Hungarian\n" +"Language: hu_HU\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/it.po b/i18n/it.po new file mode 100644 index 0000000000..7ea69c6d86 --- /dev/null +++ b/i18n/it.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: it\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Italian\n" +"Language: it_IT\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE decoratore si aspetta e oggetto come valore, ma ha un valore falso." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property è $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property non è un numero decimale valido." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property deve essere un codice BIC o SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property deve essere una stringa booleana" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property deve essere un valore booleano" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property deve essere un indirizzo BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property deve essere una carta di credito" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property deve essere una valuta" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property deve essere un formato di dati uri" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property deve essere un'istanza Data" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property deve essere un Firebase Push Id" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property deve essere un hash di tipo $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property deve essere un colore esadecimale" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property deve essere un numero esadecimale" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property deve essere un colore HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property deve essere un numero di carta d'identità" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property deve essere un ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property deve essere una stringa json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property deve essere una stringa jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property deve essere una stringa di latitudine o un numero" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property deve essere una stringa di latitudine,longitudine" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property deve essere una stringa di longitudine o un numero" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property deve essere una stringa minuscola" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property deve essere un indirizzo MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property deve essere un id mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property deve essere un numero negativo" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property deve essere un oggetto non vuoto" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property deve essere un numero conforme ai vincoli specificati" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property deve essere una stringa numerica" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property deve essere un numero di telefono" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property deve essere una porta" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property deve essere un numero positivo" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property deve essere un codice postale" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property deve essere una Specifica di Versionamento Semantico" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property deve essere una stringa" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property deve essere un nome di dominio valido" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property deve essere un valore enum valido" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property deve essere una stringa di data ISO 8601 valida" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property deve essere un codice ISO31661 Alpha2 valido" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property deve essere un codice ISO31661 Alpha3 valido" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property deve essere un numero di telefono valido" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property deve essere una rappresentazione valida del tempo militare nel formato HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property deve essere un array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property deve essere un EAN (European Article Number)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property deve essere una email" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property deve essere un indirizzo Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property deve essere un IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property deve essere un'istanza di $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property deve essere un numero intero" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property deve essere un indirizzo ip" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property deve essere un ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property deve essere un ISIN (inventario/identificatore di sicurezza)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property deve essere un ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property deve essere un oggetto" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property deve essere un indirizzo URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property deve essere un UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property deve essere codificato base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property deve essere codificato base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property deve essere divisibile per $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property deve essere vuoto" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property deve essere uguale a $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property deve essere locale" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property deve essere più lungo o uguale a $constraint1 e inferiore o uguale a $constraint2 caratteri" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property deve essere più lungo o uguale a $constraint1 caratteri" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property deve essere formato uri magnetico" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property deve essere formato MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property deve essere uno dei seguenti valori: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property deve essere RFC 3339 data" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property deve essere di colore RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property deve essere minore o uguale a $constraint1 caratteri" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property deve essere minore o uguale a $constraint2 caratteri" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property deve essere maiuscolo" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property deve essere un numero ottale valido" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property deve essere un numero di passaporto valido" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property deve contenere $constraint1 valori" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property deve contenere una stringa $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property deve contenere caratteri a tutta larghezza e mezza larghezza" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property deve contenere caratteri a tutta larghezza" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property deve contenere caratteri di mezza larghezza" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property deve contenere qualsiasi coppia di caratteri surrogati" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property deve contenere almeno $constraint1 elementi" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property deve contenere non più di $constraint1 elementi" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property deve contenere uno o più caratteri multibyte" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property deve contenere solo caratteri ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property deve contenere solo lettere (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property deve contenere solo lettere e numeri" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property deve corrispondere a $constraint1 espressione regolare" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property non deve essere maggiore di $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property non deve essere inferiore a $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property non deve essere vuoto" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property non dovrebbe essere uguale a $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property non deve essere nullo o indefinito" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property non deve essere uno dei seguenti valori: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property non deve contenere $constraint1 valori" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property non deve contenere una stringa $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "La lunghezza del byte di $propertydeve cadere nell'intervallo ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Tutti gli elementi di $propertydevono essere unici" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "ogni valore in " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "data massima consentita per " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "data minima consentita per " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "la proprietà annidata $property deve essere un oggetto o un array" + diff --git a/i18n/ja.po b/i18n/ja.po new file mode 100644 index 0000000000..ad57f826e1 --- /dev/null +++ b/i18n/ja.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ja\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Japanese\n" +"Language: ja_JP\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE デコレータは、値としてオブジェクトを期待していますが、false値を取得しました。" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property は $constraint1 です" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property は有効な小数ではありません。" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property はBICまたはSWIFTコードでなければなりません" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property はブール文字列でなければなりません" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property はブール値でなければなりません" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property は BTC アドレスでなければなりません" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property はクレジットカードでなければなりません" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property は通貨でなければなりません" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property はデータURI形式でなければなりません" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property は、Date インスタンスでなければなりません" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property はファイアーベースのプッシュIDでなければなりません" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property はタイプ $constraint1 のハッシュでなければなりません" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property は16進数の色でなければなりません" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property は16進数でなければなりません" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property はHSL色でなければなりません" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property はIDカード番号でなければなりません" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property はISSNでなければなりません" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property は、json 文字列でなければなりません" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property は、jwt 文字列でなければなりません" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property は緯度文字列または数値でなければなりません" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property は緯度、経度文字列でなければなりません" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property は経度文字列または数字でなければなりません" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property は小文字でなければなりません" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property は MAC アドレスでなければなりません" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property は mongodb id でなければなりません" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property はマイナス値でなければなりません" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property は空でないオブジェクトでなければなりません" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property は指定された制約に適合する数値でなければなりません" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property は数値文字列でなければなりません" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property は電話番号でなければなりません" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property はポートでなければなりません" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property は正の数でなければなりません" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property は郵便番号でなければなりません" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property はセマンティックバージョン仕様でなければなりません" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property は文字列でなければなりません" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property は有効なドメイン名でなければなりません" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property は有効な列挙値でなければなりません" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property は有効な ISO 8601 日付文字列である必要があります" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property は有効な ISO31661 Alpha2 コードでなければなりません" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property は有効な ISO31661 Alpha3 コードでなければなりません" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property は有効な電話番号でなければなりません" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property は、HH:MM 形式の軍用時間の有効な表現でなければなりません" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property は配列でなければなりません" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property は、EANでなければなりません(欧州の記事番号)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property はメールアドレスでなければなりません" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property はイーサリアムアドレスでなければなりません" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property はIBANでなければなりません" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property は $constraint1name のインスタンスでなければなりません" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property は整数でなければなりません" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property は、IP アドレスでなければなりません" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property はISBNでなければなりません" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property は ISIN (在庫/セキュリティ識別子) でなければなりません" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property は、ISRCでなければなりません" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property はオブジェクトでなければなりません" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property は URL アドレスでなければなりません" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property は UUID でなければなりません" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property は base32 エンコードする必要があります" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property は base64 エンコードする必要があります" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property は $constraint1 で割り算する必要があります" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property は空にする必要があります" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property は、 $constraint1 に等しくなければなりません" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property はロケールでなければなりません" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property は $constraint1 文字以上、 $constraint2 文字以下でなければなりません" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property は、 $constraint1 文字以上でなければなりません" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property はマグネットURI形式でなければなりません" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property は MIME タイプのフォーマットでなければなりません" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property は次の値のいずれかでなければなりません: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property は RFC 3339 の日付でなければなりません" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property はRGBカラーでなければなりません" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property は、 $constraint1 文字以下でなければなりません" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property は、 $constraint2 文字以下でなければなりません" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property は大文字にする必要があります" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property は有効な8進数でなければなりません" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property は有効なパスポート番号でなければなりません" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property は、 $constraint1 の値を含める必要があります" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property は、 $constraint1 文字列を含める必要があります" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property は、全幅および半角文字を含む必要があります" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property は、全角文字を含める必要があります" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property には半角文字を含める必要があります" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property は任意の代理ペア文字を含める必要があります" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property は少なくとも $constraint1 個の要素を含める必要があります" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property は、 $constraint1 個以下の要素を含む必要があります" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property は、1 つ以上のマルチバイト文字を含める必要があります" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property にはASCII文字のみを含める必要があります" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property は文字のみを含める必要があります (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property は文字と数字のみを含める必要があります" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property は $constraint1 の正規表現に一致しなければなりません" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property は $constraint1 より大きくてはいけません" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property は $constraint1 より小さくてはいけません" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property は空にできません" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property は $constraint1 と等しくてはいけません" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property は null または未定義にすべきではありません" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property は以下の値のいずれかを指定しないでください: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property は $constraint1 値を含めることはできません" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property は、 $constraint1 文字列を含めることはできません" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$propertyのバイト長は ($constraint1, $constraint2) の範囲に含まれなければなりません" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "$propertyのすべての要素は一意でなければなりません" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "個々の値は " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "次の日付を最大許容: " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "許可されている最小日付: " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "ネストされたプロパティ $property はオブジェクトまたは配列でなければなりません" + diff --git a/i18n/ko.po b/i18n/ko.po new file mode 100644 index 0000000000..83839883f4 --- /dev/null +++ b/i18n/ko.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ko\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Korean\n" +"Language: ko_KR\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/nl.po b/i18n/nl.po new file mode 100644 index 0000000000..525c3913e1 --- /dev/null +++ b/i18n/nl.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: nl\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Dutch\n" +"Language: nl_NL\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE decorator verwacht en object als waarde, maar kreeg falsy waarde." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property is $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property is geen geldig decimaal nummer." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property moet een BIC of SWIFT code zijn" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property moet een tekenreeks zijn" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property moet een booleaanse waarde zijn" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property moet een BTC adres zijn" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property moet een creditcard zijn" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property moet een valuta zijn" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property moet een data uri formaat zijn" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property moet een datum zijn" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property moet een Firebase Push Id zijn" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property moet een hash van type $constraint1 zijn" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property moet een hexadecimale kleur zijn" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property moet een hexadecimaal getal zijn" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property moet een HSL-kleur zijn" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property moet een identiteitskaart nummer zijn" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property moet een ISSN zijn" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property moet een json string zijn" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property moet een wt string zijn" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property moet een breedtegraad of getal zijn" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property moet een breedtegraad zijn, lengtegraad string" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property moet een lengtegraad of getal zijn" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property moet een kleine tekenreeks zijn" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property moet een MAC-adres zijn" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property moet een mongodb id zijn" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property moet een negatief getal zijn" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property mag geen leeg object zijn" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property moet een getal zijn dat overeenkomt met de opgegeven kaders" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property moet een tekenreeks van getallen zijn" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property moet een telefoonnummer zijn" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property moet een poort zijn" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property moet een positief getal zijn" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property moet een postcode zijn" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property moet een Semantic Versiespecificatie zijn" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property moet een tekenreeks zijn" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property moet een geldige domeinnaam zijn" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property moet een geldige enum waarde zijn" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property moet een geldige ISO 8601 datum string zijn" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property moet een geldige ISO31661 Alfa2 code zijn" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property moet een geldige ISO31661 Alpha3 code zijn" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property moet een geldig telefoonnummer zijn" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property moet een geldige representatie van militaire tijd zijn in het formaat HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property moet een array zijn" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property moet een EAN zijn (Europees artikelnummer)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property moet een e-mail zijn" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property moet een Ethereum-adres zijn" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property moet een IBAN zijn" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property moet een exemplaar zijn van $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property moet een geheel getal zijn" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property moet een IP-adres zijn" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property moet een ISBN zijn" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property moet een ISIN zijn (voorraad/veiligheidsidentificatie)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property moet een ISRC zijn" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property moet een object zijn" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property moet een URL adres zijn" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property moet een UUID zijn" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property moet base32 gecodeerd zijn" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property moet base64 gecodeerd zijn" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property moet deelbaar zijn door $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property moet leeg zijn" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property moet gelijk zijn aan $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property moet lokaal zijn" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property moet langer dan of gelijk aan $constraint1 en korter dan of gelijk aan $constraint2 tekens" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property moet langer zijn dan of gelijk aan $constraint1 tekens" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property moet een magneeturi formaat zijn" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property moet MIME-type formaat zijn" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property moet een van de volgende waarden zijn: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property moet RFC 3339 datum zijn" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property moet RGB kleur zijn" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property moet korter of gelijk aan $constraint1 tekens zijn" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property moet korter of gelijk aan $constraint2 tekens zijn" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property moet hoofdletters zijn" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property moet een geldig octaal nummer zijn" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property moet een geldig paspoort nummer zijn" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property moet $constraint1 waarden bevatten" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property moet een $constraint1 tekenreeks bevatten" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property moet een hele breedte en halve breedte tekens bevatten" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property moet een hele breedte tekens bevatten" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property moet een half breedte tekens bevatten" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property moet surrogeertekens bevatten" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property moet ten minste $constraint1 elementen bevatten" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property mag niet meer dan $constraint1 elementen bevatten" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property moet een of meer multibyte tekens bevatten" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property mag alleen ASCII tekens bevatten" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property mag alleen letters (a-zA-Z) bevatten" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property mag alleen letters en cijfers bevatten" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property moet overeenkomen met $constraint1 reguliere expressie" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property mag niet groter zijn dan $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property mag niet minder zijn dan $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property mag niet leeg zijn" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property mag niet gelijk zijn aan $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property mag niet leeg of ongedefinieerd zijn" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property mag niet een van de volgende waardes zijn: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property mag geen $constraint1 waarden bevatten" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property mag geen $constraint1 tekenreeks bevatten" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "De byte lengte van $propertymoet in ($constraint1, $constraint2) bereik vallen" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Alle elementen van $propertymoeten uniek zijn" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "elke waarde in " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maximale toegestane datum voor " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "Minimale datum voor " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "geneste eigenschap $property moet een object of een array zijn" + diff --git a/i18n/no.po b/i18n/no.po new file mode 100644 index 0000000000..9b1bbe059c --- /dev/null +++ b/i18n/no.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: no\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Norwegian\n" +"Language: no_NO\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE dekoratoren forventer og objektet som verdi, men ble feilaktig verdi." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property er $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property er ikke et gyldig desimaltall." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property må være en BIC eller SWIFT-kode" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property må være en boolsk streng" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property må være en boolsk verdi" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property må være en BTC adresse" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property må være et kredittkort" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property må være valuta" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property må være et data uri format" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property må være en dato instans" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property må være en Firebase Push Id" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property må være en hash av type $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property må være en heksadesimal farge" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property må være et heksadesimalt tall" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property må være en HSL-farge" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property må være et identitetskortnummer" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property må være et ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property må være en json-streng" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property må være en jordet streng" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property må være en breddegrad tekst eller tall" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property må være en bredde,lengdegrad" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property må være en lengdegrad streng eller tall" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property må være en liten streng" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property må være en MAC-adresse" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property må være en mongodb ID" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property må være et negativt tall" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property må være et ikke-tomt objekt" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property må være et tall som samsvarer med angitte begrensninger" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property må være en tallstreng" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property må være et telefonnummer" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property må være en port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property må være et positivt tall" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property må være et postnummer" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property må være en Semantisk Versjon-spesifikasjon" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property må være en streng" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property må være et gyldig domenenavn" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property må være en gyldig omsetningsverdi" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property må være en gyldig ISO 8601 datobstring" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property må være en gyldig ISO31661 Alpha2-kode" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property må være en gyldig ISO31661 Alpha3-kode" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property må være et gyldig telefonnummer" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property må være en gyldig representasjon av militær tid i formatet TT:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property må være en liste" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property må være et EAN (European Article Number)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property må være en e-post" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property må være en Ethereum adresse" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property må være en IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property må være en instans av $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property må være et heltall" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property må være en ipadresse" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property må være en ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property må være en ISIN (lager-/sikkerhetsidentifikator)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property må være en ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property må være et objekt" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property må være en URL-adresse" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property må være en UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property må være base32 kodet" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property må være base64 kodet" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property må være usynlig av $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property må være tom" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property må være lik $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property må være språkkode" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property må være lengre enn eller lik $constraint1 og kortere enn eller lik $constraint2 tegn" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property må være lengre enn eller lik $constraint1 tegn" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property må være magnet uri-format" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property må være MIME-typen format" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property må være en av følgende verdier: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property må være RFC 3339 dato" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property må være RGB farge" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property må være kortere eller lik $constraint1 tegn" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property må være kortere eller lik $constraint2 tegn" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property må være stor" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property må være et gyldig octal tall" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property må være et gyldig passnummer" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property må inneholde $constraint1 verdier" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property må inneholde en $constraint1 streng" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property må inneholde ett eller flere tegn i bredden og bredden" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property må inneholde et fullbredde tegn" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property må inneholde et halvt bredde-tegn" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property må inneholde alle surrogatpar tegn" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property må inneholde minst $constraint1 elementer" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property må inneholde mer enn $constraint1 elementer" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property må inneholde ett eller flere multibyte tegn" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property må kun inneholde ASCII-tegn" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property må inneholde bare bokstaver (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property må kun inneholde bokstaver og tall" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property må matche $constraint1 vanlige uttrykk" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property må ikke være større enn $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property må ikke være mindre enn $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property kan ikke være tom" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property bør ikke være lik $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property kan ikke være null eller udefinert" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property bør ikke være en av følgende verdier: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property bør ikke inneholde $constraint1 verdier" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property bør ikke inneholde en $constraint1 streng" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$propertys bytelengde må falle inn ($constraint1, $constraint2) rekkevidde" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Alle $propertyelementer må være unike" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "hver verdi i " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maksimalt tillatt dato for " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimal tillatt dato for " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "nestet egenskapen $property må enten være objekt eller liste" + diff --git a/i18n/pl.po b/i18n/pl.po new file mode 100644 index 0000000000..67b65ca0ff --- /dev/null +++ b/i18n/pl.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: pl\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Polish\n" +"Language: pl_PL\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE dekorator oczekuje i obiekt jako wartość, ale uzyskał fałszywą wartość." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property to $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property nie jest poprawną liczbą dziesiętną." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property musi być kodem BIC lub SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property musi być ciągiem logicznym" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property musi być wartością logiczną" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property musi być adresem BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property musi być kartą kredytową" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property musi być walutą" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property musi być formatem uri danych" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property musi być instancją daty" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property musi być ID Push Firebase" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property musi być hashem typu $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property musi być kolorem szesnastkowym" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property musi być liczbą szesnastkową" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property musi być kolorem HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property musi być numerem dowodu osobistego" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property musi być ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property musi być ciągiem json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property musi być ciągiem jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property musi być ciągiem lub liczbą szerokości geograficznej" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property musi być szerokością,ciąg długości geograficznej" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property musi być ciągiem lub liczbą długości geograficznej" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property musi być małą literą" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property musi być adresem MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property musi być identyfikatorem mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property musi być liczbą ujemną" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property musi być niepustym obiektem" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property musi być liczbą zgodną z określonymi ograniczeniami" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property musi być ciągiem numerów" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property musi być numerem telefonu" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property musi być portem" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property musi być liczbą dodatnią" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property musi być kodem pocztowym" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property musi być Semantyczną Specyfikacją Wersji" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property musi być ciągiem znaków" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property musi być prawidłową nazwą domeny" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property musi być poprawną wartością enum" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property musi być prawidłowym ciągiem dat ISO 8601" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property musi być prawidłowym kodem Alpha2 ISO31661" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property musi być prawidłowym kodem ISO 31661 Alpha3" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property musi być prawidłowym numerem telefonu" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property musi być prawidłową reprezentacją czasu wojskowego w formacie GG:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property musi być tablicą" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property musi być EAN-em (europejski numer artykułu)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property musi być adresem e-mail" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property musi być adresem Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property musi być IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property musi być instancją $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property musi być liczbą całkowitą" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property musi być adresem IP" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property musi być ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property musi być ISIN (identyfikator zapasów/zabezpieczenia)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property musi być ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property musi być obiektem" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property musi być adresem URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property musi być UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property musi być zakodowany base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property musi być zakodowany base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property musi być podzielny przez $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property musi być puste" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property musi być równe $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property musi być językiem" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property musi być dłuższe lub równe $constraint1 i krótsze lub równe $constraint2 znaków" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property musi być dłuższe lub równe $constraint1 znaków" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property musi być formatem uri magnet" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property musi być formatem MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property musi być jedną z następujących wartości: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property musi być datą RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property musi być kolorem RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property musi być krótsze lub równe $constraint1 znakom" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property musi być krótsze lub równe $constraint2 znakom" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property musi być wielkimi literami" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property musi być poprawną liczbą ośmiościową" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property musi być prawidłowym numerem paszportu" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property musi zawierać $constraint1 wartości" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property musi zawierać ciąg $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property musi zawierać pełną szerokość i półszerokość" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property musi zawierać znaki o pełnej szerokości" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property musi zawierać pół szerokości" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property musi zawierać znaki zastępcze" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property musi zawierać co najmniej $constraint1 elementów" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property nie może zawierać więcej niż $constraint1 elementów" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property musi zawierać jeden lub więcej znaków wielobajtowych" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property musi zawierać tylko znaki ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property musi zawierać tylko litery (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property musi zawierać tylko litery i cyfry" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property musi pasować do $constraint1 wyrażenia regularnego" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property nie może być większy niż $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property nie może być mniejszy niż $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property nie powinien być pusty" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property nie powinien być równy $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property nie powinien być pusty ani niezdefiniowany" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property nie może być jedną z następujących wartości: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property nie powinien zawierać $constraint1 wartości" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property nie powinien zawierać ciągu $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "Długość bajtu $propertymusi spadać do zakresu ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Wszystkie elementy $propertymuszą być unikalne" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "każda wartość w " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maksymalna dozwolona data dla " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimalna dozwolona data dla " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "zagnieżdżona właściwość $property musi być obiektem lub tablicą" + diff --git a/i18n/pt.po b/i18n/pt.po new file mode 100644 index 0000000000..f4a5168677 --- /dev/null +++ b/i18n/pt.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: pt-BR\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Portuguese, Brazilian\n" +"Language: pt_BR\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE decorador espera e objeto como valor, mas obteve valor falso." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property é $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property não é um número decimal válido." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property deve ser um BIC ou SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property deve ser uma string booleana" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property deve ser um valor booleano" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property deve ser um endereço BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property deve ser um cartão de crédito" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property deve ser uma moeda" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property deve ser um formato uri de dados" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property deve ser uma instância de data" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property deve ser um Id Push Firebase" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property deve ser um hash do tipo $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property deve ser uma cor hexadecimal" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property deve ser um número hexadecimal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property deve ser uma cor HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property deve ser um número de cartão de identidade" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property deve ser um ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property deve ser uma string json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property deve ser uma string jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property deve ser um texto de latitude ou número" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property deve ser uma latitude,longitude string" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property deve ser uma longitude ou número" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property deve ser uma string minúscula" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property deve ser um endereço MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property deve ser um id para mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property deve ser um número negativo" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property deve ser um objeto não vazio" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property deve ser um número de acordo com as restrições especificadas" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property deve ser uma string de número" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property deve ser um número de telefone" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property deve ser uma porta" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property deve ser um número positivo" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property deve ser um código postal" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property deve ser uma especificação semântica de versionamento" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property deve ser uma string" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property deve ser um nome de domínio válido" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property deve ser um valor enum válido" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property deve ser uma string de data ISO 8601 válida" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property deve ser um código ISO31661 Alpha2 válido" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property deve ser um código ISO31661 Alpha3 válido" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property deve ser um número de telefone válido" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property deve ser uma representação válida de tempo militar no formato HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property deve ser um array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property deve ser um EAN (número do artigo europeu)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property deve ser um email" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property deve ser um endereço Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property deve ser um IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property deve ser uma instância de $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property deve ser um número inteiro" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property deve ser um endereço IP" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property deve ser um ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property deve ser um ISIN (estoque/identificador de segurança)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property deve ser um ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property deve ser um objeto" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property deve ser um endereço URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property deve ser um UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property deve ser codificado em base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property deve ser codificado em base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property deve ser divisível por $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property deve estar vazio" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property deve ser igual a $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property deve ser local" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property deve ser maior ou igual a $constraint1 e menor ou igual a $constraint2 caracteres" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property deve ser maior ou igual a $constraint1 caracteres" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property deve ser um formato de uri magnet" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property deve ser o tipo MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property deve ser um dos seguintes valores: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property deve ser uma data RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property deve ter cor RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property deve ser menor do que ou igual a $constraint1 caracteres" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property deve ser menor do que ou igual a $constraint2 caracteres" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property deve ser maiúsculo" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property deve ser um número octal válido" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property deve ser um número válido de passaporte" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property deve conter $constraint1 valores" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property deve conter uma string $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property deve conter caracteres de largura total e de metade da largura" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property deve conter caracteres de largura total" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property deve conter caracteres de meia largura" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property deve conter qualquer caractere de pares substituto" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property deve conter pelo menos $constraint1 elementos" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property deve conter não mais do que $constraint1 elementos" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property deve conter um ou mais caracteres multibyte" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property deve conter apenas caracteres ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property deve conter apenas letras (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property deve conter apenas letras e números" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property deve corresponder a $constraint1 expressão regular" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property não deve ser maior que $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property não deve ser menor que $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property não deve estar vazio" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property não deve ser igual a $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property não deve ser nulo ou indefinido" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property não deve ser um dos seguintes valores: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property não deve conter $constraint1 valores" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property não deve conter uma string $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "O comprimento do byte de $propertydeve cair no intervalo ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Todos os elementos de $propertydevem ser únicos" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "cada valor em " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "data máxima permitida para " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "data mínima permitida para " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "propriedade aninhada $property deve ser objeto ou matriz" + diff --git a/i18n/ro.po b/i18n/ro.po new file mode 100644 index 0000000000..416fdaddb3 --- /dev/null +++ b/i18n/ro.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ro\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Romanian\n" +"Language: ro_RO\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE decorator se așteaptă și obiectează ca valoare, dar are valoare falsă." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property este $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property nu este un număr zecimal valid." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property trebuie să fie un cod BIC sau SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property trebuie să fie un șir boolean" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property trebuie să fie o valoare booleană" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property trebuie să fie o adresă BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property trebuie să fie un card de credit" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property trebuie să fie o monedă" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property trebuie să fie un format de date" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property trebuie să fie o instanță de dată" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property trebuie să fie un Id de Firebase Push" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property trebuie să fie un hash de tip $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property trebuie să aibă o culoare hexadecimală" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property trebuie să fie un număr hexadecimal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property trebuie să fie o culoare HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property trebuie să fie numărul cărții de identitate" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property trebuie să fie un ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property trebuie să fie șir de caractere json" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property trebuie să fie un șir de caractere jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property trebuie să fie un șir sau un număr de latitudine" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property trebuie să fie o latitudine, șir de longitudine" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property trebuie să fie un șir sau un număr de longitudine" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property trebuie să fie un șir cu litere mici" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property trebuie să fie o adresă MAC" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property trebuie să fie un id mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property trebuie să fie un număr negativ" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property trebuie să fie un obiect non-gol" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property trebuie să fie un număr conform cu constrângerile specificate" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property trebuie să fie un șir de numere" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property trebuie să fie un număr de telefon" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property trebuie să fie un port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property trebuie să fie un număr pozitiv" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property trebuie să fie un cod poștal" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property trebuie să fie o Specificație de Versionare Semantică" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property trebuie să fie un șir" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property trebuie să fie un nume de domeniu valid" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property trebuie să fie o valoare validă pentru enum" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property trebuie să fie un șir de date ISO 8601 valabil" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property trebuie să fie un cod valid ISO31661 Alpha2" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property trebuie să fie un cod valid ISO31661 Alpha3" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property trebuie să fie un număr de telefon valid" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property trebuie să fie o reprezentare validă a timpului militar în formatul HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property trebuie să fie un array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property trebuie să fie un EAN (Număr european de articol)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property trebuie să fie un e-mail" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property trebuie să fie o adresă Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property trebuie să fie un IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property trebuie să fie o instanță de $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property trebuie să fie un număr întreg" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property trebuie să fie o adresă ip" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property trebuie să fie un ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property trebuie să fie un ISIN (identificator de stoc/securitate)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property trebuie să fie ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property trebuie să fie un obiect" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property trebuie să fie o adresă URL" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property trebuie să fie un UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property trebuie să fie codificat bază32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property trebuie să fie codată64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property trebuie să fie divizibil cu $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property trebuie să fie gol" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property trebuie să fie egal cu $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property trebuie să fie local" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property trebuie să fie mai lung sau egal cu $constraint1 și mai scurt sau egal cu $constraint2 caractere" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property trebuie să fie mai lung sau egal cu $constraint1 caractere" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property trebuie să fie format uri magnet" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property trebuie să aibă formatul MIME" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property trebuie să fie una dintre următoarele valori: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property trebuie să aibă data RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property trebuie să aibă culoarea RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property trebuie să fie mai scurt sau egal cu $constraint1 caractere" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property trebuie să fie mai scurt sau egal cu $constraint2 caractere" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property trebuie să fie majusculă" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property trebuie să fie un număr octal valid" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property trebuie să fie un număr valid de pașaport" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property trebuie să conțină $constraint1 valori" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property trebuie să conțină un șir $constraint1" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property trebuie să conțină caractere cu lățime completă și lățime de înjumătățire" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property trebuie să conțină caractere în lățime completă" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property trebuie să conțină caractere cu lățime maximă" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property trebuie să conțină orice caractere surogat" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property trebuie să conțină cel puțin $constraint1 elemente" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property trebuie să conțină cel mult $constraint1 elemente" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property trebuie să conțină una sau mai multe caractere multibyte" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property trebuie să conțină doar caractere ASCII" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property trebuie să conțină doar litere (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property trebuie să conțină doar litere și numere" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property trebuie să se potrivească cu $constraint1 expresia regulată" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property nu poate fi mai mare de $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property nu trebuie să fie mai mic de $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property nu trebuie să fie gol" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property nu ar trebui să fie egal cu $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property nu ar trebui să fie nul sau nedefinit" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property nu ar trebui să fie una dintre următoarele valori: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property nu trebuie să conțină $constraint1 valori" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property nu ar trebui să conțină un șir $constraint1" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "Lungimea octeților $propertytrebuie să cadă la ($constraint1, $constraint2) interval" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Toate elementele $propertytrebuie să fie unice" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "fiecare valoare în " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "Data maximă permisă pentru " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "data minimă permisă pentru " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "proprietatea imbricată $property trebuie să fie fie obiect sau array" + diff --git a/i18n/ru.po b/i18n/ru.po new file mode 100644 index 0000000000..6be20b3185 --- /dev/null +++ b/i18n/ru.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: ru\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Russian\n" +"Language: ru_RU\n" +"PO-Revision-Date: 2020-09-03 06:06\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "декоратор $IS_INSTANCE ожидает в объекте как значение, но получил ложное значение." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property - $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property не является допустимым десятичным числом." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property должен быть BIC или SWIFT кодом" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property должен быть логической строкой" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property должен быть логическим значением" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property должен быть BTC адресом" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property должен быть кредитной картой" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property должно быть валютой" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property должно быть форматом uri данных" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property должен быть экземпляром даты" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property должен быть идентификатором Push в Firebase" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property должен быть хэшем типа $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property должен быть шестнадцатеричным цветом" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property должен быть шестнадцатеричным числом" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property должен быть HSL цветом" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property должен быть идентификационным номером карты" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property должен быть ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property должен быть json строкой" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property должно быть строкой jwt" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property должен быть строкой широты или числом" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property должен быть широтой,строка долготы" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property должен быть строкой или числом" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property должен быть строкой в нижнем регистре" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property должен быть MAC-адресом" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property должен быть идентификатором обезьяны" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property должно быть отрицательным числом" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property должен быть непустым объектом" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property должен быть числом, соответствующим указанным ограничениям" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property должен быть числовой строкой" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property должен быть номером телефона" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property должен быть портом" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property должно быть положительным числом" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property должен быть почтовым индексом" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property должен быть спецификацией для Semantic Versioning" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property должен быть строкой" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property должен быть допустимым именем домена" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property должен быть допустимым значением enum" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property должен быть допустимой строкой даты ISO 8601" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property должен быть допустимым ISO31661 код Alpha2" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property должен быть действительным ISO31661 код Alpha3" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property должен быть действительным номером телефона" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property должен быть корректным представлением военного времени в формате HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property должен быть массивом" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property должен быть EAN (европейский номер статьи)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property должен быть email" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property должен быть Ethereum адресом" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property должен быть IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property должен быть экземпляром $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property должно быть целым числом" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property должен быть IP-адресом" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property должен быть ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property должен быть ISIN (идентификатор запасов/безопасности)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property должен быть ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property должен быть объектом" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property должен быть URL-адресом" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property должен быть UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property должен быть в кодировке base32" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property должен быть в кодировке base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property должен быть делим на $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property должен быть пустым" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property должен быть равен $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property должен быть локалью" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property должен быть длиннее или равен $constraint1 и меньше или равен $constraint2 символов" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property должен быть длиннее или равен $constraint1 символов" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property должно быть в формате Magnet uri" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property должен быть MIME-форматом" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property должен быть одним из следующих значений: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property должен быть датой RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property должен быть RGB цвет" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property должен быть короче или равен $constraint1 символов" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property должен быть короче или равен $constraint2 символов" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property должен быть заглавным" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property должно быть действительным восьмеричным числом" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property должен быть действительным номером паспорта" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property должен содержать $constraint1 значений" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property должен содержать $constraint1 строку" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property должен содержать символы с полной шириной и полушириной" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property должен содержать целую ширину символов" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property должен содержать символы с половиной ширины" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property должен содержать любые пары суррогатных символов" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property должен содержать как минимум $constraint1 элементов" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property должен содержать не более $constraint1 элементов" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property должен содержать один или более символов в мультибайтах" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property должен содержать только ASCII символы" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property должен содержать только буквы (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property должен содержать только буквы и цифры" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property должен совпадать с регулярным выражением $constraint1" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property не должен быть больше чем $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property должен быть не меньше чем $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property не может быть пустым" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property не должен быть равен $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property не должен быть пустым или неопределенным" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property не должен быть одним из следующих значений: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property не должен содержать $constraint1 значений" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property не должен содержать $constraint1 строку" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "длина байта $property должна совпадать с диапазоном ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Все элементы $property должны быть уникальными" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "каждое значение в " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "максимально допустимая дата для " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "минимально допустимая дата для " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "вложенное свойство $property должно быть либо объектом, либо массивом" + diff --git a/i18n/sr.po b/i18n/sr.po new file mode 100644 index 0000000000..4fc3198df3 --- /dev/null +++ b/i18n/sr.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: sr\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Serbian (Cyrillic)\n" +"Language: sr_SP\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/sv.po b/i18n/sv.po new file mode 100644 index 0000000000..2bc43299a5 --- /dev/null +++ b/i18n/sv.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: sv-SE\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Swedish\n" +"Language: sv_SE\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE dekorator förväntar sig och objekt som värde, men fick falskt värde." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property är $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property är inte ett giltigt decimaltal." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property måste vara en BIC eller SWIFT-kod" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property måste vara en boolesk sträng" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property måste vara ett booleskt värde" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property måste vara en BTC adress" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property måste vara ett kreditkort" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property måste vara en valuta" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property måste vara en data-uri format" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property måste vara en datuminstans" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property måste vara ett Firebase Push Id" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property måste vara en hash av typen $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property måste vara en hexadecimal färg" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property måste vara ett hexadecimaltal" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property måste vara en HSL-färg" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property måste vara ett identitetskortsnummer" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property måste vara en ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property måste vara en json-sträng" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property måste vara en jwt-sträng" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property måste vara en latitud-sträng eller ett nummer" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property måste vara en breddgrad, longitud sträng" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property måste vara en longitudsträng eller ett nummer" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property måste vara en liten sträng" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property måste vara en MAC-adress" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property måste vara ett mongodb-id" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property måste vara ett negativt tal" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property måste vara ett icke-tomt objekt" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property måste vara ett nummer som överensstämmer med de angivna begränsningarna" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property måste vara en nummersträng" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property måste vara ett telefonnummer" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property måste vara en port" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property måste vara ett positivt tal" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property måste vara ett postnummer" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property måste vara en Semantisk versionshanteringsspecifikation" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property måste vara en sträng" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property måste vara ett giltigt domännamn" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property måste vara ett giltigt enum-värde" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property måste vara en giltig ISO 8601 datum-sträng" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property måste vara en giltig ISO31661 alfa2-kod" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property måste vara en giltig ISO31661 alfa3-kod" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property måste vara ett giltigt telefonnummer" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property måste vara en giltig representation av militär tid i formatet HH:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property måste vara en array" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property måste vara en EAN (europeiskt artikelnummer)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property måste vara en e-postadress" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property måste vara en Ethereum-adress" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property måste vara en IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property måste vara en instans av $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property måste vara ett heltal nummer" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property måste vara en IP-adress" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property måste vara en ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property måste vara en ISIN (lager/säkerhetsidentifierare)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property måste vara en ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property måste vara ett objekt" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property måste vara en URL-adress" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property måste vara ett UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property måste vara base32 kodad" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property måste vara base64-kodad" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property måste vara delbart med $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property måste vara tom" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property måste vara lika med $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property måste vara lokal" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property måste vara längre än eller lika med $constraint1 och kortare än eller lika med $constraint2 tecken" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property måste vara längre än eller lika med $constraint1 tecken" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property måste vara magnet uri format" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property måste vara MIME-typformat" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property måste vara ett av följande värden: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property måste vara RFC 3339 datum" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property måste vara RGB-färg" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property måste vara kortare än eller lika med $constraint1 tecken" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property måste vara kortare än eller lika med $constraint2 tecken" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property måste vara versaler" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property måste vara giltigt oktal nummer" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property måste vara giltigt passnummer" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property måste innehålla $constraint1 värden" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property måste innehålla en $constraint1 sträng" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property måste innehålla tecken med full bredd och halvbredd" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property måste innehålla tecken med full bredd" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property måste innehålla en halv bredd tecken" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property måste innehålla något surrogatpar-tecken" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property måste innehålla minst $constraint1 element" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property får inte innehålla mer än $constraint1 element" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property måste innehålla ett eller flera multibyte-tecken" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property får endast innehålla ASCII-tecken" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property får endast innehålla bokstäver (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property får endast innehålla bokstäver och siffror" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property måste matcha reguljärt uttryck $constraint1" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property får inte vara större än $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property får inte vara mindre än $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property får inte vara tom" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property bör inte vara lika med $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property bör inte vara noll eller odefinierad" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property bör inte vara ett av följande värden: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property bör inte innehålla $constraint1 värden" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property får inte innehålla en $constraint1 sträng" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$propertys byte längd måste falla in i intervallet ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Alla $propertys element måste vara unika" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "varje värde i " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "maximalt tillåtna datum för " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "minimalt tillåtet datum för " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "kapslad egenskap $property måste vara antingen objekt eller array" + diff --git a/i18n/template.pot b/i18n/template.pot new file mode 100644 index 0000000000..23995a75b9 --- /dev/null +++ b/i18n/template.pot @@ -0,0 +1,415 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" diff --git a/i18n/tr.po b/i18n/tr.po new file mode 100644 index 0000000000..fe545e156b --- /dev/null +++ b/i18n/tr.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: tr\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Turkish\n" +"Language: tr_TR\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/uk.po b/i18n/uk.po new file mode 100644 index 0000000000..e90bf1a100 --- /dev/null +++ b/i18n/uk.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: uk\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Ukrainian\n" +"Language: uk_UA\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE декоратор очікує і об’єкт як значення, але отримав помилкове значення." + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property не є припустимим десятковим числом." + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property повинен бути кодом BIC або SWIFT" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property має бути логічним рядком" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property має бути логічним значенням" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property має бути адресою BTC" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property має бути кредитною карткою" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property має бути валютою" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property має бути форматом даних uri" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property повинен бути датою" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property повинен бути Firebase ID" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property має бути хеш типу $constraint1" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property має бути шістнадцятковим кольором" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property має бути шістнадцятковим числом" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property має бути кольором HSL" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property повинен бути номером візитної картки" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property має бути ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property повинен бути json рядок" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property повинен бути jwt-рядок" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property має бути рядком широти або числом" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property має бути широтою, рядок довготи" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property має бути рядком довготи або числом" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property має бути рядком нижнього регістру" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property має бути MAC-адресою" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property має бути ідентифікатором mongodb" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property має бути від'ємним числом" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property має бути непустим об'єктом" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property має бути числом відповідно до зазначених обмежень" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property має бути числом рядків" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property повинен бути телефонний номер" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property повинен бути портом" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property має бути додатним числом" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property має бути поштовим індексом" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property має бути Специфікація семантичних версій" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property має бути рядком" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property має бути дійсним доменним ім'ям" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property має бути коректним значенням переліку" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property має бути дійсним датою ISO 8601" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property має бути припустимим кодом ISO31661 Альфа2" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property має бути припустимим кодом ISO31661 Альфа3" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property повинен бути дійсний номер телефону" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property має бути коректним представленням військового часу у форматі H:MM" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property повинен бути масивом" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property має бути EAN (Європейський номер статей)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property має бути електронною поштою" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property має бути адресою Ethereum" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property має бути IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property повинен бути екземпляром $constraint1name" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property має бути цілим числом" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property повинен бути ip адресою" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property повинен бути ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property має бути ISIN (ідентифікаційним часткою/безпекою)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property повинен бути ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property має бути об'єктом" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property має бути URL-адресою" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property повинен бути UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property має бути base32 Кодування" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property має бути кодування base64" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property має ділитись на $constraint1" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property має бути порожнім" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property має дорівнювати $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property має бути локаль" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property має бути довшим або рівним $constraint1 і коротшим або рівним $constraint2 символу" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property має бути більше або дорівнювати $constraint1 символам" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property має бути рівним формату magnet uri" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property має бути форматом MIME типу" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property має бути одним з наступних значень: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property має бути датою RFC 3339" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property має бути кольором RGB" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property має бути коротшим або рівним $constraint1 символами" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property має бути коротшим або рівним $constraint2 символами" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property має бути верхнім регістром" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property має бути правильним вісімковим числом" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property має бути дійсним номером паспорта" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property має містити $constraint1 значень" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property повинен містити $constraint1 рядок" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property повинен містити символи з шириною і напівшириною" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property повинен містити цілі символи в повний колір" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property має містити напівширині символи" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property має містити всі пари супутників" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property має містити принаймні $constraint1 елементів" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property повинен містити не більше $constraint1 елементів" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property повинен мати один або декілька символів мультибайту" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property повинен містити тільки ASCII символи" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property може містити тільки літери (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property має містити тільки букви і цифри" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property має відповідати $constraint1 регулярним виразом" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property не має бути більшим за $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property не має бути меншим за $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property не повинен бути порожнім" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property не має дорівнювати $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property не повинен бути null або undefined" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property не повинен бути одним з наступних значень: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property не повинен містити $constraint1 значень" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property не повинен містити $constraint1 рядок" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "Довжина байта $propertyповинна впасти в діапазон ($constraint1, $constraint2)" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "Всі елементи $propertyмають бути унікальними" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "кожне значення в " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "макс. дозволена дата для " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "мінімальна дозволена дата для " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "вкладена властивість $property повинна бути або об’єктом або масивом" + diff --git a/i18n/vi.po b/i18n/vi.po new file mode 100644 index 0000000000..de3baa3233 --- /dev/null +++ b/i18n/vi.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: vi\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Vietnamese\n" +"Language: vi_VN\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "" + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "" + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "" + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "" + diff --git a/i18n/zh.po b/i18n/zh.po new file mode 100644 index 0000000000..27f9058162 --- /dev/null +++ b/i18n/zh.po @@ -0,0 +1,426 @@ +msgid "" +msgstr "" +"Content-Type: text/plain; charset=UTF-8\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Crowdin-Project: class-validator\n" +"X-Crowdin-Project-ID: 418130\n" +"X-Crowdin-Language: zh-CN\n" +"X-Crowdin-File: /i18n/i18n/template.pot\n" +"X-Crowdin-File-ID: 24\n" +"Project-Id-Version: class-validator\n" +"Language-Team: Chinese Simplified\n" +"Language: zh_CN\n" +"PO-Revision-Date: 2020-09-03 04:05\n" + +#: src/decorator/object/IsInstance.ts:41 +msgid "$IS_INSTANCE decorator expects and object as value, but got falsy value." +msgstr "$IS_INSTANCE 装饰者期望值和对象作为值,但却获得虚假值。" + +#: src/decorator/date/MaxDate.ts:25 +#: src/decorator/date/MinDate.ts:25 +msgid "$property is $constraint1" +msgstr "$property 是 $constraint1" + +#: src/decorator/string/IsDecimal.ts:32 +msgid "$property is not a valid decimal number." +msgstr "$property 不是一个有效的十进制数字。" + +#: src/decorator/string/IsBIC.ts:27 +msgid "$property must be a BIC or SWIFT code" +msgstr "$property 必须是 BIC 或 SWIFT 代码" + +#: src/decorator/string/IsBooleanString.ts:27 +msgid "$property must be a boolean string" +msgstr "$property 必须是一个布尔值" + +#: src/decorator/typechecker/IsBoolean.ts:24 +msgid "$property must be a boolean value" +msgstr "$property 必须是一个布尔值" + +#: src/decorator/string/IsBtcAddress.ts:27 +msgid "$property must be a BTC address" +msgstr "$property 必须是 BTC 地址" + +#: src/decorator/string/IsCreditCard.ts:27 +msgid "$property must be a credit card" +msgstr "$property 必须是一张信用卡" + +#: src/decorator/string/IsCurrency.ts:32 +msgid "$property must be a currency" +msgstr "$property 必须是货币" + +#: src/decorator/string/IsDataURI.ts:27 +msgid "$property must be a data uri format" +msgstr "$property 必须是一个数据 uri 格式" + +#: src/decorator/typechecker/IsDate.ts:24 +msgid "$property must be a Date instance" +msgstr "$property 必须是日期实例" + +#: src/decorator/string/IsFirebasePushId.ts:27 +msgid "$property must be a Firebase Push Id" +msgstr "$property 必须是 Firebase推送ID" + +#: src/decorator/string/IsHash.ts:31 +msgid "$property must be a hash of type $constraint1" +msgstr "$property 必须是类型 $constraint1 的哈希值" + +#: src/decorator/string/IsHexColor.ts:27 +msgid "$property must be a hexadecimal color" +msgstr "$property 必须是十六进制颜色" + +#: src/decorator/string/IsHexadecimal.ts:27 +msgid "$property must be a hexadecimal number" +msgstr "$property 必须是十六进制数字" + +#: src/decorator/string/IsHSL.ts:29 +msgid "$property must be a HSL color" +msgstr "$property 必须是一个 HSL 颜色" + +#: src/decorator/string/IsIdentityCard.ts:36 +msgid "$property must be a identity card number" +msgstr "$property 必须是身份卡号" + +#: src/decorator/string/IsISSN.ts:28 +msgid "$property must be a ISSN" +msgstr "$property 必须是一个 ISSN" + +#: src/decorator/string/IsJSON.ts:27 +msgid "$property must be a json string" +msgstr "$property 必须是 json 字符串" + +#: src/decorator/string/IsJWT.ts:27 +msgid "$property must be a jwt string" +msgstr "$property 必须是 jwt 字符串" + +#: src/decorator/common/IsLatitude.ts:25 +msgid "$property must be a latitude string or number" +msgstr "$property 必须是纬度字符串或数字" + +#: src/decorator/common/IsLatLong.ts:25 +msgid "$property must be a latitude,longitude string" +msgstr "$property 必须是纬度字符串,经度字符串" + +#: src/decorator/common/IsLongitude.ts:25 +msgid "$property must be a longitude string or number" +msgstr "$property 必须是经度字符串或数字" + +#: src/decorator/string/IsLowercase.ts:27 +msgid "$property must be a lowercase string" +msgstr "$property 必须是小写字符串" + +#: src/decorator/string/IsMacAddress.ts:42 +msgid "$property must be a MAC Address" +msgstr "$property 必须是 MAC 地址" + +#: src/decorator/string/IsMongoId.ts:27 +msgid "$property must be a mongodb id" +msgstr "$property 必须是 Mongodb id" + +#: src/decorator/number/IsNegative.ts:24 +msgid "$property must be a negative number" +msgstr "$property 必须是负数" + +#: src/decorator/object/IsNotEmptyObject.ts:45 +msgid "$property must be a non-empty object" +msgstr "$property 必须是非空对象" + +#: src/decorator/typechecker/IsNumber.ts:56 +msgid "$property must be a number conforming to the specified constraints" +msgstr "$property 必须是符合指定约束的数字" + +#: src/decorator/string/IsNumberString.ts:32 +msgid "$property must be a number string" +msgstr "$property 必须是一个数字字符串" + +#: src/decorator/string/IsMobilePhone.ts:53 +msgid "$property must be a phone number" +msgstr "$property 必须是电话号码" + +#: src/decorator/string/IsPort.ts:24 +msgid "$property must be a port" +msgstr "$property 必须是一个端口" + +#: src/decorator/number/IsPositive.ts:24 +msgid "$property must be a positive number" +msgstr "$property 必须是一个正数" + +#: src/decorator/string/IsPostalCode.ts:34 +msgid "$property must be a postal code" +msgstr "$property 必须是一个邮政编码" + +#: src/decorator/string/IsSemVer.ts:27 +msgid "$property must be a Semantic Versioning Specification" +msgstr "$property 必须是语义版本规格。" + +#: src/decorator/typechecker/IsString.ts:24 +msgid "$property must be a string" +msgstr "$property 必须是字符串" + +#: src/decorator/string/IsFQDN.ts:29 +msgid "$property must be a valid domain name" +msgstr "$property 必须是一个有效的域名" + +#: src/decorator/typechecker/IsEnum.ts:26 +msgid "$property must be a valid enum value" +msgstr "$property 必须是一个有效的枚举值" + +#: src/decorator/string/IsDateString.ts:30 +#: src/decorator/string/IsISO8601.ts:34 +msgid "$property must be a valid ISO 8601 date string" +msgstr "$property 必须是一个有效的 ISO 8601 日期字符串" + +#: src/decorator/string/IsISO31661Alpha2.ts:25 +msgid "$property must be a valid ISO31661 Alpha2 code" +msgstr "$property 必须是有效的 ISO31661 Alpha2 代码" + +#: src/decorator/string/IsISO31661Alpha3.ts:25 +msgid "$property must be a valid ISO31661 Alpha3 code" +msgstr "$property 必须是有效的 ISO31661 Alpha3 代码" + +#: src/decorator/string/IsPhoneNumber.ts:41 +msgid "$property must be a valid phone number" +msgstr "$property 必须是一个有效的电话号码" + +#: src/decorator/string/IsMilitaryTime.ts:29 +msgid "$property must be a valid representation of military time in the format HH:MM" +msgstr "$property 必须是以HH:MM 格式有效的军事时间" + +#: src/decorator/typechecker/IsArray.ts:24 +msgid "$property must be an array" +msgstr "$property 必须是一个数组" + +#: src/decorator/string/IsEAN.ts:27 +msgid "$property must be an EAN (European Article Number)" +msgstr "$property 必须是 ECO(欧洲文章编号)" + +#: src/decorator/string/IsEmail.ts:32 +msgid "$property must be an email" +msgstr "$property 必须是电子邮件" + +#: src/decorator/string/IsEthereumAddress.ts:27 +msgid "$property must be an Ethereum address" +msgstr "$property 必须是 Ethereum 地址" + +#: src/decorator/string/IsIBAN.ts:27 +msgid "$property must be an IBAN" +msgstr "$property 必须是 IBAN" + +#: src/decorator/object/IsInstance.ts:33 +msgid "$property must be an instance of $constraint1name" +msgstr "$property 必须是 $constraint1name 的实例" + +#: src/decorator/typechecker/IsInt.ts:24 +msgid "$property must be an integer number" +msgstr "$property 必须是整数" + +#: src/decorator/string/IsIP.ts:31 +msgid "$property must be an ip address" +msgstr "$property 必须是一个IP地址" + +#: src/decorator/string/IsISBN.ts:31 +msgid "$property must be an ISBN" +msgstr "$property 必须是一个 ISBN" + +#: src/decorator/string/IsISIN.ts:27 +msgid "$property must be an ISIN (stock/security identifier)" +msgstr "$property 必须是 ISIN (库存/安全标识符)" + +#: src/decorator/string/IsISRC.ts:27 +msgid "$property must be an ISRC" +msgstr "$property 必须是一个 ISRC" + +#: src/decorator/typechecker/IsObject.ts:26 +msgid "$property must be an object" +msgstr "$property 必须是对象" + +#: src/decorator/string/IsUrl.ts:29 +msgid "$property must be an URL address" +msgstr "$property 必须是一个URL地址" + +#: src/decorator/string/IsUUID.ts:30 +msgid "$property must be an UUID" +msgstr "$property 必须是 UUID" + +#: src/decorator/string/IsBase32.ts:27 +msgid "$property must be base32 encoded" +msgstr "$property 必须以 base32 编码" + +#: src/decorator/string/IsBase64.ts:27 +msgid "$property must be base64 encoded" +msgstr "$property 必须以 base64 编码" + +#: src/decorator/number/IsDivisibleBy.ts:26 +msgid "$property must be divisible by $constraint1" +msgstr "$property 必须被 $constraint1 拆分" + +#: src/decorator/common/IsEmpty.ts:23 +msgid "$property must be empty" +msgstr "$property 必须为空" + +#: src/decorator/common/Equals.ts:25 +msgid "$property must be equal to $constraint1" +msgstr "$property 必须等于 $constraint1" + +#: src/decorator/string/IsLocale.ts:26 +msgid "$property must be locale" +msgstr "$property 必须是区域设置" + +#: src/decorator/string/Length.ts:37 +msgid "$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters" +msgstr "$property 必须长于或等于 $constraint1 并且短于或等于 $constraint2 个字符" + +#: src/decorator/string/Length.ts:31 +#: src/decorator/string/MinLength.ts:28 +msgid "$property must be longer than or equal to $constraint1 characters" +msgstr "$property 必须长于或等于 $constraint1 个字符" + +#: src/decorator/string/IsMagnetURI.ts:27 +msgid "$property must be magnet uri format" +msgstr "$property 必须是 magnet uri 格式" + +#: src/decorator/string/IsMimeType.ts:27 +msgid "$property must be MIME type format" +msgstr "$property 必须是 MIME 类型格式" + +#: src/decorator/common/IsIn.ts:25 +msgid "$property must be one of the following values: $constraint1" +msgstr "$property 必须是以下值之一: $constraint1" + +#: src/decorator/string/IsRFC3339.ts:27 +msgid "$property must be RFC 3339 date" +msgstr "$property 必须是 RFC 3339 日期" + +#: src/decorator/string/IsRgbColor.ts:30 +msgid "$property must be RGB color" +msgstr "$property 必须是 RGB 颜色" + +#: src/decorator/string/MaxLength.ts:28 +msgid "$property must be shorter than or equal to $constraint1 characters" +msgstr "$property 必须小于或等于 $constraint1 个字符" + +#: src/decorator/string/Length.ts:33 +msgid "$property must be shorter than or equal to $constraint2 characters" +msgstr "$property 必须小于或等于 $constraint2 个字符" + +#: src/decorator/string/IsUppercase.ts:27 +msgid "$property must be uppercase" +msgstr "$property 必须是大写" + +#: src/decorator/string/IsOctal.ts:27 +msgid "$property must be valid octal number" +msgstr "$property 必须是有效的八进制数字" + +#: src/decorator/string/IsPassportNumber.ts:28 +msgid "$property must be valid passport number" +msgstr "$property 必须是有效的护照号码" + +#: src/decorator/array/ArrayContains.ts:29 +msgid "$property must contain $constraint1 values" +msgstr "$property 必须包含 $constraint1 个值" + +#: src/decorator/string/Contains.ts:28 +msgid "$property must contain a $constraint1 string" +msgstr "$property 必须包含 $constraint1 字符串" + +#: src/decorator/string/IsVariableWidth.ts:27 +msgid "$property must contain a full-width and half-width characters" +msgstr "$property 必须包含全宽和半宽字符" + +#: src/decorator/string/IsFullWidth.ts:27 +msgid "$property must contain a full-width characters" +msgstr "$property 必须包含全宽字符" + +#: src/decorator/string/IsHalfWidth.ts:27 +msgid "$property must contain a half-width characters" +msgstr "$property 必须包含半宽字符" + +#: src/decorator/string/IsSurrogatePair.ts:27 +msgid "$property must contain any surrogate pairs chars" +msgstr "$property 必须包含任何代理对字符" + +#: src/decorator/array/ArrayMinSize.ts:27 +msgid "$property must contain at least $constraint1 elements" +msgstr "$property 必须包含至少 $constraint1 元素" + +#: src/decorator/array/ArrayMaxSize.ts:27 +msgid "$property must contain not more than $constraint1 elements" +msgstr "$property 必须包含不超过 $constraint1 元素" + +#: src/decorator/string/IsMultibyte.ts:27 +msgid "$property must contain one or more multibyte chars" +msgstr "$property 必须包含一个或多个多字节" + +#: src/decorator/string/IsAscii.ts:27 +msgid "$property must contain only ASCII characters" +msgstr "$property 只能包含 ASCII 字符" + +#: src/decorator/string/IsAlpha.ts:29 +msgid "$property must contain only letters (a-zA-Z)" +msgstr "$property 只能包含字母 (a-zA-Z)" + +#: src/decorator/string/IsAlphanumeric.ts:29 +msgid "$property must contain only letters and numbers" +msgstr "$property 只能包含字母和数字" + +#: src/decorator/string/Matches.ts:43 +msgid "$property must match $constraint1 regular expression" +msgstr "$property 必须匹配 $constraint1 正则表达式" + +#: src/decorator/number/Max.ts:25 +msgid "$property must not be greater than $constraint1" +msgstr "$property 不能大于 $constraint1" + +#: src/decorator/number/Min.ts:25 +msgid "$property must not be less than $constraint1" +msgstr "$property 不能小于 $constraint1" + +#: src/decorator/array/ArrayNotEmpty.ts:26 +#: src/decorator/common/IsNotEmpty.ts:24 +msgid "$property should not be empty" +msgstr "$property 不应该为空" + +#: src/decorator/common/NotEquals.ts:25 +msgid "$property should not be equal to $constraint1" +msgstr "$property 不能等于 $constraint1" + +#: src/decorator/common/IsDefined.ts:26 +msgid "$property should not be null or undefined" +msgstr "$property 不应为空或未定义" + +#: src/decorator/common/IsNotIn.ts:25 +msgid "$property should not be one of the following values: $constraint1" +msgstr "$property 不应该是以下值之一: $constraint1" + +#: src/decorator/array/ArrayNotContains.ts:29 +msgid "$property should not contain $constraint1 values" +msgstr "$property 不应该包含 $constraint1 个值" + +#: src/decorator/string/NotContains.ts:28 +msgid "$property should not contain a $constraint1 string" +msgstr "$property 不应该包含 $constraint1 字符串" + +#: src/decorator/string/IsByteLength.ts:29 +msgid "$property's byte length must fall into ($constraint1, $constraint2) range" +msgstr "$property的字节长度必须到 ($constraint1, $constraint2) 范围" + +#: src/decorator/array/ArrayUnique.ts:29 +msgid "All $property's elements must be unique" +msgstr "所有 $property的元素必须是唯一的" + +#: src/decorator/common/ValidateNested.ts:13 +msgid "each value in " +msgstr "每个值在 " + +#: src/decorator/date/MaxDate.ts:25 +msgid "maximal allowed date for " +msgstr "最大允许日期 " + +#: src/decorator/date/MinDate.ts:25 +msgid "minimal allowed date for " +msgstr "最小允许日期 " + +#: src/decorator/common/ValidateNested.ts:14 +msgid "nested property $property must be either object or array" +msgstr "嵌套属性 $property 必须是对象或数组" + diff --git a/package-lock.json b/package-lock.json index 397f8dfb5e..3a14ce2afc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1075,6 +1075,16 @@ "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true }, + "@types/glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, "@types/graceful-fs": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.3.tgz", @@ -1125,6 +1135,12 @@ "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", "dev": true }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, "@types/node": { "version": "14.6.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.4.tgz", @@ -1143,6 +1159,12 @@ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, + "@types/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==", + "dev": true + }, "@types/prettier": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.0.2.tgz", @@ -1993,6 +2015,12 @@ "which": "^2.0.1" } }, + "css-selector-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/css-selector-parser/-/css-selector-parser-1.4.1.tgz", + "integrity": "sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==", + "dev": true + }, "cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -2194,6 +2222,26 @@ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", + "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -2965,6 +3013,30 @@ "assert-plus": "^1.0.0" } }, + "gettext-extractor": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/gettext-extractor/-/gettext-extractor-3.5.2.tgz", + "integrity": "sha512-4fJViJvAkWBUV8BHwAaY2T1oirsIEAYgYfYm/+x/gF2xWxOXgn4f7Cjsdq+xuuoA9HZga+fx2PIDP+07zbmP6g==", + "dev": true, + "requires": { + "@types/glob": "5 - 7", + "@types/parse5": "^5", + "css-selector-parser": "^1.3", + "glob": "5 - 7", + "parse5": "^5", + "pofile": "1.0.x", + "typescript": "2 - 3" + } + }, + "gettext-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz", + "integrity": "sha1-LFpmONiTk0ubVQN9CtgstwBLJnk=", + "dev": true, + "requires": { + "encoding": "^0.1.11" + } + }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -3026,6 +3098,12 @@ "har-schema": "^2.0.0" } }, + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "dev": true + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -5385,6 +5463,41 @@ "which": "^2.0.2" } }, + "nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "dev": true, + "requires": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "dev": true + }, + "chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "dev": true, + "requires": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + } + }, + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "dev": true + } + } + }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -5674,6 +5787,22 @@ "semver-compare": "^1.0.0" } }, + "po2json": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz", + "integrity": "sha1-R7spUtoy1Yob4vJWpZjuvAt0URg=", + "dev": true, + "requires": { + "gettext-parser": "1.1.0", + "nomnom": "1.8.1" + } + }, + "pofile": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pofile/-/pofile-1.0.11.tgz", + "integrity": "sha512-Vy9eH1dRD9wHjYt/QqXcTz+RnX/zg53xK+KljFSX30PvdDMb2z+c6uDUeblUGqqJgz3QFsdlA0IJvHziPmWtQg==", + "dev": true + }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", @@ -6971,6 +7100,12 @@ "integrity": "sha512-e4ERvRV2wb+rRZ/IQeb3jm2VxBsirQLpQhdxplZ2MEzGvDkkMmPglecnNDfSUBivMjP93vRbngYYDQqQ/78bcQ==", "dev": true }, + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "dev": true + }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", diff --git a/package.json b/package.json index e841087448..a1ca1a3ee4 100644 --- a/package.json +++ b/package.json @@ -27,6 +27,8 @@ "build:cjs": "tsc --project tsconfig.prod.cjs.json", "build:umd": "rollup --config rollup.config.js", "build:types": "tsc --project tsconfig.prod.types.json", + "i18n:extract": "node ./scripts/string-extractor.js", + "i18n:fix": "prettier --write \"i18n/**/*.json\"", "prettier:fix": "prettier --write \"**/*.{ts,md}\"", "prettier:check": "prettier --check \"**/*.{ts,md}\"", "lint:fix": "eslint --max-warnings 0 --fix --ext .ts src/", @@ -50,9 +52,11 @@ "eslint": "^7.8.1", "eslint-config-prettier": "^6.11.0", "eslint-plugin-jest": "^23.20.0", + "gettext-extractor": "^3.5.2", "husky": "^4.2.5", "jest": "^26.4.2", "lint-staged": "^10.2.13", + "po2json": "^0.4.5", "prettier": "^2.1.1", "reflect-metadata": "0.1.13", "rimraf": "3.0.2", diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 0000000000..68da305d72 --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# simulate ci build in local machine +npm ci --ignore-scripts +npm run i18n:extract +npm run i18n:fix +npm run prettier:fix +npm run lint:fix +npm run prettier:check +npm run lint:check +npm run test:ci +npm run build:es2015 +npm run build:esm5 +npm run build:cjs +npm run build:umd +npm run build:types +cp -r i18n build +cp LICENSE build/LICENSE +cp README.md build/README.md +jq 'del(.devDependencies) | del(.scripts)' package.json > build/package.json \ No newline at end of file diff --git a/scripts/publish.sh b/scripts/publish.sh new file mode 100755 index 0000000000..a9a115ad3a --- /dev/null +++ b/scripts/publish.sh @@ -0,0 +1,3 @@ +#!/bin/bash +# simulate ci publish in local machine +npm publish ./build \ No newline at end of file diff --git a/scripts/string-extractor.js b/scripts/string-extractor.js new file mode 100644 index 0000000000..c92a98af5c --- /dev/null +++ b/scripts/string-extractor.js @@ -0,0 +1,87 @@ +const { GettextExtractor, JsExtractors, HtmlExtractors } = require('gettext-extractor'); +const { writeFileSync, readFileSync, existsSync, readdirSync } = require('fs'); +const { parseFileSync } = require('po2json'); +const { parse } = require('path'); + +const defautLanguage = 'en'; +const defaultJsonFile = `./i18n/${defautLanguage}.json`; +const defaultPotFile = `./i18n/template.pot`; + +const updatePoFromJson = false; + +const languages = []; + +readdirSync('./i18n').forEach(file => { + if (parse(file).ext === '.po') { + languages.push(parse(file).name); + } +}); + +let extractor = new GettextExtractor(); + +extractor + .createJsParser([ + JsExtractors.callExpression('getText', { + arguments: { + text: 0, + context: 1, + }, + }), + ]) + .parseFilesGlob('./src/**/*.@(ts|js|tsx|jsx)'); + +const messages = extractor.getMessages().reduce((all, cur) => { + all[cur.text] = cur.text; + return all; +}, {}); + +writeFileSync(defaultJsonFile, JSON.stringify(messages, null, 4)); +extractor.savePotFile(defaultPotFile); +extractor.printStats(); + +for (let l = 0; l < languages.length; l++) { + const lang = languages[l]; + const jsonFile = `./i18n/${lang}.json`; + const poFile = `./i18n/${lang}.po`; + + let existsJsonData = null; + let existsPoAsJsonData = null; + + if (existsSync(poFile)) { + existsPoAsJsonData = convertPoJsonToNormalJson(parseFileSync(poFile)); + } + if (existsSync(jsonFile)) { + existsJsonData = JSON.parse(readFileSync(jsonFile)); + } + if (!existsPoAsJsonData) { + extractor.savePotFile(poFile); + existsPoAsJsonData = messages; + } + if (existsJsonData && updatePoFromJson) { + const keys = Object.keys(existsPoAsJsonData); + for (let k = 0; k < keys.length; k++) { + const key = keys[k]; + if (Object.getOwnPropertyDescriptor(existsJsonData, key)) { + existsPoAsJsonData[key] = existsJsonData[key]; + } + } + } + writeFileSync(jsonFile, JSON.stringify(existsPoAsJsonData, null, 4)); +} + +function convertPoJsonToNormalJson(data) { + const newObject = {}; + if (data && typeof data === 'object') { + const keys = Object.keys(data); + keys.forEach(key => { + if (key && data[key] && Array.isArray(data[key]) && data[key].length === 2) { + newObject[key] = data[key][1]; + } else { + if (key) { + newObject[key] = data[key]; + } + } + }); + } + return newObject; +} diff --git a/src/decorator/array/ArrayContains.ts b/src/decorator/array/ArrayContains.ts index 96cf4fa891..2c230640c4 100644 --- a/src/decorator/array/ArrayContains.ts +++ b/src/decorator/array/ArrayContains.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_CONTAINS = 'arrayContains'; @@ -25,7 +26,7 @@ export function ArrayContains(values: any[], validationOptions?: ValidationOptio validator: { validate: (value, args): boolean => arrayContains(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain $constraint1 values', + eachPrefix => eachPrefix + getText('$property must contain $constraint1 values'), validationOptions ), }, diff --git a/src/decorator/array/ArrayMaxSize.ts b/src/decorator/array/ArrayMaxSize.ts index 1eaff66c0f..f8a4e4625f 100644 --- a/src/decorator/array/ArrayMaxSize.ts +++ b/src/decorator/array/ArrayMaxSize.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_MAX_SIZE = 'arrayMaxSize'; @@ -23,7 +24,7 @@ export function ArrayMaxSize(max: number, validationOptions?: ValidationOptions) validator: { validate: (value, args): boolean => arrayMaxSize(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain not more than $constraint1 elements', + eachPrefix => eachPrefix + getText('$property must contain not more than $constraint1 elements'), validationOptions ), }, diff --git a/src/decorator/array/ArrayMinSize.ts b/src/decorator/array/ArrayMinSize.ts index 4d2748b91f..811fb40eff 100644 --- a/src/decorator/array/ArrayMinSize.ts +++ b/src/decorator/array/ArrayMinSize.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_MIN_SIZE = 'arrayMinSize'; @@ -23,7 +24,7 @@ export function ArrayMinSize(min: number, validationOptions?: ValidationOptions) validator: { validate: (value, args): boolean => arrayMinSize(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain at least $constraint1 elements', + eachPrefix => eachPrefix + getText('$property must contain at least $constraint1 elements'), validationOptions ), }, diff --git a/src/decorator/array/ArrayNotContains.ts b/src/decorator/array/ArrayNotContains.ts index 66a323732b..e05b21e934 100644 --- a/src/decorator/array/ArrayNotContains.ts +++ b/src/decorator/array/ArrayNotContains.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_NOT_CONTAINS = 'arrayNotContains'; @@ -25,7 +26,7 @@ export function ArrayNotContains(values: any[], validationOptions?: ValidationOp validator: { validate: (value, args): boolean => arrayNotContains(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property should not contain $constraint1 values', + eachPrefix => eachPrefix + getText('$property should not contain $constraint1 values'), validationOptions ), }, diff --git a/src/decorator/array/ArrayNotEmpty.ts b/src/decorator/array/ArrayNotEmpty.ts index 6f3414f6e8..7c6fb8a5c3 100644 --- a/src/decorator/array/ArrayNotEmpty.ts +++ b/src/decorator/array/ArrayNotEmpty.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_NOT_EMPTY = 'arrayNotEmpty'; @@ -21,7 +22,10 @@ export function ArrayNotEmpty(validationOptions?: ValidationOptions): PropertyDe name: ARRAY_NOT_EMPTY, validator: { validate: (value, args): boolean => arrayNotEmpty(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property should not be empty', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property should not be empty'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/array/ArrayUnique.ts b/src/decorator/array/ArrayUnique.ts index 873e4e5dc3..edce1df068 100644 --- a/src/decorator/array/ArrayUnique.ts +++ b/src/decorator/array/ArrayUnique.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const ARRAY_UNIQUE = 'arrayUnique'; @@ -25,7 +26,7 @@ export function ArrayUnique(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => arrayUnique(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + "All $property's elements must be unique", + eachPrefix => eachPrefix + getText("All $property's elements must be unique"), validationOptions ), }, diff --git a/src/decorator/common/Equals.ts b/src/decorator/common/Equals.ts index 27b89a801a..856f2031fc 100644 --- a/src/decorator/common/Equals.ts +++ b/src/decorator/common/Equals.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const EQUALS = 'equals'; @@ -21,7 +22,7 @@ export function Equals(comparison: any, validationOptions?: ValidationOptions): validator: { validate: (value, args): boolean => equals(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be equal to $constraint1', + eachPrefix => eachPrefix + getText('$property must be equal to $constraint1'), validationOptions ), }, diff --git a/src/decorator/common/IsDefined.ts b/src/decorator/common/IsDefined.ts index 69c08901a3..cd8d01c8c6 100644 --- a/src/decorator/common/IsDefined.ts +++ b/src/decorator/common/IsDefined.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from './ValidateBy'; import { ValidationTypes } from '../../validation/ValidationTypes'; +import { getText } from '../../multi-lang'; // isDefined is (yet) a special case export const IS_DEFINED = ValidationTypes.IS_DEFINED; @@ -22,7 +23,7 @@ export function IsDefined(validationOptions?: ValidationOptions): PropertyDecora validator: { validate: (value): boolean => isDefined(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property should not be null or undefined', + eachPrefix => eachPrefix + getText('$property should not be null or undefined'), validationOptions ), }, diff --git a/src/decorator/common/IsEmpty.ts b/src/decorator/common/IsEmpty.ts index 1447811b9e..fa3e9ed4af 100644 --- a/src/decorator/common/IsEmpty.ts +++ b/src/decorator/common/IsEmpty.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_EMPTY = 'isEmpty'; @@ -19,7 +20,7 @@ export function IsEmpty(validationOptions?: ValidationOptions): PropertyDecorato name: IS_EMPTY, validator: { validate: (value, args): boolean => isEmpty(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be empty', validationOptions), + defaultMessage: buildMessage(eachPrefix => eachPrefix + getText('$property must be empty'), validationOptions), }, }, validationOptions diff --git a/src/decorator/common/IsIn.ts b/src/decorator/common/IsIn.ts index 2570a8cf86..45871da6c9 100644 --- a/src/decorator/common/IsIn.ts +++ b/src/decorator/common/IsIn.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_IN = 'isIn'; @@ -21,7 +22,7 @@ export function IsIn(values: readonly any[], validationOptions?: ValidationOptio validator: { validate: (value, args): boolean => isIn(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be one of the following values: $constraint1', + eachPrefix => eachPrefix + getText('$property must be one of the following values: $constraint1'), validationOptions ), }, diff --git a/src/decorator/common/IsLatLong.ts b/src/decorator/common/IsLatLong.ts index becbf29c33..723103d845 100644 --- a/src/decorator/common/IsLatLong.ts +++ b/src/decorator/common/IsLatLong.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from './ValidateBy'; import isLatLongValidator from 'validator/lib/isLatLong'; +import { getText } from '../../multi-lang'; export const IS_LATLONG = 'isLatLong'; @@ -21,7 +22,7 @@ export function IsLatLong(validationOptions?: ValidationOptions): PropertyDecora validator: { validate: (value, args): boolean => isLatLong(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a latitude,longitude string', + eachPrefix => eachPrefix + getText('$property must be a latitude,longitude string'), validationOptions ), }, diff --git a/src/decorator/common/IsLatitude.ts b/src/decorator/common/IsLatitude.ts index 1be12e130e..d419f49829 100644 --- a/src/decorator/common/IsLatitude.ts +++ b/src/decorator/common/IsLatitude.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from './ValidateBy'; import { isLatLong } from './IsLatLong'; +import { getText } from '../../multi-lang'; export const IS_LATITUDE = 'isLatitude'; @@ -21,7 +22,7 @@ export function IsLatitude(validationOptions?: ValidationOptions): PropertyDecor validator: { validate: (value, args): boolean => isLatitude(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a latitude string or number', + eachPrefix => eachPrefix + getText('$property must be a latitude string or number'), validationOptions ), }, diff --git a/src/decorator/common/IsLongitude.ts b/src/decorator/common/IsLongitude.ts index 013f5387af..3aeb84bbfc 100644 --- a/src/decorator/common/IsLongitude.ts +++ b/src/decorator/common/IsLongitude.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from './ValidateBy'; import { isLatLong } from './IsLatLong'; +import { getText } from '../../multi-lang'; export const IS_LONGITUDE = 'isLongitude'; @@ -21,7 +22,7 @@ export function IsLongitude(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isLongitude(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a longitude string or number', + eachPrefix => eachPrefix + getText('$property must be a longitude string or number'), validationOptions ), }, diff --git a/src/decorator/common/IsNotEmpty.ts b/src/decorator/common/IsNotEmpty.ts index 605da09edc..7b7bd0f0ec 100644 --- a/src/decorator/common/IsNotEmpty.ts +++ b/src/decorator/common/IsNotEmpty.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_NOT_EMPTY = 'isNotEmpty'; @@ -19,7 +20,10 @@ export function IsNotEmpty(validationOptions?: ValidationOptions): PropertyDecor name: IS_NOT_EMPTY, validator: { validate: (value, args): boolean => isNotEmpty(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property should not be empty', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property should not be empty'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/common/IsNotIn.ts b/src/decorator/common/IsNotIn.ts index 37c9b8997e..110b0a78fc 100644 --- a/src/decorator/common/IsNotIn.ts +++ b/src/decorator/common/IsNotIn.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_NOT_IN = 'isNotIn'; @@ -21,7 +22,7 @@ export function IsNotIn(values: readonly any[], validationOptions?: ValidationOp validator: { validate: (value, args): boolean => isNotIn(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property should not be one of the following values: $constraint1', + eachPrefix => eachPrefix + getText('$property should not be one of the following values: $constraint1'), validationOptions ), }, diff --git a/src/decorator/common/NotEquals.ts b/src/decorator/common/NotEquals.ts index 3872a2dd0b..3d15ae11c3 100644 --- a/src/decorator/common/NotEquals.ts +++ b/src/decorator/common/NotEquals.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const NOT_EQUALS = 'notEquals'; @@ -21,7 +22,7 @@ export function NotEquals(comparison: any, validationOptions?: ValidationOptions validator: { validate: (value, args): boolean => notEquals(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property should not be equal to $constraint1', + eachPrefix => eachPrefix + getText('$property should not be equal to $constraint1'), validationOptions ), }, diff --git a/src/decorator/common/ValidateNested.ts b/src/decorator/common/ValidateNested.ts index da56eaefa4..7ab357407b 100644 --- a/src/decorator/common/ValidateNested.ts +++ b/src/decorator/common/ValidateNested.ts @@ -3,14 +3,15 @@ import { ValidationMetadataArgs } from '../../metadata/ValidationMetadataArgs'; import { ValidationTypes } from '../../validation/ValidationTypes'; import { ValidationMetadata } from '../../metadata/ValidationMetadata'; import { getMetadataStorage } from '../../metadata/MetadataStorage'; +import { getText } from '../../multi-lang'; /** * Objects / object arrays marked with this decorator will also be validated. */ export function ValidateNested(validationOptions?: ValidationOptions): PropertyDecorator { const opts: ValidationOptions = { ...validationOptions }; - const eachPrefix = opts.each ? 'each value in ' : ''; - opts.message = opts.message || eachPrefix + 'nested property $property must be either object or array'; + const eachPrefix = opts.each ? getText('each value in ') : ''; + opts.message = opts.message || eachPrefix + getText('nested property $property must be either object or array'); return function (object: object, propertyName: string): void { const args: ValidationMetadataArgs = { diff --git a/src/decorator/date/MaxDate.ts b/src/decorator/date/MaxDate.ts index e679c8d0c6..a5a0218906 100644 --- a/src/decorator/date/MaxDate.ts +++ b/src/decorator/date/MaxDate.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const MAX_DATE = 'maxDate'; @@ -21,7 +22,7 @@ export function MaxDate(date: Date, validationOptions?: ValidationOptions): Prop validator: { validate: (value, args): boolean => maxDate(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => 'maximal allowed date for ' + eachPrefix + '$property is $constraint1', + eachPrefix => getText('maximal allowed date for ') + eachPrefix + getText('$property is $constraint1'), validationOptions ), }, diff --git a/src/decorator/date/MinDate.ts b/src/decorator/date/MinDate.ts index ae93c841a7..777495f275 100644 --- a/src/decorator/date/MinDate.ts +++ b/src/decorator/date/MinDate.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const MIN_DATE = 'minDate'; @@ -21,7 +22,7 @@ export function MinDate(date: Date, validationOptions?: ValidationOptions): Prop validator: { validate: (value, args): boolean => minDate(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => 'minimal allowed date for ' + eachPrefix + '$property is $constraint1', + eachPrefix => getText('minimal allowed date for ') + eachPrefix + getText('$property is $constraint1'), validationOptions ), }, diff --git a/src/decorator/number/IsDivisibleBy.ts b/src/decorator/number/IsDivisibleBy.ts index 65574c2f64..98cb2763d8 100644 --- a/src/decorator/number/IsDivisibleBy.ts +++ b/src/decorator/number/IsDivisibleBy.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isDivisibleByValidator from 'validator/lib/isDivisibleBy'; +import { getText } from '../../multi-lang'; export const IS_DIVISIBLE_BY = 'isDivisibleBy'; @@ -22,7 +23,7 @@ export function IsDivisibleBy(num: number, validationOptions?: ValidationOptions validator: { validate: (value, args): boolean => isDivisibleBy(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be divisible by $constraint1', + eachPrefix => eachPrefix + getText('$property must be divisible by $constraint1'), validationOptions ), }, diff --git a/src/decorator/number/IsNegative.ts b/src/decorator/number/IsNegative.ts index 85463760fa..6f2a17e678 100644 --- a/src/decorator/number/IsNegative.ts +++ b/src/decorator/number/IsNegative.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_NEGATIVE = 'isNegative'; @@ -20,7 +21,7 @@ export function IsNegative(validationOptions?: ValidationOptions): PropertyDecor validator: { validate: (value, args): boolean => isNegative(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a negative number', + eachPrefix => eachPrefix + getText('$property must be a negative number'), validationOptions ), }, diff --git a/src/decorator/number/IsPositive.ts b/src/decorator/number/IsPositive.ts index 41c888d678..be658a28bd 100644 --- a/src/decorator/number/IsPositive.ts +++ b/src/decorator/number/IsPositive.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_POSITIVE = 'isPositive'; @@ -20,7 +21,7 @@ export function IsPositive(validationOptions?: ValidationOptions): PropertyDecor validator: { validate: (value, args): boolean => isPositive(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a positive number', + eachPrefix => eachPrefix + getText('$property must be a positive number'), validationOptions ), }, diff --git a/src/decorator/number/Max.ts b/src/decorator/number/Max.ts index 682bb0747d..2b50e3fb20 100644 --- a/src/decorator/number/Max.ts +++ b/src/decorator/number/Max.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const MAX = 'max'; @@ -21,7 +22,7 @@ export function Max(maxValue: number, validationOptions?: ValidationOptions): Pr validator: { validate: (value, args): boolean => max(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must not be greater than $constraint1', + eachPrefix => eachPrefix + getText('$property must not be greater than $constraint1'), validationOptions ), }, diff --git a/src/decorator/number/Min.ts b/src/decorator/number/Min.ts index 9eede60de4..33b22a83de 100644 --- a/src/decorator/number/Min.ts +++ b/src/decorator/number/Min.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const MIN = 'min'; @@ -21,7 +22,7 @@ export function Min(minValue: number, validationOptions?: ValidationOptions): Pr validator: { validate: (value, args): boolean => min(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must not be less than $constraint1', + eachPrefix => eachPrefix + getText('$property must not be less than $constraint1'), validationOptions ), }, diff --git a/src/decorator/object/IsInstance.ts b/src/decorator/object/IsInstance.ts index 10bf2d0bd9..faabf6f6cb 100644 --- a/src/decorator/object/IsInstance.ts +++ b/src/decorator/object/IsInstance.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_INSTANCE = 'isInstance'; @@ -27,9 +28,21 @@ export function IsInstance( validate: (value, args): boolean => isInstance(value, args.constraints[0]), defaultMessage: buildMessage((eachPrefix, args) => { if (args.constraints[0]) { - return eachPrefix + `$property must be an instance of ${args.constraints[0].name as string}`; + return ( + eachPrefix + + getText(`$property must be an instance of $constraint1name`).replace( + '$constraint1name', + (args && args.constraints && args.constraints[0].name) as string + ) + ); } else { - return eachPrefix + `${IS_INSTANCE} decorator expects and object as value, but got falsy value.`; + return ( + eachPrefix + + getText(`$IS_INSTANCE decorator expects and object as value, but got falsy value.`).replace( + '$IS_INSTANCE', + IS_INSTANCE + ) + ); } }, validationOptions), }, diff --git a/src/decorator/object/IsNotEmptyObject.ts b/src/decorator/object/IsNotEmptyObject.ts index 1fe85b91cf..7cb37f567a 100644 --- a/src/decorator/object/IsNotEmptyObject.ts +++ b/src/decorator/object/IsNotEmptyObject.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import { isObject } from '../typechecker/IsObject'; +import { getText } from '../../multi-lang'; export const IS_NOT_EMPTY_OBJECT = 'isNotEmptyObject'; @@ -41,7 +42,7 @@ export function IsNotEmptyObject( validator: { validate: (value, args): boolean => isNotEmptyObject(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a non-empty object', + eachPrefix => eachPrefix + getText('$property must be a non-empty object'), validationOptions ), }, diff --git a/src/decorator/string/Contains.ts b/src/decorator/string/Contains.ts index f9067c5bff..6644bf5625 100644 --- a/src/decorator/string/Contains.ts +++ b/src/decorator/string/Contains.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import containsValidator from 'validator/lib/contains'; +import { getText } from '../../multi-lang'; export const CONTAINS = 'contains'; @@ -24,7 +25,7 @@ export function Contains(seed: string, validationOptions?: ValidationOptions): P validator: { validate: (value, args): boolean => contains(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain a $constraint1 string', + eachPrefix => eachPrefix + getText('$property must contain a $constraint1 string'), validationOptions ), }, diff --git a/src/decorator/string/IsAlpha.ts b/src/decorator/string/IsAlpha.ts index 2e75f33f0e..ba0f79ef57 100644 --- a/src/decorator/string/IsAlpha.ts +++ b/src/decorator/string/IsAlpha.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isAlphaValidator from 'validator/lib/isAlpha'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_ALPHA = 'isAlpha'; @@ -25,7 +26,7 @@ export function IsAlpha(locale?: string, validationOptions?: ValidationOptions): validator: { validate: (value, args): boolean => isAlpha(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain only letters (a-zA-Z)', + eachPrefix => eachPrefix + getText('$property must contain only letters (a-zA-Z)'), validationOptions ), }, diff --git a/src/decorator/string/IsAlphanumeric.ts b/src/decorator/string/IsAlphanumeric.ts index 2447b0310e..65535158ab 100644 --- a/src/decorator/string/IsAlphanumeric.ts +++ b/src/decorator/string/IsAlphanumeric.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isAlphanumericValidator from 'validator/lib/isAlphanumeric'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_ALPHANUMERIC = 'isAlphanumeric'; @@ -25,7 +26,7 @@ export function IsAlphanumeric(locale?: string, validationOptions?: ValidationOp validator: { validate: (value, args): boolean => isAlphanumeric(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain only letters and numbers', + eachPrefix => eachPrefix + getText('$property must contain only letters and numbers'), validationOptions ), }, diff --git a/src/decorator/string/IsAscii.ts b/src/decorator/string/IsAscii.ts index 05f74725dd..f9d468d123 100644 --- a/src/decorator/string/IsAscii.ts +++ b/src/decorator/string/IsAscii.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isAsciiValidator from 'validator/lib/isAscii'; +import { getText } from '../../multi-lang'; export const IS_ASCII = 'isAscii'; @@ -23,7 +24,7 @@ export function IsAscii(validationOptions?: ValidationOptions): PropertyDecorato validator: { validate: (value, args): boolean => isAscii(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain only ASCII characters', + eachPrefix => eachPrefix + getText('$property must contain only ASCII characters'), validationOptions ), }, diff --git a/src/decorator/string/IsBIC.ts b/src/decorator/string/IsBIC.ts index b530e67758..69feb68499 100644 --- a/src/decorator/string/IsBIC.ts +++ b/src/decorator/string/IsBIC.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isBICValidator from 'validator/lib/isBIC'; +import { getText } from '../../multi-lang'; export const IS_BIC = 'isBIC'; @@ -23,7 +24,7 @@ export function IsBIC(validationOptions?: ValidationOptions): PropertyDecorator validator: { validate: (value, args): boolean => isBIC(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a BIC or SWIFT code', + eachPrefix => eachPrefix + getText('$property must be a BIC or SWIFT code'), validationOptions ), }, diff --git a/src/decorator/string/IsBase32.ts b/src/decorator/string/IsBase32.ts index 99958d0d3e..a852bb69e0 100644 --- a/src/decorator/string/IsBase32.ts +++ b/src/decorator/string/IsBase32.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isBase32Validator from 'validator/lib/isBase32'; +import { getText } from '../../multi-lang'; export const IS_BASE32 = 'isBase32'; @@ -22,7 +23,10 @@ export function IsBase32(validationOptions?: ValidationOptions): PropertyDecorat name: IS_BASE32, validator: { validate: (value, args): boolean => isBase32(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be base32 encoded', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be base32 encoded'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsBase64.ts b/src/decorator/string/IsBase64.ts index 75600c6982..6e3b53cd98 100644 --- a/src/decorator/string/IsBase64.ts +++ b/src/decorator/string/IsBase64.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isBase64Validator from 'validator/lib/isBase64'; +import { getText } from '../../multi-lang'; export const IS_BASE64 = 'isBase64'; @@ -22,7 +23,10 @@ export function IsBase64(validationOptions?: ValidationOptions): PropertyDecorat name: IS_BASE64, validator: { validate: (value, args): boolean => isBase64(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be base64 encoded', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be base64 encoded'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsBooleanString.ts b/src/decorator/string/IsBooleanString.ts index e53d71b37b..0184b092c9 100644 --- a/src/decorator/string/IsBooleanString.ts +++ b/src/decorator/string/IsBooleanString.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isBooleanValidator from 'validator/lib/isBoolean'; +import { getText } from '../../multi-lang'; export const IS_BOOLEAN_STRING = 'isBooleanString'; @@ -23,7 +24,7 @@ export function IsBooleanString(validationOptions?: ValidationOptions): Property validator: { validate: (value, args): boolean => isBooleanString(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a boolean string', + eachPrefix => eachPrefix + getText('$property must be a boolean string'), validationOptions ), }, diff --git a/src/decorator/string/IsBtcAddress.ts b/src/decorator/string/IsBtcAddress.ts index f9162adcec..56c2981657 100644 --- a/src/decorator/string/IsBtcAddress.ts +++ b/src/decorator/string/IsBtcAddress.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isBtcAddressValidator from 'validator/lib/isBtcAddress'; +import { getText } from '../../multi-lang'; export const IS_BTC_ADDRESS = 'isBtcAddress'; @@ -22,7 +23,10 @@ export function IsBtcAddress(validationOptions?: ValidationOptions): PropertyDec name: IS_BTC_ADDRESS, validator: { validate: (value, args): boolean => isBtcAddress(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a BTC address', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a BTC address'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsByteLength.ts b/src/decorator/string/IsByteLength.ts index 82ab23d257..0532c9fc82 100644 --- a/src/decorator/string/IsByteLength.ts +++ b/src/decorator/string/IsByteLength.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isByteLengthValidator from 'validator/lib/isByteLength'; +import { getText } from '../../multi-lang'; export const IS_BYTE_LENGTH = 'isByteLength'; @@ -24,7 +25,8 @@ export function IsByteLength(min: number, max?: number, validationOptions?: Vali validator: { validate: (value, args): boolean => isByteLength(value, args.constraints[0], args.constraints[1]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + "$property's byte length must fall into ($constraint1, $constraint2) range", + eachPrefix => + eachPrefix + getText("$property's byte length must fall into ($constraint1, $constraint2) range"), validationOptions ), }, diff --git a/src/decorator/string/IsCreditCard.ts b/src/decorator/string/IsCreditCard.ts index 2511d1930c..1c7d16b005 100644 --- a/src/decorator/string/IsCreditCard.ts +++ b/src/decorator/string/IsCreditCard.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isCreditCardValidator from 'validator/lib/isCreditCard'; +import { getText } from '../../multi-lang'; export const IS_CREDIT_CARD = 'isCreditCard'; @@ -22,7 +23,10 @@ export function IsCreditCard(validationOptions?: ValidationOptions): PropertyDec name: IS_CREDIT_CARD, validator: { validate: (value, args): boolean => isCreditCard(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a credit card', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a credit card'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsCurrency.ts b/src/decorator/string/IsCurrency.ts index 419df0affb..f8899336fe 100644 --- a/src/decorator/string/IsCurrency.ts +++ b/src/decorator/string/IsCurrency.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isCurrencyValidator from 'validator/lib/isCurrency'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_CURRENCY = 'isCurrency'; @@ -27,7 +28,10 @@ export function IsCurrency( constraints: [options], validator: { validate: (value, args): boolean => isCurrency(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a currency', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a currency'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsDataURI.ts b/src/decorator/string/IsDataURI.ts index f07e5fefae..e685e2fa60 100644 --- a/src/decorator/string/IsDataURI.ts +++ b/src/decorator/string/IsDataURI.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isDataURIValidator from 'validator/lib/isDataURI'; +import { getText } from '../../multi-lang'; export const IS_DATA_URI = 'isDataURI'; @@ -23,7 +24,7 @@ export function IsDataURI(validationOptions?: ValidationOptions): PropertyDecora validator: { validate: (value, args): boolean => isDataURI(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a data uri format', + eachPrefix => eachPrefix + getText('$property must be a data uri format'), validationOptions ), }, diff --git a/src/decorator/string/IsDateString.ts b/src/decorator/string/IsDateString.ts index a7c5c5a6fb..4bd641135e 100644 --- a/src/decorator/string/IsDateString.ts +++ b/src/decorator/string/IsDateString.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import ValidatorJS from 'validator'; import { isISO8601 } from './IsISO8601'; +import { getText } from '../../multi-lang'; export const IS_DATE_STRING = 'isDateString'; @@ -26,7 +27,7 @@ export function IsDateString( validator: { validate: (value, args): boolean => isDateString(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid ISO 8601 date string', + eachPrefix => eachPrefix + getText('$property must be a valid ISO 8601 date string'), validationOptions ), }, diff --git a/src/decorator/string/IsDecimal.ts b/src/decorator/string/IsDecimal.ts index 2c29589f3f..3fd3abfef9 100644 --- a/src/decorator/string/IsDecimal.ts +++ b/src/decorator/string/IsDecimal.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isDecimalValidator from 'validator/lib/isDecimal'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_DECIMAL = 'isDecimal'; @@ -28,7 +29,7 @@ export function IsDecimal( validator: { validate: (value, args): boolean => isDecimal(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property is not a valid decimal number.', + eachPrefix => eachPrefix + getText('$property is not a valid decimal number.'), validationOptions ), }, diff --git a/src/decorator/string/IsEAN.ts b/src/decorator/string/IsEAN.ts index 73669e969a..77ea2674d9 100644 --- a/src/decorator/string/IsEAN.ts +++ b/src/decorator/string/IsEAN.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isEANValidator from 'validator/lib/isEAN'; +import { getText } from '../../multi-lang'; export const IS_EAN = 'isEAN'; @@ -23,7 +24,7 @@ export function IsEAN(validationOptions?: ValidationOptions): PropertyDecorator validator: { validate: (value, args): boolean => isEAN(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be an EAN (European Article Number)', + eachPrefix => eachPrefix + getText('$property must be an EAN (European Article Number)'), validationOptions ), }, diff --git a/src/decorator/string/IsEmail.ts b/src/decorator/string/IsEmail.ts index ac1a86b6c7..a172c6196f 100644 --- a/src/decorator/string/IsEmail.ts +++ b/src/decorator/string/IsEmail.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isEmailValidator from 'validator/lib/isEmail'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_EMAIL = 'isEmail'; @@ -27,7 +28,10 @@ export function IsEmail( constraints: [options], validator: { validate: (value, args): boolean => isEmail(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an email', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an email'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsEthereumAddress.ts b/src/decorator/string/IsEthereumAddress.ts index cf8dbdbb1b..78169da1d8 100644 --- a/src/decorator/string/IsEthereumAddress.ts +++ b/src/decorator/string/IsEthereumAddress.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isEthereumAddressValidator from 'validator/lib/isEthereumAddress'; +import { getText } from '../../multi-lang'; export const IS_ETHEREUM_ADDRESS = 'isEthereumAddress'; @@ -23,7 +24,7 @@ export function IsEthereumAddress(validationOptions?: ValidationOptions): Proper validator: { validate: (value, args): boolean => isEthereumAddress(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be an Ethereum address', + eachPrefix => eachPrefix + getText('$property must be an Ethereum address'), validationOptions ), }, diff --git a/src/decorator/string/IsFQDN.ts b/src/decorator/string/IsFQDN.ts index 21b56b6e83..abadc1f7ee 100644 --- a/src/decorator/string/IsFQDN.ts +++ b/src/decorator/string/IsFQDN.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isFqdnValidator from 'validator/lib/isFQDN'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_FQDN = 'isFqdn'; @@ -25,7 +26,7 @@ export function IsFQDN(options?: ValidatorJS.IsFQDNOptions, validationOptions?: validator: { validate: (value, args): boolean => isFQDN(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid domain name', + eachPrefix => eachPrefix + getText('$property must be a valid domain name'), validationOptions ), }, diff --git a/src/decorator/string/IsFirebasePushId.ts b/src/decorator/string/IsFirebasePushId.ts index 1d81230c7b..a8a1be1235 100644 --- a/src/decorator/string/IsFirebasePushId.ts +++ b/src/decorator/string/IsFirebasePushId.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_FIREBASE_PUSH_ID = 'IsFirebasePushId'; @@ -23,7 +24,7 @@ export function IsFirebasePushId(validationOptions?: ValidationOptions): Propert validator: { validate: (value, args): boolean => isFirebasePushId(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a Firebase Push Id', + eachPrefix => eachPrefix + getText('$property must be a Firebase Push Id'), validationOptions ), }, diff --git a/src/decorator/string/IsFullWidth.ts b/src/decorator/string/IsFullWidth.ts index cb9a7cc3a5..3c7c42530e 100644 --- a/src/decorator/string/IsFullWidth.ts +++ b/src/decorator/string/IsFullWidth.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isFullWidthValidator from 'validator/lib/isFullWidth'; +import { getText } from '../../multi-lang'; export const IS_FULL_WIDTH = 'isFullWidth'; @@ -23,7 +24,7 @@ export function IsFullWidth(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isFullWidth(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain a full-width characters', + eachPrefix => eachPrefix + getText('$property must contain a full-width characters'), validationOptions ), }, diff --git a/src/decorator/string/IsHSL.ts b/src/decorator/string/IsHSL.ts index 401cbc6fb1..bf89a219c1 100644 --- a/src/decorator/string/IsHSL.ts +++ b/src/decorator/string/IsHSL.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isHSLValidator from 'validator/lib/isHSL'; +import { getText } from '../../multi-lang'; export const IS_HSL = 'isHSL'; @@ -24,7 +25,10 @@ export function IsHSL(validationOptions?: ValidationOptions): PropertyDecorator name: IS_HSL, validator: { validate: (value, args): boolean => isHSL(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a HSL color', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a HSL color'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsHalfWidth.ts b/src/decorator/string/IsHalfWidth.ts index 6eb0f914d9..7ea5b1dfd0 100644 --- a/src/decorator/string/IsHalfWidth.ts +++ b/src/decorator/string/IsHalfWidth.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isHalfWidthValidator from 'validator/lib/isHalfWidth'; +import { getText } from '../../multi-lang'; export const IS_HALF_WIDTH = 'isHalfWidth'; @@ -23,7 +24,7 @@ export function IsHalfWidth(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isHalfWidth(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain a half-width characters', + eachPrefix => eachPrefix + getText('$property must contain a half-width characters'), validationOptions ), }, diff --git a/src/decorator/string/IsHash.ts b/src/decorator/string/IsHash.ts index 834bc9384a..db5677037c 100644 --- a/src/decorator/string/IsHash.ts +++ b/src/decorator/string/IsHash.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isHashValidator from 'validator/lib/isHash'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_HASH = 'isHash'; @@ -27,7 +28,7 @@ export function IsHash(algorithm: string, validationOptions?: ValidationOptions) validator: { validate: (value, args): boolean => isHash(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a hash of type $constraint1', + eachPrefix => eachPrefix + getText('$property must be a hash of type $constraint1'), validationOptions ), }, diff --git a/src/decorator/string/IsHexColor.ts b/src/decorator/string/IsHexColor.ts index c72c471135..360b43071f 100644 --- a/src/decorator/string/IsHexColor.ts +++ b/src/decorator/string/IsHexColor.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isHexColorValidator from 'validator/lib/isHexColor'; +import { getText } from '../../multi-lang'; export const IS_HEX_COLOR = 'isHexColor'; @@ -23,7 +24,7 @@ export function IsHexColor(validationOptions?: ValidationOptions): PropertyDecor validator: { validate: (value, args): boolean => isHexColor(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a hexadecimal color', + eachPrefix => eachPrefix + getText('$property must be a hexadecimal color'), validationOptions ), }, diff --git a/src/decorator/string/IsHexadecimal.ts b/src/decorator/string/IsHexadecimal.ts index 26d3eb3e34..6bbab1ac0c 100644 --- a/src/decorator/string/IsHexadecimal.ts +++ b/src/decorator/string/IsHexadecimal.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isHexadecimalValidator from 'validator/lib/isHexadecimal'; +import { getText } from '../../multi-lang'; export const IS_HEXADECIMAL = 'isHexadecimal'; @@ -23,7 +24,7 @@ export function IsHexadecimal(validationOptions?: ValidationOptions): PropertyDe validator: { validate: (value, args): boolean => isHexadecimal(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a hexadecimal number', + eachPrefix => eachPrefix + getText('$property must be a hexadecimal number'), validationOptions ), }, diff --git a/src/decorator/string/IsIBAN.ts b/src/decorator/string/IsIBAN.ts index d0a159fc83..3e4150db70 100644 --- a/src/decorator/string/IsIBAN.ts +++ b/src/decorator/string/IsIBAN.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIBANValidator from 'validator/lib/isIBAN'; +import { getText } from '../../multi-lang'; export const IS_IBAN = 'isIBAN'; @@ -22,7 +23,10 @@ export function IsIBAN(validationOptions?: ValidationOptions): PropertyDecorator name: IS_IBAN, validator: { validate: (value, args): boolean => isIBAN(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an IBAN', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an IBAN'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsIP.ts b/src/decorator/string/IsIP.ts index 840f28afd1..5cd094330a 100644 --- a/src/decorator/string/IsIP.ts +++ b/src/decorator/string/IsIP.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIPValidator from 'validator/lib/isIP'; +import { getText } from '../../multi-lang'; export type IsIpVersion = '4' | '6' | 4 | 6; @@ -26,7 +27,10 @@ export function IsIP(version?: IsIpVersion, validationOptions?: ValidationOption constraints: [version], validator: { validate: (value, args): boolean => isIP(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an ip address', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an ip address'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsISBN.ts b/src/decorator/string/IsISBN.ts index afd1a3bda6..92400d92e9 100644 --- a/src/decorator/string/IsISBN.ts +++ b/src/decorator/string/IsISBN.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIsbnValidator from 'validator/lib/isISBN'; +import { getText } from '../../multi-lang'; export type IsISBNVersion = '10' | '13' | 10 | 13; @@ -26,7 +27,10 @@ export function IsISBN(version?: IsISBNVersion, validationOptions?: ValidationOp constraints: [version], validator: { validate: (value, args): boolean => isISBN(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an ISBN', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an ISBN'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsISIN.ts b/src/decorator/string/IsISIN.ts index 2f9b143b1d..163f770f50 100644 --- a/src/decorator/string/IsISIN.ts +++ b/src/decorator/string/IsISIN.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIsinValidator from 'validator/lib/isISIN'; +import { getText } from '../../multi-lang'; export const IS_ISIN = 'isIsin'; @@ -23,7 +24,7 @@ export function IsISIN(validationOptions?: ValidationOptions): PropertyDecorator validator: { validate: (value, args): boolean => isISIN(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be an ISIN (stock/security identifier)', + eachPrefix => eachPrefix + getText('$property must be an ISIN (stock/security identifier)'), validationOptions ), }, diff --git a/src/decorator/string/IsISO31661Alpha2.ts b/src/decorator/string/IsISO31661Alpha2.ts index 87b19551ae..87ed059aee 100644 --- a/src/decorator/string/IsISO31661Alpha2.ts +++ b/src/decorator/string/IsISO31661Alpha2.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isISO31661Alpha2Validator from 'validator/lib/isISO31661Alpha2'; +import { getText } from '../../multi-lang'; export const IS_ISO31661_ALPHA_2 = 'isISO31661Alpha2'; @@ -21,7 +22,7 @@ export function IsISO31661Alpha2(validationOptions?: ValidationOptions): Propert validator: { validate: (value, args): boolean => isISO31661Alpha2(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid ISO31661 Alpha2 code', + eachPrefix => eachPrefix + getText('$property must be a valid ISO31661 Alpha2 code'), validationOptions ), }, diff --git a/src/decorator/string/IsISO31661Alpha3.ts b/src/decorator/string/IsISO31661Alpha3.ts index bf43ff519b..e280164e43 100644 --- a/src/decorator/string/IsISO31661Alpha3.ts +++ b/src/decorator/string/IsISO31661Alpha3.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isISO31661Alpha3Validator from 'validator/lib/isISO31661Alpha3'; +import { getText } from '../../multi-lang'; export const IS_ISO31661_ALPHA_3 = 'isISO31661Alpha3'; @@ -21,7 +22,7 @@ export function IsISO31661Alpha3(validationOptions?: ValidationOptions): Propert validator: { validate: (value, args): boolean => isISO31661Alpha3(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid ISO31661 Alpha3 code', + eachPrefix => eachPrefix + getText('$property must be a valid ISO31661 Alpha3 code'), validationOptions ), }, diff --git a/src/decorator/string/IsISO8601.ts b/src/decorator/string/IsISO8601.ts index 9c67aeffa5..a4eb782e2e 100644 --- a/src/decorator/string/IsISO8601.ts +++ b/src/decorator/string/IsISO8601.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIso8601Validator from 'validator/lib/isISO8601'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_ISO8601 = 'isIso8601'; @@ -30,7 +31,7 @@ export function IsISO8601( validator: { validate: (value, args): boolean => isISO8601(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid ISO 8601 date string', + eachPrefix => eachPrefix + getText('$property must be a valid ISO 8601 date string'), validationOptions ), }, diff --git a/src/decorator/string/IsISRC.ts b/src/decorator/string/IsISRC.ts index f41b3c3cdc..cce179e6a5 100644 --- a/src/decorator/string/IsISRC.ts +++ b/src/decorator/string/IsISRC.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isISRCValidator from 'validator/lib/isISRC'; +import { getText } from '../../multi-lang'; export const IS_ISRC = 'isISRC'; @@ -22,7 +23,10 @@ export function IsISRC(validationOptions?: ValidationOptions): PropertyDecorator name: IS_ISRC, validator: { validate: (value, args): boolean => isISRC(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an ISRC', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an ISRC'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsISSN.ts b/src/decorator/string/IsISSN.ts index 3677d2e957..0c40fb1f05 100644 --- a/src/decorator/string/IsISSN.ts +++ b/src/decorator/string/IsISSN.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isISSNValidator from 'validator/lib/isISSN'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_ISSN = 'isISSN'; @@ -24,7 +25,7 @@ export function IsISSN(options?: ValidatorJS.IsISSNOptions, validationOptions?: constraints: [options], validator: { validate: (value, args): boolean => isISSN(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a ISSN', validationOptions), + defaultMessage: buildMessage(eachPrefix => eachPrefix + getText('$property must be a ISSN'), validationOptions), }, }, validationOptions diff --git a/src/decorator/string/IsIdentityCard.ts b/src/decorator/string/IsIdentityCard.ts index 543534cfc9..b328981f73 100644 --- a/src/decorator/string/IsIdentityCard.ts +++ b/src/decorator/string/IsIdentityCard.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isIdentityCardValidator from 'validator/lib/isIdentityCard'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_IDENTITY_CARD = 'isIdentityCard'; @@ -32,7 +33,7 @@ export function IsIdentityCard( validator: { validate: (value, args): boolean => isIdentityCard(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a identity card number', + eachPrefix => eachPrefix + getText('$property must be a identity card number'), validationOptions ), }, diff --git a/src/decorator/string/IsJSON.ts b/src/decorator/string/IsJSON.ts index 2bdf8f04b9..84ff1f0b15 100644 --- a/src/decorator/string/IsJSON.ts +++ b/src/decorator/string/IsJSON.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isJSONValidator from 'validator/lib/isJSON'; +import { getText } from '../../multi-lang'; export const IS_JSON = 'isJson'; @@ -22,7 +23,10 @@ export function IsJSON(validationOptions?: ValidationOptions): PropertyDecorator name: IS_JSON, validator: { validate: (value, args): boolean => isJSON(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a json string', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a json string'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsJWT.ts b/src/decorator/string/IsJWT.ts index 69ecc900a7..46e803f54d 100644 --- a/src/decorator/string/IsJWT.ts +++ b/src/decorator/string/IsJWT.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isJwtValidator from 'validator/lib/isJWT'; +import { getText } from '../../multi-lang'; export const IS_JWT = 'isJwt'; @@ -22,7 +23,10 @@ export function IsJWT(validationOptions?: ValidationOptions): PropertyDecorator name: IS_JWT, validator: { validate: (value, args): boolean => isJWT(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a jwt string', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a jwt string'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsLocale.ts b/src/decorator/string/IsLocale.ts index 043ddf2510..32e62b89f5 100644 --- a/src/decorator/string/IsLocale.ts +++ b/src/decorator/string/IsLocale.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isLocaleValidator from 'validator/lib/isLocale'; +import { getText } from '../../multi-lang'; export const IS_LOCALE = 'isLocale'; @@ -22,7 +23,7 @@ export function IsLocale(validationOptions?: ValidationOptions): PropertyDecorat name: IS_LOCALE, validator: { validate: (value, args): boolean => isLocale(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be locale', validationOptions), + defaultMessage: buildMessage(eachPrefix => eachPrefix + getText('$property must be locale'), validationOptions), }, }, validationOptions diff --git a/src/decorator/string/IsLowercase.ts b/src/decorator/string/IsLowercase.ts index 1042dadcfd..a7e85d6c5b 100644 --- a/src/decorator/string/IsLowercase.ts +++ b/src/decorator/string/IsLowercase.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isLowercaseValidator from 'validator/lib/isLowercase'; +import { getText } from '../../multi-lang'; export const IS_LOWERCASE = 'isLowercase'; @@ -23,7 +24,7 @@ export function IsLowercase(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isLowercase(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a lowercase string', + eachPrefix => eachPrefix + getText('$property must be a lowercase string'), validationOptions ), }, diff --git a/src/decorator/string/IsMacAddress.ts b/src/decorator/string/IsMacAddress.ts index ed91b32a6c..f48d189669 100644 --- a/src/decorator/string/IsMacAddress.ts +++ b/src/decorator/string/IsMacAddress.ts @@ -2,6 +2,7 @@ import { ValidationOptions, isValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMacAddressValidator from 'validator/lib/isMACAddress'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_MAC_ADDRESS = 'isMacAddress'; @@ -37,7 +38,10 @@ export function IsMACAddress( constraints: [options], validator: { validate: (value, args): boolean => isMACAddress(value, options), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a MAC Address', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a MAC Address'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsMagnetURI.ts b/src/decorator/string/IsMagnetURI.ts index a4758dca65..a1d9a879a5 100644 --- a/src/decorator/string/IsMagnetURI.ts +++ b/src/decorator/string/IsMagnetURI.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMagnetURIValidator from 'validator/lib/isMagnetURI'; +import { getText } from '../../multi-lang'; export const IS_MAGNET_URI = 'isMagnetURI'; @@ -23,7 +24,7 @@ export function IsMagnetURI(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isMagnetURI(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be magnet uri format', + eachPrefix => eachPrefix + getText('$property must be magnet uri format'), validationOptions ), }, diff --git a/src/decorator/string/IsMilitaryTime.ts b/src/decorator/string/IsMilitaryTime.ts index 6d209b2ac1..6f0805d217 100644 --- a/src/decorator/string/IsMilitaryTime.ts +++ b/src/decorator/string/IsMilitaryTime.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import matchesValidator from 'validator/lib/matches'; +import { getText } from '../../multi-lang'; export const IS_MILITARY_TIME = 'isMilitaryTime'; @@ -24,7 +25,8 @@ export function IsMilitaryTime(validationOptions?: ValidationOptions): PropertyD validator: { validate: (value, args): boolean => isMilitaryTime(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid representation of military time in the format HH:MM', + eachPrefix => + eachPrefix + getText('$property must be a valid representation of military time in the format HH:MM'), validationOptions ), }, diff --git a/src/decorator/string/IsMimeType.ts b/src/decorator/string/IsMimeType.ts index edc5136953..ddf48bd945 100644 --- a/src/decorator/string/IsMimeType.ts +++ b/src/decorator/string/IsMimeType.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMimeTypeValidator from 'validator/lib/isMimeType'; +import { getText } from '../../multi-lang'; export const IS_MIME_TYPE = 'isMimeType'; @@ -23,7 +24,7 @@ export function IsMimeType(validationOptions?: ValidationOptions): PropertyDecor validator: { validate: (value, args): boolean => isMimeType(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be MIME type format', + eachPrefix => eachPrefix + getText('$property must be MIME type format'), validationOptions ), }, diff --git a/src/decorator/string/IsMobilePhone.ts b/src/decorator/string/IsMobilePhone.ts index 56dad32da9..2824e78c07 100644 --- a/src/decorator/string/IsMobilePhone.ts +++ b/src/decorator/string/IsMobilePhone.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMobilePhoneValidator from 'validator/lib/isMobilePhone'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_MOBILE_PHONE = 'isMobilePhone'; @@ -48,7 +49,10 @@ export function IsMobilePhone( constraints: [locale, options], validator: { validate: (value, args): boolean => isMobilePhone(value, args.constraints[0], args.constraints[1]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a phone number', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a phone number'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsMongoId.ts b/src/decorator/string/IsMongoId.ts index fa8507fb66..5e8301537b 100644 --- a/src/decorator/string/IsMongoId.ts +++ b/src/decorator/string/IsMongoId.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMongoIdValidator from 'validator/lib/isMongoId'; +import { getText } from '../../multi-lang'; export const IS_MONGO_ID = 'isMongoId'; @@ -22,7 +23,10 @@ export function IsMongoId(validationOptions?: ValidationOptions): PropertyDecora name: IS_MONGO_ID, validator: { validate: (value, args): boolean => isMongoId(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a mongodb id', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a mongodb id'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsMultibyte.ts b/src/decorator/string/IsMultibyte.ts index c295b640c9..b62f9ed1c6 100644 --- a/src/decorator/string/IsMultibyte.ts +++ b/src/decorator/string/IsMultibyte.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isMultibyteValidator from 'validator/lib/isMultibyte'; +import { getText } from '../../multi-lang'; export const IS_MULTIBYTE = 'isMultibyte'; @@ -23,7 +24,7 @@ export function IsMultibyte(validationOptions?: ValidationOptions): PropertyDeco validator: { validate: (value, args): boolean => isMultibyte(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain one or more multibyte chars', + eachPrefix => eachPrefix + getText('$property must contain one or more multibyte chars'), validationOptions ), }, diff --git a/src/decorator/string/IsNumberString.ts b/src/decorator/string/IsNumberString.ts index 9c3ed53dc4..d84292ab32 100644 --- a/src/decorator/string/IsNumberString.ts +++ b/src/decorator/string/IsNumberString.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isNumericValidator from 'validator/lib/isNumeric'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_NUMBER_STRING = 'isNumberString'; @@ -27,7 +28,10 @@ export function IsNumberString( constraints: [options], validator: { validate: (value, args): boolean => isNumberString(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a number string', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a number string'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsOctal.ts b/src/decorator/string/IsOctal.ts index 4427926455..03e281110b 100644 --- a/src/decorator/string/IsOctal.ts +++ b/src/decorator/string/IsOctal.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isOctalValidator from 'validator/lib/isOctal'; +import { getText } from '../../multi-lang'; export const IS_OCTAL = 'isOctal'; @@ -23,7 +24,7 @@ export function IsOctal(validationOptions?: ValidationOptions): PropertyDecorato validator: { validate: (value, args): boolean => isOctal(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be valid octal number', + eachPrefix => eachPrefix + getText('$property must be valid octal number'), validationOptions ), }, diff --git a/src/decorator/string/IsPassportNumber.ts b/src/decorator/string/IsPassportNumber.ts index e3d00063ea..2cf970b302 100644 --- a/src/decorator/string/IsPassportNumber.ts +++ b/src/decorator/string/IsPassportNumber.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isPassportNumberValidator from 'validator/lib/isPassportNumber'; +import { getText } from '../../multi-lang'; export const IS_PASSPORT_NUMBER = 'isPassportNumber'; @@ -24,7 +25,7 @@ export function IsPassportNumber(countryCode: string, validationOptions?: Valida validator: { validate: (value, args): boolean => isPassportNumber(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be valid passport number', + eachPrefix => eachPrefix + getText('$property must be valid passport number'), validationOptions ), }, diff --git a/src/decorator/string/IsPhoneNumber.ts b/src/decorator/string/IsPhoneNumber.ts index 5d93dc6049..161a1fcee3 100644 --- a/src/decorator/string/IsPhoneNumber.ts +++ b/src/decorator/string/IsPhoneNumber.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import { parsePhoneNumberFromString, CountryCode } from 'libphonenumber-js'; +import { getText } from '../../multi-lang'; export const IS_PHONE_NUMBER = 'isPhoneNumber'; @@ -37,7 +38,7 @@ export function IsPhoneNumber( validator: { validate: (value, args): boolean => isPhoneNumber(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid phone number', + eachPrefix => eachPrefix + getText('$property must be a valid phone number'), validationOptions ), }, diff --git a/src/decorator/string/IsPort.ts b/src/decorator/string/IsPort.ts index d7809e3c42..cf97153f98 100644 --- a/src/decorator/string/IsPort.ts +++ b/src/decorator/string/IsPort.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isPortValidator from 'validator/lib/isPort'; +import { getText } from '../../multi-lang'; export const IS_PORT = 'isPort'; @@ -20,7 +21,7 @@ export function IsPort(validationOptions?: ValidationOptions): PropertyDecorator name: IS_PORT, validator: { validate: (value, args): boolean => isPort(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a port', validationOptions), + defaultMessage: buildMessage(eachPrefix => eachPrefix + getText('$property must be a port'), validationOptions), }, }, validationOptions diff --git a/src/decorator/string/IsPostalCode.ts b/src/decorator/string/IsPostalCode.ts index 3d802ee7df..a1fca15753 100644 --- a/src/decorator/string/IsPostalCode.ts +++ b/src/decorator/string/IsPostalCode.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isPostalCodeValidator from 'validator/lib/isPostalCode'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_POSTAL_CODE = 'isPostalCode'; @@ -29,7 +30,10 @@ export function IsPostalCode( constraints: [locale], validator: { validate: (value, args): boolean => isPostalCode(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a postal code', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a postal code'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsRFC3339.ts b/src/decorator/string/IsRFC3339.ts index 88262b79a5..6dff4202d6 100644 --- a/src/decorator/string/IsRFC3339.ts +++ b/src/decorator/string/IsRFC3339.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isRFC3339Validator from 'validator/lib/isRFC3339'; +import { getText } from '../../multi-lang'; export const IS_RFC_3339 = 'isRFC3339'; @@ -22,7 +23,10 @@ export function IsRFC3339(validationOptions?: ValidationOptions): PropertyDecora name: IS_RFC_3339, validator: { validate: (value, args): boolean => isRFC3339(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be RFC 3339 date', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be RFC 3339 date'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsRgbColor.ts b/src/decorator/string/IsRgbColor.ts index e11250d957..6d7d3f27a9 100644 --- a/src/decorator/string/IsRgbColor.ts +++ b/src/decorator/string/IsRgbColor.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isRgbColorValidator from 'validator/lib/isRgbColor'; +import { getText } from '../../multi-lang'; export const IS_RGB_COLOR = 'isRgbColor'; @@ -25,7 +26,10 @@ export function IsRgbColor(includePercentValues?: boolean, validationOptions?: V constraints: [includePercentValues], validator: { validate: (value, args): boolean => isRgbColor(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be RGB color', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be RGB color'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsSemVer.ts b/src/decorator/string/IsSemVer.ts index e599655085..ebb64ef1c8 100644 --- a/src/decorator/string/IsSemVer.ts +++ b/src/decorator/string/IsSemVer.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isSemVerValidator from 'validator/lib/isSemVer'; +import { getText } from '../../multi-lang'; export const IS_SEM_VER = 'isSemVer'; @@ -23,7 +24,7 @@ export function IsSemVer(validationOptions?: ValidationOptions): PropertyDecorat validator: { validate: (value, args): boolean => isSemVer(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a Semantic Versioning Specification', + eachPrefix => eachPrefix + getText('$property must be a Semantic Versioning Specification'), validationOptions ), }, diff --git a/src/decorator/string/IsSurrogatePair.ts b/src/decorator/string/IsSurrogatePair.ts index 8cd7e2a8d0..8ab83f7b65 100644 --- a/src/decorator/string/IsSurrogatePair.ts +++ b/src/decorator/string/IsSurrogatePair.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isSurrogatePairValidator from 'validator/lib/isSurrogatePair'; +import { getText } from '../../multi-lang'; export const IS_SURROGATE_PAIR = 'isSurrogatePair'; @@ -23,7 +24,7 @@ export function IsSurrogatePair(validationOptions?: ValidationOptions): Property validator: { validate: (value, args): boolean => isSurrogatePair(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain any surrogate pairs chars', + eachPrefix => eachPrefix + getText('$property must contain any surrogate pairs chars'), validationOptions ), }, diff --git a/src/decorator/string/IsUUID.ts b/src/decorator/string/IsUUID.ts index bc0b815ad2..402f608567 100644 --- a/src/decorator/string/IsUUID.ts +++ b/src/decorator/string/IsUUID.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isUuidValidator from 'validator/lib/isUUID'; +import { getText } from '../../multi-lang'; export type UUIDVersion = '3' | '4' | '5' | 'all' | 3 | 4 | 5; @@ -25,7 +26,10 @@ export function IsUUID(version?: UUIDVersion, validationOptions?: ValidationOpti constraints: [version], validator: { validate: (value, args): boolean => isUUID(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an UUID', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an UUID'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsUppercase.ts b/src/decorator/string/IsUppercase.ts index 2e22354082..168ef358a4 100644 --- a/src/decorator/string/IsUppercase.ts +++ b/src/decorator/string/IsUppercase.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isUppercaseValidator from 'validator/lib/isUppercase'; +import { getText } from '../../multi-lang'; export const IS_UPPERCASE = 'isUppercase'; @@ -22,7 +23,10 @@ export function IsUppercase(validationOptions?: ValidationOptions): PropertyDeco name: IS_UPPERCASE, validator: { validate: (value, args): boolean => isUppercase(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be uppercase', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be uppercase'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsUrl.ts b/src/decorator/string/IsUrl.ts index 45494bde65..54c0c34fb7 100644 --- a/src/decorator/string/IsUrl.ts +++ b/src/decorator/string/IsUrl.ts @@ -2,6 +2,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isUrlValidator from 'validator/lib/isURL'; import ValidatorJS from 'validator'; +import { getText } from '../../multi-lang'; export const IS_URL = 'isUrl'; @@ -24,7 +25,10 @@ export function IsUrl(options?: ValidatorJS.IsURLOptions, validationOptions?: Va constraints: [options], validator: { validate: (value, args): boolean => isURL(value, args.constraints[0]), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an URL address', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an URL address'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/string/IsVariableWidth.ts b/src/decorator/string/IsVariableWidth.ts index 0eb4d312d3..3bddd029e5 100644 --- a/src/decorator/string/IsVariableWidth.ts +++ b/src/decorator/string/IsVariableWidth.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isVariableWidthValidator from 'validator/lib/isVariableWidth'; +import { getText } from '../../multi-lang'; export const IS_VARIABLE_WIDTH = 'isVariableWidth'; @@ -23,7 +24,7 @@ export function IsVariableWidth(validationOptions?: ValidationOptions): Property validator: { validate: (value, args): boolean => isVariableWidth(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must contain a full-width and half-width characters', + eachPrefix => eachPrefix + getText('$property must contain a full-width and half-width characters'), validationOptions ), }, diff --git a/src/decorator/string/Length.ts b/src/decorator/string/Length.ts index e5611e9b8b..2a076b125a 100644 --- a/src/decorator/string/Length.ts +++ b/src/decorator/string/Length.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isLengthValidator from 'validator/lib/isLength'; +import { getText } from '../../multi-lang'; export const IS_LENGTH = 'isLength'; @@ -27,13 +28,15 @@ export function Length(min: number, max?: number, validationOptions?: Validation const isMinLength = args.constraints[0] !== null && args.constraints[0] !== undefined; const isMaxLength = args.constraints[1] !== null && args.constraints[1] !== undefined; if (isMinLength && (!args.value || args.value.length < args.constraints[0])) { - return eachPrefix + '$property must be longer than or equal to $constraint1 characters'; + return eachPrefix + getText('$property must be longer than or equal to $constraint1 characters'); } else if (isMaxLength && args.value.length > args.constraints[1]) { - return eachPrefix + '$property must be shorter than or equal to $constraint2 characters'; + return eachPrefix + getText('$property must be shorter than or equal to $constraint2 characters'); } return ( eachPrefix + - '$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters' + getText( + '$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters' + ) ); }, validationOptions), }, diff --git a/src/decorator/string/Matches.ts b/src/decorator/string/Matches.ts index fb164848f2..a649acb6f3 100644 --- a/src/decorator/string/Matches.ts +++ b/src/decorator/string/Matches.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import matchesValidator from 'validator/lib/matches'; +import { getText } from '../../multi-lang'; export const MATCHES = 'matches'; @@ -39,7 +40,7 @@ export function Matches( validator: { validate: (value, args): boolean => matches(value, args.constraints[0], args.constraints[1]), defaultMessage: buildMessage( - (eachPrefix, args) => eachPrefix + '$property must match $constraint1 regular expression', + (eachPrefix, args) => eachPrefix + getText('$property must match $constraint1 regular expression'), validationOptions ), }, diff --git a/src/decorator/string/MaxLength.ts b/src/decorator/string/MaxLength.ts index 59852e5e97..9f28916f1c 100644 --- a/src/decorator/string/MaxLength.ts +++ b/src/decorator/string/MaxLength.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isLengthValidator from 'validator/lib/isLength'; +import { getText } from '../../multi-lang'; export const MAX_LENGTH = 'maxLength'; @@ -24,7 +25,7 @@ export function MaxLength(max: number, validationOptions?: ValidationOptions): P validator: { validate: (value, args): boolean => maxLength(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be shorter than or equal to $constraint1 characters', + eachPrefix => eachPrefix + getText('$property must be shorter than or equal to $constraint1 characters'), validationOptions ), }, diff --git a/src/decorator/string/MinLength.ts b/src/decorator/string/MinLength.ts index d3e5fca5c8..c8d63633f9 100644 --- a/src/decorator/string/MinLength.ts +++ b/src/decorator/string/MinLength.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import isLengthValidator from 'validator/lib/isLength'; +import { getText } from '../../multi-lang'; export const MIN_LENGTH = 'minLength'; @@ -24,7 +25,7 @@ export function MinLength(min: number, validationOptions?: ValidationOptions): P validator: { validate: (value, args): boolean => minLength(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be longer than or equal to $constraint1 characters', + eachPrefix => eachPrefix + getText('$property must be longer than or equal to $constraint1 characters'), validationOptions ), }, diff --git a/src/decorator/string/NotContains.ts b/src/decorator/string/NotContains.ts index 5f784e6bc3..07a0934dbd 100644 --- a/src/decorator/string/NotContains.ts +++ b/src/decorator/string/NotContains.ts @@ -1,6 +1,7 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; import containsValidator from 'validator/lib/contains'; +import { getText } from '../../multi-lang'; export const NOT_CONTAINS = 'notContains'; @@ -24,7 +25,7 @@ export function NotContains(seed: string, validationOptions?: ValidationOptions) validator: { validate: (value, args): boolean => notContains(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property should not contain a $constraint1 string', + eachPrefix => eachPrefix + getText('$property should not contain a $constraint1 string'), validationOptions ), }, diff --git a/src/decorator/typechecker/IsArray.ts b/src/decorator/typechecker/IsArray.ts index ba0e8b704c..09257f0d22 100644 --- a/src/decorator/typechecker/IsArray.ts +++ b/src/decorator/typechecker/IsArray.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_ARRAY = 'isArray'; @@ -19,7 +20,10 @@ export function IsArray(validationOptions?: ValidationOptions): PropertyDecorato name: IS_ARRAY, validator: { validate: (value, args): boolean => isArray(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an array', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an array'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/typechecker/IsBoolean.ts b/src/decorator/typechecker/IsBoolean.ts index 12af6aec91..5ce2a8c809 100644 --- a/src/decorator/typechecker/IsBoolean.ts +++ b/src/decorator/typechecker/IsBoolean.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_BOOLEAN = 'isBoolean'; @@ -19,7 +20,10 @@ export function IsBoolean(validationOptions?: ValidationOptions): PropertyDecora name: IS_BOOLEAN, validator: { validate: (value, args): boolean => isBoolean(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a boolean value', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a boolean value'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/typechecker/IsDate.ts b/src/decorator/typechecker/IsDate.ts index 4bf19e772e..46477c912a 100644 --- a/src/decorator/typechecker/IsDate.ts +++ b/src/decorator/typechecker/IsDate.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_DATE = 'isDate'; @@ -19,7 +20,10 @@ export function IsDate(validationOptions?: ValidationOptions): PropertyDecorator name: IS_DATE, validator: { validate: (value, args): boolean => isDate(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a Date instance', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a Date instance'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/typechecker/IsEnum.ts b/src/decorator/typechecker/IsEnum.ts index a3ffc711f9..c6376a7aef 100644 --- a/src/decorator/typechecker/IsEnum.ts +++ b/src/decorator/typechecker/IsEnum.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_ENUM = 'isEnum'; @@ -22,7 +23,7 @@ export function IsEnum(entity: object, validationOptions?: ValidationOptions): P validator: { validate: (value, args): boolean => isEnum(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a valid enum value', + eachPrefix => eachPrefix + getText('$property must be a valid enum value'), validationOptions ), }, diff --git a/src/decorator/typechecker/IsInt.ts b/src/decorator/typechecker/IsInt.ts index 36b96abae8..a5987ae5ef 100644 --- a/src/decorator/typechecker/IsInt.ts +++ b/src/decorator/typechecker/IsInt.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_INT = 'isInt'; @@ -20,7 +21,7 @@ export function IsInt(validationOptions?: ValidationOptions): PropertyDecorator validator: { validate: (value, args): boolean => isInt(value), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be an integer number', + eachPrefix => eachPrefix + getText('$property must be an integer number'), validationOptions ), }, diff --git a/src/decorator/typechecker/IsNumber.ts b/src/decorator/typechecker/IsNumber.ts index 84febe1beb..3bff80edcc 100644 --- a/src/decorator/typechecker/IsNumber.ts +++ b/src/decorator/typechecker/IsNumber.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_NUMBER = 'isNumber'; @@ -52,7 +53,7 @@ export function IsNumber(options: IsNumberOptions = {}, validationOptions?: Vali validator: { validate: (value, args): boolean => isNumber(value, args.constraints[0]), defaultMessage: buildMessage( - eachPrefix => eachPrefix + '$property must be a number conforming to the specified constraints', + eachPrefix => eachPrefix + getText('$property must be a number conforming to the specified constraints'), validationOptions ), }, diff --git a/src/decorator/typechecker/IsObject.ts b/src/decorator/typechecker/IsObject.ts index ac431dd32e..fffa1545cc 100644 --- a/src/decorator/typechecker/IsObject.ts +++ b/src/decorator/typechecker/IsObject.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_OBJECT = 'isObject'; @@ -21,7 +22,10 @@ export function IsObject(validationOptions?: ValidationOptions): PropertyDecorat name: IS_OBJECT, validator: { validate: (value, args): boolean => isObject(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be an object', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be an object'), + validationOptions + ), }, }, validationOptions diff --git a/src/decorator/typechecker/IsString.ts b/src/decorator/typechecker/IsString.ts index 4c309cd622..41262a02e6 100644 --- a/src/decorator/typechecker/IsString.ts +++ b/src/decorator/typechecker/IsString.ts @@ -1,5 +1,6 @@ import { ValidationOptions } from '../ValidationOptions'; import { buildMessage, ValidateBy } from '../common/ValidateBy'; +import { getText } from '../../multi-lang'; export const IS_STRING = 'isString'; @@ -19,7 +20,10 @@ export function IsString(validationOptions?: ValidationOptions): PropertyDecorat name: IS_STRING, validator: { validate: (value, args): boolean => isString(value), - defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must be a string', validationOptions), + defaultMessage: buildMessage( + eachPrefix => eachPrefix + getText('$property must be a string'), + validationOptions + ), }, }, validationOptions diff --git a/src/index.ts b/src/index.ts index 34aa0f38b5..6e328b67c0 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,9 +1,9 @@ -import { ValidationError } from './validation/ValidationError'; -import { ValidatorOptions } from './validation/ValidatorOptions'; -import { ValidationSchema } from './validation-schema/ValidationSchema'; +import { getFromContainer } from './container'; import { getMetadataStorage } from './metadata/MetadataStorage'; +import { ValidationSchema } from './validation-schema/ValidationSchema'; +import { ValidationError } from './validation/ValidationError'; import { Validator } from './validation/Validator'; -import { getFromContainer } from './container'; +import { ValidatorOptions } from './validation/ValidatorOptions'; // ------------------------------------------------------------------------- // Export everything api users needs @@ -12,15 +12,19 @@ import { getFromContainer } from './container'; export * from './container'; export * from './decorator/decorators'; export * from './decorator/ValidationOptions'; -export * from './validation/ValidatorConstraintInterface'; -export * from './validation/ValidationError'; -export * from './validation/ValidatorOptions'; +export * from './metadata/ConstraintMetadata'; +export * from './metadata/MetadataStorage'; +export * from './metadata/ValidationMetadata'; +export * from './metadata/ValidationMetadataArgs'; +export * from './multi-lang'; +export * from './register-decorator'; +export * from './validation-schema/ValidationSchema'; export * from './validation/ValidationArguments'; +export * from './validation/ValidationError'; export * from './validation/ValidationTypes'; export * from './validation/Validator'; -export * from './validation-schema/ValidationSchema'; -export * from './register-decorator'; -export * from './metadata/MetadataStorage'; +export * from './validation/ValidatorConstraintInterface'; +export * from './validation/ValidatorOptions'; // ------------------------------------------------------------------------- // Shortcut methods for api users diff --git a/src/multi-lang/get-text.util.ts b/src/multi-lang/get-text.util.ts new file mode 100644 index 0000000000..00d727be37 --- /dev/null +++ b/src/multi-lang/get-text.util.ts @@ -0,0 +1,7 @@ +import { getClassValidatorMessage } from './messages.storage'; + +const CLASS_VALIDATOR_MESSAGE_MARKER = '__I18N__'; + +export function getText(s: string) { + return getClassValidatorMessage(s) ? [CLASS_VALIDATOR_MESSAGE_MARKER, s, CLASS_VALIDATOR_MESSAGE_MARKER].join('') : s; +} diff --git a/src/multi-lang/index.ts b/src/multi-lang/index.ts new file mode 100644 index 0000000000..53e1cbf610 --- /dev/null +++ b/src/multi-lang/index.ts @@ -0,0 +1,4 @@ +export * from './get-text.util'; +export * from './messages.storage'; +export * from './title.decorator'; +export * from './titles.storage'; diff --git a/src/multi-lang/messages.storage.ts b/src/multi-lang/messages.storage.ts new file mode 100644 index 0000000000..5fc23605c7 --- /dev/null +++ b/src/multi-lang/messages.storage.ts @@ -0,0 +1,26 @@ +import { getGlobal } from '../utils/get-global.util'; + +const CLASS_VALIDATOR_MESSAGES = 'CLASS_VALIDATOR_MESSAGES'; + +export function getClassValidatorMessagesStorage(): { [key: string]: string } { + const global: { [CLASS_VALIDATOR_MESSAGES]: { [key: string]: string } } = getGlobal(); + if (!global[CLASS_VALIDATOR_MESSAGES]) { + global[CLASS_VALIDATOR_MESSAGES] = {}; + } + return global[CLASS_VALIDATOR_MESSAGES]; +} + +export function setClassValidatorMessages(messages: { [key: string]: string }) { + const storageMessages = getClassValidatorMessagesStorage(); + Object.keys(storageMessages).forEach(key => delete storageMessages[key]); + Object.assign(storageMessages, messages); +} + +export function getClassValidatorMessages(): { [key: string]: string } { + return getClassValidatorMessagesStorage(); +} + +export function getClassValidatorMessage(key: string): string { + const messages = getClassValidatorMessagesStorage(); + return messages[key]; +} diff --git a/src/multi-lang/title.decorator.ts b/src/multi-lang/title.decorator.ts new file mode 100644 index 0000000000..c09e8b2ff6 --- /dev/null +++ b/src/multi-lang/title.decorator.ts @@ -0,0 +1,13 @@ +import { setClassValidatorPropertyTitle, setClassValidatorTitle } from './titles.storage'; + +export function ClassPropertyTitle(title: string): PropertyDecorator { + return function (object: object, propertyName: string | symbol): void { + setClassValidatorPropertyTitle(object, propertyName, title); + }; +} + +export function ClassTitle(title: string, key?: string): ClassDecorator { + return function (object: object): void { + setClassValidatorTitle(object, key, title); + }; +} diff --git a/src/multi-lang/titles.storage.ts b/src/multi-lang/titles.storage.ts new file mode 100644 index 0000000000..aeeb191aac --- /dev/null +++ b/src/multi-lang/titles.storage.ts @@ -0,0 +1,83 @@ +import { getGlobal } from '../utils/get-global.util'; + +interface ClassValidatorTitle { + target: object; + titles: Map; +} + +interface ClassValidatorPropertyTitle { + target: object; + titles: Map; +} + +const CLASS_VALIDATOR_PROPERTY_TITLES = 'CLASS_VALIDATOR_PROPERTY_TITLES'; + +const CLASS_VALIDATOR_TITLES = 'CLASS_VALIDATOR_TITLES'; +const CLASS_VALIDATOR_ROOT_TITLE = 'CLASS_VALIDATOR_ROOT_TITLE'; + +// PROPERTY +export function getClassValidatorPropertyTitlesStorage(): ClassValidatorPropertyTitle[] { + const global: { [CLASS_VALIDATOR_PROPERTY_TITLES]: ClassValidatorPropertyTitle[] } = getGlobal(); + if (!global[CLASS_VALIDATOR_PROPERTY_TITLES]) { + global[CLASS_VALIDATOR_PROPERTY_TITLES] = []; + } + return global[CLASS_VALIDATOR_PROPERTY_TITLES]; +} + +export function setClassValidatorPropertyTitle(object: object, propertyName: string | symbol, title: string) { + const storagePropertyTitle = getClassValidatorPropertyTitlesStorage(); + let obj: ClassValidatorPropertyTitle | undefined = storagePropertyTitle.find(o => o.target === object.constructor); + if (!obj) { + obj = { target: object.constructor, titles: new Map() }; + storagePropertyTitle.push(obj); + } + obj.titles.set(propertyName, title); +} + +export function getClassValidatorPropertyTitles(object: object): ClassValidatorPropertyTitle['titles'] { + const storagePropertyTitle = getClassValidatorPropertyTitlesStorage(); + const obj: ClassValidatorPropertyTitle | undefined = storagePropertyTitle.find(o => o.target === object.constructor); + if (!obj) { + return new Map(); + } + return obj.titles; +} + +export function getClassValidatorPropertyTitle(object: object, propertyName: string): string | undefined { + const titles = getClassValidatorPropertyTitles(object); + return titles.get(propertyName); +} + +// CLASS +export function getClassValidatorTitlesStorage(): ClassValidatorTitle[] { + const global: { [CLASS_VALIDATOR_TITLES]: ClassValidatorTitle[] } = getGlobal(); + if (!global[CLASS_VALIDATOR_TITLES]) { + global[CLASS_VALIDATOR_TITLES] = []; + } + return global[CLASS_VALIDATOR_TITLES]; +} + +export function setClassValidatorTitle(object: object, propertyName: string | undefined, title: string) { + const storageTitle = getClassValidatorTitlesStorage(); + let obj: ClassValidatorTitle | undefined = storageTitle.find(o => o.target === object); + if (!obj) { + obj = { target: object, titles: new Map() }; + storageTitle.push(obj); + } + + obj.titles.set(propertyName || CLASS_VALIDATOR_ROOT_TITLE, title); +} + +export function getClassValidatorTitles(object: object): ClassValidatorTitle['titles'] { + const storageTitle = getClassValidatorTitlesStorage(); + const obj: ClassValidatorTitle | undefined = storageTitle.find(o => o.target === object.constructor); + if (!obj) { + return new Map(); + } + return obj.titles; +} + +export function getClassValidatorTitle(object: object, propertyName: string | symbol | undefined): string | undefined { + const titles = getClassValidatorTitles(object); + return titles.get(propertyName || CLASS_VALIDATOR_ROOT_TITLE); +} diff --git a/src/validation/ValidationExecutor.ts b/src/validation/ValidationExecutor.ts index 1112506038..59d53d21d1 100644 --- a/src/validation/ValidationExecutor.ts +++ b/src/validation/ValidationExecutor.ts @@ -8,6 +8,7 @@ import { ValidationArguments } from './ValidationArguments'; import { ValidationUtils } from './ValidationUtils'; import { isPromise, convertToArray } from '../utils'; import { getMetadataStorage } from '../metadata/MetadataStorage'; +import { getClassValidatorMessages, getText } from '../multi-lang'; /** * Executes validation over given object. @@ -403,6 +404,7 @@ export class ValidationExecutor { value: value, constraints: metadata.constraints, }; + const titles = (this.validatorOptions && this.validatorOptions.titles) || {}; let message = metadata.message || ''; if ( @@ -413,8 +415,15 @@ export class ValidationExecutor { message = customValidatorMetadata.instance.defaultMessage(validationArguments); } } - - const messageString = ValidationUtils.replaceMessageSpecialTokens(message, validationArguments); + if (typeof message === 'string') { + const messages = (this.validatorOptions && this.validatorOptions.messages) || getClassValidatorMessages(); + Object.keys(messages).forEach(messageKey => { + const key = getText(messageKey); + const value = messages[messageKey] || messageKey; + message = (message as string).split(key).join(value); + }); + } + const messageString = ValidationUtils.replaceMessageSpecialTokens(message, validationArguments, titles); return [type, messageString]; } diff --git a/src/validation/ValidationUtils.ts b/src/validation/ValidationUtils.ts index 00e01c6925..a30e98b978 100644 --- a/src/validation/ValidationUtils.ts +++ b/src/validation/ValidationUtils.ts @@ -1,11 +1,14 @@ +import { getClassValidatorPropertyTitle, getClassValidatorTitle } from '../multi-lang'; import { ValidationArguments } from './ValidationArguments'; export class ValidationUtils { static replaceMessageSpecialTokens( message: string | ((args: ValidationArguments) => string), - validationArguments: ValidationArguments + validationArguments: ValidationArguments, + titles: { [key: string]: string } ): string { - let messageString: string; + const checkTitle = Object.keys(titles).length > 0; + let messageString: string = ''; if (message instanceof Function) { messageString = (message as (args: ValidationArguments) => string)(validationArguments); } else if (typeof message === 'string') { @@ -14,7 +17,11 @@ export class ValidationUtils { if (messageString && validationArguments.constraints instanceof Array) { validationArguments.constraints.forEach((constraint, index) => { - messageString = messageString.replace(new RegExp(`\\$constraint${index + 1}`, 'g'), constraint); + messageString = messageString.replace( + new RegExp(`\\$constraint${index + 1}`, 'g'), + (checkTitle && titles[getClassValidatorTitle(validationArguments.object, constraint) || constraint]) || + constraint + ); }); } @@ -24,9 +31,33 @@ export class ValidationUtils { validationArguments.value !== null && typeof validationArguments.value === 'string' ) - messageString = messageString.replace(/\$value/g, validationArguments.value); - if (messageString) messageString = messageString.replace(/\$property/g, validationArguments.property); - if (messageString) messageString = messageString.replace(/\$target/g, validationArguments.targetName); + messageString = messageString.replace( + /\$value/g, + (checkTitle && + titles[ + getClassValidatorTitle(validationArguments.object, validationArguments.value) || validationArguments.value + ]) || + validationArguments.value + ); + if (messageString) { + messageString = messageString.replace( + /\$property/g, + (checkTitle && + titles[ + getClassValidatorPropertyTitle(validationArguments.object, validationArguments.property) || + validationArguments.property + ]) || + validationArguments.property + ); + } + if (messageString) { + messageString = messageString.replace( + /\$target/g, + (checkTitle && + titles[getClassValidatorTitle(validationArguments.object, '') || validationArguments.targetName]) || + validationArguments.targetName + ); + } return messageString; } diff --git a/src/validation/ValidatorOptions.ts b/src/validation/ValidatorOptions.ts index fdd142d79f..2df88bbda9 100644 --- a/src/validation/ValidatorOptions.ts +++ b/src/validation/ValidatorOptions.ts @@ -75,4 +75,14 @@ export interface ValidatorOptions { * When set to true, validation of the given property will stop after encountering the first error. Defaults to false. */ stopAtFirstError?: boolean; + + /** + * Messages for replace + */ + messages?: { [key: string]: string }; + + /** + * Titles for replace + */ + titles?: { [key: string]: string }; } diff --git a/test/functional/i18n.spec.ts b/test/functional/i18n.spec.ts new file mode 100644 index 0000000000..4318220eb4 --- /dev/null +++ b/test/functional/i18n.spec.ts @@ -0,0 +1,260 @@ +import { readFileSync } from 'fs'; +import { resolve } from 'path'; +import { Equals, IsOptional } from '../../src/decorator/decorators'; +import { setClassValidatorMessages, ClassPropertyTitle, ClassTitle } from '../../src/multi-lang'; +import { Validator } from '../../src/validation/Validator'; + +const validator = new Validator(); + +describe('i18n', () => { + it('should validate a property when value is supplied with default messages', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const model = new MyClass(); + + return validator.validate(model).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title must be equal to test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian messages', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }; + + const model = new MyClass(); + + return validator.validate(model, { messages: RU_I18N_MESSAGES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian messages with translate property name', () => { + class MyClass { + @IsOptional() + @Equals('test') + @ClassPropertyTitle('property "title"') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }; + const RU_I18N_TITLES = { + 'property "title"': 'поле "заголовок"', + }; + + const model = new MyClass(); + return validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'поле "заголовок" должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian messages with translate 2 property name', () => { + class MyClass { + @IsOptional() + @Equals('test') + @ClassPropertyTitle('property "title"') + title: string = 'bad_value'; + + @IsOptional() + @Equals('test2') + @ClassPropertyTitle('property "title2"') + title2: string = 'bad_value2'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }; + const RU_I18N_TITLES = { + 'property "title"': 'поле "заголовок"', + 'property "title2"': 'поле "заголовок2"', + }; + + const model = new MyClass(); + return validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + expect(errors.length).toEqual(2); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'поле "заголовок" должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + + expect(errors[1].target).toEqual(model); + expect(errors[1].property).toEqual('title2'); + expect(errors[1].constraints).toEqual({ equals: 'поле "заголовок2" должно быть равно test2' }); + expect(errors[1].value).toEqual('bad_value2'); + }); + }); + + it('should validate a property when value is supplied with russian messages with translate target name', () => { + @ClassTitle('object "MyClass"') + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property в $target должно быть равно $constraint1', + }; + const RU_I18N_TITLES = { + 'object "MyClass"': 'объекте "МойКласс"', + }; + + const model = new MyClass(); + return validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title в объекте "МойКласс" должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian messages with translate arguments for validation decorator', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }; + const RU_I18N_TITLES = { + test: '"тест"', + }; + + const model = new MyClass(); + return validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title должно быть равно "тест"' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian messages with translate value', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property равно $value, а должно быть равно $constraint1', + }; + const RU_I18N_TITLES = { + bad_value: '"плохое_значение"', + }; + + const model = new MyClass(); + return validator.validate(model, { messages: RU_I18N_MESSAGES, titles: RU_I18N_TITLES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title равно "плохое_значение", а должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied with russian and french messages', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + const RU_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }; + + const FR_I18N_MESSAGES = { + '$property must be equal to $constraint1': '$property doit être égal à $constraint1', + }; + + const model = new MyClass(); + + return validator.validate(model, { messages: RU_I18N_MESSAGES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + + validator.validate(model, { messages: FR_I18N_MESSAGES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title doit être égal à test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + }); + + it('should validate a property when value is supplied with russian messages from dictionaries', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + // in project: "node_modules/class-validator/i18n/ru.json" + const RU_I18N_MESSAGES = JSON.parse(readFileSync(resolve(__dirname, '../../i18n/ru.json')).toString()); + + const model = new MyClass(); + + return validator.validate(model, { messages: RU_I18N_MESSAGES }).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title должен быть равен test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); + + it('should validate a property when value is supplied override with russian messages', () => { + class MyClass { + @IsOptional() + @Equals('test') + title: string = 'bad_value'; + } + + setClassValidatorMessages({ + '$property must be equal to $constraint1': '$property должно быть равно $constraint1', + }); + + const model = new MyClass(); + + return validator.validate(model).then(errors => { + expect(errors.length).toEqual(1); + expect(errors[0].target).toEqual(model); + expect(errors[0].property).toEqual('title'); + expect(errors[0].constraints).toEqual({ equals: 'title должно быть равно test' }); + expect(errors[0].value).toEqual('bad_value'); + }); + }); +}); diff --git a/test/functional/validation-functions-and-decorators.spec.ts b/test/functional/validation-functions-and-decorators.spec.ts index 8e77b7fc79..100e99cdf0 100644 --- a/test/functional/validation-functions-and-decorators.spec.ts +++ b/test/functional/validation-functions-and-decorators.spec.ts @@ -3656,13 +3656,13 @@ describe('Length', () => { }); it('should return error object with proper data', () => { - const validationType = 'length'; + const validationType = 'isLength'; const message = 'someProperty must be longer than or equal to ' + constraint1 + ' characters'; checkReturnedError(new MyClass(), ['', 'a'], validationType, message); }); it('should return error object with proper data', () => { - const validationType = 'length'; + const validationType = 'isLength'; const message = 'someProperty must be shorter than or equal to ' + constraint2 + ' characters'; checkReturnedError(new MyClass(), ['aaaa', 'azzazza'], validationType, message); }); diff --git a/test/functional/validation-options.spec.ts b/test/functional/validation-options.spec.ts index b072a66858..2ffe155935 100644 --- a/test/functional/validation-options.spec.ts +++ b/test/functional/validation-options.spec.ts @@ -1208,7 +1208,6 @@ describe('context', () => { const model = new MyClass(); return validator.validate(model, { stopAtFirstError: true }).then(errors => { - console.log(); expect(errors.length).toEqual(1); expect(Object.keys(errors[0].constraints).length).toBe(1); expect(errors[0].constraints['isDefined']).toBe('isDefined'); diff --git a/tsconfig.spec.json b/tsconfig.spec.json index c0215c96a0..0921754a88 100644 --- a/tsconfig.spec.json +++ b/tsconfig.spec.json @@ -6,6 +6,7 @@ "sourceMap": false, "removeComments": true, "noImplicitAny": false, + "experimentalDecorators":true }, "exclude": ["node_modules"] }