@tmdb-graphql-api/resolvers 0.1.13 → 0.1.14
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.
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/production.analysis.txt +292 -292
- package/dist/types/cjs/helpers/buildArgsResolver.d.cts.map +1 -1
- package/dist/types/cjs/helpers/buildNoObjArgsResolver.d.cts.map +1 -1
- package/dist/types/cjs/helpers/buildObjArgsResolver.d.cts.map +1 -1
- package/dist/types/cjs/helpers/formatQueryParams.d.cts +1 -2
- package/dist/types/cjs/helpers/formatQueryParams.d.cts.map +1 -1
- package/dist/types/cjs/helpers/getAppendToResponseKeys.d.cts +2 -3
- package/dist/types/cjs/helpers/getAppendToResponseKeys.d.cts.map +1 -1
- package/dist/types/cjs/helpers/removeNullValues.d.cts +1 -1
- package/dist/types/cjs/helpers/removeNullValues.d.cts.map +1 -1
- package/dist/types/cjs/helpers/snakeCasePropNames.d.cts +1 -1
- package/dist/types/cjs/helpers/snakeCasePropNames.d.cts.map +1 -1
- package/dist/types/cjs/queries/certifications.d.cts +10 -10
- package/dist/types/cjs/queries/collection.d.cts +10 -6
- package/dist/types/cjs/queries/collection.d.cts.map +1 -1
- package/dist/types/cjs/queries/collectionImages.d.cts +4 -2
- package/dist/types/cjs/queries/collectionImages.d.cts.map +1 -1
- package/dist/types/cjs/queries/collectionTranslations.d.cts +4 -2
- package/dist/types/cjs/queries/collectionTranslations.d.cts.map +1 -1
- package/dist/types/cjs/queries/companyAlternativeNames.d.cts +4 -2
- package/dist/types/cjs/queries/companyAlternativeNames.d.cts.map +1 -1
- package/dist/types/cjs/queries/personCombinedCredits.d.cts +1 -1
- package/dist/types/cjs/queries/personExternalIds.d.cts +1 -1
- package/dist/types/cjs/queries/personMovieCredits.d.cts +1 -1
- package/dist/types/cjs/queries/personProfiles.d.cts +1 -1
- package/dist/types/cjs/queries/personTranslations.d.cts +1 -1
- package/dist/types/cjs/queries/personTvCredits.d.cts +2 -2
- package/dist/types/cjs/queries/season.d.cts +17 -4
- package/dist/types/cjs/queries/season.d.cts.map +1 -1
- package/dist/types/cjs/queries/seasonCredits.d.cts +9 -2
- package/dist/types/cjs/queries/seasonCredits.d.cts.map +1 -1
- package/dist/types/cjs/queries/seasonExternalIds.d.cts +9 -2
- package/dist/types/cjs/queries/seasonExternalIds.d.cts.map +1 -1
- package/dist/types/cjs/queries/seasonPosters.d.cts +9 -2
- package/dist/types/cjs/queries/seasonPosters.d.cts.map +1 -1
- package/dist/types/cjs/queries/seasonTranslations.d.cts +9 -2
- package/dist/types/cjs/queries/seasonTranslations.d.cts.map +1 -1
- package/dist/types/cjs/queries/seasonVideos.d.cts +9 -2
- package/dist/types/cjs/queries/seasonVideos.d.cts.map +1 -1
- package/dist/types/esm/helpers/buildArgsResolver.d.ts.map +1 -1
- package/dist/types/esm/helpers/buildNoObjArgsResolver.d.ts.map +1 -1
- package/dist/types/esm/helpers/buildObjArgsResolver.d.ts.map +1 -1
- package/dist/types/esm/helpers/formatQueryParams.d.ts +1 -2
- package/dist/types/esm/helpers/formatQueryParams.d.ts.map +1 -1
- package/dist/types/esm/helpers/getAppendToResponseKeys.d.ts +2 -3
- package/dist/types/esm/helpers/getAppendToResponseKeys.d.ts.map +1 -1
- package/dist/types/esm/helpers/removeNullValues.d.ts +1 -1
- package/dist/types/esm/helpers/removeNullValues.d.ts.map +1 -1
- package/dist/types/esm/helpers/snakeCasePropNames.d.ts +1 -1
- package/dist/types/esm/helpers/snakeCasePropNames.d.ts.map +1 -1
- package/dist/types/esm/queries/certifications.d.ts +10 -10
- package/dist/types/esm/queries/collection.d.ts +10 -6
- package/dist/types/esm/queries/collection.d.ts.map +1 -1
- package/dist/types/esm/queries/collectionImages.d.ts +4 -2
- package/dist/types/esm/queries/collectionImages.d.ts.map +1 -1
- package/dist/types/esm/queries/collectionTranslations.d.ts +4 -2
- package/dist/types/esm/queries/collectionTranslations.d.ts.map +1 -1
- package/dist/types/esm/queries/companyAlternativeNames.d.ts +4 -2
- package/dist/types/esm/queries/companyAlternativeNames.d.ts.map +1 -1
- package/dist/types/esm/queries/personCombinedCredits.d.ts +1 -1
- package/dist/types/esm/queries/personExternalIds.d.ts +1 -1
- package/dist/types/esm/queries/personMovieCredits.d.ts +1 -1
- package/dist/types/esm/queries/personProfiles.d.ts +1 -1
- package/dist/types/esm/queries/personTranslations.d.ts +1 -1
- package/dist/types/esm/queries/personTvCredits.d.ts +2 -2
- package/dist/types/esm/queries/season.d.ts +17 -4
- package/dist/types/esm/queries/season.d.ts.map +1 -1
- package/dist/types/esm/queries/seasonCredits.d.ts +9 -2
- package/dist/types/esm/queries/seasonCredits.d.ts.map +1 -1
- package/dist/types/esm/queries/seasonExternalIds.d.ts +9 -2
- package/dist/types/esm/queries/seasonExternalIds.d.ts.map +1 -1
- package/dist/types/esm/queries/seasonPosters.d.ts +9 -2
- package/dist/types/esm/queries/seasonPosters.d.ts.map +1 -1
- package/dist/types/esm/queries/seasonTranslations.d.ts +9 -2
- package/dist/types/esm/queries/seasonTranslations.d.ts.map +1 -1
- package/dist/types/esm/queries/seasonVideos.d.ts +9 -2
- package/dist/types/esm/queries/seasonVideos.d.ts.map +1 -1
- package/dist/types/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +9 -9
- package/src/__testUtils__/helpers/buildResolveInfoArg.ts +8 -17
- package/src/__testUtils__/helpers/getChildField.ts +35 -0
- package/src/helpers/buildArgsResolver.ts +4 -1
- package/src/helpers/buildNoObjArgsResolver.ts +4 -1
- package/src/helpers/buildObjArgsResolver.ts +2 -3
- package/src/helpers/buildObjResolver.ts +2 -2
- package/src/helpers/createDefaultFieldResolver.ts +1 -1
- package/src/helpers/getAppendToResponseKeys.ts +31 -20
- package/src/helpers/removeNullValues.ts +2 -2
- package/src/helpers/snakeCasePropNames.ts +2 -2
- package/src/queries/episode.test.ts +4 -3
- package/src/queries/episode.ts +2 -2
- package/src/queries/movie.test.ts +4 -3
- package/src/queries/movie.ts +2 -2
- package/src/queries/person.test.ts +4 -3
- package/src/queries/person.ts +2 -2
- package/src/queries/season.test.ts +4 -3
- package/src/queries/season.ts +2 -2
- package/src/queries/tv.test.ts +4 -3
- package/src/queries/tv.ts +2 -2
package/dist/esm/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{snakeCase as e,isUndefined as a,capitalize as r}from"lodash-es";import{schema as t}from"@tmdb-graphql-api/schema";import{Kind as s,GraphQLError as d}from"graphql";import o from"node:crypto";import{Core as n}from"@cachemap/core";import{init as i}from"@cachemap/map";import{init as l}from"@cachemap/reaper";import{removeConnectionInputOptions as c,makeConnectionResolver as u}from"@graphql-box/connection-resolver";import{encode as p,decode as h}from"js-base64";import"core-js/modules/es.array.push.js";import{getChildFields as _,getName as m}from"@graphql-box/helpers";import{SearchType as y,TrendingMediaType as g}from"@tmdb-graphql-api/schema/types";const C=()=>(a,r,t,{fieldNodes:s})=>{const d=s[0],{value:o}=d.name;return Object.prototype.hasOwnProperty.call(a,o)?a[o]:a[e(o)]},N=t.getTypeMap(),w=Object.keys(N).reduce(((e,a)=>{const r=N[a];return r?.astNode?.kind===s.OBJECT_TYPE_DEFINITION&&(e[a]=Object.keys(r.getFields())),e}),{}),v=(e,a)=>w[e].reduce(((e,r)=>(e[r]=a,e)),{}),f="alternativeNames",T="alternativeTitles",P="backdrops",R="cast",D="collection",E="combinedCredits",O="company",I="configuration",b="contentRatings",S="credits",$="crew",k="episode",A="episodeGroups",L="externalIds",M="images",V="keywords",G="logos",q="movie",j="movieCredits",H="network",U="person",J="posters",x="recommendations",Q="releaseDates",F="reviews",W="season",z="similar",B="translations",Y="tv",K="tvCredits",X="videos",Z="watchProviders",ee="watch/providers";let ae=function(e){return e.Args="ARGS",e.Obj="OBJ",e.ObjAndArgs="OBJ_AND_ARGS",e.OptsObjAndArgs="OPTS_OBJ_AND_ARGS",e}({}),re=function(e){return e.Api="api",e.Cache="cache",e.ParentNode="parentNode",e}({});const te=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldNodes:c}=n,u={...s,data:{...s.data,args:t,fieldPath:e,resolverRequestId:o.randomUUID(),resolverType:ae.Args}},p=i.child(u.data);p.info(`Resolving ${e} ${JSON.stringify(t)}`,{logEntryName:"RESOLVER_START"});const{data:h,errors:_,headers:m}=await a(t,u,n);if(_?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:JSON.stringify(_),logEntryName:"RESOLVER_FAILED"}),new d(a,{nodes:c,originalError:_[0]})}return l(e,m),h},se=te("certifications",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:d,errors:o}=await s.certifications({pathTemplateData:{type:r.toLowerCase()}},t);return{data:d?.certifications,errors:o,headers:new Headers({cacheControl:"public, max-age=28800"})}})),de=(r,t)=>async(s,n,i,l)=>{const{logger:c,setCacheMetadata:u}=i,{fieldName:p,fieldNodes:h}=l,_=s?`${r}.${p}`:r,m=s&&"id"in s&&s.id?s.id:"id"in n?n.id:void 0,y={...i,data:{...i.data,args:{...n,id:m},fieldPath:r,resolverRequestId:o.randomUUID(),resolverType:ae.ObjAndArgs}},g=c.child(y.data),C=e=>{const a=`${e} ${r}`;return m?`${a} ${String(m)}`:a},N=e(p),w=!(s&&!a(s[N]));w&&g.info(C("Resolving"),{logEntryName:"RESOLVER_START"});const{data:v,errors:f,headers:T}=await t(s,n,y,l);if(f?.length){const e=C("Failed to resolve");throw w&&g.error(e,{errors:JSON.stringify(f),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:h,originalError:f[0]})}return T&&u(_,T),v},oe=de(D,(async(r,t,s,d)=>{const o=r?.id??t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:re.ParentNode};const{data:u,errors:p,headers:h}=await i.collection({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),ne=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldName:c,fieldNodes:u}=n,p=`${e}.${c}`,h={...s,data:{...s.data,args:r?.id?{id:r.id}:void 0,fieldPath:p,resolverRequestId:o.randomUUID(),resolverType:ae.Obj}},_=i.child(h.data);if(!r){const a=`Required ${e} node missing`;throw _.error(a),new d(a,{nodes:u})}_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:y,headers:g}=await a(r,h,n);if(y?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(y),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:u,originalError:y[0]})}return g&&l(p,g),m},ie=ne(D,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,{data:o,errors:n,headers:i}=await s.collection({pathTemplateData:{id:e.id,type:M}},t),l=d;return{data:o?.[l],errors:n,headers:i}})),le=ne(D,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.collection({pathTemplateData:{id:e.id,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),ce=de(O,(async(r,t,s,d)=>{const o=r?.id??t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:re.ParentNode};const{data:u,errors:p,headers:h}=await i.company({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),ue=ne(O,(async(a,r)=>{const{data:t,restClient:s}=r,{data:d,errors:o,headers:n}=await s.company({pathTemplateData:{id:a.id,type:e(f)}},t);return{data:d?.results,errors:o,headers:n}})),pe=ne(O,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.company({pathTemplateData:{id:e.id,type:M}},r);return{data:s?.logos,errors:d,headers:o}})),he=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldName:c,fieldNodes:u}=n,p=r?`${e}.${c}`:e,h={...s,data:{...s.data,args:void 0,fieldPath:p,resolverRequestId:o.randomUUID(),resolverType:ae.OptsObjAndArgs}},_=i.child(h.data);_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:y,headers:g}=await a(h,n);if(y?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(y),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:u,originalError:y[0]})}return l(p,g),m},_e=he(I,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration(void 0,a);return{data:t,errors:s,headers:d}})),me=he(I,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"countries"}},a);return{data:t,errors:s,headers:d}})),ye=he(I,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"jobs"}},a);return{data:t,errors:s,headers:d}})),ge=he(I,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"languages"}},a);return{data:t,errors:s,headers:d}})),Ce=he(I,(async a=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.configuration({pathTemplateData:{type:e("primaryTranslations")}},r);return{data:s,errors:d,headers:o}})),Ne=he(I,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"timezones"}},a);return{data:t,errors:s,headers:d}})),we=te("credit",(async(e,a)=>{const{id:r}=e,{data:t,restClient:s}=a,{data:d,errors:o,headers:n}=await s.credit({pathTemplateData:{id:r}},t);return{data:d,errors:o,headers:n}})),ve=e=>Object.keys(e).reduce(((a,r)=>(null===e[r]||(a[r]=e[r]),a)),{}),fe=a=>Object.keys(a).reduce(((r,t)=>(r[e(t)]=a[t],r)),{}),Te=e=>{return a=fe(ve(c(e))),Object.keys(a).reduce(((e,r)=>("sort_by"===r?e[r]=a[r].toLowerCase().replace(/_([a-z]+)$/,".$1"):r.endsWith("_gte")||r.endsWith("_lte")?e[r.replace(/_([a-z]+)$/,".$1")]=a[r]:e[r]=a[r],e)),{});var a},Pe=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(ve(c(a)))}::discoverMovies`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:q},queryParams:{...Te(a),page:e}},r),cursorCache:new n({name:"DISCOVER_MOVIES_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Re=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(ve(c(a)))}::discoverTv`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:Y},queryParams:{...Te(a),page:e}},r),cursorCache:new n({name:"DISCOVER_TV_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),De=e=>encodeURIComponent(p(JSON.stringify(e))),Ee=(e,a,r)=>(_(e,{fragmentDefinitions:r})??[]).reduce(((e,{fieldNode:r})=>{const t=m(r);if(!t)return e;const s=a[t];return s?(e.includes(s)||e.push(s),e):e}),[]),Oe=(e,a)=>{let r,t,s;if(e)r=e.tv_show_id,t=e.season_number??0,s="episode_number"in e?e.episode_number:void 0;else{const e=(e=>JSON.parse(h(decodeURIComponent(e))))(a.id);r=e.id,t=e.seasonNumber,s=e.episodeNumber}return{episodeNumber:s,id:r,seasonNumber:t}},Ie=(e,a)=>({append_to_response:e.join(","),...a&&e.includes(M)?{include_image_language:`${a},null`}:{}}),be={[L]:e(L),[B]:B,[X]:X,cast:S,crew:S,guestStars:S,stills:M},Se=de(k,(async(r,t,s,d)=>{const{data:o,fragmentDefinitions:n,languageCode:i,restClient:l}=s,{fieldName:c,fieldNodes:u}=d,p=e(c),{episodeNumber:h,id:_,seasonNumber:m}=Oe(r,t);if(r&&!a(r[p]))return{data:"id"===p?De({id:_,seasonNumber:m,...h?{episodeNumber:h}:{}}):r[p],source:re.ParentNode};const y=Ee(u[0],be,n),{data:g,errors:C,headers:N}=await l.episode({pathTemplateData:{episodeNumber:h,id:_,seasonNumber:m},...y.length>0?{queryParams:{...Ie(y,i)}}:{}},o),w={...g,id:De({id:_,seasonNumber:m,...h?{episodeNumber:h}:{}}),tv_show_id:Number(_)};return{data:r?w[p]:y.length>0?{...w,__headers:N}:w,errors:C,headers:N}})),$e=ne(k,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>S in e&&"__headers"in e)(a))return{data:a.credits?.[n],headers:a.__headers,source:re.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:S}},s);return{data:i?.[n],errors:l,headers:c}})),ke=ne(k,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((a=>e(L)in a&&"__headers"in a)(a))return{data:a[n],headers:a.__headers,source:re.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:n}},s),{id:u,...p}=i??{};return{data:p,errors:l,headers:c}})),Ae=ne(k,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>M in e&&"__headers"in e)(a))return{data:a.images?.[n],headers:a.__headers,source:re.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:M}},s);return{data:i?.[n],errors:l,headers:c}})),Le=ne(k,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>B in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),Me=ne(k,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>X in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:X}},r);return{data:s?.results,errors:d,headers:o}})),Ve=te("find",(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.find({pathTemplateData:{id:e.id},queryParams:{...fe({externalSource:e.source})}},r);return{data:{episodes:s?.tv_episode_results,movies:s?.movie_results,people:s?.person_results,seasons:s?.tv_season_results,tv:s?.tv_results},errors:d,headers:o}})),Ge=te("genres",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:d,errors:o,headers:n}=await s.genres({pathTemplateData:{type:r.toLowerCase()}},t);return{data:d?.genres,errors:o,headers:n}})),qe=te("keyword",(async(e,a)=>{const{id:r,includeAdult:t}=e,{data:s,restClient:d}=a,{data:o,errors:n,headers:i}=await d.keyword({pathTemplateData:{id:r},queryParams:{...fe({includeAdult:t})}},s);return{data:o,errors:n,headers:i}})),je={[T]:e(T),[P]:M,[R]:S,[$]:S,[L]:e(L),[V]:V,[G]:M,[J]:M,[x]:x,[Q]:e(Q),[F]:F,similarMovies:z,[B]:B,[X]:X,[Z]:"watch/providers"},He=de(q,(async(r,t,s,d)=>{const{data:o,fragmentDefinitions:n,languageCode:i,restClient:l}=s,{fieldName:c,fieldNodes:u}=d,p=e(c);if(r&&!a(r[p]))return{data:r[p],source:re.ParentNode};const h=r?r.id:t.id,_=Ee(u[0],je,n),{data:m,errors:y,headers:g}=await l.movie({pathTemplateData:{id:h},..._.length>0?{queryParams:{...Ie(_,i)}}:{}},o);return{data:r?m?.[p]:_.length>0?{...m,__headers:g}:m,errors:y,headers:g}})),Ue=de(q,(async(a,r,t,s)=>{const{country:o}=r,{data:n,logger:i,restClient:l}=t,{fieldNodes:c}=s;if(!a){const e=`Required ${T} node missing`;throw i.error(e),new d(e,{nodes:c})}if((a=>e(T)in a&&"__headers"in a)(a))return{data:a.alternative_titles?.titles,headers:a.__headers,source:re.ParentNode};const{data:u,errors:p,headers:h}=await l.movie({pathTemplateData:{id:a.id,type:e(T)},queryParams:{country:o}},n);return{data:u?.titles,errors:p,headers:h}})),Je=ne(q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>S in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:re.ParentNode};const{data:n,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:S}},t);return{data:n?.[o],errors:i,headers:l}})),xe=ne(q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(L)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.movie({pathTemplateData:{id:a.id,type:e(L)}},t),{id:i,...l}=d;return{data:l,errors:o,headers:n}})),Qe=ne(q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>M in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:re.ParentNode};const{data:n,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:M}},t);return{data:n?.[o],errors:i,headers:l}})),Fe=ne(q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>V in e&&"__headers"in e)(e))return{data:e.keywords?.keywords,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:V}},r);return{data:s?.keywords,errors:d,headers:o}})),We=u({createMakeCursors:e=>{const a=`${e.id}::${q}::${x}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>x in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:x},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ze=ne(q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(Q)in a&&"__headers"in a)(a))return{data:a.release_dates?.results,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.movie({pathTemplateData:{id:a.id,type:e(Q)}},t);return{data:d?.results,errors:o,headers:n}})),Be=u({createMakeCursors:e=>{const a=`${e.id}::${q}::${F}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>F in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:F},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_REVIEWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ye=u({createMakeCursors:e=>{const a=`${e.id}::${q}::${z}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>z in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:z},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_SIMILAR_MOVIES_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ke=ne(q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>B in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),Xe=ne(q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>X in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:X}},r);return{data:s?.results,errors:d,headers:o}})),Ze=ne(q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>ee in e&&"__headers"in e)(e))return{data:e["watch/providers"]?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:q}},r);return{data:s?.results,errors:d,headers:o}})),ea=de(H,(async(r,t,s,d)=>{const o=r?r.id:t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:re.ParentNode};const{data:u,errors:p,headers:h}=await i.network({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),aa=ne(H,(async(a,r)=>{const{data:t,restClient:s}=r,{data:d,errors:o,headers:n}=await s.network({pathTemplateData:{id:a.id,type:e(f)}},t);return{data:d?.results,errors:o,headers:n}})),ra=ne(H,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.network({pathTemplateData:{id:e.id,type:M}},r);return{data:s?.logos,errors:d,headers:o}})),ta={[E]:e(E),[L]:e(L),[j]:e(j),profiles:M,[B]:B,[K]:e(K)},sa=de(U,(async(r,t,s,d)=>{const{data:o,fragmentDefinitions:n,languageCode:i,restClient:l}=s,{fieldName:c,fieldNodes:u}=d,p=e(c);if(r&&!a(r[p]))return{data:r[p],source:re.ParentNode};const h=r?r.id:t.id,_=Ee(u[0],ta,n),{data:m,errors:y,headers:g}=await l.person({pathTemplateData:{id:h},..._.length>0?{queryParams:{...Ie(_,i)}}:{}},o);return{data:r?m?.[p]:_.length>0?{...m,__headers:g}:m,errors:y,headers:g}})),da=ne(U,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(E)in a&&"__headers"in a)(a))return{data:a.combined_credits,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(E)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),oa=ne(U,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(L)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(L)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),na=ne(U,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(j)in a&&"__headers"in a)(a))return{data:a.movie_credits,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(j)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),ia=ne(U,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>M in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.person({pathTemplateData:{id:e.id,type:M}},r);return{data:s?.profiles,errors:d,headers:o}})),la=ne(U,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>B in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.person({pathTemplateData:{id:e.id,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),ca=ne(U,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(K)in a&&"__headers"in a)(a))return{data:a.tv_credits,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(K)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),ua=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::rated`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,{screenType:a},{data:t,restClient:s})=>async({page:e})=>{const{data:d,errors:o,headers:n}=await s.rated({pathTemplateData:{id:t.tmdbGuestSessionId,type:a.toLowerCase()},queryParams:{page:e}},t);return d?(d.results=d.results?.map((e=>(e.media_type=r(e.media_type??a.toLowerCase()),e))),{data:d,errors:o,headers:n}):{errors:o,headers:n}},cursorCache:new n({name:"RATED_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),pa=de("review",(async(r,t,s,d)=>{const o=r?r.id:t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:re.ParentNode};const{data:u,errors:p,headers:h}=await i.review({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),ha=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::search`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:t,restClient:s})=>{const{searchType:d,...o}=c(a);return async({page:e})=>{const{data:a,errors:n,headers:i}=await s.search({pathTemplateData:{type:(d??y.Multi).toLowerCase()},queryParams:{...fe(o),page:e}},t);return a?(a.results=a.results?.map((e=>{let a=e.media_type;return!a&&d&&d!==y.Multi&&(a=d.toLowerCase()),a&&(e.media_type=r(a)),e})),{data:a,errors:n,headers:i}):{errors:n,headers:i}}},cursorCache:new n({name:"SEARCH_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),_a={[R]:S,[$]:S,[L]:e(L),[J]:M,[B]:B,[X]:X},ma=de(W,(async(r,t,s,d)=>{const{data:o,fragmentDefinitions:n,languageCode:i,restClient:l}=s,{fieldName:c,fieldNodes:u}=d,p=e(c),{id:h,seasonNumber:_}=Oe(r,t);if(r&&!a(r[p]))return{data:"id"===p?De({id:h,seasonNumber:_}):r[p],source:re.ParentNode};const m=Ee(u[0],_a,n),{data:y,errors:g,headers:C}=await l.season({pathTemplateData:{id:h,number:_},...m.length>0?{queryParams:{...Ie(m,i)}}:{}},o),N={...y,episodes:(y?.episodes??[]).map((e=>({...e,tv_show_id:Number(h)}))),id:De({id:h,seasonNumber:_}),tv_show_id:Number(h)};return{data:r?N[p]:m.length>0?{...N,__headers:C}:N,errors:g,headers:C}})),ya=ne(W,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>S in e&&"__headers"in e)(a))return{data:a.credits?.[n],headers:a.__headers,source:re.ParentNode};const{data:i,errors:l,headers:c}=await d.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:S}},s);return{data:i?.[n],errors:l,headers:c}})),ga=ne(W,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(L)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e(L)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),Ca=ne(W,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>M in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:M}},r);return{data:s?.posters,errors:d,headers:o}})),Na=ne(W,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>B in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),wa=ne(W,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>X in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:X}},r);return{data:s?.results,errors:d,headers:o}})),va=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::trending`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,t)=>async({page:e})=>{const{mediaType:s,timeWindow:d}=a,{data:o,restClient:n}=t,{data:i,errors:l,headers:c}=await n.trending({pathTemplateData:{subType:d.toLowerCase(),type:s.toLowerCase()},queryParams:{page:e}},o);return i?(i.results=i.results?.map((e=>{let a=e.media_type;return a||s===g.All||(a=s.toLowerCase()),a&&(e.media_type=r(a)),e})),{data:i,errors:l,headers:c}):{errors:l,headers:c}},cursorCache:new n({name:"TRENDING_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),fa={[T]:e(T),[P]:M,[R]:S,[b]:e(b),[$]:S,[A]:e(A),[L]:e(L),[V]:V,[G]:M,[J]:M,[x]:x,[F]:F,similarTvShows:z,[B]:B,[X]:X,[Z]:"watch/providers"},Ta=de(Y,(async(r,t,s,d)=>{const{data:o,fragmentDefinitions:n,languageCode:i,restClient:l}=s,{fieldName:c,fieldNodes:u}=d,p=e(c);if(r&&!a(r[p]))return{data:r[p],source:re.ParentNode};const h=r?r.id:t.id,_=Ee(u[0],fa,n),{data:m,errors:y,headers:g}=await l.tv({pathTemplateData:{id:h},..._.length>0?{queryParams:{...Ie(_,i)}}:{}},o),C={...m,seasons:(m?.seasons??[]).map((e=>({...e,tv_show_id:Number(h)})))};return{data:r?C[p]:_.length>0?{...C,__headers:g}:C,errors:y,headers:g}})),Pa=ne(Y,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(T)in a&&"__headers"in a)(a))return{data:a.alternative_titles.results,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(T)}},t);return{data:d?.results,errors:o,headers:n}})),Ra=ne(Y,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(b)in a&&"__headers"in a)(a))return{data:a.content_ratings.results,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(b)}},t);return{data:d?.results,errors:o,headers:n}})),Da=ne(Y,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>S in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:re.ParentNode};const{data:n,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:S}},t);return{data:n?.[o],errors:i,headers:l}})),Ea=ne(Y,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(A)in a&&"__headers"in a)(a))return{data:a.episode_groups?.results,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(A)}},t);return{data:d?.results,errors:o,headers:n}})),Oa=ne(Y,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(L)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:re.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(L)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),Ia=ne(Y,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>M in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:re.ParentNode};const{data:n,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:M}},t);return{data:n?.[o],errors:i,headers:l}})),ba=ne(Y,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>V in e&&"__headers"in e)(e))return{data:e.keywords?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:V}},r);return{data:s?.results,errors:d,headers:o}})),Sa=u({createMakeCursors:e=>{const a=`${e.id}::${Y}::${x}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,r)=>async({page:a})=>{const{data:t,restClient:s}=r;if(((e,a)=>x in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:e.id,type:x},queryParams:{page:a}},t);return{data:d,errors:o,headers:n}},cursorCache:new n({name:"TV_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),$a=u({createMakeCursors:e=>{const a=`${e.id}::${Y}::${F}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>F in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:F},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ka=u({createMakeCursors:e=>{const a=`${e.id}::${Y}::${z}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>z in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:z},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Aa=ne(Y,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>B in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:B}},r);return{data:s?.translations,errors:d,headers:o}})),La=ne(Y,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>X in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:X}},r);return{data:s?.results,errors:d,headers:o}})),Ma=ne(Y,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>ee in e&&"__headers"in e)(e))return{data:e[ee]?.results,headers:e.__headers,source:re.ParentNode};const{data:s,errors:d,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:Y}},r);return{data:s?.results,errors:d,headers:o}})),Va={Certifications:{CA_QC:e=>e["CA-QC"]},Collection:{...v("Collection",oe),backdrops:ie,posters:ie,translations:le},Company:{...v("Company",ce),alternativeNames:ue,logos:pe},Configuration:{countries:me,jobs:ye,languages:ge,primaryTranslations:Ce,timezones:Ne},Episode:{...v("Episode",Se),cast:$e,crew:$e,externalIds:ke,stills:Ae,translations:Le,videos:Me},Media:{__resolveType:e=>e.media_type},Movie:{...v("Movie",He),alternativeTitles:Ue,backdrops:Qe,cast:Je,crew:Je,externalIds:xe,keywords:Fe,logos:Qe,posters:Qe,recommendations:We,releaseDates:ze,reviews:Be,similarMovies:Ye,translations:Ke,videos:Xe,watchProviders:Ze},MovieReleaseType:{DIGITAL:4,PHYSICAL:5,PREMIER:1,THEATRICAL:3,THEATRICAL_LIMITED:2,TV:6},MovieStatus:{CANCELED:"Canceled",IN_PRODUCTION:"In Production",PLANNED:"Planned",POST_PRODUCTION:"Post Production",RELEASED:"Released",RUMORED:"Rumored"},Network:{...v("Network",ea),alternativeNames:aa,logos:ra},Person:{...v("Person",sa),combinedCredits:da,externalIds:oa,movieCredits:na,profiles:ia,translations:la,tvCredits:ca},Query:{certifications:se,collection:oe,company:ce,configuration:_e,credit:we,discoverMovies:Pe,discoverTv:Re,episode:Se,find:Ve,genres:Ge,keyword:qe,movie:He,network:ea,person:sa,rated:ua,review:pa,search:ha,season:ma,trending:va,tv:Ta},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...v("Season",ma),cast:ya,crew:ya,episodeCount:e=>e.episodes?.length??0,externalIds:ga,posters:Ca,translations:Na,videos:wa},Tv:{...v("Tv",Ta),alternativeTitles:Pa,backdrops:Ia,cast:Da,contentRatings:Ra,crew:Da,episodeGroups:Ea,externalIds:Oa,keywords:ba,logos:Ia,posters:Ia,recommendations:Sa,reviews:$a,similarTvShows:ka,translations:Aa,videos:La,watchProviders:Ma},TvStatus:{CANCELED:"Canceled",ENDED:"Ended",IN_PRODUCTION:"In Production",PILOT:"Pilot",PLANNED:"Planned",RETURNING_SERIES:"Returning Series"},TvType:{DOCUMENTARY:"Documentary",MINISERIES:"Miniseries",NEWS:"News",REALITY:"Reality",SCRIPTED:"Scripted",TALK_SHOW:"Talk Show",VIDEO:"Video"},Video:{type:({type:a})=>e(a).toUpperCase()}};export{C as createDefaultFieldResolver,Va as resolvers};
|
|
1
|
+
import{snakeCase as e,isUndefined as a,capitalize as r}from"lodash-es";import{schema as t}from"@tmdb-graphql-api/schema";import{Kind as s,GraphQLError as d}from"graphql";import o from"node:crypto";import{Core as n}from"@cachemap/core";import{init as i}from"@cachemap/map";import{init as l}from"@cachemap/reaper";import{removeConnectionInputOptions as c,makeConnectionResolver as u}from"@graphql-box/connection-resolver";import{encode as p,decode as h}from"js-base64";import"core-js/modules/es.array.push.js";import{isKind as _}from"@graphql-box/helpers";import{SearchType as m,TrendingMediaType as y}from"@tmdb-graphql-api/schema/types";const g=()=>(a,r,t,{fieldNodes:s})=>{const d=s[0],{value:o}=d.name;return Object.prototype.hasOwnProperty.call(a,o)?a[o]:a[e(o)]},C=t.getTypeMap(),N=Object.keys(C).reduce(((e,a)=>{const r=C[a];return r?.astNode?.kind===s.OBJECT_TYPE_DEFINITION&&(e[a]=Object.keys(r.getFields())),e}),{}),w=(e,a)=>N[e].reduce(((e,r)=>(e[r]=a,e)),{}),v="alternativeNames",T="alternativeTitles",f="backdrops",P="cast",R="collection",D="combinedCredits",E="company",O="configuration",I="contentRatings",b="credits",S="crew",$="episode",k="episodeGroups",A="externalIds",L="images",M="keywords",V="logos",G="movie",q="movieCredits",j="network",H="person",U="posters",J="recommendations",x="releaseDates",Q="reviews",F="season",W="similar",z="translations",B="tv",Y="tvCredits",K="videos",X="watchProviders",Z="watch/providers";let ee=function(e){return e.Args="ARGS",e.Obj="OBJ",e.ObjAndArgs="OBJ_AND_ARGS",e.OptsObjAndArgs="OPTS_OBJ_AND_ARGS",e}({}),ae=function(e){return e.Api="api",e.Cache="cache",e.ParentNode="parentNode",e}({});const re=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldNodes:c}=n,u={...s,data:{...s.data,args:t,fieldPath:e,resolverRequestId:o.randomUUID(),resolverType:ee.Args}},p=i.child(u.data);p.info(`Resolving ${e} ${JSON.stringify(t)}`,{logEntryName:"RESOLVER_START"});const{data:h,errors:_,headers:m}=await a(t,u,n);if(_?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:JSON.stringify(_),logEntryName:"RESOLVER_FAILED"}),new d(a,{nodes:c,originalError:_[0]})}return m.has("cache-control")&&l(h,n,m),h},te=re("certifications",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:d,errors:o}=await s.certifications({pathTemplateData:{type:r.toLowerCase()}},t);return{data:d?.certifications,errors:o,headers:new Headers({cacheControl:"public, max-age=28800"})}})),se=(r,t)=>async(s,n,i,l)=>{const{logger:c,setCacheMetadata:u}=i,{fieldName:p,fieldNodes:h}=l,_=s&&"id"in s&&s.id?s.id:"id"in n?n.id:void 0,m={...i,data:{...i.data,args:{...n,id:_},fieldPath:r,resolverRequestId:o.randomUUID(),resolverType:ee.ObjAndArgs}},y=c.child(m.data),g=e=>{const a=`${e} ${r}`;return _?`${a} ${String(_)}`:a},C=e(p),N=!(s&&!a(s[C]));N&&y.info(g("Resolving"),{logEntryName:"RESOLVER_START"});const{data:w,errors:v,headers:T}=await t(s,n,m,l);if(v?.length){const e=g("Failed to resolve");throw N&&y.error(e,{errors:JSON.stringify(v),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:h,originalError:v[0]})}return T?.has("cache-control")&&u(w,l,T),w},de=se(R,(async(r,t,s,d)=>{const o=r?.id??t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:ae.ParentNode};const{data:u,errors:p,headers:h}=await i.collection({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),oe=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldName:c,fieldNodes:u}=n,p=`${e}.${c}`,h={...s,data:{...s.data,args:r?.id?{id:r.id}:void 0,fieldPath:p,resolverRequestId:o.randomUUID(),resolverType:ee.Obj}},_=i.child(h.data);if(!r){const a=`Required ${e} node missing`;throw _.error(a),new d(a,{nodes:u})}_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:y,headers:g}=await a(r,h,n);if(y?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(y),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:u,originalError:y[0]})}return g?.has("cache-control")&&l(m,n,g),m},ne=oe(R,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,{data:o,errors:n,headers:i}=await s.collection({pathTemplateData:{id:e.id,type:L}},t),l=d;return{data:o?.[l],errors:n,headers:i}})),ie=oe(R,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.collection({pathTemplateData:{id:e.id,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),le=se(E,(async(r,t,s,d)=>{const o=r?.id??t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:ae.ParentNode};const{data:u,errors:p,headers:h}=await i.company({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),ce=oe(E,(async(a,r)=>{const{data:t,restClient:s}=r,{data:d,errors:o,headers:n}=await s.company({pathTemplateData:{id:a.id,type:e(v)}},t);return{data:d?.results,errors:o,headers:n}})),ue=oe(E,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.company({pathTemplateData:{id:e.id,type:L}},r);return{data:s?.logos,errors:d,headers:o}})),pe=(e,a)=>async(r,t,s,n)=>{const{logger:i,setCacheMetadata:l}=s,{fieldName:c,fieldNodes:u}=n,p=r?`${e}.${c}`:e,h={...s,data:{...s.data,args:void 0,fieldPath:p,resolverRequestId:o.randomUUID(),resolverType:ee.OptsObjAndArgs}},_=i.child(h.data);_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:y,headers:g}=await a(h,n);if(y?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(y),logEntryName:"RESOLVER_FAILED"}),new d(e,{nodes:u,originalError:y[0]})}return g.has("cache-control")&&l(m,n,g),m},he=pe(O,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration(void 0,a);return{data:t,errors:s,headers:d}})),_e=pe(O,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"countries"}},a);return{data:t,errors:s,headers:d}})),me=pe(O,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"jobs"}},a);return{data:t,errors:s,headers:d}})),ye=pe(O,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"languages"}},a);return{data:t,errors:s,headers:d}})),ge=pe(O,(async a=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.configuration({pathTemplateData:{type:e("primaryTranslations")}},r);return{data:s,errors:d,headers:o}})),Ce=pe(O,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:d}=await r.configuration({pathTemplateData:{type:"timezones"}},a);return{data:t,errors:s,headers:d}})),Ne=re("credit",(async(e,a)=>{const{id:r}=e,{data:t,restClient:s}=a,{data:d,errors:o,headers:n}=await s.credit({pathTemplateData:{id:r}},t);return{data:d,errors:o,headers:n}})),we=e=>Object.keys(e).reduce(((a,r)=>(null===e[r]||(a[r]=e[r]),a)),{}),ve=a=>Object.keys(a).reduce(((r,t)=>(r[e(t)]=a[t],r)),{}),Te=e=>{return a=ve(we(c(e))),Object.keys(a).reduce(((e,r)=>("sort_by"===r?e[r]=a[r].toLowerCase().replace(/_([a-z]+)$/,".$1"):r.endsWith("_gte")||r.endsWith("_lte")?e[r.replace(/_([a-z]+)$/,".$1")]=a[r]:e[r]=a[r],e)),{});var a},fe=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(we(c(a)))}::discoverMovies`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:G},queryParams:{...Te(a),page:e}},r),cursorCache:new n({name:"DISCOVER_MOVIES_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Pe=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(we(c(a)))}::discoverTv`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:B},queryParams:{...Te(a),page:e}},r),cursorCache:new n({name:"DISCOVER_TV_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Re=e=>encodeURIComponent(p(JSON.stringify(e))),De=(e,a)=>{if(!e.selectionSet)return[];const r=[];for(const t of e.selectionSet.selections){if(_(t,s.FIELD)){const e=a[t.name.value];if(!e)continue;r.includes(e)||r.push(e)}if(_(t,s.INLINE_FRAGMENT)){const e=De(t,a);for(const a of e)r.includes(a)||r.push(a)}}return r},Ee=(e,a)=>{let r,t,s;if(e)r=e.tv_show_id,t=e.season_number??0,s="episode_number"in e?e.episode_number:void 0;else{const e=(e=>JSON.parse(h(decodeURIComponent(e))))(a.id);r=e.id,t=e.seasonNumber,s=e.episodeNumber}return{episodeNumber:s,id:r,seasonNumber:t}},Oe=(e,a)=>({append_to_response:e.join(","),...a&&e.includes(L)?{include_image_language:`${a},null`}:{}}),Ie={[A]:e(A),[z]:z,[K]:K,cast:b,crew:b,guestStars:b,stills:L},be=se($,(async(r,t,s,d)=>{const{data:o,languageCode:n,restClient:i}=s,{fieldName:l,fieldNodes:c}=d,u=e(l),{episodeNumber:p,id:h,seasonNumber:_}=Ee(r,t);if(r&&!a(r[u]))return{data:"id"===u?Re({id:h,seasonNumber:_,...p?{episodeNumber:p}:{}}):r[u],source:ae.ParentNode};const m=De(c[0],Ie),{data:y,errors:g,headers:C}=await i.episode({pathTemplateData:{episodeNumber:p,id:h,seasonNumber:_},...m.length>0?{queryParams:{...Oe(m,n)}}:{}},o),N={...y,id:Re({id:h,seasonNumber:_,...p?{episodeNumber:p}:{}}),tv_show_id:Number(h)};return{data:r?N[u]:m.length>0?{...N,__headers:C}:N,errors:g,headers:C}})),Se=oe($,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>b in e&&"__headers"in e)(a))return{data:a.credits?.[n],headers:a.__headers,source:ae.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:b}},s);return{data:i?.[n],errors:l,headers:c}})),$e=oe($,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((a=>e(A)in a&&"__headers"in a)(a))return{data:a[n],headers:a.__headers,source:ae.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:n}},s),{id:u,...p}=i??{};return{data:p,errors:l,headers:c}})),ke=oe($,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>L in e&&"__headers"in e)(a))return{data:a.images?.[n],headers:a.__headers,source:ae.ParentNode};const{data:i,errors:l,headers:c}=await d.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:L}},s);return{data:i?.[n],errors:l,headers:c}})),Ae=oe($,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>z in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),Le=oe($,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>K in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:K}},r);return{data:s?.results,errors:d,headers:o}})),Me=re("find",(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.find({pathTemplateData:{id:e.id},queryParams:{...ve({externalSource:e.source})}},r);return{data:{episodes:s?.tv_episode_results,movies:s?.movie_results,people:s?.person_results,seasons:s?.tv_season_results,tv:s?.tv_results},errors:d,headers:o}})),Ve=re("genres",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:d,errors:o,headers:n}=await s.genres({pathTemplateData:{type:r.toLowerCase()}},t);return{data:d?.genres,errors:o,headers:n}})),Ge=re("keyword",(async(e,a)=>{const{id:r,includeAdult:t}=e,{data:s,restClient:d}=a,{data:o,errors:n,headers:i}=await d.keyword({pathTemplateData:{id:r},queryParams:{...ve({includeAdult:t})}},s);return{data:o,errors:n,headers:i}})),qe={[T]:e(T),[f]:L,[P]:b,[S]:b,[A]:e(A),[M]:M,[V]:L,[U]:L,[J]:J,[x]:e(x),[Q]:Q,similarMovies:W,[z]:z,[K]:K,[X]:"watch/providers"},je=se(G,(async(r,t,s,d)=>{const{data:o,languageCode:n,restClient:i}=s,{fieldName:l,fieldNodes:c}=d,u=e(l);if(r&&!a(r[u]))return{data:r[u],source:ae.ParentNode};const p=r?r.id:t.id,h=De(c[0],qe),{data:_,errors:m,headers:y}=await i.movie({pathTemplateData:{id:p},...h.length>0?{queryParams:{...Oe(h,n)}}:{}},o);return{data:r?_?.[u]:h.length>0?{..._,__headers:y}:_,errors:m,headers:y}})),He=se(G,(async(a,r,t,s)=>{const{country:o}=r,{data:n,logger:i,restClient:l}=t,{fieldNodes:c}=s;if(!a){const e=`Required ${T} node missing`;throw i.error(e),new d(e,{nodes:c})}if((a=>e(T)in a&&"__headers"in a)(a))return{data:a.alternative_titles?.titles,headers:a.__headers,source:ae.ParentNode};const{data:u,errors:p,headers:h}=await l.movie({pathTemplateData:{id:a.id,type:e(T)},queryParams:{country:o}},n);return{data:u?.titles,errors:p,headers:h}})),Ue=oe(G,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>b in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:ae.ParentNode};const{data:n,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:b}},t);return{data:n?.[o],errors:i,headers:l}})),Je=oe(G,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(A)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.movie({pathTemplateData:{id:a.id,type:e(A)}},t),{id:i,...l}=d;return{data:l,errors:o,headers:n}})),xe=oe(G,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>L in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:ae.ParentNode};const{data:n,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:L}},t);return{data:n?.[o],errors:i,headers:l}})),Qe=oe(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>M in e&&"__headers"in e)(e))return{data:e.keywords?.keywords,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:M}},r);return{data:s?.keywords,errors:d,headers:o}})),Fe=u({createMakeCursors:e=>{const a=`${e.id}::${G}::${J}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>J in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:J},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),We=oe(G,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(x)in a&&"__headers"in a)(a))return{data:a.release_dates?.results,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.movie({pathTemplateData:{id:a.id,type:e(x)}},t);return{data:d?.results,errors:o,headers:n}})),ze=u({createMakeCursors:e=>{const a=`${e.id}::${G}::${Q}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>Q in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:Q},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_REVIEWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Be=u({createMakeCursors:e=>{const a=`${e.id}::${G}::${W}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>W in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:W},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"MOVIE_SIMILAR_MOVIES_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ye=oe(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>z in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),Ke=oe(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>K in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:K}},r);return{data:s?.results,errors:d,headers:o}})),Xe=oe(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>Z in e&&"__headers"in e)(e))return{data:e["watch/providers"]?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:G}},r);return{data:s?.results,errors:d,headers:o}})),Ze=se(j,(async(r,t,s,d)=>{const o=r?r.id:t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:ae.ParentNode};const{data:u,errors:p,headers:h}=await i.network({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),ea=oe(j,(async(a,r)=>{const{data:t,restClient:s}=r,{data:d,errors:o,headers:n}=await s.network({pathTemplateData:{id:a.id,type:e(v)}},t);return{data:d?.results,errors:o,headers:n}})),aa=oe(j,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:d,headers:o}=await t.network({pathTemplateData:{id:e.id,type:L}},r);return{data:s?.logos,errors:d,headers:o}})),ra={[D]:e(D),[A]:e(A),[q]:e(q),profiles:L,[z]:z,[Y]:e(Y)},ta=se(H,(async(r,t,s,d)=>{const{data:o,languageCode:n,restClient:i}=s,{fieldName:l,fieldNodes:c}=d,u=e(l);if(r&&!a(r[u]))return{data:r[u],source:ae.ParentNode};const p=r?r.id:t.id,h=De(c[0],ra),{data:_,errors:m,headers:y}=await i.person({pathTemplateData:{id:p},...h.length>0?{queryParams:{...Oe(h,n)}}:{}},o);return{data:r?_?.[u]:h.length>0?{..._,__headers:y}:_,errors:m,headers:y}})),sa=oe(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(D)in a&&"__headers"in a)(a))return{data:a.combined_credits,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(D)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),da=oe(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(A)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(A)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),oa=oe(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(q)in a&&"__headers"in a)(a))return{data:a.movie_credits,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(q)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),na=oe(H,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>L in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.person({pathTemplateData:{id:e.id,type:L}},r);return{data:s?.profiles,errors:d,headers:o}})),ia=oe(H,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>z in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.person({pathTemplateData:{id:e.id,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),la=oe(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(Y)in a&&"__headers"in a)(a))return{data:a.tv_credits,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.person({pathTemplateData:{id:a.id,type:e(Y)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),ca=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::rated`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,{screenType:a},{data:t,restClient:s})=>async({page:e})=>{const{data:d,errors:o,headers:n}=await s.rated({pathTemplateData:{id:t.tmdbGuestSessionId,type:a.toLowerCase()},queryParams:{page:e}},t);return d?(d.results=d.results?.map((e=>(e.media_type=r(e.media_type??a.toLowerCase()),e))),{data:d,errors:o,headers:n}):{errors:o,headers:n}},cursorCache:new n({name:"RATED_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ua=se("review",(async(r,t,s,d)=>{const o=r?r.id:t.id,{data:n,restClient:i}=s,{fieldName:l}=d,c=e(l);if(r&&!a(r[c]))return{data:r[c],source:ae.ParentNode};const{data:u,errors:p,headers:h}=await i.review({pathTemplateData:{id:o}},n);return{data:r?u?.[c]:u,errors:p,headers:h}})),pa=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::search`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,{data:t,restClient:s})=>{const{searchType:d,...o}=c(a);return async({page:e})=>{const{data:a,errors:n,headers:i}=await s.search({pathTemplateData:{type:(d??m.Multi).toLowerCase()},queryParams:{...ve(o),page:e}},t);return a?(a.results=a.results?.map((e=>{let a=e.media_type;return!a&&d&&d!==m.Multi&&(a=d.toLowerCase()),a&&(e.media_type=r(a)),e})),{data:a,errors:n,headers:i}):{errors:n,headers:i}}},cursorCache:new n({name:"SEARCH_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ha={[P]:b,[S]:b,[A]:e(A),[U]:L,[z]:z,[K]:K},_a=se(F,(async(r,t,s,d)=>{const{data:o,languageCode:n,restClient:i}=s,{fieldName:l,fieldNodes:c}=d,u=e(l),{id:p,seasonNumber:h}=Ee(r,t);if(r&&!a(r[u]))return{data:"id"===u?Re({id:p,seasonNumber:h}):r[u],source:ae.ParentNode};const _=De(c[0],ha),{data:m,errors:y,headers:g}=await i.season({pathTemplateData:{id:p,number:h},..._.length>0?{queryParams:{...Oe(_,n)}}:{}},o),C={...m,episodes:(m?.episodes??[]).map((e=>({...e,tv_show_id:Number(p)}))),id:Re({id:p,seasonNumber:h}),tv_show_id:Number(p)};return{data:r?C[u]:_.length>0?{...C,__headers:g}:C,errors:y,headers:g}})),ma=oe(F,(async(a,r,t)=>{const{data:s,restClient:d}=r,{fieldName:o}=t,n=e(o);if((e=>b in e&&"__headers"in e)(a))return{data:a.credits?.[n],headers:a.__headers,source:ae.ParentNode};const{data:i,errors:l,headers:c}=await d.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:b}},s);return{data:i?.[n],errors:l,headers:c}})),ya=oe(F,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(A)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e(A)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),ga=oe(F,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>L in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:L}},r);return{data:s?.posters,errors:d,headers:o}})),Ca=oe(F,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>z in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),Na=oe(F,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>K in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:K}},r);return{data:s?.results,errors:d,headers:o}})),wa=u({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(c(a))}::trending`;return{makeGroupCursor:()=>p(r),makeIDCursor:e=>p(`${e}::${r}`)}},createResourceResolver:(e,a,t)=>async({page:e})=>{const{mediaType:s,timeWindow:d}=a,{data:o,restClient:n}=t,{data:i,errors:l,headers:c}=await n.trending({pathTemplateData:{subType:d.toLowerCase(),type:s.toLowerCase()},queryParams:{page:e}},o);return i?(i.results=i.results?.map((e=>{let a=e.media_type;return a||s===y.All||(a=s.toLowerCase()),a&&(e.media_type=r(a)),e})),{data:i,errors:l,headers:c}):{errors:l,headers:c}},cursorCache:new n({name:"TRENDING_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),va={[T]:e(T),[f]:L,[P]:b,[I]:e(I),[S]:b,[k]:e(k),[A]:e(A),[M]:M,[V]:L,[U]:L,[J]:J,[Q]:Q,similarTvShows:W,[z]:z,[K]:K,[X]:"watch/providers"},Ta=se(B,(async(r,t,s,d)=>{const{data:o,languageCode:n,restClient:i}=s,{fieldName:l,fieldNodes:c}=d,u=e(l);if(r&&!a(r[u]))return{data:r[u],source:ae.ParentNode};const p=r?r.id:t.id,h=De(c[0],va),{data:_,errors:m,headers:y}=await i.tv({pathTemplateData:{id:p},...h.length>0?{queryParams:{...Oe(h,n)}}:{}},o),g={..._,seasons:(_?.seasons??[]).map((e=>({...e,tv_show_id:Number(p)})))};return{data:r?g[u]:h.length>0?{...g,__headers:y}:g,errors:m,headers:y}})),fa=oe(B,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(T)in a&&"__headers"in a)(a))return{data:a.alternative_titles.results,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(T)}},t);return{data:d?.results,errors:o,headers:n}})),Pa=oe(B,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(I)in a&&"__headers"in a)(a))return{data:a.content_ratings.results,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(I)}},t);return{data:d?.results,errors:o,headers:n}})),Ra=oe(B,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>b in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:ae.ParentNode};const{data:n,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:b}},t);return{data:n?.[o],errors:i,headers:l}})),Da=oe(B,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(k)in a&&"__headers"in a)(a))return{data:a.episode_groups?.results,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(k)}},t);return{data:d?.results,errors:o,headers:n}})),Ea=oe(B,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e(A)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:ae.ParentNode};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:a.id,type:e(A)}},t),{id:i,...l}=d??{};return{data:l,errors:o,headers:n}})),Oa=oe(B,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:d}=r,o=d;if((e=>L in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:ae.ParentNode};const{data:n,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:L}},t);return{data:n?.[o],errors:i,headers:l}})),Ia=oe(B,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>M in e&&"__headers"in e)(e))return{data:e.keywords?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:M}},r);return{data:s?.results,errors:d,headers:o}})),ba=u({createMakeCursors:e=>{const a=`${e.id}::${B}::${J}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,r)=>async({page:a})=>{const{data:t,restClient:s}=r;if(((e,a)=>J in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:d,errors:o,headers:n}=await s.tv({pathTemplateData:{id:e.id,type:J},queryParams:{page:a}},t);return{data:d,errors:o,headers:n}},cursorCache:new n({name:"TV_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Sa=u({createMakeCursors:e=>{const a=`${e.id}::${B}::${Q}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>Q in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:Q},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),$a=u({createMakeCursors:e=>{const a=`${e.id}::${B}::${W}`;return{makeGroupCursor:()=>p(a),makeIDCursor:e=>p(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>W in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:W},queryParams:{page:a}},r);return{data:s,errors:d,headers:o}},cursorCache:new n({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:l({interval:3e5}),store:i(),type:"GRAPHQL"}),getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ka=oe(B,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>z in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:z}},r);return{data:s?.translations,errors:d,headers:o}})),Aa=oe(B,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>K in e&&"__headers"in e)(e))return{data:e.videos?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:K}},r);return{data:s?.results,errors:d,headers:o}})),La=oe(B,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>Z in e&&"__headers"in e)(e))return{data:e[Z]?.results,headers:e.__headers,source:ae.ParentNode};const{data:s,errors:d,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:B}},r);return{data:s?.results,errors:d,headers:o}})),Ma={Certifications:{CA_QC:e=>e["CA-QC"]},Collection:{...w("Collection",de),backdrops:ne,posters:ne,translations:ie},Company:{...w("Company",le),alternativeNames:ce,logos:ue},Configuration:{countries:_e,jobs:me,languages:ye,primaryTranslations:ge,timezones:Ce},Episode:{...w("Episode",be),cast:Se,crew:Se,externalIds:$e,stills:ke,translations:Ae,videos:Le},Media:{__resolveType:e=>e.media_type},Movie:{...w("Movie",je),alternativeTitles:He,backdrops:xe,cast:Ue,crew:Ue,externalIds:Je,keywords:Qe,logos:xe,posters:xe,recommendations:Fe,releaseDates:We,reviews:ze,similarMovies:Be,translations:Ye,videos:Ke,watchProviders:Xe},MovieReleaseType:{DIGITAL:4,PHYSICAL:5,PREMIER:1,THEATRICAL:3,THEATRICAL_LIMITED:2,TV:6},MovieStatus:{CANCELED:"Canceled",IN_PRODUCTION:"In Production",PLANNED:"Planned",POST_PRODUCTION:"Post Production",RELEASED:"Released",RUMORED:"Rumored"},Network:{...w("Network",Ze),alternativeNames:ea,logos:aa},Person:{...w("Person",ta),combinedCredits:sa,externalIds:da,movieCredits:oa,profiles:na,translations:ia,tvCredits:la},Query:{certifications:te,collection:de,company:le,configuration:he,credit:Ne,discoverMovies:fe,discoverTv:Pe,episode:be,find:Me,genres:Ve,keyword:Ge,movie:je,network:Ze,person:ta,rated:ca,review:ua,search:pa,season:_a,trending:wa,tv:Ta},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...w("Season",_a),cast:ma,crew:ma,episodeCount:e=>e.episodes?.length??0,externalIds:ya,posters:ga,translations:Ca,videos:Na},Tv:{...w("Tv",Ta),alternativeTitles:fa,backdrops:Oa,cast:Ra,contentRatings:Pa,crew:Ra,episodeGroups:Da,externalIds:Ea,keywords:Ia,logos:Oa,posters:Oa,recommendations:ba,reviews:Sa,similarTvShows:$a,translations:ka,videos:Aa,watchProviders:La},TvStatus:{CANCELED:"Canceled",ENDED:"Ended",IN_PRODUCTION:"In Production",PILOT:"Pilot",PLANNED:"Planned",RETURNING_SERIES:"Returning Series"},TvType:{DOCUMENTARY:"Documentary",MINISERIES:"Miniseries",NEWS:"News",REALITY:"Reality",SCRIPTED:"Scripted",TALK_SHOW:"Talk Show",VIDEO:"Video"},Video:{type:({type:a})=>e(a).toUpperCase()}};export{g as createDefaultFieldResolver,Ma as resolvers};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|