{"_id":"@bolttech/ob-molecules-input-combo","_rev":"7-9318c0f42478ee1f5957a2a0e02c88c8","name":"@bolttech/ob-molecules-input-combo","dist-tags":{"latest":"1.0.6"},"versions":{"1.0.0":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.0","_id":"@bolttech/ob-molecules-input-combo@1.0.0","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"49c674c81e4da9f3f640a8caa77b9f319b27571e","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.0.tgz","fileCount":9,"integrity":"sha512-Ne4EsnTk3UyHBFu6RkxFiwrDoIzPqmDe86vFhkW3Fo1gZfMJFUfIHklb30yaCxjEO+b0W+uQyyUhuV1tZv5Keg==","signatures":[{"sig":"MEQCIAxrtETDxn93F1LFeS31n6zUYbKF2TL3AZFVFXLYj3ZlAiBOQVLF5E+rVPsK1qEJeq0No/LvG2fLafBV3aLOd2oRqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69455},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"fc5f2e10d4a0944de4fef259cedebb92e596213a","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"11.10.1","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.17.1","dependencies":{"@bolttech/ui-utils":"0.6.5"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.0_1778516473829_0.5574988852405274","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.1","_id":"@bolttech/ob-molecules-input-combo@1.0.1","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"2e27ce8c81c13a51908663a22b123bde30001d6c","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.1.tgz","fileCount":5,"integrity":"sha512-/RDj4zvWQa7i43/EktR4R/mrKI0j05KPwJoaP8w/Jo4631S7IpHnZUpqduvhFG9p6PkrhbK4/U6xyT1xtTSLlw==","signatures":[{"sig":"MEUCIAaNHUj0wwekAngUCY1cs96ZYhZrX212JGDEorAdsRsFAiEA7YKupsnltkuelRiM0BIcJDeuQMRiwZlrIPibqyeJy28=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65711},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"e90cc8e970e89c888cd6779f812e44d73b03c7f1","_npmUser":{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"},"_npmVersion":"10.9.4","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.22.0","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.1","@bolttech/ob-atoms-select":"1.0.1","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.1_1780927744649_0.48664931966830816","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.2","_id":"@bolttech/ob-molecules-input-combo@1.0.2","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"3db1b851015659c87ae72f0bb4411af96de86fd1","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.2.tgz","fileCount":5,"integrity":"sha512-MOLPBvdQRtnM+LeLFxIEWVb9a9GnTBuWGaAnMXfnHF/bMAmJy1FZTj2yEKoImDowaLPR5GkiexWq4EphRX66zg==","signatures":[{"sig":"MEUCIHBzrfXYRgrewv8V3IXowyWsiK3HKLbOJzROhfn400rsAiEA4b+0FHZz1O34AnFXDAysOqu6qSnclLXDe2AX4HIXYpc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65770},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"f175f51a72daec7793ded61bb701b57926404c39","_npmUser":{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"},"_npmVersion":"10.9.4","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.22.0","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.1","@bolttech/ob-atoms-select":"1.0.2","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.2_1781609908508_0.5769172420783084","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.3","_id":"@bolttech/ob-molecules-input-combo@1.0.3","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"3961d3dbf99e7a466c6ef28c13afadb5fca6e5d5","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.3.tgz","fileCount":5,"integrity":"sha512-aAxbutwfrgTvp0PTFxD2mPlF71oc77whVWIKoYCvsQXwkfFC6NkMNSPQOW6kejbpQEZ+EQ0cQAgPijdX5C7mcw==","signatures":[{"sig":"MEYCIQD9LfxGMXDwWcSE5IaaYImhUIFwV01QyreCk9o0hv+YxQIhAJaVODRUikkOvZKau4IW4Iw/9NRaEE74m8xDOVyWwRlJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65770},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"e859681d685135ff1fd91ad3153cfc4a26ec7d7b","_npmUser":{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"},"_npmVersion":"10.9.4","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.22.0","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.1","@bolttech/ob-atoms-select":"1.0.2","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.3_1781713823401_0.13515449004302127","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.4","_id":"@bolttech/ob-molecules-input-combo@1.0.4","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"3beca07b9deabdc04a47ba29ead8d4a4bd2049a1","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.4.tgz","fileCount":5,"integrity":"sha512-UKAWyK9KZeG/uko7rPmOQvqQjr5HsuYzCVOPBA+7RMY7EWGd0bu+3xU7cTHFScwXa7GdLcbDZKmJOxdx4wcz5g==","signatures":[{"sig":"MEUCIHZ3jCyurczPQgHCHc01cPAcIrkfQfZ/ZE+fVVopHs9+AiEAmrHv/t5QzcBdYnmBV+3ch9061hr908aiohBLEQRgyGw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65770},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"150e45bc7265233890daad2a8c70c7fe13081065","_npmUser":{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"},"_npmVersion":"10.9.4","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.22.0","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.2","@bolttech/ob-atoms-select":"1.0.2","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.4_1782742008858_0.1598765424648556","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@bolttech/ob-molecules-input-combo","version":"1.0.5","_id":"@bolttech/ob-molecules-input-combo@1.0.5","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"dist":{"shasum":"9148ec6a3801fa65a46df01d0e7818c00403a725","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.5.tgz","fileCount":9,"integrity":"sha512-gAGWZAkVP5FIV6tVXsrNWHvdwuZoQRUXFoyzk0B6HNukXoez/s21/3AqXkc2ogmjJmmxHbzYXyWjQ+59hmjqBg==","signatures":[{"sig":"MEUCIQCbHuhKn263Pssqae9ieZxPDy06vYUXS+OWV8ziRMcuMQIgTaQW3KPtdljuX+DowchVh4txRPTSEZR5Hq1ot29Osuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDPsmm0oiyhZYBQFVOBivhj8EGZ0RrtmFyCW6HyzNFvAAiBRPbcKmeLR4ZBYb5EPUfosCbs5IGzXNzjT8J0PDdSsCQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68328},"main":"./index.cjs.js","type":"commonjs","types":"./index.d.ts","gitHead":"c00622c6ab3b1d242853fe42d76727f3435daded","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"10.9.8","description":"```bash npx nx g @nx/react:lib ${lib_name} ```","directories":{},"_nodeVersion":"22.17.1","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.2","@bolttech/ob-atoms-select":"1.0.2","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ob-molecules-input-combo_1.0.5_1788780070918_0.3815961130185308","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"_id":"@bolttech/ob-molecules-input-combo@1.0.6","dist":{"shasum":"90b82a377aa00c23974980ad72bb86061f2d8ed5","tarball":"https://registry.npmjs.org/@bolttech/ob-molecules-input-combo/-/ob-molecules-input-combo-1.0.6.tgz","fileCount":8,"integrity":"sha512-eTeRMALcry22afoQ89ukLRF2ScKukBve4lJxv4RysWKTMz2ChjYBmbAPC4qUPZgtA+ZbuB25E9vOTtHlsixpog==","signatures":[{"sig":"MEQCIFUnbLWHmKJdwuuVE5p5Od9LSU40Vx3v4JaIKJbVzlPkAiANY1pIA3hjZ8hrEdT39VajG8bnoK79xOonOYS58vorBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDnTJhXQ0+JlQbigHleH8gKz3Zpcqgy7Z0oazWXLI7TxAIgZbEKwFUCfiwIvn289epq0DuZixor6Cy5dc9edWw24b8="}],"unpackedSize":74437},"main":"./index.cjs.js","name":"@bolttech/ob-molecules-input-combo","type":"commonjs","types":"./index.d.ts","gitHead":"ec5690cd497b421d171c0859f3435a587af3eaa5","version":"1.0.6","_npmUser":{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},"_npmVersion":"10.9.8","description":"A composite form field that combines a dropdown selector with a text input in a single container. Ideal for phone numbers with country codes, names with title prefixes, addresses with country selectors, or monetary values with currency pickers.","directories":{},"maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"_nodeVersion":"22.17.1","dependencies":{"react":"19.1.2","classnames":"^2.5.1","@bolttech/ui-utils":"0.6.7","@bolttech/ob-atoms-input":"1.0.2","@bolttech/ob-atoms-select":"1.0.2","@bolttech/ob-atoms-divider":"1.0.1","@bolttech/ob-molecules-dropdown":"1.0.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ob-molecules-input-combo_1.0.6_1788796996723_0.1789266567700254"}}},"time":{"created":"2026-05-11T16:21:13.702Z","modified":"2026-09-07T16:03:17.049Z","1.0.0":"2026-05-11T16:21:13.961Z","1.0.1":"2026-06-08T14:09:04.793Z","1.0.2":"2026-06-16T11:38:28.633Z","1.0.3":"2026-06-17T16:30:23.545Z","1.0.4":"2026-06-29T14:06:48.999Z","1.0.5":"2026-09-07T11:21:11.014Z","1.0.6":"2026-09-07T16:03:16.828Z"},"description":"A composite form field that combines a dropdown selector with a text input in a single container. Ideal for phone numbers with country codes, names with title prefixes, addresses with country selectors, or monetary values with currency pickers.","maintainers":[{"name":"andsfranbolt","email":"anderson.francisco@bolttech.io"},{"name":"danielkhalebbatista","email":"daniel.batista@bolttech.io"},{"name":"pauloazevedo-ed","email":"paulo.azevedo@bolttech.io"},{"name":"bruno.gomes","email":"bruno.gomes@bolttech.io"},{"name":"plinio.altoe","email":"plinio.altoe@bolttech.io"},{"name":"joaoteixeira20","email":"joao.teixeira@bolttech.io"},{"name":"esteve-cabrera","email":"esteve.cabrera@bolttech.io"},{"name":"jabolttech","email":"jhonatan.amorim@bolttech.io"},{"name":"lucasvpaiva","email":"lucas.paiva@bolttech.io"},{"name":"herberts.fortuna","email":"herberts.fortuna@bolttech.io"},{"name":"matheus.maciel.bolttech","email":"matheus.maciel@bolttech.io"},{"name":"silas.silva.bolttech","email":"silas.silva@bolttech.io"}],"readme":"# InputCombo Component (ob)\n\nA composite form field that combines a dropdown selector with a text input in a single container. Ideal for phone numbers with country codes, names with title prefixes, addresses with country selectors, or monetary values with currency pickers.\n\nThis is the Tailwind CSS / CSS variables version, migrated from `@bolttech/molecules-input-combo` (styled-components) to the `ob/` architecture.\n\n## Installation\n\n```bash\nnpm install @bolttech/molecules-input-combo/ob\n```\n\n## Props\n\n| Prop                   | Type                                          | Default              | Description                                                    |\n| ---------------------- | --------------------------------------------- | -------------------- | -------------------------------------------------------------- |\n| id                     | `string`                                      | `'input-combo-id'`   | Unique identifier for the component.                           |\n| dataTestId             | `string`                                      | `'input-combo-test-id'` | The `data-testid` attribute for testing.                    |\n| variant                | `'grey' \\| 'border'`                          | `'grey'`             | Visual variant of the component.                               |\n| label                  | `string`                                      | —                    | Label text for the text input.                                 |\n| placeholder            | `string`                                      | —                    | Placeholder for the text input.                                |\n| required               | `boolean`                                     | —                    | Whether the field is required.                                 |\n| disabled               | `boolean`                                     | —                    | Disables the entire component.                                 |\n| errorMessage           | `string`                                      | —                    | Error message — triggers error state.                          |\n| helperMessage          | `string`                                      | —                    | Helper text displayed below the field.                         |\n| value                  | `string`                                      | —                    | Current value of the text input.                               |\n| dropdownValue          | `string`                                      | —                    | Currently selected dropdown option id.                         |\n| dropdownOptions        | `DropdownOption[]`                            | **(required)**       | Options for the dropdown prefix selector.                      |\n| dropdownLabel          | `string`                                      | `''`                 | Accessible label for the dropdown.                             |\n| dropdownDisableSearch  | `boolean`                                     | `true`               | Disables search in the dropdown.                               |\n| icon                   | `string`                                      | —                    | Icon name (Material Symbols Sharp).                            |\n| usePortal              | `boolean`                                     | —                    | Render dropdown in a portal.                                   |\n| tooltip                | `{ text, variant, size }`                     | —                    | Tooltip configuration for the info icon.                       |\n| onChange               | `(combo: ComboValue) => void`                 | —                    | Returns `{ id, label, value }`.                                |\n| onDropdownChange       | `(option: DropdownOption) => void`            | —                    | Callback when dropdown selection changes.                      |\n| onBlur                 | `(evt: FocusEvent) => void`                   | —                    | Callback when input loses focus.                               |\n| onFocus                | `(evt: FocusEvent) => void`                   | —                    | Callback when input gains focus.                               |\n\n### ComboValue\n\n```ts\ntype ComboValue = {\n  id: string;    // dropdown selected option label\n  label: string; // combined \"dropdownLabel inputValue\"\n  value: string; // typed input value\n};\n```\n\n## Usage\n\n```tsx\nimport React, { useState } from 'react';\nimport { InputCombo } from '@bolttech/molecules-input-combo/ob';\n\nconst phoneOptions = [\n  { label: '+1', value: '+1', id: 'phone-1' },\n  { label: '+55', value: '+55', id: 'phone-55' },\n];\n\nconst PhoneInput = () => {\n  const [inputValue, setInputValue] = useState('');\n  const [dropdownId, setDropdownId] = useState('phone-1');\n\n  return (\n    <InputCombo\n      variant=\"grey\"\n      label=\"Phone number\"\n      placeholder=\"Enter your phone number\"\n      required\n      dropdownOptions={phoneOptions}\n      dropdownValue={dropdownId}\n      value={inputValue}\n      onChange={(combo) => setInputValue(combo.value)}\n      onDropdownChange={(opt) => setDropdownId(opt.id)}\n    />\n  );\n};\n```\n\n## Differences from the styled-components version\n\n- Uses Tailwind CSS with CSS variables (`--input-*` tokens) instead of `styled-components`.\n- Uses `classnames` for conditional class application.\n- Interface defined in `input-combo.interface.ts`.\n- No dependency on `styled-components` or `BolttechThemeProvider`.\n\n## Contributing\n\nContributions are welcome! Please follow the code standards and test your changes before submitting.\n","readmeFilename":"README.md"}