2021-03-20 18:31:53 +01:00
|
|
|
import 'package:equatable/equatable.dart';
|
|
|
|
|
2020-06-13 22:54:53 +02:00
|
|
|
import '../channels/channel_id.dart';
|
2021-03-20 18:31:53 +01:00
|
|
|
import 'base_search_content.dart';
|
2020-06-13 22:54:53 +02:00
|
|
|
|
|
|
|
/// Metadata related to a search query result (channel)
|
2021-03-20 18:31:53 +01:00
|
|
|
class SearchChannel extends BaseSearchContent with EquatableMixin {
|
|
|
|
/// Channel id.
|
|
|
|
final ChannelId id;
|
2020-06-13 22:54:53 +02:00
|
|
|
|
|
|
|
/// Channel name.
|
2021-03-20 18:31:53 +01:00
|
|
|
final String name;
|
|
|
|
|
|
|
|
/// Description snippet.
|
|
|
|
/// Can be empty.
|
|
|
|
final String description;
|
|
|
|
|
|
|
|
/// Channel uploaded videos.
|
|
|
|
final int videoCount;
|
2020-06-13 22:54:53 +02:00
|
|
|
|
|
|
|
/// Initialize a [SearchChannel] instance.
|
2021-03-20 18:31:53 +01:00
|
|
|
SearchChannel(this.id, this.name, this.description, this.videoCount);
|
|
|
|
|
|
|
|
@override
|
|
|
|
String toString() => '(Channel) $name ($id)';
|
2020-06-13 22:54:53 +02:00
|
|
|
|
|
|
|
@override
|
2021-03-20 18:31:53 +01:00
|
|
|
List<Object?> get props => [id, name, description, videoCount];
|
2020-06-13 22:54:53 +02:00
|
|
|
}
|