API and Development
InputWithSelect extends Input with either selectOptions + Radix Select, or a custom selectControl node. Set selectControlPosition to SelectControlPosition.Lead or Tail. Inherits standard Input props (label, masking, affixes) while wiring selectedValue, onSelectChange, selectWidth, selectDisabled, and selectPlaceholder.
Name | Type | Default | Description |
|---|---|---|---|
|
| — | Position of the select dropdown |
|
| — | ID of the element that describes the error when input is invalid. Only use when aria-invalid is set to true. |
|
| — | Visual border treatment for the field shell; defaults from brand package when omitted. |
|
| — | Country code for international phone number masking (ISO 3166-1 alpha-2 code, e.g., "us", "ca", "mx") Only applies when maskType is Phone |
|
| — | Default value for uncontrolled usage. Ignored when |
|
| — | Hint or validation text displayed below the input field. |
|
| — | Color variant for the helper text (e.g., error, alt). |
|
| — | Text label displayed above the input field. |
|
| — | Color variant for the label text. |
|
| — | Accessible title for the leading icon button. |
|
| — | SVG icon displayed at the leading (left) edge of the input. |
|
| — | — |
|
| — | Triggers masking for formatted values (automatically enabled for phone, URL, and email inputs) |
|
| — | Specifies the type of mask to apply (e.g., 'phone', 'url', etc.) Otherwise, defaults based on input type |
|
| — | Maximum value for number inputs. |
|
| — | Minimum value for number inputs. |
|
| — | Keyboard event handler for the input element. |
|
| — | Click handler for the leading icon, turning it into a clickable button. |
|
| — | Mouse-down handler for the leading icon button. |
|
| — | Callback fired when input changes, providing both the raw (unmasked) and formatted values @param rawValue The unmasked/raw user input @param formattedValue The formatted value after masking is applied |
|
| — | Callback when the select value changes |
|
| — | Click handler for the trailing icon, turning it into a clickable button. |
|
| — | Mouse-down handler for the trailing icon button. |
|
| — | Text or element displayed before (to the left of) the input field. When specified, applies a special container style with a string and border. |
|
| — | Custom control to render instead of the default Select |
|
| — | Whether the select dropdown is disabled |
|
| — | Currently selected value in the dropdown |
|
| — | Options for the select dropdown |
|
| — | Placeholder for the select dropdown |
|
|
| Width of the select dropdown |
|
| — | Text or element displayed after (to the right of) the input field. When specified, applies a special container style with a string and border. |
|
| — | Configuration for a text button appended to the trailing edge of the input. Takes priority over |
|
| — | Accessible title for the trailing icon button. |
|
| — | SVG icon displayed at the trailing (right) edge of the input. |
|
| — | Configuration for an icon-only button appended to the trailing edge of the input. Ignored if |
|
| — | Override color for the trailing icon. |
|
| — | — |
|
| — | Optional Twilio Lookup result for enhanced E.164 conversion. When provided, the E.164 format from Twilio will be used instead of manual construction. |
Interactive examples and edge cases for this component are in Storybook.
Plus all Input props except ref forwarding uses the outer ref on the text field.