tmdb-ts 1.0.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +3 -1
  2. package/dist/endpoints/changes.d.ts +4 -4
  3. package/dist/endpoints/changes.js.map +1 -1
  4. package/dist/endpoints/index.d.ts +1 -0
  5. package/dist/endpoints/index.js +1 -0
  6. package/dist/endpoints/index.js.map +1 -1
  7. package/dist/endpoints/movies.d.ts +3 -3
  8. package/dist/endpoints/movies.js +7 -2
  9. package/dist/endpoints/movies.js.map +1 -1
  10. package/dist/endpoints/people.d.ts +6 -9
  11. package/dist/endpoints/people.js +7 -2
  12. package/dist/endpoints/people.js.map +1 -1
  13. package/dist/endpoints/search.d.ts +5 -1
  14. package/dist/endpoints/search.js +3 -1
  15. package/dist/endpoints/search.js.map +1 -1
  16. package/dist/endpoints/trending.d.ts +2 -2
  17. package/dist/endpoints/tv-episode.d.ts +12 -0
  18. package/dist/endpoints/tv-episode.js +41 -0
  19. package/dist/endpoints/tv-episode.js.map +1 -0
  20. package/dist/endpoints/tv-shows.d.ts +3 -3
  21. package/dist/endpoints/tv-shows.js +7 -2
  22. package/dist/endpoints/tv-shows.js.map +1 -1
  23. package/dist/tmdb.d.ts +2 -1
  24. package/dist/tmdb.js +3 -0
  25. package/dist/tmdb.js.map +1 -1
  26. package/dist/types/changes.d.ts +17 -7
  27. package/dist/types/configuration.d.ts +2 -2
  28. package/dist/types/index.d.ts +19 -17
  29. package/dist/types/index.js +1 -0
  30. package/dist/types/index.js.map +1 -1
  31. package/dist/types/movies.d.ts +7 -15
  32. package/dist/types/options.d.ts +59 -0
  33. package/dist/types/people.d.ts +11 -25
  34. package/dist/types/search.d.ts +2 -0
  35. package/dist/types/trending.d.ts +5 -7
  36. package/dist/types/tv-episode.d.ts +52 -0
  37. package/dist/types/tv-episode.js +3 -0
  38. package/dist/types/tv-episode.js.map +1 -0
  39. package/dist/types/tv-shows.d.ts +5 -45
  40. package/package.json +1 -1
package/README.md CHANGED
@@ -14,8 +14,10 @@ Installation:
14
14
  npm install --save tmdb-ts
15
15
  ``
16
16
 
17
+ Version 1.0 removed the default import so make sure you update accordingly!
18
+
17
19
  ```js
18
- import TMDB from 'tmdb-ts';
20
+ import { TMDB } from 'tmdb-ts';
19
21
 
20
22
  const tmdb = new TMDB('accessToken');
21
23
 
@@ -1,9 +1,9 @@
1
+ import { ChangeOption, MediaChanges } from '../types';
1
2
  import { BaseEndpoint } from './base';
2
- import { ChangeOptions, Changes } from '../types/changes';
3
3
  export declare class ChangeEndpoint extends BaseEndpoint {
4
4
  protected readonly accessToken: string;
5
5
  constructor(accessToken: string);
6
- movies(options?: ChangeOptions): Promise<Changes>;
7
- tvShows(options?: ChangeOptions): Promise<Changes>;
8
- person(options?: ChangeOptions): Promise<Changes>;
6
+ movies(options?: ChangeOption): Promise<MediaChanges>;
7
+ tvShows(options?: ChangeOption): Promise<MediaChanges>;
8
+ person(options?: ChangeOption): Promise<MediaChanges>;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/endpoints/changes.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AAGtC,MAAa,cAAe,SAAQ,mBAAY;IACf;IAA/B,YAA+B,WAAmB;QAChD,KAAK,CAAC,WAAW,CAAC,CAAC;QADU,gBAAW,GAAX,WAAW,CAAQ;IAElD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAuB;QAClC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAU,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAU,aAAa,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAuB;QAClC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAU,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;CACF;AAhBD,wCAgBC"}
1
+ {"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/endpoints/changes.ts"],"names":[],"mappings":";;;AACA,iCAAsC;AAEtC,MAAa,cAAe,SAAQ,mBAAY;IACf;IAA/B,YAA+B,WAAmB;QAChD,KAAK,CAAC,WAAW,CAAC,CAAC;QADU,gBAAW,GAAX,WAAW,CAAQ;IAElD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAsB;QACjC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAsB;QAClC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,aAAa,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAsB;QACjC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC;CACF;AAhBD,wCAgBC"}
@@ -14,3 +14,4 @@ export * from './trending';
14
14
  export * from './find';
15
15
  export * from './keywords';
16
16
  export * from './collections';
17
+ export * from './tv-episode';
@@ -30,4 +30,5 @@ __exportStar(require("./trending"), exports);
30
30
  __exportStar(require("./find"), exports);
31
31
  __exportStar(require("./keywords"), exports);
32
32
  __exportStar(require("./collections"), exports);
33
+ __exportStar(require("./tv-episode"), exports);
33
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/endpoints/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,kDAAgC;AAChC,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/endpoints/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,kDAAgC;AAChC,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,gDAA8B;AAC9B,+CAA6B"}
@@ -1,11 +1,11 @@
1
1
  import { BaseEndpoint } from './base';
2
- import { AlternativeTitles, ChangeOptions, Credits, ExternalIds, Images, Keywords, LanguageOption, LatestMovie, MovieChanges, MovieDetails, MovieLists, MoviesPlayingNow, PageOption, PopularMovies, Recommendations, RegionOption, ReleaseDates, Reviews, SimilarMovies, TopRatedMovies, Translations, UpcomingMovies, Videos, WatchProviders } from '../types';
2
+ 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';
3
3
  export declare class MoviesEndpoint extends BaseEndpoint {
4
4
  protected readonly accessToken: string;
5
5
  constructor(accessToken: string);
6
- details(id: number): Promise<MovieDetails>;
6
+ details<T extends AppendToResponseMovieKey[] | undefined>(id: number, appendToResponse?: T): Promise<AppendToResponse<MovieDetails, T, "movie">>;
7
7
  alternativeTitles(id: number): Promise<AlternativeTitles>;
8
- changes(id: number, options?: ChangeOptions): Promise<MovieChanges>;
8
+ changes(id: number, options?: ChangeOption): Promise<Changes<MovieChangeValue>>;
9
9
  credits(id: number): Promise<Credits>;
10
10
  externalIds(id: number): Promise<ExternalIds>;
11
11
  images(id: number): Promise<Images>;
@@ -9,8 +9,13 @@ class MoviesEndpoint extends base_1.BaseEndpoint {
9
9
  super(accessToken);
10
10
  this.accessToken = accessToken;
11
11
  }
12
- async details(id) {
13
- return await this.api.get(`${BASE_MOVIE}/${id}`);
12
+ async details(id, appendToResponse) {
13
+ const options = {
14
+ append_to_response: appendToResponse
15
+ ? appendToResponse.join(',')
16
+ : undefined,
17
+ };
18
+ return await this.api.get(`${BASE_MOVIE}/${id}`, options);
14
19
  }
15
20
  async alternativeTitles(id) {
16
21
  return await this.api.get(`${BASE_MOVIE}/${id}/alternative_titles`);
@@ -1 +1 @@
1
- {"version":3,"file":"movies.js","sourceRoot":"","sources":["../../src/endpoints/movies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"movies.js","sourceRoot":"","sources":["../../src/endpoints/movies.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,16 @@
1
- import { ChangeOptions, ExternalIds, Image, PageOption, PeopleTranslations, PersonChanges, PersonCombinedCredits, PersonDetail, PersonMovieCredit, PersonTvShowCredit, PopularPersons, TaggedImages } from '../types';
1
+ import { AppendToResponse, AppendToResponsePersonKey, ChangeOption, ExternalIds, PageOption, PeopleImages, PersonTranslations, PersonCombinedCredits, PersonDetails, PersonMovieCredit, PersonTvShowCredit, PopularPersons, TaggedImages, Changes, PersonChangeValue } from '../types';
2
2
  import { BaseEndpoint } from './base';
3
3
  export declare class PeopleEndpoint extends BaseEndpoint {
4
4
  constructor(accessToken: string);
5
- details(id: number): Promise<PersonDetail>;
6
- changes(id: number, options?: ChangeOptions): Promise<PersonChanges>;
5
+ details<T extends AppendToResponsePersonKey[] | undefined>(id: number, appendToResponse?: T): Promise<AppendToResponse<PersonDetails, T, "person">>;
6
+ changes(id: number, options?: ChangeOption): Promise<Changes<PersonChangeValue>>;
7
7
  movieCredits(id: number): Promise<PersonMovieCredit>;
8
8
  tvShowCredits(id: number): Promise<PersonTvShowCredit>;
9
9
  combinedCredits(id: number): Promise<PersonCombinedCredits>;
10
10
  externalId(id: number): Promise<ExternalIds>;
11
- images(id: number): Promise<{
12
- id: number;
13
- profiles: Image[];
14
- }>;
11
+ images(id: number): Promise<PeopleImages>;
15
12
  taggedImages(id: number, options?: PageOption): Promise<TaggedImages>;
16
- translation(id: number): Promise<PeopleTranslations>;
17
- latest(): Promise<PersonDetail>;
13
+ translation(id: number): Promise<PersonTranslations>;
14
+ latest(): Promise<PersonDetails>;
18
15
  popular(options?: PageOption): Promise<PopularPersons>;
19
16
  }
@@ -7,8 +7,13 @@ class PeopleEndpoint extends base_1.BaseEndpoint {
7
7
  constructor(accessToken) {
8
8
  super(accessToken);
9
9
  }
10
- async details(id) {
11
- return await this.api.get(`${BASE_PERSON}/${id}`);
10
+ async details(id, appendToResponse) {
11
+ const options = {
12
+ append_to_response: appendToResponse
13
+ ? appendToResponse.join(',')
14
+ : undefined,
15
+ };
16
+ return await this.api.get(`${BASE_PERSON}/${id}`, options);
12
17
  }
13
18
  async changes(id, options) {
14
19
  return await this.api.get(`${BASE_PERSON}/${id}/changes`, options);
@@ -1 +1 @@
1
- {"version":3,"file":"people.js","sourceRoot":"","sources":["../../src/endpoints/people.ts"],"names":[],"mappings":";;;AAcA,iCAAsC;AAEtC,MAAM,WAAW,GAAG,SAAS,CAAC;AAE9B,MAAa,cAAe,SAAQ,mBAAY;IAC9C,YAAY,WAAmB;QAC7B,KAAK,CAAC,WAAW,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACtB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,GAAG,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,OAAuB;QAC/C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,UAAU,EAC9B,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU;QAC3B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,gBAAgB,CACrC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC5B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,aAAa,CAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,mBAAmB,CACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAc,GAAG,WAAW,IAAI,EAAE,eAAe,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,SAAS,CAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,OAAoB;QACjD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,gBAAgB,EACpC,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,eAAe,CACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,GAAG,WAAW,SAAS,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoB;QAChC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AAnED,wCAmEC"}
1
+ {"version":3,"file":"people.js","sourceRoot":"","sources":["../../src/endpoints/people.ts"],"names":[],"mappings":";;;AAiBA,iCAAsC;AAEtC,MAAM,WAAW,GAAG,SAAS,CAAC;AAE9B,MAAa,cAAe,SAAQ,mBAAY;IAC9C,YAAY,WAAmB;QAC7B,KAAK,CAAC,WAAW,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,EAAU,EACV,gBAAoB;QAEpB,MAAM,OAAO,GAAG;YACd,kBAAkB,EAAE,gBAAgB;gBAClC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC5B,CAAC,CAAC,SAAS;SACd,CAAC;QACF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,EAAE,EACtB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CACX,EAAU,EACV,OAAsB;QAEtB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,UAAU,EAC9B,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU;QAC3B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,gBAAgB,CACrC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAU;QAC5B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,aAAa,CAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU;QAC9B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,mBAAmB,CACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAU;QACzB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAc,GAAG,WAAW,IAAI,EAAE,eAAe,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAe,GAAG,WAAW,IAAI,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,OAAoB;QACjD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,gBAAgB,EACpC,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAU;QAC1B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,IAAI,EAAE,eAAe,CACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAgB,GAAG,WAAW,SAAS,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoB;QAChC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA/ED,wCA+EC"}
@@ -1,5 +1,5 @@
1
1
  import { BaseEndpoint } from './base';
2
- import { Search } from '../types/search';
2
+ import { MultiSearchResult, Search } from '../types/search';
3
3
  import { Collection, Company, Movie, Person, TV } from '../types';
4
4
  export interface SearchOptions {
5
5
  query: string;
@@ -17,6 +17,9 @@ export interface TvSearchOptions extends SearchOptions {
17
17
  export interface PeopleSearchOptions extends SearchOptions {
18
18
  include_adult?: boolean;
19
19
  }
20
+ export interface MultiSearchOptions extends SearchOptions {
21
+ include_adult?: boolean;
22
+ }
20
23
  export declare class SearchEndpoint extends BaseEndpoint {
21
24
  protected readonly accessToken: string;
22
25
  constructor(accessToken: string);
@@ -29,4 +32,5 @@ export declare class SearchEndpoint extends BaseEndpoint {
29
32
  movies(options: MovieSearchOptions): Promise<Search<Movie>>;
30
33
  people(options: PeopleSearchOptions): Promise<Search<Person>>;
31
34
  tvShows(options: TvSearchOptions): Promise<Search<TV>>;
35
+ multi(options: MultiSearchOptions): Promise<Search<MultiSearchResult>>;
32
36
  }
@@ -24,10 +24,12 @@ class SearchEndpoint extends base_1.BaseEndpoint {
24
24
  async people(options) {
25
25
  return await this.api.get(`${BASE_SEARCH}/person`, options);
26
26
  }
27
- // TODO: Multi search
28
27
  async tvShows(options) {
29
28
  return await this.api.get(`${BASE_SEARCH}/tv`, options);
30
29
  }
30
+ async multi(options) {
31
+ return await this.api.get(`${BASE_SEARCH}/multi`, options);
32
+ }
31
33
  }
32
34
  exports.SearchEndpoint = SearchEndpoint;
33
35
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/endpoints/search.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AAItC,MAAM,WAAW,GAAG,SAAS,CAAC;AAsB9B,MAAa,cAAe,SAAQ,mBAAY;IACf;IAA/B,YAA+B,WAAmB;QAChD,KAAK,CAAC,WAAW,CAAC,CAAC;QADU,gBAAW,GAAX,WAAW,CAAQ;IAElD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAsB;QACpC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAsB;QACtC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,aAAa,EAC3B,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAAsB;QAEtB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA2B;QACtC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAgB,GAAG,WAAW,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA4B;QACvC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAiB,GAAG,WAAW,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,qBAAqB;IAErB,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAa,GAAG,WAAW,KAAK,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;CACF;AAzCD,wCAyCC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/endpoints/search.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AAItC,MAAM,WAAW,GAAG,SAAS,CAAC;AA0B9B,MAAa,cAAe,SAAQ,mBAAY;IACf;IAA/B,YAA+B,WAAmB;QAChD,KAAK,CAAC,WAAW,CAAC,CAAC;QADU,gBAAW,GAAX,WAAW,CAAQ;IAElD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAsB;QACpC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAsB;QACtC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,aAAa,EAC3B,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,OAAsB;QAEtB,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,UAAU,EACxB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA2B;QACtC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAgB,GAAG,WAAW,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA4B;QACvC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAiB,GAAG,WAAW,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAa,GAAG,WAAW,KAAK,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAA2B;QACrC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,WAAW,QAAQ,EACtB,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA9CD,wCA8CC"}
@@ -1,6 +1,6 @@
1
- import { MediaType, TimeWindow, TrendingResults } from '../types';
1
+ import { TrendingMediaType, TimeWindow, TrendingResults } from '../types';
2
2
  import { BaseEndpoint } from './base';
3
3
  export declare class TrendingEndpoint extends BaseEndpoint {
4
4
  constructor(accessToken: string);
5
- trending<T extends MediaType>(mediaType: T, timeWindow: TimeWindow): Promise<TrendingResults<T>>;
5
+ trending<T extends TrendingMediaType>(mediaType: T, timeWindow: TimeWindow): Promise<TrendingResults<T>>;
6
6
  }
@@ -0,0 +1,12 @@
1
+ import { Episode, EpisodeSelection, LanguageOption, ChangeOption, TvEpisodeCredit, ExternalIds, Images, TvEpisodeTranslations, Videos, AppendToResponse, Changes, AppendToResponseTvEpisodeKey } from '..';
2
+ import { BaseEndpoint } from './base';
3
+ export declare class TvEpisodesEndpoint extends BaseEndpoint {
4
+ constructor(accessToken: string);
5
+ details<T extends AppendToResponseTvEpisodeKey[] | undefined>(episodeSelection: EpisodeSelection, appendToResponse?: T, options?: LanguageOption): Promise<AppendToResponse<Omit<Episode, "show_id">, T, "tvEpisode">>;
6
+ changes(episodeID: number, options?: ChangeOption): Promise<Changes<unknown>>;
7
+ credits(episodeSelection: EpisodeSelection, options?: LanguageOption): Promise<TvEpisodeCredit>;
8
+ externalIds(episodeSelection: EpisodeSelection): Promise<ExternalIds>;
9
+ images(episodeSelection: EpisodeSelection): Promise<Images>;
10
+ translations(episodeSelection: EpisodeSelection): Promise<TvEpisodeTranslations>;
11
+ videos(episodeSelection: EpisodeSelection, options?: LanguageOption): Promise<Videos>;
12
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TvEpisodesEndpoint = void 0;
4
+ const base_1 = require("./base");
5
+ const BASE_EPISODE = (episodeSelection) => {
6
+ return `/tv/${episodeSelection.tvShowID}/season/${episodeSelection.seasonNumber}/episode/${episodeSelection.episodeNumber}`;
7
+ };
8
+ class TvEpisodesEndpoint extends base_1.BaseEndpoint {
9
+ constructor(accessToken) {
10
+ super(accessToken);
11
+ }
12
+ async details(episodeSelection, appendToResponse, options) {
13
+ const combinedOptions = {
14
+ append_to_response: appendToResponse
15
+ ? appendToResponse.join(',')
16
+ : undefined,
17
+ ...options,
18
+ };
19
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}`, combinedOptions);
20
+ }
21
+ async changes(episodeID, options) {
22
+ return await this.api.get(`/tv/episode/${episodeID}/changes`, options);
23
+ }
24
+ async credits(episodeSelection, options) {
25
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}/credits`, options);
26
+ }
27
+ async externalIds(episodeSelection) {
28
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}/external_ids`);
29
+ }
30
+ async images(episodeSelection) {
31
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}/images`);
32
+ }
33
+ async translations(episodeSelection) {
34
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}/translations`);
35
+ }
36
+ async videos(episodeSelection, options) {
37
+ return await this.api.get(`${BASE_EPISODE(episodeSelection)}/videos`, options);
38
+ }
39
+ }
40
+ exports.TvEpisodesEndpoint = TvEpisodesEndpoint;
41
+ //# sourceMappingURL=tv-episode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tv-episode.js","sourceRoot":"","sources":["../../src/endpoints/tv-episode.ts"],"names":[],"mappings":";;;AAgBA,iCAAsC;AAEtC,MAAM,YAAY,GAAG,CAAC,gBAAkC,EAAU,EAAE;IAClE,OAAO,OAAO,gBAAgB,CAAC,QAAQ,WAAW,gBAAgB,CAAC,YAAY,YAAY,gBAAgB,CAAC,aAAa,EAAE,CAAC;AAC9H,CAAC,CAAC;AAEF,MAAa,kBAAmB,SAAQ,mBAAY;IAClD,YAAY,WAAmB;QAC7B,KAAK,CAAC,WAAW,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,gBAAkC,EAClC,gBAAoB,EACpB,OAAwB;QAExB,MAAM,eAAe,GAAG;YACtB,kBAAkB,EAAE,gBAAgB;gBAClC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC5B,CAAC,CAAC,SAAS;YACb,GAAG,OAAO;SACX,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAEvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,OAAsB;QACrD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,eAAe,SAAS,UAAU,EAClC,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,gBAAkC,EAAE,OAAwB;QACxE,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,UAAU,EAC3C,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,gBAAkC;QAClD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,eAAe,CACjD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,gBAAkC;QAC7C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,gBAAkC;QACnD,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,eAAe,CACjD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,gBAAkC,EAAE,OAAwB;QACvE,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CACvB,GAAG,YAAY,CAAC,gBAAgB,CAAC,SAAS,EAC1C,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA5DD,gDA4DC"}
@@ -1,11 +1,11 @@
1
1
  import { BaseEndpoint } from './base';
2
- import { AlternativeTitles, ChangeOptions, ContentRatings, Credits, EpisodeGroups, ExternalIds, Images, Keywords, LanguageOption, LatestTvShows, OnTheAir, PageOption, PopularTvShows, Recommendations, RegionOption, Reviews, ScreenedTheatrically, SeasonDetails, SimilarTvShows, TopRatedTvShows, Translations, TvShowChanges, TvShowDetails, TvShowsAiringToday, Videos, WatchProviders } from '../types';
2
+ 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';
3
3
  export declare class TvShowsEndpoint extends BaseEndpoint {
4
4
  protected readonly accessToken: string;
5
5
  constructor(accessToken: string);
6
- details(id: number): Promise<TvShowDetails>;
6
+ details<T extends AppendToResponseTvKey[] | undefined>(id: number, appendToResponse?: T): Promise<AppendToResponse<TvShowDetails, T, "tvShow">>;
7
7
  alternativeTitles(id: number): Promise<AlternativeTitles>;
8
- changes(id: number, options?: ChangeOptions): Promise<TvShowChanges>;
8
+ changes(id: number, options?: ChangeOption): Promise<Changes<TvShowChangeValue>>;
9
9
  contentRatings(id: number): Promise<ContentRatings>;
10
10
  credits(id: number): Promise<Credits>;
11
11
  season(tvId: number, seasonNumber: number): Promise<SeasonDetails>;
@@ -9,8 +9,13 @@ class TvShowsEndpoint extends base_1.BaseEndpoint {
9
9
  super(accessToken);
10
10
  this.accessToken = accessToken;
11
11
  }
12
- async details(id) {
13
- return await this.api.get(`${BASE_TV}/${id}`);
12
+ async details(id, appendToResponse) {
13
+ const options = {
14
+ append_to_response: appendToResponse
15
+ ? appendToResponse.join(',')
16
+ : undefined,
17
+ };
18
+ return await this.api.get(`${BASE_TV}/${id}`, options);
14
19
  }
15
20
  async alternativeTitles(id) {
16
21
  return await this.api.get(`${BASE_TV}/${id}/alternative_titles`);
@@ -1 +1 @@
1
- {"version":3,"file":"tv-shows.js","sourceRoot":"","sources":["../../src/endpoints/tv-shows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tv-shows.js","sourceRoot":"","sources":["../../src/endpoints/tv-shows.ts"],"names":[],"mappings":"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"}
package/dist/tmdb.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { AccountEndpoint, CertificationEndpoint, ChangeEndpoint, CreditsEndpoint, GenreEndpoint, MoviesEndpoint, SearchEndpoint, TvShowsEndpoint, ConfigurationEndpoint, DiscoverEndpoint, PeopleEndpoint, ReviewEndpoint, TrendingEndpoint, FindEndpoint, KeywordsEndpoint, CollectionsEndpoint } from './endpoints';
1
+ import { AccountEndpoint, CertificationEndpoint, ChangeEndpoint, CreditsEndpoint, GenreEndpoint, MoviesEndpoint, SearchEndpoint, TvShowsEndpoint, ConfigurationEndpoint, DiscoverEndpoint, PeopleEndpoint, ReviewEndpoint, TrendingEndpoint, FindEndpoint, KeywordsEndpoint, CollectionsEndpoint, TvEpisodesEndpoint } from './endpoints';
2
2
  export declare class TMDB {
3
3
  private readonly accessToken;
4
4
  constructor(accessToken: string);
@@ -11,6 +11,7 @@ export declare class TMDB {
11
11
  get genres(): GenreEndpoint;
12
12
  get movies(): MoviesEndpoint;
13
13
  get tvShows(): TvShowsEndpoint;
14
+ get tvEpisode(): TvEpisodesEndpoint;
14
15
  get discover(): DiscoverEndpoint;
15
16
  get people(): PeopleEndpoint;
16
17
  get review(): ReviewEndpoint;
package/dist/tmdb.js CHANGED
@@ -34,6 +34,9 @@ class TMDB {
34
34
  get tvShows() {
35
35
  return new endpoints_1.TvShowsEndpoint(this.accessToken);
36
36
  }
37
+ get tvEpisode() {
38
+ return new endpoints_1.TvEpisodesEndpoint(this.accessToken);
39
+ }
37
40
  get discover() {
38
41
  return new endpoints_1.DiscoverEndpoint(this.accessToken);
39
42
  }
package/dist/tmdb.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tmdb.js","sourceRoot":"","sources":["../src/tmdb.ts"],"names":[],"mappings":";;;AAAA,2CAiBqB;AAErB,MAAa,IAAI;IACE,WAAW,CAAS;IAErC,YAAY,WAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,iCAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,iCAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,yBAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,wBAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,+BAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;CACF;AAtED,oBAsEC"}
1
+ {"version":3,"file":"tmdb.js","sourceRoot":"","sources":["../src/tmdb.ts"],"names":[],"mappings":";;;AAAA,2CAkBqB;AAErB,MAAa,IAAI;IACE,WAAW,CAAS;IAErC,YAAY,WAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,iCAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,iCAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,yBAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,8BAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,0BAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,wBAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,4BAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,+BAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;CACF;AA1ED,oBA0EC"}
@@ -1,15 +1,25 @@
1
- export interface Change {
1
+ export interface MediaChange {
2
2
  id: number;
3
3
  adult: boolean | undefined;
4
4
  }
5
- export interface Changes {
6
- results: Change[];
5
+ export interface MediaChanges {
6
+ results: MediaChange[];
7
7
  page: number;
8
8
  total_pages: number;
9
9
  total_results: number;
10
10
  }
11
- export interface ChangeOptions {
12
- end_date?: string;
13
- start_date?: string;
14
- page?: number;
11
+ export interface Changes<T> {
12
+ changes: Change<T>[];
13
+ }
14
+ export interface Change<T> {
15
+ key: string;
16
+ items: ChangeItem<T>[];
17
+ }
18
+ export interface ChangeItem<T> {
19
+ id: string;
20
+ action: string;
21
+ time: string;
22
+ value: T;
23
+ iso_639_1: string;
24
+ original_value: T;
15
25
  }
@@ -1,4 +1,4 @@
1
- export interface Images {
1
+ export interface ImageConfiguration {
2
2
  base_url: string;
3
3
  secure_base_url: string;
4
4
  backdrop_sizes: BackdropSizes[];
@@ -8,7 +8,7 @@ export interface Images {
8
8
  still_sizes: StillSizes[];
9
9
  }
10
10
  export interface Configuration {
11
- images: Images;
11
+ images: ImageConfiguration;
12
12
  change_keys: ChangeKeys[];
13
13
  }
14
14
  export declare const enum BackdropSizes {
@@ -14,29 +14,15 @@ export * from './trending';
14
14
  export * from './find';
15
15
  export * from './keywords';
16
16
  export * from './collections';
17
+ export * from './tv-episode';
18
+ export type MediaType = 'movie' | 'tv' | 'person';
17
19
  export interface AuthorDetails {
18
20
  name: string;
19
21
  username: string;
20
22
  avatar_path: string;
21
23
  rating?: number;
22
24
  }
23
- export interface KnownFor {
24
- id: number;
25
- overview: string;
26
- release_date: string;
27
- video: boolean;
28
- adult: boolean;
29
- backdrop_path: string;
30
- media_type: string;
31
- genre_ids: number[];
32
- title: string;
33
- original_language: string;
34
- original_title: string;
35
- poster_path: string;
36
- vote_count: number;
37
- vote_average: number;
38
- popularity: number;
39
- }
25
+ export type KnownFor = MovieWithMediaType | TVWithMediaType;
40
26
  export interface Person {
41
27
  id: number;
42
28
  name: string;
@@ -47,6 +33,9 @@ export interface Person {
47
33
  gender: number;
48
34
  popularity: number;
49
35
  }
36
+ export interface PersonWithMediaType extends Person {
37
+ media_type: 'person';
38
+ }
50
39
  export interface Movie {
51
40
  id: number;
52
41
  poster_path: string;
@@ -63,6 +52,9 @@ export interface Movie {
63
52
  video: boolean;
64
53
  vote_average: number;
65
54
  }
55
+ export interface MovieWithMediaType extends Movie {
56
+ media_type: 'movie';
57
+ }
66
58
  export interface Company {
67
59
  id: number;
68
60
  logo_path: string;
@@ -84,6 +76,9 @@ export interface TV {
84
76
  vote_count: number;
85
77
  vote_average: number;
86
78
  }
79
+ export interface TVWithMediaType extends TV {
80
+ media_type: 'tv';
81
+ }
87
82
  export interface Genre {
88
83
  id: number;
89
84
  name: string;
@@ -115,6 +110,7 @@ export interface ContentRatings {
115
110
  id: number;
116
111
  }
117
112
  export interface ContentRatingsResult {
113
+ descriptor: unknown[];
118
114
  iso_3166_1: string;
119
115
  rating: string;
120
116
  }
@@ -181,3 +177,9 @@ export interface Image {
181
177
  vote_count: number;
182
178
  width: number;
183
179
  }
180
+ export interface Images {
181
+ id: number;
182
+ backdrops: Image[];
183
+ logos: Image[];
184
+ posters: Image[];
185
+ }
@@ -30,4 +30,5 @@ __exportStar(require("./trending"), exports);
30
30
  __exportStar(require("./find"), exports);
31
31
  __exportStar(require("./keywords"), exports);
32
32
  __exportStar(require("./collections"), exports);
33
+ __exportStar(require("./tv-episode"), exports);
33
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,oDAAkC;AAClC,2CAAyB;AACzB,6CAA2B;AAC3B,2CAAyB;AACzB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,kDAAgC;AAChC,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,oDAAkC;AAClC,2CAAyB;AACzB,6CAA2B;AAC3B,2CAAyB;AACzB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,gDAA8B;AAC9B,+CAA6B"}
@@ -78,21 +78,6 @@ export interface MovieLists {
78
78
  total_pages: number;
79
79
  total_results: number;
80
80
  }
81
- export interface MovieChangeItem {
82
- id: string;
83
- action: string;
84
- time: string;
85
- iso_639_1: string;
86
- value: string;
87
- original_value: string;
88
- }
89
- export interface MovieChange {
90
- key: string;
91
- items: MovieChangeItem[];
92
- }
93
- export interface MovieChanges {
94
- changes: MovieChange[];
95
- }
96
81
  export interface LatestMovie {
97
82
  adult: boolean;
98
83
  backdrop_path?: string;
@@ -149,3 +134,10 @@ export interface UpcomingMovies {
149
134
  total_results: number;
150
135
  total_pages: number;
151
136
  }
137
+ export type MovieChangeValue = string | {
138
+ person_id: number;
139
+ character: string;
140
+ order: number;
141
+ cast_id: number;
142
+ credit_id: string;
143
+ } | unknown;
@@ -1,3 +1,4 @@
1
+ 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 '.';
1
2
  export interface LanguageOption {
2
3
  language?: string;
3
4
  }
@@ -7,3 +8,61 @@ export interface RegionOption {
7
8
  export interface PageOption {
8
9
  page?: number;
9
10
  }
11
+ export interface ChangeOption extends PageOption {
12
+ start_date?: Date;
13
+ end_date?: Date;
14
+ }
15
+ export type AppendToResponseMovieKey = 'images' | 'videos' | 'credits' | 'recommendations' | 'reviews' | 'changes' | 'similar' | 'lists' | 'release_dates' | 'alternative_titles' | 'external_ids' | 'translations' | 'watch/providers' | 'keywords';
16
+ 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';
17
+ export type AppendToResponsePersonKey = 'images' | 'changes' | 'movie_credits' | 'tv_credits' | 'combined_credits' | 'external_ids' | 'tagged_images' | 'translations';
18
+ export type AppendToResponseTvEpisodeKey = 'images' | 'credits' | 'external_ids' | 'videos' | 'translations';
19
+ type AppendToResponseAllKeys = AppendToResponseTvKey | AppendToResponseMovieKey | AppendToResponseTvEpisodeKey | AppendToResponsePersonKey;
20
+ export type AppendToResponseMediaType = 'movie' | 'tvShow' | 'person' | 'tvEpisode';
21
+ export type AppendToResponse<K, T extends AppendToResponseAllKeys[] | undefined, Media extends AppendToResponseMediaType> = K & (T extends undefined ? object : T extends Array<unknown> ? ('credits' extends T[number] ? {
22
+ credits: Media extends 'tvEpisode' ? TvEpisodeCredit : Omit<Credits, 'id'>;
23
+ } : object) & ('videos' extends T[number] ? {
24
+ videos: Omit<Videos, 'id'>;
25
+ } : object) & ('images' extends T[number] ? {
26
+ images: Omit<Media extends 'person' ? PeopleImages : Images, 'id'>;
27
+ } : object) & ('recommendations' extends T[number] ? {
28
+ recommendations: Recommendations;
29
+ } : object) & ('reviews' extends T[number] ? {
30
+ reviews: Omit<Reviews, 'id'>;
31
+ } : object) & ('reviews' extends T[number] ? {
32
+ reviews: Omit<Translations, 'id'>;
33
+ } : object) & ('changes' extends T[number] ? {
34
+ changes: Changes<Media extends 'person' ? PersonChangeValue : Media extends 'movie' ? MovieChangeValue : Media extends 'tvShow' ? TvShowChangeValue : TvEpisodeChangeValue>;
35
+ } : object) & ('keywords' extends T[number] ? {
36
+ keywords: Omit<Keywords, 'id'>;
37
+ } : object) & ('lists' extends T[number] ? {
38
+ lists: Omit<MovieLists, 'id'>;
39
+ } : object) & ('release_dates' extends T[number] ? {
40
+ release_dates: Omit<ReleaseDates, 'id'>;
41
+ } : object) & ('alternative_titles' extends T[number] ? {
42
+ alternative_titles: Omit<AlternativeTitles, 'id'>;
43
+ } : object) & ('external_ids' extends T[number] ? {
44
+ external_ids: Omit<ExternalIds, 'id'>;
45
+ } : object) & ('translations' extends T[number] ? {
46
+ translations: Omit<Media extends 'person' ? PersonTranslations : Media extends 'tvEpisode' ? TvEpisodeTranslations : Translations, 'id'>;
47
+ } : object) & ('watch/providers' extends T[number] ? {
48
+ 'watch/providers': Omit<WatchProviders, 'id'>;
49
+ } : object) & ('aggregate_credits' extends T[number] ? {
50
+ aggregate_credits: Omit<Credits, 'id'>;
51
+ } : object) & ('episode_groups' extends T[number] ? {
52
+ episode_groups: Omit<EpisodeGroups, 'id'>;
53
+ } : object) & ('screened_theatrically' extends T[number] ? {
54
+ screened_theatrically: Omit<ScreenedTheatrically, 'id'>;
55
+ } : object) & ('similar' extends T[number] ? {
56
+ similar: Media extends 'movie' ? SimilarMovies : Media extends 'tvShow' ? SimilarTvShows : unknown;
57
+ } : object) & ('content_ratings' extends T[number] ? {
58
+ content_ratings: Omit<ContentRatings, 'id'>;
59
+ } : object) & ('movie_credits' extends T[number] ? {
60
+ movie_credits: Omit<PersonMovieCredit, 'id'>;
61
+ } : object) & ('tv_credits' extends T[number] ? {
62
+ tv_credits: Omit<PersonTvShowCredit, 'id'>;
63
+ } : object) & ('combined_credits' extends T[number] ? {
64
+ combined_credits: Omit<PersonCombinedCredits, 'id'>;
65
+ } : object) & ('tagged_images' extends T[number] ? {
66
+ tagged_images: TaggedImages;
67
+ } : object) : never);
68
+ export {};
@@ -1,4 +1,4 @@
1
- import { Movie, Person, TV } from '.';
1
+ import { Image, Movie, Person, TV } from '.';
2
2
  interface Cast {
3
3
  character: string;
4
4
  credit_id: string;
@@ -69,7 +69,7 @@ export interface PersonCombinedCredits {
69
69
  crew: (PersonMovieCrew & PersonTvShowCrew)[];
70
70
  id: number;
71
71
  }
72
- export interface PersonDetail {
72
+ export interface PersonDetails {
73
73
  birthday: string;
74
74
  known_for_department: string;
75
75
  deathday: string;
@@ -85,35 +85,21 @@ export interface PersonDetail {
85
85
  imdb_id: string;
86
86
  homepage: string;
87
87
  }
88
- export interface PersonChange {
89
- id: string;
90
- action: string;
91
- time: string;
92
- iso_639_1: string;
93
- iso_3166_1: string;
94
- value: string | {
95
- profile: {
96
- file_path: string;
97
- };
98
- };
99
- original_value: string | {
100
- profile: {
101
- file_path: string;
102
- };
88
+ export type PersonChangeValue = string | {
89
+ profile: {
90
+ file_path: string;
103
91
  };
104
- }
105
- export interface PersonChanges {
106
- changes: {
107
- key: string;
108
- items: PersonChange[];
109
- }[];
110
- }
92
+ };
111
93
  export interface PopularPersons {
112
94
  page: number;
113
95
  results: Person[];
114
96
  total_results: number;
115
97
  total_pages: number;
116
98
  }
99
+ export interface PeopleImages {
100
+ id: number;
101
+ profiles: Image[];
102
+ }
117
103
  export interface TaggedImage {
118
104
  aspect_ratio: number;
119
105
  file_path: string;
@@ -133,7 +119,7 @@ export interface TaggedImages {
133
119
  total_results: number;
134
120
  total_pages: number;
135
121
  }
136
- export interface PeopleTranslations {
122
+ export interface PersonTranslations {
137
123
  id: number;
138
124
  translations: {
139
125
  iso_3166_1: string;
@@ -1,6 +1,8 @@
1
+ import { MovieWithMediaType, PersonWithMediaType, TVWithMediaType } from '.';
1
2
  export interface Search<T> {
2
3
  page: number;
3
4
  results: T[];
4
5
  total_pages: number;
5
6
  total_results: number;
6
7
  }
8
+ export type MultiSearchResult = MovieWithMediaType | TVWithMediaType | PersonWithMediaType;
@@ -1,12 +1,10 @@
1
- import { Movie, Person, TV } from '.';
2
- export type MediaType = 'all' | 'movie' | 'tv' | 'person';
1
+ import { Movie, Person, TV, MediaType, MovieWithMediaType, TVWithMediaType, PersonWithMediaType } from '.';
3
2
  export type TimeWindow = 'day' | 'week';
4
- type TrendingResult<T extends MediaType> = T extends 'tv' ? TV : T extends 'movie' ? Movie : T extends 'person' ? Person : TV | Movie | Person;
5
- export interface TrendingResults<T extends MediaType> {
3
+ export type TrendingMediaType = MediaType | 'all';
4
+ type TrendingResult<T extends TrendingMediaType> = T extends 'tv' ? TV : T extends 'movie' ? Movie : T extends 'person' ? Person : TVWithMediaType | MovieWithMediaType | PersonWithMediaType;
5
+ export interface TrendingResults<T extends TrendingMediaType> {
6
6
  page: number;
7
- results: (TrendingResult<T> & {
8
- media_type: MediaType;
9
- })[];
7
+ results: TrendingResult<T>[];
10
8
  total_pages: number;
11
9
  total_results: number;
12
10
  }
@@ -0,0 +1,52 @@
1
+ import { Credits, Crew } from '.';
2
+ export interface EpisodeSelection {
3
+ tvShowID: number;
4
+ seasonNumber: number;
5
+ episodeNumber: number;
6
+ }
7
+ export interface Episode {
8
+ air_date: string;
9
+ episode_number: number;
10
+ crew: Crew[];
11
+ guest_stars: GuestStar[];
12
+ id: number;
13
+ name: string;
14
+ overview: string;
15
+ production_code: string;
16
+ season_number: number;
17
+ still_path: string;
18
+ vote_average: number;
19
+ vote_count: number;
20
+ runtime: number;
21
+ show_id: number;
22
+ }
23
+ export interface GuestStar {
24
+ credit_id: string;
25
+ order: number;
26
+ character: string;
27
+ adult: boolean;
28
+ gender: number | null;
29
+ id: number;
30
+ known_for_department: string;
31
+ name: string;
32
+ original_name: string;
33
+ popularity: number;
34
+ profile_path: string | null;
35
+ }
36
+ export interface TvEpisodeCredit extends Credits {
37
+ guest_stars: GuestStar[];
38
+ }
39
+ export interface TvEpisodeTranslations {
40
+ id: number;
41
+ translations: {
42
+ iso_3166_1: string;
43
+ iso_639_1: string;
44
+ name: string;
45
+ english_name: string;
46
+ data: {
47
+ name: string;
48
+ overview: string;
49
+ };
50
+ };
51
+ }
52
+ export type TvEpisodeChangeValue = string | unknown;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tv-episode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tv-episode.js","sourceRoot":"","sources":["../../src/types/tv-episode.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { Genre, ProductionCompany, ProductionCountry, SpokenLanguage, Crew } from './';
1
+ import { Genre, ProductionCompany, ProductionCountry, SpokenLanguage, Episode } from './';
2
2
  export interface CreatedBy {
3
3
  id: number;
4
4
  credit_id: string;
@@ -80,35 +80,6 @@ export interface TvShowDetails {
80
80
  vote_average: number;
81
81
  vote_count: number;
82
82
  }
83
- export interface GuestStar {
84
- credit_id: string;
85
- order: number;
86
- character: string;
87
- adult: boolean;
88
- gender: number | null;
89
- id: number;
90
- known_for_department: string;
91
- name: string;
92
- original_name: string;
93
- popularity: number;
94
- profile_path: string | null;
95
- }
96
- export interface Episode {
97
- air_date: string;
98
- episode_number: number;
99
- crew: Crew[];
100
- guest_stars: GuestStar[];
101
- id: number;
102
- name: string;
103
- overview: string;
104
- production_code: string;
105
- season_number: number;
106
- still_path: string;
107
- vote_average: number;
108
- vote_count: number;
109
- show_id: number;
110
- runtime: number;
111
- }
112
83
  export interface SeasonDetails {
113
84
  air_date: string;
114
85
  episodes: Episode[];
@@ -118,21 +89,6 @@ export interface SeasonDetails {
118
89
  poster_path: string | null;
119
90
  season_number: number;
120
91
  }
121
- export interface TvShowItem {
122
- id: string;
123
- action: string;
124
- time: string;
125
- value: Array<number>;
126
- iso_639_1: string;
127
- original_value: Array<number>;
128
- }
129
- export interface TvShowChange {
130
- key: string;
131
- items: TvShowItem[];
132
- }
133
- export interface TvShowChanges {
134
- changes: TvShowChange[];
135
- }
136
92
  export interface Network {
137
93
  id: number;
138
94
  logo_path: string;
@@ -294,3 +250,7 @@ export interface TopRatedTvShows {
294
250
  total_results: number;
295
251
  total_pages: number;
296
252
  }
253
+ export interface TvShowChangeValue {
254
+ season_id: number;
255
+ season_number: number;
256
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tmdb-ts",
3
- "version": "1.0.0",
3
+ "version": "1.3.0",
4
4
  "description": "TMDB v3 library wrapper",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",