- Add const constructors to @immutable classes (5 issues: prefer_const_constructors_in_immutables) - Fix nullable value casts in firesApi.dart (3 issues: cast_nullable_to_non_nullable) - Remove redundant default argument values (2 issues: avoid_redundant_argument_values) - Make YourLocation immutable with final fields (2 issues: avoid_equals_and_hash_code_on_mutable_classes) - Update imports and fix formatting Reduces lint issues from 129 to 106. APK builds successfully (146 MB).
20 lines
635 B
Dart
20 lines
635 B
Dart
import 'dart:async' show Future;
|
|
import 'dart:convert' show json;
|
|
import 'package:flutter/services.dart' show rootBundle;
|
|
|
|
/// Loads secret/config files from Flutter assets as JSON.
|
|
/// Used to load configuration files at app startup.
|
|
class SecretLoader {
|
|
SecretLoader({required this.secretPath});
|
|
|
|
final String secretPath;
|
|
|
|
/// Load and parse JSON from asset bundle.
|
|
/// Returns a map of the parsed JSON content.
|
|
Future<Map<String, dynamic>> load() {
|
|
return rootBundle.loadStructuredData<Map<String, dynamic>>(
|
|
secretPath,
|
|
(String jsonStr) async => json.decode(jsonStr) as Map<String, dynamic>,
|
|
);
|
|
}
|
|
}
|