mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-06-27 12:50:13 +08:00
tweaks (#1142)
* opt: unused layout * mod: semantics * opt: DanmakuMsg type * opt: avoid cast * opt: unnecessary_lambdas * opt: use isEven * opt: logger * opt: invalid common page * tweak * opt: unify DynController
This commit is contained in:
committed by
GitHub
parent
56ffc2781f
commit
5f8313901b
@@ -1,14 +1,15 @@
|
||||
import 'package:flutter/material.dart' show IconData, Icons;
|
||||
|
||||
enum StatType {
|
||||
view(Icons.remove_red_eye_outlined),
|
||||
danmaku(Icons.subtitles_outlined),
|
||||
like(Icons.thumb_up_outlined),
|
||||
reply(Icons.comment_outlined),
|
||||
follow(Icons.favorite_border),
|
||||
play(Icons.play_circle_outlined),
|
||||
listen(Icons.headset_outlined);
|
||||
view(Icons.remove_red_eye_outlined, '观看'),
|
||||
danmaku(Icons.subtitles_outlined, '弹幕'),
|
||||
like(Icons.thumb_up_outlined, '点赞'),
|
||||
reply(Icons.comment_outlined, '评论'),
|
||||
follow(Icons.favorite_border, '关注'),
|
||||
play(Icons.play_circle_outlined, '播放'),
|
||||
listen(Icons.headset_outlined, '播放');
|
||||
|
||||
final IconData iconData;
|
||||
const StatType(this.iconData);
|
||||
final String label;
|
||||
const StatType(this.iconData, this.label);
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ class DynamicItemModel {
|
||||
idStr = json['item']?['id_str'];
|
||||
// type = json['type']; // int
|
||||
if (json['item']?['modules'] case List list) {
|
||||
modules = ItemModulesModel.fromOpusJson(list.cast());
|
||||
modules = ItemModulesModel.fromOpusJson(list);
|
||||
} else {
|
||||
modules = ItemModulesModel();
|
||||
}
|
||||
@@ -181,8 +181,8 @@ class ItemModulesModel {
|
||||
: null;
|
||||
}
|
||||
|
||||
ItemModulesModel.fromOpusJson(List<Map<String, dynamic>> json) {
|
||||
for (var i in json) {
|
||||
ItemModulesModel.fromOpusJson(List json) {
|
||||
for (Map<String, dynamic> i in json) {
|
||||
switch (i['module_type']) {
|
||||
case 'MODULE_TYPE_TOP':
|
||||
moduleTop = i['module_top'] == null
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import 'package:PiliPlus/utils/extension.dart';
|
||||
|
||||
class SimpleVoteInfo {
|
||||
int? choiceCnt;
|
||||
int? defaultShare;
|
||||
@@ -73,7 +75,7 @@ class VoteInfo extends SimpleVoteInfo {
|
||||
title = json['title'];
|
||||
uid = json['vote_publisher'];
|
||||
ctime = json['ctime'];
|
||||
myVotes = (json['my_votes'] as List?)?.cast(); // doVote
|
||||
myVotes = (json['my_votes'] as List?)?.fromCast(); // doVote
|
||||
options =
|
||||
(json['options'] as List?)?.map((v) => Option.fromJson(v)).toList() ??
|
||||
<Option>[];
|
||||
@@ -87,7 +89,7 @@ class VoteInfo extends SimpleVoteInfo {
|
||||
|
||||
factory VoteInfo.fromSeparatedJson(Map<String, dynamic> json) {
|
||||
return VoteInfo.fromJson(json['vote_info'])
|
||||
..myVotes = (json['my_votes'] as List?)?.cast(); // voteInfo
|
||||
..myVotes = (json['my_votes'] as List?)?.fromCast(); // voteInfo
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
|
||||
@@ -425,7 +425,7 @@ class SearchArticleItemModel {
|
||||
subTitle = title.map((e) => e.text).join();
|
||||
rankOffset = json['rank_offset'];
|
||||
mid = json['mid'];
|
||||
imageUrls = (json['image_urls'] as List?)?.cast();
|
||||
imageUrls = (json['image_urls'] as List?)?.fromCast();
|
||||
id = json['id'];
|
||||
categoryId = json['category_id'];
|
||||
view = json['view'];
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'package:PiliPlus/utils/extension.dart';
|
||||
import 'package:hive/hive.dart';
|
||||
|
||||
part 'info.g.dart';
|
||||
|
||||
@@ -25,9 +25,9 @@ class UserInfoDataAdapter extends TypeAdapter<UserInfoData> {
|
||||
mobileVerified: fields[5] as int?,
|
||||
money: fields[6] as double?,
|
||||
moral: fields[7] as int?,
|
||||
official: (fields[8] as Map?)?.cast<dynamic, dynamic>(),
|
||||
officialVerify: (fields[9] as Map?)?.cast<dynamic, dynamic>(),
|
||||
pendant: (fields[10] as Map?)?.cast<dynamic, dynamic>(),
|
||||
official: (fields[8] as Map?)?.fromCast<dynamic, dynamic>(),
|
||||
officialVerify: (fields[9] as Map?)?.fromCast<dynamic, dynamic>(),
|
||||
pendant: (fields[10] as Map?)?.fromCast<dynamic, dynamic>(),
|
||||
scores: fields[11] as int?,
|
||||
uname: fields[12] as String?,
|
||||
vipDueDate: fields[13] as int?,
|
||||
@@ -35,10 +35,10 @@ class UserInfoDataAdapter extends TypeAdapter<UserInfoData> {
|
||||
vipType: fields[15] as int?,
|
||||
vipPayType: fields[16] as int?,
|
||||
vipThemeType: fields[17] as int?,
|
||||
vipLabel: (fields[18] as Map?)?.cast<dynamic, dynamic>(),
|
||||
vipLabel: (fields[18] as Map?)?.fromCast<dynamic, dynamic>(),
|
||||
vipAvatarSub: fields[19] as int?,
|
||||
vipNicknameColor: fields[20] as String?,
|
||||
wallet: (fields[21] as Map?)?.cast<dynamic, dynamic>(),
|
||||
wallet: (fields[21] as Map?)?.fromCast<dynamic, dynamic>(),
|
||||
hasShop: fields[22] as bool?,
|
||||
shopUrl: fields[23] as String?,
|
||||
isSeniorMember: fields[24] as int?,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'package:PiliPlus/models/common/video/audio_quality.dart';
|
||||
import 'package:PiliPlus/models/common/video/video_quality.dart';
|
||||
import 'package:PiliPlus/utils/extension.dart';
|
||||
|
||||
class PlayUrlModel {
|
||||
PlayUrlModel({
|
||||
@@ -172,7 +173,8 @@ abstract class BaseItem {
|
||||
id = json['id'];
|
||||
baseUrl = json['baseUrl'] ?? json['base_url'];
|
||||
final backupUrls =
|
||||
((json['backupUrl'] ?? json['backup_url']) as List?)?.cast<String>() ??
|
||||
((json['backupUrl'] ?? json['backup_url']) as List?)
|
||||
?.fromCast<String>() ??
|
||||
<String>[];
|
||||
backupUrl = backupUrls.isNotEmpty
|
||||
? backupUrls.firstWhere(
|
||||
@@ -248,7 +250,7 @@ class FormatItem {
|
||||
format = json['format'];
|
||||
newDesc = json['new_description'];
|
||||
displayDesc = json['display_desc'];
|
||||
codecs = (json['codecs'] as List?)?.cast<String>();
|
||||
codecs = (json['codecs'] as List?)?.fromCast<String>();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user