mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-23 02:26:52 +08:00
feat: live dm block
Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
16
lib/models_new/live/live_dm_block/data.dart
Normal file
16
lib/models_new/live/live_dm_block/data.dart
Normal file
@@ -0,0 +1,16 @@
|
||||
import 'package:PiliPlus/models_new/live/live_dm_block/shield_info.dart';
|
||||
|
||||
class LiveDmBlockData {
|
||||
ShieldInfo? shieldInfo;
|
||||
|
||||
LiveDmBlockData({
|
||||
this.shieldInfo,
|
||||
});
|
||||
|
||||
factory LiveDmBlockData.fromJson(Map<String, dynamic> json) =>
|
||||
LiveDmBlockData(
|
||||
shieldInfo: json['shield_info'] == null
|
||||
? null
|
||||
: ShieldInfo.fromJson(json['shield_info'] as Map<String, dynamic>),
|
||||
);
|
||||
}
|
||||
31
lib/models_new/live/live_dm_block/shield_info.dart
Normal file
31
lib/models_new/live/live_dm_block/shield_info.dart
Normal file
@@ -0,0 +1,31 @@
|
||||
import 'package:PiliPlus/models_new/live/live_dm_block/shield_rules.dart';
|
||||
import 'package:PiliPlus/models_new/live/live_dm_block/shield_user_list.dart';
|
||||
|
||||
class ShieldInfo {
|
||||
List<ShieldUserList>? shieldUserList;
|
||||
List<String>? keywordList;
|
||||
ShieldRules? shieldRules;
|
||||
bool? isBlock;
|
||||
int? blockExpired;
|
||||
|
||||
ShieldInfo({
|
||||
this.shieldUserList,
|
||||
this.keywordList,
|
||||
this.shieldRules,
|
||||
this.isBlock,
|
||||
this.blockExpired,
|
||||
});
|
||||
|
||||
factory ShieldInfo.fromJson(Map<String, dynamic> json) => ShieldInfo(
|
||||
shieldUserList: (json['shield_user_list'] as List<dynamic>?)
|
||||
?.map((e) => ShieldUserList.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
keywordList: (json['keyword_list'] as List?)?.cast(),
|
||||
shieldRules: json['shield_rules'] == null
|
||||
? null
|
||||
: ShieldRules.fromJson(
|
||||
json['shield_rules'] as Map<String, dynamic>),
|
||||
isBlock: json['is_block'] as bool?,
|
||||
blockExpired: json['block_expired'] as int?,
|
||||
);
|
||||
}
|
||||
13
lib/models_new/live/live_dm_block/shield_rules.dart
Normal file
13
lib/models_new/live/live_dm_block/shield_rules.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class ShieldRules {
|
||||
int rank;
|
||||
int verify;
|
||||
int level;
|
||||
|
||||
ShieldRules({this.rank = 0, this.verify = 0, this.level = 0});
|
||||
|
||||
factory ShieldRules.fromJson(Map<String, dynamic> json) => ShieldRules(
|
||||
rank: json['rank'] as int? ?? 0,
|
||||
verify: json['verify'] as int? ?? 0,
|
||||
level: json['level'] as int? ?? 0,
|
||||
);
|
||||
}
|
||||
13
lib/models_new/live/live_dm_block/shield_user_list.dart
Normal file
13
lib/models_new/live/live_dm_block/shield_user_list.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class ShieldUserList {
|
||||
int? uid;
|
||||
String? uname;
|
||||
|
||||
ShieldUserList({this.uid, this.uname});
|
||||
|
||||
factory ShieldUserList.fromJson(Map<String, dynamic> json) {
|
||||
return ShieldUserList(
|
||||
uid: json['uid'] as int?,
|
||||
uname: json['uname'] as String?,
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user