{"_id":"@aofl/i18n","_rev":"124-97cd4f62698b7927fee61ecb8c4fc510","name":"@aofl/i18n","dist-tags":{"next":"2.1.0-alpha.11","next-alpha":"3.0.0-alpha.12","beta":"3.5.0-beta.22","alpha":"4.0.0-alpha.45","latest":"3.14.1"},"versions":{"2.1.0-alpha.7":{"name":"@aofl/i18n","version":"2.1.0-alpha.7","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@2.1.0-alpha.7","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f678b7e2ec6f4d90552bf8f26aef95126b56704f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-2.1.0-alpha.7.tgz","fileCount":5,"integrity":"sha512-f7zWPtBpZn3FFUj/C1vtATWo05HyMnmSeDd+5rrUvKFN+kt6z6PhviexQDSTesB4s5FwiHn1yPB+NNdc7Tl4gQ==","signatures":[{"sig":"MEYCIQDIIaphng3VSw4ebgPnOS/VuLH/XJikG99XA72UD19U3AIhAOK3RpBczhTDjz0eUl07HzLQ4hhhffs8ZV29E9Xc6wdt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdWN6dCRA9TVsSAnZWagAAFAIP/jwJG3jJmrWcp1WCZ78B\n1dC+QnVe2R8o1RZYON+IkgQw2PNOYvq88wzjnJnmDHZ6CJpHaAdGwD8ooSBD\n/xB3AAgWWzGAH4sotjqGW0eLdWc1aUIRiiUOh/mEtZE/dLEFOk5XGecdIHMy\nqYWbDtMkXAYIXxzZSla7PR5QfI26YpzcAp5wIo89JjApWD2KlK4DBnev2Hxf\ns3+fx03HXjlhYNF7gl9HMREnqpybEjFhrOR7oRL4M0293FGEajDjDB1K3AyD\nXeWoeefqdmE8x7PePZ/mgv+XYkdsrpPmVhPcELRKytkd/EQdtS9ltUmqk20g\npngVKnQgzht6JXLRqZFNmcnQfLT7tTEZSG/ck1R3UAbo8ugjDj7MnH8maYj6\nw/ZfEBPvxLOhEKBog0zyr8/MgZOQUPjqe+eKForR2itC+6VYOWRvWfkAr1pf\n/lg4lQYx9ZjgaT1SWz1CXTGbozZoeN+OU7PtJzni7EaoWLvBXp9/1tiapoAA\nZvLLJwlPXaTs1eQ6IsCgITdVbV+jRcwznWK0zag/NhdjNpKMbIeEUG7X3j5V\nAFXdtao5Q/lDJFRTwlni705JdKc0wTY+xrGBdv/ohZ9mAGkUJyFR6LsIqlPX\nYrwg0vakURl0lyDyWDkccGjb02VujUWGRWhWdBvfG76YPWIhopB5aRrv1XCq\nbOTj\r\n=FMUM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"2f099ccc2fb922940a644bde0285f82c2a39e9a5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.10.7/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n_2.1.0-alpha.7_1566105245170_0.7508844874288736","host":"s3://npm-registry-packages"}},"2.1.0-alpha.8":{"name":"@aofl/i18n","version":"2.1.0-alpha.8","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@2.1.0-alpha.8","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"1ecb64de9c5a73cb3147609f350796ff9d09fe9e","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-2.1.0-alpha.8.tgz","fileCount":5,"integrity":"sha512-IVbSJvxrDaI8NQ47NkAvOTmBGH4Y3p4djU2/dSAbsWTj1B7JCI7Kd3HZVsRmVYMl6OVa2sNe7wOa8DXsZiVxog==","signatures":[{"sig":"MEUCIQC1HORfWJN5naa9gFwuWldwBZ+w/1sEHmRZfbJL+GcLKAIgBOWDkddY3Sx4fYQ7XFC21UwfUCAfAN4ryza2bLlAcz0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7193,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdWOjTCRA9TVsSAnZWagAAao8QAJsFSiG21dBKOe9MFzph\n2EAvk6ZWz1feWjasmLUhBK32DoiPSdEBRkz6KoWvnHc3lO65/4Ru3bfMEI27\nCSv7A/TS2FXEUEhgxdUBoadA04S6g2nSmrPVKc4C7lJNbnE8J6DTDnhJCeoU\nAmBhKWoRlFACM0vwzeaIdKilm3gcun+KhAGQeGmqLWbY52yAcNfvSdrw4oaL\nTQkKiIzCqeJv7+TChho2ZclM6LdTf75mMh6BwEPFFiU1AQphaOafPaVkkZHy\nMnq8ciqJPJtqZdnAXbQtJuncNudhR2aRCDl68TYCMm9MVC2CapTD+UDE+vI4\nYKVI4+ysqTiMfFd5PrChbT+xM7wBjEfQ781DAguWs6BveGmtbSL3GDWpcMKF\nSazHO4p30k0lXSEwyZBjuFRzo5Z4q2Ah8xNPjv1QDNatITp/yP03+e+gvdkb\n4s8I2crLbtp4GEy87fCjN4H0yiPoOS1R0h+bYIbgK+CKrs408u7BdHAVVLHn\nisE38a+IYKW5PLKO3oCQnvAlm8rRjVf3kNlcAT8gX2B0XU30+RiQyvyQD8Sv\nRhbuGknHPXrC/G5JG8LC5O5BGtV9uSjXh+u1XeW/wscA+LDcV0g/DHr64wU6\nmdfXrQWHaZxC+pWUkTqhTUMLNe2S6A4DTPQhrxmRWs+qTsKEsrVACDL0yCSO\nYjEu\r\n=UK4T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"e8049d92ada102cf1ee59bb1ac080c091a6568d7","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.10.7/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_2.1.0-alpha.8_1566107859001_0.9957416421697605","host":"s3://npm-registry-packages"}},"2.1.0-alpha.11":{"name":"@aofl/i18n","version":"2.1.0-alpha.11","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@2.1.0-alpha.11","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"975cf0739cad4d3a753aa421d83d93c1cea69ca4","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-2.1.0-alpha.11.tgz","fileCount":5,"integrity":"sha512-HhXke8gmhb6R2jmD5HwkqUZtY6nbVCdFC1ed0QPoRr7IJfWzk0G6Yo+nIL0DoJAkVz5YGJuSErp0UN64APzOqA==","signatures":[{"sig":"MEUCIAt6O/iROnbgTirLl17diz5lhWg+gkZm9A/4O6DBVzIWAiEA/zgmdDkMWJSvEjKI0GROrRJ3gFda/bRDfBJk5hXK0RY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7185,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYE8uCRA9TVsSAnZWagAAeyMP/RBIHz/v5Q5/GpWxnbIw\ntZZDm3io9JQn8g2U2i++JKBqas8fGiEHrd6LeeM27cFJaBjVdg81R2hW6hut\nnbs6iMUMQNZ5OFwEI+bTzjkEHufNhkAbRKqIPQ3448gvQvonlCed3yF6tHFZ\n/GoKqK3iKzshFKcYAZm9M16+eSRIKbzHGRHQdpgTqWdNi7HYz34x6FKYPRmJ\nwCSUJTLpXbP5xEslJgl4ZCuRSUEiK4DrC+UAwPNypoFPbJhBfF2sVxktMCNP\nCVAdnvJLyJ8RTSortRCRhbsBVk53/Lma4edXIQHoYa1fdsY3Yrd7uaoLfDtV\nYuXhGl8KPUzUfnlnMgChCIUvnXR303Gv/tVyYnjf6q6EYRmYO98EKhhedfV+\nlIQ0tZXCqi63OllfE5iE5B3r7WPTbr/07xy8oqSow97W6vL4cJIYLHxGSZ0W\nrLCF4srC76A5AAqzsW3a/DTMdJWTbupPnB23oZCCQuk3q++zDIjqe7XFNsMH\nO+ZBvArZnCkjYdwY9w6ZI7bRD5slElyC4U1bdxUQuO8/bAphILPu9yavawvZ\nEzD31ReWAEuJES8m+97bYCLSdAFZY8ZLzMyZABOEDgwn6YgKnRgI+Bqeqbjm\nfNq3RITjM9tuuPbyEP2hnmrppO3rsLAQmlcljNy3WAv4nsulk/v4gqAPIeLn\nS5G6\r\n=HPdo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"768275bdd77a3eabca1a761315e240fa6ae09157","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.10.7/node@v12.8.1+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.1","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_2.1.0-alpha.11_1566592813758_0.42785906057396694","host":"s3://npm-registry-packages"}},"3.0.0-0":{"name":"@aofl/i18n","version":"3.0.0-0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ca7aad1247824f58357671e4d55699d0d39be1ab","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-0.tgz","fileCount":5,"integrity":"sha512-QRSOwd8l2+Tgaw4MPuZrnJa8DjFgAoKtbEt+BEKaqb7P5Lyj0zzRybaoUj/r0R8m9RJ/i7MBwTeg9TYrneZ40A==","signatures":[{"sig":"MEUCIG3f2eNxhYyLCtJXvSe+3Cw7Vsp1PcT66nkkyZX+XQhQAiEAoVet+lEytln0eLUZQL6tsK8YIhG5dShao4GEXAODKY8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgG1xCRA9TVsSAnZWagAAJMQP/RqTbkS0xfgHA33efOzj\nvNXjq30XuvUXV6L/E4UK7/rJlVJ3y5TYY5qd1reiaNdVnyvrxd/TNEY1VyM4\n9D3MnAF+9LYnoFmlmLTGl3FuLyT8rEBB1u3cAmPX3d8xuUchg35fKxirmfuo\n99U/1+mjp0atQDbVrm4ba7RZ/QKzAu2TGosGp8HAGmv9RHGb1FItyJS7mViO\nRjXPe6SIewshuRHXIHlJTK1inMoZAonoWZXFFMs+KLFIdwY/oyFyuLdqfIsp\nDENr3r8XJ84qLm5gOblDBJAjQfmNS4fdehS/oEEi0/P+2eCaWnWyUuNlXEtr\nhI9uyTeacqr5Yawbw2lEm4v7GSYMBLJaPjCcrCTA8wpjM9gbPr7ht01taDo/\nZibxzpADYWDji7EigsW9z3EDpUiSlAa/gmVKftA713rOYTmel/DPuFMrdgGx\n+0PAm4aIQjbTrG8qp62LbdEBdkHynk1GOxUHbu+T0IJTGFR5hqnNaONkMwn6\nOA/8jfduRP7llQo6JVNuYVDxssMZRxKrKYZrg90rVg8b30rqMmSTj2whh/WT\n5zWCd0ixd45IDf/F7f3uzzcZB9pBVgEH4rZfTPRkQB4dNdnaXdnIWU5lAu6X\nFbjDm7ypjKVUPas6Up9Ybi7ve4psiPbU/5XF8lty+W3LziB+ytv8MkeQzUPu\nwxDs\r\n=u04U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"68ed707a605f1a3cb02ab70ff9ed8a188867028c","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.15.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.15.3","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-0_1568697712880_0.6382956084853191","host":"s3://npm-registry-packages"}},"3.0.0-alpha.0":{"name":"@aofl/i18n","version":"3.0.0-alpha.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-alpha.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"661fa3bae4affd21790776cda922c1082a565cd2","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-alpha.0.tgz","fileCount":5,"integrity":"sha512-5gSII4I4o+jRH9q/zToq0qSgIcHT3920FzYpVFRzRP8B3sS+y2PNjTaQqIPGSdrX4U1n5T3xR2yHKhhdPL22aQ==","signatures":[{"sig":"MEYCIQClOJgDCv1mQ/dTvb9OhiKDFeRS1I1WRz6QjlG9uCZS7AIhAP7dVgBkCOEYfGwlybVFpl9T8mzNrhrGVviy+0A3231Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgG3qCRA9TVsSAnZWagAA3ooP/RqcIwidkRpvexeFYx8y\n3Jwg6gXOfwy0oDcXDiOYaFGPqRUiLFZl4CjNau05uzrcHp8bKMJedYovqZMt\njlpa37h5mUBYc4s9mkzEvODc1gZUasHcqeMZlZv6XBxqUtEteZQpoEm+MTZj\nOKsJIRDkXHkH0mq3x1e0hSwf6tWEk3E54ywlDgffi2N/WJboHiyTOAbg2hzh\nO/B9W3ri87pQtfl9Lm4StsYogWpYAsc043uXUsmqQpNc7EekTN+h7vjwy8k7\nDQoBe9lTKFHEnyViLVO8f7VJM+HqWk2VGYQDkHf5nrP2+bxnKB9aQvk8HWon\njBxjQ3GIdZ5l6XAs6rzMTf8Av7b+GhC9/hDpVMwJkvKK1c+OaKOi+9OYOQ1q\nZjZVtE7VNe0oHNt3WeqKFKCDC+p+XQnQA+YU0Fm+/iGPJqTu5XwET8LYAQaq\n5BnX43oiUxn4IvqI/l0gTM522n6LZGcTHNhM9m2k02NweXSeeFCgg6g6VXyS\n4RgecJTtgB/QJ2tW2ZBaT1F5OItROMziLFc37BYh+Td0q6BiOt2l4dih9fvC\n1CsfBl5lGdEnUiQgYsizJGTmsI0F3vIamhcE3jmTvrXkQ/tC3Ksl17R4sClo\npPIc6OvnBbt0tOc5wmX0Mt13E0bJBmMa8+souUM+ITQyam7wmr7oNi5zhHa5\n56Ky\r\n=7i2k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"c6c4d16f33cbd321585e3e7c86b1aaaeeccd3627","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.15.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.15.3","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-alpha.0_1568697834057_0.29970200092104005","host":"s3://npm-registry-packages"}},"3.0.0-alpha.5":{"name":"@aofl/i18n","version":"3.0.0-alpha.5","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-alpha.5","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6a80d5c5d133feb14c79ee6b92580e5a5b810ee3","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-alpha.5.tgz","fileCount":5,"integrity":"sha512-97dyswRWyz8dFiUXBYaCVLOraLwLIqSRSJv1aDYezKAQMsowDdb4Ds2T/3rGORI05V76gW6bkwpz+xim3r6xPg==","signatures":[{"sig":"MEYCIQCLTkOQoOQZQmexW8cAdzVqbjAHY0MYZLdFGPsEWmw3XgIhAKzLoLqZXxvblvO95hMxzyjTu5AAJU3eezA00rnzXgWj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdhHKCCRA9TVsSAnZWagAAO+IP/3tQVJYTS+VADW1pGJ8j\n4f0+E6DmpIhOrCctC/r4EM15Hc0bI06CP00lekanUUhzHTTl3KPJ3pZxxRLY\n9IffyQIRpYm5kRdlm5/JtssqPMj7tVt4CzUJP7wTR35GG8y1yTbZ3xZwnpPv\ncRKTDMuCo2ltftxVTIfCJ0t+oohx0vq6yyFzMrD7wWwUf3F7vMUQEhzB76fd\nzWvc69Q5c16j6i5JFgKnuuhBhil/g3Yj84rpYpc9XDl9dvZRC77XvE5hJjxq\nTHv2kL2/YKL1gLm9AYbsarI0zVWXD+XB/DFV+C8c/evAjXYAXkueiUOcJYBm\nVlje3v4W4tthxPc9dBzL1UGPiKa190eVS6P5gqn++j8rkD/hBpXFjz5GYekO\nuGb40HCMO7cclgLU2EGJDZ9MCOyYa3n5HC4km8p1SDS6zH9XXHWNg2bO1odh\neWrS4N5ZCwIVQ7HfL/HM99tMlvQHfqBpmGTe9fbII4cj8Y3hQxfCUui0Lh+1\nmIfAi1Bg89P1YgURPugwVNaEabQw67d84vPQGdCpudjL/9QP2CAV+7HwRE6N\nbMvC5Ujm90r1xbsM9x/dmX1iy4kDjTlhCP3soxOQT2mZOq80Z5PGPuAB8tIC\neEJonGt/qgQ4YsbrYImbKAfSuVxFU5hltNgfCYyplbUcI7cTF3bIUGa1WKre\n1SWm\r\n=ugxa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"09f43882b317744481f4b6845b1cfae0461775d6","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-alpha.5_1568961153558_0.9971240988445695","host":"s3://npm-registry-packages"}},"3.0.0-alpha.11":{"name":"@aofl/i18n","version":"3.0.0-alpha.11","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-alpha.11","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"b1cba3b6da59d286f48afff3e37fcc836aa3fabb","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-alpha.11.tgz","fileCount":5,"integrity":"sha512-XR2Z6cbVXyK1Wiuv6VO1Hw8NYauhrsaw35rsUj+tNx9TQJiN8gsBLbtPY7gelu7O4/QBj9R76K6Apjer2QnqNA==","signatures":[{"sig":"MEUCIQCA1lCXjFFdCaF/UDSwK/C8/xIZI0gpPNx85+DCHW6gjgIgQtpzUjrFnQ6hYIGucMqpijtAYwfEBMbe4R7e9XGgTWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7185,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdjbDwCRA9TVsSAnZWagAAxYgP/1Zeg0qYUrIjnEwck4BD\nNs7IRsVVfinK7eiRFHpmGK7ELRMmL+rx1XXQ2O7S+HpH2g+26vcuBFFQl/q/\nGlEueSdEIhME/t3HTK9v+PfB7i9EfT/hTVEU5v2P6Re75rQ8tbF1j0knobLo\nS5HIG+vNIcuAxnKRwJkSh6YSFveAuQX0kZmtRQcaFpI7b8hoRulCMRKtazdD\nhoxjnRve228ide6NOIHZlQlBAbB3ps82jNJoDJ45JBEPPICnS/gkAlE7DVVd\nFNeusyxKqAvN/EZEtPBtLMt/Ge8kkaJQcN6xSWLU7GY92fWDsTSLyXDr41PB\nHRHwTbEOfA4Dz+SN/KSw/dAZG8SitvgsMAL8n+UMFaoev6WzKVTdvZBEyxrp\nMTDaHjY69dDV0rSc+7uMw5g82W+avonIoyzPT0zIuY0XYuuLTbmLZatBGyYU\nFndFNd4NuwrqU+7DRNHE0WurfksCknt62tvexw/A4YPRSINich36t78Izh17\nzVaTtTDtnVMDmneHVcek0zQW9sHaBE8O4VMPHE2JAIhGKh7Ai+dvobzpC957\nDTqC2krvzQTU0Hw2IXZaNnH5dnn6cI2goh3vBUrCkBkb+eQ1Wa4JisdFifZQ\nFvLBDRzAW46DFermOCxbK0sNQoBuGV68MRgeqrC+GqDEVd2+YbLjsj9jTCpD\nyHfn\r\n=c9tu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"ecdfe7e68c95cd3ce9eca2c86626275d1d4559fe","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-alpha.11_1569566960071_0.49138117317961405","host":"s3://npm-registry-packages"}},"3.0.0-beta.1":{"name":"@aofl/i18n","version":"3.0.0-beta.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"97539a723d5701970f4cdc5379b336f16b7e026c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.1.tgz","fileCount":4,"integrity":"sha512-cGNUCFOIyViZP670ee7C6L/Y7FbrYFpppd69zt89+/Erg7sV9ksPskJIgMLRHLDXb01tr6XLjgbvYv7GBL8riA==","signatures":[{"sig":"MEYCIQC5jli+99QuAg4vLHxN2trHIBFUXT2jCdg2NNA+Q6+2WwIhANVR6PUNFwziIpI1r5uPh0MRzvkA0gSq8ZF4VfRcP/Ka","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdmbIyCRA9TVsSAnZWagAAELMP/0cXfSgdmjuTgUhI9Stt\n7LQGqlnhWMSPlwrggiuez7/RMTCGlD9Az14JFsehCg1iDUBtFkBBpQkZKdJ3\n6MUgrKtFDLf0T6nlbnpy9XxXaHFak0gtWjlTx1qy7gGc9XgWZ6UF6iUf6KMq\nGLnfXs+IoY23IJdFpkTzX6HEJktIBRIPWKkU2XNB9RBnZJ8SOb/PpEf5ijUb\n/9PKUdKflPSRLWh870DmrI9nh/5O3/Ofe9TApRTt5bZyX36itkRM/V9ZUAbs\niR9bTay6ygd5B8NJC8bRTWljpi8XA+BwPS77+FdFXvSQedRC/tiRdr66GnIW\nBUZLMxO+ueYw7ELnrgHyStq4kzdmFwclKirvFimRTFNdI0ohmFcyZ7ujinlW\n3DF4x3VpQw3x8hCm6rh/5sk75GxrwM8f0Pc930TxFCmPAYlklQIgmhBCdNdO\nMqTtWGcMy8r2tObTOZV3pAyRMQRX8lD+MDz69/Qagu78VP9piIYLOOy/bsb3\nwPgOEwGCh/NNqe4QpENOGQxdTCgA3fggraELjKOFTHaGKbOBa5PeDcMr/HeD\nQacXLxb1FILdjRdu/k7RAbJPYq8zNieLjcmjRH275QDYmk78G7pdfdlxOHMN\nXM7xiCzqQQrs9H/EyrNDK2xz6MD6orjmKMaAabEMIz+4F97edb+NMYZE64ra\njbOJ\r\n=jyfx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.11.3","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.1_1570353714342_0.201605146118494","host":"s3://npm-registry-packages"}},"3.0.0-beta.6":{"name":"@aofl/i18n","version":"3.0.0-beta.6","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.6","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"12662dbfc2ddfad17a3259ef8a08382f737b8eb6","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.6.tgz","fileCount":8,"integrity":"sha512-S/sWyHN/jLhT1IZDiPPclc8asEo07Aucwkw/vRkRcNBrcu4mVzM7cxaqlSpGrla2rt5AyHXBtplXJ4g3AtfHBQ==","signatures":[{"sig":"MEYCIQCfC5Fj/l7Ak/QeOc3B+iKX04OXpFuorOCMXbwbQ2iArAIhAJbj3fPqM7UjpccuIEOiJRetJXpfAzt03ra8rm47I218","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnBViCRA9TVsSAnZWagAAXOoP/RdpNQkXvGmcu0bTwXXh\nqoRBG5gguxFv1rfKEO+SKGsE8k9rgTeqFhH9CsWI7RRGSs7L+TJoTgM+nxMe\neFeyHteKHth9SFgXLi1Mh0vKbSKjp0ssXooekfMoaFnwTMEkpC5HfhhL8oIi\njexIcVnogUjkqpk4d/GEk2vQtvVHr+6sHLhiiKzlc2/pi8TycNVcHh0w9mEE\neppyeU6Z1oZ60eGk2H6iaruGBHK++D5TGaj67y6IMSgYT3pJ3v0xytNHgsui\naLp8D1TlKbfG4KFQaSDm8uDZ7tGRy72BeuNxtarkRJqJIedBCLLJ8FkweThC\nz9ojrEFEGHZEaOSQp4OoAPX2LdJdsiKUcmXNTypbPKRaQ7ACMwBdIawjHUk9\nYgoRRuqmpuRbu1lXREHy8tPMLMQ8uwUOQ9VcF0o8hU8rOKOEv75mzHoiOl41\nAHxuZrPdTkXQuZbz/QCS/4rP80lAMkYTmntUTHW2sV8R/iYQZSxpDAFB+PNS\nR2qY4trNca8fzfBz3tR3GJ9FXyN+f893xNhqJwnnXKH+z/BVoz2t2rWKE/dE\nd3h1tJHOn42yjq4CxKtyzKVOe/jIInoWzA4qh/jUCxfsFO50W2H8GaqbDHNp\n/D+j6K45fqI3YDXURqd0B0pu1awaCOw9Bi3BbbNNqP0umGyp/gbZVcQMFABQ\nV+cg\r\n=g/tm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"23e8e9dd00e515c9305baf320436e43f51d7edd3","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@aofl/cli":"^3.0.0-beta.6","cross-env":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.6_1570510177823_0.04229970800561467","host":"s3://npm-registry-packages"}},"3.0.0-beta.8":{"name":"@aofl/i18n","version":"3.0.0-beta.8","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.8","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"bcef2c074b465339cb7afb38e06ed18218827fb0","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.8.tgz","fileCount":8,"integrity":"sha512-DqEZyYRdX9ITRnbFkNjGoKftNRbfjPZKcUzgRojjQbu1k+RzzlowWdRgOfLH1YOuBzqOszrM76emldAsYKk0/Q==","signatures":[{"sig":"MEYCIQCULG4yctl514eyZzxNRRVInlrYKArspPhP0MP1vCZeqwIhAN9oM+NZDlqrzjZMzszqNjqi2XjHc04H3I40ndR4fmZc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnCMcCRA9TVsSAnZWagAAmWIP/3JVb1oFLIdr8EYJ6bz2\nXS4hyBhIeu3aYOUMLAi1u6rY2FK1hL5+waMWJOq8thRXnIRR/XGCavJWcSSO\nke6fk/mWki7R0YhVlDivRBoF1tsasjR4FjEbObGETmG0nYaG1b7fBN+SB6z0\nDraH9ipRf7sujq3/JUXDQlJwRqFZLRvtxeDmu4uAZvRgfanFNi/hCFqAEOFW\n9rVBdyLBmepMQ043YDnvIMBErRKA9qNjEkoByzyfE8sBkUI4hdRjzcOfzMJS\nc9c8eeeFKRz7hz87E1EfbE+4mjMV6c5bnN6s3v+7qNiXh6+1gxMjKtKWZADY\n/Q/374/6zhUGpnu3OXHQ4HcF8pFbvOskE2DG1V+j7w1H/3hg/GK+/8Qe8/tI\nUJEnEdODStJNHLTymHD+TWhDgXx/yMCZgxafPAGPi67+HEGtq/cPEpjjpPCP\nfthvB5wSUjinXkm9FaOEtJc2wW6GbI5c/BDdD9AS42vcgGrTeCyKg6twf9ff\nw3IebaIMBpmPaz7Uz7QL0/g59FFMbPrVjU1ejAdnBBktpEnuJslI/TvRThTU\nkqq3+NGc2iMkx80zCQUH5H8B+Qqe3ODpmiug+0TFuz6OQHfzNKknwDbV18HQ\nvAo7h2ip1j/kgKBEG9Mk5DozEMRVeWlcpkc/GM2Qkgc73IFqP8WDLJDp3Ik9\nybOw\r\n=n4CY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"31f766f3cf621147bfa1530b863757cb08e5fc10","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@aofl/cli":"^3.0.0-beta.6","cross-env":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.8_1570513691348_0.2933446960187862","host":"s3://npm-registry-packages"}},"3.0.0-beta.9":{"name":"@aofl/i18n","version":"3.0.0-beta.9","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.9","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"01e2b50a14abb170a695ada063eaec8e72ea7e64","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.9.tgz","fileCount":8,"integrity":"sha512-edf0yNnipagRt2nCcIDYtmPGPOSXmnzLrPYKbT30VkJCt3816UNJuqky9XA7yvZv2QnSf/MW7LkrJ9N0dfYtQA==","signatures":[{"sig":"MEYCIQCKUTV18Fe8tze1gaFWySKgN+vY0prsvPJi7QysCZRpZgIhAKPWkGVKAJGdhBPjpYCI5+77vovEk32k3aqYF8mZQkLW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnCiZCRA9TVsSAnZWagAA9GoQAJkbjYLXwngWHmyuBJ6h\ntaw34vUwpSc2LHL++i7KQq1Lw3wFoA8qU+1y3/+Kap2XA3PhhXBnQgsH+xYP\ngAEULhKhzUMv24UEB4K8IO9v7cVQZdURlXgXwDSqb+M9OaSYn8JX8cn+h9VB\n4LAgkHihHBu7+0LmRilH2WixwHdgzCFut3xMeauxJnin1PSf60qwartAwqP3\nCI1Xt5qzlNrSqzYDe1b9ia56Dx0FPPESFETgJ9ZdCldkspnmsRLaQMRIdRAS\n/gQW2f6G8uWAyC1PFml5hqWgjWqliLHYxOnV24TKMEfzFLLrhSwGaXERdqfR\n+XbnsRqhi/FijsfPrQ+ANjYcx7l4dbh4xAP/9ysYbNY7s3XOtPPwIWek2vpw\n7lqsrVCy07ijzrEIoW3wXSudKhy/yuhmqtmt9bpdGiztPI6P4L+4ZqWmh7Iu\nEvU+r/4YM0AgnohoNIieN5DWMbaXm01w+LowPsAHEM9W2GTjwM0F0W8b0L8x\nmuFe/GZZNNuiOlXAu7RH18/Jg84alciHfJaDxyTWax+MhTjdibtF8ixOfZrR\nuDb2t7WmrWjlmskhBFerebjn+qO9PZtNK6Ezf0fVjnzMPqw1rghGEp+C+Pi3\nTlrTFJng42Rhu1VroMsRxrXl76FQVJNWqoiwZOWwwSujblY3HUUr8g71Dw1g\nEMXz\r\n=8Cy8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"e9e6bf24a51611b9b997dc99e770d43466ba063d","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@aofl/cli":"^3.0.0-beta.6","cross-env":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.9_1570515097173_0.5162507677894994","host":"s3://npm-registry-packages"}},"3.0.0-beta.11":{"name":"@aofl/i18n","version":"3.0.0-beta.11","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.11","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"823b79a8e221f488fbbfe9a0c4fc44fa03068a2d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.11.tgz","fileCount":10,"integrity":"sha512-yURglZDdPb9sfB8h2KEjN+KRhAl7Ue9sswNKp9BcZL5aMCr5jPwPialm5qb+nptVkqDSp8OYau3GOqDZhfz9/w==","signatures":[{"sig":"MEUCIFJAazhG+uxb46kUf5n5q/whs5oi4amlFWAKfyJzY6XPAiEA3wWPjNrDuQdmDnlbHUW0EYoExVXzvJnLLOMBC3c73Ws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23823,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnFoZCRA9TVsSAnZWagAAvScP/2M7xkyD9ACLR5dWz4uU\n+A0VuqwE4uFxEQfmCI7U+NtEoyDiuWfzKclTQuZlM2gl0YJyYTgkP/09wMhX\n+xuHN1ZxgLVyx2shyBFqmsrLVU3QHuTHm/o92aqkwK9rq8tH0EFw3Ve6BWLK\nSfmb47hkhxfyii3PQgICAMxAeZ6yXNFcNj/tcEG2pMhO+Y5bHXc9CAkqGunJ\nywRmC4CbQelAVyYISQTQ/hi5XPcl+6TE1XMDlE/vLgVCgo2TDuXd4Ul9HOBu\nI7OL+kj2GHBtO9R0yz6z4glpnkovhpxHS9Y9KMJcUChoAgLaTvOvAXSJjU02\n8UZutgGcZ+OiGFcdbs2snUrksypqEReKsBsL9HKMoFSSvfmFfia5SSkijPo9\nR1Dm4U0TCPtMAKFCPgjB7cu6Zbtwf9pqRlYxKgTkTf3+R7MffUgn1JT4Uh9h\nHxy1/fEKd0vCCaKd9zDTyR1ZWG5DnSB0GXNACLtckqJphHsWlIqzkGwbQe+E\ntqFWeHMC9y2XnG4/3aS+Zi8bbUdFVLN/hs0XAEoza/JELLJylIB08uRsaTCy\nPLmNajkRiXxXQJhGAlUXBESMO1mlPDcUbt12mNGXOpfyioGIEYsDxvybq+vj\nR8Thz7whI8Boo8qL+q7pV0oQl27Bs6+WzkxvdBnZYVhQBjhibtMda/WazpFQ\nZyxv\r\n=/FWD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"ad7cdc30523ea031f8d1bf5c62440f80f75a7308","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.10","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.11_1570527768813_0.46809019069519","host":"s3://npm-registry-packages"}},"3.0.0-beta.12":{"name":"@aofl/i18n","version":"3.0.0-beta.12","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.12","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f15562facf18eaea7e51f55c11de33b8a9993448","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.12.tgz","fileCount":10,"integrity":"sha512-Fev+6Nygd6eWhp9xXYY7UzECrr7t1b5l7EWcq7B5RrBYRB0a4rwe5+oHrUI7K0uzQO5uV4pCvxQMeyIBkHQfsQ==","signatures":[{"sig":"MEUCIHAX2UNzl9iB84Rfxigvk2rcK238HJqV5wIzp7jbkDZ7AiEAlTLHaS49EQjXgGuOXdKFBYApTsySYVpZmlhfDt5D5DQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22071,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnFyfCRA9TVsSAnZWagAAP3IP/1a2wwwX9lNxMkVNtBm6\nMjJ9VhCR7RIiasaLD83Sg7zT/bfrUkRNVPNLgBxn6GvMmm8mvxAysQC3HbYi\naORg15XF0i/Im7CeBAxH1pOEtUKD51DqpQJqBd/gbOiNZqaDWoGmv04yGldu\nhKbjonuSqbFLY0EsNaLaEC/1SdVZaMgtE+rwwZ0g2H3JT6b4V3XwvsU54UtF\nmpijBao2ob+WjcFPQz60RptvrpguIQv5A7U+w0nPnOiS26F2r5LZKqmpdLqZ\nKnXAyBEJjpytlbtvJwoZ7D0Lxdr4U9Qcnb2unErcbthlRENQL6U17FfN3fKw\nyK3BbpqECXLpXMOcN6hB88b+lkdxBeZabda+5Vgw9WpQb+lxpvwHkNthJPrr\nabwPqEsk7fZNqXiCDSnReL53ATNyOeMuwp8qh3GElU98jLaWAvJC3Zr505v9\nSUBiTxLuldDii9h/oSb9w/OutIItcvksvwpvZo97c9N7a+QIQw9whJCUOqsw\n0flfWciKMJpKDirzMU+VHdyXKux6pLB/dkZ2gYGcc3QexZnFYuLNr6IZxEiR\nHjE3vTOqUA8LAey9hIuMiKxReI2vH2pjklKPSvGhPm0OPK8I1WLRQ/HdHLF8\ny/XRTXNtUT8EM8SmCyMQx3FFlfzUvX7c2h7ND8HiYTjepP4C/XasDAdPjdOs\nkrj6\r\n=OuuF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"7fefe74af1885e7b807b6ed3522d9ae661e52645","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.10","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.12_1570528414538_0.8456057653300386","host":"s3://npm-registry-packages"}},"3.0.0-beta.13":{"name":"@aofl/i18n","version":"3.0.0-beta.13","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.13","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"84f3a37c5196a6d19b9d3b9bf04ca298bae94722","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.13.tgz","fileCount":10,"integrity":"sha512-+m57ZgtbRA+ZHMbPsmykL0wxsENEwxNx3Fbq89mOY28T76V+GnFd6M68vVfEsqqaEzLEgHL3/pGw2VXBpEGA7g==","signatures":[{"sig":"MEYCIQCcmeEFezokrsUrSz8996RRzlQwlSPtxZd45hD8ODjnEwIhALr75CWdcKOa6EdLW0pOjEYC+Pev6iPLfMh0LylZ+z/o","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22095,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnV5iCRA9TVsSAnZWagAAxNMP/imDwxdsNcVtcq8MlchQ\ndu4WL3v09cQWMM6A/tzKfQPw8cPiNMHKTKVoghZEZXE11Lfa+Xx76Fk1K/TQ\nGHRaap0h7OoZG7+REIzhEzfB2QxtLKIi9VmGLOIfuJCEml/AGDBS+2HyFAru\nQO8MUyixR3dr/xPUWO1YThPG+OvGbw0RtKSAT33cf/47vWkQnu9O612tfsCR\ngB7vIRI/hu9KIFwhqXwDA6ThYfQLnCd1Ivuw0pJQtksubh8960ZVvRBlyHW3\nFsd66l66XRraMTm+Agl0SB6aSdzWoL1f3vCoc3wmnhUPA+CeJVkC+YblLSJp\nwxAKC4r7xtvJ/sf914755pNFyXAfvtkLyPMgTHzvnPa5lSdjKFfxG1KCTwZO\nj4jvw2PeeAYPq6Opj3HfOU3xu6FQuWR5z4TZ9uN7XeLmz3Ly139UNanhdSw9\nh7nLDNgQWEKgNXDZL14VybmAmcETzTM8Nt9nZ+ttEg9zpPXYDgYXgb9bFmhL\nPitCD6oUMQPmQ4eSq8pn4ZY7QF0yCv8otvjSxxlYyhmuAEiuxchitTH29RXX\nBQuFRB8jFk8BJdSegTQ9mKdwm7bBbkBNbvteVpfIf4SpEtPm2cZENNm8hva7\nHqsQimNENYUoq5mEyW/a+ctaXXZG7NllH7CUPbLfZyQ3+gXTJKuUOT59YFpR\nHBbd\r\n=WJIO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"aa2e52c46ae9451fde097de4734398430f2127a7","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.13","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.13_1570594401573_0.5929619436050102","host":"s3://npm-registry-packages"}},"3.0.0-beta.14":{"name":"@aofl/i18n","version":"3.0.0-beta.14","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.14","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"bc09ac1fea182db6cec8b499311c462f3f72b2eb","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.14.tgz","fileCount":10,"integrity":"sha512-chyDvKfI5NcAYGaGxG54oKeT7IJava34sas1jlITBM95GLe0f5httfHm63VQSqCG7esAWw10ryFpkmvopim7yQ==","signatures":[{"sig":"MEUCIC4ASuajT/xPLGcVraCquFCvfVxXsoVkEPQJnz5J3HvPAiEAjWe08XG9rzxK9FpHfxg5gHZwNi6maG5+IZs0ayOtopg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnWL/CRA9TVsSAnZWagAAhEsP/jZziTostGg2AR5cwkkB\nlJZn/RlT4c7tDpE09RJtoz8pSWN+eq4OWjXpaK8F4e6coZFBqaa9Q17nHxeE\n/dOsGBk1+DGKPnN37zTfzp3NCHRARuJqTegp5D9S7QYsPVYH/29vTapaeZ8A\n3serHf7F3hzmddDdxooViC4EILKagUS0rIQmYq1oA2j30vh9wR/6+lzcTh59\nJN9rYGzDKZJxCD42LYjcXM/KUHYqZSaez1vY1ht68fXc5PhvxmSBxMko0MhI\n0zXvJg9XE4eCUytiOf1ng7RbWvpr9/5Rj0hc9etVNLi/7sb1OP4NTxGmDmiN\np5eVwcUUHR5Nx7TMn71PT0KJuR8NQU9tHz0o50d2yIBqgywX8U4iDcsQNFoL\n0pxTnDRD+504rdC4iMNHMAy3VXTjDkAldzwbB7kluSpYcxJGIyw8k5BzYjjx\nOe5Uy2zDMMO7b77bwNM4uohBW+ZXmjzVfPM3sy18whl/BwffYEa32UHGZrWm\n/4dckNGd/6gd650DZQgWgH2mDyrbP6N/bsXR6Ly048HCnSkDeu0+XxdW135R\ntNIODv2Wz8Z63WLljft55UAEGoe0+O+P44+91PWyJXBw6RgIczTm9Pbs+ylC\n6GQMKV5Hobn90cns0cB26GLu1HnYVIxi699LCPic07oACbHOnino4VMXyAp3\n1DUJ\r\n=IMzk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"80c0c882f3af67f4584dc8d38de8a62ca5632c94","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.14","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.14_1570595582977_0.1560658823812906","host":"s3://npm-registry-packages"}},"3.0.0-beta.15":{"name":"@aofl/i18n","version":"3.0.0-beta.15","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.15","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"dd3c4770ccebaa4db311f0e030d82805df1743aa","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.15.tgz","fileCount":10,"integrity":"sha512-oTSKXYD6+0tSDFJVL4kE8SXPtVn9+zOtC2vglAfeAG2pN+nl9Xu69n2Mrr9LKNLpvCa/rvdqBd23FzVpErd4yQ==","signatures":[{"sig":"MEUCIEfQck95DERjhy50YrMzbdtuioQY9zGYZNJhS/3RR0EvAiEAkqGouyOWqEEksCxqUbj2YcKK0hWjjucU11o3QdBZdtI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnWchCRA9TVsSAnZWagAATBkP/iF1Con/wyE7c+5W0jwX\nG6KgRcHkIk2SspHGSE42ehCYVL/I6lnrvbzfADgWG5lwYj7m9wH6KVMLRqJi\nQa2XpK30Ir/1aXTT8ysBInVFG1CmTqUij4tP1zoRDyLotMFwwCzasasJJWqv\nBDgj816s5KTl8W0tIw8A2Edr9Cr9QOndX7J4I8YfQyKC4mK+gD00Or8UMXoe\nVUN0H9q1a4V+DtUWes558JJtfhFBoBWnLw94OXgR21/H0qOvZzlwsad+HKM6\nKf4qmvtC2Ajs/vV0T1vm/YH5MpsMVQjk9rQtKnpZou8UW7hurXQzTVyJLUxH\nBfVI4JGR1PDpzxCf+uqWyzlw8aN7htirMQytf2E5DQEgfHYyz/fwRxAngAFN\nVNpeCA2E/g3eKSdiG8geY+FD5rP3icBkoX0NA5fcd+CncTEYPqqxtVj27jS1\nT2ghK+xAqkBhBFFJLuk0V7SkNIpH4BtHBTuP6fT5/G40AvYexwYggKa4G6Pw\nEWgQTdgqicXdF4Ss/tIBBXCSKcAIudsaVOuNidFfwgbqpXgatiqbA2qz82Mg\nbj61jJwzBMjuNogks2TpISuKCF4CtrdJG54YpHStEWMdvZf+DdE38WYpnLOb\njoF6B0n6/DwG+Vfpp12vJsr6R4+paK9yHCvc5HeGc7KBbK0gIjpL+UrTHk+x\nNgr1\r\n=3AJx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"0fab45fd3f4a1789a3683dbaece87d579e9de597","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.15","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.15_1570596641453_0.4864274810880278","host":"s3://npm-registry-packages"}},"3.0.0-beta.16":{"name":"@aofl/i18n","version":"3.0.0-beta.16","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.16","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"064c3f2b8e677d640ebfa7c243eea634ca6465f9","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.16.tgz","fileCount":11,"integrity":"sha512-XclQNsLftIdoi0ADJxfZsUNjn6JLwMfewQXNIkir/b82oWJpcB29IY2603e/iOGXdHr4AXBsB2gE7EyRXnWd/A==","signatures":[{"sig":"MEYCIQDl8Ssz+NpANCmVwD/MDio7/vF3qpWsXzhpC3HXn+IsewIhAJSW8A8/9tEDQnSctS1vXvFrbStCN3rFYA/96TCcOXV8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnWq3CRA9TVsSAnZWagAA2UoP/ikyL13EUJs1bQ2zyWEW\noEPSmHWIKHDS/Nfdky3G53F02gXSDjOfOmx6j49BCa/tsprOsKXezbSLTEDK\nO4arisGjqq01D2MuC7PHO89bDGPeyRX5qhl+UHMLfp0vEZEGUqHI/Sm7nikp\n58i1aOJss4pdDQKZVLBkD/77ba9M0AReXQMCoBDsldgLptLsGjB5raVbJ3xh\nA7Bd7bAT6fS+Nj69Zoci04/wbAf/ATFge13U/JKt3k6k7zlZn9raNcapJaJ2\nkiO3AMBG25G3BgPtr4gE3wwO7+kp3U4UXUQJ8XMtnBjNsuSlPBmIoxpl9Gay\nGXjYtfXwqBEVN7XoL1Q6YHiCWyHJGnF5AMRF7tbSBOh2aG/iRSO7rK9S9INs\nd6SgOkINFcoQcqGLmtdXfTDppWYeMM9bnNt3jFjqHAzaNVn2LLuzehS2hlmB\n6uEdJgyGjqysviOfxy0hAtSdEIVy7ft9/X/57DenVtWsvjh+/yxCIdAeWYaU\nIScUgh7+jaqVhHdKnLbTr6MWS7ueodCUOdzugm5WtpvAj/TFVVpkaLdNzBsC\nEuWsaktcO2D/Glg3X1WXQSgCjL+F7o+gCxHnyeI1aXONod/8b2jxQZy5wr2C\ne0ZzSxXAL1ZRpPzn8MciXniJRMFdx00QOZcCVz0KE09O+2JPon24qWPpPaMZ\nfNIg\r\n=b65u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"32c2f889b64c30fba2458f8704f7c135b47c5b95","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.15","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.16_1570597559040_0.9565134440656611","host":"s3://npm-registry-packages"}},"3.0.0-beta.17":{"name":"@aofl/i18n","version":"3.0.0-beta.17","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.17","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"7f3f7d55668fdd36cb4e0330d69249d1bbcadfd4","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.17.tgz","fileCount":11,"integrity":"sha512-k2aGeMTRPjYfSEGikOmmP4znHZMXSHme2y8syiWdQ3Tso2TBd62ddpNKzFcBqg2BGM0ED1PygSBjACPCfhToAg==","signatures":[{"sig":"MEUCICrEGwavA2th3PdrAHZ4ffPDxT/RWkv95yFKxj+cGtksAiEAo47yOT3VFKvvwflEqK3nLsLVihfjVhj8kWRtncGfcrQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnW8wCRA9TVsSAnZWagAAcvAQAJVQkcCU7enGxdWeI+RE\nsPp8IZCjDNvXhPcOfmGr49jPYNXUov6FYHPBHiA7vCp71uv2m/tKf2l3EqNh\n9tNvl81sfHGToTGh20U6UDaAjX0p5vhQ1Fpxlb/kHuTsBttxnuRbqmGLv+J3\nttXQe9x2tk1rubb4dvdpoeM/LgsLV6ae4ICgi+USF0JY8Aarv5aD0a8+ugkD\n8eqyqhpjm890Dy0jQpnIBZEwd3vIUAGTqV0OzRww1XUnI3F2zZ9AkMQqFfsT\ntQ8mq1Ne94Dp7HhfuOXzPg9ax1N0fGPYcxGx3lXGp5fhj4cRawB/Wu+VQqgO\naJCxB32x4ImAIean//QYR5OO2C4NpjAN4TAEUpDGHyJ6hUxkhPmkm0tTMeG4\nEyxMrB9AK8quYlH6L9rQ6v761n/Z7VnKL07s49WnXHG3xC0DqJve8jQFrjaJ\nWb5LNnKIG1HIBnCCVTdIepOX/Ioo0NKniGEzXO7f8Ceh7IaoZm+AEjWyaZxe\nFpISH8IElvpcSjtkejMqgMeRpcztZCPWd653Ah1Ysy7y9cIfEVdZkGHxqDVT\ncjc3o7Orri+gF1s6LCZvs+j7XpKwQ/g52kjhVCHQAW8WFDiotU6OoxMmuNoT\ntVh5R3Tt4YyYlJr9h/YO+YV+rQrdKMJZgPcH+851rgCCIu/JhemV1v1V58Ys\npAy/\r\n=BoN9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"1a9a0010d531b8a6ab7287dee07687c312379976","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.15","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.17_1570598704272_0.8115540911695627","host":"s3://npm-registry-packages"}},"3.0.0-beta.22":{"name":"@aofl/i18n","version":"3.0.0-beta.22","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.22","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"4fc73b5aabfd1f75ba95cad690e175eede8405a1","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.22.tgz","fileCount":11,"integrity":"sha512-0Wp9SzuX5GHgufoCeWogLE2EEMRv/1fVIpAnZ6b+bNeHWp4RTXJeeV1dEuxuSJk2QpXYyic5wXhwUpbn14c9EQ==","signatures":[{"sig":"MEUCIGs/JjloIb26SSkfQxWCwMbLsYsOKanEI/Ecglc1RWDdAiEAoT6HEOUF7t7n4N1kunGstFyVokklZGbXSd27d14FBSY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoAfQCRA9TVsSAnZWagAA0wYP/0GghVyhs9ycsBGt0PRo\nZbMV7bKQxsYDKFfoP33m8fkEZuUp4v/qrspvErG/oUsdJ22S8NTzRp0/da5Q\nmu+sjoKtmdo2/w/sq+X6e5k+llaxhFu2daRqzXEVJqK341kqOXwJvF1nr4zu\nwCN99Q/txzkU26eOxYwhe9VJEUGlRvTo3nozO7xzgj2ira2grD3dH3x2MjOc\nhlxhIBd7yAbyVKX9uZo3HLdeGrmVeS+xo2aYlgNWvSnwnz2mYDMEeKuO9eTe\nbxVXcRPETTYb+BS5hc+rsB5gX4c300q2AM0iFyKH2Ar/g2AfedSakREZAjyM\nk4StP0sEwYuU+wf22F6/hLqhPpHYqLhyMPOAio25Rmb0e1WwBmO8PBXSKkXO\nzBgKHRACdlP+IOmHVrM6kYdEszUm+oraOV9xTjmuNJqlvqu4+0+Mwi1vQ74Z\nJF2Bls7R9JLf8WWlDh5WKzz7YRu1rm2zypaAM2kpqwUfkb9+6USqSdFLzgoS\nt1mC297TMWspxT87NX/n2MVKcUqEV5NC74Z3zVJLqAR+4yABuwabRzy3xs4/\nk7qsOXAiGDGdqAOzCh17+LYokpBxt9DJkSwRd5qXfvYjNZFsFlCFpw6jg5/D\nA/LSfi1E0J72oe+QoXNT0CObdYx4qWbFM1nCJYfjnJZL0cxnS7weREEGO1gE\nox5p\r\n=mta4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"6009b3c38f31f159b65265ddbc3653c0087909be","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.15","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.22_1570768847464_0.37588024180750335","host":"s3://npm-registry-packages"}},"3.0.0-beta.23":{"name":"@aofl/i18n","version":"3.0.0-beta.23","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.23","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"661a7ef20aa0a1fd3ecfdc813f42e99830ab5c82","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.23.tgz","fileCount":11,"integrity":"sha512-NhEhH7Oe/DLo1aumYqFQTQEkh6OHWW1GW/hJcBiJd41TSMvhdH/ec0NPlL3FfxNPJZJ1QwZwzNIGj1iUGBtL7g==","signatures":[{"sig":"MEUCIQCfgNa3EGOooEOzZFD59tKRX++eN69cceB7scG7uHDMLQIgChzqxUBGlY30pLXvhvyP1yHS4I6upUYznMD+3a8Pq4I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoBWvCRA9TVsSAnZWagAAP9gQAJjeZIJ5aIdZHgv1rfy4\nCLLUdaKcCNf2nPKyHIxJUjAxID2TDxrqAi0AkWSSfGromL69C51bAv+mhqoV\nuTsG2UY/Gf+XC07dmt3spDSydhnlOUAYSxh79ebAFSCLx30gahO2sbmu37S0\n7QL2AlkjoWF6DwSouO5OiU1wYclfO75rjfbK4PUDtqOHOaQ0080jiNYxnk9w\niFtnbAeG4g32wquMDmVxC0lilYOknrwcT0g/ucegWuEeYu6hC7tjo/fokk86\n1YbAimNwHqN4AkPZL8RWTdxntfZDH+gaaDxjgRZbRRAVfjFN4BDJgZX13DQF\nsakK3tRxijztEbi7avThip0OMPBvaB1ftEQU+G5Nv4TkSzzpjkHDavLEXgVH\nNkjSLqkdu//yiL75sqihQGAvjeiEsRmQ9SwIaQ8cja5vjDsxt14y+OGnqjui\n+3wDWNiOCa8tTTllccUu9qaR6DSdvfFCY/GI7p15F6J0nj/JzHs6zE10yF8O\nJ50hIB0Peh28AkMoELSaatE6tdMxDLpURFPyTv5AGfo7XUvXfW8ZpglZ3MMm\nsVQ3Mhabmt4ArP7Z2mxFDxYVPvu7YGcN0vRO7yipkSsHhNh2OgsAiC6Nqnaf\nwwx6zm8vP0OHMwij5L3+YZbu803fh01IfyCnn2xoCfV5PRgFl4Sl46pXGULx\nhuNA\r\n=yioj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"35327a525c0190a3c1ee36be061e25eeab73ed33","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.23","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.23_1570772392371_0.6082877671257254","host":"s3://npm-registry-packages"}},"3.0.0-beta.24":{"name":"@aofl/i18n","version":"3.0.0-beta.24","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.24","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"58ffb51da86b5d2d77eb8b6d431a02294656484f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.24.tgz","fileCount":11,"integrity":"sha512-mja3g5GMLtd3sKI/G1WoUHJeMFPH5OT1+6WUZR2ZGtRgjdILHjGdadp2D00J7KvU4XRSr9bk6brURj899EfqKg==","signatures":[{"sig":"MEUCIAVAu0i92m2CWXdrrbAcRL3qUbYLHZ2fi5eSDghBJgLdAiEAyfVNC2SqzzTcj6YTCQb5filfLnQqd7YWURFMXnhvB2U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoCKDCRA9TVsSAnZWagAAuN0P/RRu5T0U0Efy4aZJrP5q\ngWuOFsZwSYm8GcWkOeQQZJ+EgV2sfHuURGEwEYJuJ03gFuAdI43ZOpQJDSN5\nO87s8SCVvCzMDqkKIpssQyNyFUxBUPDNqYSXGPDCR417GHlrKnKG7C77vwlb\noF/FWfg5OGvYJOceDcQd9y8siEEWIlWvyTAV5N2RZMXdym/rx5/VeEejhrMg\n+6bTvqRSr6XrIi5NP9D9oMLAoWtzNgB52Klm1A4E4SUkzPCOzIhwhd//jnhQ\n67rxGmog28I8FriPpFeA2IumlUxVt51JYJW48NfgvrqNdgoEVglISNCFUu+i\nT8dvCbP9KD3UBaNRdep0m5ZP1op9W2v0IjYghMxLKpmr/dCjUsyhTw7Q5nfI\nWHmMFRxFEcYz7ovAggmoev7lQvZhQXXIUuzX7QHIY6m/QOzrTazxods1JSD8\nXrgSObtTACWHJDNtaLBmGEIqzI1yO0d0uFxJoFLO1CuUy0RYwskzNrE2lCnm\nYBrFe/Dkw7xff2/FtCBWOswfjV79OZyfrVtfe4/ece++bpopjFhC8TWhMVEq\n00BEFXQXradVpnVcjsY8QnmC2fvn7Y0EF9HL59npxC5536sD3/ON5MoYWxIk\n2go6nZG8/rr3kOd1i0digSuHZucX9daHHDuM+ifiZhkz7A5XEjTyvJ0ZERMy\nzR4/\r\n=3DcF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"be81016959caf66748582258c92f8c73471a9f67","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.24","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.24_1570775682987_0.46237815287787365","host":"s3://npm-registry-packages"}},"3.0.0-beta.25":{"name":"@aofl/i18n","version":"3.0.0-beta.25","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.25","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"9cd5ce9b3f66dba0cf3d9036fc5deb765ff140a8","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.25.tgz","fileCount":11,"integrity":"sha512-QFWLEsxYnzuM0GpiR475/5n9Q+mdwRxhEnpHpZ9qJUTP4JlVdKONG3ZeDfuVPrxtueFBVFeSD+CPAwpc9f9S4g==","signatures":[{"sig":"MEQCIG4BkFe25bZwfYjjDOG6wEs5/R/89jI1zGdcPfmyFSCgAiBJZvJ+bmTsVwag1rDxA/6G2GpZVOF5RgrF++FXVeOh0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoDCWCRA9TVsSAnZWagAAgUkP/3hfJitn9uqX3kOhokxh\n4M4CuLfCwaaFWGhKRPl1YTVRWG7x4/ws4yxLL9F1cHAZuF9pRNLHTff53hpg\nhnPddgtWFwbxR6xjWuK/5aO5gsp9u18LlGR6ThG2a21+QxEF5c0EIz+4eD57\nN5+mYg/felc+BIghM+1i0geFm8K04jWaLPacYVyuwffVFcpOhGR+SXQK6uT8\nSpo6/Soi8fkJ9Eydb7V+yYF9Te+d0YmaWl/n4JmL9UPAeQbz/TBVeCRQn91I\nzLfyVXHdViN4xbxhfF/wIMa2Ezi8HO8+y7mDPRskeW71Qd+KA+D8424NwP1g\ncALEjMdJajwGUdiwCtfA0xXBI9pThd4Q6qWrl1e98Rmu8L6WNoOullzt1i3n\nXcDYXJq3ZtdoWSZMUD8oJ8Q6hwVvmVWeQDjvYYT9WousZALicsD/jzNx6tlL\nJxax99GniHo5DZRDz/sCnANjqFE+v2rd8UsIh1LdfbDXyxM7EEN3humZQZ80\nNR0tyAOX0qkUS4UHr1Wc7WQDN3KtT82kQ3VrkTnQCyQDOGojvHMgi+bqj1pK\nezoa2a1LpPyZ0IPtzKCc0jL+iSfSmXpVNbeS23LreOXG6y9X2rIRVZUuoTm9\nKccMjEbGJ30KEYZouPWGe2hoj2QD6cgTs9dJRZ2vnrGzi7ky8Li6EfeGAtf9\nGQEY\r\n=P/4e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"658a5f60a694ddcc2ddc62e8db80688cc6b71c68","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.25","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.25_1570779286153_0.6228612224176315","host":"s3://npm-registry-packages"}},"3.0.0-beta.26":{"name":"@aofl/i18n","version":"3.0.0-beta.26","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.26","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"91be5f7b6ef13c82572e995fe26d4ab216eff8dc","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.26.tgz","fileCount":11,"integrity":"sha512-C+YlRtMr2ljZbB78KB2NnopLQ2JliUroR41c8UteKQUUyLDg3zCAm+/R4doNDxBITr/Cn//gkojgpESBM41/rw==","signatures":[{"sig":"MEUCICheZOWVXF65Ge9CPr7Du+CtW3uRWppqZniiRxM2MGxcAiEA2smuZ3cK53FjcpeD2HZiNSzJJEVWMt9rBSxQNrDlxWY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoDPyCRA9TVsSAnZWagAA3BAP/j29y4D8mGEcPU3u0pmh\nZOy6DHwRR7k0VDoEsEwcRlvYjNl9ynAI0UMAGYDu4kMkMioTQ1wnJOMtD7pr\nVO460WzNiv7FItGJi5Ek61PwlDWqrV+ZIlDcM9HtvZ+dDVtMrQ5JCpR9k3MR\nIQDB5hM59z3RygqjKIm9R+YcnVEL+VodgGG4tryoit+j6OqVYG9fUKnJzcUr\nQIyZB17M/IrXeYYqV1q56aGUxTXLcpJDHFWm3pG1B1Oe0IHg3IG9xZf+veMC\n5lfw7Sl8jT/2O/V6ZdoG+44bjcQqfZPSERLtLDujbM7R5EJXLR4ND/QR8O6+\nhSBBdvx2PvHknVtTFFRDlWyjfR7MS/A12RPygVU+WrAvHG3DPMrhFRV9JBbw\n56h/X3mg5IgcbYuiXf392mMor12dm/eRmuSqcgdP5ofrSiuJMBLcif+0ilc0\niI6r2FQLmNGjYBx5pNJQZ5G7FpprMfuI8xrJHSxxVyunMaUp/ZRq+5ZCTGKR\n/EFyNNR6Kxr+sxYnvnN/rUgbCp3scWLnApv+S2aghwsM2HnmAqOQIGYvy15y\nyTLRwLIsPJK6djEWQrxzrSqZc3R8MQtPt+X8HBFuT5pwIPOWTA9TgXfHmKCa\n3RB+G2EbkmPvM/5rn0WXba835hfl9PCBmLUHrV+RbzgYmKK7bdKDMLp39hd0\nVAlD\r\n=x3Tw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"12fa62b6d27f95d1517f1ec4707c284b865a7081","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.26","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.26_1570780145871_0.5995703167506485","host":"s3://npm-registry-packages"}},"3.0.0-beta.27":{"name":"@aofl/i18n","version":"3.0.0-beta.27","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.27","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ad864cc914ba4b99a4bbee6e064f262151456481","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.27.tgz","fileCount":11,"integrity":"sha512-MhUBnv8K24Rp6GWekTgFlr4ca1vd5A0c1oixatECLwr6apItYI98xEG7Pox/DR2omxMzoJgdZG7svuON2fSFWg==","signatures":[{"sig":"MEQCIE08Mb3BuLocOqi+IbNj5CRA+L1oPtFR9cngEunzElMbAiBdrnnqNezkD6TiPy45+NwKNf25toRCjRpEk+ehOmLXKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoDUYCRA9TVsSAnZWagAAnaQQAJYHN2RwN//YoYvfdz7+\nPKqjH57XTTPfq+GNQgDQBu12GQmDjGyhj7RGRFeT6c85b7+7ymX8dsaXSERC\n6H8jyx2X1h+BPFLcQV9OmS1noQAGaflrLogKAqyiK+dkmWA0zow7curOP1LU\nfx6VWG4zWuGSDpVeJqh0YD23YW9D2TK2ST/04mv6+rry6N9QILweidlTHI0O\nY84RTYLodh7JfsqTnbyty6a+hgxOLiTooIEymSQJ96X7D8ZyA1d7UmRZOmKW\nayF+xnqdlq5mMSY+LlzM8NLAmBY5DNmtf8MHVjX0wZTgxmkqEsH8DYusVemA\nh7PbcY3yVsFKrUUqK6mUISVWIipsBvLc3N/AIHu7gWWj7Zht5HdkREkVbyie\nysVz/RnUEQ/t2BuwOA3etqYXMppc/3X8/76Kjx4m7qpVKNjJLsy9pOq5WDGa\nsX9BWYZ39F6X3vITTZZgSqbsxtG1sEcEwEOrTnJ38SJG/EcwF0nN2d8PUK2U\nJ2bC8RJ8qdaIMrzH1tYL6fmReHe7SSoFCDmeBe4HZ2qIvB15n/o3suASXtQP\n6/2Xltwq9ZY+/LBP5CqItanrg0stLn8IbJI+ylXJZRhzeUPPgaUmOhXX0oUV\nitvGhgL1G8jLgqwQyHQOSc/dZcsDCPrW31u6g0R3lbIkCtWPXD9ppF0mZq9G\n90RQ\r\n=BYpm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"de2f0be87aaadfa43212214d4f491d68930b2495","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.27","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.27_1570780439274_0.8412776363443","host":"s3://npm-registry-packages"}},"3.0.0-beta.28":{"name":"@aofl/i18n","version":"3.0.0-beta.28","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.28","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"e360ecfd8571f6fc2c01cb72450caeec3a80e8f6","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.28.tgz","fileCount":11,"integrity":"sha512-qy6URVj7wQPy2UvUJFWIfNZ/HDBbYUXCu/1lK+L6NFagSH2ZaUsC5/dXCknHkHRKF7cofcknyJwwTdDucvbLqA==","signatures":[{"sig":"MEYCIQCgqbq3ge+L66z5OAh6avuQAf42hLCjIW8KpZWoZ9/3cgIhAOcOm2wfgvtX7ZfnLWhO5fZVOk1t8CTfe5fWf2djKX5W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoDa9CRA9TVsSAnZWagAAaQsQAIEq+yiuzPV2xmzcR4j/\nNDWPkR2lWZRscKhUL2LnNqLaYVNJeivCN0PwjbUxiptPteh9GNo+NADCo9GV\nx/4xCeh9mzNWowoI9s/CaDeKzNtqF8xHR3J/x3RxRug80rNXB1KqLazVlgRf\nZk5vr3pU5D+/LKYrfBzCCrEjJfp0BNxytCrKfENeYY8wpx4aFkNrq/1Bl96J\n6zwsguQSvVViCIpn3P6871YB5hSyYYFKgXlA2CI3kETh2o/nrQVTJA5EeVS1\n8IrWX02i1+PACo2BqUpTm/Mxr50nB4tfWtRzTWs56OMzQIW2DcqVDXqVXQJG\nrRyfo7+RfQ1djg4mHf9GyZ5FXCuDEpThROJglKDCT4w7zgfHx9d0PRVXiRkU\nx+5Zbuk/9HAVscb4Oom3D2u6bQml5dv3UqZNt2HTKZx756QgaRYN1J7yPVpu\nU03UTD54zrBaCecbvcI3fHNdsBXZj332xvRtGex75Jh+YroD+gHKyLQv4pFx\nULwkC0MPqsOsc8tkY3hoM+JKZ3rKVpKlSvkDArAZx5rsboJ80hzNKSIO6/Tl\nY90pPKuVSQNTIgav+j0Kxp3BlM6oFP1xSYU47KU/TbZgnEK+D2gZWlBKUPIZ\nvV13s9DHjWukk9Dfg3P5b4vvVEkQMA1+zZ2bRfi1KCFdZv617MJ+zMNca8Oz\nVV7C\r\n=r29Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"dbd14b0bd931ea76999d514d051dcd0a3ef6a8c0","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.28","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.28_1570780861213_0.20878653708576134","host":"s3://npm-registry-packages"}},"3.0.0-beta.30":{"name":"@aofl/i18n","version":"3.0.0-beta.30","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.30","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"cbd089f92f19c00fa2e4ab3d810ed8c0fbb6204f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.30.tgz","fileCount":11,"integrity":"sha512-gQ1q2YGZC7QeVJ1w70+yoLAbQ6PbhFnBKQVv7CiFJofGtNxtcqt0MRkWCiuSOxhmc9P1tYj7k1qR1N8ph/l8JA==","signatures":[{"sig":"MEYCIQDBCvZg0kY0jXtjpvnrtstm2ELAn73B+bh8dhNLc9Dm+gIhANhg7TEalpqxKE3fs7/SWw8YowAiJLBxO76eN2Or6M3G","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":16391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdoQkiCRA9TVsSAnZWagAA2bEP/3Pbf01fVyYkAFGRMPxg\n6ptyNnshPG0GQMwnTA0xU5Uc4hrOmlMQwvsmiaAmfbddcueB50uuXfje6iZw\njXjw4wg5ZCGpmPrvCqeCZ7sW26X2URgM5AzcOBpQrysvYgOYttUmyq0ykIjT\nY35IGUAyigsxo9+QEF1IEKptV2kfaCVwW7MiLQ/ec9PMXVCY2Cw5Tu2EP7+d\n2gUQoNFok1OPMt+7yaZ082rdx4iasZsQKfycLAaslnOAtt4hF7SDBEspIFJC\nUg0VouH1kOlUU4GaW2LqizuxH/IhhkNMlg1Q2iieBuiTpj9m+HReA8Ik4CkL\n5JOFVKiefTnHq1CmvfKWOO+uJNzxNkkmp6/V09qm/TD+Ka2zUofYiQoqQid3\nWygJPK6zsMcJQVcwA9HHadCUeL6S+5AleYt6Wjt80TK919rV1IUzbZUdlpOh\nsrZ+2DWqb5O6SyhmTiJNrA/tZPz1S7n22E6QP4j9tq3ceNeI1by8D5yXn4VG\nUYlGWucDxqJfbdITCTvnN+1RXCx1lxaVFieg912R2sBL+z0ZXeG0vPN+ay8r\nQCJPJX/8TXv+pwqmnJqBhKd7CjOv4Cn0mc7fuZmoCKChk8q9oA/TCJGccb54\nVKhg4RndV1l+AT75tOYAPzMXeENPGuDd/n1aDM4C5S3Ydrztgq/g7moJ+chO\nOeE3\r\n=MQEK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"7bb6b9b6e2c1d77cf7e65680aeb6a4c60e0300f4","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.17.0/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.30","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.30_1570834721920_0.1388854293480961","host":"s3://npm-registry-packages"}},"3.0.0-beta.32":{"name":"@aofl/i18n","version":"3.0.0-beta.32","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.32","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"239398e37d11ebe22b8fffdd3e1b887a3a45782c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.32.tgz","fileCount":11,"integrity":"sha512-DgEibZXYena1GaZ9ELdsZzWbj+yOCSpjZFQkm97rcvPr23JZ25ZK8XxQscUaLBboy6HMS3P537zKUfVuIti9yA==","signatures":[{"sig":"MEQCIDEXGlgl9lzJkz5CqPIRULpwi/ormJu72hC9y6UnJ8RqAiAyKUVQpB3AMH6W0shxT6lNl9L1x/woAX10KEQGE8yRiw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21641,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdo8npCRA9TVsSAnZWagAAtc8P/A9HEfMRC/hVBBtluFrZ\nV1Zsa7TVY8c0rDnmVfZpTgrD0xKf5kiqFoy+e1C/we/TdiXzCcEPgCIYz54Y\nPekiaTqWv4QQyyvl9yijAZ8sF0C2abkkfWRPJ3ogAUQg5PmVbt9QgzcB094L\nolvmXMO6H8EG+5ly2RPPSTsrJV5Uw3FpUjCJH4MF8QKOLrmoyLsttB2W8E3c\naQePNvTgNBxyDCphiBwTHbiPoIyV+bBRzG5qEmdGfHyq96+ln///3haQfJCd\nAT3BsZzMOdWcO1wJ/dyCXNgs6d/wcqnVGJ/Rl2x5PG9i6MvYXDPWmBQxv57i\nS8nW3hDEH9vf5YdcNGxkslI3BfyQcIcBwuArEAvo6CrSPIfI9dtgnT/x8hRO\nQxn/bbXjGsGqupiGMbwMycMJsFemi+27JS8lq/aO5mMkrVkMmNGEtbBlQ/EG\nAGFX8UShAIooEa1ISnEi7GytSlNHUug3FT9kkpsw9cifVtdKQKBEVRuiVzLI\ndeZlgSGgFmmlPhs9g3LGOB95SFPondcyzd/TzQZrn6ju+Jah2jQ5cZKn0tzG\ngL0rNhREy4vo55d+g6X3iuBCMmbz/2yl/TNCL8Xh9Vz6aPTsHZh+OX8hDEO5\nU4r0qqtBFCCURan75rADVvuXluLWdmaRc9ro4lbDoa04I0e7QaV82+Gzwp2a\nKj+c\r\n=PHwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.11.3","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.32","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.32_1571015144460_0.19964121427778414","host":"s3://npm-registry-packages"}},"3.0.0-beta.34":{"name":"@aofl/i18n","version":"3.0.0-beta.34","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.34","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"0b9e86faa3827cc60544da598460ac70099eaec1","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.34.tgz","fileCount":12,"integrity":"sha512-SoLjUrakF0a1wlJGuv9CMZ5VfNDXB2nDfaCMN+t6VQ7k46tJ4wL5BwYuTWemealhlklFqbpA6IUUeDmAHILE6Q==","signatures":[{"sig":"MEQCIHZZxJgv/bta4jF6zaP0FTnW74XqDJvCLeXoWkSorBmeAiATN4pEJdVQ73I6lNhewBJUiWRrXF9iqsGAKIrqGp1xdw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpCWgCRA9TVsSAnZWagAAJ54QAIY76RTxlzZ1zoQ9+JEV\n+fkVUcw9ZDYHOj308emecCuHF8qXvSIj8OKDYH+PnMzUcsx+V+KRX+O7K4vj\nC30y3EZARHajdjOxjF67xt9peA7NGvQbhuuLipRF3xo2uBG0YFxMWF7AGWw1\nQYA7H5Av8mklU9mveq+gSn4x13ocY0y8s7Gu5zhyav69rI4fGD5zg1nKJZh5\nIfA6/w5bI5qVcAMcVDKMNcf+kv2JMAkEi387CuF7tK8rWHaTw5HNyqDsH1Y+\nQ5kNYZZjp7RQM7O/h6xzVYtPTts9SnTw/cbsKkICdlFKuO8AR/qUgNsA+bKm\nCdilwn+wqP3TJK1DTjPVv2YwOfUjmKWO2JDedpLRgtRdYfB8OX5Df1F7WNvl\nIu1oWfR3lpj/pI19rACW0oE6d9inKg6fJFuQGpPB+I+OKbGfKFgpsXQ5/xwf\n2c6tOFl9XEoAmhFN8AQm23fQSyW5lqan0EXf9a/9XvG3bfNVT/RQ/G0R2Tdw\nX78zQ4NQ5bqql74V/TCh4jNTNyoJbiSyajearlX5iLvJbzZ6wNB7u+f+8ASk\njKfFPO0pXj/pbxIuF0LCOtRg5alygtLEtxqRx9trn1voyPBQRnbk2kxZLdtD\nqSi6DN/reqLcosCS5Sjj5oY+gtDcF9TfCjyCeUwCp8/P37IIj9YVOY0e4osh\nkuSM\r\n=GcbV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"4cb990815f59483bc2ba6051e55cb593245567e2","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.17.0/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.32","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.34_1571038623923_0.48577921967427296","host":"s3://npm-registry-packages"}},"3.0.0-beta.35":{"name":"@aofl/i18n","version":"3.0.0-beta.35","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.35","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f6ad1b18da9e63fdf90742ccbffdba2b0af48af0","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.35.tgz","fileCount":12,"integrity":"sha512-LI+2fRCQ4a98fOscldD8jxKl5xGqiOsG6Fw9vteBzSbJFpQoQbdCzl9LHB8oqr+iPWEzNusAqftczhLGEyFLtw==","signatures":[{"sig":"MEYCIQCs16+FZrydpsyiMYMAkPOnh8+4i1U6GTMvksZahJFK8wIhALSfecMh0zE/6i1IwPpyT1/beCI1e9Ins4X1HD08SFAd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqWK+CRA9TVsSAnZWagAA134P/j1UrfmkzqC+x+0HJsOF\nRoYFU8EP/AbJmzWDUJ7iH3gKrmth5dMoxxu4KEKq6HO0Qh5rr7oi6wMZWAXY\nRPXMIillKSqjOWG+acy59/4vgu5nWZVH75z9yMyTlu10SMziD3SHUYDPHJ23\nj+mrw5LwrNmJpeLIHsCRsCTxj4Tb6i2WhZTXIF8q2V2xXZFdZY93Uz94vIqe\nXxw2EzqAX9qodikOVZwE1X0yuGGOQky+AzizZo3c+NhtmpohBZ1jfFt+Zo0T\nmjMQy3pSBNMHXbM7QovOT9fk4cUCcleO/vsU44AYm489zozMxx0ZtYgOizy/\nbz7R0c/ugly9peYC7X9QNNOLwqPDlmYjEPiGcdZchstO2pWBzQKrlHEljcJ+\n+1Zzw3xXDtsX5ztSVTnXQbQWfR68s1AJVzgtJ7XPzFb/3JiPPy4CrLW41G0P\nEi6XfueOM0JKp3AVlBHAeucYIOGoq4jzU0frtruPOfNqjDZwlhkdcK+qtVJG\ntQwywxU8rWSkVsxAhM379nzjWQo3B7B2Ppb9DDOwVakLPMJJWfztcZvDTPOz\nPhj0cZ387+olsWtQ1KymCZVAOUJNyGSC/f3ClkwucStKCTK3z9KoJ2m+dg+S\nFTGckI8EWbuR2q1A8m197038M1tLBDG5d271ljQJNlsUeFT4VfpOmmZYhczx\nP6U/\r\n=4pxd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"6506e91bedeb6cd9a30c22f437603e14e02a3ca3","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.1/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.35","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.35_1571381949935_0.8547766121291844","host":"s3://npm-registry-packages"}},"3.0.0-beta.36":{"name":"@aofl/i18n","version":"3.0.0-beta.36","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.36","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"d03557163ce0f14c646153f97ff6a0e543ef69e7","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.36.tgz","fileCount":12,"integrity":"sha512-TinJ5LmVPadNA7CT7EcCpfV+00KTZ4v5EpX3gD/pMqBsBA7vTVFJjabkMsI8LeuQ7d1hWsQwrkBFtBFtG45v2g==","signatures":[{"sig":"MEUCIQD9WmWbZNYEU8MnNdh+FdItOB9yiPtuFn565DO/f/jd8gIgG8eLIJeMtHgrKSyw0I9rME36Sc5AhxC/stDznGaAgKI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqulfCRA9TVsSAnZWagAAtckP/0U/45WtIL5Ho9GUDgcl\n1ZROgMvJ3FBBbfwdVazwfcb5SXTrIw69/yB/xU3rEjtJHC8DE8A80thxzs5w\nJSSDk3XYwpCVfwxluHlhpOHfJrMh2AMO39qK070tM3TGzpzN8f83XUj5wDFW\nzmThNZ6aHtmFuduld2ophnv0WS7J2IeHnPf6Hvckef8dzcuiWaYdjm5dWv3d\nuioZQew+FdCfE/CCPFW3oXmXG5uO9MjmAO7sPP6WnBOh4ENLxseF+GMcJ8de\n/jMexDBvvGjtnV5WPul4h8SzkLv/iE8mEl16tIxobwvFRhwGKO0Z3hf/+kfm\nkN0myyQWIONirA1z4rULbLm4uZCMlRg6nvxS7iO3XahRnezNhVcrndh7bTjL\noeuuDIBBr1aQ1FzAAjnIu/veXGaww+8foCPKJhwtdh5sP868gB++Cr2/6CS/\n2O8H849RmzKCoHzb8FoNRo8RkZuRaaZphNy0KKVqWMZfKB0nmSRmC5psNFlf\n7nOhR5gMvG30nz8dy3bybg4KlfT4Hhpf/hlCzjmRsIeDuYz0WRKrQPQLxUlm\nFly2l1xUif0uq9Okylq5Z7mXZPKh7+Kq4S7vKGcUoq5qWKbUv1sxdO6/7Agc\nT++FzDNq+poQjt0cl8Jd2nVb7uM2ugdXwp5VWc8w+s3mq/we4YWfc8TBgN17\ntLPP\r\n=81t1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"9eae9fc87437b61f0019ffedccbc3df7c8e02a78","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.1/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.36","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.36_1571481951269_0.5658193573849524","host":"s3://npm-registry-packages"}},"3.0.0-beta.37":{"name":"@aofl/i18n","version":"3.0.0-beta.37","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.37","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"723518c90314d1f93618210779a22adb54a75e16","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.37.tgz","fileCount":12,"integrity":"sha512-hQ3RdXhsgjQuQPpaUWdOw0jeA+nW9U3ptavD3Te+g+QRKI3nHVCb6AdxyFKWHu/ZeXqIm1XcZA0bIjnI5+MAlA==","signatures":[{"sig":"MEUCIEQHQRtnHiFL0pZa/fTam6SqvBzbxulH8OEKKWmZOjwVAiEApMsZ4amH3qMfTTTqXWbqxEFqfql6YDFVfB/qAU345tw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsT+6CRA9TVsSAnZWagAAr94P/jlWpPKWMbRBk6KqTTqi\n76ikjJepMHquy/Iu907lovM//Q23FFvq37KHqV+OGoU6ZLNpI2saTQogfds8\nDizq5hj3DAYpIZ8RZsGd1qjByPqvf0XYsBKVxC/Vjw4WnuOdqHkh/0XTGwZ1\nF6y+8suA5BDhCDE/Qdy1iCag9VUhLs3etJ8BxIO8eWTfdxxDY6IqpnPjtWbK\npgcq2H/b3zWnnFMuVQsYCtJVxYQurAzHdfXgobEbXE5nYPD6dLsETyNtlW/J\nQzf0dvZxG21ofSF5MqHJHdtp+l7RYOPGofBfvRBX/fuxtAXyyQDIjvMZau5X\nX5yk8kMW3YwaiO7yu3PZY6sxLSUbc9WB4U35sZ7qDjnk4orbWb3hvqoCp5ZW\ngbnD/oK43htfDl1yVwCT5iTxKJaF4yPQzpAyW+eklAEwoOFBaDV7mOxONjNY\nFoILVzh8qKoxNER/xX4rmKYLZ6qCe9pBoy3lWxZL86auxtZ60kSkbmDVW/AK\nw8O1ZbI9W0QyxKibbaiqaFB27tyBPg21eR90oUpajbO6/hknRY3Q+ziUPbi8\n9+bFK7RmI0nwAjDM9n2Fa3kAhdCjWBMUvRJBImU/qAdBDrMgqKBjl29kxOsr\n+ZMCTMZLyH+j0SU6bp3MtWFrYhR89O/XY5jy5ZWHBMM3p5idpQaSwfiaEH09\ng/Cm\r\n=Rvw6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"90abdfa3f72b91bd0c98e09afbd59c21621fe846","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.17.0/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.37","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.37_1571897274014_0.7720073054987249","host":"s3://npm-registry-packages"}},"3.0.0-beta.38":{"name":"@aofl/i18n","version":"3.0.0-beta.38","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.38","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6c1b91dda79153aabc34f53b664b290b17bfab42","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.38.tgz","fileCount":12,"integrity":"sha512-G3TBdY4MUUe4+JJmuPiqKSbYDXdhaJSvhUfowGWbiZk7RdZvxM1sqqF6xfkA/WW3mGvg7vj1SRopjrCYJcsYLQ==","signatures":[{"sig":"MEYCIQCE2Rr6fpKA33knxilkCQVFsF3shJICwgxLYa2GBoLtNQIhAMYvp0zu8Fk/Cn9yF07FNw8+gEwgqL9LZdryyHDX6W44","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduhQnCRA9TVsSAnZWagAAolUP/jurmLL9+4MghDKAR8qJ\n9HjWxgkUlIiSPreY5VbPvXIa881jzdu6XUCDPr+sacraLdO9JvkBXO9ZYNCs\nWtGBDWAkZcQEwT4Oav8XmXcYKypEYX0WeG0PmsLdZsNinBzNGAdbntzom3uQ\nHkodyM+uaXolYl2s8B1HDFMNjBR+F/VaO9w4xTAmeRTvQyIQsmAY5EMUaOuv\n6EA5GpieegFgUbS/YoKfquGS8/uloUIgcHl05w/tPOzgXyvMNMzJtxvw+VZ6\nHlOcYnRB1ym0NH9TwbHuB+1HpG573KgIQxI47mrsHMbG8g/VItpMJdnBYYKI\nJ/zjoAsIY8qMVYElgb7lRG5tIguIm4TtOq6eJRGqeZ/y7vVduU1s9v3D7dJa\nVJfWuRqH1QjeQoc6bufkXBTNXjibS2hb2m3XJ0aN1m9OzZeNVNGIKvxqoxn1\nEg81kmmKj3+S7yBHlu9mv+3X6I7lkFKWiZPa+6cPyHj0rHULED3N+2vYCD8f\nM4gDBWKrvqaZIT9epwFHWwkAjU8NsJjJdbcrYM2N9SnK4rhr59TEoxwk3+tK\nr0h+fSgQGZIiISqBTZ2cJqz16kPOc1alL+kcnfso15Lt4jvlDNqv4erygLkt\nowlZt1IT+p2TN6pWCk67gTwjT4FsqYFNBXKXZwZZn7Or0qXulN6vk5E1Y7jq\nyoyZ\r\n=1V6K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"9fff03a99453d439b551d48a69e5d642b9957854","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.17.0/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.38","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.38_1572475942960_0.17885472460898932","host":"s3://npm-registry-packages"}},"3.0.0-alpha.12":{"name":"@aofl/i18n","version":"3.0.0-alpha.12","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-alpha.12","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ae1f1feacb1190348639a624e77e0eb717063862","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-alpha.12.tgz","fileCount":5,"integrity":"sha512-VbCaQUr/r8LvFAc9XSb5iy6WqLccJQb8xqXGxPL9ZyoNxkKaxyG3xFJNQAEo9qVDSkIKcM4r3uNw48R0rQ/IIw==","signatures":[{"sig":"MEQCIFfraZfvy8WZM7aFxMs7LySond+fihUg6KRFpojhhlaNAiBFycIP0Bou7OlneMOpgeuWIiXvOZqLaEAVmaJyWzrkMA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7185,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvNfICRA9TVsSAnZWagAAlG0QAJJl9ejafRCIr+FhRSuz\ngnjTTypBiKKUriEXuq7bEuyivot9Vh78n8s4Q8BjrWneMpBCmhvO8mnYXQ4y\nzPL7VkwnOclG4gXiA/5U0L/34UuibIzb3y09TZmDCJSIENaMdkWbKUII3lHC\nfWx+XeuUI95iyhaFrYOm1zYpw/5UOD5ysPjIwzj/yxhfFeGlQy3HQvhALtcO\nllNlqYYkIygJ7ud5wTqLlRHlBUNG8lVjoBB95JKsRXmxkQyM/l98P9JDy13f\nH233RTj4oK/X/OqT5Gt9MEeJLZUdLlrTbS1nOTshauXZgAcymnhd0X8FLlaj\n+n5AB/K4XChtqQa5iHodLzNcg56gZaOki1Ut2KaQuIPJV/SaHK9dW3ome9sx\nhHIIgN2jO5ueDx/5W6Pr7saURuIDYN/wjdIuDCMrBzG/BbKGTxRx1//YLI5g\nUAu4IlZo2vDq/Rq9ORJRGETgUct7kzfdV9N0g7f7HGvRAScL0Ab2Np+UI5In\nwPgd4R/yeMgisQ2jwJhsPy9DDKvD0q3QlRtl2MIPWiu/VdRg8fp9snNirwf7\n77N9zHIqPjfSjHad8TVj9k6v/ikDHBISu+qDY03e5XqEJOoTNA9JMOwmJjMn\nxj6UjHHCoafpPcHyr4219e52AUedUdPGy8Bm8ydZn3JfDurK4ukqiNt45pjL\nzoiC\r\n=+EbR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","gitHead":"e76c3cfc8d75ca087492088254c9ef0e4010c0c9","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.3/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-alpha.12_1572657096026_0.948762720101453","host":"s3://npm-registry-packages"}},"3.0.0-beta.40":{"name":"@aofl/i18n","version":"3.0.0-beta.40","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.40","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"16cd81c81c642caba00c8a2ff4d5b78c4427ad29","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.40.tgz","fileCount":12,"integrity":"sha512-U50L8Px23X3qS928Ub78aUxC/0K0fnJwhF50AZrx0V6pEyvQaE5LPVTugwLKQk7KKyWjrd8Cr/wbRcZWPb9/xA==","signatures":[{"sig":"MEYCIQDdlqmBxbxb4RYQoM5D7I7zcFcZIFlYlocbzYATHtp4kgIhALhToXUhzT+URXUcDS+qtGe8eQzEytaYSFJMKeXCosAF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43319,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyeE0CRA9TVsSAnZWagAA9KMP/iLZNWz8kZy59sHcSBMy\nIF7a7jdJqaXRhwXixUr/i3bJTkYKHN0sVBpSF9+PJcM7ZOfM1QbH7jWSuZhx\nnQn/HeD6528Wmg6k+uczRysqWRFzis4jt/MA+rw2xg+ZJU9lmLszdSEINJZA\naZY9aT3uhx8WNH16HkBUTn62DDCsOs/VnGHL5uujc4A01aqBwPd3EWy5eWW0\n9yfcx6rOrpBvYKc3iH9OHKUua+gAX3KByawDyskNt2mbhz80Z4Hx3AlEy3bT\npPsLnfUnuf9upf0wYZnsjMF2RkBDleiuyUl5PSqBE5QYuLgeBVm9WMf8S4yB\n1I3gdoukcLhJUjQxRohkDzR6TkhMkrdO3AzaAiAjeM70Oaf+wpNPIoFRlPFz\nuosi+AcpKnKYqTC+/qM29Whglj3fZPheDTkAqoFfXcBvDRQ3BL6iyqjiKOl0\nhzmBSFpHO5SKI6CaULsTauG8r8wWt08CbeXXyO3vwj4ofLTCklLGOSFrWOoy\nOgf1Ki9cJVAq3dlfBPhF4y77W4aaZtKHvgTyN4SQq7kp6pffnmkf9Jj27KQU\nYo7d+uUS2YWXXF3H18TeZmXNTzy5Rl8D3BArapRQBSvMWAWT8zdc9CscgSxX\n5qAVog7TCtJX/Sbo+PFsHjWOvvzG7BXBhPUaNHQqlV4VmslJCc8ZjvVYOgNi\naYVy\r\n=3xfB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"0bfdc05f0d4406219d0b432a55fe53ab1726f4c0","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.3/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.40","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.40_1573511475862_0.46754753480757794","host":"s3://npm-registry-packages"}},"3.0.0-beta.41":{"name":"@aofl/i18n","version":"3.0.0-beta.41","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.41","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"78af0345d2b9f726af2393fe27cfdec67d7905c7","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.41.tgz","fileCount":12,"integrity":"sha512-Ss3HIy0iZ/tJC+gCMKtPVyov3AzxmefXzYM05r0RTFUHxL2ahGT9YMuBYLaXyVSOOgG9F2cEtvFA6fFVj2s0xQ==","signatures":[{"sig":"MEYCIQC0FYYIcE50SDFbq53vhv8QztgntP8bbiI4v8n7dqgf+QIhAPJJhbn/4Ao4KATNBMeivkPqrADqTAisNQKYgCfn3N8Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyjtICRA9TVsSAnZWagAAARIP/RjKOoNGto2TtchOQmv5\nVqAKLwqPdIXYlUdGSCzV3JmCLrMpqiZGUsMyRVmG4ZIzKIfgr2Us/2YeUcdx\nHjVJ6BRInjdqIjd9YtbCKKfFTFz9AoqcAUG2vUc3D4CAeDNi8zaWDCOpP7T1\nLtL/sjqeWnYkWillpR3roTJbajQO1birqvo8LH6P6oQMSMY9rSZvDr/50WUZ\nGym2aRZeKN1fl6vHhzR1EA0M6Fm0kgGvlBK/bjU3mbemGaRPzfvQ44qN4MgK\nxYycMFGaXtxl37lEyZs38/pONjyDjrrp15cs7PP9VBH07OqlJEG3aGJTP1u2\nNao8xGmP1vYQJNtuSjf65FnZn5UEHlakbAHnl0EWW0odMsV8OpPhh+0q87wn\nqNNrSKh/M1dTtua3FTr+yP4OGv1YkeoZZn+ecBLgaTemmrf3nniudNGBidy3\nhxFhhC1ydw9u458UrBdi1gNgiFZ+5iE5xOjtZ/zf6HPisdvkyJbltvhZS13G\ntATjURDGq4t5YbXW1+wub0JPDot+DVpNIAAtGmkLxGKqnspNYaLMJ9Vj6V+3\n40bQ+/HHxK2G/I05b6/poyLvsxwo/YYTo+oQM7HIbLRrahrSp3SaZ7X4oXaF\n9VIbMbKwCUhZLu2EEuF3fzb/v3Kn0C4wlXShRxJjgN+guv56pKkNBQRQZ69e\nHyrs\r\n=NOsH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"212bc663acbda22a9679fadb2aa64484e35dc068","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.41","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.41_1573534536216_0.8903470079668188","host":"s3://npm-registry-packages"}},"3.0.0-beta.42":{"name":"@aofl/i18n","version":"3.0.0-beta.42","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.42","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"60035d4515a2f9dc0cf3ad8ba15cb6937aa842fe","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.42.tgz","fileCount":12,"integrity":"sha512-q7PMbkOLRwNufO0FTMVZVbKjD0zFEX75oFaVYMkrnzLa5ixSRJZu7xpNgp7R/qpxROESh8Td6gxmmT3Eq5d0xA==","signatures":[{"sig":"MEYCIQDzcTOosYGd7vsKTTYTjKprl61X/SbNByH4M2CcDvPGJAIhAJEzQ29bN1ATBKA6Zevv9bG5yTBxX91nomj+7okdH91E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdykjoCRA9TVsSAnZWagAANIwP/1p66jRKD1BiBWDqcV+Y\ndFNQhGTUSamLmslZgybih8hG7v/eq1FIDPeXkX/jZ1unRfpI+k8zhR+l+DtR\nyzfDoGwAvvs6j8z5U5HmElSviylWm69h4Jl3kORDSrPNcguCKaMcoTN8VU7v\n7hSJPx/Rs0SJxZcPfULucVU2XzVn83AsnHp1EWmBSCFuOtFMoD3T6ayUflOS\n6350hmfFLQdnAd3gZGbsxwF8dNGekCZZqlj73mG2qTDAV/A48leSfR5roYBC\nbZ8/mSpgZoEafG0k3ZQ8RoT6mtKtbcCgtLJ95whHVkX+m+DquYV8Yrn6iyOT\n7NnYJ0oiZ5KdlBnWeqnU5UQj5TYUTsj0qqjkV+Ygi6+SM2peoYyKyZTXPfw0\nHf7CXukyE0ufztY5DN/D6bJK2RP68MvEHMzSDW57YeTSXRgElT+UplIs1lBE\nIf49F0ufcB8q3FHEqvqjRCnkV9XyEJqCZvOnmr5QrNf8I9HceHMXfizw4Buf\nuEx8TUF05N+Lv/1txUFQ/NmWRZbPcNrZA/a+7uzaXviykYmNTGF9sHuUL/e8\nktF2Go5/79ReC5IBzNFZSpY6TuQu5Rb3sHCMlRhu548hsn3GHH14x/JNTaer\nGEIjF2XvL/7rrcUkkuW3NA6X1IWPaLyR8/CjsZczFfjUYP9vPLBUS1yJvHxw\nKqQt\r\n=gY1c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"699b13b7bf651fa15a25ee2873b72d9fa1ef14a1","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.42","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.42_1573538024109_0.875622118554171","host":"s3://npm-registry-packages"}},"3.0.0-beta.45":{"name":"@aofl/i18n","version":"3.0.0-beta.45","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.45","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f69e4cba6fc18e1f019add8bcca0e0ce03e7a48d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.45.tgz","fileCount":12,"integrity":"sha512-6Qcog5KH7kGrT+AB6+nv4WTSBYCv07D+J8Ob9Q5C0RJm1ItdeU0/kuwGrwTb5zni/RM+5zuOie/5FNutwRRSDQ==","signatures":[{"sig":"MEQCICl+xdaALrqvpdl2np2Sq+V6HipMnEAJLQ7fogaWVS8yAiAucb08htiUZekk2zI40XTcCqAaMeoiaFQT0AE9KMuprg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdywj4CRA9TVsSAnZWagAA2FkQAJMjccE+WeBVr6zb1mF5\nsS0IJ8yIU/9k3Oi/hU5t9Yq7ujErKdZgSBFyKMK70Q5hcgnev5ObrA98l2Ie\n95DrtFxgxvqEk7XMC8jB/MoB49pEuXVSMUz3NSM4YEmlXEESJRmZ8y39Rzka\n9pBPc+/ys4lGBmCSvN1bgPyvIWS6C+TlU3ssGX/f1Ym8Umh3CZdRbI7dMn/q\nyCcvLKN6GOvM+2/8gNdTk878P47nzF8LBINO2ikv1hZ+6f1ieGu4jPppZ68+\nYTVd5SvMA113Cjzo1wV4r4Ed8L8UfdKt64K0ytHGJ8g/jHl1r6DqL55+6mP5\nyXgVAySK0XsGA+/Btt3IRkYpk/ZnZcRYMnb7ykefnZ76hdzc4jHoddGWzpRm\n5VqJ4Bd9wki6d3t09FmlFAkbCFanknlGTsL7A+TxjqDL9jgZzVBXgo0ysMBk\n434aDDw7vufpl/ZSaJ4DtAN0Z8XbdBY5q01oECNKkxPuq5sZEkKPEtxDrbtS\nNSp4XIMsxwfSAKja55kf49Mj/ig8hJJ9CldRCpdpA3EcIqFYJk8sOO9wqtOB\npDlXYkV4sp50SPDTnySXUn+19pJA+vaPfQH/q8rfLEqRuOfGO4hBMe2FuVKd\nvpxQoMixN3HLBJMBxWdQy1wK64rMjQbIqGyyF9PfVufDoxQgOPjWKz7HSmdN\nHxOF\r\n=EyuD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"3dee7d0950b9f25e260a8ad6e3ce2b9821892122","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.42","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.45_1573587192198_0.31625527046093604","host":"s3://npm-registry-packages"}},"3.0.0-beta.46":{"name":"@aofl/i18n","version":"3.0.0-beta.46","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.46","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"7bc2603dafe481284c07e4e55dafca703f5e4ad3","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.46.tgz","fileCount":12,"integrity":"sha512-79kdnmKP60LCwAQQ+U51hhfDzGVOUzYu5lm8x1p7raWHOBYscEkg13SzjPcD6uoB4h9jR5sOq6BSB3QVFtOzAg==","signatures":[{"sig":"MEUCIQCabPSLefQ3TM/IU5ZGBvjqG9JeLDr4XOoB9OzVHP5ttgIgGm80MRTanj3403MQjS04HoN8hab6eugce+3VHGBu9Zs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzc33CRA9TVsSAnZWagAA5FoP/jKuhjVuqdOKxxz8PJK5\nxl8YQBTww+AjYi3m90GBjf6dGzvxRpqJ+uVzD7K8rk6ItoyRYYEWLeUjomQ8\nAX/Rf+r08bQLPK/7TczBtqFECRQTuZLGimrrhME5wodNQdkyj90LnlaLP3EN\nankMLf92qhmt9izMVbeZVl6ZuGlAZFDg5rUohhVAWm6y3MxH+RTzhyf6c9dy\nENKHcOt4xtyT8hPdVED5oEF7gGY1C3ZaDPepHpdAQOL9D9mYxK14fTtcaMNM\nH6f9jdsPaexXorw7etlg1Ve6KZ1QppeqKJQMZctGWCAKIXxP2iQSCaoq9QC5\nUIVGGJ9DdBjgC8U9swln1mQF6BQA8zJfzrX9NB2H3847qC8W/gI3RjSB1361\n56gFwwckQwWMXwARzoS+EEiWKUaFYlN4Wncuy2DWAEpuBzaR4CGe6PH6d3ZE\nw1oH5MEoPhjb6dHF5y86RV5H9bhuq9HBhkw+DEZgjpe8CTXk203mAmvmo65A\nxVZ44NqGIZ/5aNvetQg3+ClI5Cwv2gch0VhMAaSPsJiretxifn00zrWsN7G9\nR/fnyQqOxiJn0DSxiy2WpSVA/pW8zqytbFJW2eo8Z6eLtJp0uNqEkgVyqSlO\n3rpti3dzo7Gz+2Ybj1x/DXOJs/aUmLEh3OscuFMte4zv3QGXg91T2goQoT2F\neOpG\r\n=Pbge\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"4d18597a6b3e63324cc8b2f401d986dff832a62f","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.46","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.46_1573768695310_0.3355253223995407","host":"s3://npm-registry-packages"}},"3.0.0-beta.47":{"name":"@aofl/i18n","version":"3.0.0-beta.47","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.47","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"54d89bf5213814a734831d8e60312faa4bfae865","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.47.tgz","fileCount":11,"integrity":"sha512-3YYiiG/8EU5/lmlludebeVzVGOjo/B/QXw6RhPbj776MJ3ntUbvNZq4rxatWpE9IM1zqYpFzsFHQIVdxXrO+SQ==","signatures":[{"sig":"MEUCIQDfIYGK/egv2IPjO0+3Nr4PJuh55F8gQ36tnAmdXnZ+/AIgAu7w5VzMffNZ34rsUfntY5/eY92VAexEzWTO8sXYRIg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzfXuCRA9TVsSAnZWagAA050P/1TttU0PRqKsWYpUJlql\nJTPyXy2El8daRCSKP99WWJDTywxScEMoyAq3C8FVPMMVeSlQwKXcQjh9FKUP\npA/B9bKysF0zFTrdBcS8K+Cphy1hAMxAFXizl72LLG7uc/cuIpZQu/uLU9/t\nCd8OhWsOMHmXXldfQQ4GDAKwTIwYAFFjbny3TtK9dNjOt+qj3XQ1m0hyBDI2\npH67JhhquSdqX3FcgaDzmUPxC8cGtiITdYKY5q2l3NYy7py3SgtxT7Fk7SgD\nOp4XqTT9EQ9hdpyH1C+RNrAfe60vWQsmoLQ2vDJE5oSsrYXWllUHj1yvVibB\nJTbD6MDD4temH/F8WGEbmmdB0uUWQ68vzo6+WjLsWVq0L6JPHLlQlnDdb60K\nUsi8p7iZXzq2c+lhSHKghOn8lXk5gwLQOQQAe2tg2f/zKYeFeP0IEP37DJuj\ngQvKh6iNnb8WbbbKKcd5TsCWsVpgVcIluBWehCyIyFZHHM7jhI1ludcieY/3\n/4Fsre8QdeLqb1QzPg7EqOfaqpZkY1ofpRbjVO+yml7trQl+IglBP8mtrGEz\nTjCC2cVoY+wG9qI5YQFAXLTJ+Cdzm06xdBPyzcf0rFXdU+Y/90qfWik4DMDL\nPFU0MYu3Lg/lnFBUuCUKYEDnoJjoHznjw4IUg/ggPZZWTnUxNd4Xg8bmXnug\nBFSe\r\n=7iON\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"11344382e361206a6f67f05f4904149ead37c1ed","scripts":{"docs":"jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.46","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.47_1573778925788_0.09564191024590096","host":"s3://npm-registry-packages"}},"3.0.0-beta.48":{"name":"@aofl/i18n","version":"3.0.0-beta.48","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.48","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"8b399d54b518f35ba04153fe461067f1798801f4","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.48.tgz","fileCount":11,"integrity":"sha512-AoweCSJQKffUnO9ahig6ToPfA/V1YkA7iz+K8kKZUQzJCjzMLC/g4CbRSpX3vA2TZ1hf5aH/bkkOG8/Ii32OvQ==","signatures":[{"sig":"MEQCIHJXmwn5lrOH04F6OyMz79g6MdclprV10U/HY1Afzj+jAiB/oUvzCS+g2sY9m6MgX+Crl1GAbAy21aRlHbdYpUA5eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0IfgCRA9TVsSAnZWagAAX2IP/1Vk6vujL9sSGjb1C1sD\nkTvEd50Jf9ZPBsqPpsjf35qtKz0FkUnYTfib+6dgi3Vzk9q5jNnA8/LmlHfR\nBBNjbV2U1ehMlkLzNAY81boMAgZETOzepsQUjIqmVQtSkPvZpyLUCH4C+aUW\nIU2ccsDck+otpYM3RSnX8cAw0GbWGe8IS7nDBiSBjPRiPzkWXytjNAdAO++d\nFHAfhFlZ4kCtSnwPlF6sNwjc76SxIh10S8TRgxjgyoIM2/UBWqEQAoOExK8O\nmy5K6EUWdJJ22dNrNFxU2vRe9d0NZ+MC5Rc+zjJJpCwv2kjwCIoOgDjrqdbV\nsTINLbezDmgHIOfY9w5fvhF8CmPxuyVPxSlT7FDuOLn+TZ0aq++tB7dGKGbA\nGZHYhRLhy9iQ5w0A3WezQKObvARmYbLuZZ+xuSJcyQQtW/RFVe/+uIg9wxmF\nNol+XkT8zbQR4t7zzjnVcZryK/dCG1mEEmCZNeX7Paq09l7jDybGqIiVSdO0\nZg+miaqtYVp3YOLUGULnZ7cvEaiM7S+c62C3jhxiQ/z0gsq9nOGqQPm199qh\nJNFsOM7cUhqDFRCOWOoaFW4J3bzfK2R05KXKYA3Rs+mucWFvPDaPuWLy/HN/\n2VbpDroslHQGQ+gvYzJlhpu3e55jqPn8vF3TEHHYRSUNZ0513LOyo3//88Bt\nZvv3\r\n=7kiL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"d77a51a21b591d1ac0032de47395878116e8566a","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.48","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0","jsdoc-babel":"^0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.48_1573947360531_0.1036796373372193","host":"s3://npm-registry-packages"}},"3.0.0-beta.49":{"name":"@aofl/i18n","version":"3.0.0-beta.49","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0-beta.49","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6d10111367af85c2f3ae136d380336ffd2f1b0c1","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0-beta.49.tgz","fileCount":11,"integrity":"sha512-RAoEuYsuIfyqTUY6DtQ67Dqs/v8b6SbMcDvIk+DNRKUToVoWcLO6P04qA1kSOdoubJFRGtYmZVDOxyhen5ksNA==","signatures":[{"sig":"MEUCIFMh+5HVxZAMHVq8RGCjJ7ayM+GD3bqAiIypzMW1EtbZAiEA4X+7CNm9YDvLUfOyyhaxafbFOwnzdf1BPBpZjWIItnQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37127,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0MCRCRA9TVsSAnZWagAARCsP/iuc7BCHu5Q63uroigyw\ndtBo1GDDI8M2DFiLE/gsgaB3xARcTRZIn+lXTZAVQpx1vt6Hb4CQSyEla/2t\nf2ADgX48Ze4TwgHMZtPDHTf863BRQBTtWKr8rcvK8mzGQBQOwdS/VuNL4XmJ\ngF+xeYi0QCWegHTBN9ufgQkBfZDHUOkGL6wdXpbVS3VqQfYCyQBaCOdU+Btp\nZcpg810/c7y1tzEr4l+fq5moo2dKbYW0chCYEjybShwcUzvt8OOZ0AlM+Vok\n9pwsccWqtqGYno/2y/G9oXOi04CvGnS/c8N+mZYial9SskTUkMdkIUjrbTXq\nXCbgfPa6EJVzxsN8bGiLqlpDS3ZXT2k9u3qSCsTspd2iq7/JC0ZXhmQtQKPT\ndanWT4+XCnBaOmfOtUsvr7Uov4Bh3KFvqz2tyDVJAp//qZ0dQVdAHpzEiZv5\nJY+ZFR7C3dMriDRQMckB2ak3gjMcBcUERulgh/Qsk9yfFkJ9PB3WV7ssxbD8\nhxdV06yoXN81Ut8lXHSk01wnCh1dtxWCRK72V5oe8Q95p9yE15ujSbBNlGGW\nmzqGV4X65k8001dvNMtHPnii6DUtarbe2XLu6biodKyc3RkqWalWjuwbBLW8\nVWj44486EMwGm/8ZP4kdHV2Dt5NPaMuzi6nNAPaZczNxLPBBEUfUQIKVw8Wr\nP1GA\r\n=nMAK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"a2642ff8dd100adac8db3d609f63e2bc6a2247f5","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0-beta.49","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0-beta.49_1573961873119_0.6796231132699422","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@aofl/i18n","version":"3.0.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.0.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"86620d7bc17b548157051b63c9846436e9467bea","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.0.0.tgz","fileCount":11,"integrity":"sha512-aDMWyLgUlB2TE+G+shcEovDxAwcxX77CNHtt21t7nvPb4I/nwxfKuuN1ggH3zvPpEq8yJbgK4BcJR9z3YDId0A==","signatures":[{"sig":"MEUCIQDz9kaSpOT+rwv23yJleG7+kSiBY6KFoMIeVE9qRmIzlwIgUy+UZ8C9/3MWnW7gr7oodFWV3b8GShkh5aTyYfg8+Qg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37111,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0PFfCRA9TVsSAnZWagAAb6IQAKF+AEbQcPldbRI1+xX1\n+1dn4oPNSE35xQljZw2XOcnEOIU1ih5QDgjCj3hfgWWfKDnyHbHNQ+arKjbH\nETZrXLp6wa+khfEjq1AEbKoBpaJvKjOPOelC+4noX0LhkbqfLbTTBVr8+i2l\nEiw0u/b1t6PbZpMaDulmb3/r9XG7/9nMIl0TgIo82zSqrCbm9RNYfgapPVj1\nkYFIeqvoBnMcvyDws0wkdTlddAruPyDHU7+FmHGIjI4zHm6v5pY/LuhRFQaf\nn1rFCjNFx9tjjd4UbrB0Ul33dbRtbF5jvNq3R4xkxAB18f48K1Y41MCv6F6U\nrfVa2jQCdmbVIaE1CLIt2MRuSm+fQawkruVe0q5MCwwvNTOVgiGgKRcLYqqV\nisnQMdLxdhG/fCeWNjaqsZVrAkzigFFQQtNbCjo3DO5fOgJDNh+ibyWdOied\nElhSXgOMYkB12czaaK4UWywJjKxjTyduWaU8k3v1lnvZcBr/GDFetlRKcjhq\nErTn5ptMjitm6LfWTJdsbgPMGvhHJJkdYYxwEwyag1Fs6HvJnjSdsR1zPBZL\nDCAWZ33rzmpKBrevJ4zN/35Y5BUIlCgSMfnuaY4bjMVeHfAblQuDLomGmLzN\ne5VR4QeyKXxyX352yxJNDbm2Dbdr5dBlxkdBQ3vwGXWEpDsRvNN7KoVobFGj\ngf9n\r\n=3Y49\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"bd783440a25a2c579fbb506b92d90bf4fb7e0289","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.3+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.3","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.0.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.0.0_1573974366787_0.9569086237146898","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@aofl/i18n","version":"3.1.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.1.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"5afa76f631deaa1439b11621b3458a407c038390","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.1.0.tgz","fileCount":11,"integrity":"sha512-3b78QU56PYfj3OpY1iBAURwfYY01B3MFvg8idEmsn0fH9h59hLjMSf9Y9jpvUBYH0y0cawzvvb8yrMheOu6BZA==","signatures":[{"sig":"MEYCIQDpeyhzfaNGonnuPnFhKW+Mdq1lkwEgBpIhjfupVyILqgIhAPC5l+8eNzgetp/BRJuCPh6fdzNJApnoy2ofj+kWMfxr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd11XOCRA9TVsSAnZWagAA4qkP/1TUxRaD88LSG5Brw+O+\nclO1JsDUGCgysQyVCKfV9wIFb9ykfaom97wIml6u9Sq+t8AETbYGa/0APFB8\nj4dqEH9egdOWzV2dk0p44CyfowP5ue+eCPIj6cGoweKMGulYyBZGmSgGAgte\nexIbd0EIKYkt7CSv0c/Yw8NRTltFduzvzZPUl5pXb7N16asXmouI7OKN+YXS\nbgjwcPb/TnGIR3PtTlOtvlIk7KoFEOMLV0yh7kSNWpriGC52bsTi1BTurz4E\nD9l/ZG3VPPXRR6Zrqlg+b6mJam8aFx/HPq3AGTIYEdD+nTRMzDpBU5P5C5Ee\nZu0qBZSr75EXTnfqRrYEoIAAd/ANb7S1mtPmt3qJrhdhbHNp1kmjDwM6+2LB\n+AGlqYgemlu/jwgt/rVwNYm9CTOBh2FaZSJnTIXkoi99WvG8wlTPw97rXxgW\nLx3REcwLWx9vA1Q4U4MEubczdtANF5GcL26Un7KYmy3zN8ueLie52lWSA5ZR\nFxDJ/sUvG1zNFTp+afUAXpvOCsudzVSxezYc2czmBfV0xZ7m1ZV+gPCIZ61O\n40EAg9wRHGQswGMbs4DQFslIDreDFxSyeJ6mkcy8ajXxGQvgQaRcFqaC4/f5\naUM4+1L5Scg0rsE2gKFhHo0zXVxOHCIlp94nYlaR8pTBxNV7v1f3Xtxo1y+x\nD2X+\r\n=TYg9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"cb7c610ce117e6fe41168dcb3e2758d12900b277","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.1.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.1.0_1574393294296_0.3036207654686782","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"@aofl/i18n","version":"3.2.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.2.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"2cccf478540011a0081579b36374df21db53222b","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.2.0.tgz","fileCount":11,"integrity":"sha512-kLq67tYiUZ4I8tBfHY4IzB7Pq4Ahz0wfurZa+weLFYfHt9kG/mPebkRVikLSISftSrnAM4OHASigUNZjsGgj9w==","signatures":[{"sig":"MEUCIQCM89OEgXzBWHYAgkn3znIZW2mPA62PSohvHcVaaxF5igIgb97qwAeltl5xyQbzicsqXN6QgP0fRbqHjeDH9gCN690=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd2jKOCRA9TVsSAnZWagAA1qgP/1qqYqwxtoUlXPhDWNWP\nhiv1wOT2ZeKjIhYLRrHQU0vzn9DS1pPJ+qpcNUiZd1249C4teH5iZyq4++yU\nFaK22jtm4N+Z1yxVsmjpNnnHMmuduKIgmxeogO8iauEHv1rWFL0InBeR0N5u\nzxc3um/fJKZUAsAHgqn8uM9xbomEXzC/S0VXFDiQCIFvi3AvZr8ySARHjH8v\nHji9rU7XEUpWPQ5dOWd+G/JVkIsnoqZupAHfAJBygkEQN/H+TIZcjI7i4Jr1\nUu9DO3ZnqNbgJINejyYHYrY0wV0+v8ttqoi9ZmovqvfPigGythBnOXj+bQHw\ne6nSKgOUSSkOu/SOLByRVBL/bXiWBOYKSqbEV3fk1AxyxSm6mmyYgEdtYZJz\npzUaIj7v6cT1ljk0f/MAJTB6MWA1tpgl4J4OPbMucHF0R7AdezazUXQUfkrh\njnAGbEtAFJxliV3sGb4yHcN0UgUC3Xtx/dxxjyP2CQcrhbCUxLBPfN1kxx/t\nBNeIJrdGEVh+ERXUKYfoJcof45iVqwe0YXYExUJcOVwVtzCPTm4x/s9X91cv\nvm3cx+1bhKGSPINUIOC/57dB6QgVZvDZ/yyFEW5XQTpJOpD1eE11AY1XwIw2\nbtuTrKgODyihpAZ3DzXLVqBMxcbpVYXhxV8teMR5iUXhGRa8i0DvwICjJjuZ\np9tU\r\n=0yTD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"8275111725390a8f797467a12e045c905a78623b","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.2.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.2.0_1574580878286_0.7340141099798747","host":"s3://npm-registry-packages"}},"3.2.1":{"name":"@aofl/i18n","version":"3.2.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.2.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6049f3be356ecfac0792d3909b6cfed59e377d4d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.2.1.tgz","fileCount":11,"integrity":"sha512-TzxKyUgne4J1IfbApumnuf6wvKNoJWEyqSmcLDWSZGQWdbcvQDF8s7UghWy7pLXXI0mm44U9OvUXJ9xD3fER8Q==","signatures":[{"sig":"MEUCIEjSo5CB4JD0yT5b5+Dvv+Yf28Lt/Cv12u/2HkrxF28HAiEAwD8IpcnDsP67gqEg/sPU0kLKHytwKrm0fPYShQI7WIs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd2jlkCRA9TVsSAnZWagAAJt8P/jSin01KIIiK+KXqphwT\ncw8duyIdCoYbgN6YWvQpJCBdw/sTcaVjlVC8K5bK/kgF4EjY85ARR+o+Snpz\nOACo+YWpf1WwmotYhMkUYldiUs2bj7OrQVqwTgYZPwyy7ZvKwFWdtNhVbI6C\nTZtbxGk8FQwzDZ6uYt3zGTKG4GmJd06f9uTIp50HSv7miWH4otFBYQkcnpao\nzrcV2ljH8pmG2mcCWtqoDSCds13DA0nWMjcBUEuvU5CViIUuaCv8hNUGx2f1\n5+/UyihNyHeCRrUf/tXC2I8Q+D55jWckFiJV4K4i/YO5fHpVf6hPAkM8AoKH\noFhWBOQXdOuM1Lc9ap2omrPa5IBDWCohGXwULttFXZzfxAkD0AjU7Vxalo6R\nOxi98dmpuZ7h3Zv49233ePSBUznSxapjduc1dz/oBIM3lFsuYhA368mhX9NB\n7Ku+dX9ZGbtAprktJ2NBDwcgIg9nK2ZNDVLfWSLcWCqA28Rs2GPMN9SAHP2P\nEs17qb+uHWY3u7/ngL9ELCS535DaQs8HUQPZqMcj8mx8Snz+QwGIQQp6XHSB\n9aFD/iVVq41TdXXOcS72jjgR4U61bguDiFX6aUReBePBzhFevNKkkzNPGiRQ\neI24dR5EI73HxgkKUEAlZvtfrrQN/MfXBYjnO9rDCzrkVphX+ZPajw7KLjX2\nITpD\r\n=JYVG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"a3a91753b98e4423d9fa5bc05d8cc8f8754fd040","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.18.4/node@v10.16.0+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"10.16.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.2.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.2.1_1574582628471_0.48160230059084386","host":"s3://npm-registry-packages"}},"3.2.2-alpha.2":{"name":"@aofl/i18n","version":"3.2.2-alpha.2","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.2.2-alpha.2","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"04bb61c18ed73ba9bf2c082545cfc4bc0dae3dbe","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.2.2-alpha.2.tgz","fileCount":10,"integrity":"sha512-qjjCak6Wzsoje4O5RnSiQm5mI20maXiOQD0hSDiEwv8uDk/jvaI4EQUnvAw4lMljatvdHQhbphSaL/8F3Tyz9g==","signatures":[{"sig":"MEYCIQC00gIs7Nwd7MD+n8YKn6mL7Il++vqdP4aLVnBsdqYSLgIhALhBrDBuMeFw5b9WxxB/3LNBlhSWA/ixAgoqB8NueUqW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHiQpCRA9TVsSAnZWagAAJ7wP/1qED7ND542KkWiSS5jN\novIoiiXpJK+PZmiBIwWCItTvZyyl6jc9Nv5zSVUeFIryZdRMgsMRDn0pDdqS\nYlJwtfF99fQ7wpbUstUjJO+qNFkrvNObD6BIm3AoMSUpWBdhrGNPIAYgBHAi\nE5De2RmkooH4JsVYXkodmn6N5VK4kdhBZOTm+RIFoE2Ga+cZR50Ol+NyunZZ\n+Z5PnqKkzB20hAf03i6A5tg7Ty+0oY8WoG2g9JJxcRdz71AlHkXKJhzZ1fyk\nMFJdUrlLY4bSM44VjixUraKGcGuhPx0GjnAhRvzrEiYIqUn22Q9GhIjUXkZS\ngrll1P0jpy4TJTlj67lrddWXvjJHgc0ZHwvCihNdw/rJd9Mim8UK41ipRZ6Y\ngu5SZHTC8IzELhKby8OAAcrwktFx4pFQR2P6UJCZyBVUWzxnhzSioG6fyEe0\nZ5ONwjFhuOmnRe3Yk4leH939l+8GpjXdUNaewlL6pDeJN2rWlhkPrHtOynsU\n9GLM2fG5FMAWfp7jU/jRxJbvguIreEBuoVXaw1A7h8HD3+6LZnDmQ2Qdz7yz\nZ7Mq4t7lQkVvkN1TfpXVbtwxkuMsdAhOxQLZfozZ1z4804sz3xvP4DHoaEiQ\ntkykDhBFSsKASYlen2aRKq20GyX+AT4UWBDlh6TPPUc45Rt7cW35toDTDQQh\nymEZ\r\n=0vOx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.2.2-alpha.2","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.2.2-alpha.2_1579033641201_0.8671256105179292","host":"s3://npm-registry-packages"}},"3.2.2-alpha.3":{"name":"@aofl/i18n","version":"3.2.2-alpha.3","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.2.2-alpha.3","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"d9aa22dc8baf7fc51edb047b55acb65168dfbf01","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.2.2-alpha.3.tgz","fileCount":10,"integrity":"sha512-8GEAclqLMSGUXIvyVEnosyXp0cGHtpB1m994/0RDtLuE5CakwRwFjEazE/zFWf+s1t42i99jlCkVy+1DcFklSQ==","signatures":[{"sig":"MEUCIQCp9ZMRpqHO4PttY7sDvTGXjmj8VsbsMNOKnVw25AdQjgIgTycPGmNAvixMUM8wxvq1wSZeOEWZgFMakwRbThy/yPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHi7NCRA9TVsSAnZWagAAxpcQAJUmjidl9XjEoKcYoSho\n7JFsIpYV9rRCpHVSPbrrKqB4ovYFfLHdaH03vopP+MRS22F/LjSPt1W6LR3r\nMVytj5XpZIvGuoi2u3fzM3Lt595ZisRXXE9u7Ypyc2q6tSaCzbqWqhxTOJnc\no5fqAhISMRsVCYm6K7BDvQKf2ztICUd/bLDGdkD5FvqKp6Kyj2wA+QR1jSAB\niazgoUeM18Xb76qzfFgBeHsCne4G+18mq3bO6kuHt+37jnbrzOE39FvlPaFD\nBPCPUczsbnMIq/Tl/rZsERWvRYqmjNrLqvz7rY1M+RTydORkdRk8mIEswnI5\nCRerEDlMfGSFD861Kqi0OdJZdLWAPpvaCOvFVDw+xZMbTCMLYq9+j6ip//FJ\nRsR1wILcttlXI14Aq5sgYLOqqNmXyqUzOuZHlVew7beLvKMb66d37FVXrtkB\n3KsmT38iiW/tDKrk7ajO3lElXwUF0NFV/oO7vlinkn86U4BMiSCaUIRJ4+ih\nQ6oex23fj+/NoUm03xK9awIjvFVG0rcJrV4qXwN7Qd2kHK8Z6xKTrRAsWsvQ\nJNDSWOk5iHYtaNWckLFJZtlJzFnY4m/0IzzyOeEGYe8DwcmPXsvecpzU0RdQ\nOucuS2BR/jY9tFmhrHEMm+cstgg0CRjcVlc6RGdyGoL9PbLx/x4u1u5Vtt8G\nW+l5\r\n=kry1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.2.2-alpha.3","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.2.2-alpha.3_1579036365286_0.5456891736502527","host":"s3://npm-registry-packages"}},"3.3.0":{"name":"@aofl/i18n","version":"3.3.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.3.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"65cee03bc80d8aa88e6a5b39178731b97673f5a0","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.3.0.tgz","fileCount":10,"integrity":"sha512-t6ise9oEgHsI6HaK91cSofodUwLuPWzHyBszmhc0q92TJWWCG8lpwRInv8LDct/3Leu6Zfo4KDSIGxFeoGALug==","signatures":[{"sig":"MEUCIAwMVu20bJTGoK/sWZMOAP+3eAhU9VJfWsGWprZ6AqDUAiEA681lw38FTjfK33Mu9pQx2F6sleO9Vk8aoSi51nCueUk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKNs4CRA9TVsSAnZWagAA+ZAQAJK/K9/mX9GiTfnhwEwS\nSCweGx+YEq7X+TxvXeXjkY4OTFUyOeGd1sNwgZwGNPLkKRLvlNrRyTeKCqx8\nKsteoazLrlBKwELWVEtLBw27SKTvvMaUufiHX4RfW9LWUwpl6GtkoZ9CqoX2\nwHlhrSDBLVVhQDeiOlGaHkr3yM2UtUrvNlSShcBGfaENSZheLgm2n2lVOx84\nxuEYy1e+W9rJmBd7VaMLGadsPUumWeBOpx2RWpjrS7WS296B1QGUgCYLnc2f\nfCtuRgPrBzRTyYvD4VAtjR+iHn8J54dUONh2PrrvK6F/7XqoeG1wAYa4/NIl\nS5WzvahXXrMQh1i6CSSa6dQQcUcHNi5I+5GqcrB8vQjpnGmDRGHE/6xjLr61\nM8jZ327qwvlRzqhxpLV4dV72brLX3x7imorAQmeXvt6V115F93XufZy2y6wX\nwWXK2J3QRUc63xGM9h0le+7R4I6dFtldNBwHMlWC1mhmaJD8+pvI401OC5ce\nx/3rQJkdz1qJ+DBoGDISPfjEO/P5E5xA+BWIodpuSOTZcKAE8qBK1uNklTQI\nqsB0rzEXFHhB5Sigpi3iDD/9Ouj3B26KEaTpU87yaJKdoMAKRjadtdF4hqYN\nISV+f0GYLQ1Su/vYzvYBXTNed8CiKl9Fy6sw0R8PpBfXNmX6IUJcjSlpBU8r\nnHVP\r\n=0ZTm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.3.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.3.0_1579735864361_0.5805113707326597","host":"s3://npm-registry-packages"}},"3.5.0-beta.1":{"name":"@aofl/i18n","version":"3.5.0-beta.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"2794dd61da75445a9a1e4618d7e2c4dd96e86541","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.1.tgz","fileCount":7,"integrity":"sha512-cugVEeopT9stUrOZFXRqo0PsWiDh0WH3ufsGDBacc5YR9xD0RSY1chFK2Cym6/ZcDnnITxmD4+Z4JLEVz8YmcQ==","signatures":[{"sig":"MEQCIBGH9X0FjQGcr0q5zXNnidZzTH8oGicEAanrbyW6r8TyAiBa5JR4kWHM29mCFz41G4fYkGiQBucjDWrCXVERI0f8bA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUbigCRA9TVsSAnZWagAA5vcP/2VjwQo53NZhlXfzJZZN\nr9kp74ReOCgxCd0YQRHQcPmEr2+rcPD7d0Zd9Knop2DmZ9B71D6nvPXCXySW\nkTpecagqwjrDSrp9eWD76RBv6Y2fExK/Jbq3pzmcJLlryfpeyue5HYfh+sSK\namVY6tTCN4BC0Eed54+iMlA0jx7sAaMF81yXRIxIz6AU7Cf7h2J0m1tLHIjA\n8jzJLZEFFs4jbXxM06MswUk+5uufArVrkK0HpkxFFCkGAQtW1thVme9XuEWe\nZxGmIoyVXSOdwdu/Dtv7PVdp5gZEG8rnAJMl3BwAwO0pqYgATHey+XLGYikK\nRgMALMdiz0//ns/OEAm21o1Nmp1h4arg6ggmFRrqpXECO3cBkZS0VdCki4RT\nmIyrfzGxFs5xY2VPsGbx+0IZHklH0IBCRBM4URxQRAn4hKUkSud6sfAiZhAf\nhgGlI7J+l19XECD2MyctZtVZKv7pNSCTiTKmPK99Tr2d+Qd1hLyig7fkGFVY\nap8f4bN3twYNG4b73EnwS+qHzMFhGZdehBuJNhzvAv/wi6Er3sZqw7VgXKVp\n+0wmC85RGNrqTSG7zxPUOd61uZfxgqgyEJ55fQsCXQ7VeunTEZ7AgGcK74Yk\n40G/5yTO7mtegVu0DEWj7Q3aRGzcp72A/rj7JLENL8BdnAJS1VOX+Q8BrDtF\n5HRU\r\n=oaC9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.1_1582413983787_0.40405776100688895","host":"s3://npm-registry-packages"}},"3.5.0-beta.2":{"name":"@aofl/i18n","version":"3.5.0-beta.2","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.2","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ce180221962cf04447f58fff354c8a0487181d3d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.2.tgz","fileCount":7,"integrity":"sha512-t1T8G+H/OcYa2YmZjO+SR2PnghWIVSKyABJBoRAkmkBajDCrr5P2a3ero6P1T3S9VwE7p8pcTykmCowILVI15A==","signatures":[{"sig":"MEUCIQCDAP8sCBm7GuWIJ8ML2v7wKIH9nh6pBP5cFsvvBYLFCQIgZfBiGN1O2rSoRti+0dH7bCtR4d69G91Ct1AHV/+n/Vc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUb69CRA9TVsSAnZWagAAQd8P/39HvtSUFfVSEgG5U0G5\na0VpuEBJTgx85IE2og+KDSD8LH9+vZiLtNv2xDLPIWmNB0zf2N7c9HPEt52n\nmCuAFWjWQ9IwLJLqBjjKns3r6cYbAGB738exk+H3pyQfeSLkbIdSVgZFS6hs\nDd2thG8+uWP6wQ0FfHZPHY3AvZa7e2jXxboxZEOK0uAiABPC8TG9/acEBmmp\nHft1JziWPv1YyGMqHE2tYG+fwiooavlr8t4O/5XZ/abN6j3JD8Q8hagkrcjf\nZPm4GZx7jCrYx6F2YJ4mRp51bNHq/Xwsw6cFW3eEyuTmPIYyF1YsTXtrVgaY\nope12dPLHa68h5WbAr9SBnAm1YDuQK02sWSX59MWOZwzzpHmZXzJifwliR1y\nbpQuuo7Eh9PBODFw8aFO8+yWkC1O/NEdvDkfFaZpWvOggiGobfVkBLr0+0fU\nEaHN/RkHE+z6p0HOa/8A9OwqMRmk6OYRzFdepichQNoPOxJBAZqUoDqyrexm\nBuf4Gu11hilw/aXCSZU8a3/CLTVzILoTWYpuQAY9yNKB8OhmSs6L2opJAeW4\ntClPRBoPu+PYbDsSyfq19Y59TdXTrJjsmbo4Py+cVc0SHWXP8UwQNH7MPw9e\nMMYN8T/EcSOqe6Bro8+fKYK0/Mvw8PjAoYxMLI1lIp5J1j0zKPGPAtdk32U7\n4P/D\r\n=fJ0R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.2","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.2_1582415549204_0.7067367032889806","host":"s3://npm-registry-packages"}},"3.5.0-beta.3":{"name":"@aofl/i18n","version":"3.5.0-beta.3","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.3","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ffe78de3aa49eff861d1398baf635447c9fd38c4","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.3.tgz","fileCount":7,"integrity":"sha512-Dxi4mVE+ABZJqMoFJC48i8M51YUuBmx1bcxv08E4/H8Y/DmcNZGICFR4c8wF1JNEBAOfr8oYjIAV1TjDM7Jfow==","signatures":[{"sig":"MEYCIQD92EHIgbVkL/uqWHLLjM3xPHJum4ZX3eOCWIklDWsLCgIhAKFTj4fiFQ3yiNuWgfz31BEHxIBTloPCzoHZ+xMro/hh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUcIuCRA9TVsSAnZWagAAgC0QAJsbKnv93mW7j4RXLx1M\nAU/VLw3MnDldPfZ7D6EIbLTcYQsgPt7FfB6N2xdbACar4GWLvLGMWAVNl3Kh\n/xJsg1+VnfcCv2fYGZoOftPKvitj2NF5gSUGL86QGayuUCm2xC+1vW8MTIfd\nxvk2eLG5yRUBUDSvH7qfOPxgXaOYpi+FMb5f5nw+qI9k69yVUdG4sd/LQcw2\nyHr4pmS2ZGt5qrYzkEQsni51SqTt4U6611+od3AyxW0Iagl9fqnGQcErbkRV\n9yw0VEN8v7onD+fpJRSwJB0XGWJjLMM57xCo3sAPvyX0CQ0W8dfiZ6Xs4Uf3\nbSDOUV1sHLb2QI0wdNzWRrn5ci3FN54/WW4TIqszWdVVIT6Xb45L7ul++w/0\nzhgljCwxbvKbAqWF9Uu9aza4ctrYZZDgDN+STV2ZQjr4K+eYPkF6NllFRYsp\n7vvAwzdyV32QWapfUYxyV2d+Qw9lI260ukMYh3iUW+63jkheyTXonL56iVdT\naYeDzTldeBDpSFwOWh8/xz68J/A6fSdzI5RfXl+kHQ4X/j8l9P1aOShlo7cV\nV38+Bp1+3UAIwWspx/a22xgaGXEUt9mcKnB4I6fACYpJ3ZUpppT7xnLaRpJI\ni3G0BdDR17QkBNnyRloPmGTkU+n8CV3pSC5lxRUUH3x59xSe8d4aPotcIPco\nqj8H\r\n=fprs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.3","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.3_1582416430363_0.8051181336853168","host":"s3://npm-registry-packages"}},"3.5.0-beta.4":{"name":"@aofl/i18n","version":"3.5.0-beta.4","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.4","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"0ec6723e4de24d91552236843ca9c46dde5976cb","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.4.tgz","fileCount":7,"integrity":"sha512-XFnc/QDKycDsPAPcXu6JuOG2ghVHQO1utBv4ieOrTnctlTXUtymDy+n4+ZbscUAWr6hJYVknVckY9TOd46KrOA==","signatures":[{"sig":"MEYCIQCGIX0ecM1dPn0Es4ZjxzfNZ5ZDlQstshoI1YO78c1J+gIhAO9HO7FmL8xuqmJA5JPe+IRVBnWtDN3vxXM8lNohRD+E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUdv6CRA9TVsSAnZWagAAlJMQAJnmHJhECcjNn8wk9Vts\nA/pA9N3/hiL7ABm1gOJlRIo8OqwcC0K2WuAshm8D/64SFF0Cp8cz/pZEtNdb\nu3Ttn6w+x68QeunJEz3cj0qFGN9oC8QLT5b892BuUtDxTJigS/xadZT6HkR2\nxLipcVbvWgxaOg17m+r7nVKPgYtL5kXTD4Tw3QQmfSiK6jEYwDgFbTTP4qHB\nEniP5BAAfDXSe09VSK/620cEJZCUHoMg1c9hmwFuvbJDi0dHyPJ3GrA03Rf8\nF3XRZPDHMC+h63ulHhulGqeN2PtjwvMfaxHARZLbGDb7c79s8eYDpk0D5GHG\n17ysuOVuPEsx2BeooYcD7CFT3qg9O5O7ebq+Ksb1fPCKUuWW6C8a7PP1TsR9\nAbKmQkPDkiu2Vp8RQlSe98CT4XYAGtXj/rAY22SwpdNCHQ2+DACkvWlguyxO\nAliuQ8+bSWtT4uzgJ3oGQAwYXPe1JWHKHDJmh++3d07pBvhG8kkLdye3uLEf\nO4P2baQ3mzVBXY/FWEw9fkocTp0M0fD2TPUnu1FnJm/kSkVaOUp+1WAcfjbE\ndXDhv79WYQxR9Fe2JLOhz5dPKwAhbu2xPGaGB/+d+WhD+09vFw+hzKOjMyRa\nBNyDwnygP8ok4CcAvfJrnjk1bePHRfFAq7SefwSX9+OvEX5xz0DFbI83Dr4n\noJe3\r\n=oWRj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.4","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.4_1582423034413_0.3403219131449653","host":"s3://npm-registry-packages"}},"3.5.0-beta.5":{"name":"@aofl/i18n","version":"3.5.0-beta.5","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.5","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f3c9091baaf2f0d82364c4e85ff54f6c02687a24","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.5.tgz","fileCount":7,"integrity":"sha512-Tm3pOF5xvojHPVjWyzIumLMrleGh7gHCoJuqus2peltIRoWyxrHXFJq5vgM1uubyj6GQ3swgAUaq2CpRkFUZkw==","signatures":[{"sig":"MEUCIBYzMkjT9lulC1VQWNcluaEYcHYeNdPJ5bKzwpuuD8zgAiEA86kYvqDACKfRSrPQgLZCWE9NOaRPFSdTT7FVCnV2xyM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUe0DCRA9TVsSAnZWagAAh5kP/0m4Da7RjwCpeKXj3Ddt\nOxWxqs6CcIvjDNjTNUNsN4wM5jCCTQs9vNpJ/vAy63hvKdTtq7yxWA4esk7O\nVlvkDFc9p8WORoMqzldq37QCOiiFk9zYXFk+ASBxnlGD1On9s3S9Ew97tMoG\nf8leXXViZW/ZRcuDJNR6zgvPLOdZvJtPVhTk+o0loUqhgFTW6yOemUmuv+k8\n3qv9i6p6BLlsMC1jFfALWGAY8C04cmoRZ0+JBYZI3c1uWhbfA/zRdQsMrYQy\n8CgG44b2Clu5NaH8LaaUVDnsFagHfQ0smrdo6OlUDfMG/zTQCo3Mlh0Q15CG\n4Ebf9WGylSHDaUWnDEUCymEMsHY8Sg6lCeGUtzqwsottQyLwSMGGNu5I63DG\nDhLwAYfGpEiG42sGtPqlpaYcDxul90CWCXdMDbK4zhjS5ieImSPHHEpefZoU\nwLg5IFux24bYopJPe+zoQqUDynP2oIQkXcffgn00WKRs189xxJmeoX4Zcvrn\npt9RXCBYR+stKdId71Z0vW1phgI2HPfirMlrLVEHuRq982aoGMmwKGvjcAcV\nSIIEKskhc7JemytysTICOwC1nkD0/KSefnq9Cn6nUmE6czMBtPo+RKs79x6L\nSYICgkzFhNlKjSSqkfk2jX0agE3tvzUYJBNfa92jZgAqzlFMnXocDO9/YWS0\nyedO\r\n=byEH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.5","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.5_1582427395500_0.21814854670117123","host":"s3://npm-registry-packages"}},"3.5.0-beta.6":{"name":"@aofl/i18n","version":"3.5.0-beta.6","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.6","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6e3ad47adb88a3abe89aeb3fae3ec3fcc733e0bb","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.6.tgz","fileCount":7,"integrity":"sha512-3ek4NeQuWgfl3HjbCkPPsGF893rEtIXs1mLPBqNB8G+c8VhB9oE4zFvxaVHdBgjMxNnuOGFURp/fokyW2NFZ7Q==","signatures":[{"sig":"MEUCIQD7hl0E3B/8IsBCwIopRBOCmEfLyAvak8PNnriCJvbhIQIgd0Va4LedqZJSa1QmlE+8DNpibmW8RSP368h9HVlJtQU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUe7PCRA9TVsSAnZWagAAMpsP/2fhRu747jWnTtrKCsdk\nWAb9M6O2w7e8JMcRiEow4UtZT2eIXxTSIkroVI7IIG6wjPqpiq9nQngenGw9\nG0ju28hcUvWF/zgUj4tB/TthvUPX78rt0LLue/qcYhThIiZsY8Gd36YL6Sj0\nthDq6JarZ5nKSIv3MTl10K2SbAnHe03xVOBlAP+osKVHwAJSeRk8A6Y7q4Hw\ng1gicE3Z8KsXNhgdAVJ/R6Kb6Xap+9Jkl/I0geV09jWTnHiuIm6KsQ5lgYmb\nNCNBJA4SzeQw6osgEKR9zyEFgU+YT4VSkmZECCnTo7yBAaQb1qCmHCvjZZhG\nNisPI5Q4XrRb+h1/q8UDLQv2qwu+6H8Zyl9tWgyVodCKVnhLk+kAZQyUkevD\n+FrWzjHZ9SanZuApSdwQ2blVoT6Ujn+HVWf5dcO1DXE/NilaqzSjr2my2Ify\nRXQhgc1Aj0kaqNH9ghANn5Y7o2RqBNBHZ1pe4GV4RLm+6HgtFa9vegDJO2oa\n4Mt3g3QEGA/4Zk99gVrC3YVw7te2eXaWcSCA3gm0UcRWIwx333jKIbEg2Gsl\niBcLB1hkwGp9K+h5CVigfZ+kMMhilEULB1FxWRbg0Y0NAJ1YOD9BexhBDGcH\nZf9z9Eye20mOirRQcmEB3tXMQqX76EZa8AMnRqH7/CfiYOxxiqkN1pcFPX7p\n1jbE\r\n=E6Ck\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.6","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.6_1582427854838_0.6513243862013272","host":"s3://npm-registry-packages"}},"3.5.0-beta.7":{"name":"@aofl/i18n","version":"3.5.0-beta.7","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.7","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6d82574db464284c17dbe3a0f5f27cb1675f47d5","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.7.tgz","fileCount":7,"integrity":"sha512-liSO8vVEhwXAaVLeISvDQQYfp5gQRfAcmfQn0l+CP7u/xVT+08QWKzDYZMO2y2VmPPwz91Q0nYBq/ln3yMASoA==","signatures":[{"sig":"MEUCIAuNQAXmWSROT7DOUusHoIzdpZ91+lt5An1ABw0yXJsNAiEA+Tt/ViSkgBQwMlaCV7oG17gRKeTXWHruvVF/afpdTaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUggPCRA9TVsSAnZWagAALTQQAKOK5oZXiDzjpEo6RRxu\nMul7oCB+pkVyL2VmMUBhSlpWNaUR70IHeW7y/ls5Ug36zzoWZw2yTu9AJ70/\n2j7S8SZAhr8ezj3F0IBhFMqwZyDbqhHxPE5Y4AkRfo7xjOAehK+vOW/hNQ7R\nisesL7LJPLwslfLXJxysypOO+UeR7khvXMoaPZMATzJPKlx9rDxIo0Pz5ppZ\nT2kaBMmXsatlnLIxApJ2m65aPS/vyTzCgVu7ja0DhzzgaQJrHQgW2WjPWd37\nwwLWBp2PbDJ7Z4I3LiHhoeu8LRR5y4uP5cxF0OOifpT4rVm0kZEJp+iKUJXG\nA/1j1dI0S63LVWkXJo+CTmhKZR7xysmPltHrzFLd8wOOsb0+AG4Dru+jYUsL\n25KQ+y2TOW3enl5N03O1HxZgjAkkUl/Q+6SrZkc/d/1TctXevQRP1UyYh7sx\nhSihrwPblrmJXw+wU1eyy8Ovw1h1Fi6ljpts1bn7++6uHOpd8vw8WPKeCshg\nhMKAnnbHypJrkhiRSqFNYztcf+7n0/s2p4uF9jK9HX6s6hC01vrsBpr67VZA\nCYgfacRXF5eJVsIKpLSmvXw3OJsv8Wyz4WguBvOVSLiHs6cRUkfZwLdC6Qzx\nn9hTuJPnm83R+QCCI0EmNeeV4N5EYggAj3onP3rLQWYkkmLjpHs+gN+zScvD\nZxbX\r\n=EdCQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.7","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.7_1582434319231_0.7942414427101772","host":"s3://npm-registry-packages"}},"3.5.0-beta.8":{"name":"@aofl/i18n","version":"3.5.0-beta.8","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.8","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"e13323e22353adb700264fba5c8bf330d8899106","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.8.tgz","fileCount":7,"integrity":"sha512-2Ny+DL0qArcvkCHPiYGw3O8AvZd4cHvEWc2gu606LbIRolyy2vjtdtV6eEFx9ShnXZ54ZdedaDcEF4PWhbHgig==","signatures":[{"sig":"MEUCIQCC//cMYIlK9ylagNsIaIhUioYc4b+2eVulokmfzAQADwIgQCv16G6ZZltBuR97ALQ7ZE7ipycGzxkpwqYhi8rAVSU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUgjRCRA9TVsSAnZWagAA9NoP/3M9Svc2/9mEe4q4+Vys\nHccViAS2z1s+E9sJCPOodjGcKBEEhH2Jw6T9SLYObGF99gX5cRR+eJMHHebW\nbpBqRryJI+IbmORy/YK/G2jydZUAE/ZoIKmNhC6fhOSweOEFXo5etLyqeg8E\ntC4YCWxhk8whqk1T87NsA4fowwiwj7qCSCUZt7KpRwD/DzotB+QK4agmGJUa\n/Qt04h/LlPpPrRjsrqiiR4yImQXg1a4/+rTrOgTvK9PVPJ+3rOOqGVABtLqP\n6wDBYaUXe+vjn9TsjUnA5TyLN04DvCJzMZ0eVOw49axVKKZgeoMVjeJsGuTm\nilAOT5tmh9leb8+rRh0VUwzOEmvGuiR0L/FiX3QSfjpwfw7iWz8tlxBHj2CU\nsZeVWK/T1YQ6Ly4sptNBbq1CeDW1220rCEqvYmtpF7Owzb/rxe7kIRHjwDiB\nP3QHDRiByIwGAI0eZ/Tl9ZdoyQeqt9dUaNBkRHiDPw0TO+x7qAYwZMmD5s7S\nNhFFUWsmcF7YCvQ6+VBR5PDXgK/CO0r+8gKX+zQqhOjDPkgowfYPD9M/3Cc3\ng/jRrOCh2FZIhuMFMdghlLSVlBUTdjYwluxRGGAW5zVdQlb6cd1ZUF+YqFZT\nVRFhE8xlXNKGSeGOsTNkkw7UGmSSosgntdW5qDylWvFM2QtXjl39U/PA8Ol7\ng3fd\r\n=KulH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.8","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.8_1582434513503_0.18895656070717748","host":"s3://npm-registry-packages"}},"3.5.0-beta.9":{"name":"@aofl/i18n","version":"3.5.0-beta.9","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.9","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"788f10d05cb91a943e83f705ac6e89d5b736220c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.9.tgz","fileCount":7,"integrity":"sha512-Xn+p1ovHd3hkedc8hx0XbksZm/Ie1wGrNdKD8B4COBCYhFtc98U+mPMHkufddJAL3kOY9Aq/tkR3OvKzYWatzQ==","signatures":[{"sig":"MEYCIQCBdoNLdfr2LCGZ7fuepSB8C/rXwsyQFUk//rrjFtJ6eQIhAP6N6doNzuk6MlEybdsmDxau9jUG/FPnedeC0A8cgFiP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUg6ICRA9TVsSAnZWagAAFzwP/jlrQVBlwi0tPxCTMjWh\nIqtrxUHQWPXnFE/do1YDTFLd+eLNjxSu+JiegpjiD3mIBRnZvJBsnNc9yI4B\nplL3JxJQIFpZb8L0dnnWhYu+R8n8KBy5HOY+Wl+pq6LBm4VxwH4gfXqIyp25\nHZkfQsxJVc+GTAgyb1qNUs4EoQcxDRw77GiC6nbHH9euaKwkwdVhpK0dUPI/\nNH2n7StNqG9Zela+GE74RwF3NczXR3NLq/r1Z3iWZ7cozmjwLvQFXH3ZKzpo\nmjHPoyAqxhEGkGxbLvKcs1weXEMjyABYFF0A4jwKcgHAW4LO2oDTb/8mWZGU\nBJxCV098xINC2FbnUuGbq3ssk/DTgxHYp8D+nEsyGsiNjJx0RoJapVmg6B+U\nnexUeie5ptnyuW+IG87EnjN3QFkoqx+rXujOkqpkof0Su9u4wbXMnFYFwB0y\nc/LGeSZNIeE0nq4kDu3sGY8jSzvehpYpOG1HLxC5xcw06KIJnUr2l09Hfwbd\nRV+0ZaVBQm/rqX9A5dXG8E5Ulsz3KsFVlIYpFbq/DDHSQBYFGqlZzzP1VUK0\nprQYSj93kud61qpRgqIxQa/hJmxKwJ1MaoeTQ/1ZgUd6um9dhCzPAsn8cg/C\n5DQJdUQCT8xdwZ/PBnxTWWHodkepUUFC88BUzy/wABOB4fUIh0jNAhw57a+M\nfc9e\r\n=eWs9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.9","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.9_1582435975792_0.38712192083179864","host":"s3://npm-registry-packages"}},"3.5.0-beta.10":{"name":"@aofl/i18n","version":"3.5.0-beta.10","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.10","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"19af47e1e455b47df5e296fb74b0a8009077b3e2","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.10.tgz","fileCount":7,"integrity":"sha512-OHO+5MNLSBiJTvofiKJ8+LeeKf/CtX/tNbbeAqc8V05LVxcZJw/8y7/lGF5A5aeiqsNN2IihuP4xbUTTeEw0mg==","signatures":[{"sig":"MEYCIQCVJg4gDrkiHD3pK/xGiIGF42cmrERk1Ayg13LQ5Q6yiAIhAK9IV1ehqpEJpfhmUoxOSdKc6HIp36McwO2CCf2CeuGA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUhKZCRA9TVsSAnZWagAAPYYQAKGUmhdvj3AYd6bsqFq2\n+NIKG03W5BA66w4P/z4LBgThovQrYfE1ssOhslfapLxMprGiVsrMsahYI+4I\nx+l64UXWIyhsHYknWCrImsLy8vED91WNo8l0n1XglsvEPVr2IbzdgBF2bnDm\ndEkcc6wvplZaovlbckRcrTGXIjpmuN5+uigcKKJ0Is9iGV+WDmWIenWpivFG\n7ACOVumwB7MPrreOyjcW9lcajYMh1FeOZ65kcqN4Ln50J3fOOw+JaFzqjSTL\nNJ5A2FmesGeIB7zDkospTnmPjLhnfIi9aiV5RutQ7Ij7SNnmiTjNGOBssyQI\nuGQyXpQHZAy22eBsF9/VT1bc2EJgXr/jKvepN/IrJYLq74kYChQ/Y2Lmlnyt\n7+eInXn90VplhieAWcun5x8ANCRHgAtu+ALjBjqUUvfmw0htwDGUiSdGtiEf\nEkuAtVnBkdU+RTXZrxA+pd1kV152HxlL3UOFW6n45Yu0jsuzjDgMNJWzKo6v\neN4jz2AuiRTc2R6yidWCfEYksVXBt4geTRBT6uO+4VnDNPg3UakKd9UtBrPI\nWq4UDPv127QRqpUL0LUXHFgqojOe5l7bm+A6JVPJ66QVG1tw6eut/eYsHuBd\nhPX+nb0l+XljqTy4GWT1K+Rsdy/Dk1Pn1cP8rDWq06CWOX1MwCdZPCDrU09F\njjlt\r\n=zPqr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.10","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.10_1582437016925_0.7867799719926916","host":"s3://npm-registry-packages"}},"3.5.0-beta.11":{"name":"@aofl/i18n","version":"3.5.0-beta.11","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.11","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"102b3d46b5bd617df6b64980701d148d13849fd6","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.11.tgz","fileCount":7,"integrity":"sha512-SXziHcwvcJz79IujmkGbkfzsBXW+gh2dVnAULnzSglwoditUeCZspiW3I9I0PhpZGGgLEOPWYzB7nOHem6L4bQ==","signatures":[{"sig":"MEYCIQDTuhQOpp+Q2kHxtllKrohisBij04Az113reRstgR4NQQIhAMbfJtfCge6hDHh2kNE6vDVcB9ZvGwZoGrUBAaVKI+3z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUiugCRA9TVsSAnZWagAAtLoP+wd+fom7RmbjaRYebApn\nGhP6fwMz8WM5hMK8cQJ7bXvv5e8SpPq78TLu5sMeT6WuSGIiX8kp7gpVgAku\ndjjsiODBXYPSa3COWJSQFhME9r6WvUPKFZ1T+ClRaiQBAYn8+mWYsBpgfdxb\n8sMMIvsBdy7XVyH/CJ6n/FsywGrU/v8Kd/LRuJN6U5rOH00olmw1Nqe4AXKx\ngIqBOEmiq/aZIrBZY9LfpVOZ4boVvM7Yvr9yv28OCXT6VOW3v571Tg+j4OAB\nDMrp3ks0UGVIwpHRNBGbSBGjbkZzlLPpwM9aAtp1QJsCmhwoMCMLc6TJY8TU\n2LHvAhwEmc9UkhmwsZL80G/QeW3XvuyLULm9baKs2Du2GVSf/NTJKAWAtckG\nAG3W1D1O3Qo7HLryXD1RoLUVB/hUBQIuVVet8qcsHVObiwjhbjD0HF3rN9ay\nqvr55Q7vFtDAGFFsyKPdRLaB/U3QUl7+e3iOmMlmqt9FTzjO/875tHIHyLzU\ndvoffGRAI25QJf21F8GxunWmN8Ss/mcHu96ctdS9XhV9FnVSoCpxZkWbCU2L\nqGMHzUBdpS3H6vs1jxjJqKeFwOFEWrGY1usPeAsrOViGioDPODXWoCUv2B5Z\nkOx69xL/XVNxM6sAfCYn982JapmQsZ7PNVP+e39JXIqAwzajAd8AySshq0rY\npPHr\r\n=+cmP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.11","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.11_1582443423894_0.14614784619425025","host":"s3://npm-registry-packages"}},"3.5.0-beta.12":{"name":"@aofl/i18n","version":"3.5.0-beta.12","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.12","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"d4454b148407c90cf24e92bbe2216a08abe1a94d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.12.tgz","fileCount":7,"integrity":"sha512-rh7iBNALSPj+6xiP0SzbNtF9zPgqCBTKh8mYLT474cDtwlDcrYuCjq7pSJ93399/qFGDdvL7Qx29oqBIz51EmA==","signatures":[{"sig":"MEUCIC7fMO/1Js8bE/HZQ55DsI6LRAfAsfb8lRme2nUm0HI2AiEA0FtZTOPze4YVa7mEdsaUTXZz9h4Cat7wP/YHTYIFJSE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUj8MCRA9TVsSAnZWagAAPP4P/0eKTSNss2sUifB/eh4r\nRMzPk3pJG6KWcqrp+lbwKJQYAU1liLjkF3y+yVPNrUb8b+X885dr0G+w52zs\nHu4u8wj5pRwJUjZVy5rICcBfiSfJ5ypRnhxmnzlA8GJfVuBHP2D0XK2M18P2\nISDJ0bp8ze/deX4W03VirQM0z9+6NSXRVj0M8dhVP3thI+3L+60Aa62cJt57\n3Pnp47BLJhssFaoaHRIRWpd7v7krEsvAGGcvdR+XhT8kb6k6Ujfzy8wQnCXQ\nC/PkWaLAkDdjKmWk5eSBuHXaO1NcB59q+l8F09dgbt37ssqs6+njQYOh+BQG\nK8sqX8Fdiydh03CEtL1ee74ch1YvMABKXm9tk0Nl2TPlvZvVEC0eM2D+iDxw\nFy730YHy8QdgShSEfMlC448jGw3bscgoLSGskE9dF7M8wnRVqDcqjMTYnNXi\noOboS/LnK7RjJp7AVG3LgrUREFUwl7sf2XAxSDEcQkKv0I+HSOK3rNV+8hKJ\nrCdXXSCTgTVpto7mh4wKhssA4EZfTVDqZCa0hwczUxGhV0XSKSbEwXG7zv8c\n4htiul8IIvjHnrKwJsi7h8mC/4uh4/RiDQpw176mnfQMBbtVtHnzwsXzHqYa\n1HN2FiWeN0tIV8CRtJpoUwAlM85VQYp+BLHyKysHfmTfv0fVefP/uisim6DH\noJYv\r\n=rsQJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.12","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.12_1582448395788_0.9746957234894631","host":"s3://npm-registry-packages"}},"3.5.0-beta.13":{"name":"@aofl/i18n","version":"3.5.0-beta.13","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.13","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6cac14be5854833b4a9796e0b1650ad77561b294","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.13.tgz","fileCount":7,"integrity":"sha512-iYQAWovyMMAH5jDU6gGd6FWN3i3k2usvoNtGiYSK++dNxvgYxDlqNHyhNldQZaHkgrk1sxfVB7E+Tln5qrFPbQ==","signatures":[{"sig":"MEUCIQCI8h3fWyxJn/0cXMrjdHi/lKoXhzvHZec6zTEfrktxKwIgYdCckPpq1IXMRFK4FnaWPAQwN83d8/Q2PPL/3AMExuI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUj+GCRA9TVsSAnZWagAARK4P/jNUkPgeSsq6XKnFLDT2\nkVrOlLSkhT3QxfKzglKb4Auazdjpuel0olYtJSwD1n7cc1euNhk7XhuZ8yG0\np+ssvzgJD13KRr1Xm9g3HD0OqTB9DdP6tsS1cgwSjhQGg63bX5BiJm6N4FPH\n/R7RLICCB0qJgXYIXXLYgmgUBmh2R8WhC7CGmFV5RKuPwrUV/10dxZv4Z41T\nc1stcwAXICf8Cwyo2kKj+/1FKushEg94NYHSeziJ9WVd7br3ys9FGgzGiwKG\nfLErWAcm5PZy3h5fH+r5u8awHsNo7kU0TPp46qBPPJrZ+T1VHlv/LxR5sniT\neGlZkq2nXYAq7gYBca6Ps5J+36TGdCMtZY5gRMIA6v//3Mkms9Fa8JrtKqES\nxVWgG6C9YQLfY8QBkj2+JH0kgQFkqlnYog7n/uOP42XgQdsZJTVPRSi13P8G\n7M5H5oqox5UIUAvJ4vs3sqSTrgieGgRbEE89FXhNRbD/UkRA9I9aS8EUgD4T\nWdpxL5Ow8hmeCqmgP3TE0KGhDNxopV+Y2z5j3BYOFWxu6sIOuoUD+TJhObWG\nOgNzFa58Aure87XTU/vh94H9E9blTYrO7lckBsy0coDsEV3m64BVNcAf6y1V\n82ZI4w8u+g2oembhVxl4sff54NDvWdo2R1z9HhcLnU+2oQody0BvZx0tR46i\nFxRP\r\n=RrmV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.13","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.13_1582448518300_0.8837942043412188","host":"s3://npm-registry-packages"}},"3.5.0-beta.14":{"name":"@aofl/i18n","version":"3.5.0-beta.14","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.14","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"eccee7182497b04ac7688e457898f748f4866d81","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.14.tgz","fileCount":7,"integrity":"sha512-mKAbqtksMWFlZiMvU77yPpPKiRprzuoFCeXZJouFb0D/+wgOtyL1jK6f2fP9Pp6d59L2qoeBc02AkxuQWH2saQ==","signatures":[{"sig":"MEQCICGrTh28K0+pVnAwZqNXPBpafHlfrdAEt65hfYdUuEoyAiBj4WxlO7FUOiS9+DQYTOybz0uZiiuhadOmBYASepIgqw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUk0gCRA9TVsSAnZWagAA9LUP/2AMwcsG2+mKUAUOP3KB\nLv7Jcc0uvUwQeCEw6S6CMYqjIaVKNIV7VUO4/h4WRxq5Xxzogh2qJRIhgCsA\nt3PAHx3vEtl7yPMu2+Vx7SX9Sk6A3rOPdAzhTbhzLkqZ/mBeLshSvItF+BOU\n+/LVqzxmLT05paCwu8BJDCJi4eIkvS57fTsCMcnxduFhl68Z5+/1fqn8Nled\nHzZePucX6V3k321kI4NfCCSI+ssQisZHXlhlKjVxWGW4XZ3GvbliEZAnoVmc\nKyObfvWfHyp0C52YRtZAtbEmnblU4sKtaDFJ7M2dYLQ/ImLhR53Maa/QE2PV\nBrZRoiSFE1BOMGOVL3nEDv8GNMOuR+FzN/s3L9DxXj3pA16iDcsZtdC1cXuq\nMnUZrNCuP4ZODpIKcfzaxOHcp7lYvgK6xwB99unoh51wACPhw4k+pRcP27oX\n7wveZuRFNLCd0jU9KTR6lWIIZHET84PZRBG8jMgHGr6EPJiPtbr2a2dLm6dz\n+xUB3vKpCfD1xGKlpnCXpdexB2JJYF+1vrrthkHWxEvta4pa5OItcZ4kQk+h\n/uJ4YiD2DJ4DYGLKvOMn++1VgL8Xfdje1eIu9HmJPavysrUNx/aKLMSoWmsT\nTbk1DG1NB7T/582YBwzBIFoWzNjk61K7uTMmOjxTsjzx/B1IYu/8a9hj8HsB\nGyw8\r\n=89se\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.14","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.14_1582452000408_0.2866220600820488","host":"s3://npm-registry-packages"}},"3.5.0-beta.15":{"name":"@aofl/i18n","version":"3.5.0-beta.15","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.15","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"68e9f5752733c72e5cce7a15ea5ff721f0d1933e","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.15.tgz","fileCount":7,"integrity":"sha512-0dinWekNp6kDQtGACyuolvyVOvygZCSHv2K3gCpKG6ajStdDPskS4lfuBi3WT6Tc6GMX2inLyrLQg4S968dgCg==","signatures":[{"sig":"MEUCIQDEHsg8VZeDibSek+5YwBY790XcoB1TkuO89Ws8xLvbJwIgTb3I0ikTO8RF5078/YADoFduw6cK8nifWYZsU4W42ZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUmavCRA9TVsSAnZWagAAS0cQAJCE2tAcfJT1f9Iu/Atr\n96ckLVzaS1y8brBFmvhw1Lc0MHkn/0jtutZahe1yNTubwq+ixBlLwqDWAzWL\nYTCdYN/LXZWAvTa8PvU/eXvIUYfzj8a7c6pzEQqOGzyBaAMxMg5YQF2jYPI8\nWSGMPbZKXrp0Q9ysYUxKQ42b46Og/LhEju2JxRAvqRP0ViEiqjkJWd/TmGZV\nfnIbHzb4ZG+hxArYFtl35uatvI2Ub7ushZJfW1Z/r8jgJtTZt7l1TbQEerC8\nNuob8hm9z8rXfOGUP56T8Lah2oAtYXvwn4NxWkOpYV3w68hNVH56yjAkIgsi\nQjVaohJOepqSUPA5afOaWgd8I02BJVtmYQPipQ6bRLD4f5hm37Qs0K2P2gJ8\nBdb+Fjc1KKYgxUwPnB3dnj+4KA0gjk/vjg6AV7FoiGnxcfg0TMJAiHC+ohp5\ncyEL/idBu3eRwt3tI7o6hUISYC3htWI5dJpkLqhx3buG5stRlmF8p1HQ/Dv4\nmfH5mG0cYBYEba6mSLTJzq92FZMK1YyO3vtW/W43+C4p4gYUVIe21OdBqO4u\nn4Kib9RahK2H/zEV+wXUIxZxVEt5TGYfQWukFMaug7p7ytRxrcseTJo+S7D9\n0kfY6XEgXvioU02YKyMPm0EoWMehc/lNm2Esh9xGfvdhSltUULvp2uJ3exc4\nOm/S\r\n=zyq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.15","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.15_1582458543435_0.4162114768640557","host":"s3://npm-registry-packages"}},"3.5.0-beta.16":{"name":"@aofl/i18n","version":"3.5.0-beta.16","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.16","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"b733e443d7440995ec6115ec5796ad2ee1009b69","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.16.tgz","fileCount":7,"integrity":"sha512-wyCwRbiwzGoMLEOrfbUZZW6tC/YTbIsDFAuirAINgQxYQHNn/NfqW9PVZ0Nj0nYN9Qy7yfLgSiLki8fb34oPBg==","signatures":[{"sig":"MEQCIDBlZxnes6suNuJtaeH5FZQlT5IrzZUWgiWoCFSKmRLRAiAJSEqTCnx7fO+rjbHxjHrrsMm2dmY50DNwjwHDKC/hRw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUmjiCRA9TVsSAnZWagAALKEQAJ0O+/C7Mbz7/9T3tat1\npY8gvK2wVulZumsOJwyU+H/9ibsE7oF2PJGB17rhIYc3SlMjhqpv/+U8o3nF\nEUNgE9pDD20ZkejRu/bKiBGiuzzRkO/ZY8607qbsYemdW8Uv7XK3xWBpJAQf\nK+KVUd5271nJHfKfEi3L8RoMo1p08yqz/VLVKQAEqcYAgqzZIRL3EZZyWBhD\n7cLbrxvK6nkMDhSmA2gi6E0h27PIwglIFLJ82kOMlxodLozkrC+Fy0lq5Xmi\nvuEK0glSZltZPrAXgZyiYkS9EhOCZqeaiDKXNEiWl+wLXY3APpH25I5NCbQx\nzdbajMHAbn65BfXlM6d+/seACCtN93tnbcRNlJXmTBjZPAkyBObuHToxVNiF\ne/S9c9Ct8R6/AM16AaLCH/bpkFvntSmCcUyYppwTaceOp+e3F6j5Jf89BTTR\nJzILi1wrUYi12QO0PB2GneF/HxmuafqvjIriz5UX2ceWRkt7R/qq6/hMbxB7\nXWkLVP/k6IdcAFw+lGDbYdbg4J4VkvBd8bEMvTEfHznI5LIPfBASO5WchoDs\n1F32HN5ZA3cQ3mYtW+1jFCWmX31q6nxBfpiAkQfNm2CmN5Skcd58wSMfshHm\ntg2kplJRJRIgMo0cmroOBQNwzAfQKvSBa/xMvW+IODrjlveuIUFHEp6mJPM9\n6xAz\r\n=7FyL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.16","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.16_1582459105842_0.022459760374739846","host":"s3://npm-registry-packages"}},"3.5.0-beta.17":{"name":"@aofl/i18n","version":"3.5.0-beta.17","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.17","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6e6d6f148e54bc25a714fcc3a23e2bc93d85de94","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.17.tgz","fileCount":7,"integrity":"sha512-lf4G4LO1NEPFN1HLQD6MAIsBsUKATFXrHhS08LjN1NuLmC+5g5RHM91Xu/QzAFimalaKjfplh7Vpank24FrNTw==","signatures":[{"sig":"MEUCIAD4nK1AbsB9VOZeW9Vw4e4xmrzFR94Q3iXyJlrvjnLmAiEAisXgpnnhUnvg1pajU/oyndIXzAW0M8POSfyafPPgvCs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUmyaCRA9TVsSAnZWagAA7qcP/j13zvoTIatbZxtzPo1D\n3eHFnLHwNhe0xteDEiroNDO11CV2SQbMpidK3BbZn8vkRVVILHXC5NeTJALt\nwXH4NI/JAEmzU5CTDm/r1AoJv9cer8leIsDV78BcCRkP8mnfmvdY1IiaAwSE\ngI89sCi89FfpFgJElZ0YfoWQbDQi0ihI7zpKcDEIcu9kJMhMBxaSAKF4Q2bM\nED+5y+XdxX9n4sXVWD0lvHiM+CM5Mo4/7L7WUKZpMSwwpUvm7Tc8PeQTgDWK\nFwh31O+XuIByerD761ENjRamWVYSWeuRGracp7KLMxnSYVlL3jtv8q9jCtYv\nKHC2FyMnAUtZXckj4rh5PboKdmH12QkmrfAFLG/BY+8D3CVKLuxEXxcaLLdA\n4/NfDAwa51aQpiW13R3IQ2ql5MaHtCzwF9UHBnRnwFCGgSW23gqljLXQ03tH\nWhsuUt1Z/5/wHID8ZS1ogJ16VTezXtLcCkZ6gGfcLJwgekNx02XRy12ljt4v\nhS96KFxqxYiFrRr1lO+8Q/KkdWjUJsEBPgYRr1D1rEwOu7S2J8hsNhX56oFo\nmL+OgPIBXkaAIxgel6ktCvacMAIDc6yApcLivDrnnE09wvLQ0g/dYdILa9OY\nDSgI2/5VhepyswAjSh9/kKzJc798ZEpkJL2gKhQ5iZP88u8WJz318ZRNq1M/\n/MjY\r\n=KVxS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.17","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.17_1582460058239_0.18022013114231972","host":"s3://npm-registry-packages"}},"3.5.0-beta.18":{"name":"@aofl/i18n","version":"3.5.0-beta.18","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.18","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6b2a0f8721c334984398b0e2a5d285e1ea3bff31","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.18.tgz","fileCount":7,"integrity":"sha512-gKi2pu+i/dQ92RKC5aFYdGxfLzQd3ITHP95WQtJEnMRKJVqmQ4bKuzoMmvmpj5r4CJ8oqtwB7syIV8dCGTCWsQ==","signatures":[{"sig":"MEUCIAjo5Epdh/m19BFPG7Yut/IYNSAsS9/iP/MxcacyfcQaAiEA12xSn8oxI/HDStuLKNZao/7sgw5myT5Z+hyiVnmJV78=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVJubCRA9TVsSAnZWagAAqoAP/jWMVnRD/mGHEHLBKjL0\nmPIqhk02R+q+StAqFAEyYyBH8BD1nf+GRpAaOcBDzRDKMWf1u7H8GhwbvX/V\nDfhB12cF1UHhMTttx4XBZXjHYRDFnRazxhKG2yW4wJwKAcCHSqZPbZI8L823\n4CryPgPmRhEYeHHsAQqO+36oc/qj0jzrJ2Ycidl93rijPzAqg6tjSha0cd7n\nQI/u7HH9FZLldzQgq8Ol7WJrcAan6TenNQjikfbI7ENoVpfhr324Q38VHbny\ns5sBKkeE29kO4DyqJZ6HQC5CQslxuzhXLVjl47p8H2qFK6iE8YlFLlV1jt9S\noZ7w69uJdsIc/VN3h5N2h/ef61XdJqfuC7VyKbdTKgyJnnDqkDfYSrDFqaPD\nZ0m17oegAP0kvcvUHj/8FcDMGAheMZ1KEw7m7fVCqOInsohkpXyCZuZ5NP8/\nkLvCL6MNxkWQPE8s1v3e9r5LypMzKlxYRC4pyKUt53dWwCB4QsTa5QBZb2Ea\nMj611gO6IBzbscLZ3KEDmZP68W/P5XFOVNE82SUPnZOP5hqHyFW5Aktj30ho\n/eLedsG1omUC1k8S4UVY0GWWKFuxYjkhqGXsiYTkyS+MGrwpL3FjUvDMajZ9\ndOeHXJ3hUqmk5gLnTItY2WLvvZ2luruAwcXkvm7btTb8EFaBD9TuRw5R5IIR\nxsNY\r\n=eii6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.18","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.18_1582603163214_0.13480924822365714","host":"s3://npm-registry-packages"}},"3.5.0-beta.19":{"name":"@aofl/i18n","version":"3.5.0-beta.19","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.19","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"ba8441d69e4cb0913d3158ed0a20a4e78bd01456","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.19.tgz","fileCount":7,"integrity":"sha512-emwGMJKkmSNzkk47io4s+Nx/dEy+no+8noulm4Fa9Bx0g86ZQuDzrTpDWwV/oOC+0F6FV1uqq/AhpUNwffjiUg==","signatures":[{"sig":"MEUCIQCPvN9IasHZeK1Yx9o4BZII1jAq/bGelKVIQ9SNrMximwIgDLryIHhqKbiU8ZZSTk8z59ijXDX+LshmLnL1prtSqaw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVbRLCRA9TVsSAnZWagAARdAQAJtNxIi2g0+ZvnNm45E5\nPHaGZtH53cu+LOqbjzwj2WJKo8AuAeVMhrmWoeWrPhXE2uvlW27Mg7F252hw\nMiKoXFXhvXGolsAbI3rFnuT5mKZv/zi32V5h8nMJaQS2ZDTy3lQmDFHx50Rp\nTBHZxXV6tr44MixYI0LGHvxXUPpXffAdjeToUPv5+4t2w++XV++xYTfYK/zt\nCzBj1VyCPVtHWLSLdAJggBySaiLL3vMtgfRFkpiMUha4zUQXX/ICUvsJPfgM\np0ZhiohMWOq4TBVpcyNu5Eoa65Ve7uHuwOvbK9yjxdwL+ekT9QBAJ9O4ZQ6x\ntm7ideotMH9sOOLzxPnHFZGfgPRumit+05q86G4GFgIlGQms4JAdFPrjUtpp\n0jxLTFvSfe7lVMtJCKg8n58mCJ3WyJu6aAbbj2wSWKWg+jnp9Jm1uS7rgG+U\nGLdMsKdDarG3OmjJM4dCXQYWfihs5UwF8fPDEt7lLJfOONAIMps6IeV1IEvI\nMaHRVVzZjIwbO8IOYMOsn319edFMT07hx5S4iCozDYmsQJp0SXnLQNf2yWz2\n8TPp2lUNO1qww4FKW3oUmsyndVcubVU6diM0suF5HxEvBEM2Gcpan3b+URKk\na5nyA+rCWlSyTP+Tq4uuOZJqxL4zp02ZS48zAs8s7tyPqyZjQotOvyS2MWFK\ne62F\r\n=uwYF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.19","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.19_1582675018525_0.8677467919997386","host":"s3://npm-registry-packages"}},"3.5.0-beta.20":{"name":"@aofl/i18n","version":"3.5.0-beta.20","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.20","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"b8f2c4f7f1ab1dfbd30560d5e666b31e382b7b1b","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.20.tgz","fileCount":7,"integrity":"sha512-xMb4y2KmjJ6U33pQIfVuSu/d8YpK3MtgKb08EmKmDCJpXoXHOi8KPAxiPeiyPbLGLRCsgaPdZ8Vj46rAcXyVTQ==","signatures":[{"sig":"MEUCIQDCZuHHCj2nSnox+3Fo2dsITIPSvaeQNZkFNdG7yQx37wIgcGZH/1PkNG9kMqwtwpiGAqj4+0zRg2PfEO6Ux66lKdY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXZU2CRA9TVsSAnZWagAAvaEP+wZYEVAdjfpJNlW1rGCd\nkoztn6LFk8fITwoIrPbMzZo578QpXoNuecQIUTAY+gvmGzdgisu7zISPJ4A4\nneUMSuYTAGDEqxke5lUGe7ZUeBDtgoV7rbOChBrEBIGJYI5lDkGW/Bh2e8GI\nfVVLN5zsie+6EPsWAosOtAjE6hc9t5mhkpfXiW5q9WqwgVURtl8W2BpmBDzZ\nxgBRnam8vlvnxkw+VjzFHr+0/rSZ7kGYkR/wtgGMW+/8nzk8gotjsNY0Mb9c\nBL2Am5In66FiWZ4VVEBezPKCi+rHtO+7u4bhDvD6a6fDMOWfGhcIiXCivqQA\ni5qI+SDNnKUtU911IfOVJOtG+N1QZX33hwf7hSaYxGgRlBUpuNGfWoWaaXf9\nt/8vU2LQxkPdTkBjdG043OdZWELpcpCTj0X4phVnitzcs2IugFyxEY62fa+z\nlfLDMoDxXatEH15NW5cU9IWUDQ3/L/NGd8i2ll3l60fenqU3mNU1JAFHtUI0\n93/4EtTQKM2A/MwK82xO+12trOngPqS5RRsXKKbRqulWkZH9Anl7O4ckNol6\n6MnbCwZKs1xsQZiIcp6YlRtSbqGCbb6i1ndGFq81anwEJWiqcSc6B1QN7yNY\n0+ahwZ2Aja6LxA3ZkxtSTf4Zz9P8HcfIyUMWV+vrvmwFnnWE9FiB13GHVfWg\nm7Qk\r\n=Jy4J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.20","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.20_1583191350126_0.06757769370352107","host":"s3://npm-registry-packages"}},"3.5.0-beta.21":{"name":"@aofl/i18n","version":"3.5.0-beta.21","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.21","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"502b5a143c647a42958db38fb9181af62c424878","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.21.tgz","fileCount":7,"integrity":"sha512-bu035vFUP5htlovJJ84FwDTGCMwCEsl3sXEyRh/TU5b9txfm8RdlfMQ7qyQ+Uz3BjoWLYWbijmSgPnSjOJvpYg==","signatures":[{"sig":"MEQCIF7l5R8rRCDPP6Uq7/hax9mr38wVmsre5AtIAG0aETdgAiBpWfelGNDDdBBuA1gB+0o3BHK9a6JkYM8z7UiVfmJxYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXZY+CRA9TVsSAnZWagAAUAEQAIA6vhO6BHIvjJBdRLCi\nzJxKMTEV0keNkXySAkjpY3fya+CvkiYhGc05O+XfP9tYdmfETXb/TVEQsVZP\nOtWMYkxdtMFvsLOqt7JDMSQAgATAACvmq85uiiIDvliphTJaPZCJOIL9uVTE\nYExROnobC4JGljx4En7LX634Sv18PGk4ptjV16DsTUkJKnCdtTHcKsfgTBr1\n/u3WViJ8KWTkGLk6ieFQvTfzcb5A8DgObxGDIyNjQ3kdR0pqNVNJyaNwajvp\nYXbQIqWUVZfmbLK5xWUOaQ/+q7cufh5kdUhzG6FfFLEMe35HJ4O3ZyhrfQ7u\nStSha9G5Ed5v7gr180J+7JZFJayn4KKU7UWry6WcNPHbwizXH52eUH96z2UN\n+0NJwVACWGqAeQwRUAINXPzTOV/FmIW0OgFNiNdyjpPlDxDjS64fbjFEtTcV\nLbruQ6vR2O4OmyRA0lyy0M7KlCdJ6FRVl6iBbPqMhF6uypj0YUE87ThqtcUa\nPjjXsb/pEeGAvp5DgrZJgtPVSDoQhjbRX+mNHJHvn9u63i4brYSJ6rsq+alP\nX9FWYGF8nOn1W2hybuhOUU/tk5syQgYR+KkNqRxtCycieWy1XrZziztYf6uG\nCOcGVqqJy2xgynj/eNR76wCO3vG9oeQ5lyA2wQAiceS6T6Tay2XOrKcxd83Z\n7DSq\r\n=Njoi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.21","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.21_1583191613805_0.9357066503305038","host":"s3://npm-registry-packages"}},"3.5.0-beta.22":{"name":"@aofl/i18n","version":"3.5.0-beta.22","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0-beta.22","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"db300d2d737705aaafc8a86320c2b6a5307597d5","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0-beta.22.tgz","fileCount":7,"integrity":"sha512-zodGcvh5y4YiklLDYtkz/bM+SL0ppC9HZgazp/TZ68rVdw7rrc4mcKbmBIx698pQhwxBvccheOrtiDchbeSddQ==","signatures":[{"sig":"MEQCIEtiP7PNM2AEnOqi4Yyj2a48eEdrigEF2kmjFE09D4VfAiAvJo2XwtOL1slfz0yEEAktc+bQ0H9rCUrwMTaIM8UeTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXZnPCRA9TVsSAnZWagAAbq8QAIfzoDNafgWF/RiNy25Y\nsyHh6jBJLzKjivbzbK1EzYw03Kc4WZYuZ7TZebUrZV76ABqZ03DuiEx9x01U\nqrHJkbUo9a5yRXWJ6tEvnXuMU3YNsqrDEbBBqgZoHz2ZPc0/KO8q1P4zX4XR\nFKoUah9EPMKaTVwfZUGL7LZ7f473Sv3WcTlkV4oGdwhlJlp+j/YRe5ZDiyCs\nD/ActTnBPdo1UVvEJjZIE0DuAIfaKlkELrtsjt57FA+QHqJDD04EoBXnMqE7\nDi9RGRus1mQkDiLxt3R2MHW68N85monIIbe3PAnR1NYumSSgRgw1XSPiseZv\n1A0kKcZvPhj/nWp2Q2Df4mOI0dlxt4vF07Xxnz8wNhgvUH7SiJ4FFXVMjaq7\nCv6VqQuaQPKMoyEKxzSr8urRHXtsG1wUFneoeO77ijbudH62TOLAD5KL9lqH\nNBiRSR7HnKIwgFqtM59yStIRiEgw8+KJzPO7KxJOLtI3wymvgjkOadUs5P6w\nLwqa7RftUsynko7ufqQdYr5/ir8rnulVxF8/KviuY1/m9yTmqVXACKMy8+2D\nTRXUtpOSJlYLg0j/pyIB5dwlC0Yp50ooRwoQUAIo2QYR0U91rFPIFvFeF+7M\nP1PP7NcflqfX1RYdqr4RSytq33upytZpJnAvHJ/dKwDICFJ0npM0A4NYGK83\nmaM7\r\n=VYJ9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0-beta.22","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0-beta.22_1583192527418_0.5743053864275218","host":"s3://npm-registry-packages"}},"3.5.0":{"name":"@aofl/i18n","version":"3.5.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.5.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"289bd1db24c22455794559b23cbc0d6fa4f18337","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.5.0.tgz","fileCount":7,"integrity":"sha512-tdgP/1n48njA97nIi5W83yFWAmvxLtLm8Jx2soOKKHMwNHJC2Fc+0jqHgTfEtTIcTUvItTl7KBMdZw2RHJYRDw==","signatures":[{"sig":"MEQCIC/70aAxE4/ll7Z8C4PZhergWNfAhogE81wK3tTU5Yt5AiAPewponDpjsKg4HvA7mtI9eI0YTMctBH/GA3yrrmwVTQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXZ6tCRA9TVsSAnZWagAAX24P+wcEDnlJla2JrkKnbH1b\nVwKOIRqa3qLDHoWqa+IulcopuO3xqPmLeBN1XlnJE6tA72vNyqtTAljBV/J/\nUYDGnlXw6VjJhBxqT7Lo2B9754mqerhhnvJUuqq/wKxeFflS14FeTFviDLGb\n7sL3jqhg3WgpUbhRqfAjn6szlrv0DgMLU93uAmlpKlxy2k/b1AR6LLvXBJFb\nXlc4h8bDp8K4c0NklK2tRqz19RKUfQyldGH6gWkGvuuq1z+lzqGPo6yRqpf/\n5WHFArH0uVOH2ESjBh2bgFOTzKqlHt3WL404Amdv3kLcZ9gZ2w00RvweFEGl\nP3cb5TrSzVsMLLzEEzZ+h7+zXvpX8h7goy/IvVW8ms2CBQW/wciGCNkEhAY7\n33h5hEnR/Z69HNEZDsl68l9WNfp7Sbu83Vk+yCmEXa7ub4ECI1azx5Bt0dB6\nF+BDR5BjbvS/7T+yl/aa3Rjn0hidN0qFuGqUWjinp7949kVYcZnfxee7TRAb\nxBnIiB3FdXAoz4CtViMsLrg3r7BuIT3jT4XBLgVj/B5S8FprmQs99GXfDdap\nGjlEI9rXXmtuizBb4EAoIPmIQ29Af5Tr5xXkLiN32dmHM8rfFxttIN54LgRH\nGvHWcgyAFWORQDPl89L2N6PwryIMeIHJyeQtHgaDtTngYAjPM/hnzsS5pSti\nknMN\r\n=yoc+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.5.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.5.0_1583193773176_0.7475974313964497","host":"s3://npm-registry-packages"}},"3.6.1":{"name":"@aofl/i18n","version":"3.6.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.6.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"eb3103253655a5d492e2ce7fdf81bd5b32739565","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.6.1.tgz","fileCount":7,"integrity":"sha512-G62LrlHqXcyPjUX1nHeoGu2lugKSSiCuWjk9pCOiHjekMa65zVJLRH5Wpso/XRLyu6zA/+qCoggPiGZEkVDuaQ==","signatures":[{"sig":"MEYCIQCuqN0XlaOx3v8jHF8rHCFJiROl5QTwjOK5pqD6VEyppgIhANGda0d+s0zGvK+ij+W0DXDzr4k/XSpSfCSdoY7JPOxN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ9+gCRA9TVsSAnZWagAAbAcP/iyrXMK4aS1lSQEFLyD/\njh/nm0QBSC2q0TlX/mjM1GCB9145U/fpopg71RKCN7l3SLfihvGi5OvSiM1t\ni0ury0qoWjsxd3hLtXjiJCFUTRjZlTmlM7FZVtSBTTaqP/yjD/S2iTkle/fV\nnuPBJy129Pqw6Cwq2oSzrOEbBV8dvAuZzIJAitBOgmn9v32Qal4EAsMlvi0y\n08NxL+w3vZq+iOLEdlE36e9Um81LPWe/Gj+AkNcKjBZmh1/fAoSGwyc+Bd5X\nRQpGPc1g+D06jUUpV1AGorqhbEvgJGMr3U4VfZRxnxNt9QtYrAhJp5d20+Wj\nB9woj8PoIqXshHiRVNiqOI1+OKGkKUWEfpbrzKzfd0ETIb+TS5a0j+GKIiHQ\n/48/DMNrk1y5h+KOb9A/1pKalSaCkRyDbQ7MBwpBJP6fNjXUBrzFCoaD8dfJ\nXPybqQ26rEgPR7Xa6V0VU2N/gq7bKnjQTjyURcDQsCN4Jg9XULAx8gKo3LdT\n3BsIi4E3aebC3y/88NTaYu5YR72yVd2geB+KMp2YbdGuB/r8ojzNukfqXT+/\nrau9HX7I9ofl/XIEaCK0AcR3LKfb3GbnDujsx2yUb8CCD+lpfdtnBk7e8Zz4\nw/XlnEFvLHyhjlpFy8sUam2Ggj66EAl60ZW+x/fjIhJ2y8yCfuwUgv7L6BDl\nhSKv\r\n=ac5V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.12.1","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.13.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.6.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.6.1_1583865760342_0.195683974816816","host":"s3://npm-registry-packages"}},"3.8.0":{"name":"@aofl/i18n","version":"3.8.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.8.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"2884d6bd16a51e4f030baafe6a232c0735e4e4ff","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.8.0.tgz","fileCount":7,"integrity":"sha512-hH8NZ4H5+7Qi1FgJoRV3zDthpL0bMddPQfj1lgsgXfpfnt2LxMhqgbGUN+NpCZWbZ8IlTNbcnqiSDb8yT+jq1Q==","signatures":[{"sig":"MEUCIQCqzLIjYjS2FOS5WZjugk5Na3Slej84HWgnJ9b7QYVBNQIgWUAD3julO/5P0UNkvTKb9Pal3AJJXTNRatL1pEaMuJw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuva1CRA9TVsSAnZWagAA4qMP/jqxtHBuO/+tJYL216sS\n7gjXR9XIIS3K8vPRAWBPNrY/5oV9Pr4f4cDd2x32MNgxL/XfYPl2xHfYJbZR\nvL1q3zpMx+Zm6GXOoibJaqWZBkkeBgZq2ZibBEOmW9P1+bQmWID/AixQiCOp\nKt+97WXsQ2VKbdxioX1E5G1Gcfo9wK15g8ivhRcm9jDwb2ld4jm1xxkdsvv3\n4XGr1/6LCo4t5BwsDaeDMlMVvs7ayGlaG9Hq46A768Efk3eU5RomcVoYDanv\n//XgszFzKOQo7kei/JRc0EFhBSv9SO4Qz7jWqwIH7c6PYTYIGIC9H9NaCCop\nvtZ6Qpqzdj6/aolF8HMCEjQoLT1PLjYRUHEtW/OepEXsJE16cJo1OuiiwfkQ\ncpWaNDKx+fqzrs7K+2bBQl4/DS2mICf2drX1MEluBBhrXyjNmT7EkMqxSL4I\nk5US07VP531s6+IkP4hyPKpJZaXkSDLjKlE3e+mBo/z2BhyFTuxUkSmvPfSp\nRa2eCQzsEURSkdA+VkUYOPrHY328KybGKjy11riT9WdfHUtNXDxMIGizs5dr\nfadVmdgPU67L15iGny2PUJdNeBiyFb+ALNARv5Ew3Whe0pDdqBxByO6BjWB6\n70oe+uMpci37jw/afTGhpNM70F5AIaqjKkn5fPQspsGiNDxoBtqyRXSLMR++\nDxMi\r\n=4v0r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.5","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.8.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.8.0_1589311156777_0.5523025710477414","host":"s3://npm-registry-packages"}},"3.9.0-alpha.0":{"name":"@aofl/i18n","version":"3.9.0-alpha.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.9.0-alpha.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f9fe843af07c611ed6c53e953ee0636015da0424","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.9.0-alpha.0.tgz","fileCount":7,"integrity":"sha512-7CmzFa8smx6TSCGf1cfqs1ZPndI1SXJosz+fyad/Vb8BXiO6CGFU2pUsVpb0EqzusM2gn12CACk4j0uB6DUD+Q==","signatures":[{"sig":"MEUCIQDkq+z7opDUc8NmLry+4hkWYZ6rcrINr7OFMIpT6ao0yQIgVJBM2RZCd3Znlp3wOUjhDXKg7oOpDdQr+0lPqm14iH4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25981,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuvkkCRA9TVsSAnZWagAAe5AQAIXUkNd+fUNqOoZJ+Ui5\noic1A4oTGwcNmoFW8gH3j/M2ANOQA5wACmWLNAlLJWcE/ZQu3LmlrKATy+my\ngurQiiOPVmfsp/UBSnkVpelKoR9MJf1RDH1hBhJSM2zu91B4rbM2HoJrdYXS\nFnjeMVykgEeRovl7svSkh9U9Od+yn/QtAy1/XZU7Gsf2UMTiWVgTUdM3EwFt\nt45qH6JE6PzmFObDQWHaGVNzU9YUPgaqW+QGHURTMLDCMnfEiIT3fZHr4YDP\nQ0Wi3qtmUyuFw1VLCnQva5YjRL3aNPBQ4aGLAzeZxEKtuch91he6U1qCf3XI\nFoS1N0bIoI3wOGNkl4U/x3Le08gGxL30ko8InN0u4VOd42Hw0Tr+m/bsEqJE\nDc3SlNTy2UXrsFknIBxbYrdJsDhZv04EBTnknfl3s7MZ0ZOXPI/XMrcSjqzq\nsjwG4D4819OBB9rC8Okm/CpsdHGwIQqkyp250SFIxzIZUQuaDOpquW2AeRwf\nyMmduDVf++F3AwmJJiKlT0JTLdh0MG/0BL+1uzF8GgI42zG5OT4ApQ1beSlE\npoqG/c+xA9NmYxWkL4OujDp5RYn9guV4oo0TRFvA+dkBtuzLoP6ZZcsHE6BB\nMbMMnYz8BT3O3/wpodmVdNmGBURP7P3JEGoWmXw4ZpMeDUJUlrLq/M1SlGKa\ns2eZ\r\n=V9BA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.5","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.9.0-alpha.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.9.0-alpha.0_1589311780365_0.6429618701694986","host":"s3://npm-registry-packages"}},"3.8.1":{"name":"@aofl/i18n","version":"3.8.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.8.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"d1a081d34ab07456d782359803f8392cf2a41a0c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.8.1.tgz","fileCount":7,"integrity":"sha512-xPGC4UCqRNh5O5iucmjw4g/BFetm+ZYVOX6QbKURX2lOTesRQFYI1nyMTjczZVtgMZwbL9gIdftYYkteYl429A==","signatures":[{"sig":"MEUCIQCCdkK2GBV26/A/FISKb3PgLyVTUpd3VeTXlFI47zVuWAIga70luipCTedYtKBQVbVh05MF39O6rCNVTMUvBMHMUAA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuvutCRA9TVsSAnZWagAAbCEP/iOmsTa9+JHutrbQCOJI\nRUpipH/UG5DmYbb9C3Wymr7imWxOiAFVLQFP/sf1ir+86P45SrmvvW+JsNmb\nUdmeVSZPj2D6NugR5MNJpowbtfDcA0+uKFNwMQavQJACZziddmuZIsu7sH3/\nRgrdkz3K0ORMK6PMUws8+nhE9gmnovROrkmzTl0KOqZDf8I9x941OA6F1JHe\nOy1jkmkDfMhA7jm9eYZagM42xqry2leT81n4wh5uIPcHpBVnlSBs08UxcvF9\n/vH0fSff2V5bZswU75348tOktwWc5cIl9oFGZ49veYouYLGkPCkCu3YQSfZ/\nsRDJFzXkHIFvddlPnBW42QGuJGF0XcxAJpgok8AxkXBkrsTLHcuzA/1jQ1OT\nin9jg3Okb0PyLgjrbOm4eoTRSrql6rGneHLda6CqfnfobTbmJTlI5HgwSU/C\nrKUxv4uexqh8IEyw1zR0VysUw8oC2aHtGf36kyU07p0EYBwIIVYE3qfa23S0\nH+g0d9x5B+9hLN4pSNDfcYLCnJ3NLogGnUA0VfGSinMKJpUH9uH/hbS5Qngd\n2khJPztgMH+rZ+XS6tH9T75xwPBZyshsKQP6raC64JxlDFBA78PYCa78lYyr\nOvb1tzieED31yhtAQi1NaoqaFi7tuvBPfa55KhgMrSzs4IpC/JjzAD1KyZvE\nHF1C\r\n=r3Rd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.5","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.8.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.8.1_1589312429054_0.33469083895243834","host":"s3://npm-registry-packages"}},"3.9.0":{"name":"@aofl/i18n","version":"3.9.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.9.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"043309136364a5f9cef3e1c4946f5a876bf822c0","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.9.0.tgz","fileCount":7,"integrity":"sha512-R4PdYwPhcz0CgqVlauWwD8NQEtCxbTMR7FsCu2SsDVEKHpfzsPjw/Rsbl9YEiKJzuJ+ULtCkYgkVUiXqAv2FJg==","signatures":[{"sig":"MEUCIHojKnOpvc0c+uANfZsoRi4xCdbzsZ95whc+l8DTDuoAAiEAjQ5GN7TzfOT30b1NmjxPJLRzNizobxbRsN3iIkZkQys=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevtgeCRA9TVsSAnZWagAAd6QP+gPc0/e7MgR8e35Yi05r\nyERcV9o+w8bmJ6EcYHV9rtx6p8UqBMTvF1mMQD4UV5OdSGwBhm88/ByBukzP\nBHXaiWPxb5mYloSeOlbz1e4ay1EF+S9sVRN5fjnJQmIkU/mz35WKTnJNq0uG\n5VxeYe7vdc9UIZEvTCfaoDqyZeudEgMLfOfsGii1S7GTPPydqVAeFCif047g\njioEh503H405rxO4spR3hrbLSdjJmSkrYZ0w9TEw0sQncAlCMdV0011FkcXH\nx1mcR8xtBNnoZ6Hkq6cG7uL4Ozom29gocRR7ERSzHVcfX30bmCiAS7LghH1x\n3h4RNCJPvxtcgRbCbnvSfPe2HTLiTXNITJMV++EN6X8lmXjI+8c6att9YoLs\nC8+5A/m6J693uSpFKTqPQTqDLnboPvk8X5YM899cyUpZvXnEPdQcrLEMVqSy\n1bF1AHFyAncL5016IZb2A7RF0Y8tyZNivdY+3KmHMa/1f9Rbim73FmvAS7R7\n8iTIo5jtI1hIE6VJue1ZUCKUF709/GzmbshyxBFM+zQw77sD0FIkUlCGzXZO\nbE+22PifAbEC1L+ckaQVyhEBuUOjVBMDr+4xIIFF6kMHGFnzP5iz2D+reGWA\nrLZ7btqkW66EzlSM5i+L1sZWEENqy1zc5TzdCocNCNd7A4eRTPMoMXm90sas\nJFOg\r\n=KeEV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.5","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.9.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.9.0_1589565469944_0.14484358741045122","host":"s3://npm-registry-packages"}},"3.10.0":{"name":"@aofl/i18n","version":"3.10.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.10.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"d9b4e8bc219f228ac282826f3f8f035938dc07af","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.10.0.tgz","fileCount":7,"integrity":"sha512-4fpk2a4+t1P3dE8eF4LU09pMXnpCuILj9ypfhN51G77QK530qAaXjPzONucW/mnKLE3707Y89QlmlfHP68mgYQ==","signatures":[{"sig":"MEUCIE/D4BY+OaDAm5IAr7XIWAHVZdhq6RPxLTSfhm3lV7gSAiEAyUilOJ03tTZy7JHBnEw3ZL7fJ6qnv1wwKgN2c86NL6k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevwZkCRA9TVsSAnZWagAAeYoP/Ro8Sbw3c/ZiLdwY97Qs\npiBe8QudrWON7FSyAXT3ehCWACQv5oVFcEcqVzSy3czRfrsIgYbg8SewPjwj\nQc6cBRWuAaugz8gWOEf/FU1f21eulUi9Eo+o5FTJ5C0RmhF2r2YXU/tAywGx\nhV2CiuLOXCgYqURI9b56KbcX3ffO27Q/MRTWqVHFW0I2QvoL8Px4/gmTKB/a\nW0ES1XpguAJJL7cU4rA4FirvUAlsIQDZOqBLFubv6WKwqRXYUecuQDPX8Abo\nld4JNWe5rWIVoQvmw47kX9wXo9GN63p7ik6CDtu/ggRtlE3QMCfL+d7Nnkeo\nWDPbdh90fFFEC905RBSiOIGmjuqPELloepAGFj3kDqhx4A6+3iS+mOF6GtoV\neP3ZcVEa3U6ANNrGANW/zK0hoDmYF9YOAVnVO5DdZ+7+WxNntmQN8BiLxDni\nps94YPQCmf/ClgKzi2X9A7qokC70awxoygUVPkZtW+0izibsTWJWOeywKD/0\nWpKm8uKXOMy2dUkCrMYmRQeU7SlIcbhd/sINuuXaI5zGeT0tiiIaKvlJ1AtM\ncbc1o2/Cd9pWl66eXT6MX8GDjWcC4bXA3oEu9fqOuAGseOJowlTl2gC8Ia9P\nBZnFPutEHUxvTmJNvRYpxIy/XdKWggMEiq7mG+5rcEYV4bhXkSdcQbeudGXF\nRx0b\r\n=QsqY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.5","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.8.0","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.10.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.10.0_1589577315733_0.1458403240713977","host":"s3://npm-registry-packages"}},"3.12.0":{"name":"@aofl/i18n","version":"3.12.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.12.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"e0a8f4ad742ad1c287f032f9f3717724da3dadaf","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.12.0.tgz","fileCount":7,"integrity":"sha512-X5mJa5pmZMxJC8YTgFqTo3xq7K/o7NfUPd2A9Z3LVp/EvtnbyxtFRcObHgnR7TENfCmn8levw7clvvGpQoX89A==","signatures":[{"sig":"MEUCIEXdyA1n7quiTE6imEghKKNfZcwPh0+Yae9p+wHv4QtUAiEA2qc25M8F/zaQY0dp9lriB0h7vC84/7RRa0i8BPGW3zE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgB3LaCRA9TVsSAnZWagAANPoQAKJbCSJdaqcMrDsjEGEZ\nKGihdR7hg+mra9juIg7yacMJMroqx++UWvj2y1hH7ihB1eAvFrnF14YV6Iis\n5lN1BrrQkdxSGdl579Wr5/+ZZdZfk5jKXnYDSno/qhGcF93yQCLfOc83rwi4\nXAOY5ksFYMQvOXWoUla2dt2TTd5IourcGt8QTwu8Kwc7nubkpyhzgsbvuYVv\niwMniM34hSFLL2YJ7o0NEkTLN+Q7ALGbzxNsikbMGVgRGTXPosK3llbEk694\nBiauu20s0EYmH9yauUzhK8Ljd5dtPmvqD0kfE7kHiJQbqZOWy32gAeoHwja4\nKp1eYEXRlM8acW0q1MCXvsxb6ETMYRMwr5aOdUgNjawIVpESU8y2RnHHGd9m\n613GT8Gt6BxT6uKuklSl1Hlt3qoxkPj72l6f09NrStDOP4ulaOMLxXPEma/t\nbhH93WqP/6m5OUrn9pu9WiGE0E9vqGkeO9z5L74/hrTRPCMjnQnOulfYewZq\nJL6D7o/WorcH1xJ1xoEgnBI3QKtUpYyMBbZGviwFEDKPkkVEZxYIV6WcoHEh\nHS8epRX0xUOk4sV56Vpbu7ldTko3lcMSXasqJ/ls3wJcFsjJX2cD4M3ZsC2q\nli0IapFRwjD5yBW1BE1HlFi9wTKwxbvU+aYMOGIhk2J6h82oSQanQ5xjy7Kb\nip87\r\n=40JH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.4","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.16.3","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.12.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.12.0_1611100890313_0.775809963425298","host":"s3://npm-registry-packages"}},"3.12.1":{"name":"@aofl/i18n","version":"3.12.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.12.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"59b1dafaa4d8287b1778ab6ba7bf0ed14d2e61ad","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.12.1.tgz","fileCount":7,"integrity":"sha512-1AT/9xt0IbGHXJbLoRi2Wu2LrSqWuK8ne8PjZ5Z3Wtr+eyJmUYE81AEqk/f1RPpzlbwUc8/vfztrJEsI3kC3AQ==","signatures":[{"sig":"MEQCIH2jUEp+meYDGRaG43ugH24mC+Izqp1XCiDUpWDeV8PIAiABGc49QjDRYe4MbqhuE0owBiHpzObxsqvBckb0tKivng==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgB3VoCRA9TVsSAnZWagAA0V4P/0Y6OahCEAG8FnXf7VPD\nfjY9eteAOaNsJeH75EGjbuHJ37NBvpGqTekgphnUC+6NNeKuEFXau2ksBYEz\nGHCs3O/eAr+wcIPnG4TcBqsrIRIfVT6oLIGCVm7akUkiaZF/QQEsUpVAsjEQ\nF77JcZt5WM7FM4oqENpzOPLXjmGFhQAXvkgO8Npc6OId1ljczv8+drHyFRXn\nnk/NfZz14Sgqe5F/lEI4KFDqAIxvTGTEGHFLA9lYVKfS3n+0ByGj72FcdgDt\ntSdjnDRM6obR6PCjqxxtbrXoAAT8zNAPii0+4eTrGFsYVl/lhV1AJNi7bJV1\nY+dMXZvn5nLZy3w4WG1Ew1tiU+MfuI//3SiY84pgPmxgRgde1td3n+BIGthd\nzDceNjoU+Chn9aEMjR/S0A1vnD0RUEEYja4c90PHJcTww7xCErnDvQF3jt35\nvr0gktAvdNYhJnh20TB10VkxPKp0x5KaLj/HUA2XeJW93bUUOgIYUKILTuyL\nNpeOal+TX3+F3Py6pNccmgqxzNg+LUNCCojSGVMRxi2BPpPEKOkO+mtUeKYl\ngwMW8mIsykVmIqnWBbm4Cs7kd5UCJdcDYf67XoRY/VNK14tR5pY1108Iaajb\n+IDwcewIrfcgCIw9WIDgfIa37yKlr9sJgrK2H2TbMao3njr2bud9O7zNBQO/\n5DXb\r\n=yADb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.4","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.16.3","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.12.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.12.1_1611101544378_0.588407518367799","host":"s3://npm-registry-packages"}},"4.0.0-alpha.9":{"name":"@aofl/i18n","version":"4.0.0-alpha.9","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.9","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"947b84e5b25de0ef7efbdb771a663a0f4a310253","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.9.tgz","fileCount":7,"integrity":"sha512-KMgW7xT6oFzN+dRH/jDkMa9qzpBx1s7mQduJFXnmv8K7naSLvWJjvH4H21SIji+uyzVIf2CZDQQICYZJjAzuyw==","signatures":[{"sig":"MEQCIB4GQy5sGOV80I0jjoWyIzVt1iiAS7YVj8BvqC7Ts8F+AiAmSNnd9wzXxZxKI/wv6DzFt9YwFoNdIwyFK9mAcLi1tA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGgDRCRA9TVsSAnZWagAA82YP/Rky8S0zfyGwIXXMGorA\n2HItBNvlW/3W0jhdJvnL2B6egiGtYXj0+fL5lSKCbX3lft26Bow50mdY3xtc\nGROIQrQySHxucGIrLn+KVSx3nB7Ma960im75jaKp2QCPwz9yDUX3UsvsZBa+\nE1+jThAJSbyMYK5tRA6yzRM3GZKqOEa6mqkuHUKk2cdQRpXS9QQBPdmN/KXO\nWRno+D4jinSGtOV2a0mfcY8vgRenunwOR3PusyFi+BsBlbJ8I1BsCyuWkFpK\nwamWLx3/xfxEsTUyXZ7mUGfS+CvnLtpXn2o8zgtI9t066d2EbFiMQG3cepUK\ntQyJXaQvl5tpB7NxnodJtKo7rHPLmZwmdiYfal2MZtUundiK37CObsrfMVxz\npKiWFXqjxGSIDAvdHk8KY1UblX59aF8Xm7VJ1cnFk54v+ik/5XxxLjd3AvfN\nX/6kzUV3Y3VZwsee0B8XTCE4DffXBnwN4vhV7V+Kz+nwGciNrVDmUvGDb7sy\nsM8LEMc/E+6+E8/vPoFwy54yPb5Z1AsVSs9E47KD+nEj49Fs+iyES/gOnaKU\nLADJic7PW5VbaVcd7REbPOeyBsaVo022rRXU4KTpQhzi2DQeshAj0zkHlpIl\nc9Nvro6HS1IPbU30NfW1sLDzK+1NlHuRa2X6lq6RYu52vgBMVJWb/gv7/gB1\n8w8c\r\n=lDTY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx @aofl/cli build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx @aofl/cli build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.5.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.9","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.9_1612316873816_0.032895060124112474","host":"s3://npm-registry-packages"}},"4.0.0-alpha.10":{"name":"@aofl/i18n","version":"4.0.0-alpha.10","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.10","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"9ae0419082b7d5d5661a0acc08f6525ef95b42e2","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.10.tgz","fileCount":7,"integrity":"sha512-2jCEI+3AJV7Bx88H5+3f0vkKY57rOuN3gW/kHWa+3kQ0E5OlsMiaI4mLOxtj6v5r3xhOAfek9FU/o7mmmwtbUA==","signatures":[{"sig":"MEYCIQC62YqkFRr0U+Y6n61SOkCHByKjvpqGlE/fd057G5iEKQIhAIFFvX5FduUCnENxfDTXLvod/DzLYLJD+SCaDE/Q3Wru","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGgKvCRA9TVsSAnZWagAAqqYP/3hesBXp5xDQiceqVjcb\nKmJAmnZUZGcFisVTa1cuPYvkGSAMLhTAFEukhJVY4vHD5jI2FsMyNODYiZ+7\nupmDQ0Q8Jq5j8MywvHGiZCpwhI5lDyJ41CaAEi7I9ii2KrMDUCfYf0HgS8gP\n442MDO1Nbb6Y3XPon3KOzjfHM6TKXmup/WSuB37yKIGlA8g+x61vJbgaQoUB\nFjKaoxX5cO89zhTftMKbBSEy07tnHZaGtLifqpyPSQWvkIG0OYn+z+Fvb1QS\nvbtCwN365nX06OFYbXbA2P6kB2o3PtWlOxozrhtcJtsBGdDKGnobohG+NTvm\npcKzJMgZTAktqj5Cs4XOryVOX3GD8rtaik7qHgtqdGIdqpQClCM5QD8mQhOw\na7cUfY7tbCx1jyUWfAQrtKuAMKbo8tBykPURu+GKL76m33QM0Enr3UJJyxGG\n3nWyOdi4oVOoEPQXfTg/OZdYSKJWSS6pB4jHDO6KUekOD0GdqcQ0e+cs9seW\nX0SE6mv50DqtUF+EauV8kl0jMDijVwY3D2kLlIOu8M5/ZQC5OyajBFlSQuOd\na+BfDINMheoN+oXmIS70pwzfPyyGhFhmhu0MeVaZ4qjNjvveKuNtOUjkPOCk\ntRd3MhTfwCaqE00NZ/bbwwIlJOt7ASuK+0Uc2ZiZURuhr+OKBpOkSR/x8tqM\n9y5K\r\n=jWWO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx @aofl/cli build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx @aofl/cli build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.5.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.10","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.10_1612317359590_0.7997211268624009","host":"s3://npm-registry-packages"}},"4.0.0-alpha.11":{"name":"@aofl/i18n","version":"4.0.0-alpha.11","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.11","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"a4745f5164e322a57870977d2cc432796d4f4d50","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.11.tgz","fileCount":7,"integrity":"sha512-4Ro4J+aVX0m2pxPqRoqn+lDuxMc7Z2QM6KSsruqwL5dCBO6sEneTIe5mNQh0zrZ+IvgmfYDzkyZ9x2ymOynZ6w==","signatures":[{"sig":"MEUCIQCmjI1MjfZDlisL1kp9vMIJbLB01/oH0YSC/uytIPtnQQIgET1AVhJaq5JrihoW2/pU147FwsQUMD2UkDuN0Oog0RQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGglGCRA9TVsSAnZWagAAbEYQAIszEWoJ78ro7tHOTUs+\ntnMbEhA2Ch5kNFUFhPyU4Bo/PgS6QmQDY7f4XaJHlc3KIbKb6/WMjrW33bT6\nrctOvWoRAqdKd1AGMyu3YAe+t2QwjoO5HVeOCzgFfyGb1X5q4poFc3WoQPPr\nsqSpCTpmKKxWZ1GvyM5GTJDBXVf8xPu4pTK6Da6QVJhae8d8zoozc9wpdZ7/\nynN4/HtLbWrPMdR24dly44zo6/obH2RsQOohEO8cwAHJxPQQU9Io8xWzUApX\n5osV05dzw/VYu1t4nqNNxIM3xyBlEc6rmgZVn85Mivw07qpW2XcmIyCqaIUN\nXShBtexyI21qYNZmgRf9cRveplSFHpHZ6Mi/t47NzrcFdZnWCuHaAqDFGl6z\nX5f80TnApp4Lv867frpeshrO0vdCN9haOqcBIGEZHhgcWFyBuPmmNArtmxZr\nf+4Da6s5IFoNehwWHeHma+ietdZAJWZovLGZ31wFJDkx+O8nKis1cxLYwYwC\n/Zc/UCbHsmvuml8/rqt16BVO4qlWru4y9zXMdLxTJmbq32TMgeOUtI63zth4\nvX2RzgUucbuawQ6Tc9XwFEwCcrJr2MgQXrGTYze5wKlfSXR94Qz7YJbXiDwF\n767QHZuuttnb9V8lbkwptSmyc4NFRj63zaIgO3nUEv5oRG0Ih0YeKr1nO1vX\ncYns\r\n=uEt3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx @aofl/cli build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx @aofl/cli build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.5.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.15.4","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.11","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.11_1612319046292_0.5417843598769714","host":"s3://npm-registry-packages"}},"3.13.0":{"name":"@aofl/i18n","version":"3.13.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.13.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"cb7795c12087bc064f02b8610d5172d1ad8c7f80","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.13.0.tgz","fileCount":7,"integrity":"sha512-gQs4+LuCb9mHoLEfPOPWJkJDs2yAhYj7ArdF1vHvs3zcKA97vEh/XfOh9imxeFCzSsukvv/WRhNCvMyCquiDEw==","signatures":[{"sig":"MEUCIQC0KMpXicHeqU8oeIVnfBXgqtpaBRwzcSOqqGlYedADNgIgIbJepx4OfQzb5LxPNZmeCus3an25vgA6ApFkKGd4t3E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25625,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgODYaCRA9TVsSAnZWagAAwpEP/AykvA1SH3demOTrej71\n/2ZBPxujfmlwA8GhKutNqQ/7F64RYdt1gI7iNBhwaoDp0vvYrQJBqibp/kp2\nXNLbwA2axKjoetPtUQ7OcJ1DgYt1DBHmGelXjtsZqEh1ggclEZZt5sAaPkEJ\nQ58rhMS+9kCgIkK0CAibtxZuyYJyeQ+HwonH/oLPputyjzvkf/Sg+TafgzQ6\n85sPgL6aVTuvqYSg1rH63pkQd4AJTuCePj3VH1oxzWtDKrTLaUJTt4qYhCtN\n2YlJOT+aPw/kI2zraVBgs0fH34CmSvn/EwVHKRMSFtZ6IDiH5TICmdhnh27F\nkr5DD6aZkMkJZ0mxNJC9fzirxYzZR+m2vgZgLTORRCqVxOIzK/gS7v0Yf/Qg\nVpkswyHNBerh0KBpFHQDR5B0somOhpI4mjSfhFZNKFrYZJIuahmcsLGrB62i\nTpOix4+hSPEuIDZVTxEiyGlVxh7PAerlOWh9y0D7DjqRabFeCKdB0Z0GcNcu\niOB3T6v9P4FCjs7DKfB3mVqChPsvDPyQ0Ut3s1OHq6OMMLxC0w3gfvO4CRsi\nX9UyfFACjxZynarJGebslcXUdhHoanPb1YWCixKU5ufsARsMtKhRuto3e2ng\nJOS0/ldmLBIlVOEa3aykO8J3AGqeKVR9gDwgmzy6qnleadvd1nBtl/zYkZwN\nFmVV\r\n=HH15\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.11","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.13.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.13.0_1614296602365_0.12153198316227498","host":"s3://npm-registry-packages"}},"3.13.1":{"name":"@aofl/i18n","version":"3.13.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.13.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"882a2f2463958453d1a4acaeb78927faf88049e8","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.13.1.tgz","fileCount":7,"integrity":"sha512-jdkCvyiZzO7NgBJmDFjfObaxZs8uZQ0uNb35YkKxf8zxjpNW8WHG2tqNzQeUvst8zSlE395qKsYCc2LsXDZEkw==","signatures":[{"sig":"MEYCIQDJXqoCTlqqjv2F86xtZKLroGRg9XHD6Ep6wLQ7TyyBHQIhANgoHQ/pB2ArMYvohc8Zu3F+WGNdJmsAjAjrFrFMRYTR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25625,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh11qZCRA9TVsSAnZWagAAhzEQAJtsqM0/2lPMrUPBK8bK\nGJapqculzXjSvGCJPmyMc6P10yhowmyV8yE+TKjGWfNamGtIk4+ftI1q8+Vp\nwc8nxX/dx9uWUC9nobcAs8ugSb2icEZUoxX7JGjacbstf5kD+k0ToRD+D3E4\nlYAY4C+fDWtc9LM6gj9HCEaQGiCeqAJR+n9p1UwzXO0AQLMeZbfOpDt927XK\nCDX65Wlsh0WG/kOj7kz2WJOhR1D/nHlUmQAf45HixjTlKuPJ9S7qc/150sj9\nUmvAiF5sHh5El1sFFB6R92jdQ39l5sHC+0aX6hcqnCpxJmoZQMNFNE0RXGFp\nukuJhYZMIMzdJp1mfaUwHOL+ihqvsUOKvySEE5wNuua34EZTDC2Iqq72aRLO\nhUPHzKHCLFwJl8mzGoaDIAMMnCM5kcsomGiYbZzRcWxB03c6yju2MEYx/QT+\ntM20zq0urUjKN1KKpXdYrfn5BKxjRLp2aR8xPlMIn6nFLeHC2br0TBg5w2G7\npZMUBUjuedlds2PVWNaJzJho+zPOb3OZ2ZdnchwbBmPM2fwwkJPvNccJpm7M\nlvlB6IkghtUuTQlmPTXYZ9K0R0N5ljbCY6/8htybguihgYVIJ4Txmbp4vd9c\nIuPYMd1FlSnqCLjxOSfdsk8P9IAoWpgMy0tUzh+MqRxxRbpNljrfna3iemjA\nPNO5\r\n=JSVv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.11","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.13.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.13.1_1623800918367_0.8616298746082287","host":"s3://npm-registry-packages"}},"4.0.0-alpha.13":{"name":"@aofl/i18n","version":"4.0.0-alpha.13","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.13","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"cb6380250392277863abd9ef382ae2b88e97299a","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.13.tgz","fileCount":7,"integrity":"sha512-rBu9tLJb+3zHWRBmCg0NSV0grRMrtibxBAE0b+5bzEaYYIb8v9/SGj/PpE9VCSIAGOzyv/1VskGt7iuUU7NfeQ==","signatures":[{"sig":"MEUCICx2X8CD0PmXCGgEeDv5q67FX1nWECUhhheCWYu6Q7WOAiEAkZxQQ6FXgzW1aKA4pL3xRv+uOPtutu6O+umbvaHknU8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22746},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.15","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.13","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.13_1632439922078_0.8330172284275641","host":"s3://npm-registry-packages"}},"4.0.0-alpha.15":{"name":"@aofl/i18n","version":"4.0.0-alpha.15","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.15","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"70657db4b21d423c37f831d8537e56b7f27cb64b","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.15.tgz","fileCount":7,"integrity":"sha512-76Wk5GLIOrY0vWavmltb0tVnKsE2As6QwB0drR2tRRvGw8IKVZYRi2Ph3vlKjUbekKdgv9sWEpLM3adv0oKQBw==","signatures":[{"sig":"MEQCICUdK0IRCJYi3dE0Pecqk9xWq7Mrd2E9Jn2B4dHN1l5iAiAHKE3NZf2NbcWTxP03Mcax/AoXdeDUEgWnhtjwKuFHKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"7b448cf64b30502883b3422662a9480ea25f2d60","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.15","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.15_1633539831325_0.679783138479749","host":"s3://npm-registry-packages"}},"4.0.0-alpha.16":{"name":"@aofl/i18n","version":"4.0.0-alpha.16","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.16","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"1d432ec3584d25fe29b0d66c0a68db4c40f54785","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.16.tgz","fileCount":7,"integrity":"sha512-SMNbg/PFradsea5baqkyBuSUBIhCSjuxzh8DEHoA7tvDDYmXH7gJqvAt30PR5wSKV0qCy7f0IVQKzvJ/hz7Myg==","signatures":[{"sig":"MEQCIA0DiRayYor9Ck+KSoOsClyqAZumNkPhu9oOxVM+bxOpAiBOw7uDUWqXZHyN5F73p6EUIbIo7C+D6h/tfsipZy/xnw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"7b448cf64b30502883b3422662a9480ea25f2d60","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.16","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.16_1633539905889_0.10215216284907802","host":"s3://npm-registry-packages"}},"4.0.0-alpha.17":{"name":"@aofl/i18n","version":"4.0.0-alpha.17","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.17","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"505f7f913caf7410fdf7f01a43218ead6d8b9aa8","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.17.tgz","fileCount":7,"integrity":"sha512-79o69YW3pjUU60XAwckR0kvBQzmV0wOkJ3NLS9dunucv7/DlApAAqDC89h6z0TnpgY3bq320Fiedp6O8+J8RDA==","signatures":[{"sig":"MEUCIQDext1a6qhWTAjFYqCx5PUMTZKWhTBQWAG1uERYpQk05AIgfvVO31FTcaxtRBnyiIngcu53F8KwAmK4DD9GDYNYvfA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"c7b3ad6feb17eaf3721a5528e86a31ddfb350ef3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.17","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.17_1633546048512_0.9481081258039656","host":"s3://npm-registry-packages"}},"4.0.0-alpha.18":{"name":"@aofl/i18n","version":"4.0.0-alpha.18","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.18","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"4169d94b97e45121d6af05331fae47755bf525e6","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.18.tgz","fileCount":7,"integrity":"sha512-91EZAOh33Gza7brQdhqancMnkuqqdYY7cpDqqFRBVCwU6o8WEHz7KlG+wp6vE8UssDb1NE2NzPzLDEbZ9lstJA==","signatures":[{"sig":"MEYCIQCbHP4SVzbiIwv7ygYkNEyWbq58nbZXmO/V7LSBaO4KPAIhAL4WL0D+BvPstCkC3ADmV4QH7vx1PjnC6W1JCdN58qN3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"3971875a8be8fc1e4ed7f6c737cc9aa1653e049b","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.18","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.18_1633563631432_0.5473835290254991","host":"s3://npm-registry-packages"}},"4.0.0-alpha.19":{"name":"@aofl/i18n","version":"4.0.0-alpha.19","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.19","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"bde93b0ac67a8de5905efe6fea9057edc9faeeff","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.19.tgz","fileCount":7,"integrity":"sha512-iLXpEFf9cHBK0dUz9/vT/awOcIdLv9dOoUg+j1tIHJNVSkCJilPZsL0pMs1P9bp8XF4po+mCaFmZYJSrO9gsBA==","signatures":[{"sig":"MEUCIGtRwy9YOuAactSPukU46yH1hmHjRSBliEQCwdpRaJ1IAiEAw3ltQm62GJNFxNsNGtCylkJEPI9oPLJ3n5CUWo0S9FQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"79369e766cd4fe78098059b93d1cbd7bb5dd8830","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.19","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.19_1633564047173_0.9487685979557896","host":"s3://npm-registry-packages"}},"4.0.0-alpha.20":{"name":"@aofl/i18n","version":"4.0.0-alpha.20","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.20","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"80c7c278a9b14cc8507645be60d517ecd1792b1f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.20.tgz","fileCount":7,"integrity":"sha512-Rau71xi/d8Z4A8Tub8phiTt5e0GQ7tB7K4wxOn/2eKvLA+JeFECOZkKmD6lhpgYgYqdSHUrl2a2amoyu32pPPg==","signatures":[{"sig":"MEUCIQDLM7AAzfLLne0cKng8pT1AVBydOBS6Y7TRwuKe/Z6vqwIgCNrAAriZteVkReCcHwpLCVSlIKhwPx1OruhJUFfQ91w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"398f195bda4d61023d6d7889598f5688c276f1bf","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.20","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.20_1633564494784_0.9649231568482406","host":"s3://npm-registry-packages"}},"4.0.0-alpha.21":{"name":"@aofl/i18n","version":"4.0.0-alpha.21","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.21","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f9a1068f64238049739739a7eb61c650a74cf54c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.21.tgz","fileCount":7,"integrity":"sha512-VZGFwZkApYxBBrc5/VkK39A3Lp2XqtZUzy2kgkAIyoKaacDP+Wk9uAZFl9nfluhUrcQ0/A0qTkt9I/UG6Veqdw==","signatures":[{"sig":"MEUCIQDylAqVeFYf32oIgYsdzQUU8gAzul1TWma3ZBJm+dD4YAIgaKkp0mxwvhx2KLKDfrHuhOpFESNhjYZnMr22f/kE+lc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22457},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"398f195bda4d61023d6d7889598f5688c276f1bf","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","@aofl/cli":"^4.0.0-alpha.21","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.21_1633712758377_0.5421291391691878","host":"s3://npm-registry-packages"}},"4.0.0-alpha.22":{"name":"@aofl/i18n","version":"4.0.0-alpha.22","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.22","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"65a4ff1eedc23c37a7c8835ec5e8e06d623b3a8d","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.22.tgz","fileCount":7,"integrity":"sha512-ocmjgGXNmFUm9uosEWVgI/g0oTyF0wOs+9XUu5lNeK+TDqfCnUxwxiv1JOR1rMj6/VPPkkwhgh1Nadk4Y7gmtQ==","signatures":[{"sig":"MEUCIQCAruGmB5qjkk+z8niv3affZcZOyPQwxcr0KzKxfPQoyAIgGjYjGoXp/3YowFCMN6K9dEJE893KY6amY5Ld96pNZl0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"289b7f60d1cd721d68cff783afc623c3f51cc2cf","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.22_1633984756397_0.5114881231835868","host":"s3://npm-registry-packages"}},"4.0.0-alpha.23":{"name":"@aofl/i18n","version":"4.0.0-alpha.23","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.23","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"489481536d189f4aad326ab71780c17f4b1f6a0c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.23.tgz","fileCount":7,"integrity":"sha512-c/8FK4c11jq7UEaweB9OL3zRdWbdMbDnw9n0issi3i4Qa+bfYNtA1yWAY03FtEMnRRSAk21Y/MFDsdt5u5+yQw==","signatures":[{"sig":"MEUCIQCkYsQnptlEm+9VuiSsuSN3HNsZ5sN24/U5TOwPkg57zwIgTDZlYCkBzugmKuqhwu1nWHDtkY3z8hNrM6Yz2na+nH0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"a2829d023883e5cc51126ee549f70629ceae8e8d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.23_1633986433309_0.9324369440240228","host":"s3://npm-registry-packages"}},"4.0.0-alpha.24":{"name":"@aofl/i18n","version":"4.0.0-alpha.24","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.24","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"a0c6f71c080fcfb34856f3742b0047dae5527a7c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.24.tgz","fileCount":7,"integrity":"sha512-YTseLf2HnKmaVjoR2U+FoRhQJnCbLIUt9DOdvl7AhyhwIP1OkfhqqSflRRZJRL2hhXyKwTTIqBWHWKIhWZvoUg==","signatures":[{"sig":"MEUCIQDpAx0uyGO9k5LKzQ8T6GFZFMGyJruuqy7nC9v3fZF1AAIgTGXW6LS5bmslyGSqCJ9dRaOLy8ajcW6bI06c5GZc+7o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"a2829d023883e5cc51126ee549f70629ceae8e8d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.24_1633988803895_0.03485463277674805","host":"s3://npm-registry-packages"}},"4.0.0-alpha.25":{"name":"@aofl/i18n","version":"4.0.0-alpha.25","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.25","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"fe65f653503580d680e3ba811a88eb417c5313a5","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.25.tgz","fileCount":7,"integrity":"sha512-EWUGtRmNg6A5LBxjh0bdzFz9dLKnliWEbbx4mh/mOmYtCNoZu7vG6VVMAGOiLb+GxG+72TjI1H8i1tV5KFvWWQ==","signatures":[{"sig":"MEUCIH9X4yCgRA3dBSpvke//kv4YgLfP7pBHpubvtgd5dLahAiEAtTxM/BqtyA+/QZCT6IrsPWXbaodq+LwbPJERqXvvFz4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"8e4d611be609be11acccb9135091aadd10134e8a","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.25_1634001638800_0.7898317296225574","host":"s3://npm-registry-packages"}},"4.0.0-alpha.26":{"name":"@aofl/i18n","version":"4.0.0-alpha.26","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.26","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"3809826ddc0be752a1e163e549aa842fa2ed5ef9","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.26.tgz","fileCount":7,"integrity":"sha512-RTF7XJpUvMzqgytEaRfLG66dirghQPwVydrKx9i40WUIx3p9g9OwjRjQtOzUtXf2ZrI3cl5oPL5s1PiA1Ql3kg==","signatures":[{"sig":"MEUCIQCSRiN+t1gdiHNLRmiiFul8M5YY29+YF4+lGqeuy5ZaUgIgfuvKW7B1LEKx4/KvI5DcYa6zVoMPQ6f3Fk+VGFVzVGs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"bdd06521b3653befa1b4c07318cc120a700672b2","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.26_1634002460175_0.3054259082708204","host":"s3://npm-registry-packages"}},"4.0.0-alpha.27":{"name":"@aofl/i18n","version":"4.0.0-alpha.27","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.27","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"c0f822222235669ae1f3240d11b6d75675e11dfe","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.27.tgz","fileCount":7,"integrity":"sha512-+69xMoAublWzW0tbzDNdpTBMsyzPLfGKY+CGz3dTzw0840FF7Hqm+HAnPdwXYtmVQCHkt+R6xdagngeHVw6lMQ==","signatures":[{"sig":"MEUCIQDz1Hm0fQm7g4XIA5CCtJ92y3NKhd36E9/mjKnVq6rekAIgNQ5lvnSt5XxXDGT8IXDCaE5pDnOpXWD4ZZchbdE9mwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"bc755f21b39459dc3a8b57ab25075a22313bc107","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.27_1634151980195_0.06425662189507175","host":"s3://npm-registry-packages"}},"4.0.0-alpha.28":{"name":"@aofl/i18n","version":"4.0.0-alpha.28","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.28","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6ec2d9c9702fb40056b124cf6ec1cbf9e0a58e4c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.28.tgz","fileCount":7,"integrity":"sha512-mQ0sV52Dc98dwER0fNopkWgmJcPMNK2A9LUNV8QUaFTMBJ7II3SguHVG7yeZgvmWlplRRIaaEcmsdsq7l0lLCg==","signatures":[{"sig":"MEQCID1Hh9e7f6sTAIQVDcP2JwbPRyOASeLniBDMMwTHC/ecAiBqBT0qOgwdxnG9ogCTvw9DO0KLoLRX3kQZaInvTkOUOQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"7dceb248f691c3214f73ba1d048f26b2653bcac1","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.28_1634163491735_0.02272616223718882","host":"s3://npm-registry-packages"}},"4.0.0-alpha.29":{"name":"@aofl/i18n","version":"4.0.0-alpha.29","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.29","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f11c0eb1684c12123e22e57921700cc73d345235","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.29.tgz","fileCount":7,"integrity":"sha512-HpkfldKQ0PDJRGNdNHmeFG5NXm56AlpPxNP5m525e7amoG8XTsfTEkh/CbkX9tg+b4Ch0ioyjiw3RWwsPqZHQg==","signatures":[{"sig":"MEUCIQD7JDQnKgA4wZDrJQHzEgTAYCFp6KH+lrXQ5v0TYZH6PwIgAu0ryqQDsNP/JXJxtoW3Rg2AEOoZkqPKsGUq+STScX8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.11","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.29_1634319346113_0.8118331307690265","host":"s3://npm-registry-packages"}},"4.0.0-alpha.30":{"name":"@aofl/i18n","version":"4.0.0-alpha.30","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.30","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"6a5fd6756fd7441bbeb02f02eb375d315caa99e8","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.30.tgz","fileCount":7,"integrity":"sha512-63l4g9LNuVHo66oxCX1m7lLwq+Hz8SvSIBCayOx3pgU9XfZct0DV/rmDoukJWZMrmD8ylL+UBwlTn8AMm4GnTA==","signatures":[{"sig":"MEQCIGxAlDN0keWEIjFg+K5XxU0CbOh7McJjszpGLzvGdUtJAiAtCaiK92V6eyk2iC+ACrIZ2yuorghyD1tfYQOgDQ5hhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"13ed83fe4429533b22fd669328dd6c8829dffec0","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.30_1634323852543_0.4886536655440952","host":"s3://npm-registry-packages"}},"4.0.0-alpha.31":{"name":"@aofl/i18n","version":"4.0.0-alpha.31","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.31","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"78878ef3a1b266a55c4d328c70bf133098786bd7","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.31.tgz","fileCount":7,"integrity":"sha512-5vcXKfodQkxYn7HTr+C1CnH7fbGu4jh3PJRmi4YmLmju2qdIvfggj91JHtLgnN2D/zw+oNeX0XbjqfW/ihCYAg==","signatures":[{"sig":"MEYCIQD76AFKiiha1uvBHclreuCk27eO6UT2sn/WRnF2Ox9WMAIhAPd2skN47NMKTsoW/0U6ygcEC5ST0pWc39Xqc7MGtHLT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"5bc1713dfbc60e5029713b6ad88a4a9fd46d3413","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.31_1634324114350_0.8548436167265097","host":"s3://npm-registry-packages"}},"4.0.0-alpha.32":{"name":"@aofl/i18n","version":"4.0.0-alpha.32","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.32","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"b45a0b86294a0c8a2fee5146c566c183c13b1fc7","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.32.tgz","fileCount":7,"integrity":"sha512-UBKCq4iX4Pwuys/AnSINBA4vvOkEBJR+n5xIl1IFntM1gG4eXWhu3LnT+R7K7Wnm9tZDzinPJlqMI72TNbQOdg==","signatures":[{"sig":"MEQCIAWXzf+5NmrGFRy204wKA8gZ+o1oaoRHKyhY3xxJiY/jAiAS8Yk1Zy9zhzFWSmTMt/IrNyjoDwntT/zThLwk6NEJjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"77786a7e5219aff408e59d051e8380ca1a63021d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.32_1634326776936_0.7587825777623904","host":"s3://npm-registry-packages"}},"4.0.0-alpha.33":{"name":"@aofl/i18n","version":"4.0.0-alpha.33","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.33","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"0b515ea7a398ed6e0082acf8c5bab53fc7d0006c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.33.tgz","fileCount":7,"integrity":"sha512-40rI4JvE6Ng7r+trbUW1TzQXu6E0dj2S8sVSgCplvuyDbHUBCYUkKvEROclaad0XXmj9r4hDt15WKiDwuGZmZw==","signatures":[{"sig":"MEQCIACwROo3iXBlajTei0RFd3y7tv5uaOUT/pPt3qGlZGJdAiAsawS9ftocFX6tPI6TFgfO1VzRP4DNB1BoTsIkKK/b0A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"41b432602965620ce989f21e02748f53f69f7ea5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.33_1634326977661_0.3630368970413116","host":"s3://npm-registry-packages"}},"4.0.0-alpha.34":{"name":"@aofl/i18n","version":"4.0.0-alpha.34","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.34","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"f5565be086a44e6eb323e3ee626b2b034ee57b01","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.34.tgz","fileCount":7,"integrity":"sha512-7TTemwQ+mWwkkTbDnJunuGJAQ625kAQB6hijQx7upDJ0AaB3BZVYiovSZg21/X3h1G0SFjFuOHsGwssfSTw4fQ==","signatures":[{"sig":"MEUCIGB9+LeG0HPbB+3yNY0ibvDJO8elASN+Es9FmiWR6O8CAiEA6EjSRDo8JAhZWAE4yEoesUs6gwiNrsCXvoamimvVT8E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"1b993e65b04444692f40eaecfc3dfbb29d50d98b","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.34_1634327583203_0.6405193390250412","host":"s3://npm-registry-packages"}},"4.0.0-alpha.35":{"name":"@aofl/i18n","version":"4.0.0-alpha.35","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.35","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"62e4bdc329fbc9bdc479d72f9967573cff8d7fca","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.35.tgz","fileCount":7,"integrity":"sha512-IiIL9Ywt6pqQxfrMcV3yEHa95uDkAnVYQQmtR6VovW42iGy5iLOJaaMWMuH9Js4SP2f4f3eaCccPyhX85jebAQ==","signatures":[{"sig":"MEQCICINQ1qvw0LzNaoNqUohygNL38o26Iun8/CJn3NztHvgAiAG1i0FbCKhCb4qdqPjgjIXnZXRUkSVljJdVhObP+tmTQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"5a6a7f303fc21acc73b55413f38f534ed4bfb714","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.35_1634328004926_0.06165187058218202","host":"s3://npm-registry-packages"}},"4.0.0-alpha.36":{"name":"@aofl/i18n","version":"4.0.0-alpha.36","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.36","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"e57346859b65529e0445389ad91a9f3a97154176","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.36.tgz","fileCount":7,"integrity":"sha512-ESmL4GmHPgXI+aMl4m/whbBev8c6BM1vaJCnLbvE1rVuRGOn4Ss3UZLpE6SyumRRMEzfhzzasF13z+EafJMKjQ==","signatures":[{"sig":"MEUCIQCUx+AlLCQSr7rnhDgpTCM87/N+hlwDkhu2+cZBMHF+3gIgFE5+pK70zQe8zbwxSJar3NRTS0ZJojg6GgwYJfWaLjI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"24aeaf86244b6f9f352b26d04fd9976f9430bfe7","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.36_1634328204355_0.8556928302058857","host":"s3://npm-registry-packages"}},"4.0.0-alpha.37":{"name":"@aofl/i18n","version":"4.0.0-alpha.37","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.37","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"0f17f0e7e9e5ad5a6a487920cd95c2796f105f65","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.37.tgz","fileCount":7,"integrity":"sha512-m0uGTL+OYCVsZz/YS265aP10CmRSUXrMvK2+nPfL74sDOX0VZPqJQqWyM7tT4wAAkMRY1sIOPRNf1ysxpXIYrQ==","signatures":[{"sig":"MEUCIQCrwj0L5wWAGADIJfkyeeLNmkmWjmJ01ZipDVUMLPS7DAIge5au1VJsGohct5/RzbW9CcOsu9YkKMTXyGcXXQnmxm4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"d5e9c5a7ef77e315b759fb5bee226aa3bd3aaffb","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.37_1634328378819_0.09838519711629767","host":"s3://npm-registry-packages"}},"4.0.0-alpha.38":{"name":"@aofl/i18n","version":"4.0.0-alpha.38","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.38","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"032280152e8b46c63f1e3353f4b1b802ba4c7495","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.38.tgz","fileCount":7,"integrity":"sha512-nU1gSdYwfEyJ96saufRNNcQFie9khw1ptljfFB68ewAETq93RvTGkJky32l5R/JneMZI2qN5Nr4weXjHquIvhA==","signatures":[{"sig":"MEQCIFw0inLZbTdilUHoLAl90USc4Z0WPiQDOdcB93Uvzqs1AiAnUmDuAqYvlNJlqzEniuiiQpwwQv5hPpQcPrFT8z2ohw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"91457836070b2b300b852a461787c56ec880a85d","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.38_1634330758205_0.08340448972439285","host":"s3://npm-registry-packages"}},"4.0.0-alpha.39":{"name":"@aofl/i18n","version":"4.0.0-alpha.39","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.39","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"c1ef5c29d78371511547ebdabe690c924786ff67","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.39.tgz","fileCount":7,"integrity":"sha512-CUEZS/q2FcccdWxkbMpRVnc79+NSVMBHFO6P0n40J3WZyGZM/TenKb9SCqgtTqtzcwbbzGqvJA0IrHFTg1Lo1g==","signatures":[{"sig":"MEQCIGI7KQn4kCpt1mVzz1AFcL2dFOIw3CvjNAMrQcoUQS0GAiAhSNX0dwWPxir7TIs6mf4pqJ0z3qCfaEfjkqWB/DL7qg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"f4c22e986eb7eb2e564e469dedb36c65858bf5cc","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.39_1634332195298_0.4704712064444596","host":"s3://npm-registry-packages"}},"4.0.0-alpha.40":{"name":"@aofl/i18n","version":"4.0.0-alpha.40","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.40","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"117545e9179e45672bb8cb60f7af27fae0afcde3","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.40.tgz","fileCount":7,"integrity":"sha512-8Xf5va83ZucEUvewzrZ4XkEmketocxvDBpFWSQ9sYbw4/w37JLcK8CLmhuWJB3e4WGZmXuLJnS1WeqEjL1bqcQ==","signatures":[{"sig":"MEYCIQCIJ0WhXWl4FPB7zO68W2fklVLEnpmbFw7b4T8Ch3TeFwIhAOo1gsFxxOSMyGmBKlen50uuYfLrzHhV60RSvedK8hm6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"e93b1f585c2cd94383438abd74737a856ca68a77","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.40_1634332790335_0.458012832015549","host":"s3://npm-registry-packages"}},"4.0.0-alpha.41":{"name":"@aofl/i18n","version":"4.0.0-alpha.41","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.41","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"3c5a1eb5a7f9732ddaab899bc7cce3ae81a5a0e6","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.41.tgz","fileCount":7,"integrity":"sha512-1RYaUwVnhHvYBZSXrOeo2XR9/84mZUqiaBF2pEjPuTh+wUlNrYWhSG8XP1fkz9CUbX6ZYMos6DfTpzNIi9i3xQ==","signatures":[{"sig":"MEUCICOK8eyb0EA+SIrrjXltsR2SHsLzS5tW5fChKXOcU76vAiEAjeZPKezsX0mMoN+f75ma5Ex3sSRu6s48Q8X++7vnTDo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"cbd55bfa3cf5e87bf7b5f27b3d9b6efb34e3ad85","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.41_1634582055170_0.2886884613782994","host":"s3://npm-registry-packages"}},"4.0.0-alpha.42":{"name":"@aofl/i18n","version":"4.0.0-alpha.42","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.42","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"e9841914783e711f1b4cc6fda55ab30a3c77ce9f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.42.tgz","fileCount":7,"integrity":"sha512-LXV4GBZ18UgW9EHV9I+6aHenwHLAxSkPW1Bf7b/uMKrzN49KnE/8QfBryWXSC/Fg42pEPBP2BeUgRclV/Y8sjw==","signatures":[{"sig":"MEYCIQCcQ/Gz38On6mylP48x3FQsc8FDLERF40Cxl7bEB33EvgIhAMCfk+cdTK3yLLuGaJ1+y0VCCkGezrfW4ldZgr4eoJyM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"f64d10ec558694ce4c2d4e8b0562d4167f8e28d5","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.42_1634586022292_0.24431016469411238","host":"s3://npm-registry-packages"}},"4.0.0-alpha.43":{"name":"@aofl/i18n","version":"4.0.0-alpha.43","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.43","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"0b0f67b296ae178d88a7df58a2e202000632063c","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.43.tgz","fileCount":7,"integrity":"sha512-WpLJcoTYJvD73z0/ZyEeQdDrXdvKszkmVtJHuwrfkD5G9ykJQBlin3NM/mek2oUMba4PGWXUkWGiZmcpiFefZg==","signatures":[{"sig":"MEQCIHPOIc8E+6EjUKC5/24StfahkPcth9uVu6HLJviH7OIXAiB6xbo0SbrLxfeRFvvJn+bLCqGqFWfv8SAfhHRQBNz6fQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","gitHead":"6763365b38cb5be764e669a3b568be9f1cc4cfed","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"7.24.2","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"14.17.6","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.43_1634586278095_0.8429458260946627","host":"s3://npm-registry-packages"}},"4.0.0-alpha.44":{"name":"@aofl/i18n","version":"4.0.0-alpha.44","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.44","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"fb0aabc94db914291399901aa3e4d627da6a3e55","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.44.tgz","fileCount":7,"integrity":"sha512-MKkMWPdiTnb/OY/1lqUJdUECkFFlKKs6Vv+7YW3V7TAYu5SRx9ZCerZLIqKRho1QiHyix36TV+0w1LDpGdE8pA==","signatures":[{"sig":"MEQCIBFial6JgUAkBeutNfQOFVeXHvJsojRLdcE/05gfmy5+AiBQ0kxNdurv8R5uR3EKX9qcy8YzPrESmzw3QGUxlKWD4Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.11","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.44_1635874763891_0.4949073483048172","host":"s3://npm-registry-packages"}},"4.0.0-alpha.45":{"name":"@aofl/i18n","version":"4.0.0-alpha.45","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@4.0.0-alpha.45","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"76d95471d5e1c59ea1f0fbc0a95b83a9c8d95a5a","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-4.0.0-alpha.45.tgz","fileCount":7,"integrity":"sha512-AnJVWg2byEY6WKayOP7hnentF3mxNpOdPj2jMG2759zspL+0UCgRwZ4R3UtQL6GgTR9r8usaFa91ZgQjoJEl4w==","signatures":[{"sig":"MEQCIG/vOKrJ9QHFZdur39FMb/4reQt5FNwHA7iavJ8kj4IBAiBdbWb8TbUlLXyZ8fsO4Sq9Lw3HAuUqOEoUwI/EneNtog==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22421},"main":"index.js","module":"index.js","readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","browser":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"6.14.11","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdoc":"^3.6.6","lit-html":"^1.3.0","cross-env":"^7.0.3","tsd-jsdoc":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_4.0.0-alpha.45_1635876942864_0.2396702420862169","host":"s3://npm-registry-packages"}},"3.14.0":{"name":"@aofl/i18n","version":"3.14.0","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.14.0","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"63a5bdd29794f59774c63fb8a2fcee29302dc66f","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.14.0.tgz","fileCount":8,"integrity":"sha512-W8IO3SmhzULD/gG2kaEjau5G8NyOdm0pXEuHH6pMk/NR2gQgbvptYEU+gZseRtvitHuaNLm3eYQBFDBeTCPDFg==","signatures":[{"sig":"MEUCIE4lAo9ei824BaFzA/IJiXQB9OkVXfgFUUtuWQVGrFhEAiEArymb/S3asyIcD2HqSB/dl1mDCrP2sTKzyIC8wIjEWWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26763,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiM8/eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpf/hAAlnp3sJuI5MqMdxlm9bMtOMahxjTo+RTEzh/arBEuTWK3KEP9\r\n9pj45cVLFv/p8XjTpA+OHRYP1i0SwU840pJqP3Ood3fA12yUBkwjWXUsYQAu\r\nfq6YlCCDfxvwU5AUmnM92v6qMxpYtP9AK4B1Hda3roGQ/iT3vHRsqWg+okmn\r\nlMT1VCrrt7dkAvyVm3GyiH1bCeDewBs1cdwM+8U3VgNA6rS0AxebWl3WNByJ\r\nnSCZ1stwmtsnYbj74T4ia/PoiZlPx6YSNewvfIEAyE834RlxIFD4b7XjWpml\r\nAmPH1GXT/3yaw3fIIOaKxmvYdKKyy/W6hP5sAvQDZQWQyKRBmHqYIQtYea+M\r\n8zyG7E2FDR+FryZE+ydzstPpU42kqZK0+fgrWU7/X1gjkxg9Bt+7MMLoBuE9\r\nvHCFOduUATOg8Y+nPxhOYkArk3XUxTQwz+aSeo6BGFfpnhi2j370vaofgvIL\r\nuYq7Z0HekWzNzwIVP6swAyrwRfuLuCTfJ3CxLOQjeYV0+7/jX5Hwse+u3rtu\r\nen301Rwh6pPw9vQNPfazUXKRRv82nHM/L5nQ49omeBUX64Gd4JFYsQzPpn2i\r\nobxQtqq0y0HCDezrwUyu2aBdu+bvl3h/RoS1xM8rVIS8R2ZltVze+tvwG9I6\r\n8OXYlimTl1+jvRWB1jdhg28v5i/o0Ie+QKE=\r\n=lh2v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"01a200342c31c108d1ab1039ee4c972f2ee63fa9","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.14.0","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.14.0_1647562718765_0.5786283318328147","host":"s3://npm-registry-packages"}},"3.14.1":{"name":"@aofl/i18n","version":"3.14.1","author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","_id":"@aofl/i18n@3.14.1","maintainers":[{"name":"alexdinari","email":"alexdinari@me.com"},{"name":"ariankhosravi","email":"arian@arin.io"}],"homepage":"https://github.com/AgeOfLearning/aofl#readme","bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"dist":{"shasum":"fca0805a4af24d11c5a85fe801abb05fd0afb107","tarball":"https://registry.npmjs.org/@aofl/i18n/-/i18n-3.14.1.tgz","fileCount":8,"integrity":"sha512-4bMNQ7toQJknkqt5vjZvBJbtnxIavYUvAlufM0YMJg4IfLBUklNb3X7etA/pPf8kmGCzabZWjRASteGBFRmYqA==","signatures":[{"sig":"MEUCIQC0BWher6QVgl8FTLd0A+gBSflF4zlFnxizSC+UqecJaQIgHTqMEclKJT+si7gj3REvbTbBWp1/fjKGxkXHhgpaLWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26763,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiM9bTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrKVQ/7BPAFKsNwkl6cPFNToqF3u1lnHEXV4+W/BKSR2XEeL94eZ9Z9\r\nZE9rOC2fCJjrWFZMftLTJcBvj7cZN1Uk2zQw5yc7RePksOL8ca3ztqXtskHN\r\ns1JnKZr38TaAFTbuKZ7ak3n9HPCEZ2zmnRcOtEXSqFVW+4k2WCtA37kfFMMC\r\nIplx9kgqNhnlnfBWUIYLhcfK50tzfO9fJX/cF9loUDncuPktfFhHZiEGjQo7\r\nNYqO8jEKwC9JaNdygVjvmECl11bwOqf/De5ITXMXAQkhKSE3IDxKj5jDPFjA\r\na8PKzdVK8j9z5NwJ8YEG/FV9RrsccRMdtjy2Z2gMfZ6yj+FFWF1sFlQAzOB7\r\ncWyfa/oF/z9PWzRgOzqOqnEjYK3BcJm5EAyzAH2KXnA7zfSXhi/m8PfRT3wa\r\n3x8uTv3nwaFXh8b0/yRE9zb8uTyudBw0p3WyZTA2++VdljZkxjzAK6RE1oLu\r\nO17IA6mE2T6DSAn9SBPZPunHL/RyveptfSd63kOFb+B54wtQ+RJ3ptuPZ7rq\r\nbnJ7RHE0XosovrsPOa+Cz5oywrPCB5GKlNmTe6K0uZ+N4c+bFd/PqyEuxLwp\r\nvnbTk+jhcYoDhCA7fuNLxykDujxZLBEoDr1+4ps1nQGadbA+khrKek7sMw9m\r\neUua2fG1L3SlwQzDX5wh+CSmVpq/OQKkj0E=\r\n=m82/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","module":"index.js","browser":"dist/index.js","gitHead":"65857163479f835ec51cc1e23ec01c45eab43008","scripts":{"docs":"npx jsdoc -c .jsdocrc.json .","test":"echo \"Error: no test specified\" && exit 1","build":"cross-env NODE_ENV=production npx aofl build","build-ci":"cross-env NODE_ENV=production aofl build --debug","build:dev":"cross-env NODE_ENV=development npx aofl build","prepublishOnly":"npm run build-ci && npm run docs"},"typings":"types.d.ts","_npmUser":{"name":"ariankhosravi","email":"arian@arin.io"},"repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (darwin)","description":"Implements `__()`, `_r()` and `_c()` functions for translations.","directories":{},"_nodeVersion":"12.20.1","_hasShrinkwrap":false,"devDependencies":{"jsdoc":"^3.6.3","@aofl/cli":"^3.14.1","cross-env":"^6.0.3","tsd-jsdoc":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/i18n_3.14.1_1647564499767_0.5683615557074388","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-08-18T05:14:05.170Z","modified":"2025-01-18T00:20:43.835Z","2.1.0-alpha.7":"2019-08-18T05:14:05.332Z","2.1.0-alpha.8":"2019-08-18T05:57:39.144Z","2.1.0-alpha.11":"2019-08-23T20:40:13.904Z","3.0.0-0":"2019-09-17T05:21:53.032Z","3.0.0-alpha.0":"2019-09-17T05:23:54.204Z","3.0.0-alpha.5":"2019-09-20T06:32:33.701Z","3.0.0-alpha.11":"2019-09-27T06:49:20.208Z","3.0.0-beta.1":"2019-10-06T09:21:54.498Z","3.0.0-beta.6":"2019-10-08T04:49:37.937Z","3.0.0-beta.8":"2019-10-08T05:48:11.456Z","3.0.0-beta.9":"2019-10-08T06:11:37.295Z","3.0.0-beta.11":"2019-10-08T09:42:48.927Z","3.0.0-beta.12":"2019-10-08T09:53:34.763Z","3.0.0-beta.13":"2019-10-09T04:13:21.687Z","3.0.0-beta.14":"2019-10-09T04:33:03.160Z","3.0.0-beta.15":"2019-10-09T04:50:41.560Z","3.0.0-beta.16":"2019-10-09T05:05:59.162Z","3.0.0-beta.17":"2019-10-09T05:25:04.409Z","3.0.0-beta.22":"2019-10-11T04:40:47.645Z","3.0.0-beta.23":"2019-10-11T05:39:59.108Z","3.0.0-beta.24":"2019-10-11T06:34:43.099Z","3.0.0-beta.25":"2019-10-11T07:34:46.304Z","3.0.0-beta.26":"2019-10-11T07:49:06.047Z","3.0.0-beta.27":"2019-10-11T07:53:59.472Z","3.0.0-beta.28":"2019-10-11T08:01:01.332Z","3.0.0-beta.30":"2019-10-11T22:58:42.050Z","3.0.0-beta.32":"2019-10-14T01:05:44.798Z","3.0.0-beta.34":"2019-10-14T07:37:04.079Z","3.0.0-beta.35":"2019-10-18T06:59:10.091Z","3.0.0-beta.36":"2019-10-19T10:45:51.412Z","3.0.0-beta.37":"2019-10-24T06:07:54.176Z","3.0.0-beta.38":"2019-10-30T22:52:23.081Z","3.0.0-alpha.12":"2019-11-02T01:11:36.224Z","3.0.0-beta.40":"2019-11-11T22:31:16.024Z","3.0.0-beta.41":"2019-11-12T04:55:36.421Z","3.0.0-beta.42":"2019-11-12T05:53:44.217Z","3.0.0-beta.45":"2019-11-12T19:33:12.315Z","3.0.0-beta.46":"2019-11-14T21:58:15.542Z","3.0.0-beta.47":"2019-11-15T00:48:45.995Z","3.0.0-beta.48":"2019-11-16T23:36:00.679Z","3.0.0-beta.49":"2019-11-17T03:37:53.255Z","3.0.0":"2019-11-17T07:06:06.982Z","3.1.0":"2019-11-22T03:28:14.456Z","3.2.0":"2019-11-24T07:34:38.415Z","3.2.1":"2019-11-24T08:03:48.614Z","3.2.2-alpha.2":"2020-01-14T20:27:21.353Z","3.2.2-alpha.3":"2020-01-14T21:12:45.404Z","3.3.0":"2020-01-22T23:31:04.565Z","3.5.0-beta.1":"2020-02-22T23:26:23.925Z","3.5.0-beta.2":"2020-02-22T23:52:29.302Z","3.5.0-beta.3":"2020-02-23T00:07:10.520Z","3.5.0-beta.4":"2020-02-23T01:57:14.594Z","3.5.0-beta.5":"2020-02-23T03:09:55.610Z","3.5.0-beta.6":"2020-02-23T03:17:34.942Z","3.5.0-beta.7":"2020-02-23T05:05:19.388Z","3.5.0-beta.8":"2020-02-23T05:08:33.711Z","3.5.0-beta.9":"2020-02-23T05:32:55.891Z","3.5.0-beta.10":"2020-02-23T05:50:17.036Z","3.5.0-beta.11":"2020-02-23T07:37:04.000Z","3.5.0-beta.12":"2020-02-23T08:59:55.892Z","3.5.0-beta.13":"2020-02-23T09:01:58.527Z","3.5.0-beta.14":"2020-02-23T10:00:00.561Z","3.5.0-beta.15":"2020-02-23T11:49:03.551Z","3.5.0-beta.16":"2020-02-23T11:58:25.979Z","3.5.0-beta.17":"2020-02-23T12:14:18.355Z","3.5.0-beta.18":"2020-02-25T03:59:23.343Z","3.5.0-beta.19":"2020-02-25T23:56:58.731Z","3.5.0-beta.20":"2020-03-02T23:22:30.248Z","3.5.0-beta.21":"2020-03-02T23:26:53.894Z","3.5.0-beta.22":"2020-03-02T23:42:07.597Z","3.5.0":"2020-03-03T00:02:53.354Z","3.6.1":"2020-03-10T18:42:40.434Z","3.8.0":"2020-05-12T19:19:16.899Z","3.9.0-alpha.0":"2020-05-12T19:29:40.530Z","3.8.1":"2020-05-12T19:40:29.234Z","3.9.0":"2020-05-15T17:57:50.071Z","3.10.0":"2020-05-15T21:15:15.834Z","3.12.0":"2021-01-20T00:01:30.439Z","3.12.1":"2021-01-20T00:12:24.544Z","4.0.0-alpha.9":"2021-02-03T01:47:53.933Z","4.0.0-alpha.10":"2021-02-03T01:55:59.699Z","4.0.0-alpha.11":"2021-02-03T02:24:06.464Z","3.13.0":"2021-02-25T23:43:22.537Z","3.13.1":"2021-06-15T23:48:38.492Z","4.0.0-alpha.13":"2021-09-23T23:32:02.272Z","4.0.0-alpha.15":"2021-10-06T17:03:51.443Z","4.0.0-alpha.16":"2021-10-06T17:05:06.049Z","4.0.0-alpha.17":"2021-10-06T18:47:28.625Z","4.0.0-alpha.18":"2021-10-06T23:40:31.576Z","4.0.0-alpha.19":"2021-10-06T23:47:27.261Z","4.0.0-alpha.20":"2021-10-06T23:54:54.951Z","4.0.0-alpha.21":"2021-10-08T17:05:58.580Z","4.0.0-alpha.22":"2021-10-11T20:39:16.521Z","4.0.0-alpha.23":"2021-10-11T21:07:13.460Z","4.0.0-alpha.24":"2021-10-11T21:46:44.040Z","4.0.0-alpha.25":"2021-10-12T01:20:38.944Z","4.0.0-alpha.26":"2021-10-12T01:34:20.952Z","4.0.0-alpha.27":"2021-10-13T19:06:20.349Z","4.0.0-alpha.28":"2021-10-13T22:18:11.862Z","4.0.0-alpha.29":"2021-10-15T17:35:46.241Z","4.0.0-alpha.30":"2021-10-15T18:50:52.684Z","4.0.0-alpha.31":"2021-10-15T18:55:14.483Z","4.0.0-alpha.32":"2021-10-15T19:39:37.070Z","4.0.0-alpha.33":"2021-10-15T19:42:57.802Z","4.0.0-alpha.34":"2021-10-15T19:53:03.360Z","4.0.0-alpha.35":"2021-10-15T20:00:05.076Z","4.0.0-alpha.36":"2021-10-15T20:03:24.530Z","4.0.0-alpha.37":"2021-10-15T20:06:19.005Z","4.0.0-alpha.38":"2021-10-15T20:45:58.364Z","4.0.0-alpha.39":"2021-10-15T21:09:55.451Z","4.0.0-alpha.40":"2021-10-15T21:19:50.503Z","4.0.0-alpha.41":"2021-10-18T18:34:15.309Z","4.0.0-alpha.42":"2021-10-18T19:40:22.424Z","4.0.0-alpha.43":"2021-10-18T19:44:38.283Z","4.0.0-alpha.44":"2021-11-02T17:39:24.078Z","4.0.0-alpha.45":"2021-11-02T18:15:43.047Z","3.14.0":"2022-03-18T00:18:38.931Z","3.14.1":"2022-03-18T00:48:19.960Z"},"bugs":{"url":"https://github.com/AgeOfLearning/aofl/issues"},"author":{"name":"Arian Khosravi","email":"arian.khosravi@aofl.com"},"license":"MIT","homepage":"https://github.com/AgeOfLearning/aofl#readme","repository":{"url":"git+ssh://git@github.com/AgeOfLearning/aofl.git","type":"git"},"description":"Implements `__()`, `_r()` and `_c()` functions for translations.","maintainers":[{"email":"alexdinari@me.com","name":"alexdinari"},{"email":"lorenzo.battigelli@aofl.com","name":"lorenzo.battigelli"},{"email":"alex.dinari@aofl.com","name":"alex.dinari"},{"email":"it@aofl.com","name":"ageoflearning"},{"email":"jie.zhang@aofl.com","name":"jiezhangaofl"}],"readme":"# @aofl/i18n\n\nImplements `__()`, `_r()` and `_c()` functions for translations.\n\n[Api Documentation](https://ageoflearning.github.io/aofl/v3.x/api-docs/module-@aofl_i18n.html)\n\n## Examples\nWIP\n\n\n## Requirements\n\nFor each component which will support internationalization an `i18n` directory will need to be created in the root of the component directory. Inside this directory language `translations-[language-contrycode].js` files will be expected.\n\nA `translation.js` file will be generated via running `aofl i18n`. The command will find all component template instances of translation method strings, e.g. `__('string to translate'), _c('more strings')`.\n\nThe `translation.js` can be used by a tranlsations api or translators to create the necessary translation-[lang].js files in the format of `translation-LOCALE.js`, e.g. `translation-en-US` or `translation-pt-BZ.po`, which again will be expected in the compontent's `i18n` directory.\n\nFinally the component class will need to set the current language, e.g. `this.lang = 'pt-BZ';`\n\n## Usage with i18n Loader\n\n`i18n-loader` is required.\n\nRun `npm i -D @aofl/i18n`\n\nThen add the loader to your webpack config:\n\n```js\nmodule: {\n  rules: [\n    {\n      test: /language\\.js$/,\n      use: '@aofl/i18n-loader'\n    }\n  ]\n}\n```\n\n## Usage\n\n```js\nimport {I18n} from '@aofl/i18n';\nimport translations from './i18n';\n\nconst i18n = new I18n(translations);\n\nconsole.log(i18n.__('This will be translated'));\nconsole.log(i18n._r(i18n.__('Hello %r1%'), username));\nconsole.log(i18n._c('You clicked %c1% times today and %c2% yesterday.' , {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, todayCount, {\n  1: 'once',\n  2: 'twice',\n  3: 'a few times',\n  4: 'a few times',\n  5: 'a few times',\n  '%other%': 'many times'\n}, yesterdayCount)})\n```\n","readmeFilename":"README.md"}