62 lines
1.8 KiB
Dart
62 lines
1.8 KiB
Dart
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
|
// This is a library that looks up messages for specific locales by
|
|
// delegating to the appropriate library.
|
|
|
|
import 'dart:async';
|
|
|
|
import 'package:intl/intl.dart';
|
|
import 'package:intl/message_lookup_by_library.dart';
|
|
// ignore: implementation_imports
|
|
import 'package:intl/src/intl_helpers.dart';
|
|
|
|
import 'stock_messages_en.dart' as messages_en;
|
|
import 'stock_messages_es.dart' as messages_es;
|
|
|
|
typedef Future<dynamic> LibraryLoader();
|
|
Map<String, LibraryLoader> _deferredLibraries = {
|
|
'en': () => new Future.value(null),
|
|
'es': () => new Future.value(null),
|
|
};
|
|
|
|
MessageLookupByLibrary _findExact(localeName) {
|
|
switch (localeName) {
|
|
case 'en':
|
|
return messages_en.messages;
|
|
case 'es':
|
|
return messages_es.messages;
|
|
default:
|
|
return null;
|
|
}
|
|
}
|
|
|
|
/// User programs should call this before using [localeName] for messages.
|
|
Future<bool> initializeMessages(String localeName) async {
|
|
var availableLocale = Intl.verifiedLocale(
|
|
localeName,
|
|
(locale) => _deferredLibraries[locale] != null,
|
|
onFailure: (_) => null);
|
|
if (availableLocale == null) {
|
|
return new Future.value(false);
|
|
}
|
|
var lib = _deferredLibraries[availableLocale];
|
|
await (lib == null ? new Future.value(false) : lib());
|
|
initializeInternalMessageLookup(() => new CompositeMessageLookup());
|
|
messageLookup.addLocale(availableLocale, _findGeneratedMessagesFor);
|
|
return new Future.value(true);
|
|
}
|
|
|
|
bool _messagesExistFor(String locale) {
|
|
try {
|
|
return _findExact(locale) != null;
|
|
} catch (e) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
MessageLookupByLibrary _findGeneratedMessagesFor(locale) {
|
|
var actualLocale = Intl.verifiedLocale(locale, _messagesExistFor,
|
|
onFailure: (_) => null);
|
|
if (actualLocale == null) return null;
|
|
return _findExact(actualLocale);
|
|
}
|