refa: whisper page

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-05-06 21:38:46 +08:00
parent 661e7bfa78
commit b19c718a2a
30 changed files with 8764 additions and 193 deletions

View File

@@ -6,6 +6,7 @@ import 'package:PiliPlus/common/widgets/progress_bar/video_progress_indicator.da
import 'package:PiliPlus/common/widgets/stat/stat.dart';
import 'package:PiliPlus/common/widgets/video_popup_menu.dart';
import 'package:PiliPlus/http/search.dart';
import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/model_hot_video_item.dart';
import 'package:PiliPlus/models/model_video.dart';
import 'package:PiliPlus/models/search/result.dart';
@@ -158,7 +159,7 @@ class VideoCardH extends StatelessWidget {
: '${Utils.timeFormat(progress)}/${Utils.timeFormat(videoItem.duration)}',
right: 6,
bottom: 8,
type: 'gray',
type: PBadgeType.gray,
),
Positioned(
left: 0,
@@ -175,14 +176,14 @@ class VideoCardH extends StatelessWidget {
text: Utils.timeFormat(videoItem.duration),
right: 6.0,
bottom: 6.0,
type: 'gray',
type: PBadgeType.gray,
),
if (type != 'video')
PBadge(
text: type,
left: 6.0,
bottom: 6.0,
type: 'primary',
type: PBadgeType.primary,
),
],
);

View File

@@ -5,6 +5,7 @@ import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/common/widgets/progress_bar/video_progress_indicator.dart';
import 'package:PiliPlus/common/widgets/stat/stat.dart';
import 'package:PiliPlus/common/widgets/video_popup_menu.dart';
import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/space_archive/item.dart';
import 'package:PiliPlus/utils/page_utils.dart';
import 'package:PiliPlus/utils/utils.dart';
@@ -112,8 +113,8 @@ class VideoCardHMemberVideo extends StatelessWidget {
right: 6.0,
top: 6.0,
type: videoItem.badges!.first.text == '充电专属'
? 'error'
: 'primary',
? PBadgeType.error
: PBadgeType.primary,
),
if (videoItem.history != null) ...[
Builder(builder: (context) {
@@ -140,7 +141,7 @@ class VideoCardHMemberVideo extends StatelessWidget {
: '${Utils.timeFormat(videoItem.history!['progress'])}/${Utils.timeFormat(videoItem.history!['duration'])}',
right: 6.0,
bottom: 6.0,
type: 'gray',
type: PBadgeType.gray,
);
} catch (_) {
return PBadge(
@@ -148,7 +149,7 @@ class VideoCardHMemberVideo extends StatelessWidget {
Utils.timeFormat(videoItem.duration),
right: 6.0,
bottom: 6.0,
type: 'gray',
type: PBadgeType.gray,
);
}
}),
@@ -157,7 +158,7 @@ class VideoCardHMemberVideo extends StatelessWidget {
text: Utils.timeFormat(videoItem.duration),
right: 6.0,
bottom: 6.0,
type: 'gray',
type: PBadgeType.gray,
),
],
);

View File

@@ -5,6 +5,7 @@ import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/common/widgets/stat/stat.dart';
import 'package:PiliPlus/common/widgets/video_popup_menu.dart';
import 'package:PiliPlus/http/search.dart';
import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/home/rcmd/result.dart';
import 'package:PiliPlus/models/model_rec_video_item.dart';
import 'package:PiliPlus/utils/app_scheme.dart';
@@ -127,8 +128,8 @@ class VideoCardV extends StatelessWidget {
PBadge(
bottom: 6,
right: 7,
size: 'small',
type: 'gray',
size: PBadgeSize.small,
type: PBadgeType.gray,
text: Utils.timeFormat(videoItem.duration),
)
],
@@ -180,38 +181,38 @@ class VideoCardV extends StatelessWidget {
if (videoItem.goto == 'bangumi') ...[
PBadge(
text: videoItem.bangumiBadge,
stack: 'normal',
size: 'small',
type: 'line',
fs: 9,
isStack: false,
size: PBadgeSize.small,
type: PBadgeType.line_primary,
fontSize: 9,
),
const SizedBox(width: 2),
],
if (videoItem.rcmdReason != null) ...[
PBadge(
text: videoItem.rcmdReason,
stack: 'normal',
size: 'small',
type: 'color',
isStack: false,
size: PBadgeSize.small,
type: PBadgeType.secondary,
),
const SizedBox(width: 2),
],
if (videoItem.goto == 'picture') ...[
const PBadge(
text: '动态',
stack: 'normal',
size: 'small',
type: 'line',
fs: 9,
isStack: false,
size: PBadgeSize.small,
type: PBadgeType.line_primary,
fontSize: 9,
),
const SizedBox(width: 2),
],
if (videoItem.isFollowed) ...[
const PBadge(
text: '已关注',
stack: 'normal',
size: 'small',
type: 'color',
isStack: false,
size: PBadgeSize.small,
type: PBadgeType.secondary,
),
const SizedBox(width: 2),
],

View File

@@ -3,6 +3,7 @@ import 'package:PiliPlus/common/widgets/badge.dart';
import 'package:PiliPlus/common/widgets/image/image_save.dart';
import 'package:PiliPlus/common/widgets/image/network_img_layer.dart';
import 'package:PiliPlus/http/search.dart';
import 'package:PiliPlus/models/common/badge_type.dart';
import 'package:PiliPlus/models/space/item.dart';
import 'package:PiliPlus/utils/app_scheme.dart';
import 'package:PiliPlus/utils/id_utils.dart';
@@ -85,8 +86,8 @@ class VideoCardVMemberHome extends StatelessWidget {
PBadge(
bottom: 6,
right: 7,
size: 'small',
type: 'gray',
size: PBadgeSize.small,
type: PBadgeType.gray,
text: Utils.timeFormat(videoItem.duration),
)
],