mirror of
https://github.com/kodjodevf/mangayomi.git
synced 2026-04-20 19:12:04 +00:00
feat: source-preference
This commit is contained in:
parent
21b6dc437c
commit
10ccd8117c
5 changed files with 12 additions and 11 deletions
|
|
@ -70,7 +70,7 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
BridgeTypeRef(CoreTypes.future, [$MManga.$type])),
|
||||
params: [
|
||||
BridgeParameter(
|
||||
'source', BridgeTypeAnnotation($MManga.$type), false),
|
||||
'source', BridgeTypeAnnotation($MSource.$type), false),
|
||||
BridgeParameter('url',
|
||||
BridgeTypeAnnotation(BridgeTypeRef(CoreTypes.string)), false),
|
||||
])),
|
||||
|
|
@ -80,7 +80,7 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
])),
|
||||
params: [
|
||||
BridgeParameter(
|
||||
'source', BridgeTypeAnnotation($MManga.$type), false),
|
||||
'source', BridgeTypeAnnotation($MSource.$type), false),
|
||||
BridgeParameter('url',
|
||||
BridgeTypeAnnotation(BridgeTypeRef(CoreTypes.string)), false),
|
||||
])),
|
||||
|
|
@ -90,7 +90,7 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
])),
|
||||
params: [
|
||||
BridgeParameter(
|
||||
'source', BridgeTypeAnnotation($MManga.$type), false),
|
||||
'source', BridgeTypeAnnotation($MSource.$type), false),
|
||||
BridgeParameter('url',
|
||||
BridgeTypeAnnotation(BridgeTypeRef(CoreTypes.string)), false),
|
||||
])),
|
||||
|
|
@ -762,8 +762,8 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
.then((value) => $String(value)));
|
||||
}),
|
||||
'getPreferenceValue' => $Function((_, __, List<$Value?> args) {
|
||||
final value = getPreferenceValue(
|
||||
args[1]!.$reified, args[0]!.$reified);
|
||||
final value =
|
||||
getPreferenceValue(args[0]!.$reified, args[1]!.$reified);
|
||||
if (value is String) {
|
||||
return $String(value);
|
||||
} else if (value is bool) {
|
||||
|
|
@ -983,8 +983,8 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
}
|
||||
|
||||
@override
|
||||
List getSourcePreferences() {
|
||||
final res = $_invoke('getSourcePreferences', []);
|
||||
List getSourcePreferences(MSource source) {
|
||||
final res = $_invoke('getSourcePreferences', [$MSource.wrap(source)]);
|
||||
if (res is $List) {
|
||||
return res.$reified;
|
||||
}
|
||||
|
|
@ -1014,6 +1014,7 @@ class $MProvider extends MProvider with $Bridge<MProvider> {
|
|||
: e.audios!
|
||||
.map((t) => $MTrack.wrap(Track(file: t.file, label: t.label)))
|
||||
.toList()));
|
||||
|
||||
_toValueList(List filters) {
|
||||
return (filters).map((e) {
|
||||
if (e is SelectFilter) {
|
||||
|
|
|
|||
|
|
@ -22,5 +22,5 @@ abstract class MProvider {
|
|||
|
||||
List<dynamic> getFilterList();
|
||||
|
||||
List<dynamic> getSourcePreferences();
|
||||
List<dynamic> getSourcePreferences(MSource source);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ class _AnimePlayerViewState extends riv.ConsumerState<AnimePlayerView> {
|
|||
),
|
||||
);
|
||||
}
|
||||
data.$1.sort((a, b) => a.quality.compareTo(b.quality));
|
||||
|
||||
return AnimeStreamPage(
|
||||
episode: widget.episode,
|
||||
videos: data.$1,
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ void setPreferenceSetting(SourcePreference sourcePreference, Source source) {
|
|||
});
|
||||
}
|
||||
|
||||
getPreferenceValue(String key, int sourceId) {
|
||||
getPreferenceValue(int sourceId, String key) {
|
||||
final sourcePreference = getSourcePreferenceEntry(key, sourceId);
|
||||
|
||||
if (sourcePreference.listPreference != null) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ List<SourcePreference> getSourcePreference({required Source source}) {
|
|||
|
||||
var res = runtime.executeLib('package:mangayomi/main.dart', 'main');
|
||||
sourcePreference = (res as MProvider)
|
||||
.getSourcePreferences()
|
||||
.getSourcePreferences(source.toMSource())
|
||||
.map((e) => (e is $Value ? e.$reified : e) as SourcePreference)
|
||||
.toList();
|
||||
} catch (_) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue