runtut_currency_input_formatter 0.1.0 copy "runtut_currency_input_formatter: ^0.1.0" to clipboard
runtut_currency_input_formatter: ^0.1.0 copied to clipboard

A lightweight Flutter package for formatting currency input fields. Pass a locale and an ISO 4217 currency code — separators and decimal digits are derived automatically.

runtut_currency_input_formatter #

A lightweight Flutter package for formatting currency input fields.

Pass a locale and an ISO 4217 currency code — separators and decimal digits are derived automatically.


Why #

Most currency formatters either hardcode a locale or make you configure separators by hand. This one takes a locale and a currency code and figures out the rest: id_ID + IDR gives you . thousands and , decimal with no decimal places; en_US + USD gives you , thousands and . decimal with 2 places.


Usage #

import 'package:runtut_currency_input_formatter/runtut_currency_input_formatter.dart';

TextField(
  inputFormatters: [
    CurrencyInputFormatter(locale: 'id_ID', currencyCode: 'IDR'),
  ],
)

IDR — 1.000.000 #

CurrencyInputFormatter() // defaults to locale: 'id_ID', currencyCode: 'IDR'

USD — 1,000,000.99 #

CurrencyInputFormatter(locale: 'en_US', currencyCode: 'USD')

EUR — 1.000.000,99 #

CurrencyInputFormatter(locale: 'de_DE', currencyCode: 'EUR')

JPY — 1,000,000 #

CurrencyInputFormatter(locale: 'ja_JP', currencyCode: 'JPY')

Options #

Parameter Type Default Description
locale String 'id_ID' Locale code — determines thousand and decimal separators
currencyCode String 'IDR' ISO 4217 currency code — determines decimal digit count

Currencies with 0 decimal places (e.g. IDR, JPY, KRW, VND) reject decimal input entirely. All others use 2 decimal places.


Notes #

  • Cursor position is preserved correctly across formatting changes
  • Thousand separators injected by the formatter are transparent to backspace — deleting one consumes the digit to its left instead

Built with care. Extracted from Runtut — a financial journal for everyday spending.

0
likes
160
points
63
downloads

Documentation

API reference

Publisher

verified publisherruntut.app

Weekly Downloads

A lightweight Flutter package for formatting currency input fields. Pass a locale and an ISO 4217 currency code — separators and decimal digits are derived automatically.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, intl

More

Packages that depend on runtut_currency_input_formatter