amount_localizer
Locale-aware amount formatter with a native bridge that reads the device's true Region setting — the one that drives the numeric keyboard's decimal key.
What this package is like to depend on
Last release 1 months ago
10 Jul 2026
Too new to tell
only 1 release windows
Nearly every release is documented
notes for 4 of 4 stable releases
Nothing withdrawn
no release was ever pulled
1 months old
4 releases · first in 2026
4 releases in the last 12 months
see the full history below
Release timeline
4 releases · Jul 2026 to Jul 2026Releases
latest 4-
2.0.110 Jul 2026Release notes
Open source →Additive
- Expand
AmountInputLocale._byCountrycoverage. No API changes; countries previously falling back tocommaGroupDotDecimalnow resolve to their CLDR-appropriate format:- commaGroupDotDecimal:
BQ,CW,SX(Dutch Caribbean, USD in practice);TK,AS,GU,MP(Oceania US-influenced);AQ,HM(uninhabited, neutral default). - dotGroupCommaDecimal:
AW(Aruba, nl);GL(Greenland, da/kl). - spaceGroupCommaDecimal:
GF,MF,BL,PM,RE,YT,NC,PF,WF,TF(French overseas);AX(Åland, sv/fi);BV(Bouvet, Norwegian territory).
- commaGroupDotDecimal:
- Expand
-
2.0.008 Jul 2026Release notes
Open source →Breaking changes
-
Removed
DeviceRegionService. Init is now a single call on the headline class:// Before (1.x) await DeviceRegionService.initializeAndApply(); // After (2.0) await AmountLocalizer.ensureInitialized();
-
Removed the top-level
DeviceRegionServiceexport from the public barrel. The platform bridge is now a library-private implementation detail. -
Tests can reach the underlying
MethodChannelvia@visibleForTesting AmountLocalizer.debugChannel.
Migration
Replace every
DeviceRegionService.initializeAndApply()callsite withAmountLocalizer.ensureInitialized(). Same semantics, same return type (Future<String?>), same best-effort / never-throws contract.Install
dependencies: amount_localizer: ^2.0.0
📦 pub.dev: https://pub.dev/packages/amount_localizer/versions/2.0.0
Release notes
Open source →Breaking changes
-
Removed
DeviceRegionService. Init is now a single call on the headline class:// Before (1.x) await DeviceRegionService.initializeAndApply(); // After (2.0) await AmountLocalizer.ensureInitialized(); -
Removed the top-level
DeviceRegionServiceexport from the public barrel. The platform bridge is now a library-private implementation detail. Tests can still reach the underlyingMethodChannelvia@visibleForTesting AmountLocalizer.debugChannel.
Migration
- Replace every
DeviceRegionService.initializeAndApply()callsite withAmountLocalizer.ensureInitialized(). Same semantics, same return type (Future<String?>), same best-effort / never-throws contract.
-
-
1.0.007 Jul 2026Release notes
Open source →First stable release of amount_localizer — a locale-aware amount formatter for Flutter with a native bridge that reads the device's true Region setting.
Why
Flutter's
PlatformDispatcher.instance.localeonly exposes the language locale. On an English-language iPhone with Region = Brazil, Dart seesen_US, but the numeric keyboard emits,for the decimal. Users in that setup can't type an amount because the display formats with.but the keyboard produces,. This plugin closes that gap.What's inside
AmountInputLocale— canonical enum of numeric formats (1,234.56/1.234,56/1 234,56/ Indian lakhs / …) with country andLocaleresolvers.AmountLocalizer— cachedintl-backed formatter with banking defaults and a.localizedAmountextension onObject.DeviceRegionService— one call at app startup that reads the device region over aMethodChanneland applies it toAmountInputLocale.regionOverride.
Platforms
- iOS 12+ — reads
Locale.current.region(iOS 16+) /regionCode(older). - Android 21+ — reads
Locale.getDefault(Locale.Category.FORMAT).country.
Stability
First stable release. No API changes vs 0.1.1 — the public surface is now covered by semver, so any breaking change from here on will require a 2.0.0.
Install
dependencies: amount_localizer: ^1.0.0
Release notes
Open source →- First stable release. No API changes vs 0.1.1 — the public surface is now covered by semver, so any breaking change from here on will require a 2.0.0.
-
0.1.007 Jul 2026Release notes
Open source →- Initial release.
AmountInputLocale— canonical numeric-format enum with country/locale resolution.AmountLocalizer— cached, locale-aware amount formatter.DeviceRegionService— native bridge that reads the device's true Region / format-locale country and applies it toAmountInputLocale.regionOverride.