feat: search trending page

Closes #684

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-14 22:57:13 +08:00
parent 7cc0c83df1
commit bc9c20c509
14 changed files with 469 additions and 45 deletions

View File

@@ -762,4 +762,6 @@ class Api {
'${HttpString.liveBaseUrl}/xlive/web-ucenter/v2/emoticon/GetEmoticons';
static const String pgcTimeline = '/pgc/web/timeline';
static const String searchTrending = '/x/v2/search/trending/ranking';
}

View File

@@ -1,4 +1,5 @@
import 'dart:convert';
import 'package:PiliPlus/models/search/search_trending/trending_data.dart';
import 'package:PiliPlus/utils/extension.dart';
import 'package:flutter/material.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
@@ -207,4 +208,19 @@ class SearchHttp {
return {'status': false, 'msg': res.data['message']};
}
}
static Future<LoadingState<TrendingData>> searchTrending(
{int limit = 30}) async {
final dynamic res = await Request().get(
Api.searchTrending,
queryParameters: {
'limit': limit,
},
);
if (res.data['code'] == 0) {
return LoadingState.success(TrendingData.fromJson(res.data['data']));
} else {
return LoadingState.error(res.data['message']);
}
}
}