PageSourceSearch

https://televisionstats.com/_next/static/chunks/pages/admin/backfill-shows-bfbeeb59f3bfd96c.js

js televisionstats.com collected 2026-10-02 14:45:50 UTC 27,856 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6635],{28538:function(e,d,i){(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/backfill-shows",function(){return i(40739)}])},40739:function(e,d,i){"use strict";i.r(d),i.d(d,{__N_SSP:function(){return l}});var c=i(85893),t=i(1822),a=i.n(t),s=i(67294),r=i(24478);let o=new Date().getFullYear(),n=Array.from({length:o+1-2e3+1},(e,d)=>o+1-d);var l=!0;d.default=()=>{let[e,d]=(0,s.useState)(null),[i,t]=(0,s.useState)([]),[o,l]=(0,s.useState)(null),[x,b]=(0,s.useState)("idle"),[f,p]=(0,s.useState)(null),[u,m]=(0,s.useState)(null),[g,w]=(0,s.useState)(!1),[j,h]=(0,s.useState)("popularity"),[k,y]=(0,s.useState)("all"),[v,z]=(0,s.useState)(""),[N,_]=(0,s.useState)(!1),[S,I]=(0,s.useState)({}),[C,E]=(0,s.useState)({}),[D,T]=(0,s.useState)({}),[F,L]=(0,s.useState)(null),[M,O]=(0,s.useState)([]),[U,W]=(0,s.useState)({}),[q,A]=(0,s.useState)({}),[B,P]=(0,s.useState)({}),R=(0,s.useRef)(0);(0,s.useEffect)(()=>{let e=async()=>{try{let e=await fetch("/api/admin/enrichQueue");e.ok&&L(await e.json())}catch(e){}};e();let d=setInterval(e,5e3);return()=>clearInterval(d)},[]);let J=async e=>{let i=++R.current;d(e),t([]),l(null),p(null),y("all"),z(""),b("loading");let c=null;try{for(;;){let d=new URLSearchParams({year:String(e)});c&&d.set("after",String(c));let a=await fetch("/api/admin/backfillShows?".concat(d.toString())),s=await a.json();if(i!==R.current)return;if(!a.ok){p(s.error||"Request failed"),b("error");return}if(t(e=>[...e,...s.results]),l(s.stats),!s.hasMore)break;c=s.nextCursor}b("done")}catch(e){if(i!==R.current)return;p(e.message),b("error")}},Q=async()=>{w(!0);try{let e=await fetch("/api/admin/backfillShows?mode=overview"),d=await e.json();e.ok?m(d.counts):p(d.error||"Overview failed")}catch(e){p(e.message)}w(!1)},V=()=>{u&&null!==e&&m(d=>{let i=d[e];return i?{...d,[e]:{...i,missing:Math.max(0,i.missing-1)}}:d})},X=async e=>{I(d=>({...d,[e.id]:!0}));try{let d=await (0,r.is)({moviedbID:e.id,wikipediaSlug:e.wikipediaSlug,wikidataId:e.qid,deferEnrichment:!0});E(i=>({...i,[e.id]:(null==d?void 0:d.slug)||!0})),(null==d?void 0:d.id)&&(O(i=>[{showId:d.id,name:d.name||e.name,slug:d.slug,subreddit:d.subreddit||""},...i]),d.subreddit&&W(e=>({...e,[d.id]:d.subreddit}))),V()}catch(d){console.error("Error adding show:",d),p("Failed to add ".concat(e.name,": ").concat(d.message))}I(d=>({...d,[e.id]:!1}))},G=async e=>{T(d=>({...d,[e.id]:!0}));try{await fetch("/api/admin/ignore",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tmdb_id:e.tmdbId,type:"show",name:e.name})}),t(d=>d.map(d=>d.id===e.id?{...d,ignored:!0}:d)),V()}catch(e){console.error("Error ignoring:",e)}T(d=>({...d,[e.id]:!1}))},H=async e=>{try{await fetch("/api/admin/ignore",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({tmdb_id:e.tmdbId,type:"show"})}),t(d=>d.map(d=>d.id===e.id?{...d,ignored:!1}:d))}catch(e){console.error("Error unignoring:",e)}},K=async e=>{let d=(U[e.showId]||"").trim().replace(/^\/?r\//,"");A(d=>({...d,[e.showId]:!0}));try{await (0,r.iU)({id:e.showId,subreddit:d||null}),P(i=>({...i,[e.showId]:d})),O(i=>i.map(i=>i.showId===e.showId?{...i,subreddit:d}:i))}catch(d){console.error("Error saving subreddit:",d),p("Failed to save subreddit for ".concat(e.name,": ").concat(d.message))}A(d=>({...d,[e.showId]:!1}))},Y=[...new Set(i.map(e=>e.original_language).filter(Boolean))].sort(),Z=i.filter(e=>N||!e.ignored).filter(e=>"all"===k||e.original_language===k).filter(e=>!v||(e.name||"").toLowerCase().includes(v.toLowerCase())||(e.original_name||"").toLowerCase().includes(v.toLowerCase())).sort((e,d)=>{let i="en"===e.original_language?1:0,c="en"===d.original_language?1:0;if(i!==c)return c-i;if("popularity"===j)return(d.popularity||0)-(e.popularity||0);if("votes"===j)return(d.vote_count||0)-(e.vote_count||0);if("date"===j){let i=e.first_air_date||e.wikidataDate||"";return(d.first_air_date||d.wikidataDate||"").localeCompare(i)}return 0}),$=i.filter(e=>e.ignored).length,ee="loading"===x;return(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce container",children:[(0,c.jsx)("h1",{className:"jsx-d2597c9d0b4f7cce",children:"Show Backfill"}),(0,c.jsx)("p",{className:"jsx-d2597c9d0b4f7cce subtitle",children:"Every TV show on Wikidata with a TMDB ID and an English Wikipedia article, by first air year, that TelevisionStats is not tracking yet. Add runs the regular add show flow with the Wikipedia slug and Wikidata ID attached."}),(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce year-section",children:(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce year-buttons",children:[n.map(d=>(0,c.jsxs)("button",{onClick:()=>J(d),disabled:ee,className:"jsx-d2597c9d0b4f7cce "+"year-btn ".concat(e===d?"active":""),children:[(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce year-label",children:d}),(null==u?void 0:u[d])&&(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce year-count",children:u[d].missing})]},d)),(0,c.jsxs)("button",{onClick:()=>J("nodate"),disabled:ee,title:"Items with no start date on Wikidata; dates shown come from TMDB",className:"jsx-d2597c9d0b4f7cce "+"year-btn ".concat("nodate"===e?"active":""),children:[(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce year-label",children:"No date"}),(null==u?void 0:u.nodate)&&(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce year-count",children:u.nodate.missing})]}),(0,c.jsx)("button",{onClick:Q,disabled:g,className:"jsx-d2597c9d0b4f7cce counts-btn",children:g?"Counting...":u?"Refresh counts":"Load missing counts"})]})}),o&&(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce stats",children:["Wikidata: ",(0,c.jsx)("strong",{className:"jsx-d2597c9d0b4f7cce",children:o.discovered})," with wiki + TMDB | Already tracking: ",(0,c.jsx)("strong",{className:"jsx-d2597c9d0b4f7cce",children:o.existing})," | Missing:"," ",(0,c.jsx)("strong",{className:"jsx-d2597c9d0b4f7cce",children:o.missing})," | Ignored:"," ",(0,c.jsx)("strong",{className:"jsx-d2597c9d0b4f7cce",children:o.ignored}),ee&&(0,c.jsxs)("span",{className:"jsx-d2597c9d0b4f7cce progress",children:[" ","| Loaded ",i.length," of ",o.missing,"..."]})]}),F&&(F.active.length>0||F.pending>0||F.completed>0||F.failed.length>0)&&(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce queue-status",children:["Backgroun
1d enrichment:"," ",F.active.length>0?(0,c.jsxs)(c.Fragment,{children:["working on ",(0,c.jsx)("strong",{className:"jsx-d2597c9d0b4f7cce",children:F.active.join(", ")})]}):"idle"," | ",F.pending," queued | ",F.completed," done",F.failed.length>0&&(0,c.jsxs)("span",{className:"jsx-d2597c9d0b4f7cce queue-failed",children:[" ","| ",F.failed.length," failed:"," ",F.failed.slice(-3).join(", ")]})]}),M.length>0&&(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce added-panel",children:[(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce added-title",children:["Added this session (",M.length,")"]}),M.map(e=>{var d;let i=null!==(d=U[e.showId])&&void 0!==d?d:"",t=B[e.showId],a=i.trim().replace(/^\/?r\//,"")!==(null!=t?t:e.subreddit);return(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce added-row",children:[(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce added-name",children:e.name}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce added-links",children:[(0,c.jsx)("a",{href:"/admin/s/".concat(e.slug),target:"_blank",rel:"noopener noreferrer",className:"jsx-d2597c9d0b4f7cce",children:"Admin"}),(0,c.jsx)("a",{href:"/s/".concat(e.slug),target:"_blank",rel:"noopener noreferrer",className:"jsx-d2597c9d0b4f7cce",children:"Site"}),(0,c.jsx)("a",{href:"https://www.reddit.com/search/?q=".concat(encodeURIComponent(e.name),"&type=communities"),target:"_blank",rel:"noopener noreferrer",className:"jsx-d2597c9d0b4f7cce",children:"Find subreddit"})]}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce added-sub",children:[(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce sub-prefix",children:"r/"}),(0,c.jsx)("input",{type:"text",placeholder:e.subreddit?e.subreddit:"subreddit",value:i,onChange:d=>W(i=>({...i,[e.showId]:d.target.value})),onKeyDown:d=>{"Enter"===d.key&&a&&K(e)},className:"jsx-d2597c9d0b4f7cce"}),i.trim()&&(0,c.jsx)("a",{href:"https://www.reddit.com/r/".concat(i.trim().replace(/^\/?r\//,"")),target:"_blank",rel:"noopener noreferrer",title:"Open subreddit to verify",className:"jsx-d2597c9d0b4f7cce sub-check",children:"Check"}),(0,c.jsx)("button",{onClick:()=>K(e),disabled:q[e.showId]||!a,className:"jsx-d2597c9d0b4f7cce sub-save",children:q[e.showId]?"...":void 0===t||a?"Save":"Saved"}),e.subreddit&&void 0===t&&(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce sub-auto",children:"auto from Wikidata"})]})]},e.showId)})]}),ee&&!o&&(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce loading",children:"Querying Wikidata..."}),f&&(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce error",children:["Error: ",f]}),i.length>0&&(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce controls-row",children:[(0,c.jsx)("input",{type:"text",placeholder:"Filter by name",value:v,onChange:e=>z(e.target.value),className:"jsx-d2597c9d0b4f7cce search"}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce sort",children:["Sort:",(0,c.jsx)("button",{onClick:()=>h("popularity"),className:"jsx-d2597c9d0b4f7cce "+(("popularity"===j?"active":"")||""),children:"Popularity"}),(0,c.jsx)("button",{onClick:()=>h("votes"),className:"jsx-d2597c9d0b4f7cce "+(("votes"===j?"active":"")||""),children:"Votes"}),(0,c.jsx)("button",{onClick:()=>h("date"),className:"jsx-d2597c9d0b4f7cce "+(("date"===j?"active":"")||""),children:"Date"})]}),Y.length>1&&(0,c.jsxs)("select",{value:k,onChange:e=>y(e.target.value),className:"jsx-d2597c9d0b4f7cce lang-select",children:[(0,c.jsxs)("option",{value:"all",className:"jsx-d2597c9d0b4f7cce",children:["All languages (",i.length,")"]}),Y.map(e=>(0,c.jsxs)("option",{value:e,className:"jsx-d2597c9d0b4f7cce",children:[e," (",i.filter(d=>d.original_language===e).length,")"]},e))]}),$>0&&(0,c.jsxs)("button",{onClick:()=>_(!N),className:"jsx-d2597c9d0b4f7cce "+"ignored-toggle ".concat(N?"active":""),children:[N?"Hide":"Show"," ignored (",$,")"]}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce visible-count",children:[Z.length," shown"]})]}),(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce grid",children:Z.map(e=>{var d,i,t,a,s;let r=C[e.id];return(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce "+"card ".concat(r?"added":""," ").concat(e.ignored?"ignored-card":""),children:[(0,c.jsx)("a",{href:"https://www.themoviedb.org/tv/".concat(e.id),target:"_blank",rel:"noopener noreferrer",className:"jsx-d2597c9d0b4f7cce poster-link",children:e.poster_path?(0,c.jsx)("img",{src:"https://image.tmdb.org/t/p/w185".concat(e.poster_path),alt:e.name,loading:"lazy",className:"jsx-d2597c9d0b4f7cce poster"}):(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce poster placeholder",children:"No poster"})}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce info",children:[(0,c.jsx)("div",{title:e.name,className:"jsx-d2597c9d0b4f7cce name",children:e.name}),e.original_name&&(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce original-name",children:e.original_name}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce date-row",children:[(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce date",children:function(e){if(!e)return"No date";let d=new Date(e);return isNaN(d.getTime())?"No date":d.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}(e.first_air_date||e.wikidataDate)}),e.status&&(0,c.jsx)("span",{className:"jsx-d2597c9d0b4f7cce status",children:e.status})]}),e.hydrateFailed?(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce tmdb-missing",children:"TMDB lookup failed, ID may be dead"}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce meta",children:[e.number_of_seasons||0,"S /"," ",e.number_of_episodes||0,"E",(null===(d=e.origin_country)||void 0===d?void 0:d.length)?" | ".concat(e.origin_country.join(" ")):"",e.original_language?" | ".concat(e.original_language):""]}),(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce meta",children:(null===(i=e.networks)||void 0===i?void 0:i.length)?e.networks.slice(0,2).join(", "):"No network"}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce meta-secondary",children:[(0,c.jsxs)("span",{className:"jsx-d2597c9d0b4f7cce",children:["pop ",null!==(s=null===(t=e.popularity)||void 0===t?void 0:t.toFixed(0))&&void 0!==s?s:"0"]}),(0,c.jsxs)("span",{className:"jsx-d2597c9d0b4f7cce",children:[e.vote_count||0," votes"]})]}),(null===(a=e.genres)||void 0===a?void 0:a.length)>0&&(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce genres",children:e.genres.slice(0,3).join(", ")}),e.overview&&(0,c.jsx)("div",{className:"jsx-d2597c9d0b4f7cce overview",children:e.overview})]}),(0,c.jsxs)("div",{className:"jsx-d2597c9d0b4f7cce buttons",children:[(0,c.jsx)("a",{href:"https://en.wikipedia.org/wiki/".concat(e.wikipediaSlug),target:"_blank",rel:"noopener noreferrer",title:e.wikipediaSlug.replace(/_/g," "),className:"jsx-d2597c9d0b4f7cce wiki-btn",children:"W"}),r?(0,c.jsx)("a",{href:"string"==typeof r?"/admin/s/".concat(r):"#",target:"_blank",rel:"noopener noreferrer",className:"jsx-d2597c9d0b4f7cce added-link",children:"Added, open"}):e.ignored?(0,c.jsx)("button",{onClick:()=>H(e),className:"jsx-d2597c9d0b4f7cce unignore-btn",children:"Restore"}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("button",{onClick:()=>G(e),disabled:D[e.id],className:"jsx-d2597c9d0b4f7cce ignore-btn",children:D[e.id]?"...":"Ignore"}),!e.hydrateFailed&&(0,c.jsx)("button",{onClick:()=>X(e),disabled:S[e.id],className:"jsx-d2597c9d0b4f7cce add-btn",children:S[e.id]?"...":"Add"})]})]})]})]},e.id)})}),(0,c.jsx)(a(),{id:"d2597c9d0b4f7cce",children:'.container.jsx-d2597c9d0b4f7cce{padding:15px;max-width:1800px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}h1.jsx-d2597c9d0b4f7cce{font-size:24px;margin-bottom:4px}.subtitle.jsx-d2597c9d0b4f7cce{font-size:12px;color:#666;margin-bottom:15px;max-width:720px}.year-section.jsx-d2597c9d0b4f7cce{margin-bottom:12px}.year-buttons.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:5px;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.year-btn.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;padding:4px 8px;border:1px solid#ddd;background:#fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
1cursor:pointer;min-width:46px}.year-btn.jsx-d2597c9d0b4f7cce:hover{background:#f0f0f0}.year-btn.active.jsx-d2597c9d0b4f7cce{background:#0070f3;border-color:#0070f3}.year-btn.active.jsx-d2597c9d0b4f7cce .year-label.jsx-d2597c9d0b4f7cce,.year-btn.active.jsx-d2597c9d0b4f7cce .year-count.jsx-d2597c9d0b4f7cce{color:white}.year-btn.jsx-d2597c9d0b4f7cce:disabled{opacity:.5;cursor:not-allowed}.year-label.jsx-d2597c9d0b4f7cce{font-size:12px;font-weight:600;color:#333}.year-count.jsx-d2597c9d0b4f7cce{font-size:10px;color:#b00;font-weight:600}.counts-btn.jsx-d2597c9d0b4f7cce{padding:6px 12px;border:1px solid#0070f3;background:#fff;color:#0070f3;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;cursor:pointer;font-size:11px;font-weight:600;margin-left:8px}.counts-btn.jsx-d2597c9d0b4f7cce:disabled{opacity:.5;cursor:not-allowed}.stats.jsx-d2597c9d0b4f7cce{padding:10px;background:#f5f5f5;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:13px;margin-bottom:12px}.progress.jsx-d2597c9d0b4f7cce{color:#b06000}.queue-status.jsx-d2597c9d0b4f7cce{padding:8px 10px;background:#eef4ff;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:12px;color:#333;margin-bottom:12px}.queue-failed.jsx-d2597c9d0b4f7cce{color:#b00}.added-panel.jsx-d2597c9d0b4f7cce{border:1px solid#d0e3d0;background:#f6fbf6;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:10px 12px;margin-bottom:12px;max-height:300px;overflow-y:auto}.added-title.jsx-d2597c9d0b4f7cce{font-size:12px;font-weight:700;color:#2e7d32;margin-bottom:8px}.added-row.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:14px;padding:5px 0;border-top:1px solid#e2eee2;font-size:12px}.added-name.jsx-d2597c9d0b4f7cce{font-weight:600;min-width:220px;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.added-links.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;gap:10px;-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.added-links.jsx-d2597c9d0b4f7cce a.jsx-d2597c9d0b4f7cce{color:#0070f3;text-decoration:none;font-size:11px}.added-links.jsx-d2597c9d0b4f7cce a.jsx-d2597c9d0b4f7cce:hover{text-decoration:underline}.added-sub.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;margin-left:auto}.sub-prefix.jsx-d2597c9d0b4f7cce{font-size:11px;color:#999}.added-sub.jsx-d2597c9d0b4f7cce input.jsx-d2597c9d0b4f7cce{padding:3px 8px;border:1px solid#ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;font-size:11px;width:150px}.sub-check.jsx-d2597c9d0b4f7cce{font-size:11px;color:#0070f3;text-decoration:none}.sub-check.jsx-d2597c9d0b4f7cce:hover{text-decoration:underline}.sub-save.jsx-d2597c9d0b4f7cce{padding:3px 10px;border:none;background:#0070f3;color:white;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;cursor:pointer;font-size:11px;font-weight:600}.sub-save.jsx-d2597c9d0b4f7cce:disabled{background:#ccc;cursor:not-allowed}.sub-auto.jsx-d2597c9d0b4f7cce{font-size:10px;color:#2e7d32}.loading.jsx-d2597c9d0b4f7cce{padding:12px;background:#f5f5f5;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:13px;color:#666;margin:12px 0}.error.jsx-d2597c9d0b4f7cce{padding:10px;background:#ffeaea;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:13px;color:#b00;margin:12px 0}.controls-row.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:12px;margin-bottom:12px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.search.jsx-d2597c9d0b4f7cce{padding:5px 10px;border:1px solid#ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;font-size:12px;width:180px}.sort.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;font-size:12px;color:#666}.sort.jsx-d2597c9d0b4f7cce button.jsx-d2597c9d0b4f7cce,.ignored-toggle.jsx-d2597c9d0b4f7cce{padding:4px 10px;border:1px solid#ddd;background:#fff;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
1cursor:pointer;font-size:11px}.sort.jsx-d2597c9d0b4f7cce button.active.jsx-d2597c9d0b4f7cce{background:#0070f3;color:white;border-color:#0070f3}.ignored-toggle.active.jsx-d2597c9d0b4f7cce{background:#f0f0f0}.lang-select.jsx-d2597c9d0b4f7cce{padding:4px 8px;border:1px solid#ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;font-size:11px}.visible-count.jsx-d2597c9d0b4f7cce{font-size:11px;color:#999;margin-left:auto}.grid.jsx-d2597c9d0b4f7cce{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.card.jsx-d2597c9d0b4f7cce{border:1px solid#e0e0e0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;overflow:hidden;background:#fff;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card.added.jsx-d2597c9d0b4f7cce{-webkit-filter:grayscale(100%);filter:grayscale(100%);opacity:.55}.card.ignored-card.jsx-d2597c9d0b4f7cce{opacity:.4}.poster-link.jsx-d2597c9d0b4f7cce{display:block;line-height:0}.poster.jsx-d2597c9d0b4f7cce{width:100%;height:auto;display:block;background:#f5f5f5;aspect-ratio:2/3;-o-object-fit:cover;object-fit:cover}.poster.placeholder.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#999;font-size:11px;line-height:1.4}.info.jsx-d2597c9d0b4f7cce{padding:7px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1}.name.jsx-d2597c9d0b4f7cce{font-size:12px;font-weight:600;line-height:1.25;margin-bottom:2px}.original-name.jsx-d2597c9d0b4f7cce{font-size:10px;color:#999;margin-bottom:2px}.date-row.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:6px;margin-bottom:3px}.date.jsx-d2597c9d0b4f7cce{font-size:10px;color:#333;font-weight:500}.status.jsx-d2597c9d0b4f7cce{font-size:9px;color:#666;background:#f0f0f0;padding:1px 5px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.meta.jsx-d2597c9d0b4f7cce{font-size:10px;color:#666;margin-bottom:2px}.meta-secondary.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:10px;color:#999;margin-bottom:2px}.genres.jsx-d2597c9d0b4f7cce{font-size:9px;color:#888;margin-bottom:3px}.overview.jsx-d2597c9d0b4f7cce{font-size:9px;color:#888;line-height:1.35;margin-bottom:5px;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.tmdb-missing.jsx-d2597c9d0b4f7cce{font-size:10px;color:#b00;background:#ffeaea;padding:3px 6px;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;margin-bottom:5px}.buttons.jsx-d2597c9d0b4f7cce{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;gap:4px;margin-top:auto}.wiki-btn.jsx-d2597c9d0b4f7cce{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:4px 7px;background:#4caf50;color:white;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;text-decoration:none;font-size:10px;font-weight:700;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center}.wiki-btn.jsx-d2597c9d0b4f7cce:hover{background:#388e3c}.add-btn.jsx-d2597c9d0b4f7cce{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;padding:4px;background:#0070f3;color:white;border:none;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
1cursor:pointer;font-size:10px;font-weight:600}.add-btn.jsx-d2597c9d0b4f7cce:hover{background:#0051cc}.add-btn.jsx-d2597c9d0b4f7cce:disabled{background:#ccc;cursor:not-allowed}.added-link.jsx-d2597c9d0b4f7cce{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;padding:4px;background:#e8f5e9;color:#2e7d32;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;text-decoration:none;font-size:10px;font-weight:600;text-align:center}.ignore-btn.jsx-d2597c9d0b4f7cce{-webkit-box-flex:0;-webkit-flex:0 0 auto;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:4px 8px;background:#f0f0f0;color:#666;border:1px solid#ddd;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;cursor:pointer;font-size:10px}.ignore-btn.jsx-d2597c9d0b4f7cce:hover{background:#e0e0e0}.unignore-btn.jsx-d2597c9d0b4f7cce{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;-ms-flex:1;flex:1;padding:4px;background:#fff;color:#0070f3;border:1px solid#0070f3;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;cursor:pointer;font-size:10px;font-weight:600}'})]})}},24478:function(e,d,i){"use strict";i.d(d,{LI:function(){return m},Lq:function(){return a},Nh:function(){return u},Q8:function(){return t},Wj:function(){return f},dO:function(){return o},dv:function(){return n},i1:function(){return s},iU:function(){return x},is:function(){return r},j3:function(){return b},lp:function(){return g},u:function(){return p},uN:function(){return l}});var c=i(50440);let t=e=>(0,c.U)("/admin/show?term=".concat(e)),a=e=>(0,c.U)("/admin/m/searchMovies?term=".concat(e)),s=()=>(0,c.v)("/admin/show",{newShows:!0}),r=e=>{let{moviedbID:d,wikipediaSlug:i,wikidataId:t,deferEnrichment:a}=e;return(0,c.v)("/admin/show",{moviedbID:d,wikipediaSlug:i,wikidataId:t,deferEnrichment:a})},o=e=>{let{moviedbID:d,wikipediaSlug:i,wikidataId:t,deferEnrichment:a}=e;return(0,c.v)("/admin/m/addMovie",{moviedbID:d,wikipediaSlug:i,wikidataId:t,deferEnrichment:a})},n=e=>{let{asin:d,showId:i,movieId:t,type:a,includeName:s}=e;return(0,c.v)("/admin/addmerch",{asin:d,showId:i,movieId:t,type:a,includeName:s})},l=e=>{let{medium:d,name:i}=e;return(0,c.U)("/admin/merch?medium=".concat(d,"&name=").concat(i))},x=e=>{let{id:d,searchTerm:i,subreddit:t,wikipediaSlug:a,episodeDateID:s,hashtag:r}=e;return(0,c.v)("/admin/show",{id:d,searchTerm:i,subreddit:t,wikipediaSlug:a,episodeDateID:s,hashtag:r})},b=e=>{let{id:d,customSearchTerm:i,wikipediaSlug:t,hashtag:a}=e;return(0,c.v)("/admin/m/updateMovie",{id:d,customSearchTerm:i,wikipediaSlug:t,hashtag:a})},f=e=>{let{id:d,wikiSlug:i,cust_desc:t,removeActorData:a,birthday:s,place_of_birth:r,summary:o,isAlive:n,noProfile:l}=e;return(0,c.v)("/admin/a/updateActor",{id:d,wikiSlug:i,cust_desc:t,removeActorData:a,birthday:s,place_of_birth:r,summary:o,isAlive:n,noProfile:l})},p=e=>(0,c.v)("/admin/addallwiki",{slug:e}),u=e=>(0,c.v)("/admin/m/addallmoviewiki",{slug:e}),m=e=>(0,c.v)("/admin/addshowdescription",{slug:e}),g=e=>(0,c.v)("/admin/m/updatemoviedescriptionai",{id:e})},50440:function(e,d,i){"use strict";i.d(d,{U:function(){return c},v:function(){return t}});let c=async function(e){let d=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i="".concat("","/api").concat(e),c=await fetch(i,{method:"GET",credentials:"include",...d});return await c.json()},t=async(e,d)=>{let i=await fetch("/api".concat(e),{body:JSON.stringify(d),credentials:"include",method:"POST",headers:{"Content-Type":"application/json"}});return await i.json()}}},function(e){e.O(0,[1822,2888,9774,179],function(){return e(e.s=28538)}),_N_E=e.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.