{"_id":"@anterofy/language-selector","_rev":"2-7e311543cfc6f6f06577a847e5ac6e18","name":"@anterofy/language-selector","dist-tags":{"latest":"0.3.1"},"versions":{"0.3.0":{"name":"@anterofy/language-selector","version":"0.3.0","_id":"@anterofy/language-selector@0.3.0","maintainers":[{"name":"anterofy","email":"antero.kangas@gmail.com"}],"homepage":"http://localhost:8080/git/sakcms/language-selector","bugs":{"url":"http://localhost:8080/git/sakcms/language-selector/issues"},"dist":{"shasum":"58e4f5109961abaab99cb653f4aa86e462272522","tarball":"https://registry.npmjs.org/@anterofy/language-selector/-/language-selector-0.3.0.tgz","fileCount":5,"integrity":"sha512-ztPxNvH3jxf6NXZFi/gN0hPSt0oKCFj1zETiPkgTIDzXWhSHykeJUHByE2ukrd5PKkJ+5kOUdoRvnoxKJ8E6ug==","signatures":[{"sig":"MEQCIFEl6ztq5Ghzv+lXzjk4Jb7zt+D88efM62zpi/3belVqAiA8H68Supm6nA20pUkIOy0tY1ecgck02fiiHqHfVLw9Zg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":203613},"main":"./dist/index.js","type":"module","$meta":{"Name":"package.json","Path":"language-selector/package.json","Repo":"language-selector","Author":"Antero Kangas","Created":"2025-11-04","Version":"0.2.0","Description":"A React component for selecting the language in the application, integrated with i18n-core for language management."},"_from":"file:anterofy-language-selector-0.3.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"dev":"vite","lint":"eslint \"src/**/*.{ts,tsx}\"","test":"vitest run","build":"tsc -b && vite build","check":"pnpm typecheck && pnpm lint && pnpm test","clean":"rimraf dist","preview":"vite preview","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest --watch","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch"},"_npmUser":{"name":"anterofy","email":"antero.kangas@gmail.com"},"_resolved":"/private/var/folders/k4/c192nn9x0fx9m1yr6vzms2_m0000gn/T/4d1bc4522ad7d89627464e1795268140/anterofy-language-selector-0.3.0.tgz","_integrity":"sha512-ztPxNvH3jxf6NXZFi/gN0hPSt0oKCFj1zETiPkgTIDzXWhSHykeJUHByE2ukrd5PKkJ+5kOUdoRvnoxKJ8E6ug==","repository":{"url":"http://localhost:8080/git/sakcms/language-selector.git","type":"git"},"_npmVersion":"10.8.2","description":"<!--   Repo: language-selector   Path: language-selector/README.md   Name: README.md   Description:     Dokumentaatio @anterofy/language-selector -komponenttipaketille.     Sisältää asennus-, käyttö-, API-, kehitys- ja versiointiohjeet.   Created: 2025-11","directories":{},"sideEffects":false,"_nodeVersion":"20.19.4","dependencies":{"@anterofy/i18n-core":"^1.0.14"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.12","jsdom":"^27.1.0","eslint":"^9.39.1","rimraf":"^6.1.0","vitest":"^4.0.7","globals":"^16.5.0","@eslint/js":"^9.39.1","typescript":"^5.9.3","@types/node":"^22","@types/react":"^19.2.2","@types/react-dom":"^19.2.2","standard-version":"^9.5.0","typescript-eslint":"^8.46.3","eslint-plugin-react":"^7.37.5","@testing-library/dom":"^10.4.1","@vitejs/plugin-react":"^5.1.0","@testing-library/react":"^16.3.0","@testing-library/jest-dom":"^6.9.1","@typescript-eslint/parser":"^8.46.3","@testing-library/user-event":"^13.5.0","@typescript-eslint/eslint-plugin":"^8.46.3"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/language-selector_0.3.0_1762309236967_0.9785395749199972","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"$meta":{"Repo":"language-selector","Path":"language-selector/package.json","Name":"package.json","Description":"A React component for selecting the language in the application, integrated with i18n-core for language management.","Created":"2025-11-04","Author":"Antero Kangas","Version":"0.2.0"},"name":"@anterofy/language-selector","version":"0.3.1","private":false,"type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"sideEffects":false,"dependencies":{"@anterofy/i18n-core":"^1.0.16"},"peerDependencies":{"react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0"},"devDependencies":{"@eslint/js":"^9.39.1","@testing-library/dom":"^10.4.1","@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.0","@testing-library/user-event":"^13.5.0","@types/node":"^22","@types/react":"^19.2.2","@types/react-dom":"^19.2.2","@typescript-eslint/eslint-plugin":"^8.46.3","@typescript-eslint/parser":"^8.46.3","@vitejs/plugin-react":"^5.1.0","eslint":"^9.39.1","eslint-plugin-react":"^7.37.5","globals":"^16.5.0","jsdom":"^27.1.0","rimraf":"^6.1.0","standard-version":"^9.5.0","typescript":"^5.9.3","typescript-eslint":"^8.46.3","vite":"^7.1.12","vitest":"^4.0.7"},"repository":{"type":"git","url":"http://localhost:8080/git/sakcms/language-selector.git"},"bugs":{"url":"http://localhost:8080/git/sakcms/language-selector/issues"},"homepage":"http://localhost:8080/git/sakcms/language-selector","publishConfig":{"access":"public"},"engines":{"node":">=18"},"scripts":{"dev":"vite","build":"tsc -b && vite build","preview":"vite preview","lint":"eslint \"src/**/*.{ts,tsx}\"","test":"vitest run","test:watch":"vitest --watch","typecheck":"tsc --noEmit","check":"pnpm typecheck && pnpm lint && pnpm test","clean":"rimraf dist","release":"standard-version","release:patch":"standard-version --release-as patch","release:minor":"standard-version --release-as minor","release:major":"standard-version --release-as major"},"_id":"@anterofy/language-selector@0.3.1","description":"<!--   Repo: language-selector   Path: language-selector/README.md   Name: README.md   Description:     Dokumentaatio @anterofy/language-selector -komponenttipaketille.     Sisältää asennus-, käyttö-, API-, kehitys- ja versiointiohjeet.   Created: 2025-11","_integrity":"sha512-ODhVUNb0UJxgYaT6VJjkBVW0+kX3DX5agWTSwR6oe+HNm2GZRjDQX57CnhZXk74P+w56gyQ2mr5z8PMienDYkw==","_resolved":"/private/var/folders/k4/c192nn9x0fx9m1yr6vzms2_m0000gn/T/53be430072761f4d3acfc5ede20d6f2e/anterofy-language-selector-0.3.1.tgz","_from":"file:anterofy-language-selector-0.3.1.tgz","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-ODhVUNb0UJxgYaT6VJjkBVW0+kX3DX5agWTSwR6oe+HNm2GZRjDQX57CnhZXk74P+w56gyQ2mr5z8PMienDYkw==","shasum":"6b159f2566a729cc17eb1bb9219b180d98f277b1","tarball":"https://registry.npmjs.org/@anterofy/language-selector/-/language-selector-0.3.1.tgz","fileCount":5,"unpackedSize":203639,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFDaPR0MWKL5dEspjQH6Rz0che7nJTcylO41nUukCbyfAiAvFQnuXgtw8KOvRdjB4eNV48f5+xMAruxIOkZMivSarA=="}]},"_npmUser":{"name":"anterofy","email":"antero.kangas@gmail.com"},"directories":{},"maintainers":[{"name":"anterofy","email":"antero.kangas@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/language-selector_0.3.1_1762336430483_0.47893321618602736"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-05T02:20:36.891Z","modified":"2025-11-05T09:53:50.891Z","0.3.0":"2025-11-05T02:20:37.164Z","0.3.1":"2025-11-05T09:53:50.682Z"},"bugs":{"url":"http://localhost:8080/git/sakcms/language-selector/issues"},"homepage":"http://localhost:8080/git/sakcms/language-selector","repository":{"type":"git","url":"http://localhost:8080/git/sakcms/language-selector.git"},"description":"<!--   Repo: language-selector   Path: language-selector/README.md   Name: README.md   Description:     Dokumentaatio @anterofy/language-selector -komponenttipaketille.     Sisältää asennus-, käyttö-, API-, kehitys- ja versiointiohjeet.   Created: 2025-11","maintainers":[{"name":"anterofy","email":"antero.kangas@gmail.com"}],"readme":"<!--\n  Repo: language-selector\n  Path: language-selector/README.md\n  Name: README.md\n  Description:\n    Dokumentaatio @anterofy/language-selector -komponenttipaketille.\n    Sisältää asennus-, käyttö-, API-, kehitys- ja versiointiohjeet.\n  Created: 2025-11-05\n  Author: Antero Kangas\n-->\n# README.md\n3## @anterofy/language-selector\n\nKevyt, uudelleenkäytettävä **kielivalitsin React-komponentti**.  \nKomponentti **lukee kielet ja master-kielen i18n-core–rajapinnasta** (ei kovakoodattuja koodeja) ja emittoi valitun kielen ylöspäin.\n\n- ✅ Ei duplikaatteja: käyttää `@anterofy/i18n-core` -paketin julkista rajapintaa\n- ✅ Controlled/Uncontrolled -tuki (`value` + `onChange` tai sisäinen tila)\n- ✅ A11y: `aria-label=\"Language selector\"`\n- ✅ TypeScript-tyypit mukana\n\n---\n\n## Asennus\n\n```bash\npnpm add @anterofy/language-selector @anterofy/i18n-core\n# tai\nnpm i @anterofy/language-selector @anterofy/i18n-core\n# tai\nyarn add @anterofy/language-selector @anterofy/i18n-core\n\n\nVaatimukset: React 18/19, TypeScript suositeltu.\n\n\nNopea aloitus\n```TypeScript\nimport React, { useState } from \"react\";\nimport { LanguageSelector } from \"@anterofy/language-selector\";\nimport { getTranslation } from \"@anterofy/i18n-core\";\n\nexport default function Example() {\n  const [lang, setLang] = useState<string>(\"fi\");\n\n  return (\n    <div style={{ padding: 24 }}>\n      <h1>Language Selector demo</h1>\n\n      <LanguageSelector\n        value={lang}\n        onChange={setLang}\n        showFlags\n        className=\"my-select\"\n      />\n\n      <p style={{ marginTop: 12 }}>\n        Valittu kieli: <strong>{lang || \"(ei valintaa)\"} </strong>\n      </p>\n\n      {/* Esimerkki käännöksen hakemisesta (oikeassa sovelluksessa tee tämä esim. effectissä) */}\n      {/* const text = await getTranslation(\"hello\", lang, \"common\"); */}\n    </div>\n  );\n}\n```\nVinkki testaukseen: jos haluat nopeasti nähdä valitun kielen koodin sovelluksessa, lisää yllä oleva “Valittu kieli” -pätkä omaan App.tsx-tiedostoosi.\n\nAPI\n\nLanguageSelector (default export & nimetty export)\n\nProps\n","readmeFilename":"README.md"}