mirror of
https://github.com/K3vinb5/Unyo.git
synced 2026-06-13 05:49:42 +00:00
rewrite: Progress on the Extensions Screen
This commit is contained in:
@@ -3,4 +3,4 @@ root = true
|
||||
[*.dart]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
max_line_length = 140
|
||||
max_line_length = 110
|
||||
|
||||
@@ -1,16 +1,37 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:logger/logger.dart';
|
||||
import 'package:unyo/application/cubits/effect_mixin.dart';
|
||||
import 'package:unyo/application/effects/app_effects.dart';
|
||||
import 'package:unyo/application/states/extensions_state.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:unyo/core/di/locator.dart';
|
||||
import 'package:unyo/core/notification/user_notifier.dart';
|
||||
import 'package:unyo/core/services/api/http/http_exception.dart';
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
import 'package:unyo/domain/entities/user.dart';
|
||||
import 'package:unyo/domain/repositories/extension_repository.dart';
|
||||
|
||||
class ExtensionsCubit extends Cubit<ExtensionsState> with EffectMixin<ExtensionsState> {
|
||||
final Logger _logger = sl<Logger>();
|
||||
|
||||
ExtensionsCubit() : super(
|
||||
const ExtensionsState(),
|
||||
) {
|
||||
// Repositories
|
||||
final ExtensionRepository _extensionRepositoryAniyomi;
|
||||
|
||||
// Notifiers
|
||||
final UserNotifier _loggedUserNotifier;
|
||||
late StreamSubscription<User> _loggedUserSubscription;
|
||||
|
||||
ExtensionsCubit(this._extensionRepositoryAniyomi, this._loggedUserNotifier)
|
||||
: super(
|
||||
ExtensionsState(
|
||||
loggedUser: UserModel.empty(),
|
||||
installedAnimeExtensions: [],
|
||||
installedMangaExtensions: [],
|
||||
availableAnimeExtensions: [],
|
||||
availableMangaExtensions: [],
|
||||
),
|
||||
) {
|
||||
_init();
|
||||
}
|
||||
|
||||
@@ -22,7 +43,58 @@ class ExtensionsCubit extends Cubit<ExtensionsState> with EffectMixin<Extensions
|
||||
@override
|
||||
Logger get logger => _logger;
|
||||
|
||||
void _init() {
|
||||
@override
|
||||
Future<void> close() {
|
||||
_loggedUserSubscription.cancel();
|
||||
return super.close();
|
||||
}
|
||||
|
||||
}
|
||||
void _init() {
|
||||
_loggedUserSubscription = _loggedUserNotifier.userStream.listen((loggedUser) {
|
||||
_fetchAvailableAnimeExtensions(loggedUser);
|
||||
_fetchAvailableMangaExtensions(loggedUser);
|
||||
emit(state.copyWith(
|
||||
loggedUser: loggedUser
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
Future<void> _fetchAvailableAnimeExtensions(User loggedUser) async {
|
||||
try {
|
||||
_logger.i("Fetching available anime extensions for Aniyomi");
|
||||
Set<Extension> availableAniyomiExtensions = await _extensionRepositoryAniyomi
|
||||
.getAvailableAnimeExtensions(loggedUser);
|
||||
emit(state.copyWith(
|
||||
availableAnimeExtensions: availableAniyomiExtensions.toList()
|
||||
));
|
||||
} on HttpServerException catch (e, stackTrace) {
|
||||
handleError(
|
||||
"Failed to fetch available anime extensions:",
|
||||
responseBody: e.message,
|
||||
stackTrace: stackTrace,
|
||||
);
|
||||
} catch (e, stackTrace) {
|
||||
handleError("Failed to fetch available anime extensions $e", stackTrace: stackTrace);
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _fetchAvailableMangaExtensions(User loggedUser) async {
|
||||
try {
|
||||
_logger.i("Fetching available manga extensions for Aniyomi");
|
||||
Set<Extension> availableTachiyomiExtensions = await _extensionRepositoryAniyomi
|
||||
.getAvailableMangaExtensions(loggedUser);
|
||||
emit(state.copyWith(
|
||||
availableMangaExtensions: availableTachiyomiExtensions.toList()
|
||||
));
|
||||
} on HttpServerException catch (e, stackTrace) {
|
||||
handleError(
|
||||
"Failed to fetch available manga extensions:",
|
||||
responseBody: e.message,
|
||||
stackTrace: stackTrace,
|
||||
);
|
||||
} catch (e, stackTrace) {
|
||||
handleError("Failed to fetch available manga extensions $e", stackTrace: stackTrace);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,12 +1,19 @@
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
import 'package:unyo/application/cubits/effect_mixin.dart';
|
||||
import 'package:unyo/application/effects/app_effects.dart';
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
import 'package:unyo/domain/entities/user.dart';
|
||||
|
||||
part 'extensions_state.freezed.dart';
|
||||
|
||||
@freezed
|
||||
abstract class ExtensionsState with _$ExtensionsState implements HasEffects{
|
||||
const factory ExtensionsState({
|
||||
required User loggedUser,
|
||||
required List<Extension> installedAnimeExtensions,
|
||||
required List<Extension> installedMangaExtensions,
|
||||
required List<Extension> availableAnimeExtensions,
|
||||
required List<Extension> availableMangaExtensions,
|
||||
@Default(<AppEffect>[]) List<AppEffect> effects,
|
||||
}) = _ExtensionsState;
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ T _$identity<T>(T value) => value;
|
||||
/// @nodoc
|
||||
mixin _$ExtensionsState {
|
||||
|
||||
List<AppEffect> get effects;
|
||||
User get loggedUser; List<Extension> get installedAnimeExtensions; List<Extension> get installedMangaExtensions; List<Extension> get availableAnimeExtensions; List<Extension> get availableMangaExtensions; List<AppEffect> get effects;
|
||||
/// Create a copy of ExtensionsState
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@@ -25,16 +25,16 @@ $ExtensionsStateCopyWith<ExtensionsState> get copyWith => _$ExtensionsStateCopyW
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is ExtensionsState&&const DeepCollectionEquality().equals(other.effects, effects));
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is ExtensionsState&&(identical(other.loggedUser, loggedUser) || other.loggedUser == loggedUser)&&const DeepCollectionEquality().equals(other.installedAnimeExtensions, installedAnimeExtensions)&&const DeepCollectionEquality().equals(other.installedMangaExtensions, installedMangaExtensions)&&const DeepCollectionEquality().equals(other.availableAnimeExtensions, availableAnimeExtensions)&&const DeepCollectionEquality().equals(other.availableMangaExtensions, availableMangaExtensions)&&const DeepCollectionEquality().equals(other.effects, effects));
|
||||
}
|
||||
|
||||
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,const DeepCollectionEquality().hash(effects));
|
||||
int get hashCode => Object.hash(runtimeType,loggedUser,const DeepCollectionEquality().hash(installedAnimeExtensions),const DeepCollectionEquality().hash(installedMangaExtensions),const DeepCollectionEquality().hash(availableAnimeExtensions),const DeepCollectionEquality().hash(availableMangaExtensions),const DeepCollectionEquality().hash(effects));
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'ExtensionsState(effects: $effects)';
|
||||
return 'ExtensionsState(loggedUser: $loggedUser, installedAnimeExtensions: $installedAnimeExtensions, installedMangaExtensions: $installedMangaExtensions, availableAnimeExtensions: $availableAnimeExtensions, availableMangaExtensions: $availableMangaExtensions, effects: $effects)';
|
||||
}
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ abstract mixin class $ExtensionsStateCopyWith<$Res> {
|
||||
factory $ExtensionsStateCopyWith(ExtensionsState value, $Res Function(ExtensionsState) _then) = _$ExtensionsStateCopyWithImpl;
|
||||
@useResult
|
||||
$Res call({
|
||||
List<AppEffect> effects
|
||||
User loggedUser, List<Extension> installedAnimeExtensions, List<Extension> installedMangaExtensions, List<Extension> availableAnimeExtensions, List<Extension> availableMangaExtensions, List<AppEffect> effects
|
||||
});
|
||||
|
||||
|
||||
@@ -62,9 +62,14 @@ class _$ExtensionsStateCopyWithImpl<$Res>
|
||||
|
||||
/// Create a copy of ExtensionsState
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@pragma('vm:prefer-inline') @override $Res call({Object? effects = null,}) {
|
||||
@pragma('vm:prefer-inline') @override $Res call({Object? loggedUser = null,Object? installedAnimeExtensions = null,Object? installedMangaExtensions = null,Object? availableAnimeExtensions = null,Object? availableMangaExtensions = null,Object? effects = null,}) {
|
||||
return _then(_self.copyWith(
|
||||
effects: null == effects ? _self.effects : effects // ignore: cast_nullable_to_non_nullable
|
||||
loggedUser: null == loggedUser ? _self.loggedUser : loggedUser // ignore: cast_nullable_to_non_nullable
|
||||
as User,installedAnimeExtensions: null == installedAnimeExtensions ? _self.installedAnimeExtensions : installedAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,installedMangaExtensions: null == installedMangaExtensions ? _self.installedMangaExtensions : installedMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,availableAnimeExtensions: null == availableAnimeExtensions ? _self.availableAnimeExtensions : availableAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,availableMangaExtensions: null == availableMangaExtensions ? _self.availableMangaExtensions : availableMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,effects: null == effects ? _self.effects : effects // ignore: cast_nullable_to_non_nullable
|
||||
as List<AppEffect>,
|
||||
));
|
||||
}
|
||||
@@ -150,10 +155,10 @@ return $default(_that);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( List<AppEffect> effects)? $default,{required TResult orElse(),}) {final _that = this;
|
||||
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function( User loggedUser, List<Extension> installedAnimeExtensions, List<Extension> installedMangaExtensions, List<Extension> availableAnimeExtensions, List<Extension> availableMangaExtensions, List<AppEffect> effects)? $default,{required TResult orElse(),}) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionsState() when $default != null:
|
||||
return $default(_that.effects);case _:
|
||||
return $default(_that.loggedUser,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.availableAnimeExtensions,_that.availableMangaExtensions,_that.effects);case _:
|
||||
return orElse();
|
||||
|
||||
}
|
||||
@@ -171,10 +176,10 @@ return $default(_that.effects);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( List<AppEffect> effects) $default,) {final _that = this;
|
||||
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function( User loggedUser, List<Extension> installedAnimeExtensions, List<Extension> installedMangaExtensions, List<Extension> availableAnimeExtensions, List<Extension> availableMangaExtensions, List<AppEffect> effects) $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionsState():
|
||||
return $default(_that.effects);case _:
|
||||
return $default(_that.loggedUser,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.availableAnimeExtensions,_that.availableMangaExtensions,_that.effects);case _:
|
||||
throw StateError('Unexpected subclass');
|
||||
|
||||
}
|
||||
@@ -191,10 +196,10 @@ return $default(_that.effects);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( List<AppEffect> effects)? $default,) {final _that = this;
|
||||
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function( User loggedUser, List<Extension> installedAnimeExtensions, List<Extension> installedMangaExtensions, List<Extension> availableAnimeExtensions, List<Extension> availableMangaExtensions, List<AppEffect> effects)? $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionsState() when $default != null:
|
||||
return $default(_that.effects);case _:
|
||||
return $default(_that.loggedUser,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.availableAnimeExtensions,_that.availableMangaExtensions,_that.effects);case _:
|
||||
return null;
|
||||
|
||||
}
|
||||
@@ -206,9 +211,38 @@ return $default(_that.effects);case _:
|
||||
|
||||
|
||||
class _ExtensionsState extends ExtensionsState {
|
||||
const _ExtensionsState({final List<AppEffect> effects = const <AppEffect>[]}): _effects = effects,super._();
|
||||
const _ExtensionsState({required this.loggedUser, required final List<Extension> installedAnimeExtensions, required final List<Extension> installedMangaExtensions, required final List<Extension> availableAnimeExtensions, required final List<Extension> availableMangaExtensions, final List<AppEffect> effects = const <AppEffect>[]}): _installedAnimeExtensions = installedAnimeExtensions,_installedMangaExtensions = installedMangaExtensions,_availableAnimeExtensions = availableAnimeExtensions,_availableMangaExtensions = availableMangaExtensions,_effects = effects,super._();
|
||||
|
||||
|
||||
@override final User loggedUser;
|
||||
final List<Extension> _installedAnimeExtensions;
|
||||
@override List<Extension> get installedAnimeExtensions {
|
||||
if (_installedAnimeExtensions is EqualUnmodifiableListView) return _installedAnimeExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_installedAnimeExtensions);
|
||||
}
|
||||
|
||||
final List<Extension> _installedMangaExtensions;
|
||||
@override List<Extension> get installedMangaExtensions {
|
||||
if (_installedMangaExtensions is EqualUnmodifiableListView) return _installedMangaExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_installedMangaExtensions);
|
||||
}
|
||||
|
||||
final List<Extension> _availableAnimeExtensions;
|
||||
@override List<Extension> get availableAnimeExtensions {
|
||||
if (_availableAnimeExtensions is EqualUnmodifiableListView) return _availableAnimeExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_availableAnimeExtensions);
|
||||
}
|
||||
|
||||
final List<Extension> _availableMangaExtensions;
|
||||
@override List<Extension> get availableMangaExtensions {
|
||||
if (_availableMangaExtensions is EqualUnmodifiableListView) return _availableMangaExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_availableMangaExtensions);
|
||||
}
|
||||
|
||||
final List<AppEffect> _effects;
|
||||
@override@JsonKey() List<AppEffect> get effects {
|
||||
if (_effects is EqualUnmodifiableListView) return _effects;
|
||||
@@ -227,16 +261,16 @@ _$ExtensionsStateCopyWith<_ExtensionsState> get copyWith => __$ExtensionsStateCo
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is _ExtensionsState&&const DeepCollectionEquality().equals(other._effects, _effects));
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is _ExtensionsState&&(identical(other.loggedUser, loggedUser) || other.loggedUser == loggedUser)&&const DeepCollectionEquality().equals(other._installedAnimeExtensions, _installedAnimeExtensions)&&const DeepCollectionEquality().equals(other._installedMangaExtensions, _installedMangaExtensions)&&const DeepCollectionEquality().equals(other._availableAnimeExtensions, _availableAnimeExtensions)&&const DeepCollectionEquality().equals(other._availableMangaExtensions, _availableMangaExtensions)&&const DeepCollectionEquality().equals(other._effects, _effects));
|
||||
}
|
||||
|
||||
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,const DeepCollectionEquality().hash(_effects));
|
||||
int get hashCode => Object.hash(runtimeType,loggedUser,const DeepCollectionEquality().hash(_installedAnimeExtensions),const DeepCollectionEquality().hash(_installedMangaExtensions),const DeepCollectionEquality().hash(_availableAnimeExtensions),const DeepCollectionEquality().hash(_availableMangaExtensions),const DeepCollectionEquality().hash(_effects));
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'ExtensionsState(effects: $effects)';
|
||||
return 'ExtensionsState(loggedUser: $loggedUser, installedAnimeExtensions: $installedAnimeExtensions, installedMangaExtensions: $installedMangaExtensions, availableAnimeExtensions: $availableAnimeExtensions, availableMangaExtensions: $availableMangaExtensions, effects: $effects)';
|
||||
}
|
||||
|
||||
|
||||
@@ -247,7 +281,7 @@ abstract mixin class _$ExtensionsStateCopyWith<$Res> implements $ExtensionsState
|
||||
factory _$ExtensionsStateCopyWith(_ExtensionsState value, $Res Function(_ExtensionsState) _then) = __$ExtensionsStateCopyWithImpl;
|
||||
@override @useResult
|
||||
$Res call({
|
||||
List<AppEffect> effects
|
||||
User loggedUser, List<Extension> installedAnimeExtensions, List<Extension> installedMangaExtensions, List<Extension> availableAnimeExtensions, List<Extension> availableMangaExtensions, List<AppEffect> effects
|
||||
});
|
||||
|
||||
|
||||
@@ -264,9 +298,14 @@ class __$ExtensionsStateCopyWithImpl<$Res>
|
||||
|
||||
/// Create a copy of ExtensionsState
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@override @pragma('vm:prefer-inline') $Res call({Object? effects = null,}) {
|
||||
@override @pragma('vm:prefer-inline') $Res call({Object? loggedUser = null,Object? installedAnimeExtensions = null,Object? installedMangaExtensions = null,Object? availableAnimeExtensions = null,Object? availableMangaExtensions = null,Object? effects = null,}) {
|
||||
return _then(_ExtensionsState(
|
||||
effects: null == effects ? _self._effects : effects // ignore: cast_nullable_to_non_nullable
|
||||
loggedUser: null == loggedUser ? _self.loggedUser : loggedUser // ignore: cast_nullable_to_non_nullable
|
||||
as User,installedAnimeExtensions: null == installedAnimeExtensions ? _self._installedAnimeExtensions : installedAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,installedMangaExtensions: null == installedMangaExtensions ? _self._installedMangaExtensions : installedMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,availableAnimeExtensions: null == availableAnimeExtensions ? _self._availableAnimeExtensions : availableAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,availableMangaExtensions: null == availableMangaExtensions ? _self._availableMangaExtensions : availableMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,effects: null == effects ? _self._effects : effects // ignore: cast_nullable_to_non_nullable
|
||||
as List<AppEffect>,
|
||||
));
|
||||
}
|
||||
|
||||
@@ -21,5 +21,8 @@ const Set<String> cacheDisabledEndpoints = <String>{
|
||||
const Set<String> cacheIgnoredHeaders = <String>{
|
||||
'Authorization'
|
||||
};
|
||||
// Extensions condiguration
|
||||
const String aniyomiExtensionsRepositoryUrl = 'https://gitea.k3vinb5.dev/Backups/kohi-den-extensions/raw/branch/main/index.min.json';
|
||||
const String tachiyomiExtensionsRepositoryUrl = 'https://gitea.k3vinb5.dev/Backups/keiyoushi-extensions/raw/branch/repo/index.min.json';
|
||||
// TODO move to an asset
|
||||
const plusImageUrl = "https://i.ibb.co/Kj8CQZH/cross.png";
|
||||
@@ -27,6 +27,7 @@ import 'package:unyo/core/theme/color_image_service.dart';
|
||||
import 'package:unyo/core/theme/theme_service.dart';
|
||||
import 'package:unyo/data/repositories/anime_repository_anilist.dart';
|
||||
import 'package:unyo/data/repositories/episode_repository_anizip.dart';
|
||||
import 'package:unyo/data/repositories/extension_repository_aniyomi.dart';
|
||||
import 'package:unyo/data/repositories/manga_repository_anilist.dart';
|
||||
import 'package:unyo/data/repositories/repositories.dart';
|
||||
import 'package:unyo/application/cubits/home_cubit.dart';
|
||||
@@ -83,6 +84,7 @@ void setupLocator() {
|
||||
sl.registerLazySingleton<EpisodeRepositoryAnizip>(
|
||||
() => EpisodeRepositoryAnizip(),
|
||||
);
|
||||
sl.registerLazySingleton<ExtensionRepositoryAniyomi>(() => ExtensionRepositoryAniyomi());
|
||||
|
||||
// Cubits / Blocs
|
||||
sl.registerFactory<LoginCubit>(
|
||||
@@ -125,7 +127,10 @@ void setupLocator() {
|
||||
sl<UserNotifier>(instanceName: config.loggedUserNotifier),
|
||||
),
|
||||
);
|
||||
sl.registerFactory<ExtensionsCubit>(() => ExtensionsCubit());
|
||||
sl.registerFactory<ExtensionsCubit>(() => ExtensionsCubit(
|
||||
sl<ExtensionRepositoryAniyomi>(),
|
||||
sl<UserNotifier>(instanceName: config.loggedUserNotifier),
|
||||
));
|
||||
sl.registerFactory<MediaListCubit>(
|
||||
() => MediaListCubit(
|
||||
sl<UserNotifier>(instanceName: config.loggedUserNotifier),
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
import 'package:unyo/generated/json/base/json_field.dart';
|
||||
import 'package:unyo/generated/json/aniyomi_repo_json_entity.g.dart';
|
||||
import 'dart:convert';
|
||||
export 'package:unyo/generated/json/aniyomi_repo_json_entity.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class AniyomiRepoJsonEntity {
|
||||
late String name = '';
|
||||
late String pkg = '';
|
||||
late String apk = '';
|
||||
late String lang = '';
|
||||
late double code;
|
||||
late String version = '';
|
||||
late double nsfw;
|
||||
late List<AniyomiRepoJsonSources> sources = [];
|
||||
|
||||
AniyomiRepoJsonEntity();
|
||||
|
||||
factory AniyomiRepoJsonEntity.fromJson(Map<String, dynamic> json) => $AniyomiRepoJsonEntityFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => $AniyomiRepoJsonEntityToJson(this);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return jsonEncode(this);
|
||||
}
|
||||
}
|
||||
|
||||
@JsonSerializable()
|
||||
class AniyomiRepoJsonSources {
|
||||
late String name = '';
|
||||
late String lang = '';
|
||||
late String id = '';
|
||||
late String baseUrl = '';
|
||||
|
||||
AniyomiRepoJsonSources();
|
||||
|
||||
factory AniyomiRepoJsonSources.fromJson(Map<String, dynamic> json) => $AniyomiRepoJsonSourcesFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => $AniyomiRepoJsonSourcesToJson(this);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return jsonEncode(this);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
import 'package:unyo/generated/json/base/json_field.dart';
|
||||
import 'package:unyo/generated/json/tachiyomi_repo_json_entity.g.dart';
|
||||
import 'dart:convert';
|
||||
export 'package:unyo/generated/json/tachiyomi_repo_json_entity.g.dart';
|
||||
|
||||
@JsonSerializable()
|
||||
class TachiyomiRepoJsonEntity {
|
||||
late String name = '';
|
||||
late String pkg = '';
|
||||
late String apk = '';
|
||||
late String lang = '';
|
||||
late double code;
|
||||
late String version = '';
|
||||
late double nsfw;
|
||||
late List<TachiyomiRepoJsonSources> sources = [];
|
||||
|
||||
TachiyomiRepoJsonEntity();
|
||||
|
||||
factory TachiyomiRepoJsonEntity.fromJson(Map<String, dynamic> json) => $TachiyomiRepoJsonEntityFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => $TachiyomiRepoJsonEntityToJson(this);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return jsonEncode(this);
|
||||
}
|
||||
}
|
||||
|
||||
@JsonSerializable()
|
||||
class TachiyomiRepoJsonSources {
|
||||
late String name = '';
|
||||
late String lang = '';
|
||||
late String id = '';
|
||||
late String baseUrl = '';
|
||||
|
||||
TachiyomiRepoJsonSources();
|
||||
|
||||
factory TachiyomiRepoJsonSources.fromJson(Map<String, dynamic> json) => $TachiyomiRepoJsonSourcesFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => $TachiyomiRepoJsonSourcesToJson(this);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return jsonEncode(this);
|
||||
}
|
||||
}
|
||||
@@ -232,6 +232,14 @@ class HttpService {
|
||||
final status = response.statusCode;
|
||||
if (status >= 200 && status < 300) {
|
||||
_logger.d("Response from server is successful with status code $status");
|
||||
if (json.decode(response.body) is List<dynamic>) {
|
||||
final jsonList = json.decode(response.body) as List<dynamic>;
|
||||
return ApiResponse(
|
||||
data: fromJson({'list': jsonList}),
|
||||
statusCode: status,
|
||||
headers: response.headers
|
||||
);
|
||||
}
|
||||
final jsonMap = json.decode(response.body) as Map<String, dynamic>;
|
||||
return ApiResponse(
|
||||
data: fromJson(jsonMap),
|
||||
|
||||
@@ -4,4 +4,5 @@ const settingsModelAdapterName = 'SettingsModelAdapter';
|
||||
const serviceEnumAdapterName = 'ServiceEnumAdapter';
|
||||
const anilistAnimeDetailsModelAdapterName = 'AnimeProgressModelAdapter';
|
||||
const mediaListModelAdapterName = 'MediaListModelAdapter';
|
||||
const episodeServiceEnumAdapterName = 'EpisodeServiceEnumAdapter';
|
||||
const episodeServiceEnumAdapterName = 'EpisodeServiceEnumAdapter';
|
||||
const extensionModelAdapterName = 'ExtensionModelAdapter';
|
||||
@@ -4,4 +4,5 @@ const settingsAdapterType = 2;
|
||||
const serviceAdapterType = 3;
|
||||
const anilistAnimeDetailsAdapterType = 4;
|
||||
const mediaListAdapterType = 5;
|
||||
const episodeServiceAdapterType = 6;
|
||||
const episodeServiceAdapterType = 6;
|
||||
const extensionAdapterType = 7;
|
||||
93
lib/data/repositories/extension_repository_aniyomi.dart
Normal file
93
lib/data/repositories/extension_repository_aniyomi.dart
Normal file
@@ -0,0 +1,93 @@
|
||||
import 'package:logger/logger.dart';
|
||||
import 'package:unyo/core/di/locator.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/aniyomi_repo_json_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/tachiyomi_repo_json_entity.dart';
|
||||
import 'package:unyo/core/services/api/http/api_response.dart';
|
||||
import 'package:unyo/core/services/api/http/http_service.dart';
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
import 'package:unyo/domain/entities/user.dart';
|
||||
import 'package:unyo/domain/repositories/extension_repository.dart';
|
||||
|
||||
class ExtensionRepositoryAniyomi implements ExtensionRepository {
|
||||
final Logger _logger = sl<Logger>();
|
||||
final HttpService _httpService = sl<HttpService>();
|
||||
|
||||
@override
|
||||
Future<Set<Extension>> getAvailableAnimeExtensions(User user) async {
|
||||
_logger.d("Fetching available anime extensions for AniyomiBridge.");
|
||||
final String aniyomiExtensionsRepositoryUrl = user.settings.aniyomiExtensionsRepositoryUrl;
|
||||
ApiResponse<List<AniyomiRepoJsonEntity>> repositoryResponse = await _httpService.get(
|
||||
aniyomiExtensionsRepositoryUrl,
|
||||
fromJson: _parseAniyomiRepoJsonList,
|
||||
);
|
||||
return repositoryResponse.data
|
||||
.map(
|
||||
(aniyomiRepoJsonEntity) => ExtensionModel(
|
||||
name: aniyomiRepoJsonEntity.name.replaceFirst("Aniyomi: ", ""),
|
||||
pkg: aniyomiRepoJsonEntity.pkg,
|
||||
apk:
|
||||
"${aniyomiExtensionsRepositoryUrl.replaceFirst("index.min.json", "apk/")}${aniyomiRepoJsonEntity.apk}.png",
|
||||
icon:
|
||||
"${aniyomiExtensionsRepositoryUrl.replaceFirst("index.min.json", "icon/")}${aniyomiRepoJsonEntity.pkg}.png",
|
||||
lang: aniyomiRepoJsonEntity.lang,
|
||||
version: aniyomiRepoJsonEntity.version,
|
||||
nsfw: aniyomiRepoJsonEntity.nsfw.toInt(),
|
||||
type: 'Aniyomi',
|
||||
),
|
||||
)
|
||||
.toSet();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Set<Extension>> getAvailableMangaExtensions(User user) async{
|
||||
_logger.i("Fetching available manga extensions for AniyomiBridge.");
|
||||
final String tachiyomiExtensionsRepositoryUrl = user.settings.tachiyomiExtensionsRepositoryUrl;
|
||||
ApiResponse<List<TachiyomiRepoJsonEntity>> repositoryResponse = await _httpService.get(
|
||||
tachiyomiExtensionsRepositoryUrl,
|
||||
fromJson: _parseTachiyomiRepoJsonList,
|
||||
);
|
||||
return repositoryResponse.data
|
||||
.map(
|
||||
(tachiyomiRepoJsonEntity) => ExtensionModel(
|
||||
name: tachiyomiRepoJsonEntity.name.replaceFirst("Tachiyomi: ", ""),
|
||||
pkg: tachiyomiRepoJsonEntity.pkg,
|
||||
apk:
|
||||
"${tachiyomiExtensionsRepositoryUrl.replaceFirst("index.min.json", "apk/")}${tachiyomiRepoJsonEntity.apk}.png",
|
||||
icon:
|
||||
"${tachiyomiExtensionsRepositoryUrl.replaceFirst("index.min.json", "icon/")}${tachiyomiRepoJsonEntity.pkg}.png",
|
||||
lang: tachiyomiRepoJsonEntity.lang,
|
||||
version: tachiyomiRepoJsonEntity.version,
|
||||
nsfw: tachiyomiRepoJsonEntity.nsfw.toInt(),
|
||||
type: 'Tachiyomi',
|
||||
),
|
||||
)
|
||||
.toSet();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Set<Extension>> getInstalledAnimeExtensions(User user) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Set<Extension>> getInstalledMangaExtensions(User user) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> updateRepositoryUrl(String newUrl) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
List<AniyomiRepoJsonEntity> _parseAniyomiRepoJsonList(Map<String, dynamic> json) {
|
||||
return ((json['list'] as List<dynamic>?) ?? [])
|
||||
.map((jsonItem) => AniyomiRepoJsonEntity.fromJson(jsonItem as Map<String, dynamic>))
|
||||
.toList();
|
||||
}
|
||||
|
||||
List<TachiyomiRepoJsonEntity> _parseTachiyomiRepoJsonList(Map<String, dynamic> json) {
|
||||
return ((json['list'] as List<dynamic>?) ?? [])
|
||||
.map((jsonItem) => TachiyomiRepoJsonEntity.fromJson(jsonItem as Map<String, dynamic>))
|
||||
.toList();
|
||||
}
|
||||
}
|
||||
76
lib/domain/entities/extension.dart
Normal file
76
lib/domain/entities/extension.dart
Normal file
@@ -0,0 +1,76 @@
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
import 'package:hive_ce/hive.dart';
|
||||
import 'package:unyo/data/adapters/adapters_names.dart' as names;
|
||||
import 'package:unyo/data/adapters/adapters_types.dart' as types;
|
||||
|
||||
part 'extension.freezed.dart';
|
||||
|
||||
part 'extension.g.dart';
|
||||
|
||||
abstract class Extension {
|
||||
final String name;
|
||||
final String pkg;
|
||||
final String apk;
|
||||
final String icon;
|
||||
final String lang;
|
||||
final String version;
|
||||
final int nsfw;
|
||||
final String type;
|
||||
|
||||
const Extension({
|
||||
required this.name,
|
||||
required this.pkg,
|
||||
required this.apk,
|
||||
required this.icon,
|
||||
required this.lang,
|
||||
required this.version,
|
||||
required this.nsfw,
|
||||
required this.type,
|
||||
});
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'Extension()';
|
||||
}
|
||||
}
|
||||
|
||||
@freezed
|
||||
@HiveType(typeId: types.extensionAdapterType, adapterName: names.extensionModelAdapterName)
|
||||
abstract class ExtensionModel with _$ExtensionModel implements Extension {
|
||||
const factory ExtensionModel({
|
||||
@HiveField(0) required String name,
|
||||
@HiveField(1) required String pkg,
|
||||
@HiveField(2) required String apk,
|
||||
@HiveField(3) required String icon,
|
||||
@HiveField(4) required String lang,
|
||||
@HiveField(5) required String version,
|
||||
@HiveField(6) required int nsfw,
|
||||
@HiveField(7) required String type,
|
||||
}) = _ExtensionModel;
|
||||
|
||||
factory ExtensionModel.empty() => const ExtensionModel(
|
||||
name: '',
|
||||
pkg: '',
|
||||
apk: '',
|
||||
icon: '',
|
||||
lang: '',
|
||||
version: '',
|
||||
nsfw: 0,
|
||||
type: 'Aniyomi',
|
||||
);
|
||||
|
||||
factory ExtensionModel.fromJson(Map<String, dynamic> json) => _$ExtensionModelFromJson(json);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson() => _$ExtensionModelToJson(this as _ExtensionModel);
|
||||
}
|
||||
|
||||
class ExtensionConverter implements JsonConverter<Extension, Map<String, dynamic>> {
|
||||
const ExtensionConverter();
|
||||
|
||||
@override
|
||||
Extension fromJson(Map<String, dynamic> json) => ExtensionModel.fromJson(json);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson(Extension object) => (object as ExtensionModel).toJson();
|
||||
}
|
||||
290
lib/domain/entities/extension.freezed.dart
Normal file
290
lib/domain/entities/extension.freezed.dart
Normal file
@@ -0,0 +1,290 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
// coverage:ignore-file
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
|
||||
|
||||
part of 'extension.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// FreezedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
// dart format off
|
||||
T _$identity<T>(T value) => value;
|
||||
|
||||
/// @nodoc
|
||||
mixin _$ExtensionModel {
|
||||
|
||||
@HiveField(0) String get name;@HiveField(1) String get pkg;@HiveField(2) String get apk;@HiveField(3) String get icon;@HiveField(4) String get lang;@HiveField(5) String get version;@HiveField(6) int get nsfw;@HiveField(7) String get type;
|
||||
/// Create a copy of ExtensionModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@pragma('vm:prefer-inline')
|
||||
$ExtensionModelCopyWith<ExtensionModel> get copyWith => _$ExtensionModelCopyWithImpl<ExtensionModel>(this as ExtensionModel, _$identity);
|
||||
|
||||
/// Serializes this ExtensionModel to a JSON map.
|
||||
Map<String, dynamic> toJson();
|
||||
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is ExtensionModel&&(identical(other.name, name) || other.name == name)&&(identical(other.pkg, pkg) || other.pkg == pkg)&&(identical(other.apk, apk) || other.apk == apk)&&(identical(other.icon, icon) || other.icon == icon)&&(identical(other.lang, lang) || other.lang == lang)&&(identical(other.version, version) || other.version == version)&&(identical(other.nsfw, nsfw) || other.nsfw == nsfw)&&(identical(other.type, type) || other.type == type));
|
||||
}
|
||||
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,name,pkg,apk,icon,lang,version,nsfw,type);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
abstract mixin class $ExtensionModelCopyWith<$Res> {
|
||||
factory $ExtensionModelCopyWith(ExtensionModel value, $Res Function(ExtensionModel) _then) = _$ExtensionModelCopyWithImpl;
|
||||
@useResult
|
||||
$Res call({
|
||||
@HiveField(0) String name,@HiveField(1) String pkg,@HiveField(2) String apk,@HiveField(3) String icon,@HiveField(4) String lang,@HiveField(5) String version,@HiveField(6) int nsfw,@HiveField(7) String type
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
/// @nodoc
|
||||
class _$ExtensionModelCopyWithImpl<$Res>
|
||||
implements $ExtensionModelCopyWith<$Res> {
|
||||
_$ExtensionModelCopyWithImpl(this._self, this._then);
|
||||
|
||||
final ExtensionModel _self;
|
||||
final $Res Function(ExtensionModel) _then;
|
||||
|
||||
/// Create a copy of ExtensionModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@pragma('vm:prefer-inline') @override $Res call({Object? name = null,Object? pkg = null,Object? apk = null,Object? icon = null,Object? lang = null,Object? version = null,Object? nsfw = null,Object? type = null,}) {
|
||||
return _then(_self.copyWith(
|
||||
name: null == name ? _self.name : name // ignore: cast_nullable_to_non_nullable
|
||||
as String,pkg: null == pkg ? _self.pkg : pkg // ignore: cast_nullable_to_non_nullable
|
||||
as String,apk: null == apk ? _self.apk : apk // ignore: cast_nullable_to_non_nullable
|
||||
as String,icon: null == icon ? _self.icon : icon // ignore: cast_nullable_to_non_nullable
|
||||
as String,lang: null == lang ? _self.lang : lang // ignore: cast_nullable_to_non_nullable
|
||||
as String,version: null == version ? _self.version : version // ignore: cast_nullable_to_non_nullable
|
||||
as String,nsfw: null == nsfw ? _self.nsfw : nsfw // ignore: cast_nullable_to_non_nullable
|
||||
as int,type: null == type ? _self.type : type // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// Adds pattern-matching-related methods to [ExtensionModel].
|
||||
extension ExtensionModelPatterns on ExtensionModel {
|
||||
/// A variant of `map` that fallback to returning `orElse`.
|
||||
///
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case final Subclass value:
|
||||
/// return ...;
|
||||
/// case _:
|
||||
/// return orElse();
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult maybeMap<TResult extends Object?>(TResult Function( _ExtensionModel value)? $default,{required TResult orElse(),}){
|
||||
final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel() when $default != null:
|
||||
return $default(_that);case _:
|
||||
return orElse();
|
||||
|
||||
}
|
||||
}
|
||||
/// A `switch`-like method, using callbacks.
|
||||
///
|
||||
/// Callbacks receives the raw object, upcasted.
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case final Subclass value:
|
||||
/// return ...;
|
||||
/// case final Subclass2 value:
|
||||
/// return ...;
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult map<TResult extends Object?>(TResult Function( _ExtensionModel value) $default,){
|
||||
final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel():
|
||||
return $default(_that);case _:
|
||||
throw StateError('Unexpected subclass');
|
||||
|
||||
}
|
||||
}
|
||||
/// A variant of `map` that fallback to returning `null`.
|
||||
///
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case final Subclass value:
|
||||
/// return ...;
|
||||
/// case _:
|
||||
/// return null;
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>(TResult? Function( _ExtensionModel value)? $default,){
|
||||
final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel() when $default != null:
|
||||
return $default(_that);case _:
|
||||
return null;
|
||||
|
||||
}
|
||||
}
|
||||
/// A variant of `when` that fallback to an `orElse` callback.
|
||||
///
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case Subclass(:final field):
|
||||
/// return ...;
|
||||
/// case _:
|
||||
/// return orElse();
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function(@HiveField(0) String name, @HiveField(1) String pkg, @HiveField(2) String apk, @HiveField(3) String icon, @HiveField(4) String lang, @HiveField(5) String version, @HiveField(6) int nsfw, @HiveField(7) String type)? $default,{required TResult orElse(),}) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel() when $default != null:
|
||||
return $default(_that.name,_that.pkg,_that.apk,_that.icon,_that.lang,_that.version,_that.nsfw,_that.type);case _:
|
||||
return orElse();
|
||||
|
||||
}
|
||||
}
|
||||
/// A `switch`-like method, using callbacks.
|
||||
///
|
||||
/// As opposed to `map`, this offers destructuring.
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case Subclass(:final field):
|
||||
/// return ...;
|
||||
/// case Subclass2(:final field2):
|
||||
/// return ...;
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function(@HiveField(0) String name, @HiveField(1) String pkg, @HiveField(2) String apk, @HiveField(3) String icon, @HiveField(4) String lang, @HiveField(5) String version, @HiveField(6) int nsfw, @HiveField(7) String type) $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel():
|
||||
return $default(_that.name,_that.pkg,_that.apk,_that.icon,_that.lang,_that.version,_that.nsfw,_that.type);case _:
|
||||
throw StateError('Unexpected subclass');
|
||||
|
||||
}
|
||||
}
|
||||
/// A variant of `when` that fallback to returning `null`
|
||||
///
|
||||
/// It is equivalent to doing:
|
||||
/// ```dart
|
||||
/// switch (sealedClass) {
|
||||
/// case Subclass(:final field):
|
||||
/// return ...;
|
||||
/// case _:
|
||||
/// return null;
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function(@HiveField(0) String name, @HiveField(1) String pkg, @HiveField(2) String apk, @HiveField(3) String icon, @HiveField(4) String lang, @HiveField(5) String version, @HiveField(6) int nsfw, @HiveField(7) String type)? $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _ExtensionModel() when $default != null:
|
||||
return $default(_that.name,_that.pkg,_that.apk,_that.icon,_that.lang,_that.version,_that.nsfw,_that.type);case _:
|
||||
return null;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
@JsonSerializable()
|
||||
|
||||
class _ExtensionModel implements ExtensionModel {
|
||||
const _ExtensionModel({@HiveField(0) required this.name, @HiveField(1) required this.pkg, @HiveField(2) required this.apk, @HiveField(3) required this.icon, @HiveField(4) required this.lang, @HiveField(5) required this.version, @HiveField(6) required this.nsfw, @HiveField(7) required this.type});
|
||||
factory _ExtensionModel.fromJson(Map<String, dynamic> json) => _$ExtensionModelFromJson(json);
|
||||
|
||||
@override@HiveField(0) final String name;
|
||||
@override@HiveField(1) final String pkg;
|
||||
@override@HiveField(2) final String apk;
|
||||
@override@HiveField(3) final String icon;
|
||||
@override@HiveField(4) final String lang;
|
||||
@override@HiveField(5) final String version;
|
||||
@override@HiveField(6) final int nsfw;
|
||||
@override@HiveField(7) final String type;
|
||||
|
||||
/// Create a copy of ExtensionModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@override @JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@pragma('vm:prefer-inline')
|
||||
_$ExtensionModelCopyWith<_ExtensionModel> get copyWith => __$ExtensionModelCopyWithImpl<_ExtensionModel>(this, _$identity);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson() {
|
||||
return _$ExtensionModelToJson(this, );
|
||||
}
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is _ExtensionModel&&(identical(other.name, name) || other.name == name)&&(identical(other.pkg, pkg) || other.pkg == pkg)&&(identical(other.apk, apk) || other.apk == apk)&&(identical(other.icon, icon) || other.icon == icon)&&(identical(other.lang, lang) || other.lang == lang)&&(identical(other.version, version) || other.version == version)&&(identical(other.nsfw, nsfw) || other.nsfw == nsfw)&&(identical(other.type, type) || other.type == type));
|
||||
}
|
||||
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,name,pkg,apk,icon,lang,version,nsfw,type);
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
abstract mixin class _$ExtensionModelCopyWith<$Res> implements $ExtensionModelCopyWith<$Res> {
|
||||
factory _$ExtensionModelCopyWith(_ExtensionModel value, $Res Function(_ExtensionModel) _then) = __$ExtensionModelCopyWithImpl;
|
||||
@override @useResult
|
||||
$Res call({
|
||||
@HiveField(0) String name,@HiveField(1) String pkg,@HiveField(2) String apk,@HiveField(3) String icon,@HiveField(4) String lang,@HiveField(5) String version,@HiveField(6) int nsfw,@HiveField(7) String type
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
/// @nodoc
|
||||
class __$ExtensionModelCopyWithImpl<$Res>
|
||||
implements _$ExtensionModelCopyWith<$Res> {
|
||||
__$ExtensionModelCopyWithImpl(this._self, this._then);
|
||||
|
||||
final _ExtensionModel _self;
|
||||
final $Res Function(_ExtensionModel) _then;
|
||||
|
||||
/// Create a copy of ExtensionModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@override @pragma('vm:prefer-inline') $Res call({Object? name = null,Object? pkg = null,Object? apk = null,Object? icon = null,Object? lang = null,Object? version = null,Object? nsfw = null,Object? type = null,}) {
|
||||
return _then(_ExtensionModel(
|
||||
name: null == name ? _self.name : name // ignore: cast_nullable_to_non_nullable
|
||||
as String,pkg: null == pkg ? _self.pkg : pkg // ignore: cast_nullable_to_non_nullable
|
||||
as String,apk: null == apk ? _self.apk : apk // ignore: cast_nullable_to_non_nullable
|
||||
as String,icon: null == icon ? _self.icon : icon // ignore: cast_nullable_to_non_nullable
|
||||
as String,lang: null == lang ? _self.lang : lang // ignore: cast_nullable_to_non_nullable
|
||||
as String,version: null == version ? _self.version : version // ignore: cast_nullable_to_non_nullable
|
||||
as String,nsfw: null == nsfw ? _self.nsfw : nsfw // ignore: cast_nullable_to_non_nullable
|
||||
as int,type: null == type ? _self.type : type // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
// dart format on
|
||||
90
lib/domain/entities/extension.g.dart
Normal file
90
lib/domain/entities/extension.g.dart
Normal file
@@ -0,0 +1,90 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'extension.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// TypeAdapterGenerator
|
||||
// **************************************************************************
|
||||
|
||||
class ExtensionModelAdapter extends TypeAdapter<ExtensionModel> {
|
||||
@override
|
||||
final typeId = 7;
|
||||
|
||||
@override
|
||||
ExtensionModel read(BinaryReader reader) {
|
||||
final numOfFields = reader.readByte();
|
||||
final fields = <int, dynamic>{
|
||||
for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
|
||||
};
|
||||
return ExtensionModel(
|
||||
name: fields[0] as String,
|
||||
pkg: fields[1] as String,
|
||||
apk: fields[2] as String,
|
||||
icon: fields[3] as String,
|
||||
lang: fields[4] as String,
|
||||
version: fields[5] as String,
|
||||
nsfw: (fields[6] as num).toInt(),
|
||||
type: fields[7] as String,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void write(BinaryWriter writer, ExtensionModel obj) {
|
||||
writer
|
||||
..writeByte(8)
|
||||
..writeByte(0)
|
||||
..write(obj.name)
|
||||
..writeByte(1)
|
||||
..write(obj.pkg)
|
||||
..writeByte(2)
|
||||
..write(obj.apk)
|
||||
..writeByte(3)
|
||||
..write(obj.icon)
|
||||
..writeByte(4)
|
||||
..write(obj.lang)
|
||||
..writeByte(5)
|
||||
..write(obj.version)
|
||||
..writeByte(6)
|
||||
..write(obj.nsfw)
|
||||
..writeByte(7)
|
||||
..write(obj.type);
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode => typeId.hashCode;
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) =>
|
||||
identical(this, other) ||
|
||||
other is ExtensionModelAdapter &&
|
||||
runtimeType == other.runtimeType &&
|
||||
typeId == other.typeId;
|
||||
}
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
_ExtensionModel _$ExtensionModelFromJson(Map<String, dynamic> json) =>
|
||||
_ExtensionModel(
|
||||
name: json['name'] as String,
|
||||
pkg: json['pkg'] as String,
|
||||
apk: json['apk'] as String,
|
||||
icon: json['icon'] as String,
|
||||
lang: json['lang'] as String,
|
||||
version: json['version'] as String,
|
||||
nsfw: (json['nsfw'] as num).toInt(),
|
||||
type: json['type'] as String,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$ExtensionModelToJson(_ExtensionModel instance) =>
|
||||
<String, dynamic>{
|
||||
'name': instance.name,
|
||||
'pkg': instance.pkg,
|
||||
'apk': instance.apk,
|
||||
'icon': instance.icon,
|
||||
'lang': instance.lang,
|
||||
'version': instance.version,
|
||||
'nsfw': instance.nsfw,
|
||||
'type': instance.type,
|
||||
};
|
||||
@@ -4,39 +4,53 @@ import 'package:unyo/core/enums/episode_service.dart';
|
||||
import 'package:unyo/core/enums/service.dart';
|
||||
import 'package:unyo/data/adapters/adapters_names.dart' as names;
|
||||
import 'package:unyo/data/adapters/adapters_types.dart' as types;
|
||||
import 'package:unyo/config/config.dart' as config;
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
|
||||
part 'settings.freezed.dart';
|
||||
|
||||
part 'settings.g.dart';
|
||||
|
||||
abstract class Settings {
|
||||
final String language;
|
||||
final Service service;
|
||||
final EpisodeService episodeService;
|
||||
final List<Extension> installedAnimeExtensions;
|
||||
final List<Extension> installedMangaExtensions;
|
||||
final String aniyomiExtensionsRepositoryUrl;
|
||||
final String tachiyomiExtensionsRepositoryUrl;
|
||||
|
||||
const Settings(this.episodeService, {required this.service, required this.language});
|
||||
const Settings({
|
||||
required this.service,
|
||||
required this.language,
|
||||
required this.episodeService,
|
||||
required this.installedAnimeExtensions,
|
||||
required this.installedMangaExtensions,
|
||||
required this.aniyomiExtensionsRepositoryUrl,
|
||||
required this.tachiyomiExtensionsRepositoryUrl
|
||||
});
|
||||
}
|
||||
|
||||
@freezed
|
||||
@HiveType(typeId: types.settingsAdapterType, adapterName: names.settingsModelAdapterName)
|
||||
abstract class SettingsModel with _$SettingsModel implements Settings {
|
||||
const factory SettingsModel({
|
||||
@HiveField(0) required String language,
|
||||
@HiveField(1) required Service service,
|
||||
@HiveField(2) required EpisodeService episodeService,
|
||||
@HiveField(0) @Default('en') String language,
|
||||
@HiveField(1) @Default(Service.anilist) Service service,
|
||||
@HiveField(2) @Default(EpisodeService.anizip) EpisodeService episodeService,
|
||||
@HiveField(3) @ExtensionConverter() @Default([]) List<Extension> installedAnimeExtensions,
|
||||
@HiveField(4) @ExtensionConverter() @Default([]) List<Extension> installedMangaExtensions,
|
||||
@HiveField(5) @Default(config.aniyomiExtensionsRepositoryUrl) String aniyomiExtensionsRepositoryUrl,
|
||||
@HiveField(6) @Default(config.tachiyomiExtensionsRepositoryUrl) String tachiyomiExtensionsRepositoryUrl,
|
||||
}) = _SettingsModel;
|
||||
|
||||
factory SettingsModel.empty() => const SettingsModel(
|
||||
language: 'en',
|
||||
service: Service.anilist,
|
||||
episodeService: EpisodeService.anizip
|
||||
);
|
||||
factory SettingsModel.empty() =>
|
||||
const SettingsModel();
|
||||
|
||||
factory SettingsModel.fromJson(Map<String, dynamic> json) =>
|
||||
_$SettingsModelFromJson(json);
|
||||
factory SettingsModel.fromJson(Map<String, dynamic> json) => _$SettingsModelFromJson(json);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson() =>
|
||||
_$SettingsModelToJson(this as _SettingsModel);
|
||||
Map<String, dynamic> toJson() => _$SettingsModelToJson(this as _SettingsModel);
|
||||
}
|
||||
|
||||
class SettingsConverter implements JsonConverter<Settings, Map<String, dynamic>> {
|
||||
@@ -46,6 +60,5 @@ class SettingsConverter implements JsonConverter<Settings, Map<String, dynamic>>
|
||||
Settings fromJson(Map<String, dynamic> json) => SettingsModel.fromJson(json);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson(Settings object) =>
|
||||
(object as SettingsModel).toJson();
|
||||
}
|
||||
Map<String, dynamic> toJson(Settings object) => (object as SettingsModel).toJson();
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ T _$identity<T>(T value) => value;
|
||||
/// @nodoc
|
||||
mixin _$SettingsModel {
|
||||
|
||||
@HiveField(0) String get language;@HiveField(1) Service get service;@HiveField(2) EpisodeService get episodeService;
|
||||
@HiveField(0) String get language;@HiveField(1) Service get service;@HiveField(2) EpisodeService get episodeService;@HiveField(3)@ExtensionConverter() List<Extension> get installedAnimeExtensions;@HiveField(4)@ExtensionConverter() List<Extension> get installedMangaExtensions;@HiveField(5) String get aniyomiExtensionsRepositoryUrl;@HiveField(6) String get tachiyomiExtensionsRepositoryUrl;
|
||||
/// Create a copy of SettingsModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@@ -28,16 +28,16 @@ $SettingsModelCopyWith<SettingsModel> get copyWith => _$SettingsModelCopyWithImp
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is SettingsModel&&(identical(other.language, language) || other.language == language)&&(identical(other.service, service) || other.service == service)&&(identical(other.episodeService, episodeService) || other.episodeService == episodeService));
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is SettingsModel&&(identical(other.language, language) || other.language == language)&&(identical(other.service, service) || other.service == service)&&(identical(other.episodeService, episodeService) || other.episodeService == episodeService)&&const DeepCollectionEquality().equals(other.installedAnimeExtensions, installedAnimeExtensions)&&const DeepCollectionEquality().equals(other.installedMangaExtensions, installedMangaExtensions)&&(identical(other.aniyomiExtensionsRepositoryUrl, aniyomiExtensionsRepositoryUrl) || other.aniyomiExtensionsRepositoryUrl == aniyomiExtensionsRepositoryUrl)&&(identical(other.tachiyomiExtensionsRepositoryUrl, tachiyomiExtensionsRepositoryUrl) || other.tachiyomiExtensionsRepositoryUrl == tachiyomiExtensionsRepositoryUrl));
|
||||
}
|
||||
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,language,service,episodeService);
|
||||
int get hashCode => Object.hash(runtimeType,language,service,episodeService,const DeepCollectionEquality().hash(installedAnimeExtensions),const DeepCollectionEquality().hash(installedMangaExtensions),aniyomiExtensionsRepositoryUrl,tachiyomiExtensionsRepositoryUrl);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'SettingsModel(language: $language, service: $service, episodeService: $episodeService)';
|
||||
return 'SettingsModel(language: $language, service: $service, episodeService: $episodeService, installedAnimeExtensions: $installedAnimeExtensions, installedMangaExtensions: $installedMangaExtensions, aniyomiExtensionsRepositoryUrl: $aniyomiExtensionsRepositoryUrl, tachiyomiExtensionsRepositoryUrl: $tachiyomiExtensionsRepositoryUrl)';
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ abstract mixin class $SettingsModelCopyWith<$Res> {
|
||||
factory $SettingsModelCopyWith(SettingsModel value, $Res Function(SettingsModel) _then) = _$SettingsModelCopyWithImpl;
|
||||
@useResult
|
||||
$Res call({
|
||||
@HiveField(0) String language,@HiveField(1) Service service,@HiveField(2) EpisodeService episodeService
|
||||
@HiveField(0) String language,@HiveField(1) Service service,@HiveField(2) EpisodeService episodeService,@HiveField(3)@ExtensionConverter() List<Extension> installedAnimeExtensions,@HiveField(4)@ExtensionConverter() List<Extension> installedMangaExtensions,@HiveField(5) String aniyomiExtensionsRepositoryUrl,@HiveField(6) String tachiyomiExtensionsRepositoryUrl
|
||||
});
|
||||
|
||||
|
||||
@@ -65,12 +65,16 @@ class _$SettingsModelCopyWithImpl<$Res>
|
||||
|
||||
/// Create a copy of SettingsModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@pragma('vm:prefer-inline') @override $Res call({Object? language = null,Object? service = null,Object? episodeService = null,}) {
|
||||
@pragma('vm:prefer-inline') @override $Res call({Object? language = null,Object? service = null,Object? episodeService = null,Object? installedAnimeExtensions = null,Object? installedMangaExtensions = null,Object? aniyomiExtensionsRepositoryUrl = null,Object? tachiyomiExtensionsRepositoryUrl = null,}) {
|
||||
return _then(_self.copyWith(
|
||||
language: null == language ? _self.language : language // ignore: cast_nullable_to_non_nullable
|
||||
as String,service: null == service ? _self.service : service // ignore: cast_nullable_to_non_nullable
|
||||
as Service,episodeService: null == episodeService ? _self.episodeService : episodeService // ignore: cast_nullable_to_non_nullable
|
||||
as EpisodeService,
|
||||
as EpisodeService,installedAnimeExtensions: null == installedAnimeExtensions ? _self.installedAnimeExtensions : installedAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,installedMangaExtensions: null == installedMangaExtensions ? _self.installedMangaExtensions : installedMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,aniyomiExtensionsRepositoryUrl: null == aniyomiExtensionsRepositoryUrl ? _self.aniyomiExtensionsRepositoryUrl : aniyomiExtensionsRepositoryUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,tachiyomiExtensionsRepositoryUrl: null == tachiyomiExtensionsRepositoryUrl ? _self.tachiyomiExtensionsRepositoryUrl : tachiyomiExtensionsRepositoryUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
));
|
||||
}
|
||||
|
||||
@@ -155,10 +159,10 @@ return $default(_that);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService)? $default,{required TResult orElse(),}) {final _that = this;
|
||||
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>(TResult Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService, @HiveField(3)@ExtensionConverter() List<Extension> installedAnimeExtensions, @HiveField(4)@ExtensionConverter() List<Extension> installedMangaExtensions, @HiveField(5) String aniyomiExtensionsRepositoryUrl, @HiveField(6) String tachiyomiExtensionsRepositoryUrl)? $default,{required TResult orElse(),}) {final _that = this;
|
||||
switch (_that) {
|
||||
case _SettingsModel() when $default != null:
|
||||
return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
return $default(_that.language,_that.service,_that.episodeService,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.aniyomiExtensionsRepositoryUrl,_that.tachiyomiExtensionsRepositoryUrl);case _:
|
||||
return orElse();
|
||||
|
||||
}
|
||||
@@ -176,10 +180,10 @@ return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService) $default,) {final _that = this;
|
||||
@optionalTypeArgs TResult when<TResult extends Object?>(TResult Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService, @HiveField(3)@ExtensionConverter() List<Extension> installedAnimeExtensions, @HiveField(4)@ExtensionConverter() List<Extension> installedMangaExtensions, @HiveField(5) String aniyomiExtensionsRepositoryUrl, @HiveField(6) String tachiyomiExtensionsRepositoryUrl) $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _SettingsModel():
|
||||
return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
return $default(_that.language,_that.service,_that.episodeService,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.aniyomiExtensionsRepositoryUrl,_that.tachiyomiExtensionsRepositoryUrl);case _:
|
||||
throw StateError('Unexpected subclass');
|
||||
|
||||
}
|
||||
@@ -196,10 +200,10 @@ return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
/// }
|
||||
/// ```
|
||||
|
||||
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService)? $default,) {final _that = this;
|
||||
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>(TResult? Function(@HiveField(0) String language, @HiveField(1) Service service, @HiveField(2) EpisodeService episodeService, @HiveField(3)@ExtensionConverter() List<Extension> installedAnimeExtensions, @HiveField(4)@ExtensionConverter() List<Extension> installedMangaExtensions, @HiveField(5) String aniyomiExtensionsRepositoryUrl, @HiveField(6) String tachiyomiExtensionsRepositoryUrl)? $default,) {final _that = this;
|
||||
switch (_that) {
|
||||
case _SettingsModel() when $default != null:
|
||||
return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
return $default(_that.language,_that.service,_that.episodeService,_that.installedAnimeExtensions,_that.installedMangaExtensions,_that.aniyomiExtensionsRepositoryUrl,_that.tachiyomiExtensionsRepositoryUrl);case _:
|
||||
return null;
|
||||
|
||||
}
|
||||
@@ -211,12 +215,28 @@ return $default(_that.language,_that.service,_that.episodeService);case _:
|
||||
@JsonSerializable()
|
||||
|
||||
class _SettingsModel implements SettingsModel {
|
||||
const _SettingsModel({@HiveField(0) required this.language, @HiveField(1) required this.service, @HiveField(2) required this.episodeService});
|
||||
const _SettingsModel({@HiveField(0) this.language = 'en', @HiveField(1) this.service = Service.anilist, @HiveField(2) this.episodeService = EpisodeService.anizip, @HiveField(3)@ExtensionConverter() final List<Extension> installedAnimeExtensions = const [], @HiveField(4)@ExtensionConverter() final List<Extension> installedMangaExtensions = const [], @HiveField(5) this.aniyomiExtensionsRepositoryUrl = config.aniyomiExtensionsRepositoryUrl, @HiveField(6) this.tachiyomiExtensionsRepositoryUrl = config.tachiyomiExtensionsRepositoryUrl}): _installedAnimeExtensions = installedAnimeExtensions,_installedMangaExtensions = installedMangaExtensions;
|
||||
factory _SettingsModel.fromJson(Map<String, dynamic> json) => _$SettingsModelFromJson(json);
|
||||
|
||||
@override@HiveField(0) final String language;
|
||||
@override@HiveField(1) final Service service;
|
||||
@override@HiveField(2) final EpisodeService episodeService;
|
||||
@override@JsonKey()@HiveField(0) final String language;
|
||||
@override@JsonKey()@HiveField(1) final Service service;
|
||||
@override@JsonKey()@HiveField(2) final EpisodeService episodeService;
|
||||
final List<Extension> _installedAnimeExtensions;
|
||||
@override@JsonKey()@HiveField(3)@ExtensionConverter() List<Extension> get installedAnimeExtensions {
|
||||
if (_installedAnimeExtensions is EqualUnmodifiableListView) return _installedAnimeExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_installedAnimeExtensions);
|
||||
}
|
||||
|
||||
final List<Extension> _installedMangaExtensions;
|
||||
@override@JsonKey()@HiveField(4)@ExtensionConverter() List<Extension> get installedMangaExtensions {
|
||||
if (_installedMangaExtensions is EqualUnmodifiableListView) return _installedMangaExtensions;
|
||||
// ignore: implicit_dynamic_type
|
||||
return EqualUnmodifiableListView(_installedMangaExtensions);
|
||||
}
|
||||
|
||||
@override@JsonKey()@HiveField(5) final String aniyomiExtensionsRepositoryUrl;
|
||||
@override@JsonKey()@HiveField(6) final String tachiyomiExtensionsRepositoryUrl;
|
||||
|
||||
/// Create a copy of SettingsModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@@ -231,16 +251,16 @@ Map<String, dynamic> toJson() {
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is _SettingsModel&&(identical(other.language, language) || other.language == language)&&(identical(other.service, service) || other.service == service)&&(identical(other.episodeService, episodeService) || other.episodeService == episodeService));
|
||||
return identical(this, other) || (other.runtimeType == runtimeType&&other is _SettingsModel&&(identical(other.language, language) || other.language == language)&&(identical(other.service, service) || other.service == service)&&(identical(other.episodeService, episodeService) || other.episodeService == episodeService)&&const DeepCollectionEquality().equals(other._installedAnimeExtensions, _installedAnimeExtensions)&&const DeepCollectionEquality().equals(other._installedMangaExtensions, _installedMangaExtensions)&&(identical(other.aniyomiExtensionsRepositoryUrl, aniyomiExtensionsRepositoryUrl) || other.aniyomiExtensionsRepositoryUrl == aniyomiExtensionsRepositoryUrl)&&(identical(other.tachiyomiExtensionsRepositoryUrl, tachiyomiExtensionsRepositoryUrl) || other.tachiyomiExtensionsRepositoryUrl == tachiyomiExtensionsRepositoryUrl));
|
||||
}
|
||||
|
||||
@JsonKey(includeFromJson: false, includeToJson: false)
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType,language,service,episodeService);
|
||||
int get hashCode => Object.hash(runtimeType,language,service,episodeService,const DeepCollectionEquality().hash(_installedAnimeExtensions),const DeepCollectionEquality().hash(_installedMangaExtensions),aniyomiExtensionsRepositoryUrl,tachiyomiExtensionsRepositoryUrl);
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'SettingsModel(language: $language, service: $service, episodeService: $episodeService)';
|
||||
return 'SettingsModel(language: $language, service: $service, episodeService: $episodeService, installedAnimeExtensions: $installedAnimeExtensions, installedMangaExtensions: $installedMangaExtensions, aniyomiExtensionsRepositoryUrl: $aniyomiExtensionsRepositoryUrl, tachiyomiExtensionsRepositoryUrl: $tachiyomiExtensionsRepositoryUrl)';
|
||||
}
|
||||
|
||||
|
||||
@@ -251,7 +271,7 @@ abstract mixin class _$SettingsModelCopyWith<$Res> implements $SettingsModelCopy
|
||||
factory _$SettingsModelCopyWith(_SettingsModel value, $Res Function(_SettingsModel) _then) = __$SettingsModelCopyWithImpl;
|
||||
@override @useResult
|
||||
$Res call({
|
||||
@HiveField(0) String language,@HiveField(1) Service service,@HiveField(2) EpisodeService episodeService
|
||||
@HiveField(0) String language,@HiveField(1) Service service,@HiveField(2) EpisodeService episodeService,@HiveField(3)@ExtensionConverter() List<Extension> installedAnimeExtensions,@HiveField(4)@ExtensionConverter() List<Extension> installedMangaExtensions,@HiveField(5) String aniyomiExtensionsRepositoryUrl,@HiveField(6) String tachiyomiExtensionsRepositoryUrl
|
||||
});
|
||||
|
||||
|
||||
@@ -268,12 +288,16 @@ class __$SettingsModelCopyWithImpl<$Res>
|
||||
|
||||
/// Create a copy of SettingsModel
|
||||
/// with the given fields replaced by the non-null parameter values.
|
||||
@override @pragma('vm:prefer-inline') $Res call({Object? language = null,Object? service = null,Object? episodeService = null,}) {
|
||||
@override @pragma('vm:prefer-inline') $Res call({Object? language = null,Object? service = null,Object? episodeService = null,Object? installedAnimeExtensions = null,Object? installedMangaExtensions = null,Object? aniyomiExtensionsRepositoryUrl = null,Object? tachiyomiExtensionsRepositoryUrl = null,}) {
|
||||
return _then(_SettingsModel(
|
||||
language: null == language ? _self.language : language // ignore: cast_nullable_to_non_nullable
|
||||
as String,service: null == service ? _self.service : service // ignore: cast_nullable_to_non_nullable
|
||||
as Service,episodeService: null == episodeService ? _self.episodeService : episodeService // ignore: cast_nullable_to_non_nullable
|
||||
as EpisodeService,
|
||||
as EpisodeService,installedAnimeExtensions: null == installedAnimeExtensions ? _self._installedAnimeExtensions : installedAnimeExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,installedMangaExtensions: null == installedMangaExtensions ? _self._installedMangaExtensions : installedMangaExtensions // ignore: cast_nullable_to_non_nullable
|
||||
as List<Extension>,aniyomiExtensionsRepositoryUrl: null == aniyomiExtensionsRepositoryUrl ? _self.aniyomiExtensionsRepositoryUrl : aniyomiExtensionsRepositoryUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,tachiyomiExtensionsRepositoryUrl: null == tachiyomiExtensionsRepositoryUrl ? _self.tachiyomiExtensionsRepositoryUrl : tachiyomiExtensionsRepositoryUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
@@ -17,22 +17,45 @@ class SettingsModelAdapter extends TypeAdapter<SettingsModel> {
|
||||
for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
|
||||
};
|
||||
return SettingsModel(
|
||||
language: fields[0] as String,
|
||||
service: fields[1] as Service,
|
||||
episodeService: fields[2] as EpisodeService,
|
||||
language: fields[0] == null ? 'en' : fields[0] as String,
|
||||
service: fields[1] == null ? Service.anilist : fields[1] as Service,
|
||||
episodeService:
|
||||
fields[2] == null
|
||||
? EpisodeService.anizip
|
||||
: fields[2] as EpisodeService,
|
||||
installedAnimeExtensions:
|
||||
fields[3] == null ? [] : (fields[3] as List).cast<Extension>(),
|
||||
installedMangaExtensions:
|
||||
fields[4] == null ? [] : (fields[4] as List).cast<Extension>(),
|
||||
aniyomiExtensionsRepositoryUrl:
|
||||
fields[5] == null
|
||||
? 'https://gitea.k3vinb5.dev/Backups/kohi-den-extensions/raw/branch/main/index.min.json'
|
||||
: fields[5] as String,
|
||||
tachiyomiExtensionsRepositoryUrl:
|
||||
fields[6] == null
|
||||
? 'https://gitea.k3vinb5.dev/Backups/keiyoushi-extensions/raw/branch/repo/index.min.json'
|
||||
: fields[6] as String,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void write(BinaryWriter writer, SettingsModel obj) {
|
||||
writer
|
||||
..writeByte(3)
|
||||
..writeByte(7)
|
||||
..writeByte(0)
|
||||
..write(obj.language)
|
||||
..writeByte(1)
|
||||
..write(obj.service)
|
||||
..writeByte(2)
|
||||
..write(obj.episodeService);
|
||||
..write(obj.episodeService)
|
||||
..writeByte(3)
|
||||
..write(obj.installedAnimeExtensions)
|
||||
..writeByte(4)
|
||||
..write(obj.installedMangaExtensions)
|
||||
..writeByte(5)
|
||||
..write(obj.aniyomiExtensionsRepositoryUrl)
|
||||
..writeByte(6)
|
||||
..write(obj.tachiyomiExtensionsRepositoryUrl);
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -50,22 +73,56 @@ class SettingsModelAdapter extends TypeAdapter<SettingsModel> {
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
_SettingsModel _$SettingsModelFromJson(Map<String, dynamic> json) =>
|
||||
_SettingsModel(
|
||||
language: json['language'] as String,
|
||||
service: $enumDecode(_$ServiceEnumMap, json['service']),
|
||||
episodeService: $enumDecode(
|
||||
_$EpisodeServiceEnumMap,
|
||||
json['episodeService'],
|
||||
),
|
||||
);
|
||||
_SettingsModel _$SettingsModelFromJson(
|
||||
Map<String, dynamic> json,
|
||||
) => _SettingsModel(
|
||||
language: json['language'] as String? ?? 'en',
|
||||
service:
|
||||
$enumDecodeNullable(_$ServiceEnumMap, json['service']) ?? Service.anilist,
|
||||
episodeService:
|
||||
$enumDecodeNullable(_$EpisodeServiceEnumMap, json['episodeService']) ??
|
||||
EpisodeService.anizip,
|
||||
installedAnimeExtensions:
|
||||
(json['installedAnimeExtensions'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) =>
|
||||
const ExtensionConverter().fromJson(e as Map<String, dynamic>),
|
||||
)
|
||||
.toList() ??
|
||||
const [],
|
||||
installedMangaExtensions:
|
||||
(json['installedMangaExtensions'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) =>
|
||||
const ExtensionConverter().fromJson(e as Map<String, dynamic>),
|
||||
)
|
||||
.toList() ??
|
||||
const [],
|
||||
aniyomiExtensionsRepositoryUrl:
|
||||
json['aniyomiExtensionsRepositoryUrl'] as String? ??
|
||||
config.aniyomiExtensionsRepositoryUrl,
|
||||
tachiyomiExtensionsRepositoryUrl:
|
||||
json['tachiyomiExtensionsRepositoryUrl'] as String? ??
|
||||
config.tachiyomiExtensionsRepositoryUrl,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$SettingsModelToJson(_SettingsModel instance) =>
|
||||
<String, dynamic>{
|
||||
'language': instance.language,
|
||||
'service': _$ServiceEnumMap[instance.service]!,
|
||||
'episodeService': _$EpisodeServiceEnumMap[instance.episodeService]!,
|
||||
};
|
||||
Map<String, dynamic> _$SettingsModelToJson(
|
||||
_SettingsModel instance,
|
||||
) => <String, dynamic>{
|
||||
'language': instance.language,
|
||||
'service': _$ServiceEnumMap[instance.service]!,
|
||||
'episodeService': _$EpisodeServiceEnumMap[instance.episodeService]!,
|
||||
'installedAnimeExtensions':
|
||||
instance.installedAnimeExtensions
|
||||
.map(const ExtensionConverter().toJson)
|
||||
.toList(),
|
||||
'installedMangaExtensions':
|
||||
instance.installedMangaExtensions
|
||||
.map(const ExtensionConverter().toJson)
|
||||
.toList(),
|
||||
'aniyomiExtensionsRepositoryUrl': instance.aniyomiExtensionsRepositoryUrl,
|
||||
'tachiyomiExtensionsRepositoryUrl': instance.tachiyomiExtensionsRepositoryUrl,
|
||||
};
|
||||
|
||||
const _$ServiceEnumMap = {
|
||||
Service.anilist: 'anilist',
|
||||
|
||||
10
lib/domain/repositories/extension_repository.dart
Normal file
10
lib/domain/repositories/extension_repository.dart
Normal file
@@ -0,0 +1,10 @@
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
import 'package:unyo/domain/entities/user.dart';
|
||||
|
||||
abstract class ExtensionRepository {
|
||||
Future<Set<Extension>> getAvailableAnimeExtensions(User loggedUser);
|
||||
Future<Set<Extension>> getAvailableMangaExtensions(User loggedUser);
|
||||
Future<Set<Extension>> getInstalledAnimeExtensions(User loggedUser);
|
||||
Future<Set<Extension>> getInstalledMangaExtensions(User loggedUser);
|
||||
Future<void> updateRepositoryUrl(String newUrl);
|
||||
}
|
||||
@@ -1,19 +1,16 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/anime_details_graphql_dto_entity.dart';
|
||||
|
||||
AnimeDetailsGraphqlDtoEntity $AnimeDetailsGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
AnimeDetailsGraphqlDtoEntity $AnimeDetailsGraphqlDtoEntityFromJson(Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoEntity animeDetailsGraphqlDtoEntity = AnimeDetailsGraphqlDtoEntity();
|
||||
final AnimeDetailsGraphqlDtoData? data = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoData>(json['data']);
|
||||
final AnimeDetailsGraphqlDtoData? data = jsonConvert.convert<AnimeDetailsGraphqlDtoData>(json['data']);
|
||||
if (data != null) {
|
||||
animeDetailsGraphqlDtoEntity.data = data;
|
||||
}
|
||||
return animeDetailsGraphqlDtoEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoEntityToJson(
|
||||
AnimeDetailsGraphqlDtoEntity entity) {
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoEntityToJson(AnimeDetailsGraphqlDtoEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['data'] = entity.data.toJson();
|
||||
return data;
|
||||
@@ -28,8 +25,7 @@ extension AnimeDetailsGraphqlDtoEntityExtension on AnimeDetailsGraphqlDtoEntity
|
||||
}
|
||||
}
|
||||
|
||||
AnimeDetailsGraphqlDtoData $AnimeDetailsGraphqlDtoDataFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
AnimeDetailsGraphqlDtoData $AnimeDetailsGraphqlDtoDataFromJson(Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoData animeDetailsGraphqlDtoData = AnimeDetailsGraphqlDtoData();
|
||||
final AnimeDetailsGraphqlDtoDataMediaList? mediaList = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaList>(json['MediaList']);
|
||||
@@ -39,8 +35,7 @@ AnimeDetailsGraphqlDtoData $AnimeDetailsGraphqlDtoDataFromJson(
|
||||
return animeDetailsGraphqlDtoData;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataToJson(
|
||||
AnimeDetailsGraphqlDtoData entity) {
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataToJson(AnimeDetailsGraphqlDtoData entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['MediaList'] = entity.mediaList.toJson();
|
||||
return data;
|
||||
@@ -55,8 +50,7 @@ extension AnimeDetailsGraphqlDtoDataExtension on AnimeDetailsGraphqlDtoData {
|
||||
}
|
||||
}
|
||||
|
||||
AnimeDetailsGraphqlDtoDataMediaList $AnimeDetailsGraphqlDtoDataMediaListFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
AnimeDetailsGraphqlDtoDataMediaList $AnimeDetailsGraphqlDtoDataMediaListFromJson(Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaList animeDetailsGraphqlDtoDataMediaList = AnimeDetailsGraphqlDtoDataMediaList();
|
||||
final int? progress = jsonConvert.convert<int>(json['progress']);
|
||||
if (progress != null) {
|
||||
@@ -78,8 +72,7 @@ AnimeDetailsGraphqlDtoDataMediaList $AnimeDetailsGraphqlDtoDataMediaListFromJson
|
||||
return animeDetailsGraphqlDtoDataMediaList;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaList entity) {
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListToJson(AnimeDetailsGraphqlDtoDataMediaList entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['progress'] = entity.progress;
|
||||
data['score'] = entity.score;
|
||||
@@ -106,15 +99,13 @@ extension AnimeDetailsGraphqlDtoDataMediaListExtension on AnimeDetailsGraphqlDto
|
||||
AnimeDetailsGraphqlDtoDataMediaListMedia $AnimeDetailsGraphqlDtoDataMediaListMediaFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMedia animeDetailsGraphqlDtoDataMediaListMedia = AnimeDetailsGraphqlDtoDataMediaListMedia();
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations? recommendations = jsonConvert
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations>(
|
||||
json['recommendations']);
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations? recommendations = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations>(json['recommendations']);
|
||||
if (recommendations != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMedia.recommendations = recommendations;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharacters? characters = jsonConvert
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaCharacters>(
|
||||
json['characters']);
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharacters? characters = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharacters>(json['characters']);
|
||||
if (characters != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMedia.characters = characters;
|
||||
}
|
||||
@@ -143,23 +134,18 @@ extension AnimeDetailsGraphqlDtoDataMediaListMediaExtension on AnimeDetailsGraph
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations animeDetailsGraphqlDtoDataMediaListMediaRecommendations = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations();
|
||||
final List<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>? nodes = (json['nodes'] as List<
|
||||
dynamic>?)
|
||||
?.map(
|
||||
final List<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>? nodes = (json['nodes'] as List<
|
||||
dynamic>?)?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>(
|
||||
e) as AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes)
|
||||
.toList();
|
||||
jsonConvert.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>(
|
||||
e) as AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes).toList();
|
||||
if (nodes != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendations.nodes = nodes;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendations;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['nodes'] = entity.nodes.map((v) => v.toJson()).toList();
|
||||
@@ -179,18 +165,15 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes $AnimeDetailsGraphq
|
||||
Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes();
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation? mediaRecommendation = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>(
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>(
|
||||
json['mediaRecommendation']);
|
||||
if (mediaRecommendation != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes
|
||||
.mediaRecommendation = mediaRecommendation;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes.mediaRecommendation = mediaRecommendation;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['mediaRecommendation'] = entity.mediaRecommendation.toJson();
|
||||
@@ -211,117 +194,95 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation();
|
||||
final int? id = jsonConvert.convert<int>(json['id']);
|
||||
if (id != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.id = id;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.id = id;
|
||||
}
|
||||
final int? idMal = jsonConvert.convert<int>(json['idMal']);
|
||||
if (idMal != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.idMal = idMal;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.idMal = idMal;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate? startDate = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate>(
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate>(
|
||||
json['startDate']);
|
||||
if (startDate != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.startDate = startDate;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.startDate = startDate;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate? endDate = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate>(
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate>(
|
||||
json['endDate']);
|
||||
if (endDate != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.endDate = endDate;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.endDate = endDate;
|
||||
}
|
||||
final String? season = jsonConvert.convert<String>(json['season']);
|
||||
if (season != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.season = season;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.season = season;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.status = status;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.status = status;
|
||||
}
|
||||
final bool? isFavourite = jsonConvert.convert<bool>(json['isFavourite']);
|
||||
if (isFavourite != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.isFavourite = isFavourite;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.isFavourite = isFavourite;
|
||||
}
|
||||
final bool? isAdult = jsonConvert.convert<bool>(json['isAdult']);
|
||||
if (isAdult != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.isAdult = isAdult;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.isAdult = isAdult;
|
||||
}
|
||||
final int? episodes = jsonConvert.convert<int>(json['episodes']);
|
||||
if (episodes != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.episodes = episodes;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.episodes = episodes;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle? title = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>(
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>(
|
||||
json['title']);
|
||||
if (title != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.title = title;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.title = title;
|
||||
}
|
||||
final String? bannerImage = jsonConvert.convert<String>(json['bannerImage']);
|
||||
if (bannerImage != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.bannerImage = bannerImage;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.bannerImage = bannerImage;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage? coverImage = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage>(
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage>(
|
||||
json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.coverImage = coverImage;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.coverImage = coverImage;
|
||||
}
|
||||
final int? averageScore = jsonConvert.convert<int>(json['averageScore']);
|
||||
if (averageScore != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.averageScore = averageScore;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.averageScore =
|
||||
averageScore;
|
||||
}
|
||||
final int? duration = jsonConvert.convert<int>(json['duration']);
|
||||
if (duration != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.duration = duration;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.duration = duration;
|
||||
}
|
||||
final String? format = jsonConvert.convert<String>(json['format']);
|
||||
if (format != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.format = format;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.format = format;
|
||||
}
|
||||
final List<String>? genres = (json['genres'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<String>(e) as String).toList();
|
||||
if (genres != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.genres = genres;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.genres = genres;
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.description = description;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.description = description;
|
||||
}
|
||||
final int? meanScore = jsonConvert.convert<int>(json['meanScore']);
|
||||
if (meanScore != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.meanScore = meanScore;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.meanScore = meanScore;
|
||||
}
|
||||
final dynamic nextAiringEpisode = json['nextAiringEpisode'];
|
||||
if (nextAiringEpisode != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.nextAiringEpisode = nextAiringEpisode;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.nextAiringEpisode =
|
||||
nextAiringEpisode;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['id'] = entity.id;
|
||||
@@ -347,28 +308,27 @@ Map<String,
|
||||
}
|
||||
|
||||
extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationExtension on AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation copyWith(
|
||||
{
|
||||
int? id,
|
||||
int? idMal,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate? startDate,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate? endDate,
|
||||
String? season,
|
||||
String? status,
|
||||
bool? isFavourite,
|
||||
bool? isAdult,
|
||||
int? episodes,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle? title,
|
||||
String? bannerImage,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage? coverImage,
|
||||
int? averageScore,
|
||||
int? duration,
|
||||
String? format,
|
||||
List<String>? genres,
|
||||
String? description,
|
||||
int? meanScore,
|
||||
dynamic nextAiringEpisode,
|
||||
}) {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation copyWith({
|
||||
int? id,
|
||||
int? idMal,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate? startDate,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate? endDate,
|
||||
String? season,
|
||||
String? status,
|
||||
bool? isFavourite,
|
||||
bool? isAdult,
|
||||
int? episodes,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle? title,
|
||||
String? bannerImage,
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage? coverImage,
|
||||
int? averageScore,
|
||||
int? duration,
|
||||
String? format,
|
||||
List<String>? genres,
|
||||
String? description,
|
||||
int? meanScore,
|
||||
dynamic nextAiringEpisode,
|
||||
}) {
|
||||
return AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation()
|
||||
..id = id ?? this.id
|
||||
..idMal = idMal ?? this.idMal
|
||||
@@ -397,18 +357,15 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationS
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate
|
||||
.day = day;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate
|
||||
.month = month;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate
|
||||
.year = year;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate.year = year;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate;
|
||||
}
|
||||
@@ -424,12 +381,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDateExtension on AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
@@ -442,18 +398,15 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationE
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate
|
||||
.day = day;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate
|
||||
.month = month;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate
|
||||
.year = year;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate.year = year;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate;
|
||||
}
|
||||
@@ -469,12 +422,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDateExtension on AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
@@ -487,24 +439,20 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationT
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle();
|
||||
final String? english = jsonConvert.convert<String>(json['english']);
|
||||
if (english != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle
|
||||
.english = english;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle.english = english;
|
||||
}
|
||||
final String? native = jsonConvert.convert<String>(json['native']);
|
||||
if (native != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle
|
||||
.native = native;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle.native = native;
|
||||
}
|
||||
final String? romaji = jsonConvert.convert<String>(json['romaji']);
|
||||
if (romaji != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle
|
||||
.romaji = romaji;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle.romaji = romaji;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle
|
||||
.userPreferred = userPreferred;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle.userPreferred =
|
||||
userPreferred;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle;
|
||||
}
|
||||
@@ -521,13 +469,12 @@ Map<String,
|
||||
}
|
||||
|
||||
extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitleExtension on AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle copyWith(
|
||||
{
|
||||
String? english,
|
||||
String? native,
|
||||
String? romaji,
|
||||
String? userPreferred,
|
||||
}) {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle copyWith({
|
||||
String? english,
|
||||
String? native,
|
||||
String? romaji,
|
||||
String? userPreferred,
|
||||
}) {
|
||||
return AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle()
|
||||
..english = english ?? this.english
|
||||
..native = native ?? this.native
|
||||
@@ -541,8 +488,7 @@ AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationC
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage = AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage();
|
||||
final String? large = jsonConvert.convert<String>(json['large']);
|
||||
if (large != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage
|
||||
.large = large;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage.large = large;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage;
|
||||
}
|
||||
@@ -556,10 +502,9 @@ Map<String,
|
||||
}
|
||||
|
||||
extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImageExtension on AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage copyWith(
|
||||
{
|
||||
String? large,
|
||||
}) {
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage copyWith({
|
||||
String? large,
|
||||
}) {
|
||||
return AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage()
|
||||
..large = large ?? this.large;
|
||||
}
|
||||
@@ -568,15 +513,11 @@ extension AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecom
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharacters $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharacters animeDetailsGraphqlDtoDataMediaListMediaCharacters = AnimeDetailsGraphqlDtoDataMediaListMediaCharacters();
|
||||
final List<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>? nodes = (json['nodes'] as List<
|
||||
dynamic>?)
|
||||
?.map(
|
||||
final List<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>? nodes = (json['nodes'] as List<
|
||||
dynamic>?)?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>(
|
||||
e) as AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes)
|
||||
.toList();
|
||||
jsonConvert.convert<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>(
|
||||
e) as AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes).toList();
|
||||
if (nodes != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharacters.nodes = nodes;
|
||||
}
|
||||
@@ -606,15 +547,13 @@ AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes $AnimeDetailsGraphqlDtoD
|
||||
if (id != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.id = id;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage? image = jsonConvert
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage>(
|
||||
json['image']);
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage? image = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage>(json['image']);
|
||||
if (image != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.image = image;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName? name = jsonConvert
|
||||
.convert<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName>(
|
||||
json['name']);
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName? name = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName>(json['name']);
|
||||
if (name != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.name = name;
|
||||
}
|
||||
@@ -624,16 +563,12 @@ AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes $AnimeDetailsGraphqlDtoD
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.description =
|
||||
description;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.description = description;
|
||||
}
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth? dateOfBirth = jsonConvert
|
||||
.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>(
|
||||
json['dateOfBirth']);
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth? dateOfBirth = jsonConvert.convert<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>(json['dateOfBirth']);
|
||||
if (dateOfBirth != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.dateOfBirth =
|
||||
dateOfBirth;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.dateOfBirth = dateOfBirth;
|
||||
}
|
||||
final String? age = jsonConvert.convert<String>(json['age']);
|
||||
if (age != null) {
|
||||
@@ -642,8 +577,7 @@ AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes $AnimeDetailsGraphqlDtoD
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaCharactersNodes;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['id'] = entity.id;
|
||||
@@ -687,8 +621,7 @@ AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage $AnimeDetailsGraphq
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImageToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImageToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -707,17 +640,14 @@ extension AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImageExtension
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesNameFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName = AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName();
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName.userPreferred =
|
||||
userPreferred;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName.userPreferred = userPreferred;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesNameToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesNameToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['userPreferred'] = entity.userPreferred;
|
||||
@@ -738,24 +668,20 @@ AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth $AnimeDetails
|
||||
final AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth = AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth();
|
||||
final dynamic day = json['day'];
|
||||
if (day != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.day =
|
||||
day;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.day = day;
|
||||
}
|
||||
final dynamic month = json['month'];
|
||||
if (month != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.month =
|
||||
month;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.month = month;
|
||||
}
|
||||
final dynamic year = json['year'];
|
||||
if (year != null) {
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.year =
|
||||
year;
|
||||
animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.year = year;
|
||||
}
|
||||
return animeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirthToJson(
|
||||
Map<String, dynamic> $AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirthToJson(
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
|
||||
121
lib/generated/json/aniyomi_repo_json_entity.g.dart
Normal file
121
lib/generated/json/aniyomi_repo_json_entity.g.dart
Normal file
@@ -0,0 +1,121 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/aniyomi_repo_json_entity.dart';
|
||||
|
||||
AniyomiRepoJsonEntity $AniyomiRepoJsonEntityFromJson(Map<String, dynamic> json) {
|
||||
final AniyomiRepoJsonEntity aniyomiRepoJsonEntity = AniyomiRepoJsonEntity();
|
||||
final String? name = jsonConvert.convert<String>(json['name']);
|
||||
if (name != null) {
|
||||
aniyomiRepoJsonEntity.name = name;
|
||||
}
|
||||
final String? pkg = jsonConvert.convert<String>(json['pkg']);
|
||||
if (pkg != null) {
|
||||
aniyomiRepoJsonEntity.pkg = pkg;
|
||||
}
|
||||
final String? apk = jsonConvert.convert<String>(json['apk']);
|
||||
if (apk != null) {
|
||||
aniyomiRepoJsonEntity.apk = apk;
|
||||
}
|
||||
final String? lang = jsonConvert.convert<String>(json['lang']);
|
||||
if (lang != null) {
|
||||
aniyomiRepoJsonEntity.lang = lang;
|
||||
}
|
||||
final double? code = jsonConvert.convert<double>(json['code']);
|
||||
if (code != null) {
|
||||
aniyomiRepoJsonEntity.code = code;
|
||||
}
|
||||
final String? version = jsonConvert.convert<String>(json['version']);
|
||||
if (version != null) {
|
||||
aniyomiRepoJsonEntity.version = version;
|
||||
}
|
||||
final double? nsfw = jsonConvert.convert<double>(json['nsfw']);
|
||||
if (nsfw != null) {
|
||||
aniyomiRepoJsonEntity.nsfw = nsfw;
|
||||
}
|
||||
final List<AniyomiRepoJsonSources>? sources = (json['sources'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<AniyomiRepoJsonSources>(e) as AniyomiRepoJsonSources).toList();
|
||||
if (sources != null) {
|
||||
aniyomiRepoJsonEntity.sources = sources;
|
||||
}
|
||||
return aniyomiRepoJsonEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AniyomiRepoJsonEntityToJson(AniyomiRepoJsonEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['name'] = entity.name;
|
||||
data['pkg'] = entity.pkg;
|
||||
data['apk'] = entity.apk;
|
||||
data['lang'] = entity.lang;
|
||||
data['code'] = entity.code;
|
||||
data['version'] = entity.version;
|
||||
data['nsfw'] = entity.nsfw;
|
||||
data['sources'] = entity.sources.map((v) => v.toJson()).toList();
|
||||
return data;
|
||||
}
|
||||
|
||||
extension AniyomiRepoJsonEntityExtension on AniyomiRepoJsonEntity {
|
||||
AniyomiRepoJsonEntity copyWith({
|
||||
String? name,
|
||||
String? pkg,
|
||||
String? apk,
|
||||
String? lang,
|
||||
double? code,
|
||||
String? version,
|
||||
double? nsfw,
|
||||
List<AniyomiRepoJsonSources>? sources,
|
||||
}) {
|
||||
return AniyomiRepoJsonEntity()
|
||||
..name = name ?? this.name
|
||||
..pkg = pkg ?? this.pkg
|
||||
..apk = apk ?? this.apk
|
||||
..lang = lang ?? this.lang
|
||||
..code = code ?? this.code
|
||||
..version = version ?? this.version
|
||||
..nsfw = nsfw ?? this.nsfw
|
||||
..sources = sources ?? this.sources;
|
||||
}
|
||||
}
|
||||
|
||||
AniyomiRepoJsonSources $AniyomiRepoJsonSourcesFromJson(Map<String, dynamic> json) {
|
||||
final AniyomiRepoJsonSources aniyomiRepoJsonSources = AniyomiRepoJsonSources();
|
||||
final String? name = jsonConvert.convert<String>(json['name']);
|
||||
if (name != null) {
|
||||
aniyomiRepoJsonSources.name = name;
|
||||
}
|
||||
final String? lang = jsonConvert.convert<String>(json['lang']);
|
||||
if (lang != null) {
|
||||
aniyomiRepoJsonSources.lang = lang;
|
||||
}
|
||||
final String? id = jsonConvert.convert<String>(json['id']);
|
||||
if (id != null) {
|
||||
aniyomiRepoJsonSources.id = id;
|
||||
}
|
||||
final String? baseUrl = jsonConvert.convert<String>(json['baseUrl']);
|
||||
if (baseUrl != null) {
|
||||
aniyomiRepoJsonSources.baseUrl = baseUrl;
|
||||
}
|
||||
return aniyomiRepoJsonSources;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AniyomiRepoJsonSourcesToJson(AniyomiRepoJsonSources entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['name'] = entity.name;
|
||||
data['lang'] = entity.lang;
|
||||
data['id'] = entity.id;
|
||||
data['baseUrl'] = entity.baseUrl;
|
||||
return data;
|
||||
}
|
||||
|
||||
extension AniyomiRepoJsonSourcesExtension on AniyomiRepoJsonSources {
|
||||
AniyomiRepoJsonSources copyWith({
|
||||
String? name,
|
||||
String? lang,
|
||||
String? id,
|
||||
String? baseUrl,
|
||||
}) {
|
||||
return AniyomiRepoJsonSources()
|
||||
..name = name ?? this.name
|
||||
..lang = lang ?? this.lang
|
||||
..id = id ?? this.id
|
||||
..baseUrl = baseUrl ?? this.baseUrl;
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,7 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/anizip/anizip_episode_info_entity.dart';
|
||||
|
||||
AnizipEpisodeInfoEntity $AnizipEpisodeInfoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
AnizipEpisodeInfoEntity $AnizipEpisodeInfoEntityFromJson(Map<String, dynamic> json) {
|
||||
final AnizipEpisodeInfoEntity anizipEpisodeInfoEntity = AnizipEpisodeInfoEntity();
|
||||
final int? tvdbShowId = jsonConvert.convert<int>(json['tvdbShowId']);
|
||||
if (tvdbShowId != null) {
|
||||
@@ -20,13 +19,11 @@ AnizipEpisodeInfoEntity $AnizipEpisodeInfoEntityFromJson(
|
||||
if (episodeNumber != null) {
|
||||
anizipEpisodeInfoEntity.episodeNumber = episodeNumber;
|
||||
}
|
||||
final int? absoluteEpisodeNumber = jsonConvert.convert<int>(
|
||||
json['absoluteEpisodeNumber']);
|
||||
final int? absoluteEpisodeNumber = jsonConvert.convert<int>(json['absoluteEpisodeNumber']);
|
||||
if (absoluteEpisodeNumber != null) {
|
||||
anizipEpisodeInfoEntity.absoluteEpisodeNumber = absoluteEpisodeNumber;
|
||||
}
|
||||
final AnizipEpisodeInfoTitle? title = jsonConvert.convert<
|
||||
AnizipEpisodeInfoTitle>(json['title']);
|
||||
final AnizipEpisodeInfoTitle? title = jsonConvert.convert<AnizipEpisodeInfoTitle>(json['title']);
|
||||
if (title != null) {
|
||||
anizipEpisodeInfoEntity.title = title;
|
||||
}
|
||||
@@ -77,8 +74,7 @@ AnizipEpisodeInfoEntity $AnizipEpisodeInfoEntityFromJson(
|
||||
return anizipEpisodeInfoEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AnizipEpisodeInfoEntityToJson(
|
||||
AnizipEpisodeInfoEntity entity) {
|
||||
Map<String, dynamic> $AnizipEpisodeInfoEntityToJson(AnizipEpisodeInfoEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['tvdbShowId'] = entity.tvdbShowId;
|
||||
data['tvdbId'] = entity.tvdbId;
|
||||
@@ -125,8 +121,7 @@ extension AnizipEpisodeInfoEntityExtension on AnizipEpisodeInfoEntity {
|
||||
..tvdbId = tvdbId ?? this.tvdbId
|
||||
..seasonNumber = seasonNumber ?? this.seasonNumber
|
||||
..episodeNumber = episodeNumber ?? this.episodeNumber
|
||||
..absoluteEpisodeNumber = absoluteEpisodeNumber ??
|
||||
this.absoluteEpisodeNumber
|
||||
..absoluteEpisodeNumber = absoluteEpisodeNumber ?? this.absoluteEpisodeNumber
|
||||
..title = title ?? this.title
|
||||
..airDate = airDate ?? this.airDate
|
||||
..airDateUtc = airDateUtc ?? this.airDateUtc
|
||||
@@ -142,8 +137,7 @@ extension AnizipEpisodeInfoEntityExtension on AnizipEpisodeInfoEntity {
|
||||
}
|
||||
}
|
||||
|
||||
AnizipEpisodeInfoTitle $AnizipEpisodeInfoTitleFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
AnizipEpisodeInfoTitle $AnizipEpisodeInfoTitleFromJson(Map<String, dynamic> json) {
|
||||
final AnizipEpisodeInfoTitle anizipEpisodeInfoTitle = AnizipEpisodeInfoTitle();
|
||||
final String? ja = jsonConvert.convert<String>(json['ja']);
|
||||
if (ja != null) {
|
||||
@@ -164,8 +158,7 @@ AnizipEpisodeInfoTitle $AnizipEpisodeInfoTitleFromJson(
|
||||
return anizipEpisodeInfoTitle;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $AnizipEpisodeInfoTitleToJson(
|
||||
AnizipEpisodeInfoTitle entity) {
|
||||
Map<String, dynamic> $AnizipEpisodeInfoTitleToJson(AnizipEpisodeInfoTitle entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['ja'] = entity.ja;
|
||||
data['en'] = entity.en;
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
import 'package:flutter/material.dart' show debugPrint;
|
||||
import 'package:unyo/core/services/api/dto/anime_details_graphql_dto_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/anizip/anizip_episode_info_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/aniyomi_repo_json_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/tachiyomi_repo_json_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/media_collection_graphql_dto_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/media_collection_recently_completed_graphql_dto_entity.dart';
|
||||
import 'package:unyo/core/services/api/dto/media_collection_recently_released_graphql_dto_entity.dart';
|
||||
@@ -69,15 +71,12 @@ class JsonConvert {
|
||||
}
|
||||
}
|
||||
|
||||
List<T?>? convertList<T>(List<dynamic>? value,
|
||||
{EnumConvertFunction? enumConvert}) {
|
||||
List<T?>? convertList<T>(List<dynamic>? value, {EnumConvertFunction? enumConvert}) {
|
||||
if (value == null) {
|
||||
return null;
|
||||
}
|
||||
try {
|
||||
return value
|
||||
.map((dynamic e) => _asT<T>(e, enumConvert: enumConvert))
|
||||
.toList();
|
||||
return value.map((dynamic e) => _asT<T>(e, enumConvert: enumConvert)).toList();
|
||||
} catch (e, stackTrace) {
|
||||
debugPrint('asT<$T> $e $stackTrace');
|
||||
if (onError != null) {
|
||||
@@ -87,14 +86,12 @@ class JsonConvert {
|
||||
}
|
||||
}
|
||||
|
||||
List<T>? convertListNotNull<T>(dynamic value,
|
||||
{EnumConvertFunction? enumConvert}) {
|
||||
List<T>? convertListNotNull<T>(dynamic value, {EnumConvertFunction? enumConvert}) {
|
||||
if (value == null) {
|
||||
return null;
|
||||
}
|
||||
try {
|
||||
return (value as List<dynamic>).map((dynamic e) =>
|
||||
_asT<T>(e, enumConvert: enumConvert)!).toList();
|
||||
return (value as List<dynamic>).map((dynamic e) => _asT<T>(e, enumConvert: enumConvert)!).toList();
|
||||
} catch (e, stackTrace) {
|
||||
debugPrint('asT<$T> $e $stackTrace');
|
||||
if (onError != null) {
|
||||
@@ -142,8 +139,7 @@ class JsonConvert {
|
||||
return covertFunc(Map<String, dynamic>.from(value)) as T;
|
||||
}
|
||||
} else {
|
||||
throw UnimplementedError(
|
||||
'$type unimplemented,you can try running the app again');
|
||||
throw UnimplementedError('$type unimplemented,you can try running the app again');
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -159,121 +155,111 @@ class JsonConvert {
|
||||
AnimeDetailsGraphqlDtoData.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaList>[] is M) {
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaList>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaList>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaList.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMedia>[] is M) {
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMedia>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations>[] is M) {
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>[] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes.fromJson(
|
||||
e)).toList() as M;
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes>((
|
||||
Map<String, dynamic> e) => AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>((
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>[] is M) {
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate>[
|
||||
] is M) {
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate>[] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate.fromJson(
|
||||
e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate>[] is M) {
|
||||
return data
|
||||
.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationEndDate.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>((
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>[] is M) {
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationTitle.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage>[
|
||||
] is M) {
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage>[] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage.fromJson(
|
||||
e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharacters>[] is M) {
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharacters>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharacters.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharacters>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharacters.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>[] is M) {
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage>[] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage.fromJson(
|
||||
e)).toList() as M;
|
||||
return data
|
||||
.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage>((
|
||||
Map<String, dynamic> e) => AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName>[] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName.fromJson(
|
||||
e)).toList() as M;
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName>((Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>((
|
||||
if (<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>[] is M) {
|
||||
return data.map<AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth>((
|
||||
Map<String, dynamic> e) =>
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth
|
||||
.fromJson(e)).toList() as M;
|
||||
AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnizipEpisodeInfoEntity>[] is M) {
|
||||
return data.map<AnizipEpisodeInfoEntity>((Map<String, dynamic> e) =>
|
||||
AnizipEpisodeInfoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<AnizipEpisodeInfoTitle>[] is M) {
|
||||
return data.map<AnizipEpisodeInfoTitle>((Map<String, dynamic> e) =>
|
||||
AnizipEpisodeInfoTitle.fromJson(e)).toList() as M;
|
||||
return data
|
||||
.map<AnizipEpisodeInfoTitle>((Map<String, dynamic> e) => AnizipEpisodeInfoTitle.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<AniyomiRepoJsonEntity>[] is M) {
|
||||
return data
|
||||
.map<AniyomiRepoJsonEntity>((Map<String, dynamic> e) => AniyomiRepoJsonEntity.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<AniyomiRepoJsonSources>[] is M) {
|
||||
return data
|
||||
.map<AniyomiRepoJsonSources>((Map<String, dynamic> e) => AniyomiRepoJsonSources.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<TachiyomiRepoJsonEntity>[] is M) {
|
||||
return data.map<TachiyomiRepoJsonEntity>((Map<String, dynamic> e) =>
|
||||
TachiyomiRepoJsonEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<TachiyomiRepoJsonSources>[] is M) {
|
||||
return data.map<TachiyomiRepoJsonSources>((Map<String, dynamic> e) =>
|
||||
TachiyomiRepoJsonSources.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoEntity>[] is M) {
|
||||
return data.map<MediaCollectionGraphqlDtoEntity>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<MediaCollectionGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoData>[] is M) {
|
||||
@@ -281,326 +267,217 @@ class JsonConvert {
|
||||
MediaCollectionGraphqlDtoData.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollection>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionGraphqlDtoDataMediaListCollection>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollection.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionGraphqlDtoDataMediaListCollection>((Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollection.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionLists>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionGraphqlDtoDataMediaListCollectionLists>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionLists.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionGraphqlDtoDataMediaListCollectionLists>((Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionLists.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries.fromJson(
|
||||
e)).toList() as M;
|
||||
return data
|
||||
.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>((
|
||||
Map<String, dynamic> e) => MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>((
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>[] is M) {
|
||||
return data.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>((
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>[] is M) {
|
||||
return data.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>((
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>((
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>[] is M) {
|
||||
return data.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>((
|
||||
if (<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoEntity>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyCompletedGraphqlDtoEntity>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoEntity.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyCompletedGraphqlDtoPage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPage.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoPage>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMedia.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate.fromJson(
|
||||
e)).toList() as M;
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate.fromJson(
|
||||
e)).toList() as M;
|
||||
return data
|
||||
.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate>((
|
||||
Map<String, dynamic> e) => MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>((
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>[] is M) {
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle>[] is M) {
|
||||
return data
|
||||
.map<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoEntity>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoEntity>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoEntity.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyReleasedGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoPage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPage.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionRecentlyReleasedGraphqlDtoPage>((Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules.fromJson(
|
||||
e)).toList() as M;
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>((
|
||||
Map<String, dynamic> e) => MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>[] is M) {
|
||||
return data.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>[] is M) {
|
||||
return data.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>((
|
||||
if (<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>[] is M) {
|
||||
return data.map<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.fromJson(e)).toList() as M;
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoEntity>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionTrendingOrPopularGraphqlDtoEntity>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoEntity.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionTrendingOrPopularGraphqlDtoPage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPage.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoPage>((Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMedia.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>((Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate.fromJson(
|
||||
e)).toList() as M;
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate>((Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate.fromJson(
|
||||
e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>[
|
||||
] is M) {
|
||||
return data.map<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage
|
||||
.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>[] is M) {
|
||||
return data
|
||||
.map<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.fromJson(e))
|
||||
.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate>((
|
||||
Map<String, dynamic> e) => MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoEntity>[] is M) {
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoEntity>((
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>[] is M) {
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>[] is M) {
|
||||
return data.map<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>((Map<String, dynamic> e) =>
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoEntity>[] is M) {
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPage>[] is M) {
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPage>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPage>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMedia>[] is M) {
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMedia>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMedia>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMedia.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode>[] is M) {
|
||||
return data.map<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.fromJson(
|
||||
e)).toList() as M;
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMediaEndDate>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionUpcomingGraphqlDtoPageMediaEndDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaEndDate.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMediaEndDate>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaEndDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMediaStartDate>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionUpcomingGraphqlDtoPageMediaStartDate>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaStartDate.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMediaStartDate>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaStartDate.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<MediaCollectionUpcomingGraphqlDtoPageMediaTitle>[] is M) {
|
||||
return data
|
||||
.map<MediaCollectionUpcomingGraphqlDtoPageMediaTitle>((
|
||||
Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaTitle.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<MediaCollectionUpcomingGraphqlDtoPageMediaTitle>((Map<String, dynamic> e) =>
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaTitle.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoEntity>[] is M) {
|
||||
return data.map<ViewerGraphqlDtoEntity>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoEntity.fromJson(e)).toList() as M;
|
||||
return data
|
||||
.map<ViewerGraphqlDtoEntity>((Map<String, dynamic> e) => ViewerGraphqlDtoEntity.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoViewer>[] is M) {
|
||||
return data.map<ViewerGraphqlDtoViewer>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewer.fromJson(e)).toList() as M;
|
||||
return data
|
||||
.map<ViewerGraphqlDtoViewer>((Map<String, dynamic> e) => ViewerGraphqlDtoViewer.fromJson(e))
|
||||
.toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoViewerAvatar>[] is M) {
|
||||
return data.map<ViewerGraphqlDtoViewerAvatar>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerAvatar.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoViewerMediaListOptions>[] is M) {
|
||||
return data.map<ViewerGraphqlDtoViewerMediaListOptions>((
|
||||
Map<String, dynamic> e) =>
|
||||
return data.map<ViewerGraphqlDtoViewerMediaListOptions>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerMediaListOptions.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoViewerMediaListOptionsAnimeList>[] is M) {
|
||||
return data
|
||||
.map<ViewerGraphqlDtoViewerMediaListOptionsAnimeList>((
|
||||
Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerMediaListOptionsAnimeList.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<ViewerGraphqlDtoViewerMediaListOptionsAnimeList>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerMediaListOptionsAnimeList.fromJson(e)).toList() as M;
|
||||
}
|
||||
if (<ViewerGraphqlDtoViewerMediaListOptionsMangaList>[] is M) {
|
||||
return data
|
||||
.map<ViewerGraphqlDtoViewerMediaListOptionsMangaList>((
|
||||
Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerMediaListOptionsMangaList.fromJson(e))
|
||||
.toList() as M;
|
||||
return data.map<ViewerGraphqlDtoViewerMediaListOptionsMangaList>((Map<String, dynamic> e) =>
|
||||
ViewerGraphqlDtoViewerMediaListOptionsMangaList.fromJson(e)).toList() as M;
|
||||
}
|
||||
|
||||
debugPrint("$M not found");
|
||||
@@ -613,8 +490,7 @@ class JsonConvert {
|
||||
return json;
|
||||
}
|
||||
if (json is List) {
|
||||
return _getListChildType<M>(
|
||||
json.map((dynamic e) => e as Map<String, dynamic>).toList());
|
||||
return _getListChildType<M>(json.map((dynamic e) => e as Map<String, dynamic>).toList());
|
||||
} else {
|
||||
return jsonConvert.convert<M>(json);
|
||||
}
|
||||
@@ -623,23 +499,16 @@ class JsonConvert {
|
||||
|
||||
class JsonConvertClassCollection {
|
||||
Map<String, JsonConvertFunction> convertFuncMap = {
|
||||
(AnimeDetailsGraphqlDtoEntity).toString(): AnimeDetailsGraphqlDtoEntity
|
||||
.fromJson,
|
||||
(AnimeDetailsGraphqlDtoData).toString(): AnimeDetailsGraphqlDtoData
|
||||
.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaList)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaList.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMedia)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMedia.fromJson,
|
||||
(AnimeDetailsGraphqlDtoEntity).toString(): AnimeDetailsGraphqlDtoEntity.fromJson,
|
||||
(AnimeDetailsGraphqlDtoData).toString(): AnimeDetailsGraphqlDtoData.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaList).toString(): AnimeDetailsGraphqlDtoDataMediaList.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMedia).toString(): AnimeDetailsGraphqlDtoDataMediaListMedia.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendations.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodes.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendation.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationStartDate
|
||||
.fromJson,
|
||||
@@ -653,137 +522,104 @@ class JsonConvertClassCollection {
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaRecommendationsNodesMediaRecommendationCoverImage
|
||||
.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaCharacters)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharacters
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharacters.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodes.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesImage.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesName.fromJson,
|
||||
(AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth)
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth
|
||||
.fromJson,
|
||||
.toString(): AnimeDetailsGraphqlDtoDataMediaListMediaCharactersNodesDateOfBirth.fromJson,
|
||||
(AnizipEpisodeInfoEntity).toString(): AnizipEpisodeInfoEntity.fromJson,
|
||||
(AnizipEpisodeInfoTitle).toString(): AnizipEpisodeInfoTitle.fromJson,
|
||||
(MediaCollectionGraphqlDtoEntity)
|
||||
.toString(): MediaCollectionGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionGraphqlDtoData).toString(): MediaCollectionGraphqlDtoData
|
||||
.fromJson,
|
||||
(AniyomiRepoJsonEntity).toString(): AniyomiRepoJsonEntity.fromJson,
|
||||
(AniyomiRepoJsonSources).toString(): AniyomiRepoJsonSources.fromJson,
|
||||
(TachiyomiRepoJsonEntity).toString(): TachiyomiRepoJsonEntity.fromJson,
|
||||
(TachiyomiRepoJsonSources).toString(): TachiyomiRepoJsonSources.fromJson,
|
||||
(MediaCollectionGraphqlDtoEntity).toString(): MediaCollectionGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionGraphqlDtoData).toString(): MediaCollectionGraphqlDtoData.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollection)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollection.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionLists)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionLists
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionLists.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate.fromJson,
|
||||
(MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate)
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoEntity)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPage)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPage.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPageMedia)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMedia
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMedia.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage.fromJson,
|
||||
(MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle)
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoEntity)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPage)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPage.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPage).toString(): MediaCollectionRecentlyReleasedGraphqlDtoPage
|
||||
.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode
|
||||
.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage.fromJson,
|
||||
(MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle)
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoEntity)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPage)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPage.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPageMedia)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMedia
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMedia.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage.fromJson,
|
||||
(MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle)
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle
|
||||
.toString(): MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoEntity).toString(): MediaCollectionUpcomingGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPage).toString(): MediaCollectionUpcomingGraphqlDtoPage.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMedia).toString(): MediaCollectionUpcomingGraphqlDtoPageMedia
|
||||
.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoEntity)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoEntity.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPage)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPage.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMedia)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMedia.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMediaEndDate)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaEndDate.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMediaStartDate)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaStartDate
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaStartDate.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage
|
||||
.fromJson,
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage.fromJson,
|
||||
(MediaCollectionUpcomingGraphqlDtoPageMediaTitle)
|
||||
.toString(): MediaCollectionUpcomingGraphqlDtoPageMediaTitle.fromJson,
|
||||
(ViewerGraphqlDtoEntity).toString(): ViewerGraphqlDtoEntity.fromJson,
|
||||
(ViewerGraphqlDtoViewer).toString(): ViewerGraphqlDtoViewer.fromJson,
|
||||
(ViewerGraphqlDtoViewerAvatar).toString(): ViewerGraphqlDtoViewerAvatar
|
||||
.fromJson,
|
||||
(ViewerGraphqlDtoViewerMediaListOptions)
|
||||
.toString(): ViewerGraphqlDtoViewerMediaListOptions.fromJson,
|
||||
(ViewerGraphqlDtoViewerAvatar).toString(): ViewerGraphqlDtoViewerAvatar.fromJson,
|
||||
(ViewerGraphqlDtoViewerMediaListOptions).toString(): ViewerGraphqlDtoViewerMediaListOptions.fromJson,
|
||||
(ViewerGraphqlDtoViewerMediaListOptionsAnimeList)
|
||||
.toString(): ViewerGraphqlDtoViewerMediaListOptionsAnimeList.fromJson,
|
||||
(ViewerGraphqlDtoViewerMediaListOptionsMangaList)
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/media_collection_graphql_dto_entity.dart';
|
||||
|
||||
MediaCollectionGraphqlDtoEntity $MediaCollectionGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
MediaCollectionGraphqlDtoEntity $MediaCollectionGraphqlDtoEntityFromJson(Map<String, dynamic> json) {
|
||||
final MediaCollectionGraphqlDtoEntity mediaCollectionGraphqlDtoEntity = MediaCollectionGraphqlDtoEntity();
|
||||
final MediaCollectionGraphqlDtoData? data = jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoData>(json['data']);
|
||||
final MediaCollectionGraphqlDtoData? data = jsonConvert.convert<MediaCollectionGraphqlDtoData>(
|
||||
json['data']);
|
||||
if (data != null) {
|
||||
mediaCollectionGraphqlDtoEntity.data = data;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoEntityToJson(
|
||||
MediaCollectionGraphqlDtoEntity entity) {
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoEntityToJson(MediaCollectionGraphqlDtoEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['data'] = entity.data.toJson();
|
||||
return data;
|
||||
@@ -28,20 +26,17 @@ extension MediaCollectionGraphqlDtoEntityExtension on MediaCollectionGraphqlDtoE
|
||||
}
|
||||
}
|
||||
|
||||
MediaCollectionGraphqlDtoData $MediaCollectionGraphqlDtoDataFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
MediaCollectionGraphqlDtoData $MediaCollectionGraphqlDtoDataFromJson(Map<String, dynamic> json) {
|
||||
final MediaCollectionGraphqlDtoData mediaCollectionGraphqlDtoData = MediaCollectionGraphqlDtoData();
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollection? mediaListCollection = jsonConvert
|
||||
.convert<MediaCollectionGraphqlDtoDataMediaListCollection>(
|
||||
json['MediaListCollection']);
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollection? mediaListCollection = jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollection>(json['MediaListCollection']);
|
||||
if (mediaListCollection != null) {
|
||||
mediaCollectionGraphqlDtoData.mediaListCollection = mediaListCollection;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoData;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataToJson(
|
||||
MediaCollectionGraphqlDtoData entity) {
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataToJson(MediaCollectionGraphqlDtoData entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['MediaListCollection'] = entity.mediaListCollection.toJson();
|
||||
return data;
|
||||
@@ -59,20 +54,18 @@ extension MediaCollectionGraphqlDtoDataExtension on MediaCollectionGraphqlDtoDat
|
||||
MediaCollectionGraphqlDtoDataMediaListCollection $MediaCollectionGraphqlDtoDataMediaListCollectionFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollection mediaCollectionGraphqlDtoDataMediaListCollection = MediaCollectionGraphqlDtoDataMediaListCollection();
|
||||
final List<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionLists>? lists = (json['lists'] as List<
|
||||
dynamic>?)?.map(
|
||||
final List<MediaCollectionGraphqlDtoDataMediaListCollectionLists>? lists = (json['lists'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionLists>(
|
||||
e) as MediaCollectionGraphqlDtoDataMediaListCollectionLists).toList();
|
||||
jsonConvert.convert<MediaCollectionGraphqlDtoDataMediaListCollectionLists>(
|
||||
e) as MediaCollectionGraphqlDtoDataMediaListCollectionLists)
|
||||
.toList();
|
||||
if (lists != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollection.lists = lists;
|
||||
}
|
||||
final bool? hasNextChunk = jsonConvert.convert<bool>(json['hasNextChunk']);
|
||||
if (hasNextChunk != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollection.hasNextChunk =
|
||||
hasNextChunk;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollection.hasNextChunk = hasNextChunk;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollection;
|
||||
}
|
||||
@@ -101,13 +94,10 @@ MediaCollectionGraphqlDtoDataMediaListCollectionLists $MediaCollectionGraphqlDto
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionLists mediaCollectionGraphqlDtoDataMediaListCollectionLists = MediaCollectionGraphqlDtoDataMediaListCollectionLists();
|
||||
final List<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>? entries = (json['entries'] as List<
|
||||
dynamic>?)
|
||||
?.map(
|
||||
dynamic>?)?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>(
|
||||
e) as MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries)
|
||||
.toList();
|
||||
jsonConvert.convert<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries>(
|
||||
e) as MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries).toList();
|
||||
if (entries != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionLists.entries = entries;
|
||||
}
|
||||
@@ -117,14 +107,12 @@ MediaCollectionGraphqlDtoDataMediaListCollectionLists $MediaCollectionGraphqlDto
|
||||
}
|
||||
final bool? isCustomList = jsonConvert.convert<bool>(json['isCustomList']);
|
||||
if (isCustomList != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionLists.isCustomList =
|
||||
isCustomList;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionLists.isCustomList = isCustomList;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionLists;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionLists entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['entries'] = entity.entries.map((v) => v.toJson()).toList();
|
||||
@@ -149,18 +137,15 @@ extension MediaCollectionGraphqlDtoDataMediaListCollectionListsExtension on Medi
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries mediaCollectionGraphqlDtoDataMediaListCollectionListsEntries = MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries();
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia? media = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>(
|
||||
json['media']);
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia? media = jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia>(json['media']);
|
||||
if (media != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntries.media = media;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntries;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntries entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['media'] = entity.media.toJson();
|
||||
@@ -185,128 +170,98 @@ MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia $MediaCollecti
|
||||
}
|
||||
final int? idMal = jsonConvert.convert<int>(json['idMal']);
|
||||
if (idMal != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.idMal =
|
||||
idMal;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.idMal = idMal;
|
||||
}
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle? title = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>(
|
||||
json['title']);
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle? title = jsonConvert.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle>(json['title']);
|
||||
if (title != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.title =
|
||||
title;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.title = title;
|
||||
}
|
||||
final int? averageScore = jsonConvert.convert<int>(json['averageScore']);
|
||||
if (averageScore != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.averageScore = averageScore;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.averageScore = averageScore;
|
||||
}
|
||||
final String? bannerImage = jsonConvert.convert<String>(json['bannerImage']);
|
||||
if (bannerImage != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.bannerImage = bannerImage;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.bannerImage = bannerImage;
|
||||
}
|
||||
final int? chapters = jsonConvert.convert<int>(json['chapters']);
|
||||
if (chapters != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.chapters =
|
||||
chapters;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.chapters = chapters;
|
||||
}
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(
|
||||
json['countryOfOrigin']);
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(json['countryOfOrigin']);
|
||||
if (countryOfOrigin != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.countryOfOrigin = countryOfOrigin;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.countryOfOrigin = countryOfOrigin;
|
||||
}
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage? coverImage = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>(
|
||||
.convert<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage>(
|
||||
json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.coverImage = coverImage;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.coverImage = coverImage;
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.description = description;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.description = description;
|
||||
}
|
||||
final int? duration = jsonConvert.convert<int>(json['duration']);
|
||||
if (duration != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.duration =
|
||||
duration;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.duration = duration;
|
||||
}
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate? endDate = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>(
|
||||
json['endDate']);
|
||||
.convert<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate>(json['endDate']);
|
||||
if (endDate != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.endDate =
|
||||
endDate;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.endDate = endDate;
|
||||
}
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate? startDate = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>(
|
||||
json['startDate']);
|
||||
.convert<MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate>(json['startDate']);
|
||||
if (startDate != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.startDate = startDate;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.startDate = startDate;
|
||||
}
|
||||
final int? episodes = jsonConvert.convert<int>(json['episodes']);
|
||||
if (episodes != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.episodes =
|
||||
episodes;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.episodes = episodes;
|
||||
}
|
||||
final List<String>? genres = (json['genres'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<String>(e) as String).toList();
|
||||
if (genres != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.genres =
|
||||
genres;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.genres = genres;
|
||||
}
|
||||
final String? format = jsonConvert.convert<String>(json['format']);
|
||||
if (format != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.format =
|
||||
format;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.format = format;
|
||||
}
|
||||
final bool? isAdult = jsonConvert.convert<bool>(json['isAdult']);
|
||||
if (isAdult != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.isAdult =
|
||||
isAdult;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.isAdult = isAdult;
|
||||
}
|
||||
final int? popularity = jsonConvert.convert<int>(json['popularity']);
|
||||
if (popularity != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.popularity = popularity;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.popularity = popularity;
|
||||
}
|
||||
final int? meanScore = jsonConvert.convert<int>(json['meanScore']);
|
||||
if (meanScore != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.meanScore = meanScore;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.meanScore = meanScore;
|
||||
}
|
||||
final String? season = jsonConvert.convert<String>(json['season']);
|
||||
if (season != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.season =
|
||||
season;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.season = season;
|
||||
}
|
||||
final bool? isFavourite = jsonConvert.convert<bool>(json['isFavourite']);
|
||||
if (isFavourite != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.isFavourite = isFavourite;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.isFavourite = isFavourite;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.status =
|
||||
status;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.status = status;
|
||||
}
|
||||
final dynamic nextAiringEpisode = json['nextAiringEpisode'];
|
||||
if (nextAiringEpisode != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia
|
||||
.nextAiringEpisode = nextAiringEpisode;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia.nextAiringEpisode = nextAiringEpisode;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMedia entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['id'] = entity.id;
|
||||
@@ -390,30 +345,24 @@ MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle $MediaCol
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle = MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle();
|
||||
final String? english = jsonConvert.convert<String>(json['english']);
|
||||
if (english != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.english = english;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.english = english;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.userPreferred = userPreferred;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.userPreferred = userPreferred;
|
||||
}
|
||||
final String? romaji = jsonConvert.convert<String>(json['romaji']);
|
||||
if (romaji != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.romaji = romaji;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.romaji = romaji;
|
||||
}
|
||||
final String? native = jsonConvert.convert<String>(json['native']);
|
||||
if (native != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle
|
||||
.native = native;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle.native = native;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitleToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitleToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['english'] = entity.english;
|
||||
@@ -424,13 +373,12 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitleExtension on MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle copyWith(
|
||||
{
|
||||
String? english,
|
||||
String? userPreferred,
|
||||
String? romaji,
|
||||
String? native,
|
||||
}) {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle copyWith({
|
||||
String? english,
|
||||
String? userPreferred,
|
||||
String? romaji,
|
||||
String? native,
|
||||
}) {
|
||||
return MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaTitle()
|
||||
..english = english ?? this.english
|
||||
..userPreferred = userPreferred ?? this.userPreferred
|
||||
@@ -444,14 +392,12 @@ MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage $Med
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage = MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage();
|
||||
final String? large = jsonConvert.convert<String>(json['large']);
|
||||
if (large != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage
|
||||
.large = large;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage.large = large;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImageToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImageToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -459,10 +405,9 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImageExtension on MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage copyWith(
|
||||
{
|
||||
String? large,
|
||||
}) {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage copyWith({
|
||||
String? large,
|
||||
}) {
|
||||
return MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaCoverImage()
|
||||
..large = large ?? this.large;
|
||||
}
|
||||
@@ -473,24 +418,20 @@ MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate $MediaC
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate = MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate
|
||||
.day = day;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate
|
||||
.month = month;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate
|
||||
.year = year;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate.year = year;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDateToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -500,12 +441,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDateExtension on MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaEndDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
@@ -518,24 +458,20 @@ MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate $Medi
|
||||
final MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate = MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate
|
||||
.day = day;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate
|
||||
.month = month;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate
|
||||
.year = year;
|
||||
mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate.year = year;
|
||||
}
|
||||
return mediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDateToJson(
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -545,12 +481,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDateExtension on MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return MediaCollectionGraphqlDtoDataMediaListCollectionListsEntriesMediaStartDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
|
||||
@@ -4,8 +4,8 @@ import 'package:unyo/core/services/api/dto/media_collection_recently_completed_g
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoEntity $MediaCollectionRecentlyCompletedGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoEntity mediaCollectionRecentlyCompletedGraphqlDtoEntity = MediaCollectionRecentlyCompletedGraphqlDtoEntity();
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPage? page = jsonConvert
|
||||
.convert<MediaCollectionRecentlyCompletedGraphqlDtoPage>(json['Page']);
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPage? page = jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPage>(json['Page']);
|
||||
if (page != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoEntity.page = page;
|
||||
}
|
||||
@@ -31,13 +31,12 @@ extension MediaCollectionRecentlyCompletedGraphqlDtoEntityExtension on MediaColl
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPage $MediaCollectionRecentlyCompletedGraphqlDtoPageFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPage mediaCollectionRecentlyCompletedGraphqlDtoPage = MediaCollectionRecentlyCompletedGraphqlDtoPage();
|
||||
final List<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>? media = (json['media'] as List<
|
||||
dynamic>?)?.map(
|
||||
final List<MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>? media = (json['media'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>(
|
||||
e) as MediaCollectionRecentlyCompletedGraphqlDtoPageMedia).toList();
|
||||
jsonConvert.convert<MediaCollectionRecentlyCompletedGraphqlDtoPageMedia>(
|
||||
e) as MediaCollectionRecentlyCompletedGraphqlDtoPageMedia)
|
||||
.toList();
|
||||
if (media != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPage.media = media;
|
||||
}
|
||||
@@ -65,8 +64,7 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMedia $MediaCollectionRecentlyComp
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMedia mediaCollectionRecentlyCompletedGraphqlDtoPageMedia = MediaCollectionRecentlyCompletedGraphqlDtoPageMedia();
|
||||
final dynamic nextAiringEpisode = json['nextAiringEpisode'];
|
||||
if (nextAiringEpisode != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.nextAiringEpisode =
|
||||
nextAiringEpisode;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.nextAiringEpisode = nextAiringEpisode;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
@@ -74,8 +72,7 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMedia $MediaCollectionRecentlyComp
|
||||
}
|
||||
final bool? isFavourite = jsonConvert.convert<bool>(json['isFavourite']);
|
||||
if (isFavourite != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.isFavourite =
|
||||
isFavourite;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.isFavourite = isFavourite;
|
||||
}
|
||||
final String? season = jsonConvert.convert<String>(json['season']);
|
||||
if (season != null) {
|
||||
@@ -114,15 +111,13 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMedia $MediaCollectionRecentlyComp
|
||||
if (episodes != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.episodes = episodes;
|
||||
}
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate? endDate = jsonConvert
|
||||
.convert<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate>(
|
||||
json['endDate']);
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate? endDate = jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate>(json['endDate']);
|
||||
if (endDate != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.endDate = endDate;
|
||||
}
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate? startDate = jsonConvert
|
||||
.convert<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate>(
|
||||
json['startDate']);
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate? startDate = jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate>(json['startDate']);
|
||||
if (startDate != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.startDate = startDate;
|
||||
}
|
||||
@@ -132,20 +127,16 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMedia $MediaCollectionRecentlyComp
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.description =
|
||||
description;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.description = description;
|
||||
}
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert
|
||||
.convert<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>(
|
||||
json['coverImage']);
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage>(json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.coverImage = coverImage;
|
||||
}
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(
|
||||
json['countryOfOrigin']);
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(json['countryOfOrigin']);
|
||||
if (countryOfOrigin != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.countryOfOrigin =
|
||||
countryOfOrigin;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.countryOfOrigin = countryOfOrigin;
|
||||
}
|
||||
final int? chapters = jsonConvert.convert<int>(json['chapters']);
|
||||
if (chapters != null) {
|
||||
@@ -153,17 +144,14 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMedia $MediaCollectionRecentlyComp
|
||||
}
|
||||
final String? bannerImage = jsonConvert.convert<String>(json['bannerImage']);
|
||||
if (bannerImage != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.bannerImage =
|
||||
bannerImage;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.bannerImage = bannerImage;
|
||||
}
|
||||
final int? averageScore = jsonConvert.convert<int>(json['averageScore']);
|
||||
if (averageScore != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.averageScore =
|
||||
averageScore;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.averageScore = averageScore;
|
||||
}
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle? title = jsonConvert
|
||||
.convert<MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle>(
|
||||
json['title']);
|
||||
final MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle? title = jsonConvert.convert<
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle>(json['title']);
|
||||
if (title != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMedia.title = title;
|
||||
}
|
||||
@@ -267,8 +255,7 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate $MediaCollectionRecen
|
||||
return mediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDateToJson(
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaEndDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -308,8 +295,7 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate $MediaCollectionRec
|
||||
return mediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDateToJson(
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaStartDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -341,8 +327,7 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage $MediaCollectionRe
|
||||
return mediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImageToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImageToJson(
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaCoverImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -373,17 +358,14 @@ MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle $MediaCollectionRecentl
|
||||
if (romaji != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.romaji = romaji;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.userPreferred =
|
||||
userPreferred;
|
||||
mediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle.userPreferred = userPreferred;
|
||||
}
|
||||
return mediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitleToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitleToJson(
|
||||
MediaCollectionRecentlyCompletedGraphqlDtoPageMediaTitle entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['english'] = entity.english;
|
||||
|
||||
@@ -4,8 +4,8 @@ import 'package:unyo/core/services/api/dto/media_collection_recently_released_gr
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoEntity $MediaCollectionRecentlyReleasedGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoEntity mediaCollectionRecentlyReleasedGraphqlDtoEntity = MediaCollectionRecentlyReleasedGraphqlDtoEntity();
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPage? page = jsonConvert
|
||||
.convert<MediaCollectionRecentlyReleasedGraphqlDtoPage>(json['Page']);
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPage? page = jsonConvert.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPage>(json['Page']);
|
||||
if (page != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoEntity.page = page;
|
||||
}
|
||||
@@ -33,16 +33,12 @@ MediaCollectionRecentlyReleasedGraphqlDtoPage $MediaCollectionRecentlyReleasedGr
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPage mediaCollectionRecentlyReleasedGraphqlDtoPage = MediaCollectionRecentlyReleasedGraphqlDtoPage();
|
||||
final List<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>? airingSchedules = (json['airingSchedules'] as List<
|
||||
dynamic>?)
|
||||
?.map(
|
||||
dynamic>?)?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>(
|
||||
e) as MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules)
|
||||
.toList();
|
||||
jsonConvert.convert<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>(
|
||||
e) as MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules).toList();
|
||||
if (airingSchedules != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPage.airingSchedules =
|
||||
airingSchedules;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPage.airingSchedules = airingSchedules;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPage;
|
||||
}
|
||||
@@ -50,15 +46,13 @@ MediaCollectionRecentlyReleasedGraphqlDtoPage $MediaCollectionRecentlyReleasedGr
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['airingSchedules'] =
|
||||
entity.airingSchedules.map((v) => v.toJson()).toList();
|
||||
data['airingSchedules'] = entity.airingSchedules.map((v) => v.toJson()).toList();
|
||||
return data;
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageExtension on MediaCollectionRecentlyReleasedGraphqlDtoPage {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPage copyWith({
|
||||
List<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>? airingSchedules,
|
||||
List<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules>? airingSchedules,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPage()
|
||||
..airingSchedules = airingSchedules ?? this.airingSchedules;
|
||||
@@ -68,18 +62,15 @@ extension MediaCollectionRecentlyReleasedGraphqlDtoPageExtension on MediaCollect
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules();
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia? media = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>(
|
||||
json['media']);
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia? media = jsonConvert.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia>(json['media']);
|
||||
if (media != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules.media = media;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedules entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['media'] = entity.media.toJson();
|
||||
@@ -99,27 +90,22 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia $MediaCollecti
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia();
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode? nextAiringEpisode = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>(
|
||||
.convert<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode>(
|
||||
json['nextAiringEpisode']);
|
||||
if (nextAiringEpisode != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.nextAiringEpisode = nextAiringEpisode;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.nextAiringEpisode = nextAiringEpisode;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.status =
|
||||
status;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.status = status;
|
||||
}
|
||||
final bool? isFavourite = jsonConvert.convert<bool>(json['isFavourite']);
|
||||
if (isFavourite != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.isFavourite = isFavourite;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.isFavourite = isFavourite;
|
||||
}
|
||||
final String? season = jsonConvert.convert<String>(json['season']);
|
||||
if (season != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.season =
|
||||
season;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.season = season;
|
||||
}
|
||||
final int? id = jsonConvert.convert<int>(json['id']);
|
||||
if (id != null) {
|
||||
@@ -127,108 +113,82 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia $MediaCollecti
|
||||
}
|
||||
final int? idMal = jsonConvert.convert<int>(json['idMal']);
|
||||
if (idMal != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.idMal =
|
||||
idMal;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.idMal = idMal;
|
||||
}
|
||||
final bool? isAdult = jsonConvert.convert<bool>(json['isAdult']);
|
||||
if (isAdult != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.isAdult =
|
||||
isAdult;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.isAdult = isAdult;
|
||||
}
|
||||
final int? meanScore = jsonConvert.convert<int>(json['meanScore']);
|
||||
if (meanScore != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.meanScore = meanScore;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.meanScore = meanScore;
|
||||
}
|
||||
final int? popularity = jsonConvert.convert<int>(json['popularity']);
|
||||
if (popularity != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.popularity = popularity;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.popularity = popularity;
|
||||
}
|
||||
final List<String>? genres = (json['genres'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<String>(e) as String).toList();
|
||||
if (genres != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.genres =
|
||||
genres;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.genres = genres;
|
||||
}
|
||||
final String? format = jsonConvert.convert<String>(json['format']);
|
||||
if (format != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.format =
|
||||
format;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.format = format;
|
||||
}
|
||||
final int? episodes = jsonConvert.convert<int>(json['episodes']);
|
||||
if (episodes != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.episodes =
|
||||
episodes;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.episodes = episodes;
|
||||
}
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate? endDate = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>(
|
||||
json['endDate']);
|
||||
.convert<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate>(json['endDate']);
|
||||
if (endDate != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.endDate =
|
||||
endDate;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.endDate = endDate;
|
||||
}
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate? startDate = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>(
|
||||
json['startDate']);
|
||||
.convert<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate>(json['startDate']);
|
||||
if (startDate != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.startDate = startDate;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.startDate = startDate;
|
||||
}
|
||||
final int? duration = jsonConvert.convert<int>(json['duration']);
|
||||
if (duration != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.duration =
|
||||
duration;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.duration = duration;
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.description = description;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.description = description;
|
||||
}
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage? coverImage = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>(
|
||||
.convert<MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage>(
|
||||
json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.coverImage = coverImage;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.coverImage = coverImage;
|
||||
}
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(
|
||||
json['countryOfOrigin']);
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(json['countryOfOrigin']);
|
||||
if (countryOfOrigin != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.countryOfOrigin = countryOfOrigin;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.countryOfOrigin = countryOfOrigin;
|
||||
}
|
||||
final int? chapters = jsonConvert.convert<int>(json['chapters']);
|
||||
if (chapters != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.chapters =
|
||||
chapters;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.chapters = chapters;
|
||||
}
|
||||
final String? bannerImage = jsonConvert.convert<String>(json['bannerImage']);
|
||||
if (bannerImage != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.bannerImage = bannerImage;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.bannerImage = bannerImage;
|
||||
}
|
||||
final int? averageScore = jsonConvert.convert<int>(json['averageScore']);
|
||||
if (averageScore != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia
|
||||
.averageScore = averageScore;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.averageScore = averageScore;
|
||||
}
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle? title = jsonConvert
|
||||
.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>(
|
||||
json['title']);
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle? title = jsonConvert.convert<
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle>(json['title']);
|
||||
if (title != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.title =
|
||||
title;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia.title = title;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMedia entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['nextAiringEpisode'] = entity.nextAiringEpisode.toJson();
|
||||
@@ -312,13 +272,11 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpiso
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode();
|
||||
final int? episode = jsonConvert.convert<int>(json['episode']);
|
||||
if (episode != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode
|
||||
.episode = episode;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode.episode = episode;
|
||||
}
|
||||
final int? airingAt = jsonConvert.convert<int>(json['airingAt']);
|
||||
if (airingAt != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode
|
||||
.airingAt = airingAt;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode.airingAt = airingAt;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode;
|
||||
}
|
||||
@@ -333,11 +291,10 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisodeExtension on MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode copyWith(
|
||||
{
|
||||
int? episode,
|
||||
int? airingAt,
|
||||
}) {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode copyWith({
|
||||
int? episode,
|
||||
int? airingAt,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaNextAiringEpisode()
|
||||
..episode = episode ?? this.episode
|
||||
..airingAt = airingAt ?? this.airingAt;
|
||||
@@ -349,24 +306,20 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate $MediaC
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate
|
||||
.day = day;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate
|
||||
.month = month;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate
|
||||
.year = year;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate.year = year;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDateToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -376,12 +329,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDateExtension on MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaEndDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
@@ -394,24 +346,20 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate $Medi
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate();
|
||||
final int? day = jsonConvert.convert<int>(json['day']);
|
||||
if (day != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate
|
||||
.day = day;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate.day = day;
|
||||
}
|
||||
final int? month = jsonConvert.convert<int>(json['month']);
|
||||
if (month != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate
|
||||
.month = month;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate.month = month;
|
||||
}
|
||||
final int? year = jsonConvert.convert<int>(json['year']);
|
||||
if (year != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate
|
||||
.year = year;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate.year = year;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDateToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -421,12 +369,11 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDateExtension on MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate copyWith(
|
||||
{
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate copyWith({
|
||||
int? day,
|
||||
int? month,
|
||||
int? year,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaStartDate()
|
||||
..day = day ?? this.day
|
||||
..month = month ?? this.month
|
||||
@@ -439,14 +386,12 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage $Med
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage();
|
||||
final String? large = jsonConvert.convert<String>(json['large']);
|
||||
if (large != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage
|
||||
.large = large;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage.large = large;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImageToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImageToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -454,10 +399,9 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImageExtension on MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage copyWith(
|
||||
{
|
||||
String? large,
|
||||
}) {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage copyWith({
|
||||
String? large,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaCoverImage()
|
||||
..large = large ?? this.large;
|
||||
}
|
||||
@@ -468,30 +412,24 @@ MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle $MediaCol
|
||||
final MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle = MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle();
|
||||
final String? english = jsonConvert.convert<String>(json['english']);
|
||||
if (english != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.english = english;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.english = english;
|
||||
}
|
||||
final String? native = jsonConvert.convert<String>(json['native']);
|
||||
if (native != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.native = native;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.native = native;
|
||||
}
|
||||
final String? romaji = jsonConvert.convert<String>(json['romaji']);
|
||||
if (romaji != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.romaji = romaji;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.romaji = romaji;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle
|
||||
.userPreferred = userPreferred;
|
||||
mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle.userPreferred = userPreferred;
|
||||
}
|
||||
return mediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitleToJson(
|
||||
Map<String, dynamic> $MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitleToJson(
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['english'] = entity.english;
|
||||
@@ -502,13 +440,12 @@ Map<String,
|
||||
}
|
||||
|
||||
extension MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitleExtension on MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle copyWith(
|
||||
{
|
||||
String? english,
|
||||
String? native,
|
||||
String? romaji,
|
||||
String? userPreferred,
|
||||
}) {
|
||||
MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle copyWith({
|
||||
String? english,
|
||||
String? native,
|
||||
String? romaji,
|
||||
String? userPreferred,
|
||||
}) {
|
||||
return MediaCollectionRecentlyReleasedGraphqlDtoPageAiringSchedulesMediaTitle()
|
||||
..english = english ?? this.english
|
||||
..native = native ?? this.native
|
||||
|
||||
@@ -4,8 +4,8 @@ import 'package:unyo/core/services/api/dto/media_collection_trendingOrPopular_gr
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoEntity $MediaCollectionTrendingOrPopularGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoEntity mediaCollectionTrendingOrPopularGraphqlDtoEntity = MediaCollectionTrendingOrPopularGraphqlDtoEntity();
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPage? page = jsonConvert
|
||||
.convert<MediaCollectionTrendingOrPopularGraphqlDtoPage>(json['Page']);
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPage? page = jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPage>(json['Page']);
|
||||
if (page != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoEntity.page = page;
|
||||
}
|
||||
@@ -31,13 +31,12 @@ extension MediaCollectionTrendingOrPopularGraphqlDtoEntityExtension on MediaColl
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPage $MediaCollectionTrendingOrPopularGraphqlDtoPageFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPage mediaCollectionTrendingOrPopularGraphqlDtoPage = MediaCollectionTrendingOrPopularGraphqlDtoPage();
|
||||
final List<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>? media = (json['media'] as List<
|
||||
dynamic>?)?.map(
|
||||
final List<MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>? media = (json['media'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>(
|
||||
e) as MediaCollectionTrendingOrPopularGraphqlDtoPageMedia).toList();
|
||||
jsonConvert.convert<MediaCollectionTrendingOrPopularGraphqlDtoPageMedia>(
|
||||
e) as MediaCollectionTrendingOrPopularGraphqlDtoPageMedia)
|
||||
.toList();
|
||||
if (media != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPage.media = media;
|
||||
}
|
||||
@@ -65,8 +64,7 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMedia $MediaCollectionTrendingOrPo
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMedia mediaCollectionTrendingOrPopularGraphqlDtoPageMedia = MediaCollectionTrendingOrPopularGraphqlDtoPageMedia();
|
||||
final dynamic nextAiringEpisode = json['nextAiringEpisode'];
|
||||
if (nextAiringEpisode != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.nextAiringEpisode =
|
||||
nextAiringEpisode;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.nextAiringEpisode = nextAiringEpisode;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
@@ -74,8 +72,7 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMedia $MediaCollectionTrendingOrPo
|
||||
}
|
||||
final bool? isFavourite = jsonConvert.convert<bool>(json['isFavourite']);
|
||||
if (isFavourite != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.isFavourite =
|
||||
isFavourite;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.isFavourite = isFavourite;
|
||||
}
|
||||
final String? season = jsonConvert.convert<String>(json['season']);
|
||||
if (season != null) {
|
||||
@@ -114,15 +111,13 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMedia $MediaCollectionTrendingOrPo
|
||||
if (episodes != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.episodes = episodes;
|
||||
}
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate? endDate = jsonConvert
|
||||
.convert<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate>(
|
||||
json['endDate']);
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate? endDate = jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate>(json['endDate']);
|
||||
if (endDate != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.endDate = endDate;
|
||||
}
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate? startDate = jsonConvert
|
||||
.convert<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate>(
|
||||
json['startDate']);
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate? startDate = jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate>(json['startDate']);
|
||||
if (startDate != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.startDate = startDate;
|
||||
}
|
||||
@@ -132,20 +127,16 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMedia $MediaCollectionTrendingOrPo
|
||||
}
|
||||
final String? description = jsonConvert.convert<String>(json['description']);
|
||||
if (description != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.description =
|
||||
description;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.description = description;
|
||||
}
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert
|
||||
.convert<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>(
|
||||
json['coverImage']);
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage>(json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.coverImage = coverImage;
|
||||
}
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(
|
||||
json['countryOfOrigin']);
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(json['countryOfOrigin']);
|
||||
if (countryOfOrigin != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.countryOfOrigin =
|
||||
countryOfOrigin;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.countryOfOrigin = countryOfOrigin;
|
||||
}
|
||||
final int? chapters = jsonConvert.convert<int>(json['chapters']);
|
||||
if (chapters != null) {
|
||||
@@ -153,17 +144,14 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMedia $MediaCollectionTrendingOrPo
|
||||
}
|
||||
final String? bannerImage = jsonConvert.convert<String>(json['bannerImage']);
|
||||
if (bannerImage != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.bannerImage =
|
||||
bannerImage;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.bannerImage = bannerImage;
|
||||
}
|
||||
final int? averageScore = jsonConvert.convert<int>(json['averageScore']);
|
||||
if (averageScore != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.averageScore =
|
||||
averageScore;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.averageScore = averageScore;
|
||||
}
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle? title = jsonConvert
|
||||
.convert<MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>(
|
||||
json['title']);
|
||||
final MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle? title = jsonConvert.convert<
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle>(json['title']);
|
||||
if (title != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMedia.title = title;
|
||||
}
|
||||
@@ -267,8 +255,7 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate $MediaCollectionTrend
|
||||
return mediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDateToJson(
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaEndDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -308,8 +295,7 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate $MediaCollectionTre
|
||||
return mediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDateToJson(
|
||||
Map<String, dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDateToJson(
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaStartDate entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['day'] = entity.day;
|
||||
@@ -341,8 +327,7 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage $MediaCollectionTr
|
||||
return mediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImageToJson(
|
||||
Map<String, dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImageToJson(
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaCoverImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -373,17 +358,14 @@ MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle $MediaCollectionTrendin
|
||||
if (romaji != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.romaji = romaji;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.userPreferred =
|
||||
userPreferred;
|
||||
mediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle.userPreferred = userPreferred;
|
||||
}
|
||||
return mediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitleToJson(
|
||||
Map<String, dynamic> $MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitleToJson(
|
||||
MediaCollectionTrendingOrPopularGraphqlDtoPageMediaTitle entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['english'] = entity.english;
|
||||
|
||||
@@ -31,9 +31,7 @@ extension MediaCollectionUpcomingGraphqlDtoEntityExtension on MediaCollectionUpc
|
||||
MediaCollectionUpcomingGraphqlDtoPage $MediaCollectionUpcomingGraphqlDtoPageFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionUpcomingGraphqlDtoPage mediaCollectionUpcomingGraphqlDtoPage = MediaCollectionUpcomingGraphqlDtoPage();
|
||||
final List<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMedia>? media = (json['media'] as List<
|
||||
dynamic>?)?.map(
|
||||
final List<MediaCollectionUpcomingGraphqlDtoPageMedia>? media = (json['media'] as List<dynamic>?)?.map(
|
||||
(e) =>
|
||||
jsonConvert.convert<MediaCollectionUpcomingGraphqlDtoPageMedia>(
|
||||
e) as MediaCollectionUpcomingGraphqlDtoPageMedia).toList();
|
||||
@@ -62,12 +60,10 @@ extension MediaCollectionUpcomingGraphqlDtoPageExtension on MediaCollectionUpcom
|
||||
MediaCollectionUpcomingGraphqlDtoPageMedia $MediaCollectionUpcomingGraphqlDtoPageMediaFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMedia mediaCollectionUpcomingGraphqlDtoPageMedia = MediaCollectionUpcomingGraphqlDtoPageMedia();
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode? nextAiringEpisode = jsonConvert
|
||||
.convert<MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode>(
|
||||
json['nextAiringEpisode']);
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode? nextAiringEpisode = jsonConvert.convert<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode>(json['nextAiringEpisode']);
|
||||
if (nextAiringEpisode != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.nextAiringEpisode =
|
||||
nextAiringEpisode;
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.nextAiringEpisode = nextAiringEpisode;
|
||||
}
|
||||
final String? status = jsonConvert.convert<String>(json['status']);
|
||||
if (status != null) {
|
||||
@@ -114,15 +110,13 @@ MediaCollectionUpcomingGraphqlDtoPageMedia $MediaCollectionUpcomingGraphqlDtoPag
|
||||
if (episodes != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.episodes = episodes;
|
||||
}
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaEndDate? endDate = jsonConvert
|
||||
.convert<MediaCollectionUpcomingGraphqlDtoPageMediaEndDate>(
|
||||
json['endDate']);
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaEndDate? endDate = jsonConvert.convert<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaEndDate>(json['endDate']);
|
||||
if (endDate != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.endDate = endDate;
|
||||
}
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaStartDate? startDate = jsonConvert
|
||||
.convert<MediaCollectionUpcomingGraphqlDtoPageMediaStartDate>(
|
||||
json['startDate']);
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaStartDate? startDate = jsonConvert.convert<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaStartDate>(json['startDate']);
|
||||
if (startDate != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.startDate = startDate;
|
||||
}
|
||||
@@ -134,17 +128,14 @@ MediaCollectionUpcomingGraphqlDtoPageMedia $MediaCollectionUpcomingGraphqlDtoPag
|
||||
if (description != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.description = description;
|
||||
}
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert
|
||||
.convert<MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage>(
|
||||
json['coverImage']);
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage? coverImage = jsonConvert.convert<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage>(json['coverImage']);
|
||||
if (coverImage != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.coverImage = coverImage;
|
||||
}
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(
|
||||
json['countryOfOrigin']);
|
||||
final String? countryOfOrigin = jsonConvert.convert<String>(json['countryOfOrigin']);
|
||||
if (countryOfOrigin != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.countryOfOrigin =
|
||||
countryOfOrigin;
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.countryOfOrigin = countryOfOrigin;
|
||||
}
|
||||
final int? chapters = jsonConvert.convert<int>(json['chapters']);
|
||||
if (chapters != null) {
|
||||
@@ -158,8 +149,8 @@ MediaCollectionUpcomingGraphqlDtoPageMedia $MediaCollectionUpcomingGraphqlDtoPag
|
||||
if (averageScore != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.averageScore = averageScore;
|
||||
}
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaTitle? title = jsonConvert
|
||||
.convert<MediaCollectionUpcomingGraphqlDtoPageMediaTitle>(json['title']);
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaTitle? title = jsonConvert.convert<
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaTitle>(json['title']);
|
||||
if (title != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMedia.title = title;
|
||||
}
|
||||
@@ -250,19 +241,16 @@ MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode $MediaCollectionUpco
|
||||
final MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode = MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode();
|
||||
final int? episode = jsonConvert.convert<int>(json['episode']);
|
||||
if (episode != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.episode =
|
||||
episode;
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.episode = episode;
|
||||
}
|
||||
final int? airingAt = jsonConvert.convert<int>(json['airingAt']);
|
||||
if (airingAt != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.airingAt =
|
||||
airingAt;
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode.airingAt = airingAt;
|
||||
}
|
||||
return mediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisodeToJson(
|
||||
Map<String, dynamic> $MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisodeToJson(
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaNextAiringEpisode entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['episode'] = entity.episode;
|
||||
@@ -371,8 +359,7 @@ MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage $MediaCollectionUpcomingGra
|
||||
return mediaCollectionUpcomingGraphqlDtoPageMediaCoverImage;
|
||||
}
|
||||
|
||||
Map<String,
|
||||
dynamic> $MediaCollectionUpcomingGraphqlDtoPageMediaCoverImageToJson(
|
||||
Map<String, dynamic> $MediaCollectionUpcomingGraphqlDtoPageMediaCoverImageToJson(
|
||||
MediaCollectionUpcomingGraphqlDtoPageMediaCoverImage entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['large'] = entity.large;
|
||||
@@ -403,11 +390,9 @@ MediaCollectionUpcomingGraphqlDtoPageMediaTitle $MediaCollectionUpcomingGraphqlD
|
||||
if (romaji != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaTitle.romaji = romaji;
|
||||
}
|
||||
final String? userPreferred = jsonConvert.convert<String>(
|
||||
json['userPreferred']);
|
||||
final String? userPreferred = jsonConvert.convert<String>(json['userPreferred']);
|
||||
if (userPreferred != null) {
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaTitle.userPreferred =
|
||||
userPreferred;
|
||||
mediaCollectionUpcomingGraphqlDtoPageMediaTitle.userPreferred = userPreferred;
|
||||
}
|
||||
return mediaCollectionUpcomingGraphqlDtoPageMediaTitle;
|
||||
}
|
||||
|
||||
121
lib/generated/json/tachiyomi_repo_json_entity.g.dart
Normal file
121
lib/generated/json/tachiyomi_repo_json_entity.g.dart
Normal file
@@ -0,0 +1,121 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/extensions/tachiyomi_repo_json_entity.dart';
|
||||
|
||||
TachiyomiRepoJsonEntity $TachiyomiRepoJsonEntityFromJson(Map<String, dynamic> json) {
|
||||
final TachiyomiRepoJsonEntity tachiyomiRepoJsonEntity = TachiyomiRepoJsonEntity();
|
||||
final String? name = jsonConvert.convert<String>(json['name']);
|
||||
if (name != null) {
|
||||
tachiyomiRepoJsonEntity.name = name;
|
||||
}
|
||||
final String? pkg = jsonConvert.convert<String>(json['pkg']);
|
||||
if (pkg != null) {
|
||||
tachiyomiRepoJsonEntity.pkg = pkg;
|
||||
}
|
||||
final String? apk = jsonConvert.convert<String>(json['apk']);
|
||||
if (apk != null) {
|
||||
tachiyomiRepoJsonEntity.apk = apk;
|
||||
}
|
||||
final String? lang = jsonConvert.convert<String>(json['lang']);
|
||||
if (lang != null) {
|
||||
tachiyomiRepoJsonEntity.lang = lang;
|
||||
}
|
||||
final double? code = jsonConvert.convert<double>(json['code']);
|
||||
if (code != null) {
|
||||
tachiyomiRepoJsonEntity.code = code;
|
||||
}
|
||||
final String? version = jsonConvert.convert<String>(json['version']);
|
||||
if (version != null) {
|
||||
tachiyomiRepoJsonEntity.version = version;
|
||||
}
|
||||
final double? nsfw = jsonConvert.convert<double>(json['nsfw']);
|
||||
if (nsfw != null) {
|
||||
tachiyomiRepoJsonEntity.nsfw = nsfw;
|
||||
}
|
||||
final List<TachiyomiRepoJsonSources>? sources = (json['sources'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<TachiyomiRepoJsonSources>(e) as TachiyomiRepoJsonSources).toList();
|
||||
if (sources != null) {
|
||||
tachiyomiRepoJsonEntity.sources = sources;
|
||||
}
|
||||
return tachiyomiRepoJsonEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $TachiyomiRepoJsonEntityToJson(TachiyomiRepoJsonEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['name'] = entity.name;
|
||||
data['pkg'] = entity.pkg;
|
||||
data['apk'] = entity.apk;
|
||||
data['lang'] = entity.lang;
|
||||
data['code'] = entity.code;
|
||||
data['version'] = entity.version;
|
||||
data['nsfw'] = entity.nsfw;
|
||||
data['sources'] = entity.sources.map((v) => v.toJson()).toList();
|
||||
return data;
|
||||
}
|
||||
|
||||
extension TachiyomiRepoJsonEntityExtension on TachiyomiRepoJsonEntity {
|
||||
TachiyomiRepoJsonEntity copyWith({
|
||||
String? name,
|
||||
String? pkg,
|
||||
String? apk,
|
||||
String? lang,
|
||||
double? code,
|
||||
String? version,
|
||||
double? nsfw,
|
||||
List<TachiyomiRepoJsonSources>? sources,
|
||||
}) {
|
||||
return TachiyomiRepoJsonEntity()
|
||||
..name = name ?? this.name
|
||||
..pkg = pkg ?? this.pkg
|
||||
..apk = apk ?? this.apk
|
||||
..lang = lang ?? this.lang
|
||||
..code = code ?? this.code
|
||||
..version = version ?? this.version
|
||||
..nsfw = nsfw ?? this.nsfw
|
||||
..sources = sources ?? this.sources;
|
||||
}
|
||||
}
|
||||
|
||||
TachiyomiRepoJsonSources $TachiyomiRepoJsonSourcesFromJson(Map<String, dynamic> json) {
|
||||
final TachiyomiRepoJsonSources tachiyomiRepoJsonSources = TachiyomiRepoJsonSources();
|
||||
final String? name = jsonConvert.convert<String>(json['name']);
|
||||
if (name != null) {
|
||||
tachiyomiRepoJsonSources.name = name;
|
||||
}
|
||||
final String? lang = jsonConvert.convert<String>(json['lang']);
|
||||
if (lang != null) {
|
||||
tachiyomiRepoJsonSources.lang = lang;
|
||||
}
|
||||
final String? id = jsonConvert.convert<String>(json['id']);
|
||||
if (id != null) {
|
||||
tachiyomiRepoJsonSources.id = id;
|
||||
}
|
||||
final String? baseUrl = jsonConvert.convert<String>(json['baseUrl']);
|
||||
if (baseUrl != null) {
|
||||
tachiyomiRepoJsonSources.baseUrl = baseUrl;
|
||||
}
|
||||
return tachiyomiRepoJsonSources;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $TachiyomiRepoJsonSourcesToJson(TachiyomiRepoJsonSources entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['name'] = entity.name;
|
||||
data['lang'] = entity.lang;
|
||||
data['id'] = entity.id;
|
||||
data['baseUrl'] = entity.baseUrl;
|
||||
return data;
|
||||
}
|
||||
|
||||
extension TachiyomiRepoJsonSourcesExtension on TachiyomiRepoJsonSources {
|
||||
TachiyomiRepoJsonSources copyWith({
|
||||
String? name,
|
||||
String? lang,
|
||||
String? id,
|
||||
String? baseUrl,
|
||||
}) {
|
||||
return TachiyomiRepoJsonSources()
|
||||
..name = name ?? this.name
|
||||
..lang = lang ?? this.lang
|
||||
..id = id ?? this.id
|
||||
..baseUrl = baseUrl ?? this.baseUrl;
|
||||
}
|
||||
}
|
||||
@@ -1,19 +1,16 @@
|
||||
import 'package:unyo/generated/json/base/json_convert_content.dart';
|
||||
import 'package:unyo/core/services/api/dto/viewer_graphql_dto_entity.dart';
|
||||
|
||||
ViewerGraphqlDtoEntity $ViewerGraphqlDtoEntityFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
ViewerGraphqlDtoEntity $ViewerGraphqlDtoEntityFromJson(Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoEntity viewerGraphqlDtoEntity = ViewerGraphqlDtoEntity();
|
||||
final ViewerGraphqlDtoViewer? viewer = jsonConvert.convert<
|
||||
ViewerGraphqlDtoViewer>(json['Viewer']);
|
||||
final ViewerGraphqlDtoViewer? viewer = jsonConvert.convert<ViewerGraphqlDtoViewer>(json['Viewer']);
|
||||
if (viewer != null) {
|
||||
viewerGraphqlDtoEntity.viewer = viewer;
|
||||
}
|
||||
return viewerGraphqlDtoEntity;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $ViewerGraphqlDtoEntityToJson(
|
||||
ViewerGraphqlDtoEntity entity) {
|
||||
Map<String, dynamic> $ViewerGraphqlDtoEntityToJson(ViewerGraphqlDtoEntity entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['Viewer'] = entity.viewer.toJson();
|
||||
return data;
|
||||
@@ -28,8 +25,7 @@ extension ViewerGraphqlDtoEntityExtension on ViewerGraphqlDtoEntity {
|
||||
}
|
||||
}
|
||||
|
||||
ViewerGraphqlDtoViewer $ViewerGraphqlDtoViewerFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
ViewerGraphqlDtoViewer $ViewerGraphqlDtoViewerFromJson(Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoViewer viewerGraphqlDtoViewer = ViewerGraphqlDtoViewer();
|
||||
final int? id = jsonConvert.convert<int>(json['id']);
|
||||
if (id != null) {
|
||||
@@ -39,14 +35,13 @@ ViewerGraphqlDtoViewer $ViewerGraphqlDtoViewerFromJson(
|
||||
if (bannerImage != null) {
|
||||
viewerGraphqlDtoViewer.bannerImage = bannerImage;
|
||||
}
|
||||
final ViewerGraphqlDtoViewerAvatar? avatar = jsonConvert.convert<
|
||||
ViewerGraphqlDtoViewerAvatar>(json['avatar']);
|
||||
final ViewerGraphqlDtoViewerAvatar? avatar = jsonConvert.convert<ViewerGraphqlDtoViewerAvatar>(
|
||||
json['avatar']);
|
||||
if (avatar != null) {
|
||||
viewerGraphqlDtoViewer.avatar = avatar;
|
||||
}
|
||||
final ViewerGraphqlDtoViewerMediaListOptions? mediaListOptions = jsonConvert
|
||||
.convert<ViewerGraphqlDtoViewerMediaListOptions>(
|
||||
json['mediaListOptions']);
|
||||
final ViewerGraphqlDtoViewerMediaListOptions? mediaListOptions = jsonConvert.convert<
|
||||
ViewerGraphqlDtoViewerMediaListOptions>(json['mediaListOptions']);
|
||||
if (mediaListOptions != null) {
|
||||
viewerGraphqlDtoViewer.mediaListOptions = mediaListOptions;
|
||||
}
|
||||
@@ -57,8 +52,7 @@ ViewerGraphqlDtoViewer $ViewerGraphqlDtoViewerFromJson(
|
||||
return viewerGraphqlDtoViewer;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $ViewerGraphqlDtoViewerToJson(
|
||||
ViewerGraphqlDtoViewer entity) {
|
||||
Map<String, dynamic> $ViewerGraphqlDtoViewerToJson(ViewerGraphqlDtoViewer entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['id'] = entity.id;
|
||||
data['bannerImage'] = entity.bannerImage;
|
||||
@@ -85,8 +79,7 @@ extension ViewerGraphqlDtoViewerExtension on ViewerGraphqlDtoViewer {
|
||||
}
|
||||
}
|
||||
|
||||
ViewerGraphqlDtoViewerAvatar $ViewerGraphqlDtoViewerAvatarFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
ViewerGraphqlDtoViewerAvatar $ViewerGraphqlDtoViewerAvatarFromJson(Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoViewerAvatar viewerGraphqlDtoViewerAvatar = ViewerGraphqlDtoViewerAvatar();
|
||||
final String? medium = jsonConvert.convert<String>(json['medium']);
|
||||
if (medium != null) {
|
||||
@@ -95,8 +88,7 @@ ViewerGraphqlDtoViewerAvatar $ViewerGraphqlDtoViewerAvatarFromJson(
|
||||
return viewerGraphqlDtoViewerAvatar;
|
||||
}
|
||||
|
||||
Map<String, dynamic> $ViewerGraphqlDtoViewerAvatarToJson(
|
||||
ViewerGraphqlDtoViewerAvatar entity) {
|
||||
Map<String, dynamic> $ViewerGraphqlDtoViewerAvatarToJson(ViewerGraphqlDtoViewerAvatar entity) {
|
||||
final Map<String, dynamic> data = <String, dynamic>{};
|
||||
data['medium'] = entity.medium;
|
||||
return data;
|
||||
@@ -114,15 +106,13 @@ extension ViewerGraphqlDtoViewerAvatarExtension on ViewerGraphqlDtoViewerAvatar
|
||||
ViewerGraphqlDtoViewerMediaListOptions $ViewerGraphqlDtoViewerMediaListOptionsFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoViewerMediaListOptions viewerGraphqlDtoViewerMediaListOptions = ViewerGraphqlDtoViewerMediaListOptions();
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsAnimeList? animeList = jsonConvert
|
||||
.convert<ViewerGraphqlDtoViewerMediaListOptionsAnimeList>(
|
||||
json['animeList']);
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsAnimeList? animeList = jsonConvert.convert<
|
||||
ViewerGraphqlDtoViewerMediaListOptionsAnimeList>(json['animeList']);
|
||||
if (animeList != null) {
|
||||
viewerGraphqlDtoViewerMediaListOptions.animeList = animeList;
|
||||
}
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsMangaList? mangaList = jsonConvert
|
||||
.convert<ViewerGraphqlDtoViewerMediaListOptionsMangaList>(
|
||||
json['mangaList']);
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsMangaList? mangaList = jsonConvert.convert<
|
||||
ViewerGraphqlDtoViewerMediaListOptionsMangaList>(json['mangaList']);
|
||||
if (mangaList != null) {
|
||||
viewerGraphqlDtoViewerMediaListOptions.mangaList = mangaList;
|
||||
}
|
||||
@@ -158,10 +148,8 @@ extension ViewerGraphqlDtoViewerMediaListOptionsExtension on ViewerGraphqlDtoVie
|
||||
ViewerGraphqlDtoViewerMediaListOptionsAnimeList $ViewerGraphqlDtoViewerMediaListOptionsAnimeListFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsAnimeList viewerGraphqlDtoViewerMediaListOptionsAnimeList = ViewerGraphqlDtoViewerMediaListOptionsAnimeList();
|
||||
final List<String>? customLists = (json['customLists'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) => jsonConvert.convert<String>(e) as String)
|
||||
.toList();
|
||||
final List<String>? customLists = (json['customLists'] as List<dynamic>?)?.map(
|
||||
(e) => jsonConvert.convert<String>(e) as String).toList();
|
||||
if (customLists != null) {
|
||||
viewerGraphqlDtoViewerMediaListOptionsAnimeList.customLists = customLists;
|
||||
}
|
||||
@@ -187,10 +175,8 @@ extension ViewerGraphqlDtoViewerMediaListOptionsAnimeListExtension on ViewerGrap
|
||||
ViewerGraphqlDtoViewerMediaListOptionsMangaList $ViewerGraphqlDtoViewerMediaListOptionsMangaListFromJson(
|
||||
Map<String, dynamic> json) {
|
||||
final ViewerGraphqlDtoViewerMediaListOptionsMangaList viewerGraphqlDtoViewerMediaListOptionsMangaList = ViewerGraphqlDtoViewerMediaListOptionsMangaList();
|
||||
final List<dynamic>? customLists = (json['customLists'] as List<dynamic>?)
|
||||
?.map(
|
||||
(e) => e)
|
||||
.toList();
|
||||
final List<dynamic>? customLists = (json['customLists'] as List<dynamic>?)?.map(
|
||||
(e) => e).toList();
|
||||
if (customLists != null) {
|
||||
viewerGraphqlDtoViewerMediaListOptionsMangaList.customLists = customLists;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import 'package:unyo/core/enums/service.dart';
|
||||
import 'package:unyo/data/models/anilist_anime_details.dart';
|
||||
import 'package:unyo/data/models/anilist_user_model.dart';
|
||||
import 'package:unyo/data/models/local_user_model.dart';
|
||||
import 'package:unyo/domain/entities/extension.dart';
|
||||
import 'package:unyo/domain/entities/media_list.dart';
|
||||
import 'package:unyo/domain/entities/settings.dart';
|
||||
|
||||
@@ -16,6 +17,7 @@ extension HiveRegistrar on HiveInterface {
|
||||
registerAdapter(AnilistUserModelAdapter());
|
||||
registerAdapter(AnimeProgressModelAdapter());
|
||||
registerAdapter(EpisodeServiceEnumAdapter());
|
||||
registerAdapter(ExtensionModelAdapter());
|
||||
registerAdapter(LocalUserModelAdapter());
|
||||
registerAdapter(MediaListModelAdapter());
|
||||
registerAdapter(ServiceEnumAdapter());
|
||||
@@ -28,6 +30,7 @@ extension IsolatedHiveRegistrar on IsolatedHiveInterface {
|
||||
registerAdapter(AnilistUserModelAdapter());
|
||||
registerAdapter(AnimeProgressModelAdapter());
|
||||
registerAdapter(EpisodeServiceEnumAdapter());
|
||||
registerAdapter(ExtensionModelAdapter());
|
||||
registerAdapter(LocalUserModelAdapter());
|
||||
registerAdapter(MediaListModelAdapter());
|
||||
registerAdapter(ServiceEnumAdapter());
|
||||
|
||||
@@ -6,6 +6,7 @@ import 'package:unyo/application/cubits/extensions_cubit.dart';
|
||||
import 'package:unyo/application/states/extensions_state.dart';
|
||||
import 'package:unyo/core/di/locator.dart';
|
||||
import 'package:unyo/core/services/effects/app_effect_handler.dart';
|
||||
import 'package:unyo/presentation/widgets/styled/unyo_extension_button.dart';
|
||||
import 'package:unyo/presentation/widgets/text/text_body_large.dart';
|
||||
import 'package:unyo/presentation/widgets/text/text_headline_medium.dart';
|
||||
|
||||
@@ -27,7 +28,11 @@ class _ExtensionsListener extends StatelessWidget {
|
||||
return BlocListener<ExtensionsCubit, ExtensionsState>(
|
||||
listener: (context, state) {
|
||||
if (state.effects.isNotEmpty) {
|
||||
sl<AppEffectHandler>().handleEffects(context, state.effects, context.read<ExtensionsCubit>().clearEffects);
|
||||
sl<AppEffectHandler>().handleEffects(
|
||||
context,
|
||||
state.effects,
|
||||
context.read<ExtensionsCubit>().clearEffects,
|
||||
);
|
||||
}
|
||||
},
|
||||
child: const _ExtensionsView(),
|
||||
@@ -43,13 +48,17 @@ class _ExtensionsView extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderStateMixin {
|
||||
late TabController tabController;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
tabController = TabController(length: 4, vsync: this);
|
||||
super.initState();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
tabController.dispose();
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@@ -57,7 +66,6 @@ class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderSta
|
||||
Widget build(BuildContext context) {
|
||||
return BlocBuilder<ExtensionsCubit, ExtensionsState>(
|
||||
builder: (context, state) {
|
||||
final TabController tabController = TabController(length: 4, vsync: this);
|
||||
return Column(
|
||||
children: [
|
||||
const SizedBox(height: 15),
|
||||
@@ -73,10 +81,16 @@ class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderSta
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
const TextHeadlineMedium(text: "Manage your ", style: TextStyle(fontWeight: FontWeight.bold)),
|
||||
const TextHeadlineMedium(
|
||||
text: "Manage your ",
|
||||
style: TextStyle(fontWeight: FontWeight.bold),
|
||||
),
|
||||
TextHeadlineMedium(
|
||||
text: "Extensions!",
|
||||
style: TextStyle(color: ColorScheme.of(context).tertiary, fontWeight: FontWeight.bold),
|
||||
style: TextStyle(
|
||||
color: ColorScheme.of(context).tertiary,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
@@ -106,11 +120,6 @@ class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderSta
|
||||
isScrollable: true,
|
||||
controller: tabController,
|
||||
tabs: const [
|
||||
Tooltip(
|
||||
waitDuration: Duration(milliseconds: 1000),
|
||||
message: "Installed Anime",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Installed Anime")),
|
||||
),
|
||||
Tooltip(
|
||||
waitDuration: Duration(milliseconds: 1000),
|
||||
message: "Available Anime",
|
||||
@@ -118,13 +127,18 @@ class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderSta
|
||||
),
|
||||
Tooltip(
|
||||
waitDuration: Duration(milliseconds: 1000),
|
||||
message: "Installed Manga",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Installed Manga")),
|
||||
message: "Available Manga",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Available Manga")),
|
||||
),
|
||||
Tooltip(
|
||||
waitDuration: Duration(milliseconds: 1000),
|
||||
message: "Available Manga",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Available Manga")),
|
||||
message: "Installed Anime",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Installed Anime")),
|
||||
),
|
||||
Tooltip(
|
||||
waitDuration: Duration(milliseconds: 1000),
|
||||
message: "Installed Manga",
|
||||
child: SizedBox(width: 150, child: Tab(text: "Installed Manga")),
|
||||
),
|
||||
],
|
||||
),
|
||||
@@ -135,11 +149,67 @@ class _ExtensionsViewState extends State<_ExtensionsView> with TickerProviderSta
|
||||
padding: EdgeInsets.only(left: 15.0.w, right: 15.0.w, top: 15.0.h),
|
||||
child: TabBarView(
|
||||
controller: tabController,
|
||||
children: const [
|
||||
SizedBox.shrink(),
|
||||
SizedBox.shrink(),
|
||||
SizedBox.shrink(),
|
||||
SizedBox.shrink(),
|
||||
children: [
|
||||
ListView(
|
||||
scrollDirection: Axis.vertical,
|
||||
children: [
|
||||
...state.availableAnimeExtensions.map(
|
||||
(extension) => UnyoExtensionButton(
|
||||
iconUrl: extension.icon,
|
||||
name: extension.name,
|
||||
lang: extension.lang,
|
||||
version: extension.version,
|
||||
nsfw: extension.nsfw,
|
||||
onDownloadPressed: (){},
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
ListView(
|
||||
scrollDirection: Axis.vertical,
|
||||
children: [
|
||||
...state.availableMangaExtensions.map(
|
||||
(extension) => UnyoExtensionButton(
|
||||
iconUrl: extension.icon,
|
||||
name: extension.name,
|
||||
lang: extension.lang,
|
||||
version: extension.version,
|
||||
nsfw: extension.nsfw,
|
||||
onDownloadPressed: (){},
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
ListView(
|
||||
scrollDirection: Axis.vertical,
|
||||
children: [
|
||||
...state.installedAnimeExtensions.map(
|
||||
(extension) => UnyoExtensionButton(
|
||||
iconUrl: extension.icon,
|
||||
name: extension.name,
|
||||
lang: extension.lang,
|
||||
version: extension.version,
|
||||
nsfw: extension.nsfw,
|
||||
onDeletePressed: (){},
|
||||
onSettingsPressed: (){},
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
ListView(
|
||||
scrollDirection: Axis.vertical,
|
||||
children: [
|
||||
...state.installedMangaExtensions.map(
|
||||
(extension) => UnyoExtensionButton(
|
||||
iconUrl: extension.icon,
|
||||
name: extension.name,
|
||||
lang: extension.lang,
|
||||
version: extension.version,
|
||||
nsfw: extension.nsfw,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
190
lib/presentation/widgets/styled/unyo_extension_button.dart
Normal file
190
lib/presentation/widgets/styled/unyo_extension_button.dart
Normal file
@@ -0,0 +1,190 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
|
||||
class UnyoExtensionButton extends StatelessWidget {
|
||||
final void Function()? onDownloadPressed;
|
||||
final void Function()? onDeletePressed;
|
||||
final void Function()? onSettingsPressed;
|
||||
final String iconUrl;
|
||||
final String name;
|
||||
final String lang;
|
||||
final String version;
|
||||
final int nsfw;
|
||||
|
||||
const UnyoExtensionButton({
|
||||
super.key,
|
||||
this.onDownloadPressed,
|
||||
required this.iconUrl,
|
||||
required this.name,
|
||||
required this.lang,
|
||||
required this.version,
|
||||
required this.nsfw,
|
||||
this.onDeletePressed,
|
||||
this.onSettingsPressed,
|
||||
});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.only(left: 16.0.w, right: 16.0.w, bottom: 8.0.h),
|
||||
child: Container(
|
||||
width: double.infinity,
|
||||
height: 70,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(20),
|
||||
color: Colors.black.withOpacity(0.15),
|
||||
),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
SizedBox(width: 20.w),
|
||||
ClipOval(child: Image.network(iconUrl, fit: BoxFit.fill, width: 52, height: 52)),
|
||||
SizedBox(width: 14.w),
|
||||
Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Text(
|
||||
name,
|
||||
style: const TextStyle(fontSize: 16, fontWeight: FontWeight.bold, color: Colors.white),
|
||||
),
|
||||
const SizedBox(width: 4,),
|
||||
nsfw == 1 ? Container(
|
||||
height: 14,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: Colors.amber.withOpacity(0.3),
|
||||
),
|
||||
child: const Center(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 4.0),
|
||||
child: Text(
|
||||
"NFSW",
|
||||
style: TextStyle(
|
||||
fontSize: 8,
|
||||
fontWeight: FontWeight.w700,
|
||||
color: Colors.white,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
) : const SizedBox.shrink(),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
height: 22,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: ColorScheme.of(context).primary.withOpacity(0.3),
|
||||
),
|
||||
child: Center(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 6.0),
|
||||
child: Text(
|
||||
"${lang.substring(0, 1).toUpperCase()}${lang.substring(1)}",
|
||||
style: const TextStyle(
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: Colors.white,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
const SizedBox(width: 4.0),
|
||||
Container(
|
||||
height: 22,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: ColorScheme.of(context).tertiary.withOpacity(0.3),
|
||||
),
|
||||
child: Center(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 6.0),
|
||||
child: Text(
|
||||
version,
|
||||
style: const TextStyle(
|
||||
fontSize: 11,
|
||||
fontWeight: FontWeight.bold,
|
||||
color: Colors.white,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
Row(
|
||||
children: [
|
||||
onDownloadPressed != null
|
||||
? Padding(
|
||||
padding: EdgeInsets.only(left: 10.0.w),
|
||||
child: InkWell(
|
||||
onTap: onDownloadPressed,
|
||||
child: Container(
|
||||
width: 45,
|
||||
height: 45,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: ColorScheme.of(context).primary.withOpacity(0.2),
|
||||
),
|
||||
child: Icon(Icons.download_rounded, color: ColorScheme.of(context).tertiary),
|
||||
),
|
||||
),
|
||||
)
|
||||
: const SizedBox(),
|
||||
onSettingsPressed != null
|
||||
? Padding(
|
||||
padding: EdgeInsets.only(left: 10.0.w),
|
||||
child: InkWell(
|
||||
onTap: onSettingsPressed,
|
||||
child: Container(
|
||||
width: 45,
|
||||
height: 45,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: ColorScheme.of(context).primary.withOpacity(0.2),
|
||||
),
|
||||
child: Icon(Icons.settings_rounded, color: ColorScheme.of(context).tertiary),
|
||||
),
|
||||
),
|
||||
)
|
||||
: const SizedBox(),
|
||||
onDeletePressed != null
|
||||
? Padding(
|
||||
padding: EdgeInsets.only(left: 10.0.w),
|
||||
child: InkWell(
|
||||
onTap: onDeletePressed,
|
||||
child: Container(
|
||||
width: 45,
|
||||
height: 45,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
color: Colors.red.withOpacity(0.2),
|
||||
),
|
||||
child: Icon(Icons.delete_rounded, color: Colors.redAccent.withOpacity(0.3)),
|
||||
),
|
||||
),
|
||||
)
|
||||
: const SizedBox(),
|
||||
SizedBox(width: 20.w),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user