Phone Textbox
Phone textbox is used to collect contact numbers in a structured format, and supports local numbers.
States
Default
Empty field, waiting for user interaction.
Hover
Hover state indicates interactivity when the cursor is on the input field by changing the border color.
Active/Focus
Active state: Occurs during the moment an element is being activated by the user's input. Focus state: Indicates that an element is currently selected to receive user input, whether from a keyboard, mouse, or voice.
Disabled
Value is visible but not editable
Filled
Field contains user input entered by the user.
Typing
User is actively entering text. Cursor is visible and input updates in real time.
Read only
Field content is visible but not editable. No cursor interaction.
Mobile Number
Input is valid
Valid
Triggered when input meets validation rules. (On form submit) Green border + success helper text confirms correct input.
Error
Triggered when validation fails. (On form submit) Red border + error message guides user to correct the input.
Max Length
Maximum character limit reached. Additional input is restricted and helper message may appear.
Behaviour
With prefix "+[Country Code]"
- A "+[Country Code]" prefix is pre-filled in the input.
- When user starts typing digits, it will appear after the prefix.
- When user removes all data, the prefix will be automatically reappears.
Specs
1
Label
- Describes the purpose of the input field.
- Recommended max 100 char
2
Input text
- The main area where users type in their data
- Max 255 char
3
Helper text
- Optional. Provides additional guidance or contextual information.
- Keep copy short. Read usage guidelines.
- Recommended max 30 char (include spaces).
4
Field icon
- 20x20, SVG
- Positioned on the right side of the field
- Required for error and success states; optional for other variants
- Refer to the Utility Icon Library for the available icons
1
Mobile Number
3
Input is valid
Dos and Don'ts
Labels and placeholder
- Use clear and persistent labels (e.g. “Mobile number”).
- Do not use a placeholder. The label, the auto-prefilled “+[Country Code]” prefix, and the character counter already communicate the expected input.