mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-06-08 12:04:50 +08:00
@@ -10,7 +10,7 @@ class SourceModel {
|
||||
final num? size;
|
||||
|
||||
const SourceModel({
|
||||
this.sourceType = SourceType.networkImage,
|
||||
this.sourceType = .networkImage,
|
||||
required this.url,
|
||||
this.liveUrl,
|
||||
this.width,
|
||||
|
||||
@@ -26,9 +26,9 @@ class SegmentModel implements Comparable<SegmentModel> {
|
||||
SkipType skipType;
|
||||
if (config != null) {
|
||||
skipType = config.blockSettings[segmentType.index].second;
|
||||
if (skipType != SkipType.showOnly) {
|
||||
if (skipType != .showOnly) {
|
||||
if (segment.isEq || segment.length < 0) {
|
||||
skipType = SkipType.showOnly;
|
||||
skipType = .showOnly;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -11,9 +11,9 @@ enum SegmentType {
|
||||
'付费推广、推荐和直接广告。不是自我推广或免费提及他们喜欢的商品/创作者/网站/产品。',
|
||||
Color(0xFF00d400),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
ActionType.full,
|
||||
.skip,
|
||||
.mute,
|
||||
.full,
|
||||
],
|
||||
),
|
||||
selfpromo(
|
||||
@@ -22,9 +22,9 @@ enum SegmentType {
|
||||
'类似于 “赞助广告” ,但无报酬或是自我推广。包括有关商品、捐赠的部分或合作者的信息。',
|
||||
Color(0xFFffff00),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
ActionType.full,
|
||||
.skip,
|
||||
.mute,
|
||||
.full,
|
||||
],
|
||||
),
|
||||
exclusive_access(
|
||||
@@ -32,7 +32,7 @@ enum SegmentType {
|
||||
'品牌合作',
|
||||
'仅用于对整个视频进行标记。适用于展示UP主免费或获得补贴后使用的产品、服务或场地的视频。',
|
||||
Color(0xFF008a5c),
|
||||
[ActionType.full],
|
||||
[.full],
|
||||
),
|
||||
interaction(
|
||||
'三连/互动提醒',
|
||||
@@ -40,8 +40,8 @@ enum SegmentType {
|
||||
'视频中间简短提醒观众来一键三连或关注。 如果片段较长,或是有具体内容,则应分类为自我推广。',
|
||||
Color(0xFFcc00ff),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
.skip,
|
||||
.mute,
|
||||
],
|
||||
),
|
||||
poi_highlight(
|
||||
@@ -49,7 +49,7 @@ enum SegmentType {
|
||||
'精彩时刻',
|
||||
'大部分人都在寻找的空降时间。类似于“封面在12:34”的评论。',
|
||||
Color(0xFFff1684),
|
||||
[ActionType.poi],
|
||||
[.poi],
|
||||
),
|
||||
intro(
|
||||
'过场/开场动画',
|
||||
@@ -57,8 +57,8 @@ enum SegmentType {
|
||||
'没有实际内容的间隔片段。可以是暂停、静态帧或重复动画。不适用于包含内容的过场。',
|
||||
Color(0xFF00ffff),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
.skip,
|
||||
.mute,
|
||||
],
|
||||
),
|
||||
outro(
|
||||
@@ -67,8 +67,8 @@ enum SegmentType {
|
||||
'致谢画面或片尾画面。不包含内容的结尾。',
|
||||
Color(0xFF0202ed),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
.skip,
|
||||
.mute,
|
||||
],
|
||||
),
|
||||
preview(
|
||||
@@ -77,8 +77,8 @@ enum SegmentType {
|
||||
'展示此视频或同系列视频将出现的画面集锦,片段中所有内容都将在之后的正片中再次出现。',
|
||||
Color(0xFF008fd6),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
.skip,
|
||||
.mute,
|
||||
],
|
||||
),
|
||||
padding(
|
||||
@@ -86,7 +86,7 @@ enum SegmentType {
|
||||
'填充内容',
|
||||
'搬运视频片头片尾的纯粹填充内容,如黑屏或无关画面,与视频主体内容无实际意义和关联。',
|
||||
Color(0xFF222222),
|
||||
[ActionType.skip],
|
||||
[.skip],
|
||||
),
|
||||
filler(
|
||||
'离题闲聊/玩笑',
|
||||
@@ -94,8 +94,8 @@ enum SegmentType {
|
||||
"仅作为填充内容或增添趣味而添加的离题片段,这些内容对理解视频的主要内容并非必需。这不包括提供背景信息或上下文的片段。这是一个非常激进的分类,适用于当你不想看'娱乐性'内容的时候。",
|
||||
Color(0xFF7300FF),
|
||||
[
|
||||
ActionType.skip,
|
||||
ActionType.mute,
|
||||
.skip,
|
||||
.mute,
|
||||
],
|
||||
),
|
||||
music_offtopic(
|
||||
@@ -103,7 +103,7 @@ enum SegmentType {
|
||||
'非音乐',
|
||||
'仅用于音乐视频。此分类只能用于音乐视频中未包括于其他分类的部分。',
|
||||
Color(0xFFff9900),
|
||||
[ActionType.skip],
|
||||
[.skip],
|
||||
),
|
||||
;
|
||||
|
||||
@@ -125,32 +125,32 @@ enum SegmentType {
|
||||
|
||||
// List<SegmentType> _actionType2SegmentType(ActionType actionType) {
|
||||
// return switch (actionType) {
|
||||
// ActionType.skip => [
|
||||
// SegmentType.sponsor,
|
||||
// SegmentType.selfpromo,
|
||||
// SegmentType.interaction,
|
||||
// SegmentType.intro,
|
||||
// SegmentType.outro,
|
||||
// SegmentType.preview,
|
||||
// SegmentType.filler,
|
||||
// .skip => [
|
||||
// .sponsor,
|
||||
// .selfpromo,
|
||||
// .interaction,
|
||||
// .intro,
|
||||
// .outro,
|
||||
// .preview,
|
||||
// .filler,
|
||||
// ],
|
||||
// ActionType.mute => [
|
||||
// SegmentType.sponsor,
|
||||
// SegmentType.selfpromo,
|
||||
// SegmentType.interaction,
|
||||
// SegmentType.intro,
|
||||
// SegmentType.outro,
|
||||
// SegmentType.preview,
|
||||
// SegmentType.music_offtopic,
|
||||
// SegmentType.filler,
|
||||
// .mute => [
|
||||
// .sponsor,
|
||||
// .selfpromo,
|
||||
// .interaction,
|
||||
// .intro,
|
||||
// .outro,
|
||||
// .preview,
|
||||
// .music_offtopic,
|
||||
// .filler,
|
||||
// ],
|
||||
// ActionType.full => [
|
||||
// SegmentType.sponsor,
|
||||
// SegmentType.selfpromo,
|
||||
// SegmentType.exclusive_access,
|
||||
// .full => [
|
||||
// .sponsor,
|
||||
// .selfpromo,
|
||||
// .exclusive_access,
|
||||
// ],
|
||||
// ActionType.poi => [
|
||||
// SegmentType.poi_highlight,
|
||||
// .poi => [
|
||||
// .poi_highlight,
|
||||
// ],
|
||||
// };
|
||||
// }
|
||||
|
||||
@@ -11,14 +11,14 @@ enum ThemeType {
|
||||
const ThemeType(this.desc);
|
||||
|
||||
ThemeMode get toThemeMode => switch (this) {
|
||||
ThemeType.light => ThemeMode.light,
|
||||
ThemeType.dark => ThemeMode.dark,
|
||||
ThemeType.system => ThemeMode.system,
|
||||
.light => ThemeMode.light,
|
||||
.dark => ThemeMode.dark,
|
||||
.system => ThemeMode.system,
|
||||
};
|
||||
|
||||
Icon get icon => switch (this) {
|
||||
ThemeType.light => const Icon(MdiIcons.weatherSunny),
|
||||
ThemeType.dark => const Icon(MdiIcons.weatherNight),
|
||||
ThemeType.system => const Icon(MdiIcons.themeLightDark),
|
||||
.light => const Icon(MdiIcons.weatherSunny),
|
||||
.dark => const Icon(MdiIcons.weatherNight),
|
||||
.system => const Icon(MdiIcons.themeLightDark),
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user