{"_id":"i18nsolutions","_rev":"30-64efcfc63e2e15ad367e1875c9b2336f","name":"i18nsolutions","dist-tags":{"latest":"1.0.30"},"versions":{"1.0.0":{"name":"i18nsolutions","version":"1.0.0","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.0","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/polyglot-react#readme","bugs":{"url":"https://github.com/harrymaurya05/polyglot-react/issues"},"dist":{"shasum":"1cdfcce34b4614d19ca3ee1c384fc20e15dcdb2a","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.0.tgz","fileCount":46,"integrity":"sha512-HTlIV784j1fJh5LfxZlK20EXA5pLvv7m5GyGNJTNXHl4D6fv8eyiBFi4p6b3wdthJGchnxzCFHQLphyow1ugxg==","signatures":[{"sig":"MEUCIEaMBWtvmz+xv/V7M1fFJkPZEUimz5fcsc6sogQnZn8FAiEAs8iV8gchx2A23PtPWIipSTySi3FCLQdKrv4nNpYaXhw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5087972},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"c18553112face4a8a53d7b7108f98fa79fc9dacb","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/polyglot-react.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.0_1770023579996_0.34963333191181367","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"i18nsolutions","version":"1.0.1","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.1","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"f29c0aa187ef8b75410d35a7282381b51d50664f","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.1.tgz","fileCount":46,"integrity":"sha512-K+nYhax3jiP+AFmbnL4JPDNNggdIfK0MAGQopU1gOMbeny0VRlK7axidOhjPdWN6+nDfL3KQnlqWTTVIIiOUxw==","signatures":[{"sig":"MEYCIQCJVI+6CB0SbMhzJm3gca2XN8KoFokZgilyqxnvu1+fCwIhAJ9OScnDJ9UjDcnLRMkREx4iYYvMHeVqYneSJgWH/XJ3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5087896},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.1_1770024139543_0.3323164215857364","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"i18nsolutions","version":"1.0.2","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.2","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"71e8d81b8cabae5f69fa8e84810d1d8b75b14835","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.2.tgz","fileCount":101,"integrity":"sha512-LADEEWlRatvWhY/IvjNLoblAW8AmDs0flXbNAXj8qE0f7zi/a8sfRy7hUjBh4Mks0Bl8gJOgWmg69DGTI5ZqoA==","signatures":[{"sig":"MEYCIQDK779lpSzeVjilL7EZfk/y4O0woSLX3ao9S17ZvH0ACAIhANiyEcjpqtTUb99BTDkGXewtZwKOzDBgWpQHWl+1ZFds","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5118333},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.2_1770025141765_0.013966895949022895","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"i18nsolutions","version":"1.0.3","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.3","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"7052415bac08f21d1da42b118e3fd204a431014b","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.3.tgz","fileCount":101,"integrity":"sha512-iGCeapfZTE06gByFBHDIDDfgxOHR2nFq7hioHIzi9evKdnvNvJoWVb6hzcJn+hZc1X74G9gBGuu1rUIwYCXC/A==","signatures":[{"sig":"MEUCIQCivquwzCeBACQxFxuJA/C8g36IIQ+X3uqxNBShiKpLxQIgaHNkDjPDnpAyEhgfopnWrgc8RNRkga0FLuo9hYC/M6Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5118350},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.3_1770026185862_0.38031611869439574","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"i18nsolutions","version":"1.0.4","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.4","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"605dfd7f071e02f3e8fc50d4125f67e04e1e68e5","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.4.tgz","fileCount":97,"integrity":"sha512-xIVkarYoiLuGW23K+nYzX4WIvj8osQ/3oNFjWqUdcUrmAFwgnPN9SRTXFoeHCsLNzrgtcmaKU7N4i2caN2ZhpA==","signatures":[{"sig":"MEQCIDCEbVAymn39uvy4rf1COuEfCkEvnv9NEVOwk7XVXFlKAiBripDouzoq4Rx7AfzOFM9SOyxTwWz/PO0jzjP4njfk5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5117246},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.4_1770027036763_0.07369301951703577","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"i18nsolutions","version":"1.0.5","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.5","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"020ad0341ad22a9ef6ac6fc8a3807191668d6198","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.5.tgz","fileCount":97,"integrity":"sha512-Ti5y4H3vkoWsju7ywHyx312rsapv2jqIYVdjEhIb/+HGHP9w87pt4tZ/4FrA/6Vf+PtNRWVACJVH53bB6LAYMA==","signatures":[{"sig":"MEUCICoh/3jeUc91aMPKUQzOSnNGW4yMNWJzgvfBN4gGVGLDAiEA13d93rteVg7gUPKk+/pSemFV810sMrQprwp/LofAeF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5118885},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.5_1770043004130_0.6853369235802795","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"i18nsolutions","version":"1.0.6","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.6","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"75d892a38a904628c7cb1e6542192a2c8707b6cf","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.6.tgz","fileCount":103,"integrity":"sha512-aQM9H16YqCE6xWWesFGBv6hDMPeoV5XF3FJniqehACDefxnXsbcexlw+NmsPQPUm4zpzL5KQEdErQ5A6hJ9GHg==","signatures":[{"sig":"MEUCIBngi0DkeL8HlWh1kIiWBLj9uMBd0DsHpr2JfdjjzkgBAiEAmkMZ4TB4lNa+rm2UHql5P3ahaYsNXdBcQssD+zdZ36U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9520992},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.6_1770045132938_0.23967588042788224","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"i18nsolutions","version":"1.0.7","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.7","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"71665c0485cac8c33275d5c565060438d896995c","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.7.tgz","fileCount":99,"integrity":"sha512-FAUv3M6toqxkcQi/vlmoqdxYbWpMFxJcSKtkFrU9tjIxGpAqIHB4+GNLCfBPcZisXUeKe0qWlyrHb1UJAMDbug==","signatures":[{"sig":"MEYCIQDdLsGYzf/k8BinjetblOk4nYgu7Y/417tU5W2YDpyjEwIhAPsNZI6jM0lHwBj4mltQ8xL/ufJWUjQ9lnLjYQu8K0Y+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9520210},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.7_1770045904219_0.5788266766304393","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"i18nsolutions","version":"1.0.8","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.8","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"ec3ec8a75641f4e5fda085dd4c628dfd10b08e4c","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.8.tgz","fileCount":99,"integrity":"sha512-vYV/H0qXhylr0JOEMljAUIAbYbcnoLXMHTnHkZv+wQrvKkyqVH/QQukf+oayoBWCCWW7Cyc3JAfVQ7zNkzce0w==","signatures":[{"sig":"MEYCIQDSSEtP8BcWkYtEoiRESqb+avMxvIa7EA+yyubjn1s+yQIhAPrZX4bQbwsIrFTWIKX5oe1JUlUuzeB++Zzl8wLmeJYa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9522856},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.8_1770046393198_0.20217236531725935","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"i18nsolutions","version":"1.0.9","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.9","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"1a08948b0aed209af17653998da627255e919798","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.9.tgz","fileCount":101,"integrity":"sha512-WKBoLxQH8UiChaEJkIHWvy887+51TV7orpA+GI+L51t/+dVFaIxGQTWSbVBUhob6140iBDRwSyBSTDfzYw4v2A==","signatures":[{"sig":"MEUCIQDwfhFMvbKLUplB9ejSN5msQLGlvgaIEkGH6KNMwEg23QIgMpI8fSngxeb/k2KTi/nMuC+7yxWH705/BK360yqm9kw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9555193},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1ee90bb1a4b324fd292f4992fc1298af3e71a6cd","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.9_1770047439447_0.38917523237474905","host":"s3://npm-registry-packages-npm-production"}},"1.0.10":{"name":"i18nsolutions","version":"1.0.10","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.10","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"00b781e236c685263e6ee74ed7656d3701d9ae93","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.10.tgz","fileCount":101,"integrity":"sha512-Wf1+fzMH+cJ1X/V1VQzFMvC3DpMbc5b9Bz5HFnBiAm0cQM7S0wzHp1kJODnhMjH5cgX42pu4wMpY7dR4HfvWTA==","signatures":[{"sig":"MEUCICA2qHCcPdwYWVuQnFOXDqkOermzhajggJV8Z1HkLFZzAiEAzJ1zrAeeK142dlxChrZmtzUDHNEulHpUyvmniCToedA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9555660},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.10_1770048297213_0.6051830785787731","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"i18nsolutions","version":"1.0.11","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.11","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"22b38d6dfa3dc4d4a49f4b37c9de842ddf13f648","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.11.tgz","fileCount":99,"integrity":"sha512-sJgJATb+qhQtz0jECIwzP0SPsWSguUjpRIyQZ+2fEaUuydDWaCWmoeooTLt6cvizsDL6YubvgIhmpuT24hOfNQ==","signatures":[{"sig":"MEUCIEgJBxLQACYWjfX1PxTkBPqfvTU7fQrHmy/odVJ7raYJAiEAg7Ak/9VhF5SUirQm0vH3dlGaxPi44WyWqeVKNpNcjnA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9524563},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.11_1770049513490_0.6394146789507533","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"i18nsolutions","version":"1.0.12","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.12","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"c2bad780a24c9e7a8a99a6696e0c8945cfc81ad6","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.12.tgz","fileCount":99,"integrity":"sha512-Q1XmKxsJJN5cey0SMxNNtp4T4rvwrkqLzc8Q9DcO1wA434cwPTPP9hgecXqC9IXeoQToE7nClwBc7oSDdytupA==","signatures":[{"sig":"MEQCIEFXmXfTiQ94X+Fv36SM46dUVfTCWiLXtUtGxedc56gNAiA6Tq7YIYZaDdNVTjFQ9+ErJGD+218BywnZGMmIsCrOSw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9530316},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.12_1770049667366_0.4710804856757529","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"i18nsolutions","version":"1.0.13","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.13","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"9fb02572321f488b84b97341dab64c1bf97ef679","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.13.tgz","fileCount":99,"integrity":"sha512-Jrsap5nXImDLOD6uQUb1h8QZapSHXLlUnqI2MPLEJXcXrb1shDRYiSlqXYgdtGcQidRwcPLgfLAk5yy4yumOJQ==","signatures":[{"sig":"MEYCIQCopFOTtE8ZS/+GkQDUJGL7Tw/4RsR2yIz9nWqHy08A5AIhAIH3XIj+IspH2aprnI9NZR89CW5dkW5DZSIb7VWHn0OU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9531196},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.13_1770049819429_0.5867373519293244","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"i18nsolutions","version":"1.0.14","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.14","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"e6ded972bb94984bfc194f1b624c89c7b7e43df1","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.14.tgz","fileCount":99,"integrity":"sha512-HXlvqZLz6UgFXDYCLrZrVXwFBvslTzlMQ49Dj67qXygZe2oKsKyCOoAqJnSaDM8X6P3Pp5i9eafIdWhqcL1Flg==","signatures":[{"sig":"MEYCIQC+sRUQkQESjYkJ6yFKL5WlVrIp1QeqU1tw23ZNZZq+PQIhAK9SBXQntcSoUrOtD7ZCsYDM+kXvhPcQCKpCnrCiv49x","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9544044},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.14_1770050283831_0.8378847725433367","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"i18nsolutions","version":"1.0.15","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.15","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"2a61030fc3095f7bc2605ecefd9f82b8c516e84b","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.15.tgz","fileCount":99,"integrity":"sha512-2xHX6lVgMtrnOJos4uPWfCrBLlG1N8ZBxG3JEt5/GkHd35Y38ifqmfggzpgbqiULelT1fSPbNxe1QwMrm5jwPA==","signatures":[{"sig":"MEYCIQD2czEeJAkvGhbYdwasn9ljT/75W8bGFfval2NkMb8ngwIhAOptr7ZDwyzOi+BFpSJRXZ9YOKgaZd44Z+FW7R19Av1W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9545206},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.15_1770050540980_0.9593815508178287","host":"s3://npm-registry-packages-npm-production"}},"1.0.16":{"name":"i18nsolutions","version":"1.0.16","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.16","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"0d4eafac02bf2027ce797a451f4995dac76e601d","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.16.tgz","fileCount":99,"integrity":"sha512-b8WgAyvVZXU9dtI1i4Yanh1MOnHlyjkhTiHbcAwOc1/4LseRku7D0smAIUd4Xcv7y396WtO+gmzCZDO+eQ3qaQ==","signatures":[{"sig":"MEYCIQDJfKD0itMe9vr0LIFnemoTXRp9u+8dIoGNoTNsTWkh9gIhAPTsOfhSaIr0DsGb4DD75Q65/JXd/9N4UWrLE9RY2pQv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9545561},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"db5059f2e16c0dfe3b138eb9283947ab8c83f1ec","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.16_1770052511956_0.9357583077544884","host":"s3://npm-registry-packages-npm-production"}},"1.0.17":{"name":"i18nsolutions","version":"1.0.17","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.17","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"ddb4f6a19aa1f7d78ad6ecfd034eda4f45ff07ab","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.17.tgz","fileCount":99,"integrity":"sha512-I5IbUFuREbGTyHpq5SiHz0qj+1gbR9m8QljD4xMDJpAFARtECUbDU4CibodNPymzLfiniRHttQhRnT+oEbV0Sw==","signatures":[{"sig":"MEUCID7ZBS3tP607lhOMsk6C/XhZ03oyS9G7QxMc4ukVI1j7AiEAtJ9XkSJl83FuvhqqAful+DPzjqBHcskwoP2GkR6+Vf8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9547352},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.17_1770089800800_0.19384668991957033","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"i18nsolutions","version":"1.0.18","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.18","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"903eb947c1e2e89aa4a319eff448b388d83a238a","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.18.tgz","fileCount":99,"integrity":"sha512-5AZxdvKW4/IaGVUDqjHWNzigpsuz4Uq5db7zTdVyFe6XcTEFdVeYuYJ/2frqFmYqiqrPKf/co/x4jGpal+eQiA==","signatures":[{"sig":"MEUCIQD/I8zVviCi2dIPCu84tOU6rMqeZGxfdIUCrzk6NR4qQAIgfI6F4e8pH2MBv4NS7e32WJiuc1/24xSx5dtWNmpzK1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9552802},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.18_1770092086816_0.30319691901778945","host":"s3://npm-registry-packages-npm-production"}},"1.0.19":{"name":"i18nsolutions","version":"1.0.19","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.19","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"2a06283ab4ebfc5c25ca1a34a3643c6aa85d1f0b","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.19.tgz","fileCount":99,"integrity":"sha512-AyL2hmMs7ywpnyiLAy8kGZhN0rApXs595LV0wwf3ms5pgesqeSjJcOoy3Bb5rKJ/4NOkjWi5TGNz0xtoqQuFeg==","signatures":[{"sig":"MEYCIQCUwHCClaEnkJR7+kvccbWi1b1fXJhz8uT6Gj3qbi4BKwIhAO9+Ab2/MEcs7vPAq+yuln0EKxYDn1oZN8h3Qmo/hua7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9553051},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.19_1770092602346_0.8614360547906534","host":"s3://npm-registry-packages-npm-production"}},"1.0.20":{"name":"i18nsolutions","version":"1.0.20","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.20","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"8a5e69282cce0e4710f6255dce634c508eb99306","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.20.tgz","fileCount":99,"integrity":"sha512-tcrHp+7DYtIeYvN0nKlkChNqcwRvCrCN1G6/2tQ08nZ4wRMtVpj/ZBDHPhrNC7c7XiG+TqSM6mfAxXV7D6YkNg==","signatures":[{"sig":"MEQCIHwGQrRaU1C/fZFJyzfxs2WJKxNzHCOgoOHgb6ybEwFoAiAKzaH2vWzpUgwNcgfZRcVN+37isiTrVRbNIHdDxVYqxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9556241},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.20_1770093394264_0.947093874506258","host":"s3://npm-registry-packages-npm-production"}},"1.0.21":{"name":"i18nsolutions","version":"1.0.21","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.21","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"73a36c7cf9bef4d067b45680505925045b91fb34","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.21.tgz","fileCount":99,"integrity":"sha512-g/2UFNokHHhlVtcUMv7haEQdVUv/knbSwxvBcUNoW81BPw3vYUpSXCWboJ7KSFlqo2qqFVPb3HkVrKyDM3Xv7A==","signatures":[{"sig":"MEQCIBUK/ysce337zaAj8njXPvCbHA0uxpEOZvgdX+ixtb16AiB70lWGCafEfRFFeqz594Wdd/lM+h0czm73zTVZwJARLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9554775},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.21_1770096283939_0.6344603239338664","host":"s3://npm-registry-packages-npm-production"}},"1.0.22":{"name":"i18nsolutions","version":"1.0.22","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.22","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"0c636b1bdef3118f013d96d6a44734aa093f6334","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.22.tgz","fileCount":99,"integrity":"sha512-sSGU9FLx2kO7nGsepjn6SwOkLnnGGtkM6YvD8qusRz6XVoXNZVBMbXqKrp/ZfDMPXJ5reOgGkfEEF0DKPPeiEQ==","signatures":[{"sig":"MEUCICn9SommMQBm6hjM3Ir9ZBqp6ZuLX1zGh2L7IfaatiOTAiEAilYKYrhpyQgGEvOsOfqhxIBndzD/jRoAekJCifLVga4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9560378},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.22_1770096883153_0.639766088689858","host":"s3://npm-registry-packages-npm-production"}},"1.0.23":{"name":"i18nsolutions","version":"1.0.23","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.23","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"c363a5e4e9c38cdf5052def73a3ecabf336c4c84","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.23.tgz","fileCount":99,"integrity":"sha512-YaU08Oby2A7h1IDHaDLoKjBXLHqMJwrCQzJdQ/o555XYDqXF84Pu8WoAGDQpIbeUujp0VUpx/+mkczs09txWqg==","signatures":[{"sig":"MEUCIQC8FcVANBM25svkgK6zcYdD8vNZKxjxEfDFCk1rzwXgdQIgHIlKzDgzmig72bDHn6Z5XPqJZ0hduaCxk9QAh6Q7RpQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9563596},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.23_1770097140550_0.4745231057865904","host":"s3://npm-registry-packages-npm-production"}},"1.0.24":{"name":"i18nsolutions","version":"1.0.24","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.24","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"181c8bce41d02a935323eb68ecaf9d4734bc2644","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.24.tgz","fileCount":99,"integrity":"sha512-Kha1+zQf+q3fP4e8qzyPMZEHZJHhrWBX/sdPAUnn99iyL/kFB5Kd0Vk1FlrO01WXSaYPflNL526NknPJKixZjg==","signatures":[{"sig":"MEQCIHMvfO4KSUrJKgRGsPxtf/+cTnmQJu46CjKyQR1dfDO4AiBdjP35Q0VpVxRAxcPAUX08YYpfnuK4DzguOj4o3TtqAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9565478},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.24_1770097561111_0.6397763546420552","host":"s3://npm-registry-packages-npm-production"}},"1.0.25":{"name":"i18nsolutions","version":"1.0.25","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.25","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"e3df2f145494d17398520cc79ffd210f8634d856","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.25.tgz","fileCount":99,"integrity":"sha512-zpXCkY5bL5WmHIcXvR9MoWGmTA9RGp4ezOsGrzOtVIsPGTgdWKR4MQSCCCMXdA5nfyq9qQlj6vm20SqFB/N8LQ==","signatures":[{"sig":"MEYCIQDTuPD7Nhc6gLqceL6GEri83uxwK7dnFskJDLxjHUFAXwIhAPkJfqmq94ixQcAMgPG9R83+/l7oqMNXS0tz1+uR0A6e","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9566467},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.25_1770098124148_0.7933913503524759","host":"s3://npm-registry-packages-npm-production"}},"1.0.27":{"name":"i18nsolutions","version":"1.0.27","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.27","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"e1beed9daf745398265b335d986a4dedd50d7f7a","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.27.tgz","fileCount":103,"integrity":"sha512-lvrrYTaGGsL+UQFLJ6/69A722WQ3n5nBkYIEXc+nDrIH1zX3GDDYtSHsZ3O9IOLHlrrgCY0snUxtiLhrC9yU3g==","signatures":[{"sig":"MEUCIQC1r4Nqq7y+TdoXKB1PIQ9wcZhMA2Yk1XF+P0TWzWGKLQIgUVtB1q87wth+JsibZqS1hWLaEGAi0wJHMEXmt3TI9cA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9583836},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.27_1770225183383_0.3630387309510339","host":"s3://npm-registry-packages-npm-production"}},"1.0.28":{"name":"i18nsolutions","version":"1.0.28","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.28","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"241102b564ad31a95e1d31c18e9a1b37261fc012","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.28.tgz","fileCount":103,"integrity":"sha512-bWz6pkev1Dv9kdkpfeuxG5w+qQSdFvJHpgcz3Je2NXxIihy0rcwEuec3ZH19Xn8MHir0AmGFeTBK+Kjn+0ZI5Q==","signatures":[{"sig":"MEQCICjH+y3IVyT5kyYHJhzzK27Pl21ItOZ8bCGKsDG/03wTAiBF5XDA0BR7s0ongiOiPqBeDXTSd4xOHI0e749jBV/+fg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9585316},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.28_1770225410132_0.3609444301530731","host":"s3://npm-registry-packages-npm-production"}},"1.0.29":{"name":"i18nsolutions","version":"1.0.29","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"url":"https://github.com/harrymaurya05","name":"Harry Maurya","email":"harrymaurya05@gmail.com"},"license":"MIT","_id":"i18nsolutions@1.0.29","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"dist":{"shasum":"d85900adf589b51341bae18393a0db09f183a6d3","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.29.tgz","fileCount":103,"integrity":"sha512-H0zpXrPESaikTiDd3oSt4jiDlB7hPVeqVARWy7JOvMrRdVek54q1QHFLyJf7b6eHihCAzRweEkrIMYPedPwloA==","signatures":[{"sig":"MEQCIA89EY4URJX8TkS6+6xMwiNUgBbuw1uKhgI/oU/IQrk6AiBsx+6rLdtkFGYKl/hDOaSH8zFHn5ta6MQ6LEU8iPDVgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9587673},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./plugin":{"types":"./dist/plugin/index.d.ts","import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js"},"./testing":{"types":"./dist/testing/index.d.ts","import":"./dist/testing/index.mjs","require":"./dist/testing/index.js"}},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","scripts":{"dev":"vite","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","test":"vitest","build":"tsc && vite build","type-check":"tsc --noEmit","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"repository":{"url":"git+https://github.com/harrymaurya05/i18nsolutions.git","type":"git"},"_npmVersion":"11.6.1","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","directories":{},"_nodeVersion":"24.11.0","dependencies":{"idb":"^8.0.0","fast-glob":"^3.3.2","minimatch":"^9.0.3","@aws-sdk/client-translate":"^3.493.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.1.0","react":"^18.2.0","eslint":"^8.56.0","vitest":"^1.2.2","react-dom":"^18.2.0","typescript":"^5.3.3","@babel/core":"^7.23.9","@types/node":"^20.11.16","@babel/types":"^7.23.9","@types/react":"^18.2.55","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","vite-plugin-dts":"^3.7.2","@babel/generator":"^7.29.0","@types/react-dom":"^18.2.19","@vitest/coverage-v8":"^1.2.2","@vitejs/plugin-react":"^4.2.1","@types/babel__traverse":"^7.20.5","@types/babel__generator":"^7.27.0","@typescript-eslint/parser":"^6.21.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","@typescript-eslint/eslint-plugin":"^6.21.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/i18nsolutions_1.0.29_1770226554301_0.8980331925706557","host":"s3://npm-registry-packages-npm-production"}},"1.0.30":{"name":"i18nsolutions","version":"1.0.30","description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js","types":"./dist/index.d.ts"},"./plugin":{"import":"./dist/plugin/index.mjs","require":"./dist/plugin/index.js","types":"./dist/plugin/index.d.ts"},"./testing":{"import":"./dist/testing/index.mjs","require":"./dist/testing/index.js","types":"./dist/testing/index.d.ts"}},"scripts":{"dev":"vite","build":"tsc && vite build","lint":"eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0","type-check":"tsc --noEmit","test":"vitest","test:coverage":"vitest --coverage","prepublishOnly":"npm run build"},"keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"author":{"name":"Harry Maurya","email":"harrymaurya05@gmail.com","url":"https://github.com/harrymaurya05"},"license":"MIT","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/harrymaurya05/i18nsolutions.git"},"bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"dependencies":{"@aws-sdk/client-translate":"^3.493.0","fast-glob":"^3.3.2","idb":"^8.0.0","minimatch":"^9.0.3"},"devDependencies":{"@babel/core":"^7.23.9","@babel/generator":"^7.29.0","@babel/parser":"^7.23.9","@babel/traverse":"^7.23.9","@babel/types":"^7.23.9","@types/babel__generator":"^7.27.0","@types/babel__traverse":"^7.20.5","@types/node":"^20.11.16","@types/react":"^18.2.55","@types/react-dom":"^18.2.19","@typescript-eslint/eslint-plugin":"^6.21.0","@typescript-eslint/parser":"^6.21.0","@vitejs/plugin-react":"^4.2.1","@vitest/coverage-v8":"^1.2.2","eslint":"^8.56.0","eslint-plugin-react-hooks":"^4.6.0","eslint-plugin-react-refresh":"^0.4.5","react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","vite":"^5.1.0","vite-plugin-dts":"^3.7.2","vitest":"^1.2.2"},"gitHead":"1058ad317808f94ef61c2fec8f665d9c551ab82d","_id":"i18nsolutions@1.0.30","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-fUpeaPYhosb4ZESLObfdFXf9fYUaW01Fj6wg3hpLelq6SmdzizpZ5hKRtly+U9d3yPz78RXYhQtNp+kTtYFpwg==","shasum":"9cbe8601373e94d8ea78b723661dec4a65f97694","tarball":"https://registry.npmjs.org/i18nsolutions/-/i18nsolutions-1.0.30.tgz","fileCount":103,"unpackedSize":9587721,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAfOexNxtWRrbzn0YekR4bZ7eh63O87Qj9qtEmgTUM2GAiArZ15+BSLplBy5bJBdEPPrM2oXKMqMMmwv0nI5N8xr+A=="}]},"_npmUser":{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"},"directories":{},"maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/i18nsolutions_1.0.30_1770227486877_0.5046331927628791"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-02T09:12:59.922Z","modified":"2026-02-04T17:51:27.200Z","1.0.0":"2026-02-02T09:13:00.235Z","1.0.1":"2026-02-02T09:22:19.755Z","1.0.2":"2026-02-02T09:39:01.952Z","1.0.3":"2026-02-02T09:56:26.054Z","1.0.4":"2026-02-02T10:10:36.960Z","1.0.5":"2026-02-02T14:36:44.343Z","1.0.6":"2026-02-02T15:12:13.139Z","1.0.7":"2026-02-02T15:25:04.471Z","1.0.8":"2026-02-02T15:33:13.477Z","1.0.9":"2026-02-02T15:50:39.718Z","1.0.10":"2026-02-02T16:04:57.467Z","1.0.11":"2026-02-02T16:25:13.797Z","1.0.12":"2026-02-02T16:27:47.587Z","1.0.13":"2026-02-02T16:30:19.655Z","1.0.14":"2026-02-02T16:38:04.068Z","1.0.15":"2026-02-02T16:42:21.235Z","1.0.16":"2026-02-02T17:15:12.203Z","1.0.17":"2026-02-03T03:36:41.036Z","1.0.18":"2026-02-03T04:14:47.045Z","1.0.19":"2026-02-03T04:23:22.590Z","1.0.20":"2026-02-03T04:36:34.519Z","1.0.21":"2026-02-03T05:24:44.173Z","1.0.22":"2026-02-03T05:34:43.390Z","1.0.23":"2026-02-03T05:39:00.792Z","1.0.24":"2026-02-03T05:46:01.346Z","1.0.25":"2026-02-03T05:55:24.407Z","1.0.27":"2026-02-04T17:13:03.670Z","1.0.28":"2026-02-04T17:16:50.397Z","1.0.29":"2026-02-04T17:35:54.527Z","1.0.30":"2026-02-04T17:51:27.092Z"},"bugs":{"url":"https://github.com/harrymaurya05/i18nsolutions/issues"},"author":{"name":"Harry Maurya","email":"harrymaurya05@gmail.com","url":"https://github.com/harrymaurya05"},"license":"MIT","homepage":"https://github.com/harrymaurya05/i18nsolutions#readme","keywords":["react","translation","i18n","internationalization","ai","automatic","localization","l10n","translate","multilingual","google-translate","deepl","aws-translate"],"repository":{"type":"git","url":"git+https://github.com/harrymaurya05/i18nsolutions.git"},"description":"AI-powered automatic translation library for React with intelligent caching and zero-maintenance workflow","maintainers":[{"name":"harrymaurya05","email":"harrymaurya05@gmail.com"}],"readme":"# i18nsolutions\n\nAI-powered automatic translation library for React applications with intelligent caching and zero-maintenance workflow.\n\n## 📦 Quick Start\n\n```bash\nnpm install i18nsolutions\n# or\nyarn add i18nsolutions\n```\n\n## 🚀 Features\n\n- **Single API Call at Startup** - All translations fetched once and cached\n- **Auto-Extract Translatable Text** - Build-time plugin scans your code automatically\n- **🎯 Auto-Wrap Text Feature** - Automatically wraps JSX text, attributes, and object strings with `t()` calls\n- **⚡ Incremental Auto-Translation** - Only translate new/changed texts (90-99% cost savings)\n- **Smart Caching** - LocalStorage/IndexedDB persistence across sessions\n- **Zero Maintenance** - No manual translation files to manage\n- **Multiple Translation Providers** - Support for Google Translate, DeepL, AWS Translate, Polyglot API\n- **Offline-Ready** - Works offline after initial translation load\n- **Dynamic Language Switching** - Change languages on the fly\n- **Type-Safe** - Full TypeScript support\n- **90% Cost Reduction** - Single batch call vs. per-text translation\n- **Professional Quality** - Enterprise-grade accuracy and context awareness\n\n## 🎯 Integration Guide for Existing React Projects\n\n### Prerequisites\n\n- React 16.8+ (hooks support)\n- Vite or Create React App (Webpack plugin coming soon)\n- Node.js 14+\n- Translation API key (Google Translate, DeepL, or Polyglot API)\n\n### Step 1: Install the Package\n\n```bash\nnpm install i18nsolutions\n# or\nyarn add i18nsolutions\n# or\npnpm add i18nsolutions\n```\n\n### Step 2: Configure Build Plugin\n\nThe plugin automatically extracts translatable text from your JSX components and can optionally wrap them with translation calls.\n\n#### For Vite Projects\n\nUpdate your [vite.config.js](vite.config.js) or [vite.config.ts](vite.config.ts):\n\n```js\nimport { defineConfig } from \"vite\";\nimport react from \"@vitejs/plugin-react\";\nimport { extractTranslatableText } from \"i18nsolutions/plugin\";\n\nexport default defineConfig({\n  plugins: [\n    react(),\n    extractTranslatableText({\n      include: [\"src/**/*.{jsx,tsx}\"],\n      output: \"src/translations/texts.json\",\n      exclude: [\"src/**/*.test.{jsx,tsx}\"], // Optional: skip test files\n      autoWrapText: true, // 🆕 Automatically wrap text with t() calls\n      verbose: true, // Optional: see what's being processed\n    }),\n  ],\n});\n```\n\n#### Plugin Configuration Options\n\n```typescript\n{\n  include: string[];           // File patterns to scan (required)\n  output: string;              // Output JSON file path (required)\n  exclude?: string[];          // File patterns to ignore\n  minLength?: number;          // Minimum text length to extract (default: 3)\n  verbose?: boolean;           // Show detailed logs (default: false)\n  autoWrapText?: boolean;      // 🆕 Auto-wrap text with t() (default: false)\n  autoTranslate?: {            // Optional: auto-translate extracted texts\n    enabled: boolean;\n    adapter: TranslationAdapter;\n    sourceLang: string;\n    targetLangs: string[];\n  }\n}\n```\n\n#### For Create React App (CRA)\n\nSince CRA doesn't easily allow custom build plugins, you have two options:\n\n**Option A: Use CRACO (Recommended)**\n\n```bash\nnpm install @craco/craco\n```\n\nCreate [craco.config.js](craco.config.js):\n\n```js\nconst { extractTranslatableText } = require(\"i18nsolutions/plugin\");\n\nmodule.exports = {\n  webpack: {\n    plugins: [\n      extractTranslatableText({\n        include: [\"src/**/*.{jsx,tsx}\"],\n        output: \"src/translations/texts.json\",\n      }),\n    ],\n  },\n};\n```\n\nUpdate [package.json](package.json):\n\n```json\n{\n  \"scripts\": {\n    \"start\": \"craco start\",\n    \"build\": \"craco build\",\n    \"test\": \"craco test\"\n  }\n}\n```\n\n**Option B: Manual Text Extraction**\n\nCreate [src/translations/texts.json](src/translations/texts.json) manually:\n\n```json\n[\"Welcome\", \"Sign In\", \"Sign Up\", \"Get Started\", \"Learn More\"]\n```\n\n### Step 3: Get Translation API Key\n\nChoose one of the following providers:\n\n#### Polyglot API (Recommended - Easiest)\n\n1. Visit https://usepolyglot.dev\n2. Sign up for free account\n3. Get your API key from dashboard\n4. Free tier: 500,000 characters/month\n\n#### Google Translate\n\n1. Go to Google Cloud Console\n2. Enable \"Cloud Translation API\"\n3. Create API credentials\n4. Pricing: $20 per 1M characters\n\n#### DeepL (Best Quality)\n\n1. Visit https://www.deepl.com/pro-api\n2. Sign up for API access\n3. Get your authentication key\n4. Free tier: 500,000 characters/month\n\n### Step 4: Configure Environment Variables\n\nCreate or update [.env](/.env) file in your project root:\n\n```env\n# Choose your provider: 'polyglot', 'google', 'deepl', or 'aws'\nVITE_TRANSLATE_PROVIDER=polyglot\n\n# Your API key\nVITE_TRANSLATE_API_KEY=your_api_key_here\n\n# Default source language (your app's current language)\nVITE_SOURCE_LANG=en\n\n# Default target language\nVITE_TARGET_LANG=es\n```\n\n**For Create React App**, use `REACT_APP_` prefix:\n\n```env\nREACT_APP_TRANSLATE_PROVIDER=polyglot\nREACT_APP_TRANSLATE_API_KEY=your_api_key_here\nREACT_APP_SOURCE_LANG=en\nREACT_APP_TARGET_LANG=es\n```\n\n### Step 5: Wrap Your App with TranslateProvider\n\nUpdate your main app file (usually [src/App.jsx](src/App.jsx) or [src/main.jsx](src/main.jsx)):\n\n```jsx\nimport React from \"react\";\nimport { TranslateProvider, createTranslator } from \"i18nsolutions\";\nimport textsToTranslate from \"./translations/texts.json\";\n\n// Create translator instance\nconst translator = createTranslator({\n  sourceLang: import.meta.env.VITE_SOURCE_LANG || \"en\",\n  targetLang: import.meta.env.VITE_TARGET_LANG || \"es\",\n  provider: import.meta.env.VITE_TRANSLATE_PROVIDER || \"polyglot\",\n  apiKey: import.meta.env.VITE_TRANSLATE_API_KEY,\n  textsToTranslate,\n  cache: {\n    enabled: true,\n    storage: \"localStorage\",\n    ttl: 7 * 24 * 60 * 60 * 1000, // 7 days\n  },\n  fallbackToOriginal: true,\n});\n\nfunction App() {\n  return (\n    <TranslateProvider translator={translator}>\n      {/* Your existing app components */}\n      <YourExistingApp />\n    </TranslateProvider>\n  );\n}\n\nexport default App;\n```\n\n**For Create React App** (using `REACT_APP_` prefix):\n\n```jsx\nconst translator = createTranslator({\n  sourceLang: process.env.REACT_APP_SOURCE_LANG || \"en\",\n  targetLang: process.env.REACT_APP_TARGET_LANG || \"es\",\n  provider: process.env.REACT_APP_TRANSLATE_PROVIDER || \"polyglot\",\n  apiKey: process.env.REACT_APP_TRANSLATE_API_KEY,\n  textsToTranslate,\n  // ... rest of config\n});\n```\n\n### Step 6: Use Translations in Your Components\n\nReplace hardcoded text with the translation hook:\n\n**Before:**\n\n```jsx\nfunction Header() {\n  return (\n    <header>\n      <h1>Welcome to Our App</h1>\n      <button>Get Started</button>\n      <p>Join thousands of happy users</p>\n    </header>\n  );\n}\n```\n\n**After:**\n\n```jsx\nimport { useTranslate } from \"i18nsolutions\";\n\nfunction Header() {\n  const t = useTranslate();\n\n  return (\n    <header>\n      <h1>{t(\"Welcome to Our App\")}</h1>\n      <button>{t(\"Get Started\")}</button>\n      <p>{t(\"Join thousands of happy users\")}</p>\n    </header>\n  );\n}\n```\n\n### Step 7: Add Language Switcher (Optional)\n\nCreate a language selector component:\n\n```jsx\nimport { useTranslator } from \"i18nsolutions\";\n\nfunction LanguageSwitcher() {\n  const { changeLanguage, currentLang, isLoading } = useTranslator();\n\n  const languages = [\n    { code: \"en\", name: \"English\" },\n    { code: \"es\", name: \"Español\" },\n    { code: \"fr\", name: \"Français\" },\n    { code: \"de\", name: \"Deutsch\" },\n    { code: \"hi\", name: \"हिंदी\" },\n  ];\n\n  return (\n    <select\n      value={currentLang}\n      onChange={(e) => changeLanguage(e.target.value)}\n      disabled={isLoading}\n    >\n      {languages.map((lang) => (\n        <option key={lang.code} value={lang.code}>\n          {lang.name}\n        </option>\n      ))}\n    </select>\n  );\n}\n```\n\n### Step 8: Build and Test\n\n```bash\n# Development mode\nnpm run dev\n\n# Production build\nnpm run build\n```\n\nThat's it! Your app now supports automatic translation with intelligent caching.\n\n## 🎯 Auto-Wrap Text Feature (New!)\n\nThe `autoWrapText` feature automatically modifies your source files to wrap translatable text with `t()` calls. This eliminates manual wrapping!\n\n### How It Works\n\nWhen you enable `autoWrapText: true` in your plugin configuration and run `npm run build`, the plugin:\n\n1. **Scans** all files matching your `include` patterns\n2. **Detects** translatable text (JSX text, attributes, and object properties)\n3. **Modifies** your source files to wrap text with `t()` calls\n4. **Adds** `useTranslate` import and hook if missing\n5. **Extracts** all text to `texts.json` for translation\n\n### What Gets Wrapped\n\n#### ✅ JSX Text Content\n\n**Before:**\n\n```jsx\nfunction Header() {\n  return <h1>Welcome to Our App</h1>;\n}\n```\n\n**After:**\n\n```jsx\nimport { useTranslate } from \"i18nsolutions\";\n\nfunction Header() {\n  const t = useTranslate();\n  return <h1>{t(\"Welcome to Our App\")}</h1>;\n}\n```\n\n#### ✅ JSX Attributes\n\nAutomatically wraps these attributes:\n\n- `placeholder`\n- `title`\n- `aria-label`\n- `alt`\n- `label`\n\n**Before:**\n\n```jsx\n<input placeholder=\"Enter your name\" />\n<button title=\"Click me\" />\n<img alt=\"Profile picture\" />\n<label label=\"First Name\" />\n```\n\n**After:**\n\n```jsx\n<input placeholder={t(\"Enter your name\")} />\n<button title={t(\"Click me\")} />\n<img alt={t(\"Profile picture\")} />\n<label label={t(\"First Name\")} />\n```\n\n#### ✅ Object Properties\n\nAutomatically wraps these object properties:\n\n- `message`\n- `error`\n- `title`\n- `description`\n- `label`\n- `text`\n- `name`\n\n**Before:**\n\n```jsx\nshowAlert({\n  message: \"Operation completed successfully\",\n  type: \"success\",\n});\n\nconst config = {\n  title: \"Settings\",\n  description: \"Configure your preferences\",\n  error: \"Invalid input\",\n};\n```\n\n**After:**\n\n```jsx\nshowAlert({\n  message: t(\"Operation completed successfully\"),\n  type: \"success\",\n});\n\nconst config = {\n  title: t(\"Settings\"),\n  description: t(\"Configure your preferences\"),\n  error: t(\"Invalid input\"),\n};\n```\n\n### Smart Features\n\n- ✅ **No Duplicates** - Checks if `useTranslate` is already imported before adding\n- ✅ **Skip Already Wrapped** - Won't wrap text that's already inside `t()` calls\n- ✅ **Works with Existing Code** - Processes files even if they already use `useTranslate`\n- ✅ **Minimum Length** - Only wraps text longer than `minLength` (default: 3 characters)\n- ✅ **Source Modification** - Actually modifies your source files (commit to see changes)\n\n### Usage\n\n```typescript\n// vite.config.ts\nextractTranslatableText({\n  include: [\"src/**/*.{jsx,tsx}\"],\n  output: \"src/translations/texts.json\",\n  autoWrapText: true, // Enable auto-wrapping\n  minLength: 3, // Only wrap text with 3+ characters\n  verbose: true, // See detailed logs\n});\n```\n\n### Important Notes\n\n⚠️ **Source Files Are Modified** - The `autoWrapText` feature modifies your actual source files. Always commit your code before running it for the first time, so you can review the changes.\n\n💡 **Run Once** - After the initial run, you can disable `autoWrapText` or leave it enabled. It won't re-wrap already wrapped text.\n\n🎯 **Best Practice** - Use `autoWrapText: true` initially to wrap all existing text, then disable it and manually wrap new text as needed.\n\n## 📋 Complete Integration Checklist\n\n- [ ] Install `i18nsolutions` package\n- [ ] Configure build plugin in vite.config.js (or CRACO for CRA)\n- [ ] Enable `autoWrapText: true` for automatic text wrapping (optional)\n- [ ] Get translation API key from your chosen provider\n- [ ] Create .env file with API credentials\n- [ ] Wrap app with TranslateProvider\n- [ ] If not using `autoWrapText`, manually replace hardcoded text with `t()` function\n- [ ] Add language switcher component (optional)\n- [ ] Test translation in development\n- [ ] Build and deploy\n\n## 🔧 Configuration Options\n\n## 🔧 Configuration Options\n\n### createTranslator() API\n\n```typescript\ncreateTranslator({\n  // REQUIRED: Source language (your app's default language)\n  sourceLang: string, // e.g., 'en', 'es', 'fr'\n\n  // REQUIRED: Target language for translation\n  targetLang: string, // e.g., 'hi', 'es', 'fr', 'de'\n\n  // REQUIRED: Translation provider\n  provider: 'polyglot' | 'google' | 'deepl' | 'aws' | 'custom',\n\n  // REQUIRED: API key or credentials\n  apiKey: string, // For polyglot, google, deepl\n  // OR\n  credentials: { // For AWS\n    accessKeyId: string,\n    secretAccessKey: string,\n    region: string,\n  },\n  // OR\n  customAPIOptions: { // For custom backend\n    baseUrl: string,\n    headers?: Record<string, string>,\n  },\n\n  // REQUIRED: Texts to translate (from extracted JSON)\n  textsToTranslate: string[],\n\n  // OPTIONAL: Cache configuration\n  cache: {\n    enabled: boolean, // Default: true\n    storage: 'localStorage' | 'indexedDB', // Default: 'localStorage'\n    ttl: number, // Cache duration in ms, Default: 7 days\n  },\n\n  // OPTIONAL: Fallback to original text if translation fails\n  fallbackToOriginal: boolean, // Default: true\n\n  // OPTIONAL: Custom error handler\n  onError: (error: Error) => void,\n\n  // OPTIONAL: Loading state handler\n  onLoadingChange: (isLoading: boolean) => void,\n});\n```\n\n### extractTranslatableText() Plugin Options\n\n```typescript\nextractTranslatableText({\n  // REQUIRED: Files to scan\n  include: string[], // Glob patterns, e.g., ['src/**/*.{jsx,tsx}']\n\n  // REQUIRED: Output file path\n  output: string, // e.g., 'src/translations/texts.json'\n\n  // OPTIONAL: Files to exclude\n  exclude: string[], // Default: ['**/*.test.{jsx,tsx}', '**/node_modules/**']\n\n  // OPTIONAL: Auto-translation configuration\n  autoTranslate: {\n    enabled: boolean,\n    adapter: TranslationAdapter, // Polyglot, Google, DeepL, etc.\n    sourceLang: string,\n    targetLangs: string[],\n  },\n\n  // OPTIONAL: Extraction patterns\n  patterns: {\n    jsxText: boolean, // Extract from <div>Text</div>, Default: true\n    jsxAttribute: string[], // Extract from attributes, e.g., ['title', 'placeholder']\n    stringLiterals: boolean, // Extract from const text = \"Hello\", Default: false\n  },\n\n  // OPTIONAL: Minimum text length to extract\n  minLength: number, // Default: 2\n\n  // OPTIONAL: Ignore patterns (regex)\n  ignore: RegExp[], // e.g., [/^[0-9]+$/, /^[A-Z_]+$/]\n\n  // OPTIONAL: Debug mode\n  verbose: boolean, // Default: false\n});\n```\n\n## 🌍 Translation Provider Setup\n\n### 1. Polyglot API (Recommended)\n\nSimple, purpose-built for this library with no complex setup.\n\n```jsx\nimport { createTranslator } from \"i18nsolutions\";\nimport { PolyglotAPIAdapter } from \"i18nsolutions\";\n\nconst translator = createTranslator({\n  provider: \"polyglot\",\n  apiKey: \"YOUR_POLYGLOT_API_KEY\",\n  sourceLang: \"en\",\n  targetLang: \"es\",\n  textsToTranslate,\n});\n```\n\n**Get API Key:** https://usepolyglot.dev\n\n### 2. Google Translate\n\nProfessional translation with wide language support.\n\n```jsx\nimport { createTranslator } from \"i18nsolutions\";\n\nconst translator = createTranslator({\n  provider: \"google\",\n  apiKey: \"YOUR_GOOGLE_API_KEY\",\n  sourceLang: \"en\",\n  targetLang: \"es\",\n  textsToTranslate,\n});\n```\n\n**Get API Key:**\n\n1. Go to [Google Cloud Console](https://console.cloud.google.com/)\n2. Create a new project or select existing\n3. Enable \"Cloud Translation API\"\n4. Create credentials → API Key\n5. Copy the API key\n\n### 3. DeepL (Best Quality)\n\nPremium translation quality, ideal for professional content.\n\n```jsx\nimport { createTranslator } from \"i18nsolutions\";\n\nconst translator = createTranslator({\n  provider: \"deepl\",\n  apiKey: \"YOUR_DEEPL_API_KEY\",\n  sourceLang: \"en\",\n  targetLang: \"es\",\n  textsToTranslate,\n});\n```\n\n**Get API Key:** https://www.deepl.com/pro-api\n\n### 4. AWS Translate\n\nEnterprise-grade translation with AWS infrastructure.\n\n```jsx\nimport { createTranslator } from \"i18nsolutions\";\n\nconst translator = createTranslator({\n  provider: \"aws\",\n  credentials: {\n    accessKeyId: \"YOUR_AWS_ACCESS_KEY\",\n    secretAccessKey: \"YOUR_AWS_SECRET_KEY\",\n    region: \"us-east-1\",\n  },\n  sourceLang: \"en\",\n  targetLang: \"es\",\n  textsToTranslate,\n});\n```\n\n### 5. Custom Backend API\n\nUse your own translation service.\n\n```jsx\nimport { createTranslator } from \"i18nsolutions\";\n\nconst translator = createTranslator({\n  provider: \"custom\",\n  customAPIOptions: {\n    baseUrl: \"https://your-api.com/translate\",\n    headers: {\n      \"X-API-Key\": \"your_api_key\",\n      \"Content-Type\": \"application/json\",\n    },\n  },\n  sourceLang: \"en\",\n  targetLang: \"es\",\n  textsToTranslate,\n});\n```\n\nYour API should accept POST requests with this format:\n\n```json\n{\n  \"texts\": [\"Hello\", \"Welcome\"],\n  \"sourceLang\": \"en\",\n  \"targetLang\": \"es\"\n}\n```\n\nAnd return:\n\n```json\n{\n  \"translations\": [\"Hola\", \"Bienvenido\"]\n}\n```\n\n## 🎨 Advanced Usage\n\n### Dynamic Content Translation\n\nFor user-generated content or API data not in your source code:\n\n```jsx\nimport { useTranslateDynamic } from \"i18nsolutions\";\n\nfunction UserComment({ comment }) {\n  const translateDynamic = useTranslateDynamic();\n  const [translated, setTranslated] = useState(comment);\n\n  useEffect(() => {\n    translateDynamic(comment).then(setTranslated);\n  }, [comment]);\n\n  return <p>{translated}</p>;\n}\n```\n\n### Variables in Translations\n\n```jsx\nimport { useTranslate } from \"i18nsolutions\";\n\nfunction Welcome({ username }) {\n  const t = useTranslate();\n\n  return <h1>{t(\"Welcome, {{name}}!\", { name: username })}</h1>;\n  // Output: \"Welcome, John!\" → \"¡Bienvenido, John!\" (in Spanish)\n}\n```\n\n### Pluralization Support\n\n```jsx\nimport { useTranslate } from \"i18nsolutions\";\n\nfunction ItemCount({ count }) {\n  const t = useTranslate();\n\n  return (\n    <p>\n      {t(\"{{count}} item\", { count, plural: true })}\n      {/* Handles singular/plural automatically */}\n    </p>\n  );\n}\n```\n\n### Date and Number Formatting\n\n```jsx\nimport { useFormat } from \"i18nsolutions\";\n\nfunction Invoice({ amount, date }) {\n  const { formatCurrency, formatDate } = useFormat();\n\n  return (\n    <div>\n      <p>Amount: {formatCurrency(amount)}</p>\n      <p>Date: {formatDate(date)}</p>\n    </div>\n  );\n}\n```\n\n### Loading States\n\n```jsx\nimport { useTranslator } from \"i18nsolutions\";\n\nfunction App() {\n  const { isLoading, error } = useTranslator();\n\n  if (isLoading) {\n    return <div>Loading translations...</div>;\n  }\n\n  if (error) {\n    return <div>Error loading translations: {error.message}</div>;\n  }\n\n  return <YourApp />;\n}\n```\n\n### Programmatic Language Change\n\n```jsx\nimport { useTranslator } from \"i18nsolutions\";\n\nfunction Settings() {\n  const { changeLanguage, currentLang, availableLanguages } = useTranslator();\n\n  const handleSave = async (newLang) => {\n    try {\n      await changeLanguage(newLang);\n      // Language changed successfully\n      // Translations are automatically updated\n    } catch (error) {\n      console.error(\"Failed to change language:\", error);\n    }\n  };\n\n  return (\n    <div>\n      <h2>Language Settings</h2>\n      <select value={currentLang} onChange={(e) => handleSave(e.target.value)}>\n        {availableLanguages.map((lang) => (\n          <option key={lang} value={lang}>\n            {lang}\n          </option>\n        ))}\n      </select>\n    </div>\n  );\n}\n```\n\n## ⚡ Incremental Auto-Translation\n\nSave 90-99% on translation costs by only translating new or changed texts.\n\n### Enable Auto-Translation\n\n```js\n// vite.config.js\nimport { extractTranslatableText } from \"i18nsolutions/plugin\";\nimport { PolyglotAPIAdapter } from \"i18nsolutions\";\n\nexport default defineConfig({\n  plugins: [\n    react(),\n    extractTranslatableText({\n      include: [\"src/**/*.{jsx,tsx}\"],\n      output: \"src/translations/texts.json\",\n\n      // Enable auto-translation\n      autoTranslate: {\n        enabled: true,\n        adapter: new PolyglotAPIAdapter(process.env.VITE_POLYGLOT_API_KEY),\n        sourceLang: \"en\",\n        targetLangs: [\"es\", \"fr\", \"de\", \"hi\"],\n      },\n    }),\n  ],\n});\n```\n\n**How it works:**\n\n1. Plugin extracts texts from your code\n2. Compares with previously translated texts\n3. Only translates new/changed texts\n4. Updates translation files automatically\n\n**Cost Savings Example:**\n\n- Initial extraction: 1000 texts → Translates all 1000\n- After adding 10 new texts → Translates only 10 (99% savings)\n- After changing 5 texts → Translates only 5 (99.5% savings)\n\n[📖 Full Incremental Translation Guide](./INCREMENTAL-TRANSLATION.md)\n\n## 💾 Caching Strategies\n\n### LocalStorage (Default)\n\nFast and simple, best for most applications.\n\n```jsx\nconst translator = createTranslator({\n  // ... other config\n  cache: {\n    enabled: true,\n    storage: \"localStorage\",\n    ttl: 7 * 24 * 60 * 60 * 1000, // 7 days\n  },\n});\n```\n\n**Pros:** Fast, synchronous, simple  \n**Cons:** ~5-10MB limit  \n**Best for:** Small to medium apps\n\n### IndexedDB\n\nLarger storage capacity for extensive translations.\n\n```jsx\nconst translator = createTranslator({\n  // ... other config\n  cache: {\n    enabled: true,\n    storage: \"indexedDB\",\n    ttl: 30 * 24 * 60 * 60 * 1000, // 30 days\n  },\n});\n```\n\n**Pros:** Large capacity (50MB+), structured storage  \n**Cons:** Asynchronous, more complex  \n**Best for:** Large apps with many languages\n\n### Clear Cache\n\n```jsx\nimport { useTranslator } from \"i18nsolutions\";\n\nfunction Settings() {\n  const { clearCache } = useTranslator();\n\n  return <button onClick={clearCache}>Clear Translation Cache</button>;\n}\n```\n\n## 🧪 Testing\n\n### Mock Translations in Tests\n\n```jsx\nimport { render, screen } from \"@testing-library/react\";\nimport { MockTranslateProvider } from \"i18nsolutions/testing\";\nimport Header from \"./Header\";\n\ntest(\"renders translated welcome message\", () => {\n  render(\n    <MockTranslateProvider\n      translations={{\n        \"Welcome to Our App\": \"स्वागत है हमारे ऐप में\",\n        \"Get Started\": \"शुरू करें\",\n      }}\n    >\n      <Header />\n    </MockTranslateProvider>,\n  );\n\n  expect(screen.getByText(\"स्वागत है हमारे ऐप में\")).toBeInTheDocument();\n});\n```\n\n### Test Language Switching\n\n```jsx\nimport { render, screen, fireEvent } from \"@testing-library/react\";\nimport { MockTranslateProvider } from \"i18nsolutions/testing\";\nimport LanguageSwitcher from \"./LanguageSwitcher\";\n\ntest(\"switches language\", async () => {\n  const { rerender } = render(\n    <MockTranslateProvider currentLang=\"en\">\n      <LanguageSwitcher />\n    </MockTranslateProvider>,\n  );\n\n  const select = screen.getByRole(\"combobox\");\n  fireEvent.change(select, { target: { value: \"es\" } });\n\n  // Test language change logic\n  expect(select.value).toBe(\"es\");\n});\n```\n\n## 📊 Performance & Cost Comparison\n\n### Traditional Approach (Per-Text Translation)\n\n```\n1000 texts × 10 API calls per session × 30 users = 300,000 API calls/day\nCost: ~$60/day\n```\n\n### With i18nsolutions\n\n```\n1 API call per language per session × 30 users = 30 API calls/day\nCost: ~$0.06/day (with caching)\nSavings: 99.98%\n```\n\n### Performance Metrics\n\n- **Initial Load:** ~500ms (one-time batch translation)\n- **Subsequent Loads:** <5ms (served from cache)\n- **Cache Size:** 50-200KB for typical apps\n- **Bundle Size:** ~15KB (gzipped)\n\n## 🌐 Supported Languages\n\nAll major languages supported by your chosen provider:\n\n**Common Languages:**\n\n- English (en), Spanish (es), French (fr), German (de)\n- Hindi (hi), Chinese (zh), Japanese (ja), Korean (ko)\n- Arabic (ar), Russian (ru), Portuguese (pt), Italian (it)\n- Dutch (nl), Polish (pl), Turkish (tr), Swedish (sv)\n- And 100+ more...\n\nCheck your provider's documentation for the complete list.\n\n## 🚨 Common Issues & Troubleshooting\n\n### Issue: \"Texts not extracted\"\n\n**Solution:**\n\n- Ensure build plugin is properly configured\n- Check `include` patterns match your files\n- Run `npm run build` to trigger extraction\n- Verify `texts.json` is created in output path\n\n### Issue: \"API key not working\"\n\n**Solution:**\n\n- Verify API key is correct and active\n- Check environment variables are loaded (restart dev server)\n- For Vite: use `VITE_` prefix\n- For CRA: use `REACT_APP_` prefix\n- Ensure API key has proper permissions/billing enabled\n\n### Issue: \"Translations not loading\"\n\n**Solution:**\n\n- Check browser console for errors\n- Verify `TranslateProvider` wraps your app\n- Ensure `textsToTranslate` is properly imported\n- Check network tab for API call failures\n- Clear cache and reload: `localStorage.clear()`\n\n### Issue: \"Build fails with plugin error\"\n\n**Solution:**\n\n- Update to latest version: `npm install i18nsolutions@latest`\n- Check Vite version compatibility (requires Vite 4+)\n- Verify plugin configuration syntax\n- Check for conflicting plugins\n\n### Issue: \"Cache not persisting\"\n\n**Solution:**\n\n- Check browser settings allow localStorage\n- Verify cache configuration is enabled\n- Try IndexedDB if localStorage is full\n- Check TTL hasn't expired\n\n## 🛠️ Migration Guide\n\n### From react-i18next\n\n```jsx\n// Before (react-i18next)\nimport { useTranslation } from \"react-i18next\";\nconst { t } = useTranslation();\nt(\"welcome.message\");\n\n// After (i18nsolutions)\nimport { useTranslate } from \"i18nsolutions\";\nconst t = useTranslate();\nt(\"Welcome message\");\n```\n\n### From react-intl\n\n```jsx\n// Before (react-intl)\nimport { FormattedMessage } from \"react-intl\";\n<FormattedMessage id=\"welcome\" defaultMessage=\"Welcome\" />;\n\n// After (i18nsolutions)\nimport { useTranslate } from \"i18nsolutions\";\nconst t = useTranslate();\n{\n  t(\"Welcome\");\n}\n```\n\n## 📚 API Reference\n\n### Hooks\n\n#### `useTranslate()`\n\nReturns translation function.\n\n```typescript\nconst t = useTranslate();\nt(text: string, variables?: Record<string, any>): string\n```\n\n#### `useTranslator()`\n\nReturns translator instance and control methods.\n\n```typescript\nconst { currentLang, changeLanguage, isLoading, error, clearCache } =\n  useTranslator();\n```\n\n#### `useTranslateDynamic()`\n\nTranslates dynamic runtime content.\n\n```typescript\nconst translateDynamic = useTranslateDynamic();\nconst result = await translateDynamic(text: string): Promise<string>\n```\n\n#### `useFormat()`\n\nReturns formatting utilities.\n\n```typescript\nconst { formatCurrency, formatDate, formatNumber } = useFormat();\n```\n\n### Components\n\n#### `<TranslateProvider>`\n\nContext provider for translations.\n\n```typescript\n<TranslateProvider\n  translator={translator}\n  loadingComponent={<CustomLoader />} // Optional\n>\n  {children}\n</TranslateProvider>\n```\n\n#### `<MockTranslateProvider>` (Testing)\n\nMock provider for tests.\n\n```typescript\n<MockTranslateProvider\n  translations={{ \"Hello\": \"Hola\" }}\n  currentLang=\"es\"\n>\n  {children}\n</MockTranslateProvider>\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Please read our [Contributing Guide](CONTRIBUTING.md).\n\n## 📄 License\n\nMIT © 2025\n\n## 🙋 Support & Resources\n\n- 📖 [Full Documentation](./README.md)\n- 🚀 [Quick Start Guide](./QUICKSTART.md)\n- 🔄 [Incremental Translation Guide](./INCREMENTAL-TRANSLATION.md)\n- 🔌 [Integration Guide](./INTEGRATION-GUIDE.md)\n- 🌐 [Polyglot API Guide](./POLYGLOT-API-GUIDE.md)\n- 💬 [GitHub Issues](https://github.com/yourusername/i18nsolutions/issues)\n- 📧 Email: support@usepolyglot.dev\n\n## 🗺️ Roadmap\n\n- [ ] Support for more translation providers (Microsoft, Yandex)\n- [ ] CLI tool for managing translations\n- [ ] React Native support\n- [ ] Webpack plugin support (for CRA without CRACO)\n- [ ] Translation quality feedback system\n- [ ] Automatic language detection based on browser settings\n- [ ] Server-side rendering (SSR) support for Next.js\n- [ ] Gatsby plugin\n- [ ] Translation management dashboard\n- [ ] A/B testing for translations\n\n## � Recent Updates\n\n### v1.0.13 (Latest)\n\n- ✅ **Auto-wrap processes all files** - Now works with files that already have `useTranslate` imported\n- ✅ **Smart duplicate prevention** - Won't add duplicate imports or hooks\n- ✅ **Improved wrapping logic** - Better detection of already-wrapped text\n\n### v1.0.12\n\n- ✅ **Object property wrapping** - Auto-wraps strings in objects (`message`, `error`, `title`, etc.)\n- ✅ **Enhanced detection** - Supports common property names in alerts, configs, and notifications\n\n### v1.0.11\n\n- ✅ **Removed autoTransform** - Simplified to single `autoWrapText` feature\n- ✅ **Label attribute support** - Added `label` to supported JSX attributes\n- ✅ **Source file modification** - Direct modification for better visibility\n\n### v1.0.10\n\n- ✅ **Fixed TypeScript error** - Corrected `useTranslate` hook usage from `const { t }` to `const t`\n- ✅ **Renamed feature** - Changed `rewriteSource` to more descriptive `autoWrapText`\n- ✅ **Mutual exclusivity** - Better validation for feature options\n\n### v1.0.9\n\n- ✅ **Introduced autoWrapText** - Automatic source file modification feature\n- ✅ **Smart text detection** - Detects JSX text and attributes automatically\n\n## �💡 Why Choose i18nsolutions?\n\n### vs Chrome's Built-in Translator\n\n- ✅ Consistent, controlled translations\n- ✅ Professional quality (DeepL, Google Cloud)\n- ✅ SEO-friendly pre-rendered content\n- ✅ Brand protection (no mistranslations)\n- ✅ Integrates with app logic (dates, currency, formatting)\n\n### vs Traditional i18n Libraries\n\n- ✅ **90% cost reduction** (single batch API call)\n- ✅ **Zero maintenance** (auto-extract, auto-translate)\n- ✅ **Smart caching** (offline-ready after first load)\n- ✅ **No JSON files to manage** (automated workflow)\n- ✅ **Incremental updates** (only translate what changed)\n\n### vs Manual Translation\n\n- ✅ **10x faster** (automated extraction and translation)\n- ✅ **No human translators needed** (AI-powered)\n- ✅ **Instant updates** (add text, translation happens automatically)\n- ✅ **Multiple languages** (support 100+ languages easily)\n- ✅ **Always up-to-date** (no stale translations)\n\n---\n\n**Made with ❤️ for developers who hate maintaining translation files**\n\n```\n\n```\n","readmeFilename":"README.md"}