@zitao/ajv-i18n

3.6.0 • Public • Published

ajv-i18n

Internationalised error messages for Ajv - currently the fastest JSON-Schema validator

Build Status npm Coverage Status Gitter

Supported locales

locale language contributor draft-04 draft-061 draft-072 draft
2019-09
2020-123
🇬🇧 en English
AR ar Arabic Mahmoud-Mardeni -
CA ca Catalan alexandreec -
🇨🇿 cz Czech kiskovacs
NAM0007

 

 

-
🇩🇪 de German jmtoball
gflohr

 

 

-
🇪🇸 es Spanish jpablom -
🇫🇷 fr French monlouisj
Telokis

 

 

-
🇭🇺 hu Hungarian szilveszter9 - - -
🇮🇩 id Indonesian Eko Eryanto -
🇮🇹 it Italian jasoniangreen
lucacorti

 


-
🇯🇵 ja Japanese gilgongo - - -
🇰🇷 ko Korean MinByeongDon -
🇳🇴 nb Norwegian bokmål mtramm - -
🇳🇱 nl Dutch pimlie
niekvb
-
🇵🇱 pl Polish danielzurawski - - -
🇧🇷 pt-BR Português - Brasil marcosrava
ggondim
-
🇷🇺 ru Russian
🇸🇰 sk Slovak kiskovacs - -
🇸🇪 sv Swedish limmen - -
🇹🇭 th Thai encX -
🇨🇳 zh Chinese jinzhubaofu
leuction

 


-
🇹🇼 zh-TW Chinese - Taiwan minipai -

1 added boolean schema, keywords const, contains, propertyNames

2 added keywords if/then/else

3 added keywords unevaluatedProperties, unevaluatedItems, dependentRequired

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

Install

Using npm:

npm install ajv-i18n

Using bower:

bower install ajv-i18n
cd bower_components/ajv-i18n
npm install && npm run bundle-all

Usage

In node:

var Ajv = require('ajv'); // version >= 2.0.0
var localize = require('ajv-i18n');

// option `i18n` is required for this package to work
var ajv = Ajv({ allErrors: true });
var validate = ajv.compile(schema);
var 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 in browser (with browserify):

var localize_ru = require('ajv-i18n/localize/ru');

or

var 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 templates in messages and localize.jst template. Templates are precompiled 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 pimlie MinByeongDon gflohr ekoeryanto Telokis alexandreec ggondim niekvb NAM0007

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

Package Sidebar

Install

npm i @zitao/ajv-i18n

Weekly Downloads

1

Version

3.6.0

License

MIT

Unpacked Size

128 kB

Total Files

29

Last publish

Collaborators

  • zitao