@serifpersia/dango 3.7.0 → 3.7.2

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.
Files changed (131) hide show
  1. package/README.md +2 -2
  2. package/client/dist/assets/ActiveFilterChips-QjkplDN2.css +1 -0
  3. package/client/dist/assets/ActiveFilterChips-olGfwxle.js +1 -0
  4. package/client/dist/assets/AnimeCard-CoPx634q.js +1 -0
  5. package/client/dist/assets/AnimeInfo-COVCRujg.js +1 -0
  6. package/client/dist/assets/AnimeInfoPage-BwlKpRXY.js +2 -0
  7. package/client/dist/assets/{AnimeMetaDetails-BogOi_bM.js → AnimeMetaDetails-D8WIiO4b.js} +1 -1
  8. package/client/dist/assets/Asmr-Dl1EZqaI.css +1 -0
  9. package/client/dist/assets/Asmr-nOUcDsWe.js +2 -0
  10. package/client/dist/assets/AsmrResetProgressModal-Mj1PYE2c.js +1 -0
  11. package/client/dist/assets/AvSyncCalibrator-BtUHM1mW.css +1 -0
  12. package/client/dist/assets/AvSyncCalibrator-C5GxpyPE.js +10 -0
  13. package/client/dist/assets/Home-C5eTe3jP.css +1 -0
  14. package/client/dist/assets/Home-wi0a_BDQ.js +1 -0
  15. package/client/dist/assets/Insights-D0qrep0K.css +1 -0
  16. package/client/dist/assets/Insights-MLCDyTnY.js +1 -0
  17. package/client/dist/assets/LibraryListPage-CRqv737t.js +1 -0
  18. package/client/dist/assets/LibraryListPage-DmdjNa2U.css +1 -0
  19. package/client/dist/assets/LibraryListPage.module-r6k9nyT9.js +1 -0
  20. package/client/dist/assets/ListeningList-8dzhiDeb.js +1 -0
  21. package/client/dist/assets/Manga-dkD-uWJk.js +1 -0
  22. package/client/dist/assets/MangaInfoPage-nCeWZNcO.js +1 -0
  23. package/client/dist/assets/MangaReadPage-NdDNCyLg.js +1 -0
  24. package/client/dist/assets/MangaResetProgressModal-C28AiLJl.js +1 -0
  25. package/client/dist/assets/Mature-D5WSkhIJ.js +1 -0
  26. package/client/dist/assets/MatureConsentModal-BsdpNeXA.js +1 -0
  27. package/client/dist/assets/MatureConsentModal-CqewXc0q.css +1 -0
  28. package/client/dist/assets/MediaCard-B0PJStxp.css +1 -0
  29. package/client/dist/assets/MediaCard-C1jNesfK.js +1 -0
  30. package/client/dist/assets/OptionListMenu-CIvW5WmO.js +1 -0
  31. package/client/dist/assets/Player-D-sQfjcx.css +1 -0
  32. package/client/dist/assets/Player-PGj8YYO8.js +56 -0
  33. package/client/dist/assets/{PlayerSettings-B63XtOiv.js → PlayerSettings-CAYfF0sA.js} +1 -1
  34. package/client/dist/assets/QueueOptionsButton-DNzKPzPw.js +1 -0
  35. package/client/dist/assets/QueueRail-BWcDVSHd.js +1 -0
  36. package/client/dist/assets/{QueueRail-BUYEjdaq.css → QueueRail-Bkh4VZls.css} +1 -1
  37. package/client/dist/assets/ReadingList-zkFp3wpF.js +1 -0
  38. package/client/dist/assets/ResetProgressModal-BYNYqwwl.js +1 -0
  39. package/client/dist/assets/Search-DCKK3seW.css +1 -0
  40. package/client/dist/assets/Search-yDP_wGJ1.js +1 -0
  41. package/client/dist/assets/Search.module-C_qwCdHS.js +1 -0
  42. package/client/dist/assets/Settings-BEHII_8K.css +1 -0
  43. package/client/dist/assets/Settings-BpKwWesn.js +21 -0
  44. package/client/dist/assets/SkeletonGrid-BisPI38I.css +1 -0
  45. package/client/dist/assets/SkeletonGrid-CYJeh04P.js +1 -0
  46. package/client/dist/assets/Trackers-D2KUt71k.js +2 -0
  47. package/client/dist/assets/Tv-D3vXCsSC.css +1 -0
  48. package/client/dist/assets/Tv-Ul3jFq-x.js +4 -0
  49. package/client/dist/assets/TvInfo-D_4QdgV4.js +1 -0
  50. package/client/dist/assets/TvPopup-DHXB5ZSF.js +1 -0
  51. package/client/dist/assets/TvSearch-COwVoGru.js +1 -0
  52. package/client/dist/assets/TvWatchlist-CU3r-NO5.js +1 -0
  53. package/client/dist/assets/VirtualKeyboard-BaUll8Yv.css +1 -0
  54. package/client/dist/assets/VirtualKeyboard-DeP7fb3P.js +1 -0
  55. package/client/dist/assets/Watchlist-DHyuTLJG.js +1 -0
  56. package/client/dist/assets/Watchlist-DW7kUORr.css +1 -0
  57. package/client/dist/assets/{hls-CBz3B7bO.js → hls-DOAVt6Ry.js} +1 -1
  58. package/client/dist/assets/index-B7katXv0.css +1 -0
  59. package/client/dist/assets/index-BLh_CXtu.js +178 -0
  60. package/client/dist/assets/libraryInvalidation-AzFLnbjH.js +1 -0
  61. package/client/dist/assets/playbackCompletion-DuUs8u-8.js +1 -0
  62. package/client/dist/assets/useAnimeInfoData-MPNJXLaM.js +1 -0
  63. package/client/dist/assets/useAsmr-2dFEmQD_.js +1 -0
  64. package/client/dist/assets/useAsmrPopup-N2vUf3Pw.js +1 -0
  65. package/client/dist/assets/useMangaLibrary-B3Ni34a7.js +1 -0
  66. package/client/dist/assets/useMangaPopup-h8NHEPUk.js +1 -0
  67. package/client/dist/assets/useProviders-z8L8GKy0.js +1 -0
  68. package/client/dist/assets/useTv-D4zQ1BsQ.js +1 -0
  69. package/client/dist/assets/useTvLibrary-B4vcRzQc.js +1 -0
  70. package/client/dist/index.html +2 -2
  71. package/orchestrator.js +1 -1
  72. package/package.json +6 -4
  73. package/server/dist/server.js +344 -372
  74. package/server/package.json +2 -1
  75. package/client/dist/assets/AnimeCard-VxBIpH-H.js +0 -1
  76. package/client/dist/assets/AnimeInfo-D_Yk-Yyk.js +0 -1
  77. package/client/dist/assets/AnimeInfoPage-DprI9g3s.js +0 -2
  78. package/client/dist/assets/Asmr-CwgL7nn4.js +0 -2
  79. package/client/dist/assets/AsmrResetProgressModal-Cw_1gqgF.js +0 -1
  80. package/client/dist/assets/AvSyncCalibrator-Cf_hnFZR.js +0 -10
  81. package/client/dist/assets/AvSyncCalibrator-ZSpMgUid.css +0 -1
  82. package/client/dist/assets/Home-BaR_V71s.js +0 -1
  83. package/client/dist/assets/Home-DeY8zvfI.css +0 -1
  84. package/client/dist/assets/Insights-CUeDNk4y.js +0 -1
  85. package/client/dist/assets/Insights-Dc8xLmsr.css +0 -1
  86. package/client/dist/assets/LibraryListPage-AoI14-dx.js +0 -1
  87. package/client/dist/assets/ListeningList-BZexqK7W.js +0 -1
  88. package/client/dist/assets/Manga-CPOuaQjZ.js +0 -1
  89. package/client/dist/assets/MangaInfoPage-Bo-FOngx.js +0 -1
  90. package/client/dist/assets/MangaReadPage-DuGPnGRF.js +0 -1
  91. package/client/dist/assets/MangaResetProgressModal-CUvP02Ve.js +0 -1
  92. package/client/dist/assets/Mature-B1ZOlHvr.js +0 -1
  93. package/client/dist/assets/MediaCard-C1kVq8jh.js +0 -1
  94. package/client/dist/assets/MediaCard-DB6Yjgky.css +0 -1
  95. package/client/dist/assets/OptionListMenu-vUGV_jq6.js +0 -1
  96. package/client/dist/assets/Player-DCB994_8.css +0 -1
  97. package/client/dist/assets/Player-xUmvl3aX.js +0 -56
  98. package/client/dist/assets/QueueOptionsButton-BGz5pDT3.js +0 -1
  99. package/client/dist/assets/QueueRail-CQzlXS9D.js +0 -1
  100. package/client/dist/assets/ReadingList-BVU8jeNE.js +0 -1
  101. package/client/dist/assets/ResetProgressModal-MfdZU4Jw.js +0 -1
  102. package/client/dist/assets/Search-Cs45oAwI.css +0 -1
  103. package/client/dist/assets/Search-Dl_zHidX.js +0 -1
  104. package/client/dist/assets/Search.module-CMEai-B-.js +0 -1
  105. package/client/dist/assets/Settings-CwIWLSfY.css +0 -1
  106. package/client/dist/assets/Settings-OXxsNnw3.js +0 -21
  107. package/client/dist/assets/SkeletonGrid-BaEViX2G.js +0 -1
  108. package/client/dist/assets/SkeletonGrid-Bge3aRl2.css +0 -1
  109. package/client/dist/assets/Trackers-CF2lf0FQ.js +0 -2
  110. package/client/dist/assets/Tv-Bdruknna.css +0 -1
  111. package/client/dist/assets/Tv-C3lwYGvC.js +0 -4
  112. package/client/dist/assets/TvInfo-CgduZDby.js +0 -1
  113. package/client/dist/assets/TvPopup-Cwcs0iMP.js +0 -1
  114. package/client/dist/assets/TvSearch-BCYb067l.js +0 -1
  115. package/client/dist/assets/TvWatchlist-Bk_L18MC.js +0 -1
  116. package/client/dist/assets/VirtualKeyboard-BmqZPZXR.js +0 -1
  117. package/client/dist/assets/VirtualKeyboard-KIPc5ZGH.css +0 -1
  118. package/client/dist/assets/Watchlist-B0bqJqc4.js +0 -1
  119. package/client/dist/assets/Watchlist-BiDEU0iV.css +0 -1
  120. package/client/dist/assets/Watchlist.module-XGtVQr1d.js +0 -1
  121. package/client/dist/assets/index-D0Haw_Zl.css +0 -1
  122. package/client/dist/assets/index-DxRnpRhu.js +0 -178
  123. package/client/dist/assets/useAnimeInfoData-VGk7ptlM.js +0 -1
  124. package/client/dist/assets/useAsmr-CxGWhApO.js +0 -1
  125. package/client/dist/assets/useAsmrPopup-D1KuQwQy.css +0 -1
  126. package/client/dist/assets/useAsmrPopup-HC0kPwIY.js +0 -1
  127. package/client/dist/assets/useMangaLibrary-8FuAAh_p.js +0 -1
  128. package/client/dist/assets/useMangaPopup-0vWil7K4.js +0 -1
  129. package/client/dist/assets/useProviders-DHClk0cR.js +0 -1
  130. package/client/dist/assets/useTv-SJHkxQtj.js +0 -1
  131. package/client/dist/assets/useTvLibrary-CnPxLtnZ.js +0 -1
@@ -0,0 +1 @@
1
+ import{d as E,A as q,h as O,q as P,g as G,u as e,L as Ee,T as Q,S as se,a as J,_ as je}from"./vendor-core-DfaOB3Rn.js";import{b as Ze,u as Je,a as et}from"./vendor-query-BBT5_sHx.js";import{M as me,P as tt}from"./MediaCard-C1jNesfK.js";import{A as le}from"./AnimeCard-CoPx634q.js";import{S as De,A as We}from"./SkeletonGrid-CYJeh04P.js";import{I as V}from"./vendor-icons-DrybRNxP.js";import{u as Se,a as oe,b as at,c as nt,q as Oe,t as rt,d as Ve,s as ot,f as Te,B as Fe,e as st,g as ne,h as we,i as lt,j as Le,k as it,l as ct,m as dt,n as ut,o as ht,p as pt,r as mt,v as gt,w as vt}from"./index-BLh_CXtu.js";import{u as _t}from"./vendor-ui-3qrARCPr.js";import{E as ke}from"./ErrorMessage-DAxegITP.js";import{R as qe}from"./ResetProgressModal-BYNYqwwl.js";import{Q as ft}from"./QueueRail-BWcDVSHd.js";import{u as ze,M as Ge}from"./useMangaPopup-h8NHEPUk.js";import{M as bt}from"./MangaResetProgressModal-C28AiLJl.js";import{u as Ue,a as yt,m as Ne,i as Qe,b as Ce,c as Ye,d as Tt,e as Nt}from"./useMangaLibrary-B3Ni34a7.js";import{u as St}from"./useProviders-z8L8GKy0.js";import{u as He,a as $e,T as wt}from"./useTv-D4zQ1BsQ.js";import{T as kt}from"./TvPopup-DHXB5ZSF.js";import{u as Ct,a as It,b as At,t as Rt,i as Lt,c as $t,M as Mt,T as xt}from"./useTvLibrary-B4vcRzQc.js";import{A as Bt}from"./AsmrResetProgressModal-Mj1PYE2c.js";import{u as Pt,a as Et,b as Dt}from"./useAsmr-2dFEmQD_.js";import"./useIsMobile-Dvx1uJ82.js";import"./MatureConsentModal-BsdpNeXA.js";import"./useAnimeInfoData-MPNJXLaM.js";import"./QueueOptionsButton-DNzKPzPw.js";import"./playbackCompletion-DuUs8u-8.js";import"./usePopup-DS9jMzp6.js";import"./libraryInvalidation-AzFLnbjH.js";const Wt="_sectionWrapper_2p2l1_9",Ot="_sectionTitleNoMargin_2p2l1_13",Vt="_carousel_2p2l1_178",B={"section-header":"_section-header_2p2l1_1",sectionWrapper:Wt,sectionTitleNoMargin:Ot,"title-wrapper":"_title-wrapper_2p2l1_17","header-controls":"_header-controls_2p2l1_24","header-select":"_header-select_2p2l1_30","collapse-button":"_collapse-button_2p2l1_79","title-link":"_title-link_2p2l1_98","continue-watching":"_continue-watching_2p2l1_117","nav-arrows":"_nav-arrows_2p2l1_139","nav-button":"_nav-button_2p2l1_148","carousel-container":"_carousel-container_2p2l1_178",carousel:Vt,"carousel-inner":"_carousel-inner_2p2l1_187","carousel-card":"_carousel-card_2p2l1_192"};function ge({align:n="start",containScroll:s="trimSnaps",scrollFraction:h=.8,threshold:t=.6,onReachThreshold:o}={}){const[l,i]=_t({align:n,containScroll:s,dragFree:!0}),[d,T]=E(!1),_=q({scrollFraction:h,threshold:t,onReachThreshold:o}),m=q(!1);O(()=>{_.current={scrollFraction:h,threshold:t,onReachThreshold:o}});const p=P(u=>{T(u.canScrollPrev()||u.canScrollNext())},[]);O(()=>{if(!i)return;const u=()=>{const c=i.scrollProgress();c>=_.current.threshold&&!m.current?(m.current=!0,_.current.onReachThreshold?.()):c<_.current.threshold&&(m.current=!1),p(i)};return i.on("init",u),i.on("reInit",u),i.on("scroll",u),i.on("resize",u),()=>{i.off("init",u),i.off("reInit",u),i.off("scroll",u),i.off("resize",u)}},[i,p]);const N=P(u=>{const c=u.containerNode().firstElementChild;if(!c)return 1;const g=u.rootNode().getBoundingClientRect().width,k=c.getBoundingClientRect().width;return k?Math.max(1,Math.round(g/k)):1},[]),r=P((u,c=!1)=>{if(!i)return;const g=Math.max(1,Math.round(N(i)*_.current.scrollFraction)),k=i.selectedScrollSnap()+(u==="left"?-g:g);i.scrollTo(k,c)},[i,N]),w=P((u=!1)=>{i?.scrollTo(0,u)},[i]);return{emblaRef:l,api:i,canScroll:d,stepBy:r,scrollToStart:w}}const Z=({title:n,eyebrow:s,titleLink:h,loading:t,emptyState:o,carousel:l,layout:i,collapsible:d,defaultExpanded:T=!0,onReachThreshold:_,scrollThreshold:m,isFetchingNextPage:p,resetScrollOnShrink:N,itemCount:r=0,highlight:w,headerActions:u,loadingSkeleton:c,skeletonCount:g=7,children:k})=>{const{lowEndMode:S}=Se(),{emblaRef:A,stepBy:$,scrollToStart:R}=ge({onReachThreshold:_,threshold:m}),[C,U]=G.useState(T);G.useEffect(()=>{U(T)},[T]);const x=G.useRef(0);return G.useEffect(()=>{N&&r>0&&C&&(r<=x.current||x.current===0)&&R(),r>0&&(x.current=r)},[r,N,C,R]),!t&&r===0&&!o&&!d?null:e("section",{className:`${B.sectionWrapper} ${w?B["continue-watching"]:""}`,children:[e("div",{className:B["section-header"],children:[e("div",{className:B["title-wrapper"],children:[e("div",{className:"title-stack",children:[s&&e("div",{className:"section-eyebrow",children:s}),h?e(Ee,{to:h,className:B["title-link"],children:e("div",{className:`section-title ${B.sectionTitleNoMargin}`,children:n})}):e("div",{className:`section-title ${B.sectionTitleNoMargin}`,children:n})]}),l&&r>0&&C&&e("div",{className:B["nav-arrows"],children:[e("button",{className:B["nav-button"],type:"button","aria-label":"Scroll left",onClick:I=>{I.preventDefault(),$("left",S)},children:e(V,{name:"chevron-left"})}),e("button",{className:B["nav-button"],type:"button","aria-label":"Scroll right",onClick:I=>{I.preventDefault(),$("right",S)},children:e(V,{name:"chevron-right"})})]})]}),e("div",{className:B["header-controls"],children:[u,d&&e("button",{className:B["collapse-button"],type:"button",onClick:()=>U(I=>!I),"aria-expanded":C,"aria-label":C?`Collapse ${n}`:`Expand ${n}`,children:C?e(V,{name:"chevron-up"}):e(V,{name:"chevron-down"})})]})]}),C&&(l?!t&&r===0&&o?e("div",{children:o}):e("div",{className:B["carousel-container"],children:e("div",{className:B.carousel,ref:A,children:e("div",{className:B["carousel-inner"],children:[t&&r===0?Array.from({length:g}).map((I,F)=>e("div",{className:B["carousel-card"],children:c},F)):G.Children.map(k,(I,F)=>e("div",{className:B["carousel-card"],children:I},G.isValidElement(I)&&I.key!=null?I.key:`slide-${F}`)),p&&c&&e("div",{className:B["carousel-card"],children:c})]})})}):e("div",{className:"grid-container",children:t&&r===0?e(De,{count:6,layout:i}):r>0?k:t?null:e("div",{style:{gridColumn:"1 / -1"},children:o})}))]})},Ft=({title:n,eyebrow:s,animeList:h,continueWatching:t,titleLink:o,onRemove:l,loading:i,emptyState:d,carousel:T,cardConfig:_,layout:m,onReachThreshold:p,scrollThreshold:N,isFetchingNextPage:r,collapsible:w,defaultExpanded:u=!0})=>{const c=m||"vertical";return e(Z,{title:n,eyebrow:s,titleLink:o,loading:i,emptyState:d,carousel:T,layout:c,collapsible:w,defaultExpanded:u,onReachThreshold:p,scrollThreshold:N,isFetchingNextPage:r,resetScrollOnShrink:t,highlight:t,itemCount:h.length,loadingSkeleton:e(We,{layout:c}),skeletonCount:7,children:h.map(g=>e(le,{anime:g,continueWatching:t,onRemove:l,config:_,layout:c},g._id))})},Me=G.memo(Ft),qt="_sectionWrapper_xt8h9_2",zt="_sectionTitleNoMargin_xt8h9_6",Gt="_timeSelect_xt8h9_80",Ut="_carouselContainer_xt8h9_111",Qt="_carousel_xt8h9_111",Yt="_carouselInner_xt8h9_122",Ht="_carouselItem_xt8h9_127",Xt="_rankCard_xt8h9_164",Kt="_rankPill_xt8h9_168",jt="_rankGold_xt8h9_179",Zt="_rankSilver_xt8h9_183",Jt="_rankBronze_xt8h9_187",ea="_skeletonPoster_xt8h9_198",ta="_skeletonText_xt8h9_199",v={sectionWrapper:qt,sectionTitleNoMargin:zt,"section-header":"_section-header_xt8h9_10","title-wrapper":"_title-wrapper_xt8h9_18","nav-arrows":"_nav-arrows_xt8h9_40","nav-button":"_nav-button_xt8h9_49",timeSelect:Gt,carouselContainer:Ut,carousel:Qt,carouselInner:Yt,carouselItem:Ht,rankCard:Xt,rankPill:Kt,rankGold:jt,rankSilver:Zt,rankBronze:Jt,skeletonPoster:ea,skeletonText:ta,"header-actions":"_header-actions_xt8h9_236"},xe="TRENDING_DESC",aa="POPULARITY_DESC",na=10;function ra({title:n,eyebrow:s}){const{lowEndMode:h}=Se(),[t,o]=oe("trending_sort",xe),l=[{value:xe,label:"Trending"},{value:aa,label:"All Time"}],{data:i,fetchNextPage:d,hasNextPage:T,isFetchingNextPage:_,isLoading:m,isError:p,error:N}=at(t,na),r=Q(()=>i?.pages.flatMap(g=>g)||[],[i]),w=P(()=>{T&&!_&&!m&&d()},[T,_,m,d]),{emblaRef:u,stepBy:c}=ge({onReachThreshold:w});return e("section",{className:v.sectionWrapper,children:[e("div",{className:v["section-header"],children:[e("div",{className:v["title-wrapper"],children:[e("div",{className:"title-stack",children:[s&&e("div",{className:"section-eyebrow",children:s}),e("div",{className:`section-title ${v.sectionTitleNoMargin}`,children:n})]}),e("div",{className:v["nav-arrows"],children:[e("button",{className:v["nav-button"],type:"button",onClick:g=>{g.preventDefault(),c("left",h)},"aria-label":"Scroll left",children:e(V,{name:"chevron-left"})}),e("button",{className:v["nav-button"],type:"button",onClick:g=>{g.preventDefault(),c("right",h)},"aria-label":"Scroll right",children:e(V,{name:"chevron-right"})})]})]}),e("div",{className:v["header-actions"],children:e("select",{className:v.timeSelect,value:t,onChange:g=>o(g.currentTarget.value),children:l.map(g=>e("option",{value:g.value,children:g.label},g.value))})})]}),m?e("div",{className:v.carouselContainer,children:e("div",{className:v.carousel,children:e("div",{className:v.carouselInner,children:Array.from({length:7}).map((g,k)=>e("div",{className:v.carouselItem,children:[e("div",{className:v.skeletonPoster}),e("div",{className:v.skeletonText})]},k))})})}):p?e(ke,{message:N instanceof Error?N.message:"An unknown error occurred"}):e("div",{className:v.carouselContainer,children:e("div",{className:v.carousel,ref:u,children:e("div",{className:v.carouselInner,children:[r.map((g,k)=>e("div",{className:v.carouselItem,children:[e("div",{className:v.rankCard,children:e(le,{anime:g})}),e("div",{className:`${v.rankPill} ${k===0?v.rankGold:k===1?v.rankSilver:k===2?v.rankBronze:""}`,children:k+1})]},g._id)),_&&e("div",{className:v.carouselItem,style:{minWidth:"150px",display:"flex",alignItems:"center",justifyContent:"center"},children:e("div",{className:v.skeletonPoster})})]})})})]})}const oa=[{value:"TV",label:"TV"},{value:"ONA",label:"ONA"},{value:"OVA",label:"OVA"},{value:"MOVIE",label:"Movie"},{value:"ALL",label:"All"},{value:"ADULT",label:"Mature"}],sa=10;function la({eyebrow:n}){const{lowEndMode:s}=Se(),[h,t]=oe("latest_releases_format","TV"),{data:o,fetchNextPage:l,hasNextPage:i,isFetchingNextPage:d,isLoading:T,isError:_,error:m}=nt(h,sa),p=Q(()=>o?.pages.flatMap(u=>u)||[],[o]),N=P(()=>{i&&!d&&!T&&l()},[i,d,T,l]),{emblaRef:r,stepBy:w}=ge({onReachThreshold:N});return e("section",{className:v.sectionWrapper,children:[e("div",{className:v["section-header"],children:[e("div",{className:v["title-wrapper"],children:[e("div",{className:"title-stack",children:[n&&e("div",{className:"section-eyebrow",children:n}),e("div",{className:`section-title ${v.sectionTitleNoMargin}`,children:"Latest Releases"})]}),e("div",{className:v["nav-arrows"],children:[e("button",{className:v["nav-button"],type:"button",onClick:u=>{u.preventDefault(),w("left",s)},"aria-label":"Scroll left",children:e(V,{name:"chevron-left"})}),e("button",{className:v["nav-button"],type:"button",onClick:u=>{u.preventDefault(),w("right",s)},"aria-label":"Scroll right",children:e(V,{name:"chevron-right"})})]})]}),e("div",{className:v["header-actions"],children:e("select",{className:v.timeSelect,value:h,onChange:u=>t(u.currentTarget.value),children:oa.map(u=>e("option",{value:u.value,children:u.label},u.value))})})]}),T?e("div",{className:v.carouselContainer,children:e("div",{className:v.carousel,children:e("div",{className:v.carouselInner,children:Array.from({length:7}).map((u,c)=>e("div",{className:v.carouselItem,children:[e("div",{className:v.skeletonPoster}),e("div",{className:v.skeletonText})]},c))})})}):_?e(ke,{message:m instanceof Error?m.message:"An unknown error occurred"}):e("div",{className:v.carouselContainer,children:e("div",{className:v.carousel,ref:r,children:e("div",{className:v.carouselInner,children:[p.map(u=>e("div",{className:v.carouselItem,children:e(le,{anime:u})},u._id)),d&&e("div",{className:v.carouselItem,style:{minWidth:"150px",display:"flex",alignItems:"center",justifyContent:"center"},children:e("div",{className:v.skeletonPoster})})]})})})]})}const ia="_scheduleSection_10dfe_1",ca="_sectionTitleRow_10dfe_5",da="_sectionTitleNoMargin_10dfe_11",ua="_sectionHeader_10dfe_15",ha="_headerActions_10dfe_25",pa="_timeSelect_10dfe_31",ma="_daySelectorContainer_10dfe_62",ga="_daySelector_10dfe_62",va="_daySelectorInner_10dfe_79",_a="_dayBtn_10dfe_90",fa="_active_10dfe_113",ba="_dayMonth_10dfe_121",ya="_dayNum_10dfe_129",Ta="_dayName_10dfe_135",Na="_navArrows_10dfe_148",Sa="_navButton_10dfe_157",wa="_carouselContainer_10dfe_181",ka="_carousel_10dfe_181",Ca="_carouselInner_10dfe_193",Ia="_carouselCard_10dfe_198",L={scheduleSection:ia,sectionTitleRow:ca,sectionTitleNoMargin:da,sectionHeader:ua,headerActions:ha,timeSelect:pa,daySelectorContainer:ma,daySelector:ga,daySelectorInner:va,dayBtn:_a,active:fa,dayMonth:ba,dayNum:ya,dayName:Ta,navArrows:Na,navButton:Sa,carouselContainer:wa,carousel:ka,carouselInner:Ca,carouselCard:Ia},ie=n=>{const s=n.getFullYear(),h=String(n.getMonth()+1).padStart(2,"0"),t=String(n.getDate()).padStart(2,"0");return`${s}-${h}-${t}`},Aa=async(n,s)=>await rt.data.schedule.query({date:n,format:s}),Ra=({eyebrow:n})=>{const[s,h]=E(()=>ie(new Date)),[t,o]=oe("schedule_format","TV"),{emblaRef:l,canScroll:i,stepBy:d,scrollToStart:T}=ge(),_=q(null),m=q(!0),{data:p=[],isLoading:N,error:r}=Ze({queryKey:[Oe.schedule,s,t],queryFn:()=>Aa(s,t),staleTime:1e3*60*5}),w=Q(()=>{const c=[],g=new Date,k=ie(g),S=new Date(g);S.setDate(g.getDate()-1);const A=ie(S),$=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];for(let R=-6;R<=6;R++){const C=new Date(g);C.setDate(g.getDate()+R),c.push(C)}return c.map(R=>{const C=ie(R),I=C===k?"Today":C===A?"Yest":$[R.getDay()],F=R.getDate(),M=new Intl.DateTimeFormat("en-US",{month:"short"}).format(R);return{dateString:C,dayLabel:I,dayNum:F,monthName:M}})},[]);O(()=>{if(m.current){m.current=!1;return}if(_.current){const c=_.current.querySelector(`[data-date="${s}"]`);c&&c.scrollIntoView({behavior:"smooth",inline:"center",block:"nearest"})}},[s]),O(()=>{T(!0)},[s,T]);const u=[{value:"TV",label:"TV"},{value:"ONA",label:"ONA"},{value:"OVA",label:"OVA"},{value:"MOVIE",label:"Movie"},{value:"ALL",label:"All"},{value:"ADULT",label:"Mature"}];return e("div",{className:L.scheduleSection,children:[e("div",{className:L.sectionHeader,children:[e("div",{className:L.sectionTitleRow,children:[e("div",{className:"title-stack",children:[n&&e("div",{className:"section-eyebrow",children:n}),e("h2",{className:`section-title ${L.sectionTitleNoMargin}`,children:"Episode Schedule"})]}),p.length>0&&i&&e("div",{className:L.navArrows,children:[e("button",{className:L.navButton,onClick:()=>d("left"),"aria-label":"Scroll left",children:e(V,{name:"chevron-left"})}),e("button",{className:L.navButton,onClick:()=>d("right"),"aria-label":"Scroll right",children:e(V,{name:"chevron-right"})})]})]}),e("div",{className:L.headerActions,children:e("select",{className:L.timeSelect,value:t,onChange:c=>o(c.currentTarget.value),children:u.map(c=>e("option",{value:c.value,children:c.label},c.value))})})]}),e("div",{className:L.daySelectorContainer,children:e("div",{className:L.daySelector,ref:_,children:e("div",{className:L.daySelectorInner,children:w.map(c=>e("button",{type:"button","data-date":c.dateString,className:`${L.dayBtn} ${s===c.dateString?L.active:""}`,onClick:()=>h(c.dateString),children:[e("span",{className:L.dayMonth,children:c.monthName}),e("span",{className:L.dayNum,children:c.dayNum}),e("span",{className:L.dayName,children:c.dayLabel})]},c.dateString))})})}),e("div",{className:L.carouselContainer,children:e("div",{className:L.carousel,ref:l,children:e("div",{className:L.carouselInner,children:N?Array.from({length:7}).map((c,g)=>e("div",{className:L.carouselCard,children:e(We,{layout:"vertical"})},g)):r?e("div",{style:{width:"100%"},children:e(ke,{message:r instanceof Error?r.message:"An unknown error occurred"})}):p.length===0?e("p",{style:{textAlign:"center",marginTop:"1rem",width:"100%"},children:"No episodes scheduled for this day."}):p.map(c=>e("div",{className:L.carouselCard,children:e(le,{anime:c,continueWatching:!1,layout:"vertical"},c._id)},c._id))})})})]})},La="_bannerContainer_1l49p_1",$a="_hero_1l49p_28",Ma="_ambient_1l49p_37",xa="_ambientShow_1l49p_49",Ba="_scrim_1l49p_53",Pa="_progressLine_1l49p_69",Ea="_paused_1l49p_89",Da="_dots_1l49p_103",Wa="_dot_1l49p_103",Oa="_dotActive_1l49p_126",Va="_viewport_1l49p_137",Fa="_track_1l49p_144",qa="_slide_1l49p_150",za="_slideInner_1l49p_158",Ga="_poster_1l49p_168",Ua="_posterLandscape_1l49p_179",Qa="_info_1l49p_203",Ya="_kicker_1l49p_208",Ha="_featureLabel_1l49p_215",Xa="_scoreChip_1l49p_227",Ka="_rise_1l49p_245",ja="_active_1l49p_249",Za="_metaRow_1l49p_305",Ja="_metaItem_1l49p_316",en="_metaDivider_1l49p_322",tn="_title_1l49p_329",an="_genres_1l49p_345",nn="_genreTag_1l49p_353",rn="_summary_1l49p_364",on="_actions_1l49p_376",sn="_watchBtn_1l49p_383",ln="_detailsBtn_1l49p_405",cn="_navArrow_1l49p_426",dn="_prevArrow_1l49p_459",un="_nextArrow_1l49p_463",b={bannerContainer:La,hero:$a,ambient:Ma,ambientShow:xa,scrim:Ba,progressLine:Pa,paused:Ea,dots:Da,dot:Wa,dotActive:Oa,viewport:Va,track:Fa,slide:qa,slideInner:za,poster:Ga,posterLandscape:Ua,info:Qa,kicker:Ya,featureLabel:Ha,scoreChip:Xa,rise:Ka,active:ja,metaRow:Za,metaItem:Ja,metaDivider:en,title:tn,genres:an,genreTag:nn,summary:rn,actions:on,watchBtn:sn,detailsBtn:ln,navArrow:cn,prevArrow:dn,nextArrow:un},hn=8e3,ce=()=>e("div",{className:"skeleton",style:{width:"100vw",maxWidth:"100vw",position:"relative",left:"50%",right:"50%",marginLeft:"-50vw",marginRight:"-50vw",height:"clamp(480px, 72vh, 660px)",marginTop:"calc(-1 * var(--header-height))",marginBottom:"2.5rem"}}),ve=({slides:n,posterAspect:s="portrait",eyebrow:h="Spotlight"})=>{const[t,o]=E(0),[l,i]=E(0),[d,T]=E(!1),[_,m]=E(null),[p,N]=E(0),[r,w]=E({front:"",back:"",flip:!1}),u=q(0),c=q(0),g=q(new Set),k=q(null),S=q(0),A=P(a=>a.bannerSrc,[]),$=P(()=>{i(a=>a+1)},[]),R=P(a=>{k.current!==null&&(window.clearTimeout(k.current),k.current=null),m(null),$();const f=A(n[a]);w(y=>y.flip?{front:f,back:y.back,flip:!1}:{front:y.front,back:f,flip:!0}),o(a)},[$,n,A]),C=P(a=>{if(n.length===0)return;const f=(a%n.length+n.length)%n.length;g.current.has(A(n[f]))?R(f):m(f)},[n,A,R]);O(()=>{let a=!1;return n.forEach(f=>{const y=A(f);if(!y||g.current.has(y))return;const D=new Image;D.src=y;const K=()=>{a||g.current.has(y)||(g.current.add(y),N(z=>z+1))};D.onload=K,D.onerror=K}),()=>{a=!0}},[n,A]),O(()=>{if(n.length!==0&&!r.front){const a=A(n[0]);w({front:a,back:"",flip:!1})}},[n,r.front,A]),O(()=>{if(_!==null){if(_<0||_>=n.length){m(null);return}g.current.has(A(n[_]))&&R(_)}},[_,p,n,A,R]),O(()=>{if(_===null)return;k.current!==null&&window.clearTimeout(k.current);const a=_;return k.current=window.setTimeout(()=>{k.current=null,R(a)},2500),()=>{k.current!==null&&(window.clearTimeout(k.current),k.current=null)}},[_,R]);const U=P(a=>{C(a)},[C]),x=P(()=>{C(S.current+1)},[C]),I=P(()=>{C(S.current-1)},[C]),F=q(null);if(O(()=>{const a=F.current;if(!a)return;const f=y=>{if(Math.abs(y.deltaY)>Math.abs(y.deltaX)&&Math.abs(y.deltaY)>5){y.preventDefault(),y.stopPropagation();const D=Date.now();if(D-u.current<300)return;u.current=D,$(),y.deltaY>0?x():I()}};return a.addEventListener("wheel",f,{passive:!1}),()=>a.removeEventListener("wheel",f)},[n.length,x,I,$]),O(()=>{if(n.length===0||d)return;const a=setTimeout(x,hn);return()=>clearTimeout(a)},[t,x,n.length,l,d]),O(()=>{const a=f=>{const y=f.target;y&&(y.tagName==="INPUT"||y.tagName==="TEXTAREA"||y.tagName==="SELECT"||y.isContentEditable)||(f.key==="ArrowRight"?(f.preventDefault(),x()):f.key==="ArrowLeft"&&(f.preventDefault(),I()))};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[x,I]),O(()=>{t>=n.length&&o(0)},[n.length,t]),n.length===0)return null;const M=t>=n.length?0:t;S.current=M;const ee=a=>{c.current=a.touches[0].clientX},H=a=>{const y=a.changedTouches[0].clientX-c.current;Math.abs(y)>50&&($(),y>0?I():x())};return e("div",{className:b.bannerContainer,onMouseEnter:()=>T(!0),onMouseLeave:()=>T(!1),children:e("div",{className:`${b.hero} ${d?b.paused:""}`,onTouchStart:ee,onTouchEnd:H,children:[r.front&&e("img",{src:r.front,alt:"","aria-hidden":"true",className:`${b.ambient} ${r.flip?"":b.ambientShow}`}),r.back&&e("img",{src:r.back,alt:"","aria-hidden":"true",className:`${b.ambient} ${r.flip?b.ambientShow:""}`}),e("div",{className:b.scrim,"aria-hidden":"true"}),n.length>1&&e("div",{className:b.progressLine,"aria-hidden":"true"},`progress-${l}-${M}`),n.length>1&&e("div",{className:b.dots,ref:F,role:"tablist","aria-label":"Spotlight slides",children:n.map((a,f)=>e("button",{role:"tab","aria-selected":f===M,"aria-label":`Go to slide ${f+1}: ${a.title}`,className:`${b.dot} ${f===M?b.dotActive:""}`,onClick:()=>U(f),tabIndex:f===M?0:-1},a.key))}),e("div",{className:b.viewport,children:e("div",{className:b.track,style:{transform:`translateX(-${M*100}%)`},children:n.map((a,f)=>e("div",{className:`${b.slide} ${f===M?b.active:""}`,"aria-hidden":f!==M,children:e("div",{className:b.slideInner,children:[e("img",{src:a.posterSrc,alt:a.posterAlt,className:s==="landscape"?b.posterLandscape:b.poster,decoding:"async"}),e("div",{className:b.info,children:[e("div",{className:`${b.kicker} ${b.rise}`,children:[e("span",{className:b.featureLabel,children:h}),a.score!==void 0&&a.score!==null&&a.score!==""&&e("span",{className:b.scoreChip,children:[e(V,{name:"star",size:12}),e("span",{children:a.score})]})]}),e(Ee,{to:a.detailTo,className:`${b.title} ${b.rise}`,"aria-label":`View details for ${a.title}`,tabIndex:f===M?0:-1,children:a.title}),a.metaItems.length>0&&e("div",{className:`${b.metaRow} ${b.rise}`,children:a.metaItems.map((y,D)=>e(G.Fragment,{children:[e("span",{className:b.metaItem,children:y}),D<a.metaItems.length-1&&e("div",{className:b.metaDivider})]},D))}),a.tags.length>0&&e("div",{className:`${b.genres} ${b.rise}`,children:a.tags.slice(0,3).map(y=>e("span",{className:b.genreTag,children:y},y))}),a.synopsis&&e("p",{className:`${b.summary} ${b.rise}`,children:a.synopsis}),e("div",{className:`${b.actions} ${b.rise}`,children:[e("button",{className:b.watchBtn,onClick:a.onPrimary,tabIndex:f===M?0:-1,children:[e(V,{name:a.primaryIcon,size:14}),e("span",{children:a.primaryLabel})]}),e("button",{className:b.detailsBtn,onClick:a.onDetails,tabIndex:f===M?0:-1,children:[e(V,{name:"info-circle",size:15}),e("span",{children:"Details"})]})]})]})]})},a.key))})}),n.length>1&&e(se,{children:[e("button",{className:`${b.navArrow} ${b.prevArrow}`,onClick:()=>{$(),I()},"aria-label":"Previous slide",children:e(V,{name:"chevron-left",size:20})}),e("button",{className:`${b.navArrow} ${b.nextArrow}`,onClick:()=>{$(),x()},"aria-label":"Next slide",children:e(V,{name:"chevron-right",size:20})})]})]})})},pn=({animeList:n})=>{const{titlePreference:s}=Ve(),h=J(),t=Q(()=>n.slice(0,6).map(o=>{const l=s==="nativeName"?o.nativeName||o.name:s==="englishName"&&o.englishName||o.name;return{key:o._id,bannerSrc:o.bannerImage?Te(o.bannerImage,1280,560):Te(o.thumbnail,1280,450),posterSrc:Te(o.thumbnail,460,650),posterAlt:l,title:l,detailTo:`/anime/${o._id}`,score:o.score,metaItems:[o.type||"Anime",o.status,o.episodeCount?`${o.episodeCount} Episodes`:void 0,o.rating].filter(i=>!!i),tags:(o.genres??[]).slice(0,3).map(i=>typeof i=="string"?i:i?.name).filter(i=>!!i),synopsis:ot(o.description??""),primaryLabel:"Watch Now",primaryIcon:"play",onPrimary:()=>h(`/watch/${o._id}`),onDetails:()=>h(`/anime/${o._id}`)}}),[n,s,h]);return e(ve,{slides:t})},mn="_emptyState_19tmt_1",gn="_emptyStateIcon_19tmt_16",vn="_emptyStateTitle_19tmt_23",_n="_emptyStateText_19tmt_30",de={emptyState:mn,emptyStateIcon:gn,emptyStateTitle:vn,emptyStateText:_n},_e=({icon:n,text:s,actionLabel:h,onAction:t,title:o="Nothing is here..."})=>e("div",{className:de.emptyState,children:[e(V,{name:n,size:48,className:de.emptyStateIcon}),e("div",{children:[e("h3",{className:de.emptyStateTitle,children:o}),e("p",{className:de.emptyStateText,children:s})]}),e(Fe,{variant:"primary",size:"sm",onClick:t,style:{marginTop:"1rem"},children:h})]}),fn="_select_1dw63_1",bn={select:fn},he=({value:n,options:s,onChange:h,ariaLabel:t,width:o})=>e("select",{className:bn.select,style:o!==void 0?{width:o}:void 0,value:n,"aria-label":t,onChange:l=>h(l.currentTarget.value),children:s.map(l=>e("option",{value:l.value,children:l.label},l.value))}),yn="_tabBar_irwbm_1",Tn="_tabIndicator_irwbm_24",Nn="_tabButton_irwbm_38",Sn="_tabActive_irwbm_64",ue={tabBar:yn,tabIndicator:Tn,tabButton:Nn,tabActive:Sn};function wn({options:n,value:s,onChange:h,ariaLabel:t},o){const l=q(null),i=q(new Map),d=q(null),[T,_]=E({left:0,width:0}),m=P((p,N)=>{const r=i.current.get(p),w=l.current;if(r&&w){const u=w.getBoundingClientRect(),c=r.getBoundingClientRect();_({left:c.left-u.left+w.scrollLeft,width:c.width}),N&&r.scrollIntoView({block:"nearest",inline:"nearest"})}},[]);return je(()=>{const p=d.current!==null&&d.current!==s;d.current=s,m(s,p)},[s,n.length,m]),O(()=>{if(m(s,!1),typeof ResizeObserver>"u")return;let p=0;const N=l.current;if(!N)return;const r=new ResizeObserver(()=>{cancelAnimationFrame(p),p=requestAnimationFrame(()=>m(s,!1))});r.observe(N);let w=!1;return document.fonts?.ready&&document.fonts.ready.then(()=>{w||m(s,!1)}),()=>{w=!0,cancelAnimationFrame(p),r.disconnect()}},[s,n.length,m]),e("div",{className:ue.tabBar,ref:p=>{l.current=p,typeof o=="function"?o(p):o&&(o.current=p)},"aria-label":t,children:[e("div",{className:ue.tabIndicator,style:{left:T.left,width:T.width}}),n.map(p=>e(Fe,{ref:N=>{N&&i.current.set(p.value,N)},variant:"secondary",size:"sm",className:`${ue.tabButton} ${s===p.value?ue.tabActive:""}`,onClick:()=>h(p.value),children:p.label},p.value))]})}const pe=G.forwardRef(wn),kn=[{value:"popular",label:"Popular"},{value:"followed",label:"Most Followed"},{value:"rating",label:"Top Rated"}],Be=({title:n,eyebrow:s,sort:h,mature:t,headerActions:o})=>{const{toggle:l,bookmarkedIds:i}=Ue(),{popup:d,openPopup:T,scheduleClose:_,cancelClose:m,closePopup:p}=ze(),{data:N,isLoading:r,fetchNextPage:w,hasNextPage:u,isFetchingNextPage:c}=yt({provider:"",query:"",sort:h,status:"",type:"",rating:t?"safe,suggestive,erotica,pornographic":"safe",mature:t}),g=Q(()=>N?.pages.flatMap(S=>S.items)??[],[N]),k=P(()=>{u&&!c&&!r&&w()},[u,c,r,w]);return e(se,{children:[e(Z,{title:n,eyebrow:s,loading:r,carousel:!0,itemCount:g.length,headerActions:o,onReachThreshold:k,isFetchingNextPage:c,loadingSkeleton:e("div",{className:"skeleton",style:{aspectRatio:"3 / 4"}}),skeletonCount:7,children:g.map(S=>{const A=Ne(S.provider,S.id);return e(me,{item:{id:A,title:S.title,...Ye(S),thumbnail:Ce(S.provider,S.cover),typeBadge:S.type||void 0,chapterBadge:S.latestChapter?`Ch. ${S.latestChapter}`:null,isAdult:Qe(S)},linkTo:`/manga/${S.provider}/${encodeURIComponent(S.id)}`,hoverIcon:"info",showInfoButton:!0,display:{elements:{poster:{typeBadge:!0,chapterBadge:!0,adultBadge:!0},info:{title:!0,mobileBadges:!0,progress:!1,meta:!1}}},onOpenDetails:$=>T($,{provider:S.provider,mangaId:S.id,title:S.title,altTitle:S.altTitle,cover:S.cover,contentRating:S.contentRating,readTarget:`/manga/${S.provider}/${encodeURIComponent(S.id)}`,mature:t}),onPopupHoverIntent:$=>$?m():_(),rawThumbnail:!0},`${S.provider}-${S.id}`)})}),d&&e(Ge,{data:d.data,anchorRect:d.rect,bookmarked:i.has(Ne(d.data.provider,d.data.mangaId)),onToggleBookmark:()=>l({id:d.data.mangaId,provider:d.data.provider,title:d.data.title,cover:d.data.cover,altTitle:d.data.altTitle??void 0,contentRating:d.data.contentRating}),onMouseEnter:m,onMouseLeave:_,onRequestClose:p})]})},Cn=()=>{const{options:n}=St(),s=Q(()=>n.some(d=>d.kind==="manga"),[n]),{hasConsent:h}=st(),[t,o]=oe("manga_discover_tab","latest"),[l,i]=oe("manga_trending_sort","popular");return s?e(se,{children:[e(pe,{ariaLabel:"Discover manga",options:[{value:"latest",label:"Latest Releases"},{value:"trending",label:"Trending"}],value:t,onChange:o}),t==="latest"?e(Be,{title:"Latest Releases",eyebrow:"Fresh chapters",sort:"latest",mature:h}):e(Be,{title:"Trending",eyebrow:"Discover",sort:l,mature:h,headerActions:e("select",{className:B["header-select"],value:l,onChange:d=>i(d.currentTarget.value),"aria-label":"Trending sort",children:kn.map(d=>e("option",{value:d.value,children:d.label},d.value))})})]}):null},In=()=>{const n=J(),{data:s,isLoading:h}=Tt(24),[t,o]=E(null),{popup:l,openPopup:i,scheduleClose:d,cancelClose:T,closePopup:_}=ze(),{toggle:m,bookmarkedIds:p}=Ue(),N=s?.data??[];return e("div",{style:{paddingBottom:"2rem"},children:[e(Z,{title:"Continue Reading",eyebrow:"Pick up where you left off",titleLink:"/reading-list/Continue Reading",loading:h,carousel:!0,collapsible:!0,defaultExpanded:N.length>0,highlight:!0,itemCount:N.length,loadingSkeleton:e("div",{className:"skeleton",style:{aspectRatio:"3 / 4"}}),skeletonCount:7,emptyState:e(_e,{icon:"book",text:"You haven't read anything yet. Browse manga and open a chapter to start tracking.",actionLabel:"Browse Manga",onAction:()=>n("/manga")}),children:N.map(r=>{const w=r.page??0,u=r.pageCount??0,c=r.chapterId&&r.provider?`/manga/${r.provider}/${encodeURIComponent(r.mangaId)}/read?chapter=${encodeURIComponent(r.chapterId)}`:r.provider?`/manga/${r.provider}/${encodeURIComponent(r.mangaId)}`:"#";return e(me,{item:{id:r.id,title:r.title||"",...Ye({title:r.title||"",altTitle:r.altTitle}),thumbnail:r.provider?Ce(r.provider,r.cover||""):r.cover||"",chapterBadge:r.chapterNumber?`Ch. ${r.chapterNumber}`:null,isAdult:Qe(r)},linkTo:c,hoverIcon:"book",progress:u>0?{percent:w/u*100,label:`Ch. ${r.chapterNumber} · p. ${w}/${u}`}:void 0,showProgress:!0,display:{elements:{poster:{typeBadge:!1,chapterBadge:!0,adultBadge:!0,removeButton:!0},info:{title:!0,mobileBadges:!0,progress:!0,meta:!1}}},onRemove:()=>o({libId:r.id,title:r.title||""}),onOpenDetails:g=>i(g,{provider:r.provider||"",mangaId:r.mangaId||"",title:r.title||"",altTitle:r.altTitle,cover:r.cover||"",contentRating:r.contentRating||void 0,readTarget:c}),onPopupHoverIntent:g=>g?T():d(),rawThumbnail:!0},r.id)})}),e(bt,{mangaId:t?t.libId:null,title:t?.title,onClose:()=>o(null)}),l&&l.data.provider&&e(Ge,{data:l.data,anchorRect:l.rect,bookmarked:p.has(Ne(l.data.provider,l.data.mangaId)),onToggleBookmark:()=>m({id:l.data.mangaId,provider:l.data.provider,title:l.data.title,cover:l.data.cover,altTitle:l.data.altTitle??void 0,contentRating:l.data.contentRating}),onMouseEnter:T,onMouseLeave:d,onRequestClose:_}),e(Cn,{})]})},An="_seasonGrid_knq79_24",X={"section-header":"_section-header_knq79_1","title-wrapper":"_title-wrapper_knq79_8","pagination-controls":"_pagination-controls_knq79_14",seasonGrid:An},Rn="_emptyState_bpz5x_1",Pe={emptyState:Rn},Ln=[{value:"latest",label:"Latest Releases"},{value:"trending",label:"Trending"}],$n=[{value:"trending_week",label:"Trending Now"},{value:"trending_day",label:"Trending Today"},{value:"popular",label:"Popular All Time"},{value:"top_rated",label:"Top Rated"}],Mn=()=>{const n=J(),{data:s,isLoading:h}=Ct(24),t=It(),o=At(),[l,i]=E(null),[d,T]=E(()=>localStorage.getItem("tv_home_activeTab")||"latest"),[_,m]=E("tv"),[p,N]=E("trending_week"),[r,w]=E("multi"),u=s?.data??[];G.useEffect(()=>{localStorage.setItem("tv_home_activeTab",d)},[d]);const c=p.startsWith("trending_"),g=p==="trending_day"?"day":"week",k={popular:"popularity.desc",top_rated:"vote_average.desc"},{data:S,isLoading:A}=He(r==="multi"?"all":r,g,1,c&&d==="trending"),{data:$,isLoading:R}=$e({type:r,sort_by:k[p]||"popularity.desc",page:1}),C=c?S?.results||[]:$?.results||[],U=c?A:R,{data:x,isLoading:I}=$e({type:_,sort_by:"primary_release_date.desc",page:1}),F=x?.results||[],M=a=>{l&&(o.mutate({mediaId:l.libId}),a&&t.mutate(l.libId))},ee=P(a=>e(wt,{item:{id:a.id,title:a.title,year:a.year,type:a.type,image:a.image,vote_average:a.vote_average,adult:a.adult}},`${a.type}-${a.id}`),[]),H=()=>{switch(d){case"latest":return e("section",{children:[e("div",{className:X["section-header"],children:[e("div",{className:X["title-wrapper"],children:e("div",{className:"title-stack",children:[e("div",{className:"section-eyebrow",children:"Fresh picks"}),e("div",{className:"section-title",style:{marginBottom:0},children:"Latest Releases"})]})}),e("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:e(he,{ariaLabel:"Latest type",value:_,onChange:a=>m(a),options:[{value:"tv",label:"TV Shows"},{value:"movie",label:"Movies"}]})})]}),I?e("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(150px, 1fr))",gap:"var(--space-6)"},children:Array.from({length:7}).map((a,f)=>e("div",{className:"skeleton",style:{aspectRatio:"3 / 4",borderRadius:"var(--radius-lg)"}},f))}):F.length>0?e(Z,{carousel:!0,itemCount:F.length,children:F.map(ee)}):e("div",{className:Pe.emptyState,children:e("p",{children:"No latest releases available right now."})})]});case"trending":return e("section",{children:[e("div",{className:X["section-header"],children:[e("div",{className:X["title-wrapper"],children:e("div",{className:"title-stack",children:[e("div",{className:"section-eyebrow",children:"Discover"}),e("div",{className:"section-title",style:{marginBottom:0},children:"Trending"})]})}),e("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e(he,{ariaLabel:"Trending sort",value:p,onChange:N,options:$n.map(a=>({value:a.value,label:a.label}))}),e(he,{ariaLabel:"Trending type",value:r,onChange:a=>w(a),options:[{value:"multi",label:"All"},{value:"tv",label:"TV Shows"},{value:"movie",label:"Movies"}]})]})]}),U?e("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(150px, 1fr))",gap:"var(--space-6)"},children:Array.from({length:7}).map((a,f)=>e("div",{className:"skeleton",style:{aspectRatio:"3 / 4",borderRadius:"var(--radius-lg)"}},f))}):C.length>0?e(Z,{carousel:!0,itemCount:C.length,children:C.map(ee)}):e("div",{className:Pe.emptyState,children:e("p",{children:"No trending content available right now."})})]})}};return e("div",{style:{paddingBottom:"2rem"},children:[e(Z,{title:"Continue Watching",eyebrow:"Pick up where you left off",titleLink:"/tv-watchlist/Continue Watching",loading:h,carousel:!0,collapsible:!0,defaultExpanded:u.length>0,highlight:!0,itemCount:u.length,loadingSkeleton:e("div",{className:"skeleton",style:{aspectRatio:"3 / 4"}}),skeletonCount:7,emptyState:e(_e,{icon:"tv",text:"You haven't watched anything yet. Search TV & Movies and start watching to track progress.",actionLabel:"Browse TV & Movies",onAction:()=>n("/tv-search")}),children:u.map(a=>{const f=a.currentTime??0,y=a.duration??0,D=a.season??1,K=a.episode??1,z=a.mediaType==="movie",j=z?"Movie":`S${D} E${K}`,te=a.completed===1||y>0&&f>=y*.8,ae=te?100:y>0&&f>0?f/y*100:0,fe=te?"Watched":y>0?z?`${ne(f)} / ${ne(y)}`:`${j} · ${ne(f)} / ${ne(y)}`:j;return e(me,{item:{id:a.id,title:a.title||"",thumbnail:a.poster||"",typeBadge:z?"Movie":"TV",chapterBadge:j,isAdult:Lt({adult:a.adult===1})},linkTo:Rt(a.mediaType,a.tmdbId??0,z?void 0:D,z?void 0:K),hoverIcon:"play",progress:(y>0||te)&&ae>0?{percent:ae,label:fe}:void 0,showProgress:!0,metaRow:a.year?e("span",{style:{opacity:.75},children:a.year}):void 0,onRemove:()=>i({libId:a.id,title:a.title||""}),renderPopup:(be,re)=>e(kt,{item:{id:a.tmdbId??0,title:a.title||"",year:a.year||"",type:a.mediaType||"tv",image:a.poster||""},anchorRect:be,onMouseEnter:re.onMouseEnter,onMouseLeave:re.onMouseLeave,onRequestClose:re.close})},a.id)})}),e(pe,{ariaLabel:"Browse TV",options:Ln,value:d,onChange:T}),e("div",{children:H()}),e(qe,{isOpen:!!l,itemName:l?.title,progressKind:"watch",listLabel:"my TV watchlist",onClose:()=>{i(null)},onConfirm:M})]})};function xn(n){const s=n.currentTime??0,h=n.duration??0,t=(n.trackIndex??0)+1;return h>0?`Track ${t} · ${ne(s)} / ${ne(h)}`:n.trackLabel?`Track ${t} · ${n.trackLabel}`:`Track ${t}`}const Bn=({title:n="Continue Listening",limit:s=24,titleLink:h,showEmptyState:t=!0})=>{const o=J(),{data:l,isLoading:i}=Pt(s),[d,T]=E(null),_=l?.data??[];return e(se,{children:[e(Z,{title:n,eyebrow:"Pick up where you left off",titleLink:h??"/listening-list/Continue Listening",loading:i,carousel:!0,collapsible:!0,defaultExpanded:_.length>0,highlight:!0,itemCount:_.length,loadingSkeleton:e("div",{className:"skeleton",style:{aspectRatio:"16 / 9"}}),skeletonCount:7,emptyState:t?e(_e,{icon:"headphones",text:"You haven't listened to anything yet. Browse ASMR and play a track to start tracking.",actionLabel:"Browse ASMR",onAction:()=>o("/asmr")}):void 0,children:_.map(m=>{const p=m.currentTime??0,N=m.duration??0,r=m.rjCode||m.id;return e(me,{item:{id:m.id,title:m.title||"",thumbnail:m.thumbnail||"",chapterBadge:`Track ${(m.trackIndex??0)+1}`,isAdult:!!m.isAdult},linkTo:`/asmr/${encodeURIComponent(r)}`,hoverIcon:"play",layout:"horizontal",progress:N>0?{percent:Math.min(100,p/N*100),label:xn(m)??""}:void 0,showProgress:!0,display:{elements:{poster:{typeBadge:!1,chapterBadge:!0,adultBadge:!0,removeButton:!0},info:{title:!0,mobileBadges:!0,progress:!0,meta:!1}}},onRemove:()=>T({workId:m.id,title:m.title||""}),rawThumbnail:!0},m.id)})}),e(Bt,{workId:d?d.workId:null,title:d?.title,onClose:()=>T(null)})]})},Pn=()=>e("div",{style:{paddingBottom:"2rem"},children:e(Bn,{})}),En=({items:n})=>{const s=J(),h=Q(()=>n.slice(0,6).map(t=>{const o=$t(t.type,t.id);return{key:String(t.id),bannerSrc:t.backdrop?t.backdrop:t.image,posterSrc:t.image,posterAlt:t.title,title:t.title,detailTo:o,score:t.vote_average>0?Number(t.vote_average).toFixed(1):null,metaItems:[t.type==="tv"?"TV Show":"Movie",t.year].filter(Boolean),tags:t.genre_ids.slice(0,3).map(l=>Mt[l]??xt[l]).filter(Boolean),synopsis:we(t.overview,200),primaryLabel:"Watch Now",primaryIcon:"play",onPrimary:()=>s(o),onDetails:()=>s(o)}}),[n,s]);return e(ve,{slides:h,eyebrow:"TV Spotlight"})},Dn=({mangaList:n})=>{const s=J(),h=Q(()=>n.slice(0,6).map(t=>{const o=`/manga/${t.provider||"mangadex"}/${t.id}`,l=Ce(t.provider||"mangadex",t.cover||"");return{key:`${t.provider}-${t.id}`,bannerSrc:l,posterSrc:l,posterAlt:t.title,title:t.title,detailTo:o,metaItems:[t.year?String(t.year):void 0,t.status??void 0].filter(i=>!!i),tags:t.tags.slice(0,3),synopsis:we(t.description,200,""),primaryLabel:"Read Now",primaryIcon:"book",onPrimary:()=>s(o),onDetails:()=>s(o)}}),[n,s]);return e(ve,{slides:h,eyebrow:"Manga Spotlight"})};function Wn(n){const s=n.availableEpisodes?.sub;if(typeof s=="number"&&s>0)return s;const h=n.availableEpisodesDetail?.sub,t=n.availableEpisodesDetail?.dub,o=(Array.isArray(h)?h.length:0)+(Array.isArray(t)?t.length:0);return o>0?o:null}const On=({works:n})=>{const s=J(),h=Q(()=>n.slice(0,6).map((t,o)=>{const l=Et(t),i=`/asmr/${encodeURIComponent(l)}`,d=Wn(t);return{key:l||t._id||String(o),bannerSrc:t.thumbnail||"",posterSrc:t.thumbnail||"",posterAlt:t.name,title:t.name,detailTo:i,metaItems:[t.rating?t.rating.toUpperCase():void 0,d?`${d} track${d===1?"":"s"}`:void 0].filter(T=>!!T),tags:[],synopsis:we(t.description,160,""),primaryLabel:"Listen Now",primaryIcon:"play",onPrimary:()=>s(i),onDetails:()=>s(i)}}),[n,s]);return e(ve,{slides:h,eyebrow:"ASMR Spotlight",posterAspect:"landscape"})},Vn=[{value:"anime",label:"Anime"},{value:"manga",label:"Manga"},{value:"tv",label:"TV & Movies"},{value:"asmr",label:"ASMR"}],mr=()=>{const n=Je(),s=lt(),[h,t]=G.useState(1),[o,l]=E(()=>localStorage.getItem("home_activeTab")||"latest"),[i,d]=E(()=>localStorage.getItem("season_format")||"TV"),T=q(null),{data:_}=Le(h+1,i,o==="season"),{titlePreference:m}=Ve(),{contentType:p,setContentType:N}=it(),[r,w]=G.useState(null),u=ct(),{data:c=[]}=dt(),g=ut(),k=ht(),S=pt();O(()=>{document.title="Home - dango"},[]);const{data:A,isLoading:$}=mt();O(()=>{localStorage.setItem("home_activeTab",o)},[o]),O(()=>{localStorage.setItem("season_format",i),t(1)},[i]),O(()=>{A!==void 0&&A.length===0&&o==="week"&&l("latest")},[A,o]);const{data:R,isLoading:C,fetchNextPage:U,hasNextPage:x,isFetchingNextPage:I}=gt(),F=P(()=>{x&&!I&&!C&&U()},[x,I,C,U]),{data:M,isLoading:ee}=vt(),{data:H,isLoading:a}=He("all","week",1,p==="tv"),{data:f,isLoading:y}=Dt(p==="asmr"),{data:D,isLoading:K}=Nt(),z=Q(()=>R?.pages||[],[R]),{data:j,isLoading:te}=Le(h,i,o==="season"),ae=14,fe=j&&j.length>=ae&&_&&_.length>0,be=et(s.continueWatching.remove.mutationOptions({onSuccess:async()=>{n.invalidateQueries(s.continueWatching.pathFilter()),await n.invalidateQueries({queryKey:[Oe.continueWatching]}),x&&z.length-1<14&&U()}})),re=P(W=>{const Y=z?.find(ye=>String(ye.id)===String(W));if(Y){const ye=Y[m]||Y.name;w({id:W,name:ye})}},[z,m]),Ie=[{key:"latest",label:"Latest Releases"},{key:"season",label:"Current Season"},{key:"popular",label:"Trending"}],Ae=A!==void 0&&A.length>0,Xe=Ae?[{key:"week",label:"This Week"},...Ie]:Ie,Re=o==="week"&&!Ae?"latest":o,Ke=()=>{switch(Re){case"latest":return e(la,{eyebrow:"Fresh episodes"});case"season":return e("section",{style:{marginBottom:"2.5rem"},children:[e("div",{className:X["section-header"],ref:T,children:[e("div",{className:X["title-wrapper"],children:e("div",{className:"title-stack",children:[e("div",{className:"section-eyebrow",children:"This season"}),e("div",{className:"section-title",style:{marginBottom:0},children:"Current Season"})]})}),e("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e(he,{ariaLabel:"Season format",width:90,value:i,onChange:d,options:[{value:"TV",label:"TV"},{value:"ONA",label:"ONA"},{value:"OVA",label:"OVA"},{value:"MOVIE",label:"Movie"},{value:"ALL",label:"All"},{value:"ADULT",label:"Mature"}]}),e("div",{className:X["pagination-controls"],children:e(tt,{page:h,canGoNext:fe,onChange:W=>{if(t(W),T.current){const Y=T.current.getBoundingClientRect().top+window.scrollY-120;window.scrollTo({top:Y,behavior:"smooth"})}},isLoading:te})})]})]}),e("div",{className:`grid-container ${X.seasonGrid}`,style:{minHeight:"300px",alignContent:"start"},children:te?e(De,{count:ae}):j?.slice(0,ae).map(W=>e(le,{anime:W},W._id))})]});case"popular":return e(ra,{title:"Trending",eyebrow:"Discover"});case"week":return e(Me,{title:"This Week",eyebrow:"Aired this week",animeList:A||[],continueWatching:!1,carousel:!0,loading:$});default:return null}};return e("div",{style:{paddingBottom:"2rem"},children:[p==="anime"&&(ee&&!M?.length?e(ce,{}):M&&M.length>0&&e(pn,{animeList:M})),p==="tv"&&(a&&!H?.results?.length?e(ce,{}):H?.results&&H.results.length>0&&e(En,{items:H.results})),p==="manga"&&(K&&!D?.length?e(ce,{}):D&&D.length>0&&e(Dn,{mangaList:D})),p==="asmr"&&(y&&!f?.length?e(ce,{}):f&&f.length>0&&e(On,{works:f})),e(pe,{ariaLabel:"Content type",options:Vn,value:p,onChange:N}),p==="manga"?e(In,{}):p==="tv"?e(Mn,{}):p==="asmr"?e(Pn,{}):e(se,{children:[e(Me,{title:"Continue Watching",eyebrow:"Pick up where you left off",titleLink:"/watchlist/Continue Watching",animeList:z,continueWatching:!0,carousel:!0,collapsible:!0,defaultExpanded:z.length>0,onRemove:re,loading:C,onReachThreshold:F,scrollThreshold:.7,isFetchingNextPage:I,emptyState:e(_e,{icon:"history",text:"You haven't watched anything yet. Start exploring and watch something first!",actionLabel:"Explore Trending",onAction:()=>l("popular")})}),e(ft,{title:"Queue",eyebrow:"Up next",items:c,onRemove:W=>g.mutate({showId:W.showId,episodeNumber:W.episodeNumber}),showClearAll:!0,onClear:()=>k.mutate(),onReorder:W=>S.mutate(W.map(Y=>({id:Y.id,showId:Y.showId,episodeNumber:Y.episodeNumber})))}),e(pe,{ariaLabel:"Browse anime",options:Xe.map(W=>({value:W.key,label:W.label})),value:Re,onChange:l}),e("div",{children:Ke()}),e(Ra,{eyebrow:"Never miss an episode"}),e(qe,{isOpen:!!r,itemName:r?.name,progressKind:"watch",listLabel:"my watchlist",onClose:()=>{w(null)},onConfirm:W=>{r&&(be.mutate({showId:r.id}),W&&u.mutate({id:r.id}))}})]})]})};export{mr as default};
@@ -0,0 +1 @@
1
+ ._header_1geik_1{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);animation:_fadeIn_1geik_1 .8s var(--ease-smooth)}._personaBadge_1geik_9{display:flex;align-items:center;gap:var(--space-4);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--accent-light);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-weight:700;border:1px solid var(--border-accent);box-shadow:var(--glass-shadow);cursor:default;transition:all var(--transition-base)}._personaBadge_1geik_9:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow)}._personaBadge_1geik_9 svg{font-size:1.5rem;color:var(--accent)}._personaInfo_1geik_37{display:flex;flex-direction:column}._personaLabel_1geik_42{font-size:.72rem;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-tertiary);margin-bottom:2px;font-weight:800}._personaValue_1geik_51{font-size:1.1rem;color:var(--text-primary);letter-spacing:-.01em}._statsGrid_1geik_57{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-6);margin-bottom:var(--space-10);animation:_slideUpIn_1geik_1 .8s var(--ease-smooth)}._statCard_1geik_65{background:var(--glass-bg);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;align-items:center;gap:var(--space-5);transition:all var(--transition-base)}._statCard_1geik_65:hover{transform:translateY(-5px);border-color:var(--border-accent);background:var(--bg-tertiary)}._statIcon_1geik_82{width:54px;height:54px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;transition:transform var(--transition-base)}._statCard_1geik_65:hover ._statIcon_1geik_82{transform:scale(1.1) rotate(-5deg)}._statInfo_1geik_98{display:flex;flex-direction:column}._statValue_1geik_103{font-size:1.75rem;font-weight:800;color:var(--text-primary);line-height:1;margin-bottom:4px;letter-spacing:-.02em}._statLabel_1geik_112{color:var(--text-tertiary);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}._wideSection_1geik_120{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-8);margin-bottom:var(--space-10);box-shadow:var(--glass-shadow);animation:_slideUpIn_1geik_1 .8s var(--ease-smooth) .1s both}._sectionHeader_1geik_132{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);gap:var(--space-4)}._sectionHeader_1geik_132 h3{font-size:1.5rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}._yearSelect_1geik_147{width:130px;height:44px;padding:0 var(--space-4);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:600;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 1rem center;transition:all var(--transition-fast)}._yearSelect_1geik_147:hover{border-color:var(--border-secondary);background-color:var(--bg-elevated)}._yearSelect_1geik_147:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}._heatmapLayout_1geik_176{display:flex;gap:var(--space-8);align-items:flex-start;justify-content:center}._dayLabels_1geik_183{display:grid;grid-template-rows:repeat(7,14px);gap:4px;font-size:.75rem;color:var(--text-tertiary);align-items:center;padding-right:6px;margin-top:24px;font-weight:700}._heatmapWrapper_1geik_195{overflow-x:auto;padding:var(--space-2) var(--space-3);max-width:100%}._heatmapMonthLabels_1geik_201{display:grid;grid-auto-flow:column;grid-auto-columns:18px;margin-bottom:8px;font-size:.7rem;color:var(--text-tertiary);font-weight:700;text-transform:uppercase}._heatmapGrid_1geik_212{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,14px);gap:4px;width:fit-content}._heatBox_1geik_220{width:14px;height:14px;border-radius:3px;background:var(--bg-tertiary);border:1px solid var(--border-primary);transition:all .15s ease}._heatBox_1geik_220._hiddenBox_1geik_229{opacity:0;pointer-events:none}._heatBox_1geik_220:hover{transform:scale(1.6);z-index:10;border-color:var(--accent)}._level0_1geik_240{background:var(--bg-tertiary)}._level1_1geik_243{background:color-mix(in srgb,var(--accent) 25%,transparent);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}._level2_1geik_247{background:color-mix(in srgb,var(--accent) 50%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}._level3_1geik_251{background:color-mix(in srgb,var(--accent) 75%,transparent);border-color:color-mix(in srgb,var(--accent) 80%,transparent)}._level4_1geik_255{background:var(--accent);border-color:var(--accent-light)}._heatmapFooter_1geik_260{display:flex;justify-content:flex-end;margin-top:var(--space-6);padding-right:var(--space-2)}._heatLegend_1geik_267{display:flex;align-items:center;gap:6px;font-size:.7rem;color:var(--text-tertiary);font-weight:700;text-transform:uppercase}._chartsContainer_1geik_277{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-8);margin-bottom:var(--space-10);animation:_slideUpIn_1geik_1 .8s var(--ease-smooth) .2s both}._chartWrapper_1geik_285{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;box-shadow:var(--glass-shadow);transition:transform var(--transition-base)}._chartWrapper_1geik_285:hover{transform:translateY(-4px)}._chartWrapper_1geik_285 h3{margin-bottom:var(--space-8);font-size:1.25rem;font-weight:800;color:var(--text-primary);border-left:4px solid var(--accent);padding-left:var(--space-4);letter-spacing:-.01em}._hourlyChart_1geik_312{display:flex;align-items:flex-end;height:160px;gap:2px;padding-top:var(--space-4)}._hourlyBarContainer_1geik_320{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}._hourlyBar_1geik_320{width:100%;max-width:12px;background:linear-gradient(to top,var(--accent),var(--accent-light));border-radius:4px 4px 2px 2px;opacity:.7;transition:all var(--transition-fast);min-height:4px}._hourlyBar_1geik_320:hover{opacity:1;transform:scaleY(1.05);filter:brightness(1.2);box-shadow:0 0 10px var(--accent-glow)}._hourlyLabel_1geik_346{font-size:.75rem;color:var(--text-tertiary);margin-top:8px;font-weight:700}._chartSubtext_1geik_353{margin-top:var(--space-8);padding:var(--space-4);background:var(--accent-subtle);border:1px solid var(--border-accent);border-radius:var(--radius-lg);font-size:.9rem;color:var(--accent-light);font-weight:600;text-align:center}._popScale_1geik_365{padding:var(--space-8) 0}._popTrack_1geik_369{height:14px;background:linear-gradient(to right,var(--accent-dark),var(--accent),var(--accent-light));border-radius:var(--radius-full);position:relative;margin-bottom:var(--space-6)}._popThumb_1geik_377{width:26px;height:26px;background:#fff;border:4px solid var(--bg-secondary);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:left 1s var(--ease-spring)}._popLabels_1geik_389{display:flex;justify-content:space-between;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}._popDescription_1geik_399{font-size:.95rem;color:var(--text-secondary);line-height:1.6;background:var(--bg-secondary);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--border-primary)}._popDescription_1geik_399 strong{color:var(--text-primary);font-weight:800}._seasonalChart_1geik_414{display:flex;align-items:flex-end;height:160px;gap:8px;padding-top:var(--space-4)}._seasonalBarContainer_1geik_422{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}._seasonalBar_1geik_422{width:100%;background:var(--accent);border-radius:6px 6px 2px 2px;opacity:.8;transition:all var(--transition-fast)}._seasonalBar_1geik_422:hover{opacity:1;transform:scaleY(1.03)}._seasonalLabel_1geik_444{font-size:.75rem;color:var(--text-tertiary);margin-top:10px;font-weight:700;text-transform:uppercase}._genreList_1geik_452{display:flex;flex-direction:column;gap:var(--space-6);padding-top:var(--space-2)}._genreRow_1geik_459{display:flex;flex-direction:column;gap:var(--space-2)}._genreInfo_1geik_465{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}._genreName_1geik_472{font-weight:800;font-size:1rem;color:var(--text-primary);letter-spacing:-.01em}._genreCount_1geik_479{font-size:.8rem;color:var(--text-tertiary);font-weight:700;text-transform:uppercase}._genreBarBg_1geik_486{height:12px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden}._genreBar_1geik_486{height:100%;border-radius:var(--radius-full);transition:width 1.5s var(--ease-smooth)}._warningSection_1geik_499{background:color-mix(in srgb,var(--color-danger) 3%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid color-mix(in srgb,var(--color-danger) 20%,transparent);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:0 20px 50px -20px color-mix(in srgb,var(--color-danger) 15%,transparent);animation:_slideUpIn_1geik_1 .8s var(--ease-smooth) .3s both}._warningHeader_1geik_510{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);color:var(--color-danger)}._warningHeader_1geik_510 h3{font-size:1.5rem;font-weight:800;margin:0;letter-spacing:-.03em;text-transform:uppercase}._droppedGrid_1geik_526{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5)}._droppedCard_1geik_532{background:var(--bg-secondary);border:1px solid var(--border-primary);padding:var(--space-6);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:8px;transition:all var(--transition-base)}._droppedCard_1geik_532:hover{transform:translateY(-4px) scale(1.02);background:var(--bg-tertiary);border-color:var(--border-secondary)}._droppedName_1geik_549{font-weight:800;color:var(--text-primary);font-size:1.1rem;letter-spacing:-.01em}._droppedDate_1geik_556{font-size:.85rem;color:var(--text-tertiary);font-weight:600}@keyframes _fadeIn_1geik_1{0%{opacity:0}to{opacity:1}}@keyframes _slideUpIn_1geik_1{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){._header_1geik_1{flex-direction:column;align-items:flex-start;gap:var(--space-6)}._statsGrid_1geik_57,._chartsContainer_1geik_277{grid-template-columns:1fr}._heatmapLayout_1geik_176{flex-direction:column-reverse}._genreGrid_1geik_597{grid-template-columns:1fr}}._genreGrid_1geik_597{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem;margin-bottom:var(--space-10)}._genreCard_1geik_609{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:1.5rem;position:relative;box-shadow:var(--glass-shadow)}._rankBadge_1geik_618{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center}._rankNumber_1geik_631{color:var(--accent-text);font-weight:700;font-size:1.1rem}._genreTitle_1geik_637{font-size:1.25rem;font-weight:800;color:var(--text-primary);margin-bottom:.75rem;letter-spacing:-.01em}._genreStats_1geik_645{display:flex;gap:1rem;margin-bottom:1rem;font-size:.85rem;color:var(--text-secondary)}._posterRow_1geik_653{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.5rem}._miniPoster_1geik_660{aspect-ratio:2/3;width:100%;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border-primary);transition:transform var(--transition-fast)}._miniPoster_1geik_660:hover{transform:scale(1.05);border-color:var(--accent)}._genreCardSkeleton_1geik_674{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:1.5rem;animation:_pulse_1geik_1 1.5s ease-in-out infinite}._skeletonRank_1geik_682{width:32px;height:32px;background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);border-radius:50%;margin-bottom:.5rem}._skeletonTitle_1geik_696{height:1.25rem;width:60%;background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);border-radius:4px;margin-bottom:.75rem}._skeletonStats_1geik_709{height:1rem;background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);border-radius:4px;margin-bottom:1rem}._skeletonPosters_1geik_721{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}._skeletonPosters_1geik_721:before{content:"";display:block;height:100%;background:linear-gradient(90deg,#ffffff1a 25%,#fff3,#ffffff1a 75%);border-radius:4px}@keyframes _pulse_1geik_1{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}._recSection_1geik_752{margin-top:2rem}._recSection_1geik_752 h3{font-size:1.5rem;font-weight:800;margin:0 0 .25rem;letter-spacing:-.03em}._recSubtext_1geik_763{font-size:.85rem;color:var(--text-tertiary);margin-bottom:1rem}._recGrid_1geik_769{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-5)}._recCard_1geik_775{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;gap:var(--space-5);transition:all var(--transition-base)}._recCard_1geik_775:hover{transform:translateY(-4px);border-color:var(--border-secondary)}._recCover_1geik_790{width:72px;height:102px;object-fit:cover;border-radius:8px;flex-shrink:0}._recInfo_1geik_798{display:flex;flex-direction:column;gap:6px;min-width:0}._recTitle_1geik_805{font-weight:800;color:var(--text-primary);font-size:1rem;text-decoration:none}._recTitle_1geik_805:hover{text-decoration:underline}._recMatch_1geik_816{font-size:.8rem;font-weight:700;color:var(--accent)}._recMeta_1geik_822{font-size:.8rem;color:var(--text-tertiary)}._recWhy_1geik_827{font-size:.82rem;color:var(--text-secondary)}._recNote_1geik_832{font-size:.8rem;color:var(--text-tertiary);font-style:italic}._recAddBtn_1geik_838{margin-top:auto;align-self:flex-start;background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-primary);border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:700;cursor:pointer}._recAddBtn_1geik_838:hover:not(:disabled){border-color:var(--accent)}._recAddBtn_1geik_838:disabled{opacity:.6;cursor:default}._loading_1geik_860{padding:var(--space-16) var(--space-4);text-align:center;color:var(--text-muted)}._error_1geik_866{padding:var(--space-16) var(--space-4);text-align:center;color:var(--color-danger)}
@@ -0,0 +1 @@
1
+ import{h as P,T as c,d as O,u as e,L as A}from"./vendor-core-DfaOB3Rn.js";import{b as S,u as F,a as q}from"./vendor-query-BBT5_sHx.js";import{q as _,t as g,$ as V,d as Y,A as L,f as B}from"./index-BLh_CXtu.js";import{I as l}from"./vendor-icons-DrybRNxP.js";const H="_header_1geik_1",E="_fadeIn_1geik_1",U="_personaBadge_1geik_9",z="_personaInfo_1geik_37",K="_personaLabel_1geik_42",Q="_personaValue_1geik_51",j="_statsGrid_1geik_57",J="_slideUpIn_1geik_1",X="_statCard_1geik_65",Z="_statIcon_1geik_82",ee="_statInfo_1geik_98",ae="_statValue_1geik_103",te="_statLabel_1geik_112",se="_wideSection_1geik_120",ne="_sectionHeader_1geik_132",re="_yearSelect_1geik_147",ie="_heatmapLayout_1geik_176",le="_dayLabels_1geik_183",oe="_heatmapWrapper_1geik_195",ce="_heatmapMonthLabels_1geik_201",de="_heatmapGrid_1geik_212",he="_heatBox_1geik_220",me="_hiddenBox_1geik_229",_e="_level0_1geik_240",ge="_level1_1geik_243",pe="_level2_1geik_247",ue="_level3_1geik_251",ke="_level4_1geik_255",Ne="_heatmapFooter_1geik_260",ve="_heatLegend_1geik_267",ye="_chartsContainer_1geik_277",be="_chartWrapper_1geik_285",fe="_hourlyChart_1geik_312",Ce="_hourlyBarContainer_1geik_320",Se="_hourlyBar_1geik_320",Le="_hourlyLabel_1geik_346",Be="_chartSubtext_1geik_353",we="_popScale_1geik_365",Ie="_popTrack_1geik_369",De="_popThumb_1geik_377",xe="_popLabels_1geik_389",Te="_popDescription_1geik_399",$e="_seasonalChart_1geik_414",Me="_seasonalBarContainer_1geik_422",Re="_seasonalBar_1geik_422",Ge="_seasonalLabel_1geik_444",We="_genreList_1geik_452",Pe="_genreRow_1geik_459",Oe="_genreInfo_1geik_465",Ae="_genreName_1geik_472",Fe="_genreCount_1geik_479",qe="_genreBarBg_1geik_486",Ve="_genreBar_1geik_486",Ye="_warningSection_1geik_499",He="_warningHeader_1geik_510",Ee="_droppedGrid_1geik_526",Ue="_droppedCard_1geik_532",ze="_droppedName_1geik_549",Ke="_droppedDate_1geik_556",Qe="_genreGrid_1geik_597",je="_genreCard_1geik_609",Je="_rankBadge_1geik_618",Xe="_rankNumber_1geik_631",Ze="_genreTitle_1geik_637",ea="_genreStats_1geik_645",aa="_posterRow_1geik_653",ta="_miniPoster_1geik_660",sa="_genreCardSkeleton_1geik_674",na="_pulse_1geik_1",ra="_skeletonRank_1geik_682",ia="_skeletonTitle_1geik_696",la="_skeletonStats_1geik_709",oa="_skeletonPosters_1geik_721",ca="_recSection_1geik_752",da="_recSubtext_1geik_763",ha="_recGrid_1geik_769",ma="_recCard_1geik_775",_a="_recCover_1geik_790",ga="_recInfo_1geik_798",pa="_recTitle_1geik_805",ua="_recMatch_1geik_816",ka="_recMeta_1geik_822",Na="_recWhy_1geik_827",va="_recNote_1geik_832",ya="_recAddBtn_1geik_838",ba="_loading_1geik_860",fa="_error_1geik_866",a={header:H,fadeIn:E,personaBadge:U,personaInfo:z,personaLabel:K,personaValue:Q,statsGrid:j,slideUpIn:J,statCard:X,statIcon:Z,statInfo:ee,statValue:ae,statLabel:te,wideSection:se,sectionHeader:ne,yearSelect:re,heatmapLayout:ie,dayLabels:le,heatmapWrapper:oe,heatmapMonthLabels:ce,heatmapGrid:de,heatBox:he,hiddenBox:me,level0:_e,level1:ge,level2:pe,level3:ue,level4:ke,heatmapFooter:Ne,heatLegend:ve,chartsContainer:ye,chartWrapper:be,hourlyChart:fe,hourlyBarContainer:Ce,hourlyBar:Se,hourlyLabel:Le,chartSubtext:Be,popScale:we,popTrack:Ie,popThumb:De,popLabels:xe,popDescription:Te,seasonalChart:$e,seasonalBarContainer:Me,seasonalBar:Re,seasonalLabel:Ge,genreList:We,genreRow:Pe,genreInfo:Oe,genreName:Ae,genreCount:Fe,genreBarBg:qe,genreBar:Ve,warningSection:Ye,warningHeader:He,droppedGrid:Ee,droppedCard:Ue,droppedName:ze,droppedDate:Ke,genreGrid:Qe,genreCard:je,rankBadge:Je,rankNumber:Xe,genreTitle:Ze,genreStats:ea,posterRow:aa,miniPoster:ta,genreCardSkeleton:sa,pulse:na,skeletonRank:ra,skeletonTitle:ia,skeletonStats:la,skeletonPosters:oa,recSection:ca,recSubtext:da,recGrid:ha,recCard:ma,recCover:_a,recInfo:ga,recTitle:pa,recMatch:ua,recMeta:ka,recWhy:Na,recNote:va,recAddBtn:ya,loading:ba,error:fa},wa=()=>{P(()=>{document.title="Insights - dango"},[]);const{data:n,isLoading:w,isError:I}=S({queryKey:[_.insights],queryFn:async()=>await g.insights.summary.query()}),{data:D,isLoading:p}=V(),{titlePreference:x}=Y(),u=F(),{data:k}=S({queryKey:[_.insightsRecommendations],queryFn:async()=>await g.insights.recommendations.query(),staleTime:300*1e3,retry:1}),N=q({mutationFn:async t=>{await g.watchlist.add.mutate({id:String(t.id),name:t.title,thumbnail:t.cover||"",status:"Plan to Watch",type:t.format})},onSuccess:()=>{u.invalidateQueries({queryKey:[_.watchlist]}),u.invalidateQueries({queryKey:[_.insightsRecommendations]}),L.success("Added to Plan to Watch")},onError:()=>L.error("Could not add to watchlist")}),v=c(()=>[...k?.candidates||[]].sort((t,s)=>s.matchPct-t.matchPct).slice(0,6),[k]),y=t=>{const s=t.name||t.englishName||t.nativeName||"";switch(x){case"nativeName":return t.nativeName||s;case"englishName":return t.englishName||s;default:return s}},[d,T]=O(new Date().getFullYear()),$=c(()=>{if(!n?.activityGrid)return[new Date().getFullYear()];const t=new Set(n.activityGrid.map(s=>parseInt(s.day.split("-")[0])));return t.add(new Date().getFullYear()),Array.from(t).sort((s,r)=>r-s)},[n]),b=c(()=>{if(!n?.activityGrid)return[];const t=new Map(n.activityGrid.map(m=>[m.day,m.count])),s=[],r=new Date(d,0,1),o=new Date(d,11,31),h=r.getDay(),i=new Date(r);for(i.setDate(i.getDate()-h);(i<=o||i.getDay()!==0)&&!(i>o&&i.getDay()===0);){const m=i.getFullYear(),G=String(i.getMonth()+1).padStart(2,"0"),W=String(i.getDate()).padStart(2,"0"),f=`${m}-${G}-${W}`,C=i<r||i>o;s.push({date:f,count:C?0:t.get(f)||0,month:i.getMonth(),isOutOfRange:C}),i.setDate(i.getDate()+1)}return s},[n,d]),M=c(()=>n?.seasonality?.length?Math.max(...n.seasonality.map(t=>t.seconds),1):0,[n]),R=c(()=>n?.hourlyDist?.length?Math.max(...n.hourlyDist.map(t=>t.count),1):0,[n]);return w||p?e("div",{className:a.loading,children:"Analyzing your anime lifestyle..."}):I?e("div",{className:a.error,children:"Could not load insights. Data might be syncing."}):n?e("div",{className:"page-container",children:[e("div",{className:a.header,children:[e("h2",{className:"section-title",children:"Watch Insights"}),e("div",{className:a.personaBadge,children:[e(l,{name:"user-astronaut"}),e("div",{className:a.personaInfo,children:[e("span",{className:a.personaLabel,children:"Your Persona"}),e("span",{className:a.personaValue,children:n.persona})]})]})]}),e("div",{className:a.statsGrid,children:[e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(138, 79, 255, 0.2)",color:"var(--accent)"},children:e(l,{name:"clock"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:[n.totalHours,"h"]}),e("span",{className:a.statLabel,children:"Watch Time"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(167, 139, 250, 0.2)",color:"#a78bfa"},children:e(l,{name:"bookmark"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:n.totalAnime}),e("span",{className:a.statLabel,children:"Total Anime"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(34, 197, 94, 0.2)",color:"#22c55e"},children:e(l,{name:"check-circle"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:n.totalEpisodes}),e("span",{className:a.statLabel,children:"Episodes Watched"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(34, 197, 94, 0.2)",color:"#22c55e"},children:e(l,{name:"check-circle"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:[n.completionRate,"%"]}),e("span",{className:a.statLabel,children:"Completion Rate"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(45, 212, 191, 0.2)",color:"#2dd4bf"},children:e(l,{name:"tv"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:n.completedAnime}),e("span",{className:a.statLabel,children:"Completed Shows"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(239, 68, 68, 0.2)",color:"#ef4444"},children:e(l,{name:"fire"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:n.bingeFactor}),e("span",{className:a.statLabel,children:"Max Daily Binge"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(59, 130, 246, 0.2)",color:"#3b82f6"},children:e(l,{name:"history"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:[n.avgSessionMinutes,"m"]}),e("span",{className:a.statLabel,children:"Avg. Session"})]})]}),e("div",{className:a.statCard,children:[e("div",{className:a.statIcon,style:{background:"rgba(251, 191, 36, 0.2)",color:"#fbbf24"},children:e(l,{name:"layer-group"})}),e("div",{className:a.statInfo,children:[e("span",{className:a.statValue,children:[n.avgCompletionDays,"d"]}),e("span",{className:a.statLabel,children:"Avg. Speed"})]})]})]}),e("div",{className:a.wideSection,children:[e("div",{className:a.sectionHeader,children:[e("h3",{children:"Activity"}),e("select",{className:a.yearSelect,value:d,onChange:t=>T(Number(t.currentTarget.value)),children:$.map(t=>e("option",{value:t,children:t},t))})]}),e("div",{className:a.heatmapLayout,children:[e("div",{className:a.dayLabels,children:[e("span",{style:{gridRow:2},children:"Mon"}),e("span",{style:{gridRow:4},children:"Wed"}),e("span",{style:{gridRow:6},children:"Fri"})]}),e("div",{className:a.heatmapWrapper,children:[e("div",{className:a.heatmapMonthLabels,children:(()=>{const t=[];let s=-1;return b.forEach((r,o)=>{if(r.month!==s&&!r.isOutOfRange){const h=Math.floor(o/7)+1;h>(t.length>0?t[t.length-1].props.style?.gridColumn+2:-1)&&(t.push(e("span",{style:{gridColumn:h,whiteSpace:"nowrap"},children:new Date(0,r.month).toLocaleString("default",{month:"short"})},o)),s=r.month)}}),t})()}),e("div",{className:a.heatmapGrid,children:b.map((t,s)=>{let r=0;return t.count>0&&!t.isOutOfRange&&(r=1),t.count>2&&!t.isOutOfRange&&(r=2),t.count>5&&!t.isOutOfRange&&(r=3),t.count>10&&!t.isOutOfRange&&(r=4),e("div",{className:`${a.heatBox} ${a[`level${r}`]} ${t.isOutOfRange?a.hiddenBox:""}`,title:t.isOutOfRange?"":`${t.count} episodes on ${t.date}`},s)})}),e("div",{className:a.heatmapFooter,children:e("div",{className:a.heatLegend,children:[e("span",{children:"Less"}),e("div",{className:`${a.heatBox} ${a.level0}`}),e("div",{className:`${a.heatBox} ${a.level1}`}),e("div",{className:`${a.heatBox} ${a.level2}`}),e("div",{className:`${a.heatBox} ${a.level3}`}),e("div",{className:`${a.heatBox} ${a.level4}`}),e("span",{children:"More"})]})})]})]})]}),e("div",{className:a.chartsContainer,children:[e("div",{className:a.chartWrapper,children:[e("h3",{children:"Time Distribution (24h)"}),e("div",{className:a.hourlyChart,children:n.hourlyDist?.map((t,s)=>e("div",{className:a.hourlyBarContainer,children:[e("div",{className:a.hourlyBar,style:{height:`${t.count/R*100||2}%`,width:"100%",maxWidth:"12px"},title:`${t.count} watches at ${t.hour}:00`}),e("span",{className:a.hourlyLabel,style:{visibility:s%4===0?"visible":"hidden"},children:t.hour})]},s))}),e("div",{className:a.chartSubtext,children:(()=>{if(!n.hourlyDist?.length)return"Watch more to see your peak hours!";const t=parseInt([...n.hourlyDist].sort((s,r)=>r.count-s.count)[0].hour);return t>=6&&t<19?"You prefer daytime watching ☀️":"You're a confirmed Night Owl 🦉"})()})]}),e("div",{className:a.chartWrapper,children:[e("h3",{children:"Popularity Bias"}),e("div",{className:a.popScale,children:[e("div",{className:a.popTrack,children:e("div",{className:a.popThumb,style:{left:`${Math.max(0,Math.min(100,100-n.popularityScore*10))}%`}})}),e("div",{className:a.popLabels,children:[e("span",{children:"Mainstream"}),e("span",{children:"Underground"})]})]}),e("p",{className:a.popDescription,children:["Your taste score is ",e("strong",{children:[n.popularityScore,"/10"]}),".",n.popularityScore>=5?" You follow the big hits!":" You're a connoisseur of the obscure!"]})]}),e("div",{className:a.chartWrapper,children:[e("h3",{children:"Monthly Activity"}),e("div",{className:a.seasonalChart,children:n.seasonality?.map((t,s)=>e("div",{className:a.seasonalBarContainer,children:[e("div",{className:a.seasonalBar,style:{height:`${t.seconds/M*100||5}%`,width:"100%",maxWidth:"24px"},title:`${Math.round(t.seconds/3600)}h in ${new Date(0,s).toLocaleString("default",{month:"long"})}`}),e("span",{className:a.seasonalLabel,children:new Date(0,s).toLocaleString("default",{month:"short"})})]},s))})]})]}),e("div",{className:a.genreGrid,children:p?Array.from({length:4}).map((t,s)=>e("div",{className:a.genreCardSkeleton,children:[e("div",{className:a.skeletonRank}),e("div",{className:a.skeletonTitle}),e("div",{className:a.skeletonStats}),e("div",{className:a.skeletonPosters})]},s)):D?.map(t=>e("div",{className:a.genreCard,children:[e("div",{className:a.rankBadge,children:e("span",{className:a.rankNumber,children:t.rank})}),e("h3",{className:a.genreTitle,children:t.name}),e("div",{className:a.genreStats,children:[e("span",{children:[t.count," episodes"]}),e("span",{children:t.meanScore>0?`${t.meanScore.toFixed(1)} avg score`:"-"}),e("span",{children:t.timeWatched})]}),e("div",{className:a.posterRow,children:t.topShows.map(s=>e("img",{src:B(s.thumbnail),alt:y(s),className:a.miniPoster,title:y(s),loading:"lazy",decoding:"async"},s.id))})]},t.name))}),v.length>0&&e("div",{className:a.recSection,children:[e("h3",{children:"Recommended For You"}),e("p",{className:a.recSubtext,children:"From your library taste - updates automatically as you watch"}),e("div",{className:a.recGrid,children:v.map(t=>e("div",{className:a.recCard,children:[t.cover&&e("img",{src:B(t.cover),alt:t.title,className:a.recCover,loading:"lazy",decoding:"async"}),e("div",{className:a.recInfo,children:[e(A,{to:`/anime/${t.id}`,className:a.recTitle,children:t.title}),e("span",{className:a.recMatch,children:[t.matchPct,"% match"]}),e("span",{className:a.recMeta,children:[t.year,t.format,t.episodes?`${t.episodes}ep`:null].filter(Boolean).join(" · ")}),e("span",{className:a.recWhy,children:["Shares ",t.sharedGenres.join(", "),t.exemplars.length>0&&` - like ${t.exemplars.join(", ")}`]}),t.kind==="continue"&&e("span",{className:a.recNote,children:"Continue - you watched the earlier part."}),t.kind==="sequel"&&t.prequelTitle&&e("span",{className:a.recNote,children:['Sequel - start with "',t.prequelTitle,'" first.']}),e("button",{className:a.recAddBtn,onClick:()=>N.mutate(t),disabled:N.isPending,children:"+ Plan to Watch"})]})]},t.id))})]}),n.droppedShows?.length>0&&e("div",{className:a.warningSection,children:[e("div",{className:a.warningHeader,children:[e(l,{name:"exclamation-triangle"}),e("h3",{children:"Dusty Watchlist (Inactive 90+ days)"})]}),e("div",{className:a.droppedGrid,children:n.droppedShows.map(t=>e("div",{className:a.droppedCard,children:[e("span",{className:a.droppedName,children:t.name}),e("span",{className:a.droppedDate,children:["Last watched: ",new Date(t.lastActivity).toLocaleDateString()]})]},t.id))})]})]}):null};export{wa as default};
@@ -0,0 +1 @@
1
+ import{a as ie,d as N,h as re,u as e}from"./vendor-core-DfaOB3Rn.js";import{I as h}from"./vendor-icons-DrybRNxP.js";import{P as E}from"./MediaCard-C1jNesfK.js";import{S as de}from"./SkeletonGrid-CYJeh04P.js";import{E as oe}from"./ErrorMessage-DAxegITP.js";import{C as me,D as he,M as k,B as q}from"./index-BLh_CXtu.js";import{s as l}from"./LibraryListPage.module-r6k9nyT9.js";function be({headerTitle:H,headerSubtitle:O,filters:U,filterBy:r,filterBasePath:V,continueFilter:W,statusOptions:$,entries:d,total:o,isLoading:f,error:A,page:M,pageSize:u,onPageChange:I,emptyTitle:Y,emptyFilteredText:j,emptyAllText:F,browseLabel:J,browseTarget:Q,removeListLabel:w,listNoun:S,skipConfirmKey:x,onBulkStatus:X,onBulkRemove:B,onStatusChange:Z,onRemoveItem:R,renderCard:_,modals:K}){const z=ie(),[g,T]=N(!1),[t,i]=N(new Set),[n,p]=N(null),[P,b]=N(!1),{data:y}=me(x),L=he();re(()=>{i(new Set),T(!1)},[r]);const m=r===W,D=String(y)==="true"||String(y)==="1",ee=()=>{T(a=>(a&&i(new Set),!a))},ae=a=>{i(s=>{const c=new Set(s);return c.has(a)?c.delete(a):c.add(a),c})},v=d.map(a=>a.libId),C=v.length>0&&v.every(a=>t.has(a)),le=()=>{i(a=>{const s=new Set(a);if(C)for(const c of v)s.delete(c);else for(const c of v)s.add(c);return s})},te=a=>{t.size!==0&&(X([...t],a),i(new Set))},se=()=>{t.size!==0&&(m||D?(B([...t]),i(new Set)):p({ids:[...t]}))},ne=a=>{m||D?R(a.libId):p({ids:[a.libId],title:a.title})},ce=()=>{n&&(P&&L.mutate({key:x,value:!0}),n.ids.length===1?R(n.ids[0]):B(n.ids),i(new Set),p(null),b(!1))},G=()=>{p(null),b(!1)};return e("div",{className:"page-container",children:[e("header",{className:l.header,children:[e("h2",{className:l.title,children:H}),e("p",{className:l.subtitle,children:O})]}),e("div",{className:l.controls,children:e("div",{className:l.filters,children:U.map(a=>e("button",{className:`${l.filterBtn} ${r===a?l.active:""}`,onClick:()=>z(`${V}/${a==="All"?"":a}`),children:a},a))})}),e("div",{className:l.resultsHeader,children:[e("h3",{className:l.resultsTitle,children:[r,e("span",{className:l.itemCount,children:["(",o," items)"]})]}),e("div",{className:l.headerActions,children:[e("button",{className:`${l.manageBtn} ${g?l.active:""}`,onClick:ee,children:[e(h,{name:"pencil-alt",size:13}),e("span",{children:"Bulk Manage"})]}),o>0&&e(E,{page:M,totalPages:Math.max(1,Math.ceil(o/u)),canGoNext:d.length>=u,onChange:I,isLoading:f})]})]}),g&&e("div",{className:l.manageBar,children:[e("button",{className:l.selectAllBtn,onClick:le,children:[e("span",{className:`${l.selectAllBox} ${C?l.selectAllBoxChecked:""}`,"aria-hidden":"true"}),e("span",{children:C?"Clear Page":"Select All"})]}),e("span",{className:l.manageCount,children:[t.size," selected"]}),e("div",{className:l.manageSpacer}),!m&&e("select",{className:l.manageStatusSelect,value:"",onChange:a=>{a.currentTarget.value&&te(a.currentTarget.value)},disabled:t.size===0,title:"Set status for selected items",children:[e("option",{value:"",children:"Set status…"}),$.map(a=>e("option",{value:a,children:a},a))]}),e("button",{className:l.manageRemoveBtn,onClick:se,disabled:t.size===0,children:[e(h,{name:"trash",size:13}),e("span",{children:m?"Reset Selected":"Remove Selected"})]})]}),f?e(de,{}):A?e(oe,{message:A.message}):d.length===0?e("div",{className:l.emptyState,children:[e("h3",{className:l.emptyTitle,children:Y}),e("p",{className:l.emptyText,children:r!=="All"?j:F}),e("button",{className:l.emptyBtn,onClick:()=>z(Q),children:[e(h,{name:"search",size:14}),e("span",{children:J})]})]}):e("div",{className:l.grid,children:d.map(a=>e("div",{className:`${l.itemWrapper} ${t.has(a.libId)?l.selected:""}`,children:[g&&e("div",{className:l.selectOverlay,onClick:()=>ae(a.libId),title:t.has(a.libId)?"Deselect":"Select",children:e("span",{className:l.selectBadge,children:t.has(a.libId)?e(h,{name:"check",size:12}):null})}),_(a),!m&&!g&&e("div",{className:l.cardActions,children:[e("select",{className:l.statusSelect,value:a.status,onChange:s=>Z(a.libId,s.currentTarget.value),children:$.map(s=>e("option",{value:s,children:s},s))}),e("button",{className:l.removeBtn,onClick:()=>ne(a),title:w,"aria-label":w,children:e(h,{name:"trash",size:12})})]})]},a.key))}),o>0&&e("div",{className:l.bottomPagination,children:e(E,{page:M,totalPages:Math.max(1,Math.ceil(o/u)),canGoNext:d.length>=u,onChange:I,isLoading:f,variant:"labeled"})}),K,e(k,{isOpen:!!n,onClose:G,title:`Remove from ${S}`,children:[e(k.Body,{children:[e("p",{children:n&&n.ids.length===1?`Are you sure you want to remove "${n.title}" from your ${S}?`:`Are you sure you want to remove ${n?.ids.length??0} selected items from your ${S}?`}),e("label",{children:[e("input",{type:"checkbox",checked:P,onChange:a=>b(a.currentTarget.checked)}),"Don't ask again"]})]}),e(k.Actions,{children:[e(q,{variant:"secondary",onClick:G,children:"No"}),e(q,{variant:"danger",onClick:ce,children:"Yes"})]})]})]})}export{be as L};
@@ -0,0 +1 @@
1
+ ._header_efyey_1{margin-bottom:var(--space-8);animation:_fadeIn_efyey_1 .8s var(--ease-smooth)}._title_efyey_6{font-size:var(--font-size-xl);font-weight:800;color:var(--text-primary);margin:0 0 var(--space-2);letter-spacing:-.02em}._subtitle_efyey_14{color:var(--text-tertiary);font-size:var(--font-size-sm);margin:0;font-weight:500}._controls_efyey_21{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:var(--space-10);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:var(--space-4) var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);animation:_slideUpIn_efyey_1 .8s var(--ease-smooth);width:100%;box-sizing:border-box}._filters_efyey_40{display:flex;flex-wrap:wrap;gap:var(--space-2)}._filterBtn_efyey_46{background:#ffffff0d;color:var(--text-secondary);border:1px solid var(--border-primary);padding:.6rem 1.2rem;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;transition:all var(--transition-base);cursor:pointer}._filterBtn_efyey_46:hover{background:#ffffff1a;color:var(--text-primary);border-color:var(--text-tertiary)}._filterBtn_efyey_46._active_efyey_64{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 15px var(--accent-glow)}._grid_efyey_71{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-6);animation:_fadeIn_efyey_1 .5s var(--ease-smooth);width:100%}@media(max-width:1400px){._grid_efyey_71{grid-template-columns:repeat(6,1fr)}}@media(max-width:1200px){._grid_efyey_71{grid-template-columns:repeat(5,1fr)}}@media(max-width:1024px){._grid_efyey_71{grid-template-columns:repeat(4,1fr)}}@media(max-width:768px){._grid_efyey_71{grid-template-columns:repeat(3,1fr);gap:var(--space-2);min-width:0;width:100%;align-items:start}._filters_efyey_40{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding-bottom:var(--space-2)}._filters_efyey_40::-webkit-scrollbar{display:none}._filterBtn_efyey_46{flex-shrink:0;scroll-snap-align:start}}@media(max-width:600px){._grid_efyey_71{grid-template-columns:repeat(2,1fr)!important;gap:12px!important;min-width:0;width:100%;overflow:hidden;justify-items:center}._itemWrapper_efyey_135{width:100%;max-width:160px;min-width:0;overflow:hidden;height:auto}._cardActions_efyey_143{gap:8px;margin-top:8px;width:100%}._statusSelect_efyey_149{height:36px;font-size:11px;padding:0 8px;background-position:right .6rem center;flex-grow:1}._removeBtn_efyey_157{width:36px;height:36px;flex-shrink:0}}._resultsHeader_efyey_164{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);gap:var(--space-4);flex-wrap:wrap;width:100%}._resultsTitle_efyey_174{font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--space-2)}._itemCount_efyey_184{font-size:var(--font-size-sm);color:var(--text-tertiary);font-weight:500}._bottomPagination_efyey_190{display:flex;justify-content:center;margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--border-primary);width:100%}._itemWrapper_efyey_135{display:flex;flex-direction:column;height:100%;transition:transform var(--transition-base)}._itemWrapper_efyey_135:hover{transform:translateY(-4px)}._cardActions_efyey_143{margin-top:.5rem;display:flex;align-items:center;gap:.5rem;background:var(--bg-surface, #181820);padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-primary)}._statusSelect_efyey_149{flex-grow:1;height:36px;padding:0 .75rem;background-color:#ffffff0a!important;border:1px solid var(--border-primary)!important;border-radius:var(--radius-sm)!important;color:var(--text-primary);font-size:.8rem;font-weight:600;cursor:pointer}._statusSelect_efyey_149:hover{border-color:var(--border-accent)!important;background-color:#ffffff14!important}._removeBtn_efyey_157{background:color-mix(in srgb,var(--color-danger) 10%,transparent);color:var(--color-danger);border:1px solid color-mix(in srgb,var(--color-danger) 20%,transparent);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s ease;cursor:pointer;flex-shrink:0}._removeBtn_efyey_157:hover{background:var(--color-danger);color:var(--color-danger-text);border-color:var(--color-danger);transform:scale(1.05)}._emptyState_efyey_261{text-align:center;padding:var(--space-16) var(--space-4);color:var(--text-tertiary);background:var(--glass-bg);background-image:radial-gradient(circle,color-mix(in srgb,var(--accent) 8%,transparent) 0%,transparent 70%);border:1px dashed var(--border-primary);border-radius:var(--radius-xl);font-size:var(--font-size-base);font-weight:500;animation:_fadeIn_efyey_1 .5s var(--ease-smooth);width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}._emptyTitle_efyey_283{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}._emptyText_efyey_290{color:var(--text-secondary);margin:0;max-width:420px;line-height:1.6}._emptyBtn_efyey_297{display:inline-flex;align-items:center;gap:.5rem;margin-top:var(--space-2);padding:.7rem 1.6rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);color:var(--accent-text);font-size:var(--font-size-sm);font-weight:700;border:none;border-radius:var(--radius-full);cursor:pointer;box-shadow:0 4px 16px var(--accent-glow);transition:all var(--transition-base)}._emptyBtn_efyey_297:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--accent-glow)}._headerActions_efyey_319{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}._manageBtn_efyey_326{display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);background:#ffffff0d;border:1px solid var(--border-secondary);border-radius:var(--radius-lg);color:var(--text-primary);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}._manageBtn_efyey_326:hover{background:#ffffff1a;border-color:var(--text-secondary)}._manageBtn_efyey_326._active_efyey_64{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 15px var(--accent-glow)}._manageBar_efyey_354{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);width:100%;box-sizing:border-box;animation:_fadeIn_efyey_1 .3s ease-out}._selectAllBtn_efyey_372{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--text-secondary);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast)}._selectAllBtn_efyey_372:hover{color:var(--text-primary);background:#ffffff0f}._selectAllBox_efyey_392{width:16px;height:16px;border-radius:50%;border:2px solid var(--accent);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box}._selectAllBoxChecked_efyey_404{background:var(--accent)}._selectAllBoxChecked_efyey_404:after{content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}._manageCount_efyey_417{font-size:var(--font-size-sm);font-weight:700;color:var(--accent-light);white-space:nowrap}._manageSpacer_efyey_424{flex:1}._manageStatusSelect_efyey_428{height:38px;padding:0 .75rem;background-color:#ffffff0a!important;border:1px solid var(--border-primary)!important;border-radius:var(--radius-sm)!important;color:var(--text-primary);font-size:.8rem;font-weight:600;cursor:pointer}._manageStatusSelect_efyey_428:disabled{opacity:.45;cursor:default}._manageRemoveBtn_efyey_445{display:flex;align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-4);background:color-mix(in srgb,var(--color-danger) 12%,transparent);color:var(--color-danger);border:1px solid color-mix(in srgb,var(--color-danger) 30%,transparent);border-radius:var(--radius-sm);font-weight:600;font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}._manageRemoveBtn_efyey_445:hover:not(:disabled){background:color-mix(in srgb,var(--color-danger) 25%,transparent);border-color:var(--color-danger)}._manageRemoveBtn_efyey_445:disabled{opacity:.45;cursor:default}._itemWrapper_efyey_135{position:relative}._selectOverlay_efyey_475{position:absolute;inset:0;z-index:6;cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}._selectOverlay_efyey_475:hover{background:#6c9fff1f}._itemWrapper_efyey_135._selected_efyey_488 ._selectOverlay_efyey_475{background:#6c9fff26;border:2px solid var(--accent);border-radius:var(--radius-md);box-shadow:0 8px 24px var(--accent-glow)}._selectBadge_efyey_495{position:absolute;top:8px;left:8px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:#00000073;color:#fff;transition:all var(--transition-fast)}._itemWrapper_efyey_135._selected_efyey_488 ._selectBadge_efyey_495{background:var(--accent);border-color:var(--accent)}._applyBtn_efyey_516{align-self:flex-start}._lowEnd_efyey_520{grid-template-columns:repeat(4,1fr);gap:var(--space-4)}@media(max-width:768px){._lowEnd_efyey_520{grid-template-columns:repeat(3,1fr)}}
@@ -0,0 +1 @@
1
+ const e="_header_efyey_1",t="_title_efyey_6",_="_subtitle_efyey_14",n="_controls_efyey_21",s="_filters_efyey_40",y="_filterBtn_efyey_46",a="_active_efyey_64",c="_grid_efyey_71",o="_itemWrapper_efyey_135",l="_cardActions_efyey_143",r="_statusSelect_efyey_149",m="_removeBtn_efyey_157",i="_resultsHeader_efyey_164",f="_resultsTitle_efyey_174",B="_itemCount_efyey_184",d="_bottomPagination_efyey_190",g="_emptyState_efyey_261",p="_emptyTitle_efyey_283",u="_emptyText_efyey_290",A="_emptyBtn_efyey_297",S="_headerActions_efyey_319",v="_manageBtn_efyey_326",x="_manageBar_efyey_354",h="_selectAllBtn_efyey_372",C="_selectAllBox_efyey_392",T="_selectAllBoxChecked_efyey_404",b="_manageCount_efyey_417",k="_manageSpacer_efyey_424",w="_manageStatusSelect_efyey_428",E="_manageRemoveBtn_efyey_445",H="_selectOverlay_efyey_475",O="_selected_efyey_488",P="_selectBadge_efyey_495",R="_lowEnd_efyey_520",W={header:e,title:t,subtitle:_,controls:n,filters:s,filterBtn:y,active:a,grid:c,itemWrapper:o,cardActions:l,statusSelect:r,removeBtn:m,resultsHeader:i,resultsTitle:f,itemCount:B,bottomPagination:d,emptyState:g,emptyTitle:p,emptyText:u,emptyBtn:A,headerActions:S,manageBtn:v,manageBar:x,selectAllBtn:h,selectAllBox:C,selectAllBoxChecked:T,manageCount:b,manageSpacer:k,manageStatusSelect:w,manageRemoveBtn:E,selectOverlay:H,selected:O,selectBadge:P,lowEnd:R};export{W as s};
@@ -0,0 +1 @@
1
+ import{o as U,d as k,h as L,T as E,u,S as y}from"./vendor-core-DfaOB3Rn.js";import{M as F}from"./MediaCard-C1jNesfK.js";import{L as N}from"./LibraryListPage-CRqv737t.js";import{u as _,A as q}from"./useAsmrPopup-N2vUf3Pw.js";import{A as z}from"./AsmrResetProgressModal-Mj1PYE2c.js";import{g as h}from"./index-BLh_CXtu.js";import{m as O,u as Q,n as Y,o as D,e as G,p as H,q as K,r as Z,A as T,k as J}from"./useAsmr-2dFEmQD_.js";import"./vendor-icons-DrybRNxP.js";import"./vendor-ui-3qrARCPr.js";import"./useIsMobile-Dvx1uJ82.js";import"./MatureConsentModal-BsdpNeXA.js";import"./SkeletonGrid-CYJeh04P.js";import"./ErrorMessage-DAxegITP.js";import"./LibraryListPage.module-r6k9nyT9.js";import"./usePopup-DS9jMzp6.js";import"./ResetProgressModal-BYNYqwwl.js";import"./vendor-query-BBT5_sHx.js";import"./libraryInvalidation-AzFLnbjH.js";const V=["All","Continue Listening",...T],A=24;function W(a){const d=a.currentTime??0,i=a.duration??0,r=(a.trackIndex??0)+1;return i>0?`Track ${r} · ${h(d)} / ${h(i)}`:`Track ${r}`}function Lt(){const{filter:a="All"}=U(),[d,i]=k(1),[r,m]=k(null);L(()=>{document.title="Listening List - dango"},[]),L(()=>{i(1)},[a]);const o=a==="Continue Listening",n=O(o?"All":a,d,A),l=Q(100),f=Y(),C=D(),{toggle:v,bookmarkedIds:R}=G(),{popup:s,openPopup:I,scheduleClose:c,cancelClose:p,closePopup:B}=_(),P=H(),S=K(),j=Z(),M=E(()=>o?(l.data?.data??[]).map(t=>{const e=t.currentTime??0,g=t.duration??0,b=t.rjCode||t.id;return{key:t.id,libId:t.id,rjCode:b,title:t.title||"",thumbnail:t.thumbnail||"",status:t.watchlistStatus??"",isAdult:!!t.isAdult,trackLabel:`Track ${(t.trackIndex??0)+1}`,progressPercent:g>0?Math.min(100,e/g*100):0,progressLabel:W(t),detailTarget:`/asmr/${encodeURIComponent(b)}`}}):(n.data?.data??[]).map(t=>{const e=t.rjCode||t.id;return{key:t.id,libId:t.id,rjCode:e,title:t.title,thumbnail:t.thumbnail||"",status:t.status,isAdult:!!t.isAdult,trackLabel:t.lastTrackIndex!==null&&t.lastTrackIndex!==void 0?`Track ${t.lastTrackIndex+1}`:void 0,progressPercent:void 0,progressLabel:void 0,detailTarget:`/asmr/${encodeURIComponent(e)}`}}),[o,l.data,n.data]),w=o?l.data?.total??0:n.data?.total??0,x=o?l.isLoading:n.isLoading,$=o?l.error:n.error;return u(N,{headerTitle:"My Listening List",headerSubtitle:"Track and manage your ASMR collection",filters:V,filterBy:a,filterBasePath:"/listening-list",continueFilter:"Continue Listening",statusOptions:[...T],entries:M,total:w,isLoading:x,error:$,page:d,pageSize:A,onPageChange:i,emptyTitle:"Your listening list is looking a bit lonely",emptyFilteredText:"No works match this filter.",emptyAllText:"Let's find something to listen to!",browseLabel:"Browse ASMR",browseTarget:"/asmr",removeListLabel:"Remove from Listening List",listNoun:"listening list",skipConfirmKey:"asmrSkipRemoveConfirmation",onBulkStatus:(t,e)=>P.mutate({ids:t,status:e}),onBulkRemove:t=>{o?j.mutate({ids:t}):S.mutate({ids:t})},onStatusChange:(t,e)=>C.mutate({id:t,status:e}),onRemoveItem:t=>f.mutate({id:t}),renderCard:t=>u(F,{item:{id:t.libId,title:t.title,thumbnail:t.thumbnail,typeBadge:t.rjCode||void 0,chapterBadge:t.trackLabel??null,isAdult:t.isAdult},linkTo:t.detailTarget,hoverIcon:"info",layout:"horizontal",showInfoButton:!o,progress:t.progressPercent!==void 0&&t.progressLabel?{percent:t.progressPercent,label:t.progressLabel}:void 0,showProgress:o,display:{elements:{poster:{typeBadge:!0,chapterBadge:!0,adultBadge:!0},info:{title:!0,mobileBadges:!0,progress:!0,meta:!1}}},onRemove:o?()=>m(t):void 0,onOpenDetails:o?void 0:e=>I(e,{rjCode:t.rjCode,title:t.title,thumbnail:t.thumbnail,isAdult:t.isAdult,listenTarget:t.detailTarget,progressLabel:t.progressLabel}),onPopupHoverIntent:e=>e?p():c(),rawThumbnail:!0}),modals:u(y,{children:[u(z,{workId:r?r.libId:null,title:r?.title,onClose:()=>m(null)}),s&&u(q,{data:s.data,anchorRect:s.rect,bookmarked:R.has(J(s.data.rjCode)),onToggleBookmark:()=>v({rjCode:s.data.rjCode,title:s.data.title,thumbnail:s.data.thumbnail||"",isAdult:s.data.isAdult}),onMouseEnter:p,onMouseLeave:c,onRequestClose:B})]})})}export{Lt as default};
@@ -0,0 +1 @@
1
+ import{p as le,d as E,T as re,h as O,u as a,m as ne,S as q}from"./vendor-core-DfaOB3Rn.js";import{I as M}from"./vendor-icons-DrybRNxP.js";import{T as se}from"./ToggleSwitch-CN_ppEc9.js";import{M as oe}from"./MatureConsentModal-BsdpNeXA.js";import{E as ie}from"./ErrorMessage-DAxegITP.js";import{M as ce,P as de}from"./MediaCard-C1jNesfK.js";import{u as ue,M as ge}from"./useMangaPopup-h8NHEPUk.js";import{e as pe,U as he}from"./index-BLh_CXtu.js";import{f as me,u as ve,m as D,i as be,b as fe,c as Se}from"./useMangaLibrary-B3Ni34a7.js";import{u as Te}from"./useProviders-z8L8GKy0.js";import{s as l}from"./Manga.module-depGEacJ.js";import{p as c}from"./page.module-C1MlZzf3.js";import"./vendor-ui-3qrARCPr.js";import"./useIsMobile-Dvx1uJ82.js";import"./usePopup-DS9jMzp6.js";import"./vendor-query-BBT5_sHx.js";import"./libraryInvalidation-AzFLnbjH.js";const ye=[{value:"popular",label:"Popular"},{value:"latest",label:"Latest"},{value:"rating",label:"Top Rated"},{value:"followed",label:"Most Followed"}],Me=[{value:"",label:"Any Status"},{value:"ongoing",label:"Ongoing"},{value:"completed",label:"Completed"},{value:"hiatus",label:"Hiatus"},{value:"cancelled",label:"Cancelled"}],Ne=[{value:"",label:"Any Status"},{value:"publishing",label:"Publishing"},{value:"finished",label:"Finished"},{value:"on hiatus",label:"On Hiatus"},{value:"discontinued",label:"Discontinued"}],Ce=[{value:"",label:"All Types"},{value:"manga",label:"Manga"},{value:"novel",label:"Novel"},{value:"one-shot",label:"One-Shot"},{value:"doujinshi",label:"Doujinshi"}],Pe=[{value:"safe",label:"Safe"}],Ie=[{value:"safe",label:"Safe"},{value:"suggestive",label:"Suggestive"},{value:"erotica",label:"Erotica"},{value:"pornographic",label:"Pornographic"}];function He(){const[n,N]=le(),{hasConsent:v,grant:_}=pe(),[j,b]=E(!1),[C,P]=E(n.get("q")||""),{options:I,isLoading:R,refetch:G}=Te(),d=re(()=>I.filter(e=>e.kind==="manga").map(e=>({value:e.id,label:e.label})),[I]),f=n.get("provider")||"",S=f&&d.some(e=>e.value===f)?f:"",T=n.get("q")||"",L=parseInt(n.get("page")||"1"),$=n.get("sort")||"popular",k=n.get("status")||"",w=n.get("type")||"",u=n.get("rating")||"safe",A=n.get("id")||"";O(()=>{document.title="Manga - dango"},[]);const o=v,y=o?u:"safe",H=o?Ie:Pe,i=(e,t=!1)=>{const r=new URLSearchParams(n);for(const[m,U]of Object.entries(e))U?r.set(m,U):r.delete(m);t&&r.delete("page"),N(r)},g=me({provider:S,query:T,page:L,sort:$,status:k,type:w,rating:y,mature:o}),h=g.data?.items??[],z=g.data?.hasNext??!1,p=S||h[0]?.provider||"",{toggle:V,bookmarkedIds:X}=ve(),{popup:s,openPopup:K,scheduleClose:x,cancelClose:B,closePopup:Q}=ue();if(O(()=>{P(T)},[T]),A){const e=new URLSearchParams;o&&u!=="safe"&&e.set("rating",u);const t=n.get("chapter")||"";t&&e.set("chapter",t);const r=e.toString()?`?${e.toString()}`:"",m=`/manga/${p||"mangadex"}/${encodeURIComponent(A)}${t?`/read${r}`:r}`;return a(ne,{to:m,replace:!0})}const W=e=>{e.preventDefault(),he(),i({q:C},!0)},Y=e=>{e.currentTarget.checked&&!v&&b(!0)},J=()=>{_(),b(!1),i({},!0)},Z=()=>{b(!1)},F=e=>{const t=new URLSearchParams;o&&u!=="safe"&&t.set("rating",u);const r=t.toString()?`?${t.toString()}`:"";return`/manga/${e.provider}/${encodeURIComponent(e.id)}${r}`},ee=p==="mangapill"?Ne:Me,ae=p==="mangapill",te=p==="mangadex";return a("div",{className:c.page,children:[a("div",{className:c.header,children:[a("h1",{className:c.pageTitle,children:[a(M,{name:"book"})," Manga"]}),a("form",{className:c.searchForm,onSubmit:W,children:[a("input",{className:c.searchInput,value:C,onChange:e=>P(e.currentTarget.value),placeholder:"Search manga titles...","aria-label":"Search manga"}),a("button",{className:c.searchBtn,type:"submit","aria-label":"Search",children:a(M,{name:"search",size:14})})]}),a("select",{className:l.select,value:S,disabled:d.length===0,onChange:e=>{const t=new URLSearchParams(n);t.set("provider",e.currentTarget.value),t.delete("page"),t.delete("id"),t.delete("chapter"),t.delete("status"),t.delete("type"),N(t)},"aria-label":"Manga provider",children:d.length===0?a("option",{value:"",children:R?"Loading providers…":"No providers available"}):a(q,{children:[a("option",{value:"",children:"Auto"}),d.map(e=>a("option",{value:e.value,children:e.label},e.value))]})}),d.length===0&&!R&&a("button",{className:c.searchBtn,type:"button",onClick:()=>G(),"aria-label":"Retry loading providers",children:a(M,{name:"redo",size:14})})]}),a("div",{className:l.filterRow,children:[p==="mangadex"&&a("select",{className:l.select,value:$,onChange:e=>i({sort:e.currentTarget.value},!0),"aria-label":"Sort manga",children:ye.map(e=>a("option",{value:e.value,children:e.label},e.value))}),a("select",{className:l.select,value:k,onChange:e=>i({status:e.currentTarget.value},!0),"aria-label":"Filter by status",children:ee.map(e=>a("option",{value:e.value,children:e.label},e.label))}),ae&&a("select",{className:l.select,value:w,onChange:e=>i({type:e.currentTarget.value},!0),"aria-label":"Filter by type",children:Ce.filter(e=>e.value!=="doujinshi"||o).map(e=>a("option",{value:e.value,children:e.label},e.value))}),te&&a("select",{className:l.select,value:y,onChange:e=>i({rating:e.currentTarget.value},!0),"aria-label":"Content rating",children:H.map(e=>a("option",{value:e.value,children:e.label},e.value))}),!v&&a("div",{className:l.matureToggleWrap,children:[a("label",{className:l.matureLabel,htmlFor:"manga-mature-toggle",children:"Mature"}),a(se,{id:"manga-mature-toggle",isChecked:!1,onChange:Y})]})]}),g.isError?a(ie,{message:"Failed to load manga. Please try again."}):g.isLoading&&h.length===0?a("div",{className:l.grid,"aria-hidden":!0,children:Array.from({length:12}).map((e,t)=>a("div",{className:l.skeletonCard,children:[a("div",{className:`${l.skeletonThumb} ${l.shimmer}`}),a("div",{className:`${l.skeletonLine} ${l.shimmer}`,style:{width:"88%"}}),a("div",{className:`${l.skeletonLine} ${l.shimmer}`,style:{width:"55%"}})]},t))}):h.length===0?a("p",{className:l.statusMsg,children:"No titles found. Try another search or provider."}):a(q,{children:[a("div",{className:`${l.grid} ${g.isFetching?l.fetching:""}`,children:h.map(e=>{const t=D(e.provider,e.id);return a(ce,{item:{id:t,title:e.title,...Se(e),thumbnail:fe(e.provider,e.cover),typeBadge:e.type||void 0,chapterBadge:e.latestChapter?`Ch. ${e.latestChapter}`:null,isAdult:be(e)},linkTo:F(e),hoverIcon:"info",display:{elements:{poster:{typeBadge:!0,chapterBadge:!0,adultBadge:!0},info:{title:!0,mobileBadges:!0,progress:!1,meta:!1}}},onOpenDetails:r=>K(r,{provider:e.provider,mangaId:e.id,title:e.title,altTitle:e.altTitle,cover:e.cover,contentRating:e.contentRating,readTarget:F(e),rating:y,mature:o}),onPopupHoverIntent:r=>r?B():x(),rawThumbnail:!0},`${e.provider}-${e.id}`)})}),a(de,{page:L,canGoNext:z,onChange:e=>i({page:String(e)}),variant:"labeled"})]}),s&&a(ge,{data:s.data,anchorRect:s.rect,bookmarked:X.has(D(s.data.provider,s.data.mangaId)),onToggleBookmark:()=>V({id:s.data.mangaId,provider:s.data.provider,title:s.data.title,cover:s.data.cover,altTitle:s.data.altTitle??void 0,contentRating:s.data.contentRating}),onMouseEnter:B,onMouseLeave:x,onRequestClose:Q}),j&&a(oe,{isOpen:!0,scope:"section",showResetHint:!0,onClose:Z,onGrant:J})]})}export{He as default};
@@ -0,0 +1 @@
1
+ import{u as e,a as Q,d as z,S as E,o as O,p as G,T as $,h as Y}from"./vendor-core-DfaOB3Rn.js";import{I as x}from"./vendor-icons-DrybRNxP.js";import{B as M,e as H,d as J}from"./index-BLh_CXtu.js";import{E as K}from"./ErrorMessage-DAxegITP.js";import{b as D,g as V,f as U,h as j,j as X,m as A,k as Z,l as ee,n as te,r as ae,o as re,p as ne,q as se,s as ie,M as oe}from"./useMangaLibrary-B3Ni34a7.js";import{s as r}from"./Manga.module-depGEacJ.js";import{p as le}from"./page.module-C1MlZzf3.js";import"./vendor-query-BBT5_sHx.js";import"./libraryInvalidation-AzFLnbjH.js";const ce=({detail:a,altTitle:c,onBack:b,onOpenChapter:v,bookmarkButton:n,statusSelect:g,primaryAction:k,progressByChapter:d})=>{const h=[a.type,a.status,a.year?String(a.year):"",a.author?`by ${a.author}`:""].filter(Boolean);return e("div",{children:[e("button",{className:r.backBtn,onClick:b,children:[e(x,{name:"chevron-left",size:12})," Back to browse"]}),e("div",{className:r.detail,children:[a.cover&&e("img",{className:r.detailCover,src:D(a.provider,a.cover),alt:a.title,decoding:"async",draggable:!1}),e("div",{className:r.detailInfo,children:[e("h2",{className:r.detailTitle,children:a.title}),c&&e("p",{className:r.detailAltTitle,children:["Also known as: ",c]}),h.length>0&&e("div",{className:r.detailMeta,children:h.map(t=>e("span",{className:r.badge,children:t},t))}),a.genres&&a.genres.length>0&&e("div",{className:r.detailMeta,children:a.genres.map(t=>e("span",{className:r.badge,children:t},t))}),a.description&&e("p",{className:r.detailDesc,children:a.description}),(n||g||k)&&e("div",{className:r.detailActions,children:[k,n,g]})]})]}),e("h3",{className:r.detailTitle,style:{fontSize:"1rem"},children:["Chapters (",a.chapters.length,")"]}),a.chapters.length===0?e("p",{className:r.statusMsg,children:"No chapters found for this title on this provider."}):e("div",{className:r.chapterList,children:a.chapters.map(t=>{const o=d?.get(t.id),p=!!o&&o.pageCount>0&&o.page>=o.pageCount;return e("button",{className:`${r.chapterRow} ${p?r.chapterDone:""}`,onClick:()=>v(t),title:t.externalUrl?"External only - opens on source site":void 0,children:[e("span",{children:["Ch. ",t.number,t.title?` - ${t.title}`:""]}),e("span",{className:r.chapterMeta,children:[o&&o.pageCount>0?p?"read":`p. ${o.page}/${o.pageCount}`:"",t.group,t.externalUrl?"external":""].filter(Boolean).join(" · ")})]},t.id)})})]})},de=({libId:a,anilistId:c})=>{const b=Q(),v=V(a),n=v.data?.item,[g,k]=z(null),[d,h]=z(null),t=g??n?.title??"",o=U({provider:"mangadex",query:t,page:1,sort:"",status:"",type:"",rating:"safe",mature:!1},!!t),p=U({provider:"mangapill",query:t,page:1,sort:"",status:"",type:"",rating:"safe",mature:!1},!!t),S=j(),y=X(),T=async s=>{const u=A(s.provider,s.id);h(u);try{await S.mutateAsync({provider:s.provider,mangaId:s.id,title:s.title,cover:s.cover,altTitle:s.altTitle,contentRating:s.contentRating,silent:!0}),await y.mutateAsync({id:u,anilistId:c}),b(`/manga/${s.provider}/${encodeURIComponent(s.id)}`)}catch{return}finally{h(null)}},C=(s,u,B)=>e("div",{style:{marginTop:"12px"},children:[e("div",{style:{fontWeight:600,textTransform:"capitalize",marginBottom:"6px"},children:s}),B?e("div",{style:{color:"var(--text-tertiary)",fontSize:"0.85rem"},children:"Searching…"}):!u||u.length===0?e("div",{style:{color:"var(--text-tertiary)",fontSize:"0.85rem"},children:"No matches."}):u.slice(0,6).map(l=>{const I=A(l.provider,l.id),N=d===I;return e("div",{style:{display:"flex",alignItems:"center",gap:"10px",padding:"6px 0",borderTop:"1px solid var(--border, #223)"},children:[l.cover&&e("img",{src:D(l.provider,l.cover),alt:"",loading:"lazy",style:{width:"34px",height:"48px",objectFit:"cover",borderRadius:"4px"}}),e("div",{style:{flex:1,minWidth:0},children:[e("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:l.title}),l.latestChapter&&e("div",{style:{color:"var(--text-tertiary)",fontSize:"0.75rem"},children:l.latestChapter})]}),e(M,{onClick:()=>T(l),disabled:N,children:[e(x,{name:"external-link-alt",size:12})," ",N?"Linking…":"Link"]})]},I)})]});return e("div",{children:[e("button",{onClick:()=>b("/manga"),style:{background:"none",border:"none",color:"var(--accent)",cursor:"pointer",marginBottom:"12px"},children:[e(x,{name:"chevron-left",size:12})," Back to browse"]}),v.isLoading?e("div",{style:{color:"var(--text-tertiary)"},children:"Loading library entry…"}):n?e(E,{children:[e("div",{style:{display:"flex",gap:"12px",alignItems:"center"},children:[n.cover&&e("img",{src:n.cover,alt:"",style:{width:"64px",height:"90px",objectFit:"cover",borderRadius:"6px"}}),e("div",{children:[e("h2",{style:{margin:"0 0 4px"},children:n.title}),e("div",{style:{color:"var(--text-tertiary)",fontSize:"0.85rem"},children:["Tracked on AniList",n.lastChapterNumber?` · Ch. ${n.lastChapterNumber}`:"",n.status?` · ${n.status}`:""]})]})]}),e("p",{style:{color:"var(--text-tertiary)",fontSize:"0.85rem",marginTop:"12px"},children:"AniList doesn't host chapters. Search your providers below and link the matching manga - your AniList status and chapter progress will sync to it from now on."}),e("div",{style:{display:"flex",gap:"8px",marginTop:"8px"},children:e("input",{type:"text",value:g??n.title,onChange:s=>k(s.currentTarget.value),placeholder:"Search providers…",style:{flex:1,padding:"8px 10px",borderRadius:"6px",border:"1px solid var(--border, #223)",background:"var(--bg-secondary, transparent)",color:"inherit"}})}),C("mangadex",o.data?.items,o.isLoading),C("mangapill",p.data?.items,p.isLoading)]}):e("div",{style:{color:"var(--text-tertiary)"},children:"This AniList entry is no longer in your library."})]})};function ke(){const{provider:a="",id:c=""}=O(),[b]=G(),v=Q(),{hasConsent:n}=H(),g=b.get("rating")||"safe",k=n?g:"safe",d=a&&c?A(a,c):void 0,h=Z(a||null,c||null,k,n),t=h.data,o=ee(d),p=te(d),{titlePreference:S}=J(),y=$(()=>t&&{...t,title:ae(t,S)},[t,S]),T=j(),C=re(),s=ne();Y(()=>{y&&(document.title=`${y.title} - dango`)},[y]);const u=$(()=>{const i=new Map;for(const m of p.data?.progress??[])i.set(m.chapterId,m);return i},[p.data]),B=a.toLowerCase()==="anilist"&&/^\d+$/.test(c)?parseInt(c,10):null,l=o.data?.inLibrary??!1,I=o.data?.status??"Reading",N=$(()=>(t?.chapters??[]).filter(i=>!i.externalUrl),[t]),f=$(()=>{if(!t)return null;const i=[...p.data?.progress??[]].sort((m,L)=>L.updatedAt-m.updatedAt);for(const m of i){const L=t.chapters.find(w=>w.id===m.chapterId);if(L&&!L.externalUrl)return L;const P=se(m.chapterId);if(P!=null){const w=ie(t.chapters,P);if(w&&!w.externalUrl)return w}}return N[0]??null},[t,p.data,N]),q=f?u.get(f.id):void 0,F=(p.data?.progress?.length??0)>0,W=f&&(q||F)?`Continue Ch. ${f?.number}`:"Start Reading",R=i=>{if(i.externalUrl){window.open(i.externalUrl,"_blank","noopener,noreferrer");return}const m=new URLSearchParams;m.set("chapter",i.id),n&&g!=="safe"&&m.set("rating",g),v(`/manga/${a}/${encodeURIComponent(c)}/read?${m.toString()}`)},_=()=>{!t||!d||(l?C.mutate(d):T.mutate({provider:a,mangaId:c,title:t.title,cover:t.cover,author:t.author,altTitle:t.altTitle,contentRating:t.contentRating}))};return e("div",{className:le.page,children:h.isLoading?e("div",{"aria-hidden":!0,children:[e("div",{className:`${r.skeletonThumb} ${r.shimmer}`,style:{maxWidth:"12rem"}}),e("div",{className:`${r.skeletonLine} ${r.shimmer}`,style:{width:"40%"}}),e("div",{className:`${r.skeletonLine} ${r.shimmer}`,style:{width:"70%"}})]}):h.isError||!t||!y?B!=null&&d?e(de,{libId:d,anilistId:B}):e(E,{children:[e("button",{className:r.backBtn,onClick:()=>v("/manga"),children:[e(x,{name:"chevron-left",size:12})," Back to browse"]}),e(K,{message:"Failed to load this title. Please try again."})]}):e(ce,{detail:y,altTitle:t.altTitle!==y.title?t.altTitle:void 0,onBack:()=>v("/manga"),onOpenChapter:R,progressByChapter:u,primaryAction:f?e(M,{onClick:()=>f&&R(f),children:[e(x,{name:"book",size:13})," ",W]}):void 0,bookmarkButton:e(M,{variant:l?"secondary":"primary",onClick:_,disabled:T.isPending||C.isPending,children:[e(x,{name:"bookmark",size:13})," ",l?"Bookmarked":"Bookmark"]}),statusSelect:l?e("select",{className:r.detailSelect,value:I,onChange:i=>d&&s.mutate({id:d,status:i.currentTarget.value}),"aria-label":"Reading status",children:oe.map(i=>e("option",{value:i,children:i},i))}):void 0})})}export{ke as default};
@@ -0,0 +1 @@
1
+ import{d as D,A as w,q as Z,h as g,u as e,S as ce,o as ve,p as be,a as we,T as Ne}from"./vendor-core-DfaOB3Rn.js";import{E as ye}from"./ErrorMessage-DAxegITP.js";import{I as $}from"./vendor-icons-DrybRNxP.js";import{u as Ce}from"./vendor-query-BBT5_sHx.js";import{t as ke,v as Se,m as Ie,k as $e,r as Pe,n as Re,w as Me,q as xe,s as Ee}from"./useMangaLibrary-B3Ni34a7.js";import{s as t}from"./Manga.module-depGEacJ.js";import{q as Te,e as Le,d as Be,t as oe}from"./index-BLh_CXtu.js";import{p as ze}from"./page.module-C1MlZzf3.js";import"./libraryInvalidation-AzFLnbjH.js";const le="mangaReadMode",de="mangaFitMode";function Ae(){try{return localStorage.getItem(le)==="page"?"page":"strip"}catch{return"strip"}}function Fe(){try{return localStorage.getItem(de)==="height"?"height":"width"}catch{return"width"}}const Ue=({provider:h,mangaTitle:p,chapter:f,chapters:y,onBack:C,onOpenChapter:v,initialPage:u=0,onProgress:V})=>{const[c,P]=D(Ae),[B,i]=D(Fe),[d,z]=D(0),[A,M]=D(new Set),[b,k]=D(0),N=w(null),x=w([]),X=Ce(),{data:_,isLoading:Y,isError:R}=ke(h,f.id),s=_?.pages??[],m=s.map(n=>Se(h,n)),I=w(0),F=w(0),E=w(!1);F.current=s.length;const T=y.findIndex(n=>n.id===f.id),a=T>0?[...y.slice(0,T)].reverse().find(n=>!n.externalUrl)??null:null,o=T>=0?y.slice(T+1).find(n=>!n.externalUrl)??null:null,S=Z(n=>{E.current=!0,z(r=>{const l=r+n;return l<0?(a&&v(a),0):l>=s.length?(o&&v(o),r):l})},[s.length,a,o,v]);g(()=>{E.current=!1,I.current=Math.max(0,u),z(Math.max(0,u)),M(new Set),x.current=[],u<=0&&window.scrollTo(0,0)},[f.id,u]);const G=w(V);G.current=V;const J=w(""),j=w(null),ee=w(null),[W,ue]=D(0),L=Z(()=>{const n=c==="strip"?x.current[I.current]:ee.current,r=n?.querySelector("img");if(!n||!r)return;const l=Math.max(0,(n.clientWidth-r.clientWidth)/2)+8;ue(H=>Math.abs(H-l)<1?H:l)},[c]);g(()=>{I.current=d,s.length!==0&&G.current?.(Math.min(d+1,s.length),s.length)},[d,s.length]),g(()=>{u<=0||E.current||I.current===0&&(E.current=!1,I.current=u,z(u))},[u]),g(()=>{if(c!=="strip"||s.length===0||u<=0)return;const n=`${f.id}:${u}`;if(J.current===n)return;J.current=n;const r=window.setTimeout(()=>{x.current[Math.min(u,s.length-1)]?.scrollIntoView({block:"start"})},150);return()=>window.clearTimeout(r)},[c,s.length,u,f.id]),g(()=>{document.title=`${p} Ch. ${f.number} - dango`},[p,f.number]),g(()=>{try{localStorage.setItem(le,c)}catch{}},[c]),g(()=>{try{localStorage.setItem(de,B)}catch{}},[B]),g(()=>{c==="page"&&window.scrollTo(0,0)},[c]),g(()=>{if(c!=="page"||s.length===0)return;const n=r=>{r.key==="ArrowRight"||r.key===" "?(r.preventDefault(),S(1)):r.key==="ArrowLeft"&&(r.preventDefault(),S(-1))};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[c,s.length,S]),g(()=>{if(c!=="strip"||s.length===0)return;let n=0;const r=()=>{n=0;const H=window.innerHeight*.3,O=x.current;let q=-1,re=0;for(let Q=0;Q<O.length;Q++){const se=O[Q];if(!se)continue;const ie=se.getBoundingClientRect();if(ie.height>4&&re++,ie.top<=H)q=Q;else break}q<0||re<Math.min(3,O.length)||(q!==I.current&&(E.current=!0,I.current=q,z(q)),L())},l=()=>{n||(n=requestAnimationFrame(r))};return j.current=l,l(),window.addEventListener("scroll",l,{passive:!0}),window.addEventListener("resize",l),()=>{window.removeEventListener("scroll",l),window.removeEventListener("resize",l),n&&cancelAnimationFrame(n),j.current=null}},[c,s.length,_,L]),g(()=>{if(!(c!=="page"||s.length===0))return L(),window.addEventListener("resize",L),()=>window.removeEventListener("resize",L)},[c,d,s.length,L]);const ge=n=>{N.current=n.touches[0].clientX},he=n=>{if(N.current===null)return;const r=n.changedTouches[0].clientX-N.current;N.current=null,!(Math.abs(r)<50)&&S(r<0?1:-1)},K=n=>{n&&v(n)},te=n=>M(r=>{if(r.has(n))return r;const l=new Set(r);return l.add(n),l}),me=n=>{M(r=>{const l=new Set(r);return l.delete(n),l}),k(r=>r+1)},pe=()=>{M(new Set),k(n=>n+1),X.invalidateQueries({queryKey:[Te.mangaPages,h,f.id]})},fe=s.length>0&&A.size>=s.length,ne=n=>b>0?`${n}&n=${b}`:n,ae=n=>e("div",{className:t.deadPage,role:"alert",children:[e("span",{children:["Page ",n+1," failed to load"]}),e("button",{className:t.pageBtn,onClick:()=>me(n),children:[e($,{name:"sync-alt",size:12})," Retry"]})]}),U=B==="height";return e("div",{className:t.readerShell,children:[e("div",{className:t.readerBar,children:[e("button",{className:t.readerIconBtn,onClick:C,"aria-label":"Back to chapters",children:e($,{name:"chevron-left",size:14})}),e("span",{className:t.readerTitle,children:[p," - Ch. ",f.number,f.title?` ${f.title}`:""]}),s.length>0&&e("span",{className:t.readerCounter,children:[Math.min(d+1,s.length)," / ",s.length]}),e("div",{className:t.readerSegment,role:"group","aria-label":"Reading mode",children:[e("button",{type:"button","aria-pressed":c==="strip",className:c==="strip"?t.readerSegmentActive:"",onClick:()=>P("strip"),children:"Strip"}),e("button",{type:"button","aria-pressed":c==="page",className:c==="page"?t.readerSegmentActive:"",onClick:()=>P("page"),children:"Page"})]}),e("div",{className:t.readerSegment,role:"group","aria-label":"Fit mode",children:[e("button",{type:"button","aria-pressed":!U,className:U?"":t.readerSegmentActive,onClick:()=>i("width"),title:"Fit width - best for portrait / phones",children:"Wide"}),e("button",{type:"button","aria-pressed":U,className:U?t.readerSegmentActive:"",onClick:()=>i("height"),title:"Fit height - best for landscape / desktop",children:"Tall"})]}),e("button",{className:t.readerIconBtn,disabled:!a,onClick:()=>K(a),"aria-label":"Previous chapter",children:e($,{name:"chevron-left",size:14})}),e("button",{className:t.readerIconBtn,disabled:!o,onClick:()=>K(o),"aria-label":"Next chapter",children:e($,{name:"chevron-right",size:14})})]}),R?e("p",{className:t.statusMsg,children:"Failed to load pages. Please try again."}):Y?e("div",{className:t.readerPages,"aria-hidden":!0,children:Array.from({length:3}).map((n,r)=>e("div",{className:`${t.skeletonThumb} ${t.shimmer}`,style:{width:"100%",maxWidth:"56rem",aspectRatio:"3 / 4"}},r))}):s.length===0?e("p",{className:t.statusMsg,children:"No pages found for this chapter."}):fe?e("div",{className:t.failedBox,children:[e("p",{className:t.statusMsg,children:"Page images failed to load (expired or blocked links)."}),e("button",{className:t.pageBtn,onClick:pe,children:[e($,{name:"sync-alt",size:12})," Reload pages"]})]}):c==="strip"?e("div",{className:`${t.readerPages} ${U?t.readerPagesTall:""}`,children:m.map((n,r)=>e("div",{ref:l=>{x.current[r]=l},className:t.readerPageWrap,children:[r===d&&e("div",{className:t.ribbon,style:W>0?{right:W}:void 0,"aria-hidden":"true",children:e($,{name:"bookmark",size:12})},d),A.has(r)?ae(r):e("img",{className:t.readerPage,src:ne(n),alt:`Page ${r+1}`,loading:r<3?"eager":"lazy",decoding:"async",draggable:!1,onLoad:()=>j.current?.(),onError:()=>te(r)})]},`${r}-${s[r].slice(-32)}`))}):e(ce,{children:[e("div",{ref:ee,className:`${t.pageView} ${U?t.pageViewTall:""}`,onTouchStart:ge,onTouchEnd:he,children:[e("div",{className:t.ribbon,style:W>0?{right:W}:void 0,"aria-hidden":"true",children:e($,{name:"bookmark",size:12})},d),e("button",{className:`${t.tapZone} ${t.tapZoneLeft}`,onClick:()=>S(-1),"aria-label":"Previous page",children:e("span",{className:t.tapChevron,children:e($,{name:"chevron-left",size:16})})}),A.has(d)?ae(d):e("img",{className:t.pageImage,src:ne(m[d]),alt:`Page ${d+1} of ${s.length}`,decoding:"async",draggable:!1,onLoad:()=>L(),onError:()=>te(d)},`${d}-${s[d].slice(-32)}`),e("button",{className:`${t.tapZone} ${t.tapZoneRight}`,onClick:()=>S(1),"aria-label":"Next page",children:e("span",{className:t.tapChevron,children:e($,{name:"chevron-right",size:16})})})]}),e("nav",{className:t.pagination,"aria-label":"Page navigation",children:[e("button",{className:t.pageBtn,disabled:d<=0,onClick:()=>S(-1),children:"Previous page"}),e("span",{className:t.pageIndicator,children:[d+1," / ",s.length]}),e("button",{className:t.pageBtn,disabled:d>=s.length-1,onClick:()=>S(1),children:"Next page"})]})]}),(a||o)&&e("nav",{className:t.pagination,children:[e("button",{className:t.pageBtn,disabled:!a,onClick:()=>K(a),children:"Previous chapter"}),e("button",{className:t.pageBtn,disabled:!o,onClick:()=>K(o),children:"Next chapter"})]})]})},De=800,_e=5e3;function je(){const{provider:h="",id:p=""}=ve(),[f]=be(),y=we(),C=f.get("chapter")||"",v=f.get("rating")||"safe",{hasConsent:u}=Le(),V=u?v:"safe",c=h&&p?Ie(h,p):"",P=h.toLowerCase()==="anilist";g(()=>{P&&p&&y(`/manga/anilist/${encodeURIComponent(p)}`,{replace:!0})},[P,p,y]);const B=$e(!P&&h?h:null,!P&&p?p:null,V,u),i=B.data,{titlePreference:d}=Be(),z=i?Pe(i,d):"Manga",A=Re(c||void 0),M=Me(),b=i&&C?i.chapters.find(a=>a.id===C)??null:null,k=xe(C),N=k!=null&&i?Ee(i.chapters,k):null;g(()=>{if(k!=null&&N&&N.id!==C){const a=new URLSearchParams;a.set("chapter",N.id),u&&v!=="safe"&&a.set("rating",v),y(`/manga/${h}/${encodeURIComponent(p)}/read?${a.toString()}`,{replace:!0})}},[k,N,C,u,v,h,p,y]);const x=k!=null&&!!i&&!!N,X=k!=null&&!!i&&!N,_=Ne(()=>{const a=(A.data?.progress??[]).find(o=>o.chapterId===C);return a&&a.page>0?a.page:0},[A.data,C]),Y=_>1?_-1:0,R=w(null),s=w(null),m=Z(()=>{R.current&&(clearTimeout(R.current),R.current=null);const a=s.current;s.current=null,a&&c&&M.mutate({mangaId:c,chapterId:a.chapterId,chapterNumber:a.chapterNumber,page:a.page,pageCount:a.pageCount,title:i?.title??null,cover:i?.cover??null,provider:h||null,altTitle:i?.altTitle??null,contentRating:i?.contentRating??null})},[c,M,i?.title,i?.cover,i?.altTitle,i?.contentRating,h]),I=Z((a,o)=>{b&&(s.current={chapterId:b.id,chapterNumber:b.number,page:a,pageCount:o},R.current&&clearTimeout(R.current),R.current=setTimeout(m,De))},[b,m]);g(()=>{m()},[C,m]),g(()=>()=>m(),[m]),g(()=>{const a=window.setInterval(()=>{s.current&&m()},_e);return()=>window.clearInterval(a)},[m]),g(()=>{const a=()=>{document.visibilityState==="hidden"&&m()},o=()=>m();return document.addEventListener("visibilitychange",a),window.addEventListener("pagehide",o),()=>{document.removeEventListener("visibilitychange",a),window.removeEventListener("pagehide",o)}},[m]);const F=w("");F.current||(F.current=`manga-${Date.now()}-${Math.random().toString(36).slice(2)}`),g(()=>{if(!i||!b)return;const a=i.contentRating==="erotica"||i.contentRating==="pornographic"||i.type==="doujinshi",o=()=>{oe.discord.mangaPresence.mutate({title:i.title,chapterLabel:`Chapter ${b.number}`,isPlaying:!0,thumbnail:i.cover||"",thumbnails:[i.cover].filter(Boolean),isAdult:a,sessionId:F.current}).catch(()=>{}),oe.discord.heartbeat.mutate({sessionId:F.current}).catch(()=>{})};o();const S=window.setInterval(o,6e4);return()=>window.clearInterval(S)},[i,b]);const E=a=>{if(m(),a.externalUrl){window.open(a.externalUrl,"_blank","noopener,noreferrer");return}const o=new URLSearchParams;o.set("chapter",a.id),u&&v!=="safe"&&o.set("rating",v),y(`/manga/${h}/${encodeURIComponent(p)}/read?${o.toString()}`)},T=()=>{m();const a=new URLSearchParams;u&&v!=="safe"&&a.set("rating",v);const o=a.toString()?`?${a.toString()}`:"";y(`/manga/${h}/${encodeURIComponent(p)}${o}`)};return P?null:e("div",{className:ze.page,children:B.isLoading||x?e("div",{className:t.readerPages,"aria-hidden":!0,children:Array.from({length:3}).map((a,o)=>e("div",{className:`${t.skeletonThumb} ${t.shimmer}`,style:{width:"100%",maxWidth:"56rem",aspectRatio:"3 / 4"}},o))}):!i||!b?e(ce,{children:[e("button",{className:t.backBtn,onClick:T,children:"Back to title"}),e(ye,{message:X?`Chapter ${k} isn't available from ${h} for this title.`:"Failed to load this chapter. Please try again."})]}):e(Ue,{provider:h,mangaTitle:z,chapter:b,chapters:i.chapters,onBack:T,onOpenChapter:E,initialPage:Y,onProgress:I},b.id)})}export{je as default};
@@ -0,0 +1 @@
1
+ import{u as a}from"./vendor-core-DfaOB3Rn.js";import{R as i}from"./ResetProgressModal-BYNYqwwl.js";import{B as n,o as g}from"./useMangaLibrary-B3Ni34a7.js";const M=({mangaId:e,title:o,onClose:r})=>{const s=n(),t=g();return a(i,{isOpen:!!e,itemName:o,progressKind:"reading",listLabel:"my reading list",onClose:r,onConfirm:m=>{e&&(s.mutate({mangaId:e}),m&&t.mutate(e))}})};export{M};
@@ -0,0 +1 @@
1
+ import{a as $e,p as ke,h as ue,d as i,T as me,u as t,S as he}from"./vendor-core-DfaOB3Rn.js";import{b as ge}from"./vendor-query-BBT5_sHx.js";import{i as qe,e as Fe,B as W,U as Ue,t as q,A as Ye}from"./index-BLh_CXtu.js";import{I as pe}from"./vendor-icons-DrybRNxP.js";import{P as ve}from"./MediaCard-C1jNesfK.js";import{A as xe}from"./AnimeCard-CoPx634q.js";import{S as Ve}from"./SkeletonGrid-CYJeh04P.js";import{M as He}from"./MatureConsentModal-BsdpNeXA.js";import{E as Ke}from"./ErrorMessage-DAxegITP.js";import{u as Qe}from"./useProviders-z8L8GKy0.js";import{s as a}from"./Search.module-C_qwCdHS.js";import"./vendor-ui-3qrARCPr.js";import"./useIsMobile-Dvx1uJ82.js";import"./useAnimeInfoData-MPNJXLaM.js";import"./QueueOptionsButton-DNzKPzPw.js";import"./playbackCompletion-DuUs8u-8.js";const We="_shrinkSelect_130sm_1",ze="_tightGrid_130sm_7",z={shrinkSelect:We,tightGrid:ze},je=[{value:"anilist",label:"AniList"},{value:"mal",label:"MAL"}],Ze=[{value:"POPULARITY_DESC",label:"Popularity"},{value:"TRENDING_DESC",label:"Trending"},{value:"SCORE_DESC",label:"Score"},{value:"START_DATE_DESC",label:"Newest"},{value:"FAVOURITES_DESC",label:"Favourites"}],Je=[{value:"",label:"All Status"},{value:"RELEASING",label:"Currently Airing"},{value:"FINISHED",label:"Finished"},{value:"NOT_YET_RELEASED",label:"Not Yet Released"}],Xe=[{value:"",label:"Relevance"},{value:"visits:desc",label:"Most Visited"},{value:"title:asc",label:"Title A-Z"}],et={recent:"Latest",popular:"Popular",views:"Most Viewed",rating:"Top Rated",random:"Random"},tt=[{value:"ALL",label:"All Seasons"},{value:"Winter",label:"Winter"},{value:"Spring",label:"Spring"},{value:"Summer",label:"Summer"},{value:"Fall",label:"Fall"}],fe=m=>m.split("-").map(u=>u&&u[0].toUpperCase()+u.slice(1)).join(" "),at=new Set(["page","limit","year","minScore","minEpisodes"]),rt=new Set(["provider","query","page","limit","type","status","season","year","country","genres","genre","excludeGenres","sortBy","order","studio","blacklist","minScore","minEpisodes"]);function st(m){const u=new URLSearchParams(m),s={};for(const[b,y]of u.entries())rt.has(b)&&(at.has(b)?s[b]=Number(y)||0:s[b]=y);return s}function Ct(){const m=$e(),u=qe(),[s,b]=ke(),{hasConsent:y,grant:Se}=Fe();ue(()=>{document.title="Mature - dango"},[]);const[l,be]=i(s.get("provider")||"anilist"),[N,j]=i(s.get("query")||""),[L,F]=i(s.get("query")||""),[O,g]=i(parseInt(s.get("page")||"1",10)||1),[I,U]=i(()=>{const e=s.get("sortBy");return e||(l==="mal"?"SCORE_DESC":"POPULARITY_DESC")}),[_,Z]=i(s.get("sortBy")||""),[C,ye]=i(s.get("status")||""),[D,Ne]=i(s.get("season")||"ALL"),[G,Ce]=i(s.get("year")||"ALL"),[p,M]=i(s.get("genre")||s.get("genres")||""),[Y,Ae]=i(s.get("order")||"recent"),[x,Ee]=i(s.get("studio")||""),[B,Te]=i(s.get("studio")||""),[J,X]=i([]),[V,Pe]=i(!1),[Re,ee]=i(null),{options:te}=Qe(),ae=me(()=>te.filter(e=>e.mature&&(e.kind??"anime")==="anime"),[te]),re=me(()=>[...je,...ae.map(e=>({value:e.id,label:e.label}))],[ae]),{data:w}=ge({...u.data.matureFilters.queryOptions(),enabled:y,staleTime:1/0}),c=l==="anilist"||l==="mal",H=c?void 0:w?.providers?.[l],T=H?.browse,P=H?.genres??[],A=H?.orders??[],se=A.length>0&&!A.includes(Y)?A[0]:Y,$=!c&&(T?.genre===!0||P.length>0||J.length>0),v=!c&&(T?.order===!0||A.length>0),E=!c&&T?.studio===!0,le=!c&&T?.sort===!0,K=c?14:T?.pageSize??14,f=e=>{const r=new URLSearchParams;if(e.provider!=="anilist"&&r.set("provider",e.provider),e.query.trim()&&r.set("query",e.query.trim()),e.page>1&&r.set("page",String(e.page)),e.provider==="anilist")e.sort!=="POPULARITY_DESC"&&r.set("sortBy",e.sort),e.status&&r.set("status",e.status),e.season!=="ALL"&&r.set("season",e.season),e.year!=="ALL"&&r.set("year",e.year);else if(e.provider==="mal")e.sort!=="SCORE_DESC"&&r.set("sortBy",e.sort),e.status&&r.set("status",e.status);else{const n=w?.providers?.[e.provider]?.browse,d=w?.providers?.[e.provider]?.orders??[],o=d.length>0&&!d.includes(e.remoteOrder)?d[0]:e.remoteOrder;(!n||n.sort)&&e.remoteSort&&r.set("sortBy",e.remoteSort),(!n||n.genre)&&e.genre&&r.set("genre",e.genre),(!n||n.order)&&o!==(d[0]??"recent")&&r.set("order",o),(!n||n.studio)&&e.studio.trim()&&r.set("studio",e.studio.trim())}b(r,{replace:!0})},S=(e={})=>({provider:l,query:L,page:O,sort:I,remoteSort:_,status:C,season:D,year:G,genre:p,remoteOrder:Y,studio:B,...e}),Le=(()=>{const e=new URLSearchParams;return e.set("provider",l),L.trim()&&e.set("query",L.trim()),e.set("page",String(O)),e.set("limit",String(K)),l==="anilist"&&(e.set("sortBy",I),C&&e.set("status",C),D!=="ALL"&&e.set("season",D),G!=="ALL"&&e.set("year",G)),l==="mal"?(e.set("sortBy",I),C&&e.set("status",C)):c||($&&p&&e.set("genre",p),v&&e.set("order",se),le&&_&&e.set("sortBy",_),E&&B.trim()&&e.set("studio",B.trim())),e.toString()})(),{data:h,isLoading:Oe,isError:Ie,error:_e}=ge({...u.data.matureSearch.queryOptions(st(Le)),enabled:y});ue(()=>{const e=h?.genres;!c&&P.length===0&&e&&e.length>0&&X(r=>{const n=new Set(r.map(o=>o.slug)),d=[...r];for(const o of e)o.slug&&!n.has(o.slug)&&(n.add(o.slug),d.push(o));return d.length===r.length?r:d})},[h,l,c,P.length]);const k=(h?.data||[]).map(e=>({...e,isAdult:!0})),ie=h?.hasMore??!1,ne=h?.total!=null?Math.max(1,Math.ceil(h.total/K)):void 0,R=()=>{Ue(),g(1);let e=p;!c&&!v&&N.trim()&&(e=""),M(e),E&&Te(x),F(N),f(S({query:N,page:1,genre:e,studio:E?x:B}))},De=e=>{be(e),g(1),Z(""),M(""),X([]),e==="mal"?U("SCORE_DESC"):e==="anilist"&&U("POPULARITY_DESC"),F(N),f(S({provider:e,page:1,remoteSort:"",genre:"",query:N}))},Ge=e=>{M(e),g(1),e&&(j(""),F("")),f(S({genre:e,page:1,query:e?"":L}))},oe=e=>{g(e),f(S({page:e})),window.scrollTo({top:0,behavior:"smooth"})},Me=async(e,r)=>{const n=r.id||r._id;if(l!=="mal"&&!/^\d+$/.test(n)&&(e.preventDefault(),e.stopPropagation(),!Re)){ee(n);try{if(l!=="anilist"){let o=!1;try{o=(await q.data.anilistStatus.query())?.available===!0}catch{o=!1}if(o){const de=await q.data.matureResolve.query({title:r.name});m(`/anime/${de.id}`);return}const ce=await q.data.matureAllocate.mutate({provider:l,nativeId:n,title:r.name,thumbnail:r.thumbnail});if(!ce?.id)throw new Error("Allocate failed");m(`/anime/${ce.id}`);return}const d=await q.data.matureResolve.query({title:r.name});m(`/anime/${d.id}`)}catch{Ye.error("Could not match this title on AniList")}finally{ee(null)}}},Q=new Date().getFullYear(),Be=[{value:"ALL",label:"All Years"},...Array.from({length:Q-1980+1},(e,r)=>({value:String(Q-r),label:String(Q-r)}))],we=P.length>0?P.map(e=>({value:e,label:fe(e)})):J.map(e=>({value:e.slug,label:e.name}));return y?t("div",{className:"page-container",children:[t("div",{className:a.header,children:[t("h1",{className:a.pageTitle,children:"Mature"}),t("p",{className:a.pageSubtitle,children:"Browse 18+ titles across AniList and streaming providers"})]}),t("div",{className:a.filterContainer,children:[t("div",{className:a.searchBarWrapper,children:[t("div",{className:a.inputIconWrapper,children:[t(pe,{name:"search",className:a.searchIcon}),t("input",{type:"text",placeholder:`Search ${re.find(e=>e.value===l)?.label}...`,value:N,onChange:e=>j(e.currentTarget.value),onKeyDown:e=>{e.key==="Enter"&&R()},className:a.searchInput})]}),t("div",{className:a.searchActions,children:[t("select",{value:l,onChange:e=>De(e.currentTarget.value),className:a.providerSelect,"aria-label":"Provider",children:re.map(e=>t("option",{value:e.value,children:e.label},e.value))}),t(W,{onClick:R,className:a.searchBtn,children:"Search"}),c&&t("button",{onClick:()=>Pe(!V),className:`${a.filterToggleBtn} ${V?a.active:""}`,children:[t(pe,{name:"filter"})," Filters"]}),le&&t("select",{value:_,onChange:e=>{Z(e.currentTarget.value),g(1),f(S({remoteSort:e.currentTarget.value,page:1}))},className:a.providerSelect,"aria-label":"Sort",children:Xe.map(e=>t("option",{value:e.value,children:e.label},e.value))})]})]}),(l==="anilist"||l==="mal")&&t("div",{className:`${a.advancedFilters} ${V?a.show:""}`,children:[t("div",{className:a.filterDivider}),t("div",{className:a.filterGrid,children:[t("div",{className:a.filterItem,children:[t("label",{children:"Sort By"}),t("select",{value:I,onChange:e=>U(e.currentTarget.value),children:Ze.map(e=>t("option",{value:e.value,children:e.label},e.value))})]}),t("div",{className:a.filterItem,children:[t("label",{children:"Status"}),t("select",{value:C,onChange:e=>ye(e.currentTarget.value),children:Je.map(e=>t("option",{value:e.value,children:e.label},e.value))})]}),l==="anilist"&&t(he,{children:[t("div",{className:a.filterItem,children:[t("label",{children:"Season"}),t("select",{value:D,onChange:e=>Ne(e.currentTarget.value),children:tt.map(e=>t("option",{value:e.value,children:e.label},e.value))})]}),t("div",{className:a.filterItem,children:[t("label",{children:"Year"}),t("select",{value:G,onChange:e=>Ce(e.currentTarget.value),children:Be.map(e=>t("option",{value:e.value,children:e.label},e.value))})]})]})]}),t("div",{className:a.filterActions,children:t(W,{onClick:R,className:a.searchBtn,children:"Apply Filters"})})]}),!c&&!!w&&($||v||E)&&t("div",{className:`${a.advancedFilters} ${a.show}`,children:[t("div",{className:a.filterDivider}),t("div",{className:`${a.filterGrid} ${z.tightGrid}`,children:[v&&t("div",{className:`${a.filterItem} ${z.shrinkSelect}`,children:[t("label",{children:"Order"}),t("select",{value:se,onChange:e=>{Ae(e.currentTarget.value),g(1),f(S({remoteOrder:e.currentTarget.value,page:1}))},children:(A.length>0?A:["recent"]).map(e=>t("option",{value:e,children:et[e]||e},e))})]}),$&&t("div",{className:`${a.filterItem} ${z.shrinkSelect}`,children:[t("label",{children:"Genre"}),t("select",{value:p,onChange:e=>{v?(M(e.currentTarget.value),g(1),f(S({genre:e.currentTarget.value,page:1}))):Ge(e.currentTarget.value)},children:[t("option",{value:"",children:"All Genres"}),we.map(e=>t("option",{value:e.value,children:e.label},e.value))]})]}),E&&t("div",{className:a.filterItem,children:[t("label",{children:"Studio"}),t("input",{type:"text",placeholder:"Studio name...",value:x,onChange:e=>Ee(e.currentTarget.value),onKeyDown:e=>{e.key==="Enter"&&R()},className:a.searchInput})]})]}),p&&$&&!v&&t("p",{className:a.pageSubtitle,children:["Browsing the ",fe(p)," genre - search text is ignored while a genre is selected."]}),(v||E)&&t("div",{className:a.filterActions,children:t(W,{onClick:R,className:a.searchBtn,children:"Apply Filters"})})]})]}),Ie&&t(Ke,{message:_e?.message||"Search failed"}),Oe?t(Ve,{count:K}):k.length===0?t("div",{className:a.noResults,children:[t("h3",{children:"No results found"}),t("p",{children:"Try a different query, genre or provider"})]}):t(he,{children:[t("div",{className:a.resultsHeader,children:[t("h2",{className:a.resultsTitle,children:[h?.total??k.length," result",(h?.total??k.length)===1?"":"s"]}),t("div",{className:a.pagination,children:t(ve,{page:O,totalPages:ne,canGoNext:ie,onChange:oe,variant:"labeled"})})]}),t("div",{className:a.resultsGrid,children:k.map(e=>t("div",{onClickCapture:r=>Me(r,e),children:t(xe,{anime:e})},`${l}-${e._id}`))}),t("div",{className:a.bottomPagination,children:t("div",{className:a.pagination,children:t(ve,{page:O,totalPages:ne,canGoNext:ie,onChange:oe,variant:"labeled"})})})]})]}):t(He,{isOpen:!0,onClose:()=>m("/"),onGrant:Se})}export{Ct as default};
@@ -0,0 +1 @@
1
+ import{u as n}from"./vendor-core-DfaOB3Rn.js";import{B as i,M as s}from"./index-BLh_CXtu.js";const d="_body_hnb7p_1",h="_hint_hnb7p_10",l="_actions_hnb7p_16",t={body:d,hint:h,actions:l},p=({isOpen:o,onClose:e,onGrant:a,scope:r="title",showResetHint:c=!1})=>n(s,{isOpen:o,title:"Content Warning",onClose:e,children:n("div",{className:t.body,children:[n("p",{children:["This ",r," contains mature content intended for adult audiences."]}),n("p",{children:["By proceeding, you confirm that you are ",n("strong",{children:"18 years of age or older"})," (or the age of majority in your jurisdiction) and wish to view this content."]}),c&&n("p",{className:t.hint,children:["You can reset this preference at any time in the ",n("strong",{children:"Settings"})," page."]}),n("div",{className:t.actions,children:[n(i,{variant:"secondary",onClick:e,children:"Go Back"}),n(i,{onClick:a,children:"I'm 18+, Continue"})]})]})});export{p as M};
@@ -0,0 +1 @@
1
+ ._body_hnb7p_1{padding:var(--space-4);text-align:center}._body_hnb7p_1 p{margin:0 0 var(--space-2)}._hint_hnb7p_10{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:var(--space-4)}._actions_hnb7p_16{margin-top:var(--space-4);display:flex;gap:var(--space-2-5);justify-content:center}
@@ -0,0 +1 @@
1
+ ._pagination_zelsc_1{display:flex;align-items:center;gap:var(--space-2)}._pageBtn_zelsc_7{background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px;min-width:28px;border-radius:var(--radius-full);transition:all var(--transition-fast);gap:var(--space-2);font-size:var(--font-size-sm)}._pageBtn_zelsc_7:hover:not(:disabled){background:var(--bg-tertiary);color:var(--accent)}._pageBtn_zelsc_7:disabled{opacity:.3;cursor:not-allowed}._pageBtn_zelsc_7 span{font-size:var(--font-size-xs);font-weight:600}._pageInfo_zelsc_38{font-size:var(--font-size-sm);color:var(--text-secondary);white-space:nowrap}._pageInfo_zelsc_38 strong{color:var(--text-primary)}._pagePicker_zelsc_48{position:relative}._dropdown_zelsc_52{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:50;background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-lg);padding:10px;width:210px;max-width:calc(100vw - 32px);box-shadow:0 12px 32px #00000059;touch-action:manipulation}._dropdown_zelsc_52._flipDown_zelsc_68{bottom:auto;top:calc(100% + 8px)}._jumpRow_zelsc_73{display:flex;gap:8px;margin-bottom:8px}._jumpInput_zelsc_79{flex:1;min-width:0;background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-primary);border-radius:8px;padding:6px 10px;font-size:.85rem}._jumpGo_zelsc_90{background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-primary);border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:700;cursor:pointer}._jumpGo_zelsc_90:hover{border-color:var(--accent)}._optionList_zelsc_105{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;max-height:180px;overflow-y:auto}._optionBtn_zelsc_113{background:none;border:none;color:var(--text-primary);border-radius:6px;padding:6px 0;font-size:.8rem;cursor:pointer}._optionBtn_zelsc_113:hover:not(:disabled){background:var(--bg-tertiary);color:var(--accent)}._optionBtn_zelsc_113:disabled{cursor:default}._optionBtn_zelsc_113._current_zelsc_132{font-weight:800;background:var(--bg-tertiary)}@media(pointer:coarse){._dropdown_zelsc_52{width:240px;padding:12px}._jumpInput_zelsc_79{min-height:44px;font-size:1rem}._jumpGo_zelsc_90{min-height:44px;padding:6px 16px}._optionList_zelsc_105{grid-template-columns:repeat(4,1fr);gap:6px;max-height:220px}._optionBtn_zelsc_113{min-height:44px;font-size:.9rem}._pageBtn_zelsc_7{min-width:36px;min-height:36px}}._popupPortal_1d6yy_1{z-index:var(--z-popover);pointer-events:none}._popupContent_1d6yy_6{pointer-events:auto;width:320px;background-color:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:0 10px 30px #00000080;border:1px solid var(--border-secondary);overflow:hidden;display:flex;flex-direction:column;animation:_fadeIn_1d6yy_1 .2s ease-out;color:var(--text-primary)}@keyframes _fadeIn_1d6yy_1{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}._popupBackdrop_1d6yy_31{position:fixed;inset:0;z-index:var(--z-popover);background:#0009}._popupPortal_1d6yy_1._mobile_1d6yy_38{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:calc(var(--z-popover) + 1);pointer-events:auto}._popupPortal_1d6yy_1._mobile_1d6yy_38 ._popupContent_1d6yy_6{width:min(340px,calc(100vw - 32px));max-height:85svh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@media(orientation:landscape)and (max-height:500px){._popupPortal_1d6yy_1._mobile_1d6yy_38 ._popupContent_1d6yy_6{width:min(460px,calc(100vw - 24px));max-height:calc(100svh - 16px)}}._header_1d6yy_62{padding:var(--space-4);background:linear-gradient(to bottom,rgba(0,0,0,.3),transparent)}._title_1d6yy_67{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--space-1);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--accent-light)}._altTitle_1d6yy_78{font-size:var(--font-size-xs);color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}._cover_1d6yy_87{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md);margin-bottom:var(--space-3);background:var(--bg-tertiary)}._body_1d6yy_97{padding:0 var(--space-4) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}._metaRow_1d6yy_104{display:flex;align-items:center;gap:var(--space-4);font-size:var(--font-size-sm)}._metaItem_1d6yy_111{display:flex;align-items:center;gap:var(--space-1)}._scoreIcon_1d6yy_117{color:var(--accent-lighter)}._synopsis_1d6yy_121{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}._details_1d6yy_131{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--text-muted)}._detailItem_1d6yy_139 strong{color:var(--text-secondary)}._genres_1d6yy_143{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}._genre_1d6yy_143{background:var(--bg-tertiary);padding:2px 8px;border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary)}._footer_1d6yy_158{padding:var(--space-4);border-top:1px solid var(--border-secondary);background-color:var(--bg-tertiary);display:flex;flex-direction:column;gap:var(--space-2)}._primaryAction_1d6yy_167{width:100%}._watchBtn_1d6yy_171{width:100%;height:48px;background-color:var(--accent);color:var(--accent-text);border:none;border-radius:var(--radius-md);font-weight:var(--font-weight-bold);display:flex;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;transition:all .2s;text-decoration:none;font-size:var(--font-size-base)}._watchBtn_1d6yy_171:hover{background-color:var(--accent-dark);transform:translateY(-1px)}._secondaryActions_1d6yy_194{display:flex;gap:var(--space-2)}._watchlistBtn_1d6yy_199,._detailsBtn_1d6yy_200{flex:1;height:36px;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background-color:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);cursor:pointer;font-size:11px;font-weight:var(--font-weight-semibold);transition:all .2s;text-decoration:none;white-space:nowrap}._watchlistBtn_1d6yy_199:hover,._detailsBtn_1d6yy_200:hover{background-color:var(--bg-secondary);border-color:var(--accent);color:var(--accent)}._watchlistBtn_1d6yy_199._active_1d6yy_226{background-color:var(--accent);border-color:var(--accent);color:var(--accent-text)}._watchlistBtn_1d6yy_199._active_1d6yy_226:hover{background-color:var(--accent-dark);border-color:var(--accent-dark)}._loading_1d6yy_237{padding:var(--space-8);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);color:var(--text-muted)}._spinner_1d6yy_247{width:30px;height:30px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:_spin_1d6yy_247 1s linear infinite}@keyframes _spin_1d6yy_247{to{transform:rotate(360deg)}}._cardWrapper_rw5hd_1{position:relative;width:100%;height:100%;min-width:0;z-index:1;transition:z-index var(--transition-fast);content-visibility:auto;contain-intrinsic-size:200px 300px;border-radius:var(--radius-md)}._cardWrapper_rw5hd_1:hover{z-index:5}._card_rw5hd_1{display:flex;flex-direction:column;background-color:var(--bg-secondary);border-radius:var(--radius-md);overflow:hidden;height:100%;min-width:0;box-shadow:none;border:1px solid var(--border-secondary);transition:border-color var(--transition-base),background-color var(--transition-base);-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}._cardButton_rw5hd_35{width:100%;padding:0;text-align:left;font:inherit;border:1px solid var(--border-secondary);cursor:pointer}._cardButton_rw5hd_35:focus-visible{outline:2px solid var(--accent);outline-offset:2px}._cardWrapper_rw5hd_1:hover ._card_rw5hd_1,._cardWrapper_rw5hd_1:focus-within ._card_rw5hd_1{border-color:var(--border-accent);background-color:var(--bg-tertiary);box-shadow:var(--shadow-active)}._cardWrapper_rw5hd_1:focus-within{z-index:5}._hoverOverlay_rw5hd_60{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#0f0f1373;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:8;border-radius:var(--radius-md) var(--radius-md) 0 0}._cardWrapper_rw5hd_1:hover ._hoverOverlay_rw5hd_60,._cardWrapper_rw5hd_1:focus-within ._hoverOverlay_rw5hd_60{opacity:1}._cardWrapper_rw5hd_1:has(._matureOverlay_rw5hd_81) ._hoverOverlay_rw5hd_60{display:none}@media(hover:none),(pointer:coarse){._hoverOverlay_rw5hd_60{display:none}}._posterContainer_rw5hd_91{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden;background:var(--bg-tertiary);border-radius:var(--radius-md) var(--radius-md) 0 0}._posterImg_rw5hd_100{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease,transform var(--transition-base),filter var(--transition-base);border-radius:var(--radius-md) var(--radius-md) 0 0}._posterImg_rw5hd_100._blurred_rw5hd_112{filter:blur(15px)}._matureOverlay_rw5hd_81{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#00000073;z-index:10;cursor:pointer;flex-direction:column;gap:var(--space-2);padding:var(--space-2);text-align:center;transition:background-color var(--transition-base)}._matureOverlay_rw5hd_81._flat_rw5hd_135{background-color:#000000f2}._posterImg_rw5hd_100._loaded_rw5hd_139{opacity:1}._cardWrapper_rw5hd_1:hover ._posterImg_rw5hd_100{transform:scale(1.05)}._progressSection_rw5hd_147{padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:2px}._titleSection_rw5hd_154{padding:var(--space-3) var(--space-3) 0;display:flex;flex-direction:column;gap:var(--space-1)}._title_rw5hd_154{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);line-height:1.3;color:#e2e8f0;height:2.6em;margin-bottom:0;transition:color var(--transition-base);word-break:break-word;min-width:0}._titleText_rw5hd_173{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:2.6em}._cardWrapper_rw5hd_1:hover ._title_rw5hd_154{color:var(--accent-light)}._badge_rw5hd_185{position:absolute;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);z-index:2;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}._typeBadge_rw5hd_196{top:var(--space-2);left:var(--space-2);background-color:#000000b3;color:#fff;border:1px solid rgba(255,255,255,.1)}._epBadge_rw5hd_205{bottom:var(--space-2);left:var(--space-2);background-color:var(--accent);color:var(--accent-text);border-radius:var(--radius-full)}._airTime_rw5hd_214{margin-left:6px;font-size:12px;opacity:.85;font-weight:500}._adultBadge_rw5hd_221{bottom:var(--space-2);right:var(--space-2);background-color:var(--color-danger);color:#fff;border:none;font-size:14px;padding:5px 10px;z-index:5;box-shadow:0 2px 8px #0006}._posterContainer_rw5hd_91 ._adultBadge_rw5hd_221._gated_rw5hd_234{background-color:#000000bf;border:1px solid rgba(220,53,69,.45);color:#ff4a5a}._notAiredBadge_rw5hd_240{top:var(--space-2);right:var(--space-2);background-color:var(--badge-info-bg);color:var(--badge-info-text);border:none;font-size:11px;font-weight:800;letter-spacing:.06em;padding:4px 8px;z-index:5;box-shadow:0 2px 8px #0006}._metaRow_rw5hd_255{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:#94a3b8;margin-top:auto;min-width:0;height:24px}._metaItem_rw5hd_266{display:flex;align-items:center;gap:var(--space-1);background-color:var(--bg-tertiary);padding:2px var(--space-2);border-radius:var(--radius-sm);transition:background-color var(--transition-base),color var(--transition-base)}._metaItem_rw5hd_266:hover{background-color:var(--bg-elevated);color:var(--text-primary)}._progressContainer_rw5hd_283{width:100%;height:4px;background-color:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}._progressBar_rw5hd_291{height:100%;background:var(--accent);border-radius:var(--radius-sm);transition:width .3s ease}._timestamp_rw5hd_298{font-size:var(--font-size-xs);color:var(--text-muted)}._removeBtn_rw5hd_303,._infoBtn_rw5hd_304{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;font-size:14px}._cardWrapper_rw5hd_1:hover ._removeBtn_rw5hd_303,._card_rw5hd_1:hover ._removeBtn_rw5hd_303,._cardWrapper_rw5hd_1:hover ._infoBtn_rw5hd_304,._card_rw5hd_1:hover ._infoBtn_rw5hd_304{opacity:1}@media(hover:none),(pointer:coarse){._removeBtn_rw5hd_303,._infoBtn_rw5hd_304{display:none}}._cardWrapper_rw5hd_1 ._removeBtn_rw5hd_303:hover{background-color:color-mix(in srgb,var(--color-danger) 90%,transparent);border-color:color-mix(in srgb,var(--color-danger) 90%,transparent);color:var(--color-danger-text);transform:scale(1.08)}._infoBtn_rw5hd_304:hover{background-color:var(--accent);border-color:var(--accent);color:var(--accent-text);transform:scale(1.08)}._mobileBadges_rw5hd_355{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-1)}._mobileBadgeBase_rw5hd_362{font-size:10px;font-weight:var(--font-weight-bold);padding:1px var(--space-1);border-radius:4px;text-transform:uppercase}._mobileType_rw5hd_370{background-color:#ffffff1a;color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}._mobileEp_rw5hd_377{background-color:var(--accent);color:var(--accent-text)}@media(max-width:768px){._cardWrapper_rw5hd_1,._card_rw5hd_1{height:auto}._progressSection_rw5hd_147{padding:4px 8px}._titleSection_rw5hd_154{padding:8px 8px 0}._cardWrapper_rw5hd_1 ._title_rw5hd_154{height:2.5em;max-height:2.5em;overflow:hidden;font-size:.82rem;line-height:1.25;color:#e2e8f0}._titleText_rw5hd_173{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-height:2.5em;word-break:break-word;color:#e2e8f0}._removeBtn_rw5hd_303,._infoBtn_rw5hd_304{min-width:36px;min-height:36px;width:36px;height:36px;font-size:14px}._mobileBadges_rw5hd_355{justify-content:center;margin-bottom:4px;gap:4px}._metaRow_rw5hd_255{margin-top:auto;justify-content:center;height:20px}._typeBadge_rw5hd_196{display:none}._cardWrapper_rw5hd_1 ._removeBtn_rw5hd_303{opacity:1;background-color:#00000080}}._cardWrapper_rw5hd_1._lowEnd_rw5hd_447 ._card_rw5hd_1,._cardWrapper_rw5hd_1._lowEnd_rw5hd_447 ._posterImg_rw5hd_100{transition:none}
@@ -0,0 +1 @@
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-BsdpNeXA.js";import{t as Oe,d as Ae,u as je,e as Fe,f as Ue}from"./index-BLh_CXtu.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};
@@ -0,0 +1 @@
1
+ import{u as e,S as s,d as y,h as g}from"./vendor-core-DfaOB3Rn.js";import{I as p}from"./vendor-icons-DrybRNxP.js";import{M as l,y as m,T as S,B as f,z as k,D as x,F as N}from"./AvSyncCalibrator-C5GxpyPE.js";const C=({classes:o,title:t,titleTag:i="span",showBack:a=!0,onBack:n,panelRef:b,onPanelClick:r,children:c})=>{const d=i;return e("div",{ref:b,className:o.panel,onClick:r,"data-speed-boost-ignore":"true",children:[e("div",{className:o.header,children:[a&&e("button",{className:o.backBtn,onClick:n,children:e(p,{name:"chevron-left"})}),e(d,{className:o.title||void 0,children:t})]}),e("div",{className:o.content,children:c})]})},$=({classes:o,values:t,onChange:i})=>{const a=()=>{const n=x;i("fontSize",n.fontSize),i("position",n.position),i("bgOpacity",n.bgOpacity),i("bgColor",n.bgColor),i("textColor",n.textColor),i("edge",n.edge),i("bold",n.bold)};return e(s,{children:[e(l,{label:"Font Size",display:t.fontSize.toFixed(1),min:.5,max:10,step:.5,value:t.fontSize,percent:(t.fontSize-.5)/9.5*100,onChange:n=>{Number.isFinite(n)&&i("fontSize",n)}}),e(l,{label:"Vertical Position",display:`${t.position}`,min:0,max:100,step:1,value:t.position,percent:t.position,onChange:n=>{Number.isFinite(n)&&i("position",Math.round(n))}}),e(l,{label:"Background Opacity",display:`${Math.round(t.bgOpacity*100)}%`,min:0,max:1,step:.05,value:t.bgOpacity,percent:t.bgOpacity*100,onChange:n=>{Number.isFinite(n)&&i("bgOpacity",n)}}),e(m,{label:"Text Color",colors:S,value:t.textColor,onChange:n=>i("textColor",n)}),e(m,{label:"Background Color",colors:f,value:t.bgColor,onChange:n=>i("bgColor",n)}),e(k,{label:"Text Edge",options:["shadow","outline","none"],value:t.edge,onChange:n=>i("edge",n)}),e("button",{type:"button",className:`${o.item} ${t.bold?o.active:""}`,onClick:()=>i("bold",!t.bold),children:[e("span",{children:"Bold Text"}),t.bold&&e(p,{name:"check",size:12})]}),e("button",{type:"button",className:o.item,onClick:a,children:e("span",{children:"Reset to Defaults"})})]})},z=({classes:o,enabled:t,delayMs:i,onToggle:a,onDelayChange:n,onCalibrate:b})=>{const[r,c]=y(null),d=r??i;g(()=>{c(null)},[i]);const h=()=>{r!==null&&(n(r),c(null))};return e(s,{children:[e("button",{type:"button",className:`${o.item} ${t?o.active:""}`,onClick:()=>a(!t),children:[e("span",{children:"Video delay"}),t&&e(p,{name:"check",size:12})]}),e(l,{label:"Video delay",display:`${d}ms`,min:0,max:500,step:5,value:d,percent:d/500*100,onChange:u=>c(Math.round(u)),onCommit:h}),e("div",{className:o.note,children:"For Bluetooth headsets where audio arrives late. Video is held back via canvas; audio plays untouched."}),b&&e("button",{type:"button",className:o.item,onClick:b,children:e("span",{children:"Calibrate…"})})]})},B=({classes:o,values:t,onChange:i})=>e(s,{children:[e("button",{type:"button",className:`${o.item} ${t.enabled?o.active:""}`,onClick:()=>i({enabled:!t.enabled}),"aria-pressed":t.enabled,children:[e("span",{children:"Ambient light"}),e("span",{style:{display:"flex",alignItems:"center",gap:6},children:[t.enabled?"On":"Off",t.enabled&&e(p,{name:"check",size:12})]})]}),e(l,{label:"Blur",display:`${t.blur}px`,min:0,max:120,step:2,value:t.blur,percent:t.blur/120*100,onChange:a=>i({blur:Math.round(a)})}),e(l,{label:"Saturation",display:`${t.saturation}%`,min:0,max:200,step:5,value:t.saturation,percent:t.saturation/200*100,onChange:a=>i({saturation:Math.round(a)})}),e(l,{label:"Brightness",display:`${t.brightness}%`,min:20,max:120,step:5,value:t.brightness,percent:(t.brightness-20)/100*100,onChange:a=>i({brightness:Math.round(a)})}),e(l,{label:"Opacity",display:`${t.opacity}%`,min:10,max:100,step:5,value:t.opacity,percent:(t.opacity-10)/90*100,onChange:a=>i({opacity:Math.round(a)})}),e("div",{className:o.note,children:"Mirrors the video onto the backdrop behind the player. Turn off for pure black."}),e("button",{type:"button",className:o.item,onClick:()=>i({...N}),children:e("span",{children:"Reset to defaults"})})]}),E=({classes:o,options:t,onSelect:i})=>e(s,{children:t.map(a=>e("button",{type:"button",className:`${o.item} ${a.selected?o.active:""}`,onClick:()=>i(a.key),children:[e("span",{children:a.label}),a.selected&&e(p,{name:"check",size:12})]},a.key))});export{z as A,E as O,C as S,$ as a,B as b};
@@ -0,0 +1 @@
1
+ ._controlsOverlay_cejny_1{position:absolute;inset:0;opacity:1;transition:opacity .4s cubic-bezier(.4,0,.2,1);z-index:50;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle,transparent 20%,rgba(0,0,0,.4) 100%)}._controlsOverlay_cejny_1>*{pointer-events:auto}._controlsOverlay_cejny_1._hidden_cejny_21{opacity:0;pointer-events:none;cursor:none}._topControls_cejny_27{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:var(--space-6);background:linear-gradient(to bottom,rgba(0,0,0,.85) 0%,rgba(0,0,0,.45) 60%,transparent 100%);padding:var(--space-8) var(--space-10);transition:transform .4s cubic-bezier(.2,.8,.2,1);z-index:10;pointer-events:auto}._backBtn_cejny_47{background:transparent;border:none;color:#ffffffd9;font-size:1.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);padding:8px;border-radius:50%}._backBtn_cejny_47:hover{background:#0f0f1199;color:#fff;transform:scale(1.1)}._videoTitleInfo_cejny_67{display:flex;flex-direction:column;gap:.25rem}._animeTitle_cejny_73{font-size:1.4rem;font-weight:800;color:#fff;letter-spacing:-.01em;text-shadow:0 1px 2px rgba(0,0,0,.6),0 2px 10px rgba(0,0,0,.75)}._episodeNumber_cejny_83{font-size:.95rem;font-weight:600;color:#ffffffbf;letter-spacing:.02em;text-shadow:0 1px 3px rgba(0,0,0,.9)}._bottomControls_cejny_91{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;gap:0;background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.25) 80%,transparent 100%);padding:0 clamp(.5rem,1.5cqw,.75rem) clamp(.75rem,2.5cqw,1.5rem);transition:transform .4s cubic-bezier(.2,.8,.2,1)}._progressBarContainer_cejny_110{width:100%;padding:10px 0 6px;cursor:pointer;position:relative;touch-action:none;display:flex;align-items:center}@media(pointer:coarse){._progressBarContainer_cejny_110{padding:14px 0 10px}._progressBarContainer_cejny_110 ._progressBar_cejny_110{height:6px}._progressBarContainer_cejny_110 ._thumb_cejny_129{transform:translate(-50%,-50%) scale(1)}}._progressBar_cejny_110{width:100%;height:4px;background-color:#ffffff1a;border-radius:4px;position:relative;transition:height .2s}._progressBarContainer_cejny_110:hover ._progressBar_cejny_110,._progressBarContainer_cejny_110._scrubbing_cejny_144 ._progressBar_cejny_110{height:6px}._watchedBar_cejny_148,._bufferedBar_cejny_149{position:absolute;top:0;left:0;height:100%;border-radius:4px}._watchedBar_cejny_148{background:var(--accent);background:linear-gradient(90deg,var(--accent) 0%,var(--accent-light) 100%);z-index:12;box-shadow:0 0 15px var(--accent-glow)}._bufferedBar_cejny_149{background-color:#fff3;z-index:11}._thumb_cejny_129{position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);width:14px;height:14px;background-color:#fff;border-radius:50%;z-index:15;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 0 10px #00000080}._progressBarContainer_cejny_110:hover ._thumb_cejny_129,._progressBarContainer_cejny_110._scrubbing_cejny_144 ._thumb_cejny_129{transform:translate(-50%,-50%) scale(1)}._timeBubble_cejny_187{position:absolute;bottom:24px;transform:translate(-50%);background:#0f0f11f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border);color:#fff;padding:6px 10px;border-radius:8px;font-size:.8rem;font-weight:700;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap;box-shadow:var(--shadow-lg)}._timeBubble_cejny_187:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#0f0f11f2}._progressBarContainer_cejny_110:hover ._timeBubble_cejny_187,._progressBarContainer_cejny_110._scrubbing_cejny_144 ._timeBubble_cejny_187{opacity:1}._skipSegment_cejny_221{position:absolute;top:0;height:100%;z-index:10;opacity:.4;transition:opacity .2s;border-radius:4px}._bottomControlsRow_cejny_231{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:0}._leftControls_cejny_239,._rightControls_cejny_240{display:flex;align-items:center;gap:1.25rem;gap:clamp(.5rem,2.5cqw,1.25rem)}._controlBtn_cejny_247{background:transparent;border:none;color:#fffc;font-size:1.1rem;cursor:pointer;transition:all var(--transition-fast);padding:8px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;min-width:2.125rem;min-height:2.125rem}@media(pointer:coarse){._controlBtn_cejny_247{padding:10px;min-width:2.75rem;min-height:2.75rem}}@container (max-width: 30rem){._bottomControls_cejny_91{padding:0 .75rem .75rem}._leftControls_cejny_239,._rightControls_cejny_240{gap:.2rem}._controlBtn_cejny_247{padding:5px;min-width:2.125rem;min-height:2.125rem;font-size:1rem}._theaterBtn_cejny_288{display:none}._nextEpisodeBtn_cejny_292{padding:.3rem .5rem;font-size:.7rem}}._controlBtn_cejny_247:hover{background:#ffffff1a;color:#fff;transform:translateY(-2px)}._controlBtn_cejny_247:focus{outline:none}._controlBtn_cejny_247:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}._controlBtn_cejny_247._active_cejny_313{color:var(--accent)}._timeDisplay_cejny_317{font-size:.9rem;font-weight:600;color:#fffc;font-variant-numeric:tabular-nums;letter-spacing:.02em}._skipControls_cejny_325{display:flex;align-items:center;gap:var(--space-2)}._nextEpisodeBtn_cejny_292{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);padding:.45rem .8rem;color:#fffc;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}._nextEpisodeBtn_cejny_292:hover{background:#ffffff1a;color:#fff;transform:translateY(-1px);border-color:#fff3}body.low-end ._controlsOverlay_cejny_1,body.low-end div._controlsOverlay_cejny_1{background:none;transition:none}body.low-end ._bottomControls_cejny_91,body.low-end div._bottomControls_cejny_91{backdrop-filter:none;-webkit-backdrop-filter:none;background:#1a1a1c;box-shadow:none;transition:none}body.low-end ._controlBtn_cejny_247._active_cejny_313,body.low-end button._controlBtn_cejny_247._active_cejny_313{color:var(--accent)}body.low-end ._progressBar_cejny_110,body.low-end div._progressBar_cejny_110{height:4px;transition:none}body.low-end ._watchedBar_cejny_148,body.low-end div._watchedBar_cejny_148{background:var(--accent);box-shadow:none}body.low-end ._thumb_cejny_129,body.low-end div._thumb_cejny_129{transition:none;box-shadow:none}body.low-end ._controlBtn_cejny_247:hover,body.low-end ._nextEpisodeBtn_cejny_292:hover,body.low-end button._controlBtn_cejny_247:hover,body.low-end button._nextEpisodeBtn_cejny_292:hover{transform:none}body.low-end ._timeBubble_cejny_187,body.low-end div._timeBubble_cejny_187{-webkit-backdrop-filter:none;backdrop-filter:none;background:#111;transition:none}@media(max-width:768px){._topControls_cejny_27{padding:12px 16px;gap:.75rem}._backBtn_cejny_47{font-size:1.2rem;padding:4px}._animeTitle_cejny_73{font-size:1rem;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._episodeNumber_cejny_83{font-size:.75rem}._bottomControls_cejny_91{padding:0 16px 16px}._timeDisplay_cejny_317{font-size:.75rem;margin-right:2px}._nextEpisodeBtn_cejny_292{padding:.35rem .6rem;font-size:.75rem}}@media(max-width:480px){._timeDisplay_cejny_317{display:none}._topControls_cejny_27{padding:8px 12px}}