@tmdb-graphql-api/resolvers 0.1.2-unstable.15 → 0.1.2-unstable.16

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.
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("lodash-es"),a=require("@tmdb-graphql-api/schema"),r=require("graphql"),t=require("node:crypto"),s=require("@cachemap/core"),n=require("@cachemap/map"),o=require("@cachemap/reaper"),d=require("@graphql-box/connection-resolver"),i=require("js-base64");require("core-js/modules/es.array.push.js");var l=require("@graphql-box/helpers"),c=require("@tmdb-graphql-api/schema/types");const u=a.schema.getTypeMap(),p=Object.keys(u).reduce(((e,a)=>{const t=u[a];return t?.astNode?.kind===r.Kind.OBJECT_TYPE_DEFINITION&&(e[a]=Object.keys(t.getFields())),e}),{}),h=(e,a)=>p[e].reduce(((e,r)=>(e[r]=a,e)),{}),_="alternativeNames",m="alternativeTitles",C="backdrops",y="cast",g="collection",N="combinedCredits",v="company",w="configuration",f="contentRatings",T="credits",R="crew",P="episode",k="episodeGroups",D="externalIds",E="images",O="keywords",I="logos",b="movie",S="movieCredits",$="network",L="person",A="posters",M="recommendations",q="releaseDates",G="reviews",V="season",U="similar",j="translations",Q="tv",H="tvCredits",x="videos",J="watchProviders",F="watch/providers";let W=function(e){return e.Args="ARGS",e.Obj="OBJ",e.ObjAndArgs="OBJ_AND_ARGS",e.OptsObjAndArgs="OPTS_OBJ_AND_ARGS",e}({}),z=function(e){return e.Api="api",e.Cache="cache",e.ParentNode="parentNode",e}({});const B=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldNodes:c}=d,u={...o,data:{...o.data,args:n,fieldPath:e,resolverRequestId:t.randomUUID(),resolverType:W.Args}},p=i.child(u.data);p.info(`Resolving ${e} ${JSON.stringify(n)}`,{logEntryName:"RESOLVER_START"});const{data:h,errors:_,headers:m}=await a(n,u,d);if(_?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:JSON.stringify(_),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(a,{nodes:c,originalError:_[0]})}return l(e,m),h},Y=B("certifications",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:n,errors:o}=await s.certifications({pathTemplateData:{type:r.toLowerCase()}},t);return{data:n?.certifications,errors:o,headers:new Headers({cacheControl:"public, max-age=28800"})}})),K=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldName:c,fieldNodes:u}=d,p=s?`${e}.${c}`:e,h={...o,data:{...o.data,args:n,fieldPath:e,resolverRequestId:t.randomUUID(),resolverType:W.ObjAndArgs}},_=i.child(h.data),m=s&&"id"in s&&s.id?s.id:"id"in n?n.id:void 0,C=a=>{const r=`${a} ${e}`;return m?`${r} ${String(m)}`:r},{data:y,errors:g,headers:N,source:v}=await a(s,n,h,d),w=v!==z.ParentNode;if(w&&_.info(C("Resolving"),{logEntryName:"RESOLVER_START"}),g?.length){const e=C("Failed to resolve");throw w&&_.error(e,{errors:JSON.stringify(g),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:u,originalError:g[0]})}return N&&l(p,N),y},X=K(g,(async(a,r,t,s)=>{const n=a?.id??r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.collection({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),Z=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldName:c,fieldNodes:u}=d,p=`${e}.${c}`,h={...o,data:{...o.data,fieldPath:p,parentFieldId:s?.id,resolverRequestId:t.randomUUID(),resolverType:W.Obj}},_=i.child(h.data);if(!s){const a=`Required ${e} node missing`;throw _.error(a),new r.GraphQLError(a,{nodes:u})}_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:C,headers:y}=await a(s,h,d);if(C?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(C),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:u,originalError:C[0]})}return y&&l(p,y),m},ee=Z(g,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,{data:o,errors:d,headers:i}=await s.collection({pathTemplateData:{id:e.id,type:E}},t),l=n;return{data:o?.[l],errors:d,headers:i}})),ae=Z(g,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.collection({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),re=K(v,(async(a,r,t,s)=>{const n=a?.id??r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.company({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),te=Z(v,(async(a,r)=>{const{data:t,restClient:s}=r,{data:n,errors:o,headers:d}=await s.company({pathTemplateData:{id:a.id,type:e.snakeCase(_)}},t);return{data:n?.results,errors:o,headers:d}})),se=Z(v,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.company({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),ne=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldName:c,fieldNodes:u}=d,p=s?`${e}.${c}`:e,h={...o,data:{...o.data,fieldPath:p,resolverRequestId:t.randomUUID(),resolverType:W.OptsObjAndArgs}},_=i.child(h.data);_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:C,headers:y}=await a(h,d);if(C?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(C),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:u,originalError:C[0]})}return l(p,y),m},oe=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration(void 0,a);return{data:t,errors:s,headers:n}})),de=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"countries"}},a);return{data:t,errors:s,headers:n}})),ie=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"jobs"}},a);return{data:t,errors:s,headers:n}})),le=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"languages"}},a);return{data:t,errors:s,headers:n}})),ce=ne(w,(async a=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.configuration({pathTemplateData:{type:e.snakeCase("primaryTranslations")}},r);return{data:s,errors:n,headers:o}})),ue=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"timezones"}},a);return{data:t,errors:s,headers:n}})),pe=B("credit",(async(e,a)=>{const{id:r}=e,{data:t,restClient:s}=a,{data:n,errors:o,headers:d}=await s.credit({pathTemplateData:{id:r}},t);return{data:n,errors:o,headers:d}})),he=e=>Object.keys(e).reduce(((a,r)=>(null===e[r]||(a[r]=e[r]),a)),{}),_e=a=>Object.keys(a).reduce(((r,t)=>(r[e.snakeCase(t)]=a[t],r)),{}),me=e=>{return a=_e(he(d.removeConnectionInputOptions(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},Ce=new s.Core({name:"DISCOVER_MOVIES_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ye=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(he(d.removeConnectionInputOptions(a)))}::discoverMovies`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:b},queryParams:{...me(a),page:e}},r),cursorCache:Ce,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ge=new s.Core({name:"DISCOVER_TV_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Ne=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(he(d.removeConnectionInputOptions(a)))}::discoverTv`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:Q},queryParams:{...me(a),page:e}},r),cursorCache:ge,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ve=e=>encodeURIComponent(i.encode(JSON.stringify(e))),we=(e,a,r)=>(l.getChildFields(e,{fragmentDefinitions:r})??[]).reduce(((e,{fieldNode:r})=>{const t=l.getName(r);if(!t)return e;const s=a[t];return s?(e.includes(s)||e.push(s),e):e}),[]),fe=(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(i.decode(decodeURIComponent(e))))(a.id);r=e.id,t=e.seasonNumber,s=e.episodeNumber}return{episodeNumber:s,id:r,seasonNumber:t}},Te={[D]:e.snakeCase(D),[j]:j,[x]:x,cast:T,crew:T,guestStars:T,stills:E},Re=K(P,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i),{episodeNumber:u,id:p,seasonNumber:h}=fe(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ve({id:p,seasonNumber:h,...u?{episodeNumber:u}:{}}):a[c],source:z.ParentNode};const _=we(l[0],Te,o),{data:m,errors:C,headers:y}=await d.episode({pathTemplateData:{episodeNumber:u,id:p,seasonNumber:h},..._.length>0?{queryParams:{append_to_response:_.join(",")}}:{}},n),g={...m,id:ve({id:p,seasonNumber:h,...u?{episodeNumber:u}:{}}),tv_show_id:Number(p)};return{data:a?g[c]:_.length>0?{...g,__headers:y}:g,errors:C,headers:y}})),Pe=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>T in e&&"__headers"in e)(a))return{data:a.credits?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:T}},s);return{data:i?.[d],errors:l,headers:c}})),ke=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:d}},s),{id:u,...p}=i??{};return{data:p,errors:l,headers:c}})),De=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>E in e&&"__headers"in e)(a))return{data:a.images?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:E}},s);return{data:i?.[d],errors:l,headers:c}})),Ee=Z(P,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),Oe=Z(P,(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:z.ParentNode};const{data:s,errors:n,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:n,headers:o}})),Ie=B("find",(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.find({pathTemplateData:{id:e.id},queryParams:{..._e({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:n,headers:o}})),be=B("genres",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:n,errors:o,headers:d}=await s.genres({pathTemplateData:{type:r.toLowerCase()}},t);return{data:n?.genres,errors:o,headers:d}})),Se=B("keyword",(async(e,a)=>{const{id:r,includeAdult:t}=e,{data:s,restClient:n}=a,{data:o,errors:d,headers:i}=await n.keyword({pathTemplateData:{id:r},queryParams:{..._e({includeAdult:t})}},s);return{data:o,errors:d,headers:i}})),$e={[m]:e.snakeCase(m),[C]:E,[y]:T,[R]:T,[D]:e.snakeCase(D),[O]:O,[I]:E,[A]:E,[M]:M,[q]:e.snakeCase(q),[G]:G,similarMovies:U,[j]:j,[x]:x,[J]:"watch/providers"},Le=K(b,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],$e,o),{data:h,errors:_,headers:m}=await d.movie({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n);return{data:a?h?.[c]:p.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),Ae=K(b,(async(a,t,s,n)=>{const{country:o}=t,{data:d,logger:i,restClient:l}=s,{fieldNodes:c}=n;if(!a){const e=`Required ${m} node missing`;throw i.error(e),new r.GraphQLError(e,{nodes:c})}if((a=>e.snakeCase(m)in a&&"__headers"in a)(a))return{data:a.alternative_titles?.titles,headers:a.__headers,source:z.ParentNode};const{data:u,errors:p,headers:h}=await l.movie({pathTemplateData:{id:a.id,type:e.snakeCase(m)},queryParams:{country:o}},d);return{data:u?.titles,errors:p,headers:h}})),Me=Z(b,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>T in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:T}},t);return{data:d?.[o],errors:i,headers:l}})),qe=Z(b,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n;return{data:l,errors:o,headers:d}})),Ge=Z(b,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:l}})),Ve=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>O in e&&"__headers"in e)(e))return{data:e.keywords?.keywords,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:O}},r);return{data:s?.keywords,errors:n,headers:o}})),Ue=new s.Core({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),je=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${M}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>M in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:M},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Ue,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Qe=Z(b,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(q)in a&&"__headers"in a)(a))return{data:a.release_dates?.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(q)}},t);return{data:n?.results,errors:o,headers:d}})),He=new s.Core({name:"MOVIE_REVIEWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),xe=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${G}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:G},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:He,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Je=new s.Core({name:"MOVIE_SIMILAR_MOVIES_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Fe=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${U}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>U in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:U},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Je,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=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),ze=Z(b,(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Be=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>F in e&&"__headers"in e)(e))return{data:e["watch/providers"]?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:b}},r);return{data:s?.results,errors:n,headers:o}})),Ye=K($,(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.network({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),Ke=Z($,(async(a,r)=>{const{data:t,restClient:s}=r,{data:n,errors:o,headers:d}=await s.network({pathTemplateData:{id:a.id,type:e.snakeCase(_)}},t);return{data:n?.results,errors:o,headers:d}})),Xe=Z($,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.network({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),Ze={[N]:e.snakeCase(N),[D]:e.snakeCase(D),[S]:e.snakeCase(S),profiles:E,[j]:j,[H]:e.snakeCase(H)},ea=K(L,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],Ze,o),{data:h,errors:_,headers:m}=await d.person({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n);return{data:a?h?.[c]:p.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),aa=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(N)in a&&"__headers"in a)(a))return{data:a.combined_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(N)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),ra=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),ta=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(S)in a&&"__headers"in a)(a))return{data:a.movie_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(S)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),sa=Z(L,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.profiles,errors:n,headers:o}})),na=Z(L,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),oa=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(H)in a&&"__headers"in a)(a))return{data:a.tv_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(H)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),da=new s.Core({name:"RATED_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ia=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::rated`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,{screenType:r},{data:t,restClient:s})=>async({page:a})=>{const{data:n,errors:o,headers:d}=await s.rated({pathTemplateData:{id:t.tmdbGuestSessionId,type:r.toLowerCase()},queryParams:{page:a}},t);return n?(n.results=n.results?.map((a=>(a.media_type=e.capitalize(a.media_type??r.toLowerCase()),a))),{data:n,errors:o,headers:d}):{errors:o,headers:d}},cursorCache:da,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),la=K("review",(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.review({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),ca=new s.Core({name:"SEARCH_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ua=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::search`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,r,{data:t,restClient:s})=>{const{searchType:n,...o}=d.removeConnectionInputOptions(r);return async({page:a})=>{const{data:r,errors:d,headers:i}=await s.search({pathTemplateData:{type:(n??c.SearchType.Multi).toLowerCase()},queryParams:{..._e(o),page:a}},t);return r?(r.results=r.results?.map((a=>{let r=a.media_type;return!r&&n&&n!==c.SearchType.Multi&&(r=n.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:r,errors:d,headers:i}):{errors:d,headers:i}}},cursorCache:ca,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={[y]:T,[R]:T,[D]:e.snakeCase(D),[A]:E,[j]:j,[x]:x},ha=K(V,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i),{id:u,seasonNumber:p}=fe(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ve({id:u,seasonNumber:p}):a[c],source:z.ParentNode};const h=we(l[0],pa,o),{data:_,errors:m,headers:C}=await d.season({pathTemplateData:{id:u,number:p},...h.length>0?{queryParams:{append_to_response:h.join(",")}}:{}},n),y={..._,episodes:(_?.episodes??[]).map((e=>({...e,tv_show_id:Number(u)}))),id:ve({id:u,seasonNumber:p}),tv_show_id:Number(u)};return{data:a?y[c]:h.length>0?{...y,__headers:C}:y,errors:m,headers:C}})),_a=Z(V,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>T in e&&"__headers"in e)(a))return{data:a.credits?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:T}},s);return{data:i?.[d],errors:l,headers:c}})),ma=Z(V,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),Ca=Z(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:E}},r);return{data:s?.posters,errors:n,headers:o}})),ya=Z(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),ga=Z(V,(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Na=new s.Core({name:"TRENDING_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),va=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::trending`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,r,t)=>async({page:a})=>{const{mediaType:s,timeWindow:n}=r,{data:o,restClient:d}=t,{data:i,errors:l,headers:u}=await d.trending({pathTemplateData:{subType:n.toLowerCase(),type:s.toLowerCase()},queryParams:{page:a}},o);return i?(i.results=i.results?.map((a=>{let r=a.media_type;return r||s===c.TrendingMediaType.All||(r=s.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:i,errors:l,headers:u}):{errors:l,headers:u}},cursorCache:Na,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),wa={[m]:e.snakeCase(m),[C]:E,[y]:T,[f]:e.snakeCase(f),[R]:T,[k]:e.snakeCase(k),[D]:e.snakeCase(D),[O]:O,[I]:E,[A]:E,[M]:M,[G]:G,similarTvShows:U,[j]:j,[x]:x,[J]:"watch/providers"},fa=K(Q,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],wa,o),{data:h,errors:_,headers:m}=await d.tv({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n),C={...h,seasons:(h?.seasons??[]).map((e=>({...e,tv_show_id:Number(u)})))};return{data:a?C[c]:p.length>0?{...C,__headers:m}:C,errors:_,headers:m}})),Ta=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(m)in a&&"__headers"in a)(a))return{data:a.alternative_titles.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(m)}},t);return{data:n?.results,errors:o,headers:d}})),Ra=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(f)in a&&"__headers"in a)(a))return{data:a.content_ratings.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(f)}},t);return{data:n?.results,errors:o,headers:d}})),Pa=Z(Q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>T in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:T}},t);return{data:d?.[o],errors:i,headers:l}})),ka=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(k)in a&&"__headers"in a)(a))return{data:a.episode_groups?.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(k)}},t);return{data:n?.results,errors:o,headers:d}})),Da=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),Ea=Z(Q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:l}})),Oa=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>O in e&&"__headers"in e)(e))return{data:e.keywords?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:O}},r);return{data:s?.results,errors:n,headers:o}})),Ia=new s.Core({name:"TV_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ba=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${M}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,r)=>async({page:a})=>{const{data:t,restClient:s}=r;if(((e,a)=>M in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:e.id,type:M},queryParams:{page:a}},t);return{data:n,errors:o,headers:d}},cursorCache:Ia,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=new s.Core({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),$a=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${G}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:G},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Sa,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),La=new s.Core({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Aa=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${U}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>U in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:U},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:La,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ma=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),qa=Z(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Ga=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>F in e&&"__headers"in e)(e))return{data:e[F]?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:Q}},r);return{data:s?.results,errors:n,headers:o}})),Va={Certifications:{CA_QC:e=>e["CA-QC"]},Collection:{...h("Collection",X),backdrops:ee,posters:ee,translations:ae},Company:{...h("Company",re),alternativeNames:te,logos:se},Configuration:{countries:de,jobs:ie,languages:le,primaryTranslations:ce,timezones:ue},Episode:{...h("Episode",Re),cast:Pe,crew:Pe,externalIds:ke,stills:De,translations:Ee,videos:Oe},Media:{__resolveType:e=>e.media_type},Movie:{...h("Movie",Le),alternativeTitles:Ae,backdrops:Ge,cast:Me,crew:Me,externalIds:qe,keywords:Ve,logos:Ge,posters:Ge,recommendations:je,releaseDates:Qe,reviews:xe,similarMovies:Fe,translations:We,videos:ze,watchProviders:Be},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:{...h("Network",Ye),alternativeNames:Ke,logos:Xe},Person:{...h("Person",ea),combinedCredits:aa,externalIds:ra,movieCredits:ta,profiles:sa,translations:na,tvCredits:oa},Query:{certifications:Y,collection:X,company:re,configuration:oe,credit:pe,discoverMovies:ye,discoverTv:Ne,episode:Re,find:Ie,genres:be,keyword:Se,movie:Le,network:Ye,person:ea,rated:ia,review:la,search:ua,season:ha,trending:va,tv:fa},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...h("Season",ha),cast:_a,crew:_a,episodeCount:e=>e.episodes?.length??0,externalIds:ma,posters:Ca,translations:ya,videos:ga},Tv:{...h("Tv",fa),alternativeTitles:Ta,backdrops:Ea,cast:Pa,contentRatings:Ra,crew:Pa,episodeGroups:ka,externalIds:Da,keywords:Oa,logos:Ea,posters:Ea,recommendations:ba,reviews:$a,similarTvShows:Aa,translations:Ma,videos:qa,watchProviders:Ga},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.snakeCase(a).toUpperCase()}};exports.createDefaultFieldResolver=()=>(a,r,t,{fieldNodes:s})=>{const n=s[0],{value:o}=n.name;return Object.prototype.hasOwnProperty.call(a,o)?a[o]:a[e.snakeCase(o)]},exports.resolvers=Va;
1
+ "use strict";var e=require("lodash-es"),a=require("@tmdb-graphql-api/schema"),r=require("graphql"),t=require("node:crypto"),s=require("@cachemap/core"),n=require("@cachemap/map"),o=require("@cachemap/reaper"),d=require("@graphql-box/connection-resolver"),i=require("js-base64");require("core-js/modules/es.array.push.js");var l=require("@graphql-box/helpers"),c=require("@tmdb-graphql-api/schema/types");const u=a.schema.getTypeMap(),p=Object.keys(u).reduce(((e,a)=>{const t=u[a];return t?.astNode?.kind===r.Kind.OBJECT_TYPE_DEFINITION&&(e[a]=Object.keys(t.getFields())),e}),{}),h=(e,a)=>p[e].reduce(((e,r)=>(e[r]=a,e)),{}),_="alternativeNames",m="alternativeTitles",C="backdrops",y="cast",g="collection",N="combinedCredits",v="company",w="configuration",f="contentRatings",T="credits",R="crew",P="episode",k="episodeGroups",D="externalIds",E="images",O="keywords",I="logos",b="movie",S="movieCredits",$="network",L="person",A="posters",M="recommendations",q="releaseDates",G="reviews",V="season",U="similar",j="translations",Q="tv",H="tvCredits",x="videos",J="watchProviders",F="watch/providers";let W=function(e){return e.Args="ARGS",e.Obj="OBJ",e.ObjAndArgs="OBJ_AND_ARGS",e.OptsObjAndArgs="OPTS_OBJ_AND_ARGS",e}({}),z=function(e){return e.Api="api",e.Cache="cache",e.ParentNode="parentNode",e}({});const B=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldNodes:c}=d,u={...o,data:{...o.data,args:n,fieldPath:e,resolverRequestId:t.randomUUID(),resolverType:W.Args}},p=i.child(u.data);p.info(`Resolving ${e} ${JSON.stringify(n)}`,{logEntryName:"RESOLVER_START"});const{data:h,errors:_,headers:m}=await a(n,u,d);if(_?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:JSON.stringify(_),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(a,{nodes:c,originalError:_[0]})}return l(e,m),h},Y=B("certifications",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:n,errors:o}=await s.certifications({pathTemplateData:{type:r.toLowerCase()}},t);return{data:n?.certifications,errors:o,headers:new Headers({cacheControl:"public, max-age=28800"})}})),K=(a,s)=>async(n,o,d,i)=>{const{logger:l,setCacheMetadata:c}=d,{fieldName:u,fieldNodes:p}=i,h=n?`${a}.${u}`:a,_={...d,data:{...d.data,args:o,fieldPath:a,resolverRequestId:t.randomUUID(),resolverType:W.ObjAndArgs}},m=l.child(_.data),C=n&&"id"in n&&n.id?n.id:"id"in o?o.id:void 0,y=e=>{const r=`${e} ${a}`;return C?`${r} ${String(C)}`:r},g=e.snakeCase(u),N=!(n&&!e.isUndefined(n[g]));N&&m.info(y("Resolving"),{logEntryName:"RESOLVER_START"});const{data:v,errors:w,headers:f}=await s(n,o,_,i);if(w?.length){const e=y("Failed to resolve");throw N&&m.error(e,{errors:JSON.stringify(w),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:p,originalError:w[0]})}return f&&c(h,f),v},X=K(g,(async(a,r,t,s)=>{const n=a?.id??r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.collection({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),Z=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldName:c,fieldNodes:u}=d,p=`${e}.${c}`,h={...o,data:{...o.data,fieldPath:p,parentFieldId:s?.id,resolverRequestId:t.randomUUID(),resolverType:W.Obj}},_=i.child(h.data);if(!s){const a=`Required ${e} node missing`;throw _.error(a),new r.GraphQLError(a,{nodes:u})}_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:C,headers:y}=await a(s,h,d);if(C?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(C),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:u,originalError:C[0]})}return y&&l(p,y),m},ee=Z(g,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,{data:o,errors:d,headers:i}=await s.collection({pathTemplateData:{id:e.id,type:E}},t),l=n;return{data:o?.[l],errors:d,headers:i}})),ae=Z(g,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.collection({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),re=K(v,(async(a,r,t,s)=>{const n=a?.id??r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.company({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),te=Z(v,(async(a,r)=>{const{data:t,restClient:s}=r,{data:n,errors:o,headers:d}=await s.company({pathTemplateData:{id:a.id,type:e.snakeCase(_)}},t);return{data:n?.results,errors:o,headers:d}})),se=Z(v,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.company({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),ne=(e,a)=>async(s,n,o,d)=>{const{logger:i,setCacheMetadata:l}=o,{fieldName:c,fieldNodes:u}=d,p=s?`${e}.${c}`:e,h={...o,data:{...o.data,fieldPath:p,resolverRequestId:t.randomUUID(),resolverType:W.OptsObjAndArgs}},_=i.child(h.data);_.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:m,errors:C,headers:y}=await a(h,d);if(C?.length){const e=`Failed to resolve ${p}`;throw _.error(e,{errors:JSON.stringify(C),logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:u,originalError:C[0]})}return l(p,y),m},oe=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration(void 0,a);return{data:t,errors:s,headers:n}})),de=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"countries"}},a);return{data:t,errors:s,headers:n}})),ie=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"jobs"}},a);return{data:t,errors:s,headers:n}})),le=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"languages"}},a);return{data:t,errors:s,headers:n}})),ce=ne(w,(async a=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.configuration({pathTemplateData:{type:e.snakeCase("primaryTranslations")}},r);return{data:s,errors:n,headers:o}})),ue=ne(w,(async e=>{const{data:a,restClient:r}=e,{data:t,errors:s,headers:n}=await r.configuration({pathTemplateData:{type:"timezones"}},a);return{data:t,errors:s,headers:n}})),pe=B("credit",(async(e,a)=>{const{id:r}=e,{data:t,restClient:s}=a,{data:n,errors:o,headers:d}=await s.credit({pathTemplateData:{id:r}},t);return{data:n,errors:o,headers:d}})),he=e=>Object.keys(e).reduce(((a,r)=>(null===e[r]||(a[r]=e[r]),a)),{}),_e=a=>Object.keys(a).reduce(((r,t)=>(r[e.snakeCase(t)]=a[t],r)),{}),me=e=>{return a=_e(he(d.removeConnectionInputOptions(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},Ce=new s.Core({name:"DISCOVER_MOVIES_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ye=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(he(d.removeConnectionInputOptions(a)))}::discoverMovies`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:b},queryParams:{...me(a),page:e}},r),cursorCache:Ce,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ge=new s.Core({name:"DISCOVER_TV_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Ne=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(he(d.removeConnectionInputOptions(a)))}::discoverTv`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:Q},queryParams:{...me(a),page:e}},r),cursorCache:ge,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),ve=e=>encodeURIComponent(i.encode(JSON.stringify(e))),we=(e,a,r)=>(l.getChildFields(e,{fragmentDefinitions:r})??[]).reduce(((e,{fieldNode:r})=>{const t=l.getName(r);if(!t)return e;const s=a[t];return s?(e.includes(s)||e.push(s),e):e}),[]),fe=(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(i.decode(decodeURIComponent(e))))(a.id);r=e.id,t=e.seasonNumber,s=e.episodeNumber}return{episodeNumber:s,id:r,seasonNumber:t}},Te={[D]:e.snakeCase(D),[j]:j,[x]:x,cast:T,crew:T,guestStars:T,stills:E},Re=K(P,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i),{episodeNumber:u,id:p,seasonNumber:h}=fe(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ve({id:p,seasonNumber:h,...u?{episodeNumber:u}:{}}):a[c],source:z.ParentNode};const _=we(l[0],Te,o),{data:m,errors:C,headers:y}=await d.episode({pathTemplateData:{episodeNumber:u,id:p,seasonNumber:h},..._.length>0?{queryParams:{append_to_response:_.join(",")}}:{}},n),g={...m,id:ve({id:p,seasonNumber:h,...u?{episodeNumber:u}:{}}),tv_show_id:Number(p)};return{data:a?g[c]:_.length>0?{...g,__headers:y}:g,errors:C,headers:y}})),Pe=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>T in e&&"__headers"in e)(a))return{data:a.credits?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:T}},s);return{data:i?.[d],errors:l,headers:c}})),ke=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:d}},s),{id:u,...p}=i??{};return{data:p,errors:l,headers:c}})),De=Z(P,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>E in e&&"__headers"in e)(a))return{data:a.images?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:E}},s);return{data:i?.[d],errors:l,headers:c}})),Ee=Z(P,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.episode({pathTemplateData:{episodeNumber:e.episode_number,id:e.tv_show_id,seasonNumber:e.season_number,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),Oe=Z(P,(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:z.ParentNode};const{data:s,errors:n,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:n,headers:o}})),Ie=B("find",(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.find({pathTemplateData:{id:e.id},queryParams:{..._e({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:n,headers:o}})),be=B("genres",(async(e,a)=>{const{screenType:r}=e,{data:t,restClient:s}=a,{data:n,errors:o,headers:d}=await s.genres({pathTemplateData:{type:r.toLowerCase()}},t);return{data:n?.genres,errors:o,headers:d}})),Se=B("keyword",(async(e,a)=>{const{id:r,includeAdult:t}=e,{data:s,restClient:n}=a,{data:o,errors:d,headers:i}=await n.keyword({pathTemplateData:{id:r},queryParams:{..._e({includeAdult:t})}},s);return{data:o,errors:d,headers:i}})),$e={[m]:e.snakeCase(m),[C]:E,[y]:T,[R]:T,[D]:e.snakeCase(D),[O]:O,[I]:E,[A]:E,[M]:M,[q]:e.snakeCase(q),[G]:G,similarMovies:U,[j]:j,[x]:x,[J]:"watch/providers"},Le=K(b,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],$e,o),{data:h,errors:_,headers:m}=await d.movie({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n);return{data:a?h?.[c]:p.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),Ae=K(b,(async(a,t,s,n)=>{const{country:o}=t,{data:d,logger:i,restClient:l}=s,{fieldNodes:c}=n;if(!a){const e=`Required ${m} node missing`;throw i.error(e),new r.GraphQLError(e,{nodes:c})}if((a=>e.snakeCase(m)in a&&"__headers"in a)(a))return{data:a.alternative_titles?.titles,headers:a.__headers,source:z.ParentNode};const{data:u,errors:p,headers:h}=await l.movie({pathTemplateData:{id:a.id,type:e.snakeCase(m)},queryParams:{country:o}},d);return{data:u?.titles,errors:p,headers:h}})),Me=Z(b,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>T in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:T}},t);return{data:d?.[o],errors:i,headers:l}})),qe=Z(b,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n;return{data:l,errors:o,headers:d}})),Ge=Z(b,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.movie({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:l}})),Ve=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>O in e&&"__headers"in e)(e))return{data:e.keywords?.keywords,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:O}},r);return{data:s?.keywords,errors:n,headers:o}})),Ue=new s.Core({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),je=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${M}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>M in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:M},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Ue,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Qe=Z(b,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(q)in a&&"__headers"in a)(a))return{data:a.release_dates?.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(q)}},t);return{data:n?.results,errors:o,headers:d}})),He=new s.Core({name:"MOVIE_REVIEWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),xe=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${G}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:G},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:He,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Je=new s.Core({name:"MOVIE_SIMILAR_MOVIES_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Fe=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${b}::${U}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>U in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:U},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Je,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=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),ze=Z(b,(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Be=Z(b,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>F in e&&"__headers"in e)(e))return{data:e["watch/providers"]?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:b}},r);return{data:s?.results,errors:n,headers:o}})),Ye=K($,(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.network({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),Ke=Z($,(async(a,r)=>{const{data:t,restClient:s}=r,{data:n,errors:o,headers:d}=await s.network({pathTemplateData:{id:a.id,type:e.snakeCase(_)}},t);return{data:n?.results,errors:o,headers:d}})),Xe=Z($,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.network({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),Ze={[N]:e.snakeCase(N),[D]:e.snakeCase(D),[S]:e.snakeCase(S),profiles:E,[j]:j,[H]:e.snakeCase(H)},ea=K(L,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],Ze,o),{data:h,errors:_,headers:m}=await d.person({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n);return{data:a?h?.[c]:p.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),aa=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(N)in a&&"__headers"in a)(a))return{data:a.combined_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(N)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),ra=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),ta=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(S)in a&&"__headers"in a)(a))return{data:a.movie_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(S)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),sa=Z(L,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.profiles,errors:n,headers:o}})),na=Z(L,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),oa=Z(L,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(H)in a&&"__headers"in a)(a))return{data:a.tv_credits,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(H)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),da=new s.Core({name:"RATED_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ia=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::rated`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,{screenType:r},{data:t,restClient:s})=>async({page:a})=>{const{data:n,errors:o,headers:d}=await s.rated({pathTemplateData:{id:t.tmdbGuestSessionId,type:r.toLowerCase()},queryParams:{page:a}},t);return n?(n.results=n.results?.map((a=>(a.media_type=e.capitalize(a.media_type??r.toLowerCase()),a))),{data:n,errors:o,headers:d}):{errors:o,headers:d}},cursorCache:da,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),la=K("review",(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:z.ParentNode};const{data:c,errors:u,headers:p}=await d.review({pathTemplateData:{id:n}},o);return{data:a?c?.[l]:c,errors:u,headers:p}})),ca=new s.Core({name:"SEARCH_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ua=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::search`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,r,{data:t,restClient:s})=>{const{searchType:n,...o}=d.removeConnectionInputOptions(r);return async({page:a})=>{const{data:r,errors:d,headers:i}=await s.search({pathTemplateData:{type:(n??c.SearchType.Multi).toLowerCase()},queryParams:{..._e(o),page:a}},t);return r?(r.results=r.results?.map((a=>{let r=a.media_type;return!r&&n&&n!==c.SearchType.Multi&&(r=n.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:r,errors:d,headers:i}):{errors:d,headers:i}}},cursorCache:ca,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={[y]:T,[R]:T,[D]:e.snakeCase(D),[A]:E,[j]:j,[x]:x},ha=K(V,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i),{id:u,seasonNumber:p}=fe(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ve({id:u,seasonNumber:p}):a[c],source:z.ParentNode};const h=we(l[0],pa,o),{data:_,errors:m,headers:C}=await d.season({pathTemplateData:{id:u,number:p},...h.length>0?{queryParams:{append_to_response:h.join(",")}}:{}},n),y={..._,episodes:(_?.episodes??[]).map((e=>({...e,tv_show_id:Number(u)}))),id:ve({id:u,seasonNumber:p}),tv_show_id:Number(u)};return{data:a?y[c]:h.length>0?{...y,__headers:C}:y,errors:m,headers:C}})),_a=Z(V,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>T in e&&"__headers"in e)(a))return{data:a.credits?.[d],headers:a.__headers,source:z.ParentNode};const{data:i,errors:l,headers:c}=await n.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:T}},s);return{data:i?.[d],errors:l,headers:c}})),ma=Z(V,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),Ca=Z(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:E}},r);return{data:s?.posters,errors:n,headers:o}})),ya=Z(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),ga=Z(V,(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Na=new s.Core({name:"TRENDING_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),va=d.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(d.removeConnectionInputOptions(a))}::trending`;return{makeGroupCursor:()=>i.encode(r),makeIDCursor:e=>i.encode(`${e}::${r}`)}},createResourceResolver:(a,r,t)=>async({page:a})=>{const{mediaType:s,timeWindow:n}=r,{data:o,restClient:d}=t,{data:i,errors:l,headers:u}=await d.trending({pathTemplateData:{subType:n.toLowerCase(),type:s.toLowerCase()},queryParams:{page:a}},o);return i?(i.results=i.results?.map((a=>{let r=a.media_type;return r||s===c.TrendingMediaType.All||(r=s.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:i,errors:l,headers:u}):{errors:l,headers:u}},cursorCache:Na,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),wa={[m]:e.snakeCase(m),[C]:E,[y]:T,[f]:e.snakeCase(f),[R]:T,[k]:e.snakeCase(k),[D]:e.snakeCase(D),[O]:O,[I]:E,[A]:E,[M]:M,[G]:G,similarTvShows:U,[j]:j,[x]:x,[J]:"watch/providers"},fa=K(Q,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:l}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:z.ParentNode};const u=a?a.id:r.id,p=we(l[0],wa,o),{data:h,errors:_,headers:m}=await d.tv({pathTemplateData:{id:u},...p.length>0?{queryParams:{append_to_response:p.join(",")}}:{}},n),C={...h,seasons:(h?.seasons??[]).map((e=>({...e,tv_show_id:Number(u)})))};return{data:a?C[c]:p.length>0?{...C,__headers:m}:C,errors:_,headers:m}})),Ta=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(m)in a&&"__headers"in a)(a))return{data:a.alternative_titles.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(m)}},t);return{data:n?.results,errors:o,headers:d}})),Ra=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(f)in a&&"__headers"in a)(a))return{data:a.content_ratings.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(f)}},t);return{data:n?.results,errors:o,headers:d}})),Pa=Z(Q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>T in e&&"__headers"in e)(e))return{data:e.credits?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:T}},t);return{data:d?.[o],errors:i,headers:l}})),ka=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(k)in a&&"__headers"in a)(a))return{data:a.episode_groups?.results,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(k)}},t);return{data:n?.results,errors:o,headers:d}})),Da=Z(Q,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:z.ParentNode};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),Ea=Z(Q,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:z.ParentNode};const{data:d,errors:i,headers:l}=await s.tv({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:l}})),Oa=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>O in e&&"__headers"in e)(e))return{data:e.keywords?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:O}},r);return{data:s?.results,errors:n,headers:o}})),Ia=new s.Core({name:"TV_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),ba=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${M}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,r)=>async({page:a})=>{const{data:t,restClient:s}=r;if(((e,a)=>M in e&&e.recommendations?.page===a&&"__headers"in e)(e,a))return{data:e.recommendations,headers:e.__headers};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:e.id,type:M},queryParams:{page:a}},t);return{data:n,errors:o,headers:d}},cursorCache:Ia,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=new s.Core({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),$a=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${G}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:G},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:Sa,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),La=new s.Core({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:o.init({interval:3e5}),store:n.init(),type:"GRAPHQL"}),Aa=d.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${Q}::${U}`;return{makeGroupCursor:()=>i.encode(a),makeIDCursor:e=>i.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>U in e&&e.similar?.page===a&&"__headers"in e)(e,a))return{data:e.similar,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:U},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},cursorCache:La,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ma=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j in e&&"__headers"in e)(e))return{data:e.translations?.translations,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:j}},r);return{data:s?.translations,errors:n,headers:o}})),qa=Z(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:z.ParentNode};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:x}},r);return{data:s?.results,errors:n,headers:o}})),Ga=Z(Q,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>F in e&&"__headers"in e)(e))return{data:e[F]?.results,headers:e.__headers,source:z.ParentNode};const{data:s,errors:n,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:Q}},r);return{data:s?.results,errors:n,headers:o}})),Va={Certifications:{CA_QC:e=>e["CA-QC"]},Collection:{...h("Collection",X),backdrops:ee,posters:ee,translations:ae},Company:{...h("Company",re),alternativeNames:te,logos:se},Configuration:{countries:de,jobs:ie,languages:le,primaryTranslations:ce,timezones:ue},Episode:{...h("Episode",Re),cast:Pe,crew:Pe,externalIds:ke,stills:De,translations:Ee,videos:Oe},Media:{__resolveType:e=>e.media_type},Movie:{...h("Movie",Le),alternativeTitles:Ae,backdrops:Ge,cast:Me,crew:Me,externalIds:qe,keywords:Ve,logos:Ge,posters:Ge,recommendations:je,releaseDates:Qe,reviews:xe,similarMovies:Fe,translations:We,videos:ze,watchProviders:Be},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:{...h("Network",Ye),alternativeNames:Ke,logos:Xe},Person:{...h("Person",ea),combinedCredits:aa,externalIds:ra,movieCredits:ta,profiles:sa,translations:na,tvCredits:oa},Query:{certifications:Y,collection:X,company:re,configuration:oe,credit:pe,discoverMovies:ye,discoverTv:Ne,episode:Re,find:Ie,genres:be,keyword:Se,movie:Le,network:Ye,person:ea,rated:ia,review:la,search:ua,season:ha,trending:va,tv:fa},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...h("Season",ha),cast:_a,crew:_a,episodeCount:e=>e.episodes?.length??0,externalIds:ma,posters:Ca,translations:ya,videos:ga},Tv:{...h("Tv",fa),alternativeTitles:Ta,backdrops:Ea,cast:Pa,contentRatings:Ra,crew:Pa,episodeGroups:ka,externalIds:Da,keywords:Oa,logos:Ea,posters:Ea,recommendations:ba,reviews:$a,similarTvShows:Aa,translations:Ma,videos:qa,watchProviders:Ga},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.snakeCase(a).toUpperCase()}};exports.createDefaultFieldResolver=()=>(a,r,t,{fieldNodes:s})=>{const n=s[0],{value:o}=n.name;return Object.prototype.hasOwnProperty.call(a,o)?a[o]:a[e.snakeCase(o)]},exports.resolvers=Va;
2
2
  //# sourceMappingURL=index.cjs.map