@serifpersia/dango 4.0.3 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/client/dist/assets/{AnimeCard-2k8ssFQg.js → AnimeCard-Dj2gXZQ_.js} +1 -1
- package/client/dist/assets/{AnimeInfo-DYIMQZ_G.js → AnimeInfo-FTnsxEMu.js} +1 -1
- package/client/dist/assets/{AnimeInfoPage-BK1gsbaN.js → AnimeInfoPage-DaoQEHyi.js} +2 -2
- package/client/dist/assets/{Asmr-D562WT1y.js → Asmr-Dj290riM.js} +1 -1
- package/client/dist/assets/{AsmrPopup-DSb1jdb1.js → AsmrPopup-DCxF-0FD.js} +1 -1
- package/client/dist/assets/{AsmrResetProgressModal-Cb30-ErW.js → AsmrResetProgressModal-BFgtJIjq.js} +1 -1
- package/client/dist/assets/{Home-DBefqglV.js → Home-BvAHDt_3.js} +1 -1
- package/client/dist/assets/{Insights-C57WhdmV.js → Insights-xaMU0gDH.js} +1 -1
- package/client/dist/assets/{LibraryListPage-ByCxrf4V.js → LibraryListPage-y1J_sbu3.js} +1 -1
- package/client/dist/assets/{ListeningList-BJJzg0gb.js → ListeningList-DxPvvTGs.js} +1 -1
- package/client/dist/assets/{Manga-CW-xSa6W.js → Manga-Dc9QLjTm.js} +1 -1
- package/client/dist/assets/{MangaInfoPage-B2eqiI6S.js → MangaInfoPage-BHnn83Zv.js} +1 -1
- package/client/dist/assets/{MangaReadPage-DU_pWeC4.js → MangaReadPage-CDQJ6lwj.js} +1 -1
- package/client/dist/assets/{MangaResetProgressModal-BoaCnx2i.js → MangaResetProgressModal-Cw4txoU9.js} +1 -1
- package/client/dist/assets/{Mature-I-5BXxqP.js → Mature-DdHf-knG.js} +1 -1
- package/client/dist/assets/{MatureConsentModal-B8mTktfi.js → MatureConsentModal-BuJjdQ5N.js} +1 -1
- package/client/dist/assets/{MediaCard-yDEaWmRR.js → MediaCard-FQr72c16.js} +1 -1
- package/client/dist/assets/{OptionListMenu-XTkQ_xrQ.js → OptionListMenu-CAjFAq0c.js} +1 -1
- package/client/dist/assets/{Player-DnWze_gB.js → Player-DO3lmGMJ.js} +2 -2
- package/client/dist/assets/{PlayerProvider-hfX3WV6K.js → PlayerProvider-1nQxpPbi.js} +1 -1
- package/client/dist/assets/{PlayerSettings-C5n3kYuV.js → PlayerSettings-BxmbpvrQ.js} +1 -1
- package/client/dist/assets/{QueueOptionsButton-BMlChzgW.js → QueueOptionsButton-Tsij7x21.js} +1 -1
- package/client/dist/assets/{QueueRail-CV0rsdWL.js → QueueRail-DHSBCDXc.js} +1 -1
- package/client/dist/assets/{ReadingList-Dadozt41.js → ReadingList-Bl-49YU7.js} +1 -1
- package/client/dist/assets/{ResetProgressModal-BXkiBRZv.js → ResetProgressModal-DIn1j8Qp.js} +1 -1
- package/client/dist/assets/{Search-DiUbhvfg.js → Search-uY6VQ4os.js} +1 -1
- package/client/dist/assets/{Settings-fCV1C7Pa.js → Settings-CHkvGAxk.js} +1 -1
- package/client/dist/assets/{SkeletonGrid-DHbe7WWt.js → SkeletonGrid-xUVpcN5T.js} +1 -1
- package/client/dist/assets/{Trackers-DvRqGHrx.js → Trackers-DXrxbGg1.js} +1 -1
- package/client/dist/assets/Tv-DFrBiMVQ.js +4 -0
- package/client/dist/assets/{TvInfo-BEaENXW9.js → TvInfo-eLmiGzwb.js} +1 -1
- package/client/dist/assets/{TvPopup-BWvnz3aD.js → TvPopup-CaXs4L6B.js} +1 -1
- package/client/dist/assets/{TvSearch-Bu1r0z8j.js → TvSearch-D_IGBBD8.js} +1 -1
- package/client/dist/assets/{TvWatchlist-DjZxyCqC.js → TvWatchlist-Ol8QK-C9.js} +1 -1
- package/client/dist/assets/{VirtualKeyboard-otEdnEQ2.js → VirtualKeyboard-Bp-M8SVt.js} +1 -1
- package/client/dist/assets/{WatchAlong-BfHji5Zr.js → WatchAlong-qJzs9_fD.js} +1 -1
- package/client/dist/assets/{WatchAlongPanel-Df8EFgd_.js → WatchAlongPanel-DLuYT4hH.js} +1 -1
- package/client/dist/assets/{Watchlist-D4HJr6pg.js → Watchlist-DcAUYWtZ.js} +1 -1
- package/client/dist/assets/{index-YxVpiwVZ.css → index-BBbcJwUD.css} +1 -1
- package/client/dist/assets/{index-jbfR1Gmm.js → index-CkZCduQZ.js} +2 -2
- package/client/dist/assets/{libraryInvalidation-Il_DYhmy.js → libraryInvalidation-Cv-7EfU1.js} +1 -1
- package/client/dist/assets/{playbackCompletion-Diib3fZu.js → playbackCompletion-BTwrTq5S.js} +1 -1
- package/client/dist/assets/{useAnimeInfoData-DdGnfUWc.js → useAnimeInfoData-tmC_S41n.js} +1 -1
- package/client/dist/assets/{useMangaLibrary-DZ-ZzUfI.js → useMangaLibrary-CPluPl_T.js} +1 -1
- package/client/dist/assets/{useMangaPopup-QdPYB8yz.js → useMangaPopup-DRDWlEcN.js} +1 -1
- package/client/dist/assets/{useProviders-7Im8EwZk.js → useProviders-aA8vRBov.js} +1 -1
- package/client/dist/assets/{useTv-B6wLwlA4.js → useTv-Dl0TYap6.js} +1 -1
- package/client/dist/assets/{useTvLibrary-DUFwbdjO.js → useTvLibrary-BCgO-d_K.js} +1 -1
- package/client/dist/assets/{useWatchAlongPlayer-C1T1IqCH.js → useWatchAlongPlayer-DfbkmL7h.js} +1 -1
- package/client/dist/index.html +2 -2
- package/package.json +2 -2
- package/server/dist/server.js +182 -182
- package/server/package.json +1 -1
- package/client/dist/assets/Tv-Dbih_6wX.js +0 -4
package/client/dist/assets/{libraryInvalidation-Il_DYhmy.js → libraryInvalidation-Cv-7EfU1.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{q as r}from"./index-
|
|
1
|
+
import{q as r}from"./index-CkZCduQZ.js";const s={tv:{library:r.tvLibrary,continue:r.tvContinueWatching,progress:r.tvProgress},manga:{library:r.mangaLibrary,continue:r.mangaContinueReading,progress:r.mangaProgress},asmr:{library:r.asmrLibrary,continue:r.asmrContinueListening,progress:r.asmrProgress}};function t(a,e,n=!1){const i=s[e];n&&a.invalidateQueries({queryKey:[i.progress]}),a.invalidateQueries({queryKey:[i.library]}),a.invalidateQueries({queryKey:[i.continue]})}export{t as i};
|
package/client/dist/assets/{playbackCompletion-Diib3fZu.js → playbackCompletion-BTwrTq5S.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as s}from"./index-
|
|
1
|
+
import{p as s}from"./index-CkZCduQZ.js";const r=.8,o=5,a="autoplayEnabled",E="watchedOverlayEnabled",S=(t,e)=>e>0&&t>=e*r,c=new Set(["FINISHED","ENDED","COMPLETED","CANCELED","CANCELLED","RELEASED"]),d=t=>!!t&&c.has(t.trim().toUpperCase()),n=.25,h=(t,e)=>e>0&&Number.isFinite(e)&&t>=e-n,C=t=>t>o,D=()=>{try{return s.getItem(a)==="true"}catch{return!1}},O=t=>{try{s.setItem(a,String(t))}catch{}},i=()=>{try{return s.getItem(E)!=="false"}catch{return!0}},y=t=>{try{s.setItem(E,String(t))}catch{}};export{r as C,D as a,d as b,O as c,h as d,C as h,S as i,i as l,y as s};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{q as g}from"./vendor-core-DfaOB3Rn.js";import{u as p,b as q,a as M}from"./vendor-query-BBT5_sHx.js";import{o as v,K as h,q as K,t as y}from"./index-
|
|
1
|
+
import{q as g}from"./vendor-core-DfaOB3Rn.js";import{u as p,b as q,a as M}from"./vendor-query-BBT5_sHx.js";import{o as v,K as h,q as K,t as y}from"./index-CkZCduQZ.js";import{u as Q}from"./QueueOptionsButton-Tsij7x21.js";function k(t){const s=p(),c=v(),{data:i,isLoading:w,error:u}=Q(t),n=c.watchlist.check.queryOptions({showId:t??""}).queryKey,{data:d}=q({...c.watchlist.check.queryOptions({showId:t??""}),enabled:!!t}),r=d?.inWatchlist??!1,{mutateAsync:l}=M({mutationFn:async({wasIn:e,meta:a})=>{if(!t)throw new Error("Missing showId");if(e)await y.watchlist.remove.mutate({id:t});else{const o=a?.names,m=a?.name||o?.romaji;if(!m)throw new Error("Missing show name");await y.watchlist.add.mutate({id:t,name:m,thumbnail:a?.thumbnail,nativeName:o?.native,englishName:o?.english,type:a?.type,isAdult:a?.isAdult})}return!e},onMutate:async({wasIn:e})=>{await s.cancelQueries({queryKey:n}),s.setQueryData(n,a=>({...a,inWatchlist:!e,status:a?.status??""}))},onError:e=>{s.invalidateQueries({queryKey:n}),h.error(e instanceof Error?e.message:"Failed to update watchlist")},onSuccess:e=>{h.success(e?"Added to watchlist":"Removed from watchlist"),s.invalidateQueries({queryKey:[K.watchlist]})}}),f=g(async()=>{!t||!i||await l({wasIn:r,meta:i})},[t,i,r,l]);return{showMeta:i,inWatchlist:r,loadingMeta:w,error:u?u.message:null,toggleWatchlist:f}}export{k as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{T as d}from"./vendor-core-DfaOB3Rn.js";import{b as g,u as i,a as u}from"./vendor-query-BBT5_sHx.js";import{o as s,K as r,q as p}from"./index-
|
|
1
|
+
import{T as d}from"./vendor-core-DfaOB3Rn.js";import{b as g,u as i,a as u}from"./vendor-query-BBT5_sHx.js";import{o as s,K as r,q as p}from"./index-CkZCduQZ.js";import{i as c}from"./libraryInvalidation-Cv-7EfU1.js";const F=e=>e.contentRating==="erotica"||e.contentRating==="pornographic"||e.type==="doujinshi";function q(e,t){const a=e.titles??{};return t==="englishName"?a.en||e.title:t==="nativeName"&&(a.native||a.romaji||e.altTitle)||e.title}function C(e){return{englishName:e.titles?.en??e.title,nativeName:e.titles?.native??e.titles?.romaji??e.altTitle??void 0}}const y=/^anilist:ch:(\d+)$/;function P(e){if(!e)return null;const t=y.exec(e.trim());if(!t)return null;const a=Number.parseInt(t[1],10);return Number.isFinite(a)?a:null}function R(e,t){const a=String(t),n=e.find(m=>(m.number??"").trim()===a);return n||(e.find(m=>{const o=Number.parseFloat((m.number??"").trim());return Number.isFinite(o)&&o===t})??null)}const O=["Reading","Completed","On-Hold","Dropped","Planned"],v=(e,t)=>`${e.toLowerCase()}:${t}`,T=(e="All",t=1,a=24)=>{const n=s();return g(n.mangaLibrary.list.queryOptions({status:e,page:t,limit:a}))},b=()=>{const e=s();return g({...e.mangaLibrary.ids.queryOptions(),staleTime:1e3*60})},$=e=>{const t=s();return g({...t.mangaLibrary.check.queryOptions({id:e??""}),enabled:!!e,staleTime:1e3*60})},E=e=>{const t=s();return g({...t.mangaLibrary.entry.queryOptions({id:e??""}),enabled:!!e,staleTime:1e3*60})},Q=()=>{const e=s(),t=i();return u(e.mangaLibrary.link.mutationOptions({onSuccess:a=>{r.success(a?.progressMigrated?"Linked - chapter progress carried over":"Linked to AniList entry"),t.invalidateQueries(e.mangaLibrary.pathFilter()),c(t,"manga")},onError:a=>{r.error(`Failed to link: ${a.message}`)}}))},N=(e=24)=>{const t=s();return g(t.mangaProgress.continueReading.queryOptions({limit:e}))},A=e=>{const t=s();return g({...t.mangaProgress.byManga.queryOptions({mangaId:e??""}),enabled:!!e})},L=()=>{const e=s(),t=i();return u(e.mangaLibrary.add.mutationOptions({onSuccess:(a,n)=>{n.silent||r.success("Bookmarked"),t.invalidateQueries(e.mangaLibrary.pathFilter()),t.invalidateQueries({queryKey:[p.mangaLibrary]})},onError:a=>{r.error(`Failed to bookmark: ${a.message}`)}}))},M=()=>{const e=s(),t=i();return u(e.mangaLibrary.remove.mutationOptions({onSuccess:()=>{r.success("Bookmark removed"),t.invalidateQueries(e.mangaLibrary.pathFilter()),c(t,"manga")},onError:a=>{r.error(`Failed to remove: ${a.message}`)}}))},B=()=>{const e=s(),t=i();return u(e.mangaLibrary.setStatus.mutationOptions({onSuccess:()=>{r.success("Status updated"),t.invalidateQueries(e.mangaLibrary.pathFilter()),c(t,"manga")},onError:a=>{r.error(`Failed to update status: ${a.message}`)}}))},I=()=>{const e=s(),t=i();return u(e.mangaProgress.save.mutationOptions({onSuccess:()=>{c(t,"manga",!0),t.invalidateQueries(e.mangaProgress.pathFilter())}}))},_=()=>{const e=s(),t=i();return u(e.mangaProgress.remove.mutationOptions({onSuccess:()=>{r.success("Progress reset"),c(t,"manga",!0),t.invalidateQueries(e.mangaProgress.pathFilter())},onError:a=>{r.error(`Failed to reset progress: ${a.message}`)}}))},j=()=>{const e=s(),t=i();return u(e.mangaLibrary.batchStatus.mutationOptions({onSuccess:a=>{r.success(`Status updated for ${a.updated??0} items`),t.invalidateQueries(e.mangaLibrary.pathFilter()),c(t,"manga")},onError:a=>{r.error(`Failed to update statuses: ${a.message}`)}}))},w=()=>{const e=s(),t=i();return u(e.mangaLibrary.removeMany.mutationOptions({onSuccess:a=>{const n=a.removed??0;r.success(`Removed ${n} ${n===1?"item":"items"} from reading list`),t.invalidateQueries(e.mangaLibrary.pathFilter()),c(t,"manga")},onError:a=>{r.error(`Failed to remove: ${a.message}`)}}))},x=()=>{const e=s(),t=i();return u(e.mangaProgress.removeMany.mutationOptions({onSuccess:a=>{const n=a.removed??0;r.success(`Reset progress for ${n} ${n===1?"item":"items"}`),c(t,"manga",!0),t.invalidateQueries(e.mangaProgress.pathFilter())},onError:a=>{r.error(`Failed to reset progress: ${a.message}`)}}))},H=()=>{const e=L(),t=M(),{data:a}=b(),n=d(()=>new Set(a?.ids||[]),[a]);return{toggle:o=>{const l=v(o.provider,o.id);n.has(l)?t.mutate(l):e.mutate({provider:o.provider,mangaId:o.id,title:o.title,cover:o.cover,altTitle:o.altTitle,contentRating:o.contentRating})},bookmarkedIds:n,pending:e.isPending||t.isPending}};export{O as M,C as a,N as b,E as c,L as d,Q as e,$ as f,A as g,M as h,F as i,B as j,R as k,I as l,v as m,T as n,j as o,P as p,w as q,q as r,x as s,_ as t,H as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as T}from"./vendor-core-DfaOB3Rn.js";import{ag as d,d as k}from"./index-
|
|
1
|
+
import{u as T}from"./vendor-core-DfaOB3Rn.js";import{ag as d,d as k}from"./index-CkZCduQZ.js";import{r as y}from"./useMangaLibrary-CPluPl_T.js";import{a as h}from"./MediaCard-FQr72c16.js";import{u as M}from"./usePopup-DS9jMzp6.js";const B=({data:e,anchorRect:i,bookmarked:l,onToggleBookmark:n,onMouseEnter:p,onMouseLeave:c,onRequestClose:m})=>{const{data:o,isLoading:u}=d(e.provider,e.mangaId,e.rating||"safe",e.mature||!1),{titlePreference:g}=k(),s=o?.chapters.length??0,a=y({title:e.title,altTitle:o?.altTitle??e.altTitle},g),t=[],r=[o?.status,o?.type].filter(Boolean).join(" · ");r&&t.push({icon:"book",label:r}),s>0&&t.push({label:`${s} chapter${s===1?"":"s"}`}),e.progressLabel&&t.push({icon:"bookmark",label:e.progressLabel});const b=Array.isArray(o?.genres)?o.genres.filter(Boolean).slice(0,4).map(f=>f):[];return T(h,{anchorRect:i,title:a,subtitle:o?.altTitle&&o.altTitle!==a?`Also known as: ${o.altTitle}`:void 0,loading:u,meta:t,genres:b,synopsis:o?.description?o.description:"No synopsis available.",primaryAction:{to:e.readTarget,label:"Read now",icon:"book"},secondaryAction:{to:`/manga/${e.provider}/${encodeURIComponent(e.mangaId)}`,label:"Read more"},bookmarked:l,bookmarkLabel:"Bookmark",onToggleBookmark:n,onMouseEnter:p,onMouseLeave:c,onRequestClose:m})},I=()=>M();export{B as M,I as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{T as o}from"./vendor-core-DfaOB3Rn.js";import{b as a}from"./vendor-query-BBT5_sHx.js";import{q as i,U as n}from"./index-
|
|
1
|
+
import{T as o}from"./vendor-core-DfaOB3Rn.js";import{b as a}from"./vendor-query-BBT5_sHx.js";import{q as i,U as n}from"./index-CkZCduQZ.js";const l=300*1e3,c=()=>{const e=a({queryKey:[i.providers],queryFn:()=>n("/api/providers"),staleTime:l,retry:1}),r=Array.isArray(e.data)?e.data:null,s=o(()=>r&&r.length>0?r.filter(t=>t.loaded):[],[r]);return{...e,options:s,isFallback:!r||r.length===0}};export{c as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as c,u as o,S as d}from"./vendor-core-DfaOB3Rn.js";import{I as v}from"./vendor-icons-C1Pj_eSX.js";import{M as T}from"./MediaCard-
|
|
1
|
+
import{N as c,u as o,S as d}from"./vendor-core-DfaOB3Rn.js";import{I as v}from"./vendor-icons-C1Pj_eSX.js";import{M as T}from"./MediaCard-FQr72c16.js";import{T as g}from"./TvPopup-CaXs4L6B.js";import{k as m,j as f,o as i}from"./index-CkZCduQZ.js";import{b as u}from"./vendor-query-BBT5_sHx.js";const P=c(({item:e})=>{const a=e.type==="tv"||e.type==="tvSeries"||e.type==="tvMiniSeries",s=m(e.type,e.id);return o(T,{item:{id:String(e.id),title:e.title,thumbnail:e.image,typeBadge:a?"TV":"Movie",isAdult:f(e)},linkTo:s,hoverIcon:"info",showInfoButton:!0,metaRow:o(d,{children:[e.year&&o("span",{style:{opacity:.75},children:e.year}),e.vote_average!=null&&o("span",{style:{display:"inline-flex",alignItems:"center",gap:3},children:[o(v,{name:"star",size:10}),Number(e.vote_average).toFixed(1)]})]}),renderPopup:(n,t)=>o(g,{item:e,anchorRect:n,onMouseEnter:t.onMouseEnter,onMouseLeave:t.onMouseLeave,onRequestClose:t.close})})}),p=1e3*60*5,_=e=>{const a=i(),{query:s,type:n,genre:t,year:r,sort_by:y,page:l}=e;return u({...a.tv.search.queryOptions({q:s?.trim()||"",type:n||"multi",genre:t||"",year:r&&r!=="ALL"?r:"",sortBy:y||"popularity.desc",page:l||1}),staleTime:p,retry:1})},b=(e="all",a="week",s=1,n=!0)=>{const t=i(),r=u({...t.tv.trending.queryOptions({mediaType:e,timeWindow:a,page:s}),enabled:n,staleTime:p,retry:1});return{...r,data:r.data}};export{P as T,_ as a,b as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{T as p}from"./vendor-core-DfaOB3Rn.js";import{b as c,u as i,a as n}from"./vendor-query-BBT5_sHx.js";import{o as a,K as o,q as m,t as y,ak as g}from"./index-
|
|
1
|
+
import{T as p}from"./vendor-core-DfaOB3Rn.js";import{b as c,u as i,a as n}from"./vendor-query-BBT5_sHx.js";import{o as a,K as o,q as m,t as y,ak as g}from"./index-CkZCduQZ.js";import{i as u}from"./libraryInvalidation-Cv-7EfU1.js";const q=["Watching","Completed","On-Hold","Dropped","Planned"],b=(t,e)=>g(t,e),C=(t="All",e=1,r=24)=>{const s=a();return c(s.tvLibrary.list.queryOptions({status:t,page:e,limit:r}))},T=()=>{const t=a();return c({...t.tvLibrary.ids.queryOptions(),staleTime:1e3*60})},O=t=>{const e=a();return c({...e.tvLibrary.check.queryOptions({id:t||""}),enabled:!!t,staleTime:1e3*60})},k=(t=24)=>{const e=a();return c(e.tvProgress.continueWatching.queryOptions({limit:t}))},$=t=>{const e=a();return c({...e.tvProgress.getByMedia.queryOptions({mediaId:t||""}),enabled:!!t})},f=(t,e,r)=>{const s=a();return c({...s.tvProgress.latest.queryOptions({mediaId:t||"",season:e,episode:r}),enabled:!!t,staleTime:0})},h=()=>{const t=a(),e=i();return n({mutationFn:async r=>{const{silent:s,...d}=r;return y.tvLibrary.add.mutate(d)},onSuccess:(r,s)=>{s.silent||o.success("Added to TV watchlist"),e.invalidateQueries({queryKey:[m.tvLibrary]}),e.invalidateQueries(t.tvLibrary.pathFilter())},onError:r=>{o.error(`Failed to add: ${r.message}`)}})},L=()=>{const t=a(),e=i();return n(t.tvLibrary.remove.mutationOptions({onSuccess:()=>{o.success("Removed from TV watchlist"),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to remove: ${r.message}`)}}))},R=()=>{const t=a(),e=i();return n(t.tvLibrary.setStatus.mutationOptions({onSuccess:()=>{o.success("Status updated"),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to update status: ${r.message}`)}}))},B=()=>{const t=a(),e=i();return n(t.tvProgress.save.mutationOptions({onSuccess:()=>{u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())}}))},E=()=>{const t=a(),e=i();return n(t.tvProgress.remove.mutationOptions({onSuccess:()=>{o.success("Progress reset"),u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to reset progress: ${r.message}`)}}))},I=()=>{const t=a(),e=i();return n(t.tvLibrary.batchStatus.mutationOptions({onSuccess:r=>{o.success(`Status updated for ${r.updated??0} items`),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to update statuses: ${r.message}`)}}))},A=()=>{const t=a(),e=i();return n(t.tvLibrary.removeMany.mutationOptions({onSuccess:r=>{const s=r.removed??0;o.success(`Removed ${s} ${s===1?"item":"items"} from TV watchlist`),u(e,"tv"),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to remove: ${r.message}`)}}))},w=()=>{const t=a(),e=i();return n(t.tvProgress.removeMany.mutationOptions({onSuccess:r=>{const s=r.removed??0;o.success(`Reset progress for ${s} ${s===1?"item":"items"}`),u(e,"tv",!0),e.invalidateQueries(t.tvLibrary.pathFilter()),e.invalidateQueries(t.tvProgress.pathFilter())},onError:r=>{o.error(`Failed to reset progress: ${r.message}`)}}))},M=()=>{const t=h(),e=L(),{data:r}=T(),s=p(()=>new Set(r?.ids||[]),[r]);return{toggle:v=>{const l=b(v.mediaType,v.tmdbId);s.has(l)?e.mutate(l):t.mutate({...v,poster:v.poster||""})},bookmarkedIds:s,pending:t.isPending||e.isPending}};export{q as T,L as a,E as b,O as c,M as d,B as e,R as f,h as g,f as h,$ as i,C as j,I as k,A as l,w as m,k as u};
|
package/client/dist/assets/{useWatchAlongPlayer-C1T1IqCH.js → useWatchAlongPlayer-DfbkmL7h.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{u as t,A as C,q as A,h as F,d as P,T as te,$ as ct}from"./vendor-core-DfaOB3Rn.js";import{p as M,al as lt,R as He,B as X,F as dt,a4 as se,o as ut,am as Re,q as U,ac as pt,t as ft,h as ht,a7 as mt,an as Fe,ao as gt}from"./index-
|
|
1
|
+
import{u as t,A as C,q as A,h as F,d as P,T as te,$ as ct}from"./vendor-core-DfaOB3Rn.js";import{p as M,al as lt,R as He,B as X,F as dt,a4 as se,o as ut,am as Re,q as U,ac as pt,t as ft,h as ht,a7 as mt,an as Fe,ao as gt}from"./index-CkZCduQZ.js";import{I as j}from"./vendor-icons-C1Pj_eSX.js";import{S as De,a as yt,s as G,f as ze,m as _t,h as bt,d as vt,k as St,u as wt,n as ie}from"./PlayerProvider-1nQxpPbi.js";import{u as Ct}from"./vendor-query-BBT5_sHx.js";import{i as ce,d as kt}from"./playbackCompletion-BTwrTq5S.js";const xt="_controls_1ne4g_1",Tt="_titleContainer_1ne4g_9",Lt="_scheduleInfo_1ne4g_15",Nt="_status_1ne4g_23",Pt="_nextEpisode_1ne4g_35",Bt="_watchlistBtn_1ne4g_45",At="_inList_1ne4g_73",Et="_queueBtn_1ne4g_84",It="_queueActive_1ne4g_96",$t="_modeToggleBtn_1ne4g_102",Mt="_modeToggleActive_1ne4g_109",Rt="_markWatchedBtn_1ne4g_130",Ft="_markWatchedDone_1ne4g_144",Dt="_streamPanel_1ne4g_155",Ot="_desktopEpisodeActions_1ne4g_169",qt="_sourceLoader_1ne4g_175",Ht="_episodeActions_1ne4g_188",zt="_mobileEpisodeActions_1ne4g_202",Wt="_episodeNavBtn_1ne4g_206",Vt="_primary_1ne4g_235",Kt="_secondary_1ne4g_245",Ut="_episodePickerBtn_1ne4g_249",Qt="_queueCountdown_1ne4g_253",Gt="_speedBoostBadge_1ne4g_268",jt="_videoContainer_1ne4g_299",Yt="_loadingOverlay_1ne4g_312",Xt="_loadingDots_1ne4g_326",Jt="_dot_1ne4g_331",Zt="_bounce_1ne4g_1",en="_bufferingOverlay_1ne4g_348",tn="_bufferingSpinner_1ne4g_357",nn="_spin_1ne4g_459",rn="_videoIframe_1ne4g_381",sn="_videoElementHidden_1ne4g_404",an="_upscalerCanvas_1ne4g_409",on="_upscalerActive_1ne4g_422",cn="_upscalerStatusBadge_1ne4g_426",ln="_subtitleOverlay_1ne4g_441",dn="_spinner_1ne4g_459",un="_errorOverlay_1ne4g_526",pn="_retryButton_1ne4g_536",fn="_detailsToggleBtn_1ne4g_549",hn="_descriptionSection_1ne4g_572",mn="_synopsisFlat_1ne4g_580",gn="_fullscreenActive_1ne4g_614",yn="_errorSubtext_1ne4g_657",_n="_watchedOverlay_1ne4g_680",bn="_watchedTitle_1ne4g_702",vn="_watchedSubtext_1ne4g_708",Sn="_watchedActions_1ne4g_714",wn="_watchedActionsCentered_1ne4g_732",ts={controls:xt,titleContainer:Tt,scheduleInfo:Lt,status:Nt,nextEpisode:Pt,watchlistBtn:Bt,inList:At,queueBtn:Et,queueActive:It,modeToggleBtn:$t,modeToggleActive:Mt,markWatchedBtn:Rt,markWatchedDone:Ft,streamPanel:Dt,desktopEpisodeActions:Ot,sourceLoader:qt,episodeActions:Ht,mobileEpisodeActions:zt,episodeNavBtn:Wt,primary:Vt,secondary:Kt,episodePickerBtn:Ut,queueCountdown:Qt,speedBoostBadge:Gt,videoContainer:jt,loadingOverlay:Yt,loadingDots:Xt,dot:Jt,bounce:Zt,bufferingOverlay:en,bufferingSpinner:tn,spin:nn,videoIframe:rn,videoElementHidden:sn,upscalerCanvas:an,upscalerActive:on,upscalerStatusBadge:cn,subtitleOverlay:ln,spinner:dn,errorOverlay:un,retryButton:pn,detailsToggleBtn:fn,descriptionSection:hn,synopsisFlat:mn,fullscreenActive:gn,errorSubtext:yn,watchedOverlay:_n,watchedTitle:bn,watchedSubtext:vn,watchedActions:Sn,watchedActionsCentered:wn},Cn="_playerPageLayout_1rxx0_1",kn="_noSidebar_1rxx0_15",xn="_episodeSidebar_1rxx0_19",Tn="_playerMain_1rxx0_32",Ln="_videoPlayerWrapper_1rxx0_40",Nn="_playerInfoHeader_1rxx0_56",Pn="_playerAnimeCard_1rxx0_62",Bn="_playerInfoContainer_1rxx0_74",An="_infoColumns_1rxx0_104",En="_videoTitleSection_1rxx0_134",In="_theaterMode_1rxx0_308",ns={playerPageLayout:Cn,noSidebar:kn,episodeSidebar:xn,playerMain:Tn,videoPlayerWrapper:Ln,playerInfoHeader:Nn,playerAnimeCard:Pn,playerInfoContainer:Bn,infoColumns:An,videoTitleSection:En,theaterMode:In},$n={fontSize:"subtitleFontSize",position:"subtitlePosition",bgOpacity:"subtitleBgOpacity",bgColor:"subtitleBgColor",textColor:"subtitleTextColor",edge:"subtitleEdge",bold:"subtitleBold"},Q={fontSize:1.8,position:0,bgOpacity:.5,bgColor:"#000000",textColor:"#ffffff",edge:"shadow",bold:!1},fe=(e,n,s)=>Math.max(n,Math.min(s,e)),he=e=>typeof e=="string"&&/^#[0-9a-fA-F]{6}$/.test(e),le=(e,n,s,o)=>{try{const r=M.getItem(e);if(r===null)return n;const c=parseFloat(r);return Number.isFinite(c)?fe(c,s,o):n}catch{return n}};function Mn(){let e=Q.edge,n=Q.bgColor,s=Q.textColor,o=Q.bold;try{const r=M.getItem("subtitleEdge");(r==="shadow"||r==="outline"||r==="none")&&(e=r);const c=M.getItem("subtitleBgColor");he(c)&&(n=c);const i=M.getItem("subtitleTextColor");he(i)&&(s=i);const d=M.getItem("subtitleBold");d!==null&&(o=d==="true")}catch{}return{fontSize:le("subtitleFontSize",Q.fontSize,.5,10),position:le("subtitlePosition",Q.position,0,100),bgOpacity:le("subtitleBgOpacity",Q.bgOpacity,0,1),bgColor:n,textColor:s,edge:e,bold:o}}function We(e,n){const s=`rgba(0, 0, 0, ${fe(n,0,1)})`;if(!he(e))return s;const o=parseInt(e.slice(1,3),16),r=parseInt(e.slice(3,5),16),c=parseInt(e.slice(5,7),16);return`rgba(${o}, ${r}, ${c}, ${fe(n,0,1)})`}function Ve(e,n){return e==="none"?n<=0?"0 1px 3px rgba(0, 0, 0, 0.9)":"none":e==="outline"?["-1px 0 0 black","1px 0 0 black","0 -1px 0 black","0 1px 0 black","-1px -1px 0 black","1px -1px 0 black","-1px 1px 0 black","1px 1px 0 black","0 0 6px rgba(0, 0, 0, 0.9)"].join(", "):"0 0 4px black, 0 1px 2px rgba(0, 0, 0, 0.8)"}function rs(e){return`
|
|
2
2
|
video::cue {
|
|
3
3
|
font-size: ${e.fontSize}rem !important;
|
|
4
4
|
color: ${e.textColor} !important;
|
package/client/dist/index.html
CHANGED
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
background-color: #0c0d12;
|
|
34
34
|
}
|
|
35
35
|
</style>
|
|
36
|
-
<script type="module" crossorigin src="/assets/index-
|
|
36
|
+
<script type="module" crossorigin src="/assets/index-CkZCduQZ.js"></script>
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assets/vendor-core-DfaOB3Rn.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assets/vendor-query-BBT5_sHx.js">
|
|
39
39
|
<link rel="modulepreload" crossorigin href="/assets/vendor-icons-C1Pj_eSX.js">
|
|
40
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
40
|
+
<link rel="stylesheet" crossorigin href="/assets/index-BBbcJwUD.css">
|
|
41
41
|
</head>
|
|
42
42
|
|
|
43
43
|
<body>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serifpersia/dango",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.4",
|
|
4
4
|
"description": "A web application for watching anime.",
|
|
5
5
|
"main": "orchestrator.js",
|
|
6
6
|
"repository": {
|
|
@@ -69,5 +69,5 @@
|
|
|
69
69
|
"allowScripts": {
|
|
70
70
|
"esbuild@0.28.2": true
|
|
71
71
|
},
|
|
72
|
-
"versionDate": "2026-11-
|
|
72
|
+
"versionDate": "2026-11-10T20:40:14.394Z"
|
|
73
73
|
}
|