初始化
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
// ignore_for_file: constant_identifier_names
|
||||
|
||||
//媒体类型常量
|
||||
enum MediaStyle {
|
||||
Video, //真人视频
|
||||
ShortVideo, //短视频
|
||||
Pic, // 图集
|
||||
Game, // 黄游
|
||||
Novel, // 小说
|
||||
Cartoon, //动漫
|
||||
Comics, //漫画
|
||||
Drama, //短剧
|
||||
Community, //社区
|
||||
Area, //禁区
|
||||
Seed, //种子
|
||||
Actress, //女优
|
||||
NakedChat, //裸聊
|
||||
GroupChat, //群聊
|
||||
}
|
||||
|
||||
//搜索接口参数映射
|
||||
extension MediaStyleSearchParam on MediaStyle {
|
||||
//搜索 realm 参数
|
||||
String get searchRealm => switch (this) {
|
||||
MediaStyle.Video => 'SP', //影片
|
||||
MediaStyle.ShortVideo => 'SHORT', //抖音
|
||||
MediaStyle.Drama => 'DRAMA', //短剧
|
||||
MediaStyle.Community => 'COVER', //帖子
|
||||
MediaStyle.Pic => 'PIC', //图集
|
||||
_ => '',
|
||||
};
|
||||
|
||||
//ACG / 短剧搜索 kind:1动漫 2漫画 3小说 4短剧
|
||||
int? get searchKind => switch (this) {
|
||||
MediaStyle.Cartoon => 1,
|
||||
MediaStyle.Comics => 2,
|
||||
MediaStyle.Drama => 4,
|
||||
_ => null,
|
||||
};
|
||||
}
|
||||
|
||||
//排行榜参数映射
|
||||
extension MediaStyleRankParam on MediaStyle {
|
||||
//榜单 tab 标题
|
||||
String get rankTitle => switch (this) {
|
||||
MediaStyle.Video => '影片',
|
||||
MediaStyle.Cartoon => '动漫',
|
||||
MediaStyle.Comics => '漫画',
|
||||
MediaStyle.Community => '帖子',
|
||||
MediaStyle.Pic => '图集',
|
||||
_ => '',
|
||||
};
|
||||
|
||||
//榜单接口参数
|
||||
String get rankParam => switch (this) {
|
||||
MediaStyle.Video => 'SP',
|
||||
MediaStyle.Cartoon => 'video',
|
||||
MediaStyle.Comics => 'image',
|
||||
MediaStyle.Community => 'COVER',
|
||||
MediaStyle.Pic => 'PIC',
|
||||
_ => '',
|
||||
};
|
||||
}
|
||||
|
||||
//下载缓存 tab 标题
|
||||
extension MediaStyleCacheTitle on MediaStyle {
|
||||
String get cacheTabTitle => switch (this) {
|
||||
MediaStyle.ShortVideo => '抖音',
|
||||
MediaStyle.Cartoon => '动漫',
|
||||
MediaStyle.Drama => '短剧',
|
||||
_ => '影视',
|
||||
};
|
||||
}
|
||||
|
||||
//排序 tab 配置:标题 + 排序值(sort 类型随接口而定:int 或 String,具体配置放各业务 logic)
|
||||
class SortTab<T> {
|
||||
final String name;
|
||||
final T sort;
|
||||
const SortTab(this.name, this.sort);
|
||||
}
|
||||
Reference in New Issue
Block a user