music-assistant-frontend 2.17.15__py3-none-any.whl → 2.17.28__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.

Files changed (147) hide show
  1. music_assistant_frontend/assets/About-BlM2bNNU.css +1 -0
  2. music_assistant_frontend/assets/About-DD-Ra6q9.js +1 -0
  3. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-4S1vyk3y.js +1 -0
  4. music_assistant_frontend/assets/AddPlayerGroup-cntNx9PL.js +1 -0
  5. music_assistant_frontend/assets/AddProviderDetails-DoKLUG5n.js +1 -0
  6. music_assistant_frontend/assets/AlbumDetails-iZRC2HAx.js +1 -0
  7. music_assistant_frontend/assets/ArtistDetails-pWsx0uxv.js +1 -0
  8. music_assistant_frontend/assets/AudiobookDetails-Dk3PEU9D.js +1 -0
  9. music_assistant_frontend/assets/BrowseView-g_5UPiVj.js +1 -0
  10. music_assistant_frontend/assets/{Button-Da2w4xZe.js → Button-Cm9Kv1fL.js} +1 -1
  11. music_assistant_frontend/assets/{Container-vEyxubcK.js → Container-BunIU4BI.js} +1 -1
  12. music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-WD6jKrT1.js +1 -0
  13. music_assistant_frontend/assets/Default-BoZpM67W.css +1 -0
  14. music_assistant_frontend/assets/Default-D3QbBdka.js +21 -0
  15. music_assistant_frontend/assets/EditConfig-Bo92pQzx.js +2 -0
  16. music_assistant_frontend/assets/EditConfig-CcxrPgWJ.css +1 -0
  17. music_assistant_frontend/assets/EditCoreConfig-Dn-oiBmv.js +1 -0
  18. music_assistant_frontend/assets/EditPlayer-C4U8nmpt.js +1 -0
  19. music_assistant_frontend/assets/EditPlayerDsp-DIRF5Ifm.js +9 -0
  20. music_assistant_frontend/assets/EditProvider-DH6yzgKO.js +1 -0
  21. music_assistant_frontend/assets/FrontendConfig-DGr-C8uc.js +1 -0
  22. music_assistant_frontend/assets/HomeView-CF-2XJYc.js +1 -0
  23. music_assistant_frontend/assets/{ItemsListing-qc86ZllS.css → ItemsListing-DBRgGdb9.css} +1 -1
  24. music_assistant_frontend/assets/ItemsListing-DiFULYEk.js +1 -0
  25. music_assistant_frontend/assets/LibraryAlbums-DsXvfpDF.js +1 -0
  26. music_assistant_frontend/assets/LibraryArtists-CvhNCIa6.js +1 -0
  27. music_assistant_frontend/assets/LibraryAudiobooks-BXD39SCR.js +1 -0
  28. music_assistant_frontend/assets/LibraryPlaylists-CVSNqj6B.js +1 -0
  29. music_assistant_frontend/assets/LibraryPodcasts-D-KYAv5K.js +1 -0
  30. music_assistant_frontend/assets/LibraryRadios-DXJv2vPJ.js +1 -0
  31. music_assistant_frontend/assets/LibraryTracks-BW-Ne0K5.js +1 -0
  32. music_assistant_frontend/assets/{ListItem-CMI0ccXI.js → ListItem-DNqmHglz.js} +1 -1
  33. music_assistant_frontend/assets/MediaItemImages-B-oQ8T4k.js +1 -0
  34. music_assistant_frontend/assets/MediaItemThumb-Djieuu-m.js +1 -0
  35. music_assistant_frontend/assets/PanelviewItemCompact-zZvQaI6t.js +1 -0
  36. music_assistant_frontend/assets/{PlayerCard-BtmAlIKh.css → PlayerCard-B-1h1GH8.css} +1 -1
  37. music_assistant_frontend/assets/PlayerCard-CbOeDESo.js +1 -0
  38. music_assistant_frontend/assets/Players-CMiHL1Xr.js +1 -0
  39. music_assistant_frontend/assets/Players-DiFMAcvk.css +1 -0
  40. music_assistant_frontend/assets/PlaylistDetails-BYOLLggx.js +1 -0
  41. music_assistant_frontend/assets/PodcastDetails-BMWkoQkv.js +1 -0
  42. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-DzvsLzds.js +8 -0
  43. music_assistant_frontend/assets/Providers-BVL70bSb.js +1 -0
  44. music_assistant_frontend/assets/Providers-Df6R6NDc.css +1 -0
  45. music_assistant_frontend/assets/RadioDetails-Dk19WXMn.js +1 -0
  46. music_assistant_frontend/assets/RemoteAccessSettings-Bf5s7Cwr.css +1 -0
  47. music_assistant_frontend/assets/RemoteAccessSettings-Cc9VhqAV.js +1 -0
  48. music_assistant_frontend/assets/Search-gIzJ4Lef.js +1 -0
  49. music_assistant_frontend/assets/ServerLogs-D16I7ozL.css +1 -0
  50. music_assistant_frontend/assets/ServerLogs-DEmjg0ji.js +4 -0
  51. music_assistant_frontend/assets/Settings-BPCFcSEv.js +1 -0
  52. music_assistant_frontend/assets/{Settings-DgZgWYgS.css → Settings-CbTYv9HY.css} +1 -1
  53. music_assistant_frontend/assets/SystemConfig-BKi5ffMS.css +1 -0
  54. music_assistant_frontend/assets/SystemConfig-DzuRfqZX.js +1 -0
  55. music_assistant_frontend/assets/{Toolbar-DJx0b-Ea.css → Toolbar-DOjWle_n.css} +1 -1
  56. music_assistant_frontend/assets/Toolbar-xH_GEfSi.js +1 -0
  57. music_assistant_frontend/assets/TrackDetails-Bpl4yjoA.js +1 -0
  58. music_assistant_frontend/assets/UserManagement-BmZul5Bv.js +1 -0
  59. music_assistant_frontend/assets/{UserProfile-2DGSt3Q4.js → UserProfile-C9aw6Mo0.js} +1 -1
  60. music_assistant_frontend/assets/{VAlert-DfNKgxBR.js → VAlert-CBrxai34.js} +1 -1
  61. music_assistant_frontend/assets/VCheckboxBtn-BMAdXnae.js +1 -0
  62. music_assistant_frontend/assets/VDialog-BndVdZhi.js +1 -0
  63. music_assistant_frontend/assets/VExpansionPanels-lmUrDJt6.js +1 -0
  64. music_assistant_frontend/assets/{VForm-D2eK17M_.js → VForm-Dpln05ME.js} +1 -1
  65. music_assistant_frontend/assets/VInfiniteScroll-B-XMauN8.css +1 -0
  66. music_assistant_frontend/assets/{VInfiniteScroll-CBHSFC6_.js → VInfiniteScroll-B5bUrC-Z.js} +1 -1
  67. music_assistant_frontend/assets/VSelect-uSApsKq0.js +1 -0
  68. music_assistant_frontend/assets/VSelectionControl-S-aELuKm.js +1 -0
  69. music_assistant_frontend/assets/{VSlider-Dt4jt2Zl.js → VSlider-DzdWVMUa.js} +1 -1
  70. music_assistant_frontend/assets/VSwitch-B-1g31ug.js +1 -0
  71. music_assistant_frontend/assets/VToolbar-D1tRNhN6.css +1 -0
  72. music_assistant_frontend/assets/VToolbar-hGVdN8lh.js +1 -0
  73. music_assistant_frontend/assets/VVirtualScroll-C1eeqQrQ.js +1 -0
  74. music_assistant_frontend/assets/WidgetRow-DKnAiOkf.js +1 -0
  75. music_assistant_frontend/assets/index-W5yBuLNV.css +1 -0
  76. music_assistant_frontend/assets/{index-BjdGY0D1.js → index-rZUS0c3q.js} +87 -81
  77. music_assistant_frontend/assets/{marquee_text_sync-WzwJ--pH.js → marquee_text_sync-AT1GwuhW.js} +1 -1
  78. music_assistant_frontend/assets/open-home-foundation-logo-C7bc6Uqr.svg +22 -0
  79. music_assistant_frontend/assets/userPreferences-a0gVUlkp.js +1 -0
  80. music_assistant_frontend/assets/workbox-window.prod.es5-BIl4cyR9.js +2 -0
  81. music_assistant_frontend/index.html +2 -2
  82. music_assistant_frontend/sw.js +2 -2
  83. {music_assistant_frontend-2.17.15.dist-info → music_assistant_frontend-2.17.28.dist-info}/METADATA +1 -1
  84. music_assistant_frontend-2.17.28.dist-info/RECORD +148 -0
  85. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-DG4jP955.js +0 -1
  86. music_assistant_frontend/assets/AddPlayerGroup-Bwk7pmNx.js +0 -1
  87. music_assistant_frontend/assets/AddProviderDetails-9el-oexz.js +0 -1
  88. music_assistant_frontend/assets/AlbumDetails-BxtRl2YX.js +0 -1
  89. music_assistant_frontend/assets/ArtistDetails-C15MPi-J.js +0 -1
  90. music_assistant_frontend/assets/AudiobookDetails-BtzViAS0.js +0 -1
  91. music_assistant_frontend/assets/BrowseView-DwddahrD.js +0 -1
  92. music_assistant_frontend/assets/CoreConfigs-BsI6FsWH.css +0 -1
  93. music_assistant_frontend/assets/CoreConfigs-D3Lk-7JE.js +0 -1
  94. music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-C6YdwidI.js +0 -1
  95. music_assistant_frontend/assets/Default-Br-juh2E.js +0 -21
  96. music_assistant_frontend/assets/Default-C8ExxF7E.css +0 -1
  97. music_assistant_frontend/assets/EditConfig-BnGkC7Dx.js +0 -1
  98. music_assistant_frontend/assets/EditConfig-SyvCtrr0.css +0 -1
  99. music_assistant_frontend/assets/EditCoreConfig-CnIejyq9.js +0 -1
  100. music_assistant_frontend/assets/EditPlayer-DWbeXaJ5.js +0 -1
  101. music_assistant_frontend/assets/EditPlayerDsp-BFHS-0i1.js +0 -9
  102. music_assistant_frontend/assets/EditProvider-DaVXHsTj.js +0 -1
  103. music_assistant_frontend/assets/FrontendConfig-eR1Z1zGd.js +0 -1
  104. music_assistant_frontend/assets/HomeView-Dn-M1jTz.js +0 -1
  105. music_assistant_frontend/assets/ItemsListing-DsCHQduO.js +0 -1
  106. music_assistant_frontend/assets/LibraryAlbums-CHYwiQaW.js +0 -1
  107. music_assistant_frontend/assets/LibraryArtists-BdcWa4H2.js +0 -1
  108. music_assistant_frontend/assets/LibraryAudiobooks-DC0SIBx-.js +0 -1
  109. music_assistant_frontend/assets/LibraryPlaylists-AKjmGQHJ.js +0 -1
  110. music_assistant_frontend/assets/LibraryPodcasts-D8nYpNLG.js +0 -1
  111. music_assistant_frontend/assets/LibraryRadios-1GRC-OzJ.js +0 -1
  112. music_assistant_frontend/assets/LibraryTracks-p8Y13gW3.js +0 -1
  113. music_assistant_frontend/assets/MediaItemImages-CpqpuCtk.js +0 -1
  114. music_assistant_frontend/assets/MediaItemThumb-CMOvHHof.js +0 -1
  115. music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-B8G50Aza.js +0 -1
  116. music_assistant_frontend/assets/PanelviewItemCompact-C6DCjPZU.js +0 -1
  117. music_assistant_frontend/assets/PlayerCard-RpvQiENI.js +0 -1
  118. music_assistant_frontend/assets/Players-DbwqOQm4.js +0 -1
  119. music_assistant_frontend/assets/PlaylistDetails-DhlSXFbi.js +0 -1
  120. music_assistant_frontend/assets/PodcastDetails-bqHu2VUs.js +0 -1
  121. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-BvNkAPPj.js +0 -8
  122. music_assistant_frontend/assets/Providers-CgdTyZF0.js +0 -1
  123. music_assistant_frontend/assets/Providers-Dpp2O4F9.css +0 -1
  124. music_assistant_frontend/assets/RadioDetails-BDJXF1Lf.js +0 -1
  125. music_assistant_frontend/assets/Search-BOjaQ4tl.js +0 -1
  126. music_assistant_frontend/assets/Settings-D8dH3JXV.js +0 -1
  127. music_assistant_frontend/assets/Toolbar-94EvSFT-.js +0 -1
  128. music_assistant_frontend/assets/TrackDetails-D-mFx3v3.js +0 -1
  129. music_assistant_frontend/assets/UserManagement-DqY36gSD.js +0 -1
  130. music_assistant_frontend/assets/VCheckboxBtn-B_ZAO1Qo.js +0 -1
  131. music_assistant_frontend/assets/VDialog-B7h8eW0m.js +0 -1
  132. music_assistant_frontend/assets/VExpansionPanels-cqvywsgH.js +0 -1
  133. music_assistant_frontend/assets/VInfiniteScroll-Bbntx9NP.css +0 -1
  134. music_assistant_frontend/assets/VSelect-cNIaLpz4.js +0 -1
  135. music_assistant_frontend/assets/VSwitch-CvtgmnVD.js +0 -1
  136. music_assistant_frontend/assets/VToolbar-COKHN9Hu.css +0 -1
  137. music_assistant_frontend/assets/VToolbar-DyyzvXAh.js +0 -1
  138. music_assistant_frontend/assets/VVirtualScroll-Ck3MSSZi.js +0 -1
  139. music_assistant_frontend/assets/WidgetRow-CXYVjNw0.js +0 -1
  140. music_assistant_frontend/assets/index-DFqSLpsO.css +0 -1
  141. music_assistant_frontend/assets/workbox-window.prod.es5-CwtvwXb3.js +0 -2
  142. music_assistant_frontend-2.17.15.dist-info/RECORD +0 -139
  143. /music_assistant_frontend/assets/{VCheckboxBtn-CIeJsqfW.css → VSelectionControl-CIeJsqfW.css} +0 -0
  144. /music_assistant_frontend/assets/{NowPlayingBadge-Cm6AcKY5.css → userPreferences-Cm6AcKY5.css} +0 -0
  145. {music_assistant_frontend-2.17.15.dist-info → music_assistant_frontend-2.17.28.dist-info}/WHEEL +0 -0
  146. {music_assistant_frontend-2.17.15.dist-info → music_assistant_frontend-2.17.28.dist-info}/licenses/LICENSE +0 -0
  147. {music_assistant_frontend-2.17.15.dist-info → music_assistant_frontend-2.17.28.dist-info}/top_level.txt +0 -0
@@ -1 +0,0 @@
1
- import{aw as w,bL as x,J as f,L as $,aG as c,ay as u,aD as t,o as l,aQ as B,be as F,r as N,bf as p,aL as d,c1 as U,ax as D,bF as h,ag as I,E as L,bT as _,bU as A,M as k,aN as E,aU as i}from"./index-BjdGY0D1.js";import{V as S}from"./VDialog-B7h8eW0m.js";const q={class:"text-body-2 mb-2 text-grey-darken-1"},J=w({__name:"CreateTokenDialog",props:{modelValue:{type:Boolean},userId:{}},emits:["update:modelValue","created"],setup(V,{emit:C}){const{t:s}=x(),y=V,m=C,v=f(!1),o=f(""),a=f(""),b=()=>{o.value="",a.value="",requestAnimationFrame(()=>{m("update:modelValue",!1)})},g=async()=>{v.value=!0;try{const e=await E.createToken(o.value,y.userId);e?(i.success(s("auth.token_created")),a.value=e,m("created")):i.error(s("auth.token_create_failed"))}catch(e){i.error(e.message||s("auth.token_create_failed"))}finally{v.value=!1}};$(()=>y.modelValue,e=>{e||(o.value="",a.value="")});const T=async()=>{if(a.value)try{await navigator.clipboard.writeText(a.value),i.success(s("auth.token_copied"))}catch(e){console.error("Failed to copy token",e),i.error(s("auth.token_copy_failed"))}};return(e,n)=>(u(),c(S,{"model-value":V.modelValue,"max-width":"500","onUpdate:modelValue":n[2]||(n[2]=r=>m("update:modelValue",r))},{default:t(()=>[l(B,null,{default:t(()=>[l(F,{class:N(["text-h6 pa-6",{"pb-0":a.value,"pb-4":!a.value}])},{default:t(()=>[p(d(a.value?o.value:e.$t("auth.create_token")),1)]),_:1},8,["class"]),l(U,{class:"px-6 pb-2"},{default:t(()=>[a.value?(u(),D(I,{key:1},[L("p",q,d(e.$t("auth.copy_new_token_hint")),1),l(h,{modelValue:a.value,"onUpdate:modelValue":n[1]||(n[1]=r=>a.value=r),readonly:"",variant:"outlined",density:"comfortable",class:"mb-2","append-inner-icon":"mdi-content-copy","onClick:appendInner":T},null,8,["modelValue"])],64)):(u(),c(h,{key:0,modelValue:o.value,"onUpdate:modelValue":n[0]||(n[0]=r=>o.value=r),label:e.$t("auth.token_name"),variant:"outlined",density:"comfortable",hint:e.$t("auth.token_name_hint"),"persistent-hint":"",autofocus:""},null,8,["modelValue","label","hint"]))]),_:1}),a.value?(u(),c(_,{key:1,class:"px-6 pb-6 pt-0"},{default:t(()=>[l(k,{color:"primary",variant:"tonal",onClick:b},{default:t(()=>[p(d(e.$t("close")),1)]),_:1})]),_:1})):(u(),c(_,{key:0,class:"pa-6 pt-4"},{default:t(()=>[l(A),l(k,{variant:"text",onClick:b},{default:t(()=>[p(d(e.$t("cancel")),1)]),_:1}),l(k,{color:"primary",variant:"flat",loading:v.value,disabled:!o.value,onClick:g},{default:t(()=>[p(d(e.$t("create")),1)]),_:1},8,["loading","disabled"])]),_:1}))]),_:1})]),_:1},8,["model-value"]))}});export{J as _};
@@ -1,21 +0,0 @@
1
- import{_ as se,a as ga,g as ve,p as ye,u as _a,b as nt,c as Ee,d as Ft,e as st,f as ot,h as rt,i as S,j as je,k as ut,t as N,l as zt,m as ct,n as fe,o as d,q as J,r as ie,s as we,v as Ge,w as ba,x as Ae,y as dt,z as mt,A as vt,B as Ot,C as Re,D as yt,V as Pa,E as I,F as Nt,G as ft,H as Wt,I as wa,J as R,K as ce,L as ee,M as _e,N as Ht,P as ka,O as wt,Q as xa,R as De,S as Ia,T as Ut,U as Ca,W as $a,X as Qa,Y as Sa,Z as Va,$ as Ta,a0 as La,a1 as Le,a2 as ht,a3 as ke,a4 as qe,a5 as Ma,a6 as Ea,a7 as Ba,a8 as pt,a9 as Aa,aa as Yt,ab as Ra,ac as Da,ad as G,ae as qa,af as Fa,ag as X,ah as za,ai as Oa,aj as He,ak as Na,al as Wa,am as Ha,an as Xt,ao as Ua,ap as Ya,aq as Xa,ar as kt,as as ja,at as Ga,au as Ka,av as t,aw as W,ax as _,ay as r,az as w,aA as Za,aB as a,aC as Ja,aD as f,aE as ue,aF as $e,aG as Q,aH as Ve,aI as jt,aJ as ae,aK as el,aL as C,aM as Ce,aN as M,aO as F,aP as xt,aQ as Ue,aR as Z,aS as et,aT as Je,aU as tl,aV as al,aW as ll,aX as il,aY as nl,aZ as sl,a_ as Qe,a$ as re,b0 as pe,b1 as Be,b2 as gt,b3 as le,b4 as Gt,b5 as Pe,b6 as Kt,b7 as Zt,b8 as Ye,b9 as ol,ba as Fe,bb as ze,bc as Xe,bd as tt,be as Te,bf as H,bg as he,bh as Jt,bi as ea,bj as ta,bk as It,bl as Ct,bm as rl,bn as ul,bo as cl,bp as Ne,bq as dl,br as $t,bs as Qt,bt as St,bu as be,bv as aa,bw as ml,bx as vl,by as yl,bz as fl,bA as hl,bB as pl}from"./index-BjdGY0D1.js";import{D as gl}from"./constants-CXMxJR4j.js";import{M as Me}from"./MediaItemThumb-CMOvHHof.js";import{T as _l,V as at}from"./Toolbar-94EvSFT-.js";import{V as la}from"./VDialog-B7h8eW0m.js";import{M as bl}from"./index-kQIztB-E.js";import{m as Vt,B as ge}from"./Button-Da2w4xZe.js";import{V as Pl,P as _t,g as wl,a as Oe}from"./PlayerCard-RpvQiENI.js";import{V as kl}from"./VSlider-Dt4jt2Zl.js";import{L as xl}from"./ListItem-CMI0ccXI.js";import{M as ne,a as lt}from"./marquee_text_sync-WzwJ--pH.js";import{_ as Il}from"./NowPlayingBadge.vue_vue_type_style_index_0_lang-B8G50Aza.js";import{V as Cl}from"./VToolbar-DyyzvXAh.js";import{V as $l}from"./VInfiniteScroll-CBHSFC6_.js";import{V as Ql}from"./VVirtualScroll-Ck3MSSZi.js";import{V as Sl,a as Tt,b as Lt,c as Mt}from"./VExpansionPanels-cqvywsgH.js";import"./VCheckboxBtn-B_ZAO1Qo.js";const Vl=se(ga,[["__scopeId","data-v-e81c826a"]]),Tl=ye({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},...yt(),...Re(),...Ot(),...vt(),...mt(),...dt({name:"bottom-navigation"}),...Ae({tag:"header"}),...ba({selectedClass:"v-btn--selected"}),...Ge()},"VBottomNavigation"),Ll=ve()({name:"VBottomNavigation",props:Tl(),emits:{"update:active":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{slots:l}=n;const{themeClasses:i}=_a(),{borderClasses:s}=nt(e),{backgroundColorClasses:o,backgroundColorStyles:u}=Ee(()=>e.bgColor),{densityClasses:c}=Ft(e),{elevationClasses:y}=st(e),{roundedClasses:v}=ot(e),{ssrBootStyles:$}=rt(),b=S(()=>Number(e.height)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0)),m=je(e,"active",e.active),{layoutItemStyles:T}=ut({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 zt(e,Pa),ct({VBtn:{baseColor:N(()=>e.baseColor),color:N(()=>e.color),density:N(()=>e.density),stacked:N(()=>e.mode!=="horizontal"),variant:"text"}},{scoped:!0}),fe(()=>d(e.tag,{class:ie(["v-bottom-navigation",{"v-bottom-navigation--active":m.value,"v-bottom-navigation--grow":e.grow,"v-bottom-navigation--shift":e.mode==="shift"},i.value,o.value,s.value,c.value,y.value,v.value,e.class]),style:J([u.value,T.value,{height:we(b.value)},$.value,e.style])},{default:()=>[l.default&&I("div",{class:"v-bottom-navigation__content"},[l.default()])]})),{}}}),Ml=e=>{const{touchstartX:n,touchendX:l,touchstartY:i,touchendY:s}=e,o=.5,u=16;e.offsetX=l-n,e.offsetY=s-i,Math.abs(e.offsetY)<o*Math.abs(e.offsetX)&&(e.left&&l<n-u&&e.left(e),e.right&&l>n+u&&e.right(e)),Math.abs(e.offsetX)<o*Math.abs(e.offsetY)&&(e.up&&s<i-u&&e.up(e),e.down&&s>i+u&&e.down(e))};function El(e,n){const l=e.changedTouches[0];n.touchstartX=l.clientX,n.touchstartY=l.clientY,n.start?.({originalEvent:e,...n})}function Bl(e,n){const l=e.changedTouches[0];n.touchendX=l.clientX,n.touchendY=l.clientY,n.end?.({originalEvent:e,...n}),Ml(n)}function Al(e,n){const l=e.changedTouches[0];n.touchmoveX=l.clientX,n.touchmoveY=l.clientY,n.move?.({originalEvent:e,...n})}function Rl(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n={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=>El(l,n),touchend:l=>Bl(l,n),touchmove:l=>Al(l,n)}}function Dl(e,n){const l=n.value,i=l?.parent?e.parentElement:e,s=l?.options??{passive:!0},o=n.instance?.$.uid;if(!i||o===void 0)return;const u=Rl(n.value);i._touchHandlers=i._touchHandlers??Object.create(null),i._touchHandlers[o]=u,Nt(u).forEach(c=>{i.addEventListener(c,u[c],s)})}function ql(e,n){const l=n.value?.parent?e.parentElement:e,i=n.instance?.$.uid;if(!l?._touchHandlers||i===void 0)return;const s=l._touchHandlers[i];Nt(s).forEach(o=>{l.removeEventListener(o,s[o])}),delete l._touchHandlers[i]}const it={mounted:Dl,unmounted:ql},ia=Symbol.for("vuetify:v-window"),na=Symbol.for("vuetify:v-window-group"),sa=ye({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,...Re(),...Ae(),...Ge()},"VWindow"),Et=ve()({name:"VWindow",directives:{vTouch:it},props:sa(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:l}=n;const{themeClasses:i}=ft(e),{isRtl:s}=Wt(),{t:o}=wa(),u=zt(e,na),c=R(),y=S(()=>s.value?!e.reverse:e.reverse),v=ce(!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=ce(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};wt&&p>=0&&(h=xa(c.value),k.left=h?.scrollLeft,k.top=h?.scrollTop);const V=u.items.value.length,A=V-1;V<=2?v.value=E<p:E===A&&p===0?v.value=!1:E===0&&p===A?v.value=!0:v.value=E<p,De(()=>{if(!wt||!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"}),Ia(ia,{transition:$,isReversed:v,transitionCount:b,transitionHeight:m,rootRef:c});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 j=S(()=>{const E=[],p={icon:s.value?e.nextIcon:e.prevIcon,class:`v-window__${y.value?"right":"left"}`,onClick:u.prev,"aria-label":o("$vuetify.carousel.prev")};E.push(L.value?l.prev?l.prev({props:p}):d(_e,p,null):I("div",null,null));const h={icon:s.value?e.prevIcon:e.nextIcon,class:`v-window__${y.value?"left":"right"}`,onClick:u.next,"aria-label":o("$vuetify.carousel.next")};return E.push(D.value?l.next?l.next({props:h}):d(_e,h,null):I("div",null,null)),E}),B=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 fe(()=>Ht(d(e.tag,{ref:c,class:ie(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover","v-window--vertical-arrows":!!e.verticalArrows,"v-window--crossfade":!!e.crossfade},i.value,e.class]),style:J([e.style,e.transitionDuration&&!ka?{"--v-window-transition-duration":we(e.transitionDuration,"ms")}:void 0])},{default:()=>[I("div",{class:"v-window__container",style:{height:m.value}},[l.default?.({group:u}),e.showArrows!==!1&&I("div",{class:ie(["v-window__controls",{"v-window__controls--left":e.verticalArrows==="left"||e.verticalArrows===!0},{"v-window__controls--right":e.verticalArrows==="right"}])},[j.value])]),l.additional?.({group:u})]}),[[it,B.value]])),{group:u}}}),oa=ye({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...Re(),...Ta(),...Va()},"VWindowItem"),Bt=ve()({name:"VWindowItem",directives:{vTouch:it},props:oa(),emits:{"group:selected":e=>!0},setup(e,n){let{slots:l}=n;const i=Ut(ia),s=Ca(e,na),{isBooted:o}=rt();if(!i||!s)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const u=ce(!1),c=S(()=>o.value&&(i.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function y(){!u.value||!i||(u.value=!1,i.transitionCount.value>0&&(i.transitionCount.value-=1,i.transitionCount.value===0&&(i.transitionHeight.value=void 0)))}function v(){u.value||!i||(u.value=!0,i.transitionCount.value===0&&(i.transitionHeight.value=we(i.rootRef.value?.clientHeight)),i.transitionCount.value+=1)}function $(){y()}function b(L){u.value&&De(()=>{!c.value||!u.value||!i||(i.transitionHeight.value=we(L.clientHeight))})}const m=S(()=>{const L=i.isReversed.value?e.reverseTransition:e.transition;return c.value?{name:typeof L!="string"?i.transition.value:L,onBeforeEnter:v,onAfterEnter:y,onEnterCancelled:$,onBeforeLeave:v,onAfterLeave:y,onLeaveCancelled:$,onEnter:b}:!1}),{hasContent:T}=$a(e,s.isSelected);return fe(()=>d(Sa,{transition:m.value,disabled:!o.value},{default:()=>[Ht(I("div",{class:ie(["v-window-item",s.selectedClass.value,e.class]),style:J(e.style)},[T.value&&l.default?.()]),[[Qa,s.isSelected.value]])]})),{groupItem:s}}}),Fl=ye({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...yt(),...Re(),...vt(),...dt(),...mt(),...Ae({tag:"footer"}),...Ge()},"VFooter"),zl=ve()({name:"VFooter",props:Fl(),setup(e,n){let{slots:l}=n;const i=R(),{themeClasses:s}=ft(e),{backgroundColorClasses:o,backgroundColorStyles:u}=Ee(()=>e.color),{borderClasses:c}=nt(e),{elevationClasses:y}=st(e),{roundedClasses:v}=ot(e),$=ce(32),{resizeRef:b}=La(T=>{T.length&&($.value=T[0].target.clientHeight)}),m=S(()=>e.height==="auto"?$.value:parseInt(e.height,10));return Le(()=>e.app,()=>{const T=ut({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)});ht(()=>{i.value=T.layoutItemStyles.value})}),fe(()=>d(e.tag,{ref:b,class:ie(["v-footer",s.value,o.value,c.value,y.value,v.value,e.class]),style:J([u.value,e.app?i.value:{height:we(e.height)},e.style])},l)),{}}});function Ol(e){let{rootEl:n,isSticky:l,layoutItemStyles:i}=e;const s=ce(!1),o=ce(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]:we(o.value)}:{top:i.value.top}]});ke(()=>{ee(l,v=>{v?window.addEventListener("scroll",y,{passive:!0}):window.removeEventListener("scroll",y)},{immediate:!0})}),qe(()=>{window.removeEventListener("scroll",y)});let c=0;function y(){const v=c>window.scrollY?"up":"down",$=n.value.getBoundingClientRect(),b=parseFloat(i.value.top??0),m=window.scrollY-Math.max(0,o.value-b),T=$.height+Math.max(o.value,b)-window.scrollY-window.innerHeight,L=parseFloat(getComputedStyle(n.value).getPropertyValue("--v-body-scroll-y"))||0;$.height<window.innerHeight-b?(s.value="top",o.value=b):v==="up"&&s.value==="bottom"||v==="down"&&s.value==="top"?(o.value=window.scrollY+$.top-L,s.value=!0):v==="down"&&T<=0?(o.value=0,s.value="bottom"):v==="up"&&m<=0&&(L?s.value!=="top"&&(o.value=-m+L+b,s.value="top"):(o.value=$.top+m,s.value="top")),c=window.scrollY}return{isStuck:s,stickyStyles:u}}const Nl=100,Wl=20;function At(e){return(e<0?-1:1)*Math.sqrt(Math.abs(e))*1.41421356237}function Rt(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 n=0;for(let l=e.length-1;l>0;l--){if(e[l].t===e[l-1].t)continue;const i=At(n),s=(e[l].d-e[l-1].d)/(e[l].t-e[l-1].t);n+=(s-i)*Math.abs(s),l===e.length-1&&(n*=.5)}return At(n)*1e3}function Hl(){const e={};function n(s){Array.from(s.changedTouches).forEach(o=>{(e[o.identifier]??(e[o.identifier]=new Ma(Wl))).push([s.timeStamp,o])})}function l(s){Array.from(s.changedTouches).forEach(o=>{delete e[o.identifier]})}function i(s){const o=e[s]?.values().reverse();if(!o)throw new Error(`No samples for touch id ${s}`);const u=o[0],c=[],y=[];for(const v of o){if(u[0]-v[0]>Nl)break;c.push({t:v[0],d:v[1].clientX}),y.push({t:v[0],d:v[1].clientY})}return{x:Rt(c),y:Rt(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":Ul()}}}return{addMovement:n,endTouch:l,getVelocity:i}}function Ul(){throw new Error}function Yl(e){let{el:n,isActive:l,isTemporary:i,width:s,touchless:o,position:u}=e;ke(()=>{window.addEventListener("touchstart",j,{passive:!0}),window.addEventListener("touchmove",B,{passive:!1}),window.addEventListener("touchend",E,{passive:!0})}),qe(()=>{window.removeEventListener("touchstart",j),window.removeEventListener("touchmove",B),window.removeEventListener("touchend",E)});const c=S(()=>["left","right"].includes(u.value)),{addMovement:y,endTouch:v,getVelocity:$}=Hl();let b=!1;const m=ce(!1),T=ce(0),L=ce(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?Ea(V):V}function j(h){if(o.value)return;const k=h.changedTouches[0].clientX,V=h.changedTouches[0].clientY,A=25,q=u.value==="left"?k<A:u.value==="right"?k>document.documentElement.clientWidth-A:u.value==="top"?V<A:u.value==="bottom"?V>document.documentElement.clientHeight-A: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&&i.value)&&(D=[k,V],L.value=z(c.value?k:V,l.value),T.value=U(c.value?k:V),b=L.value>-20&&L.value<80,v(h),y(h))}function B(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]);(c.value?q>P&&q>3:P>q&&P>3)?(m.value=!0,b=!1):(c.value?P:q)>3&&(b=!1)}if(!m.value)return;h.preventDefault(),y(h);const A=U(c.value?k:V,!1);T.value=Math.max(0,Math.min(1,A)),A>1?L.value=z(c.value?k:V,!0):A<0&&(L.value=z(c.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),A=Math.abs(k.y);(c.value?V>A&&V>400:A>V&&A>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 Le(m,()=>{const h=n.value?.style.transform??null,k=n.value?.style.transition??null;ht(()=>{n.value?.style.setProperty("transform",p.value?.transform||"none"),n.value?.style.setProperty("transition",p.value?.transition||null)}),Ba(()=>{n.value?.style.setProperty("transform",h),n.value?.style.setProperty("transition",k)})}),{isDragging:m,dragProgress:T,dragStyles:p}}function Ie(){throw new Error}const Xl=["start","end","left","right","top","bottom"],jl=ye({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=>Xl.includes(e)},sticky:Boolean,...yt(),...Re(),...Oa(),...za({mobile:null}),...vt(),...dt(),...mt(),...Ae({tag:"nav"}),...Ge()},"VNavigationDrawer"),Gl=ve()({name:"VNavigationDrawer",props:jl(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,n){let{attrs:l,emit:i,slots:s}=n;const{isRtl:o}=Wt(),{themeClasses:u}=ft(e),{borderClasses:c}=nt(e),{backgroundColorClasses:y,backgroundColorStyles:v}=Ee(()=>e.color),{elevationClasses:$}=st(e),{displayClasses:b,mobile:m}=pt(e),{roundedClasses:T}=ot(e),L=Aa(),D=je(e,"modelValue",null,Y=>!!Y),{ssrBootStyles:z}=rt(),{scopeId:U}=Yt(),j=R(),B=ce(!1),{runOpenDelay:E,runCloseDelay:p}=qa(e,Y=>{B.value=Y}),h=S(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),k=S(()=>Ra(e.location,o.value)),V=N(()=>e.persistent),A=S(()=>!e.permanent&&(m.value||e.temporary)),q=S(()=>e.sticky&&!A.value&&k.value!=="bottom");Le(()=>e.expandOnHover&&e.rail!=null,()=>{ee(B,Y=>i("update:rail",!Y))}),Le(()=>!e.disableResizeWatcher,()=>{ee(A,Y=>!e.permanent&&De(()=>D.value=!Y))}),Le(()=>!e.disableRouteWatcher&&!!L,()=>{ee(L.currentRoute,()=>A.value&&(D.value=!1))}),ee(()=>e.permanent,Y=>{Y&&(D.value=!0)}),e.modelValue==null&&!A.value&&(D.value=e.permanent||!m.value);const{isDragging:P,dragProgress:g}=Yl({el:j,isActive:D,isTemporary:A,width:h,touchless:N(()=>e.touchless),position:k}),x=S(()=>{const Y=A.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):h.value;return P.value?Y*g.value:Y}),{layoutItemStyles:O,layoutItemScrimStyles:K}=ut({id:e.name,order:S(()=>parseInt(e.order,10)),position:k,layoutSize:x,elementSize:h,active:Da(D),disableTransitions:N(()=>P.value),absolute:S(()=>e.absolute||q.value&&typeof te.value!="string")}),{isStuck:te,stickyStyles:de}=Ol({rootEl:j,isSticky:q,layoutItemStyles:O}),oe=Ee(()=>typeof e.scrim=="string"?e.scrim:null),me=S(()=>({...P.value?{opacity:g.value*.2,transition:"none"}:void 0,...K.value}));return ct({VList:{bgColor:"transparent"}}),fe(()=>{const Y=s.image||e.image;return I(X,null,[d(e.tag,G({ref:j,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":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":A.value,"v-navigation-drawer--persistent":V.value,"v-navigation-drawer--active":D.value,"v-navigation-drawer--sticky":q.value},u.value,y.value,c.value,b.value,$.value,T.value,e.class],style:[v.value,O.value,z.value,de.value,e.style]},U,l),{default:()=>[Y&&I("div",{key:"image",class:"v-navigation-drawer__img"},[s.image?d(Na,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},s.image):d(He,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),s.prepend&&I("div",{class:"v-navigation-drawer__prepend"},[s.prepend?.()]),I("div",{class:"v-navigation-drawer__content"},[s.default?.()]),s.append&&I("div",{class:"v-navigation-drawer__append"},[s.append?.()])]}),d(Fa,{name:"fade-transition"},{default:()=>[A.value&&(P.value||D.value)&&!!e.scrim&&I("div",G({class:["v-navigation-drawer__scrim",oe.backgroundColorClasses.value],style:[me.value,oe.backgroundColorStyles.value],onClick:()=>{V.value||(D.value=!1)}},U),null)]})])}),{isStuck:te}}}),bt=Symbol.for("vuetify:v-tabs"),ra=ye({fixed:Boolean,sliderColor:String,hideSlider:Boolean,direction:{type:String,default:"horizontal"},...Xt(Ua({selectedClass:"v-tab--selected",variant:"text"}),["active","block","flat","location","position","symbol"])},"VTab"),We=ve()({name:"VTab",props:ra(),setup(e,n){let{slots:l,attrs:i}=n;const{textColorClasses:s,textColorStyles:o}=Wa(()=>e.sliderColor),u=R(),c=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=c.value;if(!T||!L)return;const D=getComputedStyle(T).color,z=T.getBoundingClientRect(),U=L.getBoundingClientRect(),j=y.value?"x":"y",B=y.value?"X":"Y",E=y.value?"right":"bottom",p=y.value?"width":"height",h=z[j],k=U[j],V=h>k?z[E]-U[E]:z[j]-U[j],A=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;Ya(L,{backgroundColor:[D,"currentcolor"],transform:[`translate${B}(${V}px) scale${B}(${g})`,`translate${B}(${V/x}px) scale${B}(${(P-1)/x+1})`,"none"],transformOrigin:Array(3).fill(A)},{duration:225,easing:Xa})}}return fe(()=>{const b=_e.filterProps(e);return d(_e,G({symbol:bt,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,i,{block:e.fixed,maxWidth:e.fixed?300:void 0,"onGroup:selected":$}),{...l,default:()=>I(X,null,[l.default?.()??e.text,!e.hideSlider&&I("div",{ref:c,class:ie(["v-tab__slider",s.value]),style:J(o.value)},null)])})}),Ha({},u)}}),Kl=ye({...Xt(sa(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VTabsWindow"),Zl=ve()({name:"VTabsWindow",props:Kl(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:l}=n;const i=Ut(bt,null),s=je(e,"modelValue"),o=S({get(){return s.value!=null||!i?s.value:i.items.value.find(u=>i.selected.value.includes(u.id))?.value},set(u){s.value=u}});return fe(()=>{const u=Et.filterProps(e);return d(Et,G({_as:"VTabsWindow"},u,{modelValue:o.value,"onUpdate:modelValue":c=>o.value=c,class:["v-tabs-window",e.class],style:e.style,mandatory:!1,touch:!1}),l)}),{}}}),Jl=ye({...oa()},"VTabsWindowItem"),ei=ve()({name:"VTabsWindowItem",props:Jl(),setup(e,n){let{slots:l}=n;return fe(()=>{const i=Bt.filterProps(e);return d(Bt,G({_as:"VTabsWindowItem"},i,{class:["v-tabs-window-item",e.class],style:e.style}),l)}),{}}});function ti(e){return e?e.map(n=>Ka(n)?n:{text:n,value:n}):[]}const ai=ye({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,...Ga(ra(),["spaced"]),...ja({mandatory:"force",selectedClass:"v-tab-item--selected"}),...Ot(),...Ae()},"VTabs"),li=ve()({name:"VTabs",props:ai(),emits:{"update:modelValue":e=>!0},setup(e,n){let{attrs:l,slots:i}=n;const s=je(e,"modelValue"),o=S(()=>ti(e.items)),{densityClasses:u}=Ft(e),{backgroundColorClasses:c,backgroundColorStyles:y}=Ee(()=>e.bgColor),{scopeId:v}=Yt();return ct({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)}}),fe(()=>{const $=kt.filterProps(e),b=!!(i.window||e.items.length>0);return I(X,null,[d(kt,G($,{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,c.value,e.class],style:[{"--v-tabs-height":we(e.height)},y.value,e.style],role:"tablist",symbol:bt},v,l),{default:()=>[i.default?.()??o.value.map(m=>i.tab?.({item:m})??d(We,G(m,{key:m.text,value:m.value,spaced:e.spaced}),{default:i[`tab.${m.value}`]?()=>i[`tab.${m.value}`]?.({item:m}):void 0}))]}),b&&d(Zl,G({modelValue:s.value,"onUpdate:modelValue":m=>s.value=m,key:"tabs-window"},v),{default:()=>[o.value.map(m=>i.item?.({item:m})??d(ei,{value:m.value},{default:()=>i[`item.${m.value}`]?.({item:m})})),i.window?.()]})])}),{}}}),ua=function(){const e=localStorage.getItem("frontend.settings.menu_items"),n=e?e.split(","):gl,l=[];for(const i of n)i==="home"&&l.push({label:"home",icon:"mdi-home-outline",path:"/home",isLibraryNode:!1}),i==="search"&&l.push({label:"search",icon:"mdi-magnify",path:"/search",isLibraryNode:!1}),i==="artists"&&l.push({label:"artists",icon:"mdi-account-outline",path:"/artists",isLibraryNode:!0,hidden:t.libraryArtistsCount===0}),i==="albums"&&l.push({label:"albums",icon:"md:album",path:"/albums",isLibraryNode:!0,hidden:t.libraryAlbumsCount===0}),i==="tracks"&&l.push({label:"tracks",icon:"mdi-music-note",path:"/tracks",isLibraryNode:!0,hidden:t.libraryTracksCount===0}),i==="playlists"&&l.push({label:"playlists",icon:"md:playlist_play",path:"/playlists",isLibraryNode:!0,hidden:t.libraryPlaylistsCount===0}),i==="podcasts"&&l.push({label:"podcasts",icon:"mdi-podcast",path:"/podcasts",isLibraryNode:!0,hidden:t.libraryPodcastsCount===0}),i==="audiobooks"&&l.push({label:"audiobooks",icon:"mdi-book-play-outline",path:"/audiobooks",isLibraryNode:!0,hidden:t.libraryAudiobooksCount===0}),i==="radios"&&l.push({label:"radios",icon:"mdi-access-point",path:"/radios",isLibraryNode:!0,hidden:t.libraryRadiosCount===0}),i==="browse"&&l.push({label:"browse",icon:"mdi-folder-outline",path:"/browse",isLibraryNode:!0}),i==="settings"&&l.push({label:"settings.settings",icon:"mdi-cog-outline",path:"/settings",isLibraryNode:!0});return l},ii={key:0,class:"sidebar-header-title"},ni=W({__name:"Navigation",setup(e){const n=Ja(),l=ua(),i=localStorage.getItem("frontend.settings.collapsed"),s=R(i==="true"),o=()=>{s.value=!s.value,localStorage.setItem("frontend.settings.collapsed",s.value.toString())};return(u,c)=>(r(),_("nav",{class:ie(["sidebar",{collapsed:s.value}])},[I("div",{class:"sidebar-header",onClick:c[0]||(c[0]=y=>a(n).push({name:"home"}))},[I("img",{src:Za,alt:"Music Assistant",class:"sidebar-header-logo",onClick:o}),s.value?w("",!0):(r(),_("div",ii,"Music Assistant"))]),d($e,{class:"sidebar-list"},{default:f(()=>[(r(!0),_(X,null,ue(a(l),y=>(r(),Q(Ve,{key:y.label,slim:"",nav:"",class:"menuButton",to:y.path},jt({default:f(()=>[s.value?(r(),Q(ae,{key:0,icon:y.icon,size:"24px"},null,8,["icon"])):w("",!0),s.value?w("",!0):(r(),Q(el,{key:1,textContent:C(u.$t(y.label))},null,8,["textContent"]))]),_:2},[s.value?void 0:{name:"prepend",fn:f(()=>[d(ae,{icon:y.icon,size:"24px"},null,8,["icon"])]),key:"0"}]),1032,["to"]))),128))]),_:1}),I("div",{class:ie(s.value?"d-flex justify-center":"ml-auto")},[d(_e,{icon:s.value?"mdi-dock-left":"mdi-dock-right",class:"cursor-pointer mt-1",variant:"plain",onClick:o},null,8,["icon"])],2)],2))}}),si=se(ni,[["__scopeId","data-v-5af0a01e"]]),oi={class:"media-thumb"},ri={style:{"margin-left":"-10px","padding-right":"5px"}},ui=W({__name:"AddToPlaylistDialog",setup(e){const n=R(!1),l=R([]),i=R([]),s=R(),o=R([]);ke(()=>{Ce.on("playlistdialog",async $=>{n.value=!0,o.value=$.items,s.value=$.parentItem,await u()}),qe(()=>{Ce.off("playlistdialog")})});const u=async function(){l.value=[],i.value=[];const $=await M.getLibraryPlaylists();let b=o.value.length?o.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(xt.PLAYLIST_CREATE)&&m.supported_features.includes(xt.PLAYLIST_TRACKS_EDIT)&&(m.domain=="builtin"||m.is_streaming_provider||b?.provider_mappings.filter(T=>T.provider_instance==m.instance_id).length)&&i.value.push(m.instance_id)}},c=async function($){M.addPlaylistTracks($.item_id,o.value.map(b=>b.uri)),v(),tl.info(Z("background_task_added"))},y=async function($){const b=prompt(Z("new_playlist_name"));if(!b)return;const m=await M.createPlaylist(b,$);c(m)},v=function(){n.value=!1};return($,b)=>(r(),Q(la,{modelValue:n.value,"onUpdate:modelValue":[b[0]||(b[0]=m=>n.value=m),b[1]||(b[1]=m=>{a(t).dialogActive=m})],fullscreen:"",transition:"dialog-bottom-transition"},{default:f(()=>[d(Ue,null,{default:f(()=>[d(_l,{icon:"mdi-playlist-plus",title:a(Z)("add_playlist"),"menu-items":[{label:"close",icon:"mdi-close",action:v}]},null,8,["title","menu-items"]),d(et),b[4]||(b[4]=I("br",null,null,-1)),d($e,null,{default:f(()=>[(r(!0),_(X,null,ue(l.value,m=>(r(),_("div",{key:m.item_id},[d(Ve,{onClick:T=>c(m)},{prepend:f(()=>[I("div",oi,[d(Me,{item:m,size:50},null,8,["item"])])]),title:f(()=>[I("div",null,C(m.name),1)]),subtitle:f(()=>[I("div",null,C(m.owner),1)]),append:f(()=>[m.provider_mappings?(r(),Q(Je,{key:0,domain:m.provider_mappings[0].provider_domain,size:20},null,8,["domain"])):w("",!0)]),_:2},1032,["onClick"])]))),128)),b[2]||(b[2]=I("div",{style:{height:"30px"}},null,-1)),d(et),b[3]||(b[3]=I("div",{style:{height:"30px"}},null,-1)),(r(!0),_(X,null,ue(i.value,m=>(r(),_("div",{key:m},[d(Ve,{onClick:T=>y(m)},{prepend:f(()=>[I("div",ri,[d(Je,{domain:a(M).providers[m].domain,size:50},null,8,["domain"])])]),title:f(()=>[I("div",null,C(a(Z)("new_playlist")),1)]),subtitle:f(()=>[I("div",null,C(a(Z)("create_playlist_on",[a(M).providers[m].name])),1)]),append:f(()=>[d(Je,{domain:a(M).providers[m].domain,size:20},null,8,["domain"])]),_:2},1032,["onClick"])]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]))}}),ci=se(ui,[["__scopeId","data-v-8f34ca82"]]),di={class:"content-section"},mi=W({__name:"View",setup(e){return(n,l)=>{const i=il("router-view");return r(),Q(al,{id:"cont",class:ie(["main-layout",{"main-layout--mobile":a(t).mobileLayout}])},{default:f(()=>[a(t).mobileLayout?w("",!0):(r(),Q(si,{key:0,class:"nav-section"})),I("div",di,[d(i,null,{default:f(({Component:s})=>[(r(),Q(ll(s)))]),_:1}),d(ci),d(Vl)])]),_:1},8,["class"])}}}),Dt=se(mi,[["__scopeId","data-v-544f60a2"]]),vi=e=>{const n=S(()=>{const{variant:o,width:u,height:c,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 bl(o).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 o={};if(e.staticWidth?o.width=e.staticWidth:e.width&&(o.width=e.width),e.staticHeight?o.height=e.staticHeight:e.height&&(o.height=e.height),e.maxWidth&&(o.maxWidth=e.maxWidth),e.maxHeight&&(o.maxHeight=e.maxHeight),e.minWidth&&(o.minWidth=e.minWidth),e.minHeight&&(o.minHeight=e.minHeight),typeof e.style=="object")Object.assign(o,e.style);else if(typeof e.style=="string"){const u=e.style.split(";").reduce((c,y)=>{const[v,$]=y.split(":").map(b=>b.trim());return v&&$&&(c[v]=$),c},{});Object.assign(o,u)}return o}),i=S(()=>Vt("icon-container",e.variant&&`icon-container--${e.variant}`,e.disabled&&"icon-container--disabled")),s=S(()=>Vt("icon",e.variant&&`icon--${e.variant}`));return{iconProps:n,containerStyle:l,containerClasses:i,iconClasses:s}},yi={variant:"default",minWidth:"24px",minHeight:"24px",badge:!1,disabled:!1},fi=W({__name:"Icon",props:nl({variant:{},width:{},height:{},staticWidth:{},staticHeight:{},maxWidth:{},maxHeight:{},minWidth:{},minHeight:{},icon:{},color:{},disabled:{type:Boolean},size:{},badge:{type:Boolean},class:{},style:{}},yi),emits:["click"],setup(e,{emit:n}){const l=e,i=n,{iconProps:s,containerStyle:o,containerClasses:u,iconClasses:c}=vi(l),y=R(),v=R(),$=async()=>{if(!(l.variant!=="responsive"||!y.value||!v.value)){await De();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}i("click",m)};return ke(()=>{l.variant==="responsive"&&($(),window.addEventListener("resize",$))}),qe(()=>{l.variant==="responsive"&&window.removeEventListener("resize",$)}),(m,T)=>(r(),_("div",{ref_key:"iconContainer",ref:y,class:ie(a(u)),style:J(a(o)),onClick:b},[d(at,{"model-value":e.badge===!0,color:"error",dot:""},{default:f(()=>[d(a(ae),G({ref_key:"iconElement",ref:v},a(s),{class:a(c)}),jt({_:2},[ue(m.$slots,(L,D)=>({name:D,fn:f(()=>[sl(m.$slots,D,{},void 0,!0)])}))]),1040,["class"])]),_:3},8,["model-value"])],6))}}),xe=se(fi,[["__scopeId","data-v-3db51b10"]]),ca=W({__name:"RepeatBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(n,l)=>e.isVisible&&e.playerQueue?(r(),Q(xe,G({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:a(Qe)(e.icon?.color,[[e.playerQueue.repeat_mode==a(re).OFF,null],[e.playerQueue.repeat_mode==a(re).ALL,"primary"],[e.playerQueue.repeat_mode==a(re).ONE,"primary"]]),icon:a(Qe)(e.icon?.icon,[[e.playerQueue.repeat_mode==a(re).OFF,"mdi-repeat-off"],[e.playerQueue.repeat_mode==a(re).ALL,"mdi-repeat"],[e.playerQueue.repeat_mode==a(re).ONE,"mdi-repeat-once"],[!0,"mdi-repeat-off"]]),variant:"button",onClick:l[0]||(l[0]=i=>a(M).queueCommandRepeat(e.playerQueue.queue_id||"",a(Qe)(null,[[e.playerQueue.repeat_mode==a(re).OFF,a(re).ONE],[e.playerQueue.repeat_mode==a(re).ALL,a(re).OFF],[e.playerQueue.repeat_mode==a(re).ONE,a(re).ALL]])))}),null,16,["disabled","color","icon"])):w("",!0)}});function Ke(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(i=>i.id===l.active_source)})}}const da=W({__name:"NextBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const n=e,{activeSource:l}=Ke(N(n,"player")),i=S(()=>n.playerQueue?.active?(n.playerQueue.current_index||0)<n.playerQueue.items-1:!1),s=S(()=>!n.player||n.playerQueue?.active||!n.player.current_media?!1:n.player.supported_features.includes(pe.NEXT_PREVIOUS)),o=S(()=>l.value?l.value.can_next_previous:i.value||s.value);return(u,c)=>e.isVisible&&e.player?(r(),Q(xe,G({key:0},e.icon,{disabled:!o.value,icon:"mdi-skip-next-outline",variant:"button",onClick:c[0]||(c[0]=y=>a(M).playerCommandNext(e.player.player_id))}),null,16,["disabled"])):w("",!0)}}),ma=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 n=e,{activeSource:l}=Ke(N(n,"player")),i=S(()=>n.playerQueue?n.playerQueue.items>0:!1),s=S(()=>!(!n.player||n.playerQueue?.active||!n.player.current_media)),o=S(()=>l.value?l.value.can_play_pause:i.value||s.value),u=S(()=>n.player?.playback_state==Be.PLAYING?"mdi-pause":"mdi-play");return(c,y)=>e.isVisible&&e.player?(r(),Q(xe,G({key:0},e.icon,{disabled:!o.value,icon:e.iconStyle?`${u.value}-${e.iconStyle}`:u.value,variant:"button",onClick:y[0]||(y[0]=v=>a(M).playerCommandPlayPause(e.player.player_id))}),null,16,["disabled","icon"])):w("",!0)}}),va=W({__name:"PreviousBtn",props:{player:{},playerQueue:{default:void 0},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const n=e,{activeSource:l}=Ke(N(n,"player")),i=S(()=>!n.playerQueue?.active||!n.playerQueue?.items||!n.playerQueue.current_index?!1:n.playerQueue.current_index>0),s=S(()=>!n.player||n.playerQueue?.active||!n.player.current_media?!1:n.player.supported_features.includes(pe.NEXT_PREVIOUS)),o=S(()=>l.value?l.value.can_next_previous:i.value||s.value);return(u,c)=>e.isVisible&&e.player?(r(),Q(xe,G({key:0},e.icon,{disabled:!o.value,icon:"mdi-skip-previous-outline",variant:"button",onClick:c[0]||(c[0]=y=>a(M).playerCommandPrevious(e.player.player_id))}),null,16,["disabled"])):w("",!0)}}),ya=W({__name:"ShuffleBtn",props:{playerQueue:{},isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){return(n,l)=>e.isVisible&&e.playerQueue?(r(),Q(xe,G({key:0},e.icon,{disabled:!e.playerQueue.active||e.playerQueue.items==0,color:a(Qe)(e.icon?.color,[[e.playerQueue.shuffle_enabled,"primary",""]]),icon:a(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]=i=>a(M).queueCommandShuffle(e.playerQueue.queue_id,!e.playerQueue.shuffle_enabled))}),null,16,["disabled","color","icon"])):w("",!0)}}),hi={key:0,class:"player-controls"},pi={key:0,class:"player-controls-elements"},gi={key:1,class:"player-controls-elements"},_i={key:2},bi={key:3,class:"player-controls-elements"},Pi={key:4,class:"player-controls-elements"},qt=W({__name:"PlayerControls",props:{visibleComponents:{default:()=>({repeat:{isVisible:!0},shuffle:{isVisible:!0},play:{isVisible:!0},previous:{isVisible:!0},next:{isVisible:!0}})}},setup(e){return(n,l)=>e.visibleComponents?(r(),_("div",hi,[e.visibleComponents&&e.visibleComponents.shuffle?.isVisible?(r(),_("div",pi,[d(ya,{"player-queue":a(t).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.shuffle.icon},null,8,["player-queue","icon"])])):w("",!0),e.visibleComponents&&e.visibleComponents.previous?.isVisible?(r(),_("div",gi,[d(va,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,class:"media-controls-item",icon:e.visibleComponents.previous.icon},null,8,["player","player-queue","icon"])])):w("",!0),e.visibleComponents&&e.visibleComponents.play?.isVisible?(r(),_("div",_i,[d(ma,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","icon-style":"circle",icon:e.visibleComponents.play.icon},null,8,["player","player-queue","icon"])])):w("",!0),e.visibleComponents&&e.visibleComponents.next?.isVisible?(r(),_("div",bi,[d(da,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,icon:e.visibleComponents.next.icon,"static-height":"24px","static-width":"24px"},null,8,["player","player-queue","icon"])])):w("",!0),e.visibleComponents&&e.visibleComponents.repeat?.isVisible?(r(),_("div",Pi,[d(ca,{"player-queue":a(t).activePlayerQueue,icon:e.visibleComponents.repeat.icon,"static-height":"24px","static-width":"24px"},null,8,["player-queue","icon"])])):w("",!0)])):w("",!0)}}),fa=W({__name:"QueueBtn",props:{isVisible:{type:Boolean,default:!0},icon:{default:void 0}},setup(e){const n=function(){t.showFullscreenPlayer&&t.showQueueItems?t.showQueueItems=!1:t.showFullscreenPlayer&&!t.showQueueItems?t.showQueueItems=!0:(t.showQueueItems=!0,t.showFullscreenPlayer=!0)};return(l,i)=>e.isVisible?(r(),Q(xe,G({key:0},e.icon,{disabled:!a(t).activePlayerId||a(t).showFullscreenPlayer&&!a(t).curQueueItem&&!a(t).showQueueItems,icon:"mdi-playlist-play",color:a(Qe)(e.icon?.color,[[a(t).showFullscreenPlayer&&a(t).showQueueItems,"primary",""]]),variant:"button",onClick:n}),null,16,["disabled","color"])):w("",!0)}}),ha=W({__name:"SpeakerBtn",props:{color:{}},setup(e){return(n,l)=>(r(),Q(ge,{variant:"icon",ripple:!1,icon:"",onClick:l[0]||(l[0]=i=>a(t).showPlayersMenu=!0)},{default:f(()=>[d(ae,{color:e.color?e.color:"",size:24,icon:a(t).activePlayer?.group_members.length?"mdi-speaker-multiple":"mdi-speaker"},null,8,["color","icon"])]),_:1}))}}),wi={key:0},ki={key:0},xi={class:"text-caption"},Ii={key:1},Ci=W({__name:"VolumeBtn",props:{volumeSize:{default:"150px"},responsiveVolumeSize:{type:Boolean,default:!0},isVisible:{type:Boolean,default:!0},color:{default:""}},setup(e){const n=e,l=R(!1),i=R(0);t.activePlayer&&(i.value=Math.round(t.activePlayer.group_members.length>0?t.activePlayer.group_volume:t.activePlayer.volume_level||0)),ee(()=>t.activePlayer,o=>{o&&(i.value=Math.round(o.group_members.length>0?o.group_volume:o.volume_level||0))},{immediate:!0,deep:!0});const s=S(()=>{if(!t.activePlayer)return"mdi-volume-high";if(t.activePlayer.volume_muted)return"mdi-volume-mute";const o=i.value;return o===0?"mdi-volume-low":o<50?"mdi-volume-medium":"mdi-volume-high"});return(o,u)=>n.isVisible&&a(t).activePlayer?(r(),_("div",wi,[d(gt,{modelValue:l.value,"onUpdate:modelValue":u[2]||(u[2]=c=>l.value=c),class:"volume-control-dialog","close-on-content-click":!1,location:"top",scrim:o.$vuetify.theme.current.dark?"rgba(0,0,0,.75)":"rgba(0,0,0,.85)"},{activator:f(({props:c})=>[a(le)("bp6")||!e.responsiveVolumeSize?(r(),_("div",ki,[d(_t,{style:"margin-right: 0px; margin-left: 0px;",width:e.volumeSize,"is-powered":a(t).activePlayer?.powered!=!1,disabled:!a(t).activePlayer?.available||a(t).activePlayer?.powered==!1||!a(t).activePlayer?.supported_features.includes(a(pe).VOLUME_SET),"model-value":a(t).activePlayer.group_members.length>0?Math.round(a(t).activePlayer?.group_volume||0):Math.round(a(t).activePlayer?.volume_level||0),"allow-wheel":!0,"onUpdate:modelValue":u[0]||(u[0]=y=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolume(a(t).activePlayer?.player_id||"",y):a(M).playerCommandVolumeSet(a(t).activePlayer?.player_id||"",y)),"onUpdate:localValue":u[1]||(u[1]=y=>i.value=y)},{prepend:f(()=>[d(ge,G({variant:"icon",size:"48",ripple:!1},{...c}),{default:f(()=>[d(ae,{color:n.color?e.color:"",size:24,icon:s.value},null,8,["color","icon"]),I("div",xi,C(Math.round(i.value)),1)]),_:1},16)]),_:2},1032,["width","is-powered","disabled","model-value"])])):(r(),_("div",Ii,[d(ge,G({...c},{size:"48",variant:"icon"}),{default:f(()=>[d(ae,{color:n.color?e.color:"",icon:s.value},null,8,["color","icon"]),I("div",{class:"text-caption",style:J({color:n.color?e.color:""})},C(Math.round(i.value)),5)]),_:1},16)]))]),default:f(()=>[d(Ue,{"min-width":300,style:{overflow:"hidden","padding-top":"20px","padding-bottom":"20px","padding-right":"20px"}},{default:f(()=>[a(t).activePlayer?(r(),Q(Pl,{key:0,player:a(t).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"])):w("",!0)]),_:1})]),_:1},8,["modelValue","scrim"])])):w("",!0)}}),$i=se(Ci,[["__scopeId","data-v-bdfdc6da"]]),Qi=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(n,l)=>(r(),_(X,null,[e.player&&e.player.isVisible?(r(),Q(ha,{key:0,color:e.player.color},null,8,["color"])):w("",!0),e.queue&&e.queue.isVisible?(r(),Q(fa,{key:1,color:e.player.color,style:{"padding-left":"15px","padding-right":"20px"}},null,8,["color"])):w("",!0),e.volume&&e.volume.isVisible?(r(),Q($i,{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"])):w("",!0)],64))}});function Se(e,n,l){if(e===void 0||n===void 0||l!==void 0&&l!==Be.PLAYING)return e;const i=n*1e3,s=Date.now(),u=Math.max(0,s-i)/1e3;return e+u}const Si={style:{width:"auto",height:"24px"}},Vi={key:0,style:{width:"100%"}},Ti=["onClick"],Li={key:0,class:"time-text-row"},Mi={class:"text-caption time-text-right"},Ei=W({__name:"PlayerTimeline",props:{showLabels:{type:Boolean,default:!1},color:{default:void 0}},setup(e){const{activeSource:n}=Ke(N(t,"activePlayer")),l=R(!1),i=R(!0),s=R(!1),o=R(0),u=R(0),c=R(0);let y=null;const v=(B=500)=>{y||(y=setInterval(()=>c.value=Date.now(),B))},$=()=>{y&&(clearInterval(y),y=null)};Gt(()=>{$()});const b=S(()=>{if(n.value){if(t.activePlayer?.powered===!1)return!1;const B=!!t.curQueueItem?.duration,p=!!t.activePlayer?.current_media?.duration;return t.curQueueItem?.media_item?.media_type==F.RADIO||t.activePlayer?.current_media?.media_type==F.RADIO?!1:!!(n.value.can_seek&&(B||p))}return!(t.curQueueItem?.media_item?.media_type==F.RADIO||t.activePlayer?.powered==!1||!t.curQueueItem||!t.curQueueItem.media_item||!t.curQueueItem.duration)}),m=S(()=>{if(t.curQueueItem)return l.value?`-${Pe(t.curQueueItem.duration-L.value)}`:`${Pe(L.value)}`;if(t.activePlayer?.current_media?.elapsed_time!=null||t.activePlayer?.elapsed_time!=null){const B=L.value||0;return l.value&&t.activePlayer?.current_media?.duration?`-${Pe(t.activePlayer.current_media.duration-B)}`:`${Pe(B)}`}return"0:00"}),T=S(()=>{const B=t.curQueueItem?.duration||t.activePlayer?.current_media?.duration;return!B||t.curQueueItem?.media_item?.media_type==F.RADIO||t.activePlayer?.current_media?.media_type==F.RADIO?"":Pe(B)}),L=S(()=>{c.value;const B=t.activePlayer?.playback_state==="playing",E=!!(t.activePlayerQueue&&t.activePlayerQueue.active),p=t.activePlayer?.current_media?.elapsed_time!=null;if(B&&(E||p)?v():$(),s.value)return u.value=o.value,o.value;const h=t.activePlayerQueue;return h?.elapsed_time!=null&&h?.elapsed_time_last_updated!=null?Se(h.elapsed_time,h.elapsed_time_last_updated,t.activePlayer?.playback_state)??0:t.activePlayer?.current_media?.elapsed_time!=null&&t.activePlayer?.current_media?.elapsed_time_last_updated!=null?Se(t.activePlayer.current_media.elapsed_time,t.activePlayer.current_media.elapsed_time_last_updated,t.activePlayer?.playback_state)??0:t.activePlayer?.elapsed_time!=null&&t.activePlayer?.elapsed_time_last_updated!=null?Se(t.activePlayer.elapsed_time,t.activePlayer.elapsed_time_last_updated,t.activePlayer?.playback_state)??0:0}),D=S(()=>{const B={};return t.curQueueItem?.media_item?.metadata?.chapters&&t.curQueueItem.media_item.metadata.chapters.forEach(E=>{B[E.start]=E.name}),B});ee(L,B=>{s.value||(o.value=B)});const z=function(){s.value=!0},U=()=>{s.value=!1,!s.value&&t.activePlayer&&M.playerCommandSeek(t.activePlayer.player_id,Math.round(u.value))},j=function(B){if(t.curQueueItem?.media_item?.metadata?.chapters){for(const E of t.curQueueItem.media_item.metadata.chapters)if(E.start==B){M.playMedia(t.curQueueItem.media_item.uri,void 0,void 0,E.position.toString());return}}};return(B,E)=>(r(),_("div",Si,[a(t).activePlayer?(r(),_("div",Vi,[d(kl,{modelValue:o.value,"onUpdate:modelValue":E[0]||(E[0]=p=>o.value=p),disabled:!b.value,style:{width:"100%"},min:0,max:a(t).curQueueItem?.duration||a(t).activePlayer?.current_media?.duration,"hide-details":"","track-size":4,"thumb-size":i.value?0:10,"show-ticks":D.value?"always":!1,ticks:D.value,"tick-size":"4",color:e.color,onTouchstart:E[1]||(E[1]=p=>i.value=!1),onTouchend:E[2]||(E[2]=p=>i.value=!0),onMouseenter:E[3]||(E[3]=p=>i.value=!1),onMouseleave:E[4]||(E[4]=p=>i.value=!0),onStart:z,onEnd:U},{"tick-label":f(({tick:p})=>[e.showLabels&&!i.value&&Object.values(D.value).length<6?(r(),_("a",{key:0,class:"text-caption",onClick:h=>j(p.value)},C(p.label),9,Ti)):w("",!0)]),_:1},8,["modelValue","disabled","max","thumb-size","show-ticks","ticks","color"]),e.showLabels?(r(),_("div",Li,[I("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),I("div",Mi,C(T.value),1)])):w("",!0)])):w("",!0)]))}}),pa=se(Ei,[["__scopeId","data-v-1b667236"]]),Bi={class:"lyrics-container"},Ai={key:0,class:"lyrics-loading"},Ri={key:1,class:"lyrics-empty"},Di={key:2,class:"lyrics-intro"},qi={class:"song-title"},Fi={class:"artist-name"},zi={class:"lyrics-coming-soon"},Oi=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 n=e,l=(p,h=!0)=>{if(h&&!n.debugMode)return;(h?console.debug:console.log)(`[lyricSynch] ${p}`)},i=R([]),s=R(!1),o=R(-1),u=R(null),c=R(!1),y=R(0),v=R(0),$=S(()=>{if(!m.value||!i.value.length)return!1;const p=i.value[0].time,h=n.position||0;return o.value===-1&&h<p}),b=S(()=>{if(!n.mediaItem)return"";if("media_type"in n.mediaItem&&n.mediaItem.media_type==="track"){const p=n.mediaItem;if(p.artists?.length)return p.artists.map(h=>h.name).join(", ")}return"media_type"in n.mediaItem&&n.mediaItem.media_type==="artist"?n.mediaItem.name:""});S(()=>{const p=n.mediaItem?.metadata?.lyrics,h=n.mediaItem?.metadata?.lrc_lyrics;return!!p&&p.trim().length>0||!!h&&h.trim().length>0});const m=S(()=>{if(i.value.some(k=>k.time>0))return!0;const p=n.mediaItem?.metadata?.lrc_lyrics,h=n.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]),A=0;if(h[3]){const g=h[3].replace(/[.:]/,".");A=Math.round(parseFloat(g)*1e3)}return{time:(k*60*1e3+V*1e3+A)/1e3,text:h[4].trim()||" "}}return{time:0,text:p.trim()||" "}},L=()=>{if(!n.mediaItem){i.value=[];return}s.value=!0;try{const p=n.mediaItem.metadata?.lrc_lyrics||"",h=n.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 A=k.split(`
2
- `).filter(q=>q.trim());i.value=A.map(q=>T(q)).filter(q=>q.text.trim()).sort((q,P)=>q.time-P.time),l(`Loaded ${i.value.length} synchronized lyrics lines`,!1)}else if(k){const A=k.split(`
3
- `).filter(q=>q.trim());i.value=A.map(q=>({time:0,text:q.trim()})).filter(q=>q.text),l(`Loaded ${i.value.length} plain text lyrics lines`,!1)}else i.value=[]}catch(p){l(`Error processing lyrics: ${p}`,!1),i.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<i.value.length;oe++)if(i.value[oe].time<=h)k=oe;else{V=oe;break}if(l(`Current lyric index: ${k}, Next lyric index: ${V}`),V===0){const me=i.value[0].time-h;if(l(`Pre-lyrics intro: ${me.toFixed(2)}s until first lyric`),me>5){l("Long intro - using fixed look-ahead: 0.3s"),y.value=.3;return}else if(me>2){const Y=Math.min(1,me*.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 A=i.value[k].time,q=i.value[V].time,P=q-A,g=y.value;l(`Gap analysis:
4
- - Current lyric time: ${A.toFixed(3)}s
5
- - Next lyric time: ${q.toFixed(3)}s
6
- - Gap between lyrics: ${P.toFixed(3)}s
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 K=Math.abs(O-g),te=Math.min(.8,.3+K*.5),de=g*(1-te)+O*te;l(`Smoothed look-ahead: ${de.toFixed(3)}s (adaptation rate: ${(te*100).toFixed(0)}%)`),Math.abs(de-g)>.3&&l(`Look-ahead adjusted: ${g.toFixed(2)}s → ${de.toFixed(2)}s`,!1),y.value=de},z=p=>p===void 0||!i.value.length||!m.value||c.value,U=p=>{const h=Math.round((p+y.value)*1e3);let k=-1;for(let V=0;V<i.value.length&&Math.round(i.value[V].time*1e3)<=h;V++)k=V;return k},j=(p,h)=>{p<0||p===o.value||(l(`Lyric activated: "${i.value[p].text}"`),l(`Activating lyric at ${h.toFixed(2)}s (adjusted: ${(h+y.value).toFixed(2)}s):
8
- - Index: ${p}
9
- - Lyric time: ${i.value[p].time.toFixed(2)}s`),l(`Transition details:
10
- - Raw position: ${h.toFixed(3)}s
11
- - Dynamic look-ahead: ${y.value.toFixed(3)}s
12
- - Adjusted position: ${(h+y.value).toFixed(3)}s`),p>0&&B(p,h),v.value=h,o.value=p,De(()=>E()))},B=(p,h)=>{const k=h-v.value,V=i.value[p].time-i.value[p-1].time;l(`Timing analysis:
13
- - Expected gap: ${V.toFixed(3)}s
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(()=>n.mediaItem?.item_id,()=>{L()},{immediate:!0}),ee(()=>n.position,p=>{if(z(p))return;const h=p??0;D(h);const k=U(h);k!==o.value&&j(k,h)}),ke(()=>{const p=u.value;p&&p.addEventListener("scroll",()=>{c.value=!0,setTimeout(()=>{c.value=!1},8e3)},{passive:!0})}),(p,h)=>(r(),_("div",Bi,[s.value?(r(),_("div",Ai,[d(Kt,{indeterminate:"",color:e.textColor},null,8,["color"]),I("div",null,C(a(Z)("loading_lyrics")),1)])):i.value.length?$.value&&m.value?(r(),_("div",Di,[I("div",qi,C(n.mediaItem?.name),1),I("div",Fi,C(b.value),1),I("div",zi,C(a(Z)("lyrics_will_appear_soon")),1)])):(r(),_("div",{key:3,ref_key:"lyricsContainer",ref:u,class:ie(["lyrics-scroll-container",{"static-lyrics":!m.value}])},[(r(!0),_(X,null,ue(i.value,(k,V)=>(r(),_("div",{key:V,class:ie(["lyrics-line",{active:o.value===V||!m.value}])},C(k.text),3))),128))],2)):(r(),_("div",Ri,C(a(Z)("no_lyrics_available")),1))]))}}),Ni=se(Oi,[["__scopeId","data-v-a59ccea0"]]),Wi=["onClick"],Hi={class:"main"},Ui={key:0,class:"main-media-details"},Yi={key:0,class:"main-media-details-image"},Xi={class:"main-media-details-track-info"},ji={key:0},Gi={key:0},Ki={key:12,style:{margin:"auto","padding-top":"20px"}},Zi={key:1,class:"main-queue-items"},Ji={class:"queue-items-scroll-box"},en={class:"media-thumb listitem-media-thumb"},tn={class:"title-row"},an={class:"d-flex"},ln={style:{"white-space":"nowrap"},class:"pr-1"},nn={key:0},sn={key:0,style:{"margin-left":"50px"}},on={key:0,class:"text-caption"},rn={key:1,class:"lyrics-wrapper"},un={key:2,class:"main-queue-items"},cn={class:"main-media-details-image main-media-details-image-alt"},dn={class:"player-bottom"},mn={class:"row",style:{"margin-left":"5%","margin-right":"5%"}},vn={class:"media-controls"},yn={key:0,class:"row",style:{"margin-left":"5%","margin-right":"5%"}},fn={key:1,class:"row",style:{height:"70px",display:"flex","justify-content":"center","align-items":"center","padding-bottom":"15px","padding-top":"15px"}},hn=W({__name:"PlayerFullscreen",props:{colorPalette:{}},setup(e){const{name:n}=pt(),l=e,i=new lt,s=R(-1),o=new lt,u=R([]),c=R(0),y=R(!1),v=S(()=>t.activePlayerQueue?u.value.slice(t.activePlayerQueue.current_index):[]),$=S(()=>t.activePlayerQueue?u.value.slice(0,t.activePlayerQueue.current_index).reverse():[]),b=S(()=>{const P=t.curQueueItem?.media_item?.metadata?.lyrics,g=t.curQueueItem?.media_item?.metadata?.lrc_lyrics;return!!P&&P.trim().length>0||!!g&&g.trim().length>0}),m=S(()=>{switch(n.value){case"xs":return"1.2em";case"sm":return"1.6em";case"md":return"2em";case"lg":return t.showQueueItems?"1.5em":"2.5em";case"xl":return t.showQueueItems?"1.6em":"3em";case"xxl":return t.showQueueItems?"1.7em":"3.2em";default:return"1.0em."}}),T=S(()=>{switch(n.value){case"xs":return"1.0em";case"sm":return"1.2em";case"md":return"1.7em";case"lg":return t.showQueueItems?"1.0em":"1.6em";case"xl":return t.showQueueItems?"1.2em":"2em";case"xxl":return t.showQueueItems?"1.2em":"2em";default:return"1.0em."}}),L=S(()=>Ye.display.height.value>800),D=function(P){t.showFullscreenPlayer=!1,It.push({name:P.media_type,params:{itemId:P.item_id,provider:P.provider}})},z=function(P){t.globalSearchTerm=P,It.push({name:"search"}),t.showFullscreenPlayer=!1},U=function(P,g){const x=u.value.indexOf(g),O=[{label:"play_now",labelArgs:[],action:()=>{B(g,"play_now")},icon:"mdi-play-circle-outline",disabled:x===t.activePlayerQueue?.current_index||x===t.activePlayerQueue?.index_in_buffer},{label:"play_next",labelArgs:[],action:()=>{B(g,"move_next")},icon:"mdi-skip-next-circle-outline",disabled:x<=(t.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_up",labelArgs:[],action:()=>{B(g,"up")},icon:"mdi-arrow-up",disabled:x<=(t.activePlayerQueue?.index_in_buffer||0)},{label:"queue_move_down",labelArgs:[],action:()=>{B(g,"down")},icon:"mdi-arrow-down",disabled:x<=(t.activePlayerQueue?.index_in_buffer||0)},{label:"queue_delete",labelArgs:[],action:()=>{B(g,"delete")},icon:"mdi-delete",disabled:x<=(t.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})},j=function(P){t.activePlayer&&Ce.emit("contextmenu",{items:wl(t.activePlayer,t.activePlayerQueue),posX:P.clientX,posY:P.clientY})},B=function(P,g){!P||!t.activePlayerQueue||(g=="play_now"?M.queueCommandPlayIndex(t.activePlayerQueue?.queue_id,P.queue_item_id):g=="move_next"?M.queueCommandMoveNext(t.activePlayerQueue?.queue_id,P.queue_item_id):g=="up"?M.queueCommandMoveUp(t.activePlayerQueue?.queue_id,P.queue_item_id):g=="down"?M.queueCommandMoveDown(t.activePlayerQueue?.queue_id,P.queue_item_id):g=="delete"&&M.queueCommandDelete(t.activePlayerQueue?.queue_id,P.queue_item_id))},E=async function(){y.value=!0,u.value=[],await Ct(100),y.value=!1},p=async function({done:P}){if(!t.activePlayerQueue||t.activePlayerQueue.items==0){P("empty");return}if(u.value.length>=t.activePlayerQueue?.items){P("empty");return}const g=u.value.length,x=(t.activePlayerQueue.current_index||0)+50,O=await M.getPlayerQueueItems(t.activePlayerQueue.queue_id,x,g);u.value.push(...O),O.length<50?P("empty"):P("ok")};ke(()=>{const P=M.subscribe(ol.QUEUE_ITEMS_UPDATED,g=>{g.object_id==t.activePlayerQueue?.queue_id&&(g.data,E())});qe(P)});const h=async function(P){if(!t.curQueueItem?.media_item)return;if(!t.curQueueItem.media_item.favorite){M.toggleFavorite(t.curQueueItem.media_item);return}let g=t.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,t.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:[t.curQueueItem.media_item]})},icon:"mdi-plus-circle-outline"}),Ce.emit("contextmenu",{items:x,posX:P.clientX,posY:P.clientY})},k=function(){y.value=!0,Ct(100).then(()=>{y.value=!1})},V=function(P,g){M.playMedia(P.uri,rl.PLAY,void 0,g.position.toString())};ee(()=>t.activePlayerId,P=>{E()},{immediate:!0});const A=R(void 0),q=R(void 0);return ht(()=>{const P=Fe("white"),g=Fe("black"),x=5,O=.05,K=Ye.theme.current.value.dark?l.colorPalette.darkColor||"#000":l.colorPalette.lightColor||"#fff";let te=Fe(K);const de=P.contrast(te),oe=g.contrast(te),me=de>=oe;let Y=me?P:g,Ze=Math.max(de,oe);if(Ze<x){let Pt=O;for(;Ze<x&&Pt<=.5;)me?te=te.darken(O):te=te.lighten(O),Ze=Fe(Y).contrast(te),Pt+=O}document.documentElement.style.setProperty("--text-color",Y.hex()),A.value=Y.hex(),q.value=te.hex()}),(P,g)=>(r(),Q(la,{modelValue:a(t).showFullscreenPlayer,"onUpdate:modelValue":g[13]||(g[13]=x=>a(t).showFullscreenPlayer=x),fullscreen:"",scrim:!1,transition:"dialog-bottom-transition","z-index":"9999"},{default:f(()=>[d(Ue,{color:q.value},{default:f(()=>[d(Cl,{class:"v-toolbar-default",color:"transparent"},{prepend:f(()=>[d(ge,{icon:"",onClick:g[0]||(g[0]=x=>a(t).showFullscreenPlayer=!1)},{default:f(()=>[d(ae,{icon:"mdi-chevron-down"})]),_:1})]),append:f(()=>[a(t).activePlayerQueue?.radio_source.length?(r(),Q(gt,{key:0,scrim:""},{activator:f(({props:x})=>[d(ge,G(x,{icon:""}),{default:f(()=>[d(ae,{color:"accent",icon:"mdi-radio-tower"})]),_:1},16)]),default:f(()=>[d(Ue,{title:a(Z)("queue_radio_enabled"),subtitle:a(Z)("queue_radio_based_on")},{text:f(()=>[(r(!0),_(X,null,ue(a(t).activePlayerQueue?.radio_source,x=>(r(),_("div",{key:x.uri},[I("a",{onClick:O=>D(x)},C(x.name),9,Wi)]))),128))]),_:1},8,["title","subtitle"])]),_:1})):w("",!0),L.value?w("",!0):(r(),Q(ha,{key:1})),d(ge,{icon:"",onClick:ze(j,["stop"])},{default:f(()=>[d(ae,{icon:"mdi-dots-vertical"})]),_:1})]),_:1}),I("div",Hi,[a(le)("bp7")||!a(t).showQueueItems?(r(),_("div",Ui,[P.$vuetify.display.height>600?(r(),_("div",Yi,[a(t).activePlayer?.powered!=!1&&a(t).curQueueItem?(r(),Q(Me,{key:0,item:a(t).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"},fallback:P.$vuetify.theme.current.dark?a(Xe):a(tt)},null,8,["item","fallback"])):a(t).activePlayer?.powered!=!1&&!a(t).curQueueItem?.image&&a(t).activePlayer?.current_media?.image_url?(r(),Q(He,{key:1,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:a(t).activePlayer.current_media.image_url},null,8,["src"])):(r(),Q(He,{key:2,style:{"max-width":"100%",width:"auto","border-radius":"4px"},src:P.$vuetify.theme.current.dark?a(Xe):a(tt)},null,8,["src"]))])):w("",!0),I("div",Xi,[a(t).activePlayer?.powered==!1?(r(),Q(Te,{key:0,style:J(`font-size: ${m.value};`)},{default:f(()=>[H(C(a(t).activePlayer?.name),1)]),_:1},8,["style"])):a(t).curQueueItem?.media_item?(r(),Q(Te,{key:1,style:J(`font-size: ${m.value};cursor:pointer;`),onClick:g[1]||(g[1]=x=>D(a(t).curQueueItem.media_item))},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem.media_item.name)+" ",1),"version"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.version?(r(),_("span",ji,"("+C(a(t).curQueueItem.media_item.version)+")",1)):w("",!0)]),_:1},8,["sync"])]),_:1},8,["style"])):!a(t).activePlayerQueue&&a(t).activePlayer?.current_media?.title?(r(),Q(Te,{key:2},{default:f(()=>[a(t).activePlayer?.current_media?.artist?(r(),_("div",Gi,[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).activePlayer?.current_media?.artist),1)]),_:1},8,["sync"])])):w("",!0),a(t).activePlayer?.current_media?.title?(r(),_("div",{key:1,style:J(`font-size: ${T.value};`)},[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).activePlayer?.current_media?.title),1)]),_:1},8,["sync"])],4)):w("",!0)]),_:1})):(r(),Q(Te,{key:3,style:J(`font-size: ${m.value};cursor:pointer;`),onClick:g[2]||(g[2]=x=>a(t).showPlayersMenu=!0)},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).activePlayer?.name||a(Z)("no_player")),1)]),_:1},8,["sync"])]),_:1},8,["style"])),a(t).activePlayer?.powered==!1?(r(),Q(he,{key:4,class:"text-h6 text-md-h5 text-lg-h4"},{default:f(()=>[H(C(a(Z)("off")),1)]),_:1})):w("",!0),a(t).curQueueItem?.streamdetails?.stream_metadata&&a(t).curQueueItem?.streamdetails?.stream_metadata.title&&a(t).curQueueItem?.streamdetails?.stream_metadata.artist?(r(),Q(he,{key:5,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[3]||(g[3]=x=>z(`${a(t).curQueueItem?.streamdetails?.stream_metadata.artist} - ${a(t).curQueueItem?.streamdetails?.stream_metadata.title}`))},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+C(a(t).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):w("",!0),a(t).curQueueItem?.streamdetails?.stream_metadata&&a(t).curQueueItem?.streamdetails?.stream_metadata.title?(r(),Q(he,{key:6,class:"text-h6 text-md-h5 text-lg-h4",onClick:g[4]||(g[4]=x=>z(a(t).curQueueItem?.streamdetails?.stream_metadata.title))},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem?.streamdetails?.stream_metadata.title),1)]),_:1},8,["sync"])]),_:1})):w("",!0),a(t).curQueueItem?.media_item&&"album"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.album&&a(t).activePlayer?.powered!=!1?(r(),Q(he,{key:7,style:J(`font-size: ${T.value};cursor:pointer;`),onClick:g[5]||(g[5]=x=>D(a(t).curQueueItem.media_item.album))},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem.media_item.album.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):w("",!0),a(t).curQueueItem?.media_item&&"artists"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.artists.length&&a(t).activePlayer?.powered!=!1?(r(),Q(he,{key:8,style:J(`font-size: ${T.value};cursor:pointer;`),onClick:g[6]||(g[6]=x=>D(a(t).curQueueItem.media_item.artists[0]))},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem.media_item.artists[0].name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):w("",!0),a(t).curQueueItem?.media_item&&"podcast"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.podcast?(r(),Q(he,{key:9,style:J(`font-size: ${T.value};`)},{default:f(()=>[d(ne,{sync:a(i)},{default:f(()=>[H(C(a(t).curQueueItem.media_item.podcast.name),1)]),_:1},8,["sync"])]),_:1},8,["style"])):a(t).activePlayer&&a(t).activePlayer?.active_source!=a(t).activePlayer?.player_id&&a(t).activePlayer?.powered!=!1?(r(),Q(he,{key:10},{default:f(()=>[H(C(a(Z)("external_source_active",[a(Jt)(a(t).activePlayer)])),1)]),_:1})):a(t).activePlayerQueue&&a(t).activePlayerQueue.items==0&&a(t).activePlayer?.powered!=!1?(r(),Q(he,{key:11,style:J(`font-size: ${T.value}`)},{default:f(()=>[H(C(a(Z)("queue_empty")),1)]),_:1},8,["style"])):w("",!0),a(t).activePlayer?.powered!=!1?(r(),_("div",Ki,[d(ea)])):w("",!0)])])):w("",!0),a(t).showQueueItems?(r(),_("div",Zi,[d(li,{modelValue:c.value,"onUpdate:modelValue":g[7]||(g[7]=x=>c.value=x),"hide-slider":"",density:"compact",onClick:k},{default:f(()=>[d(We,{value:0},{default:f(()=>[H(C(a(Z)("queue"))+" ",1),d(at,{color:"grey",content:(a(t).activePlayerQueue?.items||0)-(a(t).activePlayerQueue?.current_index||0),inline:""},null,8,["content"])]),_:1}),d(We,{value:1},{default:f(()=>[H(C(a(Z)("played"))+" ",1),d(at,{color:"grey",content:a(t).activePlayerQueue?.current_index,inline:""},null,8,["content"])]),_:1}),b.value?(r(),Q(We,{key:0,value:2},{default:f(()=>[H(C(a(Z)("lyrics")),1)]),_:1})):w("",!0)]),_:1},8,["modelValue"]),I("div",Ji,[!y.value&&c.value!==2?(r(),Q($l,{key:0,onLoad:p,"empty-text":"",height:"100%"},{default:f(()=>[d(Ql,{"item-height":70,"max-height":"90%",items:c.value==0?v.value:$.value},{default:f(({item:x,index:O})=>[d(xl,{link:"","show-menu-btn":!0,disabled:!x.available,onClick:ze(K=>U(K,x),["stop"]),onMenu:ze(K=>U(K,x),["stop"]),onMouseenter:K=>s.value=O,onMouseleave:g[8]||(g[8]=K=>s.value=-1)},{prepend:f(()=>[I("div",en,[d(Me,{size:"50",item:x},null,8,["item"])])]),title:f(()=>[I("div",tn,[d(ne,{sync:O==0&&c.value==0?a(i):a(o),disabled:!(O==0&&c.value==0||s.value==O)},{default:f(()=>[I("span",{class:ie({"is-playing":x.queue_item_id===a(t).curQueueItem?.queue_item_id})},C(x.name),3)]),_:2},1032,["sync","disabled"])])]),subtitle:f(()=>[I("div",an,[I("span",ln,C(a(Pe)(x.duration))+" | ",1),d(ne,{sync:O==0&&c.value==0?a(i):a(o),disabled:!(O==0&&c.value==0||s.value==O)},{default:f(()=>[x.media_item&&"album"in x.media_item&&x.media_item.album?(r(),_("span",nn,C(x.media_item.album.name),1)):w("",!0)]),_:2},1032,["sync","disabled"])])]),append:f(()=>[x.queue_item_id===a(t).curQueueItem?.queue_item_id&&a(t).activePlayer?.playback_state!=a(Be).IDLE?(r(),Q(Il,{key:0,"show-badge":a(le)("bp4")},null,8,["show-badge"])):w("",!0),x.available?w("",!0):(r(),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==a(t).curQueueItem?.queue_item_id&&x.media_item?.metadata?.chapters?.length?(r(),_("div",sn,[(r(!0),_(X,null,ue(x.media_item.metadata?.chapters,K=>(r(),Q(Ve,{key:K.position,onClick:ze(te=>V(x.media_item,K),["stop"])},{title:f(()=>[I("div",null,C(K.name),1)]),append:f(()=>[K.end?(r(),_("span",on,C(a(Pe)(K.end-K.start)),1)):w("",!0)]),_:2},1032,["onClick"]))),128))])):w("",!0)]),_:1},8,["items"])]),_:1})):w("",!0),c.value===2?(r(),_("div",rn,[d(Ni,{"media-item":a(t).curQueueItem?.media_item,position:a(t).activePlayerQueue?.elapsed_time,duration:a(t).curQueueItem?.duration,"stream-details":a(t).curQueueItem?.streamdetails,"text-color":A.value},null,8,["media-item","position","duration","stream-details","text-color"])])):w("",!0)])])):w("",!0),!a(t).showQueueItems&&P.$vuetify.display.height<=600?(r(),_("div",un,[I("div",cn,[d(Me,{item:a(t).curQueueItem,thumbnail:!1,style:{"max-width":"100%",width:"auto"}},null,8,["item"])])])):w("",!0)]),I("div",dn,[I("div",mn,[d(pa,{"show-labels":!0,color:A.value},null,8,["color"])]),I("div",vn,[a(t).activePlayerQueue?(r(),Q(xe,{key:0,disabled:!a(t).curQueueItem?.media_item,icon:a(t).curQueueItem?.media_item?.favorite?"mdi-heart":"mdi-heart-outline",title:a(Z)("tooltip.favorite"),variant:"button",class:"media-controls-item","max-height":"30px",onClick:h},null,8,["disabled","icon","title"])):w("",!0),P.$vuetify.display.mdAndUp?(r(),Q(ya,{key:1,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","max-height":"30px"},null,8,["player-queue"])):w("",!0),d(va,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),d(ma,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","max-height":"70px"},null,8,["player","player-queue"]),d(da,{player:a(t).activePlayer,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","max-height":"45px"},null,8,["player","player-queue"]),P.$vuetify.display.mdAndUp?(r(),Q(ca,{key:2,"player-queue":a(t).activePlayerQueue,class:"media-controls-item","max-height":"35px"},null,8,["player-queue"])):w("",!0),a(t).activePlayerQueue?(r(),Q(fa,{key:3,class:"media-controls-item","max-height":"30px"})):w("",!0)]),a(t).activePlayer?(r(),_("div",yn,[d(_t,{width:"100%","is-powered":a(t).activePlayer?.powered!=!1,disabled:!a(t).activePlayer||!a(t).activePlayer?.available||a(t).activePlayer.powered==!1||!a(t).activePlayer.supported_features.includes(a(pe).VOLUME_SET),"model-value":Math.round(a(t).activePlayer.group_members.length>0?a(t).activePlayer.group_volume:a(t).activePlayer.volume_level||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus",color:A.value,"allow-wheel":!0,"onUpdate:modelValue":g[9]||(g[9]=x=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolume(a(t).activePlayerId,x):a(M).playerCommandVolumeSet(a(t).activePlayerId,x)),"onClick:prepend":g[10]||(g[10]=x=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolumeDown(a(t).activePlayerId):a(M).playerCommandVolumeDown(a(t).activePlayerId)),"onClick:append":g[11]||(g[11]=x=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolumeUp(a(t).activePlayerId):a(M).playerCommandVolumeUp(a(t).activePlayerId))},null,8,["is-powered","disabled","model-value","color"])])):w("",!0),L.value?(r(),_("div",fn,[d(_e,{class:"responsive-icon-holder-btn",variant:"outlined",onClick:g[12]||(g[12]=x=>a(t).showPlayersMenu=!0)},{default:f(()=>[d(ae,{icon:a(t).activePlayer?.icon||"mdi-speaker"},null,8,["icon"]),H(" "+C(a(t).activePlayer?a(ta)(a(t).activePlayer):""),1)]),_:1})])):w("",!0)])]),_:1},8,["color"])]),_:1},8,["modelValue"]))}}),pn=se(hn,[["__scopeId","data-v-b887a403"]]),gn={key:1},_n={key:2,class:"icon-thumb"},bn={key:0},Pn={key:2},wn={key:3},kn={key:4},xn={key:0,class:"pl-4"},In={key:0},Cn={key:1},$n={key:2},Qn={key:3},Sn={key:4},Vn={key:5},Tn={key:6,class:"line-clamp-1"},Ln={key:7},Mn={key:8,class:"line-clamp-1"},En={key:9,class:"line-clamp-1"},Bn={key:0},An=W({__name:"PlayerTrackDetails",props:{showOnlyArtist:{type:Boolean,default:!1},showQualityDetailsBtn:{type:Boolean,default:!0},colorPalette:{},primaryColor:{default:""}},setup(e){const n=new lt,l=e,i=S(()=>t.activePlayerQueue?.current_item?.streamdetails),s=R(0);let o=null;const u=(y=500)=>{o||(o=setInterval(()=>s.value=Date.now(),y))},c=()=>{o&&(clearInterval(o),o=null)};return Gt(()=>{c()}),S(()=>{s.value;const y=t.activePlayer?.playback_state==="playing",v=!!(t.activePlayerQueue&&t.activePlayerQueue.active),$=t.activePlayer?.current_media?.elapsed_time!=null;y&&(v||$)?u():c();const b=t.activePlayerQueue;if(b?.elapsed_time!=null&&b?.elapsed_time_last_updated!=null)return Se(b.elapsed_time,b.elapsed_time_last_updated,t.activePlayer?.playback_state);if(t.activePlayer?.current_media?.elapsed_time!=null&&t.activePlayer?.current_media?.elapsed_time_last_updated!=null)return Se(t.activePlayer.current_media.elapsed_time,t.activePlayer.current_media.elapsed_time_last_updated,t.activePlayer?.playback_state);if(t.activePlayer?.elapsed_time!=null&&t.activePlayer?.elapsed_time_last_updated!=null)return Se(t.activePlayer.elapsed_time,t.activePlayer.elapsed_time_last_updated,t.activePlayer?.playback_state)}),(y,v)=>(r(),_(X,null,[d(Ve,{style:{height:"auto",width:"fit-content",margin:"0px",padding:"0px"},lines:"two"},{prepend:f(()=>[I("div",{class:"media-thumb player-media-thumb",style:J(`cursor: pointer;height: ${a(le)({breakpoint:"phone"})?60:64}px; width: ${a(le)({breakpoint:"phone"})?60:64}px; `),onClick:v[0]||(v[0]=$=>a(t).showFullscreenPlayer=!0)},[a(t).activePlayer?.powered!=!1&&a(t).curQueueItem?(r(),Q(Me,{key:0,item:a(t).curQueueItem,fallback:a(Xe)},null,8,["item","fallback"])):a(t).activePlayer?.powered!=!1&&a(t).activePlayer?.current_media?.image_url?(r(),_("div",gn,[d(He,{class:"media-thumb",style:{"border-radius":"4px"},size:"60",src:a(t).activePlayer.current_media.image_url},null,8,["src"])])):(r(),_("div",_n,[d(ae,{size:"24",icon:a(t).activePlayer?.type==a(Ne).PLAYER&&a(t).activePlayer?.group_members.length?"mdi-speaker-multiple":a(t).activePlayer?.icon||"mdi-speaker"},null,8,["icon"])]))],4)]),title:f(()=>[I("div",{style:J({cursor:"pointer",color:e.primaryColor})},[a(t).activePlayer?.powered==!1?(r(),_("div",{key:0,onClick:v[1]||(v[1]=$=>a(t).showPlayersMenu=!0)},C(a(t).activePlayer?.name),1)):a(t).curQueueItem?.media_item?(r(),_("div",{key:1,onClick:v[2]||(v[2]=$=>a(t).showFullscreenPlayer=!0)},[d(ne,{sync:a(n)},{default:f(()=>[H(C(a(t).curQueueItem.media_item.name)+" ",1),"version"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.version?(r(),_("span",bn,"("+C(a(t).curQueueItem.media_item.version)+")",1)):w("",!0)]),_:1},8,["sync"])])):a(t).curQueueItem?(r(),_("div",Pn,C(a(t).curQueueItem.name),1)):!a(t).activePlayerQueue&&a(t).activePlayer?.current_media?.title?(r(),_("div",wn,C(a(t).activePlayer.current_media.title),1)):a(t).activePlayer?(r(),_("div",kn,C(a(t).activePlayer?.name),1)):(r(),_("div",{key:5,onClick:v[3]||(v[3]=$=>a(t).showPlayersMenu=!0)},C(y.$t("no_player")),1))],4)]),append:f(()=>[i.value?.audio_format.content_type&&!a(le)({breakpoint:"phone"})&&e.showQualityDetailsBtn?(r(),_("div",xn,[d(ea)])):w("",!0)]),subtitle:f(()=>[I("div",{style:J({cursor:"pointer",color:e.primaryColor}),class:"line-clamp-1",onClick:v[4]||(v[4]=$=>a(t).showFullscreenPlayer=!0)},[d(ne,{sync:a(n)},{default:f(()=>[a(t).activePlayer?.powered==!1?(r(),_("div",In,C(y.$t("off")),1)):a(t).curQueueItem&&a(t).curQueueItem.media_item?.media_type==a(F).TRACK&&"album"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.album&&!l.showOnlyArtist?(r(),_("div",Cn,C(a(ul)(a(t).curQueueItem.media_item.artists))+" • "+C(a(t).curQueueItem.media_item.album.name),1)):a(t).curQueueItem?.media_item&&"artists"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.artists.length>0?(r(),_("div",$n,C(a(t).curQueueItem.media_item.artists[0].name),1)):a(t).curQueueItem?.media_item&&"podcast"in a(t).curQueueItem.media_item&&a(t).curQueueItem.media_item.podcast?.name?(r(),_("div",Qn,C(a(t).curQueueItem.media_item.podcast.name),1)):a(t).curQueueItem?.streamdetails?.stream_metadata&&a(t).curQueueItem?.streamdetails?.stream_metadata.title&&a(t).curQueueItem?.streamdetails?.stream_metadata.artist?(r(),_("div",Sn,C(a(t).curQueueItem?.streamdetails?.stream_metadata.artist)+" - "+C(a(t).curQueueItem?.streamdetails?.stream_metadata.title),1)):a(t).curQueueItem?.streamdetails?.stream_metadata&&a(t).curQueueItem?.streamdetails?.stream_metadata.title?(r(),_("div",Vn,C(a(t).curQueueItem?.streamdetails?.stream_metadata.title),1)):a(t).curQueueItem?.media_item?.metadata.description?(r(),_("div",Tn,C(a(cl)(a(t).curQueueItem.media_item.metadata.description,100)),1)):!a(t).activePlayerQueue&&a(t).activePlayer?.active_source&&a(t).activePlayer?.current_media?.artist?(r(),_("div",Ln,C(a(t).activePlayer.current_media.artist),1)):!a(t).activePlayerQueue&&a(t).activePlayer?.active_source?(r(),_("div",Mn,C(y.$t("external_source_active",[a(Jt)(a(t).activePlayer)])),1)):a(t).activePlayerQueue&&a(t).activePlayerQueue.items==0?(r(),_("div",En,C(y.$t("queue_empty")),1)):w("",!0)]),_:1},8,["sync"]),a(t).activePlayer&&a(t).activePlayer?.powered!=!1?(r(),_("div",Bn,C(a(ta)(a(t).activePlayer)),1)):w("",!0)],4)]),_:1}),d(pn,{"show-fullscreen":a(t).showFullscreenPlayer,"color-palette":e.colorPalette},null,8,["show-fullscreen","color-palette"])],64))}}),Rn=se(An,[["__scopeId","data-v-01cf6ec5"]]),Dn=["data-floating"],qn=["data-mobile"],Fn={class:"mediacontrols-left"},zn={class:"mediacontrols-bottom-center"},On={class:"mediacontrols-bottom-right"},Nn={key:0,class:"volume-slider"},Wn=W({__name:"Player",props:{useFloatingPlayer:{type:Boolean}},setup(e){Zt(o=>({v31d44b17:s.value}));const{mobile:n}=pt({mobileBreakpoint:576}),l=R({0:"",1:"",2:"",3:"",4:"",5:"",lightColor:"",darkColor:""}),i=new Image;i.src=Ye.theme.current.value.dark?Xe:tt,i.crossOrigin="Anonymous",i.addEventListener("load",function(){l.value=dl(i)});const s=S(()=>Ye.theme.current.value.dark?l.value&&l.value.darkColor?l.value.darkColor:"#CCCCCC26":l.value&&l.value.lightColor?l.value.lightColor:"#CCCCCC26");return ee(()=>t.curQueueItem?.queue_item_id,()=>{t.curQueueItem?.media_item?i.src=$t(t.curQueueItem.media_item,Qt.THUMB)||"":t.curQueueItem?i.src=$t(t.curQueueItem,Qt.THUMB)||"":i.src=""}),(o,u)=>(r(),_(X,null,[I("div",{class:"mediacontrols-bg","data-floating":e.useFloatingPlayer},null,8,Dn),I("div",{class:"mediacontrols","data-mobile":a(n)},[I("div",Fn,[d(Rn,{"show-quality-details-btn":!!a(le)("bp8"),"show-only-artist":!a(le)("bp7"),"color-palette":l.value,"primary-color":o.$vuetify.theme.current.dark?"#fff":"#000"},null,8,["show-quality-details-btn","show-only-artist","color-palette","primary-color"])]),I("div",zn,[d(qt,{"visible-components":{repeat:{isVisible:a(le)("bp3")},shuffle:{isVisible:a(le)("bp3")},play:{isVisible:!0,icon:{staticWidth:"48px",staticHeight:"48px"}},previous:{isVisible:a(le)("bp3")},next:{isVisible:a(le)("bp3")}}},null,8,["visible-components"]),a(le)("bp6")?(r(),Q(pa,{key:0,"is-progress-bar":!1,disabled:!a(t).activePlayerQueue?.active||a(t).activePlayerQueue?.current_item?.media_item?.media_type!==a(F).TRACK},null,8,["disabled"])):w("",!0)]),I("div",On,[I("div",null,[d(Qi,{queue:{isVisible:a(le)("bp3"),color:o.$vuetify.theme.current.dark?"#fff":"#000"},player:{isVisible:!0,color:o.$vuetify.theme.current.dark?"#fff":"#000"},volume:{isVisible:!a(n)&&a(t).activePlayer!=null,color:o.$vuetify.theme.current.dark?"#fff":"#000"}},null,8,["queue","player","volume"]),d(qt,{style:{"padding-right":"5px"},"visible-components":{repeat:{isVisible:!1},shuffle:{isVisible:!1},play:{isVisible:a(le)({breakpoint:"bp3",condition:"lt"}),icon:{staticWidth:"40px",staticHeight:"40px",color:o.$vuetify.theme.current.dark?"#fff":"#000"}},previous:{isVisible:!1},next:{isVisible:!1}}},null,8,["visible-components"])])])],8,qn),a(n)&&a(t).activePlayer?(r(),_("div",Nn,[d(_t,{width:"100%",color:"secondary","is-powered":a(t).activePlayer?.powered!=!1,disabled:!a(t).activePlayer||!a(t).activePlayer?.available||a(t).activePlayer.powered==!1||!a(t).activePlayer.supported_features.includes(a(pe).VOLUME_SET),"model-value":Math.round(a(t).activePlayer.group_members.length>0?a(t).activePlayer.group_volume:a(t).activePlayer.volume_level||0),"prepend-icon":"mdi-volume-minus","append-icon":"mdi-volume-plus","onUpdate:modelValue":u[0]||(u[0]=c=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolume(a(t).activePlayerId,c):a(M).playerCommandVolumeSet(a(t).activePlayerId,c)),"onClick:prepend":u[1]||(u[1]=c=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolumeDown(a(t).activePlayerId):a(M).playerCommandVolumeDown(a(t).activePlayerId)),"onClick:append":u[2]||(u[2]=c=>a(t).activePlayer.group_members.length>0?a(M).playerCommandGroupVolumeUp(a(t).activePlayerId):a(M).playerCommandVolumeUp(a(t).activePlayerId))},null,8,["is-powered","disabled","model-value"])])):w("",!0)],64))}}),Hn=se(Wn,[["__scopeId","data-v-022a7f9a"]]),Un={class:"menuButton"},Yn={class:"menuButton"},Xn=W({__name:"BottomNavigation",props:{height:{}},setup(e){const n=ua(),l=R(!1);return(i,s)=>(r(),Q(Ll,{height:e.height,"bg-color":"default",grow:"",role:"navigation"},{default:f(()=>[(r(!0),_(X,null,ue(a(n).filter(o=>!o.isLibraryNode),o=>(r(),Q(_e,{key:o.label,to:o.path,"aria-label":i.$t(o.label),tabindex:"0",variant:"text","active-color":"fg","base-color":"grey"},{default:f(()=>[d(ae,{size:"xx-large"},{default:f(()=>[H(C(o.icon),1)]),_:2},1024),I("span",Un,C(i.$t(o.label)),1)]),_:2},1032,["to","aria-label"]))),128)),d(gt,null,{activator:f(({props:o})=>[d(_e,G(o,{"aria-haspopup":"true","aria-expanded":l.value.toString(),"aria-label":"Open library menu","base-color":"grey"}),{default:f(()=>[d(ae,{size:"xx-large"},{default:f(()=>[...s[0]||(s[0]=[H("mdi-bookshelf",-1)])]),_:1}),I("span",Yn,C(i.$t("library")),1)]),_:1},16,["aria-expanded"])]),default:f(()=>[d($e,null,{default:f(()=>[(r(!0),_(X,null,ue(a(n).filter(o=>o.isLibraryNode),o=>(r(),Q(Ve,{key:o.label,title:i.$t(o.label),"prepend-icon":o.icon,to:o.path},null,8,["title","prepend-icon","to"]))),128))]),_:1})]),_:1})]),_:1},8,["height"]))}}),jn=W({__name:"Footer",setup(e){const n=S(()=>t.isInStandaloneMode?100:80);return(l,i)=>(r(),_(X,null,[a(t).mobileLayout?(r(),_("div",{key:0,class:ie(l.$vuetify.theme.current.dark?"gradient-dark":"gradient-light"),style:`
16
- position: fixed;
17
- width: 100%;
18
- height: 180px;
19
- bottom: 0px;
20
- z-index: 999;
21
- `},null,2)):w("",!0),a(t).mobileLayout?(r(),Q(Xn,{key:1,height:n.value},null,8,["height"])):w("",!0),d(zl,{app:"",color:"default",class:ie(`py-0 px-0 ${a(t).mobileLayout?"mediacontrols-player-float":"mediacontrols-player-default"}`)},{default:f(()=>[d(Hn,{"use-floating-player":a(t).mobileLayout},null,8,["use-floating-player"])]),_:1},8,["class"])],64))}}),Gn={style:{float:"right","margin-right":"-20px"}},Kn=W({__name:"PlayerSelect",setup(e){const n=R(!1),l=R(null),i=S(()=>Object.values(M.players).filter(c=>St(c)).filter(c=>c.player_id!==be.player_id).sort((c,y)=>c.name.toUpperCase()>y.name?.toUpperCase()?1:-1));ee(()=>t.activePlayerId,c=>{c&&localStorage.setItem("mass.LastPlayerId",c)}),ee(()=>M.players,c=>{c&&!t.activePlayer&&o()},{deep:!0}),ee(()=>M.state,c=>{c.value!=yl.CONNECTED&&(t.activePlayerId=void 0)},{deep:!0});function s(c,y=!1){t.activePlayerId==c.player_id?n.value=!n.value:(n.value=!1,t.activePlayerId=c.player_id),y&&(t.showPlayersMenu=!1)}ke(()=>{o()});const o=function(){if(t.activePlayer&&St(t.activePlayer))return;const c=u();c&&(t.activePlayerId=c)},u=function(){const c=localStorage.getItem("mass.LastPlayerId");if(c&&c in M.players&&M.players[c].available)return c};return(c,y)=>(r(),_(X,null,[d(aa,{modelValue:a(t).showPlayersMenu,"onUpdate:modelValue":y[0]||(y[0]=v=>a(t).showPlayersMenu=v)},null,8,["modelValue"]),a(t).showPlayersMenu?(r(),Q(Gl,{key:0,modelValue:a(t).showPlayersMenu,"onUpdate:modelValue":y[4]||(y[4]=v=>a(t).showPlayersMenu=v),location:"right",app:"",clipped:"",temporary:"",width:460,style:{"z-index":"99999"},"z-index":"99999",color:"background"},{default:f(()=>[I("div",null,[d(Te,{class:"title",style:{"padding-top":"20px","padding-bottom":"20px"}},{default:f(()=>[I("b",null,C(c.$t("players")),1),I("div",Gn,[a(ml).isAdmin()?(r(),Q(ge,{key:0,variant:"icon",to:{name:"playersettings"}},{default:f(()=>[d(ae,{size:"30"},{default:f(()=>[...y[5]||(y[5]=[H("mdi-cog-outline",-1)])]),_:1})]),_:1})):w("",!0),d(ge,{variant:"icon",onClick:y[1]||(y[1]=v=>a(t).showPlayersMenu=!1)},{default:f(()=>[d(ae,{size:"30"},{default:f(()=>[...y[6]||(y[6]=[H("mdi-window-close",-1)])]),_:1})]),_:1})])]),_:1}),d(et),d($e,{flat:"",style:{margin:"0px 10px",padding:"0"}},{default:f(()=>[a(be).mode===a(vl).BUILTIN&&a(be).player_id&&a(M).players[a(be).player_id]?(r(),Q(Oe,{key:0,id:a(be).player_id,style:{margin:"10px 0px"},player:a(M).players[a(be).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(a(M).players[a(be).player_id]))},null,8,["id","player"])):w("",!0),(r(!0),_(X,null,ue(i.value.filter(v=>[a(Be).PLAYING,a(Be).PAUSED].includes(v.playback_state)||a(M).queues[v.player_id]?.items>0&&v.powered!=!1),v=>(r(),Q(Oe,{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":n.value&&v.player_id==a(t).activePlayerId,"show-sync-controls":v.supported_features.includes(a(pe).SET_MEMBERS),"allow-power-control":!0,onClick:$=>s(v)},null,8,["id","player","show-sub-players","show-sync-controls","onClick"]))),128))]),_:1}),d(Sl,{modelValue:l.value,"onUpdate:modelValue":y[3]||(y[3]=v=>l.value=v),variant:"accordion",flat:"",class:"expansion"},{default:f(()=>[d(Tt,{style:{padding:"0"}},{default:f(()=>[d(Lt,null,{default:f(()=>[I("h3",null,C(c.$t("all_players")),1)]),_:1}),d(Mt,{style:{padding:"0"}},{default:f(()=>[d($e,{flat:"",style:{margin:"-20px 3px 5px 3px"}},{default:f(()=>[(r(!0),_(X,null,ue(i.value.filter(v=>v.type!=a(Ne).GROUP),v=>(r(),Q(Oe,{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":n.value&&v.player_id==a(t).activePlayerId,"show-sync-controls":v.supported_features.includes(a(pe).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.value.filter(v=>v.type==a(Ne).GROUP).length?(r(),Q(Tt,{key:0,style:{padding:"0"}},{default:f(()=>[d(Lt,null,{default:f(()=>[I("h3",null,C(c.$t("all_groups")),1)]),_:1}),d(Mt,{style:{padding:"0"}},{default:f(()=>[d($e,{flat:"",style:{margin:"-20px 3px 5px 3px"}},{default:f(()=>[(r(!0),_(X,null,ue(i.value.filter(v=>v.type==a(Ne).GROUP),v=>(r(),Q(Oe,{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":n.value&&v.player_id==a(t).activePlayerId,"show-sync-controls":v.supported_features.includes(a(pe).SET_MEMBERS),"allow-power-control":!0,onClick:$=>s(v)},null,8,["id","player","show-sub-players","show-sync-controls","onClick"]))),128))]),_:1})]),_:1})]),_:1})):w("",!0)]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"])):w("",!0)],64))}}),Zn=se(Kn,[["__scopeId","data-v-c039da70"]]);function Jn(e={}){const{immediate:n=!1,onNeedRefresh:l,onOfflineReady:i,onRegistered:s,onRegisteredSW:o,onRegisterError:u}=e;let c,y,v;const $=async(m=!0)=>{await y,v?.()};async function b(){if("serviceWorker"in navigator){if(c=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)}),!c)return;v=()=>{c?.messageSkipWaiting()};{let m=!1;const T=()=>{m=!0,c?.addEventListener("controlling",L=>{L.isUpdate&&window.location.reload()}),l?.()};c.addEventListener("installed",L=>{typeof L.isUpdate>"u"?typeof L.isExternal<"u"&&L.isExternal?T():!m&&i?.():L.isUpdate||i?.()}),c.addEventListener("waiting",T)}c.register({immediate:n}).then(m=>{o?o("./sw.js",m):s?.(m)}).catch(m=>{u?.(m)})}}return y=b(),$}function es(e={}){const{immediate:n=!0,onNeedRefresh:l,onOfflineReady:i,onRegistered:s,onRegisteredSW:o,onRegisterError:u}=e,c=R(!1),y=R(!1);return{updateServiceWorker:Jn({immediate:n,onNeedRefresh(){c.value=!0,l?.()},onOfflineReady(){y.value=!0,i?.()},onRegistered:s,onRegisteredSW:o,onRegisterError:u}),offlineReady:y,needRefresh:c}}const ts={key:0,class:"pwa-toast",role:"alert"},as={class:"message"},ls={key:0},is={key:1},ns=W({__name:"ReloadPrompt",setup(e){const{offlineReady:n,needRefresh:l,updateServiceWorker:i}=es(),s=async()=>{n.value=!1,l.value=!1};return(o,u)=>a(n)||a(l)?(r(),_("div",ts,[I("div",as,[a(n)?(r(),_("span",ls," App ready to work offline ")):(r(),_("span",is," New content available, click on reload button to update. "))]),a(l)?(r(),_("button",{key:0,onClick:u[0]||(u[0]=c=>a(i)())},"Reload")):w("",!0),I("button",{onClick:s},"Close")])):w("",!0)}}),ss=W({__name:"Default",setup(e){const n=pl();return ee([()=>n.query.player,()=>Object.keys(M.players).length],([l])=>{if(!l)return;const i=l.toString().toLowerCase(),s=Object.values(M.players).find(o=>o.player_id.toLowerCase()===i||o.name.toLowerCase()===i)?.player_id;s&&(t.activePlayerId=s)},{immediate:!0}),ee(()=>n.query.showFullscreenPlayer,l=>{t.showFullscreenPlayer=!!l},{immediate:!0}),ee(()=>n.query.frameless,l=>{l&&(t.frameless=!0)},{immediate:!0}),(l,i)=>(r(),_(X,null,[a(t).connected?(r(),Q(hl,{key:0},{default:f(()=>[a(t).frameless?(r(),Q(Dt,{key:0})):(r(),_(X,{key:1},[d(Zn),d(Dt),d(jn)],64))]),_:1})):(r(),Q(aa,{key:1,class:"centeredoverlay",persistent:"","model-value":!a(t).connected},{default:f(()=>[I("div",null,[d(Kt,{color:"primary",indeterminate:"",size:"64"})])]),_:1},8,["model-value"])),a(t).isInStandaloneMode?(r(),Q(ns,{key:2})):w("",!0)],64))}}),xs=se(ss,[["__scopeId","data-v-3dcdb3ba"]]);export{xs as default};
@@ -1 +0,0 @@
1
- .v-bottom-navigation{display:flex;max-width:100%;overflow:hidden;position:absolute;transition:transform,color,.2s,.1s cubic-bezier(.4,0,.2,1)}.v-bottom-navigation{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-bottom-navigation--border{border-width:thin;box-shadow:none}.v-bottom-navigation{border-radius:0}.v-bottom-navigation{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-bottom-navigation--active{box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-bottom-navigation__content{display:flex;flex:none;font-size:.75rem;justify-content:center;transition:inherit;width:100%}.v-bottom-navigation .v-bottom-navigation__content>.v-btn{font-size:inherit;height:100%;max-width:168px;min-width:80px;text-transform:none;transition:inherit;width:auto}.v-bottom-navigation .v-bottom-navigation__content>.v-btn{border-radius:0}.v-bottom-navigation .v-bottom-navigation__content>.v-btn .v-btn__content,.v-bottom-navigation .v-bottom-navigation__content>.v-btn .v-btn__icon{transition:inherit}.v-bottom-navigation .v-bottom-navigation__content>.v-btn .v-btn__icon{font-size:1.5rem}.v-bottom-navigation--grow .v-bottom-navigation__content>.v-btn{flex-basis:0;flex-grow:1}.v-bottom-navigation--shift .v-bottom-navigation__content .v-btn:not(.v-btn--selected) .v-btn__content>span{transition:inherit;opacity:0}.v-bottom-navigation--shift .v-bottom-navigation__content .v-btn:not(.v-btn--selected) .v-btn__content{transform:translateY(.5rem)}.v-window{overflow:hidden}.v-window__container{display:flex;flex-direction:column;height:inherit;position:relative;transition:.3s cubic-bezier(.25,.8,.5,1)}.v-window__controls{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 16px;pointer-events:none}.v-window__controls>*{pointer-events:auto}.v-window--show-arrows-on-hover{overflow:hidden}.v-window--show-arrows-on-hover .v-window__left{transform:translate(-200%)}:has(.v-window__controls--right).v-window--show-arrows-on-hover .v-window__left{transform:translate(200%)}.v-window--show-arrows-on-hover .v-window__right{transform:translate(200%)}:has(.v-window__controls--left).v-window--show-arrows-on-hover .v-window__right{transform:translate(-200%)}.v-window--show-arrows-on-hover:hover .v-window__left,.v-window--show-arrows-on-hover:hover .v-window__right{transform:translate(0)}.v-window--vertical-arrows .v-window__controls{flex-direction:column;justify-content:center;gap:12px}.v-window--vertical-arrows .v-window__controls--left{align-items:start}.v-window--vertical-arrows .v-window__controls--right{align-items:end}.v-window--vertical-arrows .v-window__controls .v-window__left .v-icon,.v-window--vertical-arrows .v-window__controls .v-window__right .v-icon{transform:rotate(90deg)}@container style(--v-window-transition-duration){.v-window .v-window-item{transition-duration:var(--v-window-transition-duration)!important}}.v-window--crossfade>.v-window__container{isolation:isolate}.v-window--crossfade>.v-window__container>.v-window-item{mix-blend-mode:plus-lighter}.v-window-x-transition-enter-active,.v-window-x-transition-leave-active,.v-window-x-reverse-transition-enter-active,.v-window-x-reverse-transition-leave-active,.v-window-y-transition-enter-active,.v-window-y-transition-leave-active,.v-window-y-reverse-transition-enter-active,.v-window-y-reverse-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion: reduce){.v-window-x-transition-enter-active,.v-window-x-transition-leave-active,.v-window-x-reverse-transition-enter-active,.v-window-x-reverse-transition-leave-active,.v-window-y-transition-enter-active,.v-window-y-transition-leave-active,.v-window-y-reverse-transition-enter-active,.v-window-y-reverse-transition-leave-active{transition-duration:0s}}.v-window-x-transition-leave-from,.v-window-x-transition-leave-to,.v-window-x-reverse-transition-leave-from,.v-window-x-reverse-transition-leave-to,.v-window-y-transition-leave-from,.v-window-y-transition-leave-to,.v-window-y-reverse-transition-leave-from,.v-window-y-reverse-transition-leave-to{position:absolute!important;top:0;width:100%}.v-window-x-transition-enter-from{transform:translate(100%)}.v-window-x-transition-leave-to,.v-window-x-reverse-transition-enter-from{transform:translate(-100%)}.v-window-x-reverse-transition-leave-to{transform:translate(100%)}.v-window-y-transition-enter-from{transform:translateY(100%)}.v-window-y-transition-leave-to,.v-window-y-reverse-transition-enter-from{transform:translateY(-100%)}.v-window-y-reverse-transition-leave-to{transform:translateY(100%)}.v-window-crossfade-transition-enter-active,.v-window-crossfade-transition-leave-active{transition:.3s cubic-bezier(.25,.8,.5,1)}.v-window-crossfade-transition-leave-from,.v-window-crossfade-transition-leave-to{position:absolute!important;top:0;width:100%}.v-window-crossfade-transition-enter-from,.v-window-crossfade-transition-leave-to{opacity:0}.v-footer{align-items:center;display:flex;flex:1 1 auto;padding:8px 16px;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:height,width,transform,max-width,left,right,top,bottom}.v-footer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-footer--border{border-width:thin;box-shadow:none}.v-footer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-footer--absolute{position:absolute}.v-footer--fixed{position:fixed}.v-footer{border-radius:0}.v-footer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-footer--rounded{border-radius:4px}.v-navigation-drawer{-webkit-overflow-scrolling:touch;background:rgb(var(--v-theme-surface));display:flex;flex-direction:column;height:100%;max-width:100%;pointer-events:auto;transition-duration:.2s;transition-property:box-shadow,transform,visibility,width,height,left,right,top,bottom;transition-timing-function:cubic-bezier(.4,0,.2,1);position:absolute}.v-navigation-drawer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-navigation-drawer--border{border-width:thin;box-shadow:none}.v-navigation-drawer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}@media (prefers-reduced-motion: reduce){.v-navigation-drawer{transition:none}}.v-navigation-drawer--rounded{border-radius:4px}.v-navigation-drawer--top{top:0;border-bottom-width:thin}.v-navigation-drawer--bottom{left:0;border-top-width:thin}.v-navigation-drawer--left{top:0;left:0;right:auto;border-right-width:thin}.v-navigation-drawer--right{top:0;left:auto;right:0;border-left-width:thin}.v-navigation-drawer--floating{border:none}.v-navigation-drawer--temporary.v-navigation-drawer--active{box-shadow:0 8px 10px -5px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 16px 24px 2px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 6px 30px 5px var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer--sticky{height:auto;transition:box-shadow,transform,visibility,width,height,left,right}.v-navigation-drawer .v-list{overflow:hidden}.v-navigation-drawer__content{flex:0 1 auto;height:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.v-navigation-drawer__img{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.v-navigation-drawer__img img:not(.v-img__img){height:inherit;object-fit:cover;width:inherit}.v-navigation-drawer__scrim{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;opacity:.85;transition:opacity .2s cubic-bezier(.4,0,.2,1);z-index:1}.v-navigation-drawer__prepend,.v-navigation-drawer__append{flex:none;overflow:hidden}.v-tab.v-tab.v-btn{height:var(--v-tabs-height);border-radius:0;min-width:90px}.v-slide-group--horizontal .v-tab{max-width:360px}.v-slide-group--vertical .v-tab{justify-content:start}.v-tab__slider{position:absolute;bottom:0;left:0;height:2px;width:100%;background:currentColor;pointer-events:none;opacity:0}.v-tab--selected .v-tab__slider{opacity:1}.v-slide-group--vertical .v-tab__slider{top:0;height:100%;width:2px}@media (forced-colors: active){.v-tab--selected.v-btn{color:highlight!important}.v-tab__slider{background:highlight!important}}.v-tabs{display:flex;height:var(--v-tabs-height)}.v-tabs--density-default{--v-tabs-height: 48px}.v-tabs--density-default.v-tabs--stacked{--v-tabs-height: 72px}.v-tabs--density-comfortable{--v-tabs-height: 44px}.v-tabs--density-comfortable.v-tabs--stacked{--v-tabs-height: 68px}.v-tabs--density-compact{--v-tabs-height: 36px}.v-tabs--density-compact.v-tabs--stacked{--v-tabs-height: 60px}.v-tabs.v-slide-group--vertical{height:auto;flex:none;--v-tabs-height: 48px}.v-tabs--align-tabs-title:not(.v-slide-group--has-affixes) .v-tab:first-child{margin-inline-start:42px}.v-tabs--fixed-tabs .v-slide-group__content>*:last-child,.v-tabs--align-tabs-center .v-slide-group__content>*:last-child{margin-inline-end:auto}.v-tabs--fixed-tabs .v-slide-group__content>*:first-child,.v-tabs--align-tabs-center .v-slide-group__content>*:first-child{margin-inline-start:auto}.v-tabs--grow{flex-grow:1}.v-tabs--grow .v-tab{flex:1 0 auto;max-width:none}.v-tabs--align-tabs-end .v-tab:first-child{margin-inline-start:auto}.v-tabs--align-tabs-end .v-tab:last-child{margin-inline-end:0}@media (max-width: 1279.98px){.v-tabs.v-slide-group--is-overflowing.v-slide-group--horizontal:not(.v-slide-group--has-affixes) .v-tab:first-child{margin-inline-start:52px}.v-tabs.v-slide-group--is-overflowing.v-slide-group--horizontal:not(.v-slide-group--has-affixes) .v-tab:last-child{margin-inline-end:52px}}.menuButton[data-v-5af0a01e]{margin:3px 10px;padding:0 15px;border-radius:15px}.v-list-item-title[data-v-5af0a01e]{font-size:medium;font-weight:700}.v-list-item--density-default.v-list-item--one-line[data-v-5af0a01e]{min-height:44px}.v-icon[data-v-5af0a01e]{opacity:1}.v-btn--active[data-v-5af0a01e]{color:rgb(var(--v-theme-primary))}.v-slide-group-item--active[data-v-5af0a01e]{opacity:100%}.sidebar[data-v-5af0a01e]{background-color:rgb(var(--v-theme-panel));width:290px;transition:width .3s ease;display:flex;flex-direction:column;height:100%}.sidebar.collapsed[data-v-5af0a01e]{width:68px}.sidebar-header[data-v-5af0a01e]{display:flex;align-items:center;gap:6px;margin:15px 22px 0;transition:all .3s ease;position:relative;cursor:pointer}.sidebar.collapsed .sidebar-header[data-v-5af0a01e]{margin:15px 10px 0;justify-content:center}.sidebar-header-logo[data-v-5af0a01e]{width:30px;height:30px;border-radius:6px;flex-shrink:0}.sidebar-header-title[data-v-5af0a01e]{font-size:1.2rem;font-weight:700;margin:3px 0 0 10px;white-space:nowrap;overflow:hidden;transition:opacity .2s ease}.sidebar-list[data-v-5af0a01e]{background-color:rgb(var(--v-theme-panel));list-style:none;padding:0 0 30px;margin:20px 0 0;flex:1}.sidebar.collapsed .menuButton[data-v-5af0a01e]{padding:0;margin:3px 10px}.sidebar.collapsed .menuButton[data-v-5af0a01e] .v-list-item__content{align-self:center;grid-area:content-start;overflow:hidden;min-width:40px;display:flex;justify-content:center}.sidebar-list li[data-v-5af0a01e]{padding:12px 16px}.sidebar-list li a[data-v-5af0a01e]{color:inherit;text-decoration:none;display:block;border-radius:4px;transition:background .2s}.sidebar-list li a[data-v-5af0a01e]:hover{background:#333}.media-thumb[data-v-8f34ca82]{padding-right:15px}.main-layout[data-v-544f60a2]{display:flex;height:100vh;overflow-y:auto}.main-layout--mobile[data-v-544f60a2]{padding-bottom:230px}.nav-section[data-v-544f60a2]{flex:0 0 auto;width:290px;transition:width .3s ease}.content-section[data-v-544f60a2]{flex:1;overflow-y:auto;height:100%}.icon-container[data-v-3db51b10]{display:flex;align-items:center;justify-content:center}.icon-container--button[data-v-3db51b10]{opacity:.62;cursor:pointer!important;transition:opacity .2s ease}.icon-container--button .v-icon[data-v-3db51b10]{cursor:pointer!important}.icon-container--button[data-v-3db51b10]:hover,.icon-container--button[data-v-3db51b10]:focus{opacity:1}.icon-container--button[data-v-3db51b10]:focus{outline:none;color:#0f0}.icon-container--button[data-v-3db51b10]:active{opacity:1}.icon-container--disabled[data-v-3db51b10]{opacity:.5;cursor:not-allowed;pointer-events:none}.icon[data-v-3db51b10]{line-height:1;display:flex!important;align-items:center!important;justify-content:center!important}.icon-container--button[data-v-3db51b10]{min-height:44px;min-width:44px;border-radius:4px}.icon-container[data-v-3db51b10]{width:100%;height:100%;max-width:100%;max-height:100%}.media-controls-item .icon[data-v-3db51b10]{font-size:1em!important}.player-controls{display:flex;justify-content:center}.player-controls-elements{width:46px;height:46px;display:flex;justify-content:center;align-items:center}.no_transform{text-transform:none}.volume-control-dialog>.v-overlay__content[data-v-bdfdc6da]{bottom:135px!important;right:5px!important;left:unset!important;top:unset!important}.v-overlay__scrim[data-v-bdfdc6da]{opacity:.4}.time-text-left[data-v-1b667236]{text-align:left;display:table-cell}.time-text-right[data-v-1b667236]{text-align:right;display:table-cell;right:0}.time-text-row[data-v-1b667236]{cursor:pointer;height:8px;flex-basis:0;flex-grow:1;max-width:100%;opacity:.6;display:flex;flex:1 1 auto;margin-top:-10px;margin-bottom:5px}.time-text-row>div[data-v-1b667236]{width:50%}.v-slider.v-input--horizontal[data-v-1b667236]{align-items:center;margin-inline:0px}.lyrics-container[data-v-a59ccea0]{height:100%;width:100%;display:flex;flex-direction:column}.lyrics-loading[data-v-a59ccea0],.lyrics-empty[data-v-a59ccea0]{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:.7;gap:20px}.lyrics-intro[data-v-a59ccea0]{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.song-title[data-v-a59ccea0]{font-size:2em;font-weight:700;margin-bottom:10px;color:var(--v3c09aed1)}.artist-name[data-v-a59ccea0]{font-size:1.5em;margin-bottom:40px;opacity:.8}.lyrics-coming-soon[data-v-a59ccea0]{font-size:1.2em;opacity:.6;font-style:italic}.lyrics-scroll-container[data-v-a59ccea0]{height:100%;width:100%;overflow-y:auto;padding:40vh 0;text-align:center}.static-lyrics[data-v-a59ccea0]{padding:10px 0!important;display:flex;flex-direction:column;justify-content:flex-start}.lyrics-line[data-v-a59ccea0]{padding:10px 4px;font-size:1.1em;opacity:.5;transition:all .3s ease;margin:8px 0;filter:blur(1px);text-shadow:0 0 1px var(--text-color)}.lyrics-line.active[data-v-a59ccea0]{opacity:1;font-size:1.4em;font-weight:700;color:var(--v3c09aed1);filter:blur(0);text-shadow:none}.main[data-v-b887a403]{display:flex;min-height:50%!important;height:50%!important;max-height:65%!important;padding-bottom:5px}.main-media-details[data-v-b887a403]{flex:50%;max-width:100%;width:50%}.main-queue-items[data-v-b887a403]{flex:50%;height:100%;max-width:100%;padding-right:10px;padding-left:15px}.queue-items-scroll-box[data-v-b887a403]{max-height:100%;overflow-y:scroll}.queue-items-scroll-box[data-v-b887a403]::-webkit-scrollbar{display:none}.v-infinite-scroll--vertical[data-v-b887a403]{overflow-y:unset}.main-media-details-image[data-v-b887a403]{min-height:50%;max-height:80%;height:60%;align-content:center;padding-left:20px;padding-right:20px}.main-media-details-image.v-img[data-v-b887a403]{width:auto}.main-media-details-image-alt[data-v-b887a403]{height:100%!important;max-height:100%!important;align-content:center;padding:0!important}.main-media-details-track-info[data-v-b887a403]{height:20%;max-height:20%;align-content:center;text-align:center;padding:20px}.player-bottom[data-v-b887a403]{max-height:35%!important;min-height:25%!important;height:30%!important;margin-top:auto;bottom:0;position:unset!important;padding-bottom:5%}.track-info[data-v-b887a403]{margin-top:10px;margin-bottom:10px;padding-top:2vh;padding-bottom:2vh;text-align:center;line-height:10%}.track-info-subtitle[data-v-b887a403],.v-tab[data-v-b887a403]{opacity:.5}.v-tab-item--selected[data-v-b887a403]{opacity:1}.media-controls[data-v-b887a403]{display:flex;flex:1 1 auto;align-items:center;justify-content:center;max-width:100%;padding:15px;height:100px}.media-controls-item[data-v-b887a403]{margin:0 10px;width:100%;height:100%}@media (max-width: 768px){.media-controls-item[data-v-b887a403]{margin:0 5px;width:100%;height:100%}}.row[data-v-b887a403]{align-content:center}.row-centered[data-v-b887a403]{justify-content:center;max-width:100%;padding:15px}.media-controls>button[data-v-b887a403]{flex:1 1 auto}.media-controls-bottom[data-v-b887a403]{display:flex;flex:0 1 auto;justify-content:center;align-items:center}.media-controls-bottom>div[data-v-b887a403]{flex-basis:0;flex-grow:1;max-width:100%}.media-controls>div[data-v-b887a403]{width:calc(100% / 3)}.mediacontrols-right[data-v-b887a403]{display:table-cell;text-align:right;vertical-align:middle}.mediacontrols-right>div[data-v-b887a403]{display:inline-flex;align-items:center}.v-toolbar[data-v-b887a403] .v-toolbar-title{text-align:center}.responsive-icon-holder-btn[data-v-b887a403]{display:flex;align-items:center;justify-content:center;opacity:.62;cursor:pointer!important}.responsive-icon-holder-btn[data-v-b887a403]:focus,.responsive-icon-holder-btn[data-v-b887a403]:hover{opacity:1}div[data-v-b887a403],button[data-v-b887a403]{color:var(--text-color)}.lyrics-wrapper[data-v-b887a403]{height:100%;width:100%;overflow:hidden}.title-row[data-v-b887a403]{display:flex;align-items:center;gap:6px}.player-media-thumb[data-v-01cf6ec5]{margin-right:10px}.player-track-content-type[data-v-01cf6ec5]{height:20px!important;padding:5px 9px!important;font-weight:500;font-size:10px!important;letter-spacing:.1em;border-radius:2px;margin-right:30px}.icon-thumb[data-v-01cf6ec5]{width:60px;height:60px;border-radius:3px;background-color:#0000004d;display:flex;align-items:center;justify-content:center}.v-list-item-subtitle[data-v-01cf6ec5]{-webkit-line-clamp:unset!important;line-clamp:unset!important}.mediadetails-streamdetails .icon[data-v-022a7f9a]{opacity:100}.mediacontrols[data-v-022a7f9a]{display:flex;align-items:center;width:100%;padding:10px 15px;background-color:rgb(var(--v-theme-overlay))}.mediacontrols .mediacontrols-bottom-center[data-v-022a7f9a]{width:40%}.mediacontrols[data-mobile=true][data-v-022a7f9a]{border-radius:10px}.mediacontrols[data-mobile=true] .mediacontrols-bottom-center[data-v-022a7f9a]{display:none}.mediacontrols[data-mobile=true] .mediacontrols-left[data-v-022a7f9a]{width:unset}.mediacontrols-bg[data-v-022a7f9a]{height:100%;position:absolute;width:320px;left:0;top:0;background:linear-gradient(to right,var(--v31d44b17) 0%,transparent)}.mediacontrols-bg[data-floating=true][data-v-022a7f9a]{border-radius:10px;width:100%;background:var(--v31d44b17)}.mediacontrols-top-right[data-v-022a7f9a]{display:table-row}.mediacontrols-left[data-v-022a7f9a]{margin-inline-end:auto;width:20%}.mediacontrols-left>div[data-v-022a7f9a]{padding:0!important}.mediacontrols-bottom-right[data-v-022a7f9a]{margin-inline-start:auto}.mediacontrols-bottom-right>div[data-v-022a7f9a]{display:inline-flex;align-items:center}.volume-slider[data-v-022a7f9a]{width:calc(100% - 30px);margin-bottom:6px;margin-top:-10px}.menuButton{font-weight:350;font-size:x-small;font-stretch:condensed;text-transform:none;margin-top:5px}.v-btn--active>.v-btn__overlay{background:rgb(var(--v-theme-default))!important}.v-slide-group-item--active{opacity:100%}.mediacontrols-player-float{display:flex;flex-direction:column;margin:10px 10px 0;width:calc(100% - 20px)!important;border-radius:10px!important}.gradient-dark{background:linear-gradient(0deg,#000000e6 0% 75%,#fff0)}.gradient-light{background:linear-gradient(0deg,#ffffffe6 0% 75%,#fff0)}.v-bottom-navigation--active{box-shadow:none}.title[data-v-c039da70]{font-family:JetBrains Mono Medium;font-size:x-large;opacity:.7}.expansion[data-v-c039da70] .v-expansion-panel-title{padding:10px 16px}.expansion[data-v-c039da70] .v-expansion-panel-text__wrapper{padding:10px 5px}.pwa-toast{position:fixed;right:0;bottom:0;margin:16px;padding:12px;border:1px solid #8885;border-radius:4px;z-index:1;text-align:left;box-shadow:3px 4px 5px #8885;background-color:#fff}.pwa-toast .message{margin-bottom:8px}.pwa-toast button{border:1px solid #8885;outline:none;margin-right:5px;border-radius:2px;padding:3px 10px}.centeredoverlay[data-v-3dcdb3ba] .v-overlay__content{inset:50%}
@@ -1 +0,0 @@
1
- import{p as Fe,K as Z,i as N,aB as i,a2 as je,cO as be,cP as Ge,E as p,r as ce,ag as ae,g as He,I as ze,J as q,cQ as Qe,al as Je,j as ke,cR as We,cS as se,R as oe,cT as Xe,L as ue,cU as Ve,n as Ye,bF as le,o as d,ad as Y,am as Ze,an as _e,cV as el,cW as ll,cX as he,O as al,aJ as Ce,cY as tl,b2 as ul,aF as il,aH as xe,aS as Ee,cZ as nl,bC as sl,c_ as ol,q as rl,bI as dl,ak as vl,bf as z,aw as cl,cD as F,ax as H,ay as S,aG as O,az as ve,aD as T,aE as Se,M as ee,aL as P,aR as f,aC as ml,aQ as fl,c1 as we,b_ as pl,bT as bl,bU as gl,c$ as ye,d0 as kl,_ as Vl}from"./index-BjdGY0D1.js";import{V as hl}from"./VForm-D2eK17M_.js";import{V as Cl,a as xl,b as Sl,c as wl}from"./VExpansionPanels-cqvywsgH.js";import{V as yl}from"./VDialog-B7h8eW0m.js";import{V as Ie}from"./VAlert-DfNKgxBR.js";import{V as Il}from"./VSwitch-CvtgmnVD.js";import{V as Fl}from"./VSlider-Dt4jt2Zl.js";import{u as El,a as $l,m as Tl,V as Al}from"./VSelect-cNIaLpz4.js";import{V as Ll}from"./VVirtualScroll-Ck3MSSZi.js";import{V as Rl}from"./VCheckboxBtn-B_ZAO1Qo.js";const Dl=(l,m,g)=>{if(l==null||m==null)return-1;if(!m.length)return 0;l=l.toString().toLocaleLowerCase(),m=m.toString().toLocaleLowerCase();const o=[];let k=l.indexOf(m);for(;~k;)o.push([k,k+m.length]),k=l.indexOf(m,k+m.length);return o.length?o:-1};function pe(l,m){if(!(l==null||typeof l=="boolean"||l===-1))return typeof l=="number"?[[l,l+m.length]]:Array.isArray(l[0])?l:[l]}const Ul=Fe({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Ml(l,m,g){const o=[],k=g?.default??Dl,w=g?.filterKeys?be(g.filterKeys):!1,h=Object.keys(g?.customKeyFilter??{}).length;if(!l?.length)return o;let y=null;e:for(let I=0;I<l.length;I++){const[V,B=V]=be(l[I]),c={},D={};let A=-1;if((m||h>0)&&!g?.noFilter){let X=!1;if(typeof V=="object"){if(V.type==="divider"||V.type==="subheader"){y?.type==="divider"&&V.type==="subheader"&&o.push(y),y={index:I,matches:{},type:V.type};continue}const j=w||Object.keys(B);X=j.length===h;for(const r of j){const W=Ge(B,r),L=g?.customKeyFilter?.[r];if(A=L?L(W,m,V):k(W,m,V),A!==-1&&A!==!1)L?c[r]=pe(A,m):D[r]=pe(A,m);else if(g?.filterMode==="every")continue e}}else A=k(V,m,V),A!==-1&&A!==!1&&(D.title=pe(A,m));const Q=Object.keys(D).length,J=Object.keys(c).length;if(!Q&&!J||g?.filterMode==="union"&&J!==h&&!Q||g?.filterMode==="intersection"&&(J!==h||!Q&&h>0&&!X))continue}y&&(o.push(y),y=null),o.push({index:I,matches:{...D,...c}})}return o}function Ol(l,m,g,o){const k=Z([]),w=Z(new Map),h=N(()=>i(m));je(()=>{const I=typeof g=="function"?g():i(g),V=typeof I!="string"&&typeof I!="number"?"":String(I),B=Ml(h.value,V,{customKeyFilter:{...l.customKeyFilter,...i(o?.customKeyFilter)},default:l.customFilter,filterKeys:l.filterKeys,filterMode:l.filterMode,noFilter:l.noFilter}),c=i(m),D=[],A=new Map;B.forEach(X=>{let{index:Q,matches:J}=X;const j=c[Q];D.push(j),A.set(j.value,J)}),k.value=D,w.value=A});function y(I){return w.value.get(I.value)}return{filteredItems:k,filteredMatches:w,getMatches:y}}function Pl(l,m,g){return g==null||!g.length?m:g.map((o,k)=>{const w=k===0?0:g[k-1][1],h=[p("span",{class:ce(`${l}__unmask`)},[m.slice(w,o[0])]),p("span",{class:ce(`${l}__mask`)},[m.slice(o[0],o[1])])];return k===g.length-1&&h.push(p("span",{class:ce(`${l}__unmask`)},[m.slice(o[1])])),p(ae,null,[h])})}const Nl=Fe({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Ul({filterKeys:["title"]}),...Tl({hideNoData:!0,returnObject:!0}),..._e(el({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),Bl=He()({name:"VCombobox",props:Nl(),emits:{"update:focused":l=>!0,"update:modelValue":l=>!0,"update:search":l=>!0,"update:menu":l=>!0},setup(l,m){let{emit:g,slots:o}=m;const{t:k}=ze(),w=q(),h=Z(!1),y=Z(!0),I=Z(!1),V=q(),B=q(),c=Z(-1);let D=!1;const{items:A,transformIn:X,transformOut:Q}=Qe(l),{textColorClasses:J,textColorStyles:j}=Je(()=>w.value?.color),r=ke(l,"modelValue",[],t=>X(be(t)),t=>{const C=Q(t);return l.multiple?C:C[0]??null}),W=We(l),L=N(()=>!!(l.chips||o.chip)),K=N(()=>L.value||!!o.selection),U=Z(!l.multiple&&!K.value?r.value[0]?.title??"":""),_=Z(null),E=N({get:()=>U.value,set:async t=>{if(U.value=t??"",t===null||t===""&&!l.multiple&&!K.value?r.value=[]:!l.multiple&&!K.value&&(r.value=[se(l,t)],oe(()=>B.value?.scrollToIndex(0))),t&&l.multiple&&l.delimiters?.length){const C=l.delimiters.map(Xe).join("|"),R=t.split(new RegExp(`(?:${C})+`));if(R.length>1){for(let u of R)u=u.trim(),u&&(G(se(l,u)),await oe());U.value=""}}t||(c.value=-1),y.value=!t}}),s=N(()=>typeof l.counterValue=="function"?l.counterValue(r.value):typeof l.counterValue=="number"?l.counterValue:l.multiple?r.value.length:E.value.length),{filteredItems:a,getMatches:b}=Ol(l,A,()=>_.value??(l.alwaysFilter||!y.value?E.value:"")),e=N(()=>l.hideSelected&&_.value===null?a.value.filter(t=>!r.value.some(C=>C.value===t.value)):a.value),n=N(()=>l.hideNoData&&!e.value.length||W.isReadonly.value||W.isDisabled.value),re=ke(l,"menu"),x=N({get:()=>re.value,set:t=>{re.value&&!t&&V.value?.ΨopenChildren.size||t&&n.value||(re.value=t)}}),{menuId:te,ariaExpanded:$e,ariaControls:Te,ariaLabel:ge}=El(l,x);ue(U,t=>{D?oe(()=>D=!1):h.value&&!x.value&&(x.value=!0),g("update:search",t)}),ue(r,t=>{!l.multiple&&!K.value&&(U.value=t[0]?.title??"")});const Ae=N(()=>r.value.map(t=>t.value)),me=N(()=>(l.autoSelectFirst===!0||l.autoSelectFirst==="exact"&&E.value===e.value[0]?.title)&&e.value.length>0&&!y.value&&!I.value),fe=q(),Le=$l(fe,w);function Re(t){D=!0,oe(()=>D=!1),l.openOnClear&&(x.value=!0)}function De(){n.value||(x.value=!0)}function Ue(t){n.value||(h.value&&(t.preventDefault(),t.stopPropagation()),x.value=!x.value)}function Me(t){(he(t)||t.key==="Backspace")&&w.value?.focus()}function Oe(t){if(ll(t)||W.isReadonly.value)return;const C=w.value?.selectionStart,R=r.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(t.key)&&t.preventDefault(),["Enter","ArrowDown"].includes(t.key)&&(x.value=!0),["Escape"].includes(t.key)&&(x.value=!1),me.value&&["Enter","Tab"].includes(t.key)&&!r.value.some(u=>{let{value:v}=u;return v===e.value[0].value})&&G(a.value[0]),t.key==="ArrowDown"&&me.value&&fe.value?.focus("next"),t.key==="Enter"&&E.value&&(G(se(l,E.value),!0,!0),K.value&&(U.value="")),["Backspace","Delete"].includes(t.key)){if(!l.multiple&&K.value&&r.value.length>0&&!E.value)return G(r.value[0],!1);if(~c.value){t.preventDefault();const u=c.value;G(r.value[c.value],!1),c.value=u>=R-1?R-2:u}else t.key==="Backspace"&&!E.value&&(c.value=R-1);return}if(l.multiple)if(t.key==="ArrowLeft"){if(c.value<0&&C&&C>0)return;const u=c.value>-1?c.value-1:R-1;r.value[u]?c.value=u:(c.value=-1,w.value?.setSelectionRange(E.value.length,E.value.length))}else if(t.key==="ArrowRight"){if(c.value<0)return;const u=c.value+1;r.value[u]?c.value=u:(c.value=-1,w.value?.setSelectionRange(0,0))}else~c.value&&he(t)&&(c.value=-1)}function Pe(){l.eager&&B.value?.calculateVisibleItems()}function Ne(){h.value&&w.value?.focus(),y.value=!0,_.value=null}function G(t){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,R=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!t||t.props.disabled))if(l.multiple){const u=r.value.findIndex($=>(l.valueComparator||Ve)($.value,t.value)),v=C??!~u;if(~u){const $=v?[...r.value,t]:[...r.value];$.splice(u,1),r.value=$}else v&&(r.value=[...r.value,t]);l.clearOnSelect&&(E.value="")}else{const u=C!==!1;r.value=u?[t]:[],(!y.value||l.alwaysFilter)&&U.value&&(_.value=U.value),U.value=u&&!K.value?t.title:"",oe(()=>{x.value=R,y.value=!0})}}function Be(t){h.value=!0,setTimeout(()=>{I.value=!0})}function Ke(t){I.value=!1}return ue(h,(t,C)=>{if(!(t||t===C)&&(c.value=-1,x.value=!1,E.value)){if(l.multiple){G(se(l,E.value));return}if(!K.value)return;r.value.some(R=>{let{title:u}=R;return u===E.value})?U.value="":G(se(l,E.value))}}),ue(x,t=>{if(!l.hideSelected&&t&&r.value.length&&y.value){const C=e.value.findIndex(R=>r.value.some(u=>(l.valueComparator||Ve)(u.value,R.value)));al&&window.requestAnimationFrame(()=>{C>=0&&B.value?.scrollToIndex(C)})}t&&(_.value=null)}),ue(A,(t,C)=>{x.value||h.value&&!C.length&&t.length&&(x.value=!0)}),Ye(()=>{const t=!!(!l.hideNoData||e.value.length||o["prepend-item"]||o["append-item"]||o["no-data"]),C=r.value.length>0,R=le.filterProps(l);return d(le,Y({ref:w},R,{modelValue:E.value,"onUpdate:modelValue":u=>E.value=u,focused:h.value,"onUpdate:focused":u=>h.value=u,validationValue:r.externalValue,counterValue:s.value,dirty:C,class:["v-combobox",{"v-combobox--active-menu":x.value,"v-combobox--chips":!!l.chips,"v-combobox--selection-slot":!!K.value,"v-combobox--selecting-index":c.value>-1,[`v-combobox--${l.multiple?"multiple":"single"}`]:!0},l.class],style:l.style,readonly:W.isReadonly.value,placeholder:C?void 0:l.placeholder,"onClick:clear":Re,"onMousedown:control":De,onKeydown:Oe,"aria-expanded":$e.value,"aria-controls":Te.value}),{...o,default:()=>p(ae,null,[d(ul,Y({id:te.value,ref:V,modelValue:x.value,"onUpdate:modelValue":u=>x.value=u,activator:"parent",contentClass:"v-combobox__content",disabled:n.value,eager:l.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:Pe,onAfterLeave:Ne},l.menuProps),{default:()=>[t&&d(il,Y({ref:fe,filterable:!0,selected:Ae.value,selectStrategy:l.multiple?"independent":"single-independent",onMousedown:u=>u.preventDefault(),selectable:!0,onKeydown:Me,onFocusin:Be,onFocusout:Ke,tabindex:"-1","aria-live":"polite",color:l.itemColor??l.color},Le,l.listProps),{default:()=>[o["prepend-item"]?.(),!e.value.length&&!l.hideNoData&&(o["no-data"]?.()??d(xe,{key:"no-data",title:k(l.noDataText)},null)),d(Ll,{ref:B,renderless:!0,items:e.value,itemKey:"value"},{default:u=>{let{item:v,index:$,itemRef:de}=u;const ie=Y(v.props,{ref:de,key:v.value,active:me.value&&$===0?!0:void 0,onClick:()=>G(v,null)});return v.type==="divider"?o.divider?.({props:v.raw,index:$})??d(Ee,Y(v.props,{key:`divider-${$}`}),null):v.type==="subheader"?o.subheader?.({props:v.raw,index:$})??d(nl,Y(v.props,{key:`subheader-${$}`}),null):o.item?.({item:v,index:$,props:ie})??d(xe,Y(ie,{role:"option"}),{prepend:ne=>{let{isSelected:M}=ne;return p(ae,null,[l.multiple&&!l.hideSelected?d(Rl,{key:v.value,modelValue:M,ripple:!1,tabindex:"-1",onClick:qe=>qe.preventDefault()},null):void 0,v.props.prependAvatar&&d(sl,{image:v.props.prependAvatar},null),v.props.prependIcon&&d(Ce,{icon:v.props.prependIcon},null)])},title:()=>y.value?v.title:Pl("v-combobox",v.title,b(v)?.title)})}}),o["append-item"]?.()]})]}),r.value.map((u,v)=>{function $(M){M.stopPropagation(),M.preventDefault(),G(u,!1)}const de={"onClick:close":$,onKeydown(M){M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.stopPropagation(),$(M))},onMousedown(M){M.preventDefault(),M.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},ie=L.value?!!o.chip:!!o.selection,ne=ie?ol(L.value?o.chip({item:u,index:v,props:de}):o.selection({item:u,index:v})):void 0;if(!(ie&&!ne))return p("div",{key:u.value,class:ce(["v-combobox__selection",v===c.value&&["v-combobox__selection--selected",J.value]]),style:rl(v===c.value?j.value:{})},[L.value?o.chip?d(vl,{key:"chip-defaults",defaults:{VChip:{closable:l.closableChips,size:"small",text:u.title}}},{default:()=>[ne]}):d(dl,Y({key:"chip",closable:l.closableChips,size:"small",text:u.title,disabled:u.props.disabled},de),null):ne??p("span",{class:"v-combobox__selection-text"},[u.title,l.multiple&&v<r.value.length-1&&p("span",{class:"v-combobox__selection-comma"},[z(",")])])])})]),"append-inner":function(){for(var u=arguments.length,v=new Array(u),$=0;$<u;$++)v[$]=arguments[$];return p(ae,null,[o["append-inner"]?.(...v),(!l.hideNoData||l.items.length)&&l.menuIcon?d(Ce,{class:"v-combobox__menu-icon",color:w.value?.fieldIconColor,icon:l.menuIcon,onMousedown:Ue,onClick:tl,"aria-label":ge.value,title:ge.value,tabindex:"-1"},null):void 0])}})}),Ze({isFocused:h,isPristine:y,menu:x,search:E,selectionIndex:c,filteredItems:a,select:G},w)}}),Kl={class:"configcolumnleft"},ql={key:0},jl={key:1},Gl={key:2},Hl={key:3},zl={key:4},Ql={key:0,class:"configcolumnright"},Jl=cl({__name:"EditConfig",props:{configEntries:{},disabled:{type:Boolean}},emits:["submit","action"],setup(l,{emit:m}){const g=ml(),o=m,k=q(),w=q(!1),h=q(),y=q("generic"),I=q(!1),V=q(),B=q({}),c=l,D=N(()=>["generic",...new Set(k.value.map(a=>a.category).filter(a=>!["generic","advanced"].includes(a))),"advanced"]),A=N(()=>{if(k.value){for(const s of k.value)if(s.required&&!(!L(s.value)||!L(s.default_value)||s.type==F.DIVIDER||s.type==F.LABEL||s.type==F.ALERT||s.type==F.ACTION))return!1;return!0}return!1});ue(()=>c.configEntries,s=>{k.value=[];for(const a of s||[])a.value!==void 0&&a.value!==null&&(B.value[a.key]=a.value),(a.value==null||a.value==null)&&(a.value=a.default_value),k.value.push(a)},{immediate:!0});const X=async function(){const{valid:s}=await h.value.validate();return s},Q=async function(){await X()&&o("submit",U())},J=async function(s){o("action",s,U())},j=function(s){const a=document.createElement("a");a.setAttribute("href",s),a.setAttribute("target","_blank"),a.click()},r=function(s){return k.value.filter(a=>a.category==s&&K(a))},W=function(){g.push(`${g.currentRoute.value.path}/dsp`)},L=function(s){return s==null},K=function(s){if(s.hidden)return!1;if(!L(s.depends_on)){const a=k.value?.find(b=>b.key==s.depends_on);if(a){const b=a.value;if(!L(s.depends_on_value))return b==s.depends_on_value;if(!L(s.depends_on_value_not))return b!=s.depends_on_value_not;if(a.required&&L(a))return!0;if(a.type==F.BOOLEAN&&!b)return!1}}return!0},U=function(){const s={};for(const a of c.configEntries)a.value==null&&(a.value=null),!(a.type==F.SECURE_STRING&&a.value==ye)&&(s[a.key]=a.value);return s},_=function(s){if(!s.options)return[];const a=[];for(const b of s.options){let e=b.value?.toString()||"",n=b.title?.toString()||"";for(const te of["@","$","|"])e.includes(te)&&(e=e.replaceAll(te,"")),n.includes(te)&&(n=n.toString().replaceAll(te,""));const x={title:f(`settings.${s.key}.options.${e}`,n),value:b.value};x.value==s.default_value&&(x.title+=` [${f("settings.default")}]`),a.push(x)}return a},E=function(s){return(f(`settings.${s?.key}.description`,s.description||" ")||s.help_link||" ")?.length>1};return(s,a)=>(S(),H(ae,null,[k.value?(S(),O(hl,{key:0,ref_key:"form",ref:h,modelValue:w.value,"onUpdate:modelValue":a[2]||(a[2]=b=>w.value=b),disabled:l.disabled},{default:T(()=>[d(Cl,{modelValue:y.value,"onUpdate:modelValue":a[1]||(a[1]=b=>y.value=b),variant:"accordion",multiple:"",flat:""},{default:T(()=>[(S(!0),H(ae,null,Se(D.value.filter(b=>r(b).length>0),b=>(S(),O(xl,{key:b,value:b,flat:"",accordion:"",class:"configrowpanel"},{default:T(()=>[d(Sl,null,{default:T(()=>[p("h3",null,P(i(f)("settings.category."+b,b)),1)]),_:2},1024),a[18]||(a[18]=p("br",null,null,-1)),d(wl,null,{default:T(()=>[(S(!0),H(ae,null,Se(r(b),e=>(S(),H("div",{key:e.key,class:"configrow"},[p("div",Kl,[e.type==i(F).DIVIDER?(S(),H("div",ql,[a[7]||(a[7]=p("br",null,null,-1)),d(Ee),e.label?(S(),O(kl,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:T(()=>[p("b",null,P(e.label),1)]),_:2},1024)):ve("",!0),a[8]||(a[8]=p("br",null,null,-1)),a[9]||(a[9]=p("br",null,null,-1))])):e.type==i(F).LABEL?(S(),H("div",jl,[a[10]||(a[10]=p("br",null,null,-1)),d(Ie,{variant:"outlined",type:"info"},{default:T(()=>[z(P(i(f)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[11]||(a[11]=p("br",null,null,-1)),a[12]||(a[12]=p("br",null,null,-1))])):e.type==i(F).ALERT?(S(),H("div",Gl,[a[13]||(a[13]=p("br",null,null,-1)),d(Ie,{density:"compact",type:"warning"},{default:T(()=>[z(P(i(f)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[14]||(a[14]=p("br",null,null,-1)),a[15]||(a[15]=p("br",null,null,-1))])):e.type==i(F).ACTION||e.action&&!e.value?(S(),H("div",Hl,[a[16]||(a[16]=p("br",null,null,-1)),d(ee,{class:"actionbutton",disabled:e.read_only,onClick:n=>{J(e.action||e.key),e.value=e.action?null:e.key}},{default:T(()=>[z(P(i(f)(`settings.${e.action||e.key}.label`,e.action_label||e.label)),1)]),_:2},1032,["disabled","onClick"])])):e.type==i(F).DSP_SETTINGS?(S(),H("div",zl,[a[17]||(a[17]=p("br",null,null,-1)),z(" "+P(e.value?i(f)("settings.dsp_enabled"):i(f)("settings.dsp_disabled"))+" ",1),d(ee,{class:"actionbutton",onClick:W},{default:T(()=>[z(P(i(f)("open_dsp_settings")),1)]),_:1})])):e.type==i(F).BOOLEAN?(S(),O(Il,{key:5,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,label:i(f)(`settings.${e.key}.label`,e.label),color:"primary",disabled:e.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(e.type==i(F).INTEGER||e.type==i(F).FLOAT)&&e.range&&e.range.length==2?(S(),O(Fl,{key:6,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,class:"align-center",min:e.range[0],max:e.range[1],step:e.type==i(F).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:T(()=>[d(le,{modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):e.type==i(F).SECURE_STRING?(S(),O(le,{key:7,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,disabled:e.read_only,rules:[n=>!(!n&&e.required)||i(f)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof e.value=="string"&&e.value.includes(i(ye))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!e.action,"onClick:appendInner":a[0]||(a[0]=n=>I.value=!I.value),"onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):e.options&&e.options.length>0?(S(),O(Al,{key:8,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,chips:e.multi_value,clearable:!0,multiple:e.multi_value,items:_(e),disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,rules:[n=>!(n==null&&e.required)||i(f)("settings.invalid_input")],variant:"outlined","onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):e.type==i(F).INTEGER||e.type==i(F).FLOAT?(S(),O(le,{key:9,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,placeholder:e.default_value?.toString(),disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,rules:[n=>!(!n&&e.required)||i(f)("settings.invalid_input")],variant:"outlined",clearable:!e.required,type:"number","onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):e.type==i(F).ICON?(S(),O(le,{key:10,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),"prepend-inner-icon":e.value,variant:"outlined","onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):e.type==i(F).STRING&&e.multi_value?(S(),O(Bl,{key:11,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,multiple:"",chips:"",clearable:!0,disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,rules:[n=>!(!n&&e.required)||i(f)("settings.invalid_input")],variant:"outlined","onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(S(),O(le,{key:12,modelValue:e.value,"onUpdate:modelValue":n=>e.value=n,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:i(f)(`settings.${e.key}.label`,e.label),required:e.required,rules:[n=>!(!n&&e.required)||i(f)("settings.invalid_input")],variant:"outlined",readonly:!!e.action,"onClick:clear":n=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),E(e)?(S(),H("div",Ql,[d(ee,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:n=>i(f)(`settings.${e?.key}.description`,e.description||"")?V.value=e:j(e.help_link)},null,8,["onClick"])])):ve("",!0)]))),128))]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),a[19]||(a[19]=p("br",null,null,-1)),d(ee,{block:"",color:"primary",disabled:!A.value,onClick:Q},{default:T(()=>[z(P(i(f)("settings.save")),1)]),_:1},8,["disabled"])]),_:1},8,["modelValue","disabled"])):ve("",!0),a[20]||(a[20]=p("br",null,null,-1)),d(ee,{block:"",onClick:a[3]||(a[3]=b=>i(g).back())},{default:T(()=>[z(P(i(f)("close")),1)]),_:1}),d(yl,{"model-value":V.value!==void 0,width:"auto","onUpdate:modelValue":a[6]||(a[6]=b=>V.value=void 0)},{default:T(()=>[d(fl,null,{default:T(()=>[d(we,null,{default:T(()=>[p("h2",null,P(i(f)(`settings.${V.value?.key}.label`,V.value?.label||"")),1)]),_:1}),d(we,{innerHTML:i(pl)(i(f)(`settings.${V.value?.key}.description`,V.value?.description||""))},null,8,["innerHTML"]),d(bl,null,{default:T(()=>[V.value?.help_link?(S(),O(ee,{key:0,onClick:a[4]||(a[4]=b=>j(V.value.help_link))},{default:T(()=>[z(P(i(f)("read_more")),1)]),_:1})):ve("",!0),d(gl),d(ee,{color:"primary",onClick:a[5]||(a[5]=b=>V.value=void 0)},{default:T(()=>[z(P(i(f)("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])],64))}}),ia=Vl(Jl,[["__scopeId","data-v-73a4f527"]]);export{ia as E};
@@ -1 +0,0 @@
1
- .v-combobox--chips.v-input--density-compact .v-field--variant-solo .v-label.v-field-label--floating,.v-combobox--chips.v-input--density-compact .v-field--variant-solo-inverted .v-label.v-field-label--floating,.v-combobox--chips.v-input--density-compact .v-field--variant-filled .v-label.v-field-label--floating,.v-combobox--chips.v-input--density-compact .v-field--variant-solo-filled .v-label.v-field-label--floating{top:0}.v-combobox .v-field .v-text-field__prefix,.v-combobox .v-field .v-text-field__suffix,.v-combobox .v-field .v-field__input,.v-combobox .v-field.v-field{cursor:text}.v-combobox .v-field .v-field__input>input{flex:1 1}.v-combobox .v-field input{min-width:64px}.v-combobox .v-field:not(.v-field--focused) input{min-width:0}.v-combobox .v-field--dirty .v-combobox__selection{margin-inline-end:2px}.v-combobox .v-combobox__selection-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-combobox__content{overflow:hidden}.v-combobox__content{box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-menu>.v-overlay__content.v-combobox__content{border-radius:4px}.v-combobox__mask{background:rgb(var(--v-theme-surface-light))}.v-combobox__selection{display:inline-flex;align-items:center;height:1.5rem;letter-spacing:inherit;line-height:inherit;max-width:calc(100% - 4px)}.v-combobox__selection:first-child{margin-inline-start:0}.v-combobox--selecting-index .v-combobox__selection{opacity:var(--v-medium-emphasis-opacity)}.v-combobox--selecting-index .v-combobox__selection--selected{opacity:1}.v-combobox--selecting-index .v-field__input>input{caret-color:transparent}.v-combobox--single:not(.v-combobox--selection-slot).v-text-field input{flex:1 1;position:absolute;left:0;right:0;width:100%;padding-inline:inherit}.v-combobox--single:not(.v-combobox--selection-slot) .v-field--active input{transition:none}.v-combobox--single:not(.v-combobox--selection-slot) .v-field--dirty:not(.v-field--focused) input{opacity:0}.v-combobox--single:not(.v-combobox--selection-slot) .v-field--focused .v-combobox__selection{opacity:0}.v-combobox__menu-icon{margin-inline-start:4px;transition:.2s cubic-bezier(.4,0,.2,1)}.v-combobox--active-menu .v-combobox__menu-icon{transform:rotate(180deg)}.configrow[data-v-73a4f527]{display:flex;width:100%;padding:0}.configcolumnleft[data-v-73a4f527]{flex:90%}.configcolumnright[data-v-73a4f527]{align-content:flex-end;vertical-align:middle}.helpicon[data-v-73a4f527]{margin-top:0;margin-right:-10px}.actionbutton.v-btn.v-btn--density-default[data-v-73a4f527]{height:50px;width:100%;margin-top:0;margin-bottom:10px}div.v-expansion-panel[data-v-73a4f527]{background-color:transparent}.configrowpanel[data-v-73a4f527] .v-expansion-panel-title{padding:0 5px 0 0}.configrowpanel[data-v-73a4f527] .v-expansion-panel-text__wrapper{padding:0}
@@ -1 +0,0 @@
1
- import{aw as x,J as y,L as B,ax as C,ay as m,o as i,aD as u,az as f,aG as p,E as r,be as $,bf as v,aL as d,aB as l,aN as o,bg as c,cC as j,aS as b,c1 as S,b6 as T,bv as D,aC as L}from"./index-BjdGY0D1.js";import{E as O}from"./EditConfig-BnGkC7Dx.js";import{n as z}from"./index.browser-OxPLOBIU.js";import"./VForm-D2eK17M_.js";import"./VExpansionPanels-cqvywsgH.js";import"./VDialog-B7h8eW0m.js";import"./VAlert-DfNKgxBR.js";import"./VSwitch-CvtgmnVD.js";import"./VCheckboxBtn-B_ZAO1Qo.js";import"./VSlider-Dt4jt2Zl.js";import"./VSelect-cNIaLpz4.js";import"./VVirtualScroll-Ck3MSSZi.js";const I={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},W=x({__name:"EditCoreConfig",props:{domain:{}},setup(k){const V=L(),t=y(),w=z(11),s=y(!1),E=k;B(()=>E.domain,async a=>{a&&(t.value=await o.getCoreConfig(a))},{immediate:!0});const M=async function(a){s.value=!0,o.saveCoreConfig(t.value.domain,a).then(()=>{s.value=!1,V.push({name:"providersettings"})}).catch(e=>{alert(e),s.value=!1})},N=async function(a,e){s.value=!0;for(const n of Object.values(t.value.values))n.value!==void 0&&e[n.key]==null&&(e[n.key]=n.value);e.session_id=w,o.getCoreConfigEntries(t.value.domain,a,e).then(n=>{t.value.values={};for(const g of n)t.value.values[g.key]=g;s.value=!1}).catch(n=>{alert(n),s.value=!1})};return(a,e)=>(m(),C("section",null,[i(S,null,{default:u(()=>[t.value?(m(),C("div",I,[i($,null,{default:u(()=>[v(d(a.$t("settings.setup_provider",[l(o).providerManifests[t.value.domain].name])),1)]),_:1}),i(c,null,{default:u(()=>[v(d(l(o).providerManifests[t.value.domain].description),1)]),_:1}),e[3]||(e[3]=r("br",null,null,-1)),l(o).providerManifests[t.value.domain].codeowners.length?(m(),p(c,{key:0},{default:u(()=>[r("b",null,d(a.$t("settings.codeowners"))+": ",1),v(d(l(o).providerManifests[t.value.domain].codeowners.join(" / ")),1)]),_:1})):f("",!0),l(o).providerManifests[t.value.domain].documentation?(m(),p(c,{key:1},{default:u(()=>[r("b",null,d(a.$t("settings.need_help_setup_provider")),1),e[2]||(e[2]=v("  ",-1)),r("a",{onClick:e[0]||(e[0]=n=>l(j)(l(o).providerManifests[t.value.domain].documentation))},d(a.$t("settings.check_docs")),1)]),_:1})):f("",!0),e[4]||(e[4]=r("br",null,null,-1)),i(b),e[5]||(e[5]=r("br",null,null,-1)),e[6]||(e[6]=r("br",null,null,-1))])):f("",!0),i(b),t.value?(m(),p(O,{key:1,"config-entries":Object.values(t.value.values),disabled:!1,onSubmit:M,onAction:N},null,8,["config-entries"])):f("",!0)]),_:1}),i(D,{modelValue:s.value,"onUpdate:modelValue":e[1]||(e[1]=n=>s.value=n),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:u(()=>[i(T,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{W as default};
@@ -1 +0,0 @@
1
- import{aw as h,J as c,aN as t,b9 as w,a4 as B,i as M,bp as g,cD as _,b0 as V,L as N,ax as P,ay as s,o as p,aD as d,az as u,E as o,aG as y,aB as r,be as G,bf as v,aL as i,bg as f,cC as O,aS as C,bF as A,c1 as R,aC as F}from"./index-BjdGY0D1.js";import{E as q}from"./EditConfig-BnGkC7Dx.js";import{n as j}from"./index.browser-OxPLOBIU.js";import{V as Y}from"./VSwitch-CvtgmnVD.js";import"./VForm-D2eK17M_.js";import"./VExpansionPanels-cqvywsgH.js";import"./VDialog-B7h8eW0m.js";import"./VAlert-DfNKgxBR.js";import"./VSlider-Dt4jt2Zl.js";import"./VSelect-cNIaLpz4.js";import"./VVirtualScroll-Ck3MSSZi.js";import"./VCheckboxBtn-B_ZAO1Qo.js";const z={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},ne=h({__name:"EditPlayer",props:{playerId:{}},setup(D){const S=F(),e=c(),T=j(11),E=c(!1),m=D,b=c(!1);(async()=>{if(m.playerId)try{b.value=(await t.getDSPConfig(m.playerId)).enabled}catch(a){console.error("Error fetching DSP config:",a)}})();const I=t.subscribe(w.PLAYER_DSP_CONFIG_UPDATED,a=>{b.value=a.data.enabled});B(I);const $=M(()=>{if(!e.value)return[];const a=Object.values(e.value.values),l=t.players[e.value.player_id];return l&&l.type!==g.GROUP?a.push({key:"dsp_settings",type:_.DSP_SETTINGS,label:"",default_value:b.value,required:!1,category:"audio"}):l&&l.type===g.GROUP&&l.supported_features.includes(V.MULTI_DEVICE_DSP)?a.push({key:"dsp_note_multi_device_group",type:_.LABEL,label:"You can configure the DSP for each player individually.",default_value:null,required:!1,category:"audio"}):l&&l.type===g.GROUP&&!l.supported_features.includes(V.MULTI_DEVICE_DSP)&&a.push({key:"dsp_note_multi_device_group_not_supported",type:_.LABEL,label:"This group type does not support DSP when playing to multiple devices.",default_value:null,required:!1,category:"audio"}),a});N(()=>m.playerId,async a=>{a&&(e.value=await t.getPlayerConfig(a))},{immediate:!0});const L=async function(a){delete a.dsp_settings,a.enabled=e.value.enabled,a.name=e.value.name||null,t.savePlayerConfig(m.playerId,a),S.push({name:"playersettings"})},U=async function(a,l){E.value=!0;for(const n of Object.values(e.value.values))n.value!==void 0&&l[n.key]==null&&(l[n.key]=n.value);l.session_id=T,t.getPlayerConfigEntries(e.value.player_id,a,l).then(n=>{e.value.values={};for(const k of n)e.value.values[k.key]=k}).catch(n=>{alert(n)}).finally(()=>{E.value=!1})};return(a,l)=>(s(),P("section",null,[p(R,null,{default:d(()=>[e.value&&r(t).getProviderManifest(e.value.provider).domain in r(t).providerManifests?(s(),P("div",z,[p(G,null,{default:d(()=>[v(i(a.$t("settings.config_player",[e.value.name||r(t).players[e.value.player_id]?.name||e.value.default_name])),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_id"))+": ",1),v(i(e.value.player_id),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_provider"))+": ",1),v(i(r(t).getProviderManifest(e.value.provider)?.name)+" ",1),r(t).getProviderManifest(e.value.provider)?.documentation?(s(),P("a",{key:0,onClick:l[0]||(l[0]=n=>r(O)(r(t).getProviderManifest(e.value.provider)?.documentation))}," ["+i(a.$t("settings.check_docs"))+"]",1)):u("",!0)]),_:1}),r(t).players[e.value.player_id]?(s(),y(f,{key:0},{default:d(()=>[o("b",null,i(a.$t("settings.player_model"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.manufacturer)+" / "+i(r(t).players[e.value.player_id].device_info.model),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?.device_info.ip_address?(s(),y(f,{key:1},{default:d(()=>[o("b",null,i(a.$t("settings.player_address"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.ip_address),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?(s(),y(f,{key:2},{default:d(()=>[o("b",null,i(a.$t("settings.player_type_label"))+": ",1),v(i(a.$t(`player_type.${r(t).players[e.value.player_id].type}`)),1)]),_:1})):u("",!0),l[3]||(l[3]=o("br",null,null,-1)),p(C),l[4]||(l[4]=o("br",null,null,-1)),l[5]||(l[5]=o("br",null,null,-1)),"name"in e.value?(s(),y(A,{key:3,modelValue:e.value.name,"onUpdate:modelValue":l[1]||(l[1]=n=>e.value.name=n),placeholder:e.value?.name,label:a.$t("settings.player_name"),variant:"outlined",clearable:"",class:"configcolumnleft",style:{"margin-right":"25px"}},null,8,["modelValue","placeholder","label"])):u("",!0),"enabled"in e.value?(s(),y(Y,{key:4,modelValue:e.value.enabled,"onUpdate:modelValue":l[2]||(l[2]=n=>e.value.enabled=n),label:a.$t("settings.enable_player"),color:"primary",disabled:r(t).getProviderManifest(e.value.provider)?.builtin},null,8,["modelValue","label","disabled"])):u("",!0)])):u("",!0),l[6]||(l[6]=o("br",null,null,-1)),p(C),e.value?(s(),y(q,{key:1,disabled:!e.value.enabled,"config-entries":$.value,onSubmit:L,onAction:U},null,8,["disabled","config-entries"])):u("",!0)]),_:1})]))}});export{ne as default};
@@ -1,9 +0,0 @@
1
- import{g as Fe,p as qe,cH as il,c as Be,f as ol,e as rl,n as De,E as z,q as ie,r as Q,o as l,aJ as K,ak as ul,A as Qe,cI as Ke,z as Xe,C as we,cw as Ye,bX as dl,K as ml,J as U,L as le,s as be,x as Je,bZ as pl,G as vl,d as cl,H as fl,m as gl,t as ee,i as j,v as yl,B as _l,at as bl,aw as ge,u as Oe,aG as $,ay as c,aD as a,ax as pe,M as B,c1 as ae,bf as f,aL as A,ag as fe,aE as Ee,bb as Ze,aM as hl,_ as el,bR as Vl,bS as Ie,aR as O,aQ as te,bF as ll,cJ as P,cK as F,a2 as Cl,a3 as Pe,cG as tl,az as G,aB as b,bG as kl,bI as Se,bN as al,bO as $e,cL as Sl,bU as Te,R as Le,bL as Ll,cM as ne,a8 as Pl,bj as $l,aN as se,b9 as He,a4 as Tl,b2 as Al,aF as Fl,aK as Ue,aH as ze,ad as ql,be as xe,bT as Ne,aC as Dl}from"./index-BjdGY0D1.js";import{V as wl}from"./VSlider-Dt4jt2Zl.js";import{V as he}from"./VSelect-cNIaLpz4.js";import{V as Ae}from"./VSwitch-CvtgmnVD.js";import{a as Ge,V as We}from"./VToolbar-DyyzvXAh.js";import{V as Ol}from"./VAlert-DfNKgxBR.js";import{V as je}from"./VDialog-B7h8eW0m.js";import"./VVirtualScroll-Ck3MSSZi.js";import"./VCheckboxBtn-B_ZAO1Qo.js";const El=qe({dotColor:String,fillDot:Boolean,hideDot:Boolean,icon:Ye,iconColor:String,lineColor:String,...we(),...Xe(),...Ke(),...Qe()},"VTimelineDivider"),Il=Fe()({name:"VTimelineDivider",props:El(),setup(t,S){let{slots:h}=S;const{sizeClasses:g,sizeStyles:s}=il(t,"v-timeline-divider__dot"),{backgroundColorStyles:D,backgroundColorClasses:m}=Be(()=>t.dotColor),{roundedClasses:H}=ol(t,"v-timeline-divider__dot"),{elevationClasses:w}=rl(t),{backgroundColorClasses:x,backgroundColorStyles:u}=Be(()=>t.lineColor);return De(()=>z("div",{class:Q(["v-timeline-divider",{"v-timeline-divider--fill-dot":t.fillDot},t.class]),style:ie(t.style)},[z("div",{class:Q(["v-timeline-divider__before",x.value]),style:ie(u.value)},null),!t.hideDot&&z("div",{key:"dot",class:Q(["v-timeline-divider__dot",w.value,H.value,g.value]),style:ie(s.value)},[z("div",{class:Q(["v-timeline-divider__inner-dot",m.value,H.value]),style:ie(D.value)},[h.default?l(ul,{key:"icon-defaults",disabled:!t.icon,defaults:{VIcon:{color:t.iconColor,icon:t.icon,size:t.size}}},h.default):l(K,{key:"icon",color:t.iconColor,icon:t.icon,size:t.size},null)])]),z("div",{class:Q(["v-timeline-divider__after",x.value]),style:ie(u.value)},null)])),{}}}),nl=qe({density:String,dotColor:String,fillDot:Boolean,hideDot:Boolean,hideOpposite:{type:Boolean,default:void 0},icon:Ye,iconColor:String,lineInset:[Number,String],side:{type:String,validator:t=>t==null||["start","end"].includes(t)},...we(),...pl(),...Qe(),...Xe(),...Ke(),...Je()},"VTimelineItem"),me=Fe()({name:"VTimelineItem",props:nl(),setup(t,S){let{slots:h}=S;const{dimensionStyles:g}=dl(t),s=ml(0),D=U();return le(D,m=>{m&&(s.value=m.$el.querySelector(".v-timeline-divider__dot")?.getBoundingClientRect().width??0)},{flush:"post"}),De(()=>z("div",{class:Q(["v-timeline-item",{"v-timeline-item--fill-dot":t.fillDot,"v-timeline-item--side-start":t.side==="start","v-timeline-item--side-end":t.side==="end"},t.class]),style:ie([{"--v-timeline-dot-size":be(s.value),"--v-timeline-line-inset":t.lineInset?`calc(var(--v-timeline-dot-size) / 2 + ${be(t.lineInset)})`:be(0)},t.style])},[z("div",{class:"v-timeline-item__body",style:ie(g.value)},[h.default?.()]),l(Il,{ref:D,hideDot:t.hideDot,icon:t.icon,iconColor:t.iconColor,size:t.size,elevation:t.elevation,dotColor:t.dotColor,fillDot:t.fillDot,rounded:t.rounded},{default:h.icon}),t.density!=="compact"&&z("div",{class:"v-timeline-item__opposite"},[!t.hideOpposite&&h.opposite?.()])])),{}}}),Rl=qe({align:{type:String,default:"center",validator:t=>["center","start"].includes(t)},direction:{type:String,default:"vertical",validator:t=>["vertical","horizontal"].includes(t)},justify:{type:String,default:"auto",validator:t=>["auto","center"].includes(t)},side:{type:String,validator:t=>t==null||["start","end"].includes(t)},lineThickness:{type:[String,Number],default:2},lineColor:String,truncateLine:{type:String,validator:t=>["start","end","both"].includes(t)},...bl(nl({lineInset:0}),["dotColor","fillDot","hideOpposite","iconColor","lineInset","size"]),...we(),..._l(),...Je(),...yl()},"VTimeline"),Ml=Fe()({name:"VTimeline",props:Rl(),setup(t,S){let{slots:h}=S;const{themeClasses:g}=vl(t),{densityClasses:s}=cl(t),{rtlClasses:D}=fl();gl({VTimelineDivider:{lineColor:ee(()=>t.lineColor)},VTimelineItem:{density:ee(()=>t.density),dotColor:ee(()=>t.dotColor),fillDot:ee(()=>t.fillDot),hideOpposite:ee(()=>t.hideOpposite),iconColor:ee(()=>t.iconColor),lineColor:ee(()=>t.lineColor),lineInset:ee(()=>t.lineInset),size:ee(()=>t.size)}});const m=j(()=>{const w=t.side?t.side:t.density!=="default"?"end":null;return w&&`v-timeline--side-${w}`}),H=j(()=>{const w=["v-timeline--truncate-line-start","v-timeline--truncate-line-end"];switch(t.truncateLine){case"both":return w;case"start":return w[0];case"end":return w[1];default:return null}});return De(()=>l(t.tag,{class:Q(["v-timeline",`v-timeline--${t.direction}`,`v-timeline--align-${t.align}`,`v-timeline--justify-${t.justify}`,H.value,{"v-timeline--inset-line":!!t.lineInset},g.value,s.value,m.value,D.value,t.class]),style:ie([{"--v-timeline-line-thickness":be(t.lineThickness)},t.style])},h)),{}}}),Bl=ge({__name:"DSPPipeline",props:{dsp:{},selected:{}},emits:["onSelect","onAddFilter","onMoveFilter","onDeleteFilter"],setup(t,{emit:S}){const h=Oe(),g=t,s=S,D=V=>g.selected===V?"primary":"secondary",m=V=>V==="input"||V==="output"?!1:!g.dsp.filters[V].enabled,H=V=>g.selected===V?"primary":h.global.current.value.dark?"grey-darken-3":"grey-lighten-3",w=V=>({"filter-selected":g.selected===V}),x=V=>{s("onSelect",V)},u=(V,E)=>{s("onMoveFilter",{index:V,direction:E})},k=V=>{s("onDeleteFilter",V)},M=function(V,E){const q=[{label:"settings.dsp.move_up",labelArgs:[],action:()=>{u(E,"up")},disabled:E===0,icon:"mdi-arrow-up"},{label:"settings.dsp.move_down",labelArgs:[],action:()=>{u(E,"down")},disabled:E===g.dsp.filters.length-1,icon:"mdi-arrow-down"},{label:"settings.dsp.delete_filter",labelArgs:[],action:()=>{k(E)},icon:"mdi-delete"}];hl.emit("contextmenu",{items:q,posX:V.clientX,posY:V.clientY})};return(V,E)=>(c(),$(Ml,{density:"compact",side:"end"},{default:a(()=>[l(me,{"dot-color":D("input"),size:"x-small",onClick:E[0]||(E[0]=q=>x("input"))},{default:a(()=>[l(B,{flat:"",rounded:"pill",color:H("input"),class:Q([w("input"),"dsp-pipeline-card"])},{default:a(()=>[l(ae,{class:"px-3 py-1"},{default:a(()=>[f(A(V.$t("settings.dsp.input")),1)]),_:1})]),_:1},8,["color","class"])]),_:1},8,["dot-color"]),l(me,{"hide-dot":!0,size:"x-small"}),(c(!0),pe(fe,null,Ee(t.dsp.filters,(q,I)=>(c(),$(me,{key:I,"dot-color":D(I),size:"x-small","hide-dot":m(I),onClick:oe=>x(I),onContextmenu:Ze(oe=>M(oe,I),["prevent"])},{default:a(()=>[l(B,{flat:"",rounded:"pill",color:H(I),class:Q([w(I),"dsp-pipeline-card"])},{default:a(()=>[l(ae,{class:"px-3 py-1"},{default:a(()=>[f(A(V.$t(`settings.dsp.types.${q.type}`)),1)]),_:2},1024)]),_:2},1032,["color","class"])]),_:2},1032,["dot-color","hide-dot","onClick","onContextmenu"]))),128)),l(me,{"dot-color":"secondary",size:"x-small","hide-dot":!0},{default:a(()=>[l(B,{outlined:"",rounded:"pill",class:"dsp-pipeline-card add-filter-btn",elevation:0,onClick:E[1]||(E[1]=q=>s("onAddFilter"))},{default:a(()=>[l(ae,{class:"py-1 d-flex align-center"},{default:a(()=>[l(K,{size:"small",class:"mr-1"},{default:a(()=>[...E[3]||(E[3]=[f("mdi-plus",-1)])]),_:1}),f(" "+A(V.$t("settings.dsp.filter.add")),1)]),_:1})]),_:1})]),_:1}),l(me,{"hide-dot":!0,size:"x-small"}),l(me,{"dot-color":D("output"),size:"x-small",onClick:E[2]||(E[2]=q=>x("output"))},{default:a(()=>[l(B,{flat:"",rounded:"pill",color:H("output"),class:Q([w("output"),"dsp-pipeline-card"])},{default:a(()=>[l(ae,{class:"px-3 py-1"},{default:a(()=>[f(A(V.$t("settings.dsp.output")),1)]),_:1})]),_:1},8,["color","class"])]),_:1},8,["dot-color"])]),_:1}))}}),Hl=el(Bl,[["__scopeId","data-v-0e0b8e42"]]),Ul={style:{"min-width":"100px"},class:"v-label pl-2"},zl={style:{"min-width":"40px"},class:"pl-2"},J=ge({__name:"DSPSlider",props:Vl({type:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const S=t,h=Ie(t,"modelValue"),g=U(!1),s=j(()=>S.type==="gain"?{min:-15,max:15,step:.1,label:O("settings.dsp.parameter.gain"),unit:"dB",is_log:!1}:S.type==="q"?{min:.1,max:20,step:.1,label:O("settings.dsp.parameter.q_factor"),unit:"",is_log:!1}:S.type==="frequency"?{min:20,max:2e4,step:1,label:O("settings.dsp.parameter.frequency"),unit:"Hz",is_log:!0}:S.type),D=j({get:()=>g.value?h.value.toString():h.value>1e3?h.value.toFixed(0):h.value>100?h.value.toFixed(1):h.value.toFixed(2),set:u=>{h.value=Number(u)}}),m=j({get:()=>s.value.is_log?Math.log10(h.value):h.value,set:u=>{s.value.is_log?h.value=Math.pow(10,u):h.value=u}}),H=j(()=>s.value.is_log?Math.log10(s.value.max):s.value.max),w=j(()=>s.value.is_log?Math.log10(s.value.min):s.value.min),x=j(()=>s.value.is_log?Math.log10(s.value.step):s.value.step);return(u,k)=>(c(),$(te,{flat:"",color:"transparent"},{default:a(()=>[l(ae,{class:"d-flex align-center gap-4"},{default:a(()=>[z("span",Ul,A(s.value.label),1),l(wl,{modelValue:m.value,"onUpdate:modelValue":k[0]||(k[0]=M=>m.value=M),min:w.value,max:H.value,step:x.value,"hide-details":"",class:"flex-grow-1 pr-4",density:"compact",color:"primary"},null,8,["modelValue","min","max","step"]),l(ll,{modelValue:D.value,"onUpdate:modelValue":k[1]||(k[1]=M=>D.value=M),type:"number","hide-details":"",density:"compact",style:{"max-width":"100px"},onFocus:k[2]||(k[2]=M=>g.value=!0),onBlur:k[3]||(k[3]=M=>g.value=!1)},null,8,["modelValue"]),z("span",zl,A(s.value.unit),1)]),_:1})]),_:1}))}}),xl={class:"d-flex flex-wrap justify-end align-center ga-2 pr-2"},Nl={class:"d-flex align-center pl-1"},Gl=ge({__name:"DSPParametricEQ",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S={PK:P.PEAK,PEQ:P.PEAK,HP:P.HIGH_PASS,HPQ:P.HIGH_PASS,LP:P.LOW_PASS,LPQ:P.LOW_PASS,LS:P.LOW_SHELF,HS:P.HIGH_SHELF,NO:P.NOTCH},h={[P.PEAK]:"PK",[P.HIGH_PASS]:"HP",[P.LOW_PASS]:"LP",[P.LOW_SHELF]:"LS",[P.HIGH_SHELF]:"HS",[P.NOTCH]:"NO"},g=Object.entries(F).map(([n,e])=>({title:O(`settings.dsp.channels.${n}`),value:e})),s=n=>{const e=n.split(`
2
- `),o=[];let L=!1,T={},C=F.ALL;for(const d of e)if(d.startsWith("Channel:")){const v=d.match(/Channel:\s*(.+)/);if(v&&v[1]){const _=v[1].trim().toUpperCase();_==="ALL"||_==="1 2"||_==="L R"?C=F.ALL:_==="L"||_==="1"||_==="FL"?(C=F.FL,L=!0):(_==="R"||_==="2"||_==="FR")&&(C=F.FR,L=!0)}T[C]||(T[C]=0)}else if(d.startsWith("Filter")){const v=d.match(/Filter(?:\s+\d+)?:\s+(ON|OFF)\s+(\w+)\s+(?:Fc\s+)?(\d+\.?\d*)\s*(?:Hz)?\s+(?:Gain\s+)?(-?\d+\.?\d*)\s+dB\s+(?:(?:Q\s+)?(\d+\.?\d*)|(?:BW\s+Oct\s+)(\d+\.?\d*))/);if(v){const[_,X,Z,Re,Ce,ke,Y]=v;Z!=="None"&&o.push({frequency:parseFloat(Re),gain:parseFloat(Ce),q:parseFloat(ke),type:S[Z]||P.PEAK,enabled:X==="ON",channel:C})}}else if(d.startsWith("Preamp")){const v=d.match(/Preamp:\s*(-?\d+\.?\d*)\s+dB/);v&&(T[C]=parseFloat(v[1]))}let y;L?y=u.value.bands.filter(d=>!o.some(v=>v.channel===d.channel||v.channel===F.ALL||d.channel===F.ALL)):R.value!==F.ALL?(y=u.value.bands.filter(d=>d.channel!==F.ALL&&d.channel!==R.value),T.ALL&&(T[R.value]=T.ALL,T.ALL=0),o.forEach(d=>{d.channel=R.value})):(y=[],u.value.per_channel_preamp={}),u.value.bands=[...y,...o],Object.keys(T).length>0?(T.ALL&&(u.value.preamp=T.ALL),Object.entries(T).forEach(([d,v])=>{d!==F.ALL&&(u.value.per_channel_preamp[d]=v)})):(u.value.preamp=0,u.value.per_channel_preamp={}),Le(()=>{W.value=-1})},D=n=>{const e=n.target;if(e.files&&e.files[0]){const o=e.files[0],L=new FileReader;L.onload=T=>{T.target?.result&&s(T.target.result)},L.readAsText(o)}},m=U(null),H=()=>{m.value?.click()},w=()=>{let n="";if(n+=`Preamp: ${ve.value.toFixed(2)} dB
3
- `,re.value){const T=Object.values(F);for(const C of T){if(C===F.ALL)continue;const y=g.find(v=>v.value===C)?.title||C;n+=`
4
- # ${y}
5
- `,n+=`Channel: ${C===F.FL?"L":"R"}
6
- `,u.value.per_channel_preamp[C]!==void 0&&(n+=`Preamp: ${u.value.per_channel_preamp[C].toFixed(2)} dB
7
- `);let d=1;u.value.bands.forEach(v=>{if(v.channel===C||v.channel===F.ALL){const _=h[v.type];n+=`Filter ${d++}: ${v.enabled?"ON":"OFF"} ${_} Fc ${v.frequency.toFixed(1)} Hz Gain ${v.gain.toFixed(2)} dB Q ${v.q.toFixed(3)}
8
- `}})}}else u.value.bands.forEach((T,C)=>{const y=h[T.type];n+=`Filter ${C+1}: ${T.enabled?"ON":"OFF"} ${y} Fc ${T.frequency.toFixed(1)} Hz Gain ${T.gain.toFixed(2)} dB Q ${T.q.toFixed(3)}
9
- `});const e=new Blob([n],{type:"text/plain"}),o=URL.createObjectURL(e),L=document.createElement("a");L.href=o,L.download=`music_assistant_eq_settings_${new Date().toISOString().split("T")[0]}.txt`,document.body.appendChild(L),L.click(),document.body.removeChild(L),URL.revokeObjectURL(o)},x=Oe(),u=Ie(t,"modelValue"),k=U(null),M=U(null),V=Object.values(P).map(n=>({title:O(`settings.dsp.parametric_eq.filter_types.${n}`),value:n})),E=n=>![P.HIGH_PASS,P.LOW_PASS,P.NOTCH].includes(n),q=U({width:0,height:0,min_gain:-20,max_gain:20,min_freq:20,max_freq:2e4,padding_lr:40,padding_tb:20}),I=()=>{if(!k.value||!M.value)return;const n=x.global.current.value.dark,e=k.value.getContext("2d");if(!e)return;k.value.width=M.value.clientWidth*2,k.value.height=M.value.clientHeight*2,q.value.width=k.value.width/2,q.value.height=k.value.height/2,e.scale(2,2),e.clearRect(0,0,k.value.width,k.value.height),ce(e,q.value);const o=e.canvas.width/2;e.canvas.height/2;const L=(C,y,d)=>{let v=`hsla(${y*360/u.value.bands.length}, 60%, ${n?70:50}%, 0.5)`;d.beginPath(),y===W.value?(d.lineWidth=5,v=`hsla(${y*360/u.value.bands.length}, 70%, ${n?70:60}%, 1)`):d.lineWidth=2,d.strokeStyle=v;const _=new Float32Array(o);for(let Y=0;Y<o;Y++)_[Y]=r(Y,q.value);const X=new Float32Array(o),Z=new Float32Array(o);oe(ye,C).getFrequencyResponse(_,X,Z);for(let Y=q.value.padding_lr;Y<o-q.value.padding_lr;Y++){const sl=20*Math.log10(X[Y]),Me=p(sl,q.value);Y===q.value.padding_lr?d.moveTo(Y,Me):d.lineTo(Y,Me)}d.stroke();const Ce=i(C.frequency,q.value),ke=p(C.gain,q.value);return d.beginPath(),d.fillStyle=v,d.arc(Ce,ke,6,0,2*Math.PI),d.fill(),{frequencies:_,magResponse:X}},T=(C,y)=>{y.lineWidth=3,n?y.strokeStyle="#fff":y.strokeStyle="#000",y.beginPath();for(let d=q.value.padding_lr;d<o-q.value.padding_lr;d++){const v=p(C[d],q.value);d===q.value.padding_lr?y.moveTo(d,v):y.lineTo(d,v)}y.stroke()};if(R.value===F.ALL&&re.value){const C=Object.values(F).filter(d=>d!==F.ALL),y={};C.forEach(d=>{y[d]=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[d]??0))}),u.value.bands.forEach((d,v)=>{if(d.enabled){const{magResponse:_}=L(d,v,e);if(d.channel===F.ALL)C.forEach(X=>{for(let Z=0;Z<o;Z++)y[X][Z]+=20*Math.log10(_[Z])});else for(let X=0;X<o;X++)y[d.channel][X]+=20*Math.log10(_[X])}}),C.forEach(d=>{T(y[d],e)})}else{const C=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[R.value]??0));u.value.bands.forEach((y,d)=>{if(y.enabled&&y.channel===R.value||y.channel===F.ALL){const{magResponse:v}=L(y,d,e);for(let _=0;_<o;_++)C[_]+=20*Math.log10(v[_])}}),T(C,e)}},oe=(n,e)=>{const o=n.createBiquadFilter();switch(e.type){case P.HIGH_PASS:o.type="highpass";break;case P.LOW_PASS:o.type="lowpass";break;case P.HIGH_SHELF:o.type="highshelf";break;case P.LOW_SHELF:o.type="lowshelf";break;case P.NOTCH:o.type="notch";break;case P.PEAK:o.type="peaking";break}return o.frequency.value=e.frequency,o.Q.value=e.q,o.gain.value=e.gain,o},ye=new AudioContext;j(()=>u.value.bands.map(n=>oe(ye,n)));const re=j(()=>u.value.bands.some(n=>n.channel!==F.ALL)||Object.keys(u.value.per_channel_preamp).length>0&&Object.values(u.value.per_channel_preamp).some(n=>n!==0)),ue=U(!1),W=U(-1),R=U(F.ALL),N=j(()=>u.value.bands[W.value]),ve=j({get:()=>u.value.preamp??0,set:n=>{u.value.preamp=n}}),_e=j({get:()=>u.value.per_channel_preamp[R.value]??0,set:n=>{R.value!==F.ALL&&(u.value.per_channel_preamp[R.value]=n)}}),de=n=>{u.value.bands.splice(n,1),W.value>=u.value.bands.length&&Le(()=>{W.value=u.value.bands.length-1})},Ve=()=>{const n=u.value.bands.length;u.value.bands.push({frequency:1e3,q:1,gain:0,type:P.PEAK,enabled:!0,channel:R.value}),Le(()=>{W.value=n})};le(()=>u.value.preamp,I),le(()=>u.value.per_channel_preamp,I,{deep:!0}),le(()=>(W.value,u.value.bands),()=>{W.value>=u.value.bands.length&&(W.value=u.value.bands.length-1),I()},{deep:!0}),le(()=>R.value,I),le(()=>x.global.current.value.dark,I),Cl(()=>{re.value&&(ue.value=!0)}),Pe(()=>{I(),window.addEventListener("resize",I)});const i=(n,e)=>{const o=Math.log2(n/e.min_freq),L=Math.log2(e.max_freq/e.min_freq);return o/L*(e.width-e.padding_lr*2)+e.padding_lr},r=(n,e)=>{const o=Math.log2(e.max_freq/e.min_freq),L=e.min_freq*Math.pow(2,(n-e.padding_lr)/(e.width-e.padding_lr*2)*o);return Math.min(Math.max(L,e.min_freq),e.max_freq)},p=(n,e)=>e.height/2-n*(e.height-2*e.padding_tb)/(2*Math.max(Math.abs(e.min_gain),Math.abs(e.max_gain))),ce=(n,e)=>{const o=n.canvas.width/2,L=n.canvas.height/2;x.global.current.value.dark?(n.fillStyle="#eee",n.strokeStyle="#eee"):(n.fillStyle="#222",n.strokeStyle="#666"),n.lineWidth=1,[20,50,100,200,500,1e3,2e3,5e3,1e4,2e4].forEach(v=>{const _=i(v,e);n.beginPath(),n.moveTo(_,e.padding_tb),n.lineTo(_,L-e.padding_tb),n.stroke(),n.font="10px Arial",n.textAlign="center",n.fillText(v>=1e3?`${v/1e3}k`:v.toString(),_,L-5)});const y=e.max_gain-e.min_gain,d=Math.ceil(y/(e.height/30));for(let v=e.min_gain;v<=e.max_gain;v+=d){const _=p(v,e);n.beginPath(),n.moveTo(e.padding_lr,_),n.lineTo(o-e.padding_lr,_),n.stroke(),n.font="10px Arial",n.textAlign="right",n.fillText(`${v}dB`,e.padding_lr-3,_+3)}};return Pe(()=>{const n=new ResizeObserver(()=>{I()});return M.value&&n.observe(M.value),()=>{n.disconnect()}}),(n,e)=>(c(),$(tl,{class:"pa-2"},{default:a(()=>[z("div",xl,[ue.value?(c(),$(he,{key:1,modelValue:R.value,"onUpdate:modelValue":e[1]||(e[1]=o=>R.value=o),class:"pa-2",items:b(g),label:b(O)("settings.dsp.parametric_eq.edited_channel"),variant:"outlined",density:"comfortable",style:{"min-width":"250px"},"hide-details":""},null,8,["modelValue","items","label"])):(c(),$(B,{key:0,variant:"outlined",onClick:e[0]||(e[0]=()=>{ue.value=!0})},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[12]||(e[12]=[f("mdi-speaker-multiple",-1)])]),_:1}),f(" "+A(b(O)("settings.dsp.parametric_eq.show_multichannel_controls")),1)]),_:1})),l(B,{variant:"outlined",onClick:H},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[13]||(e[13]=[f("mdi-file-import",-1)])]),_:1}),f(" "+A(b(O)("settings.dsp.parametric_eq.import_apo")),1)]),_:1}),l(B,{variant:"outlined",onClick:w},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[14]||(e[14]=[f("mdi-file-export",-1)])]),_:1}),f(" "+A(b(O)("settings.dsp.parametric_eq.export_apo")),1)]),_:1}),z("input",{ref_key:"fileInputRef",ref:m,type:"file",accept:".txt",class:"d-none",onChange:D},null,544)]),l(te,{elevation:"0",color:"transparent"},{default:a(()=>[z("div",{ref_key:"graphContainer",ref:M,class:"graph-container"},[z("canvas",{ref_key:"canvas",ref:k,class:"frequency-graph"},null,512)],512)]),_:1}),l(te,{elevation:"0",color:"transparent",class:"border-t border-b rounded-0"},{default:a(()=>[l(ae,{class:"pa-0"},{default:a(()=>[l(kl,{modelValue:W.value,"onUpdate:modelValue":e[2]||(e[2]=o=>W.value=o),class:"mb-0 pa-2",mandatory:"","selected-class":"primary"},{default:a(()=>[(c(),$(Se,{key:-1,value:-1,filter:"",variant:"elevated"},{default:a(()=>[f(A(b(O)("settings.dsp.parametric_eq.preamp",{index:100})),1)]),_:1})),(c(!0),pe(fe,null,Ee(u.value.bands,(o,L)=>(c(),$(Se,{key:L,value:L,class:Q({"opacity-50":!o.enabled}),filter:"",variant:"elevated"},{default:a(()=>[f(A(o.channel===b(F).ALL?b(O)("settings.dsp.parametric_eq.band",{index:L+1}):b(O)("settings.dsp.parametric_eq.band_channel",{index:L+1,channel:b(O)(`settings.dsp.channels_compact.${o.channel}`)})),1)]),_:2},1032,["value","class"]))),128)),l(Se,{variant:"outlined",onClick:Ve},{default:a(()=>[l(K,{icon:"mdi-plus",start:""}),f(" "+A(R.value===b(F).ALL?b(O)("settings.dsp.parametric_eq.add_band"):b(O)("settings.dsp.parametric_eq.add_band_channel",{channel:b(O)(`settings.dsp.channels.${R.value}`)})),1)]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),W.value===-1?(c(),$(te,{key:0,elevation:"0",color:"transparent"},{default:a(()=>[l(ae,null,{default:a(()=>[l(al,{dense:""},{default:a(()=>[l($e,{cols:"12"},{default:a(()=>[l(J,{modelValue:ve.value,"onUpdate:modelValue":e[3]||(e[3]=o=>ve.value=o),type:"gain"},null,8,["modelValue"]),R.value!==b(F).ALL?(c(),$(J,{key:0,modelValue:_e.value,"onUpdate:modelValue":e[4]||(e[4]=o=>_e.value=o),type:{min:-15,max:15,step:.1,label:b(O)("settings.dsp.parametric_eq.per_channel_preamp",{channel:b(O)(`settings.dsp.channels.${R.value}`)}),unit:"dB",is_log:!1}},null,8,["modelValue","type"])):G("",!0)]),_:1})]),_:1})]),_:1})]),_:1})):G("",!0),N.value?(c(),pe(fe,{key:1},[l(Sl,null,{default:a(()=>[z("div",Nl,[l(Ae,{modelValue:N.value.enabled,"onUpdate:modelValue":e[5]||(e[5]=o=>N.value.enabled=o),label:b(O)("settings.dsp.parametric_eq.enable_band"),density:"comfortable","hide-details":"",color:"primary"},null,8,["modelValue","label"]),l(Te),l(B,{color:"error",variant:"tonal",onClick:e[6]||(e[6]=o=>de(W.value))},{default:a(()=>[l(K,null,{default:a(()=>[...e[15]||(e[15]=[f("mdi-delete",-1)])]),_:1}),f(" "+A(b(O)("settings.dsp.parametric_eq.delete_band")),1)]),_:1})])]),_:1}),l(he,{modelValue:N.value.type,"onUpdate:modelValue":e[7]||(e[7]=o=>N.value.type=o),items:b(V),label:b(O)("settings.dsp.parametric_eq.filter_type"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"]),l(J,{modelValue:N.value.frequency,"onUpdate:modelValue":e[8]||(e[8]=o=>N.value.frequency=o),type:"frequency"},null,8,["modelValue"]),E(N.value.type)?(c(),$(J,{key:0,modelValue:N.value.gain,"onUpdate:modelValue":e[9]||(e[9]=o=>N.value.gain=o),type:"gain"},null,8,["modelValue"])):G("",!0),l(J,{modelValue:N.value.q,"onUpdate:modelValue":e[10]||(e[10]=o=>N.value.q=o),type:"q"},null,8,["modelValue"]),ue.value?(c(),$(he,{key:1,modelValue:N.value.channel,"onUpdate:modelValue":e[11]||(e[11]=o=>N.value.channel=o),items:b(g),label:b(O)("settings.dsp.parametric_eq.channel"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"])):G("",!0)],64)):G("",!0)]),_:1}))}}),Wl=el(Gl,[["__scopeId","data-v-ac29d681"]]),jl=ge({__name:"DSPToneControl",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S=Ie(t,"modelValue");return(h,g)=>(c(),pe(fe,null,[l(J,{modelValue:S.value.bass_level,"onUpdate:modelValue":g[0]||(g[0]=s=>S.value.bass_level=s),type:{min:-10,max:10,step:.1,label:h.$t("settings.dsp.tone_control.bass_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.mid_level,"onUpdate:modelValue":g[1]||(g[1]=s=>S.value.mid_level=s),type:{min:-10,max:10,step:.1,label:h.$t("settings.dsp.tone_control.mid_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.treble_level,"onUpdate:modelValue":g[2]||(g[2]=s=>S.value.treble_level=s),type:{min:-10,max:10,step:.1,label:h.$t("settings.dsp.tone_control.treble_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"])],64))}}),Ql={key:0},Kl={class:"d-none d-md-inline"},Xl={class:"d-none d-md-inline"},it=ge({__name:"EditPlayerDsp",props:{playerId:{}},setup(t){const{t:S}=Ll();Dl();const h=Oe(),g=t,s=U(),D=U([]),m=U(null),H=U(!1),w=U(!1),x=U(ne.PARAMETRIC_EQ),u=U("");U(window.innerWidth);const{mobile:k}=Pl();let M=!1,V;const E=Object.values(ne).map(i=>({value:i,title:S(`settings.dsp.types.${i}`)})),q=()=>h.global.current.value.dark?"bg-grey-darken-3":"bg-grey-lighten-3",I=i=>{m.value=i},oe=i=>S(i==="input"?"settings.dsp.input":i==="output"?"settings.dsp.output":`settings.dsp.types.${s.value?.filters[i].type}`),ye=()=>{if(!s.value)return;let i;switch(x.value){case ne.PARAMETRIC_EQ:i={preamp:0,per_channel_preamp:{},enabled:!0,type:ne.PARAMETRIC_EQ,bands:[]};break;case ne.TONE_CONTROL:i={enabled:!0,type:ne.TONE_CONTROL,bass_level:0,mid_level:0,treble_level:0};break;default:return}s.value.filters.push(i),H.value=!1,I(s.value.filters.length-1)},re=(i,r)=>{if(!s.value)return;const p=r==="up"?i-1:i+1;if(p<0||p>=s.value.filters.length)return;const[ce]=s.value.filters.splice(i,1);s.value.filters.splice(p,0,ce),m.value===i?m.value=p:m.value===p&&(m.value=i)},ue=i=>{m.value===i&&(m.value="input"),s.value?.filters.splice(i,1)},W=async i=>{!i||!i.config||(m.value="input",s.value=i.config)},R=async()=>{if(!s.value||!u.value.trim())return;const i={name:u.value.trim(),config:s.value};try{await se.saveDSPPreset(i),u.value="",w.value=!1}catch(r){console.error("Failed to save DSP preset:",r)}},N=async i=>{!i||!confirm(S("settings.dsp.presets.remove_confirm"))||(await se.removeDSPPreset(i),D.value=D.value.filter(r=>r.preset_id!==i))};le(k,i=>{!i&&m.value===null&&I("input")},{immediate:!0});const ve=j(()=>$l(se.players[g.playerId],27));le(()=>g.playerId,async i=>{V&&V(),M=!0,i&&(s.value=await se.getDSPConfig(i)),V=se.subscribe(He.PLAYER_DSP_CONFIG_UPDATED,r=>{M=!0,s.value=r.data},g.playerId)},{immediate:!0});const _e=se.subscribe(He.DSP_PRESETS_UPDATED,i=>{D.value=i.data});Pe(async()=>{D.value=await se.getDSPPresets()}),Tl(()=>{V&&V(),_e()});let de=null;const Ve=i=>{de&&clearTimeout(de),de=setTimeout(async()=>{g.playerId&&await se.saveDSPConfig(g.playerId,i)},2e3)};return le(s,(i,r)=>{if(M){de&&clearTimeout(de),M=!1;return}r!==null&&i&&Ve(i)},{deep:!0}),(i,r)=>s.value?(c(),pe("section",Ql,[l(We,{color:"transparent",class:"border-b pr-4"},{default:a(()=>[l(Ae,{modelValue:s.value.enabled,"onUpdate:modelValue":r[0]||(r[0]=p=>s.value.enabled=p),"hide-details":"",color:"primary",class:"pl-4"},null,8,["modelValue"]),l(Ge,null,{default:a(()=>[f(A(i.$t("settings.dsp.configure_on",{name:ve.value})),1)]),_:1}),l(Al,{"offset-y":"",transition:"slide-y-transition"},{activator:a(({props:p})=>[l(B,ql(p,{class:["mr-4",q()]}),{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[19]||(r[19]=[f(" mdi-tray-arrow-down ",-1)])]),_:1}),z("span",Kl,A(i.$t("settings.dsp.presets.load")),1)]),_:1},16,["class"])]),default:a(()=>[l(Fl,null,{default:a(()=>[D.value.length===0?(c(),$(ze,{key:0},{default:a(()=>[l(Ue,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.empty_warning")),1)]),_:1})]),_:1})):(c(!0),pe(fe,{key:1},Ee(D.value,p=>(c(),$(ze,{key:p.preset_id,onClick:ce=>W(p)},{append:a(()=>[l(B,{icon:"mdi-delete",variant:"text",density:"compact",onClick:Ze(ce=>N(p.preset_id),["stop"])},null,8,["onClick"])]),default:a(()=>[l(Ue,null,{default:a(()=>[f(A(p.name),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1}),l(B,{class:Q(q()),onClick:r[1]||(r[1]=p=>w.value=!0)},{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[20]||(r[20]=[f(" mdi-content-save ",-1)])]),_:1}),z("span",Xl,A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["class"])]),_:1}),l(tl,{class:"pa-4"},{default:a(()=>[s.value.enabled?G("",!0):(c(),$(Ol,{key:0,type:"info",class:"mt-4",color:"transparent"},{default:a(()=>[f(A(i.$t("settings.dsp.disabled_message")),1)]),_:1})),l(al,{class:Q([{"justify-center":b(k)},"flex-nowrap"])},{default:a(()=>[!b(k)||m.value===null?(c(),$($e,{key:0,class:Q(["flex-grow-0 flex-shrink-0",{"border-e pr-4":!b(k)}]),"align-self":"start"},{default:a(()=>[l(Hl,{dsp:s.value,selected:m.value,onOnSelect:I,onOnAddFilter:r[2]||(r[2]=p=>H.value=!0),onOnMoveFilter:r[3]||(r[3]=p=>re(p.index,p.direction)),onOnDeleteFilter:ue},null,8,["dsp","selected"])]),_:1},8,["class"])):G("",!0),m.value!=null?(c(),$($e,{key:1,style:{"min-width":"0"}},{default:a(()=>[l(We,{density:"compact",color:i.$vuetify.theme.current.dark?"surface":"surface-light",class:"border-b"},{default:a(()=>[b(k)?(c(),$(B,{key:0,class:"hidden-xs-only",icon:"",onClick:r[4]||(r[4]=p=>m.value=null)},{default:a(()=>[l(K,null,{default:a(()=>[...r[21]||(r[21]=[f("mdi-arrow-left",-1)])]),_:1})]),_:1})):G("",!0),l(Ge,null,{default:a(()=>[f(A(oe(m.value)),1)]),_:1}),typeof m.value=="number"&&!b(k)&&m.value>0?(c(),$(B,{key:1,icon:"",onClick:r[5]||(r[5]=p=>re(m.value,"up"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[22]||(r[22]=[f("mdi-arrow-up",-1)])]),_:1})]),_:1})):G("",!0),typeof m.value=="number"&&!b(k)&&m.value<s.value.filters.length-1?(c(),$(B,{key:2,icon:"",onClick:r[6]||(r[6]=p=>re(m.value,"down"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[23]||(r[23]=[f("mdi-arrow-down",-1)])]),_:1})]),_:1})):G("",!0),typeof m.value=="number"?(c(),$(Ae,{key:3,modelValue:s.value.filters[m.value].enabled,"onUpdate:modelValue":r[7]||(r[7]=p=>s.value.filters[m.value].enabled=p),"hide-details":"",color:"primary",class:"mr-4"},null,8,["modelValue"])):G("",!0),typeof m.value=="number"?(c(),$(B,{key:4,icon:"",onClick:r[8]||(r[8]=p=>ue(m.value))},{default:a(()=>[l(K,null,{default:a(()=>[...r[24]||(r[24]=[f("mdi-delete",-1)])]),_:1})]),_:1})):G("",!0)]),_:1},8,["color"]),m.value==="input"?(c(),$(te,{key:0,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.input_gain,"onUpdate:modelValue":r[9]||(r[9]=p=>s.value.input_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):m.value==="output"?(c(),$(te,{key:1,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.output_gain,"onUpdate:modelValue":r[10]||(r[10]=p=>s.value.output_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):(c(),$(te,{key:2,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[s.value.filters[m.value].type===b(ne).PARAMETRIC_EQ?(c(),$(Wl,{key:0,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[11]||(r[11]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):G("",!0),s.value.filters[m.value].type===b(ne).TONE_CONTROL?(c(),$(jl,{key:1,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[12]||(r[12]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):G("",!0)]),_:1},8,["color"]))]),_:1})):G("",!0)]),_:1},8,["class"])]),_:1}),l(je,{modelValue:w.value,"onUpdate:modelValue":r[15]||(r[15]=p=>w.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(xe,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1}),l(ae,null,{default:a(()=>[l(ll,{modelValue:u.value,"onUpdate:modelValue":r[13]||(r[13]=p=>u.value=p),label:i.$t("settings.dsp.presets.name"),placeholder:i.$t("settings.dsp.presets.name_placeholder"),variant:"outlined"},null,8,["modelValue","label","placeholder"])]),_:1}),l(Ne,null,{default:a(()=>[l(Te),l(B,{onClick:r[14]||(r[14]=p=>w.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",disabled:!u.value.trim(),onClick:R},{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),l(je,{modelValue:H.value,"onUpdate:modelValue":r[18]||(r[18]=p=>H.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(xe,null,{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1}),l(ae,null,{default:a(()=>[l(he,{modelValue:x.value,"onUpdate:modelValue":r[16]||(r[16]=p=>x.value=p),items:b(E),label:i.$t("settings.dsp.filter.type")},null,8,["modelValue","items","label"])]),_:1}),l(Ne,null,{default:a(()=>[l(Te),l(B,{onClick:r[17]||(r[17]=p=>H.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",onClick:ye},{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])):G("",!0)}});export{it as default};
@@ -1 +0,0 @@
1
- import{aw as B,J as g,a3 as S,aN as l,b9 as I,a4 as L,L as N,ax as k,ay as u,o as i,aD as r,az as p,aG as d,aB as o,E as m,be as w,bf as f,aL as c,bg as y,b_ as _,cC as P,aS as C,bF as j,c1 as U,bT as H,M as O,aQ as x,b6 as D,bv as z,bL as F,aC as G}from"./index-BjdGY0D1.js";import{E as J}from"./EditConfig-BnGkC7Dx.js";import{n as Q}from"./index.browser-OxPLOBIU.js";import{V as R}from"./VSwitch-CvtgmnVD.js";import"./VForm-D2eK17M_.js";import"./VExpansionPanels-cqvywsgH.js";import"./VDialog-B7h8eW0m.js";import"./VAlert-DfNKgxBR.js";import"./VSlider-Dt4jt2Zl.js";import"./VSelect-cNIaLpz4.js";import"./VVirtualScroll-Ck3MSSZi.js";import"./VCheckboxBtn-B_ZAO1Qo.js";const q={key:0},K={id:"auth",href:"",target:"_blank"},re=B({__name:"EditProvider",props:{instanceId:{}},setup(h){const M=G(),a=g(),V=Q(11),v=g(!1),b=g(!1),T=h;S(()=>{const n=l.subscribe(I.AUTH_SESSION,e=>{if(e.object_id!==V)return;const t=e.data;b.value=!0,window.setTimeout(()=>{const s=document.getElementById("auth");s.setAttribute("href",t),s.click()},100)});L(n)}),N(()=>T.instanceId,async n=>{n&&(a.value=await l.getProviderConfig(n))},{immediate:!0});const A=async function(n){v.value=!0,n.enabled=a.value.enabled,n.name=a.value.name||null,l.saveProviderConfig(a.value.domain,n,a.value.instance_id).then(()=>{M.push({name:"providersettings"})}).catch(e=>{alert(e)}).finally(()=>{v.value=!1,b.value=!1})},E=async function(n,e){v.value=!0;for(const t of Object.values(a.value.values))t.value!==void 0&&e[t.key]==null&&(e[t.key]=t.value);e.session_id=V,l.getProviderConfigEntries(a.value.domain,a.value.instance_id,n,e).then(t=>{a.value.values={};for(const s of t)a.value.values[s.key]=s}).catch(t=>{alert(t)}).finally(()=>{v.value=!1,b.value=!1})},$=function(n){const e=[],{t}=F();for(const s of n)s.includes("@")?e.push(`[${s.replace("@","")}](https://github.com/${s.replace("@","")})`):e.push(s);return`**${t("settings.codeowners")}**: `+e.join(" / ")};return(n,e)=>(u(),k("section",null,[i(U,null,{default:r(()=>[a.value&&o(l).providerManifests[a.value.domain]?(u(),k("div",q,[i(w,null,{default:r(()=>[f(c(n.$t("settings.setup_provider",[o(l).providerManifests[a.value.domain].name])),1)]),_:1}),i(y,{style:{"white-space":"normal"}},{default:r(()=>[f(c(o(l).providerManifests[a.value.domain].description),1)]),_:1}),e[5]||(e[5]=m("br",null,null,-1)),o(l).providerManifests[a.value.domain].codeowners.length?(u(),d(y,{key:0,innerHTML:o(_)($(o(l).providerManifests[a.value.domain].codeowners))},null,8,["innerHTML"])):p("",!0),o(l).providerManifests[a.value.domain].documentation?(u(),d(y,{key:1},{default:r(()=>[m("b",null,c(n.$t("settings.need_help_setup_provider")),1),e[4]||(e[4]=f("  ",-1)),m("a",{onClick:e[0]||(e[0]=t=>o(P)(o(l).providerManifests[a.value.domain].documentation))},c(n.$t("settings.check_docs")),1)]),_:1})):p("",!0),e[6]||(e[6]=m("br",null,null,-1)),i(C),e[7]||(e[7]=m("br",null,null,-1)),e[8]||(e[8]=m("br",null,null,-1)),"name"in a.value?(u(),d(j,{key:2,modelValue:a.value.name,"onUpdate:modelValue":e[1]||(e[1]=t=>a.value.name=t),placeholder:o(l).getProvider(a.value.instance_id)?.name,label:n.$t("settings.provider_name"),variant:"outlined",clearable:""},null,8,["modelValue","placeholder","label"])):p("",!0),"enabled"in a.value?(u(),d(R,{key:3,modelValue:a.value.enabled,"onUpdate:modelValue":e[2]||(e[2]=t=>a.value.enabled=t),label:n.$t("settings.enable_provider"),color:"primary",disabled:!o(l).providerManifests[a.value.domain]?.allow_disable},null,8,["modelValue","label","disabled"])):p("",!0)])):p("",!0),i(C),a.value?(u(),d(J,{key:1,"config-entries":Object.values(a.value.values),disabled:!a.value.enabled,onSubmit:A,onAction:E},null,8,["config-entries","disabled"])):p("",!0)]),_:1}),i(z,{modelValue:v.value,"onUpdate:modelValue":e[3]||(e[3]=t=>v.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:r(()=>[b.value?(u(),d(x,{key:0,style:{"background-color":"white"}},{default:r(()=>[i(w,null,{default:r(()=>[...e[9]||(e[9]=[f("Authenticating...",-1)])]),_:1}),i(y,null,{default:r(()=>[...e[10]||(e[10]=[f("A new tab/popup should be opened where you can authenticate",-1)])]),_:1}),i(H,null,{default:r(()=>[m("a",K,[i(O,null,{default:r(()=>[...e[11]||(e[11]=[f("Click here if the popup did not open",-1)])]),_:1})])]),_:1})]),_:1})):(u(),d(D,{key:1,indeterminate:"",size:"64",color:"primary"}))]),_:1},8,["modelValue"])]))}});export{re as default};
@@ -1 +0,0 @@
1
- import{aw as k,J as m,a3 as S,cD as s,cE as V,aR as e,ax as I,ay as c,o,aD as n,bf as d,aL as f,aB as g,E as p,aG as C,az as E,bg as N,aS as T,c1 as h,b6 as B,bv as w,aC as x}from"./index-BjdGY0D1.js";import{E as D}from"./EditConfig-BnGkC7Dx.js";import{D as v}from"./constants-CXMxJR4j.js";import{V as q}from"./VToolbar-DyyzvXAh.js";import"./VForm-D2eK17M_.js";import"./VExpansionPanels-cqvywsgH.js";import"./VDialog-B7h8eW0m.js";import"./VAlert-DfNKgxBR.js";import"./VSwitch-CvtgmnVD.js";import"./VCheckboxBtn-B_ZAO1Qo.js";import"./VSlider-Dt4jt2Zl.js";import"./VSelect-cNIaLpz4.js";import"./VVirtualScroll-Ck3MSSZi.js";const H=k({__name:"FrontendConfig",setup(L){const y=x(),r=m([]),i=m(!1);S(()=>{const a=localStorage.getItem("frontend.settings.menu_items"),t=a?a.split(","):v;r.value=[{key:"theme",type:s.STRING,label:"theme",default_value:"auto",required:!1,options:[{title:"auto",value:"auto"},{title:"dark",value:"dark"},{title:"light",value:"light"}],multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.theme")},{key:"language",type:s.STRING,label:"language",default_value:"auto",required:!1,options:[{title:"auto",value:"auto"},...V.global.availableLocales.map(l=>({title:l,value:l}))],multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.language")},{key:"menu_items",type:s.STRING,label:"menu_items",default_value:v,required:!1,options:[{title:e("home"),value:"home"},{title:e("search"),value:"search"},{title:e("artists"),value:"artists"},{title:e("albums"),value:"albums"},{title:e("tracks"),value:"tracks"},{title:e("playlists"),value:"playlists"},{title:e("audiobooks"),value:"audiobooks"},{title:e("podcasts"),value:"podcasts"},{title:e("radios"),value:"radios"},{title:e("browse"),value:"browse"},{title:e("settings.settings"),value:"settings"}],multi_value:!0,category:"generic",value:t},{key:"enable_builtin_player",type:s.BOOLEAN,label:"enable_builtin_player",default_value:!0,required:!0,multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.enable_builtin_player")!="false"},{key:"force_mobile_layout",type:s.BOOLEAN,label:"force_mobile_layout",default_value:!1,required:!1,multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.force_mobile_layout")!="false"}]});const _=async function(a){for(const t in a){const l=`frontend.settings.${t}`,u=a[t];u!=null?localStorage.setItem(l,u.toString()):localStorage.removeItem(l)}y.push({name:"home"}).then(()=>{window.location.reload()})},b=async function(a,t){};return(a,t)=>(c(),I("section",null,[o(q,{color:"transparent"},{title:n(()=>[d(f(g(e)("settings.frontend")),1)]),_:1}),o(h,null,{default:n(()=>[o(N,null,{default:n(()=>[d(f(g(e)("settings.frontend_desc")),1)]),_:1}),t[1]||(t[1]=p("br",null,null,-1)),t[2]||(t[2]=p("br",null,null,-1)),o(T),r.value?(c(),C(D,{key:0,"config-entries":r.value,disabled:!1,onSubmit:_,onAction:b},null,8,["config-entries"])):E("",!0)]),_:1}),o(w,{modelValue:i.value,"onUpdate:modelValue":t[0]||(t[0]=l=>i.value=l),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:n(()=>[o(B,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{H as default};
@@ -1 +0,0 @@
1
- import{C as E}from"./Container-vEyxubcK.js";import{aw as S,i as D,aN as k,bt as L,b1 as V,ax as v,ay as o,r as N,o as a,aD as s,az as b,M as I,E as P,aL as z,aX as M,ag as h,aE as x,aG as u,av as d,_ as B,J as C,a3 as A,b9 as T,a4 as W,aR as H,b2 as J,aF as O,aH as w,aB as l,bC as R,aj as $,aJ as y,aS as j,aC as F,ad as G,b6 as Y,bD as X,bw as q}from"./index-BjdGY0D1.js";import{W as K}from"./WidgetRow-CXYVjNw0.js";import{a as Q}from"./PlayerCard-RpvQiENI.js";import{V as Z}from"./VToolbar-DyyzvXAh.js";import{T as ee}from"./Toolbar-94EvSFT-.js";import"./index-kQIztB-E.js";import"./PanelviewItemCompact-C6DCjPZU.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-B8G50Aza.js";import"./VCheckboxBtn-B_ZAO1Qo.js";import"./MediaItemThumb-CMOvHHof.js";import"./VAlert-DfNKgxBR.js";import"./Button-Da2w4xZe.js";import"./VSlider-Dt4jt2Zl.js";const te={class:"mr-3"},ae={key:0},se=S({__name:"PlayersWidgetRow",props:{settings:{},editMode:{type:Boolean}},emits:["update:settings"],setup(i,{emit:c}){const r=D(()=>Object.values(k.players).filter(e=>L(e)).sort((e,t)=>e.name.toUpperCase()>t.name?.toUpperCase()?1:-1).sort((e,t)=>n(e)-n(t))),_=c;function m(e){d.activePlayerId=e.player_id}function n(e){return e.playback_state==V.PLAYING?0:e.playback_state==V.PAUSED?1:e.current_media&&e.powered?3:e.current_media?4:99}return(e,t)=>{const p=M("swiper-slide"),g=M("swiper");return o(),v("div",{class:N(`widget-row ${i.settings&&!i.settings.enabled?"disabled":""}`)},[a(Z,{class:"header",color:"transparent"},{title:s(()=>[P("span",te,z(e.$t("players")),1)]),append:s(()=>[i.editMode?(o(),v("div",ae,[a(I,{icon:i.settings.enabled?"mdi-checkbox-marked":"mdi-checkbox-blank-outline",onClick:t[0]||(t[0]=f=>_("update:settings",{...i.settings,enabled:!i.settings.enabled}))},null,8,["icon"])])):b("",!0)]),_:1}),a(g,{"slides-per-view":"auto","space-between":15,"free-mode":!1,navigation:!1,mousewheel:{forceToAxis:!0,releaseOnEdges:!0}},{default:s(()=>[(o(!0),v(h,null,x(r.value,f=>(o(),u(p,{key:f.player_id},{default:s(()=>[(o(),u(Q,{id:f.player_id,key:f.player_id,player:f,"show-volume-control":!1,"show-menu-button":!1,"show-sub-players":!1,"show-sync-controls":!1,style:{width:"305px"},onClick:U=>m(f)},null,8,["id","player","onClick"]))]),_:2},1024))),128))]),_:1})],2)}}}),oe=B(se,[["__scopeId","data-v-771a3548"]]),ne=S({__name:"HomeWidgetRows",props:{editMode:{type:Boolean,default:!1}},setup(i){const c=C([]),r=C({}),_=async function(){const n=localStorage.getItem("widgetRowSettings");r.value=n?JSON.parse(n):{players:{position:0,enabled:!0}};const e=await k.getRecommendations(),t=[];let p=0;for(const g of e){p++;const f=r.value[g.uri]||{position:p,enabled:!0},U=g.translation_key?H(`recommendations.${g.translation_key}`,g.name):g.name;t.push({...g,settings:f,title:U}),c.value=t}};A(()=>{_();const n=k.subscribe(T.MEDIA_ITEM_PLAYED,async e=>{e.data&&!e.data.is_playing&&_()});W(n)});const m=function(n,e){for(const t of c.value)if(t.uri===n){t.settings=e;break}r.value[n]=e,localStorage.setItem("widgetRowSettings",JSON.stringify(r.value))};return(n,e)=>(o(),v(h,null,[r.value.players?.enabled||i.editMode?(o(),u(oe,{key:0,settings:r.value.players,"edit-mode":i.editMode,"onUpdate:settings":e[0]||(e[0]=t=>m("players",t))},null,8,["settings","edit-mode"])):b("",!0),(o(!0),v(h,null,x(c.value.filter(t=>t.items.length&&(t.settings.enabled||i.editMode)).sort((t,p)=>t.settings.position-p.settings.position),t=>(o(),v("div",{key:t.uri},[c.value.length?(o(),u(K,{key:0,"widget-row":t,"edit-mode":i.editMode,"onUpdate:settings":p=>m(t.uri,p)},null,8,["widget-row","edit-mode","onUpdate:settings"])):b("",!0)]))),128))],64))}}),re=S({__name:"HomeView",setup(i){const c=F(),r=C(!1),_=()=>{q.logout()};return(m,n)=>(o(),v("div",null,[a(ee,{"show-loading":!0,home:!0,color:"background"},{append:s(()=>[a(J,{location:"bottom end",scrim:""},{activator:s(({props:e})=>[a(I,G({variant:"plain",style:{width:"40px",height:"40px","margin-right":"8px"}},e),{default:s(()=>[a(R,{size:"40",color:l(d).currentUser?.avatar_url?void 0:"primary",class:"user-avatar"},{default:s(()=>[l(d).currentUser?.avatar_url?(o(),u($,{key:0,src:l(d).currentUser.avatar_url},null,8,["src"])):(o(),u(y,{key:1,icon:"mdi-account",size:"20",color:"white"}))]),_:1},8,["color"])]),_:1},16)]),default:s(()=>[a(O,{density:"compact",slim:"",tile:""},{default:s(()=>[a(w,{title:l(d).currentUser?.display_name||l(d).currentUser?.username,subtitle:l(d).currentUser?.username,disabled:"",class:"user-header-item"},{prepend:s(()=>[a(R,{size:"40",color:l(d).currentUser?.avatar_url?void 0:"primary",class:"user-avatar"},{default:s(()=>[l(d).currentUser?.avatar_url?(o(),u($,{key:0,src:l(d).currentUser.avatar_url},null,8,["src"])):(o(),u(y,{key:1,icon:"mdi-account",size:"20",color:"white"}))]),_:1},8,["color"])]),_:1},8,["title","subtitle"]),a(j,{class:"my-1"}),a(w,{title:m.$t("auth.profile"),onClick:n[0]||(n[0]=e=>l(c).push({name:"profile"}))},{prepend:s(()=>[a(y,{icon:"mdi-account-cog"})]),_:1},8,["title"]),a(w,{title:m.$t(r.value?"homescreen_edit_disable":"homescreen_edit_enable"),onClick:n[1]||(n[1]=e=>r.value=!r.value)},{prepend:s(()=>[a(y,{icon:"mdi-pencil"})]),_:1},8,["title"]),l(d).isIngressSession?b("",!0):(o(),u(w,{key:0,title:m.$t("auth.logout"),onClick:_},{prepend:s(()=>[a(y,{icon:"mdi-logout"})]),_:1},8,["title"]))]),_:1})]),_:1})]),_:1}),a(E,{variant:"comfortable"},{default:s(()=>[(o(),u(X,null,{fallback:s(()=>[a(Y,{indeterminate:""})]),default:s(()=>[P("div",null,[a(ne,{"edit-mode":r.value},null,8,["edit-mode"])])]),_:1}))]),_:1})]))}}),ke=B(re,[["__scopeId","data-v-22a0cc44"]]);export{ke as default};