SendTrain/lib/helpers/media_helpers.dart
2025-04-15 15:29:55 -04:00

33 lines
1.1 KiB
Dart

import 'package:flutter/material.dart';
import 'package:sendtrain/database/database.dart';
ImageProvider findMediaByType(List<MediaItem> media, MediaType type) {
Iterable<MediaItem>? found = media.where((m) => m.type == type);
Image image;
if (found.isNotEmpty) {
image = Image.network('https://test.com/image.jpg', loadingBuilder:
(BuildContext context, Widget child, ImageChunkEvent? loadingProgress) {
print('loading');
print(loadingProgress);
if (loadingProgress == null) return child;
return Center(
child: CircularProgressIndicator(
value: loadingProgress.expectedTotalBytes != null
? loadingProgress.cumulativeBytesLoaded /
loadingProgress.expectedTotalBytes!
: null,
),
);
}, errorBuilder: (context, error, stackTrace) {
print('error');
return Image.asset('assets/images/placeholder.jpg');
});
} else {
// Element is not found
image = Image.asset('assets/images/placeholder.jpg');
}
return image.image;
}