mirror of
https://github.com/flutter/flutter
synced 2024-10-13 11:42:54 +00:00
87 lines
3.4 KiB
Dart
87 lines
3.4 KiB
Dart
// Copyright 2014 The Flutter Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
import 'localizations_utils.dart';
|
|
|
|
String generateMaterialHeader(String regenerateInstructions) {
|
|
return '''
|
|
// Copyright 2014 The Flutter Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// This file has been automatically generated. Please do not edit it manually.
|
|
// To regenerate the file, use:
|
|
// $regenerateInstructions
|
|
|
|
import 'dart:collection';
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:intl/intl.dart' as intl;
|
|
|
|
import '../material_localizations.dart';
|
|
|
|
// The classes defined here encode all of the translations found in the
|
|
// `flutter_localizations/lib/src/l10n/*.arb` files.
|
|
//
|
|
// These classes are constructed by the [getMaterialTranslation] method at the
|
|
// bottom of this file, and used by the [_MaterialLocalizationsDelegate.load]
|
|
// method defined in `flutter_localizations/lib/src/material_localizations.dart`.''';
|
|
}
|
|
|
|
/// Returns the source of the constructor for a GlobalMaterialLocalizations
|
|
/// subclass.
|
|
String generateMaterialConstructor(LocaleInfo locale) {
|
|
final String localeName = locale.originalString;
|
|
return '''
|
|
/// Create an instance of the translation bundle for ${describeLocale(localeName)}.
|
|
///
|
|
/// For details on the meaning of the arguments, see [GlobalMaterialLocalizations].
|
|
const MaterialLocalization${locale.camelCase()}({
|
|
String localeName = '$localeName',
|
|
required intl.DateFormat fullYearFormat,
|
|
required intl.DateFormat compactDateFormat,
|
|
required intl.DateFormat shortDateFormat,
|
|
required intl.DateFormat mediumDateFormat,
|
|
required intl.DateFormat longDateFormat,
|
|
required intl.DateFormat yearMonthFormat,
|
|
required intl.DateFormat shortMonthDayFormat,
|
|
required intl.NumberFormat decimalFormat,
|
|
required intl.NumberFormat twoDigitZeroPaddedFormat,
|
|
}) : super(
|
|
localeName: localeName,
|
|
fullYearFormat: fullYearFormat,
|
|
compactDateFormat: compactDateFormat,
|
|
shortDateFormat: shortDateFormat,
|
|
mediumDateFormat: mediumDateFormat,
|
|
longDateFormat: longDateFormat,
|
|
yearMonthFormat: yearMonthFormat,
|
|
shortMonthDayFormat: shortMonthDayFormat,
|
|
decimalFormat: decimalFormat,
|
|
twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat,
|
|
);''';
|
|
}
|
|
|
|
const String materialFactoryName = 'getMaterialTranslation';
|
|
|
|
const String materialFactoryDeclaration = '''
|
|
GlobalMaterialLocalizations? getMaterialTranslation(
|
|
Locale locale,
|
|
intl.DateFormat fullYearFormat,
|
|
intl.DateFormat compactDateFormat,
|
|
intl.DateFormat shortDateFormat,
|
|
intl.DateFormat mediumDateFormat,
|
|
intl.DateFormat longDateFormat,
|
|
intl.DateFormat yearMonthFormat,
|
|
intl.DateFormat shortMonthDayFormat,
|
|
intl.NumberFormat decimalFormat,
|
|
intl.NumberFormat twoDigitZeroPaddedFormat,
|
|
) {''';
|
|
|
|
const String materialFactoryArguments =
|
|
'fullYearFormat: fullYearFormat, compactDateFormat: compactDateFormat, shortDateFormat: shortDateFormat, mediumDateFormat: mediumDateFormat, longDateFormat: longDateFormat, yearMonthFormat: yearMonthFormat, shortMonthDayFormat: shortMonthDayFormat, decimalFormat: decimalFormat, twoDigitZeroPaddedFormat: twoDigitZeroPaddedFormat';
|
|
|
|
const String materialSupportedLanguagesConstant = 'kMaterialSupportedLanguages';
|
|
|
|
const String materialSupportedLanguagesDocMacro = 'flutter.localizations.material.languages';
|