Initial commit

This commit is contained in:
admin1
2026-07-14 11:11:36 +08:00
commit 656499cf94
604 changed files with 119518 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
class TraktIds {
final int? trakt;
final String? imdb;
final int? tmdb;
final int? tvdb;
final String? slug;
const TraktIds({this.trakt, this.imdb, this.tmdb, this.tvdb, this.slug});
factory TraktIds.fromJson(Object? raw) {
if (raw is! Map) return const TraktIds();
final json = raw.cast<String, dynamic>();
return TraktIds(
trakt: (json['trakt'] as num?)?.toInt(),
imdb: json['imdb'] as String?,
tmdb: (json['tmdb'] as num?)?.toInt(),
tvdb: (json['tvdb'] as num?)?.toInt(),
slug: json['slug'] as String?,
);
}
bool get hasReliableId =>
(trakt != null && trakt! > 0) ||
(imdb != null && imdb!.isNotEmpty) ||
(tmdb != null && tmdb! > 0) ||
(tvdb != null && tvdb! > 0);
Map<String, dynamic> toJson() {
final out = <String, dynamic>{};
if (trakt != null && trakt! > 0) out['trakt'] = trakt;
if (imdb != null && imdb!.isNotEmpty) out['imdb'] = imdb;
if (tmdb != null && tmdb! > 0) out['tmdb'] = tmdb;
if (tvdb != null && tvdb! > 0) out['tvdb'] = tvdb;
if (slug != null && slug!.isNotEmpty) out['slug'] = slug;
return out;
}
}