#Intlx

Build Status

Intlx is internationalization APIs for Dart, which have not yet made it into the intl package itself.

##Features:

####Formats

The core APIs of this package are Formats, which format various data types to locale specific Strings, similar to DateFormat and NumberFormat from the intl package.

| API | What does it format? | Examples (for "en" locale) | CLDR data source | LDML notes | | -------------- | --------------------- | -------------------------- | --------------------- | ----------------------- | | IterableFormat | Iterables | a, b, and c | data | notes | | PluralFormat | nums to a plural form | 1 octopus or 2 octopi | data | notes | | DurationFormat | Durations | 5 hours or 5 hrs | data | notes | | AgeFormat | Dates relative to now | 2 days ago or In 2 days| data | notes |

<!--- TODO: make API names link to generated API docs once they exist -->

####Configuration

######DurationRounder Duration rounding strategy interface. An implementation of this interface can be passed to a RelativeTimeFormat (superclass of DurationFormat and AgeFormat) to customize how to round Durations to a TimeUnit and quantity.

######FormatLength An "enum" of format lengths, currently used by DurationFormat, could be used by DateFormat as well.

##CLDR data All data is sourced from CLDR, specifically http://i18ndata.appspot.com/.

####Supported locales: Supported locales are currently intentionally constrained to be the same as DateFormat's supported locales. However CLDR does support many more locales, which could easily be supported later.

Libraries

intlx

internationalization APIs not yet in the intl package.

iterable_locale_data

Exposes LocaleData constants for use with IterableFormat. For example:

plural_locale_data

Exposes LocaleData constants for use with PluralFormat. For example:

relative_time_locale_data

Exposes LocaleData constants for use with DurationFormat and/or AgeFormat. For example: