2.1.1 โ€ข Published 6 years ago

@ffvjs/ajv-i18n v2.1.1

Weekly downloads
3
License
MIT
Repository
github
Last release
6 years ago

ajv-i18n

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

Build Status npm version Coverage Status Greenkeeper badge Gitter

Supported locales

localelanguagecontributordraft-04Ajv v5*draft-06
๐Ÿ‡ฌ๐Ÿ‡ง enEnglishโœ“โœ“โœ“
๐Ÿ‡จ๐Ÿ‡ฟ czCzechkiskovacsโœ“โœ“โœ“
๐Ÿ‡ฉ๐Ÿ‡ช deGermanjmtoballโœ“โœ“โœ“
๐Ÿ‡ช๐Ÿ‡ธ esSpanishjpablomโœ“โœ“-
๐Ÿ‡ซ๐Ÿ‡ท frFrenchmonlouisjโœ“โœ“-
๐Ÿ‡ญ๐Ÿ‡บ huHungarianszilveszter9โœ“--
๐Ÿ‡ฎ๐Ÿ‡น itItalianjasoniangreenโœ“--
๐Ÿ‡ฏ๐Ÿ‡ต jaJapanesegilgongoโœ“--
๐Ÿ‡ณ๐Ÿ‡ด noNorwegianmtrammโœ“โœ“โœ“
๐Ÿ‡ต๐Ÿ‡ฑ plPolishdanielzurawskiโœ“โœ“-
๐Ÿ‡ง๐Ÿ‡ท pt-BRPortuguรชs - Brasilmarcosravaโœ“โœ“-
๐Ÿ‡ท๐Ÿ‡บ ruRussianโœ“โœ“โœ“
๐Ÿ‡ธ๐Ÿ‡ฐ skSlovakkiskovacsโœ“โœ“โœ“
๐Ÿ‡ธ๐Ÿ‡ช svSwedishlimmenโœ“โœ“โœ“
๐Ÿ‡จ๐Ÿ‡ณ zhChinesejinzhubaofuโœ“โœ“-

* v5 is a special mode in Ajv version 4.x.x

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 monlouisj marcosrava mtramm

License

MIT