@tmdb-graphql-api/resolvers 0.1.2-unstable.12 → 0.1.2-unstable.13

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