loadAppSettings function
Loads all settings files in parallel; throws FormatException on malformed JSON.
Implementation
Future<OmniBootstrapData> loadAppSettings() async {
final results = await Future.wait([
rootBundle.loadString(userSettingsFilePath),
rootBundle.loadString(appSettingsFilePath),
rootBundle.loadString(blogSettingsFilePath),
rootBundle.loadString(webrtcSettingsFilePath),
]);
final userSettingsJson = json.decode(results[0]) as Map<String, dynamic>;
final appSettingsJson = json.decode(results[1]) as Map<String, dynamic>;
final blogSettingsJson = json.decode(results[2]) as List<dynamic>;
final webrtcSettingsJson = json.decode(results[3]) as Map<String, dynamic>;
final userSettings = UserSettings.fromJsonFile(userSettingsJson);
final appSettings = AppSettings.fromJsonFile(appSettingsJson);
final blogConfigs = blogSettingsJson
.map((e) => BlogPageConfig.fromJsonFile(e as Map<String, dynamic>))
.toList();
final webrtcSettings = WebRTCSettings.fromJsonFile(webrtcSettingsJson);
return (appSettings, userSettings, blogConfigs, webrtcSettings);
}