mergeMapLocales static method

Map<String, Map<String, dynamic>> mergeMapLocales(
  1. List<Map<String, Map<String, dynamic>>> mapLocales
)

Implementation

static Map<String, Map<String, dynamic>> mergeMapLocales(
  List<Map<String, Map<String, dynamic>>> mapLocales,
) {
  if (mapLocales.isEmpty) {
    return CoreCodegenLoader.mapLocales;
  }

  return [CoreCodegenLoader.mapLocales, ...mapLocales].fold(
    <String, Map<String, dynamic>>{},
    (combinedMap, mapLocale) {
      mapLocale.forEach((localeKey, map) {
        if (combinedMap.containsKey(localeKey)) {
          combinedMap[localeKey] = {
            ...combinedMap[localeKey]!,
            ...map,
          };
        } else {
          combinedMap[localeKey] = map;
        }
      });

      return combinedMap;
    },
  );
}