1.0.0-alpha.2 • Published 1 year ago

tablab-i18n v1.0.0-alpha.2

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

tablab-i18n

npm npm npm Commitizen friendly Coverage Status CI

Internationalized messages for tablab's failed write results.

Table of Content

Supported locales

LocaleLanguageLocalization Function
en-USEnglishlocalizeEnUs
pt-BRPortugueselocalizePtBr

Install

With node installed, run

npm install tablab-i18n

Usage

The lib exposes the localize object and all the localization functions individually.

A localization function is responsible for localizing a collection of write results. It must be called with an array of write result objects. For each object, if it is a failed write result with a failure reason identifier defined by the lib tablab, its failure message will be updated according to the given locale. Otherwise, the write result object will be kept unchanged.

The localize object maps a supported locale to its corresponding localization function. Below is an example of how the localize object can be used to localize a collection of write results:

const { Parser, Tab } = require('tablab');
const { localize } = require('tablab-i18n');

const instructions = '0-1';

const tab = new Tab();
const parser = new Parser();

const writeResults = parser
  .parseAll(instructions)
  .map((parsedInstruction) => parsedInstruction.writeOnTab(tab));

const locale = 'en-US'; // any supported locale
localize[locale](writeResults); // localize the failure message of all failed write results

Below is an example of how a specific localization function can be used to localize a collection of write results:

const { Parser, Tab } = require('tablab');
const { localizeEnUs } = require('tablab-i18n');

const instructions = '0-1';

const tab = new Tab();
const parser = new Parser();

const writeResults = parser
  .parseAll(instructions)
  .map((parsedInstruction) => parsedInstruction.writeOnTab(tab));

localizeEnUs(writeResults); // localize the failure message of all failed write results (en-US)

License

MIT