3 import 'package:http/http.dart' as http;
9 Player({this.id, this.name});
11 factory Player.fromJson(Map<String, dynamic> json) {
18 static Future<Player> fetchFirstPlayer() async {
19 final response = await http.get('https://families.cworth.org/api/players');
21 if (response.statusCode == 200) {
22 List<Player> playerList = parsePlayers(response.body);
23 return playerList.elementAt(0);
25 throw Exception('Failed to load player');
29 static Future<List<Player>> fetchAllPlayers() async {
30 final response = await http.get('https://families.cworth.org/api/players');
32 if (response.statusCode == 200) {
33 return parsePlayers(response.body);
35 throw Exception('Failed to load players');
39 static List<Player> parsePlayers(String responseBody) {
40 final parsed = json.decode(responseBody).cast<Map<String, dynamic>>();
41 return parsed.map<Player>((json) => Player.fromJson(json)).toList();