{"_id":"inno-trans","_rev":"33-ec8e2cf293f604af5ca99042d3f34a2e","name":"inno-trans","description":"simple localization library (inspired by laravel translation)","dist-tags":{"latest":"2.2.0","next":"2.0.0-beta.5"},"versions":{"0.1.1":{"name":"inno-trans","version":"0.1.1","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@0.1.1","dist":{"shasum":"32ecb56f57e44500df15747002cfbc3ee0595909","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-0.1.1.tgz","integrity":"sha512-RPGylUivcPktcTGl9eEn03SJ1kFcVZCWxbAlX4oTal/CSHLuT5AF9ujiqZBw8FdQ2AHDiMroplw+ALFGmH4zLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTX2HthAVwan/sLgWXOcvZFPlSDUhj70/KRvl1ftjXxQIhALzL0XGL2iKgL3p+hpsxArxjiFlFXl8/uy3zg5jk1t0k"}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-0.1.1.tgz_1515338866572_0.6683245436288416"},"directories":{}},"1.0.0":{"name":"inno-trans","version":"1.0.0","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test | npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.0.0","dist":{"shasum":"aac2d00cb3883baad6332e993939fdbf89aa812e","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.0.0.tgz","integrity":"sha512-AMKgrDyTvCxwncoRbQ2Bj22kSj+BfLI2dY6GIbOiOEiLIvs5RHgtGbUEsXNZQ99WC/Q/uoE6TT0mcJZY827uPw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFAApJsgJwgldkej/TTMTj75Uts5DhuVLYnEuvye3IcKAiEA8KlwQ78+wheS8vb0+bov4BSmx1fnPQiElRQjWF/HYfc="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.0.0.tgz_1515339276913_0.19107507448643446"},"directories":{}},"1.0.0-1":{"name":"inno-trans","version":"1.0.0-1","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.0.0-1","dist":{"shasum":"e76189722e8fda5fa034ae078a96a86a66706b3b","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.0.0-1.tgz","integrity":"sha512-vXd0oMBQxgFQ2KtKgqEN0RgNujZ+/7aibmbNkG24Q+u0l5H3yr5Z/tlcKrmMJLIhxm4q7VSmEMiCasooClS5sw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWMGY1HRR55M0N+yI0DPK9Iz4WTe4S9wzI1AD4DIkV3AIgJpNPNaxIHmu8yQBDCrjfmnTSddkvItrKOK6pNEdlYl8="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.0.0-1.tgz_1515339558337_0.6072288071736693"},"directories":{}},"1.0.1":{"name":"inno-trans","version":"1.0.1","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.0.1","dist":{"shasum":"a72877338a3f7a3091c682b6bdfcfb9e2930f604","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.0.1.tgz","integrity":"sha512-L9ahcMJOGTf5+gVsjM6d14xGCcFpxkiQ7HIncIHDJk3PpBTXR+vrqhaHW6861reWt/6vW1zt2I6sL+MG1VUZEg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDq1/ZMUn01d67WMgrddvGl7JVSxdVl1Dlnp/qo8RdXzAIgH9QgihponSP4SuCZNhwYZKytAF+l6M5NU53bY7rAJ74="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.0.1.tgz_1515369405870_0.05885797250084579"},"directories":{}},"1.1.0":{"name":"inno-trans","version":"1.1.0","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.0","dist":{"shasum":"4d028465eee675ae6ed1d12eb136f7a6a2a1d653","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.0.tgz","integrity":"sha512-SXWqJhgi1r3Tr6Vo+U73xLTXEfGpBlvJ9E4cuUt0kd625jr0g/cNAM7OsCLmZzmyre3K5Mts+gFK96Dlv9zWBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEsNc1KjNRqvZTKeoOqxbZh3h8CUPeE+VuDooxWtQMt+AiEA/4bpn9gkaL4IP5wW7jBYD+EXA0BI5Zqkve33aZxsg8M="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.0.tgz_1515474142935_0.9920526694040745"},"directories":{}},"1.1.1":{"name":"inno-trans","version":"1.1.1","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.1","dist":{"shasum":"61975844cf7cb3b34666cab9b81748f064ef7009","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.1.tgz","integrity":"sha512-pvDUwAGmrBIpl5OM90F6VYUSyaDvCw3+ndXEzfeiWuBhcXvfIxdnaJWGUN4z7kIFb/XdigEgz9ZJfQefVlR7MQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVLJkq9PayW8qH8l3sWhJTa3SRK+o1zKwdLv5aITKrRgIgOhyRWZkUV812l3P43UFOAW8hxFIgGMu6+ZCWT14Usl8="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.1.tgz_1515476112197_0.6670183949172497"},"directories":{}},"1.1.2":{"name":"inno-trans","version":"1.1.2","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.2","dist":{"shasum":"274e1c20908d48ab43f4008d81df33de0e40e32c","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.2.tgz","integrity":"sha512-A7A8CjguZnb0pLxbcLSr7AVu362dEws4RjmHaOxIh3THorPugwau7vlyWj3p9dKSBg6vJsT6eCY4XniGls/eAg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBYWoF9NB5E5gdL/4gsbpKb6/RO0k1a3sWnWJ95Sa2tIAiBjqCWBY/o5ASq/UCweaHMF1ou8p6EWrITw23XmVpOBrg=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.2.tgz_1515476673047_0.9812696797307581"},"directories":{}},"1.1.3":{"name":"inno-trans","version":"1.1.3","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.3","dist":{"shasum":"0c338eebed6ed033af77c34d7647066a012037cd","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.3.tgz","integrity":"sha512-mpT3d6hf21nH2bDI6h9q/yNfVGSaXqYu2MXtiGkSfmG7upz1Cn0Grx6F1TDeAX3d5cYRGOB5ceJi8rPzUwqNMA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHX9uxmTrbuziQNuI+/je2J8WDBdbce97jjCXQcQXM9pAiEA0OROnqeTW2FErRW3kxqkmGPaWAsYl9woyXv1JIe12Yo="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.3.tgz_1515567569454_0.6859022642020136"},"directories":{}},"1.1.4":{"name":"inno-trans","version":"1.1.4","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.4","dist":{"shasum":"30d75cff81baa501d67e189bc3c2fb1ae0ccade7","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.4.tgz","integrity":"sha512-vxTNcF0NxWbdOTchUb2hkIOQReX9lylkZRG8SZ5Sdp9rKyuCPUJMBBxTDwOKZbZr6afon049EPUptJJZBgvWcA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHj/M224AviTuraV1QBuFp3HUbzu8mK2adk/skNBYgq5AiEAmXtkGk36wB2n43RafuaoLOOZ+wxZLjjZGN95Frkdd4M="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.4.tgz_1515567953469_0.8943172483704984"},"directories":{}},"1.1.5":{"name":"inno-trans","version":"1.1.5","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-standard":"^11.0.0-beta.0","eslint-plugin-import":"^2.8.0","eslint-plugin-node":"^5.2.1","eslint-plugin-promise":"^3.6.0","eslint-plugin-standard":"^3.0.1"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.5","dist":{"shasum":"653c2f974942ceffd34277bb18f5848c897325d7","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.5.tgz","integrity":"sha512-O/658YznCJS5L4rGNs2wfm4fjKkpVVnbYKaFp2SjYaxsApvrYuL89KWWNkl35qzpRFBMSykBnVLKcTaUmjEiLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG0NCK8S7KrayDFE1a93y/NWW2JO3dI7kuqX2glXL/DKAiEAreO1buPS/bJ2vWk42K/uxGVr/Xkyp2FUjdiwrUrvvzc="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans-1.1.5.tgz_1516083909108_0.13861032156273723"},"directories":{}},"1.1.6":{"name":"inno-trans","version":"1.1.6","main":"dist/inno-trans.cjs.js","module":"dist/inno-trans.m.js","unpkg":"dist/inno-trans.min.js","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"engines":{"node":">=6"},"files":["dist"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"build":"bili --format cjs,es,umd-min --name inno-trans --module-name InnoTrans --banner","test":"ava","dev":"ava -w","prepublish":"npm test && npm run build"},"devDependencies":{"@std/esm":"^0.19.0","ava":"^0.24.0","bili":"^1.3.8","eslint":"^4.14.0","eslint-config-byungi":"^0.0.11"},"eslintConfig":{"extends":"byungi"},"ava":{"require":["@std/esm"]},"@std/esm":"cjs","description":"> 📜 simple localization library (inspired by laravel translation)","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@1.1.6","dist":{"shasum":"3cc5bcb297f805d060a32db85bd1076d60a6291c","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-1.1.6.tgz","fileCount":9,"unpackedSize":46647,"integrity":"sha512-K5XmQkiAnNEpz9Ah1jVNuBj8NoeDgNZEHtWt6J/j9btdJTcLzX7NhduR7jHG8hzLsVwLs413QAq3WqbIhOb1ZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEo0k/QgvWI8DFt1IkGZCDqTTnsBng0Ec2Qln1ngRZggAiEA7uRaQbJkkqLK5V57GEV0i3HOQkG39MtLA+Ba349jCH4="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_1.1.6_1520932163156_0.7622795502066757"},"_hasShrinkwrap":false},"2.0.0-beta.1":{"name":"inno-trans","version":"2.0.0-beta.1","main":"lib/index.js","module":"dist/inno-trans.es.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"git+https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format es,umd-min --no-js --no-map --moduleName InnoTrans"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","@skt-t1-byungi/event-emitter":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"readme":"# inno-trans\r\n📜 simple localization library (inspired by laravel translation)\r\n\r\n## Install\r\n```sh\r\nyarn add inno-trans\r\n```\r\n```js\r\n//es6\r\nimport trans from \"inno-trans\";\r\n\r\n//commonjs\r\nconst trans = require('inno-trans');\r\n```\r\n### browser\r\n```html\r\n<script src=\"https://unpkg.com/inno-trans\"></script>\r\n<script>\r\n var trans = InnoTrans;\r\n</script>\r\n```\r\n\r\n## Example\r\n```js\r\nconst t = trans({\r\n    locale: 'en',\r\n    message: {\r\n        en: {\r\n            'hello': 'hello world!'\r\n        }\r\n    }\r\n})\r\n\r\nt.trans('hello') // => hello world!\r\n```\r\n\r\n## Interpolation\r\nYou can use a tag(`{}`) to replace a string with a variable.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name}!\"\r\n}\r\n```\r\n```js\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n### Change Tag\r\n```json\r\n{\r\n    \"welcome\": \"welcome, <?=name=>!\"\r\n}\r\n```\r\n```js\r\nt.tag(['<?=', '=>'])\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n\r\n## Pluralization\r\nYou can choose a message that matches the quantity\r\n```json\r\n{\r\n    \"apples\": \"one apple|many apples\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 1) // => one apple\r\nt.transChoice('apples', 2) // => many apples\r\n```\r\n### Complex\r\n```json\r\n{\r\n    \"apples\": \"{0}none|[1,19]some|[20,*]many\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0) // => none\r\nt.transChoice('apples', 10) // => some\r\nt.transChoice('apples', 20) // => many\r\n```\r\n### with Interpolation\r\n```json\r\n{\r\n    \"apples\": \"{0}none (0)|[1,19]some ({count})|[20,*]many ({count})\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0, {count:0}) // => none (0)\r\nt.transChoice('apples', 10, {count:10}) // => some (10)\r\nt.transChoice('apples', 20, {count:20}) // => many (20)\r\n```\r\n\r\n## Fallback\r\nFallback a different locale when there is no message.\r\n```json\r\n{\r\n    \"en\": {},\r\n    \"ko\": {\r\n        \"index.hello\": \"안녕~\"\r\n    },\r\n    \"ja\": {\r\n        \"index.hello\": \"こんにちは~\",\r\n        \"index.welcome\": \"歓迎よ~\"\r\n    }\r\n}\r\n```\r\n```js\r\nt.trans('index.hello') // => index.hello\r\nt.trans('index.welcome') // => index.welcome\r\nt.fallback(['ko', 'ja'])\r\nt.trans('index.hello') // => 안녕~\r\nt.trans('index.welcome') // => 歓迎よ~\r\n```\r\n\r\n## Filter\r\nYou can write in the message a filter function that converts the value.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name|upper}!\",\r\n    \"hello\": \"hello, {name|lower}!\"\r\n}\r\n```\r\n```js\r\nt.filter('upper', str => str.toUpperCase())\r\nt.filter('lower', str => str.toLowerCase())\r\n\r\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\r\nt.trans('hello', {name: 'John'}) // => hello john!\r\n```\r\n\r\n## Formatter\r\nConverts interpolated messages. `values` used for interpolation, and `locale` where messages are located. This is useful when writing plugins.\r\n\r\n```json\r\n{\r\n    \"welcome\": \"<p>welcome, {name}!</p>\",\r\n    \"hello\": \"<span>hello, {name}!</span>\"\r\n}\r\n```\r\n```js\r\nt.formatter((str, values, locale) =>\r\n    str.replace(/<(\\S+)>(.*?)<\\/\\1>/, '<$1 style=\"color:red\">$2</$1>'))\r\n\r\nt.trans('welcome', {name: 'john'})\r\n// => <p style=\"color:red\">welcome, john!</p>\r\n\r\nt.trans('hello', {name: 'john'})\r\n// => <div style=\"color:red\">hello, john!</div>\r\n```\r\n\r\n## Events\r\nSupports events. see API for details.\r\n\r\n## API\r\n### trans(options)\r\nCreate InnoTrans instance.\r\n\r\n```js\r\ntrans({\r\n    locale: 'en',\r\n    fallback: ['ko', 'ja'],\r\n    message: {\r\n        en: {\r\n            'welcome': 'welcome, {name}!'\r\n        },\r\n        ko: {\r\n            'welcome': '환영해, {name}!'\r\n        },\r\n        ja: {\r\n            'welcome': '歓迎よ, {name}!'\r\n        }\r\n    },\r\n    tag: ['{', '}'],\r\n    filter: {\r\n        upper: str => str.toUpperCase(),\r\n        lower: str => str.toLowerCase(),\r\n    },\r\n    formatter: [\r\n        str => str + 😝\r\n    ]\r\n})\r\n```\r\n\r\n#### options\r\n- `locale` - Specifies locale. If not specified, it is automatically inferred. 'UNKNOWN' is specified when inferring fails.\r\n- `fallback` - Specifies another locale to look for messages that are not in the current locale.\r\n- `message` - Message resources.\r\n- `tag` - Prefix and suffix for interpolation. Default `{}`.\r\n- `filter` - Function for converting interpolation values.\r\n- `formatter` - Function for converting interpolated message.\r\n- `plugin` - Plugin to use with.\r\n\r\n### t.trans(key [, values [, options]])\r\nReturns a message that matches the key.\r\n\r\n#### options\r\n- `locale` - Specifies the locale. The current locale is ignored.\r\n- `defaults` - String to return when the message does not exist. If not, a key is returned.\r\n\r\n#### Short method\r\n`t.t(key [, values [, options]])`\r\n\r\n### t.transChoice(key, number [, values [, options]])\r\nReturns a message that matches the key and the quantity number.\r\n\r\n#### Short method\r\n`t.tc(key [, values [, options]])`\r\n\r\n### t.locale([locale])\r\nIf the `locale` argument exists, set a new locale. If not, it returns current locale.\r\n\r\n### t.fallback([fallbacks])\r\nIf the `fallbacks` argument exists, set a new fallbacks. If not, it returns current fallbacks.\r\n\r\n### t.message(locale, messages)\r\nAdd messages.\r\n\r\n```js\r\nt.message('en', {\r\n    'welcome': 'Welcome, {name}!',\r\n    'hello': 'hello, {name}!'\r\n})\r\n```\r\n\r\n### t.removeMessage([locales])\r\nRemove messages. If no `locales` argument, remove all.\r\n\r\n### t.getAddedLocales()\r\nReturns the added message locales.\r\n\r\n### t.tag(tag)\r\nSet prefix and suffix for interpolation.\r\n\r\n```js\r\nt.tag(['<?=', '=>'])\r\n```\r\n\r\n### t.isLoaded()\r\nReturns whether the `load` event fired.\r\n\r\n### t.filter(name, fn)\r\nAdd a filter function.\r\n\r\n### t.formatter(fn)\r\nAdd a formatter function.\r\n\r\n### t.on(event, listener)\r\nAdd an event listener.\r\n\r\n#### `load` - When a message is prepared for the current language.\r\n\r\n```js\r\nconst t = trans({locale: 'en'})\r\nt.on('load', () => render()) // It is fired after \"asyncLoadMessage()\"\r\nasyncLoadMessage().then(messages => t.message('en', messages))\r\n```\r\n\r\n#### `change` - When the current locale is changed.\r\n\r\n```js\r\nconst t = trans({locale: 'en', message})\r\nt.on('change', locale => console.log(locale)) // => ko\r\nt.locale('ko')\r\n```\r\n\r\n#### `add` - When new messages are added\r\n\r\n```js\r\nt.on('add', locale => console.log(locale)) // => ko\r\nt.message('ko', messages)\r\n```\r\n\r\n#### `remove` - When the message is deleted.\r\n\r\n```js\r\nt.on('remove', locales => console.log(locales)) // => ['ko', 'en']\r\nt.removeMessage(['ko', 'en'])\r\n```\r\n\r\n### t.once(event, listener)\r\nAdd an event listener. Runs once.\r\n\r\n### t.off(event [, listener])\r\nRemove the event listener. If no `listener` argument, remove all.\r\n\r\n### t.use(plugin)\r\nAdd a plugin.\r\n\r\n## License\r\nMIT\r\n","readmeFilename":"README.md","gitHead":"4c3822005aaa29dec5cccbdcf613370680faa935","description":"📜 simple localization library (inspired by laravel translation)","bugs":{"url":"https://github.com/skt-t1-byungi/inno-trans/issues"},"homepage":"https://github.com/skt-t1-byungi/inno-trans#readme","_id":"inno-trans@2.0.0-beta.1","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"dist":{"integrity":"sha512-b1mj20i0FeiiVm7DceqahNwFSyFjSUVTpc83OaqJCK37P61XnYcQ/QthQodsekt64a2PhLqW3k1K4gthvke9zQ==","shasum":"1e2d719dc9feb75fe794a155236aa171d29e48ec","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0-beta.1.tgz","fileCount":3,"unpackedSize":9106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1/2fCRA9TVsSAnZWagAAnMIP/jrKCQqLFwhqj/z+gq97\n7FRr9yVdVpu8zelDiMDiraiaZxnhFbyDnxCHcYRoTg8aUvEMQNRgnEf201Bk\nnYiTXedSccwOJKxnWjtE5Htb9pjcKFENLZc/b4gjnJhhhSNfVm+uHTmN87AA\nkMemqO8hvCUKbbZkN5gUf6/QfgpCDdRcmI4iRfz5gbb/gq8avatoMQTzNxzY\nD/vXYhWVKy7qERTmnuE8TRWG2XhIo2YpeR5+CSFKk3lcKF0+PY5o1hrhTpmQ\nopCefN8V//zm4ncn+DGH//XDNNZgpXurA5BR2Mx8dARJavValR34F2gXjXgH\nWhHu4NS0vwNJJ7sWne1y2Um+ERTR5z73ATaU0WntBBFE6T2S7nWU+niQyjX6\n5RNxm5V7WOESd6mN5W+MpdDx2dtFJg9dAY1YDp2C+edbHUpGsTTRGpaDOBGm\ny3hvg9ZqO31+meQqENMwN0D3ZQqdgvZP7RzGuBuxMc20BlKaThEZxJQNNQHF\npjWloaK2Chbm4F4FRXCCCswPaYl8XJ71gwVmCKoquG9P/nc7Qk1k4X9ydm45\nS0AEz6Rd6PLmzVwuYe/NmwepYc6KyNT2KQUqKvViO++aTKnFwhpG04TmYhNv\nvq5gPSg1jZ1oemIccksEqUczLsn+BK3d0xGFCPc9CYeL22tcvw8f80gR/C2t\nPSqy\r\n=XhSe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEQzZUAXkSzNwukhn+91TYp56TKDZFCkUjjZ8rh0ue3rAiEA3Ys2j65GlTprxS3hLLdXZrVgaFQinW5E2YE4Z5fkTds="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0-beta.1_1540881822668_0.5856952965302875"},"_hasShrinkwrap":false},"2.0.0-beta.2":{"name":"inno-trans","version":"2.0.0-beta.2","main":"lib/index.js","module":"dist/inno-trans.es.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"git+https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format es,umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","@skt-t1-byungi/event-emitter":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"readme":"# inno-trans\r\n📜 simple localization library (inspired by laravel translation)\r\n\r\n## Install\r\n```sh\r\nyarn add inno-trans\r\n```\r\n```js\r\n//es6\r\nimport trans from \"inno-trans\";\r\n\r\n//commonjs\r\nconst trans = require('inno-trans');\r\n```\r\n### browser\r\n```html\r\n<script src=\"https://unpkg.com/inno-trans\"></script>\r\n<script>\r\n var trans = InnoTrans;\r\n</script>\r\n```\r\n\r\n## Example\r\n```js\r\nconst t = trans({\r\n    locale: 'en',\r\n    message: {\r\n        en: {\r\n            'hello': 'hello world!'\r\n        }\r\n    }\r\n})\r\n\r\nt.trans('hello') // => hello world!\r\n```\r\n\r\n## Interpolation\r\nYou can use a tag(`{}`) to replace a string with a variable.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name}!\"\r\n}\r\n```\r\n```js\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n### Change Tag\r\n```json\r\n{\r\n    \"welcome\": \"welcome, <?=name=>!\"\r\n}\r\n```\r\n```js\r\nt.tag(['<?=', '=>'])\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n\r\n## Pluralization\r\nYou can choose a message that matches the quantity\r\n```json\r\n{\r\n    \"apples\": \"one apple|many apples\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 1) // => one apple\r\nt.transChoice('apples', 2) // => many apples\r\n```\r\n### Complex\r\n```json\r\n{\r\n    \"apples\": \"{0}none|[1,19]some|[20,*]many\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0) // => none\r\nt.transChoice('apples', 10) // => some\r\nt.transChoice('apples', 20) // => many\r\n```\r\n### with Interpolation\r\n```json\r\n{\r\n    \"apples\": \"{0}none (0)|[1,19]some ({count})|[20,*]many ({count})\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0, {count:0}) // => none (0)\r\nt.transChoice('apples', 10, {count:10}) // => some (10)\r\nt.transChoice('apples', 20, {count:20}) // => many (20)\r\n```\r\n\r\n## Fallback\r\nFallback a different locale when there is no message.\r\n```json\r\n{\r\n    \"en\": {},\r\n    \"ko\": {\r\n        \"index.hello\": \"안녕~\"\r\n    },\r\n    \"ja\": {\r\n        \"index.hello\": \"こんにちは~\",\r\n        \"index.welcome\": \"歓迎よ~\"\r\n    }\r\n}\r\n```\r\n```js\r\nt.trans('index.hello') // => index.hello\r\nt.trans('index.welcome') // => index.welcome\r\nt.fallback(['ko', 'ja'])\r\nt.trans('index.hello') // => 안녕~\r\nt.trans('index.welcome') // => 歓迎よ~\r\n```\r\n\r\n## Filter\r\nYou can write in the message a filter function that converts the value.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name|upper}!\",\r\n    \"hello\": \"hello, {name|lower}!\"\r\n}\r\n```\r\n```js\r\nt.filter('upper', str => str.toUpperCase())\r\nt.filter('lower', str => str.toLowerCase())\r\n\r\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\r\nt.trans('hello', {name: 'John'}) // => hello john!\r\n```\r\n\r\n## Formatter\r\nConverts interpolated messages. `values` used for interpolation, and `locale` where messages are located. This is useful when writing plugins.\r\n\r\n```json\r\n{\r\n    \"welcome\": \"<p>welcome, {name}!</p>\",\r\n    \"hello\": \"<span>hello, {name}!</span>\"\r\n}\r\n```\r\n```js\r\nt.formatter((str, values, locale) =>\r\n    str.replace(/<(\\S+)>(.*?)<\\/\\1>/, '<$1 style=\"color:red\">$2</$1>'))\r\n\r\nt.trans('welcome', {name: 'john'})\r\n// => <p style=\"color:red\">welcome, john!</p>\r\n\r\nt.trans('hello', {name: 'john'})\r\n// => <div style=\"color:red\">hello, john!</div>\r\n```\r\n\r\n## Events\r\nSupports events. see API for details.\r\n\r\n## API\r\n### trans(options)\r\nCreate InnoTrans instance.\r\n\r\n```js\r\ntrans({\r\n    locale: 'en',\r\n    fallback: ['ko', 'ja'],\r\n    message: {\r\n        en: {\r\n            'welcome': 'welcome, {name}!'\r\n        },\r\n        ko: {\r\n            'welcome': '환영해, {name}!'\r\n        },\r\n        ja: {\r\n            'welcome': '歓迎よ, {name}!'\r\n        }\r\n    },\r\n    tag: ['{', '}'],\r\n    filter: {\r\n        upper: str => str.toUpperCase(),\r\n        lower: str => str.toLowerCase(),\r\n    },\r\n    formatter: [\r\n        str => str + 😝\r\n    ]\r\n})\r\n```\r\n\r\n#### options\r\n- `locale` - Specifies locale. If not specified, it is automatically inferred. 'UNKNOWN' is specified when inferring fails.\r\n- `fallback` - Specifies another locale to look for messages that are not in the current locale.\r\n- `message` - Message resources.\r\n- `tag` - Prefix and suffix for interpolation. Default `{}`.\r\n- `filter` - Function for converting interpolation values.\r\n- `formatter` - Function for converting interpolated message.\r\n- `plugin` - Plugin to use with.\r\n\r\n### t.trans(key [, values [, options]])\r\nReturns a message that matches the key.\r\n\r\n#### options\r\n- `locale` - Specifies the locale. The current locale is ignored.\r\n- `defaults` - String to return when the message does not exist. If not, a key is returned.\r\n\r\n#### Short method\r\n`t.t(key [, values [, options]])`\r\n\r\n### t.transChoice(key, number [, values [, options]])\r\nReturns a message that matches the key and the quantity number.\r\n\r\n#### Short method\r\n`t.tc(key [, values [, options]])`\r\n\r\n### t.locale([locale])\r\nIf the `locale` argument exists, set a new locale. If not, it returns current locale.\r\n\r\n### t.fallback([fallbacks])\r\nIf the `fallbacks` argument exists, set a new fallbacks. If not, it returns current fallbacks.\r\n\r\n### t.message(locale, messages)\r\nAdd messages.\r\n\r\n```js\r\nt.message('en', {\r\n    'welcome': 'Welcome, {name}!',\r\n    'hello': 'hello, {name}!'\r\n})\r\n```\r\n\r\n### t.removeMessage([locales])\r\nRemove messages. If no `locales` argument, remove all.\r\n\r\n### t.getAddedLocales()\r\nReturns the added message locales.\r\n\r\n### t.tag(tag)\r\nSet prefix and suffix for interpolation.\r\n\r\n```js\r\nt.tag(['<?=', '=>'])\r\n```\r\n\r\n### t.isLoaded()\r\nReturns whether the `load` event fired.\r\n\r\n### t.filter(name, fn)\r\nAdd a filter function.\r\n\r\n### t.formatter(fn)\r\nAdd a formatter function.\r\n\r\n### t.on(event, listener)\r\nAdd an event listener.\r\n\r\n#### `load` - When a message is prepared for the current language.\r\n\r\n```js\r\nconst t = trans({locale: 'en'})\r\nt.on('load', () => render()) // It is fired after \"asyncLoadMessage()\"\r\nasyncLoadMessage().then(messages => t.message('en', messages))\r\n```\r\n\r\n#### `change` - When the current locale is changed.\r\n\r\n```js\r\nconst t = trans({locale: 'en', message})\r\nt.on('change', locale => console.log(locale)) // => ko\r\nt.locale('ko')\r\n```\r\n\r\n#### `add` - When new messages are added\r\n\r\n```js\r\nt.on('add', locale => console.log(locale)) // => ko\r\nt.message('ko', messages)\r\n```\r\n\r\n#### `remove` - When the message is deleted.\r\n\r\n```js\r\nt.on('remove', locales => console.log(locales)) // => ['ko', 'en']\r\nt.removeMessage(['ko', 'en'])\r\n```\r\n\r\n### t.once(event, listener)\r\nAdd an event listener. Runs once.\r\n\r\n### t.off(event [, listener])\r\nRemove the event listener. If no `listener` argument, remove all.\r\n\r\n### t.use(plugin)\r\nAdd a plugin.\r\n\r\n## License\r\nMIT\r\n","readmeFilename":"README.md","gitHead":"effd2af406bb0f3e52658f3a2f27ff6553fae912","description":"📜 simple localization library (inspired by laravel translation)","bugs":{"url":"https://github.com/skt-t1-byungi/inno-trans/issues"},"homepage":"https://github.com/skt-t1-byungi/inno-trans#readme","_id":"inno-trans@2.0.0-beta.2","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"dist":{"integrity":"sha512-5bCz3Tm9ao/TKIpLtBuSNOPZZbzIhy3AOTBIYhcB9eaXF93yfVIfvTZ0Y/HdCJcilbl4I2lrxt+AgTg1UK3jZg==","shasum":"159e1946cf6a7f0f0167968830b630b3cb775331","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0-beta.2.tgz","fileCount":21,"unpackedSize":58681,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1/63CRA9TVsSAnZWagAA9ZAP/iG4EaWB6AJOG0Ypvq7W\nc+GHn5R3ontTTwrEIL5YUBS0QKoCVt4F42EsGzGJKrvJKTYGL+7AahA70dLN\nZCWJ0Gsm8y6MdTPdDn9Q2Qovvr7EtKTi1sepsZijo8EWIQTwc+dNyRTUsWWh\noT11kkOvln9/0x0GXh23tgJC3OM9tOUjWLLm2NzQxbl7CR5Bmz3WrNg0H4s2\nycLDC8L69ILHqhNEiDLF/1Zlv5DvLY/1rdAilYhvMLo9vUeHCNRHc3fLpdh1\nCdVhsARkOcoBcyJ6wjCuYVi/KyBHQbzgekBNBN9aO836o7ExUUHYg+iRaECQ\nUfN9zTb3AJTgbL9n4LbRQ4OW9heHW6zJ/9FKmTbvkWYpsEmJFsJ3Lbcxjebd\naYKqXY1O9ZeiVRm26k21MYkVwwdYb4W6TRCpMANQBWudGmzXmtN9S3zfEr8v\nDR4XRWdAUyAC+YnChe93QmFJeOteU7+3uOvpMd6/PgDDbw7nxssQVS5ctmTR\nGyFArFUZiDaOgw16YH4HzwC+xHRRc0YQKS4rePvbHuyfMk8m4aWFZgwdJYBw\nAo2kSFWpj9OHEmsVmQ4CKUtdmSCDrSxpijhgUskNQzJZMI5tJutBOmGbgUpr\nnw6BYVj/OUqaRLLGp1R7se53Gmkn/Y56xBA7F+NtXYhY+2K4n9Ni6dUztOfA\nmxSm\r\n=GzGA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHtQx9f9pODrghmz4e8a2/tqEjnkOWlkPxb869tHTz1dAiEArzrIzoX0QwSEuIcu7ABBes+wNPrS74sHVJWaBpqFdY8="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0-beta.2_1540882102412_0.9272954177615802"},"_hasShrinkwrap":false},"2.0.0-beta.3":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.0-beta.3","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"git+https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","@skt-t1-byungi/event-emitter":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"readme":"# inno-trans\r\n📜 simple localization library (inspired by laravel translation)\r\n\r\n## Install\r\n```sh\r\nyarn add inno-trans\r\n```\r\n```js\r\n//es6\r\nimport trans from \"inno-trans\";\r\n\r\n//commonjs\r\nconst trans = require('inno-trans');\r\n```\r\n### browser\r\n```html\r\n<script src=\"https://unpkg.com/inno-trans\"></script>\r\n<script>\r\n var trans = InnoTrans;\r\n</script>\r\n```\r\n\r\n## Example\r\n```js\r\nconst t = trans({\r\n    locale: 'en',\r\n    message: {\r\n        en: {\r\n            'hello': 'hello world!'\r\n        }\r\n    }\r\n})\r\n\r\nt.trans('hello') // => hello world!\r\n```\r\n\r\n## Interpolation\r\nYou can use a tag(`{}`) to replace a string with a variable.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name}!\"\r\n}\r\n```\r\n```js\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n### Change Tag\r\n```json\r\n{\r\n    \"welcome\": \"welcome, <?=name=>!\"\r\n}\r\n```\r\n```js\r\nt.tag(['<?=', '=>'])\r\nt.trans('welcome', {name: 'john'}) // => welcome, john!\r\n```\r\n\r\n## Pluralization\r\nYou can choose a message that matches the quantity\r\n```json\r\n{\r\n    \"apples\": \"one apple|many apples\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 1) // => one apple\r\nt.transChoice('apples', 2) // => many apples\r\n```\r\n### Complex\r\n```json\r\n{\r\n    \"apples\": \"{0}none|[1,19]some|[20,*]many\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0) // => none\r\nt.transChoice('apples', 10) // => some\r\nt.transChoice('apples', 20) // => many\r\n```\r\n### with Interpolation\r\n```json\r\n{\r\n    \"apples\": \"{0}none (0)|[1,19]some ({count})|[20,*]many ({count})\"\r\n}\r\n```\r\n```js\r\nt.transChoice('apples', 0, {count:0}) // => none (0)\r\nt.transChoice('apples', 10, {count:10}) // => some (10)\r\nt.transChoice('apples', 20, {count:20}) // => many (20)\r\n```\r\n\r\n## Fallback\r\nFallback a different locale when there is no message.\r\n```json\r\n{\r\n    \"en\": {},\r\n    \"ko\": {\r\n        \"index.hello\": \"안녕~\"\r\n    },\r\n    \"ja\": {\r\n        \"index.hello\": \"こんにちは~\",\r\n        \"index.welcome\": \"歓迎よ~\"\r\n    }\r\n}\r\n```\r\n```js\r\nt.trans('index.hello') // => index.hello\r\nt.trans('index.welcome') // => index.welcome\r\nt.fallback(['ko', 'ja'])\r\nt.trans('index.hello') // => 안녕~\r\nt.trans('index.welcome') // => 歓迎よ~\r\n```\r\n\r\n## Filter\r\nYou can write in the message a filter function that converts the value.\r\n```json\r\n{\r\n    \"welcome\": \"welcome, {name|upper}!\",\r\n    \"hello\": \"hello, {name|lower}!\"\r\n}\r\n```\r\n```js\r\nt.filter('upper', str => str.toUpperCase())\r\nt.filter('lower', str => str.toLowerCase())\r\n\r\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\r\nt.trans('hello', {name: 'John'}) // => hello john!\r\n```\r\n\r\n## Formatter\r\nConverts interpolated messages. `values` used for interpolation, and `locale` where messages are located. This is useful when writing plugins.\r\n\r\n```json\r\n{\r\n    \"welcome\": \"<p>welcome, {name}!</p>\",\r\n    \"hello\": \"<span>hello, {name}!</span>\"\r\n}\r\n```\r\n```js\r\nt.formatter((str, values, locale) =>\r\n    str.replace(/<(\\S+)>(.*?)<\\/\\1>/, '<$1 style=\"color:red\">$2</$1>'))\r\n\r\nt.trans('welcome', {name: 'john'})\r\n// => <p style=\"color:red\">welcome, john!</p>\r\n\r\nt.trans('hello', {name: 'john'})\r\n// => <div style=\"color:red\">hello, john!</div>\r\n```\r\n\r\n## Events\r\nSupports events. see API for details.\r\n\r\n## API\r\n### trans(options)\r\nCreate InnoTrans instance.\r\n\r\n```js\r\ntrans({\r\n    locale: 'en',\r\n    fallback: ['ko', 'ja'],\r\n    message: {\r\n        en: {\r\n            'welcome': 'welcome, {name}!'\r\n        },\r\n        ko: {\r\n            'welcome': '환영해, {name}!'\r\n        },\r\n        ja: {\r\n            'welcome': '歓迎よ, {name}!'\r\n        }\r\n    },\r\n    tag: ['{', '}'],\r\n    filter: {\r\n        upper: str => str.toUpperCase(),\r\n        lower: str => str.toLowerCase(),\r\n    },\r\n    formatter: [\r\n        str => str + 😝\r\n    ]\r\n})\r\n```\r\n\r\n#### options\r\n- `locale` - Specifies locale. If not specified, it is automatically inferred. 'UNKNOWN' is specified when inferring fails.\r\n- `fallback` - Specifies another locale to look for messages that are not in the current locale.\r\n- `message` - Message resources.\r\n- `tag` - Prefix and suffix for interpolation. Default `{}`.\r\n- `filter` - Function for converting interpolation values.\r\n- `formatter` - Function for converting interpolated message.\r\n- `plugin` - Plugin to use with.\r\n\r\n### t.trans(key [, values [, options]])\r\nReturns a message that matches the key.\r\n\r\n#### options\r\n- `locale` - Specifies the locale. The current locale is ignored.\r\n- `defaults` - String to return when the message does not exist. If not, a key is returned.\r\n\r\n#### Short method\r\n`t.t(key [, values [, options]])`\r\n\r\n### t.transChoice(key, number [, values [, options]])\r\nReturns a message that matches the key and the quantity number.\r\n\r\n#### Short method\r\n`t.tc(key [, values [, options]])`\r\n\r\n### t.locale([locale])\r\nIf the `locale` argument exists, set a new locale. If not, it returns current locale.\r\n\r\n### t.fallback([fallbacks])\r\nIf the `fallbacks` argument exists, set a new fallbacks. If not, it returns current fallbacks.\r\n\r\n### t.message(locale, messages)\r\nAdd messages.\r\n\r\n```js\r\nt.message('en', {\r\n    'welcome': 'Welcome, {name}!',\r\n    'hello': 'hello, {name}!'\r\n})\r\n```\r\n\r\n### t.removeMessage([locales])\r\nRemove messages. If no `locales` argument, remove all.\r\n\r\n### t.getAddedLocales()\r\nReturns the added message locales.\r\n\r\n### t.tag(tag)\r\nSet prefix and suffix for interpolation.\r\n\r\n```js\r\nt.tag(['<?=', '=>'])\r\n```\r\n\r\n### t.isLoaded()\r\nReturns whether the `load` event fired.\r\n\r\n### t.filter(name, fn)\r\nAdd a filter function.\r\n\r\n### t.formatter(fn)\r\nAdd a formatter function.\r\n\r\n### t.on(event, listener)\r\nAdd an event listener.\r\n\r\n#### `load` - When a message is prepared for the current language.\r\n\r\n```js\r\nconst t = trans({locale: 'en'})\r\nt.on('load', () => render()) // It is fired after \"asyncLoadMessage()\"\r\nasyncLoadMessage().then(messages => t.message('en', messages))\r\n```\r\n\r\n#### `change` - When the current locale is changed.\r\n\r\n```js\r\nconst t = trans({locale: 'en', message})\r\nt.on('change', locale => console.log(locale)) // => ko\r\nt.locale('ko')\r\n```\r\n\r\n#### `add` - When new messages are added\r\n\r\n```js\r\nt.on('add', locale => console.log(locale)) // => ko\r\nt.message('ko', messages)\r\n```\r\n\r\n#### `remove` - When the message is deleted.\r\n\r\n```js\r\nt.on('remove', locales => console.log(locales)) // => ['ko', 'en']\r\nt.removeMessage(['ko', 'en'])\r\n```\r\n\r\n### t.once(event, listener)\r\nAdd an event listener. Runs once.\r\n\r\n### t.off(event [, listener])\r\nRemove the event listener. If no `listener` argument, remove all.\r\n\r\n### t.use(plugin)\r\nAdd a plugin.\r\n\r\n## License\r\nMIT\r\n","readmeFilename":"README.md","gitHead":"665aca0dbc9298c7db21771d0328010e1be2ee1a","bugs":{"url":"https://github.com/skt-t1-byungi/inno-trans/issues"},"homepage":"https://github.com/skt-t1-byungi/inno-trans#readme","_id":"inno-trans@2.0.0-beta.3","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"dist":{"integrity":"sha512-5RXdbTWsk1nTGgUt+azLBZ1bBCTbHPdUYMA0L96eoW1+ApDMixW2KiRebFg4zPofObw003QAhDQzxtzquKlbFw==","shasum":"28a3abf7a03b659ad44f8b8b2f40b699ac7021ab","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0-beta.3.tgz","fileCount":21,"unpackedSize":58723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb2AVnCRA9TVsSAnZWagAA6fgP/i6NpaPBuefiqXvo2zTO\nvu6W3xXELdl3VxR2NTY1CznWOBaF7HgrGhR1eUr2e/B5KiYTZbJtwbMtJgd2\nYfU0CDSDxWrK4EwbCdTMQs+6a2qSU39RG6583cQBPbZIKRQoH05zmbAFpEi8\nZto8+duc6vhjdUWUwG+jjtRHi1ARm1PaWurq7SYxQu+AJgHe5W7TXMddhxFD\nbQmLIGcPU8Ka/57o522O7maZ6WWzSQDDzwc5HQ3sunw4bTFsxeGBIeldP+bW\nS+i/rf3c54lNOyluufRchMZ2z6zPn+mpb3+Rq2g9jrfDnfRv/4C+3YphZsTf\nNGuXNfFiUs8iXVcOM52RIhK80fGAoYEGm60bInQB944wQuCh05dXJ73s+428\n2RJj5KbquKZ6RBvhK7MNwX87SxZxLe2wncPVNQ4G8AOpvcyLHy8LBT4puJYL\nfdejyEsGVF2TGzFBqwok7eDCSrwbpyAvXIX3QWdLZhGzAxKyk9t4ZOrQZ6UE\nlABYxw0q1Mq5aucwwQ5X/Ls+HPRUNovmhq6aQenfsDOpu0QR3E5pQRkcmQaN\nGGSKavRK/gV4cu/7gzGO+j5RvZqZ0dj2yAZNwFeoRc9KroMIDDHpVUAgGBgd\nsQCEWEvZ4MbbNH7Sg8X+e8kn/Hzahf9DzQu8JyturyaaDE8+jEfmZ4haU6Dg\nKF3Y\r\n=pARA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXTgyZ6RR9JulA/xaLHzT1v17DQQDrWYxeycp0iys7fQIgIHMOP6G2xzspzpEAh52rFPx1w/4sY+JjAXEJkzR4vLY="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0-beta.3_1540883814995_0.613175843592012"},"_hasShrinkwrap":false},"2.0.0-beta.4":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.0-beta.4","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","@skt-t1-byungi/event-emitter":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"readmeFilename":"README.md","readme":"# inno-trans\n📜 simple localization library (inspired by laravel translation)\n\n## Install\n```sh\nyarn add inno-trans\n```\n```js\n//es6\nimport trans from \"inno-trans\";\n\n//commonjs\nconst trans = require('inno-trans');\n```\n### browser\n```html\n<script src=\"https://unpkg.com/inno-trans\"></script>\n<script>\n var trans = InnoTrans;\n</script>\n```\n\n## Example\n```js\nconst t = trans({\n    locale: 'en',\n    message: {\n        en: {\n            'hello': 'hello world!'\n        }\n    }\n})\n\nt.trans('hello') // => hello world!\n```\n\n## Interpolation\nYou can use a tag(`{}`) to replace a string with a variable.\n```json\n{\n    \"welcome\": \"welcome, {name}!\"\n}\n```\n```js\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n### Change Tag\n```json\n{\n    \"welcome\": \"welcome, <?=name=>!\"\n}\n```\n```js\nt.tag(['<?=', '=>'])\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n\n## Pluralization\nYou can choose a message that matches the quantity\n```json\n{\n    \"apples\": \"one apple|many apples\"\n}\n```\n```js\nt.transChoice('apples', 1) // => one apple\nt.transChoice('apples', 2) // => many apples\n```\n### Complex\n```json\n{\n    \"apples\": \"{0}none|[1,19]some|[20,*]many\"\n}\n```\n```js\nt.transChoice('apples', 0) // => none\nt.transChoice('apples', 10) // => some\nt.transChoice('apples', 20) // => many\n```\n### with Interpolation\n```json\n{\n    \"apples\": \"{0}none (0)|[1,19]some ({count})|[20,*]many ({count})\"\n}\n```\n```js\nt.transChoice('apples', 0, {count:0}) // => none (0)\nt.transChoice('apples', 10, {count:10}) // => some (10)\nt.transChoice('apples', 20, {count:20}) // => many (20)\n```\n\n## Fallback\nFallback a different locale when there is no message.\n```json\n{\n    \"en\": {},\n    \"ko\": {\n        \"index.hello\": \"안녕~\"\n    },\n    \"ja\": {\n        \"index.hello\": \"こんにちは~\",\n        \"index.welcome\": \"歓迎よ~\"\n    }\n}\n```\n```js\nt.trans('index.hello') // => index.hello\nt.trans('index.welcome') // => index.welcome\nt.fallback(['ko', 'ja'])\nt.trans('index.hello') // => 안녕~\nt.trans('index.welcome') // => 歓迎よ~\n```\n\n## Filter\nYou can write in the message a filter function that converts the value.\n```json\n{\n    \"welcome\": \"welcome, {name|upper}!\",\n    \"hello\": \"hello, {name|lower}!\"\n}\n```\n```js\nt.filter('upper', str => str.toUpperCase())\nt.filter('lower', str => str.toLowerCase())\n\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\nt.trans('hello', {name: 'John'}) // => hello john!\n```\n\n## Formatter\nConverts interpolated messages. `values` used for interpolation, and `locale` where messages are located. This is useful when writing plugins.\n\n```json\n{\n    \"welcome\": \"<p>welcome, {name}!</p>\",\n    \"hello\": \"<span>hello, {name}!</span>\"\n}\n```\n```js\nt.formatter((str, values, locale) =>\n    str.replace(/<(\\S+)>(.*?)<\\/\\1>/, '<$1 style=\"color:red\">$2</$1>'))\n\nt.trans('welcome', {name: 'john'})\n// => <p style=\"color:red\">welcome, john!</p>\n\nt.trans('hello', {name: 'john'})\n// => <div style=\"color:red\">hello, john!</div>\n```\n\n## Events\nSupports events. see API for details.\n\n## API\n### trans(options)\nCreate InnoTrans instance.\n\n```js\ntrans({\n    locale: 'en',\n    fallback: ['ko', 'ja'],\n    message: {\n        en: {\n            'welcome': 'welcome, {name}!'\n        },\n        ko: {\n            'welcome': '환영해, {name}!'\n        },\n        ja: {\n            'welcome': '歓迎よ, {name}!'\n        }\n    },\n    tag: ['{', '}'],\n    filter: {\n        upper: str => str.toUpperCase(),\n        lower: str => str.toLowerCase(),\n    },\n    formatter: [\n        str => str + 😝\n    ]\n})\n```\n\n#### options\n- `locale` - Specifies locale. If not specified, it is automatically inferred. 'UNKNOWN' is specified when inferring fails.\n- `fallback` - Specifies another locale to look for messages that are not in the current locale.\n- `message` - Message resources.\n- `tag` - Prefix and suffix for interpolation. Default `{}`.\n- `filter` - Function for converting interpolation values.\n- `formatter` - Function for converting interpolated message.\n- `plugin` - Plugin to use with.\n\n### t.trans(key [, values [, options]])\nReturns a message that matches the key.\n\n#### options\n- `locale` - Specifies the locale. The current locale is ignored.\n- `defaults` - String to return when the message does not exist. If not, a key is returned.\n\n#### Short method\n`t.t(key [, values [, options]])`\n\n### t.transChoice(key, number [, values [, options]])\nReturns a message that matches the key and the quantity number.\n\n#### Short method\n`t.tc(key [, values [, options]])`\n\n### t.locale([locale])\nIf the `locale` argument exists, set a new locale. If not, it returns current locale.\n\n### t.fallback([fallbacks])\nIf the `fallbacks` argument exists, set a new fallbacks. If not, it returns current fallbacks.\n\n### t.message(locale, messages)\nAdd messages.\n\n```js\nt.message('en', {\n    'welcome': 'Welcome, {name}!',\n    'hello': 'hello, {name}!'\n})\n```\n\n### t.removeMessage([locales])\nRemove messages. If no `locales` argument, remove all.\n\n### t.getAddedLocales()\nReturns the added message locales.\n\n### t.tag(tag)\nSet prefix and suffix for interpolation.\n\n```js\nt.tag(['<?=', '=>'])\n```\n\n### t.isLoaded()\nReturns whether the `load` event fired.\n\n### t.filter(name, fn)\nAdd a filter function.\n\n### t.formatter(fn)\nAdd a formatter function.\n\n### t.on(event, listener)\nAdd an event listener.\n\n#### `load` - When a message is prepared for the current language.\n\n```js\nconst t = trans({locale: 'en'})\nt.on('load', () => render()) // It is fired after \"asyncLoadMessage()\"\nasyncLoadMessage().then(messages => t.message('en', messages))\n```\n\n#### `change` - When the current locale is changed.\n\n```js\nconst t = trans({locale: 'en', message})\nt.on('change', locale => console.log(locale)) // => ko\nt.locale('ko')\n```\n\n#### `add` - When new messages are added\n\n```js\nt.on('add', locale => console.log(locale)) // => ko\nt.message('ko', messages)\n```\n\n#### `remove` - When the message is deleted.\n\n```js\nt.on('remove', locales => console.log(locales)) // => ['ko', 'en']\nt.removeMessage(['ko', 'en'])\n```\n\n### t.once(event, listener)\nAdd an event listener. Runs once.\n\n### t.off(event [, listener])\nRemove the event listener. If no `listener` argument, remove all.\n\n### t.use(plugin)\nAdd a plugin.\n\n## License\nMIT\n","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.0-beta.4","dist":{"shasum":"cefb24d3647e8836f8dd9bce085db71ee27d29e4","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0-beta.4.tgz","integrity":"sha512-A3ZDS/oGNjHeJG+u7IQoYlaWrqdSDgG4FlIaL+QPhhkmLyzcmNV6ULs9tLj2JwyKf5qXzTQW2VMJydLnO07sLw==","fileCount":23,"unpackedSize":43718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3m++CRA9TVsSAnZWagAAQBkP/2FA1HvVWe/uOqqAxJbq\nSQ6AuoTWpnqLUQYvYvcub799Cijg2pL65NxfY7oUp+IsWSoyzVsjj3PQga6B\nd1zPZkcle9Rt1U5TkRZq9+AjWUmteM/CmHolML1QgOJibu5ZnIeby6xkm5hm\njrf4SHO3tcpy8ZejTImnt5C95PEl4u/FV2TABBObHGYUbrUtRf5xx0aZC2uR\neYbcGrkUzv6hjGHTX3kYnhF43uABS7Ml0LP3uaQaJ1tOozpK6zHdkUc0it8n\nUVC3R2pDp9G+YGralJQoVjOZ89HEeva+xtUEcSiJHyMCxe6huMehfHyrLwYO\nRWAA/PcHrrIwcUN7LPpUDtb/IsexLpUS1Rfomg+PI+zf/uw9sUCe8EEQFL18\nubaMk5Jzi0A70oUhz9kmT1I9EfU3kqTzJ5n/fuFW3U7aUj6xkxE7h8FBwnIX\nMeC+cU+jlbiFM515hLbKP/3819VgB7u5LDXh3cDstKto/+kPahz3WcsQyf++\nFLAm6hEczMR+AhlCSRizNk6pPSNVH7vYNzOU3gy2JSL/gg839kxmCaZgX9H0\n0kHJMq1FAJkt1hDfG81VbHRFjXgSpioqTbc62tsnRu3FZWIdxfdG76fdO5q0\ncWVYQikt6r9Cfm9LbnVdvqYBLL7WiWy2q6OpM3efcZbk/1ulndiUv1ScTWi0\nzuZT\r\n=44Wf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBFpAUX1FR7KF7giKkbDQl7a2n5Q7/kLN1U9ybAKIetRAiBSEy0dlNOaqRPmbrmdGALExQfoy4oqm/lfR2lmwy/oqg=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0-beta.4_1541304251357_0.7012525081961178"},"_hasShrinkwrap":false},"2.0.0-beta.5":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.0-beta.5","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","@skt-t1-byungi/event-emitter":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"readmeFilename":"README.md","readme":"# inno-trans\n📜 simple localization library (inspired by laravel translation)\n\n## Install\n```sh\nyarn add inno-trans\n```\n```js\n//es6\nimport trans from \"inno-trans\";\n\n//commonjs\nconst trans = require('inno-trans');\n```\n### browser\n```html\n<script src=\"https://unpkg.com/inno-trans\"></script>\n<script>\n var trans = InnoTrans;\n</script>\n```\n\n## Example\n```js\nconst t = trans({\n    locale: 'en',\n    message: {\n        en: {\n            'hello': 'hello world!'\n        }\n    }\n})\n\nt.trans('hello') // => hello world!\n```\n\n## Interpolation\nYou can use a tag(`{}`) to replace a string with a variable.\n```json\n{\n    \"welcome\": \"welcome, {name}!\"\n}\n```\n```js\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n### Change Tag\n```json\n{\n    \"welcome\": \"welcome, <?=name=>!\"\n}\n```\n```js\nt.tag(['<?=', '=>'])\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n\n## Pluralization\nYou can choose a message that matches the quantity\n```json\n{\n    \"apples\": \"one apple|many apples\"\n}\n```\n```js\nt.transChoice('apples', 1) // => one apple\nt.transChoice('apples', 2) // => many apples\n```\n### Complex\n```json\n{\n    \"apples\": \"{0}none|[1,19]some|[20,*]many\"\n}\n```\n```js\nt.transChoice('apples', 0) // => none\nt.transChoice('apples', 10) // => some\nt.transChoice('apples', 20) // => many\n```\n### with Interpolation\n```json\n{\n    \"apples\": \"{0}none (0)|[1,19]some ({count})|[20,*]many ({count})\"\n}\n```\n```js\nt.transChoice('apples', 0, {count:0}) // => none (0)\nt.transChoice('apples', 10, {count:10}) // => some (10)\nt.transChoice('apples', 20, {count:20}) // => many (20)\n```\n\n## Fallback\nFallback a different locale when there is no message.\n```json\n{\n    \"en\": {},\n    \"ko\": {\n        \"index.hello\": \"안녕~\"\n    },\n    \"ja\": {\n        \"index.hello\": \"こんにちは~\",\n        \"index.welcome\": \"歓迎よ~\"\n    }\n}\n```\n```js\nt.trans('index.hello') // => index.hello\nt.trans('index.welcome') // => index.welcome\nt.fallback(['ko', 'ja'])\nt.trans('index.hello') // => 안녕~\nt.trans('index.welcome') // => 歓迎よ~\n```\n\n## Filter\nYou can write in the message a filter function that converts the value.\n```json\n{\n    \"welcome\": \"welcome, {name|upper}!\",\n    \"hello\": \"hello, {name|lower}!\"\n}\n```\n```js\nt.filter('upper', str => str.toUpperCase())\nt.filter('lower', str => str.toLowerCase())\n\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\nt.trans('hello', {name: 'John'}) // => hello john!\n```\n\n## Formatter\nConverts interpolated messages. `values` used for interpolation, and `locale` where messages are located. This is useful when writing plugins.\n\n```json\n{\n    \"welcome\": \"<p>welcome, {name}!</p>\",\n    \"hello\": \"<span>hello, {name}!</span>\"\n}\n```\n```js\nt.formatter((str, values, locale) =>\n    str.replace(/<(\\S+)>(.*?)<\\/\\1>/, '<$1 style=\"color:red\">$2</$1>'))\n\nt.trans('welcome', {name: 'john'})\n// => <p style=\"color:red\">welcome, john!</p>\n\nt.trans('hello', {name: 'john'})\n// => <div style=\"color:red\">hello, john!</div>\n```\n\n## Events\nSupports events. see API for details.\n\n## API\n### trans(options)\nCreate InnoTrans instance.\n\n```js\ntrans({\n    locale: 'en',\n    fallback: ['ko', 'ja'],\n    message: {\n        en: {\n            'welcome': 'welcome, {name}!'\n        },\n        ko: {\n            'welcome': '환영해, {name}!'\n        },\n        ja: {\n            'welcome': '歓迎よ, {name}!'\n        }\n    },\n    tag: ['{', '}'],\n    filter: {\n        upper: str => str.toUpperCase(),\n        lower: str => str.toLowerCase(),\n    },\n    formatter: [\n        str => str + 😝\n    ]\n})\n```\n\n#### options\n- `locale` - Specifies locale. If not specified, it is automatically inferred. 'UNKNOWN' is specified when inferring fails.\n- `fallback` - Specifies another locale to look for messages that are not in the current locale.\n- `message` - Message resources.\n- `tag` - Prefix and suffix for interpolation. Default `{}`.\n- `filter` - Function for converting interpolation values.\n- `formatter` - Function for converting interpolated message.\n- `plugin` - Plugin to use with.\n\n### t.trans(key [, values [, options]])\nReturns a message that matches the key.\n\n#### options\n- `locale` - Specifies the locale. The current locale is ignored.\n- `defaults` - String to return when the message does not exist. If not, a key is returned.\n\n#### Short method\n`t.t(key [, values [, options]])`\n\n### t.transChoice(key, number [, values [, options]])\nReturns a message that matches the key and the quantity number.\n\n#### Short method\n`t.tc(key [, values [, options]])`\n\n### t.locale([locale])\nIf the `locale` argument exists, set a new locale. If not, it returns current locale.\n\n### t.fallback([fallbacks])\nIf the `fallbacks` argument exists, set a new fallbacks. If not, it returns current fallbacks.\n\n### t.message(locale, messages)\nAdd messages.\n\n```js\nt.message('en', {\n    'welcome': 'Welcome, {name}!',\n    'hello': 'hello, {name}!'\n})\n```\n\n### t.removeMessage([locales])\nRemove messages. If no `locales` argument, remove all.\n\n### t.getAddedLocales()\nReturns the added message locales.\n\n### t.tag(tag)\nSet prefix and suffix for interpolation.\n\n```js\nt.tag(['<?=', '=>'])\n```\n\n### t.isLoaded()\nReturns whether the `load` event fired.\n\n### t.filter(name, fn)\nAdd a filter function.\n\n### t.formatter(fn)\nAdd a formatter function.\n\n### t.on(event, listener)\nAdd an event listener.\n\n#### `load` - When a message is prepared for the current language.\n\n```js\nconst t = trans({locale: 'en'})\nt.on('load', () => render()) // It is fired after \"asyncLoadMessage()\"\nasyncLoadMessage().then(messages => t.message('en', messages))\n```\n\n#### `change` - When the current locale is changed.\n\n```js\nconst t = trans({locale: 'en', message})\nt.on('change', locale => console.log(locale)) // => ko\nt.locale('ko')\n```\n\n#### `add` - When new messages are added\n\n```js\nt.on('add', locale => console.log(locale)) // => ko\nt.message('ko', messages)\n```\n\n#### `remove` - When the message is deleted.\n\n```js\nt.on('remove', locales => console.log(locales)) // => ['ko', 'en']\nt.removeMessage(['ko', 'en'])\n```\n\n### t.once(event, listener)\nAdd an event listener. Runs once.\n\n### t.off(event [, listener])\nRemove the event listener. If no `listener` argument, remove all.\n\n### t.use(plugin)\nAdd a plugin.\n\n## License\nMIT\n","licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.0-beta.5","dist":{"shasum":"f936d6f9c2a5a74ed6ec84ac1936df361a4defb0","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0-beta.5.tgz","integrity":"sha512-7ZnhDLt5RxbIZFgp8pjlw4zOJ+thqIu4GUebZnNWeBEWlEHPk//rleRPCG0CI2hEiPkkf9ZzU2QQcq4BH4oMdA==","fileCount":23,"unpackedSize":43680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb3uuaCRA9TVsSAnZWagAA6XkP/198qUV3Uuptrq1VuyWc\nBPhDpUNqIPCu4x2lwSluQH2flXWI1k/a0IvCHIAl34DWH7T11ttfutsu3r9B\nVHXh9biZ32NO7cNgxhz4FxClA9+WOL6WeLdor2/TyCEPmRFdpTBtoCxSG1Ju\nifDJ/QDtjvizOiw7VQxZW8m8ZRHvEcIHdaSavClOVeH6f/Wi7qXd1GTtHRZw\nKeKd+RaHvhbjsAgsEXwfORsPWZKGxt4DYIdFVoZmZLztjhF3ZrhgW7f+S4bZ\nICVPucDtRYmBmU5xkPHOPG6uai1W7c3+hgirumvrasYYmJng9MM8xQwB27VV\nN6iQWT23FAgpd5/TAFZ7sZV2q2bLf31w972zD5L/cpU9EeF7SUhK1Ksv6I1w\naCsocgrsogd5bf9iPsKOR1NbL1702QjgtCZXRXgSaJhxrZbJgInCdZgbwtDO\n/E+ifacnzoxXXOJY/dsOesQfK7TAcj985i3W7+/7ld2NYNNeEk137U72oZys\ns3K3d6w9oDSOeakqvZ83mrKGa73KIS9KEb31uRayjT5a1aNbfnKGWRi6tNHN\ndGGAQCZ/8NAInBIf/WKFrQs/eCRspRlR/PjcNYLvNyxegd3wybNJC/XJnwH2\n6e2m/MzIbPXytaOAR7hw+Zt0cmbNU/cv7J+AhCqfX4DVcXw4gsM5JXXKkpg2\nBZKq\r\n=bj84\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe0VK+PIpNeqGg5uPPPYe1ViFvscPn7Ahg4j6RAjJDvAIgNmar8fAThDVhHdujrThLzdXThOtQm/Hu5S4eT1AI8o0="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0-beta.5_1541335962054_0.3158949378136402"},"_hasShrinkwrap":false},"2.0.0":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.0","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.0","dist":{"shasum":"1194c18932bd8bbaab8b22dd070742b1ce25b4d4","integrity":"sha512-L/7PAeUBD2vTtPth8GvQLOEpGoxMnjYuVBCOwxUg/CMmGO5Tgg3vk/+y2ngJSUv1yWTrztV36Qv5SRCb2uIg6g==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.0.tgz","fileCount":23,"unpackedSize":39400,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4SuDCRA9TVsSAnZWagAAfnkP/2LPGB9TFD4kZTk6pV/E\nZM2ZW6YeAFXwItxr6PeuNV+IJ0yCaKK7GtiVdLnkD650XL80m5VTGe04FXRZ\nDIV3ldnr5M6sub2G+I7HpTfItXBI0pqlUSNO0YNlLFr04eXfvvLb8DJeY+Az\n4ANuKN674vKTuvUapTSXwVbSYYepZBUF6Th2xSkd2anwIANp5Dztbh23U8NT\nu+9UyieH/3zKmt94Da1HekLcFJgYVYcGBGsm80dZr2q5Dbg1x+M5ZA+TGcgO\nRA+Sqso7FkL8KowvtGjIKwttFXzeGEEHQ/nn8QudGkDTlmie1A01SD3a4T+T\nFanE1qiK+6a8vX8xEHarkmKowGbUaKfeAaqe1QDURVkYcFZTPUQzW22cMCTV\ndK06sSPljDK05nom37e/ecPfJ/nPVSQOO9T87JRaF+eVzx4mPOpMdEOrZymB\n6bPZnb7PMJaq31t9g5JftNabWYTP9SAJBP1ohUIeOUHckEiU15/OhOHDwFvt\nAdvz0R/xbAMW8Y1V5XwWHQEj0o4EVCBSvWxBQP6ziGpXQuwswX0BxgZU8FUc\n2sDbRFQCRfFu9WTCw7u/m8ZWKlmGHwkdr0TWHS+CCZxU2Eaew5eGC/z7ucUb\n6dR7GZVrwjL1yZyUTSD3NPyJaOcCweAR6t6VuLiUiuspr+UbHy0GxvBNetI7\nInrR\r\n=HWsa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC+g8WK6RaRbNvtdrMjwDTTKkGS47JXp52bXbeN7oRB0AiAIUkkhi8TX6Sp5CvKfHLtngMCEyGEogHnXA7YyTNgL9A=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.0_1541483394689_0.533114650873453"},"_hasShrinkwrap":false},"2.0.1":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.1","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-includes":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.1","dist":{"shasum":"7ee40f1a9b84be5fbc026a56df44f534fa5134b5","integrity":"sha512-rFmwYVHrRFyRSLLD/pUjAv3PTzo/aU8fUUPedv12OkZkxaPaqnGJOYB8emDBNhP4sPF1/Lw5y9TKbLeym5MKPA==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.1.tgz","fileCount":23,"unpackedSize":40173,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4XHwCRA9TVsSAnZWagAA/ZUP/jDRHRC4klvcVTG824u8\nY8+VOMLo0bNl6fs8EBp/7b0ESeuitRc1N1C2Q35XM6qec/mGsn7voVEP03+B\n2OFKy7iDOlLbYahWScinabwVeOso/QkZbr5kJMZqixwVA56obwWsE436Pfei\nwjthQQ8Kt/Sz7/D84+43C1eWR1cuoLCLJ0vy7Ms+59V2+ZD3BwbP+QXA4VY8\ndg5A40HiQknJ0dCDHNoCngIW2kieZZ01D7wOQ+aMwF0dxu41JwbUIW3XWH73\n+wyzphRNswNycvi+btDbb/xgw4QLE4CYWw/v1IkKf+8FherYq9UvccFHzM9Y\njyDFITw5TsSJ25C0nj2d2iIZUaTzzCoj0BiOXxmmajCoPUbvcUY13Gg2zcHf\nMfaP5hbYNLkHFidpB+ShWJqbJHazAC/piIBZkgSLJltlIhIjp5QuGBHRyqqV\n2hfa8PI49ASdK8zFWfoAaW7aZuCVChU46+4yK51egrZo3pSorNjgz6fsRUD0\n1w/y1dA1KvmFg8e1TyB37P2KAJf/GpyvNUtC16YlbNGbqcqbjvt6+iQiD4wS\nu5wXJHZAuG+SRB1m35DyojiaSYcCr5KqkyMSMrImRcYlni+nkE5n0XsrfP11\nSxwiCFJXdoRBWw/dXVuO65/SpVZ0dC3sOe9KFfzvXXBW98+3aMyuJddJWtuL\nFMxh\r\n=+htJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAGftpftDM/IYpqeqFfoqDJ2H7JuPrKhNNqP22N/n0kQAiBRsZ3VE0I2zfxOjujMTKpdBF7LA/fENXrqmewjWOJnlw=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.1_1541501423659_0.8404380429227625"},"_hasShrinkwrap":false},"2.0.2":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.2","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.2","dist":{"shasum":"37c2a385a03e64cdffa04920e26f2d265b057967","integrity":"sha512-+ID42MjsfA13AwU2wFYXJai+5RIZsjQQSWlU9LhbicFXkvxdvJbPqCMK542DX+W6xkGGyuQ1EGQEHgVom9asng==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.2.tgz","fileCount":23,"unpackedSize":41101,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4YgKCRA9TVsSAnZWagAAUgAP/jDXeUIfMOilZ+YxVluo\nlswpRyhjaCM0mVCoX2prdbS6+/mumGW1T6yxc2Wk2EJx1NAK1iZaviqhm7lc\nvTZUrANb94D+kNtIKOwXy4I60xXdueNg2WioELKK7SMz4XRRGRiZTnL7CylR\nwsWap3sD09CUnm5oH2eOocTjNwREO47DvBeDU0JHjKlCHI3aKnSkUbJDhzWX\nOS4QKQ17aLvd4pui8jIYgEZk/Emn9PTTM+suifhhs2Zbw0DNchr1b1LaNcxu\nTfNcjF7PfpdhbzP1xvFMgkNQCiQjTSlhoncGgCAleSLXyPwX1Hoj8jUTd5E5\n+olUy9dhJ1bUHvcfQ/66Ns3Kyh9uKkIxBUyQm+xtogQ26lWoNcCrJgOld1Uh\n5rPDOwaXwol+t/reuSvBn04pdUArJc0wQNwKcYtcZs7Ej98lIxIRRAJuFqju\n72SVI18exiA9GNTnQjWSPUrzVmxvMvf1+XtBBWZNYcNuEsMPg8Vz7aG76KzT\nNlSY3K58hzs/ec9GkOewL/sCa1tyodZl+QM9AyTXoxiHggeojoXYMJLctepQ\nC3Vi79BrhC7NEUHMGAuPDrze7L1FTMDRV2GlC9pevcg1fSAHLkAbXuxwfK4f\nBAbkSErkiiF8qL1AknxeCunTvZ7kWn2j/BDzjIvSx20775Ff3IMvTUE4AdVB\n2GV+\r\n=wN07\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBXsyIViiA9YAYYGA3EuCm7AlEPLyP8PccrFM/LGppYQAiEAivvszU1mE9E2jgQefvZF772dOs3AUegsarzQvpSyvnw="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.2_1541507081870_0.6632254792390613"},"_hasShrinkwrap":false},"2.0.3":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.3","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.3","dist":{"shasum":"ef701d91ab8f7d955d1f6a0c675381454bdf3073","integrity":"sha512-LIfRB6DWdhgY4Rhp+RM/0V3chCl8trIug97tO6Tv/3trH402wx74GsTbPpYjkpMI3dAarN/CF4ncxUmfIyQE+A==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.3.tgz","fileCount":23,"unpackedSize":41088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4aWjCRA9TVsSAnZWagAAjk0P/3yru+MUG3G37Qa85rDf\n36H8c401dZ+cOE4Ro/CMIFH7xBT4j4+5z31SeK3Lm8XZfx1+EqJptBTNBs4s\nltYdwFK8jF6DWdI5sDJg2ONsHaB405UTIEZFdL1JnG0h2AkV/es8r9/FuMUN\nOTcifiPDC89u6lVB7YkQLY+2x155/KHG1xSPmlMisyHXl4pfZqdRdadGtwLo\nmyc8r2N1uy+4EYDi41E7DX4NtVh/+UpmD92okkRf4zZ6kdWcNbiP3sNVjDhq\nxegJQBm+jj7h3aKUYSfcEl/MZA5Frk3HF9ggIiknK84J+QZsRApd1KPUV9tF\ni/zNjHXdO0c0booXx0m2YHYj/2BDG9QymPdZf+YSPn3pTwAyROqiNa8U12hY\nDCPmScDseLiCyNaHYcVrhUPhbjZD2fegUyFW0Bpwsgif2YEZdAnCm07vLdpf\nVngELarAolql1IrOSrq3WuTXRt+LzA+94eEMdvYLwDrXLpyHQsR5QEtlDL4w\nLKALHya2KvcF+dQ4ubwzsopRvFmJ9p0UA2kQY06DgtuyFOU3wa7gADqiQ1T5\nfopJAUcKW55gpulwpBk6iNU7XpvaswNPIWYSzraW+b7+NcCwgY1w5bSC2pTl\nXJkPYjBh8lXYO08EfnI17fMzuBqv7XlWmV05FkfeDil54AYC9ulx95waGggp\nLbG6\r\n=Cqop\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZXqhH47gf2xxqBcoAeEOJyPdSJg66d8PKp7qGYxhIXgIgQmrZ0cYVxcv26YI1bknRNbOUv6GkBf10oWTFZx2ow3Q="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.3_1541514659182_0.6595980998444431"},"_hasShrinkwrap":false},"2.0.4":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.4","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.4","dist":{"shasum":"19d7f55692bb52303a8718acccc4b7f720d155af","integrity":"sha512-VIn91CvFqArIDmeN2De2GAvm5gSVkO6DASFZVUVkBN2b0GSu/h2WbH/iyTbaYRuL6WzFaBRpWXvMnLGxTY44mg==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.4.tgz","fileCount":23,"unpackedSize":40682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb4hlfCRA9TVsSAnZWagAAYwkP/0P6e6fvwejgtq9UTqw5\nKstFQjXJCIeOaG5qm5pci1ytV332Z+e5ppLYkJZ7rEA+9v0m7bKe/knFnfkh\nF476RBZENqoLnYChHUL6web+i4D5cHGw8tS2xzeLXmslUSyI558hDh3up2pq\nJ+5g4k2SSu+PLXxasykCa2V16SpakQJH1Niyj0sJM+S40abEIB1ddLGDotpy\n1mOT/ZThD0BVCX7emmsbj/spPAdRE2l6PSJ8JMTJCBmSThA3TM5ZWLzb6J6c\nn+ooamvTfbEkyxSGDbYI9LTxTGMb/U78XLdtOUIYT/7MlBjKaC3/47h8808o\n4VbsYB41fHYSIXLaejkSKgS3Z63zfVDovRPhF+FMPqE6TGh8JW9dR22vnTpE\nkfQu1SaU3S8W7JK6qvCWYxof2VKM5/Q5GqQid8rtLvwtZtiPUvaT4oAyXC72\nvACwEAjdnjxFj66nTKR8Ztb57O2WZH9rp1wec+AJCQr9WhuxbOKVmjgvhnkg\n88O6Dj58NA/d1dPHCxULxbKAa5Z+vWiEM/fqwBCOmX14qyuupcS+TgiMAXt3\n/6SwS2ZL27MktZrpkDtCz6q3anwG4RE24214GQsIIT16NV3g2vTp2AkDdR99\nlLyzB1ZUssO2AJZDTsfRqSUmuKQBrGXe1tT82EZOn8l7AV77tti0k7ZJVh0p\nrmCN\r\n=2PAJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEXbWPx/qt24tOI9Fk0hTYpjfkzbfKW+eC7YgAYmKn6xAiEA3ZQlpzFwdfcycA3OlVaxrhCRBw+bPrHp8LbKwtdXVa8="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.4_1541544286346_0.43459512729675187"},"_hasShrinkwrap":false},"2.0.5":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.0.5","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.0-rc.1","bili":"^3.1.2","ts-node":"^7.0.1","tslint":"^5.11.0","tslint-config-byungi":"^0.0.8","typescript":"^3.1.3"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.0","@skt-t1-byungi/array-find":"^0.1.0","@skt-t1-byungi/array-map":"^0.1.0","@skt-t1-byungi/array-reduce":"^0.1.0","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.0.5","dist":{"shasum":"042181a7896b29ff2aa0544aca26677f09630a0a","integrity":"sha512-nqRtSqs/Qqi5c3Wc5YtrrlBwwJcMfZNtR/opzYiQYhIPjf35J7enq7ywS2qV49GNLinag1MrD+A5vzVtTDr+MA==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.0.5.tgz","fileCount":23,"unpackedSize":40686,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb8yfcCRA9TVsSAnZWagAAECkQAJiAQtSseqxcuCqeOjE5\nk8x9q80pTWV+0QIk0sUZrdinQBwy/xbEGuX59nFAGkULWuiLblJDoem522ti\nW1ZBIR7VGM9f438z8XO2nK2qwNaQPWdfacAdtnjvvmSDA0okpRBIDgyec1v9\nmylBKy/sGLU8rA9AYo0gTbjuOrHMGTitZB5Dk9lZDf+jGp+2P8UnEoDwYFag\nhuT0KaDjFSqpm8CmjOk2UTU2Z/7nfljLQuBBey4oDukGljtd1rJx07MvV5sN\nlpEpmnM2GX34jtadH6JAj/gRBUP6jWTa1O5Jm33eH2p4J6382ITeach8CIWZ\nwa8hUoVWLrUcqSyIz12gZqvlZ7tpwUQ3pZQojHzHDugldxRjtgYSXsvSfVXV\n1LjJDT68iKQE8uInwonZfyLxuO3aNjl3w/0yGz7qOyQ/4x6ctc9R6auiRJyE\n/TTbBFJ3TIXO/ey0XsEhOz7jpFINDT4VGLbR1lxTPfnq4eNyw0eRI9LNgPhB\nP8AU4+jJB4005wpeDP0mvKf0NwCZeenbuZzszFcPJiO7iBPmlVH5yliYYaIB\ngs8FpVdZLC7ZTqUSqXXULPiKKOntMTzEKAGJCK3M+t0bAEpk26Rnwmp31Wur\nf4Gsnzl+C5L6DzDJkMQ8X2AYPUgIM9sJDqsoDdcxn5O8h/mu43k1k9rbXEas\nCeAG\r\n=9QmE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVP9mLSG7Oi65mpfyY6sjqqP/p9UEOLiaI2qvxsvd2DAIhAIGJdMXwDwNTrBgNBYZkbX/lnAWztP1M4q9Go0W0321+"}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.0.5_1542662107309_0.23424824220665674"},"_hasShrinkwrap":false},"2.1.0":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.1.0","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.1","bili":"^3.4.2","ts-node":"^7.0.1","tslint":"^5.12.0","tslint-config-byungi":"0.0.9","typescript":"^3.2.2"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.1","@skt-t1-byungi/array-find":"^0.1.1","@skt-t1-byungi/array-map":"^0.1.1","@skt-t1-byungi/array-reduce":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.1.0","dist":{"shasum":"ebaab86dab1f642115b6c35ab26f29023ab37f9f","integrity":"sha512-9diZAhU+7aNTJG+RV+RiHVSGx0VTRf8eYPwFM/tE0KTjKOmnKUj+gZzdLrOGseRkbwK5ZL7brgQOXJISbfR8WQ==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.1.0.tgz","fileCount":23,"unpackedSize":41032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGQY5CRA9TVsSAnZWagAAutEP/1H4ktYyp2Hhyl1WsleC\nHwD18LfJ+ItK197E44jPaA/ARKOM8u88YY4NiBblbcQWopA0PsNLJ6TObQbT\nPiQh/Nm8q1PxcRqBYwRUE6nXxQpNDh3jfrXml5GXMcbOGZtOdCgP6ht0vnbS\nJ6yp4cXh+EUalQ/xzk17/Lc7XwMMYo49nOHy7deHvjEGbzVbuKH2oi/h4/Rl\noKgBgXzC041qbeRW9ja2Q8IJFmpcjplI64xSyZKMI7osggEe9n68UEPOw8qV\najP7UNPjsl9+FpH7bMcQEjqUif9jhs3oQxGzN3R9/VudyMNNvRQoYOtEVlpJ\n+Bnl4Ova9dJUOMtBlhxN4BY8RRJDfDQYESRdOFzzHjkM9fdjl5weSMK3WVwE\nhRBUMtCOgu4MEmxKpZY2Sf+JLARzojj4d1j64Ro/cCJjNGwr9TZwXES1YJfe\nf6aiU7YqJazINME88rgD2wJGc9sHHqp/J3jhJg3SWpRYPZqfCwoGFQpIuPuL\nUKn8WQoRXz48eWXsOo+bX032Jf5dl8qWYTvmCe3acGfKlEF6ymR2VMTCFazV\nwz8Y6iB6WFqXkocxPLazpSd7Yry7WQpqEJJf8j0RjUMgxCN/ZpWCovWj8vUs\nW+jGXimba3nYzfkewgfdf+UOLa6/NbbDjC8JxI8Yc1eyTiQ1Ip2eCa9xoH2R\nH79i\r\n=O8go\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICijV2wYOH6aFbeYtmUoWtPXlPyVq2MysReNhqz2l+htAiBH3OSZNFAJaE1OB2ydkC33XlcyI9wtdOF1GWc5Z0lsmQ=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.1.0_1545143864851_0.5604969462871294"},"_hasShrinkwrap":false},"2.1.1":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.1.1","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.1","bili":"^3.4.2","ts-node":"^7.0.1","tslint":"^5.12.0","tslint-config-byungi":"0.0.9","typescript":"^3.2.2"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.1","@skt-t1-byungi/array-find":"^0.1.1","@skt-t1-byungi/array-map":"^0.1.1","@skt-t1-byungi/array-reduce":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.1.1","dist":{"shasum":"d34700f24681ab5d75c52155dd789602de3883a5","integrity":"sha512-hIBwGHm1ZuZMRFpV7BUV3JGsilVnSOOdjFSOyBjQWyilvjjxuiiK0nbpBbzisWwF3d0l6KJK2cPxCl+mUirW5Q==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.1.1.tgz","fileCount":23,"unpackedSize":40993,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGQsoCRA9TVsSAnZWagAAWusP/22zGvkksdorjigWhp5m\nu7ROqPk1y1N8Z/tM6XUGB8CtosocuiXxtTP8mXiI9NaoPRr5zK+z3rzUPbjF\nemTA3nhKzDzIr4aQMczR3bELn3vuyFl+9VM+6ecKkRoB+N5yA9A1RQVceaCG\nI96QBmNbzkBn7uCo03tDNyIS5qmOtqiZ340Yo3W4spUbgfWRIulbpd6U3Any\ncRJxC8WtywuL8Vg/r6v5QkWvoyyT5KIJHZOvAGDCmMVGE8j8l2t8gEY3rhJi\nbZxwK0fsJ1Xkd3WaFR4AkPaC/M4v/SE08bSOtRZPVvVUFuqsBC3FyxNkGgP1\nYpU6UU2cOSji879ktZgxs9FbSIYAe/GhsNiv9fpI5QJpRaRc/NVdEtoslYpW\n5rK6wf0dLHbZvfFZdBc+mGVIDOvO3sqTVFchrI4igdrbfUH77mApQNCdvfUD\nHOJi9IXZq6dhuQkZf7YVfKL9wbPf8XwwfQiRif41tDcU8HppMgA29N/R5J9p\nztrS7Eq3NJnMEEHWvwK7uw3bOsDB8o7/435BpdcvtrEYyWgSh4uZPFPO7nnA\noWtJXLcAstGgsNTmghayGvHhzlQrPbAumQiqtXKIXWXiPoAkANn71NZU6ixA\n8Yh+EqmxKwcyJwZP7xGoI0Ix5FQE66tt1AIdQjev3VyDZMGos+4TcRQq4XJV\nRUs7\r\n=KzLe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWzhGIym3ieyOoxiJOfcPYlQuTCanaxnSZkvZTxBJizwIgGnHNWrNywg/AgshIBWa4EDYBf/LzTZw0RiRZAsbe5D0="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.1.1_1545145128179_0.10717481108331728"},"_hasShrinkwrap":false},"2.1.2":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.1.2","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.1","bili":"^3.4.2","ts-node":"^7.0.1","tslint":"^5.12.0","tslint-config-byungi":"0.0.9","typescript":"^3.2.2"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.1","@skt-t1-byungi/array-find":"^0.1.1","@skt-t1-byungi/array-map":"^0.1.1","@skt-t1-byungi/array-reduce":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.1.2","dist":{"shasum":"950c9059ef78563fb95409465afdf92d99969f55","integrity":"sha512-vubPOUPYzbjhLxLrJM6l4A3TepbMCkvvUjzIL4NeqLVMEApBFvuR+3/FgzGXk1CnkHLJKoxLru3ge2kvKa5SZw==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.1.2.tgz","fileCount":23,"unpackedSize":41293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGQ5pCRA9TVsSAnZWagAA0P8P/RPr0c5l1wWxmMHrtl//\nuKeIJw4AVL1YFDgcHym2+U32lF/dS4Ha0Bla1izkv4wLH9Fevb4dMwGCm26B\nYe0DETpwbyqnDOxvx0JrYrQn6TtdQPJEQfSg3PaFmtFolSdbKk3vAE/ueaxQ\nQkIBRaBvzhuqRSgiLudrHTTGfYAvhYkQ3946YUrLVWmbyzgMNKXdtHjhfJFh\n/QwCoGFXANGGw1uX58lRa88T6QPjfq+igOxlkqmX2V42pfUJXS0L85FaLVBO\n9reDQjacWEr9RWodx+O6Bqn9U3yM7sENWLLOATbhpbUe2+nQs2MJN4/cWLAg\nelx8Ku3VkCu8mHpTXnf9g/RTNi377ZzrW+wwDu5jtTlFlG7P7e/fPuUWGZT/\nVv40XJ7ERfekaUo5rJkbdom5FVas+tgcBABpArHgoe9g3MnnT/J/ODyOe4f+\n94Mw/hmTGsNsvOZMK/ddFUZoCyBRrACTg1m2JjExpdEnxp4dqxF25wrCLGXc\nWl2jIe/lL8f24+BmeVKijdRu545GnpKIKOsDbpLoa/4mCMAeMqmGMjnELpBa\ns1/5ND6K1E7aaV8W/buazfsvBMC2kNmrNcGUs/Eu4UTDhZiNw1wDkUQicQYk\nTu+psjst2bNiN1jWvY2hU1EHYUosSSmYY2l9O2Y4yoNzsVc+eTg+KoBy7ych\n8V3R\r\n=a1v6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1MJhnG5C2SdL5ilj6YWSBMGxZhskmJjp3Pl5lHPXgXAIgQ8GHrRMCSx8XfS+O5vh76NnsQqX3/BtDUGgbZzM+aWs="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.1.2_1545145960459_0.27485945455816174"},"_hasShrinkwrap":false},"2.1.3":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.1.3","main":"lib/index.js","unpkg":"dist/inno-trans.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","build":"tsc && bili lib/index.js --format umd-min --no-js --no-map --moduleName InnoTrans","prepublishOnly":"npm run build"},"devDependencies":{"ava":"^1.0.1","bili":"^3.4.2","ts-node":"^7.0.1","tslint":"^5.12.0","tslint-config-byungi":"0.0.9","typescript":"^3.2.2"},"dependencies":{"@skt-t1-byungi/array-filter":"^0.1.1","@skt-t1-byungi/array-find":"^0.1.1","@skt-t1-byungi/array-map":"^0.1.1","@skt-t1-byungi/array-reduce":"^0.1.1","tslib":"^1.9.3"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.1.3","dist":{"shasum":"cab658b2577d9f1d7aa4f61a9c0b844f1dbb9708","integrity":"sha512-LxHCLVkzPxpCFPfFL5OltG+41KaHRJYNfdFWTt9Ct8hD48TRC5hUzGkqNAApUUs3Tyll0P0039yZBXci1S/Mzg==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.1.3.tgz","fileCount":23,"unpackedSize":41302,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcGkj2CRA9TVsSAnZWagAAA3QP/Rnd1DVa1KhoAW6ccgFK\nbElct7A0zDwaSMmmnYpv9XC+BGTMBMNiaClLUCeTzMb7NBVEPOeSPfZUN/4g\n2skXccB6J4makAqmW9zCl8klVHKWco8xB/FdUAfJjd828aEzzWzDC8P12coJ\n1H83dCo9vRPWAjxjJJ1QS9PPQ5Nrj5L8i6voaQYcR/TaSFyv5vBsm16/Q2Tj\n1X20pgonjBtITFYXbv62ydqifZQw/+ieREONxLFpcYATP8PgdR9e76rZxG83\nM08BN6eUIsyT5BjbUhyfv2mgf9cmeL3VAQV74lXHxP8YPDjB6XRhSEUzV85m\nKIALvCeQYDGBk9qh0NyKkD6DvcgghNT/l5YXsD8gK8j8B8slATAUtNlk6yOh\nUPt6OBqruCyuwVPb1OayWlY3N/4fCLoRjsgTFtZ4JPxA8TkEttG/JD2Yukgw\nUgdHhc2ViNXu9jXfYGCdSrLkJ5Wqo5VMFP9KgIlc61mqYz6CmtZJHELvHmem\ncAQ+EAkdtdaTG36eFw4xgdjAzr1M+IxGataEbm1QbHOr8ovVE+oKbdHmMdJv\n9o4Ovciax2xREyGGiD2gowGaeFTHNGXQdVfYGKOZcX4Aif91AgGUvQnuWCJ4\nSdM5rNo2YPprkBGAIY9xe2eC8qnN1jqd0DtZxLUGbWauBfynI7IIkqBnprsg\n3ED6\r\n=/MUm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHhxIMqzl2jAFMmfWFRY0Iw/V6E0ozuhlsHKnr0Re2uAAiEAvBHSwVigyw3oyB4kf6u8A4oMwsncLiNHpzbBbVSFBiY="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.1.3_1545226486193_0.14206633730157736"},"_hasShrinkwrap":false},"2.2.0-beta":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.2.0-beta","main":"lib/index.js","module":"dist/index.esm.js","unpkg":"dist/index.umd-min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","prepublishOnly":"npm run build","clean":"rm -rf dist/ lib/ ","build":"npm run clean && tsc & bili lib/index.js --format esm,umd --module-name InnoTrans --bundle-node-modules"},"devDependencies":{"@types/node":"^11.13.4","ava":"^1.0.1","bili":"^4.7.3","ts-node":"^8.1.0","tslint":"^5.15.0","tslint-config-byungi":"0.1.1","typescript":"^3.4.3"},"dependencies":{"@byungi/event-emitter":"^1.0.5","@skt-t1-byungi/array-find":"^0.2.0","@skt-t1-byungi/array-map":"^0.2.0","@skt-t1-byungi/array-reduce":"^0.2.1"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.2.0-beta","dist":{"shasum":"7e565e1cc38ffde67e86fbf66f26db2b00aaa99e","integrity":"sha512-aUXi4xzBNlm5iowApzZB+UYL3XNNnLFg5eJIOpOw3EtIglPZuDL/pEJywT5rojR7KUJ14LOIh653AaEk2mLu5g==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.2.0-beta.tgz","fileCount":26,"unpackedSize":69800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJctZCdCRA9TVsSAnZWagAAQVUP/iCF/O+WDQFD6GWYv0Cl\nq3yNo6W5MfrHslF9fHVE9ZIIF1RY+axzoemQOEvUDBOen54Tmu6bSkynwd3U\nCiauIqnsaZBz/fzlhuGv1tnSje+r2zO9HJMxyxYOohVQWa5ckNtVfVHBjswP\nh3uorvFWqtnuGIxg+BW4MsYZg/hjWbEtjpWEweO3m82olzb721yDOGQCJfWu\nWW7B+9gzrB7IbPqqUdQky489JI91lCl8AB0+ibwGTXsEL2fon9Rdj/fwj3SG\n9h7zj6F+Nkxv1KcfF0R7bblGqBqLfDbAkgfUh3D0/Po77eotj59NFYY5tRT4\nv3RM8/A2vBL7Hj0rGa1yVwbqM2d/3Vk6uZRSMmkftQd7/esotOJm46xC0Rgc\nQNu5E1sZxoT8GkAcyCTHYLGhvSRvbpxsaPzfdnrr578umO+8+yiA95Ueb43C\nATQ92TcLpR569hA+2NTlYElptaVKhli2VgF/uPDubAWurBYxjaDffrTuECtF\n6t9L7KcKutfFYPWJPvefwcwlLuGVv/kbaRjlDc2i/qdFSLE9HDdFj3tbqjnw\nf79r/6WtyeSYmfziS/dAsaD169hycPkP/QmIDZE7XY5wDSzEyxbehSxw0Msw\n7lJp4yRj/ymV3gZubm4+8CE7FvlDM/BVsiiQsFukL/VDEKgLDNsVkoO76gP0\n11AU\r\n=XpGi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCC6t9vtOxd5sOtwwLORy9Kl5wO+YifnIN2LMZR9hfZIgIgY8k8fj474s7ANtzc7anM3YPnI6a0WH6qcLdXscUSyBc="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.2.0-beta_1555402908694_0.4640003049336585"},"_hasShrinkwrap":false},"2.2.0-beta2":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.2.0-beta2","main":"lib/index.js","module":"dist/index.esm.js","unpkg":"dist/index.umd-min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","prepublishOnly":"npm run build","clean":"rm -rf dist/ lib/ ","build":"npm run clean && tsc & bili lib/index.js --format esm,umd --module-name InnoTrans --bundle-node-modules"},"devDependencies":{"@types/node":"^11.13.4","ava":"^1.0.1","bili":"^4.7.3","ts-node":"^8.1.0","tslint":"^5.15.0","tslint-config-byungi":"0.1.1","typescript":"^3.4.3"},"dependencies":{"@byungi/event-emitter":"^1.0.5","@skt-t1-byungi/array-find":"^0.2.0","@skt-t1-byungi/array-map":"^0.2.0","@skt-t1-byungi/array-reduce":"^0.2.1"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.2.0-beta2","dist":{"shasum":"6e6aa07b4cb9efd0c1ede3d24024f3d30e46713d","integrity":"sha512-eRSE7Qh6kMonzPFeI2qprHkBNYWA6W0FQNj9xiAx8RejZhLl/Iq89KXCyDW5tHHnOYB6B68q7qDnfy0Sna1ZdA==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.2.0-beta2.tgz","fileCount":26,"unpackedSize":70556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJctZLzCRA9TVsSAnZWagAAo28P/1LTAmEOuMX/XTwcjb1R\nw/A0krLhpQ8KJXNesdZJ2UQ8Dd8wMglAtEEHUPon5mg1n2Ymlc1p7ufd2x0u\ncGnI6ZPcoADSqe75WyH90jwAo1DRNePG5RtIBDrOg/s0fvhUHfGwnJx2f7XV\nmETrYMHwzJ4ia/cKR0TgbZwlTZG5+AhVRnlrMSI7rSk2LBYEYdAJQqoDxqEO\nXaoJz4bsauQzaVk9FvMt7/twq88AgDSxA5DZMVd0AOq8/yQzlzLdjZw/f7OZ\n2ILMgYeGiLdFfzNVm9UbjPDetdhogf7nMMOxeb2RqkA/1OHcfkeWxZ6tXD0+\n1Ut5PRcJP960S+pGFSP92AWbZR6HlZ8kell4xQ9uZzVOdT2zSk90+3psYg2Y\nvtL9EpAeb5rUW5B+gf88wHY/8Wz4OnqBr2BHbNfKdQXCCEeXmdqo9TTfJMM0\nvxpK08ULYNXrycU62EKlq7EyM5hdIo1qJZmCao+IKXsYE/GBk5JhqR+Uo+ms\nCSc8u9BwTtW+hdwa0XkOC76nOVWU2wMV2/tVez39f1KeLCUY4Pa8WkixkhCq\n1OprJET4pM7eiWrQdxznbQw/VhPwXnNQu+lQXUFso0KaWZYMruGe1vU+WmcK\nsXEjJhJjY75JrhfyDdcaZnA4vQmxePP6dwukBz5EMaxnDJRMW9SIx+v00R+V\n61iE\r\n=AiIN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZjcyGjEOmS5xMeQKWv+rIeJ3JEF++7g5o8+W62q8RmwIgR/Uvfw18jUT5NNxodtwyYkOUOLzNwk90T04t2VbhjmI="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.2.0-beta2_1555403506897_0.5387931863928397"},"_hasShrinkwrap":false},"2.2.0-beta3":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.2.0-beta3","main":"lib/index.js","unpkg":"dist/index.umd.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","prepublishOnly":"npm run build","clean":"rm -rf dist/ lib/ ","build":"npm run clean && tsc & bili lib/index.js --format umd --module-name InnoTrans --bundle-node-modules"},"devDependencies":{"@types/node":"^11.13.4","ava":"^1.0.1","bili":"^4.7.3","ts-node":"^8.1.0","tslint":"^5.15.0","tslint-config-byungi":"0.1.1","typescript":"^3.4.3"},"dependencies":{"@byungi/event-emitter":"^1.0.5","@skt-t1-byungi/array-find":"^0.2.0","@skt-t1-byungi/array-map":"^0.2.0","@skt-t1-byungi/array-reduce":"^0.2.1"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.2.0-beta3","dist":{"shasum":"35ea9969a489d69ace5e95a1d9937337404d0758","integrity":"sha512-2zK7SK6OBOYmOzq40oFnIpzwpT0DUB3DYuGD3z7eSNqoCFAljg2gtEuAMp5s8oEiz0jpiIGNwO4xu4dXbG6zWQ==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.2.0-beta3.tgz","fileCount":25,"unpackedSize":51284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJctu7bCRA9TVsSAnZWagAAYQUP/3ASyJOrJ+cZM0IoVEKZ\njWgy2BD8Sm5lXtyk5T7SNziGr4j4Pjaq4HFDvMWRUIIJW1FguwmF4mqUQuUw\nqARXm/suir1drbz2HZAK6SojN2Vr3CLm7Ub6nnduiCmgEiBRqkv++YwFpzTS\ndz2tQ1OcoaYKE4P8ETNvXFTaSGA5/jqHbDOQ8ZTswxJiIeaOc3oVrq1fb9+V\nYqTvjemwmUX70pNlbMqiBiZd1j0kM10aSzoqFPasc6Al8STciICcdP/4g91W\nrYQbATCiftsjTW7LyrVR9V+3iEMxzQd61JfsWRODIVk00FGpu93p/P5Ggv9c\n9z3dLNGjpiTMX2Nw3bTYM9o/mBqvdIBjQhD5rPlN5UAYWpx+J/uKfGTwe9Ve\n/2y3+53GmIoYdx5vbtSmVvNAsTR9NUOM9cV3QDYjl44tdXakinLn/+lST3e0\nlUbOk8ZdQIEQK2QG2BT+ndNPdwK8NAMOy0juUvX29FR3auNMdSQyfdz7aTzx\nEERzEn74OhJ8JFVRPTY8Vb5sLrseq57c9aQM5E8zPjDLjLVmBbm34wyEF1ap\n2Ms+F0rguxobrblPdHQG71KD/iWv6B8QsATY51Q6V1Fc5NmbJHzPkeLTQMkZ\nJ/QkMdhaxtvNoTHJjzCp0PKjHhDyRFefSHtUcEZNW33xhHM85iLgTkBo94Wu\n+jcb\r\n=n37a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDlh9MpU+HctgkfCJ8ycmEwNMb9ErBZ2TwhYp/AtMnYwAiAQf83rTKSV7hTijYxn5vdE7tJ3b04wHyfj2Reh7pMGSg=="}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.2.0-beta3_1555492570254_0.09795908366574557"},"_hasShrinkwrap":false},"2.2.0":{"name":"inno-trans","description":"simple localization library (inspired by laravel translation)","version":"2.2.0","main":"lib/index.js","unpkg":"dist/index.umd.min.js","types":"lib/index.d.ts","author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"license":"MIT","scripts":{"test":"ava","prepublishOnly":"npm run build","clean":"rm -rf dist/ lib/ ","build":"npm run clean && tsc & bili lib/index.js --format umd-min --module-name InnoTrans --bundle-node-modules"},"devDependencies":{"@types/node":"^12.6.6","ava":"^2.2.0","bili":"^4.8.0","ts-node":"^8.3.0","tslint":"^5.18.0","tslint-config-byungi":"^0.1.1","typescript":"^3.5.3"},"dependencies":{"@byungi/event-emitter":"^1.1.0","@skt-t1-byungi/array-filter":"^0.2.0","@skt-t1-byungi/array-find":"^0.2.0","@skt-t1-byungi/array-map":"^0.2.0","@skt-t1-byungi/array-reduce":"^0.2.1"},"ava":{"extensions":["ts"],"compileEnhancements":false,"require":["ts-node/register"]},"licenseText":"Copyright 2018 skt-t1-byungi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","_id":"inno-trans@2.2.0","dist":{"shasum":"b9d1af7f5263f3780d51c8a6c4ab0197d08f6254","integrity":"sha512-tNh+Q825IzgQ7v098RK8m/1//4cCifIW2QiGDVQ4bfHQH8CHTd29NpuXSM+VOTkgwAY4H+1iX3ut+mvSCH55gQ==","tarball":"https://registry.npmjs.org/inno-trans/-/inno-trans-2.2.0.tgz","fileCount":26,"unpackedSize":80639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLyiICRA9TVsSAnZWagAAekAP/1OK5+KX+I0TTDbChvQF\nE9/z2/wD6hQKSyB6A3Qd0qMXdyss1EQnZ9AlU+uMoXrvk4AwqVAgDnQY2DFY\nVDo46WKxgs73DenmYiLWV0M73FHKqOq4TeW4QfZQ4mbKI/q22AJYgxv7PO75\nunbm7//lkiOV5vitI152wq423HE1Wdaz6/0PXmHvgaj76Cn9T4pnWtYeiXlT\nEytw6EpZyVh4g6A1UqATDzOiobGBYYtbDOcA1P7D68t9tN/q6xZE1fHL7Rf7\nw7qKSi6wx1wRRmT5zMXeYb2Knr/U9D6RPaz3z5IV3KzTiNY+iuzdZUgxnVzd\nK8bncaJhjYu8oiwPgKFER+AAi333MNfGPYcA6WPsbE4tlEDL/lLnw8izwUx4\n8phGEDtmNlKpTY69Dj4YOAGy3FYPMMiAcwwuIwOm0Inuhzzw/jEch+aJuOH5\nR1RhoVH7z8tIrgdHw3ZuTuWmlxcIHyRjcmMZuQ5ugksrUHmLv8RzRtkMa54U\npTXSDPMHegHnx/H4u1Wnvov8dGEFcT4ZB2bjH5VjGJLbZQCL2dP8Ny6QCVZu\nZsw9Ji0+AZmSsltDtb0X4p0rN9rfXKrqiL0saYIcyM02xtcfbeVzCf6x8dJk\nXim8hBSz7dHe2bx/hW+YW1ZEtjKk531p5HkcgP74XFNlZHgrZVre7d83kHtv\nSp5u\r\n=SVEl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOEp5UkEIlABz7mL96mKIsBDtQr3SKuokO9Ejq1I50UwIhAK+8XwN7rffxkMbZoMgwY1NCpT8Td8unf66ZYZxVUVIP"}]},"maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"_npmUser":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/inno-trans_2.2.0_1563371655275_0.038485748328890956"},"_hasShrinkwrap":false}},"readme":"# inno-trans\n📜 simple localization library (inspired by laravel translation)\n\n[![npm](https://flat.badgen.net/npm/v/inno-trans)](https://www.npmjs.com/package/inno-trans)\n[![downloads](https://flat.badgen.net/npm/dt/inno-trans)](https://www.npmjs.com/package/inno-trans)\n\n## Example\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            'hello': 'hello world!'\n        }\n    }\n})\n\nt.trans('hello') // => hello world!\n```\n\n## Install\n```sh\nyarn add inno-trans\n```\n```js\nconst InnoTrans = require('inno-trans');\n```\n\n### browser\n```html\n<script src=\"https://unpkg.com/inno-trans\"></script>\n<script>\n var t = InnoTrans({...});\n</script>\n```\n## Features\n\n### Interpolation\nInterpolate using tag bracket (`{}`).\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            welcome: 'welcome, {name}!'\n        }\n    }\n})\n```\n```js\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n\n#### Change interpolation tag bracket.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            welcome: 'welcome, <?=name=>!'\n        }\n    }\n})\n```\n```js\nt.tag(['<?=', '=>'])\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n```\n\n### Pluralization\nChoose a message that matches the quantity.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            apples: 'one apple|many apples'\n        }\n    }\n})\n```\n```js\nt.transChoice('apples', 1) // => one apple\nt.transChoice('apples', 2) // => many apples\n```\n#### Complex pluralization\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            apples: '{0}none|[1,19]some|[20,*]many'\n        }\n    }\n})\n```\n```js\nt.transChoice('apples', 0) // => none\nt.transChoice('apples', 10) // => some\nt.transChoice('apples', 20) // => many\n```\n\n### Fallback\nFallback a another locale when there is no message.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {},\n        ko: {\n            'index.hello': '안녕~'\n        },\n        ja: {\n            'index.hello': 'こんにちは~',\n            'index.welcome': '歓迎よ~'\n        }\n    }\n})\n```\n```js\nt.trans('index.hello') // => index.hello\nt.trans('index.welcome') // => index.welcome\n\nt.fallbacks(['ko', 'ja'])\n\nt.trans('index.hello') // => 안녕~\nt.trans('index.welcome') // => 歓迎よ~\n```\n\n### Filter\nConverts interpolation values.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            welcome: 'welcome, {name|upper}!',\n            hello: 'hello, {name|lower}!'\n        }\n    }\n})\n```\n```js\nt.addFilter('upper', str => str.toUpperCase())\nt.addFilter('lower', str => str.toLowerCase())\n\nt.trans('welcome', {name: 'John'}) // => welcome JOHN!\nt.trans('hello', {name: 'John'}) // => hello john!\n```\n\n#### Common filter\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            abc: 'ab {0} {1}'\n        }\n    }\n})\n```\n```js\nt.addFilter('*', str => str.toUpperCase())\nt.trans('abc', {0: 'cd', 1: 'ef') // => ab CD EF\n```\n\n### Formatter\nConverts interpolated messages.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            welcome: 'welcome, {name}!',\n        }\n    }\n})\n```\n```js\nt.addFormatter((str, values, locale)=> {\n    console.log(`str: ${str}, values: ${JSON.stringify(values)}, locale: ${locale}`)\n    return '<p>' + str + '</p>'\n})\n\nt.trans('welcome', {name: 'john'})\n// str: welcome, john!, values: {\"name\":\"john\"}, locale: en\n// => <p>welcome, john!</p>\n```\n\n### Event\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    message: {\n        en: {\n            welcome: 'welcome, {name}!',\n        },\n        ko: {\n            welcome: '안녕, {name}!',\n        }\n    }\n})\n\nt.trans('welcome', {name: 'john'}) // => welcome, john!\n\nt.on('changeLocale', () => {\n    t.trans('welcome', {name: 'john'}) // => 안녕, john!\n})\n\nt.locale('ko')\n```\n\n#### events\n- `changeLocale`\n- `changeFallbacks`\n- `changeTag`\n- `addMessages`\n- `removeMessages`\n- `addFilter`\n- `removeFilter`\n- `addFormatter`\n- `removeFormatter`\n- `*` - Global event.\n\n## API\n### InnoTrans(options)\nCreate InnoTrans instance.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    fallbacks: ['ko', 'ja'],\n    messages: {\n        en: {\n            'welcome': 'welcome, {name}!'\n        },\n        ko: {\n            'welcome': '환영해, {name}!'\n        },\n        ja: {\n            'welcome': '歓迎よ, {name}!'\n        }\n    },\n    tag: ['{', '}'],\n    filters: {\n        upper: str => str.toUpperCase(),\n        lower: str => str.toLowerCase(),\n    },\n    formatters: [\n        str => str + 😝\n    ]\n})\n```\n\n#### options\n- `locale` - Specifies current locale. If not, it is automatically inferred.\n- `fallbacks` - Specifies another locales to fallback.\n- `messages` - Message resources.\n- `tag` - Prefix and suffix for interpolation. Default `{`,`}`.\n- `filters` - Function for converting interpolation values.\n- `formatters` - Function for converting interpolated message.\n- `plugins` - Plugin to use.\n\n### t.trans(key [, values [, options]])\nReturns a message that matches the key.\n\n#### options\n- `locale` - Specifies the locale. The current locale is ignored.\n- `defaults` - String to return instead of the key when a message does not exist.\n\n```js\nconst t = InnoTrans({\n    locale: 'en',\n    messages: {\n        en: { hello: 'hello!' },\n        ko: { hello: '안녕!' }\n    }\n})\n\nt.trans('welcome') // => welcome\nt.trans('welcome', undefined, {defaults: 'Welcome~!'}) // => Welcome~!\nt.trans('hello') // => hello!\nt.trans('hello', undefined, {locale: 'ko'}) // => 안녕\n```\n\n#### Short method\n\n```js\nt.t('hello', {name: 'john'})\n```\n\n### t.transChoice(key, number [, values [, options]])\nReturns a message that matches the key and the quantity number.\n\n```js\nt.addMessages('en', {bought: 'I bought one|I bought many things!'})\n\nt.transChoice('bought', 1) // => I bought one\nt.transChoice('bought', 10) // => I bought many things!\n```\n\n#### Short mehotd\n```js\nt.tc('apples', 3, {count: 3});\n```\n\n### t.locale([locale])\n\n```js\nt.locale('ko') // Change locale to \"ko\".\nt.locale() // => 'ko'\n```\n\n### t.fallbacks([fallbacks])\n\n```js\nt.fallbacks(['ko', 'ja'])\nt.fallbacks() // => ['ko', 'ja']\n```\n\n### t.addMessages(locale, messages)\n\n```js\nt.addMessages('en', {\n    'welcome': 'Welcome, {name}!',\n    'hello': 'hello, {name}!'\n})\n```\n\n### t.removeMessages(locale[, key])\nIf no `key` argument, remove all messages in the locale.\n\n```js\nt.removeMessages('en', 'welcome')\nt.removeMessages('en')\n```\n\n### t.getAddedLocales()\nReturns the added message locales.\n\n```js\nt.getAddedLocales() // => ['en', 'ko', 'ja']\nt.removeMessages('en')\nt.getAddedLocales() // => ['ko', 'ja']\n```\n\n### t.hasMessage(locale [, key])\n```js\nt.hasMessage('ko') // => false\n\nt.addMessages('ko', {hello: '안녕!'})\n\nt.hasMessage('ko') // => true\nt.hasMessage('ko', 'hello') // => true\nt.hasMessage('ko', 'others') // => false\n```\n\n### t.tag(tag)\nSet prefix and suffix for interpolation.\n\n```js\nt.tag(['<?=', '=>'])\n```\n\n### t.addFilter(name, filter)\nAdd a filter function.\n\n### t.removeFilter(name[, filter])\nRemove a filter function.\n\n### t.addFormatter(formatter)\nAdd a formatter function.\n\n### t.removeFormatter(formatter)\nRemove a formatter function.\n\n### t.use(plugin)\nAdd a plugin.\n\n## License\nMIT\n","maintainers":[{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"}],"time":{"modified":"2022-06-19T01:24:06.584Z","created":"2018-01-07T15:27:46.634Z","0.1.1":"2018-01-07T15:27:46.634Z","1.0.0":"2018-01-07T15:34:37.054Z","1.0.0-1":"2018-01-07T15:39:21.368Z","1.0.1":"2018-01-07T23:56:46.004Z","1.1.0":"2018-01-09T05:02:23.031Z","1.1.1":"2018-01-09T05:35:12.380Z","1.1.2":"2018-01-09T05:44:33.198Z","1.1.3":"2018-01-10T06:59:29.530Z","1.1.4":"2018-01-10T07:05:53.632Z","1.1.5":"2018-01-16T06:25:09.223Z","1.1.6":"2018-03-13T09:09:23.236Z","2.0.0-beta.1":"2018-10-30T06:43:42.782Z","2.0.0-beta.2":"2018-10-30T06:48:22.598Z","2.0.0-beta.3":"2018-10-30T07:16:55.209Z","2.0.0-beta.4":"2018-11-04T04:04:11.512Z","2.0.0-beta.5":"2018-11-04T12:52:42.224Z","2.0.0":"2018-11-06T05:49:54.888Z","2.0.1":"2018-11-06T10:50:23.901Z","2.0.2":"2018-11-06T12:24:42.011Z","2.0.3":"2018-11-06T14:30:59.284Z","2.0.4":"2018-11-06T22:44:46.470Z","2.0.5":"2018-11-19T21:15:07.395Z","2.1.0":"2018-12-18T14:37:44.989Z","2.1.1":"2018-12-18T14:58:48.354Z","2.1.2":"2018-12-18T15:12:40.584Z","2.1.3":"2018-12-19T13:34:46.359Z","2.2.0-beta":"2019-04-16T08:21:48.894Z","2.2.0-beta2":"2019-04-16T08:31:47.044Z","2.2.0-beta3":"2019-04-17T09:16:10.379Z","2.2.0":"2019-07-17T13:54:15.387Z"},"keywords":["i18n","translation","localization","localize","globalize"],"repository":{"type":"git","url":"https://github.com/skt-t1-byungi/inno-trans.git"},"author":{"name":"skt-t1-byungi","email":"tiniwz@gmail.com"},"license":"MIT","readmeFilename":"README.md"}