{"_id":"input-otp","_rev":"42-d7e017dd1eb41a06d2af0e7b639237eb","name":"input-otp","dist-tags":{"beta":"1.2.0-beta.1","latest":"1.4.2"},"versions":{"0.2.1":{"name":"input-otp","version":"0.2.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.2.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"aab8a1de937d472961097a28574bbbe040655fa6","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.2.1.tgz","fileCount":7,"integrity":"sha512-pc4NXuN/gr/RX+syzjxy+eOlB3ZpPc2i5aDfMLhbxZXu2gska/GvOR6/C3MhK0J+fYNXrZQmy85K33DRiV1CJg==","signatures":[{"sig":"MEUCICV5BqLHNuVQuD3A4tdE0WAl3csVZAsAZgvJAi53YnP5AiEAsUYVpPZhoj+dZ53T60s/HrYA14snreP6X/0Y4tAW51E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13226},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"8160411b19b98e539006932456c9698aa12f85ed","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please update to input-otp v1.1.0 or latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.2.1_1708360967333_0.3234854893622632","host":"s3://npm-registry-packages"}},"0.2.3":{"name":"input-otp","version":"0.2.3","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.2.3","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"76ffad1cc4825ee6c1e6238e39a82bd6236320a2","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.2.3.tgz","fileCount":15,"integrity":"sha512-2ru0E1ONGK6kSb0lWHQKhAcG/mtaD4NnnFCy4izNSfgRUmYCPN//jLeWQBuG6+lKSH2ZRkdZ8nHIkBUuRFEbsA==","signatures":[{"sig":"MEUCIQCsX0V3y15ltuoamax5lgrpOMxINvlmwep9PLqBUEp0RgIgX+eqSWrctboF45qhlNV+WjKwmcCusxuATWqDVRPQRCw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129235},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"c322b3a34e55769935817344e28f1673810475ae","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.2.3_1708363624888_0.9407804259773334","host":"s3://npm-registry-packages"}},"0.2.4":{"name":"input-otp","version":"0.2.4","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.2.4","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"8953759fd747370aa8aeba4ea8a9aecd24c8342e","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.2.4.tgz","fileCount":16,"integrity":"sha512-FHgLzR1vGZWwhVZ+hgOtopB13L59F+84YO5V9y3jKbFOzgLe+wUSJ9E/H84UGfBNjG2b4pUnCtMx9wxAZifBDg==","signatures":[{"sig":"MEQCIB0gOpBpm9Rjj8/b1NGLz8Jmiz+/1d3PV+uBYLBNKmLeAiA13m4bxQsPFKV/qCbr0YY66NICh1PGr4txxSH53O5/Lg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133611},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"016aa9379cffbd374e20639309ffbcc9f63947a5","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.2.4_1708376185243_0.4118777653824903","host":"s3://npm-registry-packages"}},"0.3.0-beta.1":{"name":"input-otp","version":"0.3.0-beta.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.3.0-beta.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"2b6543c3d5e929b13053e8260a8f8ad1bf24574d","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.3.0-beta.1.tgz","fileCount":8,"integrity":"sha512-5+2a/uj+clnlM3isFFSS8FVhnhW7Pny6lYpQjbMy1jPVbPiSdloS/flH7XAzQoHQ65NbiSxdZwb6XDkiQup7WA==","signatures":[{"sig":"MEUCIC+nqV+X3HoN79deJFbe8ij/Cjpimwe5jTX6zuSCuLSpAiEA0hDWU6di2Zx5fv5cFPDOlFKhHFAdSZJ2np/hmOB/juM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40019},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"298fe7ea9553f953e8a85d1fc51f70dfa3f16664","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.3.0-beta.1_1708422189280_0.31224705648889217","host":"s3://npm-registry-packages"}},"0.3.1-beta":{"name":"input-otp","version":"0.3.1-beta","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.3.1-beta","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"563be3aa58ffc8e6a513c050d2733ca512952fa5","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.3.1-beta.tgz","fileCount":8,"integrity":"sha512-uohfLD9xTegnPyQnxAUlXO2jim6wLwetkawZzaFEpqN5OK+7C42yDUqR9/PlYzIy9Q1YeBoarX83LDV7vtjIXg==","signatures":[{"sig":"MEQCIAVtrQEKPD2P3CyPVJb2Hpcy3UfEpux+/54sllTPIx+5AiAdQJQvctG1DBgcrBM8Miv1jKI+yotcUStHsWnSt7OBQw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19802},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"2477111a12aded07aa30f00790723161b28bec3b","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.3.1-beta_1708464395833_0.46235186532829187","host":"s3://npm-registry-packages"}},"0.3.12-beta":{"name":"input-otp","version":"0.3.12-beta","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.3.12-beta","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"eb544df89ed582e3a532b72bc216e1547adab5b5","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.3.12-beta.tgz","fileCount":8,"integrity":"sha512-ZvAKF+Ta4555BAwvWz77pjChNsmNBrMBbZM6oJfsSJgZgaLaTALg9A+IbQrvsf69Jke0la/izwr4VSMdzbzAIA==","signatures":[{"sig":"MEQCIEttN362GXKVgnXkuH8xhWJ2Keuv/bGP1xRZ3axKHLMYAiB4b/XBMLU/vo5XtNOoKMnHjRp485PuqZLIrCtiVgOI8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19798},"main":"index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"aa7f4a1672a9c24b4f95a446c3fc1d950b32db12","scripts":{"dev":"bunchee --watch","test":"playwright test","build":"pnpm type-check && bunchee -m","format":"prettier --write .","dev:test":"turbo run dev --filter=test...","test:slow":"WINDOWED_TESTS=true playwright test","type-check":"tsc --noEmit","dev:website":"turbo run dev --filter=website..."},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"packageManager":"pnpm@8.7.1","devDependencies":{"react":"^18.2.0","turbo":"^1.12.4","bunchee":"^4.4.6","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@playwright/test":"^1.41.2","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.3.12-beta_1708464682082_0.1816467829547892","host":"s3://npm-registry-packages"}},"0.3.2-beta":{"name":"input-otp","version":"0.3.2-beta","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.3.2-beta","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"9854df2849a94a24929cb595cdad9c535303a2ce","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.3.2-beta.tgz","fileCount":7,"integrity":"sha512-sUnAxAnA9OBa2Dufos8sjrPx6RgornayP8w8hJn2YWmesvet0PI5p8XSdsfN7d5iKRPM+1/KkLynHHn+NUQ1/g==","signatures":[{"sig":"MEUCIHruIh4narJKQUtlHfkE3Te+3qtwV3YiKPtOkGcJCHJBAiEAhF+uaIlcWHYH+ukBnfmxBoVt06EvShB/WE7TMrq61tY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":69128},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"de9d59eb69520fecd9b19d545c999a2c6689b415","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-p build:*","clean":"rimraf dist","format":"prettier --write .","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"prettier":{"semi":false,"useTabs":false,"tabWidth":2,"endOfLine":"lf","printWidth":80,"arrowParens":"avoid","singleQuote":true,"trailingComma":"all"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.3.2-beta_1708531615053_0.38789721905287866","host":"s3://npm-registry-packages"}},"0.3.31-beta":{"name":"input-otp","version":"0.3.31-beta","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@0.3.31-beta","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"e3d5aa397fea8dfe1879400891f51fda80bb9b31","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-0.3.31-beta.tgz","fileCount":8,"integrity":"sha512-PyOlHQ3qfZEPFTu08A8aDQhv4vi16RS6LWGPMN6wY0kA3zIX3dexWYnAb8NXHL3ET2QjcYgfyycCDvy3az2pwQ==","signatures":[{"sig":"MEUCIQCI9Jvs3ZrPcOCDDKtuhAFrpbjo1NRlvN1QvYhMbrJ2GAIgC3/IsqhoryPY75osjf4j1GugedMIKUyAh/xEPhqvY2k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":72180},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"41039de6cec4579bb77241f210448d8de69f96db","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-p build:*","clean":"rimraf dist","format":"prettier --write .","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest (or 1.1.0)","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_0.3.31-beta_1708631971719_0.04806785345306275","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"input-otp","version":"1.0.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.0.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"5401ff54137aad8c6209a79dfaa338475fae6152","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.0.0.tgz","fileCount":8,"integrity":"sha512-sJJJM0Gul6bHz/Hjewm0Ebxoj6GCcX0ZD2pEhxT85VWzkOrK0iGtysXhtMrovRJYBz5RVGlHBsLl1VE07J83EQ==","signatures":[{"sig":"MEQCIETPLoczsfLiJ0NyT5pgDKu2DQBthIG78HYrfr436yo9AiAGEPx2hJb1bltwb5/crcUB4x4pfsbqXIVHIMJqeci0zA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79563},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"f822ac76ab68a6e2ccfd6a9026f111cce0b99f0c","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.0.0_1709694856584_0.3673800267990268","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"input-otp","version":"1.0.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.0.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"4dbbde8cc95aa1278956d2bec337d4a4f33cc716","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.0.1.tgz","fileCount":8,"integrity":"sha512-AFMGRsOwXcH7koO+8nnVcJFYEe92tNmRlb2TUKbj9Bpdyc44GaS3LfJam3MdoXQv1jejpMS0+fxJFSCsEDHd9A==","signatures":[{"sig":"MEYCIQCRG03wOFkHTqQWm7/GMHHAMRKwSyBYsPrpCCjz1iVgPAIhAO4V9dhfegGSBeET4rNEhUJ2ma2d+Ibm+oQDywGetVHq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":81703},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"62a7d9e1c4e49e32cca7de8ffdffe9fb3e34de17","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.0.1_1709754889752_0.6738013266915115","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"input-otp","version":"1.1.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.1.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"d6c017659b782c51e843a840e041a1a52dac462b","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.1.0.tgz","fileCount":8,"integrity":"sha512-bHM7u1nIbhtupHrCO7hxBksbAp5SNuYYLG9pmMeL9ghJPDDmyJRgJ8dcAylHT9JHyB9tLB+U8tjM8xa+DTpacA==","signatures":[{"sig":"MEYCIQDkhnVrWh0EPv2x8GG5NAnV0r44tcZ0B/+pdIatrZWYHAIhAMAPMPyDct1o7Cp4Ht5YXPaP9Pwlp6o+OzPBMcROlcSn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107049},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"2c44459a7cafbf3e564d272cefa8f8417fb4682f","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.1.0_1710145955153_0.42121140410855396","host":"s3://npm-registry-packages"}},"1.2.0-beta.0":{"name":"input-otp","version":"1.2.0-beta.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.0-beta.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"477e3c6691ba417728782152f002054f6b6dc762","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.0-beta.0.tgz","fileCount":8,"integrity":"sha512-o9Ulvhffk04LfYVN9hxaSi3J3+yZMYNlX74rW390cLeUfhS1iTos4PUfgqG3OrXxbOwJsxnhwhhxrK5CRSYc4Q==","signatures":[{"sig":"MEUCIFuaxJgZ/cX2xcV/RiAEFRVmrrCG2I/jzIauvT/bE5QMAiEAkLU0JV/4rIi17ZzvoQO7y6OuqTAL3XGXglUXxY3DG5c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107132},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0ca47818a69fc0022656f6b1edbe9a4edd7556d2","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.0-beta.0_1710265208149_0.647033740751094","host":"s3://npm-registry-packages"}},"1.2.0-beta.1":{"name":"input-otp","version":"1.2.0-beta.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.0-beta.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"e74db6f7f1b93370187868301551277d3f6300e2","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.0-beta.1.tgz","fileCount":8,"integrity":"sha512-fDZGF5/wb/OaWiumkwwH1W5XUwC3ctTTDnRlPJTOvIs9OluQ8YhRMRjUa2VSsRdkUzaRnKqs52DZBFHUYcrERQ==","signatures":[{"sig":"MEQCIAr+/EixRDpOxk/7Hf2Fq6RYQGEZN7mmSrbcxAhy2UagAiBanzjN63QA5Iz9dXUq5O8mvZcHDZ8f/da3fKr4xHW2Iw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108904},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d8ba00d343317cf655b8a9b1c55f21995fab8c49","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.0-beta.1_1710323548195_0.7365441415738982","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"input-otp","version":"1.2.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"13a8b4d2d62760d9fb1e0d89bbe398a74024076e","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.0.tgz","fileCount":8,"integrity":"sha512-54bYU7SqAYdAKNRpHXHGJZtuiSqSIHEs4iSr7Rte/Yot2IiovUtc3TxEcF7Ak5yeuhtJ0pvr99z5nHpPne5S7w==","signatures":[{"sig":"MEUCIQClK+lWXrjES5Mzhy8qrKc1g4OoENW3RM+32N192JubBgIgVP5tUhYH7jSVdb0THS/s2yLubRC1q0g8wMYrU2qQteQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108929},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d9f9c7085705100b3cdf2925089770b7874e4273","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.0_1710554098889_0.4402914127783031","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"input-otp","version":"1.2.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"1e80a9425e54f89684aa19867f92d51c43672835","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.1.tgz","fileCount":8,"integrity":"sha512-KxJCO9v0DjpyBKbvB6z4D48c36aiiWDDF0zq8GCtbT9FdCzG+gCtUfqy0nJlJKSBmdf68t0xcNZMZUEolSg4bw==","signatures":[{"sig":"MEYCIQDMD3EeXH6O9UCpFrmH39R+k6/6Ew5oIDKTWpFPv/b17gIhAIY0vF19USRCnrXGMu410h/l4uOZbZvo+L6vAYXl9DWU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108312},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"a33bc3c0d838aeb0542d7f495861951e5104ec29","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.1_1710771329620_0.006269592623938669","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"input-otp","version":"1.2.2","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.2","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"0a92e80591c4c64d30684509ebba1fcf59ef2d5e","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.2.tgz","fileCount":8,"integrity":"sha512-9x6UurPuc9Tb+ywWFcFrG4ryvScSmfLyj8D35dl/HNpSr9jZNtWiXufU65kaDHD/KYUop7hDFH+caZCUKdYNsg==","signatures":[{"sig":"MEUCIEvGf0rASDk9ocVM06DNQWAeW+84olV0jXzXe8a7b/GIAiEAsFQN8MZ5PFbTBr5M47XAOXHJPb4OwHi0TpXPCyqyt+c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107750},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"8ab900cc980a20bdf904143c555de36b46d6aa57","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"please run: npm install input-otp@latest","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.2_1710771610562_0.8357060515641084","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"input-otp","version":"1.2.3","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.3","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"0841dbfd01d59e5183e734d74b0f9e81e7eb1a9a","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.3.tgz","fileCount":8,"integrity":"sha512-pxYvgnihL9KAdpcShX2+iKctdMRbDs36bIqd8uIsN3e5vv9VjMv2bhO3S5Bl1PjcDPsA/OXZe5R71n8oVtucfQ==","signatures":[{"sig":"MEQCIETAESAAXycQ4nkZtr1du/p4PVG/eodZZBoI6CYDnB2QAiA8X+4XakYUUFALDH0a2h7WO+yV02kYS0168KltId+4ug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108004},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"9b16030657a24d1a4ff447ba6461d6b0d1b8ac90","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.3_1711334047375_0.9347155691130746","host":"s3://npm-registry-packages"}},"1.2.4":{"name":"input-otp","version":"1.2.4","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.4","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"9834af8675ac72c7f1b7c010f181b3b4ffdd0f72","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.4.tgz","fileCount":8,"integrity":"sha512-md6rhmD+zmMnUh5crQNSQxq3keBRYvE3odbr4Qb9g2NWzQv9azi+t1a3X4TBTbh98fsGHgEEJlzbe1q860uGCA==","signatures":[{"sig":"MEQCIAHdjiI979j1OGqz95qG9e1h40970ku5qmmVqQKxUDCIAiBRg4hIL735thEdWg6hrm1lBMlIAAnNKXmMyak+DUJPQw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109578},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d6f35f6346b8adc33c3de4d957a2ef7a93ce80e8","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0","react-dom":"^16.8 || ^17.0 || ^18.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.4_1711953332769_0.3227057197303005","host":"s3://npm-registry-packages"}},"1.2.5":{"name":"input-otp","version":"1.2.5","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.2.5","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"7a9ad66085547cc54dbeb44ec66c0930365fe998","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.2.5.tgz","fileCount":8,"integrity":"sha512-XoRSZyr5NaK++/Ml/0bsTycKiSq9M5u6fWgG5Cqjldj6+ontrKnPRqn+6Bo4fzUwoMXRenUdacVfR7Y68gldKw==","signatures":[{"sig":"MEYCIQC/piTF8FuwRpIdhsfZE95MM4RU3t59OXJPSf7Lnq+5awIhAJGKzhMQKQqkBtzCown3Jc+3kcud4JUUsNksGBi5vhFC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109597},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"363c66c81b83ef4a43ba29a07ee122dd3ac22f2b","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0 || ^19.0","react-dom":"^16.8 || ^17.0 || ^18.0 || ^19.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.2.5_1730202106157_0.13021108650301394","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"input-otp","version":"1.3.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.3.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"94567f7dc1f6006a6ce117970a019133f7954854","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.3.0.tgz","fileCount":9,"integrity":"sha512-lK8UIatyHedrxtBybAbmZQx6e8BeGJVNGP2AB5cBFFRNzvKtLC29+kFpDK50rf1dpN41ciQbdrSVK6Mka1Xv7w==","signatures":[{"sig":"MEUCIQD1OM1NuDlrxfXAfI7x88O/5O6TmoE60ZC4mJzdvBOeTwIgBll6mbfrEre445ptMzJxvtHBOXarZKVldPbts71EFs4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146165},"main":"./dist/index.js","_from":"file:input-otp-1.3.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"_resolved":"/private/var/folders/lb/054fdsys03bb6kb8cw2d470m0000gn/T/557f47540d18a51d1bdb20f46577872f/input-otp-1.3.0.tgz","_integrity":"sha512-lK8UIatyHedrxtBybAbmZQx6e8BeGJVNGP2AB5cBFFRNzvKtLC29+kFpDK50rf1dpN41ciQbdrSVK6Mka1Xv7w==","deprecated":"Please update to input-otp@1.4.0 as 1.3.0 is mistakenly redundant to 1.2.5 due to an NPM publishing error","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0 || ^19.0","react-dom":"^16.8 || ^17.0 || ^18.0 || ^19.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.3.0_1730494296614_0.9200260650262246","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"input-otp","version":"1.4.0","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.4.0","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"09c4e903b9f3a4626d22847335872dc599cee8bf","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.4.0.tgz","fileCount":8,"integrity":"sha512-whngTwnXhSQijjxNGUaU/O94LNugnuliZoWktQd5nVYESNlb01guoo+1T/1zppJ8fbo2J2/GVe20x3M6qpgdFg==","signatures":[{"sig":"MEUCIQCinlE6aEvOCzhtaMN4AtX2hb3L+98f6e4YwySOXZY6jAIgEhnkkFsA3+BFzYi+MFtF/pwGXwTHdh9dRLim0yiEsRU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110851},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3a007dc594ca821636f105fe10591af58f95f967","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"deprecated":"Please update to input-otp@latest as it supports react@19-rc too","repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"9.6.7","description":"One-time password input component for React.","directories":{},"_nodeVersion":"18.17.1","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0 || ^19.0","react-dom":"^16.8 || ^17.0 || ^18.0 || ^19.0"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.4.0_1730495163355_0.16167563575384514","host":"s3://npm-registry-packages"}},"1.4.1":{"name":"input-otp","version":"1.4.1","keywords":["react","otp","input","accessible"],"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","_id":"input-otp@1.4.1","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"homepage":"https://input-otp.rodz.dev/","bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"dist":{"shasum":"bc22e68b14b1667219d54adf74243e37ea79cf84","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.4.1.tgz","fileCount":8,"integrity":"sha512-+yvpmKYKHi9jIGngxagY9oWiiblPB7+nEO75F2l2o4vs+6vpPZZmUl4tBNYuTCvQjhvEIbdNeJu70bhfYP2nbw==","signatures":[{"sig":"MEUCICMyFu3mJetkOv93LGVvvWE3PzOfAogA2ljunA15b3U0AiEA3lJVto6kxjiVeL+O2D7JLWo0BKwRIrOwP2+X6F+BqUE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110883},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","module":"./dist/index.mjs","default":"./dist/index.mjs","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3632450db66703f2455d092c3295c98ed92cef0d","scripts":{"dev":"tsup --watch --dts","lint":"run-p lint:*","build":"run-s build:* copy-readme","clean":"rimraf dist","format":"prettier --write .","release":"npm publish","lint:tsc":"tsc --project tsconfig.json --noEmit","build:tsup":"tsup --dts --minify","type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","lint:eslint":"eslint src --ext .ts","lint:format":"prettier --check \"src/**/*.ts\"","release:beta":"npm publish --tag beta","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format:fix":"prettier --check \"src/**/*.ts\" --write"},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"repository":{"url":"git+https://github.com/guilhermerodz/input-otp.git","type":"git","directory":"packages/input-otp"},"_npmVersion":"10.8.2","description":"One-time password input component for React.","directories":{},"_nodeVersion":"20.18.0","eslintConfig":{"env":{"es2020":true,"browser":true},"root":true,"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"},"parser":"@typescript-eslint/parser","extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"plugins":["@typescript-eslint","import"],"settings":{"react":{"version":"detect"},"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true}},"parserOptions":{"sourceType":"module","ecmaVersion":2020},"ignorePatterns":["**/build","**/coverage","**/dist"],"reportUnusedDisableDirectives":true},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3","@types/react":"^18.2.55","@types/react-dom":"^18.2.19"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc","react-dom":"^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc"},"_npmOperationalInternal":{"tmp":"tmp/input-otp_1.4.1_1730736004896_0.08310965852118835","host":"s3://npm-registry-packages"}},"1.4.2":{"name":"input-otp","version":"1.4.2","author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"description":"One-time password input component for React.","license":"MIT","homepage":"https://input-otp.rodz.dev/","repository":{"type":"git","url":"git+https://github.com/guilhermerodz/input-otp.git","directory":"packages/input-otp"},"bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"keywords":["react","otp","input","accessible"],"main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","module":"./dist/index.mjs","import":"./dist/index.mjs","require":"./dist/index.js","default":"./dist/index.mjs"},"./package.json":"./package.json"},"scripts":{"type-check":"tsc --noEmit","copy-readme":"cp ../../README.md ./README.md","build":"run-s build:* copy-readme","build:tsup":"tsup --dts --minify","clean":"rimraf dist","dev":"tsup --watch --dts","lint":"run-p lint:*","lint:eslint":"eslint src --ext .ts","lint:eslint:fix":"eslint src --ext .ts --fix","lint:format":"prettier --check \"src/**/*.ts\"","lint:format:fix":"prettier --check \"src/**/*.ts\" --write","lint:tsc":"tsc --project tsconfig.json --noEmit","format":"prettier --write .","release":"npm publish","release:beta":"npm publish --tag beta"},"eslintConfig":{"root":true,"reportUnusedDisableDirectives":true,"ignorePatterns":["**/build","**/coverage","**/dist"],"parser":"@typescript-eslint/parser","parserOptions":{"sourceType":"module","ecmaVersion":2020},"settings":{"import/parsers":{"@typescript-eslint/parser":[".ts",".tsx"]},"import/resolver":{"typescript":true},"react":{"version":"detect"}},"plugins":["@typescript-eslint","import"],"extends":["plugin:react/jsx-runtime","plugin:react-hooks/recommended","eslint:recommended","plugin:@typescript-eslint/recommended","plugin:@typescript-eslint/stylistic","plugin:import/recommended","plugin:import/typescript","prettier"],"env":{"browser":true,"es2020":true},"rules":{"react/jsx-key":["error",{"checkFragmentShorthand":true}],"react-hooks/exhaustive-deps":"error","@typescript-eslint/no-explicit-any":"off"}},"devDependencies":{"@types/react":"^18.2.55","@types/react-dom":"^18.2.19","react":"^18.2.0","react-dom":"^18.2.0","typescript":"^5.3.3"},"peerDependencies":{"react":"^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc","react-dom":"^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc"},"_id":"input-otp@1.4.2","gitHead":"81ccdb48c010d800b24942aa231909f0c971b1ca","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-l3jWwYNvrEa6NTCt7BECfCm48GvwuZzkoeG3gBL2w4CHeOXW3eKFmf9UNYkNfYc3mxMrthMnxjIE07MT0zLBQA==","shasum":"f4d3d587d0f641729e55029b3b8c4870847f4f07","tarball":"https://registry.npmjs.org/input-otp/-/input-otp-1.4.2.tgz","fileCount":8,"unpackedSize":110633,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC65/ZXRtT7qwSS/DaqMLO+6QlO5YTD5MQUU8+4KmzxcQIhAKFgmjNksYEkrW3md2gq84uTJ85wAGWfqnFl+qrMvVKX"}]},"_npmUser":{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"},"directories":{},"maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/input-otp_1.4.2_1736164108560_0.5148347238572586"},"_hasShrinkwrap":false}},"time":{"created":"2024-02-19T16:42:47.332Z","modified":"2025-01-06T11:48:28.956Z","0.2.1":"2024-02-19T16:42:47.498Z","0.2.3":"2024-02-19T17:27:05.047Z","0.2.4":"2024-02-19T20:56:25.405Z","0.3.0-beta.1":"2024-02-20T09:43:09.488Z","0.3.1-beta":"2024-02-20T21:26:36.009Z","0.3.12-beta":"2024-02-20T21:31:22.273Z","0.3.2-beta":"2024-02-21T16:06:55.278Z","0.3.31-beta":"2024-02-22T19:59:31.863Z","1.0.0":"2024-03-06T03:14:16.731Z","1.0.1":"2024-03-06T19:54:49.949Z","1.1.0":"2024-03-11T08:32:35.329Z","1.2.0-beta.0":"2024-03-12T17:40:08.313Z","1.2.0-beta.1":"2024-03-13T09:52:28.377Z","1.2.0":"2024-03-16T01:54:59.128Z","1.2.1":"2024-03-18T14:15:29.805Z","1.2.2":"2024-03-18T14:20:10.746Z","1.2.3":"2024-03-25T02:34:07.546Z","1.2.4":"2024-04-01T06:35:32.997Z","1.2.5":"2024-10-29T11:41:46.381Z","1.3.0":"2024-11-01T20:51:36.774Z","1.4.0":"2024-11-01T21:06:03.534Z","1.4.1":"2024-11-04T16:00:05.280Z","1.4.2":"2025-01-06T11:48:28.790Z"},"bugs":{"url":"https://github.com/guilhermerodz/input-otp/issues"},"author":{"name":"Guilherme Rodz","email":"g@rodz.dev"},"license":"MIT","homepage":"https://input-otp.rodz.dev/","keywords":["react","otp","input","accessible"],"repository":{"type":"git","url":"git+https://github.com/guilhermerodz/input-otp.git","directory":"packages/input-otp"},"description":"One-time password input component for React.","maintainers":[{"name":"guilhermerodz","email":"gui.rodz.dev@gmail.com"}],"readme":"# The only accessible & unstyled & full featured Input OTP component in the Web.\n\n### OTP Input for React 🔐 by [@guilhermerodz](https://twitter.com/guilherme_rodz)\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/753751f5-eda8-4145-a4b9-7ef51ca5e453\n\n## Usage\n\n```bash\nnpm install input-otp\n```\n\nThen import the component.\n\n```diff\n+'use client'\n+import { OTPInput } from 'input-otp'\n\nfunction MyForm() {\n  return <form>\n+   <OTPInput maxLength={6} render={({slots})  => (...)} />\n  </form>\n}\n```\n\n## Default example\n\nThe example below uses `tailwindcss` `@shadcn/ui` `tailwind-merge` `clsx`:\n\n```tsx\n'use client'\nimport { OTPInput, SlotProps } from 'input-otp'\n<OTPInput\n  maxLength={6}\n  containerClassName=\"group flex items-center has-[:disabled]:opacity-30\"\n  render={({ slots }) => (\n    <>\n      <div className=\"flex\">\n        {slots.slice(0, 3).map((slot, idx) => (\n          <Slot key={idx} {...slot} />\n        ))}\n      </div>\n\n      <FakeDash />\n\n      <div className=\"flex\">\n        {slots.slice(3).map((slot, idx) => (\n          <Slot key={idx} {...slot} />\n        ))}\n      </div>\n    </>\n  )}\n/>\n\n// Feel free to copy. Uses @shadcn/ui tailwind colors.\nfunction Slot(props: SlotProps) {\n  return (\n    <div\n      className={cn(\n        'relative w-10 h-14 text-[2rem]',\n        'flex items-center justify-center',\n        'transition-all duration-300',\n        'border-border border-y border-r first:border-l first:rounded-l-md last:rounded-r-md',\n        'group-hover:border-accent-foreground/20 group-focus-within:border-accent-foreground/20',\n        'outline outline-0 outline-accent-foreground/20',\n        { 'outline-4 outline-accent-foreground': props.isActive },\n      )}\n    >\n      <div className=\"group-has-[input[data-input-otp-placeholder-shown]]:opacity-20\">\n        {props.char ?? props.placeholderChar}\n      </div>\n      {props.hasFakeCaret && <FakeCaret />}\n    </div>\n  )\n}\n\n// You can emulate a fake textbox caret!\nfunction FakeCaret() {\n  return (\n    <div className=\"absolute pointer-events-none inset-0 flex items-center justify-center animate-caret-blink\">\n      <div className=\"w-px h-8 bg-white\" />\n    </div>\n  )\n}\n\n// Inspired by Stripe's MFA input.\nfunction FakeDash() {\n  return (\n    <div className=\"flex w-10 justify-center items-center\">\n      <div className=\"w-3 h-1 rounded-full bg-border\" />\n    </div>\n  )\n}\n\n// tailwind.config.ts for the blinking caret animation.\nconst config = {\n  theme: {\n    extend: {\n      keyframes: {\n        'caret-blink': {\n          '0%,70%,100%': { opacity: '1' },\n          '20%,50%': { opacity: '0' },\n        },\n      },\n      animation: {\n        'caret-blink': 'caret-blink 1.2s ease-out infinite',\n      },\n    },\n  },\n}\n\n// Small utility to merge class names.\nimport { clsx } from 'clsx'\nimport { twMerge } from 'tailwind-merge'\n\nimport type { ClassValue } from 'clsx'\n\nexport function cn(...inputs: ClassValue[]) {\n  return twMerge(clsx(inputs))\n}\n```\n\n## How it works\n\nThere's currently no native OTP/2FA/MFA input in HTML, which means people are either going with 1. a simple input design or 2. custom designs like this one.\nThis library works by rendering an invisible input as a sibling of the slots, contained by a `relative`ly positioned parent (the container root called _OTPInput_).\n\n## Features\n\nThis is the most complete OTP input on the web. It's fully featured \n\n<details>\n<summary>Supports iOS + Android copy-paste-cut</summary>\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/bdbdc96a-23da-4e89-bff8-990e6a1c4c23\n\n</details>\n\n<details>\n<summary>Automatic OTP code retrieval from transport (e.g SMS)</summary>\n\nBy default, this input uses `autocomplete='one-time-code'` and it works as it's a single input. \n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/5705dac6-9159-443b-9c27-b52e93c60ea8\n\n</details>\n\n<details>\n<summary>Supports screen readers (a11y)</summary>\n\nStripe was my first inspiration to build this library.\n\nTake a look at Stripe's input. The screen reader does not behave like it normally should on a normal single input.\nThat's because Stripe's solution is to render a 1-digit input with \"clone-divs\" rendering a single char per div.\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/3d127aef-147c-4f28-9f6c-57a357a802d0\n\nSo we're rendering a single input with invisible/transparent colors instead.\nThe screen reader now gets to read it, but there is no appearance. Feel free to build whatever UI you want:\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/718710f0-2198-418c-8fa0-46c05ae5475d\n\n</details>\n\n<details>\n<summary>Supports all keybindings</summary>\n\nShould be able to support all keybindings of a common text input as it's an input.\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/185985c0-af64-48eb-92f9-2e59be9eb78f\n\n</details>\n\n<details>\n<summary>Automatically optimizes for password managers</summary>\n\n\nFor password managers such as LastPass, 1Password, Dashlane or Bitwarden, `input-otp` will automatically detect them in the page and increase input width by ~40px to trick the password manager's browser extension and prevent the badge from rendering to the last/right slot of the input.\n\n<img width=\"670\" alt=\"image\" src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/9bb306ca-deff-4803-aa3d-148c594a540c\">\n\n- **This feature is optional and it's enabled by default. You can disable this optimization by adding `pushPasswordManagerStrategy=\"none\"`.**\n- **This feature does not cause visible layout shift.**\n\n### Auto tracks if the input has space in the right side for the badge\n\nhttps://github.com/guilhermerodz/input-otp/assets/10366880/bf01af88-1f82-463e-adf4-54a737a92f59\n\n</details>\n\n## API Reference\n\n### OTPInput\n\nThe root container. Define settings for the input via props. Then, use the `render` prop to create the slots.\n\n#### Props\n\n```ts\ntype OTPInputProps = {\n  // The number of slots\n  maxLength: number\n\n  // Render function creating the slots\n  render: (props: RenderProps) => React.ReactElement\n  // PS: Render prop is mandatory, except in cases\n  // you'd like to consume the original Context API.\n  // (search for Context in this docs)\n\n  // The class name for the root container\n  containerClassName?: string\n\n  // Value state controlling the input\n  value?: string\n  // Setter for the controlled value (or callback for uncontrolled value)\n  onChange?: (newValue: string) => unknown\n\n  // Callback when the input is complete\n  onComplete?: (...args: any[]) => unknown\n\n  // Where is the text located within the input\n  // Affects click-holding or long-press behavior\n  // Default: 'left'\n  textAlign?: 'left' | 'center' | 'right'\n\n  // Virtual keyboard appearance on mobile\n  // Default: 'numeric'\n  inputMode?: 'numeric' | 'text' | 'decimal' | 'tel' | 'search' | 'email' | 'url'\n\n  // Pro tip: input-otp export some patterns by default such as REGEXP_ONLY_DIGITS which you can import from the same library path\n  // Example: import { REGEXP_ONLY_DIGITS } from 'input-otp';\n  // Then use it as: <OTPInput pattern={REGEXP_ONLY_DIGITS}>\n  pattern?: string\n\n  // While rendering the input slot, you can access both the char and the placeholder, if there's one and it's active.\n  placeholder?: string\n\n  // Transfomer function that allows pasting, for example, \"XXX-XXX\" even though the input's regex/pattern doesn't allow hyphen and its max length is 6.\n  // Example: (pasted) => pasted.replaceAll('-', '')\n  pasteTransformer?: (pastedText: string) => string\n\n  // Enabled by default, it's an optional\n  // strategy for detecting Password Managers\n  // in the page and then shifting their\n  // badges to the right side, outside the input.\n  pushPasswordManagerStrategy?:\n    | 'increase-width'\n    | 'none'\n\n  // Enabled by default, it's an optional\n  // fallback for pages without JS.\n  // This is a CSS string. Write your own\n  // rules that will be applied as soon as\n  // <noscript> is parsed for no-js pages.\n  // Use `null` to disable any no-js fallback (not recommended).\n  // Default: `\n  // [data-input-otp] {\n  //   --nojs-bg: white !important;\n  //   --nojs-fg: black !important;\n  // \n  //   background-color: var(--nojs-bg) !important;\n  //   color: var(--nojs-fg) !important;\n  //   caret-color: var(--nojs-fg) !important;\n  //   letter-spacing: .25em !important;\n  //   text-align: center !important;\n  //   border: 1px solid var(--nojs-fg) !important;\n  //   border-radius: 4px !important;\n  //   width: 100% !important;\n  // }\n  // @media (prefers-color-scheme: dark) {\n  //   [data-input-otp] {\n  //     --nojs-bg: black !important;\n  //     --nojs-fg: white !important;\n  //   }\n  // }`\n  noScriptCSSFallback?: string | null\n}\n```\n\n## Examples\n\n<details>\n<summary>Automatic form submission on OTP completion</summary>\n\n```tsx\nexport default function Page() {\n  const formRef = useRef<HTMLFormElement>(null)\n  const buttonRef = useRef<HTMLButtonElement>(null)\n\n  return (\n    <form ref={formRef}>\n      <OTPInput\n        // ... automatically submit the form\n        onComplete={() => formRef.current?.submit()}\n        // ... or focus the button like as you wish\n        onComplete={() => buttonRef.current?.focus()}\n      />\n\n      <button ref={buttonRef}>Submit</button>\n    </form>\n  )\n}\n```\n</details>\n\n<details>\n<summary>Automatically focus the input when the page loads</summary>\n\n```tsx\nexport default function Page() {\n  return (\n    <form ref={formRef}>\n      <OTPInput\n        autoFocus\n        // Pro tip: accepts all common HTML input props...\n      />\n    </form>\n  )\n}\n```\n</details>\n\n<details>\n<summary>Usage with react-hook-form</summary>\nJust use it as a regular text input:\n\n```tsx\nconst { register, handleSubmit } = useForm();\n// Then register it like a text input\n<InputOTP {...register(\"otp\")} />\n```\n\nYou can also use react-hook-form's Controller if needed:\n```tsx\nconst { control } = useForm();\n// Then control it like a text input\n<Controller\n  name=\"customOTP\"\n  control={control}\n  defaultValue=\"\"\n  render={({ field }) => (\n    <OTPInput\n      {...field}\n      label=\"Custom OTP\"\n    />\n  )}\n/>\n```\n</details>\n\n## Caveats\n\n<details>\n<summary>[Workaround] If you want to block specific password manager/badges:</summary>\n\nBy default, `input-otp` handles password managers for you.\nThe password manager badges should be automatically shifted to the right side.\n\nHowever, if you still want to block password managers, please disable the `pushPasswordManagerStrategy` and then manually block each PWM.\n\n```diff\n<OTPInput\n  // First, disable library's built-in strategy\n  // for shifting badges automatically\n- pushPasswordManagerStrategy=\"increase-width\"\n+ pushPasswordManagerStrategy=\"none\"\n  // Then, manually add specifics attributes\n  // your password manager docs\n  // Example: block LastPass\n+ data-lpignore=\"true\" \n  // Example: block 1Password\n+ data-1p-ignore=\"true\"\n/>\n```\n</details>\n\n<details>\n<summary>[Setting] If you want to customize the `noscript` CSS fallback</summary>\n\nBy default, `input-otp` handles cases where JS is not in the page by applying custom CSS styles.\nIf you do not like the fallback design and want to apply it to your own, just pass a prop:\n\n```diff\n// This is the default CSS fallback.\n// Feel free to change it entirely and apply to your design system.\nconst NOSCRIPT_CSS_FALLBACK = `\n[data-input-otp] {\n  --nojs-bg: white !important;\n  --nojs-fg: black !important;\n\n  background-color: var(--nojs-bg) !important;\n  color: var(--nojs-fg) !important;\n  caret-color: var(--nojs-fg) !important;\n  letter-spacing: .25em !important;\n  text-align: center !important;\n  border: 1px solid var(--nojs-fg) !important;\n  border-radius: 4px !important;\n  width: 100% !important;\n}\n@media (prefers-color-scheme: dark) {\n  [data-input-otp] {\n    --nojs-bg: black !important;\n    --nojs-fg: white !important;\n  }\n}`\n\n<OTPInput\n  // Pass your own custom styles for when JS is disabled\n+ noScriptCSSFallback={NOSCRIPT_CSS_FALLBACK}\n/>\n```\n</details>\n\n<details>\n<summary>[Workaround] If you're experiencing an unwanted border on input focus:</summary>\n\n```diff\n<OTPInput\n  // Add class to the input itself\n+ className=\"focus-visible:ring-0\"\n  // Not the container\n  containerClassName=\"...\"\n/>\n```\n</details>\n\n<details>\n<summary>[Not Recommended] If you want to centralize input text/selection, use the `textAlign` prop:</summary>\n\n```diff\n<OTPInput\n  // customizable but not recommended\n+ textAlign=\"center\"\n/>\n```\n\nNOTE: this also affects the selected caret position after a touch/click.\n\n`textAlign=\"left\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/685a03df-2b69-4a36-b21c-e453f6098f79\" width=\"300\" />\n<br>\n\n`textAlign=\"center\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/e0f15b97-ceb8-40c8-96b7-fa3a8896379f\" width=\"300\" />\n<br>\n\n`textAlign=\"right\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/26697579-0e8b-4dad-8b85-3a036102e951\" width=\"300\" />\n<br>\n\n</details>\n\n<details>\n<summary>If you want to use Context props:</summary>\n\n```diff\n+import { OTPInputContext } from 'input-otp'\n\nfunction MyForm() {\n  return (\n    <OTPInput\n-     // First remove the `render` prop\n-     render={...}\n    >\n      <OTPInputWrapper />\n    </OTPInput>\n  )\n}\n\n+function OTPInputWrapper() {\n+ const inputContext = React.useContext(OTPInputContext)\n+ return (\n+   <>\n+     {inputContext.slots.map((slot, idx) => (\n+       <Slot key={idx} {...slot} />\n+     ))}\n+   </>\n+ )\n+}\n```\n\nNOTE: this also affects the selected caret position after a touch/click.\n\n`textAlign=\"left\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/685a03df-2b69-4a36-b21c-e453f6098f79\" width=\"300\" />\n<br>\n\n`textAlign=\"center\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/e0f15b97-ceb8-40c8-96b7-fa3a8896379f\" width=\"300\" />\n<br>\n\n`textAlign=\"right\"`\n<img src=\"https://github.com/guilhermerodz/input-otp/assets/10366880/26697579-0e8b-4dad-8b85-3a036102e951\" width=\"300\" />\n<br>\n\n</details>\n\n<details>\n<summary>[DX] Add Tailwind autocomplete for `containerClassname` attribute in VS Code.</summary>\n\nAdd the following setting to your `.vscode/settings.json`:\n```diff\n{\n  \"tailwindCSS.classAttributes\": [\n    \"class\",\n    \"className\",\n+   \".*ClassName\"\n  ]\n}\n```\n</details>\n","readmeFilename":"README.md"}