Refactored json storage
This commit is contained in:
21
lib/app.dart
21
lib/app.dart
@@ -3,7 +3,9 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||
import 'package:tunas/clients/storage/storage_client.dart';
|
||||
import 'package:tunas/pages/home/home_page.dart';
|
||||
import 'package:tunas/repositories/account/account_repository.dart';
|
||||
import 'package:tunas/repositories/json/json_repository.dart';
|
||||
import 'package:tunas/repositories/metadata/metadata_repository.dart';
|
||||
import 'package:tunas/repositories/transactions/transactions_repository.dart';
|
||||
import 'package:tunas/theme.dart';
|
||||
|
||||
class App extends StatefulWidget {
|
||||
@@ -29,20 +31,31 @@ class AppView extends StatefulWidget {
|
||||
|
||||
class _AppViewState extends State<AppView> {
|
||||
late final StorageClient _storageClient;
|
||||
late final AccountRepository _accountRepository;
|
||||
late final JsonRepository _jsonRepository;
|
||||
late final TransactionsRepository _transactionsRepository;
|
||||
late final MetadataRepository _metadataRepository;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
|
||||
_storageClient = StorageClient();
|
||||
_accountRepository = AccountRepository(storageClient: _storageClient);
|
||||
_jsonRepository = JsonRepository(storageClient: _storageClient);
|
||||
_transactionsRepository = TransactionsRepository(jsonRepository: _jsonRepository);
|
||||
_metadataRepository = MetadataRepository(jsonRepository: _jsonRepository);
|
||||
|
||||
_transactionsRepository.loadTransactions();
|
||||
_metadataRepository.loadMetadata();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MultiRepositoryProvider(
|
||||
providers: [RepositoryProvider.value(value: _accountRepository)],
|
||||
providers: [
|
||||
RepositoryProvider.value(value: _jsonRepository),
|
||||
RepositoryProvider.value(value: _transactionsRepository),
|
||||
RepositoryProvider.value(value: _metadataRepository),
|
||||
],
|
||||
child: MaterialApp(
|
||||
title: 'Tunas',
|
||||
theme: ThemeData(useMaterial3: true, colorScheme: lightColorScheme),
|
||||
|
||||
Reference in New Issue
Block a user