import 'dart:convert'; import 'package:flutter/services.dart'; class Sauce { final String filepath; final String alias; final String name; final String? season; final String? episode; final String? from; final String? to; const Sauce(this.filepath, this.alias, this.name, this.season, this.episode, this.from, this.to); static Future> sauceIndex() async { final sauceJson = await rootBundle.loadString('assets/sauce.json'); Map sauce = jsonDecode(sauceJson); Map sauceIndex = new Map(); for (MapEntry entry in sauce.entries) { final value = entry.value as Map; sauceIndex[entry.key] = Sauce( entry.key, value['alias'], value['name'], value['season'], value['episode'], value['from'], value['to'] ); } return sauceIndex; } } class Update { final String version; final String summary; final List details; const Update(this.version, this.summary, this.details); static Future> updatesIndex() async { final updatesJson = await rootBundle.loadString('assets/updates.json'); Map updates = jsonDecode(updatesJson); Map updatesIndex = new Map(); for (MapEntry entry in updates.entries) { final value = entry.value as Map; updatesIndex[entry.key] = Update( entry.key, value['summary'], (value['details'] as List).cast() ); } return updatesIndex; } }