{"_id":"@dropshot/i18n-po","_rev":"18-b65b1228ddeaa160aeab557eb197d25b","name":"@dropshot/i18n-po","dist-tags":{"latest":"0.2.3"},"versions":{"0.1.0":{"name":"@dropshot/i18n-po","version":"0.1.0","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.0","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"6e497dea076bff44f4d91e4e25b4b6c04b99bc7f","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.0.tgz","fileCount":13,"integrity":"sha512-QqGbtg6qxB/r9FaXmKsWslhDOaBQtwts5ZYqhn2P2Ua8ejWNZPewXAGdC6PylXqYXNxOiqFqLiVS2RsFygNKKQ==","signatures":[{"sig":"MEUCIQDeX8RzoMAoB541bjPs+UPk0MAWd60x2Q41/YaDSAdUagIgUsDEdBeju5Rj4WKkiqYWcbRdsu4RCMXz1Z00fVYSY6Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42308},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.0.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/1e09685f8e24714025b5e8acb9354f56/dropshot-i18n-po-0.1.0.tgz","_integrity":"sha512-QqGbtg6qxB/r9FaXmKsWslhDOaBQtwts5ZYqhn2P2Ua8ejWNZPewXAGdC6PylXqYXNxOiqFqLiVS2RsFygNKKQ==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.0_1785979136979_0.8584069178493958","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@dropshot/i18n-po","version":"0.1.1","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.1","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"5c66f4d72ca811044b02441dd5e06bed0a4bcf21","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.1.tgz","fileCount":14,"integrity":"sha512-oVt86fM7Z0uEqMviTnTeaDto4/61Oevt+U0u+WovaNC2uSPPrZTHgqwlhD19LGrlHJ/bDQYOy5y2Fv69VZekbQ==","signatures":[{"sig":"MEQCIFig6E/+6TWbe4jF3/NXoacoWJmQD/H1ZrLwsYt3QhKqAiAZMIHMhaGI5COrSlrmAHg/DqbAoJmQi8yH6PwW8uq/9w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.1.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/6b09fb4fd4bc2ea70757d5488d3e76f0/dropshot-i18n-po-0.1.1.tgz","_integrity":"sha512-oVt86fM7Z0uEqMviTnTeaDto4/61Oevt+U0u+WovaNC2uSPPrZTHgqwlhD19LGrlHJ/bDQYOy5y2Fv69VZekbQ==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.1_1786183292702_0.6709808527733143","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@dropshot/i18n-po","version":"0.1.2","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.2","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"9a073b52b465f89c0fb286404f416a6d8b089273","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.2.tgz","fileCount":14,"integrity":"sha512-F4P+8jdBZjQkewbT/Zpof4cdAbPwGZutLHMKKI8ZrmLEuAcHtCqn1xps3wPmdbkFuApEIRSSV8NKE+8Etqq88A==","signatures":[{"sig":"MEQCIE/4CV9vrPadQ4LiCam9snB20lcsGTCtGVGUeOVpyIVKAiBWrAZLmdYw4CxgdR0Xjq6ZO6OdP/KL14kpcVx0Y3QZmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.2.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/1ac2c1096df965977891acfaa23631a7/dropshot-i18n-po-0.1.2.tgz","_integrity":"sha512-F4P+8jdBZjQkewbT/Zpof4cdAbPwGZutLHMKKI8ZrmLEuAcHtCqn1xps3wPmdbkFuApEIRSSV8NKE+8Etqq88A==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.2_1786204645994_0.21625308215259054","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@dropshot/i18n-po","version":"0.1.3","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.3","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"34be4ec372881ff5cec7d82948e0e4d66e7e8a1b","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.3.tgz","fileCount":14,"integrity":"sha512-lKNDoYa1bWlool5Rktjr+QwyGlJZVFsV3teTEpI6gKgpd1oXHn/0xM8t4mOe1rRRN/sPwzohbXyvkrImTvtUKw==","signatures":[{"sig":"MEUCIBFTSg3lSDkAxfUH5plxBE9JqutiDEV5RI1n0BtEgWsjAiEA3Uf+LE1W/M45A9WMmhUhdum1LZVUNJ+ybbNH//PVTXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.3.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/83c9bd6b1b1eb239261c4a6975a93af8/dropshot-i18n-po-0.1.3.tgz","_integrity":"sha512-lKNDoYa1bWlool5Rktjr+QwyGlJZVFsV3teTEpI6gKgpd1oXHn/0xM8t4mOe1rRRN/sPwzohbXyvkrImTvtUKw==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.3_1786206619771_0.593568824415768","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@dropshot/i18n-po","version":"0.1.4","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.4","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"64ebbb62896138c7b3a527dcbccd613626ea3ca4","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.4.tgz","fileCount":14,"integrity":"sha512-LUmH8GI6hB0RzJ25t3uC2yXygM1bJKbfXio9hTAVpT0jqKdOSA12SjzOIEC9ZTgKK+ZD2nGW8MOexupcijATBg==","signatures":[{"sig":"MEYCIQCQZFPQJW/vI2RGaTmirHjjQoidRi/62+/Io1NbNrwKFQIhAIOkFsusp8UMWo0DCIotBkM55ehONsWQZfJe9v6gKOB0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.4.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/efe04f6ddab553bed6ac909fed74f19c/dropshot-i18n-po-0.1.4.tgz","_integrity":"sha512-LUmH8GI6hB0RzJ25t3uC2yXygM1bJKbfXio9hTAVpT0jqKdOSA12SjzOIEC9ZTgKK+ZD2nGW8MOexupcijATBg==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.4_1786248404814_0.3713846747706988","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@dropshot/i18n-po","version":"0.1.5","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.5","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"aa78e5ab03968e6e034353c6f455b63bacaf3b54","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.5.tgz","fileCount":14,"integrity":"sha512-jRZRTM1oo/uDuhuf1G7rNR5G58erE8wz76fBL4PTvT1RbQLhzCMa276arCCgK43s1KQ8t3LEE86BKJQP7Cqw/w==","signatures":[{"sig":"MEUCIHipDr8r/dcTcPQOyTe7C6dvBIP1x+nQc6vcGjHGsRnQAiEA3W15vgLUgpGGnJl9YUdlCUvXFLgprEwMCynADSSBchY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.5.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/bfaa20701d7e6e4d3889da20d399ade0/dropshot-i18n-po-0.1.5.tgz","_integrity":"sha512-jRZRTM1oo/uDuhuf1G7rNR5G58erE8wz76fBL4PTvT1RbQLhzCMa276arCCgK43s1KQ8t3LEE86BKJQP7Cqw/w==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.5_1786250987329_0.10225860309533608","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@dropshot/i18n-po","version":"0.1.6","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.6","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"72c3ea0c4bd754b05f35d95b50749c44bfe935e2","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.6.tgz","fileCount":14,"integrity":"sha512-hoN8si4WGyWYSpO+ohPxkTxgt6pW9IP1uNu1J+/ZJntNPjV86BJpZfYTlVJm3GhMQnOjKAaC++AdwrfXmGfo9Q==","signatures":[{"sig":"MEQCIHVXKXxfm+NZKeP7hR+2GHkRdyyj5a3IRmbnXcjWcYSzAiBGQIOm02bn6jeBISV46MXvk90d772Vx4WYWFOnJqsZ9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.6.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/024f39f010367e46e6f0046206d9f91a/dropshot-i18n-po-0.1.6.tgz","_integrity":"sha512-hoN8si4WGyWYSpO+ohPxkTxgt6pW9IP1uNu1J+/ZJntNPjV86BJpZfYTlVJm3GhMQnOjKAaC++AdwrfXmGfo9Q==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.6_1786269249618_0.6232942786602211","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@dropshot/i18n-po","version":"0.1.7","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.7","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"dcc372e4a571e45360ffa20fc9da261e65700e01","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.7.tgz","fileCount":14,"integrity":"sha512-Gd7yfMvOP8Wv92KXX+jFx+U3L7rI7jsaP0iU1mIGmAHS9bbRW/bm32xjMsujhmJ/m1ArX3HY6Gz+Z0AG/7sCBA==","signatures":[{"sig":"MEQCIE7FiuJBmEtR+8DdxnnbMQ3tAI9C6VcGodE4cwLmNlMJAiA6Gx85mrXWlrFvI0gMRjfb1k8oVjDZad+g3vpedGyCmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.7.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/9755fea67932cae6eca03c7a74a76103/dropshot-i18n-po-0.1.7.tgz","_integrity":"sha512-Gd7yfMvOP8Wv92KXX+jFx+U3L7rI7jsaP0iU1mIGmAHS9bbRW/bm32xjMsujhmJ/m1ArX3HY6Gz+Z0AG/7sCBA==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.7_1786273490269_0.9543111312130612","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@dropshot/i18n-po","version":"0.1.8","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.8","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"312bc96fd028a91a72994e7ebbb86feaeee05f60","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.8.tgz","fileCount":14,"integrity":"sha512-pYTWQtVj6qtDHNlsev8WeaSj6LHxZWu4JVolTLzFGAn78650B6xUlR5qLxVx03270pUK/57YxNJVZgTYZW3/Xg==","signatures":[{"sig":"MEUCIQD4bR4c+jao/c/ruks/TC2qI7VS3GBBJGzwfmJmg/2vWAIgOqOGsiwKpRWZSjzHaSaE/ZrRxeTsxZkPcewQiDPOtiM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.8.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/d4a7709eb087549181d68cf8c3fe4a92/dropshot-i18n-po-0.1.8.tgz","_integrity":"sha512-pYTWQtVj6qtDHNlsev8WeaSj6LHxZWu4JVolTLzFGAn78650B6xUlR5qLxVx03270pUK/57YxNJVZgTYZW3/Xg==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.8_1786279073621_0.7721984988838153","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@dropshot/i18n-po","version":"0.1.9","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.1.9","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"314bb42794eb0ce0333cb63c052456d76e411eaa","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.1.9.tgz","fileCount":14,"integrity":"sha512-THeXk/2CjhsDpdM7b5UUUidEj02M1sI0jzByLFow7kTOI/H1rJ5lam3TLxBKtYxMPBx630DTWwgaAauLxJ6ncQ==","signatures":[{"sig":"MEUCIQDxl6Udd4jFfriMkoKkh60NCI6V8dRu6Mu3RyOJ57utKgIgKsde2joKFdeHJtNnlQPXdNkldtTdG3jmCqUyQPgku9Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52629},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.1.9.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/f2b97a937c2326bd7c984c6c94d26149/dropshot-i18n-po-0.1.9.tgz","_integrity":"sha512-THeXk/2CjhsDpdM7b5UUUidEj02M1sI0jzByLFow7kTOI/H1rJ5lam3TLxBKtYxMPBx630DTWwgaAauLxJ6ncQ==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.1.9_1786346328530_0.7997902927270251","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@dropshot/i18n-po","version":"0.2.0","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.2.0","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"e2825cf4995ea8be7c2c034b5f191e4fb2bbd60c","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.2.0.tgz","fileCount":14,"integrity":"sha512-0cIeICh42UkEcWZ3Lm/gnZ9JmOP8nuOtR8Mctv8O2SumQ8IDzXdi26VjkJz27sKgpditZ+yOcoez/W321o7aRA==","signatures":[{"sig":"MEUCIGYhpebyPSgjKo/8lzeML6Sw4TLJAaq6ZGQa1yjwWPUVAiEAyqBBj0qXHkaNacT3eby21bnPw4wjR35q9Wk39a/Vf9I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49860},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.2.0.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/bf4c5657f716394e019ee17e3c15cbc9/dropshot-i18n-po-0.2.0.tgz","_integrity":"sha512-0cIeICh42UkEcWZ3Lm/gnZ9JmOP8nuOtR8Mctv8O2SumQ8IDzXdi26VjkJz27sKgpditZ+yOcoez/W321o7aRA==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.2.0_1786522139519_0.005862231434092813","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@dropshot/i18n-po","version":"0.2.1","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.2.1","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"},{"name":"karamyu","email":"bonokong03@gmail.com"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"c723df6b6bc46c4b5358c183d8f6bfdcdd9f68b8","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.2.1.tgz","fileCount":14,"integrity":"sha512-GwzAsaN166zK6tOddpbiiUeKXL21w/syAR1zb93zKiJuMAwP4ptJoJ3XUl/J5FKnYr4eW9mDbp+C/gNNJDhDxA==","signatures":[{"sig":"MEQCIFMbQF4dBolCzZIlRQzqZ9+PLWqGqjAqT3ZiSsy0deQFAiALzUjMVLxFXeIkgEGpCwggHSRay8pyffQTQm92ui7SPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52883},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.2.1.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/5c54158920df82305ddabff7d8c1ab85/dropshot-i18n-po-0.2.1.tgz","_integrity":"sha512-GwzAsaN166zK6tOddpbiiUeKXL21w/syAR1zb93zKiJuMAwP4ptJoJ3XUl/J5FKnYr4eW9mDbp+C/gNNJDhDxA==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.2.1_1788165284692_0.4548801036780472","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@dropshot/i18n-po","version":"0.2.2","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"license":"MIT","_id":"@dropshot/i18n-po@0.2.2","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"},{"name":"karamyu","email":"bonokong03@gmail.com"}],"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"0e1f6f43f9834ad2960cc90dd121c29e52f04d08","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.2.2.tgz","fileCount":15,"integrity":"sha512-3hCt3lvsCTInK5Rw4Gcf9tYI5VNUVJTJxc5br354DQ4EsHJy7gcotdH2p1k0SVGpFdefD9AXR6QnSLTGfso0DQ==","signatures":[{"sig":"MEUCIAnbfSmzr3J+goKXM4OxyE72LA3P6IVOocBQ0pfVjEFuAiEA2FOpa+9+5osordPWOwbdznJB0JcRFuMLPrPasz5xF24=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54585},"main":"./src/index.mjs","type":"module","_from":"file:dropshot-i18n-po-0.2.2.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"_resolved":"/tmp/a499a05eaf84c7f71a91d200f29dc29f/dropshot-i18n-po-0.2.2.tgz","_integrity":"sha512-3hCt3lvsCTInK5Rw4Gcf9tYI5VNUVJTJxc5br354DQ4EsHJy7gcotdH2p1k0SVGpFdefD9AXR6QnSLTGfso0DQ==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/i18n-po_0.2.2_1788944973666_0.03688976724230253","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"_id":"@dropshot/i18n-po@0.2.3","bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"dist":{"shasum":"42f630d0f5095530dbe376d9a50270da56ea85a7","tarball":"https://registry.npmjs.org/@dropshot/i18n-po/-/i18n-po-0.2.3.tgz","fileCount":15,"integrity":"sha512-7/ckHrN8yhk+1mQiSkMCemVqrc6y1NsmU6D7tDfJVIY04etF63RKLCS5dSER/DC7j0zvRo7D4RJceob9fezxwQ==","signatures":[{"sig":"MEUCIAq27dTrbkMknwbcIqdN8PW4C8Ui68aSouZdvrH8LizGAiEAg7Xf1qdPAYBvhpdmGllJs7pmhO/wn/QRYp1raK2r13I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCvxFv54FpBbkbOHHT1fzD+AaygLaK30zqEDyEfPDMGYgIhANgBPpI27+m2YvibEvtqsuD8gfXqXMOJWEA3WY9kpH+S"}],"unpackedSize":54585},"main":"./src/index.mjs","name":"@dropshot/i18n-po","type":"module","_from":"file:dropshot-i18n-po-0.2.3.tgz","types":"./src/index.d.ts","exports":{".":{"types":"./src/index.d.ts","default":"./src/index.mjs"}},"license":"MIT","version":"0.2.3","_npmUser":{"name":"jiro-developers","email":"developers@jirocorp.io"},"homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"_resolved":"/tmp/482cba8d2817ab8d4715190e2af9b6e2/dropshot-i18n-po-0.2.3.tgz","_integrity":"sha512-7/ckHrN8yhk+1mQiSkMCemVqrc6y1NsmU6D7tDfJVIY04etF63RKLCS5dSER/DC7j0zvRo7D4RJceob9fezxwQ==","repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"_npmVersion":"10.9.8","description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","directories":{},"maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"},{"name":"karamyu","email":"bonokong03@gmail.com"}],"_nodeVersion":"22.23.2","dependencies":{"@formatjs/icu-messageformat-parser":"^3.5.16"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/i18n-po_0.2.3_1789957375085_0.3311066501972888"}}},"time":{"created":"2026-08-06T01:18:56.836Z","modified":"2026-09-21T02:22:55.375Z","0.1.0":"2026-08-06T01:18:57.138Z","0.1.1":"2026-08-08T10:01:32.855Z","0.1.2":"2026-08-08T15:57:26.155Z","0.1.3":"2026-08-08T16:30:19.917Z","0.1.4":"2026-08-09T04:06:44.983Z","0.1.5":"2026-08-09T04:49:47.471Z","0.1.6":"2026-08-09T09:54:09.781Z","0.1.7":"2026-08-09T11:04:50.426Z","0.1.8":"2026-08-09T12:37:53.795Z","0.1.9":"2026-08-10T07:18:48.696Z","0.2.0":"2026-08-12T08:08:59.661Z","0.2.1":"2026-08-31T08:34:44.831Z","0.2.2":"2026-09-09T09:09:33.783Z","0.2.3":"2026-09-21T02:22:55.190Z"},"bugs":{"url":"https://github.com/jiro-developers/dropshot-i18n/issues"},"license":"MIT","homepage":"https://github.com/jiro-developers/dropshot-i18n#readme","keywords":["gettext","po","i18n","l10n","icu","messageformat"],"repository":{"url":"git+https://github.com/jiro-developers/dropshot-i18n.git","type":"git","directory":"packages/po"},"description":"gettext PO 카탈로그 엔진 — 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기","maintainers":[{"name":"jiro-developers","email":"developers@jirocorp.io"},{"name":"seob717","email":"seob717@jirocorp.io"},{"name":"jonghu","email":"jonghun@jirocorp.io"},{"name":"seongjun_jirocorp","email":"seongjun@jirocorp.io"},{"name":"karamyu","email":"bonokong03@gmail.com"}],"readme":"# @dropshot/i18n-po\n\ngettext PO 카탈로그 엔진이다. 파싱·패치·3-way 병합과 ICU MessageFormat 검증·미리보기를 한다.\n\n의존성은 [`@formatjs/icu-messageformat-parser`](https://formatjs.io/docs/intl-messageformat-parser/) 하나뿐이고, 특정 i18n 프레임워크(next-intl·i18next·Lingui 등)를 알지 못한다. `.po` 파일만 다룬다.\n\n```bash\nnpm install @dropshot/i18n-po\n```\n\n## 왜 또 하나의 PO 파서인가\n\n`gettext-parser`·`pofile` 같은 성숙한 파서가 이미 있다. 이 패키지가 따로 있는 이유는 **파싱이 목적이 아니라서**다. 번역 편집기를 GitHub PR 위에서 굴리려다 보니 파서 위에 얹을 것들이 필요했다.\n\n- **3-way 병합** — 편집 중에 base가 바뀌면 무엇이 충돌인지 가려야 한다\n- **ICU 분기 편집** — `{count, plural, ...}`를 사람이 칸별로 고칠 수 있게 뜯고 다시 조립한다\n- **원문 수정 검증** — 원문을 고칠 때 인자가 사라졌는지, 번역이 여전히 맞는지 본다\n\n이 셋이 필요 없다면 기존 파서가 더 나은 선택이다.\n\n## API\n\n### 파싱·병합\n\n```js\nimport {parsePo, mergeCatalogs} from '@dropshot/i18n-po';\n\nconst source = parsePo(fs.readFileSync('messages/ko.po', 'utf8'));\nconst target = parsePo(fs.readFileSync('messages/en.po', 'utf8'));\n\n// 두 카탈로그를 키로 맞춰 한 줄씩 짝짓는다\nconst rows = mergeCatalogs(source, target);\n// [{key, msgctxt, msgid, source, translation, fuzzy, references, description}, ...]\n```\n\n`key`와 원문(`source`)은 카탈로그 형식에 따라 다음처럼 읽는다. `parsePo`는 두 형식을\n모두 지원하므로 마이그레이션 중인 카탈로그도 같은 API로 다룰 수 있다.\n\n```po\n# legacy: 헤더에 X-Message-Key가 없다\nmsgctxt \"billing\"\nmsgid \"aaa111\"\nmsgstr \"결제를 완료했어요\"\n\n# next-intl 4.14: 헤더에 \"X-Message-Key: msgctxt\\n\"가 있다\nmsgctxt \"billing.aaa111\"\nmsgid \"결제를 완료했어요\"\nmsgstr \"Payment complete\"\n```\n\n- legacy의 `key`는 `msgctxt`가 있으면 `` `${msgctxt}.${msgid}` ``, 없으면 `msgid`이고,\n  `source`는 원본 카탈로그의 `msgstr`이다.\n- 4.14의 `key`는 `msgctxt ?? msgid`, `source`는 `msgid`이다. id와 원문이 같으면 codec이\n  `msgctxt`를 생략하므로 `msgid`가 논리 키를 겸한다.\n- `key`는 병합·목록용 논리 키다. 패치 대상은 PO의 실제 필드 조합인 raw locator\n  `{msgctxt, msgid}`로 지정한다. 같은 논리 키라도 두 형식의 raw locator는 다르다.\n\n`parsePo`는 인접 항목 사이에 빈 줄이 없어도 각 항목을 읽는다. 중복 키·헤더, 누락되거나\n중복된 필드, 잘못된 문자열과 지원하지 않는 구문은 오류를 던진다. obsolete 항목은 제외한다.\nPO의 `msgid_plural`/`msgstr[n]`은 지원하지 않으며 복수형은 기존처럼 ICU MessageFormat으로 다룬다.\n\n`parsePoCatalog(content)`는 `{format, entries}`를 반환한다. `format`은 실제 헤더를 읽은\n`'message-key'` 또는 `'legacy'`이며 `entries`는 `parsePo(content)`와 같다. 형식을 비교해야\n하는 호출부는 본문 문자열 검색 대신 이 API를 사용한다.\n\n### 패치\n\n파싱과 동일한 항목 경계·이스케이프 규칙으로, 원문을 통째로 다시 쓰지 않고 해당 항목만 고친다. 다른 항목의 주석·순서·포맷이 보존된다.\n\n```js\nimport {patchMsgstr, setFuzzy} from '@dropshot/i18n-po';\n\nlet po = fs.readFileSync('messages/en.po', 'utf8');\nconst locator = {msgctxt: 'billing.aaa111', msgid: '결제를 완료했어요'};\npo = patchMsgstr(po, locator, 'Payment complete');\npo = setFuzzy(po, locator, true);\n```\n\n### 3-way 병합\n\n편집을 시작한 시점(base)과 지금의 원격(head)이 갈렸을 때, 내 편집을 어디까지 살릴 수 있는지 가린다.\n\n```js\nimport {threeWayMergeMsgstr} from '@dropshot/i18n-po';\n\nconst {applied, dropped, conflicts} = threeWayMergeMsgstr({base, head, mine});\n```\n\n- `applied` — 그대로 얹힌 것\n- `dropped` — head에서 키가 사라져 얹을 곳이 없는 것\n- `conflicts` — base 이후 head도 바뀌어 사람이 골라야 하는 것\n\n### ICU 검증\n\n```js\nimport {validateMessage, validateSourceSyntax, restoreArgFormats} from '@dropshot/i18n-po';\n\nvalidateSourceSyntax('안녕 {name}');              // {ok, errors}\nvalidateMessage('안녕 {name}', 'Hi {name}');       // 번역이 원문의 인자를 지키는지\n\n// 번역자가 {count, number} 를 {count} 로 흘렸을 때 원문 기준으로 되살린다\nrestoreArgFormats('{count, number}개', '{count} items');\n```\n\n### ICU 분기 편집\n\n`{count, plural, one {...} other {...}}` 같은 메시지를 칸별 편집이 가능한 형태로 뜯고 되돌린다.\n\n```js\nimport {analyzeBranches, buildBranchMessage, branchRank, hasAdvancedIcu} from '@dropshot/i18n-po';\n\nconst info = analyzeBranches('{count, plural, one {# item} other {# items}}');\n// {arg: 'count', type: 'plural', branches: [{selector: 'one', message: '# item'}, ...]}\n\ninfo.branches[0].message = '# thing';\nbuildBranchMessage(info); // 다시 ICU 문자열로\n\nhasAdvancedIcu(msg);  // 칸 편집으로 감당 못 하는 중첩인지 (true면 원문 그대로 편집)\nbranchRank('one');    // 표시 순서 (zero < one < two < few < many < other)\n```\n\n### 미리보기\n\n인자를 채우지 않고 \"번역자가 보게 될 모양\"을 그린다.\n\n```js\nimport {renderPreview, renderPreviewParts} from '@dropshot/i18n-po';\n\nrenderPreview('{count, plural, one {# item} other {# items}}', 'en');\n// 문자열 하나로\n\nrenderPreviewParts('안녕 {name}');\n// [{type: 'text', value: '안녕 '}, {type: 'slot', name: 'name'}]\n// 슬롯을 다르게 칠하고 싶을 때\n```\n\n파싱에 실패하면 둘 다 `null`을 준다 — 편집 중인 깨진 문자열에도 안전하다.\n\n`<date>포맷키</date>`는 dropshot 본체의 날짜 규약이다 — 태그 이름은 `date` 하나이고,\n포맷 키를 태그 본문에 리터럴로 넣는다(`<date>date.mixed</date>`). 미리보기는 이 규약을\n알아보고 실제 날짜 모양으로 찍는다. 본문이 규약 키가 아니거나 비어 있으면(번역가가 지운\n경우) `date.numeric`으로 폴백하고, 변수·중첩 태그처럼 리터럴 하나가 아니면 다른 태그와\n똑같이 본문을 펼친다. `date`가 아닌 태그를 서식용으로 쓰고 있었다면 이 버전부터 동작이\n바뀐다 — 태그 이름이 정확히 `date`일 때만 해당한다.\n\n```js\nrenderPreview('<date>date.mixed</date> 공개', 'ko');\n// '2026년 8월 2일 공개'\n```\n\n### 날짜 서식\n\n`<date>` 태그가 쓰는 날짜 서식 계산이다.\n\n```js\nimport {formatDate, resolveDateFormatKey, DATE_FORMAT_KEYS} from '@dropshot/i18n-po';\n\nformatDate(new Date(), 'date.mixed', 'ko'); // '2026년 8월 2일'\nresolveDateFormatKey('date.잘못');           // 'date.numeric' — 모르는 키는 폴백\nDATE_FORMAT_KEYS;                            // 키 목록\n```\n\n키는 여덟 종(`date.numeric`·`date.compact`·`date.mixed`·`date.short`·`datetime.mixed`·\n`datetime.short`·`time.numeric`·`time.short`)이고 같은 키가 로케일마다 다른 모양으로\n찍힌다(`date.short`가 ko에서는 `8월 2일`, en에서는 `08.02`). 본체의 dayjs 패턴 규약을\n재구현한 것이라 로케일을 모르면 `ko`로, 키를 모르면 `date.numeric`으로 떨어진다 — 둘 다\n본체 `resolveDateFormatKey`와 같은 폴백이다. 타임존은 `UTC` 고정이라 실행 환경을\n따라가지 않는다.\n\n`date.compact`(`26.08.02` / `08.02.26`)만 본체에 없고 여기서 먼저 정의한 것이다. 쓰려면\n본체 앱의 `format` 네임스페이스와 `packages/shared`의 `DATE_FORMAT_KEY_LIST`에 같은 키를\n넣어야 한다 — 그전에 메시지에서 쓰면 본체가 `date.numeric`으로 폴백해 미리보기와 화면이\n어긋난다.\n\n### CSV 왕복\n\n번역을 스프레드시트로 내보내고 다시 받는다.\n\n```js\nimport {serializeCsv, parseCsv, parseTranslationCsv} from '@dropshot/i18n-po';\n```\n\n## 라이선스\n\nMIT\n","readmeFilename":"README.md"}