Files
PiliPlus/lib/pages/video/reply_search_item/child/controller.dart
dom 525dce989b opt enum
Signed-off-by: dom <githubaccount56556@proton.me>
2026-05-25 12:46:56 +08:00

37 lines
1.2 KiB
Dart

import 'package:PiliPlus/grpc/bilibili/main/community/reply/v1.pb.dart'
show SearchItemReply, SearchItem, SearchItemType;
import 'package:PiliPlus/grpc/reply.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models/common/reply/reply_search_type.dart';
import 'package:PiliPlus/pages/common/common_list_controller.dart';
import 'package:PiliPlus/pages/video/reply_search_item/controller.dart';
class ReplySearchChildController
extends CommonListController<SearchItemReply, SearchItem> {
ReplySearchChildController(this.controller, this.searchType);
final ReplySearchController controller;
final ReplySearchType searchType;
@override
List<SearchItem>? getDataList(SearchItemReply response) {
if (!response.cursor.hasNext) {
isEnd = true;
}
return response.items;
}
@override
Future<LoadingState<SearchItemReply>> customGetData() {
return ReplyGrpc.searchItem(
page: page,
itemType: searchType == .video
? SearchItemType.VIDEO
: SearchItemType.ARTICLE,
oid: controller.oid,
type: controller.type,
keyword: controller.editingController.text,
);
}
}