@serifpersia/dango 3.7.3 → 3.7.4
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.
- package/README.md +1 -1
- package/client/dist/assets/{AnimeCard-BVufFeLC.js → AnimeCard-CBxkRKU-.js} +1 -1
- package/client/dist/assets/{AnimeInfo-Dihook4h.js → AnimeInfo-D3LmqzJo.js} +1 -1
- package/client/dist/assets/{AnimeInfoPage-K0ErjilQ.js → AnimeInfoPage-CeJHVkQ0.js} +2 -2
- package/client/dist/assets/{Asmr-CP7vVwsh.js → Asmr-CrHIKmJ4.js} +2 -2
- package/client/dist/assets/Asmr-Do89pEHG.css +1 -0
- package/client/dist/assets/{AsmrResetProgressModal-cYO4Sr2k.js → AsmrResetProgressModal-C13uw5lH.js} +1 -1
- package/client/dist/assets/{Home-BYuAVKgx.js → Home-CC9XyO9O.js} +1 -1
- package/client/dist/assets/{Insights-Bx01GySp.js → Insights-BZGAhYrz.js} +1 -1
- package/client/dist/assets/{LibraryListPage-BnrEDG8j.js → LibraryListPage-DosBFeR_.js} +1 -1
- package/client/dist/assets/{ListeningList-kRSLAo3B.js → ListeningList-nq279J8O.js} +1 -1
- package/client/dist/assets/{Manga-COhyMd3K.js → Manga-DiCcXa9I.js} +1 -1
- package/client/dist/assets/{MangaInfoPage-LTEvl_nL.js → MangaInfoPage-sZn0qDxf.js} +1 -1
- package/client/dist/assets/{MangaReadPage-sEwzyBQ7.js → MangaReadPage-ChgW4VO8.js} +1 -1
- package/client/dist/assets/{MangaResetProgressModal-CbMR36Zu.js → MangaResetProgressModal-BkNHdClw.js} +1 -1
- package/client/dist/assets/{Mature-CMvs_-gf.js → Mature-D7bJH6LQ.js} +1 -1
- package/client/dist/assets/{MatureConsentModal-BnB-RHYQ.js → MatureConsentModal-B3u3RgAE.js} +1 -1
- package/client/dist/assets/MediaCard-B1llLoho.js +1 -0
- package/client/dist/assets/{MediaCard-B0PJStxp.css → MediaCard-CoyScn-7.css} +1 -1
- package/client/dist/assets/{OptionListMenu-onM2KK2X.js → OptionListMenu-1QikgQ8d.js} +1 -1
- package/client/dist/assets/{Player-2YKevlG4.js → Player-hVrgi0J1.js} +2 -2
- package/client/dist/assets/{PlayerSettings-BfSv-hut.js → PlayerSettings-CWc5Tf-B.js} +1 -1
- package/client/dist/assets/{QueueOptionsButton-B4Re8F3V.js → QueueOptionsButton-Cpm6Jovo.js} +1 -1
- package/client/dist/assets/{QueueRail-Dkx_M6ng.js → QueueRail-DpUQ2Ba2.js} +1 -1
- package/client/dist/assets/{ReadingList-C--ZvTe2.js → ReadingList-DMxkudSM.js} +1 -1
- package/client/dist/assets/{ResetProgressModal-BuESoxbY.js → ResetProgressModal-6X8ciSFl.js} +1 -1
- package/client/dist/assets/{Search-CEErwr88.js → Search-CbXvziWY.js} +1 -1
- package/client/dist/assets/Settings-BEZZSWsj.js +21 -0
- package/client/dist/assets/Settings-DYjRBgpE.css +1 -0
- package/client/dist/assets/{SkeletonGrid-QWMGLCGp.js → SkeletonGrid-BDR-fKs1.js} +1 -1
- package/client/dist/assets/{Trackers-1i4Hd5D3.js → Trackers-DO0mA01O.js} +1 -1
- package/client/dist/assets/{Tv-C6F9655r.js → Tv-DP4rcV9T.js} +1 -1
- package/client/dist/assets/{TvInfo-BajXP7JJ.js → TvInfo-WNJynk-5.js} +1 -1
- package/client/dist/assets/{TvPopup-DZtX79Ol.js → TvPopup-Q9_MFJdx.js} +1 -1
- package/client/dist/assets/{TvSearch-DcWcxRb1.js → TvSearch-C-RBZ1iq.js} +1 -1
- package/client/dist/assets/{TvWatchlist-Cf_25dKi.js → TvWatchlist-BXE6yUS0.js} +1 -1
- package/client/dist/assets/{Watchlist-DBmU8PNR.js → Watchlist-7x__Rf-s.js} +1 -1
- package/client/dist/assets/{hls-Bi-DS5KL.js → hls-DIyfUbGZ.js} +1 -1
- package/client/dist/assets/{index-DB81Su4I.js → index-D0DdVatn.js} +2 -2
- package/client/dist/assets/{libraryInvalidation-DI-v-DQ1.js → libraryInvalidation-BFqNv8Cx.js} +1 -1
- package/client/dist/assets/{useAnimeInfoData-DpUA78Mv.js → useAnimeInfoData-D_qedrui.js} +1 -1
- package/client/dist/assets/{useAsmr-BwyYDnlP.js → useAsmr-CrshwDPO.js} +1 -1
- package/client/dist/assets/{useAsmrPopup-BrrEaBlV.js → useAsmrPopup-HwNC-ZRo.js} +1 -1
- package/client/dist/assets/{useMangaLibrary-BAUaug-u.js → useMangaLibrary-BPSi9vcc.js} +1 -1
- package/client/dist/assets/{useMangaPopup-3Lx5tEub.js → useMangaPopup-DdueqAi5.js} +1 -1
- package/client/dist/assets/usePlaybackEnd-DLFOYx3Q.css +1 -0
- package/client/dist/assets/{usePlaybackEnd-CuDnNZ8o.js → usePlaybackEnd-DjZq1szR.js} +2 -2
- package/client/dist/assets/{useProviders-CKqOSX5-.js → useProviders-_ilIsyde.js} +1 -1
- package/client/dist/assets/{useTv-CZB47zUF.js → useTv-C558DPdT.js} +1 -1
- package/client/dist/assets/{useTvLibrary-BGz7Unv_.js → useTvLibrary-CNQcDI7O.js} +1 -1
- package/client/dist/index.html +1 -1
- package/package.json +2 -2
- package/server/package.json +1 -1
- package/client/dist/assets/Asmr-Dl1EZqaI.css +0 -1
- package/client/dist/assets/MediaCard-hWGCEHWx.js +0 -1
- package/client/dist/assets/Settings-BEHII_8K.css +0 -1
- package/client/dist/assets/Settings-C-QEEujv.js +0 -21
- package/client/dist/assets/usePlaybackEnd-BtUHM1mW.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as b}from"./vendor-core-DfaOB3Rn.js";import{c as k}from"./useAsmr-
|
|
1
|
+
import{u as b}from"./vendor-core-DfaOB3Rn.js";import{c as k}from"./useAsmr-CrshwDPO.js";import{a as g}from"./MediaCard-B1llLoho.js";import{u as d}from"./usePopup-DS9jMzp6.js";const y=({data:o,anchorRect:n,bookmarked:a,onToggleBookmark:l,onMouseEnter:p,onMouseLeave:c,onRequestClose:u})=>{const{data:r,isLoading:m}=k(o.rjCode||null),e=r?.tracks.length??0,i=e>0,t=!m,s=[{icon:"headphones",label:t?i?`${e} track${e===1?"":"s"}`:"No tracks":"Loading tracks…"}];return o.rating&&s.push({label:o.rating.toUpperCase()}),o.isAdult&&s.push({label:"18+"}),o.progressLabel&&s.push({icon:"bookmark",label:o.progressLabel}),b(g,{anchorRect:n,title:o.title,subtitle:o.rjCode,cover:o.thumbnail,meta:s,synopsis:!t&&!r?.description?"Loading description…":r?.description??"No description available.",primaryAction:{to:o.listenTarget,label:i?"Listen now":t?"No tracks":"Loading…",icon:"play",disabled:!i},secondaryAction:{to:o.listenTarget,label:"Details"},bookmarked:a,bookmarkLabel:"Bookmark",onToggleBookmark:l,onMouseEnter:p,onMouseLeave:c,onRequestClose:u})},C=()=>d();export{y as A,C as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as u,c as f,u as c,a as g}from"./vendor-query-BBT5_sHx.js";import{q as v,t as b,i as o,A as s}from"./index-
|
|
1
|
+
import{b as u,c as f,u as c,a as g}from"./vendor-query-BBT5_sHx.js";import{q as v,t as b,i as o,A as s}from"./index-D0DdVatn.js";import{T as L}from"./vendor-core-DfaOB3Rn.js";import{i as d}from"./libraryInvalidation-BFqNv8Cx.js";const q=300*1e3,h={mangadex:"https://mangadex.org/",mangapill:"https://www.mangapill.com/"},P=(e,a)=>`/api/proxy?url=${encodeURIComponent(a)}&referer=${encodeURIComponent(h[e])}`,B=(e,a)=>a&&(e==="mangapill"?P(e,a):a),N=(e,a=!0)=>{const{provider:t,query:r,page:i,sort:n,status:m,type:p,rating:y,mature:l}=e;return u({queryKey:[v.mangaBrowse,t,r,i,n,m,p,y,l],queryFn:()=>b.manga.search.query({provider:t,q:r.trim()||void 0,page:i,sort:n||void 0,status:m||void 0,type:p||void 0,rating:y||void 0,mature:l?"1":void 0}),staleTime:q,enabled:a})},A=(e,a=14)=>{const{provider:t,query:r,sort:i,status:n,type:m,rating:p,mature:y}=e;return f({queryKey:[v.mangaBrowseInfinite,t,r,i,n,m,p,y,a],queryFn:({pageParam:l=1})=>b.manga.search.query({provider:t,q:r.trim()||void 0,page:l,limit:a,sort:i||void 0,status:n||void 0,type:m||void 0,rating:p||void 0,mature:y?"1":void 0}),initialPageParam:1,getNextPageParam:(l,M)=>l.hasNext?M.length+1:void 0,staleTime:q,enabled:!0})},I=(e,a,t="safe",r=!1)=>u({queryKey:[v.mangaDetail,e,a,t,r],queryFn:()=>b.manga.info.query({provider:e||"",id:a||"",rating:t,mature:r?"1":void 0}),enabled:!!e&&!!a,staleTime:q}),Q=(e,a,t)=>u({queryKey:[v.mangaPages,e,a],queryFn:()=>b.manga.pages.query({provider:e||"",id:a||""}),enabled:!!e&&!!a,staleTime:1800*1e3}),w=()=>{const e=o(),a=u({...e.manga.trending.queryOptions(),staleTime:600*1e3,retry:1});return{...a,data:a.data}},x=e=>e.contentRating==="erotica"||e.contentRating==="pornographic"||e.type==="doujinshi";function _(e,a){const t=e.titles??{};return a==="englishName"?t.en||e.title:a==="nativeName"&&(t.native||t.romaji||e.altTitle)||e.title}function D(e){return{englishName:e.titles?.en??e.title,nativeName:e.titles?.native??e.titles?.romaji??e.altTitle??void 0}}const S=/^anilist:ch:(\d+)$/;function K(e){if(!e)return null;const a=S.exec(e.trim());if(!a)return null;const t=Number.parseInt(a[1],10);return Number.isFinite(t)?t:null}function U(e,a){const t=String(a),r=e.find(i=>(i.number??"").trim()===t);return r||(e.find(i=>{const n=Number.parseFloat((i.number??"").trim());return Number.isFinite(n)&&n===a})??null)}const j=["Reading","Completed","On-Hold","Dropped","Planned"],F=(e,a)=>`${e.toLowerCase()}:${a}`,H=(e="All",a=1,t=24)=>{const r=o();return u(r.mangaLibrary.list.queryOptions({status:e,page:a,limit:t}))},R=()=>{const e=o();return u({...e.mangaLibrary.ids.queryOptions(),staleTime:1e3*60})},V=e=>{const a=o();return u({...a.mangaLibrary.check.queryOptions({id:e??""}),enabled:!!e,staleTime:1e3*60})},Y=e=>{const a=o();return u({...a.mangaLibrary.entry.queryOptions({id:e??""}),enabled:!!e,staleTime:1e3*60})},z=()=>{const e=o(),a=c();return g(e.mangaLibrary.link.mutationOptions({onSuccess:t=>{s.success(t?.progressMigrated?"Linked - chapter progress carried over":"Linked to AniList entry"),a.invalidateQueries(e.mangaLibrary.pathFilter()),d(a,"manga")},onError:t=>{s.error(`Failed to link: ${t.message}`)}}))},G=(e=24)=>{const a=o();return u(a.mangaProgress.continueReading.queryOptions({limit:e}))},J=e=>{const a=o();return u({...a.mangaProgress.byManga.queryOptions({mangaId:e??""}),enabled:!!e})},k=()=>{const e=o(),a=c();return g(e.mangaLibrary.add.mutationOptions({onSuccess:(t,r)=>{r.silent||s.success("Bookmarked"),a.invalidateQueries(e.mangaLibrary.pathFilter()),a.invalidateQueries({queryKey:[v.mangaLibrary]})},onError:t=>{s.error(`Failed to bookmark: ${t.message}`)}}))},C=()=>{const e=o(),a=c();return g(e.mangaLibrary.remove.mutationOptions({onSuccess:()=>{s.success("Bookmark removed"),a.invalidateQueries(e.mangaLibrary.pathFilter()),d(a,"manga")},onError:t=>{s.error(`Failed to remove: ${t.message}`)}}))},W=()=>{const e=o(),a=c();return g(e.mangaLibrary.setStatus.mutationOptions({onSuccess:()=>{s.success("Status updated"),a.invalidateQueries(e.mangaLibrary.pathFilter()),d(a,"manga")},onError:t=>{s.error(`Failed to update status: ${t.message}`)}}))},X=()=>{const e=o(),a=c();return g(e.mangaProgress.save.mutationOptions({onSuccess:()=>{d(a,"manga",!0),a.invalidateQueries(e.mangaProgress.pathFilter())}}))},Z=()=>{const e=o(),a=c();return g(e.mangaProgress.remove.mutationOptions({onSuccess:()=>{s.success("Progress reset"),d(a,"manga",!0),a.invalidateQueries(e.mangaProgress.pathFilter())},onError:t=>{s.error(`Failed to reset progress: ${t.message}`)}}))},ee=()=>{const e=o(),a=c();return g(e.mangaLibrary.batchStatus.mutationOptions({onSuccess:t=>{s.success(`Status updated for ${t.updated??0} items`),a.invalidateQueries(e.mangaLibrary.pathFilter()),d(a,"manga")},onError:t=>{s.error(`Failed to update statuses: ${t.message}`)}}))},ae=()=>{const e=o(),a=c();return g(e.mangaLibrary.removeMany.mutationOptions({onSuccess:t=>{const r=t.removed??0;s.success(`Removed ${r} ${r===1?"item":"items"} from reading list`),a.invalidateQueries(e.mangaLibrary.pathFilter()),d(a,"manga")},onError:t=>{s.error(`Failed to remove: ${t.message}`)}}))},te=()=>{const e=o(),a=c();return g(e.mangaProgress.removeMany.mutationOptions({onSuccess:t=>{const r=t.removed??0;s.success(`Reset progress for ${r} ${r===1?"item":"items"}`),d(a,"manga",!0),a.invalidateQueries(e.mangaProgress.pathFilter())},onError:t=>{s.error(`Failed to reset progress: ${t.message}`)}}))},re=()=>{const e=k(),a=C(),{data:t}=R(),r=L(()=>new Set(t?.ids||[]),[t]);return{toggle:n=>{const m=F(n.provider,n.id);r.has(m)?a.mutate(m):e.mutate({provider:n.provider,mangaId:n.id,title:n.title,cover:n.cover,altTitle:n.altTitle,contentRating:n.contentRating})},bookmarkedIds:r,pending:e.isPending||a.isPending}};export{te as A,Z as B,j as M,A as a,B as b,D as c,G as d,w as e,N as f,Y as g,k as h,x as i,z as j,I as k,V as l,F as m,J as n,C as o,W as p,K as q,_ as r,U as s,Q as t,re as u,P as v,X as w,H as x,ee as y,ae as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as k}from"./vendor-core-DfaOB3Rn.js";import{k as T,r as d}from"./useMangaLibrary-
|
|
1
|
+
import{u as k}from"./vendor-core-DfaOB3Rn.js";import{k as T,r as d}from"./useMangaLibrary-BPSi9vcc.js";import{d as y}from"./index-D0DdVatn.js";import{a as h}from"./MediaCard-B1llLoho.js";import{u as M}from"./usePopup-DS9jMzp6.js";const B=({data:e,anchorRect:i,bookmarked:l,onToggleBookmark:n,onMouseEnter:p,onMouseLeave:c,onRequestClose:m})=>{const{data:o,isLoading:u}=T(e.provider,e.mangaId,e.rating||"safe",e.mature||!1),{titlePreference:g}=y(),s=o?.chapters.length??0,a=d({title:e.title,altTitle:o?.altTitle??e.altTitle},g),t=[],r=[o?.status,o?.type].filter(Boolean).join(" · ");r&&t.push({icon:"book",label:r}),s>0&&t.push({label:`${s} chapter${s===1?"":"s"}`}),e.progressLabel&&t.push({icon:"bookmark",label:e.progressLabel});const b=Array.isArray(o?.genres)?o.genres.filter(Boolean).slice(0,4).map(f=>f):[];return k(h,{anchorRect:i,title:a,subtitle:o?.altTitle&&o.altTitle!==a?`Also known as: ${o.altTitle}`:void 0,loading:u,meta:t,genres:b,synopsis:o?.description?o.description:"No synopsis available.",primaryAction:{to:e.readTarget,label:"Read now",icon:"book"},secondaryAction:{to:`/manga/${e.provider}/${encodeURIComponent(e.mangaId)}`,label:"Read more"},bookmarked:l,bookmarkLabel:"Bookmark",onToggleBookmark:n,onMouseEnter:p,onMouseLeave:c,onRequestClose:m})},I=()=>M();export{B as M,I as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._controls_1ljql_1{display:flex;align-items:stretch;gap:1rem;flex-wrap:wrap;width:100%}._titleContainer_1ljql_9{display:flex;flex-direction:column;gap:.75rem}._scheduleInfo_1ljql_15{display:flex;gap:1rem;font-size:.95rem;color:var(--text-tertiary);align-items:center}._status_1ljql_23{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);padding:.35rem .85rem;border-radius:var(--radius-full);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}._nextEpisode_1ljql_35{background:#ffffff0d;color:var(--text-secondary);padding:.35rem .85rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:600;border:1px solid var(--glass-border)}._watchlistBtn_1ljql_45{background:#ffffff0d;color:var(--text-primary);border:1px solid rgba(255,255,255,.1);padding:.65rem 1.25rem;border-radius:var(--radius-full);font-weight:600;cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:.6rem;font-size:.85rem;flex:0 1 auto;min-width:120px;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}._watchlistBtn_1ljql_45:hover{background:#ffffff1f;border-color:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 12px #00000040}._watchlistBtn_1ljql_45._inList_1ljql_72{background:color-mix(in srgb,var(--color-success) 12%,transparent);border-color:color-mix(in srgb,var(--color-success) 35%,transparent);color:var(--color-success)}._watchlistBtn_1ljql_45._inList_1ljql_72:hover{background:color-mix(in srgb,var(--color-success) 18%,transparent);border-color:var(--color-success)}._queueBtn_1ljql_83{background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent-light)}._queueBtn_1ljql_83:hover{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent-lighter)}._queueActive_1ljql_95{background:color-mix(in srgb,var(--accent) 15%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:var(--accent-lighter)}._modeToggleBtn_1ljql_101{background:#ffffff0d;color:var(--text-primary);border-color:#ffffff1a;flex:0 1 auto}._modeToggleActive_1ljql_108{background:color-mix(in srgb,var(--color-info) 12%,transparent);border-color:color-mix(in srgb,var(--color-info) 45%,transparent);color:#dbeafe}._modeToggleActive_1ljql_108:hover{background:color-mix(in srgb,var(--color-info) 18%,transparent);border-color:color-mix(in srgb,var(--color-info) 65%,transparent)}._watchlistBtn_1ljql_45:disabled{opacity:.7;cursor:wait;transform:none}._watchlistBtn_1ljql_45:disabled:hover{transform:none}._markWatchedBtn_1ljql_129{background:color-mix(in srgb,var(--color-info) 8%,transparent);border-color:color-mix(in srgb,var(--color-info) 25%,transparent);color:#93c5fd;flex:0 1 auto;justify-content:center}._markWatchedBtn_1ljql_129:hover{background:color-mix(in srgb,var(--color-info) 14%,transparent);border-color:color-mix(in srgb,var(--color-info) 45%,transparent);color:#dbeafe}._markWatchedDone_1ljql_143{background:color-mix(in srgb,var(--color-success) 12%,transparent);border-color:color-mix(in srgb,var(--color-success) 35%,transparent);color:var(--color-success)}._markWatchedDone_1ljql_143:hover{background:color-mix(in srgb,var(--color-success) 18%,transparent);border-color:var(--color-success)}._streamPanel_1ljql_154{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.875rem 1rem;align-items:center;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--glass-shadow)}._streamPanel_1ljql_154 ._desktopEpisodeActions_1ljql_168{flex:0 0 auto;align-self:center;margin:0}._streamPanel_1ljql_154 ._sourceLoader_1ljql_174{grid-column:1 / -1;animation:none}._streamPanel_1ljql_154>:last-child:not(:first-child){grid-column:1 / -1}._streamPanel_1ljql_154 select{max-width:320px}._episodeActions_1ljql_187{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0 .25rem}._desktopEpisodeActions_1ljql_168{flex:1 1 320px;justify-content:flex-end;align-self:flex-end;margin:0}._mobileEpisodeActions_1ljql_201{margin:.5rem 0 .25rem}._episodeNavBtn_1ljql_205{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:.7rem 1rem;background:#ffffff0d;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:700;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}._episodeNavBtn_1ljql_205:hover:not(:disabled){border-color:var(--text-secondary);background:#ffffff14}._episodeNavBtn_1ljql_205:disabled{opacity:.45;cursor:not-allowed;transform:none}._episodeNavBtn_1ljql_205._primary_1ljql_235{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);border-color:transparent;color:#fff}._episodeNavBtn_1ljql_205._primary_1ljql_235:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-light) 0%,var(--accent) 100%)}._episodeNavBtn_1ljql_205._secondary_1ljql_245{background:#ffffff0a}._episodePickerBtn_1ljql_249{display:none}._queueCountdown_1ljql_253{position:absolute;left:50%;bottom:1.5rem;transform:translate(-50%);z-index:75;padding:.7rem 1rem;border:1px solid var(--glass-border);border-radius:var(--radius-md);background:#121216eb;color:#fff;font-weight:700;box-shadow:var(--glass-shadow)}._speedBoostBadge_1ljql_268{position:absolute;top:1.5rem;left:50%;transform:translate(-50%);z-index:75;display:flex;align-items:center;gap:.7rem;padding:.65rem 1rem;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:var(--radius-md);background:#121216eb;color:#f5f3ff;font-weight:800;letter-spacing:.06em;text-transform:none;box-shadow:var(--glass-shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}._speedBoostBadge_1ljql_268 span{line-height:1}._speedBoostBadge_1ljql_268 svg{display:block;flex-shrink:0}._videoContainer_1ljql_299{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;display:flex;justify-content:center;align-items:center;container-type:inline-size}._loadingOverlay_1ljql_312{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:10;background:#00000080;border-radius:inherit}._loadingDots_1ljql_326{display:flex;gap:10px}._dot_1ljql_331{width:12px;height:12px;border-radius:50%;background-color:var(--accent);animation:_bounce_1ljql_1 1.4s infinite ease-in-out both;box-shadow:0 0 10px var(--accent-glow)}._dot_1ljql_331:nth-child(1){animation-delay:-.32s}._dot_1ljql_331:nth-child(2){animation-delay:-.16s}._bufferingOverlay_1ljql_348{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:20}._bufferingSpinner_1ljql_357{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--accent);animation:_spin_1ljql_444 1s ease-in-out infinite}._videoIframe_1ljql_366{width:100%;height:100%;border:none;position:absolute;top:0;left:0;object-fit:cover;border-radius:inherit}._videoContainer_1ljql_299 video{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:contain;background-color:#000;border-radius:inherit}._videoContainer_1ljql_299 video._videoElementHidden_1ljql_389{opacity:0;pointer-events:none}._upscalerCanvas_1ljql_394{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;object-fit:contain;opacity:0;pointer-events:none;border-radius:inherit}._upscalerCanvas_1ljql_394._upscalerActive_1ljql_407{opacity:1}._upscalerStatusBadge_1ljql_411{position:absolute;top:12px;right:12px;z-index:4;background:#000000a6;color:var(--text-primary);font-size:.75rem;font-weight:600;padding:.35em .8em;border-radius:999px;border:1px solid var(--glass-border);pointer-events:none}._subtitleOverlay_1ljql_426{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:hidden;border-radius:inherit}._sourceLoader_1ljql_174{padding:.75rem;display:flex;justify-content:center}._spinner_1ljql_444{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-left-color:var(--accent);border-radius:50%;animation:_spin_1ljql_444 1s linear infinite}@media(max-width:768px){._titleContainer_1ljql_9 h1{font-size:1.25rem}._episodeActions_1ljql_187{margin-top:.25rem}._controls_1ljql_1{gap:.5rem}._watchlistBtn_1ljql_45,._queueBtn_1ljql_83,._markWatchedBtn_1ljql_129,._modeToggleBtn_1ljql_101{flex:1 1 calc(50% - .25rem);min-width:0;padding:.5rem .75rem;font-size:.78rem;gap:.4rem}._episodeNavBtn_1ljql_205{flex:1 1 calc(50% - .25rem);min-width:0;padding:.45rem .75rem;font-size:.8rem;min-height:44px}._episodePickerBtn_1ljql_249{display:inline-flex;flex-basis:100%;padding:.4rem .75rem;font-size:.78rem;min-height:44px}._desktopEpisodeActions_1ljql_168{display:none}._mobileEpisodeActions_1ljql_201{display:flex}._streamPanel_1ljql_154{grid-template-columns:minmax(0,1fr)}._errorOverlay_1ljql_505{padding:1rem;gap:.5rem;overflow-y:auto}._errorOverlay_1ljql_505 p{font-size:1rem}._retryButton_1ljql_515{padding:.5rem 1.25rem;font-size:.9rem;margin-top:0}}@media(min-width:769px){._mobileEpisodeActions_1ljql_201{display:none}}._detailsToggleBtn_1ljql_528{background:transparent;border:1px solid var(--border-accent);color:var(--accent-light);padding:.5rem .9rem;border-radius:var(--radius-full);cursor:pointer;font-size:.85rem;font-weight:700;transition:all var(--transition-fast);display:flex;align-items:center;gap:.4rem;margin-top:1rem;width:fit-content}._detailsToggleBtn_1ljql_528:hover{background:var(--accent-subtle);color:var(--accent-lighter);border-color:var(--accent)}._descriptionSection_1ljql_551{margin-top:1.75rem;padding:1.5rem;background:#ffffff05;border-radius:var(--radius-lg);border:1px solid var(--glass-border)}._descriptionSection_1ljql_551._synopsisFlat_1ljql_559{margin-top:0;padding:0;background:none;border:0;border-radius:0;min-width:0}._synopsisFlat_1ljql_559 p{max-width:80ch}._descriptionSection_1ljql_551 h3{font-size:.95rem;font-weight:800;margin-bottom:.85rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:.75rem}._descriptionSection_1ljql_551 h3:before{content:"";width:4px;height:16px;background:var(--accent);border-radius:var(--radius-full);box-shadow:0 0 10px var(--accent-glow)}._videoContainer_1ljql_299._fullscreenActive_1ljql_593{cursor:none;border-radius:0}._videoContainer_1ljql_299:fullscreen,._videoContainer_1ljql_299:-webkit-full-screen{width:100vw;height:100vh;border-radius:0}._videoContainer_1ljql_299:fullscreen video,._videoContainer_1ljql_299:fullscreen canvas,._videoContainer_1ljql_299:-webkit-full-screen video,._videoContainer_1ljql_299:-webkit-full-screen canvas{border-radius:0}._errorOverlay_1ljql_505{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#000c;color:#fff;z-index:30;padding:2rem;text-align:center;gap:1rem;border-radius:inherit}._errorOverlay_1ljql_505 p{margin:0;font-size:1.2rem;font-weight:500}._errorSubtext_1ljql_637{color:var(--text-tertiary)!important;font-size:.9rem!important}._retryButton_1ljql_515{background:var(--accent);color:var(--accent-text);border:none;padding:.6rem 2rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem;box-shadow:0 4px 12px var(--accent-glow)}._retryButton_1ljql_515:hover{background:var(--accent-light);transform:translateY(-2px)}._playerPageLayout_13s1u_1{display:grid;grid-template-columns:320px 1fr;gap:2.5rem;padding:2rem;width:100%;max-width:1800px;margin:0 auto;align-items:start;min-height:calc(100vh - var(--header-height));background-color:transparent;animation:_fadeIn_13s1u_1 .8s var(--ease-smooth)}._playerPageLayout_13s1u_1._noSidebar_13s1u_15{grid-template-columns:minmax(0,1fr)}._episodeSidebar_13s1u_19{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:visible;display:flex;flex-direction:column;box-shadow:var(--glass-shadow);animation:_slideUpIn_13s1u_1 .8s var(--ease-smooth)}._playerMain_13s1u_32{min-width:0;display:flex;flex-direction:column;gap:1.25rem;animation:_slideUpIn_13s1u_1 .8s .1s var(--ease-smooth) both}._videoPlayerWrapper_13s1u_40{width:100%;padding-top:56.25%;background-color:#000;border-radius:0;overflow:clip;isolation:isolate;position:relative;box-shadow:0 20px 50px #00000080;border:1px solid var(--glass-border)}._playerInfoHeader_13s1u_56{display:flex;gap:2rem;align-items:flex-start}._playerAnimeCard_13s1u_62{width:160px;flex-shrink:0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--glass-border);transform:translateZ(0);aspect-ratio:2/3;height:auto}._playerInfoContainer_13s1u_74{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:2rem;border-radius:var(--radius-2xl);box-shadow:var(--glass-shadow);display:flex;flex-direction:column}._infoColumns_13s1u_86{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem 2.5rem;border-top:1px solid var(--border-primary);padding-top:1.5rem;margin-top:1.5rem}@media(min-width:1100px){._infoColumns_13s1u_86:has(>:last-child:not(:first-child)){grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);align-items:start}}._playerAnimeCard_13s1u_62 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.8,.2,1)}._playerAnimeCard_13s1u_62:hover img{transform:scale(1.1)}._videoTitleSection_13s1u_114{flex:1;display:flex;flex-direction:column;justify-content:flex-start;gap:1.25rem}._videoTitleSection_13s1u_114 h1{margin:0;font-size:2.25rem;line-height:1.1;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}@keyframes _fadeIn_13s1u_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUpIn_13s1u_1{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1280px){._playerPageLayout_13s1u_1{grid-template-columns:280px 1fr;padding:1.5rem;gap:1.5rem}}@media(max-width:1024px){._playerPageLayout_13s1u_1{display:flex;flex-direction:column;gap:2rem}._episodeSidebar_13s1u_19{width:100%;height:auto;max-height:500px;position:static;order:2;overflow-y:auto;-webkit-overflow-scrolling:touch}._playerMain_13s1u_32{order:1;width:100%}._playerInfoHeader_13s1u_56{padding:0}}@media(max-width:768px){._playerPageLayout_13s1u_1{padding:1rem;gap:1.5rem}._episodeSidebar_13s1u_19{display:none}._playerMain_13s1u_32{gap:1.5rem}._videoPlayerWrapper_13s1u_40{border-radius:0}._playerInfoContainer_13s1u_74{border-radius:var(--radius-xl);padding:1.5rem}._playerInfoHeader_13s1u_56{flex-direction:row;align-items:flex-start;text-align:left;gap:1.5rem}._videoTitleSection_13s1u_114 h1{font-size:1.75rem}._playerAnimeCard_13s1u_62{width:100px}}@media(max-width:480px){._playerInfoHeader_13s1u_56{flex-direction:column;align-items:center;text-align:center}._playerAnimeCard_13s1u_62{width:120px}}@media(max-width:480px)and (orientation:portrait){._videoPlayerWrapper_13s1u_40{padding-top:100%;position:relative}}@media(min-width:481px)and (max-width:768px)and (orientation:portrait){._videoPlayerWrapper_13s1u_40{padding-top:75%;position:relative}}@media(max-width:900px)and (orientation:landscape){._playerPageLayout_13s1u_1{padding:0;gap:0}._videoPlayerWrapper_13s1u_40{border-radius:0;height:100vh;padding-top:0}._playerInfoContainer_13s1u_74{padding:1.5rem}}body.low-end ._playerPageLayout_13s1u_1,body.low-end ._episodeSidebar_13s1u_19,body.low-end ._playerInfoContainer_13s1u_74{animation:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;background:var(--bg-secondary)!important}body.low-end ._videoPlayerWrapper_13s1u_40{box-shadow:none!important;border-color:var(--border-primary)!important}body.low-end ._episodeSidebar_13s1u_19{background:var(--bg-secondary)!important}._theaterMode_13s1u_288{display:flex!important;justify-content:center!important;align-items:center!important;position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;min-height:100vh!important;max-width:none!important;padding:2.5rem!important;margin:0!important;background-color:var(--bg-main)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;animation:_fadeIn_13s1u_1 .4s var(--ease-smooth)!important;overflow:hidden!important;z-index:var(--z-overlay)!important}._theaterMode_13s1u_288 ._playerMain_13s1u_32{width:90%!important;max-width:1200px!important;height:auto!important;aspect-ratio:16/9!important;gap:0!important;margin:auto!important;padding:0!important;animation:_scaleUpIn_13s1u_1 .4s cubic-bezier(.25,1,.5,1)!important;position:relative!important;z-index:1!important}._theaterMode_13s1u_288 ._videoPlayerWrapper_13s1u_40{width:100%!important;height:100%!important;padding-top:0!important;border-radius:0!important;border-color:#ffffff26!important;box-shadow:0 20px 60px color-mix(in srgb,var(--accent) 15%,transparent),0 0 100px #000000e6!important;overflow:hidden!important;position:relative!important}@keyframes _scaleUpIn_13s1u_1{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}body.theater-mode header,body.theater-mode footer{display:none!important}body.theater-mode main{padding:0!important;max-width:none!important;margin:0!important;width:100vw!important;height:100vh!important}body.theater-mode{overflow:hidden!important;background:#000!important}@media(max-width:768px){._theaterMode_13s1u_288{padding:1rem!important}._theaterMode_13s1u_288 ._playerMain_13s1u_32{width:100%!important;max-width:none!important}}._shell_41rxp_1{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:clip;isolation:isolate;border-radius:0;container-type:inline-size;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media(max-width:480px)and (orientation:portrait){._shell_41rxp_1{aspect-ratio:1 / 1}}@media(min-width:481px)and (max-width:768px)and (orientation:portrait){._shell_41rxp_1{aspect-ratio:4 / 3}}._shell_41rxp_1:fullscreen,._shell_41rxp_1:-webkit-full-screen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0}._shell_41rxp_1:fullscreen,._shell_41rxp_1:fullscreen ._stage_41rxp_37,._shell_41rxp_1:fullscreen ._stage_41rxp_37>video,._shell_41rxp_1:fullscreen ._stage_41rxp_37>canvas,._shell_41rxp_1:fullscreen ._stage_41rxp_37>iframe,._shell_41rxp_1:-webkit-full-screen,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>video,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>canvas,._shell_41rxp_1:-webkit-full-screen ._stage_41rxp_37>iframe{border-radius:0!important}@media(max-width:900px)and (orientation:landscape){._shell_41rxp_1{aspect-ratio:auto;height:100vh;border-radius:0}}._stage_41rxp_37{position:absolute;inset:0;z-index:1;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._stage_41rxp_37>video,._stage_41rxp_37>canvas,._stage_41rxp_37>iframe{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;display:block;background:#000;border:none;border-radius:inherit;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._shellFill_41rxp_85{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}._shellFullscreen_41rxp_93,._shellFullscreen_41rxp_93 ._stage_41rxp_37,._shellFullscreen_41rxp_93 ._stage_41rxp_37>video,._shellFullscreen_41rxp_93 ._stage_41rxp_37>canvas,._shellFullscreen_41rxp_93 ._stage_41rxp_37>iframe{border-radius:0!important}._shellFullscreen_41rxp_93{width:100vw;height:100vh;aspect-ratio:auto}._uiLayer_41rxp_107{position:absolute;inset:0;z-index:50;pointer-events:none}._uiLayer_41rxp_107>*{pointer-events:auto}._volumeWrap_41rxp_118{display:flex;align-items:center;position:relative}._volumeSlider_41rxp_124{width:0;opacity:0;transform:scaleX(0);transform-origin:left center;transition:width .25s ease,opacity .25s ease,transform .25s ease;cursor:pointer;margin-left:8px;-webkit-appearance:none;appearance:none;background:transparent;height:24px;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._volumeWrap_41rxp_118[data-expanded=true] ._volumeSlider_41rxp_124{width:84px;opacity:1;transform:scaleX(1)}@media(hover:hover)and (pointer:fine){._volumeWrap_41rxp_118:hover ._volumeSlider_41rxp_124,._volumeSlider_41rxp_124:focus-visible{width:84px;opacity:1;transform:scaleX(1)}}._volumeSlider_41rxp_124::-webkit-slider-runnable-track{width:100%;height:4px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-percent, 0%),rgba(255,255,255,.2) var(--volume-percent, 0%),rgba(255,255,255,.2) 100%);border-radius:4px}._volumeSlider_41rxp_124::-moz-range-track{width:100%;height:4px;background:#fff3;border-radius:4px}._volumeSlider_41rxp_124::-moz-range-progress{height:4px;background:var(--accent);border-radius:4px}._volumeSlider_41rxp_124::-webkit-slider-thumb{-webkit-appearance:none;height:12px;width:12px;border-radius:50%;background:#fff;margin-top:-4px;box-shadow:0 0 5px #00000080}@media(pointer:coarse){._volumeWrap_41rxp_118[data-expanded=true] ._volumeSlider_41rxp_124{width:96px;height:32px}}._centerControls_bxt8c_1{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);display:flex;align-items:center;gap:3rem;gap:clamp(1rem,5cqw,3rem);z-index:10;pointer-events:auto;transition:transform .4s cubic-bezier(.2,.8,.2,1)}._centerSkipBtn_bxt8c_15{background:transparent;border:none;border-radius:50%;color:#ffffffe6;width:clamp(2.5rem,6.5cqw,3.5rem);height:clamp(2.5rem,6.5cqw,3.5rem);font-size:clamp(1.1rem,2.8cqw,1.8rem);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85))}._centerSkipBtn_bxt8c_15:hover{color:#fff;transform:scale(1.15);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85)) drop-shadow(0 0 14px var(--accent-glow))}._centerPlayPause_bxt8c_37{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:#fff;width:clamp(3rem,8cqw,5rem);height:clamp(3rem,8cqw,5rem);font-size:clamp(1.4rem,3.4cqw,2.3rem);cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85))}@media(pointer:coarse){._centerSkipBtn_bxt8c_15{width:clamp(2.75rem,7cqw,3.75rem);height:clamp(2.75rem,7cqw,3.75rem)}}._centerPlayPause_bxt8c_37:hover{transform:scale(1.08);filter:drop-shadow(0 2px 8px rgba(0,0,0,.85)) drop-shadow(0 0 16px var(--accent-glow))}._playIconOffset_bxt8c_65{transform:translate(3px)}._statusArea_1xccu_1{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;background:var(--bg-secondary);border:1px solid var(--border-primary);padding:.75rem 1.25rem;border-radius:var(--radius-lg);margin-top:.5rem;margin-bottom:0;color:var(--text-secondary);box-shadow:var(--shadow-lg);width:fit-content;max-width:100%;-webkit-user-select:none;user-select:none;flex-wrap:wrap}._toggleBtn_1xccu_20{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-secondary);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;padding:.15rem .25rem;border-radius:var(--radius-sm);transition:color var(--transition-fast);pointer-events:auto}._toggleBtn_1xccu_20:hover{color:var(--text-primary)}._toggleBtn_1xccu_20 svg{color:var(--accent)}._shortcuts_1xccu_46{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;padding-top:.6rem;border-top:1px solid var(--border-primary);width:100%}._shortcutGroup_1xccu_56{display:flex;gap:1rem;align-items:center;flex-wrap:nowrap}._shortcut_1xccu_46{display:flex;align-items:center;gap:.3rem;white-space:nowrap}._key_1xccu_70{background:#ffffff14;padding:.15rem .4rem;border-radius:5px;border:1px solid rgba(255,255,255,.1);font-weight:800;color:var(--text-primary);font-size:.75rem;min-width:1.4rem;height:1.4rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);box-shadow:0 1.5px #0000004d}._key_1xccu_70+._key_1xccu_70{margin-left:-.15rem}._label_1xccu_91{color:var(--text-tertiary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}@media(max-width:768px){._statusArea_1xccu_1{display:none}}._episodeListContainer_9tyin_1{display:flex;flex-direction:column;height:100%;min-height:0;background:transparent}._drawerContainer_9tyin_9{height:auto;min-height:100%}._episodeListHeader_9tyin_14{background:transparent;padding:var(--space-6);border-bottom:1px solid var(--glass-border)}._drawerHeader_9tyin_20{position:sticky;top:0;z-index:5;background:#0c0c0ffa;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}._episodeListTitle_9tyin_29{margin:0 0 var(--space-5) 0;font-size:.85rem;font-weight:800;color:var(--text-tertiary);display:flex;align-items:center;gap:var(--space-3);letter-spacing:.1em;text-transform:uppercase}._rangeSelector_9tyin_41{display:flex;flex-wrap:wrap;gap:var(--space-2)}._rangeButton_9tyin_47{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-secondary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.8rem;font-weight:600;transition:all var(--transition-fast);cursor:pointer}._rangeButton_9tyin_47:hover{border-color:var(--text-secondary);color:var(--text-primary);background:#ffffff1a}._rangeButton_9tyin_47:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._rangeButton_9tyin_47._active_9tyin_70{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}._episodeList_9tyin_1{flex:1;display:flex;flex-direction:column;padding:var(--space-4);overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.14) transparent}._drawerList_9tyin_89{overflow:visible;-webkit-overflow-scrolling:auto;touch-action:pan-y}._episodeList_9tyin_1::-webkit-scrollbar{width:6px}._episodeList_9tyin_1::-webkit-scrollbar-track{background:transparent}._episodeList_9tyin_1::-webkit-scrollbar-thumb{background:#ffffff24;background-clip:padding-box;border-radius:var(--radius-full);border:2px solid transparent}._episodeList_9tyin_1:hover::-webkit-scrollbar-thumb{background-color:#ffffff47}._episodeList_9tyin_1::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}._episodeItem_9tyin_118{padding:var(--space-4) var(--space-5);margin-bottom:var(--space-2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);color:var(--text-secondary);font-weight:600;display:flex;justify-content:space-between;align-items:center;font-size:.9rem;border:1px solid transparent}._episodeItem_9tyin_118:hover{background:#ffffff0d;color:var(--text-primary);transform:translate(6px);border-color:var(--glass-border)}._episodeItem_9tyin_118:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._episodeItem_9tyin_118._watched_9tyin_145{color:var(--text-muted);opacity:.6}._episodeItem_9tyin_118._active_9tyin_70{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}._episodeItem_9tyin_118._active_9tyin_70:hover{transform:none;background:color-mix(in srgb,var(--accent) 15%,transparent)}._episodeItem_9tyin_118 span{display:flex;align-items:center;gap:var(--space-3)}._episodeThumb_9tyin_167{width:72px;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md);flex-shrink:0;background:#ffffff0f}._episodeText_9tyin_176{flex-direction:column!important;align-items:flex-start!important;gap:2px!important;min-width:0;flex:1}._episodeLabel_9tyin_184{font-weight:700;color:inherit}._episodeSub_9tyin_189{font-size:.78rem;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}._shell_cys6s_1{position:fixed;inset:0;z-index:var(--z-drawer);display:flex;align-items:flex-end;justify-content:center}._overlay_cys6s_10{position:absolute;inset:0;border:0;padding:0;background:#0000008f;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:_fadeIn_cys6s_1 .2s ease-out}._drawer_cys6s_21{position:relative;z-index:1;width:min(100vw,100%);max-height:86vh;background:#0c0c0ffa;border-radius:var(--radius-lg) var(--radius-lg) 0 0;border:1px solid var(--glass-border);border-bottom:none;display:flex;flex-direction:column;overflow:hidden;animation:_slideUpIn_cys6s_1 .25s ease-out}@keyframes _fadeIn_cys6s_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUpIn_cys6s_1{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}._handle_cys6s_56{width:52px;height:5px;border-radius:999px;background:#ffffff2e;margin:.7rem auto 0}._header_cys6s_64{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1rem .9rem;border-bottom:1px solid var(--glass-border)}._headerCopy_cys6s_73{display:flex;flex-direction:column;gap:.25rem}._kicker_cys6s_79{color:var(--text-tertiary);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}._title_cys6s_87{margin:0;font-size:1.1rem;font-weight:800;color:var(--text-primary)}._closeBtn_cys6s_94{width:38px;height:38px;border-radius:999px;border:1px solid var(--glass-border);background:#ffffff0d;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}._closeBtn_cys6s_94:hover{background:#ffffff1a}._closeBtn_cys6s_94:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._body_cys6s_116{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}._sourceSelectionContainer_1am19_1{display:flex;flex-direction:column;gap:1.5rem;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);padding:2rem;border-radius:var(--radius-xl);width:100%}._providerSelectContainer_1am19_14{display:flex;flex-direction:column;gap:1rem;width:100%}._providerSelect_1am19_14,._sourceSelect_1am19_1{height:44px;padding:0 1.25rem;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-primary);font-size:.95rem;font-family:inherit;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2371717a' stroke-width='2' viewBox='0 0 12 12'%3E%3Cpolyline points='3 5 6 8 9 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.25rem center;transition:all var(--transition-fast);width:100%;max-width:400px}._providerSelect_1am19_14:hover,._sourceSelect_1am19_1:hover{border-color:var(--border-secondary);background-color:var(--bg-elevated)}._providerSelect_1am19_14:focus,._sourceSelect_1am19_1:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}._providerSelect_1am19_14 option,._sourceSelect_1am19_1 option{background:var(--bg-tertiary);color:var(--text-primary)}._sourceSelectionContainer_1am19_1 h4,._providerSelectContainer_1am19_14 h4{margin:0;color:var(--text-tertiary);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em}._sourceButtons_1am19_70{display:flex;flex-wrap:wrap;gap:.75rem}._sourceButton_1am19_70{background:#ffffff0d;color:var(--text-secondary);border:1px solid var(--glass-border);padding:.75rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-size:.95rem;font-weight:600;transition:all var(--transition-normal)}._sourceButton_1am19_70:hover{background:#ffffff1a;border-color:var(--text-primary);color:var(--text-primary);transform:translateY(-2px)}._sourceButton_1am19_70._active_1am19_95{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}._theaterAmbient_x9t0o_1{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:scale(1.15)!important;pointer-events:none!important;z-index:0!important}body.low-end ._theaterAmbient_x9t0o_1{display:none!important}._row_1fq55_1{display:flex;flex-direction:column;gap:.3rem;padding:.5rem .75rem .6rem;min-width:0}._rowHeader_1fq55_9{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;min-width:0}._rowLabel_1fq55_17{font-size:.68rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._rowValue_1fq55_28{font-size:.72rem;font-weight:600;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}._slider_1fq55_36{width:100%;min-width:8rem;cursor:pointer;-webkit-appearance:none;appearance:none;background:transparent;height:1.375rem;margin:0;touch-action:pan-y}._slider_1fq55_36::-webkit-slider-runnable-track{width:100%;height:4px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--slider-percent, 0%),rgba(255,255,255,.25) var(--slider-percent, 0%),rgba(255,255,255,.25) 100%);border-radius:4px;border:none}._slider_1fq55_36::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;margin-top:-4px;box-shadow:0 0 8px #00000080}._slider_1fq55_36::-moz-range-track{width:100%;height:4px;background:#ffffff40;border-radius:4px;border:none}._slider_1fq55_36::-moz-range-progress{height:4px;background:var(--accent);border-radius:4px}._slider_1fq55_36::-moz-range-thumb{width:10px;height:10px;background-color:#fff;border:2px solid var(--accent);border-radius:50%;cursor:pointer;box-shadow:0 0 8px #00000080}._swatches_1fq55_99{display:flex;gap:.375rem;align-items:center}._swatch_1fq55_99{width:1.25rem;height:1.25rem;padding:0;border-radius:50%;cursor:pointer;flex:0 0 auto}._swatchPicked_1fq55_114{box-shadow:0 0 0 2px var(--panel-bg, #141416),0 0 0 3.5px var(--accent)}._colorInput_1fq55_120{width:1.75rem;height:1.25rem;padding:0;border:none;border-radius:.3rem;background:transparent;cursor:pointer;flex:0 0 auto}._segmented_1fq55_131{display:flex;gap:.25rem;background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.2rem}._segmented_1fq55_131 button{flex:1 1 0;min-width:0;background:transparent;border:none;border-radius:calc(var(--radius-sm) - 2px);color:var(--text-secondary);font-size:.72rem;font-weight:700;text-transform:capitalize;padding:.3rem .25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.3rem;white-space:nowrap}._segmented_1fq55_131 button:hover{color:var(--text-primary)}._segmented_1fq55_131 button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--accent-light)}@media(pointer:coarse){._row_1fq55_1{gap:.4rem;padding:.6rem .85rem .7rem}._slider_1fq55_36{height:1.875rem}._slider_1fq55_36::-webkit-slider-thumb{width:16px;height:16px;margin-top:-6px}._slider_1fq55_36::-moz-range-thumb{width:14px;height:14px}._swatch_1fq55_99{width:1.5rem;height:1.5rem}._segmented_1fq55_131 button{padding:.5rem .25rem;min-height:2.5rem}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{u as n,A as S,d as L,h as
|
|
1
|
+
import{u as n,A as S,d as L,h as $,q as T,T as pe,$ as Pt}from"./vendor-core-DfaOB3Rn.js";import{M as at,B as te,S as _e,i as At,Y as It,t as nt,q as de,W as Mt,g as $t}from"./index-D0DdVatn.js";import{I as U}from"./vendor-icons-DrybRNxP.js";import{u as Ft}from"./vendor-query-BBT5_sHx.js";import{a as qt}from"./playbackCompletion-IPHm9fp5.js";const Dt="_controls_1ljql_1",Rt="_titleContainer_1ljql_9",jt="_scheduleInfo_1ljql_15",Ot="_status_1ljql_23",Ht="_nextEpisode_1ljql_35",Vt="_watchlistBtn_1ljql_45",Wt="_inList_1ljql_72",zt="_queueBtn_1ljql_83",Ut="_queueActive_1ljql_95",Kt="_modeToggleBtn_1ljql_101",Xt="_modeToggleActive_1ljql_108",Gt="_markWatchedBtn_1ljql_129",Qt="_markWatchedDone_1ljql_143",Yt="_streamPanel_1ljql_154",Jt="_desktopEpisodeActions_1ljql_168",Zt="_sourceLoader_1ljql_174",en="_episodeActions_1ljql_187",tn="_mobileEpisodeActions_1ljql_201",nn="_episodeNavBtn_1ljql_205",rn="_primary_1ljql_235",on="_secondary_1ljql_245",sn="_episodePickerBtn_1ljql_249",an="_queueCountdown_1ljql_253",cn="_speedBoostBadge_1ljql_268",ln="_videoContainer_1ljql_299",un="_loadingOverlay_1ljql_312",dn="_loadingDots_1ljql_326",fn="_dot_1ljql_331",pn="_bounce_1ljql_1",mn="_bufferingOverlay_1ljql_348",hn="_bufferingSpinner_1ljql_357",yn="_spin_1ljql_444",gn="_videoIframe_1ljql_366",vn="_videoElementHidden_1ljql_389",bn="_upscalerCanvas_1ljql_394",_n="_upscalerActive_1ljql_407",wn="_upscalerStatusBadge_1ljql_411",Sn="_subtitleOverlay_1ljql_426",Cn="_spinner_1ljql_444",kn="_errorOverlay_1ljql_505",En="_retryButton_1ljql_515",xn="_detailsToggleBtn_1ljql_528",Ln="_descriptionSection_1ljql_551",Tn="_synopsisFlat_1ljql_559",Nn="_fullscreenActive_1ljql_593",Bn="_errorSubtext_1ljql_637",So={controls:Dt,titleContainer:Rt,scheduleInfo:jt,status:Ot,nextEpisode:Ht,watchlistBtn:Vt,inList:Wt,queueBtn:zt,queueActive:Ut,modeToggleBtn:Kt,modeToggleActive:Xt,markWatchedBtn:Gt,markWatchedDone:Qt,streamPanel:Yt,desktopEpisodeActions:Jt,sourceLoader:Zt,episodeActions:en,mobileEpisodeActions:tn,episodeNavBtn:nn,primary:rn,secondary:on,episodePickerBtn:sn,queueCountdown:an,speedBoostBadge:cn,videoContainer:ln,loadingOverlay:un,loadingDots:dn,dot:fn,bounce:pn,bufferingOverlay:mn,bufferingSpinner:hn,spin:yn,videoIframe:gn,videoElementHidden:vn,upscalerCanvas:bn,upscalerActive:_n,upscalerStatusBadge:wn,subtitleOverlay:Sn,spinner:Cn,errorOverlay:kn,retryButton:En,detailsToggleBtn:xn,descriptionSection:Ln,synopsisFlat:Tn,fullscreenActive:Nn,errorSubtext:Bn},Pn="_playerPageLayout_13s1u_1",An="_noSidebar_13s1u_15",In="_episodeSidebar_13s1u_19",Mn="_playerMain_13s1u_32",$n="_videoPlayerWrapper_13s1u_40",Fn="_playerInfoHeader_13s1u_56",qn="_playerAnimeCard_13s1u_62",Dn="_playerInfoContainer_13s1u_74",Rn="_infoColumns_13s1u_86",jn="_videoTitleSection_13s1u_114",On="_theaterMode_13s1u_288",Co={playerPageLayout:Pn,noSidebar:An,episodeSidebar:In,playerMain:Mn,videoPlayerWrapper:$n,playerInfoHeader:Fn,playerAnimeCard:qn,playerInfoContainer:Dn,infoColumns:Rn,videoTitleSection:jn,theaterMode:On},Hn="_shell_41rxp_1",Vn="_stage_41rxp_37",Wn="_shellFill_41rxp_85",zn="_shellFullscreen_41rxp_93",Un="_uiLayer_41rxp_107",Kn="_volumeWrap_41rxp_118",Xn="_volumeSlider_41rxp_124",ae={shell:Hn,stage:Vn,shellFill:Wn,shellFullscreen:zn,uiLayer:Un,volumeWrap:Kn,volumeSlider:Xn},Gn={fontSize:"subtitleFontSize",position:"subtitlePosition",bgOpacity:"subtitleBgOpacity",bgColor:"subtitleBgColor",textColor:"subtitleTextColor",edge:"subtitleEdge",bold:"subtitleBold"},J={fontSize:1.8,position:0,bgOpacity:.5,bgColor:"#000000",textColor:"#ffffff",edge:"shadow",bold:!1},Ne=(e,r,t)=>Math.max(r,Math.min(t,e)),Be=e=>typeof e=="string"&&/^#[0-9a-fA-F]{6}$/.test(e),ke=(e,r,t,s)=>{try{const o=localStorage.getItem(e);if(o===null)return r;const i=parseFloat(o);return Number.isFinite(i)?Ne(i,t,s):r}catch{return r}};function Qn(){let e=J.edge,r=J.bgColor,t=J.textColor,s=J.bold;try{const o=localStorage.getItem("subtitleEdge");(o==="shadow"||o==="outline"||o==="none")&&(e=o);const i=localStorage.getItem("subtitleBgColor");Be(i)&&(r=i);const d=localStorage.getItem("subtitleTextColor");Be(d)&&(t=d);const g=localStorage.getItem("subtitleBold");g!==null&&(s=g==="true")}catch{}return{fontSize:ke("subtitleFontSize",J.fontSize,.5,10),position:ke("subtitlePosition",J.position,0,100),bgOpacity:ke("subtitleBgOpacity",J.bgOpacity,0,1),bgColor:r,textColor:t,edge:e,bold:s}}function ct(e,r){const t=`rgba(0, 0, 0, ${Ne(r,0,1)})`;if(!Be(e))return t;const s=parseInt(e.slice(1,3),16),o=parseInt(e.slice(3,5),16),i=parseInt(e.slice(5,7),16);return`rgba(${s}, ${o}, ${i}, ${Ne(r,0,1)})`}function it(e,r){return e==="none"?r<=0?"0 1px 3px rgba(0, 0, 0, 0.9)":"none":e==="outline"?["-1px 0 0 black","1px 0 0 black","0 -1px 0 black","0 1px 0 black","-1px -1px 0 black","1px -1px 0 black","-1px 1px 0 black","1px 1px 0 black","0 0 6px rgba(0, 0, 0, 0.9)"].join(", "):"0 0 4px black, 0 1px 2px rgba(0, 0, 0, 0.8)"}function ko(e){return`
|
|
2
2
|
video::cue {
|
|
3
3
|
font-size: ${e.fontSize}rem !important;
|
|
4
4
|
color: ${e.textColor} !important;
|
|
@@ -7,4 +7,4 @@ import{u as n,A as S,d as L,h as M,q as T,T as pe,$ as Pt}from"./vendor-core-Dfa
|
|
|
7
7
|
text-shadow: ${it(e.edge,e.bgOpacity)} !important;
|
|
8
8
|
}
|
|
9
9
|
`}function Eo(e){return[`font-size: ${e.fontSize}rem`,`color: ${e.textColor}`,`background-color: ${ct(e.bgColor,e.bgOpacity)}`,`font-weight: ${e.bold?"700":"400"}`,`text-shadow: ${it(e.edge,e.bgOpacity)}`,"padding: 0.2em 0.5em","border-radius: 0.25em","text-align: center","position: absolute","left: 50%","transform: translateX(-50%)","max-width: 92%","white-space: pre-wrap","overflow-wrap: break-word","line-height: 1.4"].join(`;
|
|
10
|
-
`)+";"}const Yn=new Set(["b","i","u","strong","em"]);function xo(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/<(\/?)([a-zA-Z]+)>/g,(t,s,o)=>Yn.has(o.toLowerCase())?`<${s}${o.toLowerCase()}>`:t)}function Lo(e){return e.replace(/<[^>]*>/g,"")}const To=["#ffffff","#ffff00","#7CFC00","#00e5ff","#ff9ff3","#ffa502"],No=["#000000","#1e272e","#2f3542","#3d0c02","#0c3d2e","#ffffff"];function Bo(e,r){const t=Number.isFinite(e)?e*16:J.fontSize*16;return!Number.isFinite(r)||r<=0?t/16:Math.min(t,Math.max(13,r*.07))/16}function Po(e){const r=Math.abs(e/1e3).toFixed(1);return e>0?`+${r}s`:e<0?`-${r}s`:"0.0s"}function qo(e,r){const t=e.clientWidth||0,s=e.clientHeight||0,o=e.videoWidth>0&&e.videoHeight>0?e.videoWidth/e.videoHeight:0;let i=s;o>0&&t>0&&s>0&&(i=t/s>o?s:t/o);const d=Math.max(0,(s-i)/2),g=Math.max(0,Math.min(100,Number(r)||0))/100*i;return d+g}const Ao=({isOpen:e,onClose:r,title:t,heading:s,message:o,children:i})=>n(at,{isOpen:e,onClose:r,title:t,width:"sm",children:n("div",{style:{padding:"1rem",textAlign:"center"},children:[n(U,{name:"check-circle",size:48,style:{color:"var(--accent-lighter)",marginBottom:"0.5rem"}}),n("p",{style:{fontSize:"1.1rem",fontWeight:600},children:s}),n("p",{style:{color:"var(--text-secondary)"},children:o}),i&&n("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center",flexWrap:"wrap"},children:i})]})}),Io=({isOpen:e,onClose:r,title:t,message:s,resumeLabel:o="Resume",restartLabel:i="Start Over",onResume:d,onRestart:g})=>n(at,{isOpen:e,onClose:r,title:t,width:"sm",children:n("div",{style:{padding:"1rem",textAlign:"center"},children:[n("p",{children:s}),n("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[n(te,{variant:"secondary",onClick:g,children:i}),n(te,{onClick:d,children:o})]})]})}),Jn="_centerControls_bxt8c_1",Zn="_centerSkipBtn_bxt8c_15",er="_centerPlayPause_bxt8c_37",tr="_playIconOffset_bxt8c_65",fe={centerControls:Jn,centerSkipBtn:Zn,centerPlayPause:er,playIconOffset:tr},Mo=({isPlaying:e,onTogglePlay:r,onSkipBack:t,onSkipForward:s,skipSeconds:o=10})=>n("div",{className:fe.centerControls,onClick:i=>i.stopPropagation(),children:[n("button",{className:fe.centerSkipBtn,onClick:t,title:`Skip back ${o}s`,"aria-label":`Skip back ${o} seconds`,children:n(U,{name:"replay-10"})}),n("button",{className:fe.centerPlayPause,"data-speed-boost-ignore":"true",onClick:r,"aria-label":e?"Pause":"Play",children:e?n(U,{name:"pause"}):n(U,{name:"play",className:fe.playIconOffset})}),n("button",{className:fe.centerSkipBtn,onClick:s,title:`Skip forward ${o}s`,"aria-label":`Skip forward ${o} seconds`,children:n(U,{name:"forward-10"})})]}),$o=({visible:e,title:r,episode:t,onBack:s,classes:o})=>n("div",{className:`${o.overlay} ${e?"":o.hidden} `,"data-speed-boost-ignore":"true",style:{pointerEvents:"none",background:"none"},children:n("div",{className:o.top,onClick:i=>i.stopPropagation(),children:[n("button",{className:o.backBtn,onClick:i=>{i.stopPropagation(),s()},title:"Back","aria-label":"Back",children:n(U,{name:"chevron-left"})}),n("div",{className:o.titleInfo,children:[n("span",{className:o.title,children:r}),t&&n("span",{className:o.episode,children:t})]})]})}),Fo=({classes:e,videoRef:r,duration:t,formatTime:s,isScrubbing:o,buffered:i="auto",onSeek:d,onScrubStart:g,onScrubMove:a,onScrubEnd:p,timeLabelRef:b,children:u})=>{const E=S(null),C=S(null),l=S(null),f=S(null),w=S(null),v=S(!1),k=S(o);k.current=o;const m=S({onScrubMove:a,onScrubEnd:p});m.current={onScrubMove:a,onScrubEnd:p};const[B,P]=L({time:0,position:null});M(()=>{const h=r.current;if(!h)return;const _=W=>{const X=W/t*100||0;C.current&&(C.current.style.width=`${X}%`),l.current&&(l.current.style.left=`${X}%`),b?.current&&(b.current.innerText=`${s(W)} / ${s(t)}`)},D=()=>{o||_(h.currentTime)},$=()=>{if(i==="auto"&&h.buffered.length>0){const X=h.buffered.end(h.buffered.length-1)/t*100||0;f.current&&(f.current.style.width=`${X}%`)}};return _(h.currentTime),$(),h.addEventListener("timeupdate",D),h.addEventListener("progress",$),()=>{h.removeEventListener("timeupdate",D),h.removeEventListener("progress",$)}},[r,t,o,i,s,b]);const O=h=>{if(!E.current)return 0;const _=E.current.getBoundingClientRect();return Math.min(1,Math.max(0,(h-_.left)/_.width))},K=h=>{const _=h*t,D=_/t*100||0;C.current&&(C.current.style.width=`${D}%`),l.current&&(l.current.style.left=`${D}%`),b?.current&&(b.current.innerText=`${s(_)} / ${s(t)}`);const $=E.current?.getBoundingClientRect();P({time:_,position:$?h*$.width:null})};M(()=>{if(!o){w.current=null;return}const h=D=>{if(w.current!==null&&D.pointerId!==w.current||!t)return;const $=O(D.clientX);m.current.onScrubMove($);const W=$*t,X=W/t*100||0;C.current&&(C.current.style.width=`${X}%`),l.current&&(l.current.style.left=`${X}%`),b?.current&&(b.current.innerText=`${s(W)} / ${s(t)}`);const ne=E.current?.getBoundingClientRect();P({time:W,position:ne?$*ne.width:null})},_=D=>{w.current!==null&&D.pointerId!==w.current||(w.current=null,v.current=!0,D.pointerType!=="mouse"&&P({time:0,position:null}),m.current.onScrubEnd())};return document.addEventListener("pointermove",h),document.addEventListener("pointerup",_),document.addEventListener("pointercancel",_),()=>{document.removeEventListener("pointermove",h),document.removeEventListener("pointerup",_),document.removeEventListener("pointercancel",_)}},[o,t,s,b]);const H=h=>{if(h.pointerType==="mouse"&&h.button!==0||!r.current||!t)return;h.preventDefault(),w.current=h.pointerId;try{E.current?.setPointerCapture(h.pointerId)}catch{}k.current||g();const _=O(h.clientX);a(_),K(_)},N=h=>{if(!t||k.current||h.pointerType!=="mouse")return;const _=O(h.clientX);P({time:_*t,position:h.clientX-(E.current?.getBoundingClientRect().left??0)})},z=h=>{if(!(w.current!==null&&h.pointerId!==w.current)&&k.current){w.current=null,v.current=!0,h.pointerType!=="mouse"&&P({time:0,position:null});try{E.current?.hasPointerCapture(h.pointerId)&&E.current.releasePointerCapture(h.pointerId)}catch{}p()}};return n("div",{className:`${e.container} ${o&&e.scrubbing?e.scrubbing:""}`,ref:E,role:"slider","aria-label":"Seek","aria-valuemin":0,"aria-valuemax":Math.round(t||0),"aria-valuenow":Math.round((Number(C.current?.style.width?.replace("%",""))||0)*(t||0)/100),tabIndex:0,onClick:h=>{if(v.current){v.current=!1;return}!r.current||isNaN(t)||t===0||d(O(h.clientX))},onPointerDown:H,onPointerMove:N,onPointerUp:z,onPointerCancel:z,onMouseMove:h=>{if(o||!t)return;const _=O(h.clientX);P({time:_*t,position:h.clientX-(E.current?.getBoundingClientRect().left??0)})},onMouseLeave:()=>{o||P({time:0,position:null})},onKeyDown:h=>{if(!(!r.current||!t)&&(h.key==="ArrowRight"||h.key==="ArrowLeft")){h.preventDefault();const _=(h.key==="ArrowRight"?5:-5)/t,D=r.current.currentTime/t||0;d(Math.min(1,Math.max(0,D+_)))}},children:[B.position!==null&&n("div",{className:e.timeBubble,style:{left:B.position},children:s(B.time)}),n("div",{className:e.bar,children:[n("div",{className:e.buffered,ref:f,style:i==="full"?{width:"100%"}:void 0}),n("div",{className:e.watched,ref:C}),n("div",{className:e.thumb,ref:l,onMouseDown:h=>{h.preventDefault(),r.current&&(k.current||g())}}),u]})]})};function Ee(){try{if(typeof window>"u")return!1;const e=window.matchMedia?.("(pointer: coarse)").matches??!1,t=(navigator.maxTouchPoints??0)>0||"ontouchstart"in window;return e||t}catch{return!1}}function lt(){const[e,r]=L(Ee);return M(()=>{r(Ee());let t=null;const s=()=>r(Ee());try{t=window.matchMedia("(pointer: coarse)"),t.addEventListener?t.addEventListener("change",s):t.addListener(s)}catch{}return window.addEventListener("touchstart",s,{passive:!0,once:!0}),()=>{try{t&&(t.removeEventListener?t.removeEventListener("change",s):t.removeListener(s))}catch{}window.removeEventListener("touchstart",s)}},[]),e}const nr=450,Do=({muted:e,volume:r,volumeIcon:t,buttonClassName:s,sliderClassName:o,onToggleMute:i,onVolumeChange:d,onExpandedChange:g})=>{const a=lt(),[p,b]=L(!1),u=S(null),E=S(!1),C=S(null),l=T(m=>{b(m),g?.(m)},[g]);M(()=>()=>{u.current&&window.clearTimeout(u.current)},[]),M(()=>{if(!p)return;const m=B=>{C.current&&!C.current.contains(B.target)&&l(!1)};return document.addEventListener("pointerdown",m),()=>document.removeEventListener("pointerdown",m)},[p,l]);const f=e?0:r,w=()=>{E.current=!1,u.current&&window.clearTimeout(u.current),u.current=window.setTimeout(()=>{E.current=!0,l(!0)},nr)},v=()=>{u.current&&(window.clearTimeout(u.current),u.current=null)},k=m=>{if(m.stopPropagation(),E.current){E.current=!1;return}if(a){p?i():l(!0);return}i()};return n("div",{ref:C,className:ae.volumeWrap,"data-expanded":p?"true":"false",onContextMenu:m=>m.preventDefault(),children:[n("button",{type:"button",className:s,onClick:k,onPointerDown:w,onPointerUp:v,onPointerLeave:v,onContextMenu:m=>m.preventDefault(),"aria-label":e?"Unmute":"Mute","aria-expanded":p,children:t}),n("input",{type:"range",min:"0",max:"1",step:"0.05",value:f,onChange:m=>d(parseFloat(m.currentTarget.value)),onClick:m=>m.stopPropagation(),onPointerDown:m=>m.stopPropagation(),onContextMenu:m=>m.preventDefault(),className:`${ae.volumeSlider} ${o??""}`,style:{"--volume-percent":`${f*100}%`},"aria-label":"Volume"})]})},rt=280;function rr(e){return e?!!e.closest('button, input, select, textarea, a, [role="button"], [data-player-ui="true"]'):!1}const Ro=({player:e,topBar:r,centerControls:t,bottomBar:s,settingsPanel:o,overlays:i,isInteracting:d=!1,className:g,chromeDisabled:a=!1,onStageClick:p,children:b})=>{const{state:u,refs:E,actions:C}=e,l=E.playerContainerRef,w=lt()?5e3:3e3,v=S(0),k=S(null),m=S(d);m.current=d;const B=T(()=>{const N=C.inactivityTimer.current;N&&(window.clearTimeout(N),C.inactivityTimer.current=null)},[C]),P=T(()=>{B(),u.isPlaying&&(m.current||u.useNativeControls||(C.inactivityTimer.current=window.setTimeout(()=>{if(m.current)return;C.setShowControls(!1);const N=l.current;N&&u.isFullscreen&&(N.style.cursor="none")},w)))},[C,B,l,w,u.isFullscreen,u.isPlaying,u.useNativeControls]),O=T(()=>{const N=l.current;N&&(N.style.cursor="default"),!u.showControls&&!u.useNativeControls&&C.setShowControls(!0),P()},[C,l,P,u.showControls,u.useNativeControls]);M(()=>{if(u.showControls){if(!u.isPlaying){B();return}if(d||u.isScrubbing||u.showSettings||u.showVolumeSlider){C.setShowControls(!0),B();return}P()}},[C,B,d,P,u.isPlaying,u.isScrubbing,u.showControls,u.showSettings,u.showVolumeSlider]),M(()=>()=>B(),[B]);const K=T(N=>{const z=N.target;if(rr(z))return;p?.();const h=Date.now(),_=h-v.current<rt;if(v.current=h,_){k.current&&(window.clearTimeout(k.current),k.current=null),C.toggleFullscreen();return}k.current&&window.clearTimeout(k.current),k.current=window.setTimeout(()=>{k.current=null,C.setShowControls(!u.showControls),u.showControls?P():O()},rt)},[C,p,P,u.showControls,O]);M(()=>()=>{k.current&&window.clearTimeout(k.current)},[]);const H=u.showControls||u.isScrubbing||u.showSettings||u.showVolumeSlider;return n("div",{ref:l,className:`${ae.shell} ${u.isFullscreen?ae.shellFullscreen:""} ${g??""}`,onContextMenu:N=>N.preventDefault(),onPointerMove:N=>{N.pointerType==="mouse"&&O()},onMouseLeave:()=>{window.matchMedia?.("(hover: hover) and (pointer: fine)").matches&&u.isPlaying&&!m.current&&C.setShowControls(!1)},children:[n("div",{className:ae.stage,onClick:K,onContextMenu:N=>N.preventDefault(),children:b}),i,!a&&!u.useNativeControls&&n("div",{className:ae.uiLayer,onContextMenu:N=>N.preventDefault(),children:[n("div",{"data-player-ui":"true",children:r}),H&&t&&n("div",{"data-player-ui":"true",children:t}),n("div",{"data-player-ui":"true",children:s}),o&&n("div",{"data-player-ui":"true",children:o})]})]})},or=e=>(e.language??e.lang??"").toLowerCase(),sr=e=>(e.label??"").toLowerCase(),ar=e=>`${e.language??e.lang??""}|||${e.label??""}`,cr=e=>or(e).startsWith("en")||sr(e).includes("english");function jo(e,r){if(e.length===0||r?.enabled===!1)return-1;const t=r?.lastKey??null;if(t){const o=e.findIndex(i=>ar(i)===t);if(o>=0)return o}const s=e.findIndex(cr);return s>=0?s:0}const ir="_statusArea_1xccu_1",lr="_toggleBtn_1xccu_20",ur="_shortcuts_1xccu_46",dr="_shortcutGroup_1xccu_56",fr="_shortcut_1xccu_46",pr="_key_1xccu_70",mr="_label_1xccu_91",A={statusArea:ir,toggleBtn:lr,shortcuts:ur,shortcutGroup:dr,shortcut:fr,key:pr,label:mr},Oo=({showTheater:e=!0})=>{const[r,t]=L(!1);return n("div",{className:A.statusArea,children:[n("button",{type:"button",className:A.toggleBtn,onClick:()=>t(s=>!s),"aria-expanded":r,"aria-controls":"player-shortcuts",children:[n(U,{name:"keyboard",size:14}),n("span",{children:"Keyboard Shortcuts"}),r?n(U,{name:"chevron-up",size:12}):n(U,{name:"chevron-down",size:12})]}),r&&n("div",{id:"player-shortcuts",className:A.shortcuts,children:[n("div",{className:A.shortcutGroup,children:[n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"↑"}),n("span",{className:A.key,children:"↓"}),n("span",{className:A.label,children:"Volume"})]}),n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"←"}),n("span",{className:A.key,children:"→"}),n("span",{className:A.label,children:"Seek"})]})]}),n("div",{className:A.shortcutGroup,children:[n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"Space"}),n("span",{className:A.label,children:"Play/Pause"})]}),n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"F"}),n("span",{className:A.label,children:"Fullscreen"})]}),n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"M"}),n("span",{className:A.label,children:"Mute"})]}),e&&n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"T"}),n("span",{className:A.label,children:"Theater"})]}),n("div",{className:A.shortcut,children:[n("span",{className:A.key,children:"N"}),n("span",{className:A.label,children:"Next"})]})]})]})]})},hr="_episodeListContainer_9tyin_1",yr="_drawerContainer_9tyin_9",gr="_episodeListHeader_9tyin_14",vr="_drawerHeader_9tyin_20",br="_episodeListTitle_9tyin_29",_r="_rangeSelector_9tyin_41",wr="_rangeButton_9tyin_47",Sr="_active_9tyin_70",Cr="_episodeList_9tyin_1",kr="_drawerList_9tyin_89",Er="_episodeItem_9tyin_118",xr="_watched_9tyin_145",Lr="_episodeThumb_9tyin_167",Tr="_episodeText_9tyin_176",Nr="_episodeLabel_9tyin_184",Br="_episodeSub_9tyin_189",I={episodeListContainer:hr,drawerContainer:yr,episodeListHeader:gr,drawerHeader:vr,episodeListTitle:br,rangeSelector:_r,rangeButton:wr,active:Sr,episodeList:Cr,drawerList:kr,episodeItem:Er,watched:xr,episodeThumb:Lr,episodeText:Tr,episodeLabel:Nr,episodeSub:Br},Pr=({episodes:e,currentEpisode:r,watchedEpisodes:t=[],onEpisodeClick:s,variant:o="sidebar",title:i="Episodes",header:d})=>{const[g,a]=L(0),p=S(null),b=pe(()=>e.map(l=>typeof l=="string"?{id:l,label:`Episode ${l}`}:l),[e]),u=pe(()=>new Set(t),[t]);M(()=>{const l=p.current;if(!l)return;let f=l.parentElement;for(;f;){const k=window.getComputedStyle(f);if((k.overflowY==="auto"||k.overflowY==="scroll")&&f.scrollHeight>f.clientHeight)break;f=f.parentElement}if(!f)return;const w=f.getBoundingClientRect(),v=l.getBoundingClientRect();f.scrollTop+=v.top+v.height/2-(w.top+f.clientHeight/2)},[r,g]);const E=pe(()=>{if(b.length<=100)return[];const l=[];for(let f=0;f<b.length;f+=100){const w=f+1,v=Math.min(f+100,b.length);l.push(`${w}-${v}`)}return l},[b]),C=pe(()=>{if(E.length===0)return b;const l=E[g];if(!l)return b;const[f,w]=l.split("-"),v=parseInt(f,10),k=parseInt(w,10);return b.slice(v-1,k)},[b,E,g]);return n("div",{className:`${I.episodeListContainer} ${o==="drawer"?I.drawerContainer:""}`,children:[n("div",{className:`${I.episodeListHeader} ${o==="drawer"?I.drawerHeader:""}`,children:[d,n("h3",{className:I.episodeListTitle,children:i}),E.length>0&&n("div",{className:I.rangeSelector,children:E.map((l,f)=>n("button",{className:`${I.rangeButton} ${g===f?I.active:""}`,onClick:()=>a(f),children:l},l))})]}),n("div",{className:`${I.episodeList} ${o==="drawer"?I.drawerList:""}`,children:C.map(l=>{const f=l.id===r,w=u.has(l.id)||l.watched===!0;return n("div",{ref:f?p:void 0,className:`${I.episodeItem} ${w?I.watched:""} ${f?I.active:""}`,onClick:()=>s(l.id),children:[l.thumbnail&&n("img",{src:l.thumbnail,alt:"",loading:"lazy",decoding:"async",className:I.episodeThumb}),n("span",{className:I.episodeText,children:[n("span",{className:I.episodeLabel,children:l.label??`Episode ${l.id}`}),l.sublabel&&n("span",{className:I.episodeSub,children:l.sublabel})]})]},l.id)})})]})},Ho=({variant:e="sidebar",count:r=12})=>n("div",{className:`${I.episodeListContainer} ${e==="drawer"?I.drawerContainer:""}`,children:[n("div",{className:`${I.episodeListHeader} ${e==="drawer"?I.drawerHeader:""}`,children:[n("h3",{className:I.episodeListTitle,children:"Episodes"}),n("div",{className:I.rangeSelector,children:[n(_e,{width:"60px",height:"28px",variant:"rectangular"}),n(_e,{width:"60px",height:"28px",variant:"rectangular"}),n(_e,{width:"60px",height:"28px",variant:"rectangular"})]})]}),n("div",{className:`${I.episodeList} ${e==="drawer"?I.drawerList:""}`,children:Array.from({length:r}).map((t,s)=>n("div",{className:I.episodeItem,style:{border:"none",background:"transparent"},children:n(_e,{width:"120px",height:"1.2rem",variant:"text"})},s))})]}),qr="_shell_cys6s_1",Ar="_overlay_cys6s_10",Ir="_drawer_cys6s_21",Mr="_handle_cys6s_56",$r="_header_cys6s_64",Fr="_headerCopy_cys6s_73",Dr="_kicker_cys6s_79",Rr="_title_cys6s_87",jr="_closeBtn_cys6s_94",Or="_body_cys6s_116",Y={shell:qr,overlay:Ar,drawer:Ir,handle:Mr,header:$r,headerCopy:Fr,kicker:Dr,title:Rr,closeBtn:jr,body:Or};function Vo({isOpen:e,onClose:r,episodes:t,currentEpisode:s,watchedEpisodes:o=[],onEpisodeClick:i,title:d,header:g}){return M(()=>{if(!e)return;const a=b=>{b.key==="Escape"&&r()},p=document.body.style.overflow;return document.body.style.overflow="hidden",document.addEventListener("keydown",a),()=>{document.body.style.overflow=p,document.removeEventListener("keydown",a)}},[e,r]),e?Pt(n("div",{className:Y.shell,role:"dialog","aria-modal":"true","aria-label":"Episode picker",children:[n("button",{className:Y.overlay,type:"button",onClick:r,"aria-label":"Close episodes"}),n("aside",{className:Y.drawer,children:[n("div",{className:Y.handle}),n("div",{className:Y.header,children:[n("div",{className:Y.headerCopy,children:[n("span",{className:Y.kicker,children:"Episode picker"}),n("h3",{className:Y.title,children:"Choose an episode"})]}),n("button",{className:Y.closeBtn,type:"button",onClick:r,"aria-label":"Close",children:n(U,{name:"times"})})]}),n("div",{className:Y.body,children:n(Pr,{episodes:t,currentEpisode:s,watchedEpisodes:o,onEpisodeClick:i,variant:"drawer",title:d,header:g})})]})]}),document.body):null}const Hr="_sourceSelectionContainer_1am19_1",Vr="_providerSelectContainer_1am19_14",Wr="_providerSelect_1am19_14",zr="_sourceSelect_1am19_1",Ur="_sourceButtons_1am19_70",Kr="_sourceButton_1am19_70",Xr="_active_1am19_95",Wo={sourceSelectionContainer:Hr,providerSelectContainer:Vr,providerSelect:Wr,sourceSelect:zr,sourceButtons:Ur,sourceButton:Kr,active:Xr};function qe(){return document}function ut(e){const r=qe();if(document.fullscreenElement)return document.fullscreenElement;if(r.webkitFullscreenElement)return r.webkitFullscreenElement;const t=e;return t?.webkitDisplayingFullscreen?t:null}function ce(e){return ut(e)!==null}async function Gr(e,r){if(ut(r))return;const t=e;try{if(typeof e.requestFullscreen=="function"){await e.requestFullscreen();return}if(typeof t.webkitRequestFullscreen=="function"){await t.webkitRequestFullscreen();return}if(typeof t.webkitRequestFullScreen=="function"){await t.webkitRequestFullScreen();return}}catch{}const s=r;if(s&&typeof s.webkitEnterFullscreen=="function"){if(s.webkitSupportsFullscreen===!1)return;try{await s.webkitEnterFullscreen()}catch{}}}async function Qr(e){const r=qe();try{if(document.fullscreenElement&&typeof document.exitFullscreen=="function"){await document.exitFullscreen();return}if(r.webkitFullscreenElement&&typeof r.webkitExitFullscreen=="function"){await r.webkitExitFullscreen();return}}catch{}const t=e;if(t?.webkitDisplayingFullscreen&&typeof t.webkitExitFullscreen=="function"){try{t.webkitExitFullscreen()}catch{}return}try{typeof r.webkitCancelFullScreen=="function"?r.webkitCancelFullScreen():!document.fullscreenElement&&typeof document.exitFullscreen=="function"&&(document.fullscreenElement??r.webkitFullscreenElement)&&await document.exitFullscreen()}catch{}}async function Yr(e,r){!e&&!r||(ce(r)?await Qr(r):e&&await Gr(e,r))}function Jr(e,r){const t=()=>{try{r(ce(e()))}catch{}},s=qe(),o=t;s.addEventListener("fullscreenchange",t),s.addEventListener("webkitfullscreenchange",o),s.addEventListener("webkitbeginfullscreen",o,!0),s.addEventListener("webkitendfullscreen",o,!0);const i=e();return i?.addEventListener("webkitbeginfullscreen",o),i?.addEventListener("webkitendfullscreen",o),()=>{s.removeEventListener("fullscreenchange",t),s.removeEventListener("webkitfullscreenchange",o),s.removeEventListener("webkitbeginfullscreen",o,!0),s.removeEventListener("webkitendfullscreen",o,!0),i?.removeEventListener("webkitbeginfullscreen",o),i?.removeEventListener("webkitendfullscreen",o)}}const zo=({skipIntervals:e,showId:r,episodeNumber:t,episodeCount:s,sourceType:o,showMeta:i})=>{const d=$t(),g=qt(),a=S(null),p=S(null),b=S(null),u=S(!1),E=S(null),C=S(0),l=S({mouse:!1,keyboard:!1}),f=S(null),w=S(null),v=S(!1),k=S(Math.random().toString(36).substring(2)),[m,B]=L(!1),[P,O]=L(()=>{try{return localStorage.getItem("playerMuted")==="true"}catch{return!1}}),[K,H]=L(()=>{try{const c=parseFloat(localStorage.getItem("playerVolume")||"");return isNaN(c)?1:Math.max(0,Math.min(1,c))}catch{return 1}}),[N,z]=L(!1),[h,_]=L(0),[D,$]=L(!0),[W,X]=L(!1),[ne,dt]=L(localStorage.getItem("autoSkipEnabled")==="true"),[ft,Se]=L(null),[Z]=L(Qn),[pt,Ae]=L(Z.fontSize),[mt,Ie]=L(Z.position),[ht,Me]=L(Z.bgOpacity),[yt,$e]=L(Z.bgColor),[gt,Fe]=L(Z.textColor),[vt,De]=L(Z.edge),[bt,Re]=L(Z.bold),je=T((c,x)=>{if({fontSize:y=>typeof y!="number"?!1:(Ae(y),!0),position:y=>typeof y!="number"?!1:(Ie(y),!0),bgOpacity:y=>typeof y!="number"?!1:(Me(y),!0),bgColor:y=>typeof y!="string"?!1:($e(y),!0),textColor:y=>typeof y!="string"?!1:(Fe(y),!0),edge:y=>y!=="shadow"&&y!=="outline"&&y!=="none"?!1:(De(y),!0),bold:y=>typeof y!="boolean"?!1:(Re(y),!0)}[c](x))try{localStorage.setItem(Gn[c],String(x))}catch{}},[]),[_t,wt]=L([]),[St,Ct]=L(null),[kt,Et]=L(!1),[xt,Lt]=L(!1),[me,G]=L(!1),[Tt,he]=L(!1),[Nt,Oe]=L(()=>{try{return localStorage.getItem("playerUseNativeControls")==="true"}catch{return!1}}),re=S(!1),Ce=S(-1),ye=T(()=>{const c=a.current;return!r||!t||!i?.name?null:{showId:r,episodeNumber:t,episodeCount:s,currentTime:c?c.currentTime:0,duration:c?c.duration:0,showName:i.name,showThumbnail:i.thumbnail,nativeName:i.names?.native,englishName:i.names?.english,genres:Array.isArray(i.genres)?i.genres.map(x=>typeof x=="string"?x:x?.name).filter(Boolean):void 0,popularityScore:i.score,type:i.type,isPlaying:c?!c.paused:!0,sessionId:k.current,isAdult:i.isAdult}},[r,t,s,i]),R=T((c=!1,x=!1)=>{if(re.current)return!1;const q=ye();if(!q)return!1;const y=a.current;if(!y&&o!=="iframe")return!1;const F=y?y.currentTime:0;if(!x){if(F===0)return!1;const V=y?Math.abs(F-Ce.current):0;if(!c&&y&&F!==y.duration&&V<5)return!1}return q.currentTime=F,Ce.current=F,c?(async()=>{try{await nt.progress.updateProgress.mutate(q),d.invalidateQueries({queryKey:[de.videoSources,r,t]}),d.invalidateQueries({queryKey:[de.continueWatching]}),d.invalidateQueries({queryKey:[de.thisWeekSchedule]}),d.invalidateQueries(g.continueWatching.pathFilter())}catch(V){console.error("Failed to update progress:",V)}})():At("progress.updateProgress",q).catch(V=>console.error("Failed to update progress:",V)),!0},[ye,o,d,r,t,g.continueWatching]);M(()=>{const c=a.current;c&&(c.volume=K,c.muted=P)},[a,K,P]),M(()=>{const c=()=>{re.current||R(!0)};window.addEventListener("beforeunload",c);const x=E,q=b;return()=>{window.removeEventListener("beforeunload",c),re.current||R(!0),x.current&&clearTimeout(x.current),q.current&&clearTimeout(q.current)}},[R]);const He=T(()=>{$(!0),b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{$(!1)},1e3)},[$]),ge=T(()=>{const c=p.current;c&&Yr(c,a.current).catch(x=>{console.error(`Error attempting to toggle full-screen mode: ${x?.message} (${x?.name})`)})},[]),ve=T(()=>{a.current&&(a.current.paused?a.current.play().catch(()=>console.warn("Autoplay was prevented.")):(a.current.pause(),$(!0)))},[$]),oe=T(()=>{const c=a.current;if(!c)return;const x=l.current.mouse||l.current.keyboard;c.playbackRate=x?2:1},[]),ie=T(c=>{l.current.mouse!==c&&(l.current.mouse=c,he(c||l.current.keyboard),oe())},[oe]),se=T(c=>{l.current.keyboard!==c&&(l.current.keyboard=c,he(l.current.mouse||c),oe())},[oe]),le=T(c=>{a.current&&(a.current.currentTime+=c,E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{R(!1,!0)},1500),$(!0))},[R,$]),be=T(()=>{if(!a.current)return;const c=!a.current.muted;a.current.muted=c,O(c),localStorage.setItem("playerMuted",String(c)),!c&&a.current.volume===0&&(a.current.volume=.5,H(.5),localStorage.setItem("playerVolume",String(.5))),$(!0)},[$]);M(()=>{const c=()=>a.current,x=Jr(c,q=>{z(q),q&&$(!0)});return z(ce(c())),x},[$]),M(()=>{const c=q=>{if(!q.target.closest('input, textarea, button, select, a, [role="button"], [contenteditable="true"]')){if(q.code==="Space"){if(q.preventDefault(),v.current)return;v.current=!0,w.current&&clearTimeout(w.current),w.current=window.setTimeout(()=>{w.current=null,v.current&&se(!0)},180);return}switch(q.key.toLowerCase()){case"f":ge();break;case"m":be();break;case"arrowright":le(10);break;case"arrowleft":le(-10);break;case"arrowup":if(q.preventDefault(),a.current){const F=Math.min(1,a.current.volume+.1);a.current.volume=F,H(F)}break;case"arrowdown":if(q.preventDefault(),a.current){const F=Math.max(0,a.current.volume-.1);a.current.volume=F,H(F)}break}}},x=q=>{if(q.code==="Space"){if(q.preventDefault(),v.current=!1,l.current.keyboard){se(!1);return}w.current&&(clearTimeout(w.current),w.current=null,ve())}};return document.addEventListener("keydown",c),document.addEventListener("keyup",x),()=>{document.removeEventListener("keydown",c),document.removeEventListener("keyup",x),w.current&&(clearTimeout(w.current),w.current=null),v.current=!1,se(!1),he(!1)}},[se,ve,ge,be,le]),M(()=>{const c=Q=>Q?!!Q.closest('[data-speed-boost-ignore="true"], [data-player-ui="true"], button, input, select, textarea, a, [role="button"], [role="slider"], [contenteditable="true"]'):!0,x=Q=>{if(Q.button!==0)return;const V=Q.target;if(!V||c(V))return;const ue=p.current;!ue||!ue.contains(V)||(f.current&&clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,ie(!0)},180))},q=Q=>{const V=Q.target;if(!V||c(V))return;const ue=p.current;!ue||!ue.contains(V)||(f.current&&clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,ie(!0)},180))},y=()=>{f.current&&(clearTimeout(f.current),f.current=null),ie(!1)},F=()=>{f.current&&(clearTimeout(f.current),f.current=null),v.current=!1,w.current&&(clearTimeout(w.current),w.current=null),se(!1),ie(!1),he(!1)};return document.addEventListener("mousedown",x),document.addEventListener("mouseup",y),document.addEventListener("touchstart",q,{passive:!0}),document.addEventListener("touchend",y),document.addEventListener("touchcancel",y),document.addEventListener("pointerup",y),document.addEventListener("pointercancel",y),window.addEventListener("blur",F),()=>{document.removeEventListener("mousedown",x),document.removeEventListener("mouseup",y),document.removeEventListener("touchstart",q),document.removeEventListener("touchend",y),document.removeEventListener("touchcancel",y),document.removeEventListener("pointerup",y),document.removeEventListener("pointercancel",y),window.removeEventListener("blur",F),f.current&&(clearTimeout(f.current),f.current=null)}},[se,ie]);const Ve=T(()=>{re.current=!1,B(!0),G(!1),setTimeout(()=>R(!1,!0),50)},[R]),We=T(()=>{B(!0),G(!1)},[]),ze=T(()=>{const c=a.current;c&&!c.paused&&c.readyState>=3&&!c.seeking||G(!0)},[]),Ue=T(()=>{G(!1)},[]),Ke=T(()=>{B(!1),G(!1),$(!0),setTimeout(()=>R(!1,!0),50)},[R]),Xe=S(!1);Xe.current=me,M(()=>{if(!me)return;let c=a.current?.currentTime??0,x=0;const q=window.setInterval(()=>{const y=a.current;if(!y)return;x+=1;const F=y.currentTime,Q=F!==c;if(c=F,!(y.paused||y.seeking)){if(Q||y.readyState>=3){G(!1);return}x>=24&&y.readyState>=2&&!y.ended&&G(!1)}},500);return()=>window.clearInterval(q)},[me]),M(()=>{re.current=!1,Ce.current=-1,C.current=0,k.current=Math.random().toString(36).substring(2),_(0),G(!1)},[r,t]);const Ge=T(()=>{_(0),G(!1)},[]);M(()=>{const c=k.current;return()=>{It(c)}},[r,t]),M(()=>{if(o!=="iframe")return;R(!1,!0);const c=setInterval(()=>{R(!1,!0)},6e4);return()=>clearInterval(c)},[o,R]);const Qe=T(()=>{_(a.current?.duration||0),oe()},[oe]),Ye=T(()=>{const c=a.current?.duration;c&&Number.isFinite(c)&&_(c)},[]),Je=T(()=>{if(a.current){const c=a.current.muted,x=a.current.volume;O(c),H(x),localStorage.setItem("playerMuted",String(c)),localStorage.setItem("playerVolume",String(x))}},[]),Ze=T(()=>{const c=a.current;if(!c)return;Xe.current&&!c.paused&&!c.seeking&&G(!1);const x=c.currentTime||0,q=Date.now();q-C.current>6e4&&R()&&(C.current=q);const y=e.find(F=>x>=F.start_time&&x<F.end_time)||null;Se(F=>F?.skip_id!==y?.skip_id?y:F),ne&&y&&!c.paused&&(c.currentTime=y.end_time,Se(null))},[e,ne,R]),et=T(()=>{const c=ye();c&&(c.currentTime=c.duration,nt.progress.updateProgress.mutate(c).then(()=>{d.invalidateQueries({queryKey:[de.videoSources,r,t]}),d.invalidateQueries({queryKey:[de.continueWatching]})}).catch(x=>console.error("Failed to send final progress:",x)))},[ye,d,r,t]),tt=T(()=>{re.current=!0,et()},[et]);M(()=>{const c=()=>{W&&(X(!1),u.current&&a.current?.play(),R(!1,!0))};return W&&(document.addEventListener("mouseup",c),document.addEventListener("pointerup",c),document.addEventListener("touchend",c),document.addEventListener("pointercancel",c),document.addEventListener("touchcancel",c)),()=>{document.removeEventListener("mouseup",c),document.removeEventListener("pointerup",c),document.removeEventListener("touchend",c),document.removeEventListener("pointercancel",c),document.removeEventListener("touchcancel",c)}},[W,R]);const Bt=pe(()=>({togglePlay:ve,seek:le,toggleMute:be,toggleFullscreen:ge,onPlay:Ve,onPause:Ke,onLoadedMetadata:Qe,onDurationChange:Ye,formatTime:Mt,onVolumeChange:Je,onTimeUpdate:Ze,onEnded:tt,setShowControls:$,setIsScrubbing:X,setIsAutoSkipEnabled:dt,setCurrentSkipInterval:Se,setSubtitleFontSize:Ae,setSubtitlePosition:Ie,setSubtitleBgOpacity:Me,setSubtitleBgColor:$e,setSubtitleTextColor:Fe,setSubtitleEdge:De,setSubtitleBold:Re,setSubtitleStyle:je,setAvailableSubtitles:wt,setActiveSubtitleTrack:Ct,setShowSettings:Et,setShowVolumeSlider:Lt,wasPlayingBeforeScrub:u,inactivityTimer:b,flashControls:He,setIsFullscreen:z,onWaiting:ze,onPlaying:We,onCanPlay:Ue,sendProgressUpdate:R,setUseNativeControls:Oe,resetMediaState:Ge}),[ve,le,be,ge,Ve,Ke,Qe,Ye,Je,Ze,tt,z,ze,We,Ue,R,Oe,Ge,He,je]);return{refs:{videoRef:a,playerContainerRef:p},state:{isPlaying:m,isMuted:P,volume:K,isFullscreen:N,duration:h,showControls:D,isScrubbing:W,isAutoSkipEnabled:ne,currentSkipInterval:ft,subtitleFontSize:pt,subtitlePosition:mt,subtitleBgOpacity:ht,subtitleBgColor:yt,subtitleTextColor:gt,subtitleEdge:vt,subtitleBold:bt,availableSubtitles:_t,activeSubtitleTrack:St,showSettings:kt,showVolumeSlider:xt,isBuffering:me,isSpeedBoostActive:Tt,useNativeControls:Nt},actions:Bt}};function Zr(){try{return typeof navigator<"u"&&/android/i.test(navigator.userAgent)}catch{return!1}}function Uo(e,r){const{refs:t,actions:s}=e,o=S(r);o.current=r;const i=S(!1),d=S(!1),g=a=>{try{if(a)return a.matches}catch{}try{return window.innerWidth>window.innerHeight}catch{return!1}};M(()=>{if(!Zr())return;let a=null;const p=()=>{const b=t.playerContainerRef.current;if(g(a)){if(!o.current||!b||ce(t.videoRef.current)||d.current)return;i.current=!0,s.toggleFullscreen()}else d.current=!1,i.current&&(i.current=!1,ce(t.videoRef.current)&&s.toggleFullscreen())};try{a=window.matchMedia("(orientation: landscape)"),a.addEventListener?a.addEventListener("change",p):a.addListener(p)}catch{}return p(),()=>{try{a&&(a.removeEventListener?a.removeEventListener("change",p):a.removeListener(p))}catch{}}},[s,t.playerContainerRef,t.videoRef,r]),M(()=>{const a=()=>{if(!ce(t.videoRef.current)){i.current=!1;try{window.matchMedia("(orientation: landscape)").matches&&(d.current=!0)}catch{d.current=!0}}};return document.addEventListener("fullscreenchange",a),document.addEventListener("webkitfullscreenchange",a),()=>{document.removeEventListener("fullscreenchange",a),document.removeEventListener("webkitfullscreenchange",a)}},[t.videoRef])}const eo=e=>Math.max(8,Math.min(40,Math.ceil(e/16.7)+4));function Ko({videoRef:e,canvasRef:r,delayMs:t,enabled:s}){const o=S(t);o.current=t;const i=S([]),d=S(-1),g=S(-1),a=S(!1),p=S(0),b=S(null);M(()=>{const u=v=>{if(v)try{v.close()}catch{}},E=()=>{for(const v of i.current)u(v.bitmap);i.current=[]};if(!s){E(),d.current=-1,g.current=-1,a.current=!1,p.current=0;return}let C=!1;const l=()=>{b.current!==null&&(cancelAnimationFrame(b.current),b.current=null)},f=()=>{C||(l(),b.current=requestAnimationFrame(()=>{w()}))};async function w(){if(C)return;const v=e.current,k=r.current;if(!v||!k||v.videoWidth===0){f();return}if(v.paused||v.ended||document.hidden||v.readyState<HTMLMediaElement.HAVE_CURRENT_DATA){f();return}const m=v.getVideoPlaybackQuality().totalVideoFrames;if(m===d.current){f();return}(v.seeking||g.current>=0&&Math.abs(v.currentTime-g.current)>.5)&&(E(),a.current=!1,p.current=0,d.current=-1),g.current=v.currentTime,(k.width!==v.videoWidth||k.height!==v.videoHeight)&&(k.width=v.videoWidth,k.height=v.videoHeight);const B=Math.max(0,o.current||0);B>p.current&&(a.current=!1);try{const P=await createImageBitmap(v);if(C){u(P);return}d.current=m;const O=performance.now(),K=k.getContext("2d"),H=_=>{K&&K.drawImage(_,0,0,k.width,k.height)};if(B<=0){E(),a.current=!1,p.current=0,H(P),u(P),f();return}const N=i.current;N.push({bitmap:P,capture:O});const z=eo(B);for(;N.length>z;)u(N.shift()?.bitmap);let h=-1;for(let _=N.length-1;_>=0;_--)if(O-N[_].capture>=B){h=_;break}if(h!==-1){for(let D=0;D<h;D++)u(N.shift()?.bitmap);const _=N.shift();_?(H(_.bitmap),u(_.bitmap),a.current=!0,p.current=B):H(P)}else if(!a.current)H(P);else{const _=N.shift();_?(H(_.bitmap),u(_.bitmap)):H(P)}}catch{}f()}return f(),()=>{C=!0,l();for(const v of i.current)try{v.bitmap.close()}catch{}i.current=[]}},[s,e,r])}const ot=(e,r)=>{try{localStorage.setItem("playerVideoDelayMs",String(e)),localStorage.setItem("playerVideoDelayEnabled",String(r))}catch{}},st=e=>{try{localStorage.setItem("playerVideoDelayEnabled",String(e))}catch{}};function Xo(e,r){const[t,s]=L(()=>{try{const m=Number(localStorage.getItem("playerVideoDelayMs"));if(Number.isFinite(m)&&m>=0&&m<=500)return Math.round(m)}catch{}return 180}),[o,i]=L(()=>{try{return localStorage.getItem("playerVideoDelayEnabled")==="true"}catch{return!1}}),[d,g]=L(!1),[a,p]=L(!1),b=S(null),u=S(null),E=m=>{const B=Math.max(0,Math.min(500,Math.round(m)));s(B);try{localStorage.setItem("playerVideoDelayMs",String(B))}catch{}},C=m=>{i(m),st(m)},l=T(()=>{p(!1),g(!1)},[]);return{videoDelayMs:t,videoDelayEnabled:o,setDelayEnabled:C,handleVideoDelayChange:E,isCalibrating:d,testClipActive:a,stopCalibration:l,openAvSyncCalibrator:()=>{b.current={enabled:o,ms:t},i(!0),st(!0),r?.(),g(!0)},cancelAvSyncCalibrator:()=>{const m=b.current;b.current=null,m&&(s(m.ms),i(m.enabled),ot(m.ms,m.enabled)),p(!1),g(!1)},applyAvSyncCalibrator:()=>{b.current=null,i(!0),ot(t,!0),p(!1),g(!1)},toggleTestClip:()=>{if(a){p(!1);return}const m=e.current;m&&!isNaN(m.currentTime)&&(u.current=m.currentTime),p(!0)},calibReturnRef:u,effectiveVideoDelayMs:o?t:0}}function Go(){const[e,r]=L(()=>{try{return localStorage.getItem("playerTheaterMode")==="true"}catch{return!1}});M(()=>{try{e?document.body.classList.add("theater-mode"):document.body.classList.remove("theater-mode")}catch(o){console.error(o)}return()=>{try{document.body.classList.remove("theater-mode")}catch(o){console.error(o)}}},[e]);const t=T(()=>{r(o=>{const i=!o;try{localStorage.setItem("playerTheaterMode",i.toString())}catch{}return i})},[]),s=T(o=>{if(e&&o.target===o.currentTarget){r(!1);try{localStorage.setItem("playerTheaterMode","false")}catch{}}},[e]);return{isTheaterMode:e,toggleTheaterMode:t,handleLayoutClick:s}}const ee={enabled:!0,blur:60,saturation:150,brightness:70,opacity:60};function to(){try{const e=localStorage.getItem("playerAmbientLight");if(!e)return ee;const r=JSON.parse(e),t=(s,o,i,d)=>{const g=Number(s);return Number.isFinite(g)?Math.max(i,Math.min(d,g)):o};return{enabled:r.enabled??ee.enabled,blur:t(r.blur,ee.blur,0,120),saturation:t(r.saturation,ee.saturation,0,200),brightness:t(r.brightness,ee.brightness,20,120),opacity:t(r.opacity,ee.opacity,10,100)}}catch{return ee}}function Qo(){const[e,r]=L(to),t=T(s=>{r(o=>{const i={...o,...s};try{localStorage.setItem("playerAmbientLight",JSON.stringify(i))}catch{}return i})},[]);return{settings:e,update:t}}const no="_theaterAmbient_x9t0o_1",ro={theaterAmbient:no},xe=160,Le=90,oo=120,Yo=({videoRef:e,active:r,settings:t,className:s})=>{const o=S(null);return M(()=>{if(!r)return;const i=o.current,d=e.current;if(!i||!d)return;const g=i.getContext("2d",{alpha:!1});if(!g)return;let a=0,p=0,b=!1;const u=()=>{if(!(d.readyState<2||!d.videoWidth))try{const l=d.videoWidth,f=d.videoHeight,w=xe/Le,v=l/f;let k=l,m=f,B=0,P=0;v>w?(k=f*w,B=(l-k)/2):(m=l/w,P=(f-m)/2),g.drawImage(d,B,P,k,m,0,0,xe,Le)}catch{}},E=l=>{b||d.paused||(a=requestAnimationFrame(E),!(l-p<oo)&&(p=l,u()))},C=()=>{b||(cancelAnimationFrame(a),p=0,a=requestAnimationFrame(E))};return d.addEventListener("play",C),d.addEventListener("seeked",u),d.addEventListener("loadeddata",u),a=requestAnimationFrame(E),()=>{b=!0,cancelAnimationFrame(a),d.removeEventListener("play",C),d.removeEventListener("seeked",u),d.removeEventListener("loadeddata",u)}},[r,e]),r?n("canvas",{ref:o,width:xe,height:Le,"aria-hidden":"true",className:s??ro.theaterAmbient,style:{filter:`blur(${t.blur}px) saturate(${t.saturation}%) brightness(${t.brightness}%)`,opacity:t.opacity/100}}):null},so="_row_1fq55_1",ao="_rowHeader_1fq55_9",co="_rowLabel_1fq55_17",io="_rowValue_1fq55_28",lo="_slider_1fq55_36",uo="_swatches_1fq55_99",fo="_swatch_1fq55_99",po="_swatchPicked_1fq55_114",mo="_colorInput_1fq55_120",ho="_segmented_1fq55_131",j={row:so,rowHeader:ao,rowLabel:co,rowValue:io,slider:lo,swatches:uo,swatch:fo,swatchPicked:po,colorInput:mo,segmented:ho},yo=({label:e,display:r,min:t,max:s,step:o,value:i,percent:d,onChange:g,onCommit:a})=>n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:[n("span",{className:j.rowLabel,children:e}),n("span",{className:j.rowValue,children:r})]}),n("input",{type:"range",className:j.slider,min:t,max:s,step:o,value:i,"aria-label":e,"data-speed-boost-ignore":"true",onInput:p=>g(Number(p.target.value)),onMouseDown:p=>p.stopPropagation(),onPointerDown:p=>p.stopPropagation(),onTouchStart:p=>p.stopPropagation(),onPointerUp:a,onPointerCancel:a,onTouchEnd:a,onKeyUp:a,onBlur:a,style:{"--slider-percent":`${d}%`}})]}),Jo=({label:e,colors:r,value:t,onChange:s})=>n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:n("span",{className:j.rowLabel,children:e})}),n("div",{className:j.swatches,children:[r.map(o=>n("button",{type:"button","aria-label":`${e} ${o}`,"aria-pressed":t.toLowerCase()===o.toLowerCase(),onClick:()=>s(o),className:`${j.swatch} ${t.toLowerCase()===o.toLowerCase()?j.swatchPicked:""}`,style:{backgroundColor:o}},o)),n("input",{type:"color","aria-label":`Custom ${e.toLowerCase()}`,className:j.colorInput,value:t,"data-speed-boost-ignore":"true",onInput:o=>s(o.target.value),onMouseDown:o=>o.stopPropagation(),onPointerDown:o=>o.stopPropagation(),onTouchStart:o=>o.stopPropagation()})]})]});function Zo({label:e,options:r,value:t,onChange:s}){return n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:n("span",{className:j.rowLabel,children:e})}),n("div",{className:j.segmented,role:"group","aria-label":e,children:r.map(o=>n("button",{type:"button","aria-pressed":t===o,onClick:()=>s(o),children:[n("span",{children:o}),t===o&&n(U,{name:"check",size:10})]},o))})]})}const we=10,Pe=500,Te=e=>Math.max(0,Math.min(Pe,Math.round(e))),es=({isOpen:e,ms:r,onChange:t,onApply:s,onClose:o,testClipActive:i,onTestClip:d})=>e?n("div",{role:"dialog","aria-label":"Calibrate audio video sync","data-speed-boost-ignore":"true",onClick:g=>g.stopPropagation(),style:{position:"absolute",right:8,bottom:112,width:"min(260px, calc(100% - 16px))",maxHeight:"calc(100% - 124px)",overflowY:"auto",overflowX:"hidden",zIndex:60,display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:12,borderRadius:"var(--radius-lg)",border:"1px solid var(--glass-border)",background:"rgba(18, 18, 22, 0.95)",boxShadow:"var(--glass-shadow)",backdropFilter:"blur(14px)",WebkitBackdropFilter:"blur(14px)",boxSizing:"border-box"},children:[n("div",{style:{fontSize:"0.8rem",fontWeight:800,color:"var(--text-primary)"},children:"A/V sync"}),n("div",{children:n(te,{size:"sm",variant:"secondary",onClick:d,children:i?"Back to video":"Preview test clip"})}),n("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,flexWrap:"wrap"},children:[n(te,{size:"sm",onClick:()=>t(Te(r-we)),"aria-label":"Decrease delay by 10 milliseconds",children:["− ",we,"ms"]}),n("div",{style:{fontSize:"1.1rem",fontWeight:800,minWidth:64,textAlign:"center"},children:[r,"ms"]}),n(te,{size:"sm",onClick:()=>t(Te(r+we)),"aria-label":"Increase delay by 10 milliseconds",children:["+ ",we,"ms"]})]}),n(yo,{label:"Video delay",display:`${r}ms`,min:0,max:Pe,step:5,value:r,percent:r/Pe*100,onChange:g=>t(Te(g))}),n("div",{style:{display:"flex",gap:8,justifyContent:"center",flexWrap:"wrap"},children:[n(te,{size:"sm",variant:"secondary",onClick:o,children:"Cancel"}),n(te,{size:"sm",onClick:s,children:["Apply ",r,"ms"]})]})]}):null;function ts({videoRef:e,sourceType:r,resetKey:t,onEnd:s}){const o=S(!1),i=S(s);i.current=s,M(()=>{o.current=!1},[t]);const d=T(()=>{const a=e.current?.duration;!a||!Number.isFinite(a)||console.info(`[playback] duration ${a.toFixed(2)}s`)},[e]);return{checkEnd:T((a=!1)=>{const p=e.current;!p||r==="iframe"||o.current||!a&&!Ft(p.currentTime,p.duration)||(o.current=!0,console.info(`[playback] end reached at ${p.currentTime.toFixed(2)}s / ${p.duration.toFixed(2)}s`),i.current())},[r,e]),logDuration:d}}export{Yo as A,Jo as B,Mo as C,No as D,Ho as E,Zo as F,J as G,ee as H,yo as M,Oo as P,Io as R,Fo as S,To as T,Do as U,Ro as a,$o as b,Wo as c,ko as d,Eo as e,Bo as f,qo as g,Lo as h,Xo as i,Ko as j,Go as k,ts as l,Uo as m,Qo as n,Co as o,jo as p,Ao as q,xo as r,ar as s,Pr as t,zo as u,So as v,ae as w,es as x,Vo as y,Po as z};
|
|
10
|
+
`)+";"}const Yn=new Set(["b","i","u","strong","em"]);function xo(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/<(\/?)([a-zA-Z]+)>/g,(t,s,o)=>Yn.has(o.toLowerCase())?`<${s}${o.toLowerCase()}>`:t)}function Lo(e){return e.replace(/<[^>]*>/g,"")}const To=["#ffffff","#ffff00","#7CFC00","#00e5ff","#ff9ff3","#ffa502"],No=["#000000","#1e272e","#2f3542","#3d0c02","#0c3d2e","#ffffff"];function Bo(e,r){const t=Number.isFinite(e)?e*16:J.fontSize*16;return!Number.isFinite(r)||r<=0?t/16:Math.min(t,Math.max(13,r*.07))/16}function Po(e){const r=Math.abs(e/1e3).toFixed(1);return e>0?`+${r}s`:e<0?`-${r}s`:"0.0s"}function Ao(e,r){const t=e.clientWidth||0,s=e.clientHeight||0,o=e.videoWidth>0&&e.videoHeight>0?e.videoWidth/e.videoHeight:0;let i=s;o>0&&t>0&&s>0&&(i=t/s>o?s:t/o);const d=Math.max(0,(s-i)/2),g=Math.max(0,Math.min(100,Number(r)||0))/100*i;return d+g}const Io=({isOpen:e,onClose:r,title:t,heading:s,message:o,children:i})=>n(at,{isOpen:e,onClose:r,title:t,width:"sm",children:n("div",{style:{padding:"1rem",textAlign:"center"},children:[n(U,{name:"check-circle",size:48,style:{color:"var(--accent-lighter)",marginBottom:"0.5rem"}}),n("p",{style:{fontSize:"1.1rem",fontWeight:600},children:s}),n("p",{style:{color:"var(--text-secondary)"},children:o}),i&&n("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center",flexWrap:"wrap"},children:i})]})}),Mo=({isOpen:e,onClose:r,title:t,message:s,resumeLabel:o="Resume",restartLabel:i="Start Over",onResume:d,onRestart:g})=>n(at,{isOpen:e,onClose:r,title:t,width:"sm",children:n("div",{style:{padding:"1rem",textAlign:"center"},children:[n("p",{children:s}),n("div",{style:{marginTop:"1rem",display:"flex",gap:"10px",justifyContent:"center"},children:[n(te,{variant:"secondary",onClick:g,children:i}),n(te,{onClick:d,children:o})]})]})}),Jn="_centerControls_bxt8c_1",Zn="_centerSkipBtn_bxt8c_15",er="_centerPlayPause_bxt8c_37",tr="_playIconOffset_bxt8c_65",fe={centerControls:Jn,centerSkipBtn:Zn,centerPlayPause:er,playIconOffset:tr},$o=({isPlaying:e,onTogglePlay:r,onSkipBack:t,onSkipForward:s,skipSeconds:o=10})=>n("div",{className:fe.centerControls,onClick:i=>i.stopPropagation(),children:[n("button",{className:fe.centerSkipBtn,onClick:t,title:`Skip back ${o}s`,"aria-label":`Skip back ${o} seconds`,children:n(U,{name:"replay-10"})}),n("button",{className:fe.centerPlayPause,"data-speed-boost-ignore":"true",onClick:r,"aria-label":e?"Pause":"Play",children:e?n(U,{name:"pause"}):n(U,{name:"play",className:fe.playIconOffset})}),n("button",{className:fe.centerSkipBtn,onClick:s,title:`Skip forward ${o}s`,"aria-label":`Skip forward ${o} seconds`,children:n(U,{name:"forward-10"})})]}),Fo=({visible:e,title:r,episode:t,onBack:s,classes:o})=>n("div",{className:`${o.overlay} ${e?"":o.hidden} `,"data-speed-boost-ignore":"true",style:{pointerEvents:"none",background:"none"},children:n("div",{className:o.top,onClick:i=>i.stopPropagation(),children:[n("button",{className:o.backBtn,onClick:i=>{i.stopPropagation(),s()},title:"Back","aria-label":"Back",children:n(U,{name:"chevron-left"})}),n("div",{className:o.titleInfo,children:[n("span",{className:o.title,children:r}),t&&n("span",{className:o.episode,children:t})]})]})}),qo=({classes:e,videoRef:r,duration:t,formatTime:s,isScrubbing:o,buffered:i="auto",onSeek:d,onScrubStart:g,onScrubMove:a,onScrubEnd:p,timeLabelRef:b,children:u})=>{const E=S(null),C=S(null),l=S(null),f=S(null),w=S(null),v=S(!1),k=S(o);k.current=o;const m=S({onScrubMove:a,onScrubEnd:p});m.current={onScrubMove:a,onScrubEnd:p};const[B,P]=L({time:0,position:null});$(()=>{const h=r.current;if(!h)return;const _=W=>{const X=W/t*100||0;C.current&&(C.current.style.width=`${X}%`),l.current&&(l.current.style.left=`${X}%`),b?.current&&(b.current.innerText=`${s(W)} / ${s(t)}`)},D=()=>{o||_(h.currentTime)},F=()=>{if(i==="auto"&&h.buffered.length>0){const X=h.buffered.end(h.buffered.length-1)/t*100||0;f.current&&(f.current.style.width=`${X}%`)}};return _(h.currentTime),F(),h.addEventListener("timeupdate",D),h.addEventListener("progress",F),()=>{h.removeEventListener("timeupdate",D),h.removeEventListener("progress",F)}},[r,t,o,i,s,b]);const O=h=>{if(!E.current)return 0;const _=E.current.getBoundingClientRect();return Math.min(1,Math.max(0,(h-_.left)/_.width))},K=h=>{const _=h*t,D=_/t*100||0;C.current&&(C.current.style.width=`${D}%`),l.current&&(l.current.style.left=`${D}%`),b?.current&&(b.current.innerText=`${s(_)} / ${s(t)}`);const F=E.current?.getBoundingClientRect();P({time:_,position:F?h*F.width:null})};$(()=>{if(!o){w.current=null;return}const h=D=>{if(w.current!==null&&D.pointerId!==w.current||!t)return;const F=O(D.clientX);m.current.onScrubMove(F);const W=F*t,X=W/t*100||0;C.current&&(C.current.style.width=`${X}%`),l.current&&(l.current.style.left=`${X}%`),b?.current&&(b.current.innerText=`${s(W)} / ${s(t)}`);const ne=E.current?.getBoundingClientRect();P({time:W,position:ne?F*ne.width:null})},_=D=>{w.current!==null&&D.pointerId!==w.current||(w.current=null,v.current=!0,D.pointerType!=="mouse"&&P({time:0,position:null}),m.current.onScrubEnd())};return document.addEventListener("pointermove",h),document.addEventListener("pointerup",_),document.addEventListener("pointercancel",_),()=>{document.removeEventListener("pointermove",h),document.removeEventListener("pointerup",_),document.removeEventListener("pointercancel",_)}},[o,t,s,b]);const H=h=>{if(h.pointerType==="mouse"&&h.button!==0||!r.current||!t)return;h.preventDefault(),w.current=h.pointerId;try{E.current?.setPointerCapture(h.pointerId)}catch{}k.current||g();const _=O(h.clientX);a(_),K(_)},N=h=>{if(!t||k.current||h.pointerType!=="mouse")return;const _=O(h.clientX);P({time:_*t,position:h.clientX-(E.current?.getBoundingClientRect().left??0)})},z=h=>{if(!(w.current!==null&&h.pointerId!==w.current)&&k.current){w.current=null,v.current=!0,h.pointerType!=="mouse"&&P({time:0,position:null});try{E.current?.hasPointerCapture(h.pointerId)&&E.current.releasePointerCapture(h.pointerId)}catch{}p()}};return n("div",{className:`${e.container} ${o&&e.scrubbing?e.scrubbing:""}`,ref:E,role:"slider","aria-label":"Seek","aria-valuemin":0,"aria-valuemax":Math.round(t||0),"aria-valuenow":Math.round((Number(C.current?.style.width?.replace("%",""))||0)*(t||0)/100),tabIndex:0,onClick:h=>{if(v.current){v.current=!1;return}!r.current||isNaN(t)||t===0||d(O(h.clientX))},onPointerDown:H,onPointerMove:N,onPointerUp:z,onPointerCancel:z,onMouseMove:h=>{if(o||!t)return;const _=O(h.clientX);P({time:_*t,position:h.clientX-(E.current?.getBoundingClientRect().left??0)})},onMouseLeave:()=>{o||P({time:0,position:null})},onKeyDown:h=>{if(!(!r.current||!t)&&(h.key==="ArrowRight"||h.key==="ArrowLeft")){h.preventDefault();const _=(h.key==="ArrowRight"?5:-5)/t,D=r.current.currentTime/t||0;d(Math.min(1,Math.max(0,D+_)))}},children:[B.position!==null&&n("div",{className:e.timeBubble,style:{left:B.position},children:s(B.time)}),n("div",{className:e.bar,children:[n("div",{className:e.buffered,ref:f,style:i==="full"?{width:"100%"}:void 0}),n("div",{className:e.watched,ref:C}),n("div",{className:e.thumb,ref:l,onMouseDown:h=>{h.preventDefault(),r.current&&(k.current||g())}}),u]})]})};function Ee(){try{if(typeof window>"u")return!1;const e=window.matchMedia?.("(pointer: coarse)").matches??!1,t=(navigator.maxTouchPoints??0)>0||"ontouchstart"in window;return e||t}catch{return!1}}function lt(){const[e,r]=L(Ee);return $(()=>{r(Ee());let t=null;const s=()=>r(Ee());try{t=window.matchMedia("(pointer: coarse)"),t.addEventListener?t.addEventListener("change",s):t.addListener(s)}catch{}return window.addEventListener("touchstart",s,{passive:!0,once:!0}),()=>{try{t&&(t.removeEventListener?t.removeEventListener("change",s):t.removeListener(s))}catch{}window.removeEventListener("touchstart",s)}},[]),e}const nr=450,Do=({muted:e,volume:r,volumeIcon:t,buttonClassName:s,sliderClassName:o,onToggleMute:i,onVolumeChange:d,onExpandedChange:g})=>{const a=lt(),[p,b]=L(!1),u=S(null),E=S(!1),C=S(null),l=T(m=>{b(m),g?.(m)},[g]);$(()=>()=>{u.current&&window.clearTimeout(u.current)},[]),$(()=>{if(!p)return;const m=B=>{C.current&&!C.current.contains(B.target)&&l(!1)};return document.addEventListener("pointerdown",m),()=>document.removeEventListener("pointerdown",m)},[p,l]);const f=e?0:r,w=()=>{E.current=!1,u.current&&window.clearTimeout(u.current),u.current=window.setTimeout(()=>{E.current=!0,l(!0)},nr)},v=()=>{u.current&&(window.clearTimeout(u.current),u.current=null)},k=m=>{if(m.stopPropagation(),E.current){E.current=!1;return}if(a){p?i():l(!0);return}i()};return n("div",{ref:C,className:ae.volumeWrap,"data-expanded":p?"true":"false",onContextMenu:m=>m.preventDefault(),children:[n("button",{type:"button",className:s,onClick:k,onPointerDown:w,onPointerUp:v,onPointerLeave:v,onContextMenu:m=>m.preventDefault(),"aria-label":e?"Unmute":"Mute","aria-expanded":p,children:t}),n("input",{type:"range",min:"0",max:"1",step:"0.05",value:f,onChange:m=>d(parseFloat(m.currentTarget.value)),onClick:m=>m.stopPropagation(),onPointerDown:m=>m.stopPropagation(),onContextMenu:m=>m.preventDefault(),className:`${ae.volumeSlider} ${o??""}`,style:{"--volume-percent":`${f*100}%`},"aria-label":"Volume"})]})},rt=280;function rr(e){return e?!!e.closest('button, input, select, textarea, a, [role="button"], [data-player-ui="true"]'):!1}const Ro=({player:e,topBar:r,centerControls:t,bottomBar:s,settingsPanel:o,overlays:i,isInteracting:d=!1,className:g,chromeDisabled:a=!1,onStageClick:p,children:b})=>{const{state:u,refs:E,actions:C}=e,l=E.playerContainerRef,w=lt()?5e3:3e3,v=S(0),k=S(null),m=S(d);m.current=d;const B=T(()=>{const N=C.inactivityTimer.current;N&&(window.clearTimeout(N),C.inactivityTimer.current=null)},[C]),P=T(()=>{B(),u.isPlaying&&(m.current||u.useNativeControls||(C.inactivityTimer.current=window.setTimeout(()=>{if(m.current)return;C.setShowControls(!1);const N=l.current;N&&u.isFullscreen&&(N.style.cursor="none")},w)))},[C,B,l,w,u.isFullscreen,u.isPlaying,u.useNativeControls]),O=T(()=>{const N=l.current;N&&(N.style.cursor="default"),!u.showControls&&!u.useNativeControls&&C.setShowControls(!0),P()},[C,l,P,u.showControls,u.useNativeControls]);$(()=>{if(u.showControls){if(!u.isPlaying){B();return}if(d||u.isScrubbing||u.showSettings||u.showVolumeSlider){C.setShowControls(!0),B();return}P()}},[C,B,d,P,u.isPlaying,u.isScrubbing,u.showControls,u.showSettings,u.showVolumeSlider]),$(()=>()=>B(),[B]);const K=T(N=>{const z=N.target;if(rr(z))return;p?.();const h=Date.now(),_=h-v.current<rt;if(v.current=h,_){k.current&&(window.clearTimeout(k.current),k.current=null),C.toggleFullscreen();return}k.current&&window.clearTimeout(k.current),k.current=window.setTimeout(()=>{k.current=null,C.setShowControls(!u.showControls),u.showControls?P():O()},rt)},[C,p,P,u.showControls,O]);$(()=>()=>{k.current&&window.clearTimeout(k.current)},[]);const H=u.showControls||u.isScrubbing||u.showSettings||u.showVolumeSlider;return n("div",{ref:l,className:`${ae.shell} ${u.isFullscreen?ae.shellFullscreen:""} ${g??""}`,onContextMenu:N=>N.preventDefault(),onPointerMove:N=>{N.pointerType==="mouse"&&O()},onMouseLeave:()=>{window.matchMedia?.("(hover: hover) and (pointer: fine)").matches&&u.isPlaying&&!m.current&&C.setShowControls(!1)},children:[n("div",{className:ae.stage,onClick:K,onContextMenu:N=>N.preventDefault(),children:b}),i,!a&&!u.useNativeControls&&n("div",{className:ae.uiLayer,onContextMenu:N=>N.preventDefault(),children:[n("div",{"data-player-ui":"true",children:r}),H&&t&&n("div",{"data-player-ui":"true",children:t}),n("div",{"data-player-ui":"true",children:s}),o&&n("div",{"data-player-ui":"true",children:o})]})]})},or=e=>(e.language??e.lang??"").toLowerCase(),sr=e=>(e.label??"").toLowerCase(),ar=e=>`${e.language??e.lang??""}|||${e.label??""}`,cr=e=>or(e).startsWith("en")||sr(e).includes("english");function jo(e,r){if(e.length===0||r?.enabled===!1)return-1;const t=r?.lastKey??null;if(t){const o=e.findIndex(i=>ar(i)===t);if(o>=0)return o}const s=e.findIndex(cr);return s>=0?s:0}const ir="_statusArea_1xccu_1",lr="_toggleBtn_1xccu_20",ur="_shortcuts_1xccu_46",dr="_shortcutGroup_1xccu_56",fr="_shortcut_1xccu_46",pr="_key_1xccu_70",mr="_label_1xccu_91",I={statusArea:ir,toggleBtn:lr,shortcuts:ur,shortcutGroup:dr,shortcut:fr,key:pr,label:mr},Oo=({showTheater:e=!0})=>{const[r,t]=L(!1);return n("div",{className:I.statusArea,children:[n("button",{type:"button",className:I.toggleBtn,onClick:()=>t(s=>!s),"aria-expanded":r,"aria-controls":"player-shortcuts",children:[n(U,{name:"keyboard",size:14}),n("span",{children:"Keyboard Shortcuts"}),r?n(U,{name:"chevron-up",size:12}):n(U,{name:"chevron-down",size:12})]}),r&&n("div",{id:"player-shortcuts",className:I.shortcuts,children:[n("div",{className:I.shortcutGroup,children:[n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"↑"}),n("span",{className:I.key,children:"↓"}),n("span",{className:I.label,children:"Volume"})]}),n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"←"}),n("span",{className:I.key,children:"→"}),n("span",{className:I.label,children:"Seek"})]})]}),n("div",{className:I.shortcutGroup,children:[n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"Space"}),n("span",{className:I.label,children:"Play/Pause"})]}),n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"F"}),n("span",{className:I.label,children:"Fullscreen"})]}),n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"M"}),n("span",{className:I.label,children:"Mute"})]}),e&&n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"T"}),n("span",{className:I.label,children:"Theater"})]}),n("div",{className:I.shortcut,children:[n("span",{className:I.key,children:"N"}),n("span",{className:I.label,children:"Next"})]})]})]})]})},hr="_episodeListContainer_9tyin_1",yr="_drawerContainer_9tyin_9",gr="_episodeListHeader_9tyin_14",vr="_drawerHeader_9tyin_20",br="_episodeListTitle_9tyin_29",_r="_rangeSelector_9tyin_41",wr="_rangeButton_9tyin_47",Sr="_active_9tyin_70",Cr="_episodeList_9tyin_1",kr="_drawerList_9tyin_89",Er="_episodeItem_9tyin_118",xr="_watched_9tyin_145",Lr="_episodeThumb_9tyin_167",Tr="_episodeText_9tyin_176",Nr="_episodeLabel_9tyin_184",Br="_episodeSub_9tyin_189",M={episodeListContainer:hr,drawerContainer:yr,episodeListHeader:gr,drawerHeader:vr,episodeListTitle:br,rangeSelector:_r,rangeButton:wr,active:Sr,episodeList:Cr,drawerList:kr,episodeItem:Er,watched:xr,episodeThumb:Lr,episodeText:Tr,episodeLabel:Nr,episodeSub:Br},Pr=({episodes:e,currentEpisode:r,watchedEpisodes:t=[],onEpisodeClick:s,variant:o="sidebar",title:i="Episodes",header:d})=>{const[g,a]=L(0),p=S(null),b=pe(()=>e.map(l=>typeof l=="string"?{id:l,label:`Episode ${l}`}:l),[e]),u=pe(()=>new Set(t),[t]);$(()=>{const l=p.current;if(!l)return;let f=l.parentElement;for(;f;){const k=window.getComputedStyle(f);if((k.overflowY==="auto"||k.overflowY==="scroll")&&f.scrollHeight>f.clientHeight)break;f=f.parentElement}if(!f)return;const w=f.getBoundingClientRect(),v=l.getBoundingClientRect();f.scrollTop+=v.top+v.height/2-(w.top+f.clientHeight/2)},[r,g]);const E=pe(()=>{if(b.length<=100)return[];const l=[];for(let f=0;f<b.length;f+=100){const w=f+1,v=Math.min(f+100,b.length);l.push(`${w}-${v}`)}return l},[b]),C=pe(()=>{if(E.length===0)return b;const l=E[g];if(!l)return b;const[f,w]=l.split("-"),v=parseInt(f,10),k=parseInt(w,10);return b.slice(v-1,k)},[b,E,g]);return n("div",{className:`${M.episodeListContainer} ${o==="drawer"?M.drawerContainer:""}`,children:[n("div",{className:`${M.episodeListHeader} ${o==="drawer"?M.drawerHeader:""}`,children:[d,n("h3",{className:M.episodeListTitle,children:i}),E.length>0&&n("div",{className:M.rangeSelector,children:E.map((l,f)=>n("button",{className:`${M.rangeButton} ${g===f?M.active:""}`,onClick:()=>a(f),children:l},l))})]}),n("div",{className:`${M.episodeList} ${o==="drawer"?M.drawerList:""}`,children:C.map(l=>{const f=l.id===r,w=u.has(l.id)||l.watched===!0;return n("div",{ref:f?p:void 0,className:`${M.episodeItem} ${w?M.watched:""} ${f?M.active:""}`,onClick:()=>s(l.id),children:[l.thumbnail&&n("img",{src:l.thumbnail,alt:"",loading:"lazy",decoding:"async",className:M.episodeThumb}),n("span",{className:M.episodeText,children:[n("span",{className:M.episodeLabel,children:l.label??`Episode ${l.id}`}),l.sublabel&&n("span",{className:M.episodeSub,children:l.sublabel})]})]},l.id)})})]})},Ho=({variant:e="sidebar",count:r=12})=>n("div",{className:`${M.episodeListContainer} ${e==="drawer"?M.drawerContainer:""}`,children:[n("div",{className:`${M.episodeListHeader} ${e==="drawer"?M.drawerHeader:""}`,children:[n("h3",{className:M.episodeListTitle,children:"Episodes"}),n("div",{className:M.rangeSelector,children:[n(_e,{width:"60px",height:"28px",variant:"rectangular"}),n(_e,{width:"60px",height:"28px",variant:"rectangular"}),n(_e,{width:"60px",height:"28px",variant:"rectangular"})]})]}),n("div",{className:`${M.episodeList} ${e==="drawer"?M.drawerList:""}`,children:Array.from({length:r}).map((t,s)=>n("div",{className:M.episodeItem,style:{border:"none",background:"transparent"},children:n(_e,{width:"120px",height:"1.2rem",variant:"text"})},s))})]}),Ar="_shell_cys6s_1",Ir="_overlay_cys6s_10",Mr="_drawer_cys6s_21",$r="_handle_cys6s_56",Fr="_header_cys6s_64",qr="_headerCopy_cys6s_73",Dr="_kicker_cys6s_79",Rr="_title_cys6s_87",jr="_closeBtn_cys6s_94",Or="_body_cys6s_116",Y={shell:Ar,overlay:Ir,drawer:Mr,handle:$r,header:Fr,headerCopy:qr,kicker:Dr,title:Rr,closeBtn:jr,body:Or};function Vo({isOpen:e,onClose:r,episodes:t,currentEpisode:s,watchedEpisodes:o=[],onEpisodeClick:i,title:d,header:g}){return $(()=>{if(!e)return;const a=b=>{b.key==="Escape"&&r()},p=document.body.style.overflow;return document.body.style.overflow="hidden",document.addEventListener("keydown",a),()=>{document.body.style.overflow=p,document.removeEventListener("keydown",a)}},[e,r]),e?Pt(n("div",{className:Y.shell,role:"dialog","aria-modal":"true","aria-label":"Episode picker",children:[n("button",{className:Y.overlay,type:"button",onClick:r,"aria-label":"Close episodes"}),n("aside",{className:Y.drawer,children:[n("div",{className:Y.handle}),n("div",{className:Y.header,children:[n("div",{className:Y.headerCopy,children:[n("span",{className:Y.kicker,children:"Episode picker"}),n("h3",{className:Y.title,children:"Choose an episode"})]}),n("button",{className:Y.closeBtn,type:"button",onClick:r,"aria-label":"Close",children:n(U,{name:"times"})})]}),n("div",{className:Y.body,children:n(Pr,{episodes:t,currentEpisode:s,watchedEpisodes:o,onEpisodeClick:i,variant:"drawer",title:d,header:g})})]})]}),document.body):null}const Hr="_sourceSelectionContainer_1am19_1",Vr="_providerSelectContainer_1am19_14",Wr="_providerSelect_1am19_14",zr="_sourceSelect_1am19_1",Ur="_sourceButtons_1am19_70",Kr="_sourceButton_1am19_70",Xr="_active_1am19_95",Wo={sourceSelectionContainer:Hr,providerSelectContainer:Vr,providerSelect:Wr,sourceSelect:zr,sourceButtons:Ur,sourceButton:Kr,active:Xr};function Ae(){return document}function ut(e){const r=Ae();if(document.fullscreenElement)return document.fullscreenElement;if(r.webkitFullscreenElement)return r.webkitFullscreenElement;const t=e;return t?.webkitDisplayingFullscreen?t:null}function ce(e){return ut(e)!==null}async function Gr(e,r){if(ut(r))return;const t=e;try{if(typeof e.requestFullscreen=="function"){await e.requestFullscreen();return}if(typeof t.webkitRequestFullscreen=="function"){await t.webkitRequestFullscreen();return}if(typeof t.webkitRequestFullScreen=="function"){await t.webkitRequestFullScreen();return}}catch{}const s=r;if(s&&typeof s.webkitEnterFullscreen=="function"){if(s.webkitSupportsFullscreen===!1)return;try{await s.webkitEnterFullscreen()}catch{}}}async function Qr(e){const r=Ae();try{if(document.fullscreenElement&&typeof document.exitFullscreen=="function"){await document.exitFullscreen();return}if(r.webkitFullscreenElement&&typeof r.webkitExitFullscreen=="function"){await r.webkitExitFullscreen();return}}catch{}const t=e;if(t?.webkitDisplayingFullscreen&&typeof t.webkitExitFullscreen=="function"){try{t.webkitExitFullscreen()}catch{}return}try{typeof r.webkitCancelFullScreen=="function"?r.webkitCancelFullScreen():!document.fullscreenElement&&typeof document.exitFullscreen=="function"&&(document.fullscreenElement??r.webkitFullscreenElement)&&await document.exitFullscreen()}catch{}}async function Yr(e,r){!e&&!r||(ce(r)?await Qr(r):e&&await Gr(e,r))}function Jr(e,r){const t=()=>{try{r(ce(e()))}catch{}},s=Ae(),o=t;s.addEventListener("fullscreenchange",t),s.addEventListener("webkitfullscreenchange",o),s.addEventListener("webkitbeginfullscreen",o,!0),s.addEventListener("webkitendfullscreen",o,!0);const i=e();return i?.addEventListener("webkitbeginfullscreen",o),i?.addEventListener("webkitendfullscreen",o),()=>{s.removeEventListener("fullscreenchange",t),s.removeEventListener("webkitfullscreenchange",o),s.removeEventListener("webkitbeginfullscreen",o,!0),s.removeEventListener("webkitendfullscreen",o,!0),i?.removeEventListener("webkitbeginfullscreen",o),i?.removeEventListener("webkitendfullscreen",o)}}const zo=({skipIntervals:e,showId:r,episodeNumber:t,episodeCount:s,sourceType:o,showMeta:i})=>{const d=Ft(),g=At(),a=S(null),p=S(null),b=S(null),u=S(!1),E=S(null),C=S(0),l=S({mouse:!1,keyboard:!1}),f=S(null),w=S(null),v=S(!1),k=S(Math.random().toString(36).substring(2)),[m,B]=L(!1),[P,O]=L(()=>{try{return localStorage.getItem("playerMuted")==="true"}catch{return!1}}),[K,H]=L(()=>{try{const c=parseFloat(localStorage.getItem("playerVolume")||"");return isNaN(c)?1:Math.max(0,Math.min(1,c))}catch{return 1}}),[N,z]=L(!1),[h,_]=L(0),[D,F]=L(!0),[W,X]=L(!1),[ne,dt]=L(localStorage.getItem("autoSkipEnabled")==="true"),[ft,Se]=L(null),[Z]=L(Qn),[pt,Ie]=L(Z.fontSize),[mt,Me]=L(Z.position),[ht,$e]=L(Z.bgOpacity),[yt,Fe]=L(Z.bgColor),[gt,qe]=L(Z.textColor),[vt,De]=L(Z.edge),[bt,Re]=L(Z.bold),je=T((c,x)=>{if({fontSize:y=>typeof y!="number"?!1:(Ie(y),!0),position:y=>typeof y!="number"?!1:(Me(y),!0),bgOpacity:y=>typeof y!="number"?!1:($e(y),!0),bgColor:y=>typeof y!="string"?!1:(Fe(y),!0),textColor:y=>typeof y!="string"?!1:(qe(y),!0),edge:y=>y!=="shadow"&&y!=="outline"&&y!=="none"?!1:(De(y),!0),bold:y=>typeof y!="boolean"?!1:(Re(y),!0)}[c](x))try{localStorage.setItem(Gn[c],String(x))}catch{}},[]),[_t,wt]=L([]),[St,Ct]=L(null),[kt,Et]=L(!1),[xt,Lt]=L(!1),[me,G]=L(!1),[Tt,he]=L(!1),[Nt,Oe]=L(()=>{try{return localStorage.getItem("playerUseNativeControls")==="true"}catch{return!1}}),re=S(!1),Ce=S(-1),ye=T(()=>{const c=a.current;return!r||!t||!i?.name?null:{showId:r,episodeNumber:t,episodeCount:s,currentTime:c?c.currentTime:0,duration:c?c.duration:0,showName:i.name,showThumbnail:i.thumbnail,nativeName:i.names?.native,englishName:i.names?.english,genres:Array.isArray(i.genres)?i.genres.map(x=>typeof x=="string"?x:x?.name).filter(Boolean):void 0,popularityScore:i.score,type:i.type,isPlaying:c?!c.paused:!0,sessionId:k.current,isAdult:i.isAdult}},[r,t,s,i]),R=T((c=!1,x=!1)=>{if(re.current)return!1;const A=ye();if(!A)return!1;const y=a.current;if(!y&&o!=="iframe")return!1;const q=y?y.currentTime:0;if(!x){if(q===0)return!1;const V=y?Math.abs(q-Ce.current):0;if(!c&&y&&q!==y.duration&&V<5)return!1}return A.currentTime=q,Ce.current=q,c?(async()=>{try{await nt.progress.updateProgress.mutate(A),d.invalidateQueries({queryKey:[de.videoSources,r,t]}),d.invalidateQueries({queryKey:[de.continueWatching]}),d.invalidateQueries({queryKey:[de.thisWeekSchedule]}),d.invalidateQueries(g.continueWatching.pathFilter())}catch(V){console.error("Failed to update progress:",V)}})():It("progress.updateProgress",A).catch(V=>console.error("Failed to update progress:",V)),!0},[ye,o,d,r,t,g.continueWatching]);$(()=>{const c=a.current;c&&(c.volume=K,c.muted=P)},[a,K,P]),$(()=>{const c=()=>{re.current||R(!0)};window.addEventListener("beforeunload",c);const x=E,A=b;return()=>{window.removeEventListener("beforeunload",c),re.current||R(!0),x.current&&clearTimeout(x.current),A.current&&clearTimeout(A.current)}},[R]);const He=T(()=>{F(!0),b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{F(!1)},1e3)},[F]),ge=T(()=>{const c=p.current;c&&Yr(c,a.current).catch(x=>{console.error(`Error attempting to toggle full-screen mode: ${x?.message} (${x?.name})`)})},[]),ve=T(()=>{a.current&&(a.current.paused?a.current.play().catch(()=>console.warn("Autoplay was prevented.")):(a.current.pause(),F(!0)))},[F]),oe=T(()=>{const c=a.current;if(!c)return;const x=l.current.mouse||l.current.keyboard;c.playbackRate=x?2:1},[]),ie=T(c=>{l.current.mouse!==c&&(l.current.mouse=c,he(c||l.current.keyboard),oe())},[oe]),se=T(c=>{l.current.keyboard!==c&&(l.current.keyboard=c,he(l.current.mouse||c),oe())},[oe]),le=T(c=>{a.current&&(a.current.currentTime+=c,E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{R(!1,!0)},1500),F(!0))},[R,F]),be=T(()=>{if(!a.current)return;const c=!a.current.muted;a.current.muted=c,O(c),localStorage.setItem("playerMuted",String(c)),!c&&a.current.volume===0&&(a.current.volume=.5,H(.5),localStorage.setItem("playerVolume",String(.5))),F(!0)},[F]);$(()=>{const c=()=>a.current,x=Jr(c,A=>{z(A),A&&F(!0)});return z(ce(c())),x},[F]),$(()=>{const c=A=>{if(!A.target.closest('input, textarea, button, select, a, [role="button"], [contenteditable="true"]')){if(A.code==="Space"){if(A.preventDefault(),v.current)return;v.current=!0,w.current&&clearTimeout(w.current),w.current=window.setTimeout(()=>{w.current=null,v.current&&se(!0)},180);return}switch(A.key.toLowerCase()){case"f":ge();break;case"m":be();break;case"arrowright":le(10);break;case"arrowleft":le(-10);break;case"arrowup":if(A.preventDefault(),a.current){const q=Math.min(1,a.current.volume+.1);a.current.volume=q,H(q)}break;case"arrowdown":if(A.preventDefault(),a.current){const q=Math.max(0,a.current.volume-.1);a.current.volume=q,H(q)}break}}},x=A=>{if(A.code==="Space"){if(A.preventDefault(),v.current=!1,l.current.keyboard){se(!1);return}w.current&&(clearTimeout(w.current),w.current=null,ve())}};return document.addEventListener("keydown",c),document.addEventListener("keyup",x),()=>{document.removeEventListener("keydown",c),document.removeEventListener("keyup",x),w.current&&(clearTimeout(w.current),w.current=null),v.current=!1,se(!1),he(!1)}},[se,ve,ge,be,le]),$(()=>{const c=Q=>Q?!!Q.closest('[data-speed-boost-ignore="true"], [data-player-ui="true"], button, input, select, textarea, a, [role="button"], [role="slider"], [contenteditable="true"]'):!0,x=Q=>{if(Q.button!==0)return;const V=Q.target;if(!V||c(V))return;const ue=p.current;!ue||!ue.contains(V)||(f.current&&clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,ie(!0)},180))},A=Q=>{const V=Q.target;if(!V||c(V))return;const ue=p.current;!ue||!ue.contains(V)||(f.current&&clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,ie(!0)},180))},y=()=>{f.current&&(clearTimeout(f.current),f.current=null),ie(!1)},q=()=>{f.current&&(clearTimeout(f.current),f.current=null),v.current=!1,w.current&&(clearTimeout(w.current),w.current=null),se(!1),ie(!1),he(!1)};return document.addEventListener("mousedown",x),document.addEventListener("mouseup",y),document.addEventListener("touchstart",A,{passive:!0}),document.addEventListener("touchend",y),document.addEventListener("touchcancel",y),document.addEventListener("pointerup",y),document.addEventListener("pointercancel",y),window.addEventListener("blur",q),()=>{document.removeEventListener("mousedown",x),document.removeEventListener("mouseup",y),document.removeEventListener("touchstart",A),document.removeEventListener("touchend",y),document.removeEventListener("touchcancel",y),document.removeEventListener("pointerup",y),document.removeEventListener("pointercancel",y),window.removeEventListener("blur",q),f.current&&(clearTimeout(f.current),f.current=null)}},[se,ie]);const Ve=T(()=>{re.current=!1,B(!0),G(!1),setTimeout(()=>R(!1,!0),50)},[R]),We=T(()=>{B(!0),G(!1)},[]),ze=T(()=>{const c=a.current;c&&!c.paused&&c.readyState>=3&&!c.seeking||G(!0)},[]),Ue=T(()=>{G(!1)},[]),Ke=T(()=>{B(!1),G(!1),F(!0),setTimeout(()=>R(!1,!0),50)},[R]),Xe=S(!1);Xe.current=me,$(()=>{if(!me)return;let c=a.current?.currentTime??0,x=0;const A=window.setInterval(()=>{const y=a.current;if(!y)return;x+=1;const q=y.currentTime,Q=q!==c;if(c=q,!(y.paused||y.seeking)){if(Q||y.readyState>=3){G(!1);return}x>=24&&y.readyState>=2&&!y.ended&&G(!1)}},500);return()=>window.clearInterval(A)},[me]),$(()=>{re.current=!1,Ce.current=-1,C.current=0,k.current=Math.random().toString(36).substring(2),_(0),G(!1)},[r,t]);const Ge=T(()=>{_(0),G(!1)},[]);$(()=>{const c=k.current;return()=>{Mt(c)}},[r,t]),$(()=>{if(o!=="iframe")return;R(!1,!0);const c=setInterval(()=>{R(!1,!0)},6e4);return()=>clearInterval(c)},[o,R]);const Qe=T(()=>{_(a.current?.duration||0),oe()},[oe]),Ye=T(()=>{const c=a.current?.duration;c&&Number.isFinite(c)&&_(c)},[]),Je=T(()=>{if(a.current){const c=a.current.muted,x=a.current.volume;O(c),H(x),localStorage.setItem("playerMuted",String(c)),localStorage.setItem("playerVolume",String(x))}},[]),Ze=T(()=>{const c=a.current;if(!c)return;Xe.current&&!c.paused&&!c.seeking&&G(!1);const x=c.currentTime||0,A=Date.now();A-C.current>6e4&&R()&&(C.current=A);const y=e.find(q=>x>=q.start_time&&x<q.end_time)||null;Se(q=>q?.skip_id!==y?.skip_id?y:q),ne&&y&&!c.paused&&(c.currentTime=y.end_time,Se(null))},[e,ne,R]),et=T(()=>{const c=ye();c&&(c.currentTime=c.duration,nt.progress.updateProgress.mutate(c).then(()=>{d.invalidateQueries({queryKey:[de.videoSources,r,t]}),d.invalidateQueries({queryKey:[de.continueWatching]})}).catch(x=>console.error("Failed to send final progress:",x)))},[ye,d,r,t]),tt=T(()=>{re.current=!0,et()},[et]);$(()=>{const c=()=>{W&&(X(!1),u.current&&a.current?.play(),R(!1,!0))};return W&&(document.addEventListener("mouseup",c),document.addEventListener("pointerup",c),document.addEventListener("touchend",c),document.addEventListener("pointercancel",c),document.addEventListener("touchcancel",c)),()=>{document.removeEventListener("mouseup",c),document.removeEventListener("pointerup",c),document.removeEventListener("touchend",c),document.removeEventListener("pointercancel",c),document.removeEventListener("touchcancel",c)}},[W,R]);const Bt=pe(()=>({togglePlay:ve,seek:le,toggleMute:be,toggleFullscreen:ge,onPlay:Ve,onPause:Ke,onLoadedMetadata:Qe,onDurationChange:Ye,formatTime:$t,onVolumeChange:Je,onTimeUpdate:Ze,onEnded:tt,setShowControls:F,setIsScrubbing:X,setIsAutoSkipEnabled:dt,setCurrentSkipInterval:Se,setSubtitleFontSize:Ie,setSubtitlePosition:Me,setSubtitleBgOpacity:$e,setSubtitleBgColor:Fe,setSubtitleTextColor:qe,setSubtitleEdge:De,setSubtitleBold:Re,setSubtitleStyle:je,setAvailableSubtitles:wt,setActiveSubtitleTrack:Ct,setShowSettings:Et,setShowVolumeSlider:Lt,wasPlayingBeforeScrub:u,inactivityTimer:b,flashControls:He,setIsFullscreen:z,onWaiting:ze,onPlaying:We,onCanPlay:Ue,sendProgressUpdate:R,setUseNativeControls:Oe,resetMediaState:Ge}),[ve,le,be,ge,Ve,Ke,Qe,Ye,Je,Ze,tt,z,ze,We,Ue,R,Oe,Ge,He,je]);return{refs:{videoRef:a,playerContainerRef:p},state:{isPlaying:m,isMuted:P,volume:K,isFullscreen:N,duration:h,showControls:D,isScrubbing:W,isAutoSkipEnabled:ne,currentSkipInterval:ft,subtitleFontSize:pt,subtitlePosition:mt,subtitleBgOpacity:ht,subtitleBgColor:yt,subtitleTextColor:gt,subtitleEdge:vt,subtitleBold:bt,availableSubtitles:_t,activeSubtitleTrack:St,showSettings:kt,showVolumeSlider:xt,isBuffering:me,isSpeedBoostActive:Tt,useNativeControls:Nt},actions:Bt}};function Zr(){try{return typeof navigator<"u"&&/android/i.test(navigator.userAgent)}catch{return!1}}function Uo(e,r){const{refs:t,actions:s}=e,o=S(r);o.current=r;const i=S(!1),d=S(!1),g=a=>{try{if(a)return a.matches}catch{}try{return window.innerWidth>window.innerHeight}catch{return!1}};$(()=>{if(!Zr())return;let a=null;const p=()=>{const b=t.playerContainerRef.current;if(g(a)){if(!o.current||!b||ce(t.videoRef.current)||d.current)return;i.current=!0,s.toggleFullscreen()}else d.current=!1,i.current&&(i.current=!1,ce(t.videoRef.current)&&s.toggleFullscreen())};try{a=window.matchMedia("(orientation: landscape)"),a.addEventListener?a.addEventListener("change",p):a.addListener(p)}catch{}return p(),()=>{try{a&&(a.removeEventListener?a.removeEventListener("change",p):a.removeListener(p))}catch{}}},[s,t.playerContainerRef,t.videoRef,r]),$(()=>{const a=()=>{if(!ce(t.videoRef.current)){i.current=!1;try{window.matchMedia("(orientation: landscape)").matches&&(d.current=!0)}catch{d.current=!0}}};return document.addEventListener("fullscreenchange",a),document.addEventListener("webkitfullscreenchange",a),()=>{document.removeEventListener("fullscreenchange",a),document.removeEventListener("webkitfullscreenchange",a)}},[t.videoRef])}const eo=e=>Math.max(8,Math.min(40,Math.ceil(e/16.7)+4));function Ko({videoRef:e,canvasRef:r,delayMs:t,enabled:s}){const o=S(t);o.current=t;const i=S([]),d=S(-1),g=S(-1),a=S(!1),p=S(0),b=S(null);$(()=>{const u=v=>{if(v)try{v.close()}catch{}},E=()=>{for(const v of i.current)u(v.bitmap);i.current=[]};if(!s){E(),d.current=-1,g.current=-1,a.current=!1,p.current=0;return}let C=!1;const l=()=>{b.current!==null&&(cancelAnimationFrame(b.current),b.current=null)},f=()=>{C||(l(),b.current=requestAnimationFrame(()=>{w()}))};async function w(){if(C)return;const v=e.current,k=r.current;if(!v||!k||v.videoWidth===0){f();return}if(v.paused||v.ended||document.hidden||v.readyState<HTMLMediaElement.HAVE_CURRENT_DATA){f();return}const m=v.getVideoPlaybackQuality().totalVideoFrames;if(m===d.current){f();return}(v.seeking||g.current>=0&&Math.abs(v.currentTime-g.current)>.5)&&(E(),a.current=!1,p.current=0,d.current=-1),g.current=v.currentTime,(k.width!==v.videoWidth||k.height!==v.videoHeight)&&(k.width=v.videoWidth,k.height=v.videoHeight);const B=Math.max(0,o.current||0);B>p.current&&(a.current=!1);try{const P=await createImageBitmap(v);if(C){u(P);return}d.current=m;const O=performance.now(),K=k.getContext("2d"),H=_=>{K&&K.drawImage(_,0,0,k.width,k.height)};if(B<=0){E(),a.current=!1,p.current=0,H(P),u(P),f();return}const N=i.current;N.push({bitmap:P,capture:O});const z=eo(B);for(;N.length>z;)u(N.shift()?.bitmap);let h=-1;for(let _=N.length-1;_>=0;_--)if(O-N[_].capture>=B){h=_;break}if(h!==-1){for(let D=0;D<h;D++)u(N.shift()?.bitmap);const _=N.shift();_?(H(_.bitmap),u(_.bitmap),a.current=!0,p.current=B):H(P)}else if(!a.current)H(P);else{const _=N.shift();_?(H(_.bitmap),u(_.bitmap)):H(P)}}catch{}f()}return f(),()=>{C=!0,l();for(const v of i.current)try{v.bitmap.close()}catch{}i.current=[]}},[s,e,r])}const ot=(e,r)=>{try{localStorage.setItem("playerVideoDelayMs",String(e)),localStorage.setItem("playerVideoDelayEnabled",String(r))}catch{}},st=e=>{try{localStorage.setItem("playerVideoDelayEnabled",String(e))}catch{}};function Xo(e,r){const[t,s]=L(()=>{try{const m=Number(localStorage.getItem("playerVideoDelayMs"));if(Number.isFinite(m)&&m>=0&&m<=500)return Math.round(m)}catch{}return 180}),[o,i]=L(()=>{try{return localStorage.getItem("playerVideoDelayEnabled")==="true"}catch{return!1}}),[d,g]=L(!1),[a,p]=L(!1),b=S(null),u=S(null),E=m=>{const B=Math.max(0,Math.min(500,Math.round(m)));s(B);try{localStorage.setItem("playerVideoDelayMs",String(B))}catch{}},C=m=>{i(m),st(m)},l=T(()=>{p(!1),g(!1)},[]);return{videoDelayMs:t,videoDelayEnabled:o,setDelayEnabled:C,handleVideoDelayChange:E,isCalibrating:d,testClipActive:a,stopCalibration:l,openAvSyncCalibrator:()=>{b.current={enabled:o,ms:t},i(!0),st(!0),r?.(),g(!0)},cancelAvSyncCalibrator:()=>{const m=b.current;b.current=null,m&&(s(m.ms),i(m.enabled),ot(m.ms,m.enabled)),p(!1),g(!1)},applyAvSyncCalibrator:()=>{b.current=null,i(!0),ot(t,!0),p(!1),g(!1)},toggleTestClip:()=>{if(a){p(!1);return}const m=e.current;m&&!isNaN(m.currentTime)&&(u.current=m.currentTime),p(!0)},calibReturnRef:u,effectiveVideoDelayMs:o?t:0}}function Go(){const[e,r]=L(()=>{try{return localStorage.getItem("playerTheaterMode")==="true"}catch{return!1}});$(()=>{try{e?document.body.classList.add("theater-mode"):document.body.classList.remove("theater-mode")}catch(o){console.error(o)}return()=>{try{document.body.classList.remove("theater-mode")}catch(o){console.error(o)}}},[e]);const t=T(()=>{r(o=>{const i=!o;try{localStorage.setItem("playerTheaterMode",i.toString())}catch{}return i})},[]),s=T(o=>{if(e&&o.target===o.currentTarget){r(!1);try{localStorage.setItem("playerTheaterMode","false")}catch{}}},[e]);return{isTheaterMode:e,toggleTheaterMode:t,handleLayoutClick:s}}const ee={enabled:!0,blur:60,saturation:150,brightness:70,opacity:60};function to(){try{const e=localStorage.getItem("playerAmbientLight");if(!e)return ee;const r=JSON.parse(e),t=(s,o,i,d)=>{const g=Number(s);return Number.isFinite(g)?Math.max(i,Math.min(d,g)):o};return{enabled:r.enabled??ee.enabled,blur:t(r.blur,ee.blur,0,120),saturation:t(r.saturation,ee.saturation,0,200),brightness:t(r.brightness,ee.brightness,20,120),opacity:t(r.opacity,ee.opacity,10,100)}}catch{return ee}}function Qo(){const[e,r]=L(to),t=T(s=>{r(o=>{const i={...o,...s};try{localStorage.setItem("playerAmbientLight",JSON.stringify(i))}catch{}return i})},[]);return{settings:e,update:t}}const no="_theaterAmbient_x9t0o_1",ro={theaterAmbient:no},xe=160,Le=90,oo=120,Yo=({videoRef:e,active:r,settings:t,className:s})=>{const o=S(null);return $(()=>{if(!r)return;const i=o.current,d=e.current;if(!i||!d)return;const g=i.getContext("2d",{alpha:!1});if(!g)return;let a=0,p=0,b=!1;const u=()=>{if(!(d.readyState<2||!d.videoWidth))try{const l=d.videoWidth,f=d.videoHeight,w=xe/Le,v=l/f;let k=l,m=f,B=0,P=0;v>w?(k=f*w,B=(l-k)/2):(m=l/w,P=(f-m)/2),g.drawImage(d,B,P,k,m,0,0,xe,Le)}catch{}},E=l=>{b||d.paused||(a=requestAnimationFrame(E),!(l-p<oo)&&(p=l,u()))},C=()=>{b||(cancelAnimationFrame(a),p=0,a=requestAnimationFrame(E))};return d.addEventListener("play",C),d.addEventListener("seeked",u),d.addEventListener("loadeddata",u),a=requestAnimationFrame(E),()=>{b=!0,cancelAnimationFrame(a),d.removeEventListener("play",C),d.removeEventListener("seeked",u),d.removeEventListener("loadeddata",u)}},[r,e]),r?n("canvas",{ref:o,width:xe,height:Le,"aria-hidden":"true",className:s??ro.theaterAmbient,style:{filter:`blur(${t.blur}px) saturate(${t.saturation}%) brightness(${t.brightness}%)`,opacity:t.opacity/100}}):null},so="_row_1fq55_1",ao="_rowHeader_1fq55_9",co="_rowLabel_1fq55_17",io="_rowValue_1fq55_28",lo="_slider_1fq55_36",uo="_swatches_1fq55_99",fo="_swatch_1fq55_99",po="_swatchPicked_1fq55_114",mo="_colorInput_1fq55_120",ho="_segmented_1fq55_131",j={row:so,rowHeader:ao,rowLabel:co,rowValue:io,slider:lo,swatches:uo,swatch:fo,swatchPicked:po,colorInput:mo,segmented:ho},yo=({label:e,display:r,min:t,max:s,step:o,value:i,percent:d,onChange:g,onCommit:a})=>n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:[n("span",{className:j.rowLabel,children:e}),n("span",{className:j.rowValue,children:r})]}),n("input",{type:"range",className:j.slider,min:t,max:s,step:o,value:i,"aria-label":e,"data-speed-boost-ignore":"true",onInput:p=>g(Number(p.target.value)),onMouseDown:p=>p.stopPropagation(),onPointerDown:p=>p.stopPropagation(),onTouchStart:p=>p.stopPropagation(),onPointerUp:a,onPointerCancel:a,onTouchEnd:a,onKeyUp:a,onBlur:a,style:{"--slider-percent":`${d}%`}})]}),Jo=({label:e,colors:r,value:t,onChange:s})=>n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:n("span",{className:j.rowLabel,children:e})}),n("div",{className:j.swatches,children:[r.map(o=>n("button",{type:"button","aria-label":`${e} ${o}`,"aria-pressed":t.toLowerCase()===o.toLowerCase(),onClick:()=>s(o),className:`${j.swatch} ${t.toLowerCase()===o.toLowerCase()?j.swatchPicked:""}`,style:{backgroundColor:o}},o)),n("input",{type:"color","aria-label":`Custom ${e.toLowerCase()}`,className:j.colorInput,value:t,"data-speed-boost-ignore":"true",onInput:o=>s(o.target.value),onMouseDown:o=>o.stopPropagation(),onPointerDown:o=>o.stopPropagation(),onTouchStart:o=>o.stopPropagation()})]})]});function Zo({label:e,options:r,value:t,onChange:s}){return n("div",{className:j.row,children:[n("div",{className:j.rowHeader,children:n("span",{className:j.rowLabel,children:e})}),n("div",{className:j.segmented,role:"group","aria-label":e,children:r.map(o=>n("button",{type:"button","aria-pressed":t===o,onClick:()=>s(o),children:[n("span",{children:o}),t===o&&n(U,{name:"check",size:10})]},o))})]})}const we=10,Pe=500,Te=e=>Math.max(0,Math.min(Pe,Math.round(e))),es=({isOpen:e,ms:r,onChange:t,onApply:s,onClose:o,testClipActive:i,onTestClip:d})=>e?n("div",{role:"dialog","aria-label":"Calibrate audio video sync","data-speed-boost-ignore":"true",onClick:g=>g.stopPropagation(),style:{position:"absolute",right:8,bottom:112,width:"min(260px, calc(100% - 16px))",maxHeight:"calc(100% - 124px)",overflowY:"auto",overflowX:"hidden",zIndex:60,display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:12,borderRadius:"var(--radius-lg)",border:"1px solid var(--glass-border)",background:"rgba(18, 18, 22, 0.95)",boxShadow:"var(--glass-shadow)",backdropFilter:"blur(14px)",WebkitBackdropFilter:"blur(14px)",boxSizing:"border-box"},children:[n("div",{style:{fontSize:"0.8rem",fontWeight:800,color:"var(--text-primary)"},children:"A/V sync"}),n("div",{children:n(te,{size:"sm",variant:"secondary",onClick:d,children:i?"Back to video":"Preview test clip"})}),n("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,flexWrap:"wrap"},children:[n(te,{size:"sm",onClick:()=>t(Te(r-we)),"aria-label":"Decrease delay by 10 milliseconds",children:["− ",we,"ms"]}),n("div",{style:{fontSize:"1.1rem",fontWeight:800,minWidth:64,textAlign:"center"},children:[r,"ms"]}),n(te,{size:"sm",onClick:()=>t(Te(r+we)),"aria-label":"Increase delay by 10 milliseconds",children:["+ ",we,"ms"]})]}),n(yo,{label:"Video delay",display:`${r}ms`,min:0,max:Pe,step:5,value:r,percent:r/Pe*100,onChange:g=>t(Te(g))}),n("div",{style:{display:"flex",gap:8,justifyContent:"center",flexWrap:"wrap"},children:[n(te,{size:"sm",variant:"secondary",onClick:o,children:"Cancel"}),n(te,{size:"sm",onClick:s,children:["Apply ",r,"ms"]})]})]}):null;function ts({videoRef:e,sourceType:r,resetKey:t,onEnd:s}){const o=S(!1),i=S(s);i.current=s,$(()=>{o.current=!1},[t]);const d=T(()=>{const a=e.current?.duration;!a||!Number.isFinite(a)||console.info(`[playback] duration ${a.toFixed(2)}s`)},[e]);return{checkEnd:T((a=!1)=>{const p=e.current;!p||r==="iframe"||o.current||!a&&!qt(p.currentTime,p.duration)||(o.current=!0,console.info(`[playback] end reached at ${p.currentTime.toFixed(2)}s / ${p.duration.toFixed(2)}s`),i.current())},[r,e]),logDuration:d}}export{Yo as A,Jo as B,$o as C,No as D,Ho as E,Zo as F,J as G,ee as H,yo as M,Oo as P,Mo as R,qo as S,To as T,Do as U,Ro as a,Fo as b,Wo as c,ko as d,Eo as e,Bo as f,Ao as g,Lo as h,Xo as i,Ko as j,Go as k,ts as l,Uo as m,Qo as n,Co as o,jo as p,Io as q,xo as r,ar as s,Pr as t,zo as u,So as v,ae as w,es as x,Vo as y,Po as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{T as o}from"./vendor-core-DfaOB3Rn.js";import{b as a}from"./vendor-query-BBT5_sHx.js";import{q as i,J as n}from"./index-
|
|
1
|
+
import{T as o}from"./vendor-core-DfaOB3Rn.js";import{b as a}from"./vendor-query-BBT5_sHx.js";import{q as i,J as n}from"./index-D0DdVatn.js";const l=300*1e3,c=()=>{const e=a({queryKey:[i.providers],queryFn:()=>n("/api/providers"),staleTime:l,retry:1}),r=Array.isArray(e.data)?e.data:null,s=o(()=>r&&r.length>0?r.filter(t=>t.loaded):[],[r]);return{...e,options:s,isFallback:!r||r.length===0}};export{c as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as l,u as o,S as d}from"./vendor-core-DfaOB3Rn.js";import{I as v}from"./vendor-icons-DrybRNxP.js";import{M as T}from"./MediaCard-
|
|
1
|
+
import{N as l,u as o,S as d}from"./vendor-core-DfaOB3Rn.js";import{I as v}from"./vendor-icons-DrybRNxP.js";import{M as T}from"./MediaCard-B1llLoho.js";import{T as g}from"./TvPopup-Q9_MFJdx.js";import{c as m,i as f}from"./useTvLibrary-CNQcDI7O.js";import{b as i}from"./vendor-query-BBT5_sHx.js";import{i as p}from"./index-D0DdVatn.js";const _=l(({item:e})=>{const a=e.type==="tv"||e.type==="tvSeries"||e.type==="tvMiniSeries",s=m(e.type,e.id);return o(T,{item:{id:String(e.id),title:e.title,thumbnail:e.image,typeBadge:a?"TV":"Movie",isAdult:f(e)},linkTo:s,hoverIcon:"info",showInfoButton:!0,metaRow:o(d,{children:[e.year&&o("span",{style:{opacity:.75},children:e.year}),e.vote_average!=null&&o("span",{style:{display:"inline-flex",alignItems:"center",gap:3},children:[o(v,{name:"star",size:10}),Number(e.vote_average).toFixed(1)]})]}),renderPopup:(n,t)=>o(g,{item:e,anchorRect:n,onMouseEnter:t.onMouseEnter,onMouseLeave:t.onMouseLeave,onRequestClose:t.close})})}),u=1e3*60*5,b=e=>{const a=p(),{query:s,type:n,genre:t,year:r,sort_by:y,page:c}=e;return i({...a.tv.search.queryOptions({q:s?.trim()||"",type:n||"multi",genre:t||"",year:r&&r!=="ALL"?r:"",sortBy:y||"popularity.desc",page:c||1}),staleTime:u,retry:1})},A=(e="all",a="week",s=1,n=!0)=>{const t=p(),r=i({...t.tv.trending.queryOptions({mediaType:e,timeWindow:a,page:s}),enabled:n,staleTime:u,retry:1});return{...r,data:r.data}};export{_ as T,b as a,A as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{T as p}from"./vendor-core-DfaOB3Rn.js";import{b as v,u as i,a as n}from"./vendor-query-BBT5_sHx.js";import{i as a,A as o,q as y,t as g}from"./index-
|
|
1
|
+
import{T as p}from"./vendor-core-DfaOB3Rn.js";import{b as v,u as i,a as n}from"./vendor-query-BBT5_sHx.js";import{i as a,A as o,q as y,t as g}from"./index-D0DdVatn.js";import{i as u}from"./libraryInvalidation-BFqNv8Cx.js";const l=t=>String(t).toLowerCase()==="movie"?"movie":"tv",h=(t,e)=>`${l(t)}:${e}`,Q=(t,e)=>{const r=l(t);return`/tv/${e}?type=${r}`},$=(t,e,r,s)=>{const c=new URLSearchParams;return c.set("type",l(t)),r!==void 0&&c.set("s",String(r)),s!==void 0&&c.set("e",String(s)),`/tv/${e}/watch?${c.toString()}`},O=t=>t.adult===!0||t.adult===1,R={10759:"Action & Adventure",16:"Animation",35:"Comedy",80:"Crime",99:"Documentary",18:"Drama",10751:"Family",10762:"Kids",9648:"Mystery",10765:"Sci-Fi & Fantasy",37:"Western"},f={28:"Action",12:"Adventure",16:"Animation",35:"Comedy",80:"Crime",99:"Documentary",18:"Drama",10751:"Family",14:"Fantasy",36:"History",27:"Horror",9648:"Mystery",10749:"Romance",878:"Sci-Fi",53:"Thriller",10752:"War",37:"Western"},A=["Watching","Completed","On-Hold","Dropped","Planned"],T=(t,e)=>h(t,e),E=(t="All",e=1,r=24)=>{const s=a();return v(s.tvLibrary.list.queryOptions({status:t,page:e,limit:r}))},b=()=>{const t=a();return v({...t.tvLibrary.ids.queryOptions(),staleTime:1e3*60})},k=t=>{const e=a();return v({...e.tvLibrary.check.queryOptions({id:t||""}),enabled:!!t,staleTime:1e3*60})},M=(t=24)=>{const e=a();return v(e.tvProgress.continueWatching.queryOptions({limit:t}))},B=t=>{const e=a();return v({...e.tvProgress.getByMedia.queryOptions({mediaId:t||""}),enabled:!!t})},I=(t,e,r)=>{const s=a();return v({...s.tvProgress.latest.queryOptions({mediaId:t||"",season:e,episode:r}),enabled:!!t,staleTime:0})},F=()=>{const t=a(),e=i();return n({mutationFn:async r=>{const{silent:s,...c}=r;return g.tvLibrary.add.mutate(c)},onSuccess:(r,s)=>{s.silent||o.success("Added to TV watchlist"),e.invalidateQueries({queryKey:[y.tvLibrary]}),e.invalidateQueries(t.tvLibrary.pathFilter())},onError:r=>{o.error(`Failed to add: ${r.message}`)}})},S=()=>{const t=a(),e=i();return n(t.tvLibrary.remove.mutationOptions({onSuccess:()=>{o.success("Removed from TV watchlist"),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to remove: ${r.message}`)}}))},w=()=>{const t=a(),e=i();return n(t.tvLibrary.setStatus.mutationOptions({onSuccess:()=>{o.success("Status updated"),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to update status: ${r.message}`)}}))},D=()=>{const t=a(),e=i();return n(t.tvProgress.save.mutationOptions({onSuccess:()=>{u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())}}))},W=()=>{const t=a(),e=i();return n(t.tvProgress.remove.mutationOptions({onSuccess:()=>{o.success("Progress reset"),u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to reset progress: ${r.message}`)}}))},V=()=>{const t=a(),e=i();return n(t.tvLibrary.batchStatus.mutationOptions({onSuccess:r=>{o.success(`Status updated for ${r.updated??0} items`),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to update statuses: ${r.message}`)}}))},_=()=>{const t=a(),e=i();return n(t.tvLibrary.removeMany.mutationOptions({onSuccess:r=>{const s=r.removed??0;o.success(`Removed ${s} ${s===1?"item":"items"} from TV watchlist`),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to remove: ${r.message}`)}}))},U=()=>{const t=a(),e=i();return n(t.tvProgress.removeMany.mutationOptions({onSuccess:r=>{const s=r.removed??0;o.success(`Reset progress for ${s} ${s===1?"item":"items"}`),u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to reset progress: ${r.message}`)}}))},H=()=>{const t=F(),e=S(),{data:r}=b(),s=p(()=>new Set(r?.ids||[]),[r]);return{toggle:d=>{const m=T(d.mediaType,d.tmdbId);s.has(m)?e.mutate(m):t.mutate({...d,poster:d.poster||""})},bookmarkedIds:s,pending:t.isPending||e.isPending}};export{f as M,R as T,S as a,W as b,Q as c,h as d,k as e,H as f,D as g,w as h,O as i,F as j,I as k,B as l,E as m,l as n,V as o,_ as p,U as q,A as r,$ as t,M as u};
|
package/client/dist/index.html
CHANGED
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
background-color: #0c0d12;
|
|
34
34
|
}
|
|
35
35
|
</style>
|
|
36
|
-
<script type="module" crossorigin src="/assets/index-
|
|
36
|
+
<script type="module" crossorigin src="/assets/index-D0DdVatn.js"></script>
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assets/vendor-core-DfaOB3Rn.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assets/vendor-query-BBT5_sHx.js">
|
|
39
39
|
<link rel="modulepreload" crossorigin href="/assets/vendor-icons-DrybRNxP.js">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serifpersia/dango",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.4",
|
|
4
4
|
"description": "A web application for watching anime.",
|
|
5
5
|
"main": "orchestrator.js",
|
|
6
6
|
"repository": {
|
|
@@ -69,5 +69,5 @@
|
|
|
69
69
|
"allowScripts": {
|
|
70
70
|
"esbuild@0.28.2": true
|
|
71
71
|
},
|
|
72
|
-
"versionDate": "2026-10-
|
|
72
|
+
"versionDate": "2026-10-22T16:29:29.266Z"
|
|
73
73
|
}
|
package/server/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
._sortSelect_12kj5_1{padding:var(--space-2-5) var(--space-3);border:var(--space-px) solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer}._grid_12kj5_11{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--size-250),1fr));gap:var(--space-4);transition:opacity var(--transition-fast)}._fetching_12kj5_18{opacity:.45;pointer-events:none}._card_12kj5_23{display:flex;flex-direction:column;text-align:left;padding:0;border:none;background:none;cursor:pointer;color:inherit}._thumbWrap_12kj5_34{position:relative;aspect-ratio:4 / 3;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-tertiary);transition:transform var(--transition-fast) var(--ease-smooth),box-shadow var(--transition-fast) var(--ease-smooth)}._card_12kj5_23:hover ._thumbWrap_12kj5_34{transform:translateY(calc(var(--space-1) * -1));box-shadow:var(--shadow-lg)}._thumb_12kj5_34{width:100%;height:100%;object-fit:cover;display:block}._thumbPlaceholder_12kj5_57{display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:var(--font-size-sm)}._adultBadge_12kj5_65{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-2px) var(--space-2);border-radius:var(--radius-full);background:var(--color-danger-bg);color:var(--text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}._cardTitle_12kj5_77{margin:var(--space-2) 0 var(--space-2px);font-size:var(--font-size-sm);color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}._cardMeta_12kj5_87{margin:0;font-size:var(--font-size-xs);color:var(--text-tertiary)}._asmrCardWrap_12kj5_93{position:relative;min-width:0}._bookmarkBtn_12kj5_98{position:absolute;top:var(--space-2);right:var(--space-2);width:28px;height:28px;border-radius:50%;background-color:#0009;color:#fff;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s ease,background-color .15s ease,transform .15s ease;z-index:20}._asmrCardWrap_12kj5_93:hover ._bookmarkBtn_12kj5_98,._asmrCardWrap_12kj5_93:focus-within ._bookmarkBtn_12kj5_98,._bookmarkBtn_12kj5_98._bookmarked_12kj5_122{opacity:1}._bookmarkBtn_12kj5_98:hover{background-color:var(--accent);border-color:var(--accent);color:var(--accent-text);transform:scale(1.08)}._bookmarkBtn_12kj5_98._bookmarked_12kj5_122{background-color:var(--accent);border-color:var(--accent);color:var(--accent-text)}@media(hover:none),(pointer:coarse){._bookmarkBtn_12kj5_98{opacity:1}}._statusMsg_12kj5_145{text-align:center;color:var(--text-secondary);padding:var(--space-8) 0}._skeletonCard_12kj5_153{display:flex;flex-direction:column}._skeletonThumb_12kj5_158{aspect-ratio:4 / 3;border-radius:var(--radius-lg);background:var(--bg-tertiary)}._skeletonLine_12kj5_164{height:var(--space-3);border-radius:var(--radius-xs);margin-top:var(--space-2);background:var(--bg-tertiary)}._shimmer_12kj5_171{position:relative;overflow:hidden}._shimmer_12kj5_171:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--shimmer-highlight),transparent);animation:_skeleton-wave_12kj5_1 var(--duration-shimmer) infinite}._pagination_12kj5_185{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-top:var(--space-6)}._pageBtn_12kj5_193{padding:var(--space-2) var(--space-5);border:var(--space-px) solid var(--border-primary);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);cursor:pointer}._pageBtn_12kj5_193:disabled{opacity:.4;cursor:not-allowed}._pageIndicator_12kj5_207{color:var(--text-secondary);font-size:var(--font-size-sm)}._matureToggleWrap_12kj5_212{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}._matureLabel_12kj5_219{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--text-secondary)}._translateToggleWrap_12kj5_225{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}._filterTogglesGroup_12kj5_232{display:flex;align-items:center;gap:var(--space-4);margin-left:auto}._filterTogglesGroup_12kj5_232 ._translateToggleWrap_12kj5_225,._filterTogglesGroup_12kj5_232 ._matureToggleWrap_12kj5_212{margin-left:0}._filterBar_12kj5_244{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}._filterLabel_12kj5_251{font-size:var(--font-size-sm);color:var(--text-secondary)}._detailOverlay_12kj5_256{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background:var(--bg-overlay-heavy);-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));padding:var(--space-4)}._detailModal_12kj5_268{position:relative;width:min(var(--size-720),100%);max-height:85vh;overflow-y:auto;border-radius:var(--radius-xl);border:var(--space-px) solid var(--border-secondary);background:var(--bg-elevated);box-shadow:var(--glass-shadow);padding:var(--space-5)}._detailClose_12kj5_280{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;align-items:center;justify-content:center;width:var(--size-34);height:var(--size-34);border:none;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}._detailHeader_12kj5_296{display:flex;flex-direction:column;gap:var(--space-4)}._detailCover_12kj5_302{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-lg);flex-shrink:0;background:var(--bg-tertiary)}._detailInfo_12kj5_311{min-width:0}._detailTitle_12kj5_315{margin:0 0 var(--space-2);font-size:var(--font-size-lg);color:var(--text-primary);line-height:1.35}._detailRj_12kj5_322{margin:0 0 var(--space-3);font-size:var(--font-size-xs);color:var(--text-tertiary)}._metaRow_12kj5_328{margin:0 0 4px;font-size:var(--font-size-sm);color:var(--text-secondary)}._metaLabel_12kj5_334{display:inline-block;min-width:var(--space-16);color:var(--text-tertiary)}._tagChips_12kj5_340{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}._tagChip_12kj5_340{padding:var(--space-2px) var(--space-2);border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary);font-size:var(--font-size-xs)}._npOverlay_12kj5_356{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;flex-direction:column;background:var(--bg-dark);overflow:hidden;overscroll-behavior:contain}body.asmr-player-open{overflow:hidden}._playerBarDocked_12kj5_371{position:static;transform:translateY(0);max-height:var(--size-240);overflow:visible;transition:transform var(--transition-emphasized),max-height var(--transition-emphasized),opacity var(--transition-base),padding var(--transition-base),border-width var(--transition-base);will-change:transform,max-height,opacity}._playerBarDockedHidden_12kj5_385{max-height:0!important;opacity:0;transform:translateY(18%);padding-top:0!important;padding-bottom:0!important;border-width:0!important;pointer-events:none;overflow:hidden!important}._npOverlayControlsHidden_12kj5_396 ._npArrow_12kj5_396,._npOverlayControlsHidden_12kj5_396 ._npImageCount_12kj5_397{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.96);transition:opacity var(--transition-base),transform var(--transition-emphasized)}._npOverlayControlsHidden_12kj5_396 ._npStage_12kj5_406{cursor:pointer}._npStage_12kj5_406{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--bg-black);transition:padding var(--transition-emphasized)}._npStage_12kj5_406,._sliderViewport_12kj5_422,._slide_12kj5_422,._slideImg_12kj5_424{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;outline:none;-webkit-user-select:none;user-select:none}._npStage_12kj5_406:focus,._sliderViewport_12kj5_422:focus,._slide_12kj5_422:focus,._slideImg_12kj5_424:focus{outline:none!important;box-shadow:none!important}._slideImg_12kj5_424::-moz-focus-inner{border:0}._npStageBlank_12kj5_443{background:var(--bg-dark)}._npStageImg_12kj5_447{max-width:min(92vw,var(--size-900));max-height:100%;object-fit:contain;-webkit-user-select:none;user-select:none}._sliderViewport_12kj5_422{position:absolute;inset:0;overflow:hidden}._sliderTrack_12kj5_462{display:flex;height:100%;transition:transform var(--transition-normal);will-change:transform}._slide_12kj5_422{flex:0 0 100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-5) var(--size-84);box-sizing:border-box;transition:padding var(--transition-emphasized)}._slideImg_12kj5_424{max-width:100%;max-height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;opacity:0;transform:scale(.985);-webkit-tap-highlight-color:transparent;outline:none;transition:opacity var(--transition-base),transform var(--transition-emphasized),max-height var(--transition-emphasized)}._slideImgLoaded_12kj5_495{opacity:1;transform:none}._slideSpinner_12kj5_500{position:absolute;left:50%;top:50%;width:var(--size-44);height:var(--size-44);margin:calc(var(--size-22) * -1) 0 0 calc(var(--size-22) * -1);border-radius:var(--radius-full);border:var(--space-2px) solid var(--border-strong);border-top-color:var(--text-primary);animation:_spin_12kj5_1 var(--duration-spin) linear infinite;pointer-events:none}@keyframes _spin_12kj5_1{to{transform:rotate(360deg)}}._npArrow_12kj5_396{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:var(--size-48);height:var(--size-48);border:var(--space-px) solid var(--border-strong);border-radius:var(--radius-full);background:var(--bg-scrim);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));box-shadow:var(--shadow-scrim);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast)}._npArrow_12kj5_396:hover:not(:disabled){background:var(--bg-scrim-strong)}._npArrow_12kj5_396:disabled{opacity:.25;cursor:not-allowed}._npArrowLeft_12kj5_550{left:var(--space-5)}._npArrowRight_12kj5_554{right:var(--space-5)}._npImageCount_12kj5_397{position:absolute;top:calc(var(--space-4) + var(--space-16));right:var(--space-4);padding:var(--space-2px) var(--space-2-5);border-radius:var(--radius-full);background:var(--bg-overlay-strong);color:var(--text-secondary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;z-index:var(--z-base)}._chapterPanel_12kj5_571{position:absolute;bottom:calc(100% + var(--space-2-5));right:var(--space-5);width:min(var(--size-440),calc(100vw - var(--space-8)));max-height:min(46vh,var(--size-420));overflow-y:auto;background:var(--bg-elevated);border:var(--space-px) solid var(--border-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);padding:var(--space-1-5);z-index:var(--z-dropdown)}._chapterRow_12kj5_586{display:flex;align-items:baseline;gap:var(--space-3);width:100%;text-align:left;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm)}._chapterRow_12kj5_586:hover{background:var(--bg-tertiary)}._chapterRowActive_12kj5_605{background:var(--bg-selected)}._chapterRowTime_12kj5_609{flex-shrink:0;color:var(--text-tertiary);font-variant-numeric:tabular-nums}._chapterRowActive_12kj5_605 ._chapterRowTime_12kj5_609{color:var(--accent);font-weight:var(--font-weight-semibold)}._chapterRowLabel_12kj5_620{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}._npBackdrop_12kj5_626{position:fixed;inset:0;z-index:-1}._playerBtn_12kj5_632._playerBtnActive_12kj5_632{color:var(--accent);background:color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:0 0 10px var(--accent-glow)}._tracksSection_12kj5_638{margin-top:var(--space-5)}._tracksHeading_12kj5_642{font-size:var(--font-size-base);color:var(--text-primary);margin:0 0 var(--space-2)}._trackList_12kj5_648{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1-5)}._trackRow_12kj5_657{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:var(--space-px) solid var(--border-secondary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm)}._trackRow_12kj5_657:hover{border-color:var(--accent)}._trackIcon_12kj5_675{color:var(--accent);flex-shrink:0}._trackLabel_12kj5_680{flex:1;text-align:left}._trackType_12kj5_685{font-size:var(--font-size-xs);color:var(--text-tertiary)}._noTracks_12kj5_690{color:var(--text-secondary);font-size:var(--font-size-sm)}._playAllBtn_12kj5_695{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-5);border:none;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-text);font-size:var(--font-size-base);cursor:pointer}._detailActions_12kj5_708{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}._playerBar_12kj5_371{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-overlay);display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2-5) var(--space-5);padding-bottom:calc(var(--space-2-5) + env(safe-area-inset-bottom,0px));background:var(--glass-bg);border-top:var(--space-px) solid var(--glass-border);-webkit-backdrop-filter:blur(var(--blur-lg));backdrop-filter:blur(var(--blur-lg))}._playerActions_12kj5_731{display:flex;align-items:center;gap:var(--space-2)}._playerInfo_12kj5_737{min-width:0;width:var(--size-240)}._playerTitle_12kj5_742{margin:0;font-size:var(--font-size-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._playerTrack_12kj5_751{margin:var(--space-2px) 0 0;font-size:var(--font-size-xs);color:var(--text-tertiary)}._playerControls_12kj5_757{display:flex;align-items:center;gap:var(--space-3);flex:1}._seekRow_12kj5_764{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}._playerButtons_12kj5_772{display:flex;align-items:center;gap:var(--space-2)}._playerBtn_12kj5_632{display:flex;align-items:center;justify-content:center;width:var(--size-36);height:var(--size-36);border:none;border-radius:var(--radius-full);background:transparent;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-quick),opacity var(--transition-fast)}._playerBtn_12kj5_632:disabled{opacity:.35;cursor:not-allowed}@media(hover:hover)and (pointer:fine){._playerBtn_12kj5_632:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}._seekBtn_12kj5_807:hover:not(:disabled){background:var(--bg-hover-strong);color:var(--accent)}._seekBtn_12kj5_807:hover ._seekBtnLabel_12kj5_812{background:var(--accent);color:var(--accent-text)}._playBtn_12kj5_817:hover:not(:disabled){background:var(--accent-light);color:var(--accent-text);box-shadow:0 0 12px var(--accent-glow)}}._playerBtn_12kj5_632:active:not(:disabled){transform:scale(.94);transition:transform var(--transition-quick),background var(--transition-quick)}._playBtn_12kj5_817{background:var(--accent);color:var(--accent-text);width:var(--size-42);height:var(--size-42)}._playBtn_12kj5_817:disabled{opacity:1}._seekBtn_12kj5_807{position:relative;font-size:var(--font-size-sm);color:var(--text-primary)}._seekBtnLabel_12kj5_812{position:absolute;bottom:var(--space-px);left:50%;transform:translate(-50%);font-size:var(--font-size-2xs);font-weight:var(--font-weight-bold);line-height:1;letter-spacing:-.02em;background:var(--bg-overlay);color:var(--text-primary);padding:var(--space-px) var(--space-2px);border-radius:var(--radius-sm);pointer-events:none}._seekBar_12kj5_864,._volumeBar_12kj5_865{-webkit-appearance:none;appearance:none;height:var(--size-18);background:transparent;cursor:pointer}._seekBar_12kj5_864::-webkit-slider-runnable-track,._volumeBar_12kj5_865::-webkit-slider-runnable-track{width:100%;height:var(--space-1);border-radius:var(--space-1)}._seekBar_12kj5_864::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--played-percent, 0%),var(--track-buffered) var(--played-percent, 0%),var(--track-buffered) var(--buffered-percent, 0%),var(--track-bg) var(--buffered-percent, 0%),var(--track-bg) 100%)}._volumeBar_12kj5_865::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-percent, 100%),var(--track-bg) var(--volume-percent, 100%),var(--track-bg) 100%)}._seekBar_12kj5_864::-moz-range-track{width:100%;height:var(--space-1);border-radius:var(--space-1);background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--played-percent, 0%),var(--track-buffered) var(--played-percent, 0%),var(--track-buffered) var(--buffered-percent, 0%),var(--track-bg) var(--buffered-percent, 0%),var(--track-bg) 100%)}._volumeBar_12kj5_865::-moz-range-track{width:100%;height:var(--space-1);border-radius:var(--space-1);background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--volume-percent, 100%),var(--track-bg) var(--volume-percent, 100%),var(--track-bg) 100%)}._seekBar_12kj5_864::-webkit-slider-thumb,._volumeBar_12kj5_865::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;height:var(--space-3);width:var(--space-3);border-radius:var(--radius-full);background:var(--text-primary);margin-top:calc(var(--space-1) * -1);box-shadow:var(--shadow-thumb)}._seekBar_12kj5_864::-moz-range-thumb,._volumeBar_12kj5_865::-moz-range-thumb{height:var(--space-3);width:var(--space-3);border:none;border-radius:var(--radius-full);background:var(--text-primary);box-shadow:var(--shadow-thumb)}._seekBar_12kj5_864{flex:1;min-width:0}._timeLabel_12kj5_957{font-size:var(--font-size-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums}._playerRight_12kj5_963{display:flex;align-items:center;gap:var(--space-2)}._volumeIcon_12kj5_969{color:var(--text-secondary)}._volumeBar_12kj5_865{width:var(--size-90)}@media(max-width:768px){._detailHeader_12kj5_296{flex-direction:column}._detailCover_12kj5_302{width:100%}._filterBar_12kj5_244{flex-wrap:wrap}._filterBar_12kj5_244 ._sortSelect_12kj5_1{flex:1 1 var(--size-140);min-width:0}._pageWithPlayer_12kj5_995{padding-bottom:var(--layout-player-mobile)}._playerBar_12kj5_371{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"toggle info actions" "controls controls controls" "volume volume volume";align-items:center;column-gap:var(--space-2);row-gap:var(--space-2px);padding:var(--space-2) var(--space-3);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px))}._playerToggle_12kj5_1013{grid-area:toggle}._playerInfo_12kj5_737{grid-area:info;width:auto}._playerActions_12kj5_731{grid-area:actions;margin-right:calc(var(--space-1-5) * -1)}._playerControls_12kj5_757{grid-area:controls;gap:var(--space-2);min-width:0;justify-content:center}._playerRight_12kj5_963{grid-area:volume;width:100%}._volumeBar_12kj5_865{flex:1;width:auto;height:var(--space-6)}._slide_12kj5_422{padding:0 var(--size-52)}._npArrow_12kj5_396{width:var(--size-42);height:var(--size-42);opacity:.85}._npArrowLeft_12kj5_550{left:var(--space-2)}._npArrowRight_12kj5_554{right:var(--space-2)}._npImageCount_12kj5_397{top:calc(var(--space-3) + env(safe-area-inset-top,0px));right:var(--space-3)}._chapterPanel_12kj5_571{right:var(--space-3);max-height:55vh}}@media(max-width:768px)and (orientation:portrait){._npStage_12kj5_406{height:100%}._sliderViewport_12kj5_422{inset:0}._slide_12kj5_422{padding:0}._npOverlay_12kj5_356:not(._npOverlayControlsHidden_12kj5_396) ._slide_12kj5_422{padding-bottom:var(--space-2-5)}._npOverlay_12kj5_356:not(._npOverlayControlsHidden_12kj5_396) ._slideImg_12kj5_424{max-height:calc(100% - var(--space-2-5))}._slideImg_12kj5_424{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}._playerBar_12kj5_371{grid-template-areas:"toggle info actions" "controls controls controls" "volume volume volume";row-gap:var(--space-2-5);padding:var(--space-2-5) var(--space-3);padding-bottom:calc(var(--space-2-5) + env(safe-area-inset-bottom,0px))}._playerControls_12kj5_757{flex-direction:column;align-items:center;gap:var(--space-2);width:100%}._playerButtons_12kj5_772{justify-content:center;width:100%;gap:var(--space-1-5)}._seekRow_12kj5_764{width:100%;justify-content:center}._seekRow_12kj5_764 ._seekBar_12kj5_864{flex:1}._playerRight_12kj5_963{justify-content:center;width:100%}._playerRight_12kj5_963 ._volumeBar_12kj5_865{flex:1;width:100%;max-width:var(--size-320)}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as $,A as z,h as F,T as Re,u as e,g as x,S as H,$ as Ie,L as Y,q as P,N as ke,a as ze}from"./vendor-core-DfaOB3Rn.js";import{I as N}from"./vendor-icons-DrybRNxP.js";import{a as $e,b as Se,f as Le,s as De}from"./vendor-ui-3qrARCPr.js";import{u as re}from"./useIsMobile-Dvx1uJ82.js";import{M as xe}from"./MatureConsentModal-BnB-RHYQ.js";import{t as Oe,d as Ae,u as je,e as Fe,f as Ue}from"./index-DB81Su4I.js";const We="_pagination_zelsc_1",Ve="_pageBtn_zelsc_7",Ge="_pageInfo_zelsc_38",Xe="_pagePicker_zelsc_48",Ye="_dropdown_zelsc_52",He="_flipDown_zelsc_68",Ke="_jumpRow_zelsc_73",qe="_jumpInput_zelsc_79",Je="_jumpGo_zelsc_90",Qe="_optionList_zelsc_105",Ze="_optionBtn_zelsc_113",et="_current_zelsc_132",b={pagination:We,pageBtn:Ve,pageInfo:Ge,pagePicker:Xe,dropdown:Ye,flipDown:He,jumpRow:Ke,jumpInput:qe,jumpGo:Je,optionList:Qe,optionBtn:Ze,current:et},yn=({page:t,totalPages:p,canGoNext:l,onChange:i,isLoading:f=!1,variant:h="compact"})=>{const[s,y]=$(!1),[B,_]=$(""),[v,w]=$(0),[C,R]=$(!1),T=z(null),d=z(null),g=z(null);F(()=>{if(!s)return;const r=m=>{T.current&&!T.current.contains(m.target)&&y(!1)},n=m=>{m.key==="Escape"&&y(!1)};return document.addEventListener("pointerdown",r),document.addEventListener("keydown",n),()=>{document.removeEventListener("pointerdown",r),document.removeEventListener("keydown",n)}},[s]),F(()=>{if(!s)return;w(0),R(!1);const r=requestAnimationFrame(()=>{const n=g.current?.getBoundingClientRect(),m=d.current?.getBoundingClientRect();if(!n)return;let M=0;n.right>window.innerWidth-8?M=window.innerWidth-8-n.right:n.left<8&&(M=8-n.left),w(Math.round(M)),m&&m.top<n.height+24&&R(!0)});return()=>cancelAnimationFrame(r)},[s]);const a=p,S=Re(()=>{if(a!==void 0){if(a<=100)return Array.from({length:a},(m,M)=>M+1);const n=new Set([1,a]);for(let m=t-10;m<=t+10;m++)m>=1&&m<=a&&n.add(m);return[...n].sort((m,M)=>m-M)}const r=l?t+1:t;return Array.from({length:r},(n,m)=>m+1)},[a,t,l]),E=r=>{const n=a!==void 0?Math.min(Math.max(1,r),a):Math.max(1,r);y(!1),_(""),n!==t&&i(n)},L=()=>{const r=parseInt(B,10);Number.isNaN(r)||E(r)},D=f||(a!==void 0?t>=a:!l);return e("div",{className:b.pagination,ref:T,children:[e("button",{className:b.pageBtn,onClick:()=>i(t-1),disabled:t<=1||f,"aria-label":"Previous page",children:[e(N,{name:"chevron-left",size:14}),h==="labeled"&&e("span",{children:"Previous"})]}),e("div",{className:b.pagePicker,ref:d,children:[e("button",{className:b.pageBtn,onClick:()=>{_(""),y(r=>!r)},disabled:f,"aria-label":"Jump to page","aria-expanded":s,children:e("span",{className:b.pageInfo,children:["Page ",e("strong",{children:t}),a!==void 0&&` of ${a}`]})}),s&&e("div",{ref:g,className:`${b.dropdown} ${C?b.flipDown:""}`,style:v!==0?{marginLeft:v}:void 0,children:[e("div",{className:b.jumpRow,children:[e("input",{className:b.jumpInput,type:"number",inputMode:"numeric",min:1,max:a,value:B,placeholder:"Page #",onChange:r=>_(r.currentTarget.value),onKeyDown:r=>{r.key==="Enter"&&L()}}),e("button",{className:b.jumpGo,onClick:L,children:"Go"})]}),e("div",{className:b.optionList,children:S.map(r=>e("button",{className:`${b.optionBtn} ${r===t?b.current:""}`,onClick:()=>E(r),disabled:r===t,children:r},r))})]})]}),e("button",{className:b.pageBtn,onClick:()=>i(t+1),disabled:D,"aria-label":"Next page",children:[h==="labeled"&&e("span",{children:"Next"}),e(N,{name:"chevron-right",size:14})]})]})},tt="_popupPortal_1d6yy_1",nt="_popupContent_1d6yy_6",ot="_popupBackdrop_1d6yy_31",st="_mobile_1d6yy_38",rt="_header_1d6yy_62",at="_title_1d6yy_67",ct="_altTitle_1d6yy_78",lt="_cover_1d6yy_87",it="_body_1d6yy_97",dt="_metaRow_1d6yy_104",ut="_metaItem_1d6yy_111",pt="_scoreIcon_1d6yy_117",_t="_synopsis_1d6yy_121",mt="_genres_1d6yy_143",ht="_genre_1d6yy_143",ft="_footer_1d6yy_158",gt="_primaryAction_1d6yy_167",yt="_watchBtn_1d6yy_171",vt="_secondaryActions_1d6yy_194",wt="_watchlistBtn_1d6yy_199",Bt="_detailsBtn_1d6yy_200",bt="_active_1d6yy_226",Nt="_loading_1d6yy_237",Ct="_spinner_1d6yy_247",c={popupPortal:tt,popupContent:nt,popupBackdrop:ot,mobile:st,header:rt,title:at,altTitle:ct,cover:lt,body:it,metaRow:dt,metaItem:ut,scoreIcon:pt,synopsis:_t,genres:mt,genre:ht,footer:ft,primaryAction:gt,watchBtn:yt,secondaryActions:vt,watchlistBtn:wt,detailsBtn:Bt,active:bt,loading:Nt,spinner:Ct},Pt=({anchorRect:t,onMouseEnter:p,onMouseLeave:l,onRequestClose:i,children:f})=>{const h=re(),s=x.useMemo(()=>({getBoundingClientRect:()=>t}),[t]),{refs:y,floatingStyles:B}=$e({placement:"right-start",middleware:[Le({fallbackAxisSideDirection:"start"}),De({padding:20})],whileElementsMounted:Se});x.useEffect(()=>{y.setPositionReference(s)},[y,s]),x.useEffect(()=>{if(!h)return;const v=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=v}},[h]);const _=e(H,{children:[h&&e("div",{className:c.popupBackdrop,onClick:()=>i?.()}),e("div",{ref:h?void 0:y.setFloating,className:`${c.popupPortal} ${h?c.mobile:""}`,style:h?void 0:B,onMouseEnter:p,onMouseLeave:l,children:e("div",{className:c.popupContent,children:f})})]});return Ie(_,document.body)},vn=({anchorRect:t,title:p,subtitle:l,cover:i,loading:f,error:h,meta:s=[],genres:y=[],synopsis:B,primaryAction:_,secondaryAction:v,bookmarked:w,bookmarkLabel:C="Watchlist",onToggleBookmark:R,extraActions:T,onMouseEnter:d,onMouseLeave:g,onRequestClose:a})=>{const S=z(!1),E=()=>{S.current=!0,d()},L=()=>{S.current=!1,g()},D=n=>{!n&&!S.current&&g()},r=!!_||!!v||!!T;return e(Pt,{anchorRect:t,onMouseEnter:E,onMouseLeave:L,onRequestClose:a,children:f?e("div",{className:c.loading,children:[e("div",{className:c.spinner}),e("span",{children:"Fetching details..."})]}):h?e("div",{className:c.loading,children:h}):e(H,{children:[p&&e("div",{className:c.header,children:[i&&e("img",{src:i,alt:p,loading:"lazy",decoding:"async",className:c.cover}),e("div",{className:c.title,children:p}),l&&e("div",{className:c.altTitle,children:l})]}),e("div",{className:c.body,children:[s.length>0&&e("div",{className:c.metaRow,children:s.map((n,m)=>e("div",{className:c.metaItem,children:[n.icon&&e(N,{name:n.icon,className:n.accent?c.scoreIcon:void 0,size:14}),e("span",{children:n.label})]},`${n.label}-${m}`))}),y.length>0&&e("div",{className:c.genres,children:y.map(n=>e("span",{className:c.genre,children:n},n))}),B&&e("div",{className:c.synopsis,children:B})]}),r&&e("div",{className:c.footer,children:[_&&e("div",{className:c.primaryAction,children:_.disabled?e("span",{className:c.watchBtn,"aria-disabled":"true",style:{opacity:.5,pointerEvents:"none"},children:[e(N,{name:_.icon??"play",size:14}),_.label]}):e(Y,{to:_.to,className:c.watchBtn,onClick:a,children:[e(N,{name:_.icon??"play",size:14}),_.label]})}),e("div",{className:c.secondaryActions,children:[e("button",{className:`${c.watchlistBtn} ${w?c.active:""}`,onClick:n=>{n.preventDefault(),n.stopPropagation(),R()},children:[w?e(N,{name:"check",size:12}):e(N,{name:"plus",size:12}),e("span",{children:w?"Remove":C})]}),T?.(D),v&&e(Y,{to:v.to,className:c.detailsBtn,onClick:a,children:[v.icon&&e(N,{name:v.icon,size:12}),e("span",{children:v.label})]})]})]})]})})},Mt=t=>!t||t.trim()===""?!0:t.includes("placeholder");function Tt(t,p){const[l,i]=$(p);return F(()=>{i(p)},[p]),F(()=>{if(!Mt(p)||!t)return;let f=!1;return Oe.data.showMeta.query({id:t}).then(h=>{const s=h?.thumbnail;!f&&s&&s.trim()!==""&&!s.includes("placeholder")&&i(s)}).catch(()=>{}),()=>{f=!0}},[t,p]),{thumbnail:l}}const Et="_cardWrapper_rw5hd_1",Rt="_card_rw5hd_1",It="_cardButton_rw5hd_35",kt="_hoverOverlay_rw5hd_60",zt="_matureOverlay_rw5hd_81",$t="_posterContainer_rw5hd_91",St="_posterImg_rw5hd_100",Lt="_blurred_rw5hd_112",Dt="_flat_rw5hd_135",xt="_loaded_rw5hd_139",Ot="_progressSection_rw5hd_147",At="_titleSection_rw5hd_154",jt="_title_rw5hd_154",Ft="_titleText_rw5hd_173",Ut="_badge_rw5hd_185",Wt="_typeBadge_rw5hd_196 _badge_rw5hd_185",Vt="_epBadge_rw5hd_205 _badge_rw5hd_185",Gt="_airTime_rw5hd_214",Xt="_adultBadge_rw5hd_221 _badge_rw5hd_185",Yt="_gated_rw5hd_234",Ht="_notAiredBadge_rw5hd_240 _badge_rw5hd_185",Kt="_metaRow_rw5hd_255",qt="_metaItem_rw5hd_266",Jt="_progressContainer_rw5hd_283",Qt="_progressBar_rw5hd_291",Zt="_timestamp_rw5hd_298",en="_removeBtn_rw5hd_303",tn="_infoBtn_rw5hd_304",nn="_mobileBadges_rw5hd_355",on="_mobileBadgeBase_rw5hd_362",sn="_mobileType_rw5hd_370 _mobileBadgeBase_rw5hd_362",rn="_mobileEp_rw5hd_377 _mobileBadgeBase_rw5hd_362",an="_lowEnd_rw5hd_447",o={cardWrapper:Et,card:Rt,cardButton:It,hoverOverlay:kt,matureOverlay:zt,posterContainer:$t,posterImg:St,blurred:Lt,flat:Dt,loaded:xt,progressSection:Ot,titleSection:At,title:jt,titleText:Ft,badge:Ut,typeBadge:Wt,epBadge:Vt,airTime:Gt,adultBadge:Xt,gated:Yt,notAiredBadge:Ht,metaRow:Kt,metaItem:qt,progressContainer:Jt,progressBar:Qt,timestamp:Zt,removeBtn:en,infoBtn:tn,mobileBadges:nn,mobileBadgeBase:on,mobileType:sn,mobileEp:rn,lowEnd:an},cn=500,se=20,ln=300;function dn(t){const p=z(null),l=z(null),i=z(!1),f=z({x:0,y:0}),h=z(null),s=P(()=>{l.current&&(clearTimeout(l.current),l.current=null)},[]),y=P(()=>{p.current&&(clearTimeout(p.current),p.current=null)},[]),B=P(d=>{p.current&&clearTimeout(p.current),p.current=setTimeout(d,ln)},[]),_=P((d,g=!1)=>{i.current=g,t(d,g)},[t]),v=P((d,g)=>{if(g||d.pointerType==="mouse")return;h.current=d.pointerType,i.current=!1,f.current={x:d.clientX,y:d.clientY};const a=d.currentTarget.getBoundingClientRect();s(),l.current=setTimeout(()=>{l.current=null,_(a,!0)},cn)},[s,_]),w=P(d=>{if(!l.current)return;const g=Math.abs(d.clientX-f.current.x),a=Math.abs(d.clientY-f.current.y);(g>se||a>se)&&s()},[s]),C=P(()=>{s(),h.current=null},[s]),R=P((d,g)=>{d.preventDefault(),d.stopPropagation(),h.current==="touch"?l.current&&(clearTimeout(l.current),l.current=null,_(d.currentTarget.getBoundingClientRect(),!0)):!g&&!i.current&&_(d.currentTarget.getBoundingClientRect())},[_]),T=P(()=>i.current?(i.current=!1,!0):!1,[]);return{longPressFiredRef:i,cancelLongPress:s,clearPopupTimeout:y,schedulePopupClose:B,openViaHold:_,handlePointerDown:v,handlePointerMove:w,handlePointerUpOrCancel:C,handleContextMenu:R,consumeLongPressClick:T}}const X={elements:{poster:{typeBadge:!0,chapterBadge:!0,adultBadge:!0},info:{title:!0,mobileBadges:!0,progress:!0,meta:!0}}},wn=ke(({item:t,linkTo:p,hoverIcon:l,progress:i,showProgress:f=!1,metaRow:h,display:s,layout:y="vertical",onRemove:B,showRemoveButton:_,showInfoButton:v=!1,onOpenDetails:w,renderPopup:C,onPopupHoverIntent:R,rawThumbnail:T,enrichedId:d})=>{const g=ze(),a=re(),{titlePreference:S}=Ae(),{lowEndMode:E}=je(),[L,D]=$(!1),[r,n]=$(!1),{thumbnail:m}=Tt(d,t.thumbnail),[M,K]=$(!1),[q,J]=$(null),Q=u=>{J(u),K(!0)},U=P(()=>{K(!1),J(null)},[]),I=dn(u=>{if(w){w(u);return}C&&Q(u)}),W=P(()=>{I.schedulePopupClose(U)},[I,U]),Z=I.clearPopupTimeout,ae=u=>{if(a)return;const oe=u.currentTarget.getBoundingClientRect();if(w){w(oe);return}C&&Q(oe)},ce=()=>{C&&W()},le=()=>{Z()},ie=()=>{C&&W()},de=u=>{I.handlePointerDown(u,k)},ue=u=>{I.handlePointerMove(u)},ee=()=>{I.handlePointerUpOrCancel()},pe=u=>{if(w){u.preventDefault(),u.stopPropagation(),w(u.currentTarget.getBoundingClientRect());return}if(C){I.handleContextMenu(u,k);return}I.handleContextMenu(u,k)},te={...s,elements:{...X.elements,...s?.elements||{},poster:{...X.elements?.poster,...s?.elements?.poster||{}},info:{...X.elements?.info,...s?.elements?.info||{}}}},V=t[S]||t.title,O=te.elements?.poster,A=te.elements?.info,_e=(O?.typeBadge??!0)&&!!t.typeBadge,me=(O?.chapterBadge??!0)&&!!t.chapterBadge,he=_??O?.removeButton??!!B,fe=O?.adultBadge??!0,ge=A?.mobileBadges??!0,ye=A?.progress??!0,ve=A?.meta??!0,we=f&&!!i&&i.percent>0,ne=!!t.isAdult,{hasConsent:Be,grant:be}=Fe(),[Ne,G]=x.useState(!1),j=x.useRef(null),Ce=()=>{be(),G(!1),j.current&&(g(j.current),j.current=null)},k=ne&&!Be,Pe=u=>{if(I.consumeLongPressClick()){u.preventDefault(),u.stopPropagation();return}k&&(u.preventDefault(),u.stopPropagation(),j.current=p,G(!0))},Me=l==="book"?e(N,{name:"book",size:28}):l==="play"?e(N,{name:"play",size:28}):l==="info"?e(N,{name:"info-circle",size:28}):e(N,{name:"info-circle",size:28}),Te=P(u=>{u.preventDefault(),u.stopPropagation(),B&&B(t.id)},[B,t.id]),Ee=T?m??t.thumbnail:Ue(m,E?100:150,E?150:200);return e("div",{className:`${o.cardWrapper} ${E?o.lowEnd:""}`,onMouseEnter:()=>{n(!0),R?.(!0),M&&Z()},onMouseLeave:()=>{n(!1),R?.(!1),M&&W()},children:[e(Y,{to:p,className:`${o.card} ${o[y]} ${k?o.cardButton:""}`,onClick:Pe,onContextMenu:pe,onPointerDown:de,onPointerMove:ue,onPointerUp:ee,onPointerCancel:ee,children:[e("div",{className:o.posterContainer,children:[k&&e("div",{className:`${o.matureOverlay} ${E?o.flat:""}`}),e("img",{src:Ee,alt:V,className:`${o.posterImg} ${L?o.loaded:""} ${k&&!E?o.blurred:""}`,loading:"lazy",decoding:"async",onLoad:()=>D(!0)}),!a&&e(H,{children:[_e&&e("div",{className:o.typeBadge,children:t.typeBadge}),me&&e("div",{className:o.epBadge,children:[t.chapterBadge,t.airMeta&&e("span",{className:o.airTime,children:t.airMeta})]})]}),fe&&ne&&e("div",{className:`${o.adultBadge} ${k?o.gated:""}`,children:"18+"}),t.notAired&&e("div",{className:o.notAiredBadge,children:"NOT AIRED"}),!a&&r&&e("div",{className:o.hoverOverlay,children:Me})]}),ye&&f&&we&&i&&e("div",{className:o.progressSection,children:[e("div",{className:o.progressContainer,children:e("div",{className:o.progressBar,style:{width:`${i.percent}%`}})}),e("div",{className:o.timestamp,children:i.label})]}),e("div",{className:o.titleSection,children:[a&&ge&&e("div",{className:o.mobileBadges,children:[!!t.typeBadge&&e("span",{className:o.mobileType,children:t.typeBadge}),t.chapterBadge&&e("span",{className:o.mobileEp,children:t.chapterBadge})]}),A?.title!==!1&&e("div",{className:o.title,title:V,children:e("span",{className:o.titleText,children:V})}),ve&&h&&e("div",{className:o.metaRow,children:h})]})]}),Ne&&e(xe,{isOpen:!0,showResetHint:!0,onClose:()=>G(!1),onGrant:Ce}),he&&e("button",{className:o.removeBtn,onClick:Te,"aria-label":"Remove",children:e(N,{name:"times",size:10})}),v&&!a&&!k&&e("button",{className:o.infoBtn,onMouseEnter:ae,onMouseLeave:ce,"aria-label":"Info",children:e(N,{name:"info",size:11})}),C&&M&&q?C(q,{close:U,onMouseEnter:le,onMouseLeave:ie}):null]})});export{wn as M,yn as P,vn as a,o as m,c as p};
|