v1.3.0+56
All checks were successful
Flutter Schmutter / build (push) Successful in 3m54s

This commit is contained in:
2025-06-16 15:05:39 +02:00
parent 2a500144f5
commit 14081489cc
22 changed files with 820 additions and 538 deletions

View File

@ -0,0 +1,39 @@
import 'package:get/get.dart';
import 'package:f0ckapp/models/media_item.dart';
const List<String> mediaTypes = ["alles", "image", "video", "audio"];
const List<String> mediaModes = ["sfw", "nsfw", "untagged", "all"];
class MediaService extends GetConnect {
Future<List<MediaItem>> fetchMediaItems({
required int type,
required int mode,
required int random,
String? tag,
int? older,
}) async {
final queryParameters = {
'type': type.toString(),
'mode': mode.toString(),
'random': random.toString(),
if (tag != null) 'tag': tag,
if (older != null) 'older': older.toString(),
};
try {
final response = await get(
'https://api.f0ck.me/items/get',
query: queryParameters,
);
if (response.status.code == 200 && response.body is List) {
final data = response.body as List<dynamic>;
return data.map((json) => MediaItem.fromJson(json)).toList();
} else {
return Future.error('Fehler beim Laden der Daten: ${response.body}');
}
} catch (e) {
return Future.error('Netzwerkfehler: ${e.toString()}');
}
}
}