@tmdb-graphql-api/resolvers 0.1.2-unstable.7 → 0.1.2-unstable.8

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"),c=require("@tmdb-graphql-api/schema/types");const l=a.schema.getTypeMap(),p=Object.keys(l).reduce(((e,a)=>{const t=l[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",k="episode",R="episodeGroups",D="externalIds",E="images",P="keywords",I="logos",O="movie",b="movieCredits",$="network",S="person",L="posters",M="recommendations",q="releaseDates",A="reviews",G="season",V="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:c}=o,l={...n,data:{...n.data,args:s,fieldPath:e}},p=d.child(l.data);p.info(`Resolving ${e} ${JSON.stringify(s)}`);const{data:u,errors:h,headers:_}=await a(s,l,o);if(h?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:h}),new r.GraphQLError(a,{nodes:c,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:c,fieldNodes:l}=o,p=t?`${e}.${c}`:e,u={...n,data:{...n.data,args:s,fieldPath:p}},h=d.child(u.data),_=!t||"id"===c,m=t&&"id"in t&&t.id?t.id:"id"in s?s.id:void 0,C=e=>{const a=`${e} ${p}`;return m?`${a} ${String(m)}`:a};_&&h.info(C("Resolving"));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}),new r.GraphQLError(e,{nodes:l,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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.collection({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,errors:p,headers:u}})),K=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:c,fieldNodes:l}=o,p=`${e}.${c}`,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:l})}h.info(`Resolving ${p}`);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}),new r.GraphQLError(e,{nodes:l,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:E}},t),c=n;return{data:o?.[c],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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.company({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,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:E}},r);return{data:s?.logos,errors:n,headers:o}})),re=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:c,fieldNodes:l}=o,p=t?`${e}.${c}`:e,u={...n,data:{...n.data,fieldPath:p}},h=d.child(u.data);h.info(`Resolving ${p}`);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}),new r.GraphQLError(e,{nodes:l,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}})),ce=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}})),le=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(le(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(le(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:O},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(le(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={[D]:e.snakeCase(D),[Q]:Q,[j]:j,cast:f,crew:f,guestStars:f,stills:E},we=z(k,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i),{episodeNumber:p,id:u,seasonNumber:h}=Ne(a,r);if(a&&!e.isUndefined(a[l]))return{data:"id"===l?ye({id:u,seasonNumber:h,...p?{episodeNumber:p}:{}}):a[l],source:"parentNode"};const _=ge(c[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[l]:_.length>0?{...g,__headers:y}:g,errors:C,headers:y}})),fe=K(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:c,headers:l}=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:c,headers:l}})),Te=K(k,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a[d],headers:a.__headers,source:"parentNode"};const{data:i,errors:c,headers:l}=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:c,headers:l}})),ke=K(k,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>E in e&&"__headers"in e)(a))return{data:a.images?.[d],headers:a.__headers,source:"parentNode"};const{data:i,errors:c,headers:l}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:E}},s);return{data:i?.[d],errors:c,headers:l}})),Re=K(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}})),De=K(k,(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}})),Ee=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}})),Ie=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}})),Oe={[_]:e.snakeCase(_),[m]:E,[C]:f,[T]:f,[D]:e.snakeCase(D),[P]:P,[I]:E,[L]:E,[M]:M,[q]:e.snakeCase(q),[A]:A,similarMovies:V,[Q]:Q,[j]:j,[x]:"watch/providers"},be=z(O,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[0],Oe,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?.[l]:u.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),$e=z(O,(async(a,t,s,n)=>{const{country:o}=t,{data:d,logger:i,restClient:c}=s,{fieldNodes:l}=n;if(!a){const e=`Required ${_} node missing`;throw i.error(e),new r.GraphQLError(e,{nodes:l})}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 c.movie({pathTemplateData:{id:a.id,type:e.snakeCase(_)},queryParams:{country:o}},d);return{data:p?.titles,errors:u,headers:h}})),Se=K(O,(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:c}=await s.movie({pathTemplateData:{id:e.id,type:f}},t);return{data:d?.[o],errors:i,headers:c}})),Le=K(O,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n;return{data:c,errors:o,headers:d}})),Me=K(O,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:"parentNode"};const{data:d,errors:i,headers:c}=await s.movie({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:c}})),qe=K(O,(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}})),Ae=new t.Core({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Ge=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${O}::${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:Ae,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ve=K(O,(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 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}::${O}::${A}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>A 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:A},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}::${O}::${V}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>V 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:V},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(O,(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(O,(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(O,(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:O}},r);return{data:s?.results,errors:n,headers:o}})),We=z($,(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.network({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,errors:p,headers:u}})),ze=K($,(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($,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.network({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),Ke={[g]:e.snakeCase(g),[D]:e.snakeCase(D),[b]:e.snakeCase(b),profiles:E,[Q]:Q,[U]:e.snakeCase(U)},Be=z(S,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[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?.[l]:u.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),Xe=K(S,(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,...c}=n??{};return{data:c,errors:o,headers:d}})),Ze=K(S,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),ea=K(S,(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,...c}=n??{};return{data:c,errors:o,headers:d}})),aa=K(S,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:"parentNode"};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.profiles,errors:n,headers:o}})),ra=K(S,(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(S,(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,...c}=n??{};return{data:c,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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.review({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,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??c.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!==c.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}),ca={[C]:f,[T]:f,[D]:e.snakeCase(D),[L]:E,[Q]:Q,[j]:j},la=z(G,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i),{id:p,seasonNumber:u}=Ne(a,r);if(a&&!e.isUndefined(a[l]))return{data:"id"===l?ye({id:p,seasonNumber:u}):a[l],source:"parentNode"};const h=ge(c[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:ye({id:p,seasonNumber:u}),tv_show_id:Number(p)};return{data:a?y[l]:h.length>0?{...y,__headers:C}:y,errors:m,headers:C}})),pa=K(G,(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:c,headers:l}=await n.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:f}},s);return{data:i?.[d],errors:c,headers:l}})),ua=K(G,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),ha=K(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:"parentNode"};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:E}},r);return{data:s?.posters,errors:n,headers:o}})),_a=K(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}})),ma=K(G,(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: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: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]:E,[C]:f,[w]:e.snakeCase(w),[T]:f,[R]:e.snakeCase(R),[D]:e.snakeCase(D),[P]:P,[I]:E,[L]:E,[M]:M,[A]:A,similarTvShows:V,[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:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[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[l]: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:c}=await s.tv({pathTemplateData:{id:e.id,type:f}},t);return{data:d?.[o],errors:i,headers:c}})),Ta=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(R)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(R)}},t);return{data:n?.results,errors:o,headers:d}})),ka=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),Ra=K(H,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:"parentNode"};const{data:d,errors:i,headers:c}=await s.tv({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:c}})),Da=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}})),Ea=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:Ea,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=new t.Core({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Oa=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${A}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>A 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:A},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},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 t.Core({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),$a=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${V}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>V 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:V},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}),Sa=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}})),qa={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:ke,translations:Re,videos:De},Media:{__resolveType:e=>e.media_type},Movie:{...u("Movie",be),alternativeTitles:$e,backdrops:Me,cast:Se,crew:Se,externalIds:Le,keywords:qe,logos:Me,posters:Me,recommendations:Ge,releaseDates:Ve,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:ce,discoverMovies:_e,discoverTv:Ce,episode:we,find:Ee,genres:Pe,keyword:Ie,movie:be,network:We,person:Be,rated:na,review:oa,search:ia,season:la,trending:ya,tv:Na},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...u("Season",la),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:Ra,cast:fa,contentRatings:wa,crew:fa,episodeGroups:Ta,externalIds:ka,keywords:Da,logos:Ra,posters:Ra,recommendations:Pa,reviews:Oa,similarTvShows:$a,translations:Sa,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=qa;
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"),c=require("@tmdb-graphql-api/schema/types");const l=a.schema.getTypeMap(),p=Object.keys(l).reduce(((e,a)=>{const t=l[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",k="episode",R="episodeGroups",D="externalIds",E="images",P="keywords",I="logos",O="movie",b="movieCredits",$="network",S="person",L="posters",M="recommendations",q="releaseDates",A="reviews",G="season",V="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:c}=o,l={...n,data:{...n.data,args:s,fieldPath:e}},p=d.child(l.data);p.info(`Resolving ${e} ${JSON.stringify(s)}`);const{data:u,errors:h,headers:_}=await a(s,l,o);if(h?.length){const a=`Failed to resolve ${e}`;throw p.error(a,{errors:h}),new r.GraphQLError(a,{nodes:c,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:c,fieldNodes:l}=o,p=t?`${e}.${c}`:e,u={...n,data:{...n.data,args:s,fieldPath:p}},h=d.child(u.data),_=!t||"id"===c,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"));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}),new r.GraphQLError(e,{nodes:l,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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.collection({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,errors:p,headers:u}})),K=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:c,fieldNodes:l}=o,p=`${e}.${c}`,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:l})}h.info(`Resolving ${p}`);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}),new r.GraphQLError(e,{nodes:l,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:E}},t),c=n;return{data:o?.[c],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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.company({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,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:E}},r);return{data:s?.logos,errors:n,headers:o}})),re=(e,a)=>async(t,s,n,o)=>{const{logger:d,setCacheMetadata:i}=n,{fieldName:c,fieldNodes:l}=o,p=t?`${e}.${c}`:e,u={...n,data:{...n.data,fieldPath:p}},h=d.child(u.data);h.info(`Resolving ${p}`);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}),new r.GraphQLError(e,{nodes:l,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}})),ce=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}})),le=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(le(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(le(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:O},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(le(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={[D]:e.snakeCase(D),[Q]:Q,[j]:j,cast:f,crew:f,guestStars:f,stills:E},we=z(k,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i),{episodeNumber:p,id:u,seasonNumber:h}=Ne(a,r);if(a&&!e.isUndefined(a[l]))return{data:"id"===l?ye({id:u,seasonNumber:h,...p?{episodeNumber:p}:{}}):a[l],source:"parentNode"};const _=ge(c[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[l]:_.length>0?{...g,__headers:y}:g,errors:C,headers:y}})),fe=K(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:c,headers:l}=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:c,headers:l}})),Te=K(k,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a[d],headers:a.__headers,source:"parentNode"};const{data:i,errors:c,headers:l}=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:c,headers:l}})),ke=K(k,(async(a,r,t)=>{const{data:s,restClient:n}=r,{fieldName:o}=t,d=e.snakeCase(o);if((e=>E in e&&"__headers"in e)(a))return{data:a.images?.[d],headers:a.__headers,source:"parentNode"};const{data:i,errors:c,headers:l}=await n.episode({pathTemplateData:{episodeNumber:a.episode_number,id:a.tv_show_id,seasonNumber:a.season_number,type:E}},s);return{data:i?.[d],errors:c,headers:l}})),Re=K(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}})),De=K(k,(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}})),Ee=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}})),Ie=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}})),Oe={[_]:e.snakeCase(_),[m]:E,[C]:f,[T]:f,[D]:e.snakeCase(D),[P]:P,[I]:E,[L]:E,[M]:M,[q]:e.snakeCase(q),[A]:A,similarMovies:V,[Q]:Q,[j]:j,[x]:"watch/providers"},be=z(O,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[0],Oe,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?.[l]:u.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),$e=z(O,(async(a,t,s,n)=>{const{country:o}=t,{data:d,logger:i,restClient:c}=s,{fieldNodes:l}=n;if(!a){const e=`Required ${_} node missing`;throw i.error(e),new r.GraphQLError(e,{nodes:l})}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 c.movie({pathTemplateData:{id:a.id,type:e.snakeCase(_)},queryParams:{country:o}},d);return{data:p?.titles,errors:u,headers:h}})),Se=K(O,(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:c}=await s.movie({pathTemplateData:{id:e.id,type:f}},t);return{data:d?.[o],errors:i,headers:c}})),Le=K(O,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.movie({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n;return{data:c,errors:o,headers:d}})),Me=K(O,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:"parentNode"};const{data:d,errors:i,headers:c}=await s.movie({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:c}})),qe=K(O,(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}})),Ae=new t.Core({name:"MOVIE_RECOMMENDATIONS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Ge=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${O}::${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:Ae,getters:{nodes:({results:e=[]})=>e,page:({page:e=0})=>e,totalPages:({total_pages:e=0})=>e,totalResults:({total_results:e=0})=>e},resultsPerPage:20}),Ve=K(O,(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 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}::${O}::${A}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>A 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:A},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}::${O}::${V}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>V 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:V},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(O,(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(O,(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(O,(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:O}},r);return{data:s?.results,errors:n,headers:o}})),We=z($,(async(a,r,t,s)=>{const n=a?a.id:r.id,{data:o,restClient:d}=t,{fieldName:i}=s,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.network({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,errors:p,headers:u}})),ze=K($,(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($,(async(e,a)=>{const{data:r,restClient:t}=a,{data:s,errors:n,headers:o}=await t.network({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.logos,errors:n,headers:o}})),Ke={[g]:e.snakeCase(g),[D]:e.snakeCase(D),[b]:e.snakeCase(b),profiles:E,[Q]:Q,[U]:e.snakeCase(U)},Be=z(S,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[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?.[l]:u.length>0?{...h,__headers:m}:h,errors:_,headers:m}})),Xe=K(S,(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,...c}=n??{};return{data:c,errors:o,headers:d}})),Ze=K(S,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.person({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),ea=K(S,(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,...c}=n??{};return{data:c,errors:o,headers:d}})),aa=K(S,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.profiles,headers:e.__headers,source:"parentNode"};const{data:s,errors:n,headers:o}=await t.person({pathTemplateData:{id:e.id,type:E}},r);return{data:s?.profiles,errors:n,headers:o}})),ra=K(S,(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(S,(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,...c}=n??{};return{data:c,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,c=e.snakeCase(i);if(a&&!e.isUndefined(a[c]))return{data:a[c],source:"parentNode"};const{data:l,errors:p,headers:u}=await d.review({pathTemplateData:{id:n}},o);return{data:a?l?.[c]:l,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??c.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!==c.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}),ca={[C]:f,[T]:f,[D]:e.snakeCase(D),[L]:E,[Q]:Q,[j]:j},la=z(G,(async(a,r,t,s)=>{const{data:n,fragmentDefinitions:o,restClient:d}=t,{fieldName:i,fieldNodes:c}=s,l=e.snakeCase(i),{id:p,seasonNumber:u}=Ne(a,r);if(a&&!e.isUndefined(a[l]))return{data:"id"===l?ye({id:p,seasonNumber:u}):a[l],source:"parentNode"};const h=ge(c[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:ye({id:p,seasonNumber:u}),tv_show_id:Number(p)};return{data:a?y[l]:h.length>0?{...y,__headers:C}:y,errors:m,headers:C}})),pa=K(G,(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:c,headers:l}=await n.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:f}},s);return{data:i?.[d],errors:c,headers:l}})),ua=K(G,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.season({pathTemplateData:{id:a.tv_show_id,number:a.season_number,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),ha=K(G,(async(e,a)=>{const{data:r,restClient:t}=a;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.posters,headers:e.__headers,source:"parentNode"};const{data:s,errors:n,headers:o}=await t.season({pathTemplateData:{id:e.tv_show_id,number:e.season_number,type:E}},r);return{data:s?.posters,errors:n,headers:o}})),_a=K(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}})),ma=K(G,(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: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: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]:E,[C]:f,[w]:e.snakeCase(w),[T]:f,[R]:e.snakeCase(R),[D]:e.snakeCase(D),[P]:P,[I]:E,[L]:E,[M]:M,[A]:A,similarTvShows:V,[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:c}=s,l=e.snakeCase(i);if(a&&!e.isUndefined(a[l]))return{data:a[l],source:"parentNode"};const p=a?a.id:r.id,u=ge(c[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[l]: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:c}=await s.tv({pathTemplateData:{id:e.id,type:f}},t);return{data:d?.[o],errors:i,headers:c}})),Ta=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(R)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(R)}},t);return{data:n?.results,errors:o,headers:d}})),ka=K(H,(async(a,r)=>{const{data:t,restClient:s}=r;if((a=>e.snakeCase(D)in a&&"__headers"in a)(a))return{data:a.external_ids,headers:a.__headers,source:"parentNode"};const{data:n,errors:o,headers:d}=await s.tv({pathTemplateData:{id:a.id,type:e.snakeCase(D)}},t),{id:i,...c}=n??{};return{data:c,errors:o,headers:d}})),Ra=K(H,(async(e,a,r)=>{const{data:t,restClient:s}=a,{fieldName:n}=r,o=n;if((e=>E in e&&"__headers"in e)(e))return{data:e.images?.[o],headers:e.__headers,source:"parentNode"};const{data:d,errors:i,headers:c}=await s.tv({pathTemplateData:{id:e.id,type:E}},t);return{data:d?.[o],errors:i,headers:c}})),Da=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}})),Ea=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:Ea,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=new t.Core({name:"TV_REVIEWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),Oa=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${A}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>A 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:A},queryParams:{page:a}},r);return{data:s,errors:n,headers:o}},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 t.Core({name:"TV_SIMILAR_TV_SHOWS_CONNECTION_RESOLVER",reaper:n.init({interval:3e5}),store:s.init(),type:"GRAPHQL"}),$a=o.makeConnectionResolver({createMakeCursors:e=>{const a=`${e.id}::${H}::${V}`;return{makeGroupCursor:()=>d.encode(a),makeIDCursor:e=>d.encode(`${e}::${a}`)}},createResourceResolver:(e,a,{data:r,restClient:t})=>async({page:a})=>{if(((e,a)=>V 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:V},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}),Sa=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}})),qa={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:ke,translations:Re,videos:De},Media:{__resolveType:e=>e.media_type},Movie:{...u("Movie",be),alternativeTitles:$e,backdrops:Me,cast:Se,crew:Se,externalIds:Le,keywords:qe,logos:Me,posters:Me,recommendations:Ge,releaseDates:Ve,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:ce,discoverMovies:_e,discoverTv:Ce,episode:we,find:Ee,genres:Pe,keyword:Ie,movie:be,network:We,person:Be,rated:na,review:oa,search:ia,season:la,trending:ya,tv:Na},RatedScreen:{__resolveType:e=>e.media_type},Search:{__resolveType:e=>e.media_type},Season:{...u("Season",la),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:Ra,cast:fa,contentRatings:wa,crew:fa,episodeGroups:Ta,externalIds:ka,keywords:Da,logos:Ra,posters:Ra,recommendations:Pa,reviews:Oa,similarTvShows:$a,translations:Sa,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=qa;
2
2
  //# sourceMappingURL=index.cjs.map