intl_mobile_field
A customized Flutter TextFormField to input international Mobile number along with country code.
2.1.7
5.0K downloads/mo
#3840 most downloaded on pub.dev
MdAshrafUllah/intl_mobile_field
What this package is like to depend on
Last release 2 months ago
13 Jun 2026
Release timing varies
gaps range from 1 weeks to 8 months
Nearly every release is documented
notes for 17 of 17 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
17 releases · first in 2024
5 releases in the last 12 months
see the full history below
Release timeline
17 releases · Nov 2024 to Jun 2026Releases
latest 17-
2.1.713 Jun 2026Release notes
Open source →- **New** Added `searchBy` to customize country search behavior in th…
…e picker dialog
- **New** Supports searching by country name, dial code, or both
- **New** `SearchBy.both` is now the default search behavior
- Readme file updated.Release notes
Open source →- New Added
searchByto customize country search behavior in the picker dialog - New Supports searching by country name, dial code, or both
- New
SearchBy.bothis now the default search behavior - Readme file updated.
Release notes
Open source →-
New Added searchBy to customize country search behavior in the picker dialog
-
New Supports searching by country name, dial code, or both
-
New SearchBy.both is now the default search behavior
-
Readme file updated.
- New Added
-
2.1.612 Jun 2026Release notes
Open source →- New Added
resetCountryOnClearFieldto restore the initial country when the field is cleared - New Added
excludeCountriesto exclude specific countries from the picker - New Added
onMaxLengthReachedcallback for maximum number length detection
Release notes
Open source →-
New Added resetCountryOnClearField to restore the initial country when the field is cleared
-
New Added excludeCountries to exclude specific countries from the picker
-
New Added onMaxLengthReached callback for maximum number length detection
- New Added
-
2.1.506 Jun 2026Release notes
Open source →- Breaking:
FlagDropDownrenamed toCountryDropDown - Flexible display: From
CountryDropDownyou can use what you need (country name, code, flag, or any combination) - Full RTL & LTR support
- Complete UI customization control
- Example code: cleaner and more understandable
Release notes
Open source →-
Breaking : FlagDropDown renamed to CountryDropDown
-
Flexible display : From CountryDropDown you can use what you need (country name, code, flag, or any combination)
-
Full RTL & LTR support
-
Complete UI customization control
-
Example code: cleaner and more understandable
- Breaking:
-
2.1.426 Sep 2025 -
2.1.326 Sep 2025Release notes
Open source →Fixed
- Resolved issue with country search: now typing partial country names (e.g., “U”) correctly filters all matching countries instead of requiring exact matches. #52
- Updated
getCountrymethod to allow specifyingcountryISOCode, preventing incorrect country selection when multiple countries share the same dial code. #53
Improved
- Search functionality is now case-insensitive and supports substring matching.
🙏 Thanks
Big thanks to @serhii-ovchar-ew for contributing validating mobile numbers that already have country information!
Release notes
Open source →Fixed
-
Resolved issue with country search: now typing partial country names (e.g., “U”) correctly filters all matching countries instead of requiring exact matches. #52
-
Updated getCountry method to allow specifying countryISOCode , preventing incorrect country selection when multiple countries share the same dial code. #53
Improved
- Search functionality is now case-insensitive and supports substring matching.
🙏 Thanks
Big thanks to @serhii-ovchar-ew for contributing validating mobile numbers that already have country information !
-
2.1.208 Aug 2025 -
2.1.101 Aug 2025Release notes
Open source →Fixed
- Fixed disableLengthCounter true does not fully disable counter #45
Release notes
Open source →Fixed
- Fixed disableLengthCounter true does not fully disable counter #45
-
2.1.011 Jul 2025Release notes
Open source →Fixed
Added
- 🌏 Vietnamese language support for translations
countriesnow accepts aList<String>of country codes or dial codes see Example- Limit which countries appear in the picker dialog
- Custom styling support for the maxLength counter using
lengthCounterTextStyle - Set the height of the country Picker DialogBox using
countryPickerDialogBoxHeight
🙏 Thanks
Big thanks to @tAnAs7 for contributing Vietnamese language support!
Release notes
Open source →Fixed
-
RangeError when typing input in IntlMobileField #39
-
controller / initialValue issues fixed #35
Added
-
🌏 Vietnamese language support for translations
-
countries now accepts a List<String> of country codes or dial codes see Example
-
Limit which countries appear in the picker dialog
-
Custom styling support for the maxLength counter using lengthCounterTextStyle
-
Set the height of the country Picker DialogBox using countryPickerDialogBoxHeight
🙏 Thanks
Big thanks to @tAnAs7 for contributing Vietnamese language support !
-
2.0.228 Apr 2025Release notes
Open source →Fixed
- Resolved an issue where
onCountryChangedwas not being invoked correctly. - Fixed an issue where
initialCountryCodewas not setting the input length properly on initialization.
Release notes
Open source →Fixed
-
Resolved an issue where onCountryChanged was not being invoked correctly.
-
Fixed an issue where initialCountryCode was not setting the input length properly on initialization.
- Resolved an issue where
-
2.0.125 Apr 2025Release notes
Open source →Newly Added
- New Add translations for
Portugueselanguages.
Changed
- We have removed the
prefixIconfromIntlMobileField. Now, users have to pass all attributes forFlagsDropDowndirectly inIntlMobileField.
Improved
- Now the length will not be stuck at 10 digits for all countries.
- Now able to make the field optional.
- Now
initialValuewill change the default country flag.
Notes
- The user can still use
FlagsDropDownseparately anywhere.
Release notes
Open source →Newly Added
- New Add translations for Portuguese languages.
Changed
- We have removed the prefixIcon from IntlMobileField . Now, users have to pass all attributes for FlagsDropDown directly in IntlMobileField .
Improved
-
Now the length will not be stuck at 10 digits for all countries.
-
Now able to make the field optional.
-
Now initialValue will change the default country flag.
Notes
- The user can still use FlagsDropDown separately anywhere.
- New Add translations for
-
2.0.014 Apr 2025Release notes
Open source →Newly Added
FlagImagewidget - Easily display any country's flag anywhere in your UI.FlagsDropDownwidget - A fully customizable country selector with dialog support.- Support for custom validation - Pass a custom
validatorfunction with both sync and async validation handling. - Users can now add
prefixIconandsuffixIconinIntlMobileField. FlagsDropDownappears in theprefixIconby default forIntlMobileField, but can be overridden.
Changed
- Updated phone number length validation for Seychelles to match accurate formatting rules.
Improved
- Introduced debounced async validation to prevent overlapping validator calls and improve performance.
- Developers can fully customize or replace the flag dropdown by injecting their own
FlagsDropDown. - Added configuration options to hide flags, country codes, or dropdown icons both in the field and dialog.
Notes
- Flutter's native
validatoris not async, so async validation is handled internally viaonChanged, with a debounce. - For real-time validation feedback, use the
onChangedcallback and manage UI state accordingly. - Explore the package for knowing what new in it.
Release notes
Open source →Newly Added
-
FlagImage widget - Easily display any country's flag anywhere in your UI.
-
FlagsDropDown widget - A fully customizable country selector with dialog support.
-
Support for custom validation - Pass a custom validator function with both sync and async validation handling.
-
Users can now add prefixIcon and suffixIcon in IntlMobileField .
-
FlagsDropDown appears in the prefixIcon by default for IntlMobileField , but can be overridden.
Changed
- Updated phone number length validation for Seychelles to match accurate formatting rules.
Improved
-
Introduced debounced async validation to prevent overlapping validator calls and improve performance.
-
Developers can fully customize or replace the flag dropdown by injecting their own FlagsDropDown .
-
Added configuration options to hide flags, country codes , or dropdown icons both in the field and dialog.
Notes
-
Flutter's native validator is not async, so async validation is handled internally via onChanged , with a debounce.
-
For real-time validation feedback, use the onChanged callback and manage UI state accordingly.
-
Explore the package for knowing what new in it.
-
1.1.121 Jan 2025Release notes
Open source →- New Add translations for [Bangla], [Hindi], [Urdu] languages.
- New RTL Support for Translations of Right-to-Left Languages
- added Kosovo localization messages
- update [README.md] file with translations listed Country and RLT,LRT Output.
- New screenshot(thumbnail) added.
-
1.1.021 Jan 2025Release notes
Open source →- New Add translations for [Bangla], [Hindi], [Urdu] languages.
- New RTL Support for Translations of Right-to-Left Languages
- added Kosovo localization messages
- update [README.md] file with translations listed Country and RLT,LRT Output.
- New screenshot(thumbnail) added.
Release notes
Open source →-
New Add translations for [Bangla], [Hindi], [Urdu] languages.
-
New RTL Support for Translations of Right-to-Left Languages
-
added Kosovo localization messages
-
update [README.md] file with translations listed Country and RLT,LRT Output.
-
New screenshot(thumbnail) added.
-
1.0.301 Dec 2024 -
1.0.202 Nov 2024 -
1.0.102 Nov 2024 -
1.0.002 Nov 2024Release notes
Open source →- A Custom mobile Input TextFormField.
- A Basic validator added.
- Added styling of the country selection button.
- Added support for input formatters.
- Added some more necessary parameters available for a normal textfield.
- Initial Value can now be set.
- mobile field now returns ISO County code as well in onSaved, onChanged.
- SearchBar label text can be now set.
- Picker popup bug fixed.
- Color change for Dropdown Icon and Dialog is now added.
- onCountryChanged param added.
- null-safe.
- Update maximum length of mobile numbers of several countries.
- Add dropDownArrowIcon parameter.
- Control autoValidateMode of text input added.
- showCountryFlag param added.
- textAlignVertical param added.
- Icon position feature added.
- Setting enabled to false disable the dropdown button too.
- Update maximum length of mobile numbers of several countries.
- dropDownArrowIcon and dropDownArrowColor parameters are now replaced by dropDownIcon.
- Add asynchronous validation.
- Add minimal country length.
- Update minimum and maximum length of mobile numbers of several countries.
- Support country search by dial code.
- Move flag button to TextFormField's
prefixIcon(always displayed and get rid of alignment issues). - Add
dropdownTextStyle, customize style use for the country dial code. - Add
disableLengthCheck, disable view minimum and maximum length check. - Add a CountryPickerDialog widget and PickerDialogStyle (set of styles to allow the country search dialog customization).
- Add
flagsButtonPadding, set custom padding around flag button. - Add
invalidNumberMessage, te message to be displayed on validation error. - Add cursor customization options:
cursorColor,cursorHeight,cursorRadius,cursorWidthandshowCursor. - Switch from country List of Maps to List of Country objects.
keyboardAppearanceuse defaultThemeData.brightness.- Rename
dropDownIcontodropdownIconandiconPositiontodropdownIconPosition. - Remove
autoValidate. - Add asynchronous validation.
validatorfunction parameter type is [MobileNumber] now instead of [String].- Add
widthproperty to [PickerDialogStyle] - Add
flagsButtonMarginproperty - Update mobile number length of several countries.
- Add
magnifierConfigurationto customize the magnifier. - Add
formFieldKeyfor the Mobile input text field key. - Update Mobile number length of several countries.
- New Add shape property of the Dialog.
- New Update Madagascar, Brazil, belarus, indonesia Min and Max.
- New Add Country Kosovo.
- New Correct name translation for some countries.
- New Able to style the text inside the search field.
- New allowing to pass list of favorite country codes as a list of string.
- New put the favorite countries always on the top.
- New changed the listView builder to slivers.
- New Fixed duplication of countries on the search.
- New Hungarian translation added to countries.
- New make itself visible by scrolling.
- New Enable project example for Linux, Mac and Windows.
- New Fix to select png asset for Linux and Windows.
- New Enable "expands" and "maxLines" parameters.
- New support phone numbers with spaces and dashes in fromCompleteNumber.
- New Border added to TextFormField Widget
- New Fill Color added.
- New Invalid Number Message added in validator on empty Mobile number.
- New Disable text field and flag Separately.
- New Disable Mobile Length Counter.
- New Add an onTapOutside function.
- New Control the size of the country flag. min is 32.
- New You can add Customizable favorite Icon in favorite country list.
- New You can can change the position of the favorite Icon.
Release notes
Open source →-
A Custom mobile Input TextFormField.
-
A Basic validator added.
-
Added styling of the country selection button.
-
Added support for input formatters.
-
Added some more necessary parameters available for a normal textfield.
-
Initial Value can now be set.
-
mobile field now returns ISO County code as well in onSaved, onChanged.
-
SearchBar label text can be now set.
-
Picker popup bug fixed.
-
Color change for Dropdown Icon and Dialog is now added.
-
onCountryChanged param added.
-
null-safe.
-
Update maximum length of mobile numbers of several countries.
-
Add dropDownArrowIcon parameter.
-
Control autoValidateMode of text input added.
-
showCountryFlag param added.
-
textAlignVertical param added.
-
Icon position feature added.
-
Setting enabled to false disable the dropdown button too.
-
Update maximum length of mobile numbers of several countries.
-
dropDownArrowIcon and dropDownArrowColor parameters are now replaced by dropDownIcon.
-
Add asynchronous validation.
-
Add minimal country length.
-
Update minimum and maximum length of mobile numbers of several countries.
-
Support country search by dial code.
-
Move flag button to TextFormField's prefixIcon (always displayed and get rid of alignment issues).
-
Add dropdownTextStyle , customize style use for the country dial code.
-
Add disableLengthCheck , disable view minimum and maximum length check.
-
Add a CountryPickerDialog widget and PickerDialogStyle (set of styles to allow the country search dialog customization).
-
Add flagsButtonPadding , set custom padding around flag button.
-
Add invalidNumberMessage , te message to be displayed on validation error.
-
Add cursor customization options: cursorColor , cursorHeight , cursorRadius , cursorWidth and showCursor .
-
Switch from country List of Maps to List of Country objects.
-
keyboardAppearance use default ThemeData.brightness .
-
Rename dropDownIcon to dropdownIcon and iconPosition to dropdownIconPosition .
-
Remove autoValidate .
-
Add asynchronous validation.
-
validator function parameter type is [MobileNumber] now instead of [String].
-
Add width property to [PickerDialogStyle]
-
Add flagsButtonMargin property
-
Update mobile number length of several countries.
-
Add magnifierConfiguration to customize the magnifier.
-
Add formFieldKey for the Mobile input text field key.
-
Update Mobile number length of several countries.
-
New Add shape property of the Dialog.
-
New Update Madagascar, Brazil, belarus, indonesia Min and Max.
-
New Add Country Kosovo.
-
New Correct name translation for some countries.
-
New Able to style the text inside the search field.
-
New allowing to pass list of favorite country codes as a list of string.
-
New put the favorite countries always on the top.
-
New changed the listView builder to slivers.
-
New Fixed duplication of countries on the search.
-
New Hungarian translation added to countries.
-
New make itself visible by scrolling.
-
New Enable project example for Linux, Mac and Windows.
-
New Fix to select png asset for Linux and Windows.
-
New Enable "expands" and "maxLines" parameters.
-
New support phone numbers with spaces and dashes in fromCompleteNumber.
-
New Border added to TextFormField Widget
-
New Fill Color added.
-
New Invalid Number Message added in validator on empty Mobile number.
-
New Disable text field and flag Separately.
-
New Disable Mobile Length Counter.
-
New Add an onTapOutside function.
-
New Control the size of the country flag. min is 32.
-
New You can add Customizable favorite Icon in favorite country list.
-
New You can can change the position of the favorite Icon.
39
likes
160
points
4.91k
downloads
Documentation
API reference
Publisher
ratiodream.com
Weekly Downloads
Metadata
A customized Flutter TextFormField to input international Mobile number along with country code.
Repository (GitHub)
View/report issues
Topics
#intl-mobile-field #phone-field #number-field #international-phone-field #international-mobile-field
License
MIT ( license )
Dependencies
flutter
More
Packages that depend on intl_mobile_field
← Metadata
39
likes
160
points
4.91k
downloads
Documentation
API reference
Publisher
ratiodream.com
Weekly Downloads
Metadata
A customized Flutter TextFormField to input international Mobile number along with country code.
Repository (GitHub)
View/report issues
Topics
#intl-mobile-field #phone-field #number-field #international-phone-field #international-mobile-field
License
MIT ( license )
Dependencies
flutter
More
Packages that depend on intl_mobile_field
Back