Add file uploads for photos and family icons
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import "dart:typed_data";
|
||||
|
||||
import "../config/api_config.dart";
|
||||
import "../models/family_member.dart";
|
||||
import "api_client.dart";
|
||||
@@ -23,6 +25,7 @@ class FamilyService {
|
||||
final created = FamilyMember(
|
||||
id: "family-${DateTime.now().millisecondsSinceEpoch}",
|
||||
name: member.name,
|
||||
iconUrl: member.iconUrl,
|
||||
emoji: member.emoji,
|
||||
color: member.color,
|
||||
order: member.order,
|
||||
@@ -51,6 +54,22 @@ class FamilyService {
|
||||
return FamilyMember.fromJson(data);
|
||||
}
|
||||
|
||||
Future<String> uploadFamilyIcon({
|
||||
required Uint8List bytes,
|
||||
required String filename,
|
||||
}) async {
|
||||
if (ApiConfig.useMockData) {
|
||||
return "mock://$filename";
|
||||
}
|
||||
final data = await _client.postMultipart(
|
||||
"${ApiConfig.family}/upload-icon",
|
||||
fieldName: "file",
|
||||
bytes: bytes,
|
||||
filename: filename,
|
||||
);
|
||||
return data["url"] as String? ?? "";
|
||||
}
|
||||
|
||||
Future<void> deleteFamilyMember(String id) async {
|
||||
if (ApiConfig.useMockData) {
|
||||
MockDataStore.familyMembers.removeWhere((item) => item.id == id);
|
||||
|
||||
Reference in New Issue
Block a user