load method

  1. @override
Future<BaseLocaleSyncLocalization> load(
  1. Locale locale
)
override

Start loading the resources for locale. The returned future completes when the resources have finished loading.

It's assumed that this method will return an object that contains a collection of related string resources (typically defined with one method per resource). The object will be retrieved with Localizations.of.

Implementation

@override
Future<BaseLocaleSyncLocalization> load(Locale locale) async {
  try {
    await LocaleSync.fetch();
    if (LocaleSync.data.isNotEmpty &&
        (LocaleSync.data[
                    "${locale.languageCode.toLowerCase()}-${locale.countryCode?.toLowerCase()}"] !=
                null ||
            LocaleSync.data[
                    locale.languageCode.toLowerCase().replaceAll("_", "-")] !=
                null)) {
      return In_Memory_LocaleSyncLocalization(
        map: LocaleSync.data,
        language:
            "${locale.languageCode.toLowerCase()}${locale.countryCode != null ? "-${locale.countryCode!.toLowerCase()}" : ""}",
      );
    }
  } catch (_) {}
  return await _fallbackHandler(locale);
}