4.2.0 โ€ข Published 2 years ago

ajv-i18n v4.2.0

Weekly downloads
59,147
License
MIT
Repository
github
Last release
2 years ago

ajv-i18n

Internationalised error messages for Ajv - superfast JSON validator for JSON Schema and JSON Type Definition.

Build Status npm Coverage Status Gitter

Supported locales

localelanguagecontributordraft-04draft-061draft-072draft2019-093/2020-124JTD5
๐Ÿ‡ฌ๐Ÿ‡ง enEnglishโœ“โœ“โœ“โœ“โœ“
AR arArabicMahmoud-Mardeniโœ“โœ“โœ“--
CA caCatalanalexandreecโœ“โœ“โœ“-*
๐Ÿ‡จ๐Ÿ‡ฟ csCzechkiskovacsNAM0007โœ“ย โœ“ย โœ“-*
๐Ÿ‡ฉ๐Ÿ‡ช deGermanjmtoballgflohrโœ“ย โœ“ย โœ“โœ“ย โœ“ย 
๐Ÿ‡ช๐Ÿ‡ธ esSpanishjpablomโœ“โœ“โœ“-*
๐Ÿ‡ซ๐Ÿ‡ฎ fiFinnishsaulipurhonenโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡ซ๐Ÿ‡ท frFrenchmonlouisjTelokisโœ“ย โœ“ย โœ“-*
๐Ÿ‡ญ๐Ÿ‡บ huHungarianszilveszter9โœ“---*
๐Ÿ‡ฎ๐Ÿ‡ฉ idIndonesianekoeryantoโœ“โœ“โœ“-*
๐Ÿ‡ฎ๐Ÿ‡น itItalianjasoniangreenlucacortiโœ“ย โœ“โœ“โœ“โœ“
๐Ÿ‡ฏ๐Ÿ‡ต jaJapanesegilgongoโœ“---*
๐Ÿ‡ฐ๐Ÿ‡ท koKoreanMinByeongDonโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡ณ๐Ÿ‡ด nbNorwegian bokmรฅlmtrammโœ“โœ“--*
๐Ÿ‡ณ๐Ÿ‡ฑ nlDutchpimlieniekvbโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡ต๐Ÿ‡ฑ plPolishdanielzurawskiโœ“---*
๐Ÿ‡ง๐Ÿ‡ท pt-BRPortuguรชs - Brasilmarcosravaggondimโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡ท๐Ÿ‡บ ruRussianโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡ธ๐Ÿ‡ฐ skSlovakkiskovacsโœ“โœ“--*
๐Ÿ‡ธ๐Ÿ‡ช svSwedishlimmenโœ“โœ“--*
๐Ÿ‡น๐Ÿ‡ญ thThaiencXโœ“โœ“โœ“โœ“โœ“
๐Ÿ‡จ๐Ÿ‡ณ zhChinesejinzhubaofuleuctionโœ“ย โœ“โœ“โœ“โœ“
๐Ÿ‡น๐Ÿ‡ผ zh-TWChinese - Taiwanminipaiโœ“โœ“โœ“โœ“โœ“

1 added boolean schema, keywords const, contains, propertyNames

2 added keywords if/then/else

3 added messages for keywords unevaluatedProperties, unevaluatedItems, dependentRequired

4 keyword items messages

5 JSON Type Definition

* discriminator form messages are not translated

Please contribute locales that you need to use if they are missing or incomplete.

Install

Using npm:

npm install ajv-i18n

Usage

In node:

const Ajv = require("ajv") // version >= 8.0.0
const localize = require("ajv-i18n")
// or for JSON Type Definition
// const localize = require("ajv-i18n/localize/jtd")

const ajv = Ajv({allErrors: true, messages: false})
const validate = ajv.compile(schema)
const valid = validate(data)

if (!valid) {
  // ru for Russian
  localize.ru(validate.errors)
  // string with all errors and data paths
  console.log(ajv.errorsText(validate.errors, {separator: '\n'}))
}

To require only necessary locales (e.g., with browserify):

const localize_ru = require('ajv-i18n/localize/ru')
// or for JSON Type Definition
// const localize_ru = require('ajv-i18n/localize/ru/jtd')

or

const localize = {
  en: require('ajv-i18n/localize/en'),
  ru: require('ajv-i18n/localize/ru'),
}

See Ajv docs for more information.

Tests

npm install
git submodule update --init
npm test

Contributing

Functions that localize error messages are generated using doT template localize.jst, JSON Schema messages and JSON Type Definition messages. Templates are pre-compiled, so doT is not a run-time dependency.

npm run build - compiles functions to localize folder.

Contributors of locales

danielzurawski szilveszter9 jmtoball gilgongo jasoniangreen jpablom limmen jinzhubaofu kiskovacs mahmoud-mardeni monlouisj marcosrava mtramm Mahmoud-Mardeni leuction lucacorti minipai encX MinByeongDon gflohr ekoeryanto Telokis ggondim niekvb NAM0007 saulipurhonen

Enterprise support

ajv-i18n package is a part of Tidelift enterprise subscription - it provides a centralised commercial support to open-source software users, in addition to the support provided by software maintainers.

Security contact

To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure. Please do NOT report security vulnerability via GitHub issues.

License

MIT

ff-vue-jsonschema-form@spaceone/design-systemimily-express-mongo@ambita/design-systemmace-json-schemavue3-ts-form-1firmanza-commonsevaform@serverless-devs/dk-validator@calions/mf-formskoalischema-form-test@ambita/infoland-mflexvjsf-yipie@everything-registry/sub-chunk-1112hoomi-auto-yapihoomi-yapikoa-route-schemagrd-project-testjcbpm-vue-hijcbpm-vuejc-jsonschema-formliu-json-formmiddymonki-islandjson-schema-form-for-vuejson-schemaeditor-antdjschematorjson-validate-formmelon-json-schema-formnolangjsluralovry-formegg-ajv-exegg-born-module-a-validationdynamodb-spec-generatorfast-form-vue3form-hiotternuveiopengate-vjsfreact-jsonschema-tablereact-json-schema-proptypesruibai-react@dustlight/quasar-ui-json-form@egret/eui-compiler@ilb/ajvinstance@ilb/uniformscomponents@ilb/uniformscomponentsantd@imnfeng/vue3-form-core@izara_project/izara-core-library-core@ga23187/vue3-json-schema-form@iselcuk/middy@ishtar-gate/entities-storevjsf-arco-designvjsf-arco-design-corevjsf-dpcvjsf-drevs-jsonschemavjsf-form-kunvjsf-hiottervjsf-imoocvjsf-testvjsf-test001vjsfcolavjsfwww9999vue-jsonschema-form-nokwallchdtd@json-layout/core@jsonforms/examples@kalisio/kdk-core@methodexists/me-core@meveo-org/mv-form@inceptiongt/yapi-vendor@jbmmhk/middyvue3-mz-uiwyuan-schema-formyapi-vendoryapi-verndoryapi-wfasdfartyapi-proyapi-enyach.open.yapizhf-vue3-formvue3-ts-formvue3-test-formvue3-json-schema-formvue3-json-schema-form-testvue3-jsonschemaform-lyutil-validadorv3jsf@liuli-util/cli@lura/clixadmin-formxadmin-newformsimpli-web-sdkrokid-homebase-clisantosdksafechargeschema-json-form-zzhrichform
4.2.0

2 years ago

4.1.0

3 years ago

4.0.1

3 years ago

4.0.0

3 years ago

4.0.0-beta.0

3 years ago

3.6.0

4 years ago

3.5.0

5 years ago

3.4.0

5 years ago

3.3.0

6 years ago

3.2.0

6 years ago

3.1.0

6 years ago

3.0.0

6 years ago

2.2.0

6 years ago

2.1.1

7 years ago

2.1.0

7 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.7.0

7 years ago

2.0.0-beta.3

7 years ago

2.0.0-beta.2

7 years ago

1.6.3

7 years ago

1.6.1

7 years ago

2.0.0-beta.1

7 years ago

2.0.0-beta.0

7 years ago

1.6.0

7 years ago

1.5.0

7 years ago

1.4.0

7 years ago

1.3.0

7 years ago

1.2.0

8 years ago

1.1.0

8 years ago

1.0.0

8 years ago

1.0.0-beta.0

8 years ago

0.1.1

8 years ago

0.1.0

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago

0.0.0

9 years ago