Comparing version 1.2.0 to 1.3.0
@@ -0,9 +1,9 @@ | ||
import { ChangeOption, MediaChanges } from '../types'; | ||
import { BaseEndpoint } from './base'; | ||
import { ChangeOptions, MediaChanges } from '../types/changes'; | ||
export declare class ChangeEndpoint extends BaseEndpoint { | ||
protected readonly accessToken: string; | ||
constructor(accessToken: string); | ||
movies(options?: ChangeOptions): Promise<MediaChanges>; | ||
tvShows(options?: ChangeOptions): Promise<MediaChanges>; | ||
person(options?: ChangeOptions): Promise<MediaChanges>; | ||
movies(options?: ChangeOption): Promise<MediaChanges>; | ||
tvShows(options?: ChangeOption): Promise<MediaChanges>; | ||
person(options?: ChangeOption): Promise<MediaChanges>; | ||
} |
@@ -17,1 +17,2 @@ export * from './account'; | ||
export * from './collections'; | ||
export * from './tv-episode'; |
@@ -33,2 +33,3 @@ "use strict"; | ||
__exportStar(require("./collections"), exports); | ||
__exportStar(require("./tv-episode"), exports); | ||
//# sourceMappingURL=index.js.map |
import { BaseEndpoint } from './base'; | ||
import { AlternativeTitles, AppendToResponse, AppendToResponseMovieKey, ChangeOptions, Changes, Credits, ExternalIds, Images, Keywords, LanguageOption, LatestMovie, MovieDetails, MovieLists, MoviesPlayingNow, PageOption, PopularMovies, Recommendations, RegionOption, ReleaseDates, Reviews, SimilarMovies, TopRatedMovies, Translations, UpcomingMovies, Videos, WatchProviders } from '../types'; | ||
import { AlternativeTitles, AppendToResponse, AppendToResponseMovieKey, ChangeOption, Changes, Credits, ExternalIds, Images, Keywords, LanguageOption, LatestMovie, MovieChangeValue, MovieDetails, MovieLists, MoviesPlayingNow, PageOption, PopularMovies, Recommendations, RegionOption, ReleaseDates, Reviews, SimilarMovies, TopRatedMovies, Translations, UpcomingMovies, Videos, WatchProviders } from '../types'; | ||
export declare class MoviesEndpoint extends BaseEndpoint { | ||
@@ -8,3 +8,3 @@ protected readonly accessToken: string; | ||
alternativeTitles(id: number): Promise<AlternativeTitles>; | ||
changes(id: number, options?: ChangeOptions): Promise<Changes>; | ||
changes(id: number, options?: ChangeOption): Promise<Changes<MovieChangeValue>>; | ||
credits(id: number): Promise<Credits>; | ||
@@ -11,0 +11,0 @@ externalIds(id: number): Promise<ExternalIds>; |
@@ -1,2 +0,2 @@ | ||
import { AppendToResponse, AppendToResponsePersonKey, ChangeOptions, ExternalIds, PageOption, PeopleImages, PersonTranslations, PersonChanges, PersonCombinedCredits, PersonDetails, PersonMovieCredit, PersonTvShowCredit, PopularPersons, TaggedImages } from '../types'; | ||
import { AppendToResponse, AppendToResponsePersonKey, ChangeOption, ExternalIds, PageOption, PeopleImages, PersonTranslations, PersonCombinedCredits, PersonDetails, PersonMovieCredit, PersonTvShowCredit, PopularPersons, TaggedImages, Changes, PersonChangeValue } from '../types'; | ||
import { BaseEndpoint } from './base'; | ||
@@ -6,3 +6,3 @@ export declare class PeopleEndpoint extends BaseEndpoint { | ||
details<T extends AppendToResponsePersonKey[] | undefined>(id: number, appendToResponse?: T): Promise<AppendToResponse<PersonDetails, T, "person">>; | ||
changes(id: number, options?: ChangeOptions): Promise<PersonChanges>; | ||
changes(id: number, options?: ChangeOption): Promise<Changes<PersonChangeValue>>; | ||
movieCredits(id: number): Promise<PersonMovieCredit>; | ||
@@ -9,0 +9,0 @@ tvShowCredits(id: number): Promise<PersonTvShowCredit>; |
import { BaseEndpoint } from './base'; | ||
import { AlternativeTitles, AppendToResponse, AppendToResponseTvKey, ChangeOptions, Changes, ContentRatings, Credits, EpisodeGroups, ExternalIds, Images, Keywords, LanguageOption, LatestTvShows, OnTheAir, PageOption, PopularTvShows, Recommendations, RegionOption, Reviews, ScreenedTheatrically, SeasonDetails, SimilarTvShows, TopRatedTvShows, Translations, TvShowDetails, TvShowsAiringToday, Videos, WatchProviders } from '../types'; | ||
import { AlternativeTitles, AppendToResponse, AppendToResponseTvKey, ChangeOption, Changes, ContentRatings, Credits, EpisodeGroups, ExternalIds, Images, Keywords, LanguageOption, LatestTvShows, OnTheAir, PageOption, PopularTvShows, Recommendations, RegionOption, Reviews, ScreenedTheatrically, SeasonDetails, SimilarTvShows, TopRatedTvShows, Translations, TvShowChangeValue, TvShowDetails, TvShowsAiringToday, Videos, WatchProviders } from '../types'; | ||
export declare class TvShowsEndpoint extends BaseEndpoint { | ||
@@ -8,3 +8,3 @@ protected readonly accessToken: string; | ||
alternativeTitles(id: number): Promise<AlternativeTitles>; | ||
changes(id: number, options?: ChangeOptions): Promise<Changes>; | ||
changes(id: number, options?: ChangeOption): Promise<Changes<TvShowChangeValue>>; | ||
contentRatings(id: number): Promise<ContentRatings>; | ||
@@ -11,0 +11,0 @@ credits(id: number): Promise<Credits>; |
@@ -1,2 +0,2 @@ | ||
import { AccountEndpoint, CertificationEndpoint, ChangeEndpoint, CreditsEndpoint, GenreEndpoint, MoviesEndpoint, SearchEndpoint, TvShowsEndpoint, ConfigurationEndpoint, DiscoverEndpoint, PeopleEndpoint, ReviewEndpoint, TrendingEndpoint, FindEndpoint, KeywordsEndpoint, CollectionsEndpoint } from './endpoints'; | ||
import { AccountEndpoint, CertificationEndpoint, ChangeEndpoint, CreditsEndpoint, GenreEndpoint, MoviesEndpoint, SearchEndpoint, TvShowsEndpoint, ConfigurationEndpoint, DiscoverEndpoint, PeopleEndpoint, ReviewEndpoint, TrendingEndpoint, FindEndpoint, KeywordsEndpoint, CollectionsEndpoint, TvEpisodesEndpoint } from './endpoints'; | ||
export declare class TMDB { | ||
@@ -14,2 +14,3 @@ private readonly accessToken; | ||
get tvShows(): TvShowsEndpoint; | ||
get tvEpisode(): TvEpisodesEndpoint; | ||
get discover(): DiscoverEndpoint; | ||
@@ -16,0 +17,0 @@ get people(): PeopleEndpoint; |
@@ -37,2 +37,5 @@ "use strict"; | ||
} | ||
get tvEpisode() { | ||
return new endpoints_1.TvEpisodesEndpoint(this.accessToken); | ||
} | ||
get discover() { | ||
@@ -39,0 +42,0 @@ return new endpoints_1.DiscoverEndpoint(this.accessToken); |
@@ -11,21 +11,16 @@ export interface MediaChange { | ||
} | ||
export interface ChangeOptions { | ||
end_date?: string; | ||
start_date?: string; | ||
page?: number; | ||
export interface Changes<T> { | ||
changes: Change<T>[]; | ||
} | ||
export interface Changes { | ||
changes: Change[]; | ||
} | ||
export interface Change { | ||
export interface Change<T> { | ||
key: string; | ||
items: ChangeItem[]; | ||
items: ChangeItem<T>[]; | ||
} | ||
export interface ChangeItem { | ||
export interface ChangeItem<T> { | ||
id: string; | ||
action: string; | ||
time: string; | ||
value: Array<number>; | ||
value: T; | ||
iso_639_1: string; | ||
original_value: Array<number>; | ||
original_value: T; | ||
} |
@@ -17,2 +17,3 @@ export * from './options'; | ||
export * from './collections'; | ||
export * from './tv-episode'; | ||
export type MediaType = 'movie' | 'tv' | 'person'; | ||
@@ -19,0 +20,0 @@ export interface AuthorDetails { |
@@ -33,2 +33,3 @@ "use strict"; | ||
__exportStar(require("./collections"), exports); | ||
__exportStar(require("./tv-episode"), exports); | ||
//# sourceMappingURL=index.js.map |
@@ -137,1 +137,8 @@ import { Genre, Movie, ProductionCompany, ProductionCountry, SpokenLanguage } from './'; | ||
} | ||
export type MovieChangeValue = string | { | ||
person_id: number; | ||
character: string; | ||
order: number; | ||
cast_id: number; | ||
credit_id: string; | ||
} | unknown; |
@@ -1,2 +0,2 @@ | ||
import { AlternativeTitles, Changes, ContentRatings, Credits, EpisodeGroups, ExternalIds, Images, Keywords, MovieLists, PeopleImages, PersonTranslations, PersonChanges, PersonCombinedCredits, PersonMovieCredit, PersonTvShowCredit, Recommendations, ReleaseDates, Reviews, ScreenedTheatrically, SimilarMovies, SimilarTvShows, TaggedImages, Translations, Videos, WatchProviders } from '.'; | ||
import { AlternativeTitles, Changes, ContentRatings, Credits, EpisodeGroups, ExternalIds, Images, Keywords, MovieLists, PeopleImages, PersonTranslations, PersonCombinedCredits, PersonMovieCredit, PersonTvShowCredit, Recommendations, ReleaseDates, Reviews, ScreenedTheatrically, SimilarMovies, SimilarTvShows, TaggedImages, Translations, Videos, WatchProviders, PersonChangeValue, MovieChangeValue, TvShowChangeValue, TvEpisodeChangeValue, TvEpisodeCredit, TvEpisodeTranslations } from '.'; | ||
export interface LanguageOption { | ||
@@ -11,9 +11,14 @@ language?: string; | ||
} | ||
export interface ChangeOption extends PageOption { | ||
start_date?: Date; | ||
end_date?: Date; | ||
} | ||
export type AppendToResponseMovieKey = 'images' | 'videos' | 'credits' | 'recommendations' | 'reviews' | 'changes' | 'similar' | 'lists' | 'release_dates' | 'alternative_titles' | 'external_ids' | 'translations' | 'watch/providers' | 'keywords'; | ||
export type AppendToResponseTvKey = 'content_ratings' | 'images' | 'videos' | 'credits' | 'recommendations' | 'reviews' | 'changes' | 'similar' | 'alternative_titles' | 'external_ids' | 'translations' | 'watch/providers' | 'aggregate_credits' | 'episode_groups' | 'screened_theatrically' | 'keywords'; | ||
export type AppendToResponsePersonKey = 'images' | 'changes' | 'movie_credits' | 'tv_credits' | 'combined_credits' | 'external_ids' | 'tagged_images' | 'translations'; | ||
type AppendToResponseAllKeys = AppendToResponseTvKey | AppendToResponseMovieKey | AppendToResponsePersonKey; | ||
export type AppendToResponseMediaType = 'movie' | 'tvShow' | 'person'; | ||
export type AppendToResponseTvEpisodeKey = 'images' | 'credits' | 'external_ids' | 'videos' | 'translations'; | ||
type AppendToResponseAllKeys = AppendToResponseTvKey | AppendToResponseMovieKey | AppendToResponseTvEpisodeKey | AppendToResponsePersonKey; | ||
export type AppendToResponseMediaType = 'movie' | 'tvShow' | 'person' | 'tvEpisode'; | ||
export type AppendToResponse<K, T extends AppendToResponseAllKeys[] | undefined, Media extends AppendToResponseMediaType> = K & (T extends undefined ? object : T extends Array<unknown> ? ('credits' extends T[number] ? { | ||
credits: Omit<Credits, 'id'>; | ||
credits: Media extends 'tvEpisode' ? TvEpisodeCredit : Omit<Credits, 'id'>; | ||
} : object) & ('videos' extends T[number] ? { | ||
@@ -30,3 +35,3 @@ videos: Omit<Videos, 'id'>; | ||
} : object) & ('changes' extends T[number] ? { | ||
changes: Omit<Media extends 'person' ? PersonChanges : Changes, 'id'>; | ||
changes: Changes<Media extends 'person' ? PersonChangeValue : Media extends 'movie' ? MovieChangeValue : Media extends 'tvShow' ? TvShowChangeValue : TvEpisodeChangeValue>; | ||
} : object) & ('keywords' extends T[number] ? { | ||
@@ -43,3 +48,3 @@ keywords: Omit<Keywords, 'id'>; | ||
} : object) & ('translations' extends T[number] ? { | ||
translations: Omit<Media extends 'person' ? PersonTranslations : Translations, 'id'>; | ||
translations: Omit<Media extends 'person' ? PersonTranslations : Media extends 'tvEpisode' ? TvEpisodeTranslations : Translations, 'id'>; | ||
} : object) & ('watch/providers' extends T[number] ? { | ||
@@ -46,0 +51,0 @@ 'watch/providers': Omit<WatchProviders, 'id'>; |
@@ -88,25 +88,7 @@ import { Image, Movie, Person, TV } from '.'; | ||
} | ||
export interface PersonChange { | ||
id: string; | ||
action: string; | ||
time: string; | ||
iso_639_1: string; | ||
iso_3166_1: string; | ||
value: string | { | ||
profile: { | ||
file_path: string; | ||
}; | ||
export type PersonChangeValue = string | { | ||
profile: { | ||
file_path: string; | ||
}; | ||
original_value: string | { | ||
profile: { | ||
file_path: string; | ||
}; | ||
}; | ||
} | ||
export interface PersonChanges { | ||
changes: { | ||
key: string; | ||
items: PersonChange[]; | ||
}[]; | ||
} | ||
}; | ||
export interface PopularPersons { | ||
@@ -113,0 +95,0 @@ page: number; |
@@ -1,2 +0,2 @@ | ||
import { Genre, ProductionCompany, ProductionCountry, SpokenLanguage, Crew } from './'; | ||
import { Genre, ProductionCompany, ProductionCountry, SpokenLanguage, Episode } from './'; | ||
export interface CreatedBy { | ||
@@ -83,31 +83,2 @@ id: number; | ||
} | ||
export interface GuestStar { | ||
credit_id: string; | ||
order: number; | ||
character: string; | ||
adult: boolean; | ||
gender: number | null; | ||
id: number; | ||
known_for_department: string; | ||
name: string; | ||
original_name: string; | ||
popularity: number; | ||
profile_path: string | null; | ||
} | ||
export interface Episode { | ||
air_date: string; | ||
episode_number: number; | ||
crew: Crew[]; | ||
guest_stars: GuestStar[]; | ||
id: number; | ||
name: string; | ||
overview: string; | ||
production_code: string; | ||
season_number: number; | ||
still_path: string; | ||
vote_average: number; | ||
vote_count: number; | ||
show_id: number; | ||
runtime: number; | ||
} | ||
export interface SeasonDetails { | ||
@@ -283,1 +254,5 @@ air_date: string; | ||
} | ||
export interface TvShowChangeValue { | ||
season_id: number; | ||
season_number: number; | ||
} |
{ | ||
"name": "tmdb-ts", | ||
"version": "1.2.0", | ||
"version": "1.3.0", | ||
"description": "TMDB v3 library wrapper", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
108077
135
2594