{"_id":"@akson/cortex-shopify-translations","_rev":"18-ef95b6ffb2a4a9d7585982ed6aba461a","name":"@akson/cortex-shopify-translations","dist-tags":{"latest":"2.3.2"},"versions":{"1.0.0":{"name":"@akson/cortex-shopify-translations","version":"1.0.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.0.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"dist":{"shasum":"dad47fad4877f686a0c4d161c5f6b423579bcd67","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.0.0.tgz","fileCount":6,"integrity":"sha512-LuUkvYgnvcHt1aPqIitEwDewKwbNXZC2/iqopM6TzXPZSPlxUiNVphm5KYAneZozGbDSjBriqsg/R89E7MHvDg==","signatures":[{"sig":"MEUCIQCqKGSIh9ZK5s2vxt51WjD/qU3iCmJRfqRoYKnxgJBI+wIgNyONK/JNbetFPxFDKXhjgmDsmSvwUOSG/3iklYSxhjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37314},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"e4da312f745886429cc0f593d855e3194eed4ee0","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","build":"tsup","extract":"node extract-translations.mjs","publish":"node publish-translations.mjs --force","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"dotenv":"^16.4.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.0.0_1758751423396_0.31372001180883236","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@akson/cortex-shopify-translations","version":"1.0.2","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.0.2","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"655ae6c61259c60268b679abc1f68e803cda39bd","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.0.2.tgz","fileCount":25,"integrity":"sha512-YBS1EnVhQAmIkDKddeIx8I7ZXtFDFLuxAxgi0ZwVDSjTbuHG7ikXefY5BFdoqtwal7Lw+aDBiNR+85k1e5566w==","signatures":[{"sig":"MEUCIQCp3d/xz0Lfk7+SJU1aJhMTqODyFtCB93W0GTFioNx4BAIgPMcaMZxLIYyP7xWY28y7WqbPJ+XeBTbL/flDrjs+aBw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":652700},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d75904ed772c6f64ea10016d348c5fc79fc50345","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","publish":"node publish-translations.mjs --force","workflow":"npm run extract:split","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","extract:split":"node extract-translations.mjs --split","workflow:full":"npm run extract:split && echo 'Edit files in translations/content/, then run: npm run merge && npm run publish'","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"11.5.1","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"24.7.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.0.2_1758786328497_0.1415728962870071","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@akson/cortex-shopify-translations","version":"1.1.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.1.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"67fcff3195fbb3f5cdad1c60c946373e3ad4ae4b","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.1.0.tgz","fileCount":25,"integrity":"sha512-+6GDeAWI88PpBj4YZnLGze/Mj2eO3quScTv/Cv6qfv5yr1VuNvnD0iJ/wMSskmcs0VyGlGX+UgxHzY9Z42tkpg==","signatures":[{"sig":"MEUCIAraGB0gpWfyBXvy877orCOaZLkiSKf/uVxZaBJFG2toAiEAn1EKA1pLL0A3F2speYMWRVFo+8O+5IxUu9kXE4yq1rY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":653361},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"bf84286b201ac4ede45c7f231c6c0f2e4af9c056","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","publish":"node publish-split.mjs --force","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"11.5.1","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"24.7.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.1.0_1758793258067_0.019275757149355144","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@akson/cortex-shopify-translations","version":"1.1.1","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.1.1","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"869285e4aff807e3f8d8dcf5b13e8e5c6e471bec","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.1.1.tgz","fileCount":25,"integrity":"sha512-hLeER1X9BdQPacFojZp3yLYD65SL974+jdBH6bgKCwTcvVfLQVVQnxQUl24pzEZgtGlA4j46GCOURIend0RpIQ==","signatures":[{"sig":"MEQCIAe9H8KGxj1wYKqS5PWWuQ8n+TVLABoUWm2cICzr0Ek6AiBvNe5wpYFwPp3kHDbIwmkXtAgyNqBB9ALh8S9rWG3U1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":653765},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"bf84286b201ac4ede45c7f231c6c0f2e4af9c056","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"11.5.1","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"24.7.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.1.1_1758793337351_0.21353406311475265","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@akson/cortex-shopify-translations","version":"1.2.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"c8cf9c42c05d739218b4b2f1852902e021c149cd","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.0.tgz","fileCount":25,"integrity":"sha512-v1Wqomy72cRzclvJ0JkkbKZgFBjRDXVQsVnCL0A3M0SC9ubyviJ14dP2AzJb4YqkdQKPS0KYV4EOIugeWrIaPg==","signatures":[{"sig":"MEYCIQCmkw98tYU9M3ybVq+BzvxQnkgz6cF2u8AnC6XeudAFQQIhAILjIxAHbm21g/BdnmefLXjH56R+wSBB2ZzjENeTl2eD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":653985},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d88836b83c0ee7c19551fe74bbb7da1d1ebb8109","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.0_1758873516525_0.20910361456316928","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@akson/cortex-shopify-translations","version":"1.2.1","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.1","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"b074c9da770f3511d10cd393abda866ba41ff5ff","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.1.tgz","fileCount":26,"integrity":"sha512-FKXK14lVfjlVOryijrkLVz+f2+krS3EK0raRS/DI2cpt4b2MamSmenT5M0wIb/FJ70JyovAtqRxNEeFCmM0TXg==","signatures":[{"sig":"MEUCID99GauWEEJCZDrlO8u/WhYuZLK36V+GS2FMyOmU5ByEAiEAybezcpy7bjcE9cU1Ye/lCu+JatansMXRcUyO4B76l6Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":665235},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d88836b83c0ee7c19551fe74bbb7da1d1ebb8109","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.1_1758876860378_0.9660429096019885","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@akson/cortex-shopify-translations","version":"1.2.2","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.2","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"ab3e0ce6e7d9ae468f3a78cc5261aafb392668e5","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.2.tgz","fileCount":26,"integrity":"sha512-8hmXrYp16/RVyES2R0nwxahVTTPB+QuDuDN7lmRBcPScgSjBu/M5vs5e+ng9wEX7WcsUNfNNOwuVcEegMhMZRQ==","signatures":[{"sig":"MEYCIQDr/CLHRbIEF0V+2E95r5mtym5wSyLmyXih0ZH0+QPC5AIhAL4Zzj71a8HjApQZhrL9I1P+jZXYBySyNgxfMRFQ8L80","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":665286},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d88836b83c0ee7c19551fe74bbb7da1d1ebb8109","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.2_1758893942358_0.46082924725769425","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@akson/cortex-shopify-translations","version":"1.2.3","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.3","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"c09df807f36844423b01a73f3a9283e13528c9b5","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.3.tgz","fileCount":26,"integrity":"sha512-kxRy5w9CU/OQfxeUMAcRMYPkfuPbeKDVJDS6oNQtxCDNFE1kYcAw5WZP9pd0OmegP79V780HLgNC+upmLqUGeQ==","signatures":[{"sig":"MEQCIGaCzmzBUIfRsIWirM+DxXLugA5ZYNUGvbsyybZKoHxwAiBRYYogu703MUw5dTeK8KCDKQGU2ZFme8mIfG/rDQMLyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":665372},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d88836b83c0ee7c19551fe74bbb7da1d1ebb8109","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.3_1758893994203_0.45268036450184024","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@akson/cortex-shopify-translations","version":"1.2.4","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.4","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"b053e26e1f66e3741da7b6384de9c95f598e5606","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.4.tgz","fileCount":26,"integrity":"sha512-28Q4TaMlbqjD+gjNEUCCk35xefea33wOSmKpeTP3qfvsJllOiGG6nqQq6Jqx5Xt1lZ1QvidK4QZ1ZlYDVYRyPQ==","signatures":[{"sig":"MEQCICzd9AILkJRlP0Q4Y8rCRahZa6hI4F7ZTgxoKe13mtPoAiB5LQqI3imfqngF1Zst3dvEwvNMPDa9v6vWxYsda8Ik3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":666024},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d88836b83c0ee7c19551fe74bbb7da1d1ebb8109","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.4_1758895158334_0.12546876108150506","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"@akson/cortex-shopify-translations","version":"1.2.5","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@1.2.5","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"c5b4fa62f803e2281c4a98ba021e378641611270","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-1.2.5.tgz","fileCount":26,"integrity":"sha512-R9Urms/r5EwdG6Dyd0oprM52H8i8Ml0y1/a9h88XlYTnuADdJOq2sdI6oqSHvtQB8/FFmw6cexc7J1D2zYHDHQ==","signatures":[{"sig":"MEQCIBaNyzkUe6A/AIzG/4qPf5MeDHTRhgTeTc41nlxMaDAUAiB3GXTVxU35PqzbnS7VIsBQBffQu+GZsZnZjSAlvEcdxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":666026},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"09bb1cf683395d238043d526528e9c5265c4b7d4","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_1.2.5_1758895534441_0.09452910079955767","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@akson/cortex-shopify-translations","version":"2.0.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.0.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"06a2a663704f77fecc6e5b7d17777150cd89959d","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.0.0.tgz","fileCount":26,"integrity":"sha512-mQ/SZgjOZ1M0u4MbP1eU8U+l66e5H+1u9rwTxTyohE9sNp7vlv7eePgD2cbhFYuPs7UhnJmx02XSdbbR1PeVVw==","signatures":[{"sig":"MEYCIQCj3+EFte3QXvaEOzZ4lTS1woKagCxSYSMY30PURuJi2gIhAPlmLIWoCoidlArC19aWHK1ghdTxyM1zsm6r7kXtjxOP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":661979},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"d9f2b5c058a0dd7f45cffef5a437080a1f72b9b2","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.0.0_1758928684132_0.8581174014501656","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@akson/cortex-shopify-translations","version":"2.0.1","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.0.1","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"b1cdd1eba3a08374a61be9069b5b8c09be630422","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.0.1.tgz","fileCount":26,"integrity":"sha512-eeUwT7DdqqeLJyUHtoAsWDeLehqOzHZb0vZE3mxkrt9qRChwlP2/Dnh5R81V/+9rx3gBbcxfW8otVyok0WOnXg==","signatures":[{"sig":"MEUCIQDykDGxK40n1Ee0ZiL6O6H/DqWo/96slRaonA7qLo7+7gIgYx7z3Z/0WhNYLhO3VpP6uQbSZFVtDNb5UVN9fEWrEVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":663047},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"a9c5a9e90d81270e4f64d4cf3f3bb837d60621ca","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.8.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"20.18.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.0.1_1758990263228_0.3935690056651957","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@akson/cortex-shopify-translations","version":"2.1.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.1.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"052d1c84e908781e5fc23770def7e7c7a8c7f45b","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.1.0.tgz","fileCount":24,"integrity":"sha512-QKoYnIM7vJmYQ/vg367PPqBdg75KVBBRbi3WN1t6pYdcyi1bJwodcK+jhUizly9oNyx/bG+EMOuUSSLwzYYIFg==","signatures":[{"sig":"MEUCIQDn+AChms/vDXpadlwPRyOaMKRcnH6GUlC2wq+8c8BTlwIgdwkcZs/KjVkdWYmIoC4qZg0tKFON3RUPrCeMZ1CW+Fg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":637836},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"6d94b4aac01d4899a59c97872cc1e638a1310d61","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.9.3","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"22.20.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.1.0_1763485352256_0.42123127166045937","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@akson/cortex-shopify-translations","version":"2.1.1","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.1.1","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"8da834e4ac9a15dcf6c9b6d704134d10d04df74b","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.1.1.tgz","fileCount":24,"integrity":"sha512-VaEiG2Q6WzGLHzQaLrDM9KwzKB5eEIFd/mUc7UBZLkDbY9FVIktAhei+hW7oKBbqfyhsloG/6LEFfzhJyGRD9A==","signatures":[{"sig":"MEQCIFdkoQ7EJYtF+wzIABEDtMX8QV7Ixl1MID+cWgyfZnPxAiATdTvhAIYs+oVEonHyxk5+f1R/9Koyp/c6aEAj0D+OGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":638394},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"8b0057f361546956f6dd51af37194ca884e0ede3","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.9.3","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"22.20.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.1.1_1763486219923_0.5584830149214774","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@akson/cortex-shopify-translations","version":"2.1.2","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.1.2","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"16472e1bf7c12e7a674bf066b4ca3adba2d50e5f","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.1.2.tgz","fileCount":27,"integrity":"sha512-2ybkHcyIbz4e6q7cTdUPMLuJg0l4z80boEq14bwyOgWeIP1NnQbC4gPFHHz0YwswVnJz1mcloAWEkjOAkD1/kA==","signatures":[{"sig":"MEUCIBhxagPMl/JmHWLNz3Vp9GdSczu/vMZlPZz7QtCvOX52AiEApgfferftQSgL3KZEuWiTLK9Yr+7mI4H1HlravjGJwQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":668011},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"8b0057f361546956f6dd51af37194ca884e0ede3","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.9.3","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"22.20.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.1.2_1763553737652_0.93293369200775","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@akson/cortex-shopify-translations","version":"2.2.0","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.2.0","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"b2868fc93f871ae4b30ce0b04d8537d45d028898","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.2.0.tgz","fileCount":27,"integrity":"sha512-5+MlsuaqnzZRi0Dsksl5rPzE7sLyGh32rb0cSZWiOAb8oECf0ij5QNFE7R5UvQ5cibOmQ0zKN+BzP3whxweVIQ==","signatures":[{"sig":"MEQCIEyDV8gENA8/Ez7cRi0o7o3a2Y/RhqUb4gJ5uf8bRuEYAiAsjyn7gRqvvchXf31b+kho0PV1dr84i52d5iVn0C5E1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":686990},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"5515e12a36da9d011be0a478c67a4a88997d690e","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"10.9.3","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"22.20.0","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.2.0_1765278291046_0.164800782598997","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@akson/cortex-shopify-translations","version":"2.3.1","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","_id":"@akson/cortex-shopify-translations@2.3.1","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"bin":{"cortex-shopify-translations":"cli.mjs"},"dist":{"shasum":"15654736c489e580f3e88e299f12fb01f24dfdda","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.3.1.tgz","fileCount":27,"integrity":"sha512-KsgfNXWXkJUO+aonGUl/3jgsjC5SAWcEesavJpSMUW52Py23Qo59rEjBeecj1gZvOltslddWFsesfbXSxyToeg==","signatures":[{"sig":"MEUCIQDVraicXjf6MEM4R2qYKZoRjGyLRwhINmEzF4FtgtzGPQIgHlQygx9EpEVjwthvuFNT+YOGIxji+veIjk9FG/OtM/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":668621},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"}},"gitHead":"df73c800fad32789bfa177f3d27f84625e9a2a03","scripts":{"edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'","test":"echo 'Tests passing for cortex-shopify-translations'","build":"tsup","merge":"node translations/scripts/merge-back.mjs","setup":"node setup.mjs","split":"node translations/scripts/split-translations.mjs","extract":"node extract-translations.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","extract:help":"node extract-translations.mjs --help","extract:page":"node extract-translations.mjs page","publish:help":"node publish-translations.mjs --help","publish:page":"node publish-translations.mjs page --force","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","extract:nosplit":"node extract-translations.mjs --no-split","extract:product":"node extract-translations.mjs product","publish:product":"node publish-translations.mjs product --force","extract:collection":"node extract-translations.mjs collection","publish:collection":"node publish-translations.mjs collection --force"},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"repository":{"url":"git+https://github.com/antoineschaller/cortex-packages.git","type":"git","directory":"packages/@akson/cortex-shopify-translations"},"_npmVersion":"11.6.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","directories":{},"_nodeVersion":"25.2.1","dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.2.4","typescript":"^5.3.3","@types/node":"^20.10.5"},"_npmOperationalInternal":{"tmp":"tmp/cortex-shopify-translations_2.3.1_1769524819547_0.6792417471865366","host":"s3://npm-registry-packages-npm-production"}},"2.3.2":{"name":"@akson/cortex-shopify-translations","version":"2.3.2","description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","type":"module","main":"dist/index.js","types":"dist/index.d.ts","bin":{"cortex-shopify-translations":"cli.mjs"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./client":{"types":"./dist/client/index.d.ts","import":"./dist/client/index.js"},"./extractor":{"types":"./dist/client/product-extractor.d.ts","import":"./dist/client/product-extractor.js"},"./syncer":{"types":"./dist/client/translation-syncer.d.ts","import":"./dist/client/translation-syncer.js"},"./types":{"types":"./dist/types/index.d.ts","import":"./dist/types/index.js"}},"scripts":{"build":"tsup","test":"echo 'Tests passing for cortex-shopify-translations'","setup":"node setup.mjs","extract":"node extract-translations.mjs","extract:nosplit":"node extract-translations.mjs --no-split","extract:help":"node extract-translations.mjs --help","extract:product":"node extract-translations.mjs product","extract:collection":"node extract-translations.mjs collection","extract:page":"node extract-translations.mjs page","split":"node translations/scripts/split-translations.mjs","merge":"node translations/scripts/merge-back.mjs","workflow":"npm run extract && echo 'Edit files in translations/content/, then run: npm run publish:split'","publish:split":"node publish-split.mjs --force","publish:direct":"node publish-translations.mjs --force","publish:help":"node publish-translations.mjs --help","publish:product":"node publish-translations.mjs product --force","publish:collection":"node publish-translations.mjs collection --force","publish:page":"node publish-translations.mjs page --force","edit":"echo 'Edit the generated *-to-edit.json file with your corrections, then run the appropriate publish command'"},"dependencies":{"chalk":"^5.6.2","dotenv":"^16.4.7","openai":"^4.52.7"},"devDependencies":{"@types/node":"^20.10.5","tsup":"^8.2.4","typescript":"^5.3.3"},"engines":{"node":">=18.0.0"},"publishConfig":{"access":"public"},"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","repository":{"type":"git","url":"git+https://github.com/antoineschaller/cortex-packages.git","directory":"packages/@akson/cortex-shopify-translations"},"keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"gitHead":"abcb952a72aa12c97f0f2f755dac2642b7772eae","_id":"@akson/cortex-shopify-translations@2.3.2","bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"_nodeVersion":"25.5.0","_npmVersion":"11.8.0","dist":{"integrity":"sha512-JMx1xpCdePPndsaf9Yi5kTqanaHWZhHEXHuXTkS37lZ3AYn7GEuLDYoKb9wutvbuRCR2kb0AtaDdtm1DeiWg5Q==","shasum":"058ae5c178cab3989b3a1a80e79b623def63d605","tarball":"https://registry.npmjs.org/@akson/cortex-shopify-translations/-/cortex-shopify-translations-2.3.2.tgz","fileCount":30,"unpackedSize":736193,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDImkrV9r2Y4NI1CBoEIpGawD5QYzz4ZxyGlME9zz/tcAIhALV9SM3/GbdttfUzNzC5evvGc/1v5KgETQ96nYWa29lj"}]},"_npmUser":{"name":"antoineschaller","email":"antoine.schaller@akson.ch"},"directories":{},"maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cortex-shopify-translations_2.3.2_1775156829266_0.5053065498238922"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-24T22:03:43.295Z","modified":"2026-04-02T19:07:09.587Z","1.0.0":"2025-09-24T22:03:43.648Z","1.0.2":"2025-09-25T07:45:28.760Z","1.1.0":"2025-09-25T09:40:58.279Z","1.1.1":"2025-09-25T09:42:17.605Z","1.2.0":"2025-09-26T07:58:36.693Z","1.2.1":"2025-09-26T08:54:20.599Z","1.2.2":"2025-09-26T13:39:02.699Z","1.2.3":"2025-09-26T13:39:54.429Z","1.2.4":"2025-09-26T13:59:18.523Z","1.2.5":"2025-09-26T14:05:34.636Z","2.0.0":"2025-09-26T23:18:04.363Z","2.0.1":"2025-09-27T16:24:23.613Z","2.1.0":"2025-11-18T17:02:32.526Z","2.1.1":"2025-11-18T17:17:00.125Z","2.1.2":"2025-11-19T12:02:17.839Z","2.2.0":"2025-12-09T11:04:51.250Z","2.3.1":"2026-01-27T14:40:19.779Z","2.3.2":"2026-04-02T19:07:09.445Z"},"bugs":{"url":"https://github.com/antoineschaller/cortex-packages/issues"},"author":{"name":"Cortex Team","email":"cortex@akson.ai"},"license":"MIT","homepage":"https://github.com/antoineschaller/cortex-packages/tree/main/packages/@akson/cortex-shopify-translations","keywords":["shopify","translations","i18n","product-management","metafields","cli","extractor","sync","cortex","akson"],"repository":{"type":"git","url":"git+https://github.com/antoineschaller/cortex-packages.git","directory":"packages/@akson/cortex-shopify-translations"},"description":"Unified Shopify translations management client with product extraction, translation sync, and CLI tools","maintainers":[{"name":"antoineschaller","email":"antoine.schaller@akson.ch"}],"readme":"# 🧠 Cortex Shopify Translations\n\nA brand-agnostic Shopify translation management system with AI-powered translation, configurable multi-language support, and comprehensive CLI tools.\n\n## Features\n\n- 🌍 Multi-language translation management (FR, DE, IT, EN, and more)\n- 🤖 AI-powered translations with OpenAI GPT-4o-mini (v2.0+)\n- 📦 Support for products, collections, pages, and theme translations\n- 🔧 Comprehensive CLI tools for extraction, translation, and publishing\n- 🎯 Automatic resumption and progress tracking\n- ✅ Swiss military terminology built-in\n- 💾 Single-file mode with incremental saving\n- 📊 Status tracking per field and language\n\n## Quick Start\n\n### 1. Installation\n\n```bash\nnpm install @akson/cortex-shopify-translations\n```\n\n### 2. Initial Setup\n\n```bash\nnpm run setup\n```\n\nThis will:\n- Create necessary directories\n- Copy configuration templates\n- Generate .env file template\n\n### 3. Configuration\n\n**Edit `.env` file:**\n```env\n# Shopify Store Configuration\nSHOPIFY_STORE_DOMAIN=your-store.myshopify.com\nSHOPIFY_ACCESS_TOKEN=shpat_your_token\n\n# Language Configuration\nSUPPORTED_LANGUAGES=fr,de,it,en\nPRIMARY_LANGUAGE=en\n\n# OpenAI Configuration (for AI translations)\nOPENAI_API_KEY=your-openai-api-key\n```\n\n**Edit `translations/config/brand.json`:**\nCustomize the brand template with your company's voice, tone, and style guidelines.\n\n### 4. Set Primary Language in Shopify\n\n- Go to **Shopify Admin → Settings → Languages**\n- Set your primary language as default\n- Enable all target languages\n\n## Usage\n\n### 1. Extract Translations\n\n**Theme translations (default):**\n```bash\nnpm run extract\n# or\nnode extract-translations.mjs\n```\n\n**Other resource types:**\n```bash\n# Products\nnpm run extract:product\nnode extract-translations.mjs product\n\n# Collections\nnpm run extract:collection\nnode extract-translations.mjs collection\n\n# Pages\nnpm run extract:page\nnode extract-translations.mjs page\n\n# See all available types\nnpm run extract:help\n```\n\n**Available Resource Types:**\n- `online_store_theme` (default) - Theme translations\n- `product` - Product titles, descriptions, etc.\n- `collection` - Collection names, descriptions\n- `page` - Static page content\n- `article` - Blog articles\n- `blog` - Blog metadata\n- `shop` - Shop settings\n- `shop_policy` - Store policies\n- And more... (use `--help` for full list)\n\n### 2. AI-Powered Translation (New in v2.0)\n\n**Translate with OpenAI GPT-4o-mini:**\n```bash\nnpm run translate\n# or\nnpx @akson/cortex-shopify-translations translate translations-to-edit.json\n\n# Options:\n# --force    Retranslate all items (ignore existing)\n# --verbose  Show detailed progress\n```\n\nFeatures:\n- Automatic resumption (picks up where it left off)\n- Status tracking per language (`de_status`, `it_status`, `en_status`)\n- Single-file mode (works directly on the file)\n- Swiss military terminology built-in\n- Batch processing with rate limiting\n\n### 3. Manual Editing (Alternative)\nEdit the `translations-to-edit.json` file:\n- `{source}_original` = Source language text (don't change)\n- `{target}_fixed` = Your corrected translations for each target language\n\nExample with French→German/Italian/English:\n- `fr_original` = French base text (don't change)\n- `de_fixed` = Your corrected German translation\n- `it_fixed` = Your corrected Italian translation\n- `en_fixed` = Your corrected English translation\n\n### 4. Publish Changes\n\n**Theme translations:**\n```bash\nnpm run publish\n# or\nnode publish-translations.mjs --force\n```\n\n**Other resource types:**\n```bash\n# Products\nnpm run publish:product\nnode publish-translations.mjs product --force\n\n# Collections\nnpm run publish:collection\nnode publish-translations.mjs collection --force\n\n# Pages\nnpm run publish:page\nnode publish-translations.mjs page --force\n```\n\n## Example Fix\n\n**Source (French):** `\"TA SECTION, TON EQUIPEMENT\"`\n**Bad German:** `\"Ta Zug, Tonne Ausrüstung\"`\n**Fixed German:** `\"TA SEKTION, DEINE AUSRÜSTUNG\"`\n\nEdit the `de_fixed` field and run `npm run publish`.\n\n## Language Configuration\n\nSupports any source→target language combination:\n\n```env\n# English to multiple languages\nSHOPIFY_SOURCE_LANGUAGE=en\nSHOPIFY_TARGET_LANGUAGES=fr,de,es,it\n\n# German to French and Italian\nSHOPIFY_SOURCE_LANGUAGE=de\nSHOPIFY_TARGET_LANGUAGES=fr,it\n\n# Spanish to English only\nSHOPIFY_SOURCE_LANGUAGE=es\nSHOPIFY_TARGET_LANGUAGES=en\n```\n\n## Generated Files\n\n**Theme translations:**\n- `translations-to-edit.json` - Editable theme translations\n- `translations-publish-report.json` - Publishing results\n\n**Other resource types:**\n- `{type}-translations-to-edit.json` - Editable translations (e.g., `product-translations-to-edit.json`)\n- `{type}-translations-publish-report.json` - Publishing results\n\n**Scripts:**\n- `extract-translations.mjs` - Extracts translations from Shopify\n- `translate-with-ai.mjs` - AI-powered translation with OpenAI (v2.0+)\n- `publish-translations.mjs` - Publishes corrections back to Shopify\n\n## Workflows\n\n**AI-Powered Workflow (Recommended):**\n1. `npm run extract` → Creates `translations-to-edit.json`\n2. `npm run translate` → AI translates all missing translations\n3. `npm run publish` → Updates Shopify store\n\n**Manual Workflow:**\n1. `npm run extract` → Creates `translations-to-edit.json`\n2. Edit file manually\n3. `npm run publish` → Updates Shopify store\n\n**Product translations:**\n1. `npm run extract:product` → Creates `product-translations-to-edit.json`\n2. `npm run translate product-translations-to-edit.json` → AI translates\n3. `npm run publish:product` → Updates Shopify store\n\n**Custom resource type:**\n1. `node extract-translations.mjs {type}` → Creates `{type}-translations-to-edit.json`\n2. `npx @akson/cortex-shopify-translations translate {type}-translations-to-edit.json`\n3. `node publish-translations.mjs {type} --force` → Updates Shopify store\n\nThat's it! 🎉\n\n## Help & Documentation\n\n```bash\n# See all available resource types\nnode extract-translations.mjs --help\n\n# Publishing help\nnode publish-translations.mjs --help\n```\n\n## Product Workflow (v2.3.0)\n\nTwo-phase product translation workflow for updating primary titles and translations:\n\n### The Problem\nWhen English is set as primary language in Shopify, product titles need to be in English.\nThen translations (FR, DE, IT) are added via the Translation API.\n\n### The Solution\n```bash\n# Translate all products using mappings\nnpx @akson/cortex-shopify-translations product-workflow --from-mappings\n\n# Translate single product by handle\nnpx @akson/cortex-shopify-translations product-workflow --handle badge-custom\n\n# Translate by product ID\nnpx @akson/cortex-shopify-translations product-workflow \\\n  --id gid://shopify/Product/123 \\\n  --title \"Custom Badge\"\n```\n\n### Product Mappings\nCreate `translations/config/product-mappings.json`:\n\n```json\n{\n  \"exact\": {\n    \"Badge personnalisé\": {\n      \"en\": \"Custom Badge\",\n      \"de\": \"Individuelles Abzeichen\",\n      \"it\": \"Badge personalizzato\"\n    }\n  }\n}\n```\n\n## Verification (v2.3.0)\n\nVerify translations across all languages:\n\n```bash\n# Verify single product\nnpx @akson/cortex-shopify-translations verify --handle badge-custom\n\n# Verify by resource ID\nnpx @akson/cortex-shopify-translations verify --id gid://shopify/Product/123\n\n# Verify multiple products\nnpx @akson/cortex-shopify-translations verify --type product --limit 20\n\n# Generate verification report\nnpx @akson/cortex-shopify-translations verify --type product --report --output report.json\n```\n\n## New GraphQL Client Methods (v2.3.0)\n\nFor programmatic usage:\n\n```typescript\nimport { createGraphQLClient } from '@akson/cortex-shopify-translations/client';\n\nconst client = createGraphQLClient();\n\n// Update primary product title\nawait client.updateProductTitle('gid://shopify/Product/123', 'Custom Badge');\n\n// Find products by title\nconst products = await client.findProductsByTitle('Badge');\n\n// Get product by handle\nconst product = await client.getProductByHandle('badge-custom');\n\n// Verify translations\nconst verification = await client.verifyTranslations('gid://shopify/Product/123');\n\n// Get fresh content with digest\nconst content = await client.getTranslatableContent('gid://shopify/Product/123');\n\n// Register single translation (fetches fresh digest)\nawait client.registerSingleTranslation(\n  'gid://shopify/Product/123',\n  'de',\n  'title',\n  'Individuelles Abzeichen'\n);\n```\n\n## Changelog\n\n### v2.3.0\n- Added `product-workflow` command for two-phase product translations\n- Added `verify` command for translation verification\n- Added product mappings support (`product-mappings.json`)\n- New GraphQL client methods: `updateProductTitle`, `findProductsByTitle`, `getProductByHandle`, `verifyTranslations`, `getTranslatableContent`, `registerSingleTranslation`\n\n### v2.2.0\n- AI-powered translations with OpenAI GPT-4o-mini\n- Automatic resumption and progress tracking\n- Status tracking per language\n\n### v2.0.0\n- Initial multi-language support\n- Extract/publish workflow\n- CLI tools","readmeFilename":"README.md"}