i18n-map-resolver

2.0.2 • Public • Published

i18n-map-resolver

Resolves i18n Maps inside deep objects

npm version dependencies Build Status Pledge To Arupex!

Install:

npm install i18n-map-resolver --save

Example:

var ResolverFactory = require('i18n-map-resolver');

var input = {
    randomField : 'random',
    label : {
        en_US : 'English 1',
        es_VE : 'Spanish 1',
        nb_NO : 'Norwegian 1'
    },
    label1 : {
        en_US : 'English 2',
        es_VE : 'Spanish 2',
        nb_NO : 'Norwegian 2'
    },
    randomObject : {
        aValue : 'value',
        aTest : 'test'
    },
    number : 7,
    array : [
        {
            label : {
                en_US : 'English Inner',
                es_VE : 'Spanish Inner',
                nb_NO : 'Norwegian Inner'
            }
        }
    ]
};

var options = {};
/*
 *  availible options include
 *      fallbackMethod : function (key, value, locale, fallback)
 *      detectorMethod : function (key, value)
 *      fallbackLocale : string
 *      decoratorMethod : function(object, key, value, locale, fallback),
 *      maxDepth : number (helps if object has cycle)
 *      report : boolean - whether to report fallbacks and such
*/

var resolver = new ResolverFactory(options);
console.log(JSON.stringify(resolver.resolve(input), null, 3);

Expected Output:

{
    randomField: 'random',
    label: 'English 1',
    label1: 'English 2',
    randomObject: { aValue: 'value', aTest: 'test' },
    number : 7,
    array : [
        {
            label : 'English Inner'
        }
    ]
});

For More Examples:

test/test.js

Package Sidebar

Install

npm i i18n-map-resolver

Weekly Downloads

148

Version

2.0.2

License

UNLICENSED

Unpacked Size

28 kB

Total Files

12

Last publish

Collaborators

  • dirwin517