PageSourceSearch

https://www.plotsense.ai/_next/static/chunks/4063-4715ca01a7e81a9d.js?dpl=dpl_ERPi7kokNXMS8o2m8b6ACjzysjz1

js plotsense.ai collected 2026-10-05 12:24:33 UTC 7,303 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4063],{4063:(e,t,a)=>{a.d(t,{A:()=>g});var s=a(5155),r=a(6766),l=a(6874),n=a.n(l),o=a(9676),i=a(7791),c=a(2506),d=a(3144),m=a(3295),x=a(5721),h=a(7016),f=a(1976),p=a(5695),u=a(2115),w=a(5495),b=a(2341);let g=e=>{let{className:t="",moveName:a="",year:l,aIDescription:g="",thumbnail:j,movieId:N="1",isInWatchlist:v=!1,onWatchlistToggle:k,rating:y,streamingPlatforms:A=[]}=e,{isSignedIn:C}=(0,h.d)(),{openSignIn:_}=(0,f.ho)(),E=(0,p.useRouter)(),[S,U]=(0,u.useState)(v),[P,T]=(0,u.useState)(!1),[M,I]=(0,u.useState)(!1),[L,R]=(0,u.useState)(null);(0,u.useEffect)(()=>{(async()=>{if(j){let e=j.startsWith("http")?j:"https://image.tmdb.org/t/p/w500".concat(j);R(await (0,w.Z)(e))}else R(null)})()},[j]),(0,u.useEffect)(()=>{U(v)},[v]);let O=async()=>{if(!C)return void _();T(!0),U(!S);try{let e=await fetch("/api/watchlist",{method:S?"DELETE":"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({movieId:N})});if(!e.ok){if(409===e.status){U(!0),I(!0),setTimeout(()=>I(!1),1500),T(!1);return}throw Error("Failed to update watchlist")}S||(I(!0),b.Ay.capture("movie_added_to_watchlist",{movieId:N,movieName:a})),k?k():E.refresh()}catch(e){U(S),I(!1),console.error("Error updating watchlist:",e)}finally{T(!1)}},z=Array.from(new Map(A.filter(e=>e.logoUrl).map(e=>[e.name+e.logoUrl,e])).values()),F=["Netflix","Prime Video","Disney+","Apple TV","Hulu","YouTube","HBO Max","Peacock","Paramount+","Starz","Showtime"],W=z.sort((e,t)=>{let a=F.findIndex(t=>e.name.toLowerCase().includes(t.toLowerCase())),s=F.findIndex(e=>t.name.toLowerCase().includes(e.toLowerCase()));return -1!==a&&-1!==s?a-s:-1!==a?-1:-1!==s?1:e.name.localeCompare(t.name)}),D=W.slice(0,4),H=W.length-4;return(0,s.jsxs)("div",{className:"w-full flex flex-row p-0 md:p-4 box-border border-[1px] border-solid border-transparent text-black dark:text-[#f3f4f6] font-red-hat-text group rounded-xl no-underline",onMouseEnter:e=>{L&&"hotpink"!==L&&L.startsWith("#")?e.currentTarget.style.backgroundColor=function(e,t){let a=e.replace("#","");3===a.length&&(a=a[0]+a[0]+a[1]+a[1]+a[2]+a[2]);let s=parseInt(a,16);return"rgba(".concat(s>>16&255,",").concat(s>>8&255,",").concat(255&s,",").concat(.15,")")}(L,0):e.currentTarget.style.backgroundColor="#f3f4f6"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="",I(!1)},children:[(0,s.jsx)("div",{className:"relative flex-none h-[200px] md:h-[230px] aspect-[2/3]",children:(0,s.jsx)(n(),{href:"/movie/".concat(N),target:"_blank",rel:"noopener noreferrer",className:"no-underline cursor-pointer",onClick:e=>{e.stopPropagation(),b.Ay.capture("movie_clicked",{movieId:N,movieName:a,source:"search"})},children:(0,s.jsx)(r.default,{className:"rounded-lg object-cover",loading:"lazy",fill:!0,sizes:"(max-width: 768px) 80px, 120px",alt:a||"Movie thumbnail",src:j&&j.startsWith("http")?j:j?"https://image.tmdb.org/t/p/w500".concat(j):"/placeholder-thumbnail.png",style:{objectFit:"cover"}})})}),(0,s.jsxs)("div",{className:"flex-1 flex flex-col justify-between ml-3 md:ml-5 min-w-0",children:[(0,s.jsxs)("div",{className:"flex flex-col",children:[(0,s.jsxs)("div",{className:"flex items-start gap-1",children:[(0,s.jsx)(n(),{href:"/movie/".concat(N),target:"_blank",rel:"noopener noreferrer",className:"no-underline cursor-pointer flex-1 min-w-0",onClick:e=>{e.stopPropagation(),b.Ay.capture("movie_clicked",{movieId:N,movieName:a,source:"search"})},children:(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-1 max-w-full line-clamp-2",children:[(0,s.jsx)("span",{className:"font-semibold text-sm md:text-base text-black dark:text-[#f3f4f6] truncate min-w-0 flex-1",children:a}),l&&(0,s.jsxs)("span",{className:"font-normal text-sm md:text-base text-slate-600 dark:text-slate-400 flex-shrink-0",children:["(",l,")"]})]})}),(0,s.jsx)("div",{className:"flex flex-shrink-0 h-[1.25em] pt-[2px]",children:(0,s.jsx)(o.urQ,{className:"h-[16px] w-[16px] md:h-[20px] md:w-[20px] text-black dark:text-[#f3f4f6]"})})]}),void 0!==y&&(0,s.jsxs)("div",{className:"flex items-center gap-2 mt-1",children:[(0,s.jsx)("div",{className:"flex items-center",children:[void 0,void 0,void 0,void 0,void 0].map((e,t)=>t<Math.round(y/2)?(0,s.jsx)(i.pTi,{className:"w-4 h-4 text-amber-500"},t):(0,s.jsx)(i.xAE,{className:"w-4 h-4 text-amber-500"},t))}),(0,s.jsx)("span",{className:"text-sm font-medium text-slate-700",children:y.toFixed(1)})]}),(0,s.jsx)("div",{className:"text-xs md:text-sm text-slate-600 dar
1k:text-slate-400 font-medium line-clamp-3",title:g,children:g}),z.length>0&&(0,s.jsxs)("div",{className:"flex items-center gap-2 mt-2 flex-wrap",children:[D.map((e,t)=>{let l=e.webUrl||e.iosUrl||e.androidUrl||e.websiteUrl||"#";return(0,s.jsx)("a",{href:l,target:"_blank",rel:"noopener noreferrer",title:e.name,className:"inline-block max-w-full",onClick:t=>{t.stopPropagation(),b.Ay.capture("streaming_source_clicked",{movieId:N,movieName:a,platformName:e.name,source:"search"})},children:(0,s.jsx)("div",{className:"p-1 bg-white flex items-center justify-center rounded-[4px] shadow-sm flex-shrink-0",title:e.name,children:(0,s.jsx)(r.default,{src:e.logoUrl,alt:e.name,width:30,height:30,className:"object-contain rounded-[4px]"})})},e.name+e.logoUrl)}),H>0&&(0,s.jsxs)("span",{className:"ml-1 text-xs text-slate-500 font-semibold flex-shrink-0",children:["+",H]})]})]}),(0,s.jsx)("div",{className:"flex items-center justify-between mt-4",children:(0,s.jsx)("div",{className:"flex items-center gap-2",children:P?(0,s.jsx)("div",{className:"h-2 w-20 rounded"}):(0,s.jsx)(x.A,{onClick:e=>{e.stopPropagation(),O()},title:S?M?"Added!":"Remove from watchlist":"Add to watchlist",icon:(0,s.jsxs)("span",{className:"flex items-center gap-1 text-black dark:text-[#f3f4f6]",children:[S?M?(0,s.jsx)(c.SUw,{className:"w-5 h-5 text-green-600"}):(0,s.jsx)(d.S61,{className:"w-5 h-5"}):(0,s.jsx)(m.prg,{className:"w-5 h-5"}),(0,s.jsx)("span",{className:"text-xs md:text-sm font-semibold",children:S?M?"Added!":"Remove from watchlist":"Add to watchlist"})]}),hoverIcon:(0,s.jsxs)("span",{className:"flex items-center gap-1 text-black dark:text-[#f3f4f6]",children:[S?M?(0,s.jsx)(c.SUw,{className:"w-5 h-5 text-green-600"}):(0,s.jsx)(d.Ogn,{className:"w-5 h-5"}):(0,s.jsx)(m.t8b,{className:"w-5 h-5"}),(0,s.jsx)("span",{className:"text-xs md:text-sm font-semibold",children:S?M?"Added!":"Remove from watchlist":"Add to watchlist"})]}),disabled:P})})})]})]})}},5495:(e,t,a)=>{a.d(t,{Z:()=>s});async function s(e){if(!e)return"hotpink";try{let t=await fetch("/api/image-color?imageUrl=".concat(encodeURIComponent(e)));if(!t.ok)return console.error("API failed with status ".concat(t.status,": ").concat(await t.text())),"hotpink";return(await t.json()).color||"hotpink"}catch(e){return console.error("Error fetching dominant color from API:",e),"hotpink"}}},5721:(e,t,a)=>{a.d(t,{A:()=>l});var s=a(5155),r=a(2115);let l=e=>{let{className:t="",onClick:a,disabled:l=!1,icon:n,hoverIcon:o,type:i="button",title:c}=e,[d,m]=(0,r.useState)(!1);return(0,s.jsx)("button",{type:i,onClick:a,disabled:l,title:c,className:"pl-0 p-2 rounded-xl text-gray-600 disabled:opacity-50 disabled:cursor-not-allowed hover:text-black transition-colors bg-transparent cursor-pointer ".concat(t),onMouseEnter:()=>m(!0),onMouseLeave:()=>m(!1),children:o&&d?o:n})}}}]);

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.