Refactored json storage
This commit is contained in:
29
lib/repositories/transactions/models/transactions.dart
Normal file
29
lib/repositories/transactions/models/transactions.dart
Normal file
@@ -0,0 +1,29 @@
|
||||
import 'package:tunas/repositories/json/models/json.dart';
|
||||
import 'package:tunas/repositories/transactions/models/transaction.dart';
|
||||
|
||||
class Transactions implements Json {
|
||||
List<Transaction> transactions;
|
||||
|
||||
Transactions({
|
||||
this.transactions = const [],
|
||||
});
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson() => {
|
||||
'transactions': transactions.map((transaction) => transaction.toJson()).toList(),
|
||||
};
|
||||
|
||||
@override
|
||||
String getJsonFileName() {
|
||||
return 'transactions.json';
|
||||
}
|
||||
}
|
||||
|
||||
class TransactionsFactory implements JsonFactory<Transactions> {
|
||||
@override
|
||||
Transactions fromJson(Map<String, dynamic> json) {
|
||||
return Transactions(
|
||||
transactions: List<Transaction>.from(json['transactions']?.map((transaction) => Transaction.fromJson(transaction))),
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user