Files
bazarr/libs/plexapi/mixins/__init__.py
2026-03-17 21:30:35 -04:00

267 lines
7.8 KiB
Python

"""
PlexAPI Mixins Module
This module contains mixins for Plex objects.
"""
from .advanced_settings import AdvancedSettingsMixin
from .edit import (
AddedAtMixin, AudienceRatingMixin, CollectionMixin, ContentRatingMixin,
CountryMixin, CriticRatingMixin, DirectorMixin, EditionTitleMixin,
EditFieldMixin, EditTagsMixin, GenreMixin, LabelMixin, MoodMixin,
OriginallyAvailableMixin, OriginalTitleMixin, PhotoCapturedTimeMixin,
ProducerMixin, SimilarArtistMixin, SortTitleMixin, StudioMixin,
StyleMixin, SummaryMixin, TaglineMixin, TagMixin, TitleMixin,
TrackArtistMixin, TrackDiscNumberMixin, TrackNumberMixin,
UserRatingMixin, WriterMixin
)
from .objects import ExtrasMixin, HubsMixin
from .played_unplayed import PlayedUnplayedMixin
from .rating import RatingMixin
from .resources import (
ArtLockMixin, ArtMixin, ArtUrlMixin,
LogoLockMixin, LogoMixin, LogoUrlMixin,
PosterLockMixin, PosterMixin, PosterUrlMixin,
SquareArtLockMixin, SquareArtMixin, SquareArtUrlMixin,
ThemeLockMixin, ThemeMixin, ThemeUrlMixin
)
from .smart_filter import SmartFilterMixin
from .split_merge import SplitMergeMixin
from .unmatch_match import UnmatchMatchMixin
from .watchlist import WatchlistMixin
class MovieEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, ContentRatingMixin, CriticRatingMixin, EditionTitleMixin,
OriginallyAvailableMixin, OriginalTitleMixin, SortTitleMixin,
StudioMixin, SummaryMixin, TaglineMixin, TitleMixin, UserRatingMixin,
CollectionMixin, CountryMixin, DirectorMixin, GenreMixin, LabelMixin, ProducerMixin, WriterMixin
):
pass
class ShowEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, ContentRatingMixin, CriticRatingMixin,
OriginallyAvailableMixin, OriginalTitleMixin, SortTitleMixin, StudioMixin,
SummaryMixin, TaglineMixin, TitleMixin, UserRatingMixin,
CollectionMixin, GenreMixin, LabelMixin,
):
pass
class SeasonEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, CriticRatingMixin,
SummaryMixin, TitleMixin, UserRatingMixin,
CollectionMixin, LabelMixin
):
pass
class EpisodeEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, ContentRatingMixin, CriticRatingMixin,
OriginallyAvailableMixin, SortTitleMixin, SummaryMixin, TitleMixin, UserRatingMixin,
CollectionMixin, DirectorMixin, LabelMixin, WriterMixin
):
pass
class ArtistEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, CriticRatingMixin,
SortTitleMixin, SummaryMixin, TitleMixin, UserRatingMixin,
CollectionMixin, CountryMixin, GenreMixin, LabelMixin, MoodMixin, SimilarArtistMixin, StyleMixin
):
pass
class AlbumEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, CriticRatingMixin,
OriginallyAvailableMixin, SortTitleMixin, StudioMixin, SummaryMixin, TitleMixin, UserRatingMixin,
CollectionMixin, GenreMixin, LabelMixin, MoodMixin, StyleMixin
):
pass
class TrackEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, CriticRatingMixin,
TitleMixin, TrackArtistMixin, TrackNumberMixin, TrackDiscNumberMixin, UserRatingMixin,
CollectionMixin, GenreMixin, LabelMixin, MoodMixin
):
pass
class PhotoalbumEditMixins(
ArtLockMixin, PosterLockMixin,
AddedAtMixin, SortTitleMixin, SummaryMixin, TitleMixin, UserRatingMixin
):
pass
class PhotoEditMixins(
ArtLockMixin, PosterLockMixin,
AddedAtMixin, PhotoCapturedTimeMixin, SortTitleMixin, SummaryMixin, TitleMixin, UserRatingMixin,
TagMixin
):
pass
class CollectionEditMixins(
ArtLockMixin, PosterLockMixin, ThemeLockMixin,
AddedAtMixin, AudienceRatingMixin, ContentRatingMixin, CriticRatingMixin,
SortTitleMixin, SummaryMixin, TitleMixin, UserRatingMixin,
LabelMixin
):
pass
class PlaylistEditMixins(
ArtLockMixin, PosterLockMixin,
SortTitleMixin, SummaryMixin, TitleMixin
):
pass
class MovieMixins(
AdvancedSettingsMixin, SplitMergeMixin, UnmatchMatchMixin, ExtrasMixin, HubsMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeMixin,
MovieEditMixins,
WatchlistMixin
):
pass
class ShowMixins(
AdvancedSettingsMixin, SplitMergeMixin, UnmatchMatchMixin, ExtrasMixin, HubsMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeMixin,
ShowEditMixins,
WatchlistMixin
):
pass
class SeasonMixins(
AdvancedSettingsMixin, ExtrasMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeUrlMixin,
SeasonEditMixins
):
pass
class EpisodeMixins(
ExtrasMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeUrlMixin,
EpisodeEditMixins
):
pass
class ClipMixins(
ArtUrlMixin, LogoUrlMixin, PosterUrlMixin, SquareArtUrlMixin
):
pass
class ArtistMixins(
AdvancedSettingsMixin, SplitMergeMixin, UnmatchMatchMixin, ExtrasMixin, HubsMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeMixin,
ArtistEditMixins
):
pass
class AlbumMixins(
SplitMergeMixin, UnmatchMatchMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeUrlMixin,
AlbumEditMixins
):
pass
class TrackMixins(
ExtrasMixin, RatingMixin,
ArtUrlMixin, LogoUrlMixin, PosterUrlMixin, SquareArtUrlMixin, ThemeUrlMixin,
TrackEditMixins
):
pass
class PhotoalbumMixins(
RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin,
PhotoalbumEditMixins
):
pass
class PhotoMixins(
RatingMixin,
ArtUrlMixin, LogoUrlMixin, PosterUrlMixin, SquareArtUrlMixin,
PhotoEditMixins
):
pass
class CollectionMixins(
AdvancedSettingsMixin, SmartFilterMixin, HubsMixin, RatingMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin, ThemeMixin,
CollectionEditMixins
):
pass
class PlaylistMixins(
SmartFilterMixin,
ArtMixin, LogoMixin, PosterMixin, SquareArtMixin,
PlaylistEditMixins
):
pass
__all__ = [
# Advanced settings
'AdvancedSettingsMixin',
# Edit mixins
'AddedAtMixin', 'AudienceRatingMixin', 'CollectionMixin', 'ContentRatingMixin',
'CountryMixin', 'CriticRatingMixin', 'DirectorMixin', 'EditionTitleMixin',
'EditFieldMixin', 'EditTagsMixin', 'GenreMixin', 'LabelMixin', 'MoodMixin',
'OriginallyAvailableMixin', 'OriginalTitleMixin', 'PhotoCapturedTimeMixin',
'ProducerMixin', 'SimilarArtistMixin', 'SortTitleMixin', 'StudioMixin',
'StyleMixin', 'SummaryMixin', 'TaglineMixin', 'TagMixin', 'TitleMixin',
'TrackArtistMixin', 'TrackDiscNumberMixin', 'TrackNumberMixin',
'UserRatingMixin', 'WriterMixin',
# Objects
'ExtrasMixin', 'HubsMixin',
# Played/Unplayed
'PlayedUnplayedMixin',
# Rating
'RatingMixin',
# Resource mixins
'ArtLockMixin', 'ArtMixin', 'ArtUrlMixin',
'LogoLockMixin', 'LogoMixin', 'LogoUrlMixin',
'PosterLockMixin', 'PosterMixin', 'PosterUrlMixin',
'SquareArtLockMixin', 'SquareArtMixin', 'SquareArtUrlMixin',
'ThemeLockMixin', 'ThemeMixin', 'ThemeUrlMixin',
# Smart Filter
'SmartFilterMixin',
# Split/Merge
'SplitMergeMixin',
# Unmatch/Match
'UnmatchMatchMixin',
# Watchlist
'WatchlistMixin',
# Composite Edit Mixins
'AlbumEditMixins', 'ArtistEditMixins', 'CollectionEditMixins', 'EpisodeEditMixins',
'MovieEditMixins', 'PhotoEditMixins', 'PhotoalbumEditMixins', 'PlaylistEditMixins',
'SeasonEditMixins', 'ShowEditMixins', 'TrackEditMixins',
# Composite Mixins
'AlbumMixins', 'ArtistMixins', 'ClipMixins', 'CollectionMixins', 'EpisodeMixins',
'MovieMixins', 'PhotoMixins', 'PhotoalbumMixins', 'PlaylistMixins',
'SeasonMixins', 'ShowMixins', 'TrackMixins',
]