feat: fav topic

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-05-17 21:55:36 +08:00
parent 1d4eabb770
commit d7eb734aaf
55 changed files with 1509 additions and 500 deletions

View File

@@ -450,6 +450,19 @@ class PiliScheme {
return true;
}
return false;
case 'm.bilibili.com':
// bilibili://m.bilibili.com/topic-detail?topic_id=1028161&frommodule=H5&h5awaken=xxx
final id =
RegExp(r'topic_id=(\d+)').firstMatch(uri.query)?.group(1);
if (id != null) {
PageUtils.toDupNamed(
'/dynTopic',
parameters: {'id': id},
off: off,
);
return true;
}
return false;
default:
if (selfHandle.not) {
debugPrint('$uri');
@@ -629,9 +642,10 @@ class PiliScheme {
bool isSeason = id.startsWith('ss');
id = id.substring(2);
PageUtils.viewBangumi(
seasonId: isSeason ? id : null,
epId: isSeason ? null : id,
progress: uri.queryParameters['start_progress']);
seasonId: isSeason ? id : null,
epId: isSeason ? null : id,
progress: uri.queryParameters['start_progress'],
);
return true;
}
launchURL();
@@ -658,7 +672,11 @@ class PiliScheme {
.firstMatch(path)
?.group(1);
if (id != null) {
Get.toNamed('/articleList', parameters: {'id': id});
PageUtils.toDupNamed(
'/articleList',
parameters: {'id': id},
off: off,
);
return true;
}
launchURL();
@@ -707,6 +725,18 @@ class PiliScheme {
}
launchURL();
return false;
case 'topic-detail':
String? id = RegExp(r'topic_id=(\d+)').firstMatch(uri.query)?.group(1);
if (id != null) {
PageUtils.toDupNamed(
'/dynTopic',
parameters: {'id': id},
off: off,
);
return true;
}
launchURL();
return false;
default:
Map map = IdUtils.matchAvorBv(input: area?.split('?').first);
if (map.isNotEmpty) {