dynamic theme, basic category settings
This commit is contained in:
@@ -16,10 +16,18 @@ class MetadataRepository {
|
||||
required jsonRepository,
|
||||
}) : _jsonRepository = jsonRepository;
|
||||
|
||||
List<Category> getCategories() {
|
||||
return _categoriesController.value;
|
||||
}
|
||||
|
||||
Stream<List<Category>> getCategoriesStream() {
|
||||
return _categoriesController.asBroadcastStream();
|
||||
}
|
||||
|
||||
List<Budget> getBudgets() {
|
||||
return _budgetController.value;
|
||||
}
|
||||
|
||||
Stream<List<Budget>> getBudgetsStream() {
|
||||
return _budgetController.asBroadcastStream();
|
||||
}
|
||||
@@ -32,30 +40,33 @@ class MetadataRepository {
|
||||
return _accountController.asBroadcastStream();
|
||||
}
|
||||
|
||||
loadMetadata() async {
|
||||
void loadMetadata() async {
|
||||
Metadata metadata = await _jsonRepository.loadJson(Metadata(), MetadataFactory());
|
||||
_broadcastMetadata(metadata);
|
||||
}
|
||||
|
||||
saveCategories(List<Category> categories) async {
|
||||
Future<List<Category>> saveCategories(List<Category> categories) async {
|
||||
Metadata metadata = _constructMetadataFromControllers();
|
||||
metadata.categories = categories;
|
||||
await _jsonRepository.saveJson(metadata);
|
||||
_categoriesController.add(categories);
|
||||
return categories;
|
||||
}
|
||||
|
||||
saveBudgets(List<Budget> budgets) async {
|
||||
Future<List<Budget>> saveBudgets(List<Budget> budgets) async {
|
||||
Metadata metadata = _constructMetadataFromControllers();
|
||||
metadata.budgets = budgets;
|
||||
await _jsonRepository.saveJson(metadata);
|
||||
_budgetController.add(budgets);
|
||||
return budgets;
|
||||
}
|
||||
|
||||
saveAccounts(List<Account> accounts) async {
|
||||
Future<List<Account>> saveAccounts(List<Account> accounts) async {
|
||||
Metadata metadata = _constructMetadataFromControllers();
|
||||
metadata.accounts = accounts;
|
||||
await _jsonRepository.saveJson(metadata);
|
||||
_accountController.add(accounts);
|
||||
return accounts;
|
||||
}
|
||||
|
||||
deleteMetadata() async {
|
||||
|
||||
Reference in New Issue
Block a user