mirror of
https://github.com/KRTirtho/spotube.git
synced 2025-09-12 23:45:18 +00:00
40 lines
1.2 KiB
Dart
40 lines
1.2 KiB
Dart
import 'package:shadcn_flutter/shadcn_flutter.dart';
|
|
import 'package:spotube/components/image/universal_image.dart';
|
|
import 'package:spotube/components/ui/button_tile.dart';
|
|
import 'package:spotube/extensions/string.dart';
|
|
import 'package:spotube/models/metadata/metadata.dart';
|
|
|
|
class StatsPlaylistItem extends StatelessWidget {
|
|
final SpotubeSimplePlaylistObject playlist;
|
|
final Widget info;
|
|
const StatsPlaylistItem(
|
|
{super.key, required this.playlist, required this.info});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return ButtonTile(
|
|
style: ButtonVariance.ghost,
|
|
leading: ClipRRect(
|
|
borderRadius: BorderRadius.circular(4),
|
|
child: UniversalImage(
|
|
path: (playlist.images).asUrlString(
|
|
placeholder: ImagePlaceholder.collection,
|
|
),
|
|
width: 40,
|
|
height: 40,
|
|
),
|
|
),
|
|
title: Text(playlist.name),
|
|
subtitle: Text(
|
|
playlist.description.unescapeHtml(),
|
|
maxLines: 1,
|
|
overflow: TextOverflow.ellipsis,
|
|
),
|
|
trailing: info,
|
|
onPressed: () {
|
|
// context.navigateTo(PlaylistRoute(id: playlist.id!, playlist: playlist));
|
|
},
|
|
);
|
|
}
|
|
}
|