// Copyright 2019 The Flutter team. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; import 'package:gallery/data/gallery_options.dart'; import 'package:intl/intl.dart'; /// Get the locale string for the context. String locale(BuildContext context) => GalleryOptions.of(context).locale.toString(); /// Currency formatter for USD. NumberFormat usdWithSignFormat(BuildContext context, {int decimalDigits = 2}) { return NumberFormat.currency( locale: locale(context), name: '\$', decimalDigits: decimalDigits, ); } /// Percent formatter with two decimal points. NumberFormat percentFormat(BuildContext context, {int decimalDigits = 2}) { return NumberFormat.decimalPercentPattern( locale: locale(context), decimalDigits: decimalDigits, ); } /// Date formatter with year / number month / day. DateFormat shortDateFormat(BuildContext context) => DateFormat.yMd(locale(context)); /// Date formatter with year / month / day. DateFormat longDateFormat(BuildContext context) => DateFormat.yMMMMd(locale(context)); /// Date formatter with abbreviated month and day. DateFormat dateFormatAbbreviatedMonthDay(BuildContext context) => DateFormat.MMMd(locale(context)); /// Date formatter with year and abbreviated month. DateFormat dateFormatMonthYear(BuildContext context) => DateFormat.yMMM(locale(context));