feat: audio page (#1518)

* feat: audio page

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>

* opt ui

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>

* impl intro, share, fav

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>

* tweaks

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>

* load prev/next

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>

---------

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
dom
2025-10-11 22:16:16 +08:00
committed by GitHub
parent a65edab7d1
commit 16f577f3fd
62 changed files with 49877 additions and 774 deletions

View File

@@ -989,7 +989,7 @@ class DynamicMajorModel {
String? type;
DynamicArchiveModel? courses;
Common? common;
Map? music;
Music? music;
ModuleBlocked? blocked;
Medialist? medialist;
@@ -1025,7 +1025,7 @@ class DynamicMajorModel {
? null
: DynamicArchiveModel.fromJson(json['courses']);
common = json['common'] == null ? null : Common.fromJson(json['common']);
music = json['music'];
music = json['music'] == null ? null : Music.fromJson(json['music']);
blocked = json['blocked'] == null
? null
: ModuleBlocked.fromJson(json['blocked']);
@@ -1038,6 +1038,22 @@ class DynamicMajorModel {
}
}
class Music {
int? id;
String? cover;
String? title;
String? jumpUrl;
String? label;
Music.fromJson(Map<String, dynamic> json) {
id = json['id'];
cover = json['cover'];
title = json['title'];
label = json['label'];
jumpUrl = json['jump_url'];
}
}
class Medialist {
dynamic id;
String? cover;