{"_id":"i18next-text","_rev":"35-1c6e1ff6b4ef78e066b9cffb77ddfbf6","name":"i18next-text","time":{"modified":"2022-06-18T23:48:49.025Z","created":"2015-03-14T11:48:46.522Z","1.0.0":"2015-03-14T11:48:46.522Z","1.0.1":"2015-03-14T12:04:41.882Z","0.1.0":"2015-03-14T13:09:32.261Z","0.2.0":"2015-03-16T08:00:33.835Z","0.2.1":"2015-03-16T08:05:04.427Z","0.3.0":"2015-03-16T09:38:51.559Z","0.3.1":"2015-03-16T09:59:00.004Z","0.4.0":"2015-03-16T10:46:42.147Z","0.5.0":"2015-03-17T10:25:23.268Z","0.5.1":"2015-03-18T03:55:41.110Z","0.5.2":"2015-03-20T03:54:10.898Z","0.5.3":"2015-03-27T06:46:19.172Z","0.5.4":"2015-03-27T07:17:39.440Z","0.5.5":"2015-03-27T10:23:43.818Z","0.5.6":"2015-12-09T06:47:46.278Z"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist-tags":{"latest":"0.5.6"},"description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","readme":"# i18next-text [![build status](https://travis-ci.org/cheton/i18next-text.svg?branch=master)](https://travis-ci.org/cheton/i18next-text) [![Coverage Status](https://coveralls.io/repos/cheton/i18next-text/badge.svg?branch=master&service=github)](https://coveralls.io/github/cheton/i18next-text?branch=master)\n\n[![NPM](https://nodei.co/npm/i18next-text.png?downloads=true&stars=true)](https://nodei.co/npm/i18next-text/)\n\nUsing [i18next](http://i18next.com/) translations without the need to maintain i18n keys.\n\nIt's recommended to use [i18next-scanner](https://github.com/cheton/i18next-scanner#usage-with-i18next-text) as a Gulp or Grunt plugin to scan your code, extract translation keys/values, and merge them into i18n resource files.\n\n```javascript\ni18n._('Save your time and work more efficiently.');\n```\n\n## Demo\n**[Check out our demo](http://jsfiddle.net/cheton/fo8Lgact/)** on JSFiddle.\n\n## Features\n* Supports most [i18next features](http://i18next.com/pages/doc_features.html).\n* Provides built-in support for [Handlebars i18n helper](https://github.com/cheton/i18next-text/tree/master#handlebars-i18n-helper).\n* Automatically generates a hash for an i18n text string as its unique key. It is not necessary to manually maintain resource files.\n* Supports CRC32, MD5, and SHA-1 hash (The default is SHA-1).\n* You can customize your own hash function by including the [i18next-text.custom.js](https://raw.githubusercontent.com/cheton/i18next-text/master/dist/i18next-text.custom.js) file with only 2KB in size.\n\n## Installation\n\nWith [bower](http://bower.io/):\n```\nbower install i18next-text\n```\n\nWith [npm](https://npmjs.org/):\n```\nnpm install i18next-text\n```\n\n## Initialization\nNormally [i18next-text](https://github.com/cheton/i18next-text/) can be initialized with options by calling i18nText.init():\n```javascript`\n// You can omit this step if using default options\ni18nText.init({\n    debug: true, // default: false\n    hash: 'sha1' // default: 'sha1'\n});\n```\n\nThen extends i18n object to provide a new _() method:\n```javascript\ni18n._ = i18nText._;\n```\n\nInitializes i18next with options:\n```javascript\ni18n.init({lng: 'en'});\n\n// later\ni18n.t('key');\ni18n._('It is no longer needed by specifying the key.');\n```\n\nor initializes i18next with both options and callback:\n```javascript\ni18n.init({lng: 'en'}, function(t) {\n    i18n.t('key');\n    i18n._('It is no longer needed by specifying the key.');\n});\n```\n\n## Usage\n\nFor example, assume that you have the following directory structure:\n```\nindex.html\nvendor/\n    i18next.js\n    i18next-text.js\ni18n/\n    en/\n        resource.json\n    de/\n        resource.json\n```\n\nindex.html\n```html\n<!doctype html>\n<html class=\"no-js\" lang=\"\">\n    <head>\n        <meta charset=\"utf-8\">\n        <meta http-equiv=\"x-ua-compatible\" content=\"ie=edge\">\n    </head>\n    <body>\n        <script src=\"vendor/i18next.js\"></script>\n        <script src=\"vendor/i18next-text.js\"></script>\n        <script>\n            // See \"Browser globals\" below for example\n        </script>\n    </body>\n</html>\n```\n\nEnglish resource file (i18n/en/resource.json):\n```json\n{\n    \"loading\": \"Loading...\",\n    \"b04ba49f848624bb97ab094a2631d2ad74913498\": \"Loading...\"\n}\n```\n\nGerman resource file (i18n/de/resource.json):\n```json\n{\n    \"loading\": \"Wird geladen...\",\n    \"b04ba49f848624bb97ab094a2631d2ad74913498\": \"Wird geladen...\"\n}\n```\n\nAll SHA-1 keys are automatically generated using [i18next-scanner](https://github.com/cheton/i18next-scanner). You do not need to maintain resource files.\n\n### In Node.js\n```javascript\nvar i18n = require('i18next');\nvar i18nText = require('i18next-text');\nvar options = {\n    lng: 'en',\n    preload: ['en', 'de'],\n    load: 'current',\n    fallbackLng: false,\n    resGetPath: 'i18n/__lng__/__ns__.json',\n    ns: {\n        namespaces: [\n            'resource' // default\n        ],\n        defaultNs: 'resource'\n    }\n};\n\n// extends i18n object to provide a new _() method\ni18n._ = i18nText._;\n\ni18n.init(options, function() {\n    i18n.t('loading'); // will return \"Loading...\"\n    i18n._('Loading...', {lng: 'de'}); // will return \"Wird geladen...\"\n});\n```\n\n### Browser globals\n```javascript\n(function(root) {\n    var i18n = root.i18n;\n    var i18nText = root.i18nText;\n    var options = {\n        lng: 'en',\n        preload: ['en', 'de'],\n        load: 'current',\n        fallbackLng: false,\n        resGetPath: 'i18n/__lng__/__ns__.json',\n        ns: {\n            namespaces: [\n                'resource' // default\n            ],\n            defaultNs: 'resource'\n        }\n    };\n\n    // extends i18n object to provide a new _() method\n    i18n._ = i18nText._;\n\n    i18n.init(options, function() {\n        i18n.t('loading'); // will return \"Loading...\"\n        i18n._('Loading...', {lng: 'de'}); // will return \"Wird geladen...\"\n    });\n}(this));\n```\n\n### Translation features\n\n[i18next-text](https://github.com/cheton/i18next-text/) supports most [i18next features](http://i18next.com/pages/doc_features.html), for example:\n\n* Access value in different language:\n    ```javascript\n    i18n._('Loading...', {lng: 'de'}); // will get value in de instead of en\n    ```\n\n* Replacing variables:\n    ```javascript\n    i18n._('YouTube has more than __count__ billion users.', {count: 1});\n    ```\n\nVisit [http://i18next.com/pages/doc_features.html](http://i18next.com/pages/doc_features.html) to see more examples.\n\n## Advanced Usage\n\n### Gets the hashed key with a given string\nYou can call the key() function to get the hashed key with a given string:\n```javascript\nvar i18nText = require('i18next-text');\ni18nText.key('Loading...'); // will return a hash string\n```\n\n### Checks if a string exists\n```javascript\nvar i18nText = require('i18next-text');\ni18nText.exists('Loading...'); // will return a boolean value\n```\n\n### Locates missing translation\n```javascript\nvar strNotTranslated = '<span class=\"highlight error\">STRING_NOT_TRANSLATED</span>';\ni18n._('YouTube has more than one billion users each month.', {\n    lng: 'de',\n    defaultValue: strNotTranslated\n});\n```\n\nIt will produce the following output if above string is not available in `de` translation:\n```html\n<span class=\"highlight error\">STRING_NOT_TRANSLATED</span>\n```\n\nYou can see a demo [here](http://jsfiddle.net/cheton/fo8Lgact/).\n\n### Providing a default key\nYou can explicitly specify a default key of a text string by passing a `defaultKey` option:\n```javascript\ni18n._('Loading...', {defaultKey: 'loading'});\ni18n._('Loading...', {defaultKey: 'b04ba49f848624bb97ab094a2631d2ad74913498'});\n```\n\nNote. Missing resources can be sent to server by turning on i18next's sendMissing option like below:\n```javascript\ni18n.init({sendMissing: true});\n```\n\n### Custom hash function \nYou can customize your own hash function by including the [i18next-text.custom.js](https://raw.githubusercontent.com/cheton/i18next-text/master/dist/i18next-text.custom.js) file, which is only 2KB in size:\n```html\n<script src=\"vendor/i18next.js\"></script>\n<script src=\"vendor/i18next-text.custom.js\"></script>\n```\n\nIn your initialization script, change `hash` on i18nText.init() to apply a custom hash function:\n```javascript\ni18nText.init({\n    hash: function(str) {\n        return customHashFunction(str);\n    }\n});\n```\n\n## Template & Helpers\n\n### Handlebars i18n helper\n\ni18next-text provides built-in support for Handlebars helper. You can register the `i18n` helper for use in templates.\n\n#### Register helper\nUse the `Handlebars.registerHelper` method to register the `i18n` helper:\n```javascript\nvar i18nText = require('i18next-text');\nvar handlebars = require('handlebars');\n\nhandlebars.registerHelper('i18n', i18nText.handlebarsHelper);\n```\n\n\nBy default, Handlebars will escape the returned result by default.\nIf you want to generate HTML, you have to return a `new Handlebars.SafeString(result)` like  so:\n```javascript\nvar i18nText = require('i18next-text');\nvar handlebars = require('handlebars');\n\nhandlebars.registerHelper('i18n', function() {\n    var result = i18nText.handlebarsHelper.apply(this, arguments);\n    return new handlebars.SafeString(result);\n});\n```\nIn such a circumstance, you will want to manually escape parameters.\n\n#### Usage\nHere is an example of what our template file might look like:\n```html\n{{i18n 'Basic Example'}}\n{{i18n '__first-name__ __last-name__' first-name=firstname last-name=lastname}}\n{{i18n 'English' defaultKey='locale:language.en-US'}}\n{{i18n defaultKey='loading'}}\n{{#i18n}}Some text{{/i18n}}\n{{#i18n this}}Description: {{description}}{{/i18n}}\n{{#i18n this last-name=lastname}}{{firstname}} __last-name__{{/i18n}}\n```\n\nYou can compile the template string into a Handlebars template function, and then render the template by passing a data object (a.k.a. context) into that function:\n```javascript\nvar source = fs.readFileSync('./handlebars-helper-i18n.hbs'), 'utf-8');\nvar template = handlebars.compile(source);\nvar context = {\n    'firstname':'Foo',\n    'lastname':'Bar',\n    'description': 'Foo Bar Test'\n};\nconsole.log(template(context));\n```\n\nYou will see console output like so:\n```\nBasic Example\nFoo Bar\nEnglish\nLoading...\nSome text\nDescription: Foo Bar Test\nFoo Bar\n```\n\nYou can see a demo [here](http://jsfiddle.net/cheton/fo8Lgact/).\n\n## License\n\nCopyright (c) 2015 Cheton Wu\n\nLicensed under the [MIT License](https://github.com/cheton/i18next-text/blob/master/LICENSE).\n","versions":{"0.2.0":{"name":"i18next-text","version":"0.2.0","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next"],"dependencies":{"i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"d2ecaa75258ebff1a8808e48a1ecfc2db4066f56","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.2.0","_shasum":"8ecc9a2b181019ebd3137c3bee8b2d8397319c98","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"8ecc9a2b181019ebd3137c3bee8b2d8397319c98","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.2.0.tgz","integrity":"sha512-J6hE/Cqmbi8g1rx0XRCmc3q5mRXBAaPNSLM7t3OdHf9mXUiyLJ9ewGYIt2r57SSOhoTdH39YLj9ORcIYBXCN7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIADJo6c4nTt6usw298BwCCSWeGyTeq8+vVjyGsTRmpeOAiAWLpNswL9uXPYb62X6ZmZ+10trCMJ2C2fFps4/vk4Usw=="}]}},"0.3.0":{"name":"i18next-text","version":"0.3.0","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","hash","sha1"],"dependencies":{"crc-32":"^0.2.2","crc32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"e07e4e5c021d08922346be6281283e75e667d78a","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.3.0","_shasum":"eb91e50996a922bd1c4764f1e2ef22e24009bd5d","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"eb91e50996a922bd1c4764f1e2ef22e24009bd5d","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.3.0.tgz","integrity":"sha512-9YlbIP1SKCsvn5GKdhtn8kHlFG1FseDdK6LKpXPdMfeIe5+XBrbQ+jBB9qPUNlw9B+HEATWgm9Rdn0zyxsA90w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxBL/zvNon+2VgDlKp/rcFlxrRd2+mzdU7pcFmMYp0rQIgZaKFqUDzQNv++VJsuzWAHC6QQVyHaKzQk9DJSd4T1xQ="}]}},"0.3.1":{"name":"i18next-text","version":"0.3.1","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","hash","sha1","crc32"],"dependencies":{"crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"5a1dd4189e228e6fe466d763a8124568694f9fe5","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.3.1","_shasum":"f77bfbd0dd394333a9e6f69996c2370f23e68e0a","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"f77bfbd0dd394333a9e6f69996c2370f23e68e0a","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.3.1.tgz","integrity":"sha512-boVgcqPvTXAamZrWH7x2ZeOu3qX7ensm7cnHIiLvdF0tdnNUe//EI5pwUjhcq40f5Y9CYK2K40C+kcghBOzzUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTw0ro0w2lwTK3T5djk9mBw01X7dFPUuWsyOCumleuhQIhAJ6K7yNLHpfSHUX8oB+tM54+gVBxJhir2lykbfW2NG2s"}]}},"0.4.0":{"name":"i18next-text","version":"0.4.0","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"10d7863ae7f934b899edf2fd1715ae18a379cca3","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.4.0","_shasum":"86f136ef1bc01246dcfbd2cc705477b96abb11d3","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"86f136ef1bc01246dcfbd2cc705477b96abb11d3","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.4.0.tgz","integrity":"sha512-Gm2qgGu0zffjYw7H7WoGh93ZJIoWDnJunHOcDm6n+dMkdVSHAksOmMgRpG8ylv8id6ggHW9HIRvB2ZxBbDXxaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaDprcuP3NbeoqpLQ7RboH9PnMK9F7WNdOMq3af3hAjwIhAJuwj6+outZRiEbKoZHa+f1FTntasCXXdexJzzx5NBWI"}]}},"0.5.0":{"name":"i18next-text","version":"0.5.0","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"4fe2b28168e69e2dfb0bab82fdda149c89122278","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.0","_shasum":"a3036af2231ba9d618b1368f73c68a04906e0a4c","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"a3036af2231ba9d618b1368f73c68a04906e0a4c","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.0.tgz","integrity":"sha512-5p1Yqhj0J051Lh9EjvaFOCF5b+7wnAc0tLWvPXPr5et2X8ewOKfRyhEVuTM0Ntyw5glXlPcLbaONOyV4jWlEBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGqylfHFAYMS7fv0jNXD6wgPZRmQVhsI26irZEk7CUVaAiEA5qbeQmXngh31SwOdf1B5d5LNKC2vXY7KCJJ2Ugbmyyo="}]}},"0.5.1":{"name":"i18next-text","version":"0.5.1","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"62d921705fb08b7a2e2613387052af221f2e3b29","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.1","_shasum":"2583d1b761b5832f4476db51e870fd9d711cabc4","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"2583d1b761b5832f4476db51e870fd9d711cabc4","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.1.tgz","integrity":"sha512-Y5HEh45PL3Q6HEOLoiqBAlFoieSrqVDYnBmER0+czM2y2udzldhUBt1+i5NMpRQnkcXEsAS96pj74gvnwx4png==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDkF72ovIjMniLYAllB0rIqnBGhcobZG17OrXCZJXWTAIhAKagItcnDoadxIjQbHOxWltSpPqCVhKuETtt+uWCcvoH"}]}},"0.5.2":{"name":"i18next-text","version":"0.5.2","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"main":"./index.js","scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"590445f92c9c10c9aec994e543a5568b10e851e5","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.2","_shasum":"f0bfde3871fd6b5c4360260d11560cc2be3fa4e6","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"f0bfde3871fd6b5c4360260d11560cc2be3fa4e6","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.2.tgz","integrity":"sha512-x1zvqyCHH1czO3xkZMYRsm1ZHJJNTRajHPj9s8TqYMimg+slqZ1nT/5awfa2P4A5xyjlwaS6NPnyT0NMfIZfTQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBzpAJfPWReR67x+5xfSLMmahDhL9hGFqwSQ7dtOW/FAiEAoYWB+tSURfqBszsEwLnnbt7nlyjuDwFXpcLBnBh3Gsw="}]}},"0.5.3":{"name":"i18next-text","version":"0.5.3","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"main":"./index.js","scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"54a06a1831034e559a29952dda794bd4a9d1e731","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.3","_shasum":"af8a78e5109961d87f6042a8e612655cdf9ae58f","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"af8a78e5109961d87f6042a8e612655cdf9ae58f","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.3.tgz","integrity":"sha512-KJK9rVU+7KLuuD/BsOugiCRv89ehTr/FUi6CtNUxn/52RUcZul3x72NF3MEbOjfrjY5J31HjMdkUzhx4Yc4aug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBM5I6yobQ1OTdUQA4iq5ji/rlIPqk0moSO9s+TKuFAvAiEArASel9nLmSqOFpYx7P1UJ0A3xPQwvRHhw/FavHPrY+o="}]}},"0.5.4":{"name":"i18next-text","version":"0.5.4","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"main":"./index.js","scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x","npm":"1.1.x"},"keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"487e0149ee62a0f62266c9cb4b538da4ea051868","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.4","_shasum":"01c80e0e9d8f3c225149e3e429224b50652ae13e","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"01c80e0e9d8f3c225149e3e429224b50652ae13e","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.4.tgz","integrity":"sha512-vxx/iIhpg8dgCLwE/fz3LTx1P+aYGfGt93c15LiR4cxe/Gt/M0LbruntRRws+uDO8JG+REjO9t+L3KOkjsTVtw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDzDVH9GUSzfwyGH+gbRYnTsq2TTwXGIoQk/xOPiakDAAiEAlUKHeRLoUUVzrm+lYnftT6UFhoEfgXk3qG1+E2HhMnU="}]}},"0.5.5":{"name":"i18next-text","version":"0.5.5","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"main":"./index.js","scripts":{"test":"npm run gulp && npm run tap-test","gulp":"gulp","tap-test":"tap test/*.js"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","licenses":[{"type":"MIT","url":"https://github.com/cheton/i18next-text/blob/master/LICENSE"}],"engines":{"node":"0.10.x"},"keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"dependencies":{"MD5":"^1.2.1","crc-32":"^0.2.2","i18next":"^1.7.10","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^0.7.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"fe4e7037d678b64cd8813434827f7b0dafffaf42","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.5","_shasum":"adb2a98efb3f711893b56e716bf262cd73b2f489","_from":".","_npmVersion":"2.1.3","_nodeVersion":"0.10.33","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}],"dist":{"shasum":"adb2a98efb3f711893b56e716bf262cd73b2f489","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.5.tgz","integrity":"sha512-8nk8vTS/hVmIxoXHWv50xtO6lMt7G9Dgp9pQ/AhlBoB18YZejlhCUV+vYUFgwBvteTUP5e95LB8tzkY/Bxa0PQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDuUR1rV7oCQQvyhp8HaOB8u0BQufaThRbCapuscK4HHAiEAzmacX8n1fPyCw1Qbub6DjF1i5pmatE1eyC4LhCJLzMY="}]}},"0.5.6":{"name":"i18next-text","version":"0.5.6","description":"Using i18next translations without having the `key` as strings, you do not need to worry about i18n key naming.","homepage":"http://cheton.github.io/i18next-text/","author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"main":"./index.js","scripts":{"test":"gulp && node_modules/.bin/tap --coverage test/*.js","coveralls":"tap --coverage --coverage-report=text-lcov test/*.js | node_modules/.bin/coveralls"},"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"license":"MIT","engines":{"node":">=0.10.x"},"keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"dependencies":{"crc-32":"^0.2.2","i18next":"^1.7.10","md5":"^2.0.0","sha1":"^1.1.0"},"devDependencies":{"browserify":"^9.0.3","coveralls":"^2.11.4","del":"^1.1.1","gulp":"^3.8.11","gulp-concat":"^2.5.2","gulp-header":"^1.2.2","gulp-jshint":"^1.9.2","gulp-rename":"^1.2.0","gulp-replace":"^0.5.3","gulp-uglify":"^1.1.0","gulp-util":"^3.0.4","handlebars":"^3.0.0","lodash":"^3.5.0","run-sequence":"^1.0.2","tap":"^2.3.1","vinyl-source-stream":"^1.1.0","yargs":"^3.5.4"},"gitHead":"4cd6cb41fa86b3b06b5d3ba2ca8f2de68fe8c915","bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"_id":"i18next-text@0.5.6","_shasum":"9f13c1e432a6a0e61a44db5820d792fc88b34662","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.0","_npmUser":{"name":"cheton","email":"cheton@gmail.com"},"dist":{"shasum":"9f13c1e432a6a0e61a44db5820d792fc88b34662","tarball":"https://registry.npmjs.org/i18next-text/-/i18next-text-0.5.6.tgz","integrity":"sha512-RSGn//GNODoCKgmOaiiutsNASvL0pHmmyYBvFI1708GIaLR1xVZAlDzAPULBzDrBp6u4VAMGFCHvoBgIzVOP0Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGJHGtsRlwOSD0kEytLgHPAYJD7j5WrxpB89v2gi+/E0AiEAmN25XcegFvmEKlhbwEVkikUqzOr9TeK5AR1gYznJpnA="}]},"maintainers":[{"name":"cheton","email":"cheton@gmail.com"}]}},"homepage":"http://cheton.github.io/i18next-text/","keywords":["i18next","i18n","gettext","hash","sha1","crc32","md5"],"repository":{"type":"git","url":"git@github.com:cheton/i18next-text.git"},"author":{"name":"Cheton Wu","email":"cheton@gmail.com"},"bugs":{"url":"https://github.com/cheton/i18next-text/issues"},"license":"MIT","readmeFilename":"README.md","users":{"cheton":true}}