use crate::generated::tmdb::types::{DiscoverMovieSortBy, DiscoverTvSortBy};
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum MovieSortBy {
OriginalTitleAsc,
OriginalTitleDesc,
PopularityAsc,
PopularityDesc,
RevenueAsc,
RevenueDesc,
PrimaryReleaseDateAsc,
PrimaryReleaseDateDesc,
TitleAsc,
TitleDesc,
VoteAverageAsc,
VoteAverageDesc,
VoteCountAsc,
VoteCountDesc,
}
impl MovieSortBy {
pub(crate) fn to_generated(self) -> DiscoverMovieSortBy {
match self {
MovieSortBy::OriginalTitleAsc => DiscoverMovieSortBy::OriginalTitleAsc,
MovieSortBy::OriginalTitleDesc => DiscoverMovieSortBy::OriginalTitleDesc,
MovieSortBy::PopularityAsc => DiscoverMovieSortBy::PopularityAsc,
MovieSortBy::PopularityDesc => DiscoverMovieSortBy::PopularityDesc,
MovieSortBy::RevenueAsc => DiscoverMovieSortBy::RevenueAsc,
MovieSortBy::RevenueDesc => DiscoverMovieSortBy::RevenueDesc,
MovieSortBy::PrimaryReleaseDateAsc => DiscoverMovieSortBy::PrimaryReleaseDateAsc,
MovieSortBy::PrimaryReleaseDateDesc => DiscoverMovieSortBy::PrimaryReleaseDateDesc,
MovieSortBy::TitleAsc => DiscoverMovieSortBy::TitleAsc,
MovieSortBy::TitleDesc => DiscoverMovieSortBy::TitleDesc,
MovieSortBy::VoteAverageAsc => DiscoverMovieSortBy::VoteAverageAsc,
MovieSortBy::VoteAverageDesc => DiscoverMovieSortBy::VoteAverageDesc,
MovieSortBy::VoteCountAsc => DiscoverMovieSortBy::VoteCountAsc,
MovieSortBy::VoteCountDesc => DiscoverMovieSortBy::VoteCountDesc,
}
}
}
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum TvSortBy {
FirstAirDateAsc,
FirstAirDateDesc,
NameAsc,
NameDesc,
OriginalNameAsc,
OriginalNameDesc,
PopularityAsc,
PopularityDesc,
VoteAverageAsc,
VoteAverageDesc,
VoteCountAsc,
VoteCountDesc,
}
impl TvSortBy {
pub(crate) fn to_generated(self) -> DiscoverTvSortBy {
match self {
TvSortBy::FirstAirDateAsc => DiscoverTvSortBy::FirstAirDateAsc,
TvSortBy::FirstAirDateDesc => DiscoverTvSortBy::FirstAirDateDesc,
TvSortBy::NameAsc => DiscoverTvSortBy::NameAsc,
TvSortBy::NameDesc => DiscoverTvSortBy::NameDesc,
TvSortBy::OriginalNameAsc => DiscoverTvSortBy::OriginalNameAsc,
TvSortBy::OriginalNameDesc => DiscoverTvSortBy::OriginalNameDesc,
TvSortBy::PopularityAsc => DiscoverTvSortBy::PopularityAsc,
TvSortBy::PopularityDesc => DiscoverTvSortBy::PopularityDesc,
TvSortBy::VoteAverageAsc => DiscoverTvSortBy::VoteAverageAsc,
TvSortBy::VoteAverageDesc => DiscoverTvSortBy::VoteAverageDesc,
TvSortBy::VoteCountAsc => DiscoverTvSortBy::VoteCountAsc,
TvSortBy::VoteCountDesc => DiscoverTvSortBy::VoteCountDesc,
}
}
}