mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-19 16:46:22 +08:00
* opt: cache * opt: MediaListPanel * feat: nested replyreply panel * tweaks * opt: abstract class * opt: PageStorageKey * opt: contextExt * opt: EpisodePanel * opt * opt: context instead GlobalKey * feat: jump to reply * refa: reply_reply * fix: jump * fix: index * update Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * opt: keepalive * reapply: nested replyreply * mod: spacing * opt: CommonSlidePageState * fix drag bottomsheet Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * opt reply jump Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * opt reply2reply Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * tweaks Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * tweaks Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * reapply: jumpToReply * fix: padding * fix: anim * fix some panels Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> * opt: implements Scaffold * opt: remove keepalive * revert: GlobalKey * tweaks Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me> --------- Co-authored-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
50 lines
1.4 KiB
Dart
50 lines
1.4 KiB
Dart
import 'package:PiliPlus/models/dynamics/result.dart';
|
|
import 'package:PiliPlus/pages/dynamics/widgets/additional_panel.dart';
|
|
import 'package:PiliPlus/pages/dynamics/widgets/blocked_item.dart';
|
|
import 'package:PiliPlus/pages/dynamics/widgets/content_panel.dart';
|
|
import 'package:PiliPlus/pages/dynamics/widgets/module_panel.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
List<Widget> dynContent(
|
|
BuildContext context, {
|
|
required int floor,
|
|
required ThemeData theme,
|
|
required DynamicItemModel item,
|
|
required bool isSave,
|
|
required bool isDetail,
|
|
required double maxWidth,
|
|
}) {
|
|
final moduleDynamic = item.modules.moduleDynamic;
|
|
return [
|
|
if (item.type != 'DYNAMIC_TYPE_NONE')
|
|
content(
|
|
context,
|
|
theme: theme,
|
|
isSave: isSave,
|
|
isDetail: isDetail,
|
|
item: item,
|
|
floor: floor,
|
|
maxWidth: maxWidth,
|
|
),
|
|
module(
|
|
context,
|
|
theme: theme,
|
|
isSave: isSave,
|
|
isDetail: isDetail,
|
|
item: item,
|
|
floor: floor,
|
|
maxWidth: maxWidth,
|
|
),
|
|
if (moduleDynamic?.additional case final additional?)
|
|
addWidget(
|
|
theme: theme,
|
|
context,
|
|
idStr: item.idStr,
|
|
additional: additional,
|
|
floor: floor,
|
|
),
|
|
if (moduleDynamic?.major?.blocked case final blocked?)
|
|
blockedItem(theme: theme, blocked: blocked, maxWidth: maxWidth),
|
|
];
|
|
}
|