import 'dart:convert'; import 'package:marco/helpers/services/json_decoder.dart'; import 'package:marco/model/identifier_model.dart'; import 'package:flutter/services.dart'; class ProjectSummaryModel extends IdentifierModel { final String title, assignTo, priority, status; final DateTime date; ProjectSummaryModel( super.id, this.title, this.assignTo, this.priority, this.status, this.date, ); static ProjectSummaryModel fromJSON(Map json) { JSONDecoder decoder = JSONDecoder(json); String title = decoder.getString('title'); String assignTo = decoder.getString('assign_to'); String priority = decoder.getString('priority'); String status = decoder.getString('status'); DateTime date = decoder.getDateTime('date'); return ProjectSummaryModel(decoder.getId, title, assignTo, priority, status, date); } static List listFromJSON(List list) { return list.map((e) => ProjectSummaryModel.fromJSON(e)).toList(); } static List? _dummyList; static Future> get dummyList async { if (_dummyList == null) { dynamic data = json.decode(await getData()); _dummyList = listFromJSON(data); } return _dummyList!; } static Future getData() async { return await rootBundle.loadString('assets/data/project_summary.json'); } }