music-assistant-frontend 2.17.4__py3-none-any.whl → 2.17.5__py3-none-any.whl
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.
Potentially problematic release.
This version of music-assistant-frontend might be problematic. Click here for more details.
- music_assistant_frontend/assets/{AddManualLink.vue_vue_type_script_setup_true_lang-kxwUVkED.js → AddManualLink.vue_vue_type_script_setup_true_lang-CGEpxTTT.js} +1 -1
- music_assistant_frontend/assets/{AddPlayerGroup-C6XcpXBh.js → AddPlayerGroup-BC_mCSH5.js} +1 -1
- music_assistant_frontend/assets/{AddProviderDetails-C295bF6-.js → AddProviderDetails-3oezkZps.js} +1 -1
- music_assistant_frontend/assets/{AlbumDetails-AF0cKdVx.js → AlbumDetails-BodOa6vh.js} +1 -1
- music_assistant_frontend/assets/{ArtistDetails-BwH-cwmR.js → ArtistDetails-X_sAm209.js} +1 -1
- music_assistant_frontend/assets/{AudiobookDetails-CLLRvhXy.js → AudiobookDetails-CTlw9Mku.js} +1 -1
- music_assistant_frontend/assets/{BrowseView-CQIBxLhO.js → BrowseView-C2uPqmFw.js} +1 -1
- music_assistant_frontend/assets/{Button-BiuiCq9K.js → Button-BDPKHRLH.js} +1 -1
- music_assistant_frontend/assets/{Container-D4Ogy7z9.js → Container-BzMt4Ci6.js} +1 -1
- music_assistant_frontend/assets/{CoreConfigs-cQNhtHGx.js → CoreConfigs-CD9NPbEj.js} +1 -1
- music_assistant_frontend/assets/{Default-Ba2qZmiM.js → Default-hx7sYIdp.js} +8 -8
- music_assistant_frontend/assets/{Default-5BZuh_8i.css → Default-zjB00q1u.css} +1 -1
- music_assistant_frontend/assets/{EditConfig-DbCOrXkK.js → EditConfig-D2N2apVH.js} +1 -1
- music_assistant_frontend/assets/{EditCoreConfig-DEEXHqXQ.js → EditCoreConfig-wpqWcLSg.js} +1 -1
- music_assistant_frontend/assets/{EditPlayer-CGV-7cHQ.js → EditPlayer-fc5FMPeL.js} +1 -1
- music_assistant_frontend/assets/{EditPlayerDsp-DOVmvUBT.js → EditPlayerDsp-JhqzMnHq.js} +1 -1
- music_assistant_frontend/assets/{EditProvider-B6Fh1ycC.js → EditProvider-3jzljbeF.js} +1 -1
- music_assistant_frontend/assets/{FrontendConfig-4FtoFmNp.js → FrontendConfig-ChjR-9w1.js} +1 -1
- music_assistant_frontend/assets/{HomeView-C5tnXrti.js → HomeView-DJQiwYXZ.js} +1 -1
- music_assistant_frontend/assets/{ItemsListing-C2C_3ujO.js → ItemsListing-DTH9nBqi.js} +1 -1
- music_assistant_frontend/assets/{LibraryAlbums-BHu0DU9S.js → LibraryAlbums-B9vOda-Z.js} +1 -1
- music_assistant_frontend/assets/{LibraryArtists-4y1xd3nO.js → LibraryArtists-wtbMKw36.js} +1 -1
- music_assistant_frontend/assets/{LibraryAudiobooks-BDgG02xK.js → LibraryAudiobooks-Ci4jfGfT.js} +1 -1
- music_assistant_frontend/assets/{LibraryPlaylists-DH3q1Zwk.js → LibraryPlaylists-BxNgXF5r.js} +1 -1
- music_assistant_frontend/assets/{LibraryPodcasts-DWqvuLRz.js → LibraryPodcasts-DR1a1S-I.js} +1 -1
- music_assistant_frontend/assets/{LibraryRadios-DYC6uF9d.js → LibraryRadios-DXusdFKm.js} +1 -1
- music_assistant_frontend/assets/{LibraryTracks-CZm8xcYl.js → LibraryTracks-BoJMhgLL.js} +1 -1
- music_assistant_frontend/assets/{ListItem-BMXeiBV0.js → ListItem-DQin6AeB.js} +1 -1
- music_assistant_frontend/assets/{MediaItemImages-Bl-p8vtI.js → MediaItemImages-DzTEmdw0.js} +1 -1
- music_assistant_frontend/assets/{MediaItemThumb-Dt1hwIFc.js → MediaItemThumb-BKmjY3cv.js} +1 -1
- music_assistant_frontend/assets/{NowPlayingBadge.vue_vue_type_style_index_0_lang-975ZyY3S.js → NowPlayingBadge.vue_vue_type_style_index_0_lang-rRluqShO.js} +1 -1
- music_assistant_frontend/assets/{PanelviewItemCompact-BalKOXSe.js → PanelviewItemCompact-B9m_eVXB.js} +1 -1
- music_assistant_frontend/assets/{PlayerCard-CJIPDZQP.js → PlayerCard-BB691wcK.js} +1 -1
- music_assistant_frontend/assets/{Players-DjmACQHT.js → Players-BaZqIJLo.js} +1 -1
- music_assistant_frontend/assets/{PlaylistDetails-DsBvMpIS.js → PlaylistDetails-ellNUJb9.js} +1 -1
- music_assistant_frontend/assets/{PodcastDetails-D1fiYGMS.js → PodcastDetails-BpFx3aHs.js} +1 -1
- music_assistant_frontend/assets/{ProviderDetails.vue_vue_type_script_setup_true_lang-BBDEpbrr.js → ProviderDetails.vue_vue_type_script_setup_true_lang-CNd2Ys0f.js} +1 -1
- music_assistant_frontend/assets/{Providers-BXs0H1QK.js → Providers-BrJAiXeB.js} +1 -1
- music_assistant_frontend/assets/RadioDetails-CMzghv57.js +1 -0
- music_assistant_frontend/assets/{Search-CO2poyLJ.js → Search-DUFm6VsG.js} +1 -1
- music_assistant_frontend/assets/{Settings-DujVSi5K.js → Settings-DB3ao26r.js} +1 -1
- music_assistant_frontend/assets/{Toolbar-BoPIHgKr.js → Toolbar-B0keKpNj.js} +1 -1
- music_assistant_frontend/assets/{TrackDetails-BI4mbDK7.js → TrackDetails-DMKpGw7o.js} +1 -1
- music_assistant_frontend/assets/{VAlert-DFCGfYqG.js → VAlert-C67nJg0B.js} +1 -1
- music_assistant_frontend/assets/{VBtn-CSPvubWm.js → VBtn-hyLqVrgl.js} +1 -1
- music_assistant_frontend/assets/{VContainer-Ca5K8xDk.js → VContainer-DlTgmJKi.js} +1 -1
- music_assistant_frontend/assets/{VDialog-CGsvDHVp.js → VDialog-ByOT2kqj.js} +1 -1
- music_assistant_frontend/assets/{VExpansionPanels-DEX_OiAA.js → VExpansionPanels-DWM5Druz.js} +1 -1
- music_assistant_frontend/assets/{VForm-BGGj3phW.js → VForm-CLAWyhm4.js} +1 -1
- music_assistant_frontend/assets/{VInfiniteScroll-CXRIWgpy.js → VInfiniteScroll--D1O9T4-.js} +1 -1
- music_assistant_frontend/assets/{VInput-DkB9U5qk.js → VInput-BoZgh6ys.js} +1 -1
- music_assistant_frontend/assets/{VRow-BJslpuIE.js → VRow-CLgWC1Pi.js} +1 -1
- music_assistant_frontend/assets/{VSlider-fAOLkzI7.js → VSlider-uPMiub_7.js} +1 -1
- music_assistant_frontend/assets/VSpacer-C76jgahG.js +1 -0
- music_assistant_frontend/assets/{VSwitch-Ce26WVSl.js → VSwitch-zGksdPpH.js} +1 -1
- music_assistant_frontend/assets/{VTextField-DQF4-MrD.js → VTextField-DbD7hU_y.js} +1 -1
- music_assistant_frontend/assets/{VToolbar-B1WqGNGI.js → VToolbar-CJXC56GW.js} +1 -1
- music_assistant_frontend/assets/{VVirtualScroll-X5Y5sbII.js → VVirtualScroll-CSh2i2e_.js} +1 -1
- music_assistant_frontend/assets/{WidgetRow-a1VJ-2je.js → WidgetRow-CXKUuJvo.js} +1 -1
- music_assistant_frontend/assets/{index-DAuB1RBy.js → index-CoB_2BUd.js} +2 -2
- music_assistant_frontend/assets/{layout-BhhPaega.js → layout-CPyFIpzx.js} +1 -1
- music_assistant_frontend/assets/{marquee_text_sync-DWSEhTDO.js → marquee_text_sync-IliXMDRi.js} +1 -1
- music_assistant_frontend/index.html +1 -1
- music_assistant_frontend/sw.js +1 -1
- {music_assistant_frontend-2.17.4.dist-info → music_assistant_frontend-2.17.5.dist-info}/METADATA +1 -1
- {music_assistant_frontend-2.17.4.dist-info → music_assistant_frontend-2.17.5.dist-info}/RECORD +69 -69
- music_assistant_frontend/assets/RadioDetails-BuXNBwvq.js +0 -1
- music_assistant_frontend/assets/VSpacer-GX5iwvaY.js +0 -1
- {music_assistant_frontend-2.17.4.dist-info → music_assistant_frontend-2.17.5.dist-info}/WHEEL +0 -0
- {music_assistant_frontend-2.17.4.dist-info → music_assistant_frontend-2.17.5.dist-info}/licenses/LICENSE +0 -0
- {music_assistant_frontend-2.17.4.dist-info → music_assistant_frontend-2.17.5.dist-info}/top_level.txt +0 -0
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import{_ as _a,T as ba,V as at}from"./Toolbar-BoPIHgKr.js";import{_ as Pa,s as a,d as W,r as R,c as _,o,n as le,a as w,b as c,e as k,u as t,f as wa,w as f,F as X,g as ue,h as Q,V as Ve,i as Nt,j as ae,k as ka,t as $,l as $e,m as we,p as Ce,q as De,v as M,M as F,P as It,x as Ue,$ as J,y as lt,z as tt,A as xa,B as ce,C as de,D as Ia,E as Ge,G as me,H as j,I as Te,J as Ca,K as ke,L as $a,N as Qa,O as S,Q as Ke,R as rt,S as qe,T as ut,U as Sa,W as ct,X as Be,Y as Wt,Z as dt,a0 as mt,a1 as Ze,a2 as N,a3 as Ht,a4 as vt,a5 as Pe,a6 as Va,a7 as yt,a8 as ft,a9 as Ut,aa as ht,ab as Yt,ac as Ta,ad as ve,ae as ee,af as Xt,ag as La,ah as Ct,ai as Ma,aj as Fe,ak as Ea,al as jt,am as Aa,an as Ba,ao as Ra,ap as Da,aq as qa,ar as Fa,as as za,at as Me,au as pt,av as Oa,aw as Na,ax as Wa,ay as gt,az as Ha,aA as Gt,aB as Ua,aC as Ya,aD as K,aE as Xa,aF as ja,aG as Ga,aH as Ka,aI as Ye,aJ as Za,aK as Ja,aL as el,aM as tl,aN as al,aO as $t,aP as ll,aQ as il,aR as nl,aS as sl,aT as ol,aU as Qe,aV as re,aW as Ee,aX as Re,aY as _t,aZ as ie,a_ as Kt,a$ as he,b0 as Zt,b1 as Xe,b2 as rl,b3 as ze,b4 as Oe,b5 as je,b6 as it,b7 as Le,b8 as H,b9 as pe,ba as Jt,bb as ea,bc as nt,bd as ta,be as Qt,bf as St,bg as ul,bh as cl,bi as dl,bj as We,bk as ml,bl as Vt,bm as Tt,bn as Lt,bo as be,bp as aa,bq as vl,br as yl,bs as fl,bt as hl}from"./index-DAuB1RBy.js";import{D as pl}from"./constants-CXMxJR4j.js";import{V as _e,a as gl,m as _l,b as la}from"./VBtn-CSPvubWm.js";import{_ as se}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{M as Ae}from"./MediaItemThumb-Dt1hwIFc.js";import{V as ia}from"./VDialog-CGsvDHVp.js";import{u as bl,c as Pl,m as wl,a as bt,b as Pt}from"./layout-BhhPaega.js";import{V as kl,a as xl}from"./VInfiniteScroll-CXRIWgpy.js";import{M as Il}from"./index-kQIztB-E.js";import{m as Mt,B as ge}from"./Button-BiuiCq9K.js";import{V as Cl,P as wt,g as $l,a as Ne}from"./PlayerCard-CJIPDZQP.js";import{V as Ql}from"./VSlider-fAOLkzI7.js";import{L as Sl}from"./ListItem-BMXeiBV0.js";import{M as ne,a as st}from"./marquee_text_sync-DWSEhTDO.js";import{_ as Vl}from"./NowPlayingBadge.vue_vue_type_style_index_0_lang-975ZyY3S.js";import{V as Tl}from"./VToolbar-B1WqGNGI.js";import{V as Ll}from"./VVirtualScroll-X5Y5sbII.js";import{V as Ml,a as Et,b as At,c as Bt}from"./VExpansionPanels-DEX_OiAA.js";import"./VInput-DkB9U5qk.js";const El=se(Pa,[["__scopeId","data-v-89a5b6dd"]]),na=function(){const e=localStorage.getItem("frontend.settings.menu_items"),i=e?e.split(","):pl,l=[];for(const n of i)n==="home"&&l.push({label:"home",icon:"mdi-home-outline",path:"/home",isLibraryNode:!1}),n==="search"&&l.push({label:"search",icon:"mdi-magnify",path:"/search",isLibraryNode:!1}),n==="artists"&&l.push({label:"artists",icon:"mdi-account-outline",path:"/artists",isLibraryNode:!0,hidden:a.libraryArtistsCount===0}),n==="albums"&&l.push({label:"albums",icon:"md:album",path:"/albums",isLibraryNode:!0,hidden:a.libraryAlbumsCount===0}),n==="tracks"&&l.push({label:"tracks",icon:"mdi-music-note",path:"/tracks",isLibraryNode:!0,hidden:a.libraryTracksCount===0}),n==="playlists"&&l.push({label:"playlists",icon:"md:playlist_play",path:"/playlists",isLibraryNode:!0,hidden:a.libraryPlaylistsCount===0}),n==="podcasts"&&l.push({label:"podcasts",icon:"mdi-podcast",path:"/podcasts",isLibraryNode:!0,hidden:a.libraryPodcastsCount===0}),n==="audiobooks"&&l.push({label:"audiobooks",icon:"mdi-book-play-outline",path:"/audiobooks",isLibraryNode:!0,hidden:a.libraryAudiobooksCount===0}),n==="radios"&&l.push({label:"radios",icon:"mdi-access-point",path:"/radios",isLibraryNode:!0,hidden:a.libraryRadiosCount===0}),n==="browse"&&l.push({label:"browse",icon:"mdi-folder-outline",path:"/browse",isLibraryNode:!0}),n==="settings"&&l.push({label:"settings.settings",icon:"mdi-cog-outline",path:"/settings",isLibraryNode:!0});return l},Al={key:0,class:"sidebar-header-title"},Bl=W({__name:"Navigation",setup(e){const i=wa(),l=na(),n=localStorage.getItem("frontend.settings.collapsed"),s=R(n==="true"),r=()=>{s.value=!s.value,localStorage.setItem("frontend.settings.collapsed",s.value.toString())};return(u,m)=>(o(),_("nav",{class:le(["sidebar",{collapsed:s.value}])},[w("div",{class:"sidebar-header",onClick:m[0]||(m[0]=y=>t(i).push({name:"home"}))},[m[1]||(m[1]=w("img",{src:_a,alt:"Music Assistant",class:"sidebar-header-logo"},null,-1)),s.value?k("",!0):(o(),_("div",Al,"Music Assistant"))]),c($e,{class:"sidebar-list"},{default:f(()=>[(o(!0),_(X,null,ue(t(l),y=>(o(),Q(Ve,{key:y.label,slim:"",nav:"",class:"menuButton",to:y.path},Nt({default:f(()=>[s.value?(o(),Q(ae,{key:0,icon:y.icon,size:"24px"},null,8,["icon"])):k("",!0),s.value?k("",!0):(o(),Q(ka,{key:1,textContent:$(u.$t(y.label))},null,8,["textContent"]))]),_:2},[s.value?void 0:{name:"prepend",fn:f(()=>[c(ae,{icon:y.icon,size:"24px"},null,8,["icon"])]),key:"0"}]),1032,["to"]))),128))]),_:1}),w("div",{class:le(s.value?"d-flex justify-center":"ml-auto")},[c(_e,{icon:s.value?"mdi-dock-left":"mdi-dock-right",class:"cursor-pointer mt-1",variant:"plain",onClick:r},null,8,["icon"])],2)],2))}}),Rl=se(Bl,[["__scopeId","data-v-cc6c89ae"]]),Dl={class:"media-thumb"},ql={style:{"margin-left":"-10px","padding-right":"5px"}},Fl=W({__name:"AddToPlaylistDialog",setup(e){const i=R(!1),l=R([]),n=R([]),s=R(),r=R([]);we(()=>{Ce.on("playlistdialog",async x=>{i.value=!0,r.value=x.items,s.value=x.parentItem,await u()}),De(()=>{Ce.off("playlistdialog")})});const u=async function(){l.value=[],n.value=[];const x=await M.getLibraryPlaylists();let b=r.value.length?r.value[0]:void 0;if(b){"provider_mappings"in b||(b=await M.getItem(b.media_type,b.item_id,b.provider));for(const d of x){if(!d.provider_mappings.filter(L=>L.available).length||!d.is_editable||s.value&&s.value.media_type===F.PLAYLIST&&d.item_id===s.value.item_id)continue;const T=M.providers[d.provider_mappings[0].provider_instance];T&&(T.domain=="builtin"||T.is_streaming_provider||b?.provider_mappings.filter(L=>L.provider_instance==T.instance_id).length)&&l.value.push(d)}for(const d of Object.values(M.providers))d.supported_features.includes(It.PLAYLIST_CREATE)&&d.supported_features.includes(It.PLAYLIST_TRACKS_EDIT)&&(d.domain=="builtin"||d.is_streaming_provider||b?.provider_mappings.filter(T=>T.provider_instance==d.instance_id).length)&&n.value.push(d.instance_id)}},m=async function(x){M.addPlaylistTracks(x.item_id,r.value.map(b=>b.uri)),v(),a.activeAlert={type:xa.INFO,message:J("background_task_added"),persistent:!1}},y=async function(x){const b=prompt(J("new_playlist_name"));if(!b)return;const d=await M.createPlaylist(b,x);m(d)},v=function(){i.value=!1};return(x,b)=>(o(),Q(ia,{modelValue:i.value,"onUpdate:modelValue":[b[0]||(b[0]=d=>i.value=d),b[1]||(b[1]=d=>{t(a).dialogActive=d})],fullscreen:"",transition:"dialog-bottom-transition"},{default:f(()=>[c(Ue,null,{default:f(()=>[c(ba,{icon:"mdi-playlist-plus",title:t(J)("add_playlist"),"menu-items":[{label:"close",icon:"mdi-close",action:v}]},null,8,["title","menu-items"]),c(lt),b[4]||(b[4]=w("br",null,null,-1)),c($e,null,{default:f(()=>[(o(!0),_(X,null,ue(l.value,d=>(o(),_("div",{key:d.item_id},[c(Ve,{onClick:T=>m(d)},{prepend:f(()=>[w("div",Dl,[c(Ae,{item:d,size:50},null,8,["item"])])]),title:f(()=>[w("div",null,$(d.name),1)]),subtitle:f(()=>[w("div",null,$(d.owner),1)]),append:f(()=>[d.provider_mappings?(o(),Q(tt,{key:0,domain:d.provider_mappings[0].provider_domain,size:20},null,8,["domain"])):k("",!0)]),_:2},1032,["onClick"])]))),128)),b[2]||(b[2]=w("div",{style:{height:"30px"}},null,-1)),c(lt),b[3]||(b[3]=w("div",{style:{height:"30px"}},null,-1)),(o(!0),_(X,null,ue(n.value,d=>(o(),_("div",{key:d},[c(Ve,{onClick:T=>y(d)},{prepend:f(()=>[w("div",ql,[c(tt,{domain:t(M).providers[d].domain,size:50},null,8,["domain"])])]),title:f(()=>[w("div",null,$(t(J)("new_playlist")),1)]),subtitle:f(()=>[w("div",null,$(t(J)("create_playlist_on",[t(M).providers[d].name])),1)]),append:f(()=>[c(tt,{domain:t(M).providers[d].domain,size:20},null,8,["domain"])]),_:2},1032,["onClick"])]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]))}}),zl=se(Fl,[["__scopeId","data-v-bd014719"]]),Ol=de({scrollable:Boolean,...ke(),...Ca(),...Te({tag:"main"})},"VMain"),Nl=ce()({name:"VMain",props:Ol(),setup(e,i){let{slots:l}=i;const{dimensionStyles:n}=Ia(e),{mainStyles:s}=bl(),{ssrBootStyles:r}=Ge();return me(()=>c(e.tag,{class:le(["v-main",{"v-main--scrollable":e.scrollable},e.class]),style:j([s.value,r.value,n.value,e.style])},{default:()=>[e.scrollable?w("div",{class:"v-main__scroller"},[l.default?.()]):l.default?.()]})),{}}}),Wl={class:"content-section"},Hl=W({__name:"View",setup(e){return(i,l)=>{const n=Qa("router-view");return o(),Q(Nl,{id:"cont",class:"main-layout"},{default:f(()=>[t(a).mobileLayout?k("",!0):(o(),Q(Rl,{key:0,class:"nav-section"})),w("div",Wl,[c(n,null,{default:f(({Component:s})=>[(o(),Q($a(s)))]),_:1}),c(zl),c(El),c(kl,{"model-value":t(a).activeAlert!==void 0,color:t(a).activeAlert?.type||"grey",text:t(a).activeAlert?.message,"close-on-content-click":"",position:"sticky",timeout:t(a).activeAlert?.persistent?-1:5e3,"z-index":"999999",style:{"z-index":"999999"},"onUpdate:modelValue":l[0]||(l[0]=()=>t(a).activeAlert=void 0)},null,8,["model-value","color","text","timeout"])])]),_:1})}}}),Rt=se(Hl,[["__scopeId","data-v-1afe9eed"]]),Ul=e=>{const i=S(()=>{const{variant:r,width:u,height:m,staticWidth:y,staticHeight:v,maxWidth:x,maxHeight:b,minWidth:d,minHeight:T,badge:L,...D}=e,z={...D,size:e.size||y||void 0||v||void 0||(e.maxHeight?e.maxHeight:void 0)||(e.maxWidth?e.maxWidth:void 0)||"24px"};return Il(r).with("button",()=>({...z,class:e.class?`icon-button ${e.class}`:"icon-button"})).with("responsive",()=>({...z,class:e.class?`icon-responsive ${e.class}`:"icon-responsive"})).with("default",()=>({...z,class:e.class?`icon-default ${e.class}`:"icon-default"})).otherwise(()=>({...z,class:e.class?`icon-default ${e.class}`:"icon-default"}))}),l=S(()=>{const r={};if(e.staticWidth?r.width=e.staticWidth:e.width&&(r.width=e.width),e.staticHeight?r.height=e.staticHeight:e.height&&(r.height=e.height),e.maxWidth&&(r.maxWidth=e.maxWidth),e.maxHeight&&(r.maxHeight=e.maxHeight),e.minWidth&&(r.minWidth=e.minWidth),e.minHeight&&(r.minHeight=e.minHeight),typeof e.style=="object")Object.assign(r,e.style);else if(typeof e.style=="string"){const u=e.style.split(";").reduce((m,y)=>{const[v,x]=y.split(":").map(b=>b.trim());return v&&x&&(m[v]=x),m},{});Object.assign(r,u)}return r}),n=S(()=>Mt("icon-container",e.variant&&`icon-container--${e.variant}`,e.disabled&&"icon-container--disabled")),s=S(()=>Mt("icon",e.variant&&`icon--${e.variant}`));return{iconProps:i,containerStyle:l,containerClasses:n,iconClasses:s}},Yl={variant:"default",minWidth:"24px",minHeight:"24px",badge:!1,disabled:!1},Xl=de({...ke(),...ut(wl(),["fullHeight"]),...qe()},"VApp"),jl=ce()({name:"VApp",props:Xl(),setup(e,i){let{slots:l}=i;const n=Ke(e),{layoutClasses:s,getLayoutItem:r,items:u,layoutRef:m}=Pl({...e,fullHeight:!0}),{rtlClasses:y}=rt();return me(()=>w("div",{ref:m,class:le(["v-application",n.themeClasses.value,s.value,y.value,e.class]),style:j([e.style])},[w("div",{class:"v-application__wrap"},[l.default?.()])])),{getLayoutItem:r,items:u,theme:n}}}),Gl=de({baseColor:String,bgColor:String,color:String,grow:Boolean,mode:{type:String,validator:e=>!e||["horizontal","shift"].includes(e)},height:{type:[Number,String],default:56},active:{type:Boolean,default:!0},...ht(),...ke(),...Ut(),...ft(),...yt(),...Pt({name:"bottom-navigation"}),...Te({tag:"header"}),...Va({selectedClass:"v-btn--selected"}),...qe()},"VBottomNavigation"),Kl=ce()({name:"VBottomNavigation",props:Gl(),emits:{"update:active":e=>!0,"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const{themeClasses:n}=Sa(),{borderClasses:s}=ct(e),{backgroundColorClasses:r,backgroundColorStyles:u}=Be(()=>e.bgColor),{densityClasses:m}=Wt(e),{elevationClasses:y}=dt(e),{roundedClasses:v}=mt(e),{ssrBootStyles:x}=Ge(),b=S(()=>Number(e.height)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0)),d=Ze(e,"active",e.active),{layoutItemStyles:T}=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:N(()=>"bottom"),layoutSize:N(()=>d.value?b.value:0),elementSize:b,active:d,absolute:N(()=>e.absolute)});return Ht(e,gl),vt({VBtn:{baseColor:N(()=>e.baseColor),color:N(()=>e.color),density:N(()=>e.density),stacked:N(()=>e.mode!=="horizontal"),variant:"text"}},{scoped:!0}),me(()=>c(e.tag,{class:le(["v-bottom-navigation",{"v-bottom-navigation--active":d.value,"v-bottom-navigation--grow":e.grow,"v-bottom-navigation--shift":e.mode==="shift"},n.value,r.value,s.value,m.value,y.value,v.value,e.class]),style:j([u.value,T.value,{height:Pe(b.value)},x.value,e.style])},{default:()=>[l.default&&w("div",{class:"v-bottom-navigation__content"},[l.default()])]})),{}}}),Zl=e=>{const{touchstartX:i,touchendX:l,touchstartY:n,touchendY:s}=e,r=.5,u=16;e.offsetX=l-i,e.offsetY=s-n,Math.abs(e.offsetY)<r*Math.abs(e.offsetX)&&(e.left&&l<i-u&&e.left(e),e.right&&l>i+u&&e.right(e)),Math.abs(e.offsetX)<r*Math.abs(e.offsetY)&&(e.up&&s<n-u&&e.up(e),e.down&&s>n+u&&e.down(e))};function Jl(e,i){const l=e.changedTouches[0];i.touchstartX=l.clientX,i.touchstartY=l.clientY,i.start?.({originalEvent:e,...i})}function ei(e,i){const l=e.changedTouches[0];i.touchendX=l.clientX,i.touchendY=l.clientY,i.end?.({originalEvent:e,...i}),Zl(i)}function ti(e,i){const l=e.changedTouches[0];i.touchmoveX=l.clientX,i.touchmoveY=l.clientY,i.move?.({originalEvent:e,...i})}function ai(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const i={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:l=>Jl(l,i),touchend:l=>ei(l,i),touchmove:l=>ti(l,i)}}function li(e,i){const l=i.value,n=l?.parent?e.parentElement:e,s=l?.options??{passive:!0},r=i.instance?.$.uid;if(!n||r===void 0)return;const u=ai(i.value);n._touchHandlers=n._touchHandlers??Object.create(null),n._touchHandlers[r]=u,Yt(u).forEach(m=>{n.addEventListener(m,u[m],s)})}function ii(e,i){const l=i.value?.parent?e.parentElement:e,n=i.instance?.$.uid;if(!l?._touchHandlers||n===void 0)return;const s=l._touchHandlers[n];Yt(s).forEach(r=>{l.removeEventListener(r,s[r])}),delete l._touchHandlers[n]}const ot={mounted:li,unmounted:ii},sa=Symbol.for("vuetify:v-window"),oa=Symbol.for("vuetify:v-window-group"),ra=de({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},verticalArrows:[Boolean,String],touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},crossfade:Boolean,transitionDuration:Number,...ke(),...Te(),...qe()},"VWindow"),Dt=ce()({name:"VWindow",directives:{vTouch:ot},props:ra(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const{themeClasses:n}=Ke(e),{isRtl:s}=rt(),{t:r}=Ta(),u=Ht(e,oa),m=R(),y=S(()=>s.value?!e.reverse:e.reverse),v=ve(!1),x=S(()=>{if(e.crossfade)return"v-window-crossfade-transition";const E=e.direction==="vertical"?"y":"x",h=(y.value?!v.value:v.value)?"-reverse":"";return`v-window-${E}${h}-transition`}),b=ve(0),d=R(void 0),T=S(()=>u.items.value.findIndex(E=>u.selected.value.includes(E.id)));ee(T,(E,p)=>{let h;const I={left:0,top:0};Ct&&p>=0&&(h=Ma(m.value),I.left=h?.scrollLeft,I.top=h?.scrollTop);const V=u.items.value.length,B=V-1;V<=2?v.value=E<p:E===B&&p===0?v.value=!0:E===0&&p===B?v.value=!1:v.value=E<p,Fe(()=>{if(!Ct||!h)return;h.scrollTop!==I.top&&h.scrollTo({...I,behavior:"instant"}),requestAnimationFrame(()=>{if(!h)return;h.scrollTop!==I.top&&h.scrollTo({...I,behavior:"instant"})})})},{flush:"sync"}),Ea(sa,{transition:x,isReversed:v,transitionCount:b,transitionHeight:d,rootRef:m});const L=N(()=>e.continuous||T.value!==0),D=N(()=>e.continuous||T.value!==u.items.value.length-1);function z(){L.value&&u.prev()}function U(){D.value&&u.next()}const G=S(()=>{const E=[],p={icon:s.value?e.nextIcon:e.prevIcon,class:`v-window__${y.value?"right":"left"}`,onClick:u.prev,"aria-label":r("$vuetify.carousel.prev")};E.push(L.value?l.prev?l.prev({props:p}):c(_e,p,null):w("div",null,null));const h={icon:s.value?e.prevIcon:e.nextIcon,class:`v-window__${y.value?"left":"right"}`,onClick:u.next,"aria-label":r("$vuetify.carousel.next")};return E.push(D.value?l.next?l.next({props:h}):c(_e,h,null):w("div",null,null)),E}),A=S(()=>e.touch===!1?e.touch:{...{left:()=>{y.value?z():U()},right:()=>{y.value?U():z()},start:p=>{let{originalEvent:h}=p;h.stopPropagation()}},...e.touch===!0?{}:e.touch});return me(()=>Xt(c(e.tag,{ref:m,class:le(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover","v-window--vertical-arrows":!!e.verticalArrows,"v-window--crossfade":!!e.crossfade},n.value,e.class]),style:j([e.style,e.transitionDuration&&!La?{"--v-window-transition-duration":Pe(e.transitionDuration,"ms")}:void 0])},{default:()=>[w("div",{class:"v-window__container",style:{height:d.value}},[l.default?.({group:u}),e.showArrows!==!1&&w("div",{class:le(["v-window__controls",{"v-window__controls--left":e.verticalArrows==="left"||e.verticalArrows===!0},{"v-window__controls--right":e.verticalArrows==="right"}])},[G.value])]),l.additional?.({group:u})]}),[[ot,A.value]])),{group:u}}}),ua=de({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...ke(),...Fa(),...qa()},"VWindowItem"),qt=ce()({name:"VWindowItem",directives:{vTouch:ot},props:ua(),emits:{"group:selected":e=>!0},setup(e,i){let{slots:l}=i;const n=jt(sa),s=Aa(e,oa),{isBooted:r}=Ge();if(!n||!s)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const u=ve(!1),m=S(()=>r.value&&(n.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function y(){!u.value||!n||(u.value=!1,n.transitionCount.value>0&&(n.transitionCount.value-=1,n.transitionCount.value===0&&(n.transitionHeight.value=void 0)))}function v(){u.value||!n||(u.value=!0,n.transitionCount.value===0&&(n.transitionHeight.value=Pe(n.rootRef.value?.clientHeight)),n.transitionCount.value+=1)}function x(){y()}function b(L){u.value&&Fe(()=>{!m.value||!u.value||!n||(n.transitionHeight.value=Pe(L.clientHeight))})}const d=S(()=>{const L=n.isReversed.value?e.reverseTransition:e.transition;return m.value?{name:typeof L!="string"?n.transition.value:L,onBeforeEnter:v,onAfterEnter:y,onEnterCancelled:x,onBeforeLeave:v,onAfterLeave:y,onLeaveCancelled:x,onEnter:b}:!1}),{hasContent:T}=Ba(e,s.isSelected);return me(()=>c(Da,{transition:d.value,disabled:!r.value},{default:()=>[Xt(w("div",{class:le(["v-window-item",s.selectedClass.value,e.class]),style:j(e.style)},[T.value&&l.default?.()]),[[Ra,s.isSelected.value]])]})),{groupItem:s}}}),ni=de({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ht(),...ke(),...ft(),...Pt(),...yt(),...Te({tag:"footer"}),...qe()},"VFooter"),si=ce()({name:"VFooter",props:ni(),setup(e,i){let{slots:l}=i;const n=R(),{themeClasses:s}=Ke(e),{backgroundColorClasses:r,backgroundColorStyles:u}=Be(()=>e.color),{borderClasses:m}=ct(e),{elevationClasses:y}=dt(e),{roundedClasses:v}=mt(e),x=ve(32),{resizeRef:b}=za(T=>{T.length&&(x.value=T[0].target.clientHeight)}),d=S(()=>e.height==="auto"?x.value:parseInt(e.height,10));return Me(()=>e.app,()=>{const T=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:N(()=>"bottom"),layoutSize:d,elementSize:S(()=>e.height==="auto"?void 0:d.value),active:N(()=>e.app),absolute:N(()=>e.absolute)});pt(()=>{n.value=T.layoutItemStyles.value})}),me(()=>c(e.tag,{ref:b,class:le(["v-footer",s.value,r.value,m.value,y.value,v.value,e.class]),style:j([u.value,e.app?n.value:{height:Pe(e.height)},e.style])},l)),{}}});function oi(e){let{rootEl:i,isSticky:l,layoutItemStyles:n}=e;const s=ve(!1),r=ve(0),u=S(()=>{const v=typeof s.value=="boolean"?"top":s.value;return[l.value?{top:"auto",bottom:"auto",height:void 0}:void 0,s.value?{[v]:Pe(r.value)}:{top:n.value.top}]});we(()=>{ee(l,v=>{v?window.addEventListener("scroll",y,{passive:!0}):window.removeEventListener("scroll",y)},{immediate:!0})}),De(()=>{window.removeEventListener("scroll",y)});let m=0;function y(){const v=m>window.scrollY?"up":"down",x=i.value.getBoundingClientRect(),b=parseFloat(n.value.top??0),d=window.scrollY-Math.max(0,r.value-b),T=x.height+Math.max(r.value,b)-window.scrollY-window.innerHeight,L=parseFloat(getComputedStyle(i.value).getPropertyValue("--v-body-scroll-y"))||0;x.height<window.innerHeight-b?(s.value="top",r.value=b):v==="up"&&s.value==="bottom"||v==="down"&&s.value==="top"?(r.value=window.scrollY+x.top-L,s.value=!0):v==="down"&&T<=0?(r.value=0,s.value="bottom"):v==="up"&&d<=0&&(L?s.value!=="top"&&(r.value=-d+L+b,s.value="top"):(r.value=x.top+d,s.value="top")),m=window.scrollY}return{isStuck:s,stickyStyles:u}}const ri=100,ui=20;function Ft(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function zt(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let i=0;for(let l=e.length-1;l>0;l--){if(e[l].t===e[l-1].t)continue;const n=Ft(i),s=(e[l].d-e[l-1].d)/(e[l].t-e[l-1].t);i+=(s-n)*Math.abs(s),l===e.length-1&&(i*=.5)}return Ft(i)*1e3}function ci(){const e={};function i(s){Array.from(s.changedTouches).forEach(r=>{(e[r.identifier]??(e[r.identifier]=new Oa(ui))).push([s.timeStamp,r])})}function l(s){Array.from(s.changedTouches).forEach(r=>{delete e[r.identifier]})}function n(s){const r=e[s]?.values().reverse();if(!r)throw new Error(`No samples for touch id ${s}`);const u=r[0],m=[],y=[];for(const v of r){if(u[0]-v[0]>ri)break;m.push({t:v[0],d:v[1].clientX}),y.push({t:v[0],d:v[1].clientY})}return{x:zt(m),y:zt(y),get direction(){const{x:v,y:x}=this,[b,d]=[Math.abs(v),Math.abs(x)];return b>d&&v>=0?"right":b>d&&v<=0?"left":d>b&&x>=0?"down":d>b&&x<=0?"up":di()}}}return{addMovement:i,endTouch:l,getVelocity:n}}function di(){throw new Error}function mi(e){let{el:i,isActive:l,isTemporary:n,width:s,touchless:r,position:u}=e;we(()=>{window.addEventListener("touchstart",G,{passive:!0}),window.addEventListener("touchmove",A,{passive:!1}),window.addEventListener("touchend",E,{passive:!0})}),De(()=>{window.removeEventListener("touchstart",G),window.removeEventListener("touchmove",A),window.removeEventListener("touchend",E)});const m=S(()=>["left","right"].includes(u.value)),{addMovement:y,endTouch:v,getVelocity:x}=ci();let b=!1;const d=ve(!1),T=ve(0),L=ve(0);let D;function z(h,I){return(u.value==="left"?h:u.value==="right"?document.documentElement.clientWidth-h:u.value==="top"?h:u.value==="bottom"?document.documentElement.clientHeight-h:Ie())-(I?s.value:0)}function U(h){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const V=u.value==="left"?(h-L.value)/s.value:u.value==="right"?(document.documentElement.clientWidth-h-L.value)/s.value:u.value==="top"?(h-L.value)/s.value:u.value==="bottom"?(document.documentElement.clientHeight-h-L.value)/s.value:Ie();return I?Na(V):V}function G(h){if(r.value)return;const I=h.changedTouches[0].clientX,V=h.changedTouches[0].clientY,B=25,q=u.value==="left"?I<B:u.value==="right"?I>document.documentElement.clientWidth-B:u.value==="top"?V<B:u.value==="bottom"?V>document.documentElement.clientHeight-B:Ie(),P=l.value&&(u.value==="left"?I<s.value:u.value==="right"?I>document.documentElement.clientWidth-s.value:u.value==="top"?V<s.value:u.value==="bottom"?V>document.documentElement.clientHeight-s.value:Ie());(q||P||l.value&&n.value)&&(D=[I,V],L.value=z(m.value?I:V,l.value),T.value=U(m.value?I:V),b=L.value>-20&&L.value<80,v(h),y(h))}function A(h){const I=h.changedTouches[0].clientX,V=h.changedTouches[0].clientY;if(b){if(!h.cancelable){b=!1;return}const q=Math.abs(I-D[0]),P=Math.abs(V-D[1]);(m.value?q>P&&q>3:P>q&&P>3)?(d.value=!0,b=!1):(m.value?P:q)>3&&(b=!1)}if(!d.value)return;h.preventDefault(),y(h);const B=U(m.value?I:V,!1);T.value=Math.max(0,Math.min(1,B)),B>1?L.value=z(m.value?I:V,!0):B<0&&(L.value=z(m.value?I:V,!1))}function E(h){if(b=!1,!d.value)return;y(h),d.value=!1;const I=x(h.changedTouches[0].identifier),V=Math.abs(I.x),B=Math.abs(I.y);(m.value?V>B&&V>400:B>V&&B>3)?l.value=I.direction===({left:"right",right:"left",top:"down",bottom:"up"}[u.value]||Ie()):l.value=T.value>.5}const p=S(()=>d.value?{transform:u.value==="left"?`translateX(calc(-100% + ${T.value*s.value}px))`:u.value==="right"?`translateX(calc(100% - ${T.value*s.value}px))`:u.value==="top"?`translateY(calc(-100% + ${T.value*s.value}px))`:u.value==="bottom"?`translateY(calc(100% - ${T.value*s.value}px))`:Ie(),transition:"none"}:void 0);return Me(d,()=>{const h=i.value?.style.transform??null,I=i.value?.style.transition??null;pt(()=>{i.value?.style.setProperty("transform",p.value?.transform||"none"),i.value?.style.setProperty("transition",p.value?.transition||null)}),Wa(()=>{i.value?.style.setProperty("transform",h),i.value?.style.setProperty("transition",I)})}),{isDragging:d,dragProgress:T,dragStyles:p}}function Ie(){throw new Error}const vi=["start","end","left","right","top","bottom"],yi=de({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>vi.includes(e)},sticky:Boolean,...ht(),...ke(),...Ka(),...Ga({mobile:null}),...ft(),...Pt(),...yt(),...Te({tag:"nav"}),...qe()},"VNavigationDrawer"),fi=ce()({name:"VNavigationDrawer",props:yi(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,i){let{attrs:l,emit:n,slots:s}=i;const{isRtl:r}=rt(),{themeClasses:u}=Ke(e),{borderClasses:m}=ct(e),{backgroundColorClasses:y,backgroundColorStyles:v}=Be(()=>e.color),{elevationClasses:x}=dt(e),{displayClasses:b,mobile:d}=gt(e),{roundedClasses:T}=mt(e),L=Ha(),D=Ze(e,"modelValue",null,Y=>!!Y),{ssrBootStyles:z}=Ge(),{scopeId:U}=Gt(),G=R(),A=ve(!1),{runOpenDelay:E,runCloseDelay:p}=Xa(e,Y=>{A.value=Y}),h=S(()=>e.rail&&e.expandOnHover&&A.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),I=S(()=>Ua(e.location,r.value)),V=N(()=>e.persistent),B=S(()=>!e.permanent&&(d.value||e.temporary)),q=S(()=>e.sticky&&!B.value&&I.value!=="bottom");Me(()=>e.expandOnHover&&e.rail!=null,()=>{ee(A,Y=>n("update:rail",!Y))}),Me(()=>!e.disableResizeWatcher,()=>{ee(B,Y=>!e.permanent&&Fe(()=>D.value=!Y))}),Me(()=>!e.disableRouteWatcher&&!!L,()=>{ee(L.currentRoute,()=>B.value&&(D.value=!1))}),ee(()=>e.permanent,Y=>{Y&&(D.value=!0)}),e.modelValue==null&&!B.value&&(D.value=e.permanent||!d.value);const{isDragging:P,dragProgress:g}=mi({el:G,isActive:D,isTemporary:B,width:h,touchless:N(()=>e.touchless),position:I}),C=S(()=>{const Y=B.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):h.value;return P.value?Y*g.value:Y}),{layoutItemStyles:O,layoutItemScrimStyles:Z}=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:I,layoutSize:C,elementSize:h,active:Ya(D),disableTransitions:N(()=>P.value),absolute:S(()=>e.absolute||q.value&&typeof te.value!="string")}),{isStuck:te,stickyStyles:ye}=oi({rootEl:G,isSticky:q,layoutItemStyles:O}),oe=Be(()=>typeof e.scrim=="string"?e.scrim:null),fe=S(()=>({...P.value?{opacity:g.value*.2,transition:"none"}:void 0,...Z.value}));return vt({VList:{bgColor:"transparent"}}),me(()=>{const Y=s.image||e.image;return w(X,null,[c(e.tag,K({ref:G,onMouseenter:E,onMouseleave:p,class:["v-navigation-drawer",`v-navigation-drawer--${I.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":A.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":B.value,"v-navigation-drawer--persistent":V.value,"v-navigation-drawer--active":D.value,"v-navigation-drawer--sticky":q.value},u.value,y.value,m.value,b.value,x.value,T.value,e.class],style:[v.value,O.value,z.value,ye.value,e.style]},U,l),{default:()=>[Y&&w("div",{key:"image",class:"v-navigation-drawer__img"},[s.image?c(Za,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},s.image):c(Ye,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),s.prepend&&w("div",{class:"v-navigation-drawer__prepend"},[s.prepend?.()]),w("div",{class:"v-navigation-drawer__content"},[s.default?.()]),s.append&&w("div",{class:"v-navigation-drawer__append"},[s.append?.()])]}),c(ja,{name:"fade-transition"},{default:()=>[B.value&&(P.value||D.value)&&!!e.scrim&&w("div",K({class:["v-navigation-drawer__scrim",oe.backgroundColorClasses.value],style:[fe.value,oe.backgroundColorStyles.value],onClick:()=>{V.value||(D.value=!1)}},U),null)]})])}),{isStuck:te}}}),kt=Symbol.for("vuetify:v-tabs"),ca=de({fixed:Boolean,sliderColor:String,hideSlider:Boolean,direction:{type:String,default:"horizontal"},...ut(_l({selectedClass:"v-tab--selected",variant:"text"}),["active","block","flat","location","position","symbol"])},"VTab"),He=ce()({name:"VTab",props:ca(),setup(e,i){let{slots:l,attrs:n}=i;const{textColorClasses:s,textColorStyles:r}=Ja(()=>e.sliderColor),u=R(),m=R(),y=S(()=>e.direction==="horizontal"),v=S(()=>u.value?.group?.isSelected.value??!1);function x(b){let{value:d}=b;if(d){const T=u.value?.$el.parentElement?.querySelector(".v-tab--selected .v-tab__slider"),L=m.value;if(!T||!L)return;const D=getComputedStyle(T).color,z=T.getBoundingClientRect(),U=L.getBoundingClientRect(),G=y.value?"x":"y",A=y.value?"X":"Y",E=y.value?"right":"bottom",p=y.value?"width":"height",h=z[G],I=U[G],V=h>I?z[E]-U[E]:z[G]-U[G],B=Math.sign(V)>0?y.value?"right":"bottom":Math.sign(V)<0?y.value?"left":"top":"center",P=(Math.abs(V)+(Math.sign(V)<0?z[p]:U[p]))/Math.max(z[p],U[p])||0,g=z[p]/U[p]||0,C=1.5;tl(L,{backgroundColor:[D,"currentcolor"],transform:[`translate${A}(${V}px) scale${A}(${g})`,`translate${A}(${V/C}px) scale${A}(${(P-1)/C+1})`,"none"],transformOrigin:Array(3).fill(B)},{duration:225,easing:al})}}return me(()=>{const b=_e.filterProps(e);return c(_e,K({symbol:kt,ref:u,class:["v-tab",e.class],style:e.style,tabindex:v.value?0:-1,role:"tab","aria-selected":String(v.value),active:!1},b,n,{block:e.fixed,maxWidth:e.fixed?300:void 0,"onGroup:selected":x}),{...l,default:()=>w(X,null,[l.default?.()??e.text,!e.hideSlider&&w("div",{ref:m,class:le(["v-tab__slider",s.value]),style:j(r.value)},null)])})}),el({},u)}}),hi=de({...ut(ra(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VTabsWindow"),pi=ce()({name:"VTabsWindow",props:hi(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const n=jt(kt,null),s=Ze(e,"modelValue"),r=S({get(){return s.value!=null||!n?s.value:n.items.value.find(u=>n.selected.value.includes(u.id))?.value},set(u){s.value=u}});return me(()=>{const u=Dt.filterProps(e);return c(Dt,K({_as:"VTabsWindow"},u,{modelValue:r.value,"onUpdate:modelValue":m=>r.value=m,class:["v-tabs-window",e.class],style:e.style,mandatory:!1,touch:!1}),l)}),{}}}),gi=de({...ua()},"VTabsWindowItem"),_i=ce()({name:"VTabsWindowItem",props:gi(),setup(e,i){let{slots:l}=i;return me(()=>{const n=qt.filterProps(e);return c(qt,K({_as:"VTabsWindowItem"},n,{class:["v-tabs-window-item",e.class],style:e.style}),l)}),{}}});function bi(e){return e?e.map(i=>nl(i)?i:{text:i,value:i}):[]}const Pi=de({alignTabs:{type:String,default:"start"},color:String,fixedTabs:Boolean,items:{type:Array,default:()=>[]},stacked:Boolean,bgColor:String,grow:Boolean,height:{type:[Number,String],default:void 0},hideSlider:Boolean,sliderColor:String,...il(ca(),["spaced"]),...ll({mandatory:"force",selectedClass:"v-tab-item--selected"}),...Ut(),...Te()},"VTabs"),wi=ce()({name:"VTabs",props:Pi(),emits:{"update:modelValue":e=>!0},setup(e,i){let{attrs:l,slots:n}=i;const s=Ze(e,"modelValue"),r=S(()=>bi(e.items)),{densityClasses:u}=Wt(e),{backgroundColorClasses:m,backgroundColorStyles:y}=Be(()=>e.bgColor),{scopeId:v}=Gt();return vt({VTab:{color:N(()=>e.color),direction:N(()=>e.direction),stacked:N(()=>e.stacked),fixed:N(()=>e.fixedTabs),sliderColor:N(()=>e.sliderColor),hideSlider:N(()=>e.hideSlider)}}),me(()=>{const x=$t.filterProps(e),b=!!(n.window||e.items.length>0);return w(X,null,[c($t,K(x,{modelValue:s.value,"onUpdate:modelValue":d=>s.value=d,class:["v-tabs",`v-tabs--${e.direction}`,`v-tabs--align-tabs-${e.alignTabs}`,{"v-tabs--fixed-tabs":e.fixedTabs,"v-tabs--grow":e.grow,"v-tabs--stacked":e.stacked},u.value,m.value,e.class],style:[{"--v-tabs-height":Pe(e.height)},y.value,e.style],role:"tablist",symbol:kt},v,l),{default:()=>[n.default?.()??r.value.map(d=>n.tab?.({item:d})??c(He,K(d,{key:d.text,value:d.value,spaced:e.spaced}),{default:n[`tab.${d.value}`]?()=>n[`tab.${d.value}`]?.({item:d}):void 0}))]}),b&&c(pi,K({modelValue:s.value,"onUpdate:modelValue":d=>s.value=d,key:"tabs-window"},v),{default:()=>[r.value.map(d=>n.item?.({item:d})??c(_i,{value:d.value},{default:()=>n[`item.${d.value}`]?.({item:d})})),n.window?.()]})])}),{}}}),ki=W({__name:"Icon",props:sl({variant:{},width:{},height:{},staticWidth:{},staticHeight:{},maxWidth:{},maxHeight:{},minWidth:{},minHeight:{},icon:{},color:{},disabled:{type:Boolean},size:{},badge:{type:Boolean},class:{},style:{}},Yl),emits:["click"],setup(e,{emit:i}){const l=e,n=i,{iconProps:s,containerStyle:r,containerClasses:u,iconClasses:m}=Ul(l),y=R(),v=R(),x=async()=>{if(!(l.variant!=="responsive"||!y.value||!v.value)){await Fe();try{const d=y.value.offsetWidth,T=y.value.offsetHeight,L=Math.min(d,T);v.value.$el&&(v.value.$el.style.fontSize=`${L}px`)}catch(d){console.error("Icon sizing adjustment failed:",d)}}},b=d=>{if(l.disabled){d.preventDefault(),d.stopPropagation();return}n("click",d)};return we(()=>{l.variant==="responsive"&&(x(),window.addEventListener("resize",x))}),De(()=>{l.variant==="responsive"&&window.removeEventListener("resize",x)}),(d,T)=>(o(),_("div",{ref_key:"iconContainer",ref:y,class:le(t(u)),style:j(t(r)),onClick:b},[c(at,{"model-value":e.badge===!0,color:"error",dot:""},{default:f(()=>[c(t(ae),K({ref_key:"iconElement",ref:v},t(s),{class:t(m)}),Nt({_:2},[ue(d.$slots,(L,D)=>({name:D,fn:f(()=>[ol(d.$slots,D,{},void 0,!0)])}))]),1040,["class"])]),_:3},8,["model-value"])],6))}}),xe=se(ki,[["__scopeId","data-v-3db51b10"]]),da=W({__name:"RepeatBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(i,l)=>e.isVisible&&e.playerQueue?(o(),Q(xe,K({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:t(Qe)(e.icon?.color,[[e.playerQueue.repeat_mode==t(re).OFF,null],[e.playerQueue.repeat_mode==t(re).ALL,"primary"],[e.playerQueue.repeat_mode==t(re).ONE,"primary"]]),icon:t(Qe)(e.icon?.icon,[[e.playerQueue.repeat_mode==t(re).OFF,"mdi-repeat-off"],[e.playerQueue.repeat_mode==t(re).ALL,"mdi-repeat"],[e.playerQueue.repeat_mode==t(re).ONE,"mdi-repeat-once"],[!0,"mdi-repeat-off"]]),variant:"button",onClick:l[0]||(l[0]=n=>t(M).queueCommandRepeat(e.playerQueue.queue_id||"",t(Qe)(null,[[e.playerQueue.repeat_mode==t(re).OFF,t(re).ONE],[e.playerQueue.repeat_mode==t(re).ALL,t(re).OFF],[e.playerQueue.repeat_mode==t(re).ONE,t(re).ALL]])))}),null,16,["disabled","color","icon"])):k("",!0)}});function Je(e){return{activeSource:S(()=>{const l=typeof e=="object"&&"value"in e?e.value:e;if(!(!l?.active_source||!l?.source_list))return l.source_list.find(n=>n.id===l.active_source)})}}const ma=W({__name:"NextBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>i.playerQueue?.active?(i.playerQueue.current_index||0)<i.playerQueue.items-1:!1),s=S(()=>!i.player||i.playerQueue?.active||!i.player.current_media?!1:i.player.supported_features.includes(Ee.NEXT_PREVIOUS)),r=S(()=>l.value?l.value.can_next_previous:n.value||s.value);return(u,m)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:"mdi-skip-next-outline",variant:"button",onClick:m[0]||(m[0]=y=>t(M).playerCommandNext(e.player.player_id))}),null,16,["disabled"])):k("",!0)}}),va=W({__name:"PlayBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},withCircle:{type:Boolean,default:!0},icon:{default:void 0},iconStyle:{default:"circle"}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>i.playerQueue?i.playerQueue.items>0:!1),s=S(()=>!(!i.player||i.playerQueue?.active||!i.player.current_media)),r=S(()=>l.value?l.value.can_play_pause:n.value||s.value),u=S(()=>i.player?.playback_state==Re.PLAYING?"mdi-pause":"mdi-play");return(m,y)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:e.iconStyle?`${u.value}-${e.iconStyle}`:u.value,variant:"button",onClick:y[0]||(y[0]=v=>t(M).playerCommandPlayPause(e.player.player_id))}),null,16,["disabled","icon"])):k("",!0)}}),ya=W({__name:"PreviousBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>!i.playerQueue?.active||!i.playerQueue?.items||!i.playerQueue.current_index?!1:i.playerQueue.current_index>0),s=S(()=>!i.player||i.playerQueue?.active||!i.player.current_media?!1:i.player.supported_features.includes(Ee.NEXT_PREVIOUS)),r=S(()=>l.value?l.value.can_next_previous:n.value||s.value);return(u,m)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:"mdi-skip-previous-outline",variant:"button",onClick:m[0]||(m[0]=y=>t(M).playerCommandPrevious(e.player.player_id))}),null,16,["disabled"])):k("",!0)}}),fa=W({__name:"ShuffleBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(i,l)=>e.isVisible&&e.playerQueue?(o(),Q(xe,K({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:t(Qe)(e.icon?.color,[[e.playerQueue.shuffle_enabled,"primary",""]]),icon:t(Qe)(e.icon?.icon,[[e.playerQueue.shuffle_enabled,"mdi-shuffle"],[e.playerQueue.shuffle_enabled==!1,"mdi-shuffle-disabled"],[!0,"mdi-shuffle"]]),variant:"button",onClick:l[0]||(l[0]=n=>t(M).queueCommandShuffle(e.playerQueue.queue_id,!e.playerQueue.shuffle_enabled))}),null,16,["disabled","color","icon"])):k("",!0)}}),xi={key:0,class:"player-controls"},Ii={key:0,class:"player-controls-elements"},Ci={key:1,class:"player-controls-elements"},$i={key:2},Qi={key:3,class:"player-controls-elements"},Si={key:4,class:"player-controls-elements"},Ot=W({__name:"PlayerControls",props:{visibleComponents:{default:()=>({repeat:{isVisible:!0},shuffle:{isVisible:!0},play:{isVisible:!0},previous:{isVisible:!0},next:{isVisible:!0}})}},setup(e){return(i,l)=>e.visibleComponents?(o(),_("div",xi,[e.visibleComponents&&e.visibleComponents.shuffle?.isVisible?(o(),_("div",Ii,[c(fa,{"player-queue":t(a).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.shuffle.icon},null,8,["player-queue","icon"])])):k("",!0),e.visibleComponents&&e.visibleComponents.previous?.isVisible?(o(),_("div",Ci,[c(ya,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.previous.icon},null,8,["player","player-queue","icon"])])):k("",!0),e.visibleComponents&&e.visibleComponents.play?.isVisible?(o(),_("div",$i,[c(va,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","icon-style":"circle",icon:e.visibleComponents.play.icon},null,8,["player","player-queue","icon"])])):k("",!0),e.visibleComponents&&e.visibleComponents.next?.isVisible?(o(),_("div",Qi,[c(ma,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,icon:e.visibleComponents.next.icon,"static-height":"24px","static-width":"24px"},null,8,["player","player-queue","icon"])])):k("",!0),e.visibleComponents&&e.visibleComponents.repeat?.isVisible?(o(),_("div",Si,[c(da,{"player-queue":t(a).activePlayerQueue,icon:e.visibleComponents.repeat.icon,"static-height":"24px","static-width":"24px"},null,8,["player-queue","icon"])])):k("",!0)])):k("",!0)}}),ha=W({__name:"QueueBtn",props:{isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=function(){a.showFullscreenPlayer&&a.showQueueItems?a.showQueueItems=!1:a.showFullscreenPlayer&&!a.showQueueItems?a.showQueueItems=!0:(a.showQueueItems=!0,a.showFullscreenPlayer=!0)};return(l,n)=>e.isVisible?(o(),Q(xe,K({key:0},e.icon,{disabled:!t(a).activePlayerId||t(a).showFullscreenPlayer&&!t(a).curQueueItem&&!t(a).showQueueItems,icon:"mdi-playlist-play",color:t(Qe)(e.icon?.color,[[t(a).showFullscreenPlayer&&t(a).showQueueItems,"primary",""]]),variant:"button",onClick:i}),null,16,["disabled","color"])):k("",!0)}}),pa=W({__name:"SpeakerBtn",props:{color:{}},setup(e){return(i,l)=>(o(),Q(ge,{variant:"icon",ripple:!1,icon:"",onClick:l[0]||(l[0]=n=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ae,{color:e.color?e.color:"",size:24,icon:t(a).activePlayer?.group_members.length?"mdi-speaker-multiple":"mdi-speaker"},null,8,["color","icon"])]),_:1}))}}),Vi={key:0},Ti={key:0},Li={class:"text-caption"},Mi={key:1},Ei=W({__name:"VolumeBtn",props:{volumeSize:{default:"150px"},responsiveVolumeSize:{type:Boolean,default:!0},isVisible:{type:Boolean,default:!0},color:{default:""}},setup(e){const i=e,l=R(!1);return(n,s)=>i.isVisible&&t(a).activePlayer?(o(),_("div",Vi,[c(_t,{modelValue:l.value,"onUpdate:modelValue":s[1]||(s[1]=r=>l.value=r),class:"volume-control-dialog","close-on-content-click":!1,location:"top",scrim:n.$vuetify.theme.current.dark?"rgba(0,0,0,.75)":"rgba(0,0,0,.85)"},{activator:f(({props:r})=>[t(ie)("bp6")||!e.responsiveVolumeSize?(o(),_("div",Ti,[c(wt,{style:"margin-right: 0px; margin-left: 0px;",width:e.volumeSize,"is-powered":!0,"model-value":t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0),"allow-wheel":!0,"onUpdate:modelValue":s[0]||(s[0]=u=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayer?.player_id||"",u):t(M).playerCommandVolumeSet(t(a).activePlayer?.player_id||"",u))},{prepend:f(()=>[c(ge,K({variant:"icon",size:"48",ripple:!1},{...r}),{default:f(()=>[c(ae,{color:i.color?e.color:"",size:24,icon:"mdi-volume-high"},null,8,["color"]),w("div",Li,$(t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0)),1)]),_:1},16)]),_:2},1032,["width","model-value"])])):(o(),_("div",Mi,[c(ge,K({...r},{size:"48",variant:"icon"}),{default:f(()=>[c(ae,{color:i.color?e.color:"",icon:"mdi-volume-high"},null,8,["color"]),w("div",{class:"text-caption",style:j({color:i.color?e.color:""})},$(t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0)),5)]),_:1},16)]))]),default:f(()=>[c(Ue,{"min-width":300,style:{overflow:"hidden","padding-top":"20px","padding-bottom":"20px","padding-right":"20px"}},{default:f(()=>[t(a).activePlayer?(o(),Q(Cl,{key:0,player:t(a).activePlayer,"show-sub-players":!0,"show-sync-controls":!1,"show-heading-row":!0,"show-volume-control":!0,"allow-wheel":!0,style:{"margin-left":"18px"}},null,8,["player"])):k("",!0)]),_:1})]),_:1},8,["modelValue","scrim"])])):k("",!0)}}),Ai=se(Ei,[["__scopeId","data-v-70c82677"]]),Bi=W({__name:"PlayerExtendedControls",props:{queue:{default:()=>({isVisible:!0,showQueueDialog:!1})},player:{default:()=>({isVisible:!0})},volume:{default:()=>({isVisible:!0,volumeSize:"150px",responsiveVolumeSize:!1})}},setup(e){return(i,l)=>(o(),_(X,null,[e.player&&e.player.isVisible?(o(),Q(pa,{key:0,color:e.player.color},null,8,["color"])):k("",!0),e.queue&&e.queue.isVisible?(o(),Q(ha,{key:1,color:e.player.color,style:{"padding-left":"15px","padding-right":"20px"}},null,8,["color"])):k("",!0),e.volume&&e.volume.isVisible?(o(),Q(Ai,{key:2,color:e.volume.color,"volume-size":e.volume.volumeSize,"responsive-volume-size":e.volume.responsiveVolumeSize},null,8,["color","volume-size","responsive-volume-size"])):k("",!0)],64))}});function Se(e,i,l){if(e===void 0||i===void 0||l!==void 0&&l!==Re.PLAYING)return e;const n=i*1e3,s=Date.now(),u=Math.max(0,s-n)/1e3;return e+u}const Ri={style:{width:"auto",height:"24px"}},Di={key:0,style:{width:"100%"}},qi=["onClick"],Fi={key:0,class:"time-text-row"},zi={class:"text-caption time-text-right"},Oi=W({__name:"PlayerTimeline",props:{showLabels:{type:Boolean,default:!1},color:{default:void 0}},setup(e){const{activeSource:i}=Je(N(a,"activePlayer")),l=R(!1),n=R(!0),s=R(!1),r=R(0),u=R(0),m=R(0);let y=null;const v=(A=500)=>{y||(y=setInterval(()=>m.value=Date.now(),A))},x=()=>{y&&(clearInterval(y),y=null)};Kt(()=>{x()});const b=S(()=>{if(i.value){if(a.activePlayer?.powered===!1)return!1;const A=!!a.curQueueItem?.duration,p=!!a.activePlayer?.current_media?.duration;return a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.current_media?.media_type==F.RADIO?!1:!!(i.value.can_seek&&(A||p))}return!(a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.powered==!1||!a.curQueueItem||!a.curQueueItem.media_item||!a.curQueueItem.duration)}),d=S(()=>{if(a.curQueueItem)return l.value?`-${he(a.curQueueItem.duration-L.value)}`:`${he(L.value)}`;if(a.activePlayer?.current_media?.elapsed_time!=null||a.activePlayer?.elapsed_time!=null){const A=L.value||0;return l.value&&a.activePlayer?.current_media?.duration?`-${he(a.activePlayer.current_media.duration-A)}`:`${he(A)}`}return"0:00"}),T=S(()=>{const A=a.curQueueItem?.duration||a.activePlayer?.current_media?.duration;return!A||a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.current_media?.media_type==F.RADIO?"":he(A)}),L=S(()=>{m.value;const A=a.activePlayer?.playback_state==="playing",E=!!(a.activePlayerQueue&&a.activePlayerQueue.active),p=a.activePlayer?.current_media?.elapsed_time!=null;if(A&&(E||p)?v():x(),s.value)return u.value=r.value,r.value;const h=a.activePlayerQueue;return h?.elapsed_time!=null&&h?.elapsed_time_last_updated!=null?Se(h.elapsed_time,h.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:a.activePlayer?.current_media?.elapsed_time!=null&&a.activePlayer?.current_media?.elapsed_time_last_updated!=null?Se(a.activePlayer.current_media.elapsed_time,a.activePlayer.current_media.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:a.activePlayer?.elapsed_time!=null&&a.activePlayer?.elapsed_time_last_updated!=null?Se(a.activePlayer.elapsed_time,a.activePlayer.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:0}),D=S(()=>{const A={};return a.curQueueItem?.media_item?.metadata?.chapters&&a.curQueueItem.media_item.metadata.chapters.forEach(E=>{A[E.start]=E.name}),A});ee(L,A=>{s.value||(r.value=A)});const z=function(){s.value=!0},U=()=>{s.value=!1,!s.value&&a.activePlayer&&M.playerCommandSeek(a.activePlayer.player_id,Math.round(u.value))},G=function(A){if(a.curQueueItem?.media_item?.metadata?.chapters){for(const E of a.curQueueItem.media_item.metadata.chapters)if(E.start==A){M.playMedia(a.curQueueItem.media_item.uri,void 0,void 0,E.position.toString());return}}};return(A,E)=>(o(),_("div",Ri,[t(a).activePlayer?(o(),_("div",Di,[c(Ql,{modelValue:r.value,"onUpdate:modelValue":E[0]||(E[0]=p=>r.value=p),disabled:!b.value,style:{width:"100%"},min:0,max:t(a).curQueueItem?.duration||t(a).activePlayer?.current_media?.duration,"hide-details":"","track-size":4,"thumb-size":n.value?0:10,"show-ticks":D.value?"always":!1,ticks:D.value,"tick-size":"4",color:e.color,onTouchstart:E[1]||(E[1]=p=>n.value=!1),onTouchend:E[2]||(E[2]=p=>n.value=!0),onMouseenter:E[3]||(E[3]=p=>n.value=!1),onMouseleave:E[4]||(E[4]=p=>n.value=!0),onStart:z,onEnd:U},{"tick-label":f(({tick:p})=>[e.showLabels&&!n.value&&Object.values(D.value).length<6?(o(),_("a",{key:0,class:"text-caption",onClick:h=>G(p.value)},$(p.label),9,qi)):k("",!0)]),_:1},8,["modelValue","disabled","max","thumb-size","show-ticks","ticks","color"]),e.showLabels?(o(),_("div",Fi,[w("div",{class:"text-caption time-text-left",onClick:E[5]||(E[5]=p=>l.value?l.value=!1:l.value=!0)},$(d.value),1),w("div",zi,$(T.value),1)])):k("",!0)])):k("",!0)]))}}),ga=se(Oi,[["__scopeId","data-v-1b667236"]]),Ni={class:"lyrics-container"},Wi={key:0,class:"lyrics-loading"},Hi={key:1,class:"lyrics-empty"},Ui={key:2,class:"lyrics-intro"},Yi={class:"song-title"},Xi={class:"artist-name"},ji={class:"lyrics-coming-soon"},Gi=W({__name:"LyricsViewer",props:{mediaItem:{default:void 0},position:{default:void 0},duration:{default:void 0},streamDetails:{default:void 0},textColor:{default:"#FFFFFF"},debugMode:{type:Boolean,default:!1}},setup(e){Zt(p=>({v3c09aed1:p.textColor}));const i=e,l=(p,h=!0)=>{if(h&&!i.debugMode)return;(h?console.debug:console.log)(`[lyricSynch] ${p}`)},n=R([]),s=R(!1),r=R(-1),u=R(null),m=R(!1),y=R(0),v=R(0),x=S(()=>{if(!d.value||!n.value.length)return!1;const p=n.value[0].time,h=i.position||0;return r.value===-1&&h<p}),b=S(()=>{if(!i.mediaItem)return"";if("media_type"in i.mediaItem&&i.mediaItem.media_type==="track"){const p=i.mediaItem;if(p.artists?.length)return p.artists.map(h=>h.name).join(", ")}return"media_type"in i.mediaItem&&i.mediaItem.media_type==="artist"?i.mediaItem.name:""});S(()=>{const p=i.mediaItem?.metadata?.lyrics,h=i.mediaItem?.metadata?.lrc_lyrics;return!!p&&p.trim().length>0||!!h&&h.trim().length>0});const d=S(()=>{if(n.value.some(I=>I.time>0))return!0;const p=i.mediaItem?.metadata?.lrc_lyrics,h=i.mediaItem?.metadata?.lyrics;return!!(p&&p.includes("[")||h&&/\[\d+:\d+[.:]?\d*\]/.test(h))}),T=p=>{const h=p.match(/\[(\d+):(\d+)([.:]\d+)?\](.*)/);if(h){const I=parseInt(h[1]);let V=parseInt(h[2]),B=0;if(h[3]){const g=h[3].replace(/[.:]/,".");B=Math.round(parseFloat(g)*1e3)}return{time:(I*60*1e3+V*1e3+B)/1e3,text:h[4].trim()||" "}}return{time:0,text:p.trim()||" "}},L=()=>{if(!i.mediaItem){n.value=[];return}s.value=!0;try{const p=i.mediaItem.metadata?.lrc_lyrics||"",h=i.mediaItem.metadata?.lyrics||"";let I="",V=!1;if(p?(I=p,V=!0):h&&/\[\d+:\d+[.:]?\d*\]/.test(h)?(I=h,V=!0):h&&(I=h,V=!1),V){const B=I.split(`
|
|
2
|
-
`).filter(q=>q.trim());n.value=B.map(q=>T(q)).filter(q=>q.text.trim()).sort((q,P)=>q.time-P.time),l(`Loaded ${n.value.length} synchronized lyrics lines`,!1)}else if(
|
|
3
|
-
`).filter(q=>q.trim());n.value=B.map(q=>({time:0,text:q.trim()})).filter(q=>q.text),l(`Loaded ${n.value.length} plain text lyrics lines`,!1)}else n.value=[]}catch(p){l(`Error processing lyrics: ${p}`,!1),n.value=[]}finally{s.value=!1}},D=p=>{const h=p;l(`Calculating look-ahead at ${p.toFixed(3)}s`);let
|
|
1
|
+
import{_ as _a,T as ba,V as at}from"./Toolbar-B0keKpNj.js";import{_ as Pa,s as a,d as W,r as R,c as _,o,n as le,a as w,b as c,e as I,u as t,f as wa,w as f,F as X,g as ue,h as Q,V as Ve,i as Nt,j as ae,k as ka,t as C,l as $e,m as we,p as Ce,q as De,v as M,M as F,P as It,x as Ue,$ as J,y as lt,z as tt,A as xa,B as ce,C as de,D as Ia,E as Ge,G as me,H as j,I as Te,J as Ca,K as ke,L as $a,N as Qa,O as S,Q as Ke,R as rt,S as qe,T as ut,U as Sa,W as ct,X as Be,Y as Wt,Z as dt,a0 as mt,a1 as Ze,a2 as N,a3 as Ht,a4 as vt,a5 as Pe,a6 as Va,a7 as yt,a8 as ft,a9 as Ut,aa as ht,ab as Yt,ac as Ta,ad as ve,ae as ee,af as Xt,ag as La,ah as Ct,ai as Ma,aj as Fe,ak as Ea,al as jt,am as Aa,an as Ba,ao as Ra,ap as Da,aq as qa,ar as Fa,as as za,at as Me,au as pt,av as Oa,aw as Na,ax as Wa,ay as gt,az as Ha,aA as Gt,aB as Ua,aC as Ya,aD as K,aE as Xa,aF as ja,aG as Ga,aH as Ka,aI as Ye,aJ as Za,aK as Ja,aL as el,aM as tl,aN as al,aO as $t,aP as ll,aQ as il,aR as nl,aS as sl,aT as ol,aU as Qe,aV as re,aW as Ee,aX as Re,aY as _t,aZ as ie,a_ as Kt,a$ as be,b0 as Zt,b1 as Xe,b2 as rl,b3 as ze,b4 as Oe,b5 as je,b6 as it,b7 as Le,b8 as H,b9 as he,ba as Jt,bb as ea,bc as nt,bd as ta,be as Qt,bf as St,bg as ul,bh as cl,bi as dl,bj as We,bk as ml,bl as Vt,bm as Tt,bn as Lt,bo as _e,bp as aa,bq as vl,br as yl,bs as fl,bt as hl}from"./index-CoB_2BUd.js";import{D as pl}from"./constants-CXMxJR4j.js";import{V as ge,a as gl,m as _l,b as la}from"./VBtn-hyLqVrgl.js";import{_ as se}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{M as Ae}from"./MediaItemThumb-BKmjY3cv.js";import{V as ia}from"./VDialog-ByOT2kqj.js";import{u as bl,c as Pl,m as wl,a as bt,b as Pt}from"./layout-CPyFIpzx.js";import{V as kl,a as xl}from"./VInfiniteScroll--D1O9T4-.js";import{M as Il}from"./index-kQIztB-E.js";import{m as Mt,B as pe}from"./Button-BDPKHRLH.js";import{V as Cl,P as wt,g as $l,a as Ne}from"./PlayerCard-BB691wcK.js";import{V as Ql}from"./VSlider-uPMiub_7.js";import{L as Sl}from"./ListItem-DQin6AeB.js";import{M as ne,a as st}from"./marquee_text_sync-IliXMDRi.js";import{_ as Vl}from"./NowPlayingBadge.vue_vue_type_style_index_0_lang-rRluqShO.js";import{V as Tl}from"./VToolbar-CJXC56GW.js";import{V as Ll}from"./VVirtualScroll-CSh2i2e_.js";import{V as Ml,a as Et,b as At,c as Bt}from"./VExpansionPanels-DWM5Druz.js";import"./VInput-BoZgh6ys.js";const El=se(Pa,[["__scopeId","data-v-89a5b6dd"]]),na=function(){const e=localStorage.getItem("frontend.settings.menu_items"),i=e?e.split(","):pl,l=[];for(const n of i)n==="home"&&l.push({label:"home",icon:"mdi-home-outline",path:"/home",isLibraryNode:!1}),n==="search"&&l.push({label:"search",icon:"mdi-magnify",path:"/search",isLibraryNode:!1}),n==="artists"&&l.push({label:"artists",icon:"mdi-account-outline",path:"/artists",isLibraryNode:!0,hidden:a.libraryArtistsCount===0}),n==="albums"&&l.push({label:"albums",icon:"md:album",path:"/albums",isLibraryNode:!0,hidden:a.libraryAlbumsCount===0}),n==="tracks"&&l.push({label:"tracks",icon:"mdi-music-note",path:"/tracks",isLibraryNode:!0,hidden:a.libraryTracksCount===0}),n==="playlists"&&l.push({label:"playlists",icon:"md:playlist_play",path:"/playlists",isLibraryNode:!0,hidden:a.libraryPlaylistsCount===0}),n==="podcasts"&&l.push({label:"podcasts",icon:"mdi-podcast",path:"/podcasts",isLibraryNode:!0,hidden:a.libraryPodcastsCount===0}),n==="audiobooks"&&l.push({label:"audiobooks",icon:"mdi-book-play-outline",path:"/audiobooks",isLibraryNode:!0,hidden:a.libraryAudiobooksCount===0}),n==="radios"&&l.push({label:"radios",icon:"mdi-access-point",path:"/radios",isLibraryNode:!0,hidden:a.libraryRadiosCount===0}),n==="browse"&&l.push({label:"browse",icon:"mdi-folder-outline",path:"/browse",isLibraryNode:!0}),n==="settings"&&l.push({label:"settings.settings",icon:"mdi-cog-outline",path:"/settings",isLibraryNode:!0});return l},Al={key:0,class:"sidebar-header-title"},Bl=W({__name:"Navigation",setup(e){const i=wa(),l=na(),n=localStorage.getItem("frontend.settings.collapsed"),s=R(n==="true"),r=()=>{s.value=!s.value,localStorage.setItem("frontend.settings.collapsed",s.value.toString())};return(u,d)=>(o(),_("nav",{class:le(["sidebar",{collapsed:s.value}])},[w("div",{class:"sidebar-header",onClick:d[0]||(d[0]=y=>t(i).push({name:"home"}))},[d[1]||(d[1]=w("img",{src:_a,alt:"Music Assistant",class:"sidebar-header-logo"},null,-1)),s.value?I("",!0):(o(),_("div",Al,"Music Assistant"))]),c($e,{class:"sidebar-list"},{default:f(()=>[(o(!0),_(X,null,ue(t(l),y=>(o(),Q(Ve,{key:y.label,slim:"",nav:"",class:"menuButton",to:y.path},Nt({default:f(()=>[s.value?(o(),Q(ae,{key:0,icon:y.icon,size:"24px"},null,8,["icon"])):I("",!0),s.value?I("",!0):(o(),Q(ka,{key:1,textContent:C(u.$t(y.label))},null,8,["textContent"]))]),_:2},[s.value?void 0:{name:"prepend",fn:f(()=>[c(ae,{icon:y.icon,size:"24px"},null,8,["icon"])]),key:"0"}]),1032,["to"]))),128))]),_:1}),w("div",{class:le(s.value?"d-flex justify-center":"ml-auto")},[c(ge,{icon:s.value?"mdi-dock-left":"mdi-dock-right",class:"cursor-pointer mt-1",variant:"plain",onClick:r},null,8,["icon"])],2)],2))}}),Rl=se(Bl,[["__scopeId","data-v-cc6c89ae"]]),Dl={class:"media-thumb"},ql={style:{"margin-left":"-10px","padding-right":"5px"}},Fl=W({__name:"AddToPlaylistDialog",setup(e){const i=R(!1),l=R([]),n=R([]),s=R(),r=R([]);we(()=>{Ce.on("playlistdialog",async $=>{i.value=!0,r.value=$.items,s.value=$.parentItem,await u()}),De(()=>{Ce.off("playlistdialog")})});const u=async function(){l.value=[],n.value=[];const $=await M.getLibraryPlaylists();let b=r.value.length?r.value[0]:void 0;if(b){"provider_mappings"in b||(b=await M.getItem(b.media_type,b.item_id,b.provider));for(const m of $){if(!m.provider_mappings.filter(L=>L.available).length||!m.is_editable||s.value&&s.value.media_type===F.PLAYLIST&&m.item_id===s.value.item_id)continue;const T=M.providers[m.provider_mappings[0].provider_instance];T&&(T.domain=="builtin"||T.is_streaming_provider||b?.provider_mappings.filter(L=>L.provider_instance==T.instance_id).length)&&l.value.push(m)}for(const m of Object.values(M.providers))m.supported_features.includes(It.PLAYLIST_CREATE)&&m.supported_features.includes(It.PLAYLIST_TRACKS_EDIT)&&(m.domain=="builtin"||m.is_streaming_provider||b?.provider_mappings.filter(T=>T.provider_instance==m.instance_id).length)&&n.value.push(m.instance_id)}},d=async function($){M.addPlaylistTracks($.item_id,r.value.map(b=>b.uri)),v(),a.activeAlert={type:xa.INFO,message:J("background_task_added"),persistent:!1}},y=async function($){const b=prompt(J("new_playlist_name"));if(!b)return;const m=await M.createPlaylist(b,$);d(m)},v=function(){i.value=!1};return($,b)=>(o(),Q(ia,{modelValue:i.value,"onUpdate:modelValue":[b[0]||(b[0]=m=>i.value=m),b[1]||(b[1]=m=>{t(a).dialogActive=m})],fullscreen:"",transition:"dialog-bottom-transition"},{default:f(()=>[c(Ue,null,{default:f(()=>[c(ba,{icon:"mdi-playlist-plus",title:t(J)("add_playlist"),"menu-items":[{label:"close",icon:"mdi-close",action:v}]},null,8,["title","menu-items"]),c(lt),b[4]||(b[4]=w("br",null,null,-1)),c($e,null,{default:f(()=>[(o(!0),_(X,null,ue(l.value,m=>(o(),_("div",{key:m.item_id},[c(Ve,{onClick:T=>d(m)},{prepend:f(()=>[w("div",Dl,[c(Ae,{item:m,size:50},null,8,["item"])])]),title:f(()=>[w("div",null,C(m.name),1)]),subtitle:f(()=>[w("div",null,C(m.owner),1)]),append:f(()=>[m.provider_mappings?(o(),Q(tt,{key:0,domain:m.provider_mappings[0].provider_domain,size:20},null,8,["domain"])):I("",!0)]),_:2},1032,["onClick"])]))),128)),b[2]||(b[2]=w("div",{style:{height:"30px"}},null,-1)),c(lt),b[3]||(b[3]=w("div",{style:{height:"30px"}},null,-1)),(o(!0),_(X,null,ue(n.value,m=>(o(),_("div",{key:m},[c(Ve,{onClick:T=>y(m)},{prepend:f(()=>[w("div",ql,[c(tt,{domain:t(M).providers[m].domain,size:50},null,8,["domain"])])]),title:f(()=>[w("div",null,C(t(J)("new_playlist")),1)]),subtitle:f(()=>[w("div",null,C(t(J)("create_playlist_on",[t(M).providers[m].name])),1)]),append:f(()=>[c(tt,{domain:t(M).providers[m].domain,size:20},null,8,["domain"])]),_:2},1032,["onClick"])]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]))}}),zl=se(Fl,[["__scopeId","data-v-bd014719"]]),Ol=de({scrollable:Boolean,...ke(),...Ca(),...Te({tag:"main"})},"VMain"),Nl=ce()({name:"VMain",props:Ol(),setup(e,i){let{slots:l}=i;const{dimensionStyles:n}=Ia(e),{mainStyles:s}=bl(),{ssrBootStyles:r}=Ge();return me(()=>c(e.tag,{class:le(["v-main",{"v-main--scrollable":e.scrollable},e.class]),style:j([s.value,r.value,n.value,e.style])},{default:()=>[e.scrollable?w("div",{class:"v-main__scroller"},[l.default?.()]):l.default?.()]})),{}}}),Wl={class:"content-section"},Hl=W({__name:"View",setup(e){return(i,l)=>{const n=Qa("router-view");return o(),Q(Nl,{id:"cont",class:"main-layout"},{default:f(()=>[t(a).mobileLayout?I("",!0):(o(),Q(Rl,{key:0,class:"nav-section"})),w("div",Wl,[c(n,null,{default:f(({Component:s})=>[(o(),Q($a(s)))]),_:1}),c(zl),c(El),c(kl,{"model-value":t(a).activeAlert!==void 0,color:t(a).activeAlert?.type||"grey",text:t(a).activeAlert?.message,"close-on-content-click":"",position:"sticky",timeout:t(a).activeAlert?.persistent?-1:5e3,"z-index":"999999",style:{"z-index":"999999"},"onUpdate:modelValue":l[0]||(l[0]=()=>t(a).activeAlert=void 0)},null,8,["model-value","color","text","timeout"])])]),_:1})}}}),Rt=se(Hl,[["__scopeId","data-v-1afe9eed"]]),Ul=e=>{const i=S(()=>{const{variant:r,width:u,height:d,staticWidth:y,staticHeight:v,maxWidth:$,maxHeight:b,minWidth:m,minHeight:T,badge:L,...D}=e,z={...D,size:e.size||y||void 0||v||void 0||(e.maxHeight?e.maxHeight:void 0)||(e.maxWidth?e.maxWidth:void 0)||"24px"};return Il(r).with("button",()=>({...z,class:e.class?`icon-button ${e.class}`:"icon-button"})).with("responsive",()=>({...z,class:e.class?`icon-responsive ${e.class}`:"icon-responsive"})).with("default",()=>({...z,class:e.class?`icon-default ${e.class}`:"icon-default"})).otherwise(()=>({...z,class:e.class?`icon-default ${e.class}`:"icon-default"}))}),l=S(()=>{const r={};if(e.staticWidth?r.width=e.staticWidth:e.width&&(r.width=e.width),e.staticHeight?r.height=e.staticHeight:e.height&&(r.height=e.height),e.maxWidth&&(r.maxWidth=e.maxWidth),e.maxHeight&&(r.maxHeight=e.maxHeight),e.minWidth&&(r.minWidth=e.minWidth),e.minHeight&&(r.minHeight=e.minHeight),typeof e.style=="object")Object.assign(r,e.style);else if(typeof e.style=="string"){const u=e.style.split(";").reduce((d,y)=>{const[v,$]=y.split(":").map(b=>b.trim());return v&&$&&(d[v]=$),d},{});Object.assign(r,u)}return r}),n=S(()=>Mt("icon-container",e.variant&&`icon-container--${e.variant}`,e.disabled&&"icon-container--disabled")),s=S(()=>Mt("icon",e.variant&&`icon--${e.variant}`));return{iconProps:i,containerStyle:l,containerClasses:n,iconClasses:s}},Yl={variant:"default",minWidth:"24px",minHeight:"24px",badge:!1,disabled:!1},Xl=de({...ke(),...ut(wl(),["fullHeight"]),...qe()},"VApp"),jl=ce()({name:"VApp",props:Xl(),setup(e,i){let{slots:l}=i;const n=Ke(e),{layoutClasses:s,getLayoutItem:r,items:u,layoutRef:d}=Pl({...e,fullHeight:!0}),{rtlClasses:y}=rt();return me(()=>w("div",{ref:d,class:le(["v-application",n.themeClasses.value,s.value,y.value,e.class]),style:j([e.style])},[w("div",{class:"v-application__wrap"},[l.default?.()])])),{getLayoutItem:r,items:u,theme:n}}}),Gl=de({baseColor:String,bgColor:String,color:String,grow:Boolean,mode:{type:String,validator:e=>!e||["horizontal","shift"].includes(e)},height:{type:[Number,String],default:56},active:{type:Boolean,default:!0},...ht(),...ke(),...Ut(),...ft(),...yt(),...Pt({name:"bottom-navigation"}),...Te({tag:"header"}),...Va({selectedClass:"v-btn--selected"}),...qe()},"VBottomNavigation"),Kl=ce()({name:"VBottomNavigation",props:Gl(),emits:{"update:active":e=>!0,"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const{themeClasses:n}=Sa(),{borderClasses:s}=ct(e),{backgroundColorClasses:r,backgroundColorStyles:u}=Be(()=>e.bgColor),{densityClasses:d}=Wt(e),{elevationClasses:y}=dt(e),{roundedClasses:v}=mt(e),{ssrBootStyles:$}=Ge(),b=S(()=>Number(e.height)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0)),m=Ze(e,"active",e.active),{layoutItemStyles:T}=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:N(()=>"bottom"),layoutSize:N(()=>m.value?b.value:0),elementSize:b,active:m,absolute:N(()=>e.absolute)});return Ht(e,gl),vt({VBtn:{baseColor:N(()=>e.baseColor),color:N(()=>e.color),density:N(()=>e.density),stacked:N(()=>e.mode!=="horizontal"),variant:"text"}},{scoped:!0}),me(()=>c(e.tag,{class:le(["v-bottom-navigation",{"v-bottom-navigation--active":m.value,"v-bottom-navigation--grow":e.grow,"v-bottom-navigation--shift":e.mode==="shift"},n.value,r.value,s.value,d.value,y.value,v.value,e.class]),style:j([u.value,T.value,{height:Pe(b.value)},$.value,e.style])},{default:()=>[l.default&&w("div",{class:"v-bottom-navigation__content"},[l.default()])]})),{}}}),Zl=e=>{const{touchstartX:i,touchendX:l,touchstartY:n,touchendY:s}=e,r=.5,u=16;e.offsetX=l-i,e.offsetY=s-n,Math.abs(e.offsetY)<r*Math.abs(e.offsetX)&&(e.left&&l<i-u&&e.left(e),e.right&&l>i+u&&e.right(e)),Math.abs(e.offsetX)<r*Math.abs(e.offsetY)&&(e.up&&s<n-u&&e.up(e),e.down&&s>n+u&&e.down(e))};function Jl(e,i){const l=e.changedTouches[0];i.touchstartX=l.clientX,i.touchstartY=l.clientY,i.start?.({originalEvent:e,...i})}function ei(e,i){const l=e.changedTouches[0];i.touchendX=l.clientX,i.touchendY=l.clientY,i.end?.({originalEvent:e,...i}),Zl(i)}function ti(e,i){const l=e.changedTouches[0];i.touchmoveX=l.clientX,i.touchmoveY=l.clientY,i.move?.({originalEvent:e,...i})}function ai(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const i={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:l=>Jl(l,i),touchend:l=>ei(l,i),touchmove:l=>ti(l,i)}}function li(e,i){const l=i.value,n=l?.parent?e.parentElement:e,s=l?.options??{passive:!0},r=i.instance?.$.uid;if(!n||r===void 0)return;const u=ai(i.value);n._touchHandlers=n._touchHandlers??Object.create(null),n._touchHandlers[r]=u,Yt(u).forEach(d=>{n.addEventListener(d,u[d],s)})}function ii(e,i){const l=i.value?.parent?e.parentElement:e,n=i.instance?.$.uid;if(!l?._touchHandlers||n===void 0)return;const s=l._touchHandlers[n];Yt(s).forEach(r=>{l.removeEventListener(r,s[r])}),delete l._touchHandlers[n]}const ot={mounted:li,unmounted:ii},sa=Symbol.for("vuetify:v-window"),oa=Symbol.for("vuetify:v-window-group"),ra=de({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},verticalArrows:[Boolean,String],touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},crossfade:Boolean,transitionDuration:Number,...ke(),...Te(),...qe()},"VWindow"),Dt=ce()({name:"VWindow",directives:{vTouch:ot},props:ra(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const{themeClasses:n}=Ke(e),{isRtl:s}=rt(),{t:r}=Ta(),u=Ht(e,oa),d=R(),y=S(()=>s.value?!e.reverse:e.reverse),v=ve(!1),$=S(()=>{if(e.crossfade)return"v-window-crossfade-transition";const E=e.direction==="vertical"?"y":"x",h=(y.value?!v.value:v.value)?"-reverse":"";return`v-window-${E}${h}-transition`}),b=ve(0),m=R(void 0),T=S(()=>u.items.value.findIndex(E=>u.selected.value.includes(E.id)));ee(T,(E,p)=>{let h;const k={left:0,top:0};Ct&&p>=0&&(h=Ma(d.value),k.left=h?.scrollLeft,k.top=h?.scrollTop);const V=u.items.value.length,B=V-1;V<=2?v.value=E<p:E===B&&p===0?v.value=!0:E===0&&p===B?v.value=!1:v.value=E<p,Fe(()=>{if(!Ct||!h)return;h.scrollTop!==k.top&&h.scrollTo({...k,behavior:"instant"}),requestAnimationFrame(()=>{if(!h)return;h.scrollTop!==k.top&&h.scrollTo({...k,behavior:"instant"})})})},{flush:"sync"}),Ea(sa,{transition:$,isReversed:v,transitionCount:b,transitionHeight:m,rootRef:d});const L=N(()=>e.continuous||T.value!==0),D=N(()=>e.continuous||T.value!==u.items.value.length-1);function z(){L.value&&u.prev()}function U(){D.value&&u.next()}const G=S(()=>{const E=[],p={icon:s.value?e.nextIcon:e.prevIcon,class:`v-window__${y.value?"right":"left"}`,onClick:u.prev,"aria-label":r("$vuetify.carousel.prev")};E.push(L.value?l.prev?l.prev({props:p}):c(ge,p,null):w("div",null,null));const h={icon:s.value?e.prevIcon:e.nextIcon,class:`v-window__${y.value?"left":"right"}`,onClick:u.next,"aria-label":r("$vuetify.carousel.next")};return E.push(D.value?l.next?l.next({props:h}):c(ge,h,null):w("div",null,null)),E}),A=S(()=>e.touch===!1?e.touch:{...{left:()=>{y.value?z():U()},right:()=>{y.value?U():z()},start:p=>{let{originalEvent:h}=p;h.stopPropagation()}},...e.touch===!0?{}:e.touch});return me(()=>Xt(c(e.tag,{ref:d,class:le(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover","v-window--vertical-arrows":!!e.verticalArrows,"v-window--crossfade":!!e.crossfade},n.value,e.class]),style:j([e.style,e.transitionDuration&&!La?{"--v-window-transition-duration":Pe(e.transitionDuration,"ms")}:void 0])},{default:()=>[w("div",{class:"v-window__container",style:{height:m.value}},[l.default?.({group:u}),e.showArrows!==!1&&w("div",{class:le(["v-window__controls",{"v-window__controls--left":e.verticalArrows==="left"||e.verticalArrows===!0},{"v-window__controls--right":e.verticalArrows==="right"}])},[G.value])]),l.additional?.({group:u})]}),[[ot,A.value]])),{group:u}}}),ua=de({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...ke(),...Fa(),...qa()},"VWindowItem"),qt=ce()({name:"VWindowItem",directives:{vTouch:ot},props:ua(),emits:{"group:selected":e=>!0},setup(e,i){let{slots:l}=i;const n=jt(sa),s=Aa(e,oa),{isBooted:r}=Ge();if(!n||!s)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const u=ve(!1),d=S(()=>r.value&&(n.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function y(){!u.value||!n||(u.value=!1,n.transitionCount.value>0&&(n.transitionCount.value-=1,n.transitionCount.value===0&&(n.transitionHeight.value=void 0)))}function v(){u.value||!n||(u.value=!0,n.transitionCount.value===0&&(n.transitionHeight.value=Pe(n.rootRef.value?.clientHeight)),n.transitionCount.value+=1)}function $(){y()}function b(L){u.value&&Fe(()=>{!d.value||!u.value||!n||(n.transitionHeight.value=Pe(L.clientHeight))})}const m=S(()=>{const L=n.isReversed.value?e.reverseTransition:e.transition;return d.value?{name:typeof L!="string"?n.transition.value:L,onBeforeEnter:v,onAfterEnter:y,onEnterCancelled:$,onBeforeLeave:v,onAfterLeave:y,onLeaveCancelled:$,onEnter:b}:!1}),{hasContent:T}=Ba(e,s.isSelected);return me(()=>c(Da,{transition:m.value,disabled:!r.value},{default:()=>[Xt(w("div",{class:le(["v-window-item",s.selectedClass.value,e.class]),style:j(e.style)},[T.value&&l.default?.()]),[[Ra,s.isSelected.value]])]})),{groupItem:s}}}),ni=de({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ht(),...ke(),...ft(),...Pt(),...yt(),...Te({tag:"footer"}),...qe()},"VFooter"),si=ce()({name:"VFooter",props:ni(),setup(e,i){let{slots:l}=i;const n=R(),{themeClasses:s}=Ke(e),{backgroundColorClasses:r,backgroundColorStyles:u}=Be(()=>e.color),{borderClasses:d}=ct(e),{elevationClasses:y}=dt(e),{roundedClasses:v}=mt(e),$=ve(32),{resizeRef:b}=za(T=>{T.length&&($.value=T[0].target.clientHeight)}),m=S(()=>e.height==="auto"?$.value:parseInt(e.height,10));return Me(()=>e.app,()=>{const T=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:N(()=>"bottom"),layoutSize:m,elementSize:S(()=>e.height==="auto"?void 0:m.value),active:N(()=>e.app),absolute:N(()=>e.absolute)});pt(()=>{n.value=T.layoutItemStyles.value})}),me(()=>c(e.tag,{ref:b,class:le(["v-footer",s.value,r.value,d.value,y.value,v.value,e.class]),style:j([u.value,e.app?n.value:{height:Pe(e.height)},e.style])},l)),{}}});function oi(e){let{rootEl:i,isSticky:l,layoutItemStyles:n}=e;const s=ve(!1),r=ve(0),u=S(()=>{const v=typeof s.value=="boolean"?"top":s.value;return[l.value?{top:"auto",bottom:"auto",height:void 0}:void 0,s.value?{[v]:Pe(r.value)}:{top:n.value.top}]});we(()=>{ee(l,v=>{v?window.addEventListener("scroll",y,{passive:!0}):window.removeEventListener("scroll",y)},{immediate:!0})}),De(()=>{window.removeEventListener("scroll",y)});let d=0;function y(){const v=d>window.scrollY?"up":"down",$=i.value.getBoundingClientRect(),b=parseFloat(n.value.top??0),m=window.scrollY-Math.max(0,r.value-b),T=$.height+Math.max(r.value,b)-window.scrollY-window.innerHeight,L=parseFloat(getComputedStyle(i.value).getPropertyValue("--v-body-scroll-y"))||0;$.height<window.innerHeight-b?(s.value="top",r.value=b):v==="up"&&s.value==="bottom"||v==="down"&&s.value==="top"?(r.value=window.scrollY+$.top-L,s.value=!0):v==="down"&&T<=0?(r.value=0,s.value="bottom"):v==="up"&&m<=0&&(L?s.value!=="top"&&(r.value=-m+L+b,s.value="top"):(r.value=$.top+m,s.value="top")),d=window.scrollY}return{isStuck:s,stickyStyles:u}}const ri=100,ui=20;function Ft(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function zt(e){if(e.length<2)return 0;if(e.length===2)return e[1].t===e[0].t?0:(e[1].d-e[0].d)/(e[1].t-e[0].t);let i=0;for(let l=e.length-1;l>0;l--){if(e[l].t===e[l-1].t)continue;const n=Ft(i),s=(e[l].d-e[l-1].d)/(e[l].t-e[l-1].t);i+=(s-n)*Math.abs(s),l===e.length-1&&(i*=.5)}return Ft(i)*1e3}function ci(){const e={};function i(s){Array.from(s.changedTouches).forEach(r=>{(e[r.identifier]??(e[r.identifier]=new Oa(ui))).push([s.timeStamp,r])})}function l(s){Array.from(s.changedTouches).forEach(r=>{delete e[r.identifier]})}function n(s){const r=e[s]?.values().reverse();if(!r)throw new Error(`No samples for touch id ${s}`);const u=r[0],d=[],y=[];for(const v of r){if(u[0]-v[0]>ri)break;d.push({t:v[0],d:v[1].clientX}),y.push({t:v[0],d:v[1].clientY})}return{x:zt(d),y:zt(y),get direction(){const{x:v,y:$}=this,[b,m]=[Math.abs(v),Math.abs($)];return b>m&&v>=0?"right":b>m&&v<=0?"left":m>b&&$>=0?"down":m>b&&$<=0?"up":di()}}}return{addMovement:i,endTouch:l,getVelocity:n}}function di(){throw new Error}function mi(e){let{el:i,isActive:l,isTemporary:n,width:s,touchless:r,position:u}=e;we(()=>{window.addEventListener("touchstart",G,{passive:!0}),window.addEventListener("touchmove",A,{passive:!1}),window.addEventListener("touchend",E,{passive:!0})}),De(()=>{window.removeEventListener("touchstart",G),window.removeEventListener("touchmove",A),window.removeEventListener("touchend",E)});const d=S(()=>["left","right"].includes(u.value)),{addMovement:y,endTouch:v,getVelocity:$}=ci();let b=!1;const m=ve(!1),T=ve(0),L=ve(0);let D;function z(h,k){return(u.value==="left"?h:u.value==="right"?document.documentElement.clientWidth-h:u.value==="top"?h:u.value==="bottom"?document.documentElement.clientHeight-h:Ie())-(k?s.value:0)}function U(h){let k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const V=u.value==="left"?(h-L.value)/s.value:u.value==="right"?(document.documentElement.clientWidth-h-L.value)/s.value:u.value==="top"?(h-L.value)/s.value:u.value==="bottom"?(document.documentElement.clientHeight-h-L.value)/s.value:Ie();return k?Na(V):V}function G(h){if(r.value)return;const k=h.changedTouches[0].clientX,V=h.changedTouches[0].clientY,B=25,q=u.value==="left"?k<B:u.value==="right"?k>document.documentElement.clientWidth-B:u.value==="top"?V<B:u.value==="bottom"?V>document.documentElement.clientHeight-B:Ie(),P=l.value&&(u.value==="left"?k<s.value:u.value==="right"?k>document.documentElement.clientWidth-s.value:u.value==="top"?V<s.value:u.value==="bottom"?V>document.documentElement.clientHeight-s.value:Ie());(q||P||l.value&&n.value)&&(D=[k,V],L.value=z(d.value?k:V,l.value),T.value=U(d.value?k:V),b=L.value>-20&&L.value<80,v(h),y(h))}function A(h){const k=h.changedTouches[0].clientX,V=h.changedTouches[0].clientY;if(b){if(!h.cancelable){b=!1;return}const q=Math.abs(k-D[0]),P=Math.abs(V-D[1]);(d.value?q>P&&q>3:P>q&&P>3)?(m.value=!0,b=!1):(d.value?P:q)>3&&(b=!1)}if(!m.value)return;h.preventDefault(),y(h);const B=U(d.value?k:V,!1);T.value=Math.max(0,Math.min(1,B)),B>1?L.value=z(d.value?k:V,!0):B<0&&(L.value=z(d.value?k:V,!1))}function E(h){if(b=!1,!m.value)return;y(h),m.value=!1;const k=$(h.changedTouches[0].identifier),V=Math.abs(k.x),B=Math.abs(k.y);(d.value?V>B&&V>400:B>V&&B>3)?l.value=k.direction===({left:"right",right:"left",top:"down",bottom:"up"}[u.value]||Ie()):l.value=T.value>.5}const p=S(()=>m.value?{transform:u.value==="left"?`translateX(calc(-100% + ${T.value*s.value}px))`:u.value==="right"?`translateX(calc(100% - ${T.value*s.value}px))`:u.value==="top"?`translateY(calc(-100% + ${T.value*s.value}px))`:u.value==="bottom"?`translateY(calc(100% - ${T.value*s.value}px))`:Ie(),transition:"none"}:void 0);return Me(m,()=>{const h=i.value?.style.transform??null,k=i.value?.style.transition??null;pt(()=>{i.value?.style.setProperty("transform",p.value?.transform||"none"),i.value?.style.setProperty("transition",p.value?.transition||null)}),Wa(()=>{i.value?.style.setProperty("transform",h),i.value?.style.setProperty("transition",k)})}),{isDragging:m,dragProgress:T,dragStyles:p}}function Ie(){throw new Error}const vi=["start","end","left","right","top","bottom"],yi=de({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>vi.includes(e)},sticky:Boolean,...ht(),...ke(),...Ka(),...Ga({mobile:null}),...ft(),...Pt(),...yt(),...Te({tag:"nav"}),...qe()},"VNavigationDrawer"),fi=ce()({name:"VNavigationDrawer",props:yi(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,i){let{attrs:l,emit:n,slots:s}=i;const{isRtl:r}=rt(),{themeClasses:u}=Ke(e),{borderClasses:d}=ct(e),{backgroundColorClasses:y,backgroundColorStyles:v}=Be(()=>e.color),{elevationClasses:$}=dt(e),{displayClasses:b,mobile:m}=gt(e),{roundedClasses:T}=mt(e),L=Ha(),D=Ze(e,"modelValue",null,Y=>!!Y),{ssrBootStyles:z}=Ge(),{scopeId:U}=Gt(),G=R(),A=ve(!1),{runOpenDelay:E,runCloseDelay:p}=Xa(e,Y=>{A.value=Y}),h=S(()=>e.rail&&e.expandOnHover&&A.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),k=S(()=>Ua(e.location,r.value)),V=N(()=>e.persistent),B=S(()=>!e.permanent&&(m.value||e.temporary)),q=S(()=>e.sticky&&!B.value&&k.value!=="bottom");Me(()=>e.expandOnHover&&e.rail!=null,()=>{ee(A,Y=>n("update:rail",!Y))}),Me(()=>!e.disableResizeWatcher,()=>{ee(B,Y=>!e.permanent&&Fe(()=>D.value=!Y))}),Me(()=>!e.disableRouteWatcher&&!!L,()=>{ee(L.currentRoute,()=>B.value&&(D.value=!1))}),ee(()=>e.permanent,Y=>{Y&&(D.value=!0)}),e.modelValue==null&&!B.value&&(D.value=e.permanent||!m.value);const{isDragging:P,dragProgress:g}=mi({el:G,isActive:D,isTemporary:B,width:h,touchless:N(()=>e.touchless),position:k}),x=S(()=>{const Y=B.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):h.value;return P.value?Y*g.value:Y}),{layoutItemStyles:O,layoutItemScrimStyles:Z}=bt({id:e.name,order:S(()=>parseInt(e.order,10)),position:k,layoutSize:x,elementSize:h,active:Ya(D),disableTransitions:N(()=>P.value),absolute:S(()=>e.absolute||q.value&&typeof te.value!="string")}),{isStuck:te,stickyStyles:ye}=oi({rootEl:G,isSticky:q,layoutItemStyles:O}),oe=Be(()=>typeof e.scrim=="string"?e.scrim:null),fe=S(()=>({...P.value?{opacity:g.value*.2,transition:"none"}:void 0,...Z.value}));return vt({VList:{bgColor:"transparent"}}),me(()=>{const Y=s.image||e.image;return w(X,null,[c(e.tag,K({ref:G,onMouseenter:E,onMouseleave:p,class:["v-navigation-drawer",`v-navigation-drawer--${k.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":A.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":B.value,"v-navigation-drawer--persistent":V.value,"v-navigation-drawer--active":D.value,"v-navigation-drawer--sticky":q.value},u.value,y.value,d.value,b.value,$.value,T.value,e.class],style:[v.value,O.value,z.value,ye.value,e.style]},U,l),{default:()=>[Y&&w("div",{key:"image",class:"v-navigation-drawer__img"},[s.image?c(Za,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},s.image):c(Ye,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),s.prepend&&w("div",{class:"v-navigation-drawer__prepend"},[s.prepend?.()]),w("div",{class:"v-navigation-drawer__content"},[s.default?.()]),s.append&&w("div",{class:"v-navigation-drawer__append"},[s.append?.()])]}),c(ja,{name:"fade-transition"},{default:()=>[B.value&&(P.value||D.value)&&!!e.scrim&&w("div",K({class:["v-navigation-drawer__scrim",oe.backgroundColorClasses.value],style:[fe.value,oe.backgroundColorStyles.value],onClick:()=>{V.value||(D.value=!1)}},U),null)]})])}),{isStuck:te}}}),kt=Symbol.for("vuetify:v-tabs"),ca=de({fixed:Boolean,sliderColor:String,hideSlider:Boolean,direction:{type:String,default:"horizontal"},...ut(_l({selectedClass:"v-tab--selected",variant:"text"}),["active","block","flat","location","position","symbol"])},"VTab"),He=ce()({name:"VTab",props:ca(),setup(e,i){let{slots:l,attrs:n}=i;const{textColorClasses:s,textColorStyles:r}=Ja(()=>e.sliderColor),u=R(),d=R(),y=S(()=>e.direction==="horizontal"),v=S(()=>u.value?.group?.isSelected.value??!1);function $(b){let{value:m}=b;if(m){const T=u.value?.$el.parentElement?.querySelector(".v-tab--selected .v-tab__slider"),L=d.value;if(!T||!L)return;const D=getComputedStyle(T).color,z=T.getBoundingClientRect(),U=L.getBoundingClientRect(),G=y.value?"x":"y",A=y.value?"X":"Y",E=y.value?"right":"bottom",p=y.value?"width":"height",h=z[G],k=U[G],V=h>k?z[E]-U[E]:z[G]-U[G],B=Math.sign(V)>0?y.value?"right":"bottom":Math.sign(V)<0?y.value?"left":"top":"center",P=(Math.abs(V)+(Math.sign(V)<0?z[p]:U[p]))/Math.max(z[p],U[p])||0,g=z[p]/U[p]||0,x=1.5;tl(L,{backgroundColor:[D,"currentcolor"],transform:[`translate${A}(${V}px) scale${A}(${g})`,`translate${A}(${V/x}px) scale${A}(${(P-1)/x+1})`,"none"],transformOrigin:Array(3).fill(B)},{duration:225,easing:al})}}return me(()=>{const b=ge.filterProps(e);return c(ge,K({symbol:kt,ref:u,class:["v-tab",e.class],style:e.style,tabindex:v.value?0:-1,role:"tab","aria-selected":String(v.value),active:!1},b,n,{block:e.fixed,maxWidth:e.fixed?300:void 0,"onGroup:selected":$}),{...l,default:()=>w(X,null,[l.default?.()??e.text,!e.hideSlider&&w("div",{ref:d,class:le(["v-tab__slider",s.value]),style:j(r.value)},null)])})}),el({},u)}}),hi=de({...ut(ra(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VTabsWindow"),pi=ce()({name:"VTabsWindow",props:hi(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:l}=i;const n=jt(kt,null),s=Ze(e,"modelValue"),r=S({get(){return s.value!=null||!n?s.value:n.items.value.find(u=>n.selected.value.includes(u.id))?.value},set(u){s.value=u}});return me(()=>{const u=Dt.filterProps(e);return c(Dt,K({_as:"VTabsWindow"},u,{modelValue:r.value,"onUpdate:modelValue":d=>r.value=d,class:["v-tabs-window",e.class],style:e.style,mandatory:!1,touch:!1}),l)}),{}}}),gi=de({...ua()},"VTabsWindowItem"),_i=ce()({name:"VTabsWindowItem",props:gi(),setup(e,i){let{slots:l}=i;return me(()=>{const n=qt.filterProps(e);return c(qt,K({_as:"VTabsWindowItem"},n,{class:["v-tabs-window-item",e.class],style:e.style}),l)}),{}}});function bi(e){return e?e.map(i=>nl(i)?i:{text:i,value:i}):[]}const Pi=de({alignTabs:{type:String,default:"start"},color:String,fixedTabs:Boolean,items:{type:Array,default:()=>[]},stacked:Boolean,bgColor:String,grow:Boolean,height:{type:[Number,String],default:void 0},hideSlider:Boolean,sliderColor:String,...il(ca(),["spaced"]),...ll({mandatory:"force",selectedClass:"v-tab-item--selected"}),...Ut(),...Te()},"VTabs"),wi=ce()({name:"VTabs",props:Pi(),emits:{"update:modelValue":e=>!0},setup(e,i){let{attrs:l,slots:n}=i;const s=Ze(e,"modelValue"),r=S(()=>bi(e.items)),{densityClasses:u}=Wt(e),{backgroundColorClasses:d,backgroundColorStyles:y}=Be(()=>e.bgColor),{scopeId:v}=Gt();return vt({VTab:{color:N(()=>e.color),direction:N(()=>e.direction),stacked:N(()=>e.stacked),fixed:N(()=>e.fixedTabs),sliderColor:N(()=>e.sliderColor),hideSlider:N(()=>e.hideSlider)}}),me(()=>{const $=$t.filterProps(e),b=!!(n.window||e.items.length>0);return w(X,null,[c($t,K($,{modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,class:["v-tabs",`v-tabs--${e.direction}`,`v-tabs--align-tabs-${e.alignTabs}`,{"v-tabs--fixed-tabs":e.fixedTabs,"v-tabs--grow":e.grow,"v-tabs--stacked":e.stacked},u.value,d.value,e.class],style:[{"--v-tabs-height":Pe(e.height)},y.value,e.style],role:"tablist",symbol:kt},v,l),{default:()=>[n.default?.()??r.value.map(m=>n.tab?.({item:m})??c(He,K(m,{key:m.text,value:m.value,spaced:e.spaced}),{default:n[`tab.${m.value}`]?()=>n[`tab.${m.value}`]?.({item:m}):void 0}))]}),b&&c(pi,K({modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,key:"tabs-window"},v),{default:()=>[r.value.map(m=>n.item?.({item:m})??c(_i,{value:m.value},{default:()=>n[`item.${m.value}`]?.({item:m})})),n.window?.()]})])}),{}}}),ki=W({__name:"Icon",props:sl({variant:{},width:{},height:{},staticWidth:{},staticHeight:{},maxWidth:{},maxHeight:{},minWidth:{},minHeight:{},icon:{},color:{},disabled:{type:Boolean},size:{},badge:{type:Boolean},class:{},style:{}},Yl),emits:["click"],setup(e,{emit:i}){const l=e,n=i,{iconProps:s,containerStyle:r,containerClasses:u,iconClasses:d}=Ul(l),y=R(),v=R(),$=async()=>{if(!(l.variant!=="responsive"||!y.value||!v.value)){await Fe();try{const m=y.value.offsetWidth,T=y.value.offsetHeight,L=Math.min(m,T);v.value.$el&&(v.value.$el.style.fontSize=`${L}px`)}catch(m){console.error("Icon sizing adjustment failed:",m)}}},b=m=>{if(l.disabled){m.preventDefault(),m.stopPropagation();return}n("click",m)};return we(()=>{l.variant==="responsive"&&($(),window.addEventListener("resize",$))}),De(()=>{l.variant==="responsive"&&window.removeEventListener("resize",$)}),(m,T)=>(o(),_("div",{ref_key:"iconContainer",ref:y,class:le(t(u)),style:j(t(r)),onClick:b},[c(at,{"model-value":e.badge===!0,color:"error",dot:""},{default:f(()=>[c(t(ae),K({ref_key:"iconElement",ref:v},t(s),{class:t(d)}),Nt({_:2},[ue(m.$slots,(L,D)=>({name:D,fn:f(()=>[ol(m.$slots,D,{},void 0,!0)])}))]),1040,["class"])]),_:3},8,["model-value"])],6))}}),xe=se(ki,[["__scopeId","data-v-3db51b10"]]),da=W({__name:"RepeatBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(i,l)=>e.isVisible&&e.playerQueue?(o(),Q(xe,K({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:t(Qe)(e.icon?.color,[[e.playerQueue.repeat_mode==t(re).OFF,null],[e.playerQueue.repeat_mode==t(re).ALL,"primary"],[e.playerQueue.repeat_mode==t(re).ONE,"primary"]]),icon:t(Qe)(e.icon?.icon,[[e.playerQueue.repeat_mode==t(re).OFF,"mdi-repeat-off"],[e.playerQueue.repeat_mode==t(re).ALL,"mdi-repeat"],[e.playerQueue.repeat_mode==t(re).ONE,"mdi-repeat-once"],[!0,"mdi-repeat-off"]]),variant:"button",onClick:l[0]||(l[0]=n=>t(M).queueCommandRepeat(e.playerQueue.queue_id||"",t(Qe)(null,[[e.playerQueue.repeat_mode==t(re).OFF,t(re).ONE],[e.playerQueue.repeat_mode==t(re).ALL,t(re).OFF],[e.playerQueue.repeat_mode==t(re).ONE,t(re).ALL]])))}),null,16,["disabled","color","icon"])):I("",!0)}});function Je(e){return{activeSource:S(()=>{const l=typeof e=="object"&&"value"in e?e.value:e;if(!(!l?.active_source||!l?.source_list))return l.source_list.find(n=>n.id===l.active_source)})}}const ma=W({__name:"NextBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>i.playerQueue?.active?(i.playerQueue.current_index||0)<i.playerQueue.items-1:!1),s=S(()=>!i.player||i.playerQueue?.active||!i.player.current_media?!1:i.player.supported_features.includes(Ee.NEXT_PREVIOUS)),r=S(()=>l.value?l.value.can_next_previous:n.value||s.value);return(u,d)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:"mdi-skip-next-outline",variant:"button",onClick:d[0]||(d[0]=y=>t(M).playerCommandNext(e.player.player_id))}),null,16,["disabled"])):I("",!0)}}),va=W({__name:"PlayBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},withCircle:{type:Boolean,default:!0},icon:{default:void 0},iconStyle:{default:"circle"}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>i.playerQueue?i.playerQueue.items>0:!1),s=S(()=>!(!i.player||i.playerQueue?.active||!i.player.current_media)),r=S(()=>l.value?l.value.can_play_pause:n.value||s.value),u=S(()=>i.player?.playback_state==Re.PLAYING?"mdi-pause":"mdi-play");return(d,y)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:e.iconStyle?`${u.value}-${e.iconStyle}`:u.value,variant:"button",onClick:y[0]||(y[0]=v=>t(M).playerCommandPlayPause(e.player.player_id))}),null,16,["disabled","icon"])):I("",!0)}}),ya=W({__name:"PreviousBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=e,{activeSource:l}=Je(N(i,"player")),n=S(()=>!i.playerQueue?.active||!i.playerQueue?.items||!i.playerQueue.current_index?!1:i.playerQueue.current_index>0),s=S(()=>!i.player||i.playerQueue?.active||!i.player.current_media?!1:i.player.supported_features.includes(Ee.NEXT_PREVIOUS)),r=S(()=>l.value?l.value.can_next_previous:n.value||s.value);return(u,d)=>e.isVisible&&e.player?(o(),Q(xe,K({key:0},e.icon,{disabled:!r.value,icon:"mdi-skip-previous-outline",variant:"button",onClick:d[0]||(d[0]=y=>t(M).playerCommandPrevious(e.player.player_id))}),null,16,["disabled"])):I("",!0)}}),fa=W({__name:"ShuffleBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(i,l)=>e.isVisible&&e.playerQueue?(o(),Q(xe,K({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:t(Qe)(e.icon?.color,[[e.playerQueue.shuffle_enabled,"primary",""]]),icon:t(Qe)(e.icon?.icon,[[e.playerQueue.shuffle_enabled,"mdi-shuffle"],[e.playerQueue.shuffle_enabled==!1,"mdi-shuffle-disabled"],[!0,"mdi-shuffle"]]),variant:"button",onClick:l[0]||(l[0]=n=>t(M).queueCommandShuffle(e.playerQueue.queue_id,!e.playerQueue.shuffle_enabled))}),null,16,["disabled","color","icon"])):I("",!0)}}),xi={key:0,class:"player-controls"},Ii={key:0,class:"player-controls-elements"},Ci={key:1,class:"player-controls-elements"},$i={key:2},Qi={key:3,class:"player-controls-elements"},Si={key:4,class:"player-controls-elements"},Ot=W({__name:"PlayerControls",props:{visibleComponents:{default:()=>({repeat:{isVisible:!0},shuffle:{isVisible:!0},play:{isVisible:!0},previous:{isVisible:!0},next:{isVisible:!0}})}},setup(e){return(i,l)=>e.visibleComponents?(o(),_("div",xi,[e.visibleComponents&&e.visibleComponents.shuffle?.isVisible?(o(),_("div",Ii,[c(fa,{"player-queue":t(a).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.shuffle.icon},null,8,["player-queue","icon"])])):I("",!0),e.visibleComponents&&e.visibleComponents.previous?.isVisible?(o(),_("div",Ci,[c(ya,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.previous.icon},null,8,["player","player-queue","icon"])])):I("",!0),e.visibleComponents&&e.visibleComponents.play?.isVisible?(o(),_("div",$i,[c(va,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","icon-style":"circle",icon:e.visibleComponents.play.icon},null,8,["player","player-queue","icon"])])):I("",!0),e.visibleComponents&&e.visibleComponents.next?.isVisible?(o(),_("div",Qi,[c(ma,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,icon:e.visibleComponents.next.icon,"static-height":"24px","static-width":"24px"},null,8,["player","player-queue","icon"])])):I("",!0),e.visibleComponents&&e.visibleComponents.repeat?.isVisible?(o(),_("div",Si,[c(da,{"player-queue":t(a).activePlayerQueue,icon:e.visibleComponents.repeat.icon,"static-height":"24px","static-width":"24px"},null,8,["player-queue","icon"])])):I("",!0)])):I("",!0)}}),ha=W({__name:"QueueBtn",props:{isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const i=function(){a.showFullscreenPlayer&&a.showQueueItems?a.showQueueItems=!1:a.showFullscreenPlayer&&!a.showQueueItems?a.showQueueItems=!0:(a.showQueueItems=!0,a.showFullscreenPlayer=!0)};return(l,n)=>e.isVisible?(o(),Q(xe,K({key:0},e.icon,{disabled:!t(a).activePlayerId||t(a).showFullscreenPlayer&&!t(a).curQueueItem&&!t(a).showQueueItems,icon:"mdi-playlist-play",color:t(Qe)(e.icon?.color,[[t(a).showFullscreenPlayer&&t(a).showQueueItems,"primary",""]]),variant:"button",onClick:i}),null,16,["disabled","color"])):I("",!0)}}),pa=W({__name:"SpeakerBtn",props:{color:{}},setup(e){return(i,l)=>(o(),Q(pe,{variant:"icon",ripple:!1,icon:"",onClick:l[0]||(l[0]=n=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ae,{color:e.color?e.color:"",size:24,icon:t(a).activePlayer?.group_members.length?"mdi-speaker-multiple":"mdi-speaker"},null,8,["color","icon"])]),_:1}))}}),Vi={key:0},Ti={key:0},Li={class:"text-caption"},Mi={key:1},Ei=W({__name:"VolumeBtn",props:{volumeSize:{default:"150px"},responsiveVolumeSize:{type:Boolean,default:!0},isVisible:{type:Boolean,default:!0},color:{default:""}},setup(e){const i=e,l=R(!1);return(n,s)=>i.isVisible&&t(a).activePlayer?(o(),_("div",Vi,[c(_t,{modelValue:l.value,"onUpdate:modelValue":s[1]||(s[1]=r=>l.value=r),class:"volume-control-dialog","close-on-content-click":!1,location:"top",scrim:n.$vuetify.theme.current.dark?"rgba(0,0,0,.75)":"rgba(0,0,0,.85)"},{activator:f(({props:r})=>[t(ie)("bp6")||!e.responsiveVolumeSize?(o(),_("div",Ti,[c(wt,{style:"margin-right: 0px; margin-left: 0px;",width:e.volumeSize,"is-powered":!0,"model-value":t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0),"allow-wheel":!0,"onUpdate:modelValue":s[0]||(s[0]=u=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayer?.player_id||"",u):t(M).playerCommandVolumeSet(t(a).activePlayer?.player_id||"",u))},{prepend:f(()=>[c(pe,K({variant:"icon",size:"48",ripple:!1},{...r}),{default:f(()=>[c(ae,{color:i.color?e.color:"",size:24,icon:"mdi-volume-high"},null,8,["color"]),w("div",Li,C(t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0)),1)]),_:1},16)]),_:2},1032,["width","model-value"])])):(o(),_("div",Mi,[c(pe,K({...r},{size:"48",variant:"icon"}),{default:f(()=>[c(ae,{color:i.color?e.color:"",icon:"mdi-volume-high"},null,8,["color"]),w("div",{class:"text-caption",style:j({color:i.color?e.color:""})},C(t(a).activePlayer.group_members.length>0?Math.round(t(a).activePlayer?.group_volume||0):Math.round(t(a).activePlayer?.volume_level||0)),5)]),_:1},16)]))]),default:f(()=>[c(Ue,{"min-width":300,style:{overflow:"hidden","padding-top":"20px","padding-bottom":"20px","padding-right":"20px"}},{default:f(()=>[t(a).activePlayer?(o(),Q(Cl,{key:0,player:t(a).activePlayer,"show-sub-players":!0,"show-sync-controls":!1,"show-heading-row":!0,"show-volume-control":!0,"allow-wheel":!0,style:{"margin-left":"18px"}},null,8,["player"])):I("",!0)]),_:1})]),_:1},8,["modelValue","scrim"])])):I("",!0)}}),Ai=se(Ei,[["__scopeId","data-v-70c82677"]]),Bi=W({__name:"PlayerExtendedControls",props:{queue:{default:()=>({isVisible:!0,showQueueDialog:!1})},player:{default:()=>({isVisible:!0})},volume:{default:()=>({isVisible:!0,volumeSize:"150px",responsiveVolumeSize:!1})}},setup(e){return(i,l)=>(o(),_(X,null,[e.player&&e.player.isVisible?(o(),Q(pa,{key:0,color:e.player.color},null,8,["color"])):I("",!0),e.queue&&e.queue.isVisible?(o(),Q(ha,{key:1,color:e.player.color,style:{"padding-left":"15px","padding-right":"20px"}},null,8,["color"])):I("",!0),e.volume&&e.volume.isVisible?(o(),Q(Ai,{key:2,color:e.volume.color,"volume-size":e.volume.volumeSize,"responsive-volume-size":e.volume.responsiveVolumeSize},null,8,["color","volume-size","responsive-volume-size"])):I("",!0)],64))}});function Se(e,i,l){if(e===void 0||i===void 0||l!==void 0&&l!==Re.PLAYING)return e;const n=i*1e3,s=Date.now(),u=Math.max(0,s-n)/1e3;return e+u}const Ri={style:{width:"auto",height:"24px"}},Di={key:0,style:{width:"100%"}},qi=["onClick"],Fi={key:0,class:"time-text-row"},zi={class:"text-caption time-text-right"},Oi=W({__name:"PlayerTimeline",props:{showLabels:{type:Boolean,default:!1},color:{default:void 0}},setup(e){const{activeSource:i}=Je(N(a,"activePlayer")),l=R(!1),n=R(!0),s=R(!1),r=R(0),u=R(0),d=R(0);let y=null;const v=(A=500)=>{y||(y=setInterval(()=>d.value=Date.now(),A))},$=()=>{y&&(clearInterval(y),y=null)};Kt(()=>{$()});const b=S(()=>{if(i.value){if(a.activePlayer?.powered===!1)return!1;const A=!!a.curQueueItem?.duration,p=!!a.activePlayer?.current_media?.duration;return a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.current_media?.media_type==F.RADIO?!1:!!(i.value.can_seek&&(A||p))}return!(a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.powered==!1||!a.curQueueItem||!a.curQueueItem.media_item||!a.curQueueItem.duration)}),m=S(()=>{if(a.curQueueItem)return l.value?`-${be(a.curQueueItem.duration-L.value)}`:`${be(L.value)}`;if(a.activePlayer?.current_media?.elapsed_time!=null||a.activePlayer?.elapsed_time!=null){const A=L.value||0;return l.value&&a.activePlayer?.current_media?.duration?`-${be(a.activePlayer.current_media.duration-A)}`:`${be(A)}`}return"0:00"}),T=S(()=>{const A=a.curQueueItem?.duration||a.activePlayer?.current_media?.duration;return!A||a.curQueueItem?.media_item?.media_type==F.RADIO||a.activePlayer?.current_media?.media_type==F.RADIO?"":be(A)}),L=S(()=>{d.value;const A=a.activePlayer?.playback_state==="playing",E=!!(a.activePlayerQueue&&a.activePlayerQueue.active),p=a.activePlayer?.current_media?.elapsed_time!=null;if(A&&(E||p)?v():$(),s.value)return u.value=r.value,r.value;const h=a.activePlayerQueue;return h?.elapsed_time!=null&&h?.elapsed_time_last_updated!=null?Se(h.elapsed_time,h.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:a.activePlayer?.current_media?.elapsed_time!=null&&a.activePlayer?.current_media?.elapsed_time_last_updated!=null?Se(a.activePlayer.current_media.elapsed_time,a.activePlayer.current_media.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:a.activePlayer?.elapsed_time!=null&&a.activePlayer?.elapsed_time_last_updated!=null?Se(a.activePlayer.elapsed_time,a.activePlayer.elapsed_time_last_updated,a.activePlayer?.playback_state)??0:0}),D=S(()=>{const A={};return a.curQueueItem?.media_item?.metadata?.chapters&&a.curQueueItem.media_item.metadata.chapters.forEach(E=>{A[E.start]=E.name}),A});ee(L,A=>{s.value||(r.value=A)});const z=function(){s.value=!0},U=()=>{s.value=!1,!s.value&&a.activePlayer&&M.playerCommandSeek(a.activePlayer.player_id,Math.round(u.value))},G=function(A){if(a.curQueueItem?.media_item?.metadata?.chapters){for(const E of a.curQueueItem.media_item.metadata.chapters)if(E.start==A){M.playMedia(a.curQueueItem.media_item.uri,void 0,void 0,E.position.toString());return}}};return(A,E)=>(o(),_("div",Ri,[t(a).activePlayer?(o(),_("div",Di,[c(Ql,{modelValue:r.value,"onUpdate:modelValue":E[0]||(E[0]=p=>r.value=p),disabled:!b.value,style:{width:"100%"},min:0,max:t(a).curQueueItem?.duration||t(a).activePlayer?.current_media?.duration,"hide-details":"","track-size":4,"thumb-size":n.value?0:10,"show-ticks":D.value?"always":!1,ticks:D.value,"tick-size":"4",color:e.color,onTouchstart:E[1]||(E[1]=p=>n.value=!1),onTouchend:E[2]||(E[2]=p=>n.value=!0),onMouseenter:E[3]||(E[3]=p=>n.value=!1),onMouseleave:E[4]||(E[4]=p=>n.value=!0),onStart:z,onEnd:U},{"tick-label":f(({tick:p})=>[e.showLabels&&!n.value&&Object.values(D.value).length<6?(o(),_("a",{key:0,class:"text-caption",onClick:h=>G(p.value)},C(p.label),9,qi)):I("",!0)]),_:1},8,["modelValue","disabled","max","thumb-size","show-ticks","ticks","color"]),e.showLabels?(o(),_("div",Fi,[w("div",{class:"text-caption time-text-left",onClick:E[5]||(E[5]=p=>l.value?l.value=!1:l.value=!0)},C(m.value),1),w("div",zi,C(T.value),1)])):I("",!0)])):I("",!0)]))}}),ga=se(Oi,[["__scopeId","data-v-1b667236"]]),Ni={class:"lyrics-container"},Wi={key:0,class:"lyrics-loading"},Hi={key:1,class:"lyrics-empty"},Ui={key:2,class:"lyrics-intro"},Yi={class:"song-title"},Xi={class:"artist-name"},ji={class:"lyrics-coming-soon"},Gi=W({__name:"LyricsViewer",props:{mediaItem:{default:void 0},position:{default:void 0},duration:{default:void 0},streamDetails:{default:void 0},textColor:{default:"#FFFFFF"},debugMode:{type:Boolean,default:!1}},setup(e){Zt(p=>({v3c09aed1:p.textColor}));const i=e,l=(p,h=!0)=>{if(h&&!i.debugMode)return;(h?console.debug:console.log)(`[lyricSynch] ${p}`)},n=R([]),s=R(!1),r=R(-1),u=R(null),d=R(!1),y=R(0),v=R(0),$=S(()=>{if(!m.value||!n.value.length)return!1;const p=n.value[0].time,h=i.position||0;return r.value===-1&&h<p}),b=S(()=>{if(!i.mediaItem)return"";if("media_type"in i.mediaItem&&i.mediaItem.media_type==="track"){const p=i.mediaItem;if(p.artists?.length)return p.artists.map(h=>h.name).join(", ")}return"media_type"in i.mediaItem&&i.mediaItem.media_type==="artist"?i.mediaItem.name:""});S(()=>{const p=i.mediaItem?.metadata?.lyrics,h=i.mediaItem?.metadata?.lrc_lyrics;return!!p&&p.trim().length>0||!!h&&h.trim().length>0});const m=S(()=>{if(n.value.some(k=>k.time>0))return!0;const p=i.mediaItem?.metadata?.lrc_lyrics,h=i.mediaItem?.metadata?.lyrics;return!!(p&&p.includes("[")||h&&/\[\d+:\d+[.:]?\d*\]/.test(h))}),T=p=>{const h=p.match(/\[(\d+):(\d+)([.:]\d+)?\](.*)/);if(h){const k=parseInt(h[1]);let V=parseInt(h[2]),B=0;if(h[3]){const g=h[3].replace(/[.:]/,".");B=Math.round(parseFloat(g)*1e3)}return{time:(k*60*1e3+V*1e3+B)/1e3,text:h[4].trim()||" "}}return{time:0,text:p.trim()||" "}},L=()=>{if(!i.mediaItem){n.value=[];return}s.value=!0;try{const p=i.mediaItem.metadata?.lrc_lyrics||"",h=i.mediaItem.metadata?.lyrics||"";let k="",V=!1;if(p?(k=p,V=!0):h&&/\[\d+:\d+[.:]?\d*\]/.test(h)?(k=h,V=!0):h&&(k=h,V=!1),V){const B=k.split(`
|
|
2
|
+
`).filter(q=>q.trim());n.value=B.map(q=>T(q)).filter(q=>q.text.trim()).sort((q,P)=>q.time-P.time),l(`Loaded ${n.value.length} synchronized lyrics lines`,!1)}else if(k){const B=k.split(`
|
|
3
|
+
`).filter(q=>q.trim());n.value=B.map(q=>({time:0,text:q.trim()})).filter(q=>q.text),l(`Loaded ${n.value.length} plain text lyrics lines`,!1)}else n.value=[]}catch(p){l(`Error processing lyrics: ${p}`,!1),n.value=[]}finally{s.value=!1}},D=p=>{const h=p;l(`Calculating look-ahead at ${p.toFixed(3)}s`);let k=-1,V=-1;for(let oe=0;oe<n.value.length;oe++)if(n.value[oe].time<=h)k=oe;else{V=oe;break}if(l(`Current lyric index: ${k}, Next lyric index: ${V}`),V===0){const fe=n.value[0].time-h;if(l(`Pre-lyrics intro: ${fe.toFixed(2)}s until first lyric`),fe>5){l("Long intro - using fixed look-ahead: 0.3s"),y.value=.3;return}else if(fe>2){const Y=Math.min(1,fe*.15);l(`Medium intro - calculated look-ahead: ${Y.toFixed(2)}s`),y.value=Y;return}l("Short intro - using standard calculation")}if(V===-1||k===-1){l("Cannot determine appropriate look-ahead, using default: 0.3s"),y.value=.3;return}const B=n.value[k].time,q=n.value[V].time,P=q-B,g=y.value;l(`Gap analysis:
|
|
4
4
|
- Current lyric time: ${B.toFixed(3)}s
|
|
5
5
|
- Next lyric time: ${q.toFixed(3)}s
|
|
6
6
|
- Gap between lyrics: ${P.toFixed(3)}s
|
|
7
|
-
- Previous look-ahead: ${g.toFixed(3)}s`);let
|
|
7
|
+
- Previous look-ahead: ${g.toFixed(3)}s`);let x;P<.5?(x=.3,l(`Very rapid lyrics detected (${P.toFixed(2)}s gap) - using 30% look-ahead`)):P<.8?(x=.1,l(`Fast lyrics detected (${P.toFixed(2)}s gap) - using 10% look-ahead`)):P<1.5?(x=.2,l(`Medium lyrics detected (${P.toFixed(2)}s gap) - using 20% look-ahead`)):P<3?(x=.3,l(`Slower lyrics detected (${P.toFixed(2)}s gap) - using 30% look-ahead`)):P>10?(x=.02,l(`Very slow lyrics detected (${P.toFixed(2)}s gap) - using 2% look-ahead`)):(x=.4,l(`Slow lyrics detected (${P.toFixed(2)}s gap) - using 40% look-ahead`));const O=Math.min(1.5,P*x);l(`Target look-ahead: ${O.toFixed(3)}s`);const Z=Math.abs(O-g),te=Math.min(.8,.3+Z*.5),ye=g*(1-te)+O*te;l(`Smoothed look-ahead: ${ye.toFixed(3)}s (adaptation rate: ${(te*100).toFixed(0)}%)`),Math.abs(ye-g)>.3&&l(`Look-ahead adjusted: ${g.toFixed(2)}s → ${ye.toFixed(2)}s`,!1),y.value=ye},z=p=>p===void 0||!n.value.length||!m.value||d.value,U=p=>{const h=Math.round((p+y.value)*1e3);let k=-1;for(let V=0;V<n.value.length&&Math.round(n.value[V].time*1e3)<=h;V++)k=V;return k},G=(p,h)=>{p<0||p===r.value||(l(`Lyric activated: "${n.value[p].text}"`),l(`Activating lyric at ${h.toFixed(2)}s (adjusted: ${(h+y.value).toFixed(2)}s):
|
|
8
8
|
- Index: ${p}
|
|
9
9
|
- Lyric time: ${n.value[p].time.toFixed(2)}s`),l(`Transition details:
|
|
10
10
|
- Raw position: ${h.toFixed(3)}s
|
|
11
11
|
- Dynamic look-ahead: ${y.value.toFixed(3)}s
|
|
12
|
-
- Adjusted position: ${(h+y.value).toFixed(3)}s`),p>0&&A(p,h),v.value=h,r.value=p,Fe(()=>E()))},A=(p,h)=>{const
|
|
12
|
+
- Adjusted position: ${(h+y.value).toFixed(3)}s`),p>0&&A(p,h),v.value=h,r.value=p,Fe(()=>E()))},A=(p,h)=>{const k=h-v.value,V=n.value[p].time-n.value[p-1].time;l(`Timing analysis:
|
|
13
13
|
- Expected gap: ${V.toFixed(3)}s
|
|
14
|
-
- Actual gap: ${
|
|
15
|
-
- Difference: ${(I-V).toFixed(3)}s`)},E=()=>{const p=document.querySelector(".lyrics-line.active"),h=u.value;p&&h&&p.scrollIntoView({behavior:"smooth",block:"center"})};return ee(()=>i.mediaItem?.item_id,()=>{L()},{immediate:!0}),ee(()=>i.position,p=>{if(z(p))return;const h=p??0;D(h);const I=U(h);I!==r.value&&G(I,h)}),we(()=>{const p=u.value;p&&p.addEventListener("scroll",()=>{m.value=!0,setTimeout(()=>{m.value=!1},8e3)},{passive:!0})}),(p,h)=>(o(),_("div",Ni,[s.value?(o(),_("div",Wi,[c(la,{indeterminate:"",color:e.textColor},null,8,["color"]),w("div",null,$(t(J)("loading_lyrics")),1)])):n.value.length?x.value&&d.value?(o(),_("div",Ui,[w("div",Yi,$(i.mediaItem?.name),1),w("div",Xi,$(b.value),1),w("div",ji,$(t(J)("lyrics_will_appear_soon")),1)])):(o(),_("div",{key:3,ref_key:"lyricsContainer",ref:u,class:le(["lyrics-scroll-container",{"static-lyrics":!d.value}])},[(o(!0),_(X,null,ue(n.value,(I,V)=>(o(),_("div",{key:V,class:le(["lyrics-line",{active:r.value===V||!d.value}])},$(I.text),3))),128))],2)):(o(),_("div",Hi,$(t(J)("no_lyrics_available")),1))]))}}),Ki=se(Gi,[["__scopeId","data-v-a59ccea0"]]),Zi=["onClick"],Ji={class:"main"},en={key:0,class:"main-media-details"},tn={key:0,class:"main-media-details-image"},an={class:"main-media-details-track-info"},ln={key:0},nn={key:0},sn={key:12,style:{margin:"auto","padding-top":"20px"}},on={key:1,class:"main-queue-items"},rn={class:"queue-items-scroll-box"},un={class:"media-thumb listitem-media-thumb"},cn={class:"title-row"},dn={class:"d-flex"},mn={style:{"white-space":"nowrap"},class:"pr-1"},vn={key:0},yn={key:0,style:{"margin-left":"50px"}},fn={key:0,class:"text-caption"},hn={key:1,class:"lyrics-wrapper"},pn={key:2,class:"main-queue-items"},gn={class:"main-media-details-image main-media-details-image-alt"},_n={class:"player-bottom"},bn={class:"row",style:{"margin-left":"5%","margin-right":"5%"}},Pn={class:"media-controls"},wn={key:0,class:"row",style:{"margin-left":"5%","margin-right":"5%"}},kn={key:1,class:"row",style:{height:"70px",display:"flex","justify-content":"center","align-items":"center","padding-bottom":"15px","padding-top":"15px"}},xn=W({__name:"PlayerFullscreen",props:{colorPalette:{}},setup(e){const{name:i}=gt(),l=e,n=new st,s=R(-1),r=new st,u=R([]),m=R(0),y=R(!1),v=S(()=>a.activePlayerQueue?u.value.slice(a.activePlayerQueue.current_index):[]),x=S(()=>a.activePlayerQueue?u.value.slice(0,a.activePlayerQueue.current_index).reverse():[]),b=S(()=>{const P=a.curQueueItem?.media_item?.metadata?.lyrics,g=a.curQueueItem?.media_item?.metadata?.lrc_lyrics;return!!P&&P.trim().length>0||!!g&&g.trim().length>0}),d=S(()=>{switch(i.value){case"xs":return"1.2em";case"sm":return"1.6em";case"md":return"2em";case"lg":return a.showQueueItems?"1.5em":"2.5em";case"xl":return a.showQueueItems?"1.6em":"3em";case"xxl":return a.showQueueItems?"1.7em":"3.2em";default:return"1.0em."}}),T=S(()=>{switch(i.value){case"xs":return"1.0em";case"sm":return"1.2em";case"md":return"1.7em";case"lg":return a.showQueueItems?"1.0em":"1.6em";case"xl":return a.showQueueItems?"1.2em":"2em";case"xxl":return a.showQueueItems?"1.2em":"2em";default:return"1.0em."}}),L=S(()=>Xe.display.height.value>800),D=function(P){a.showFullscreenPlayer=!1,Qt.push({name:P.media_type,params:{itemId:P.item_id,provider:P.provider}})},z=function(P){a.globalSearchTerm=P,Qt.push({name:"search"}),a.showFullscreenPlayer=!1},U=function(P,g){const C=u.value.indexOf(g),O=[{label:"play_now",labelArgs:[],action:()=>{A(g,"play_now")},icon:"mdi-play-circle-outline",disabled:C===a.activePlayerQueue?.current_index||C===a.activePlayerQueue?.index_in_buffer},{label:"play_next",labelArgs:[],action:()=>{A(g,"move_next")},icon:"mdi-skip-next-circle-outline",disabled:C<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_up",labelArgs:[],action:()=>{A(g,"up")},icon:"mdi-arrow-up",disabled:C<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_down",labelArgs:[],action:()=>{A(g,"down")},icon:"mdi-arrow-down",disabled:C<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_delete",labelArgs:[],action:()=>{A(g,"delete")},icon:"mdi-delete",disabled:C<=(a.activePlayerQueue?.index_in_buffer||0)}];g?.media_item?.media_type==F.TRACK&&O.push({label:"show_info",labelArgs:[],action:()=>{D(g.media_item)},icon:"mdi-information-outline",disabled:!1}),Ce.emit("contextmenu",{items:O,posX:P.clientX,posY:P.clientY})},G=function(P){a.activePlayer&&Ce.emit("contextmenu",{items:$l(a.activePlayer,a.activePlayerQueue),posX:P.clientX,posY:P.clientY})},A=function(P,g){!P||!a.activePlayerQueue||(g=="play_now"?M.queueCommandPlayIndex(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="move_next"?M.queueCommandMoveNext(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="up"?M.queueCommandMoveUp(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="down"?M.queueCommandMoveDown(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="delete"&&M.queueCommandDelete(a.activePlayerQueue?.queue_id,P.queue_item_id))},E=async function(){y.value=!0,u.value=[],await St(100),y.value=!1},p=async function({done:P}){if(!a.activePlayerQueue||a.activePlayerQueue.items==0){P("empty");return}if(u.value.length>=a.activePlayerQueue?.items){P("empty");return}const g=u.value.length,C=(a.activePlayerQueue.current_index||0)+50,O=await M.getPlayerQueueItems(a.activePlayerQueue.queue_id,C,g);u.value.push(...O),O.length<50?P("empty"):P("ok")};we(()=>{const P=M.subscribe(rl.QUEUE_ITEMS_UPDATED,g=>{g.object_id==a.activePlayerQueue?.queue_id&&(g.data,E())});De(P)});const h=async function(P){if(!a.curQueueItem?.media_item)return;if(!a.curQueueItem.media_item.favorite){M.toggleFavorite(a.curQueueItem.media_item);return}let g=a.curQueueItem.media_item;(g.provider!="library"||!("provider_mappings"in g))&&[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&(g=await M.getLibraryItem(g.media_type,g.item_id,g.provider)||g);const C=[];"favorite"in g&&g.favorite&&g.provider=="library"&&[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&C.push({label:"favorites_remove",labelArgs:[],action:()=>{M.removeItemFromFavorites(g.media_type,g.item_id),g.favorite=!1,a.curQueueItem.media_item.favorite=!1},icon:"mdi-heart"}),[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&C.push({label:"add_playlist",labelArgs:[],action:()=>{Ce.emit("playlistdialog",{items:[a.curQueueItem.media_item]})},icon:"mdi-plus-circle-outline"}),Ce.emit("contextmenu",{items:C,posX:P.clientX,posY:P.clientY})},I=function(){y.value=!0,St(100).then(()=>{y.value=!1})},V=function(P,g){M.playMedia(P.uri,ul.PLAY,void 0,g.position.toString())};ee(()=>a.activePlayerId,P=>{E()},{immediate:!0});const B=R(void 0),q=R(void 0);return pt(()=>{const P=ze("white"),g=ze("black"),C=5,O=.05,Z=Xe.theme.current.value.dark?l.colorPalette.darkColor||"#000":l.colorPalette.lightColor||"#fff";let te=ze(Z);const ye=P.contrast(te),oe=g.contrast(te),fe=ye>=oe;let Y=fe?P:g,et=Math.max(ye,oe);if(et<C){let xt=O;for(;et<C&&xt<=.5;)fe?te=te.darken(O):te=te.lighten(O),et=ze(Y).contrast(te),xt+=O}document.documentElement.style.setProperty("--text-color",Y.hex()),B.value=Y.hex(),q.value=te.hex()}),(P,g)=>(o(),Q(ia,{modelValue:t(a).showFullscreenPlayer,"onUpdate:modelValue":g[13]||(g[13]=C=>t(a).showFullscreenPlayer=C),fullscreen:"",scrim:!1,transition:"dialog-bottom-transition","z-index":"9999"},{default:f(()=>[c(Ue,{color:q.value},{default:f(()=>[c(Tl,{class:"v-toolbar-default",color:"transparent"},{prepend:f(()=>[c(ge,{icon:"",onClick:g[0]||(g[0]=C=>t(a).showFullscreenPlayer=!1)},{default:f(()=>[c(ae,{icon:"mdi-chevron-down"})]),_:1})]),append:f(()=>[t(a).activePlayerQueue?.radio_source.length?(o(),Q(_t,{key:0,scrim:""},{activator:f(({props:C})=>[c(ge,K(C,{icon:""}),{default:f(()=>[c(ae,{color:"accent",icon:"mdi-radio-tower"})]),_:1},16)]),default:f(()=>[c(Ue,{title:t(J)("queue_radio_enabled"),subtitle:t(J)("queue_radio_based_on")},{text:f(()=>[(o(!0),_(X,null,ue(t(a).activePlayerQueue?.radio_source,C=>(o(),_("div",{key:C.uri},[w("a",{onClick:O=>D(C)},$(C.name),9,Zi)]))),128))]),_:1},8,["title","subtitle"])]),_:1})):k("",!0),L.value?k("",!0):(o(),Q(pa,{key:1})),c(ge,{icon:"",onClick:Oe(G,["stop"])},{default:f(()=>[c(ae,{icon:"mdi-dots-vertical"})]),_:1})]),_:1}),w("div",Ji,[t(ie)("bp7")||!t(a).showQueueItems?(o(),_("div",en,[P.$vuetify.display.height>600?(o(),_("div",tn,[t(a).activePlayer?.powered!=!1&&t(a).curQueueItem?(o(),Q(Ae,{key:0,item:t(a).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"},fallback:P.$vuetify.theme.current.dark?t(je):t(it)},null,8,["item","fallback"])):t(a).activePlayer?.powered!=!1&&!t(a).curQueueItem?.image&&t(a).activePlayer?.current_media?.image_url?(o(),Q(Ye,{key:1,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:t(a).activePlayer.current_media.image_url},null,8,["src"])):(o(),Q(Ye,{key:2,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:P.$vuetify.theme.current.dark?t(je):t(it)},null,8,["src"]))])):k("",!0),w("div",an,[t(a).activePlayer?.powered==!1?(o(),Q(Le,{key:0,style:j(`font-size: ${d.value};`)},{default:f(()=>[H($(t(a).activePlayer?.name),1)]),_:1},8,["style"])):t(a).curQueueItem?.media_item?(o(),Q(Le,{key:1,style:j(`font-size: ${d.value};cursor:pointer;`),onClick:g[1]||(g[1]=C=>D(t(a).curQueueItem.media_item))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem.media_item.name)+" ",1),"version"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.version?(o(),_("span",ln,"("+$(t(a).curQueueItem.media_item.version)+")",1)):k("",!0)]),_:1},8,["sync"])]),_:1},8,["style"])):!t(a).activePlayerQueue&&t(a).activePlayer?.current_media?.title?(o(),Q(Le,{key:2},{default:f(()=>[t(a).activePlayer?.current_media?.artist?(o(),_("div",nn,[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).activePlayer?.current_media?.artist),1)]),_:1},8,["sync"])])):k("",!0),t(a).activePlayer?.current_media?.title?(o(),_("div",{key:1,style:j(`font-size: ${T.value};`)},[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).activePlayer?.current_media?.title),1)]),_:1},8,["sync"])],4)):k("",!0)]),_:1})):(o(),Q(Le,{key:3,style:j(`font-size: ${d.value};cursor:pointer;`),onClick:g[2]||(g[2]=C=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).activePlayer?.name||t(J)("no_player")),1)]),_:1},8,["sync"])]),_:1},8,["style"])),t(a).activePlayer?.powered==!1?(o(),Q(pe,{key:4,class:"text-h6 text-md-h5 text-lg-h4"},{default:f(()=>[H($(t(J)("off")),1)]),_:1})):k("",!0),t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title&&t(a).curQueueItem?.streamdetails?.stream_metadata.artist?(o(),Q(pe,{key:5,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[3]||(g[3]=C=>z(`${t(a).curQueueItem?.streamdetails?.stream_metadata.artist} - ${t(a).curQueueItem?.streamdetails?.stream_metadata.title}`))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+$(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):k("",!0),t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title?(o(),Q(pe,{key:6,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[4]||(g[4]=C=>z(t(a).curQueueItem?.streamdetails?.stream_metadata.title))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):k("",!0),t(a).curQueueItem?.media_item&&"album"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.album&&t(a).activePlayer?.powered!=!1?(o(),Q(pe,{key:7,style:j(`font-size: ${T.value};cursor:pointer;`),onClick:g[5]||(g[5]=C=>D(t(a).curQueueItem.media_item.album))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem.media_item.album.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):k("",!0),t(a).curQueueItem?.media_item&&"artists"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.artists.length&&t(a).activePlayer?.powered!=!1?(o(),Q(pe,{key:8,style:j(`font-size: ${T.value};cursor:pointer;`),onClick:g[6]||(g[6]=C=>D(t(a).curQueueItem.media_item.artists[0]))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem.media_item.artists[0].name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):k("",!0),t(a).curQueueItem?.media_item&&"podcast"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.podcast?(o(),Q(pe,{key:9,style:j(`font-size: ${T.value};`)},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H($(t(a).curQueueItem.media_item.podcast.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):t(a).activePlayer&&t(a).activePlayer?.active_source!=t(a).activePlayer?.player_id&&t(a).activePlayer?.powered!=!1?(o(),Q(pe,{key:10},{default:f(()=>[H($(t(J)("external_source_active",[t(Jt)(t(a).activePlayer)])),1)]),_:1})):t(a).activePlayerQueue&&t(a).activePlayerQueue.items==0&&t(a).activePlayer?.powered!=!1?(o(),Q(pe,{key:11,style:j(`font-size: ${T.value}`)},{default:f(()=>[H($(t(J)("queue_empty")),1)]),_:1},8,["style"])):k("",!0),t(a).activePlayer?.powered!=!1?(o(),_("div",sn,[c(ea)])):k("",!0)])])):k("",!0),t(a).showQueueItems?(o(),_("div",on,[c(wi,{modelValue:m.value,"onUpdate:modelValue":g[7]||(g[7]=C=>m.value=C),"hide-slider":"",density:"compact",onClick:I},{default:f(()=>[c(He,{value:0},{default:f(()=>[H($(t(J)("queue"))+" ",1),c(at,{color:"grey",content:(t(a).activePlayerQueue?.items||0)-(t(a).activePlayerQueue?.current_index||0),inline:""},null,8,["content"])]),_:1}),c(He,{value:1},{default:f(()=>[H($(t(J)("played"))+" ",1),c(at,{color:"grey",content:t(a).activePlayerQueue?.current_index,inline:""},null,8,["content"])]),_:1}),b.value?(o(),Q(He,{key:0,value:2},{default:f(()=>[H($(t(J)("lyrics")),1)]),_:1})):k("",!0)]),_:1},8,["modelValue"]),w("div",rn,[!y.value&&m.value!==2?(o(),Q(xl,{key:0,onLoad:p,"empty-text":"",height:"100%"},{default:f(()=>[c(Ll,{"item-height":70,"max-height":"90%",items:m.value==0?v.value:x.value},{default:f(({item:C,index:O})=>[c(Sl,{link:"","show-menu-btn":!0,disabled:!C.available,onClick:Oe(Z=>U(Z,C),["stop"]),onMenu:Oe(Z=>U(Z,C),["stop"]),onMouseenter:Z=>s.value=O,onMouseleave:g[8]||(g[8]=Z=>s.value=-1)},{prepend:f(()=>[w("div",un,[c(Ae,{size:"50",item:C},null,8,["item"])])]),title:f(()=>[w("div",cn,[c(ne,{sync:O==0&&m.value==0?t(n):t(r),disabled:!(O==0&&m.value==0||s.value==O)},{default:f(()=>[w("span",{class:le({"is-playing":C.queue_item_id===t(a).curQueueItem?.queue_item_id})},$(C.name),3)]),_:2},1032,["sync","disabled"])])]),subtitle:f(()=>[w("div",dn,[w("span",mn,$(t(he)(C.duration))+" | ",1),c(ne,{sync:O==0&&m.value==0?t(n):t(r),disabled:!(O==0&&m.value==0||s.value==O)},{default:f(()=>[C.media_item&&"album"in C.media_item&&C.media_item.album?(o(),_("span",vn,$(C.media_item.album.name),1)):k("",!0)]),_:2},1032,["sync","disabled"])])]),append:f(()=>[C.queue_item_id===t(a).curQueueItem?.queue_item_id&&t(a).activePlayer?.playback_state!=t(Re).IDLE?(o(),Q(Vl,{key:0,"show-badge":t(ie)("bp4")},null,8,["show-badge"])):k("",!0),C.available?k("",!0):(o(),Q(ae,{key:1},{default:f(()=>[...g[14]||(g[14]=[H("mdi-alert",-1)])]),_:1}))]),_:2},1032,["disabled","onClick","onMenu","onMouseenter"]),C.queue_item_id==t(a).curQueueItem?.queue_item_id&&C.media_item?.metadata?.chapters?.length?(o(),_("div",yn,[(o(!0),_(X,null,ue(C.media_item.metadata?.chapters,Z=>(o(),Q(Ve,{key:Z.position,onClick:Oe(te=>V(C.media_item,Z),["stop"])},{title:f(()=>[w("div",null,$(Z.name),1)]),append:f(()=>[Z.end?(o(),_("span",fn,$(t(he)(Z.end-Z.start)),1)):k("",!0)]),_:2},1032,["onClick"]))),128))])):k("",!0)]),_:1},8,["items"])]),_:1})):k("",!0),m.value===2?(o(),_("div",hn,[c(Ki,{"media-item":t(a).curQueueItem?.media_item,position:t(a).activePlayerQueue?.elapsed_time,duration:t(a).curQueueItem?.duration,"stream-details":t(a).curQueueItem?.streamdetails,"text-color":B.value},null,8,["media-item","position","duration","stream-details","text-color"])])):k("",!0)])])):k("",!0),!t(a).showQueueItems&&P.$vuetify.display.height<=600?(o(),_("div",pn,[w("div",gn,[c(Ae,{item:t(a).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"}},null,8,["item"])])])):k("",!0)]),w("div",_n,[w("div",bn,[c(ga,{"show-labels":!0,color:B.value},null,8,["color"])]),w("div",Pn,[t(a).activePlayerQueue?(o(),Q(xe,{key:0,disabled:!t(a).curQueueItem?.media_item,icon:t(a).curQueueItem?.media_item?.favorite?"mdi-heart":"mdi-heart-outline",title:t(J)("tooltip.favorite"),variant:"button",class:"media-controls-item","max-height":"30px",onClick:h},null,8,["disabled","icon","title"])):k("",!0),P.$vuetify.display.mdAndUp?(o(),Q(fa,{key:1,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"30px"},null,8,["player-queue"])):k("",!0),c(ya,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),c(va,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"70px"},null,8,["player","player-queue"]),c(ma,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),P.$vuetify.display.mdAndUp?(o(),Q(da,{key:2,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"35px"},null,8,["player-queue"])):k("",!0),t(a).activePlayerQueue?(o(),Q(ha,{key:3,class:"media-controls-item","max-height":"30px"})):k("",!0)]),t(a).activePlayer&&t(a).activePlayer.volume_control!=t(nt)?(o(),_("div",wn,[c(wt,{width:"100%","is-powered":t(a).activePlayer?.powered!=!1,disabled:!t(a).activePlayer||!t(a).activePlayer?.available,"model-value":Math.round(t(a).activePlayer?.group_volume||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus",color:B.value,"allow-wheel":!0,"onUpdate:modelValue":g[9]||(g[9]=C=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayerId,C):t(M).playerCommandVolumeSet(t(a).activePlayerId,C)),"onClick:prepend":g[10]||(g[10]=C=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeDown(t(a).activePlayerId):t(M).playerCommandVolumeDown(t(a).activePlayerId)),"onClick:append":g[11]||(g[11]=C=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeUp(t(a).activePlayerId):t(M).playerCommandVolumeUp(t(a).activePlayerId))},null,8,["is-powered","disabled","model-value","color"])])):k("",!0),L.value?(o(),_("div",kn,[c(_e,{class:"responsive-icon-holder-btn",variant:"outlined",onClick:g[12]||(g[12]=C=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ae,{icon:t(a).activePlayer?.icon||"mdi-speaker"},null,8,["icon"]),H(" "+$(t(a).activePlayer?t(ta)(t(a).activePlayer):""),1)]),_:1})])):k("",!0)])]),_:1},8,["color"])]),_:1},8,["modelValue"]))}}),In=se(xn,[["__scopeId","data-v-f6bfd1da"]]),Cn={key:1},$n={key:2,class:"icon-thumb"},Qn={key:0},Sn={key:2},Vn={key:3},Tn={key:4},Ln={key:0,class:"pl-4"},Mn={key:0},En={key:1},An={key:2},Bn={key:3},Rn={key:4},Dn={key:5},qn={key:6,class:"line-clamp-1"},Fn={key:7},zn={key:8,class:"line-clamp-1"},On={key:9,class:"line-clamp-1"},Nn={key:0},Wn={key:1,style:{"text-align":"right"}},Hn=W({__name:"PlayerTrackDetails",props:{showOnlyArtist:{type:Boolean,default:!1},showQualityDetailsBtn:{type:Boolean,default:!0},colorPalette:{},primaryColor:{default:""}},setup(e){const i=new st,l=e,n=S(()=>a.activePlayerQueue?.current_item?.streamdetails),s=R(0);let r=null;const u=(v=500)=>{r||(r=setInterval(()=>s.value=Date.now(),v))},m=()=>{r&&(clearInterval(r),r=null)};Kt(()=>{m()});const y=S(()=>{s.value;const v=a.activePlayer?.playback_state==="playing",x=!!(a.activePlayerQueue&&a.activePlayerQueue.active),b=a.activePlayer?.current_media?.elapsed_time!=null;v&&(x||b)?u():m();const d=a.activePlayerQueue;if(d?.elapsed_time!=null&&d?.elapsed_time_last_updated!=null)return Se(d.elapsed_time,d.elapsed_time_last_updated,a.activePlayer?.playback_state);if(a.activePlayer?.current_media?.elapsed_time!=null&&a.activePlayer?.current_media?.elapsed_time_last_updated!=null)return Se(a.activePlayer.current_media.elapsed_time,a.activePlayer.current_media.elapsed_time_last_updated,a.activePlayer?.playback_state);if(a.activePlayer?.elapsed_time!=null&&a.activePlayer?.elapsed_time_last_updated!=null)return Se(a.activePlayer.elapsed_time,a.activePlayer.elapsed_time_last_updated,a.activePlayer?.playback_state)});return(v,x)=>(o(),_(X,null,[c(Ve,{style:{height:"auto",width:"fit-content",margin:"0px",padding:"0px"},lines:"two"},{prepend:f(()=>[w("div",{class:"media-thumb player-media-thumb",style:j(`cursor: pointer;height: ${t(ie)({breakpoint:"phone"})?60:64}px; width: ${t(ie)({breakpoint:"phone"})?60:64}px; `),onClick:x[0]||(x[0]=b=>t(a).showFullscreenPlayer=!0)},[t(a).activePlayer?.powered!=!1&&t(a).curQueueItem?(o(),Q(Ae,{key:0,item:t(a).curQueueItem,fallback:t(je)},null,8,["item","fallback"])):t(a).activePlayer?.powered!=!1&&t(a).activePlayer?.current_media?.image_url?(o(),_("div",Cn,[c(Ye,{class:"media-thumb",style:{"border-radius":"4px"},size:"60",src:t(a).activePlayer.current_media.image_url},null,8,["src"])])):(o(),_("div",$n,[c(ae,{size:"24",icon:t(a).activePlayer?.type==t(We).PLAYER&&t(a).activePlayer?.group_members.length?"mdi-speaker-multiple":t(a).activePlayer?.icon||"mdi-speaker"},null,8,["icon"])]))],4)]),title:f(()=>[w("div",{style:j({cursor:"pointer",color:e.primaryColor})},[t(a).activePlayer?.powered==!1?(o(),_("div",{key:0,onClick:x[1]||(x[1]=b=>t(a).showPlayersMenu=!0)},$(t(a).activePlayer?.name),1)):t(a).curQueueItem?.media_item?(o(),_("div",{key:1,onClick:x[2]||(x[2]=b=>t(a).showFullscreenPlayer=!0)},[c(ne,{sync:t(i)},{default:f(()=>[H($(t(a).curQueueItem.media_item.name)+" ",1),"version"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.version?(o(),_("span",Qn,"("+$(t(a).curQueueItem.media_item.version)+")",1)):k("",!0)]),_:1},8,["sync"])])):t(a).curQueueItem?(o(),_("div",Sn,$(t(a).curQueueItem.name),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.current_media?.title?(o(),_("div",Vn,$(t(a).activePlayer.current_media.title),1)):t(a).activePlayer?(o(),_("div",Tn,$(t(a).activePlayer?.name),1)):(o(),_("div",{key:5,onClick:x[3]||(x[3]=b=>t(a).showPlayersMenu=!0)},$(v.$t("no_player")),1))],4)]),append:f(()=>[n.value?.audio_format.content_type&&!t(ie)({breakpoint:"phone"})&&e.showQualityDetailsBtn?(o(),_("div",Ln,[c(ea)])):k("",!0)]),subtitle:f(()=>[w("div",{style:j({cursor:"pointer",color:e.primaryColor}),class:"line-clamp-1",onClick:x[4]||(x[4]=b=>t(a).showFullscreenPlayer=!0)},[c(ne,{sync:t(i)},{default:f(()=>[t(a).activePlayer?.powered==!1?(o(),_("div",Mn,$(v.$t("off")),1)):t(a).curQueueItem&&t(a).curQueueItem.media_item?.media_type==t(F).TRACK&&"album"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.album&&!l.showOnlyArtist?(o(),_("div",En,$(t(cl)(t(a).curQueueItem.media_item.artists))+" • "+$(t(a).curQueueItem.media_item.album.name),1)):t(a).curQueueItem?.media_item&&"artists"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.artists.length>0?(o(),_("div",An,$(t(a).curQueueItem.media_item.artists[0].name),1)):t(a).curQueueItem?.media_item&&"podcast"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.podcast?.name?(o(),_("div",Bn,$(t(a).curQueueItem.media_item.podcast.name),1)):t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title&&t(a).curQueueItem?.streamdetails?.stream_metadata.artist?(o(),_("div",Rn,$(t(a).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+$(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)):t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title?(o(),_("div",Dn,$(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)):t(a).curQueueItem?.media_item?.metadata.description?(o(),_("div",qn,$(t(dl)(t(a).curQueueItem.media_item.metadata.description,100)),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.active_source&&t(a).activePlayer?.current_media?.artist?(o(),_("div",Fn,$(t(a).activePlayer.current_media.artist),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.active_source?(o(),_("div",zn,$(v.$t("external_source_active",[t(Jt)(t(a).activePlayer)])),1)):t(a).activePlayerQueue&&t(a).activePlayerQueue.items==0?(o(),_("div",On,$(v.$t("queue_empty")),1)):k("",!0)]),_:1},8,["sync"]),t(a).activePlayer&&t(a).activePlayer?.powered!=!1?(o(),_("div",Nn,$(t(ta)(t(a).activePlayer)),1)):k("",!0),t(a).curQueueItem?.duration&&y.value!=null?(o(),_("div",Wn,[w("small",null,$(t(he)(Math.floor(y.value||0)))+" / "+$(t(he)(t(a).curQueueItem.duration)),1)])):k("",!0)],4)]),_:1}),c(In,{"show-fullscreen":t(a).showFullscreenPlayer,"color-palette":e.colorPalette},null,8,["show-fullscreen","color-palette"])],64))}}),Un=se(Hn,[["__scopeId","data-v-9761429a"]]),Yn=["data-floating"],Xn=["data-mobile"],jn={class:"mediacontrols-left"},Gn={class:"mediacontrols-bottom-center"},Kn={class:"mediacontrols-bottom-right"},Zn={key:0,class:"volume-slider"},Jn=W({__name:"Player",props:{useFloatingPlayer:{type:Boolean}},setup(e){Zt(r=>({v0920870d:s.value}));const{mobile:i}=gt({mobileBreakpoint:576}),l=R({0:"",1:"",2:"",3:"",4:"",5:"",lightColor:"",darkColor:""}),n=new Image;n.src=Xe.theme.current.value.dark?je:it,n.crossOrigin="Anonymous",n.addEventListener("load",function(){l.value=ml(n)});const s=S(()=>Xe.theme.current.value.dark?l.value&&l.value.darkColor?l.value.darkColor:"#CCCCCC26":l.value&&l.value.lightColor?l.value.lightColor:"#CCCCCC26");return ee(()=>a.curQueueItem?.queue_item_id,()=>{a.curQueueItem?.media_item?n.src=Vt(a.curQueueItem.media_item,Tt.THUMB)||"":a.curQueueItem?n.src=Vt(a.curQueueItem,Tt.THUMB)||"":n.src=""}),(r,u)=>(o(),_(X,null,[w("div",{class:"mediacontrols-bg","data-floating":e.useFloatingPlayer},null,8,Yn),w("div",{class:"mediacontrols","data-mobile":t(i)},[w("div",jn,[c(Un,{"show-quality-details-btn":!!t(ie)("bp8"),"show-only-artist":!t(ie)("bp7"),"color-palette":l.value,"primary-color":r.$vuetify.theme.current.dark?"#fff":"#000"},null,8,["show-quality-details-btn","show-only-artist","color-palette","primary-color"])]),w("div",Gn,[c(Ot,{"visible-components":{repeat:{isVisible:t(ie)("bp3")},shuffle:{isVisible:t(ie)("bp3")},play:{isVisible:!0,icon:{staticWidth:"48px",staticHeight:"48px"}},previous:{isVisible:t(ie)("bp3")},next:{isVisible:t(ie)("bp3")}}},null,8,["visible-components"]),t(ie)("bp6")?(o(),Q(ga,{key:0,"is-progress-bar":!1,disabled:!t(a).activePlayerQueue?.active||t(a).activePlayerQueue?.current_item?.media_item?.media_type!==t(F).TRACK},null,8,["disabled"])):k("",!0)]),w("div",Kn,[w("div",null,[c(Bi,{queue:{isVisible:t(ie)("bp3"),color:r.$vuetify.theme.current.dark?"#fff":"#000"},player:{isVisible:!0,color:r.$vuetify.theme.current.dark?"#fff":"#000"},volume:{isVisible:!t(i)&&(t(a).activePlayer?.volume_control!=t(nt)||t(a).activePlayer?.group_members.length>0),color:r.$vuetify.theme.current.dark?"#fff":"#000"}},null,8,["queue","player","volume"]),c(Ot,{style:{"padding-right":"5px"},"visible-components":{repeat:{isVisible:!1},shuffle:{isVisible:!1},play:{isVisible:t(ie)({breakpoint:"bp3",condition:"lt"}),icon:{staticWidth:"40px",staticHeight:"40px",color:r.$vuetify.theme.current.dark?"#fff":"#000"}},previous:{isVisible:!1},next:{isVisible:!1}}},null,8,["visible-components"])])])],8,Xn),t(i)&&(t(a).activePlayer?.volume_control!=t(nt)||t(a).activePlayer?.group_members.length>0)?(o(),_("div",Zn,[c(wt,{width:"100%",color:"secondary","is-powered":t(a).activePlayer?.powered!=!1,disabled:!t(a).activePlayer||!t(a).activePlayer?.available,"model-value":Math.round(t(a).activePlayer?.group_volume||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus","onUpdate:modelValue":u[0]||(u[0]=m=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayerId,m):t(M).playerCommandVolumeSet(t(a).activePlayerId,m)),"onClick:prepend":u[1]||(u[1]=m=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeDown(t(a).activePlayerId):t(M).playerCommandVolumeDown(t(a).activePlayerId)),"onClick:append":u[2]||(u[2]=m=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeUp(t(a).activePlayerId):t(M).playerCommandVolumeUp(t(a).activePlayerId))},null,8,["is-powered","disabled","model-value"])])):k("",!0)],64))}}),es=se(Jn,[["__scopeId","data-v-f0b417b2"]]),ts={class:"menuButton"},as={class:"menuButton"},ls=W({__name:"BottomNavigation",props:{height:{}},setup(e){const i=na(),l=R(!1);return(n,s)=>(o(),Q(Kl,{height:e.height,"bg-color":"default",grow:"",role:"navigation"},{default:f(()=>[(o(!0),_(X,null,ue(t(i).filter(r=>!r.isLibraryNode),r=>(o(),Q(_e,{key:r.label,to:r.path,"aria-label":n.$t(r.label),tabindex:"0",variant:"text","active-color":"fg","base-color":"grey"},{default:f(()=>[c(ae,{size:"xx-large"},{default:f(()=>[H($(r.icon),1)]),_:2},1024),w("span",ts,$(n.$t(r.label)),1)]),_:2},1032,["to","aria-label"]))),128)),c(_t,null,{activator:f(({props:r})=>[c(_e,K(r,{"aria-haspopup":"true","aria-expanded":l.value.toString(),"aria-label":"Open library menu","base-color":"grey"}),{default:f(()=>[c(ae,{size:"xx-large"},{default:f(()=>[...s[0]||(s[0]=[H("mdi-bookshelf",-1)])]),_:1}),w("span",as,$(n.$t("library")),1)]),_:1},16,["aria-expanded"])]),default:f(()=>[c($e,null,{default:f(()=>[(o(!0),_(X,null,ue(t(i).filter(r=>r.isLibraryNode),r=>(o(),Q(Ve,{key:r.label,title:n.$t(r.label),"prepend-icon":r.icon,to:r.path},null,8,["title","prepend-icon","to"]))),128))]),_:1})]),_:1})]),_:1},8,["height"]))}}),is=W({__name:"Footer",setup(e){const i=S(()=>a.isInStandaloneMode?100:80);return(l,n)=>(o(),_(X,null,[t(a).mobileLayout?(o(),_("div",{key:0,class:le(l.$vuetify.theme.current.dark?"gradient-dark":"gradient-light"),style:`
|
|
14
|
+
- Actual gap: ${k.toFixed(3)}s
|
|
15
|
+
- Difference: ${(k-V).toFixed(3)}s`)},E=()=>{const p=document.querySelector(".lyrics-line.active"),h=u.value;p&&h&&p.scrollIntoView({behavior:"smooth",block:"center"})};return ee(()=>i.mediaItem?.item_id,()=>{L()},{immediate:!0}),ee(()=>i.position,p=>{if(z(p))return;const h=p??0;D(h);const k=U(h);k!==r.value&&G(k,h)}),we(()=>{const p=u.value;p&&p.addEventListener("scroll",()=>{d.value=!0,setTimeout(()=>{d.value=!1},8e3)},{passive:!0})}),(p,h)=>(o(),_("div",Ni,[s.value?(o(),_("div",Wi,[c(la,{indeterminate:"",color:e.textColor},null,8,["color"]),w("div",null,C(t(J)("loading_lyrics")),1)])):n.value.length?$.value&&m.value?(o(),_("div",Ui,[w("div",Yi,C(i.mediaItem?.name),1),w("div",Xi,C(b.value),1),w("div",ji,C(t(J)("lyrics_will_appear_soon")),1)])):(o(),_("div",{key:3,ref_key:"lyricsContainer",ref:u,class:le(["lyrics-scroll-container",{"static-lyrics":!m.value}])},[(o(!0),_(X,null,ue(n.value,(k,V)=>(o(),_("div",{key:V,class:le(["lyrics-line",{active:r.value===V||!m.value}])},C(k.text),3))),128))],2)):(o(),_("div",Hi,C(t(J)("no_lyrics_available")),1))]))}}),Ki=se(Gi,[["__scopeId","data-v-a59ccea0"]]),Zi=["onClick"],Ji={class:"main"},en={key:0,class:"main-media-details"},tn={key:0,class:"main-media-details-image"},an={class:"main-media-details-track-info"},ln={key:0},nn={key:0},sn={key:12,style:{margin:"auto","padding-top":"20px"}},on={key:1,class:"main-queue-items"},rn={class:"queue-items-scroll-box"},un={class:"media-thumb listitem-media-thumb"},cn={class:"title-row"},dn={class:"d-flex"},mn={style:{"white-space":"nowrap"},class:"pr-1"},vn={key:0},yn={key:0,style:{"margin-left":"50px"}},fn={key:0,class:"text-caption"},hn={key:1,class:"lyrics-wrapper"},pn={key:2,class:"main-queue-items"},gn={class:"main-media-details-image main-media-details-image-alt"},_n={class:"player-bottom"},bn={class:"row",style:{"margin-left":"5%","margin-right":"5%"}},Pn={class:"media-controls"},wn={key:0,class:"row",style:{"margin-left":"5%","margin-right":"5%"}},kn={key:1,class:"row",style:{height:"70px",display:"flex","justify-content":"center","align-items":"center","padding-bottom":"15px","padding-top":"15px"}},xn=W({__name:"PlayerFullscreen",props:{colorPalette:{}},setup(e){const{name:i}=gt(),l=e,n=new st,s=R(-1),r=new st,u=R([]),d=R(0),y=R(!1),v=S(()=>a.activePlayerQueue?u.value.slice(a.activePlayerQueue.current_index):[]),$=S(()=>a.activePlayerQueue?u.value.slice(0,a.activePlayerQueue.current_index).reverse():[]),b=S(()=>{const P=a.curQueueItem?.media_item?.metadata?.lyrics,g=a.curQueueItem?.media_item?.metadata?.lrc_lyrics;return!!P&&P.trim().length>0||!!g&&g.trim().length>0}),m=S(()=>{switch(i.value){case"xs":return"1.2em";case"sm":return"1.6em";case"md":return"2em";case"lg":return a.showQueueItems?"1.5em":"2.5em";case"xl":return a.showQueueItems?"1.6em":"3em";case"xxl":return a.showQueueItems?"1.7em":"3.2em";default:return"1.0em."}}),T=S(()=>{switch(i.value){case"xs":return"1.0em";case"sm":return"1.2em";case"md":return"1.7em";case"lg":return a.showQueueItems?"1.0em":"1.6em";case"xl":return a.showQueueItems?"1.2em":"2em";case"xxl":return a.showQueueItems?"1.2em":"2em";default:return"1.0em."}}),L=S(()=>Xe.display.height.value>800),D=function(P){a.showFullscreenPlayer=!1,Qt.push({name:P.media_type,params:{itemId:P.item_id,provider:P.provider}})},z=function(P){a.globalSearchTerm=P,Qt.push({name:"search"}),a.showFullscreenPlayer=!1},U=function(P,g){const x=u.value.indexOf(g),O=[{label:"play_now",labelArgs:[],action:()=>{A(g,"play_now")},icon:"mdi-play-circle-outline",disabled:x===a.activePlayerQueue?.current_index||x===a.activePlayerQueue?.index_in_buffer},{label:"play_next",labelArgs:[],action:()=>{A(g,"move_next")},icon:"mdi-skip-next-circle-outline",disabled:x<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_up",labelArgs:[],action:()=>{A(g,"up")},icon:"mdi-arrow-up",disabled:x<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_down",labelArgs:[],action:()=>{A(g,"down")},icon:"mdi-arrow-down",disabled:x<=(a.activePlayerQueue?.index_in_buffer||0)},{label:"queue_delete",labelArgs:[],action:()=>{A(g,"delete")},icon:"mdi-delete",disabled:x<=(a.activePlayerQueue?.index_in_buffer||0)}];g?.media_item?.media_type==F.TRACK&&O.push({label:"show_info",labelArgs:[],action:()=>{D(g.media_item)},icon:"mdi-information-outline",disabled:!1}),Ce.emit("contextmenu",{items:O,posX:P.clientX,posY:P.clientY})},G=function(P){a.activePlayer&&Ce.emit("contextmenu",{items:$l(a.activePlayer,a.activePlayerQueue),posX:P.clientX,posY:P.clientY})},A=function(P,g){!P||!a.activePlayerQueue||(g=="play_now"?M.queueCommandPlayIndex(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="move_next"?M.queueCommandMoveNext(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="up"?M.queueCommandMoveUp(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="down"?M.queueCommandMoveDown(a.activePlayerQueue?.queue_id,P.queue_item_id):g=="delete"&&M.queueCommandDelete(a.activePlayerQueue?.queue_id,P.queue_item_id))},E=async function(){y.value=!0,u.value=[],await St(100),y.value=!1},p=async function({done:P}){if(!a.activePlayerQueue||a.activePlayerQueue.items==0){P("empty");return}if(u.value.length>=a.activePlayerQueue?.items){P("empty");return}const g=u.value.length,x=(a.activePlayerQueue.current_index||0)+50,O=await M.getPlayerQueueItems(a.activePlayerQueue.queue_id,x,g);u.value.push(...O),O.length<50?P("empty"):P("ok")};we(()=>{const P=M.subscribe(rl.QUEUE_ITEMS_UPDATED,g=>{g.object_id==a.activePlayerQueue?.queue_id&&(g.data,E())});De(P)});const h=async function(P){if(!a.curQueueItem?.media_item)return;if(!a.curQueueItem.media_item.favorite){M.toggleFavorite(a.curQueueItem.media_item);return}let g=a.curQueueItem.media_item;(g.provider!="library"||!("provider_mappings"in g))&&[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&(g=await M.getLibraryItem(g.media_type,g.item_id,g.provider)||g);const x=[];"favorite"in g&&g.favorite&&g.provider=="library"&&[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&x.push({label:"favorites_remove",labelArgs:[],action:()=>{M.removeItemFromFavorites(g.media_type,g.item_id),g.favorite=!1,a.curQueueItem.media_item.favorite=!1},icon:"mdi-heart"}),[F.ALBUM,F.ARTIST,F.AUDIOBOOK,F.PLAYLIST,F.PODCAST,F.RADIO,F.TRACK].includes(g.media_type)&&x.push({label:"add_playlist",labelArgs:[],action:()=>{Ce.emit("playlistdialog",{items:[a.curQueueItem.media_item]})},icon:"mdi-plus-circle-outline"}),Ce.emit("contextmenu",{items:x,posX:P.clientX,posY:P.clientY})},k=function(){y.value=!0,St(100).then(()=>{y.value=!1})},V=function(P,g){M.playMedia(P.uri,ul.PLAY,void 0,g.position.toString())};ee(()=>a.activePlayerId,P=>{E()},{immediate:!0});const B=R(void 0),q=R(void 0);return pt(()=>{const P=ze("white"),g=ze("black"),x=5,O=.05,Z=Xe.theme.current.value.dark?l.colorPalette.darkColor||"#000":l.colorPalette.lightColor||"#fff";let te=ze(Z);const ye=P.contrast(te),oe=g.contrast(te),fe=ye>=oe;let Y=fe?P:g,et=Math.max(ye,oe);if(et<x){let xt=O;for(;et<x&&xt<=.5;)fe?te=te.darken(O):te=te.lighten(O),et=ze(Y).contrast(te),xt+=O}document.documentElement.style.setProperty("--text-color",Y.hex()),B.value=Y.hex(),q.value=te.hex()}),(P,g)=>(o(),Q(ia,{modelValue:t(a).showFullscreenPlayer,"onUpdate:modelValue":g[13]||(g[13]=x=>t(a).showFullscreenPlayer=x),fullscreen:"",scrim:!1,transition:"dialog-bottom-transition","z-index":"9999"},{default:f(()=>[c(Ue,{color:q.value},{default:f(()=>[c(Tl,{class:"v-toolbar-default",color:"transparent"},{prepend:f(()=>[c(pe,{icon:"",onClick:g[0]||(g[0]=x=>t(a).showFullscreenPlayer=!1)},{default:f(()=>[c(ae,{icon:"mdi-chevron-down"})]),_:1})]),append:f(()=>[t(a).activePlayerQueue?.radio_source.length?(o(),Q(_t,{key:0,scrim:""},{activator:f(({props:x})=>[c(pe,K(x,{icon:""}),{default:f(()=>[c(ae,{color:"accent",icon:"mdi-radio-tower"})]),_:1},16)]),default:f(()=>[c(Ue,{title:t(J)("queue_radio_enabled"),subtitle:t(J)("queue_radio_based_on")},{text:f(()=>[(o(!0),_(X,null,ue(t(a).activePlayerQueue?.radio_source,x=>(o(),_("div",{key:x.uri},[w("a",{onClick:O=>D(x)},C(x.name),9,Zi)]))),128))]),_:1},8,["title","subtitle"])]),_:1})):I("",!0),L.value?I("",!0):(o(),Q(pa,{key:1})),c(pe,{icon:"",onClick:Oe(G,["stop"])},{default:f(()=>[c(ae,{icon:"mdi-dots-vertical"})]),_:1})]),_:1}),w("div",Ji,[t(ie)("bp7")||!t(a).showQueueItems?(o(),_("div",en,[P.$vuetify.display.height>600?(o(),_("div",tn,[t(a).activePlayer?.powered!=!1&&t(a).curQueueItem?(o(),Q(Ae,{key:0,item:t(a).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"},fallback:P.$vuetify.theme.current.dark?t(je):t(it)},null,8,["item","fallback"])):t(a).activePlayer?.powered!=!1&&!t(a).curQueueItem?.image&&t(a).activePlayer?.current_media?.image_url?(o(),Q(Ye,{key:1,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:t(a).activePlayer.current_media.image_url},null,8,["src"])):(o(),Q(Ye,{key:2,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:P.$vuetify.theme.current.dark?t(je):t(it)},null,8,["src"]))])):I("",!0),w("div",an,[t(a).activePlayer?.powered==!1?(o(),Q(Le,{key:0,style:j(`font-size: ${m.value};`)},{default:f(()=>[H(C(t(a).activePlayer?.name),1)]),_:1},8,["style"])):t(a).curQueueItem?.media_item?(o(),Q(Le,{key:1,style:j(`font-size: ${m.value};cursor:pointer;`),onClick:g[1]||(g[1]=x=>D(t(a).curQueueItem.media_item))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem.media_item.name)+" ",1),"version"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.version?(o(),_("span",ln,"("+C(t(a).curQueueItem.media_item.version)+")",1)):I("",!0)]),_:1},8,["sync"])]),_:1},8,["style"])):!t(a).activePlayerQueue&&t(a).activePlayer?.current_media?.title?(o(),Q(Le,{key:2},{default:f(()=>[t(a).activePlayer?.current_media?.artist?(o(),_("div",nn,[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).activePlayer?.current_media?.artist),1)]),_:1},8,["sync"])])):I("",!0),t(a).activePlayer?.current_media?.title?(o(),_("div",{key:1,style:j(`font-size: ${T.value};`)},[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).activePlayer?.current_media?.title),1)]),_:1},8,["sync"])],4)):I("",!0)]),_:1})):(o(),Q(Le,{key:3,style:j(`font-size: ${m.value};cursor:pointer;`),onClick:g[2]||(g[2]=x=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).activePlayer?.name||t(J)("no_player")),1)]),_:1},8,["sync"])]),_:1},8,["style"])),t(a).activePlayer?.powered==!1?(o(),Q(he,{key:4,class:"text-h6 text-md-h5 text-lg-h4"},{default:f(()=>[H(C(t(J)("off")),1)]),_:1})):I("",!0),t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title&&t(a).curQueueItem?.streamdetails?.stream_metadata.artist?(o(),Q(he,{key:5,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[3]||(g[3]=x=>z(`${t(a).curQueueItem?.streamdetails?.stream_metadata.artist} - ${t(a).curQueueItem?.streamdetails?.stream_metadata.title}`))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+C(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):I("",!0),t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title?(o(),Q(he,{key:6,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[4]||(g[4]=x=>z(t(a).curQueueItem?.streamdetails?.stream_metadata.title))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):I("",!0),t(a).curQueueItem?.media_item&&"album"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.album&&t(a).activePlayer?.powered!=!1?(o(),Q(he,{key:7,style:j(`font-size: ${T.value};cursor:pointer;`),onClick:g[5]||(g[5]=x=>D(t(a).curQueueItem.media_item.album))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem.media_item.album.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):I("",!0),t(a).curQueueItem?.media_item&&"artists"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.artists.length&&t(a).activePlayer?.powered!=!1?(o(),Q(he,{key:8,style:j(`font-size: ${T.value};cursor:pointer;`),onClick:g[6]||(g[6]=x=>D(t(a).curQueueItem.media_item.artists[0]))},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem.media_item.artists[0].name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):I("",!0),t(a).curQueueItem?.media_item&&"podcast"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.podcast?(o(),Q(he,{key:9,style:j(`font-size: ${T.value};`)},{default:f(()=>[c(ne,{sync:t(n)},{default:f(()=>[H(C(t(a).curQueueItem.media_item.podcast.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):t(a).activePlayer&&t(a).activePlayer?.active_source!=t(a).activePlayer?.player_id&&t(a).activePlayer?.powered!=!1?(o(),Q(he,{key:10},{default:f(()=>[H(C(t(J)("external_source_active",[t(Jt)(t(a).activePlayer)])),1)]),_:1})):t(a).activePlayerQueue&&t(a).activePlayerQueue.items==0&&t(a).activePlayer?.powered!=!1?(o(),Q(he,{key:11,style:j(`font-size: ${T.value}`)},{default:f(()=>[H(C(t(J)("queue_empty")),1)]),_:1},8,["style"])):I("",!0),t(a).activePlayer?.powered!=!1?(o(),_("div",sn,[c(ea)])):I("",!0)])])):I("",!0),t(a).showQueueItems?(o(),_("div",on,[c(wi,{modelValue:d.value,"onUpdate:modelValue":g[7]||(g[7]=x=>d.value=x),"hide-slider":"",density:"compact",onClick:k},{default:f(()=>[c(He,{value:0},{default:f(()=>[H(C(t(J)("queue"))+" ",1),c(at,{color:"grey",content:(t(a).activePlayerQueue?.items||0)-(t(a).activePlayerQueue?.current_index||0),inline:""},null,8,["content"])]),_:1}),c(He,{value:1},{default:f(()=>[H(C(t(J)("played"))+" ",1),c(at,{color:"grey",content:t(a).activePlayerQueue?.current_index,inline:""},null,8,["content"])]),_:1}),b.value?(o(),Q(He,{key:0,value:2},{default:f(()=>[H(C(t(J)("lyrics")),1)]),_:1})):I("",!0)]),_:1},8,["modelValue"]),w("div",rn,[!y.value&&d.value!==2?(o(),Q(xl,{key:0,onLoad:p,"empty-text":"",height:"100%"},{default:f(()=>[c(Ll,{"item-height":70,"max-height":"90%",items:d.value==0?v.value:$.value},{default:f(({item:x,index:O})=>[c(Sl,{link:"","show-menu-btn":!0,disabled:!x.available,onClick:Oe(Z=>U(Z,x),["stop"]),onMenu:Oe(Z=>U(Z,x),["stop"]),onMouseenter:Z=>s.value=O,onMouseleave:g[8]||(g[8]=Z=>s.value=-1)},{prepend:f(()=>[w("div",un,[c(Ae,{size:"50",item:x},null,8,["item"])])]),title:f(()=>[w("div",cn,[c(ne,{sync:O==0&&d.value==0?t(n):t(r),disabled:!(O==0&&d.value==0||s.value==O)},{default:f(()=>[w("span",{class:le({"is-playing":x.queue_item_id===t(a).curQueueItem?.queue_item_id})},C(x.name),3)]),_:2},1032,["sync","disabled"])])]),subtitle:f(()=>[w("div",dn,[w("span",mn,C(t(be)(x.duration))+" | ",1),c(ne,{sync:O==0&&d.value==0?t(n):t(r),disabled:!(O==0&&d.value==0||s.value==O)},{default:f(()=>[x.media_item&&"album"in x.media_item&&x.media_item.album?(o(),_("span",vn,C(x.media_item.album.name),1)):I("",!0)]),_:2},1032,["sync","disabled"])])]),append:f(()=>[x.queue_item_id===t(a).curQueueItem?.queue_item_id&&t(a).activePlayer?.playback_state!=t(Re).IDLE?(o(),Q(Vl,{key:0,"show-badge":t(ie)("bp4")},null,8,["show-badge"])):I("",!0),x.available?I("",!0):(o(),Q(ae,{key:1},{default:f(()=>[...g[14]||(g[14]=[H("mdi-alert",-1)])]),_:1}))]),_:2},1032,["disabled","onClick","onMenu","onMouseenter"]),x.queue_item_id==t(a).curQueueItem?.queue_item_id&&x.media_item?.metadata?.chapters?.length?(o(),_("div",yn,[(o(!0),_(X,null,ue(x.media_item.metadata?.chapters,Z=>(o(),Q(Ve,{key:Z.position,onClick:Oe(te=>V(x.media_item,Z),["stop"])},{title:f(()=>[w("div",null,C(Z.name),1)]),append:f(()=>[Z.end?(o(),_("span",fn,C(t(be)(Z.end-Z.start)),1)):I("",!0)]),_:2},1032,["onClick"]))),128))])):I("",!0)]),_:1},8,["items"])]),_:1})):I("",!0),d.value===2?(o(),_("div",hn,[c(Ki,{"media-item":t(a).curQueueItem?.media_item,position:t(a).activePlayerQueue?.elapsed_time,duration:t(a).curQueueItem?.duration,"stream-details":t(a).curQueueItem?.streamdetails,"text-color":B.value},null,8,["media-item","position","duration","stream-details","text-color"])])):I("",!0)])])):I("",!0),!t(a).showQueueItems&&P.$vuetify.display.height<=600?(o(),_("div",pn,[w("div",gn,[c(Ae,{item:t(a).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"}},null,8,["item"])])])):I("",!0)]),w("div",_n,[w("div",bn,[c(ga,{"show-labels":!0,color:B.value},null,8,["color"])]),w("div",Pn,[t(a).activePlayerQueue?(o(),Q(xe,{key:0,disabled:!t(a).curQueueItem?.media_item,icon:t(a).curQueueItem?.media_item?.favorite?"mdi-heart":"mdi-heart-outline",title:t(J)("tooltip.favorite"),variant:"button",class:"media-controls-item","max-height":"30px",onClick:h},null,8,["disabled","icon","title"])):I("",!0),P.$vuetify.display.mdAndUp?(o(),Q(fa,{key:1,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"30px"},null,8,["player-queue"])):I("",!0),c(ya,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),c(va,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"70px"},null,8,["player","player-queue"]),c(ma,{player:t(a).activePlayer,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),P.$vuetify.display.mdAndUp?(o(),Q(da,{key:2,"player-queue":t(a).activePlayerQueue,class:"media-controls-item","max-height":"35px"},null,8,["player-queue"])):I("",!0),t(a).activePlayerQueue?(o(),Q(ha,{key:3,class:"media-controls-item","max-height":"30px"})):I("",!0)]),t(a).activePlayer&&t(a).activePlayer.volume_control!=t(nt)?(o(),_("div",wn,[c(wt,{width:"100%","is-powered":t(a).activePlayer?.powered!=!1,disabled:!t(a).activePlayer||!t(a).activePlayer?.available,"model-value":Math.round(t(a).activePlayer?.group_volume||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus",color:B.value,"allow-wheel":!0,"onUpdate:modelValue":g[9]||(g[9]=x=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayerId,x):t(M).playerCommandVolumeSet(t(a).activePlayerId,x)),"onClick:prepend":g[10]||(g[10]=x=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeDown(t(a).activePlayerId):t(M).playerCommandVolumeDown(t(a).activePlayerId)),"onClick:append":g[11]||(g[11]=x=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeUp(t(a).activePlayerId):t(M).playerCommandVolumeUp(t(a).activePlayerId))},null,8,["is-powered","disabled","model-value","color"])])):I("",!0),L.value?(o(),_("div",kn,[c(ge,{class:"responsive-icon-holder-btn",variant:"outlined",onClick:g[12]||(g[12]=x=>t(a).showPlayersMenu=!0)},{default:f(()=>[c(ae,{icon:t(a).activePlayer?.icon||"mdi-speaker"},null,8,["icon"]),H(" "+C(t(a).activePlayer?t(ta)(t(a).activePlayer):""),1)]),_:1})])):I("",!0)])]),_:1},8,["color"])]),_:1},8,["modelValue"]))}}),In=se(xn,[["__scopeId","data-v-f6bfd1da"]]),Cn={key:1},$n={key:2,class:"icon-thumb"},Qn={key:0},Sn={key:2},Vn={key:3},Tn={key:4},Ln={key:0,class:"pl-4"},Mn={key:0},En={key:1},An={key:2},Bn={key:3},Rn={key:4},Dn={key:5},qn={key:6,class:"line-clamp-1"},Fn={key:7},zn={key:8,class:"line-clamp-1"},On={key:9,class:"line-clamp-1"},Nn={key:0},Wn=W({__name:"PlayerTrackDetails",props:{showOnlyArtist:{type:Boolean,default:!1},showQualityDetailsBtn:{type:Boolean,default:!0},colorPalette:{},primaryColor:{default:""}},setup(e){const i=new st,l=e,n=S(()=>a.activePlayerQueue?.current_item?.streamdetails),s=R(0);let r=null;const u=(y=500)=>{r||(r=setInterval(()=>s.value=Date.now(),y))},d=()=>{r&&(clearInterval(r),r=null)};return Kt(()=>{d()}),S(()=>{s.value;const y=a.activePlayer?.playback_state==="playing",v=!!(a.activePlayerQueue&&a.activePlayerQueue.active),$=a.activePlayer?.current_media?.elapsed_time!=null;y&&(v||$)?u():d();const b=a.activePlayerQueue;if(b?.elapsed_time!=null&&b?.elapsed_time_last_updated!=null)return Se(b.elapsed_time,b.elapsed_time_last_updated,a.activePlayer?.playback_state);if(a.activePlayer?.current_media?.elapsed_time!=null&&a.activePlayer?.current_media?.elapsed_time_last_updated!=null)return Se(a.activePlayer.current_media.elapsed_time,a.activePlayer.current_media.elapsed_time_last_updated,a.activePlayer?.playback_state);if(a.activePlayer?.elapsed_time!=null&&a.activePlayer?.elapsed_time_last_updated!=null)return Se(a.activePlayer.elapsed_time,a.activePlayer.elapsed_time_last_updated,a.activePlayer?.playback_state)}),(y,v)=>(o(),_(X,null,[c(Ve,{style:{height:"auto",width:"fit-content",margin:"0px",padding:"0px"},lines:"two"},{prepend:f(()=>[w("div",{class:"media-thumb player-media-thumb",style:j(`cursor: pointer;height: ${t(ie)({breakpoint:"phone"})?60:64}px; width: ${t(ie)({breakpoint:"phone"})?60:64}px; `),onClick:v[0]||(v[0]=$=>t(a).showFullscreenPlayer=!0)},[t(a).activePlayer?.powered!=!1&&t(a).curQueueItem?(o(),Q(Ae,{key:0,item:t(a).curQueueItem,fallback:t(je)},null,8,["item","fallback"])):t(a).activePlayer?.powered!=!1&&t(a).activePlayer?.current_media?.image_url?(o(),_("div",Cn,[c(Ye,{class:"media-thumb",style:{"border-radius":"4px"},size:"60",src:t(a).activePlayer.current_media.image_url},null,8,["src"])])):(o(),_("div",$n,[c(ae,{size:"24",icon:t(a).activePlayer?.type==t(We).PLAYER&&t(a).activePlayer?.group_members.length?"mdi-speaker-multiple":t(a).activePlayer?.icon||"mdi-speaker"},null,8,["icon"])]))],4)]),title:f(()=>[w("div",{style:j({cursor:"pointer",color:e.primaryColor})},[t(a).activePlayer?.powered==!1?(o(),_("div",{key:0,onClick:v[1]||(v[1]=$=>t(a).showPlayersMenu=!0)},C(t(a).activePlayer?.name),1)):t(a).curQueueItem?.media_item?(o(),_("div",{key:1,onClick:v[2]||(v[2]=$=>t(a).showFullscreenPlayer=!0)},[c(ne,{sync:t(i)},{default:f(()=>[H(C(t(a).curQueueItem.media_item.name)+" ",1),"version"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.version?(o(),_("span",Qn,"("+C(t(a).curQueueItem.media_item.version)+")",1)):I("",!0)]),_:1},8,["sync"])])):t(a).curQueueItem?(o(),_("div",Sn,C(t(a).curQueueItem.name),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.current_media?.title?(o(),_("div",Vn,C(t(a).activePlayer.current_media.title),1)):t(a).activePlayer?(o(),_("div",Tn,C(t(a).activePlayer?.name),1)):(o(),_("div",{key:5,onClick:v[3]||(v[3]=$=>t(a).showPlayersMenu=!0)},C(y.$t("no_player")),1))],4)]),append:f(()=>[n.value?.audio_format.content_type&&!t(ie)({breakpoint:"phone"})&&e.showQualityDetailsBtn?(o(),_("div",Ln,[c(ea)])):I("",!0)]),subtitle:f(()=>[w("div",{style:j({cursor:"pointer",color:e.primaryColor}),class:"line-clamp-1",onClick:v[4]||(v[4]=$=>t(a).showFullscreenPlayer=!0)},[c(ne,{sync:t(i)},{default:f(()=>[t(a).activePlayer?.powered==!1?(o(),_("div",Mn,C(y.$t("off")),1)):t(a).curQueueItem&&t(a).curQueueItem.media_item?.media_type==t(F).TRACK&&"album"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.album&&!l.showOnlyArtist?(o(),_("div",En,C(t(cl)(t(a).curQueueItem.media_item.artists))+" • "+C(t(a).curQueueItem.media_item.album.name),1)):t(a).curQueueItem?.media_item&&"artists"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.artists.length>0?(o(),_("div",An,C(t(a).curQueueItem.media_item.artists[0].name),1)):t(a).curQueueItem?.media_item&&"podcast"in t(a).curQueueItem.media_item&&t(a).curQueueItem.media_item.podcast?.name?(o(),_("div",Bn,C(t(a).curQueueItem.media_item.podcast.name),1)):t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title&&t(a).curQueueItem?.streamdetails?.stream_metadata.artist?(o(),_("div",Rn,C(t(a).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+C(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)):t(a).curQueueItem?.streamdetails?.stream_metadata&&t(a).curQueueItem?.streamdetails?.stream_metadata.title?(o(),_("div",Dn,C(t(a).curQueueItem?.streamdetails?.stream_metadata.title),1)):t(a).curQueueItem?.media_item?.metadata.description?(o(),_("div",qn,C(t(dl)(t(a).curQueueItem.media_item.metadata.description,100)),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.active_source&&t(a).activePlayer?.current_media?.artist?(o(),_("div",Fn,C(t(a).activePlayer.current_media.artist),1)):!t(a).activePlayerQueue&&t(a).activePlayer?.active_source?(o(),_("div",zn,C(y.$t("external_source_active",[t(Jt)(t(a).activePlayer)])),1)):t(a).activePlayerQueue&&t(a).activePlayerQueue.items==0?(o(),_("div",On,C(y.$t("queue_empty")),1)):I("",!0)]),_:1},8,["sync"]),t(a).activePlayer&&t(a).activePlayer?.powered!=!1?(o(),_("div",Nn,C(t(ta)(t(a).activePlayer)),1)):I("",!0)],4)]),_:1}),c(In,{"show-fullscreen":t(a).showFullscreenPlayer,"color-palette":e.colorPalette},null,8,["show-fullscreen","color-palette"])],64))}}),Hn=se(Wn,[["__scopeId","data-v-01cf6ec5"]]),Un=["data-floating"],Yn=["data-mobile"],Xn={class:"mediacontrols-left"},jn={class:"mediacontrols-bottom-center"},Gn={class:"mediacontrols-bottom-right"},Kn={key:0,class:"volume-slider"},Zn=W({__name:"Player",props:{useFloatingPlayer:{type:Boolean}},setup(e){Zt(r=>({v0920870d:s.value}));const{mobile:i}=gt({mobileBreakpoint:576}),l=R({0:"",1:"",2:"",3:"",4:"",5:"",lightColor:"",darkColor:""}),n=new Image;n.src=Xe.theme.current.value.dark?je:it,n.crossOrigin="Anonymous",n.addEventListener("load",function(){l.value=ml(n)});const s=S(()=>Xe.theme.current.value.dark?l.value&&l.value.darkColor?l.value.darkColor:"#CCCCCC26":l.value&&l.value.lightColor?l.value.lightColor:"#CCCCCC26");return ee(()=>a.curQueueItem?.queue_item_id,()=>{a.curQueueItem?.media_item?n.src=Vt(a.curQueueItem.media_item,Tt.THUMB)||"":a.curQueueItem?n.src=Vt(a.curQueueItem,Tt.THUMB)||"":n.src=""}),(r,u)=>(o(),_(X,null,[w("div",{class:"mediacontrols-bg","data-floating":e.useFloatingPlayer},null,8,Un),w("div",{class:"mediacontrols","data-mobile":t(i)},[w("div",Xn,[c(Hn,{"show-quality-details-btn":!!t(ie)("bp8"),"show-only-artist":!t(ie)("bp7"),"color-palette":l.value,"primary-color":r.$vuetify.theme.current.dark?"#fff":"#000"},null,8,["show-quality-details-btn","show-only-artist","color-palette","primary-color"])]),w("div",jn,[c(Ot,{"visible-components":{repeat:{isVisible:t(ie)("bp3")},shuffle:{isVisible:t(ie)("bp3")},play:{isVisible:!0,icon:{staticWidth:"48px",staticHeight:"48px"}},previous:{isVisible:t(ie)("bp3")},next:{isVisible:t(ie)("bp3")}}},null,8,["visible-components"]),t(ie)("bp6")?(o(),Q(ga,{key:0,"is-progress-bar":!1,disabled:!t(a).activePlayerQueue?.active||t(a).activePlayerQueue?.current_item?.media_item?.media_type!==t(F).TRACK},null,8,["disabled"])):I("",!0)]),w("div",Gn,[w("div",null,[c(Bi,{queue:{isVisible:t(ie)("bp3"),color:r.$vuetify.theme.current.dark?"#fff":"#000"},player:{isVisible:!0,color:r.$vuetify.theme.current.dark?"#fff":"#000"},volume:{isVisible:!t(i)&&(t(a).activePlayer?.volume_control!=t(nt)||t(a).activePlayer?.group_members.length>0),color:r.$vuetify.theme.current.dark?"#fff":"#000"}},null,8,["queue","player","volume"]),c(Ot,{style:{"padding-right":"5px"},"visible-components":{repeat:{isVisible:!1},shuffle:{isVisible:!1},play:{isVisible:t(ie)({breakpoint:"bp3",condition:"lt"}),icon:{staticWidth:"40px",staticHeight:"40px",color:r.$vuetify.theme.current.dark?"#fff":"#000"}},previous:{isVisible:!1},next:{isVisible:!1}}},null,8,["visible-components"])])])],8,Yn),t(i)&&(t(a).activePlayer?.volume_control!=t(nt)||t(a).activePlayer?.group_members.length>0)?(o(),_("div",Kn,[c(wt,{width:"100%",color:"secondary","is-powered":t(a).activePlayer?.powered!=!1,disabled:!t(a).activePlayer||!t(a).activePlayer?.available,"model-value":Math.round(t(a).activePlayer?.group_volume||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus","onUpdate:modelValue":u[0]||(u[0]=d=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolume(t(a).activePlayerId,d):t(M).playerCommandVolumeSet(t(a).activePlayerId,d)),"onClick:prepend":u[1]||(u[1]=d=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeDown(t(a).activePlayerId):t(M).playerCommandVolumeDown(t(a).activePlayerId)),"onClick:append":u[2]||(u[2]=d=>t(a).activePlayer.group_members.length>0?t(M).playerCommandGroupVolumeUp(t(a).activePlayerId):t(M).playerCommandVolumeUp(t(a).activePlayerId))},null,8,["is-powered","disabled","model-value"])])):I("",!0)],64))}}),Jn=se(Zn,[["__scopeId","data-v-f0b417b2"]]),es={class:"menuButton"},ts={class:"menuButton"},as=W({__name:"BottomNavigation",props:{height:{}},setup(e){const i=na(),l=R(!1);return(n,s)=>(o(),Q(Kl,{height:e.height,"bg-color":"default",grow:"",role:"navigation"},{default:f(()=>[(o(!0),_(X,null,ue(t(i).filter(r=>!r.isLibraryNode),r=>(o(),Q(ge,{key:r.label,to:r.path,"aria-label":n.$t(r.label),tabindex:"0",variant:"text","active-color":"fg","base-color":"grey"},{default:f(()=>[c(ae,{size:"xx-large"},{default:f(()=>[H(C(r.icon),1)]),_:2},1024),w("span",es,C(n.$t(r.label)),1)]),_:2},1032,["to","aria-label"]))),128)),c(_t,null,{activator:f(({props:r})=>[c(ge,K(r,{"aria-haspopup":"true","aria-expanded":l.value.toString(),"aria-label":"Open library menu","base-color":"grey"}),{default:f(()=>[c(ae,{size:"xx-large"},{default:f(()=>[...s[0]||(s[0]=[H("mdi-bookshelf",-1)])]),_:1}),w("span",ts,C(n.$t("library")),1)]),_:1},16,["aria-expanded"])]),default:f(()=>[c($e,null,{default:f(()=>[(o(!0),_(X,null,ue(t(i).filter(r=>r.isLibraryNode),r=>(o(),Q(Ve,{key:r.label,title:n.$t(r.label),"prepend-icon":r.icon,to:r.path},null,8,["title","prepend-icon","to"]))),128))]),_:1})]),_:1})]),_:1},8,["height"]))}}),ls=W({__name:"Footer",setup(e){const i=S(()=>a.isInStandaloneMode?100:80);return(l,n)=>(o(),_(X,null,[t(a).mobileLayout?(o(),_("div",{key:0,class:le(l.$vuetify.theme.current.dark?"gradient-dark":"gradient-light"),style:`
|
|
16
16
|
position: fixed;
|
|
17
17
|
width: 100%;
|
|
18
18
|
height: 180px;
|
|
19
19
|
bottom: 0px;
|
|
20
20
|
z-index: 999;
|
|
21
|
-
`},null,2)):
|
|
21
|
+
`},null,2)):I("",!0),t(a).mobileLayout?(o(),Q(as,{key:1,height:i.value},null,8,["height"])):I("",!0),c(si,{app:"",color:"default",class:le(`py-0 px-0 ${t(a).mobileLayout?"mediacontrols-player-float":"mediacontrols-player-default"}`)},{default:f(()=>[c(Jn,{"use-floating-player":t(a).mobileLayout},null,8,["use-floating-player"])]),_:1},8,["class"])],64))}}),is={style:{float:"right","margin-right":"-20px"}},ns=W({__name:"PlayerSelect",setup(e){const i=R(!1),l=R(null),n=S(()=>Object.values(M.players).filter(d=>Lt(d)).filter(d=>d.player_id!==_e.player_id).sort((d,y)=>d.name.toUpperCase()>y.name?.toUpperCase()?1:-1));ee(()=>a.activePlayerId,d=>{d&&localStorage.setItem("mass.LastPlayerId",d)}),ee(()=>M.players,d=>{d&&!a.activePlayer&&r()},{deep:!0}),ee(()=>M.state,d=>{d.value!=yl.CONNECTED&&(a.activePlayerId=void 0)},{deep:!0});function s(d,y=!1){a.activePlayerId==d.player_id?i.value=!i.value:(i.value=!1,a.activePlayerId=d.player_id),y&&(a.showPlayersMenu=!1)}we(()=>{r()});const r=function(){if(a.activePlayer&&Lt(a.activePlayer))return;const d=u();d&&(a.activePlayerId=d)},u=function(){const d=localStorage.getItem("mass.LastPlayerId");if(d&&d in M.players&&M.players[d].available)return d};return(d,y)=>(o(),_(X,null,[c(aa,{modelValue:t(a).showPlayersMenu,"onUpdate:modelValue":y[0]||(y[0]=v=>t(a).showPlayersMenu=v)},null,8,["modelValue"]),t(a).showPlayersMenu?(o(),Q(fi,{key:0,modelValue:t(a).showPlayersMenu,"onUpdate:modelValue":y[4]||(y[4]=v=>t(a).showPlayersMenu=v),location:"right",app:"",clipped:"",temporary:"",width:460,style:{"z-index":"99999"},"z-index":"99999",color:"background"},{default:f(()=>[w("div",null,[c(Le,{class:"title",style:{"padding-top":"20px","padding-bottom":"20px"}},{default:f(()=>[w("b",null,C(d.$t("players")),1),w("div",is,[c(pe,{variant:"icon",to:{name:"playersettings"}},{default:f(()=>[c(ae,{size:"30"},{default:f(()=>[...y[5]||(y[5]=[H("mdi-cog-outline",-1)])]),_:1})]),_:1}),c(pe,{variant:"icon",onClick:y[1]||(y[1]=v=>t(a).showPlayersMenu=!1)},{default:f(()=>[c(ae,{size:"30"},{default:f(()=>[...y[6]||(y[6]=[H("mdi-window-close",-1)])]),_:1})]),_:1})])]),_:1}),c(lt),c($e,{flat:"",style:{margin:"0px 10px",padding:"0"}},{default:f(()=>[t(_e).mode===t(vl).BUILTIN&&t(_e).player_id&&t(M).players[t(_e).player_id]?(o(),Q(Ne,{key:0,id:t(_e).player_id,style:{margin:"10px 0px"},player:t(M).players[t(_e).player_id],"show-volume-control":!0,"show-menu-button":!0,"show-sub-players":!1,"show-sync-controls":!1,"allow-power-control":!0,onClick:y[2]||(y[2]=v=>s(t(M).players[t(_e).player_id]))},null,8,["id","player"])):I("",!0),(o(!0),_(X,null,ue(n.value.filter(v=>[t(Re).PLAYING,t(Re).PAUSED].includes(v.playback_state)||t(M).queues[v.player_id]?.items>0&&v.powered!=!1),v=>(o(),Q(Ne,{id:v.player_id,key:v.player_id,style:{margin:"10px 0px"},player:v,"show-volume-control":!0,"show-menu-button":!0,"show-sub-players":i.value&&v.player_id==t(a).activePlayerId,"show-sync-controls":v.supported_features.includes(t(Ee).SET_MEMBERS),"allow-power-control":!0,onClick:$=>s(v)},null,8,["id","player","show-sub-players","show-sync-controls","onClick"]))),128))]),_:1}),c(Ml,{modelValue:l.value,"onUpdate:modelValue":y[3]||(y[3]=v=>l.value=v),variant:"accordion",flat:"",class:"expansion"},{default:f(()=>[c(Et,{style:{padding:"0"}},{default:f(()=>[c(At,null,{default:f(()=>[w("h3",null,C(d.$t("all_players")),1)]),_:1}),c(Bt,{style:{padding:"0"}},{default:f(()=>[c($e,{flat:"",style:{margin:"-20px 3px 5px 3px"}},{default:f(()=>[(o(!0),_(X,null,ue(n.value.filter(v=>v.type!=t(We).GROUP),v=>(o(),Q(Ne,{id:v.player_id,key:v.player_id,style:{margin:"5px 0px"},player:v,"show-volume-control":!0,"show-menu-button":!0,"show-sub-players":i.value&&v.player_id==t(a).activePlayerId,"show-sync-controls":v.supported_features.includes(t(Ee).SET_MEMBERS),"allow-power-control":!0,onClick:$=>s(v)},null,8,["id","player","show-sub-players","show-sync-controls","onClick"]))),128))]),_:1})]),_:1})]),_:1}),n.value.filter(v=>v.type==t(We).GROUP).length?(o(),Q(Et,{key:0,style:{padding:"0"}},{default:f(()=>[c(At,null,{default:f(()=>[w("h3",null,C(d.$t("all_groups")),1)]),_:1}),c(Bt,{style:{padding:"0"}},{default:f(()=>[c($e,{flat:"",style:{margin:"-20px 3px 5px 3px"}},{default:f(()=>[(o(!0),_(X,null,ue(n.value.filter(v=>v.type==t(We).GROUP),v=>(o(),Q(Ne,{id:v.player_id,key:v.player_id,style:{margin:"5px 0px"},player:v,"show-volume-control":!0,"show-menu-button":!0,"show-sub-players":i.value&&v.player_id==t(a).activePlayerId,"show-sync-controls":v.supported_features.includes(t(Ee).SET_MEMBERS),"allow-power-control":!0,onClick:$=>s(v)},null,8,["id","player","show-sub-players","show-sync-controls","onClick"]))),128))]),_:1})]),_:1})]),_:1})):I("",!0)]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"])):I("",!0)],64))}}),ss=se(ns,[["__scopeId","data-v-cc077ef3"]]);function os(e={}){const{immediate:i=!1,onNeedRefresh:l,onOfflineReady:n,onRegistered:s,onRegisteredSW:r,onRegisterError:u}=e;let d,y,v;const $=async(m=!0)=>{await y,v?.()};async function b(){if("serviceWorker"in navigator){if(d=await fl(async()=>{const{Workbox:m}=await import("./workbox-window.prod.es5-CwtvwXb3.js");return{Workbox:m}},[],import.meta.url).then(({Workbox:m})=>new m("./sw.js",{scope:"./",type:"classic"})).catch(m=>{u?.(m)}),!d)return;v=()=>{d?.messageSkipWaiting()};{let m=!1;const T=()=>{m=!0,d?.addEventListener("controlling",L=>{L.isUpdate&&window.location.reload()}),l?.()};d.addEventListener("installed",L=>{typeof L.isUpdate>"u"?typeof L.isExternal<"u"&&L.isExternal?T():!m&&n?.():L.isUpdate||n?.()}),d.addEventListener("waiting",T)}d.register({immediate:i}).then(m=>{r?r("./sw.js",m):s?.(m)}).catch(m=>{u?.(m)})}}return y=b(),$}function rs(e={}){const{immediate:i=!0,onNeedRefresh:l,onOfflineReady:n,onRegistered:s,onRegisteredSW:r,onRegisterError:u}=e,d=R(!1),y=R(!1);return{updateServiceWorker:os({immediate:i,onNeedRefresh(){d.value=!0,l?.()},onOfflineReady(){y.value=!0,n?.()},onRegistered:s,onRegisteredSW:r,onRegisterError:u}),offlineReady:y,needRefresh:d}}const us={key:0,class:"pwa-toast",role:"alert"},cs={class:"message"},ds={key:0},ms={key:1},vs=W({__name:"ReloadPrompt",setup(e){const{offlineReady:i,needRefresh:l,updateServiceWorker:n}=rs(),s=async()=>{i.value=!1,l.value=!1};return(r,u)=>t(i)||t(l)?(o(),_("div",us,[w("div",cs,[t(i)?(o(),_("span",ds," App ready to work offline ")):(o(),_("span",ms," New content available, click on reload button to update. "))]),t(l)?(o(),_("button",{key:0,onClick:u[0]||(u[0]=d=>t(n)())},"Reload")):I("",!0),w("button",{onClick:s},"Close")])):I("",!0)}}),ys=W({__name:"Default",setup(e){const i=hl();return ee([()=>i.query.player,()=>Object.keys(M.players).length],([l])=>{if(!l)return;const n=l.toString().toLowerCase(),s=Object.values(M.players).find(r=>r.player_id.toLowerCase()===n||r.name.toLowerCase()===n)?.player_id;s&&(a.activePlayerId=s)},{immediate:!0}),ee(()=>i.query.showFullscreenPlayer,l=>{a.showFullscreenPlayer=!!l},{immediate:!0}),ee(()=>i.query.frameless,l=>{l&&(a.frameless=!0)},{immediate:!0}),(l,n)=>(o(),_(X,null,[t(a).connected?(o(),Q(jl,{key:0},{default:f(()=>[t(a).frameless?(o(),Q(Rt,{key:0})):(o(),_(X,{key:1},[c(ss),c(Rt),c(ls)],64))]),_:1})):(o(),Q(aa,{key:1,class:"centeredoverlay",persistent:"","model-value":!t(a).connected},{default:f(()=>[w("div",null,[c(la,{color:"primary",indeterminate:"",size:"64"})])]),_:1},8,["model-value"])),t(a).isInStandaloneMode?(o(),Q(vs,{key:2})):I("",!0)],64))}}),As=se(ys,[["__scopeId","data-v-3dcdb3ba"]]);export{As as default};
|