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

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("@cachemap/core"),s=require("@cachemap/map"),n=require("@cachemap/reaper"),o=require("@graphql-box/connection-resolver"),d=require("js-base64");require("core-js/modules/es.array.push.js");var i=require("@graphql-box/helpers"),l=require("@tmdb-graphql-api/schema/types");const c=a.schema.getTypeMap(),p=Object.keys(c).reduce(((e,a)=>{const t=c[a];return t?.astNode?.kind===r.Kind.OBJECT_TYPE_DEFINITION&&(e[a]=Object.keys(t.getFields())),e}),{}),u=(e,a)=>p[e].reduce(((e,r)=>(e[r]=a,e)),{}),h="alternativeNames",_="alternativeTitles",m="backdrops",C="cast",y="collection",g="combinedCredits",N="company",v="configuration",w="contentRatings",f="credits",T="crew",R="episode",k="episodeGroups",E="externalIds",D="images",P="keywords",O="logos",I="movie",b="movieCredits",S="network",$="person",L="posters",M="recommendations",A="releaseDates",q="reviews",V="season",G="similar",Q="translations",H="tv",U="tvCredits",j="videos",x="watchProviders",F="watch/providers",J=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldNodes:l}=o,c={...n,data:{...n.data,args:s,fieldPath:e}},p=d.child(c.data);p.info(`Resolving ${e} ${JSON.stringify(s)}`,{logEntryName:"RESOLVER_START"});const{data:u,errors:h,headers:_}=await a(s,c,o);if(h?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:h,logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(a,{nodes:l,originalError:h[0]})}return i(e,_),u},W=J("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"})}})),z=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:l,fieldNodes:c}=o,p=t?`${e}.${l}`:e,u={...n,data:{...n.data,args:s,fieldPath:p}},h=d.child(u.data),_=!t||"id"===l,m=t&&"id"in t&&t.id?t.id:"id"in s?s.id:void 0,C=a=>{const r=`${a} ${e}`;return m?`${r} ${String(m)}`:r};_&&h.info(C("Resolving"),{logEntryName:"RESOLVER_START"});const{data:y,errors:g,headers:N}=await a(t,s,u,o);if(g?.length){const e=C("Failed to resolve");throw _&&h.error(e,{errors:g,logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:c,originalError:g[0]})}return N&&i(p,N),y},Y=z(y,(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}})),K=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:l,fieldNodes:c}=o,p=`${e}.${l}`,u={...n,data:{...n.data,fieldPath:p,parentFieldId:t?.id}},h=d.child(u.data);if(!t){const a=`Required ${e} node missing`;throw h.error(a),new r.GraphQLError(a,{nodes:c})}h.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:_,errors:m,headers:C}=await a(t,u,o);if(m?.length){const e=`Failed to resolve ${p}`;throw h.error(e,{errors:m,logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:c,originalError:m[0]})}return C&&i(p,C),_},B=K(y,(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:D}},t),l=n;return{data:o?.[l],errors:d,headers:i}})),X=K(y,(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}})),Z=z(N,(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}})),ee=K(N,(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(h)}},t);return{data:n?.results,errors:o,headers:d}})),ae=K(N,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.company({pathTemplateData:{id:e.id,type:D}},r);return{data:s?.logos,errors:n,headers:o}})),re=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:l,fieldNodes:c}=o,p=t?`${e}.${l}`:e,u={...n,data:{...n.data,fieldPath:p}},h=d.child(u.data);h.info(`Resolving ${p}`,{logEntryName:"RESOLVER_START"});const{data:_,errors:m,headers:C}=await a(u,o);if(m?.length){const e=`Failed to resolve ${p}`;throw h.error(e,{errors:m,logEntryName:"RESOLVER_FAILED"}),new r.GraphQLError(e,{nodes:c,originalError:m[0]})}return i(p,C),_},te=re(v,(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}})),se=re(v,(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}})),ne=re(v,(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}})),oe=re(v,(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}})),de=re(v,(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}})),ie=re(v,(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}})),le=J("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}})),ce=e=>Object.keys(e).reduce(((a,r)=>(null===e[r]||(a[r]=e[r]),a)),{}),pe=a=>Object.keys(a).reduce(((r,t)=>(r[e.snakeCase(t)]=a[t],r)),{}),ue=e=>{return a=pe(ce(o.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},he=new t.Core({name:"DISCOVER_MOVIES_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),_e=o.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(ce(o.removeConnectionInputOptions(a)))}::discoverMovies`;return{makeGroupCursor:()=>d.encode(r),makeIDCursor:e=>d.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:I},queryParams:{...ue(a),page:e}},r),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}),me=new t.Core({name:"DISCOVER_TV_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Ce=o.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(ce(o.removeConnectionInputOptions(a)))}::discoverTv`;return{makeGroupCursor:()=>d.encode(r),makeIDCursor:e=>d.encode(`${e}::${r}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:e})=>t.discover({pathTemplateData:{type:H},queryParams:{...ue(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=e=>encodeURIComponent(d.encode(JSON.stringify(e))),ge=(e,a,r)=>(i.getChildFields(e,{fragmentDefinitions:r})??[]).reduce(((e,{fieldNode:r})=>{const t=i.getName(r);if(!t)return e;const s=a[t];return s?(e.includes(s)||e.push(s),e):e}),[]),Ne=(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(d.decode(decodeURIComponent(e))))(a.id);r=e.id,t=e.seasonNumber,s=e.episodeNumber}return{episodeNumber:s,id:r,seasonNumber:t}},ve={[E]:e.snakeCase(E),[Q]:Q,[j]:j,cast:f,crew:f,guestStars:f,stills:D},we=z(R,(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}=Ne(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ye({id:u,seasonNumber:h,...p?{episodeNumber:p}:{}}):a[c],source:"parentNode"};const _=ge(l[0],ve,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:ye({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}})),fe=K(R,(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}})),Te=K(R,(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}})),Re=K(R,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>D 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:D}},s);return{data:i?.[d],errors:l,headers:c}})),ke=K(R,(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=K(R,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j 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:j}},r);return{data:s?.results,errors:n,headers:o}})),De=J("find",(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.find({pathTemplateData:{id:e.id},queryParams:{...pe({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=J("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=J("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:{...pe({includeAdult:t})}},s);return{data:o,errors:d,headers:i}})),Ie={[_]:e.snakeCase(_),[m]:D,[C]:f,[T]:f,[E]:e.snakeCase(E),[P]:P,[O]:D,[L]:D,[M]:M,[A]:e.snakeCase(A),[q]:q,similarMovies:G,[Q]:Q,[j]:j,[x]:"watch/providers"},be=z(I,(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=ge(l[0],Ie,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}})),Se=z(I,(async(a,t,s,n)=>{const{country:o}=t,{data:d,logger:i,restClient:l}=s,{fieldNodes:c}=n;if(!a){const e=`Required ${_} node missing`;throw i.error(e),new r.GraphQLError(e,{nodes:c})}if((a=>e.snakeCase(_)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(_)},queryParams:{country:o}},d);return{data:p?.titles,errors:u,headers:h}})),$e=K(I,(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}})),Le=K(I,(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}})),Me=K(I,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>D 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:D}},t);return{data:d?.[o],errors:i,headers:l}})),Ae=K(I,(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}})),qe=new t.Core({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Ve=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${I}::${M}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.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: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}),Ge=K(I,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(A)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(A)}},t);return{data:n?.results,errors:o,headers:d}})),Qe=new t.Core({name:"MOVIE_REVIEWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),He=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${I}::${q}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>q in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers,source:"parentNode"};const{data:s,errors:n,headers:o}=await t.movie({pathTemplateData:{id:e.id,type:q},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}),Ue=new t.Core({name:"MOVIE_SIMILAR_MOVIES_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),je=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${I}::${G}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G 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:G},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}),xe=K(I,(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}})),Fe=K(I,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j 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:j}},r);return{data:s?.results,errors:n,headers:o}})),Je=K(I,(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:"parentNode"};const{data:s,errors:n,headers:o}=await t.watchProviders({pathTemplateData:{id:e.id,type:I}},r);return{data:s?.results,errors:n,headers:o}})),We=z(S,(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}})),ze=K(S,(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(h)}},t);return{data:n?.results,errors:o,headers:d}})),Ye=K(S,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.network({pathTemplateData:{id:e.id,type:D}},r);return{data:s?.logos,errors:n,headers:o}})),Ke={[g]:e.snakeCase(g),[E]:e.snakeCase(E),[b]:e.snakeCase(b),profiles:D,[Q]:Q,[U]:e.snakeCase(U)},Be=z($,(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=ge(l[0],Ke,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}})),Xe=K($,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(g)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(g)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),Ze=K($,(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}})),ea=K($,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(b)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(b)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),aa=K($,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>D 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:D}},r);return{data:s?.profiles,errors:n,headers:o}})),ra=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.person({pathTemplateData:{id:e.id,type:Q}},r);return{data:s?.translations,errors:n,headers:o}})),ta=K($,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(U)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(U)}},t),{id:i,...l}=n??{};return{data:l,errors:o,headers:d}})),sa=new t.Core({name:"RATED_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),na=o.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(o.removeConnectionInputOptions(a))}::rated`;return{makeGroupCursor:()=>d.encode(r),makeIDCursor:e=>d.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: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}),oa=z("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}})),da=new t.Core({name:"SEARCH_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),ia=o.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(o.removeConnectionInputOptions(a))}::search`;return{makeGroupCursor:()=>d.encode(r),makeIDCursor:e=>d.encode(`${e}::${r}`)}},createResourceResolver:(a,r,{data:t,restClient:s})=>{const{searchType:n,...d}=o.removeConnectionInputOptions(r);return async({page:a})=>{const{data:r,errors:o,headers:i}=await s.search({pathTemplateData:{type:(n??l.SearchType.Multi).toLowerCase()},queryParams:{...pe(d),page:a}},t);return r?(r.results=r.results?.map((a=>{let r=a.media_type;return!r&&n&&n!==l.SearchType.Multi&&(r=n.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:r,errors:o,headers:i}):{errors:o,headers:i}}},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={[C]:f,[T]:f,[E]:e.snakeCase(E),[L]:D,[Q]:Q,[j]:j},ca=z(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}=Ne(a,r);if(a&&!e.isUndefined(a[c]))return{data:"id"===c?ye({id:p,seasonNumber:u}):a[c],source:"parentNode"};const h=ge(l[0],la,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:ye({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}})),pa=K(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}})),ua=K(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}})),ha=K(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>D 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:D}},r);return{data:s?.posters,errors:n,headers:o}})),_a=K(V,(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}})),ma=K(V,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j 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:j}},r);return{data:s?.results,errors:n,headers:o}})),Ca=new t.Core({name:"TRENDING_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),ya=o.makeConnectionResolver({createMakeCursors:(e,a)=>{const r=`${JSON.stringify(o.removeConnectionInputOptions(a))}::trending`;return{makeGroupCursor:()=>d.encode(r),makeIDCursor:e=>d.encode(`${e}::${r}`)}},createResourceResolver:(a,r,t)=>async({page:a})=>{const{mediaType:s,timeWindow:n}=r,{data:o,restClient:d}=t,{data:i,errors:c,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===l.TrendingMediaType.All||(r=s.toLowerCase()),r&&(a.media_type=e.capitalize(r)),a})),{data:i,errors:c,headers:p}):{errors:c,headers:p}},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}),ga={[_]:e.snakeCase(_),[m]:D,[C]:f,[w]:e.snakeCase(w),[T]:f,[k]:e.snakeCase(k),[E]:e.snakeCase(E),[P]:P,[O]:D,[L]:D,[M]:M,[q]:q,similarTvShows:G,[Q]:Q,[j]:j,[x]:"watch/providers"},Na=z(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=ge(l[0],ga,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}})),va=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(_)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(_)}},t);return{data:n?.results,errors:o,headers:d}})),wa=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(w)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(w)}},t);return{data:n?.results,errors:o,headers:d}})),fa=K(H,(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}})),Ta=K(H,(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:"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}})),Ra=K(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}})),ka=K(H,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>D 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:D}},t);return{data:d?.[o],errors:i,headers:l}})),Ea=K(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}})),Da=new t.Core({name:"TV_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Pa=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${M}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.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: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}),Oa=new t.Core({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Ia=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${q}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>q in e&&e.reviews?.page===a&&"__headers"in e)(e,a))return{data:e.reviews,headers:e.__headers};const{data:s,errors:n,headers:o}=await t.tv({pathTemplateData:{id:e.id,type:q},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}),ba=new t.Core({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Sa=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${G}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>G 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: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=K(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}})),La=K(H,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>j 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:j}},r);return{data:s?.results,errors:n,headers:o}})),Ma=K(H,(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:"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}})),Aa={Certifications:{CA_QC:e=>e["CA-QC"]},Collection:{...u("Collection",Y),backdrops:B,posters:B,translations:X},Company:{...u("Company",Z),alternativeNames:ee,logos:ae},Configuration:{countries:se,jobs:ne,languages:oe,primaryTranslations:de,timezones:ie},Episode:{...u("Episode",we),cast:fe,crew:fe,externalIds:Te,stills:Re,translations:ke,videos:Ee},Media:{__resolveType:e=>e.media_type},Movie:{...u("Movie",be),alternativeTitles:Se,backdrops:Me,cast:$e,crew:$e,externalIds:Le,keywords:Ae,logos:Me,posters:Me,recommendations:Ve,releaseDates:Ge,reviews:He,similarMovies:je,translations:xe,videos:Fe,watchProviders:Je},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:{...u("Network",We),alternativeNames:ze,logos:Ye},Person:{...u("Person",Be),combinedCredits:Xe,externalIds:Ze,movieCredits:ea,profiles:aa,translations:ra,tvCredits:ta},Query:{certifications:W,collection:Y,company:Z,configuration:te,credit:le,discoverMovies:_e,discoverTv:Ce,episode:we,find:De,genres:Pe,keyword:Oe,movie:be,network:We,person:Be,rated:na,review:oa,search:ia,season:ca,trending:ya,tv:Na},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...u("Season",ca),cast:pa,crew:pa,episodeCount:e=>e.episodes?.length??0,externalIds:ua,posters:ha,translations:_a,videos:ma},Tv:{...u("Tv",Na),alternativeTitles:va,backdrops:ka,cast:fa,contentRatings:wa,crew:fa,episodeGroups:Ta,externalIds:Ra,keywords:Ea,logos:ka,posters:ka,recommendations:Pa,reviews:Ia,similarTvShows:Sa,translations:$a,videos:La,watchProviders:Ma},TvStatus:{CANCELED:"Canceled",ENDED:"Ended",IN_PRODUCTION:"In Production",PILOT:"Pilot",PLANNED:"Planned",RETURNING_SERIES:"Returning Series"},TvType:{DOCUMENTARY:"Documentary",MINISERIES:"Miniseries",NEWS:"News",REALITY:"Reality",SCRIPTED:"Scripted",TALK_SHOW:"Talk Show",VIDEO:"Video"},Video:{type:({type:a})=>e.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=Aa;
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;
2
2
  //# sourceMappingURL=index.cjs.map