music-assistant-frontend 2.17.28__py3-none-any.whl → 2.17.34__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 (125) hide show
  1. music_assistant_frontend/assets/{About-DD-Ra6q9.js → About-BkJaoSR3.js} +1 -1
  2. music_assistant_frontend/assets/{AddManualLink.vue_vue_type_script_setup_true_lang-4S1vyk3y.js → AddManualLink.vue_vue_type_script_setup_true_lang-C1nm8oQh.js} +1 -1
  3. music_assistant_frontend/assets/{AddPlayerGroup-cntNx9PL.js → AddPlayerGroup-B3NNUL-h.js} +1 -1
  4. music_assistant_frontend/assets/AddProviderDetails-BtrgTFts.js +1 -0
  5. music_assistant_frontend/assets/AlbumDetails-baXoKXD6.js +1 -0
  6. music_assistant_frontend/assets/ArtistDetails-Cv9mXN_k.js +1 -0
  7. music_assistant_frontend/assets/{AudiobookDetails-Dk3PEU9D.js → AudiobookDetails-7rFtcITw.js} +1 -1
  8. music_assistant_frontend/assets/BrowseView-CYbwlBvT.css +1 -0
  9. music_assistant_frontend/assets/BrowseView-tAHBas4g.js +1 -0
  10. music_assistant_frontend/assets/{Button-Cm9Kv1fL.js → Button-BcX_QSum.js} +1 -1
  11. music_assistant_frontend/assets/{Container-BunIU4BI.js → Container-Bc5cvdS8.js} +1 -1
  12. music_assistant_frontend/assets/{CreateTokenDialog.vue_vue_type_script_setup_true_lang-WD6jKrT1.js → CreateTokenDialog.vue_vue_type_script_setup_true_lang-BHmJvDQD.js} +1 -1
  13. music_assistant_frontend/assets/Default-BFKmuyAJ.css +1 -0
  14. music_assistant_frontend/assets/Default-DdviBUvO.js +21 -0
  15. music_assistant_frontend/assets/EditConfig-Bwi8QH5_.js +2 -0
  16. music_assistant_frontend/assets/EditConfig-UwCqmE_b.css +1 -0
  17. music_assistant_frontend/assets/EditCoreConfig-DhX-oxAE.css +1 -0
  18. music_assistant_frontend/assets/EditCoreConfig-Dlub9slv.js +1 -0
  19. music_assistant_frontend/assets/EditPlayer-CBFrbjNV.js +1 -0
  20. music_assistant_frontend/assets/EditPlayer-D1wKcKqn.css +1 -0
  21. music_assistant_frontend/assets/{EditPlayerDsp-DIRF5Ifm.js → EditPlayerDsp-DTXNvLKR.js} +1 -1
  22. music_assistant_frontend/assets/EditProvider-CHnmNs-E.js +1 -0
  23. music_assistant_frontend/assets/EditProvider-CM1P0zG2.css +1 -0
  24. music_assistant_frontend/assets/FrontendConfig-B3J0qsPa.js +1 -0
  25. music_assistant_frontend/assets/HomeView-CfJ6PURe.js +1 -0
  26. music_assistant_frontend/assets/ItemsListing-4Tzirx3k.js +1 -0
  27. music_assistant_frontend/assets/LibraryAlbums-B-uXhDO3.js +1 -0
  28. music_assistant_frontend/assets/LibraryArtists-Cm1JjbAl.js +1 -0
  29. music_assistant_frontend/assets/LibraryAudiobooks-BhxjD53T.js +1 -0
  30. music_assistant_frontend/assets/LibraryPlaylists-B854CAZn.js +1 -0
  31. music_assistant_frontend/assets/LibraryPodcasts-RhDZe6jX.js +1 -0
  32. music_assistant_frontend/assets/LibraryRadios-DL5ap70-.js +1 -0
  33. music_assistant_frontend/assets/LibraryTracks-9TVfLfIN.js +1 -0
  34. music_assistant_frontend/assets/{ListItem-DNqmHglz.js → ListItem-Cz0zK7Ay.js} +1 -1
  35. music_assistant_frontend/assets/{MediaItemImages-B-oQ8T4k.js → MediaItemImages-Dz3pW0B9.js} +1 -1
  36. music_assistant_frontend/assets/MediaItemThumb-C--YJJ5Y.js +1 -0
  37. music_assistant_frontend/assets/NowPlayingBadge-DlzVWxxU.css +1 -0
  38. music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js +1 -0
  39. music_assistant_frontend/assets/PanelviewItemCompact-BFofUlbn.js +1 -0
  40. music_assistant_frontend/assets/PlayerCard-BSr8tpdq.js +1 -0
  41. music_assistant_frontend/assets/PlayerCard-C-JW0iD0.css +1 -0
  42. music_assistant_frontend/assets/Players-BKvWHX7u.js +1 -0
  43. music_assistant_frontend/assets/{Players-DiFMAcvk.css → Players-BpLyas-U.css} +1 -1
  44. music_assistant_frontend/assets/PlaylistDetails-DwPf38WL.js +1 -0
  45. music_assistant_frontend/assets/PodcastDetails-BkL3RLSo.js +1 -0
  46. music_assistant_frontend/assets/{ProviderDetails.vue_vue_type_script_setup_true_lang-DzvsLzds.js → ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js} +1 -1
  47. music_assistant_frontend/assets/Providers-7gRu2tNl.js +1 -0
  48. music_assistant_frontend/assets/{Providers-Df6R6NDc.css → Providers-CZ5m317K.css} +1 -1
  49. music_assistant_frontend/assets/RadioDetails-B5bulWqe.js +1 -0
  50. music_assistant_frontend/assets/{RemoteAccessSettings-Cc9VhqAV.js → RemoteAccessSettings-CFIeLSWz.js} +1 -1
  51. music_assistant_frontend/assets/Search-BAjKkIIQ.js +1 -0
  52. music_assistant_frontend/assets/{ServerLogs-DEmjg0ji.js → ServerLogs-CCtjIDNl.js} +1 -1
  53. music_assistant_frontend/assets/{Settings-CbTYv9HY.css → Settings-BE2vTu_e.css} +1 -1
  54. music_assistant_frontend/assets/Settings-C8IEjo0h.js +1 -0
  55. music_assistant_frontend/assets/{SystemConfig-DzuRfqZX.js → SystemConfig-DgVHrDLs.js} +1 -1
  56. music_assistant_frontend/assets/Toolbar-BhPGsr4E.js +1 -0
  57. music_assistant_frontend/assets/{Toolbar-DOjWle_n.css → Toolbar-DzRHLZVV.css} +1 -1
  58. music_assistant_frontend/assets/TrackDetails-CN0utK-p.js +1 -0
  59. music_assistant_frontend/assets/{UserManagement-BmZul5Bv.js → UserManagement-XUiOYKeu.js} +1 -1
  60. music_assistant_frontend/assets/{UserProfile-C9aw6Mo0.js → UserProfile-BJFh70ps.js} +1 -1
  61. music_assistant_frontend/assets/{VAlert-CBrxai34.js → VAlert-C8Oto4eV.js} +1 -1
  62. music_assistant_frontend/assets/VCheckbox-CgwahLqh.js +1 -0
  63. music_assistant_frontend/assets/VCheckbox-CvH8ekHL.css +1 -0
  64. music_assistant_frontend/assets/{VCheckboxBtn-BMAdXnae.js → VCheckboxBtn-orONEqTE.js} +1 -1
  65. music_assistant_frontend/assets/{VDialog-BndVdZhi.js → VDialog-OmJrmVI_.js} +1 -1
  66. music_assistant_frontend/assets/{VExpansionPanels-lmUrDJt6.js → VExpansionPanels-D8F4VK-K.js} +1 -1
  67. music_assistant_frontend/assets/{VForm-Dpln05ME.js → VForm-CRBkgkz1.js} +1 -1
  68. music_assistant_frontend/assets/{VInfiniteScroll-B5bUrC-Z.js → VInfiniteScroll-C839Qj3G.js} +1 -1
  69. music_assistant_frontend/assets/{VSelect-uSApsKq0.js → VSelect-vsgYa-Ce.js} +1 -1
  70. music_assistant_frontend/assets/{VSelectionControl-S-aELuKm.js → VSelectionControl-C9uJkKHo.js} +1 -1
  71. music_assistant_frontend/assets/{VSlider-DzdWVMUa.js → VSlider-BxXcuhLj.js} +1 -1
  72. music_assistant_frontend/assets/VSwitch-C4Td5_x0.js +1 -0
  73. music_assistant_frontend/assets/{VToolbar-hGVdN8lh.js → VToolbar-BTrAkkB7.js} +1 -1
  74. music_assistant_frontend/assets/{VVirtualScroll-C1eeqQrQ.js → VVirtualScroll-YsHPZNGu.js} +1 -1
  75. music_assistant_frontend/assets/{WidgetRow-DKnAiOkf.js → WidgetRow-lS8eZGg2.js} +1 -1
  76. music_assistant_frontend/assets/{index-W5yBuLNV.css → index-BYK1uYGl.css} +1 -1
  77. music_assistant_frontend/assets/{index-rZUS0c3q.js → index-GQ3lWXrm.js} +55 -54
  78. music_assistant_frontend/assets/{marquee_text_sync-AT1GwuhW.js → marquee_text_sync-a11Dvzhd.js} +1 -1
  79. music_assistant_frontend/assets/userPreferences-CU3N6m4Z.js +1 -0
  80. music_assistant_frontend/index.html +2 -2
  81. music_assistant_frontend/sw.js +1 -1
  82. {music_assistant_frontend-2.17.28.dist-info → music_assistant_frontend-2.17.34.dist-info}/METADATA +1 -1
  83. music_assistant_frontend-2.17.34.dist-info/RECORD +154 -0
  84. music_assistant_frontend/assets/AddProviderDetails-DoKLUG5n.js +0 -1
  85. music_assistant_frontend/assets/AlbumDetails-iZRC2HAx.js +0 -1
  86. music_assistant_frontend/assets/ArtistDetails-pWsx0uxv.js +0 -1
  87. music_assistant_frontend/assets/BrowseView-DsuxryYQ.css +0 -1
  88. music_assistant_frontend/assets/BrowseView-g_5UPiVj.js +0 -1
  89. music_assistant_frontend/assets/Default-BoZpM67W.css +0 -1
  90. music_assistant_frontend/assets/Default-D3QbBdka.js +0 -21
  91. music_assistant_frontend/assets/EditConfig-Bo92pQzx.js +0 -2
  92. music_assistant_frontend/assets/EditConfig-CcxrPgWJ.css +0 -1
  93. music_assistant_frontend/assets/EditCoreConfig-Dn-oiBmv.js +0 -1
  94. music_assistant_frontend/assets/EditPlayer-C4U8nmpt.js +0 -1
  95. music_assistant_frontend/assets/EditProvider-DH6yzgKO.js +0 -1
  96. music_assistant_frontend/assets/FrontendConfig-DGr-C8uc.js +0 -1
  97. music_assistant_frontend/assets/HomeView-CF-2XJYc.js +0 -1
  98. music_assistant_frontend/assets/ItemsListing-DiFULYEk.js +0 -1
  99. music_assistant_frontend/assets/LibraryAlbums-DsXvfpDF.js +0 -1
  100. music_assistant_frontend/assets/LibraryArtists-CvhNCIa6.js +0 -1
  101. music_assistant_frontend/assets/LibraryAudiobooks-BXD39SCR.js +0 -1
  102. music_assistant_frontend/assets/LibraryPlaylists-CVSNqj6B.js +0 -1
  103. music_assistant_frontend/assets/LibraryPodcasts-D-KYAv5K.js +0 -1
  104. music_assistant_frontend/assets/LibraryRadios-DXJv2vPJ.js +0 -1
  105. music_assistant_frontend/assets/LibraryTracks-BW-Ne0K5.js +0 -1
  106. music_assistant_frontend/assets/MediaItemThumb-Djieuu-m.js +0 -1
  107. music_assistant_frontend/assets/PanelviewItemCompact-zZvQaI6t.js +0 -1
  108. music_assistant_frontend/assets/PlayerCard-B-1h1GH8.css +0 -1
  109. music_assistant_frontend/assets/PlayerCard-CbOeDESo.js +0 -1
  110. music_assistant_frontend/assets/Players-CMiHL1Xr.js +0 -1
  111. music_assistant_frontend/assets/PlaylistDetails-BYOLLggx.js +0 -1
  112. music_assistant_frontend/assets/PodcastDetails-BMWkoQkv.js +0 -1
  113. music_assistant_frontend/assets/Providers-BVL70bSb.js +0 -1
  114. music_assistant_frontend/assets/RadioDetails-Dk19WXMn.js +0 -1
  115. music_assistant_frontend/assets/Search-gIzJ4Lef.js +0 -1
  116. music_assistant_frontend/assets/Settings-BPCFcSEv.js +0 -1
  117. music_assistant_frontend/assets/Toolbar-xH_GEfSi.js +0 -1
  118. music_assistant_frontend/assets/TrackDetails-Bpl4yjoA.js +0 -1
  119. music_assistant_frontend/assets/VSwitch-B-1g31ug.js +0 -1
  120. music_assistant_frontend/assets/userPreferences-Cm6AcKY5.css +0 -1
  121. music_assistant_frontend/assets/userPreferences-a0gVUlkp.js +0 -1
  122. music_assistant_frontend-2.17.28.dist-info/RECORD +0 -148
  123. {music_assistant_frontend-2.17.28.dist-info → music_assistant_frontend-2.17.34.dist-info}/WHEEL +0 -0
  124. {music_assistant_frontend-2.17.28.dist-info → music_assistant_frontend-2.17.34.dist-info}/licenses/LICENSE +0 -0
  125. {music_assistant_frontend-2.17.28.dist-info → music_assistant_frontend-2.17.34.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,2 @@
1
+ import{p as Fe,K as Y,i as L,aD as o,a2 as Xe,c_ as be,cX as Ze,E as M,r as de,ah as ee,g as Ye,I as _e,J as q,d6 as el,ao as ll,j as Ve,cL as tl,d7 as oe,R as se,L as ne,n as nl,bH as te,o as b,ae as X,ap as al,ai as il,d8 as ul,d9 as ol,cZ as pe,da as sl,db as Ce,O as rl,aL as ge,dc as dl,b4 as cl,aF as vl,aJ as we,aU as De,dd as fl,bE as ml,bK as $e,de as yl,q as bl,an as gl,bh as W,ay as Te,aT as k,az as J,aA as p,aI as T,cC as S,aB as ae,cT as El,aG as I,aN as N,M as _,df as Ae,_ as Pe,aH as me,aE as kl,aS as hl,c3 as xe,c0 as Vl,bV as pl,bW as Cl}from"./index-GQ3lWXrm.js";import{V as Se}from"./VAlert-C8Oto4eV.js";import{V as wl}from"./VCheckbox-CgwahLqh.js";import{V as $l}from"./VSlider-BxXcuhLj.js";import{u as xl,a as Sl,m as Il,V as Fl}from"./VSelect-vsgYa-Ce.js";import{V as Dl}from"./VVirtualScroll-YsHPZNGu.js";import{V as Tl}from"./VCheckboxBtn-orONEqTE.js";import{V as Al}from"./VForm-CRBkgkz1.js";import{V as Pl,a as Ll,b as Ml,c as Rl}from"./VExpansionPanels-D8F4VK-K.js";import{V as Ol}from"./VDialog-OmJrmVI_.js";const Ul=(e,c,f)=>{if(e==null||c==null)return-1;if(!c.length)return 0;e=e.toString().toLocaleLowerCase(),c=c.toString().toLocaleLowerCase();const d=[];let u=e.indexOf(c);for(;~u;)d.push([u,u+c.length]),u=e.indexOf(c,u+c.length);return d.length?d:-1};function ye(e,c){if(!(e==null||typeof e=="boolean"||e===-1))return typeof e=="number"?[[e,e+c.length]]:Array.isArray(e[0])?e:[e]}const Bl=Fe({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Nl(e,c,f){const d=[],u=f?.default??Ul,n=f?.filterKeys?be(f.filterKeys):!1,t=Object.keys(f?.customKeyFilter??{}).length;if(!e?.length)return d;let V=null;e:for(let w=0;w<e.length;w++){const[g,A=g]=be(e[w]),E={},P={};let F=-1;if((c||t>0)&&!f?.noFilter){let Z=!1;if(typeof g=="object"){if(g.type==="divider"||g.type==="subheader"){V?.type==="divider"&&g.type==="subheader"&&d.push(V),V={index:w,matches:{},type:g.type};continue}const K=n||Object.keys(A);Z=K.length===t;for(const v of K){const R=Ze(A,v),G=f?.customKeyFilter?.[v];if(F=G?G(R,c,g):u(R,c,g),F!==-1&&F!==!1)G?E[v]=ye(F,c):P[v]=ye(F,c);else if(f?.filterMode==="every")continue e}}else F=u(g,c,g),F!==-1&&F!==!1&&(P.title=ye(F,c));const Q=Object.keys(P).length,z=Object.keys(E).length;if(!Q&&!z||f?.filterMode==="union"&&z!==t&&!Q||f?.filterMode==="intersection"&&(z!==t||!Q&&t>0&&!Z))continue}V&&(d.push(V),V=null),d.push({index:w,matches:{...P,...E}})}return d}function Kl(e,c,f,d){const u=Y([]),n=Y(new Map),t=L(()=>o(c));Xe(()=>{const w=typeof f=="function"?f():o(f),g=typeof w!="string"&&typeof w!="number"?"":String(w),A=Nl(t.value,g,{customKeyFilter:{...e.customKeyFilter,...o(d?.customKeyFilter)},default:e.customFilter,filterKeys:e.filterKeys,filterMode:e.filterMode,noFilter:e.noFilter}),E=o(c),P=[],F=new Map;A.forEach(Z=>{let{index:Q,matches:z}=Z;const K=E[Q];P.push(K),F.set(K.value,z)}),u.value=P,n.value=F});function V(w){return n.value.get(w.value)}return{filteredItems:u,filteredMatches:n,getMatches:V}}function ql(e,c,f){return f==null||!f.length?c:f.map((d,u)=>{const n=u===0?0:f[u-1][1],t=[M("span",{class:de(`${e}__unmask`)},[c.slice(n,d[0])]),M("span",{class:de(`${e}__mask`)},[c.slice(d[0],d[1])])];return u===f.length-1&&t.push(M("span",{class:de(`${e}__unmask`)},[c.slice(d[1])])),M(ee,null,[t])})}const zl=Fe({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Bl({filterKeys:["title"]}),...Il({hideNoData:!0,returnObject:!0}),...il(ul({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),Gl=Ye()({name:"VCombobox",props:zl(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:search":e=>!0,"update:menu":e=>!0},setup(e,c){let{emit:f,slots:d}=c;const{t:u}=_e(),n=q(),t=Y(!1),V=Y(!0),w=Y(!1),g=q(),A=q(),E=Y(-1);let P=!1;const{items:F,transformIn:Z,transformOut:Q}=el(e),{textColorClasses:z,textColorStyles:K}=ll(()=>n.value?.color),v=Ve(e,"modelValue",[],l=>Z(be(l)),l=>{const m=Q(l);return e.multiple?m:m[0]??null}),R=tl(e),G=L(()=>!!(e.chips||d.chip)),U=L(()=>G.value||!!d.selection),B=Y(!e.multiple&&!U.value?v.value[0]?.title??"":""),j=Y(null),$=L({get:()=>B.value,set:async l=>{if(B.value=l??"",l===null||l===""&&!e.multiple&&!U.value?v.value=[]:!e.multiple&&!U.value&&(v.value=[oe(e,l)],se(()=>A.value?.scrollToIndex(0))),l&&e.multiple&&e.delimiters?.length){const m=ke(l);m.length>1&&(he(m),B.value="")}l||(E.value=-1),V.value=!l}}),ce=L(()=>typeof e.counterValue=="function"?e.counterValue(v.value):typeof e.counterValue=="number"?e.counterValue:e.multiple?v.value.length:$.value.length),{filteredItems:le,getMatches:s}=Kl(e,F,()=>j.value??(e.alwaysFilter||!V.value?$.value:"")),i=L(()=>e.hideSelected&&j.value===null?le.value.filter(l=>!v.value.some(m=>m.value===l.value)):le.value),a=L(()=>e.hideNoData&&!i.value.length||R.isReadonly.value||R.isDisabled.value),h=Ve(e,"menu"),C=L({get:()=>h.value,set:l=>{h.value&&!l&&g.value?.ΨopenChildren.size||l&&a.value||(h.value=l)}}),{menuId:Le,ariaExpanded:Me,ariaControls:Re,ariaLabel:Ee}=xl(e,C);ne(B,l=>{P?se(()=>P=!1):t.value&&!C.value&&(C.value=!0),f("update:search",l)}),ne(v,l=>{!e.multiple&&!U.value&&(B.value=l[0]?.title??"")});const Oe=L(()=>v.value.map(l=>l.value)),ve=L(()=>(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&$.value===i.value[0]?.title)&&i.value.length>0&&!V.value&&!w.value),fe=q(),Ue=Sl(fe,n);function Be(l){P=!0,se(()=>P=!1),e.openOnClear&&(C.value=!0)}function Ne(){a.value||(C.value=!0)}function Ke(l){a.value||(t.value&&(l.preventDefault(),l.stopPropagation()),C.value=!C.value)}function qe(l){(Ce(l)||l.key==="Backspace")&&n.value?.focus()}function ze(l){if(sl(l)||R.isReadonly.value)return;const m=n.value?.selectionStart,D=v.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(C.value=!0),["Escape"].includes(l.key)&&(C.value=!1),ve.value&&["Enter","Tab"].includes(l.key)&&!v.value.some(r=>{let{value:y}=r;return y===i.value[0].value})&&H(le.value[0]),l.key==="ArrowDown"&&ve.value&&fe.value?.focus("next"),l.key==="Enter"&&$.value&&(H(oe(e,$.value),!0,!0),U.value&&(B.value="")),["Backspace","Delete"].includes(l.key)){if(!e.multiple&&U.value&&v.value.length>0&&!$.value)return H(v.value[0],!1);if(~E.value){l.preventDefault();const r=E.value;H(v.value[E.value],!1),E.value=r>=D-1?D-2:r}else l.key==="Backspace"&&!$.value&&(E.value=D-1);return}if(e.multiple)if(l.key==="ArrowLeft"){if(E.value<0&&m&&m>0)return;const r=E.value>-1?E.value-1:D-1;v.value[r]?E.value=r:(E.value=-1,n.value?.setSelectionRange($.value.length,$.value.length))}else if(l.key==="ArrowRight"){if(E.value<0)return;const r=E.value+1;v.value[r]?E.value=r:(E.value=-1,n.value?.setSelectionRange(0,0))}else~E.value&&Ce(l)&&(E.value=-1)}function Ge(l){const m=l?.clipboardData?.getData("Text")??"",D=ke(m);D.length>1&&e.multiple&&(l.preventDefault(),he(D))}function je(){e.eager&&A.value?.calculateVisibleItems()}function He(){t.value&&n.value?.focus(),V.value=!0,j.value=null}function H(l){let m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,D=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!l||l.props.disabled))if(e.multiple){const r=v.value.findIndex(x=>(e.valueComparator||pe)(x.value,l.value)),y=m??!~r;if(~r){const x=y?[...v.value,l]:[...v.value];x.splice(r,1),v.value=x}else y&&(v.value=[...v.value,l]);e.clearOnSelect&&($.value="")}else{const r=m!==!1;v.value=r?[l]:[],(!V.value||e.alwaysFilter)&&B.value&&(j.value=B.value),B.value=r&&!U.value?l.title:"",se(()=>{C.value=D,V.value=!0})}}function ke(l){const D=[`
2
+ `,...e.delimiters??[]].map(ol).join("|");return l.split(new RegExp(`(?:${D})+`))}async function he(l){for(let m of l)m=m.trim(),m&&(H(oe(e,m)),await se())}function Je(l){t.value=!0,setTimeout(()=>{w.value=!0})}function We(l){w.value=!1}return ne(t,(l,m)=>{if(!(l||l===m)&&(E.value=-1,C.value=!1,$.value)){if(e.multiple){H(oe(e,$.value));return}if(!U.value)return;v.value.some(D=>{let{title:r}=D;return r===$.value})?B.value="":H(oe(e,$.value))}}),ne(C,l=>{if(!e.hideSelected&&l&&v.value.length&&V.value){const m=i.value.findIndex(D=>v.value.some(r=>(e.valueComparator||pe)(r.value,D.value)));rl&&window.requestAnimationFrame(()=>{m>=0&&A.value?.scrollToIndex(m)})}l&&(j.value=null)}),ne(F,(l,m)=>{C.value||t.value&&!m.length&&l.length&&(C.value=!0)}),nl(()=>{const l=!!(!e.hideNoData||i.value.length||d["prepend-item"]||d["append-item"]||d["no-data"]),m=v.value.length>0,D=te.filterProps(e);return b(te,X({ref:n},D,{modelValue:$.value,"onUpdate:modelValue":r=>$.value=r,focused:t.value,"onUpdate:focused":r=>t.value=r,validationValue:v.externalValue,counterValue:ce.value,dirty:m,class:["v-combobox",{"v-combobox--active-menu":C.value,"v-combobox--chips":!!e.chips,"v-combobox--selection-slot":!!U.value,"v-combobox--selecting-index":E.value>-1,[`v-combobox--${e.multiple?"multiple":"single"}`]:!0},e.class],style:e.style,readonly:R.isReadonly.value,placeholder:m?void 0:e.placeholder,"onClick:clear":Be,"onMousedown:control":Ne,onKeydown:ze,onPaste:Ge,"aria-expanded":Me.value,"aria-controls":Re.value}),{...d,default:()=>M(ee,null,[b(cl,X({id:Le.value,ref:g,modelValue:C.value,"onUpdate:modelValue":r=>C.value=r,activator:"parent",contentClass:"v-combobox__content",disabled:a.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:je,onAfterLeave:He},e.menuProps),{default:()=>[l&&b(vl,X({ref:fe,filterable:!0,selected:Oe.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:r=>r.preventDefault(),selectable:!0,onKeydown:qe,onFocusin:Je,onFocusout:We,tabindex:"-1","aria-live":"polite",color:e.itemColor??e.color},Ue,e.listProps),{default:()=>[d["prepend-item"]?.(),!i.value.length&&!e.hideNoData&&(d["no-data"]?.()??b(we,{key:"no-data",title:u(e.noDataText)},null)),b(Dl,{ref:A,renderless:!0,items:i.value,itemKey:"value"},{default:r=>{let{item:y,index:x,itemRef:re}=r;const ie=X(y.props,{ref:re,key:y.value,active:ve.value&&x===0?!0:void 0,onClick:()=>H(y,null)});return y.type==="divider"?d.divider?.({props:y.raw,index:x})??b(De,X(y.props,{key:`divider-${x}`}),null):y.type==="subheader"?d.subheader?.({props:y.raw,index:x})??b(fl,X(y.props,{key:`subheader-${x}`}),null):d.item?.({item:y,index:x,props:ie})??b(we,X(ie,{role:"option"}),{prepend:ue=>{let{isSelected:O}=ue;return M(ee,null,[e.multiple&&!e.hideSelected?b(Tl,{key:y.value,modelValue:O,ripple:!1,tabindex:"-1",onClick:Qe=>Qe.preventDefault()},null):void 0,y.props.prependAvatar&&b(ml,{image:y.props.prependAvatar},null),y.props.prependIcon&&b(ge,{icon:y.props.prependIcon},null)])},title:()=>V.value?y.title:ql("v-combobox",y.title,s(y)?.title)})}}),d["append-item"]?.()]})]}),v.value.map((r,y)=>{function x(O){O.stopPropagation(),O.preventDefault(),H(r,!1)}const re=X($e.filterProps(r.props),{"onClick:close":x,onKeydown(O){O.key!=="Enter"&&O.key!==" "||(O.preventDefault(),O.stopPropagation(),x(O))},onMousedown(O){O.preventDefault(),O.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),ie=G.value?!!d.chip:!!d.selection,ue=ie?yl(G.value?d.chip({item:r,index:y,props:re}):d.selection({item:r,index:y})):void 0;if(!(ie&&!ue))return M("div",{key:r.value,class:de(["v-combobox__selection",y===E.value&&["v-combobox__selection--selected",z.value]]),style:bl(y===E.value?K.value:{})},[G.value?d.chip?b(gl,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:r.title}}},{default:()=>[ue]}):b($e,X({key:"chip",closable:e.closableChips,size:"small",text:r.title,disabled:r.props.disabled},re),null):ue??M("span",{class:"v-combobox__selection-text"},[r.title,e.multiple&&y<v.value.length-1&&M("span",{class:"v-combobox__selection-comma"},[W(",")])])])})]),"append-inner":function(){for(var r=arguments.length,y=new Array(r),x=0;x<r;x++)y[x]=arguments[x];return M(ee,null,[d["append-inner"]?.(...y),(!e.hideNoData||e.items.length)&&e.menuIcon?b(ge,{class:"v-combobox__menu-icon",color:n.value?.fieldIconColor,icon:e.menuIcon,onMousedown:Ke,onClick:dl,"aria-label":Ee.value,title:Ee.value,tabindex:"-1"},null):void 0])}})}),al({isFocused:t,isPristine:V,menu:C,search:$,selectionIndex:E,filteredItems:le,select:H},n)}}),jl={class:"config-field"},Hl={key:0,class:"config-divider"},Jl={key:4,class:"dsp-config"},Wl={class:"dsp-status"},Ql=Te({__name:"ConfigEntryField",props:{confEntry:{},showPasswordValues:{type:Boolean},disabled:{type:Boolean}},emits:["togglePassword","clearValue","action","openDsp","update:value"],setup(e){const c=e,f=L(()=>c.disabled||c.confEntry.read_only),d=L(()=>{if(!c.confEntry.options)return[];const u=[];for(const n of c.confEntry.options){let t=n.value?.toString()||"",V=n.title?.toString()||"";for(const A of["@","$","|"])t.includes(A)&&(t=t.replaceAll(A,"")),V.includes(A)&&(V=V.toString().replaceAll(A,""));const g={title:k(`settings.${c.confEntry.key}.options.${t}`,V),value:n.value};g.value==c.confEntry.default_value&&(g.title+=` [${k("settings.default")}]`),u.push(g)}return u});return(u,n)=>(p(),J("div",jl,[e.confEntry.type==o(S).DIVIDER?(p(),J("div",Hl,[b(De),e.confEntry.label?(p(),T(El,{key:0,class:"divider-label"},{default:I(()=>[W(N(e.confEntry.label),1)]),_:1})):ae("",!0)])):e.confEntry.type==o(S).LABEL?(p(),T(Se,{key:1,variant:"tonal",type:"info",density:"comfortable",class:"config-alert"},{default:I(()=>[W(N(o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label)),1)]),_:1})):e.confEntry.type==o(S).ALERT?(p(),T(Se,{key:2,density:"comfortable",type:"warning",variant:"tonal",class:"config-alert"},{default:I(()=>[W(N(o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label)),1)]),_:1})):e.confEntry.type==o(S).ACTION||e.confEntry.action&&!e.confEntry.value?(p(),T(_,{key:3,variant:"outlined",class:"action-btn",disabled:f.value,onClick:n[0]||(n[0]=t=>u.$emit("action"))},{default:I(()=>[W(N(o(k)(`settings.${e.confEntry.action||e.confEntry.key}.label`,e.confEntry.action_label||e.confEntry.label)),1)]),_:1},8,["disabled"])):e.confEntry.type==o(S).DSP_SETTINGS?(p(),J("div",Jl,[M("span",Wl,N(e.confEntry.value?o(k)("settings.dsp_enabled"):o(k)("settings.dsp_disabled")),1),b(_,{variant:"outlined",class:"action-btn",onClick:n[1]||(n[1]=t=>u.$emit("openDsp"))},{default:I(()=>[W(N(o(k)("open_dsp_settings")),1)]),_:1})])):e.confEntry.type==o(S).BOOLEAN?(p(),T(wl,{key:5,"model-value":e.confEntry.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),color:"primary",disabled:f.value,"hide-details":"",density:"comfortable","onUpdate:modelValue":n[2]||(n[2]=t=>u.$emit("update:value",t))},null,8,["model-value","label","disabled"])):(e.confEntry.type==o(S).INTEGER||e.confEntry.type==o(S).FLOAT)&&e.confEntry.range&&e.confEntry.range.length==2?(p(),T($l,{key:6,"model-value":e.confEntry.value,disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,class:"config-slider",min:e.confEntry.range[0],max:e.confEntry.range[1],step:e.confEntry.type==o(S).FLOAT?.5:1,"hide-details":"",color:"primary","onUpdate:modelValue":n[4]||(n[4]=t=>u.$emit("update:value",t))},{append:I(()=>[b(te,{"model-value":e.confEntry.value,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"},"onUpdate:modelValue":n[3]||(n[3]=t=>u.$emit("update:value",t))},null,8,["model-value"])]),_:1},8,["model-value","disabled","label","required","min","max","step"])):e.confEntry.type==o(S).SECURE_STRING?(p(),T(te,{key:7,"model-value":e.confEntry.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,disabled:f.value,rules:[t=>!(!t&&e.confEntry.required)||o(k)("settings.invalid_input")],type:e.showPasswordValues?"text":"password","append-inner-icon":e.showPasswordValues?"mdi-eye":typeof e.confEntry.value=="string"&&e.confEntry.value.includes(o(Ae))?"":"mdi-eye-off",variant:"outlined",density:"comfortable",clearable:"",readonly:!!e.confEntry.action,"onUpdate:modelValue":n[5]||(n[5]=t=>u.$emit("update:value",t)),"onClick:appendInner":n[6]||(n[6]=t=>u.$emit("togglePassword")),"onClick:clear":n[7]||(n[7]=t=>u.$emit("clearValue"))},null,8,["model-value","label","required","disabled","rules","type","append-inner-icon","readonly"])):e.confEntry.options&&e.confEntry.options.length>0?(p(),T(Fl,{key:8,"model-value":e.confEntry.value,chips:e.confEntry.multi_value,clearable:!0,multiple:e.confEntry.multi_value,items:d.value,disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,rules:[t=>!(t==null&&e.confEntry.required)||o(k)("settings.invalid_input")],variant:"outlined",density:"comfortable","onUpdate:modelValue":n[8]||(n[8]=t=>u.$emit("update:value",t)),"onClick:clear":n[9]||(n[9]=t=>u.$emit("clearValue"))},null,8,["model-value","chips","multiple","items","disabled","label","required","rules"])):e.confEntry.type==o(S).INTEGER||e.confEntry.type==o(S).FLOAT?(p(),T(te,{key:9,"model-value":e.confEntry.value,placeholder:e.confEntry.default_value?.toString(),disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,rules:[t=>!(!t&&e.confEntry.required)||o(k)("settings.invalid_input")],variant:"outlined",density:"comfortable",clearable:!e.confEntry.required,type:"number","onUpdate:modelValue":n[10]||(n[10]=t=>u.$emit("update:value",t)),"onClick:clear":n[11]||(n[11]=t=>u.$emit("clearValue"))},null,8,["model-value","placeholder","disabled","label","required","rules","clearable"])):e.confEntry.type==o(S).ICON?(p(),T(te,{key:10,"model-value":e.confEntry.value,placeholder:e.confEntry.default_value?.toString(),clearable:"",disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),"prepend-inner-icon":e.confEntry.value,variant:"outlined",density:"comfortable","onUpdate:modelValue":n[12]||(n[12]=t=>u.$emit("update:value",t)),"onClick:clear":n[13]||(n[13]=t=>u.$emit("clearValue"))},null,8,["model-value","placeholder","disabled","label","prepend-inner-icon"])):e.confEntry.type==o(S).STRING&&e.confEntry.multi_value?(p(),T(Gl,{key:11,"model-value":e.confEntry.value,multiple:"",chips:"",clearable:!0,disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,rules:[t=>!(!t&&e.confEntry.required)||o(k)("settings.invalid_input")],variant:"outlined",density:"comfortable","onUpdate:modelValue":n[14]||(n[14]=t=>u.$emit("update:value",t)),"onClick:clear":n[15]||(n[15]=t=>u.$emit("clearValue"))},null,8,["model-value","disabled","label","required","rules"])):(p(),T(te,{key:12,"model-value":e.confEntry.value,placeholder:e.confEntry.default_value?.toString(),clearable:"",disabled:f.value,label:o(k)(`settings.${e.confEntry.key}.label`,e.confEntry.label),required:e.confEntry.required,rules:[t=>!(!t&&e.confEntry.required)||o(k)("settings.invalid_input")],variant:"outlined",density:"comfortable",readonly:!!e.confEntry.action,"onUpdate:modelValue":n[16]||(n[16]=t=>u.$emit("update:value",t)),"onClick:clear":n[17]||(n[17]=t=>u.$emit("clearValue"))},null,8,["model-value","placeholder","disabled","label","required","rules","readonly"]))]))}}),Ie=Pe(Ql,[["__scopeId","data-v-4469350e"]]),Xl={key:0,class:"config-section"},Zl={class:"panel-title-text"},Yl={class:"config-panel-content"},_l={class:"config-actions"},et=Te({__name:"EditConfig",props:{configEntries:{},disabled:{type:Boolean},showGenericSection:{type:Boolean}},emits:["submit","action"],setup(e,{emit:c}){const f=kl(),d=c,u=q(),n=q(!1),t=q(),V=q([]),w=q(!1),g=q(),A=q({}),E=e,P=L(()=>["generic",...new Set(u.value.map(i=>i.category).filter(i=>!["generic","advanced"].includes(i))),"advanced"]),F=L(()=>{if(u.value){for(const s of u.value)if(s.required&&!(!R(s.value)||!R(s.default_value)||s.type==S.DIVIDER||s.type==S.LABEL||s.type==S.ALERT||s.type==S.ACTION))return!1;return!0}return!1});ne(()=>E.configEntries,s=>{u.value=[];for(const a of s||[])a.value!==void 0&&a.value!==null&&(A.value[a.key]=a.value),(a.value==null||a.value==null)&&(a.value=a.default_value),u.value.push(a);const i=P.value.filter(a=>a!=="generic"&&a!=="advanced");V.value=i},{immediate:!0});const Z=async function(){const{valid:s}=await t.value.validate();return s},Q=async function(){await Z()&&d("submit",$())},z=async function(s){d("action",s,$())},K=function(s){const i=document.createElement("a");i.setAttribute("href",s),i.setAttribute("target","_blank"),i.click()},v=function(){f.push(`${f.currentRoute.value.path}/dsp`)},R=function(s){return s==null},G=function(s){return!s.hidden},U=function(s){if(!R(s.depends_on)){const i=u.value?.find(h=>h.key==s.depends_on);if(!i)return!1;const a=i.value;return R(s.depends_on_value)?R(s.depends_on_value_not)?!a:a==s.depends_on_value_not:a!=s.depends_on_value}return!1},B=L(()=>{const s={};if(!u.value)return s;for(const i of u.value){if(!G(i))continue;const a=i.category||"generic";s[a]||(s[a]=[]),s[a].push(i)}return s}),j=function(s){return B.value[s]||[]},$=function(){const s={};for(const i of E.configEntries)i.value==null&&(i.value=null),!(i.type==S.SECURE_STRING&&i.value==Ae)&&(s[i.key]=i.value);return s},ce=function(s){return{generic:"mdi-cog",audio:"mdi-volume-high",advanced:"mdi-tune",network:"mdi-lan",playback:"mdi-play-circle",announcements:"mdi-bullhorn",airplay:"mdi-apple",chromecast:"mdi-cast",slimproto:"mdi-speaker-wireless",snapcast:"mdi-speaker-multiple",ugp:"mdi-speaker-multiple",authentication:"mdi-lock",sync:"mdi-sync"}[s]||"mdi-cog-outline"},le=function(s){return(k(`settings.${s?.key}.description`,s.description||" ")||s.help_link||" ")?.length>1};return(s,i)=>(p(),J(ee,null,[u.value?(p(),T(Al,{key:0,ref_key:"form",ref:t,modelValue:n.value,"onUpdate:modelValue":i[4]||(i[4]=a=>n.value=a),disabled:e.disabled},{default:I(()=>[e.showGenericSection!==!1&&j("generic").length>0?(p(),J("div",Xl,[(p(!0),J(ee,null,me(j("generic"),a=>(p(),J("div",{key:a.key,class:"config-entry"},[b(Ie,{"conf-entry":a,"show-password-values":w.value,disabled:U(a),onTogglePassword:i[0]||(i[0]=h=>w.value=!w.value),onClearValue:h=>a.value=a.default_value,"onUpdate:value":h=>a.value=h,onAction:h=>{z(a.action||a.key),a.value=a.action?null:a.key},onOpenDsp:v},null,8,["conf-entry","show-password-values","disabled","onClearValue","onUpdate:value","onAction"]),le(a)?(p(),T(_,{key:0,icon:"mdi-help-circle-outline",variant:"text",size:"small",class:"help-btn",onClick:h=>o(k)(`settings.${a?.key}.description`,a.description||"")?g.value=a:K(a.help_link)},null,8,["onClick"])):ae("",!0)]))),128))])):ae("",!0),b(Pl,{modelValue:V.value,"onUpdate:modelValue":i[2]||(i[2]=a=>V.value=a),multiple:"",class:"config-panels"},{default:I(()=>[(p(!0),J(ee,null,me(P.value.filter(a=>a!=="generic"&&j(a).length>0),a=>(p(),T(Ll,{key:a,value:a,class:"config-panel"},{default:I(()=>[b(Ml,{class:"config-panel-title"},{default:I(()=>[b(ge,{icon:ce(a),class:"mr-3",size:"20"},null,8,["icon"]),M("span",Zl,N(o(k)("settings.category."+a,a)),1)]),_:2},1024),b(Rl,null,{default:I(()=>[M("div",Yl,[(p(!0),J(ee,null,me(j(a),h=>(p(),J("div",{key:h.key,class:"config-entry"},[b(Ie,{"conf-entry":h,"show-password-values":w.value,disabled:U(h),onTogglePassword:i[1]||(i[1]=C=>w.value=!w.value),onClearValue:C=>h.value=h.default_value,"onUpdate:value":C=>h.value=C,onAction:C=>{z(h.action||h.key),h.value=h.action?null:h.key},onOpenDsp:v},null,8,["conf-entry","show-password-values","disabled","onClearValue","onUpdate:value","onAction"]),le(h)?(p(),T(_,{key:0,icon:"mdi-help-circle-outline",variant:"text",size:"small",class:"help-btn",onClick:C=>o(k)(`settings.${h?.key}.description`,h.description||"")?g.value=h:K(h.help_link)},null,8,["onClick"])):ae("",!0)]))),128))])]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),M("div",_l,[b(_,{block:"",color:"primary",size:"large",disabled:!F.value,onClick:Q},{default:I(()=>[W(N(o(k)("settings.save")),1)]),_:1},8,["disabled"]),b(_,{block:"",variant:"outlined",size:"large",onClick:i[3]||(i[3]=a=>o(f).back())},{default:I(()=>[W(N(o(k)("close")),1)]),_:1})])]),_:1},8,["modelValue","disabled"])):ae("",!0),b(Ol,{"model-value":g.value!==void 0,width:"auto","onUpdate:modelValue":i[7]||(i[7]=a=>g.value=void 0)},{default:I(()=>[b(hl,null,{default:I(()=>[b(xe,null,{default:I(()=>[M("h2",null,N(o(k)(`settings.${g.value?.key}.label`,g.value?.label||"")),1)]),_:1}),b(xe,{innerHTML:o(Vl)(o(k)(`settings.${g.value?.key}.description`,g.value?.description||""))},null,8,["innerHTML"]),b(pl,null,{default:I(()=>[g.value?.help_link?(p(),T(_,{key:0,onClick:i[5]||(i[5]=a=>K(g.value.help_link))},{default:I(()=>[W(N(o(k)("read_more")),1)]),_:1})):ae("",!0),b(Cl),b(_,{color:"primary",onClick:i[6]||(i[6]=a=>g.value=void 0)},{default:I(()=>[W(N(o(k)("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])],64))}}),ct=Pe(et,[["__scopeId","data-v-769f0c71"]]);export{Ie as C,ct as E};
@@ -0,0 +1 @@
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__input>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)}.config-field[data-v-4469350e]{flex:1;min-width:0}.config-divider[data-v-4469350e]{padding:8px 0}.divider-label[data-v-4469350e]{display:block;margin-top:12px;font-weight:600;font-size:.875rem}.config-alert[data-v-4469350e],.action-btn[data-v-4469350e]{margin:8px 0}.dsp-config[data-v-4469350e]{display:flex;align-items:center;gap:16px;padding:8px 0}.dsp-status[data-v-4469350e]{font-size:.875rem;color:rgba(var(--v-theme-on-surface),.7)}.config-slider[data-v-4469350e]{padding-top:8px}.config-section[data-v-769f0c71]{margin-bottom:16px}.config-entry[data-v-769f0c71]{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.config-entry[data-v-769f0c71]:last-child{margin-bottom:0}.config-entry:has(.v-checkbox)+.config-entry[data-v-769f0c71]:has(.v-text-field),.config-entry:has(.v-checkbox)+.config-entry[data-v-769f0c71]:has(.v-select),.config-entry:has(.v-checkbox)+.config-entry[data-v-769f0c71]:has(.v-slider),.config-entry:has(.v-checkbox)+.config-entry[data-v-769f0c71]:has(.v-combobox){margin-top:16px}.help-btn[data-v-769f0c71]{flex-shrink:0;margin-top:8px;opacity:.6;transition:opacity .2s ease}.help-btn[data-v-769f0c71]:hover{opacity:1}.config-panels[data-v-769f0c71]{margin-top:16px}.config-panel[data-v-769f0c71]{margin-bottom:8px;border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:8px!important;overflow:hidden}.config-panel[data-v-769f0c71]:before{display:none}.config-panel-title[data-v-769f0c71]{min-height:52px;padding:14px 20px;background:rgba(var(--v-theme-primary),.08)}.config-panel-title .v-icon[data-v-769f0c71]{color:rgb(var(--v-theme-primary))}.panel-title-text[data-v-769f0c71]{font-size:1.1rem;font-weight:600;color:rgb(var(--v-theme-primary))}.config-panel[data-v-769f0c71] .v-expansion-panel-text__wrapper{padding:0}.config-panel-content[data-v-769f0c71]{padding:16px 20px 20px;border-top:1px solid rgba(var(--v-theme-on-surface),.08)}.config-card[data-v-769f0c71]{margin-top:16px;border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:8px;overflow:hidden}.config-card-header[data-v-769f0c71]{display:flex;align-items:center;gap:12px;padding:14px 20px;background:rgba(var(--v-theme-primary),.08);border-bottom:1px solid rgba(var(--v-theme-primary),.12)}.config-card-header .v-icon[data-v-769f0c71]{color:rgb(var(--v-theme-primary))}.config-card-title[data-v-769f0c71]{font-size:1.1rem;font-weight:600;margin:0;color:rgb(var(--v-theme-primary))}.config-card-content[data-v-769f0c71]{padding:16px 20px 20px}.config-actions[data-v-769f0c71]{display:flex;flex-direction:column;gap:12px;margin-top:24px;padding-top:16px}
@@ -0,0 +1 @@
1
+ .edit-core-config[data-v-bf710b9a]{padding:16px}.header-card[data-v-bf710b9a]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px}.header-content[data-v-bf710b9a]{display:flex;gap:20px;padding:24px}.header-icon[data-v-bf710b9a]{flex-shrink:0;width:56px;height:56px;border-radius:12px;background:rgba(var(--v-theme-primary),.1);display:flex;align-items:center;justify-content:center}.header-info[data-v-bf710b9a]{flex:1;min-width:0}.header-title[data-v-bf710b9a]{font-size:1.25rem;font-weight:600;margin:0 0 8px;color:rgb(var(--v-theme-on-surface))}.header-description[data-v-bf710b9a]{font-size:.875rem;color:rgba(var(--v-theme-on-surface),.7);margin:0;line-height:1.5}.settings-card[data-v-bf710b9a]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px;overflow:hidden}.settings-card-header[data-v-bf710b9a]{display:flex;align-items:center;gap:12px;padding:14px 20px;background:rgba(var(--v-theme-primary),.08);border-bottom:1px solid rgba(var(--v-theme-primary),.12)}.settings-card-header .v-icon[data-v-bf710b9a]{color:rgb(var(--v-theme-primary))}.settings-card-title[data-v-bf710b9a]{font-size:1.1rem;font-weight:600;margin:0;color:rgb(var(--v-theme-primary))}.settings-card-content[data-v-bf710b9a]{padding:20px}.config-entry[data-v-bf710b9a]{display:flex;align-items:flex-start;gap:8px;margin-top:12px}.config-entry[data-v-bf710b9a]:first-child{margin-top:0}.help-btn[data-v-bf710b9a]{flex-shrink:0;margin-top:8px;opacity:.6;transition:opacity .2s ease}.help-btn[data-v-bf710b9a]:hover{opacity:1}.config-entry:has(.v-checkbox)+.config-entry[data-v-bf710b9a]:has(.v-text-field),.config-entry:has(.v-checkbox)+.config-entry[data-v-bf710b9a]:has(.v-select),.config-entry:has(.v-checkbox)+.config-entry[data-v-bf710b9a]:has(.v-slider),.config-entry:has(.v-checkbox)+.config-entry[data-v-bf710b9a]:has(.v-combobox){margin-top:16px}.loading-overlay[data-v-bf710b9a]{display:flex;align-items:center;justify-content:center}@media (max-width: 600px){.header-content[data-v-bf710b9a]{flex-direction:column;align-items:flex-start}}
@@ -0,0 +1 @@
1
+ import{ay as F,bN as G,J as p,i as E,L as J,az as f,aA as u,aB as m,aI as g,o as n,aD as I,aP as v,aG as i,E as r,aL as M,bh as h,aN as c,aS as b,ah as R,aH as W,b8 as q,bx as K,c3 as A,c0 as Q,bV as X,M as V,bW as Y,aE as Z,_ as ee}from"./index-GQ3lWXrm.js";import{E as ae,C as te}from"./EditConfig-Bwi8QH5_.js";import{n as se}from"./index.browser-OxPLOBIU.js";import{V as ne}from"./VDialog-OmJrmVI_.js";import"./VAlert-C8Oto4eV.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VSlider-BxXcuhLj.js";import"./VSelect-vsgYa-Ce.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VForm-CRBkgkz1.js";import"./VExpansionPanels-D8F4VK-K.js";const oe={class:"edit-core-config"},ie={key:0},le={class:"header-content"},re={class:"header-icon"},de={class:"header-info"},ue={class:"header-title"},ce={class:"header-description"},ve={class:"settings-card-header"},me={class:"settings-card-title"},pe={class:"settings-card-content"},fe=F({__name:"EditCoreConfig",props:{domain:{}},setup(B){const L=Z(),{t:k}=G(),s=p(),N=se(11),d=p(!1),_=p(!1),l=p(),O=B,C=e=>e==null,T=e=>!e.hidden,D=e=>{if(!s.value)return!1;if(!C(e.depends_on)){const a=Object.values(s.value.values).find(x=>x.key==e.depends_on);if(!a)return!1;const o=a.value;return C(e.depends_on_value)?C(e.depends_on_value_not)?!o:o==e.depends_on_value_not:o!=e.depends_on_value}return!1},$=E(()=>s.value?Object.values(s.value.values).filter(e=>(!e.category||e.category==="generic")&&T(e)):[]),H=E(()=>s.value?Object.values(s.value.values).filter(e=>e.category&&e.category!=="generic"):[]);J(()=>O.domain,async e=>{e&&(s.value=await v.getCoreConfig(e))},{immediate:!0});const z=e=>{const t=k(`settings.core_module.${e.domain}.name`);return t!==`settings.core_module.${e.domain}.name`?t:v.providerManifests[e.domain].name},U=e=>{const t=k(`settings.core_module.${e.domain}.description`);return t!==`settings.core_module.${e.domain}.description`?t:v.providerManifests[e.domain].description},j=e=>({streams:"mdi-radio-tower",players:"mdi-speaker-multiple",metadata:"mdi-tag-multiple",music:"mdi-music",webserver:"mdi-web",cache:"mdi-cached"})[e]||"mdi-cog",P=async function(e){d.value=!0,v.saveCoreConfig(s.value.domain,e).then(()=>{d.value=!1,L.push({name:"providersettings"})}).catch(t=>{alert(t),d.value=!1})},w=async function(e,t){d.value=!0;for(const a of Object.values(s.value.values))a.value!==void 0&&t[a.key]==null&&(t[a.key]=a.value);t.session_id=N,v.getCoreConfigEntries(s.value.domain,e,t).then(a=>{s.value.values={};for(const o of a)s.value.values[o.key]=o;d.value=!1}).catch(a=>{alert(a),d.value=!1})},y=function(e){const t=document.createElement("a");t.setAttribute("href",e),t.setAttribute("target","_blank"),t.click()},S=function(e){return(k(`settings.${e?.key}.description`,e.description||" ")||e.help_link||" ")?.length>1};return(e,t)=>(u(),f("section",oe,[s.value&&I(v).providerManifests[s.value.domain]?(u(),f("div",ie,[n(b,{class:"header-card mb-4",elevation:"0"},{default:i(()=>[r("div",le,[r("div",re,[n(M,{size:"32",color:"primary"},{default:i(()=>[h(c(j(s.value.domain)),1)]),_:1})]),r("div",de,[r("h2",ue,c(z(s.value)),1),r("p",ce,c(U(s.value)),1)])])]),_:1}),$.value.length>0?(u(),g(b,{key:0,class:"settings-card mb-4",elevation:"0"},{default:i(()=>[r("div",ve,[n(M,{size:"20"},{default:i(()=>[...t[5]||(t[5]=[h("mdi-cog",-1)])]),_:1}),r("h3",me,c(e.$t("settings.category.generic","Basic settings")),1)]),r("div",pe,[(u(!0),f(R,null,W($.value,a=>(u(),f("div",{key:a.key,class:"config-entry"},[n(te,{"conf-entry":a,"show-password-values":_.value,disabled:D(a),onTogglePassword:t[0]||(t[0]=o=>_.value=!_.value),onClearValue:o=>a.value=a.default_value,"onUpdate:value":o=>a.value=o,onAction:o=>{w(a.action||a.key,{}),a.value=a.action?null:a.key}},null,8,["conf-entry","show-password-values","disabled","onClearValue","onUpdate:value","onAction"]),S(a)?(u(),g(V,{key:0,icon:"mdi-help-circle-outline",variant:"text",size:"small",class:"help-btn",onClick:o=>e.$t(`settings.${a?.key}.description`,a.description||"")?l.value=a:y(a.help_link)},null,8,["onClick"])):m("",!0)]))),128))])]),_:1})):m("",!0)])):m("",!0),s.value?(u(),g(ae,{key:1,"config-entries":H.value,disabled:!1,"show-generic-section":!1,onSubmit:P,onAction:w},null,8,["config-entries"])):m("",!0),n(K,{modelValue:d.value,"onUpdate:modelValue":t[1]||(t[1]=a=>d.value=a),scrim:"true",persistent:"",class:"loading-overlay"},{default:i(()=>[n(q,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"]),n(ne,{"model-value":l.value!==void 0,width:"auto","onUpdate:modelValue":t[4]||(t[4]=a=>l.value=void 0)},{default:i(()=>[n(b,null,{default:i(()=>[n(A,null,{default:i(()=>[r("h2",null,c(e.$t(`settings.${l.value?.key}.label`,l.value?.label||"")),1)]),_:1}),n(A,{innerHTML:I(Q)(e.$t(`settings.${l.value?.key}.description`,l.value?.description||""))},null,8,["innerHTML"]),n(X,null,{default:i(()=>[l.value?.help_link?(u(),g(V,{key:0,onClick:t[2]||(t[2]=a=>y(l.value.help_link))},{default:i(()=>[h(c(e.$t("read_more")),1)]),_:1})):m("",!0),n(Y),n(V,{color:"primary",onClick:t[3]||(t[3]=a=>l.value=void 0)},{default:i(()=>[h(c(e.$t("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])]))}}),Ae=ee(fe,[["__scopeId","data-v-bf710b9a"]]);export{Ae as default};
@@ -0,0 +1 @@
1
+ import{ay as q,J as _,aP as s,bb as Y,a4 as J,i as P,br as V,cC as C,b2 as L,L as W,az as f,aA as d,aB as m,aI as g,o as i,aD as n,aG as o,E as p,aL as y,bh as r,aN as v,cw as K,aS as $,bH as Q,ah as X,aH as Z,c3 as U,c0 as x,bV as ee,M as w,bW as ae,aE as le,bN as te,_ as se}from"./index-GQ3lWXrm.js";import{E as ie,C as ne}from"./EditConfig-Bwi8QH5_.js";import{n as oe}from"./index.browser-OxPLOBIU.js";import{V as re}from"./VSwitch-C4Td5_x0.js";import{V as de}from"./VDialog-OmJrmVI_.js";import"./VAlert-C8Oto4eV.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VSlider-BxXcuhLj.js";import"./VSelect-vsgYa-Ce.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VForm-CRBkgkz1.js";import"./VExpansionPanels-D8F4VK-K.js";const ue={class:"edit-player"},pe={key:0},ve={class:"header-content"},ce={class:"header-icon"},me={class:"header-info"},fe={class:"header-title"},ye={class:"header-meta"},_e={class:"meta-item"},ge={class:"meta-item"},be={key:0,class:"meta-item"},ke={key:1,class:"meta-item"},he={key:2,class:"meta-item"},Ee={class:"settings-card-header"},Pe={class:"settings-card-title"},Ve={class:"settings-card-content"},Ce=q({__name:"EditPlayer",props:{playerId:{}},setup(z){const A=le(),l=_(),M=oe(11),D=_(!1),b=z,k=_(!1),h=_(!1),c=_(),E=e=>e==null,B=e=>!e.hidden,N=e=>{if(!l.value)return!1;if(!E(e.depends_on)){const t=Object.values(l.value.values).find(j=>j.key==e.depends_on);if(!t)return!1;const u=t.value;return E(e.depends_on_value)?E(e.depends_on_value_not)?!u:u==e.depends_on_value_not:u!=e.depends_on_value}return!1};(async()=>{if(b.playerId)try{k.value=(await s.getDSPConfig(b.playerId)).enabled}catch(e){console.error("Error fetching DSP config:",e)}})();const O=s.subscribe(Y.PLAYER_DSP_CONFIG_UPDATED,e=>{k.value=e.data.enabled});J(O);const I=P(()=>{if(!l.value)return[];const e=Object.values(l.value.values),a=s.players[l.value.player_id];return a&&a.type!==V.GROUP?e.push({key:"dsp_settings",type:C.DSP_SETTINGS,label:"",default_value:k.value,required:!1,category:"audio"}):a&&a.type===V.GROUP&&a.supported_features.includes(L.MULTI_DEVICE_DSP)?e.push({key:"dsp_note_multi_device_group",type:C.LABEL,label:"You can configure the DSP for each player individually.",default_value:null,required:!1,category:"audio"}):a&&a.type===V.GROUP&&!a.supported_features.includes(L.MULTI_DEVICE_DSP)&&e.push({key:"dsp_note_multi_device_group_not_supported",type:C.LABEL,label:"This group type does not support DSP when playing to multiple devices.",default_value:null,required:!1,category:"audio"}),e}),G=P(()=>I.value.filter(e=>(!e.category||e.category==="generic")&&B(e))),H=P(()=>I.value.filter(e=>e.category&&e.category!=="generic"));W(()=>b.playerId,async e=>{e&&(l.value=await s.getPlayerConfig(e))},{immediate:!0});const F=async function(e){delete e.dsp_settings,e.enabled=l.value.enabled,e.name=l.value.name||null,s.savePlayerConfig(b.playerId,e),A.push({name:"playersettings"})},S=async function(e,a){D.value=!0;for(const t of Object.values(l.value.values))t.value!==void 0&&a[t.key]==null&&(a[t.key]=t.value);a.session_id=M,s.getPlayerConfigEntries(l.value.player_id,e,a).then(t=>{l.value.values={};for(const u of t)l.value.values[u.key]=u}).catch(t=>{alert(t)}).finally(()=>{D.value=!1})},T=function(e){const a=document.createElement("a");a.setAttribute("href",e),a.setAttribute("target","_blank"),a.click()},R=function(e){const{t:a}=te();return(a(`settings.${e?.key}.description`,e.description||" ")||e.help_link||" ")?.length>1};return(e,a)=>(d(),f("section",ue,[l.value&&n(s).getProviderManifest(l.value.provider).domain in n(s).providerManifests?(d(),f("div",pe,[i($,{class:"header-card mb-4",elevation:"0"},{default:o(()=>[p("div",ve,[p("div",ce,[i(y,{size:"32",color:"primary"},{default:o(()=>[...a[7]||(a[7]=[r("mdi-speaker",-1)])]),_:1})]),p("div",me,[p("h2",fe,v(l.value.name||n(s).players[l.value.player_id]?.name||l.value.default_name),1),p("div",ye,[p("span",_e,[i(y,{size:"14",class:"mr-1"},{default:o(()=>[...a[8]||(a[8]=[r("mdi-identifier",-1)])]),_:1}),r(" "+v(l.value.player_id),1)]),p("span",ge,[i(y,{size:"14",class:"mr-1"},{default:o(()=>[...a[9]||(a[9]=[r("mdi-puzzle",-1)])]),_:1}),r(" "+v(n(s).getProviderManifest(l.value.provider)?.name)+" ",1),n(s).getProviderManifest(l.value.provider)?.documentation?(d(),f("a",{key:0,class:"docs-link",onClick:a[0]||(a[0]=t=>n(K)(n(s).getProviderManifest(l.value.provider)?.documentation))},[i(y,{size:"12"},{default:o(()=>[...a[10]||(a[10]=[r("mdi-open-in-new",-1)])]),_:1})])):m("",!0)]),n(s).players[l.value.player_id]?(d(),f("span",be,[i(y,{size:"14",class:"mr-1"},{default:o(()=>[...a[11]||(a[11]=[r("mdi-information",-1)])]),_:1}),r(" "+v(n(s).players[l.value.player_id].device_info.manufacturer)+" / "+v(n(s).players[l.value.player_id].device_info.model),1)])):m("",!0),n(s).players[l.value.player_id]?.device_info.ip_address?(d(),f("span",ke,[i(y,{size:"14",class:"mr-1"},{default:o(()=>[...a[12]||(a[12]=[r("mdi-ip-network",-1)])]),_:1}),r(" "+v(n(s).players[l.value.player_id].device_info.ip_address),1)])):m("",!0),n(s).players[l.value.player_id]?(d(),f("span",he,[i(y,{size:"14",class:"mr-1"},{default:o(()=>[...a[13]||(a[13]=[r("mdi-tag",-1)])]),_:1}),r(" "+v(e.$t(`player_type.${n(s).players[l.value.player_id].type}`)),1)])):m("",!0)])])])]),_:1}),i($,{class:"settings-card mb-4",elevation:"0"},{default:o(()=>[p("div",Ee,[i(y,{size:"20"},{default:o(()=>[...a[14]||(a[14]=[r("mdi-cog",-1)])]),_:1}),p("h3",Pe,v(e.$t("settings.category.generic","Basic settings")),1)]),p("div",Ve,["name"in l.value?(d(),g(Q,{key:0,modelValue:l.value.name,"onUpdate:modelValue":a[1]||(a[1]=t=>l.value.name=t),placeholder:l.value?.name,label:e.$t("settings.player_name"),variant:"outlined",density:"comfortable",clearable:""},null,8,["modelValue","placeholder","label"])):m("",!0),"enabled"in l.value?(d(),g(re,{key:1,modelValue:l.value.enabled,"onUpdate:modelValue":a[2]||(a[2]=t=>l.value.enabled=t),label:e.$t("settings.enable_player"),color:"primary",disabled:n(s).getProviderManifest(l.value.provider)?.builtin,"hide-details":""},null,8,["modelValue","label","disabled"])):m("",!0),(d(!0),f(X,null,Z(G.value,t=>(d(),f("div",{key:t.key,class:"config-entry"},[i(ne,{"conf-entry":t,"show-password-values":h.value,disabled:N(t),onTogglePassword:a[3]||(a[3]=u=>h.value=!h.value),onClearValue:u=>t.value=t.default_value,"onUpdate:value":u=>t.value=u,onAction:u=>{S(t.action||t.key,{}),t.value=t.action?null:t.key}},null,8,["conf-entry","show-password-values","disabled","onClearValue","onUpdate:value","onAction"]),R(t)?(d(),g(w,{key:0,icon:"mdi-help-circle-outline",variant:"text",size:"small",class:"help-btn",onClick:u=>e.$t(`settings.${t?.key}.description`,t.description||"")?c.value=t:T(t.help_link)},null,8,["onClick"])):m("",!0)]))),128))])]),_:1})])):m("",!0),l.value?(d(),g(ie,{key:1,disabled:!l.value.enabled,"config-entries":H.value,"show-generic-section":!1,onSubmit:F,onAction:S},null,8,["disabled","config-entries"])):m("",!0),i(de,{"model-value":c.value!==void 0,width:"auto","onUpdate:modelValue":a[6]||(a[6]=t=>c.value=void 0)},{default:o(()=>[i($,null,{default:o(()=>[i(U,null,{default:o(()=>[p("h2",null,v(e.$t(`settings.${c.value?.key}.label`,c.value?.label||"")),1)]),_:1}),i(U,{innerHTML:n(x)(e.$t(`settings.${c.value?.key}.description`,c.value?.description||""))},null,8,["innerHTML"]),i(ee,null,{default:o(()=>[c.value?.help_link?(d(),g(w,{key:0,onClick:a[4]||(a[4]=t=>T(c.value.help_link))},{default:o(()=>[r(v(e.$t("read_more")),1)]),_:1})):m("",!0),i(ae),i(w,{color:"primary",onClick:a[5]||(a[5]=t=>c.value=void 0)},{default:o(()=>[r(v(e.$t("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])]))}}),He=se(Ce,[["__scopeId","data-v-86616a80"]]);export{He as default};
@@ -0,0 +1 @@
1
+ .edit-player[data-v-86616a80]{padding:16px}.header-card[data-v-86616a80]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px}.header-content[data-v-86616a80]{display:flex;gap:20px;padding:24px}.header-icon[data-v-86616a80]{flex-shrink:0;width:56px;height:56px;border-radius:12px;background:rgba(var(--v-theme-primary),.1);display:flex;align-items:center;justify-content:center}.header-info[data-v-86616a80]{flex:1;min-width:0}.header-title[data-v-86616a80]{font-size:1.25rem;font-weight:600;margin:0 0 8px;color:rgb(var(--v-theme-on-surface))}.header-meta[data-v-86616a80]{display:flex;flex-wrap:wrap;gap:16px}.meta-item[data-v-86616a80]{display:inline-flex;align-items:center;font-size:.813rem;color:rgba(var(--v-theme-on-surface),.6)}.docs-link[data-v-86616a80]{margin-left:4px;cursor:pointer;color:rgb(var(--v-theme-primary));opacity:.8;transition:opacity .2s ease}.docs-link[data-v-86616a80]:hover{opacity:1}.settings-card[data-v-86616a80]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px;overflow:hidden}.settings-card-header[data-v-86616a80]{display:flex;align-items:center;gap:12px;padding:14px 20px;background:rgba(var(--v-theme-primary),.08);border-bottom:1px solid rgba(var(--v-theme-primary),.12)}.settings-card-header .v-icon[data-v-86616a80]{color:rgb(var(--v-theme-primary))}.settings-card-title[data-v-86616a80]{font-size:1.1rem;font-weight:600;margin:0;color:rgb(var(--v-theme-primary))}.settings-card-content[data-v-86616a80]{padding:20px}.config-entry[data-v-86616a80]{display:flex;align-items:flex-start;gap:8px;margin-top:12px}.config-entry[data-v-86616a80]:first-child{margin-top:0}.help-btn[data-v-86616a80]{flex-shrink:0;margin-top:8px;opacity:.6;transition:opacity .2s ease}.help-btn[data-v-86616a80]:hover{opacity:1}.config-entry:has(.v-checkbox)+.config-entry[data-v-86616a80]:has(.v-text-field),.config-entry:has(.v-checkbox)+.config-entry[data-v-86616a80]:has(.v-select),.config-entry:has(.v-checkbox)+.config-entry[data-v-86616a80]:has(.v-slider),.config-entry:has(.v-checkbox)+.config-entry[data-v-86616a80]:has(.v-combobox){margin-top:16px}@media (max-width: 600px){.header-content[data-v-86616a80]{flex-direction:column;align-items:flex-start}.header-meta[data-v-86616a80]{flex-direction:column;gap:8px}}
@@ -1,4 +1,4 @@
1
- import{g as Fe,p as qe,dk 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,aL as K,an as ul,A as Qe,dl as Ke,z as Ye,C as we,cA as Xe,bZ as dl,K as ml,J as U,L as le,s as he,x as Je,b$ 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,av as hl,ay as ge,u as Oe,aI as $,aA as c,aG as a,az as pe,M as B,c3 as ae,bh as f,aN as A,ah as fe,aH as Ee,bd as Ze,aO as bl,_ as el,bT as Vl,bU as Ie,aT as O,aS as te,bH as ll,dm as L,dn as F,a2 as Cl,a3 as Le,cL as tl,aB as G,aD as h,bI as kl,bK as Se,bP as al,bQ as $e,cG as Sl,bW as Te,R as Pe,bN as Pl,dp as ne,a8 as Ll,bl as $l,aP as se,bb as He,a4 as Tl,b4 as Al,aF as Fl,aM as Ue,aJ as ze,ae as ql,bg as Ne,bV as xe,aE as Dl}from"./index-rZUS0c3q.js";import{V as wl}from"./VSlider-DzdWVMUa.js";import{V as be}from"./VSelect-uSApsKq0.js";import{V as Ae}from"./VSwitch-B-1g31ug.js";import{a as Ge,V as We}from"./VToolbar-hGVdN8lh.js";import{V as Ol}from"./VAlert-CBrxai34.js";import{V as je}from"./VDialog-BndVdZhi.js";import"./VVirtualScroll-C1eeqQrQ.js";import"./VCheckboxBtn-BMAdXnae.js";import"./VSelectionControl-S-aELuKm.js";const El=qe({dotColor:String,fillDot:Boolean,hideDot:Boolean,icon:Xe,iconColor:String,lineColor:String,...we(),...Ye(),...Ke(),...Qe()},"VTimelineDivider"),Il=Fe()({name:"VTimelineDivider",props:El(),setup(t,S){let{slots:b}=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:N,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",N.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)},[b.default?l(ul,{key:"icon-defaults",disabled:!t.icon,defaults:{VIcon:{color:t.iconColor,icon:t.icon,size:t.size}}},b.default):l(K,{key:"icon",color:t.iconColor,icon:t.icon,size:t.size},null)])]),z("div",{class:Q(["v-timeline-divider__after",N.value]),style:ie(u.value)},null)])),{}}}),nl=qe({density:String,dotColor:String,fillDot:Boolean,hideDot:Boolean,hideOpposite:{type:Boolean,default:void 0},icon:Xe,iconColor:String,lineInset:[Number,String],side:{type:String,validator:t=>t==null||["start","end"].includes(t)},...we(),...pl(),...Qe(),...Ye(),...Ke(),...Je()},"VTimelineItem"),me=Fe()({name:"VTimelineItem",props:nl(),setup(t,S){let{slots:b}=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":he(s.value),"--v-timeline-line-inset":t.lineInset?`calc(var(--v-timeline-dot-size) / 2 + ${he(t.lineInset)})`:he(0)},t.style])},[z("div",{class:"v-timeline-item__body",style:ie(g.value)},[b.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:b.icon}),t.density!=="compact"&&z("div",{class:"v-timeline-item__opposite"},[!t.hideOpposite&&b.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)},...hl(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:b}=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":he(t.lineThickness)},t.style])},b)),{}}}),Bl=ge({__name:"DSPPipeline",props:{dsp:{},selected:{}},emits:["onSelect","onAddFilter","onMoveFilter","onDeleteFilter"],setup(t,{emit:S}){const b=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":b.global.current.value.dark?"grey-darken-3":"grey-lighten-3",w=V=>({"filter-selected":g.selected===V}),N=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"}];bl.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=>N("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=>N(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=>N("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,b=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?b.value.toString():b.value>1e3?b.value.toFixed(0):b.value>100?b.value.toFixed(1):b.value.toFixed(2),set:u=>{b.value=Number(u)}}),m=j({get:()=>s.value.is_log?Math.log10(b.value):b.value,set:u=>{s.value.is_log?b.value=Math.pow(10,u):b.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),N=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:N.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}))}}),Nl={class:"d-flex flex-wrap justify-end align-center ga-2 pr-2"},xl={class:"d-flex align-center pl-1"},Gl=ge({__name:"DSPParametricEQ",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S={PK:L.PEAK,PEQ:L.PEAK,HP:L.HIGH_PASS,HPQ:L.HIGH_PASS,LP:L.LOW_PASS,LPQ:L.LOW_PASS,LS:L.LOW_SHELF,HS:L.HIGH_SHELF,NO:L.NOTCH},b={[L.PEAK]:"PK",[L.HIGH_PASS]:"HP",[L.LOW_PASS]:"LP",[L.LOW_SHELF]:"LS",[L.HIGH_SHELF]:"HS",[L.NOTCH]:"NO"},g=Object.entries(F).map(([n,e])=>({title:O(`settings.dsp.channels.${n}`),value:e})),s=n=>{const e=n.split(`
1
+ import{g as Fe,p as qe,dk 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,aL as K,an as ul,A as Qe,dl as Ke,z as Ye,C as we,cv as Xe,bZ as dl,K as ml,J as U,L as le,s as he,x as Je,b$ 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,av as hl,ay as ge,u as Oe,aI as $,aA as c,aG as a,az as pe,M as B,c3 as ae,bh as f,aN as A,ah as fe,aH as Ee,bd as Ze,aO as bl,_ as el,bT as Vl,bU as Ie,aT as O,aS as te,bH as ll,dm as L,dn as F,a2 as Cl,a3 as Le,cG as tl,aB as G,aD as h,bI as kl,bK as Se,bP as al,bQ as $e,cB as Sl,bW as Te,R as Pe,bN as Pl,dp as ne,a8 as Ll,bl as $l,aP as se,bb as He,a4 as Tl,b4 as Al,aF as Fl,aM as Ue,aJ as ze,ae as ql,bg as Ne,bV as xe,aE as Dl}from"./index-GQ3lWXrm.js";import{V as wl}from"./VSlider-BxXcuhLj.js";import{V as be}from"./VSelect-vsgYa-Ce.js";import{V as Ae}from"./VSwitch-C4Td5_x0.js";import{a as Ge,V as We}from"./VToolbar-BTrAkkB7.js";import{V as Ol}from"./VAlert-C8Oto4eV.js";import{V as je}from"./VDialog-OmJrmVI_.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";const El=qe({dotColor:String,fillDot:Boolean,hideDot:Boolean,icon:Xe,iconColor:String,lineColor:String,...we(),...Ye(),...Ke(),...Qe()},"VTimelineDivider"),Il=Fe()({name:"VTimelineDivider",props:El(),setup(t,S){let{slots:b}=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:N,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",N.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)},[b.default?l(ul,{key:"icon-defaults",disabled:!t.icon,defaults:{VIcon:{color:t.iconColor,icon:t.icon,size:t.size}}},b.default):l(K,{key:"icon",color:t.iconColor,icon:t.icon,size:t.size},null)])]),z("div",{class:Q(["v-timeline-divider__after",N.value]),style:ie(u.value)},null)])),{}}}),nl=qe({density:String,dotColor:String,fillDot:Boolean,hideDot:Boolean,hideOpposite:{type:Boolean,default:void 0},icon:Xe,iconColor:String,lineInset:[Number,String],side:{type:String,validator:t=>t==null||["start","end"].includes(t)},...we(),...pl(),...Qe(),...Ye(),...Ke(),...Je()},"VTimelineItem"),me=Fe()({name:"VTimelineItem",props:nl(),setup(t,S){let{slots:b}=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":he(s.value),"--v-timeline-line-inset":t.lineInset?`calc(var(--v-timeline-dot-size) / 2 + ${he(t.lineInset)})`:he(0)},t.style])},[z("div",{class:"v-timeline-item__body",style:ie(g.value)},[b.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:b.icon}),t.density!=="compact"&&z("div",{class:"v-timeline-item__opposite"},[!t.hideOpposite&&b.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)},...hl(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:b}=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":he(t.lineThickness)},t.style])},b)),{}}}),Bl=ge({__name:"DSPPipeline",props:{dsp:{},selected:{}},emits:["onSelect","onAddFilter","onMoveFilter","onDeleteFilter"],setup(t,{emit:S}){const b=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":b.global.current.value.dark?"grey-darken-3":"grey-lighten-3",w=V=>({"filter-selected":g.selected===V}),N=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"}];bl.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=>N("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=>N(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=>N("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,b=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?b.value.toString():b.value>1e3?b.value.toFixed(0):b.value>100?b.value.toFixed(1):b.value.toFixed(2),set:u=>{b.value=Number(u)}}),m=j({get:()=>s.value.is_log?Math.log10(b.value):b.value,set:u=>{s.value.is_log?b.value=Math.pow(10,u):b.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),N=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:N.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}))}}),Nl={class:"d-flex flex-wrap justify-end align-center ga-2 pr-2"},xl={class:"d-flex align-center pl-1"},Gl=ge({__name:"DSPParametricEQ",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S={PK:L.PEAK,PEQ:L.PEAK,HP:L.HIGH_PASS,HPQ:L.HIGH_PASS,LP:L.LOW_PASS,LPQ:L.LOW_PASS,LS:L.LOW_SHELF,HS:L.HIGH_SHELF,NO:L.NOTCH},b={[L.PEAK]:"PK",[L.HIGH_PASS]:"HP",[L.LOW_PASS]:"LP",[L.LOW_SHELF]:"LS",[L.HIGH_SHELF]:"HS",[L.NOTCH]:"NO"},g=Object.entries(F).map(([n,e])=>({title:O(`settings.dsp.channels.${n}`),value:e})),s=n=>{const e=n.split(`
2
2
  `),o=[];let P=!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,P=!0):(_==="R"||_==="2"||_==="FR")&&(C=F.FR,P=!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[_,Y,Z,Re,Ce,ke,X]=v;Z!=="None"&&o.push({frequency:parseFloat(Re),gain:parseFloat(Ce),q:parseFloat(ke),type:S[Z]||L.PEAK,enabled:Y==="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;P?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={}),Pe(()=>{W.value=-1})},D=n=>{const e=n.target;if(e.files&&e.files[0]){const o=e.files[0],P=new FileReader;P.onload=T=>{T.target?.result&&s(T.target.result)},P.readAsText(o)}},m=U(null),H=()=>{m.value?.click()},w=()=>{let n="";if(n+=`Preamp: ${ve.value.toFixed(2)} dB
3
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
4
  # ${y}
@@ -0,0 +1 @@
1
+ import{ay as x,J as g,i as A,a3 as G,aP as r,bb as J,a4 as R,L as W,az as h,aA as o,aB as c,aI as p,o as s,aD as v,aG as i,E as u,aV as q,aN as f,c0 as M,aS as V,aL as K,bh as b,bH as Q,ah as X,aH as Y,bg as Z,bi as ee,bV as T,M as _,b8 as ae,bx as te,c3 as H,bW as ne,bN as I,aE as le,_ as se}from"./index-GQ3lWXrm.js";import{E as ie,C as oe}from"./EditConfig-Bwi8QH5_.js";import{n as re}from"./index.browser-OxPLOBIU.js";import{V as de}from"./VSwitch-C4Td5_x0.js";import{V as ue}from"./VDialog-OmJrmVI_.js";import"./VAlert-C8Oto4eV.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VSlider-BxXcuhLj.js";import"./VSelect-vsgYa-Ce.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VForm-CRBkgkz1.js";import"./VExpansionPanels-D8F4VK-K.js";const ve={class:"edit-provider"},ce={key:0},pe={class:"header-content"},me={class:"header-icon"},fe={class:"header-info"},be={class:"header-title"},ge={class:"header-description"},he=["innerHTML"],ke={class:"settings-card-header"},Ve={class:"settings-card-title"},_e={class:"settings-card-content"},ye={id:"auth",href:"",target:"_blank"},we=x({__name:"EditProvider",props:{instanceId:{}},setup(L){const P=le(),n=g(),C=re(11),m=g(!1),k=g(!1),B=L,y=g(!1),d=g(),w=e=>e==null,S=e=>!e.hidden,U=e=>{if(!n.value)return!1;if(!w(e.depends_on)){const t=Object.values(n.value.values).find(F=>F.key==e.depends_on);if(!t)return!1;const l=t.value;return w(e.depends_on_value)?w(e.depends_on_value_not)?!l:l==e.depends_on_value_not:l!=e.depends_on_value}return!1},N=A(()=>n.value?Object.values(n.value.values).filter(e=>(!e.category||e.category==="generic")&&S(e)):[]),O=A(()=>n.value?Object.values(n.value.values).filter(e=>e.category&&e.category!=="generic"):[]);G(()=>{const e=r.subscribe(J.AUTH_SESSION,a=>{if(a.object_id!==C)return;const t=a.data;k.value=!0,window.setTimeout(()=>{const l=document.getElementById("auth");l.setAttribute("href",t),l.click()},100)});R(e)}),W(()=>B.instanceId,async e=>{e&&(n.value=await r.getProviderConfig(e))},{immediate:!0});const j=async function(e){m.value=!0,e.enabled=n.value.enabled,e.name=n.value.name||null,r.saveProviderConfig(n.value.domain,e,n.value.instance_id).then(()=>{P.push({name:"providersettings"})}).catch(a=>{alert(a)}).finally(()=>{m.value=!1,k.value=!1})},$=async function(e,a){m.value=!0;for(const t of Object.values(n.value.values))t.value!==void 0&&a[t.key]==null&&(a[t.key]=t.value);a.session_id=C,r.getProviderConfigEntries(n.value.domain,n.value.instance_id,e,a).then(t=>{n.value.values={};for(const l of t)n.value.values[l.key]=l}).catch(t=>{alert(t)}).finally(()=>{m.value=!1,k.value=!1})},z=function(e){const a=[],{t}=I();for(const l of e)l.includes("@")?a.push(`[${l.replace("@","")}](https://github.com/${l.replace("@","")})`):a.push(l);return`**${t("settings.codeowners")}**: `+a.join(" / ")},E=function(e){const a=document.createElement("a");a.setAttribute("href",e),a.setAttribute("target","_blank"),a.click()},D=function(e){const{t:a}=I();return(a(`settings.${e?.key}.description`,e.description||" ")||e.help_link||" ")?.length>1};return(e,a)=>(o(),h("section",ve,[n.value&&v(r).providerManifests[n.value.domain]?(o(),h("div",ce,[s(V,{class:"header-card mb-4",elevation:"0"},{default:i(()=>[u("div",pe,[u("div",me,[s(q,{domain:n.value.domain,size:48},null,8,["domain"])]),u("div",fe,[u("h2",be,f(v(r).providerManifests[n.value.domain].name),1),u("p",ge,f(v(r).providerManifests[n.value.domain].description),1),v(r).providerManifests[n.value.domain].codeowners.length?(o(),h("div",{key:0,class:"header-authors",innerHTML:v(M)(z(v(r).providerManifests[n.value.domain].codeowners))},null,8,he)):c("",!0)])])]),_:1}),s(V,{class:"settings-card mb-4",elevation:"0"},{default:i(()=>[u("div",ke,[s(K,{size:"20"},{default:i(()=>[...a[7]||(a[7]=[b("mdi-cog",-1)])]),_:1}),u("h3",Ve,f(e.$t("settings.category.generic","Basic settings")),1)]),u("div",_e,["name"in n.value?(o(),p(Q,{key:0,modelValue:n.value.name,"onUpdate:modelValue":a[0]||(a[0]=t=>n.value.name=t),placeholder:v(r).getProvider(n.value.instance_id)?.name,label:e.$t("settings.provider_name"),variant:"outlined",density:"comfortable",clearable:""},null,8,["modelValue","placeholder","label"])):c("",!0),"enabled"in n.value?(o(),p(de,{key:1,modelValue:n.value.enabled,"onUpdate:modelValue":a[1]||(a[1]=t=>n.value.enabled=t),label:e.$t("settings.enable_provider"),color:"primary",disabled:!v(r).providerManifests[n.value.domain]?.allow_disable,"hide-details":""},null,8,["modelValue","label","disabled"])):c("",!0),(o(!0),h(X,null,Y(N.value,t=>(o(),h("div",{key:t.key,class:"config-entry"},[s(oe,{"conf-entry":t,"show-password-values":y.value,disabled:U(t),onTogglePassword:a[2]||(a[2]=l=>y.value=!y.value),onClearValue:l=>t.value=t.default_value,"onUpdate:value":l=>t.value=l,onAction:l=>{$(t.action||t.key,{}),t.value=t.action?null:t.key}},null,8,["conf-entry","show-password-values","disabled","onClearValue","onUpdate:value","onAction"]),D(t)?(o(),p(_,{key:0,icon:"mdi-help-circle-outline",variant:"text",size:"small",class:"help-btn",onClick:l=>e.$t(`settings.${t?.key}.description`,t.description||"")?d.value=t:E(t.help_link)},null,8,["onClick"])):c("",!0)]))),128))])]),_:1})])):c("",!0),n.value?(o(),p(ie,{key:1,"config-entries":O.value,disabled:!n.value.enabled,"show-generic-section":!1,onSubmit:j,onAction:$},null,8,["config-entries","disabled"])):c("",!0),s(te,{modelValue:m.value,"onUpdate:modelValue":a[3]||(a[3]=t=>m.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:i(()=>[k.value?(o(),p(V,{key:0,style:{"background-color":"white"}},{default:i(()=>[s(Z,null,{default:i(()=>[...a[8]||(a[8]=[b("Authenticating...",-1)])]),_:1}),s(ee,null,{default:i(()=>[...a[9]||(a[9]=[b("A new tab/popup should be opened where you can authenticate",-1)])]),_:1}),s(T,null,{default:i(()=>[u("a",ye,[s(_,null,{default:i(()=>[...a[10]||(a[10]=[b("Click here if the popup did not open",-1)])]),_:1})])]),_:1})]),_:1})):(o(),p(ae,{key:1,indeterminate:"",size:"64",color:"primary"}))]),_:1},8,["modelValue"]),s(ue,{"model-value":d.value!==void 0,width:"auto","onUpdate:modelValue":a[6]||(a[6]=t=>d.value=void 0)},{default:i(()=>[s(V,null,{default:i(()=>[s(H,null,{default:i(()=>[u("h2",null,f(e.$t(`settings.${d.value?.key}.label`,d.value?.label||"")),1)]),_:1}),s(H,{innerHTML:v(M)(e.$t(`settings.${d.value?.key}.description`,d.value?.description||""))},null,8,["innerHTML"]),s(T,null,{default:i(()=>[d.value?.help_link?(o(),p(_,{key:0,onClick:a[4]||(a[4]=t=>E(d.value.help_link))},{default:i(()=>[b(f(e.$t("read_more")),1)]),_:1})):c("",!0),s(ne),s(_,{color:"primary",onClick:a[5]||(a[5]=t=>d.value=void 0)},{default:i(()=>[b(f(e.$t("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])]))}}),Oe=se(we,[["__scopeId","data-v-203e6e90"]]);export{Oe as default};
@@ -0,0 +1 @@
1
+ .edit-provider[data-v-203e6e90]{padding:16px}.header-card[data-v-203e6e90]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px}.header-content[data-v-203e6e90]{display:flex;gap:20px;padding:24px}.header-icon[data-v-203e6e90]{flex-shrink:0}.header-info[data-v-203e6e90]{flex:1;min-width:0}.header-title[data-v-203e6e90]{font-size:1.25rem;font-weight:600;margin:0 0 8px;color:rgb(var(--v-theme-on-surface))}.header-description[data-v-203e6e90]{font-size:.875rem;color:rgba(var(--v-theme-on-surface),.7);margin:0 0 12px;line-height:1.5}.header-authors[data-v-203e6e90]{font-size:.813rem;color:rgba(var(--v-theme-on-surface),.6)}.header-authors[data-v-203e6e90] a{color:rgb(var(--v-theme-primary));text-decoration:none}.header-authors[data-v-203e6e90] a:hover{text-decoration:underline}.settings-card[data-v-203e6e90]{border:1px solid rgba(var(--v-theme-on-surface),.12);border-radius:12px;overflow:hidden}.settings-card-header[data-v-203e6e90]{display:flex;align-items:center;gap:12px;padding:14px 20px;background:rgba(var(--v-theme-primary),.08);border-bottom:1px solid rgba(var(--v-theme-primary),.12)}.settings-card-header .v-icon[data-v-203e6e90]{color:rgb(var(--v-theme-primary))}.settings-card-title[data-v-203e6e90]{font-size:1.1rem;font-weight:600;margin:0;color:rgb(var(--v-theme-primary))}.settings-card-content[data-v-203e6e90]{padding:20px}.config-entry[data-v-203e6e90]{display:flex;align-items:flex-start;gap:8px;margin-top:12px}.config-entry[data-v-203e6e90]:first-child{margin-top:0}.help-btn[data-v-203e6e90]{flex-shrink:0;margin-top:8px;opacity:.6;transition:opacity .2s ease}.help-btn[data-v-203e6e90]:hover{opacity:1}.config-entry:has(.v-checkbox)+.config-entry[data-v-203e6e90]:has(.v-text-field),.config-entry:has(.v-checkbox)+.config-entry[data-v-203e6e90]:has(.v-select),.config-entry:has(.v-checkbox)+.config-entry[data-v-203e6e90]:has(.v-slider),.config-entry:has(.v-checkbox)+.config-entry[data-v-203e6e90]:has(.v-combobox){margin-top:16px}@media (max-width: 600px){.header-content[data-v-203e6e90]{flex-direction:column;align-items:flex-start}}
@@ -0,0 +1 @@
1
+ import{ay as v,J as d,a3 as b,cC as s,cD as S,aT as e,aP as k,cE as I,az as E,aA as m,o as r,aG as p,aI as h,aB as w,c3 as C,b8 as N,bx as T,aE as V}from"./index-GQ3lWXrm.js";import{E as q}from"./EditConfig-Bwi8QH5_.js";import{D as g}from"./constants-CXMxJR4j.js";import"./VAlert-C8Oto4eV.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VSlider-BxXcuhLj.js";import"./VSelect-vsgYa-Ce.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VForm-CRBkgkz1.js";import"./VExpansionPanels-D8F4VK-K.js";import"./VDialog-OmJrmVI_.js";const j=v({__name:"FrontendConfig",setup(A){const f=V(),n=d([]),u=d(!1);b(()=>{const l=localStorage.getItem("frontend.settings.menu_items"),a=l?l.split(","):g,t=[{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"},...S.global.availableLocales.map(o=>({title:o,value:o}))],multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.language")},{key:"menu_items",type:s.STRING,label:"menu_items",default_value:g,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:a},{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")==="true"}];if(k.getProvider("sendspin")?.available??!1){t.splice(3,0,{key:"web_player_mode",type:s.STRING,label:"web_player_mode",default_value:"sendspin",required:!1,options:[{title:e("settings.web_player_mode.options.sendspin"),value:"sendspin"},{title:e("settings.web_player_mode.options.disabled"),value:"disabled"}],multi_value:!1,category:"generic",value:localStorage.getItem("frontend.settings.web_player_mode")||"sendspin"});const o=I();t.splice(4,0,{key:"sendspin_sync_delay",type:s.INTEGER,label:"sendspin_sync_delay",default_value:o,required:!1,multi_value:!1,category:"generic",value:parseInt(localStorage.getItem("frontend.settings.sendspin_sync_delay")||String(o),10)});const c=localStorage.getItem("frontend.settings.sendspin_output_latency_compensation");t.splice(5,0,{key:"sendspin_output_latency_compensation",type:s.BOOLEAN,label:"sendspin_output_latency_compensation",default_value:!0,required:!1,multi_value:!1,category:"generic",value:c!==null?c==="true":!0})}n.value=t});const y=async function(l){for(const a in l){const t=`frontend.settings.${a}`,i=l[a];i!=null?localStorage.setItem(t,i.toString()):localStorage.removeItem(t)}f.push({name:"home"}).then(()=>{window.location.reload()})},_=async function(l,a){};return(l,a)=>(m(),E("section",null,[r(C,null,{default:p(()=>[n.value?(m(),h(q,{key:0,"config-entries":n.value,disabled:!1,onSubmit:y,onAction:_},null,8,["config-entries"])):w("",!0)]),_:1}),r(T,{modelValue:u.value,"onUpdate:modelValue":a[0]||(a[0]=t=>u.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:p(()=>[r(N,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{j as default};
@@ -0,0 +1 @@
1
+ import{C as A}from"./Container-Bc5cvdS8.js";import{W as D}from"./WidgetRow-lS8eZGg2.js";import{u as T}from"./userPreferences-CU3N6m4Z.js";import{ay as V,i as z,aP as h,bv as N,b3 as P,az as _,aA as r,r as W,o as a,aG as s,aB as k,M as I,E as x,aN as H,aY as M,ah as U,aH as E,aI as m,ax as i,_ as R,J as C,a3 as F,bb as Y,a4 as G,L as J,aT as O,b4 as j,aF as q,aJ as w,aD as c,bE as $,am as S,aL as b,aU as K,aE as Q,ae as X,b8 as Z,bF as ee,by as te}from"./index-GQ3lWXrm.js";import{a as ae}from"./PlayerCard-BSr8tpdq.js";import{V as se}from"./VToolbar-BTrAkkB7.js";import{T as re}from"./Toolbar-BhPGsr4E.js";import"./index-kQIztB-E.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VAlert-C8Oto4eV.js";import"./Button-BcX_QSum.js";import"./VSlider-BxXcuhLj.js";const ne={class:"mr-3"},oe={key:0},ie=V({__name:"PlayersWidgetRow",props:{settings:{},editMode:{type:Boolean}},emits:["update:settings"],setup(l,{emit:g}){const n=z(()=>Object.values(h.players).filter(e=>N(e)).sort((e,f)=>e.name.toUpperCase()>f.name?.toUpperCase()?1:-1).sort((e,f)=>p(e)-p(f))),y=g;function v(e){i.activePlayerId=e.player_id}function p(e){return e.playback_state==P.PLAYING?0:e.playback_state==P.PAUSED?1:e.current_media&&e.powered?3:e.current_media?4:99}return(e,f)=>{const d=M("swiper-slide"),o=M("swiper");return r(),_("div",{class:W(`widget-row ${l.settings&&!l.settings.enabled?"disabled":""}`)},[a(se,{class:"header",color:"transparent"},{title:s(()=>[x("span",ne,H(e.$t("players")),1)]),append:s(()=>[l.editMode?(r(),_("div",oe,[a(I,{icon:l.settings.enabled?"mdi-checkbox-marked":"mdi-checkbox-blank-outline",onClick:f[0]||(f[0]=t=>y("update:settings",{...l.settings,enabled:!l.settings.enabled}))},null,8,["icon"])])):k("",!0)]),_:1}),a(o,{"slides-per-view":"auto","space-between":15,"free-mode":!1,navigation:!1,mousewheel:{forceToAxis:!0,releaseOnEdges:!0}},{default:s(()=>[(r(!0),_(U,null,E(n.value,t=>(r(),m(d,{key:t.player_id},{default:s(()=>[(r(),m(ae,{id:t.player_id,key:t.player_id,player:t,"show-volume-control":!1,"show-menu-button":!1,"show-sub-players":!1,"show-sync-controls":!1,style:{width:"305px"},onClick:u=>v(t)},null,8,["id","player","onClick"]))]),_:2},1024))),128))]),_:1})],2)}}}),le=R(ie,[["__scopeId","data-v-771a3548"]]),de=V({__name:"HomeWidgetRows",props:{editMode:{type:Boolean,default:!1}},setup(l){const g=C([]),n=C({}),{getPreference:y,setPreference:v}=T(),p=y("widgetRowSettings",{players:{position:0,enabled:!0}}),e=async function(){i.currentUser?.preferences?n.value=p.value||{players:{position:0,enabled:!0}}:n.value={players:{position:0,enabled:!0}};const d=await h.getRecommendations(),o=[];let t=0;for(const u of d){t++;const B=n.value[u.uri]||{position:t,enabled:!0},L=u.translation_key?O(`recommendations.${u.translation_key}`,u.name):u.name;o.push({...u,settings:B,title:L}),g.value=o}};F(()=>{e();const d=h.subscribe(Y.MEDIA_ITEM_PLAYED,async o=>{o.data&&!o.data.is_playing&&e()});G(d)}),J(()=>i.currentUser?.preferences,d=>{d&&e()},{immediate:!1});const f=function(d,o){for(const t of g.value)if(t.uri===d){t.settings=o;break}n.value[d]=o,v("widgetRowSettings",n.value)};return(d,o)=>(r(),_(U,null,[n.value.players?.enabled||l.editMode?(r(),m(le,{key:0,settings:n.value.players,"edit-mode":l.editMode,"onUpdate:settings":o[0]||(o[0]=t=>f("players",t))},null,8,["settings","edit-mode"])):k("",!0),(r(!0),_(U,null,E(g.value.filter(t=>t.items.length&&(t.settings.enabled||l.editMode)).sort((t,u)=>t.settings.position-u.settings.position),t=>(r(),_("div",{key:t.uri},[g.value.length?(r(),m(D,{key:0,"widget-row":t,"edit-mode":l.editMode,"onUpdate:settings":u=>f(t.uri,u)},null,8,["widget-row","edit-mode","onUpdate:settings"])):k("",!0)]))),128))],64))}}),ue=V({__name:"HomeView",setup(l){const g=Q(),n=C(!1),y=()=>{te.logout()};return(v,p)=>(r(),_("div",null,[a(re,{"show-loading":!0,home:!0,color:"background"},{append:s(()=>[a(j,{location:"bottom end",scrim:""},{activator:s(({props:e})=>[a(I,X({variant:"plain",style:{width:"40px",height:"40px","margin-right":"8px"}},e),{default:s(()=>[a($,{size:"40",color:c(i).currentUser?.avatar_url?void 0:"primary",class:"user-avatar"},{default:s(()=>[c(i).currentUser?.avatar_url?(r(),m(S,{key:0,src:c(i).currentUser.avatar_url},null,8,["src"])):(r(),m(b,{key:1,icon:"mdi-account",size:"20",color:"white"}))]),_:1},8,["color"])]),_:1},16)]),default:s(()=>[a(q,{density:"compact",slim:"",tile:""},{default:s(()=>[a(w,{title:c(i).currentUser?.display_name||c(i).currentUser?.username,subtitle:c(i).currentUser?.username,disabled:"",class:"user-header-item"},{prepend:s(()=>[a($,{size:"40",color:c(i).currentUser?.avatar_url?void 0:"primary",class:"user-avatar"},{default:s(()=>[c(i).currentUser?.avatar_url?(r(),m(S,{key:0,src:c(i).currentUser.avatar_url},null,8,["src"])):(r(),m(b,{key:1,icon:"mdi-account",size:"20",color:"white"}))]),_:1},8,["color"])]),_:1},8,["title","subtitle"]),a(K,{class:"my-1"}),a(w,{title:v.$t("auth.profile"),onClick:p[0]||(p[0]=e=>c(g).push({name:"profile"}))},{prepend:s(()=>[a(b,{icon:"mdi-account-cog"})]),_:1},8,["title"]),a(w,{title:v.$t(n.value?"homescreen_edit_disable":"homescreen_edit_enable"),onClick:p[1]||(p[1]=e=>n.value=!n.value)},{prepend:s(()=>[a(b,{icon:"mdi-pencil"})]),_:1},8,["title"]),c(i).isIngressSession?k("",!0):(r(),m(w,{key:0,title:v.$t("auth.logout"),onClick:y},{prepend:s(()=>[a(b,{icon:"mdi-logout"})]),_:1},8,["title"]))]),_:1})]),_:1})]),_:1}),a(A,{variant:"comfortable"},{default:s(()=>[(r(),m(ee,null,{fallback:s(()=>[a(Z,{indeterminate:""})]),default:s(()=>[x("div",null,[a(de,{"edit-mode":n.value},null,8,["edit-mode"])])]),_:1}))]),_:1})]))}}),$e=R(ue,[["__scopeId","data-v-22a0cc44"]]);export{$e as default};
@@ -0,0 +1 @@
1
+ import{C as vt}from"./Container-Bc5cvdS8.js";import{T as ft}from"./Toolbar-BhPGsr4E.js";import{g as we,p as Re,G as Ee,l as yt,o as k,q as Ne,r as R,v as Ye,x as ht,w as bt,C as pt,$ as kt,U as wt,j as gt,c9 as It,aa as Bt,ca as At,f as St,J as C,K as ye,T as Tt,a1 as Ct,L as j,a3 as Ke,cb as Pt,i as W,n as Ft,bx as he,ae as ie,ap as xt,ai as Vt,cc as Lt,z as Dt,cd as Mt,ce as Ot,cf as $t,a7 as Rt,R as be,cg as Et,ch as Nt,a2 as Ue,ci as Yt,E,bJ as ze,an as Kt,ay as re,aI as m,aA as s,aD as y,bd as G,aP as oe,bN as Ge,cj as X,aG as c,aB as v,az as I,b5 as ae,am as Ut,c8 as He,c1 as pe,bh as S,aN as h,aV as zt,aQ as V,aL as Y,b7 as Gt,bp as ne,ck as Ht,bq as jt,cl as je,c2 as Xe,M as ue,c4 as qe,cm as ge,cn as We,_ as Ie,bO as Xt,N as qt,aS as Wt,aM as Jt,bS as J,aJ as Qt,ax as T,bV as Zt,bW as _t,aR as q,co as ea,a4 as ve,cp as ta,aO as xe,bb as Q,a$ as aa,aU as ia,bH as la,bP as Ve,ah as Le,aH as De,bM as fe,aE as sa,b3 as oa,bQ as Me,bL as Oe}from"./index-GQ3lWXrm.js";import{M as Je}from"./Button-BcX_QSum.js";import{L as na}from"./ListItem-Cz0zK7Ay.js";import{_ as ke}from"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import{M as Qe}from"./MediaItemThumb-C--YJJ5Y.js";import{V as Ze}from"./VCheckbox-CgwahLqh.js";import{V as ua,P as ra}from"./PanelviewItemCompact-BFofUlbn.js";import{u as ca}from"./userPreferences-CU3N6m4Z.js";import{V as ma}from"./VInfiniteScroll-C839Qj3G.js";import{V as da}from"./VVirtualScroll-YsHPZNGu.js";import{V as $e}from"./VAlert-C8Oto4eV.js";const _e=Symbol.for("vuetify:v-item-group"),va=Re({...pt(),...bt({selectedClass:"v-item--selected"}),...ht(),...Ye()},"VItemGroup"),et=we()({name:"VItemGroup",props:va(),emits:{"update:modelValue":e=>!0},setup(e,a){let{slots:p}=a;const{themeClasses:f}=Ee(e),{isSelected:A,select:B,next:l,prev:g,selected:d}=yt(e,_e);return()=>k(e.tag,{class:R(["v-item-group",f.value,e.class]),style:Ne(e.style)},{default:()=>[p.default?.({isSelected:A,select:B,next:l,prev:g,selected:d.value})]})}}),K=we()({name:"VItem",props:kt(),emits:{"group:selected":e=>!0},setup(e,a){let{slots:p}=a;const{isSelected:f,select:A,toggle:B,selectedClass:l,value:g,disabled:d}=wt(e,_e);return()=>p.default?.({isSelected:f.value,selectedClass:l.value,select:A,toggle:B,value:g.value,disabled:d.value})}});function fa(e){const a=ye(e());let p=-1;function f(){clearInterval(p)}function A(){f(),be(()=>a.value=e())}function B(l){const g=l?getComputedStyle(l):{transitionDuration:.2},d=parseFloat(g.transitionDuration)*1e3||200;if(f(),a.value<=0)return;const F=performance.now();p=window.setInterval(()=>{const n=performance.now()-F+d;a.value=Math.max(e()-n,0),a.value<=0&&f()},d)}return Rt(f),{clear:f,time:a,start:B,reset:A}}const ya=Re({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...Ot({location:"bottom"}),...Mt(),...Dt(),...Lt(),...Ye(),...Vt($t({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","retainFocus","captureFocus","disableInitialFocus","scrim","scrollStrategy","stickToTarget","viewportMargin"])},"VSnackbar"),ha=we()({name:"VSnackbar",props:ya(),emits:{"update:modelValue":e=>!0},setup(e,a){let{slots:p}=a;const f=gt(e,"modelValue"),{positionClasses:A}=It(e),{scopeId:B}=Bt(),{themeClasses:l}=Ee(e),{colorClasses:g,colorStyles:d,variantClasses:F}=At(e),{roundedClasses:n}=St(e),b=fa(()=>Number(e.timeout)),w=C(),x=C(),O=ye(!1),L=ye(0),N=C(),$=Tt(Et,void 0);Ct(()=>!!$,()=>{const P=Nt();Ue(()=>{N.value=P.mainStyles.value})}),j(f,H),j(()=>e.timeout,H),Ke(()=>{f.value&&H()});let U=-1;function H(){b.reset(),window.clearTimeout(U);const P=Number(e.timeout);if(!f.value||P===-1)return;const z=Pt(x.value);b.start(z),U=window.setTimeout(()=>{f.value=!1},P)}function le(){b.reset(),window.clearTimeout(U)}function Z(){O.value=!0,le()}function se(){O.value=!1,H()}function _(P){L.value=P.touches[0].clientY}function ee(P){Math.abs(L.value-P.changedTouches[0].clientY)>50&&(f.value=!1)}function ce(){O.value&&se()}const me=W(()=>e.location.split(" ").reduce((P,z)=>(P[`v-snackbar--${z}`]=!0,P),{}));return Ft(()=>{const P=he.filterProps(e),z=!!(p.default||p.text||e.text);return k(he,ie({ref:w,class:["v-snackbar",{"v-snackbar--active":f.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},me.value,A.value,e.class],style:[N.value,e.style]},P,{modelValue:f.value,"onUpdate:modelValue":te=>f.value=te,contentProps:ie({class:["v-snackbar__wrapper",l.value,g.value,n.value,F.value],style:[d.value],onPointerenter:Z,onPointerleave:se},P.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:_,onTouchend:ee,onAfterLeave:ce},B),{default:()=>[Yt(!1,"v-snackbar"),e.timer&&!O.value&&E("div",{key:"timer",class:"v-snackbar__timer"},[k(ze,{ref:x,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,modelValue:b.time.value},null)]),z&&E("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[p.text?.()??e.text,p.default?.()]),p.actions&&k(Kt,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[E("div",{class:"v-snackbar__actions"},[p.actions({isActive:f})])]})],activator:p.activator})}),xt({},w)}}),tt=re({__name:"FavoriteButton",props:{item:{}},setup(e){const a=e;return(p,f)=>(s(),m(Je,ie(a,{variant:"icon",icon:e.item?.favorite?"mdi-heart":"mdi-heart-outline",title:p.$t("tooltip.favorite"),onClick:[f[0]||(f[0]=A=>y(oe).toggleFavorite(e.item)),f[1]||(f[1]=G(()=>{},["prevent"])),f[2]||(f[2]=G(()=>{},["stop"]))]}),null,16,["icon","title"]))}}),ba={key:0,class:"media-thumb listitem-media-thumb"},pa={key:1,class:"media-thumb listitem-media-thumb"},ka={key:0},wa={key:0},ga={key:0,class:"line-clamp-1"},Ia={key:1},Ba={key:0},Aa={key:1},Sa={key:2},Ta={key:3},Ca={key:4},Pa={key:5},Fa={key:6},xa={key:7},Va={key:5},La={key:6},Da={class:"text-caption",style:{"padding-right":"10px","padding-left":"10px"}},Ma=re({__name:"ListviewItem",props:{item:{},showTrackNumber:{type:Boolean,default:!0},showDiscNumber:{type:Boolean,default:!0},showPosition:{type:Boolean,default:!0},showProvider:{type:Boolean,default:!0},showAlbum:{type:Boolean,default:!0},showMenu:{type:Boolean,default:!0},showFavorite:{type:Boolean,default:!1},showDuration:{type:Boolean,default:!0},isSelected:{type:Boolean},isDisabled:{type:Boolean,default:!1},isAvailable:{type:Boolean,default:!0},isPlaying:{type:Boolean},showCheckboxes:{type:Boolean,default:!1},showDetails:{type:Boolean},parentItem:{default:void 0}},emits:["select"],setup(e,{emit:a}){const{t:p}=Ge(),f=C(!1),A=e,B=W(()=>{if(!("provider_mappings"in A.item))return"";for(const n of A.item.provider_mappings)if(n.audio_format&&n.audio_format.content_type!=null&&[X.DSF,X.FLAC,X.AIFF,X.WAV].includes(n.audio_format.content_type)&&(n.audio_format.sample_rate>48e3||n.audio_format.bit_depth>16))return`${n.audio_format.sample_rate/1e3}kHz ${n.audio_format.bit_depth} bits`;return""}),l=a,g=function(n){const b=n;ge(A.item,b.clientX,b.clientY,A.parentItem)},d=function(n){if(A.showCheckboxes)return;const b=n;We(A.item,b.clientX,b.clientY,A.parentItem)},F=function(n){A.showCheckboxes||qe(A.item,n.clientX,n.clientY,A.parentItem)};return(n,b)=>(s(),m(na,{link:"","show-menu-btn":e.showMenu,class:R({unavailable:!e.isAvailable}),onClick:G(d,["stop"]),onMenu:G(g,["stop"])},{prepend:c(()=>[e.showCheckboxes?(s(),I("div",ba,[k(Ze,{"model-value":e.isSelected,onClick:b[0]||(b[0]=G(()=>{},["stop"])),"onUpdate:modelValue":b[1]||(b[1]=w=>{w!=null&&l("select",e.item,w)})},null,8,["model-value"])])):(s(),I("div",pa,[k(Qe,{size:"50",item:e.isAvailable?e.item:void 0,class:R({dimmed:f.value})},null,8,["item","class"])])),!e.showCheckboxes&&e.item.is_playable?(s(),m(ue,{key:2,class:R({hidden:!f.value}),icon:"mdi-play",variant:"text",size:"small",style:{position:"absolute",left:"14px",bottom:"12px",color:"white","font-size":"18px"},onClick:G(F,["stop"]),onMouseenter:b[2]||(b[2]=w=>f.value=!0),onMouseleave:b[3]||(b[3]=w=>f.value=!1)},null,8,["class"])):v("",!0)]),title:c(()=>[e.item.media_type==y(V).FOLDER?(s(),I("span",ka,[E("span",null,h(y(je)(e.item,y(p))),1)])):(s(),I("span",{key:1,class:R({"is-playing":e.isPlaying})},[S(h(e.item.name)+" ",1),"version"in e.item&&e.item.version?(s(),I("span",wa,"("+h(e.item.version)+")",1)):v("",!0)],2)),e.item&&e.item.metadata?(s(),m(y(pe),{key:2,location:"bottom"},{activator:c(({props:w})=>[y(Xe)(e.item.metadata.explicit||!1)?(s(),m(Y,ie({key:0},w,{icon:"mdi-alpha-e-box",width:"35"}),null,16)):v("",!0)]),default:c(()=>[E("span",null,h(n.$t("tooltip.explicit")),1)]),_:1})):v("",!0)]),subtitle:c(()=>[e.item.media_type==y(V).TRACK&&"provider_mappings"in e.item?(s(),I("div",ga,[k(et,null,{default:c(()=>["artists"in e.item?(s(),m(K,{key:0},{default:c(()=>[S(h(y(ne)(e.item.artists,2)),1)]),_:1})):v("",!0),e.showAlbum&&"album"in e.item&&e.item.album?(s(),m(K,{key:1},{default:c(()=>[S(" • "+h(e.item.album.name),1)]),_:1})):v("",!0),e.showDiscNumber&&"disc_number"in e.item&&e.item.disc_number?(s(),m(K,{key:2},{default:c(()=>[k(Y,{style:{"margin-left":"5px"},icon:"md:album"}),S(" "+h(e.item.disc_number),1)]),_:1})):v("",!0),e.showTrackNumber&&"track_number"in e.item&&e.item.track_number?(s(),m(K,{key:3},{default:c(()=>[k(Y,{style:{"margin-left":"5px"},icon:"mdi-music-circle-outline"}),S(" "+h(e.item.track_number),1)]),_:1})):e.showPosition&&"position"in e.item&&e.item.position?(s(),m(K,{key:4},{default:c(()=>[k(Y,{style:{"margin-left":"5px"},icon:"mdi-music-circle-outline"}),S(" "+h(e.item.position),1)]),_:1})):v("",!0)]),_:1})])):e.item.media_type==y(V).ALBUM&&"year"in e.item?(s(),I("div",Ia,[e.item.album_type!=y(Ht).UNKNOWN?(s(),I("span",Ba,h(n.$t("album_type."+e.item.album_type))+" • ",1)):v("",!0),E("span",null,h(y(ne)(e.item.artists)),1),e.item.year?(s(),I("span",Aa," • "+h(e.item.year),1)):v("",!0)])):"artists"in e.item&&e.item.artists?(s(),I("div",Sa,h(y(ne)(e.item.artists)),1)):"owner"in e.item&&e.item.owner?(s(),I("div",Ta,h(e.item.owner),1)):"authors"in e.item&&e.item.authors?(s(),I("div",Ca,h(e.item.authors.join(" / ")),1)):"publisher"in e.item&&e.item.publisher?(s(),I("div",Pa,h(e.item.publisher),1)):"metadata"in e.item&&e.item.metadata?.description&&[y(V).RADIO,y(V).PLAYLIST,y(V).FOLDER].includes(e.item.media_type)?(s(),I("div",Fa,h(y(jt)(e.item.metadata.description,150)),1)):"media_type"in e.item&&!e.item.provider_mappings?(s(),I("div",xa,h(n.$t(e.item.media_type)),1)):v("",!0)]),append:c(()=>[e.isPlaying?(s(),m(ke,{key:0,"show-badge":y(ae)("bp7")},null,8,["show-badge"])):v("",!0),B.value?(s(),m(Ut,{key:1,src:y(He),width:"30",class:R(n.$vuetify.theme.current.dark?"hiresicondark":"hiresicon")},{default:c(()=>[k(y(pe),{activator:"parent",location:"bottom"},{default:c(()=>[S(h(B.value),1)]),_:1})]),_:1},8,["src","class"])):v("",!0),y(ae)("bp2")&&e.showProvider?(s(),m(zt,{key:2,domain:e.item.media_type==y(V).PLAYLIST?e.item.provider_mappings[0].provider_domain:e.item.provider,size:24},null,8,["domain"])):v("",!0),"fully_played"in e.item&&e.item.fully_played?(s(),m(Y,{key:3,title:n.$t("item_fully_played")},{default:c(()=>[...b[4]||(b[4]=[S("mdi-check",-1)])]),_:1},8,["title"])):"resume_position_ms"in e.item&&e.item.resume_position_ms?(s(),m(Y,{key:4,title:n.$t("item_in_progress")},{default:c(()=>[...b[5]||(b[5]=[S("mdi-clock-fast",-1)])]),_:1},8,["title"])):v("",!0),y(ae)("bp3")&&"favorite"in e.item&&e.showFavorite&&!n.$vuetify.display.mobile?(s(),I("div",Va,[k(tt,{item:e.item},null,8,["item"])])):v("",!0),e.showDuration&&"duration"in e.item&&e.item.duration&&y(ae)("bp0")?(s(),I("div",La,[E("div",null,[E("span",Da,h(y(Gt)(e.item.duration)),1)])])):v("",!0)]),_:1},8,["show-menu-btn","class"]))}}),Oa=Ie(Ma,[["__scopeId","data-v-cf65a966"]]),$a={key:0},Ra=["src"],Ea={key:0},Na=re({__name:"PanelviewItem",props:{item:{},size:{default:200},isSelected:{type:Boolean},showCheckboxes:{type:Boolean,default:!1},showMediaType:{type:Boolean,default:!1},showActions:{type:Boolean,default:!1},showTrackNumber:{type:Boolean,default:!1},isAvailable:{type:Boolean,default:!0},isPlaying:{type:Boolean},parentItem:{default:void 0}},emits:["select"],setup(e,{emit:a}){const p=e,f=W(()=>{for(const d of p.item.provider_mappings)if(d.audio_format&&d.audio_format.content_type!=null&&[X.DSF,X.FLAC,X.AIFF,X.WAV].includes(d.audio_format.content_type)&&(d.audio_format.sample_rate>48e3||d.audio_format.bit_depth>16))return`${d.audio_format.sample_rate/1e3}kHz ${d.audio_format.bit_depth} bits`;return""}),A=a,B=function(d){if(p.showCheckboxes)return;const F="clientX"in d?d.clientX:d.touches[0].clientX,n="clientY"in d?d.clientY:d.touches[0].clientY;ge(p.item,F,n,p.parentItem)},l=function(d){if(p.showCheckboxes){A("select",p.item,!p.isSelected);return}We(p.item,d.clientX,d.clientY,p.parentItem)},g=function(d){p.showCheckboxes||qe(p.item,d.clientX,d.clientY,p.parentItem)};return(d,F)=>{const n=Xt("hold");return s(),m(ua,null,{default:c(({isHovering:b,props:w})=>[qt((s(),m(Wt,ie(w,{tile:"",hover:"",class:["panel-item",{unavailable:!e.isAvailable}],onClick:l,onContextmenu:G(B,["right","prevent"])}),{default:c(()=>[e.showCheckboxes?(s(),m(he,{key:0,"model-value":e.showCheckboxes,contained:"",scrim:e.isSelected?d.$vuetify.theme.current.dark?"rgba(0,0,0,.75)":"rgba(255,255,255,.75)":"#ffffff00"},{default:c(()=>[k(Ze,{class:"panel-item-checkbox",ripple:!1,"model-value":e.isSelected},null,8,["model-value"])]),_:1},8,["model-value","scrim"])):v("",!0),k(Qe,{item:e.isAvailable?e.item:void 0,style:{height:"auto"}},null,8,["item"]),k(Qt,{variant:"text",slim:"",tile:"",density:"compact",class:"panel-item-details"},{default:c(()=>[k(Jt,null,{default:c(()=>[e.item.media_type==y(V).FOLDER?(s(),I("span",$a,[E("span",null,h(y(je)(e.item,d.$t)),1)])):(s(),I("span",{key:1,class:R({"is-playing":e.isPlaying})},h(e.item.name),3)),"version"in e.item&&e.item.version?(s(),I("span",{key:2,class:R({"is-playing":e.isPlaying})}," - "+h(e.item.version),3)):v("",!0)]),_:1}),"artists"in e.item&&e.item.artists?(s(),m(J,{key:0,class:"line-clamp-1"},{default:c(()=>[S(h(y(ne)(e.item.artists,1)),1)]),_:1})):v("",!0),"authors"in e.item&&e.item.authors?(s(),m(J,{key:1,class:"line-clamp-1"},{default:c(()=>[S(h(e.item.authors.join(" / ")),1)]),_:1})):"publisher"in e.item&&e.item.publisher?(s(),m(J,{key:2,class:"line-clamp-1"},{default:c(()=>[S(h(e.item.publisher),1)]),_:1})):"owner"in e.item&&e.item.owner?(s(),m(J,{key:3,class:"line-clamp-1"},{default:c(()=>[S(h(e.item.owner),1)]),_:1})):e.showMediaType?(s(),m(J,{key:4,class:"line-clamp-1"},{default:c(()=>[S(h(d.$t(e.item.media_type)),1)]),_:1})):(s(),m(J,{key:5,class:"line-clamp-1"}))]),_:1}),e.isPlaying&&!e.showActions?(s(),m(ke,{key:1,"icon-style":"position: absolute; right: 5px; bottom: 5px","show-badge":!1})):v("",!0),(b||y(T).isTouchscreen)&&e.isAvailable&&e.item.is_playable?(s(),m(ue,{key:2,icon:"mdi-play",color:"primary",fab:"",style:Ne(`position: absolute; right: 15px; bottom: ${e.showActions?90:35}px; opacity: 0.8`),onClick:G(g,["stop"])},null,8,["style"])):v("",!0),e.showActions?(s(),m(Zt,{key:3,class:"panel-item-actions"},{default:c(()=>[k(et,{style:{padding:"0"}},{default:c(()=>[y(Xe)(e.item.metadata.explicit||!1)?(s(),m(K,{key:0},{default:c(()=>[k(Y,{size:"30",icon:"mdi-alpha-e-box"})]),_:1})):v("",!0),f.value?(s(),m(K,{key:1},{default:c(()=>[k(Y,{class:R(d.$vuetify.theme.current.dark?"hiresicon":"hiresiconinverted")},{default:c(()=>[E("img",{src:y(He),width:"30"},null,8,Ra),k(pe,{activator:"parent",location:"bottom"},{default:c(()=>[S(h(f.value),1)]),_:1})]),_:1},8,["class"])]),_:1})):v("",!0),e.showTrackNumber&&"track_number"in e.item&&e.item.track_number?(s(),m(K,{key:2},{default:c(()=>[k(Y,{size:"small",icon:"mdi-music-circle-outline"}),e.item.disc_number?(s(),I("span",Ea,h(e.item.disc_number)+"/",1)):v("",!0),S(h(e.item.track_number),1)]),_:1})):"position"in e.item&&e.item.position?(s(),m(K,{key:3},{default:c(()=>[k(Y,{size:"small",icon:"mdi-music-circle-outline"}),S(" "+h(e.item.position),1)]),_:1})):v("",!0),y(ae)("bp3")?(s(),m(K,{key:4},{default:c(()=>[k(tt,{item:e.item},null,8,["item"])]),_:1})):v("",!0)]),_:1}),e.isPlaying?(s(),m(ke,{key:0,"show-badge":!1})):v("",!0),k(_t),b||d.$vuetify.display.mobile?(s(),m(Je,{key:1,variant:"list",icon:"mdi-dots-vertical",style:{"padding-right":"0","margin-right":"-5px"},onClick:G(B,["stop"])})):v("",!0)]),_:2},1024)):v("",!0)]),_:2},1040,["class"])),[[n,B]])]),_:1})}}}),Ya=Ie(Na,[["__scopeId","data-v-bb3ba95c"]]),Ka={key:0},Ua={key:2},za=re({__name:"ItemsListing",props:{itemtype:{},sortKeys:{default:()=>["name","sort_name"]},showTrackNumber:{type:Boolean,default:!0},showProvider:{type:Boolean,default:Object.keys(oe.providers).length>1},showAlbum:{type:Boolean,default:!0},showFavoritesOnlyFilter:{type:Boolean,default:!0},showDuration:{type:Boolean,default:!0},parentItem:{default:void 0},showAlbumArtistsOnlyFilter:{type:Boolean},showSearchButton:{type:Boolean,default:void 0},showRefreshButton:{type:Boolean,default:void 0},showSelectButton:{type:Boolean,default:void 0},showAlbumTypeFilter:{type:Boolean,default:void 0},showProviderFilter:{type:Boolean,default:void 0},updateAvailable:{type:Boolean},title:{default:void 0},hideOnEmpty:{type:Boolean,default:!1},showLibraryOnlyFilter:{type:Boolean,default:!1},allowCollapse:{type:Boolean,default:!1},allowKeyHooks:{type:Boolean,default:!1},extraMenuItems:{default:void 0},loadPagedData:{type:Function,default:void 0},loadItems:{type:Function,default:void 0},limit:{default:50},total:{default:void 0},infiniteScroll:{type:Boolean,default:!0},path:{default:void 0},icon:{default:void 0},restoreState:{type:Boolean,default:!1},onTitleClick:{type:Function,default:void 0}},setup(e){const a=e,p=sa(),{t:f}=Ge(),{getItemsListingPreferences:A,setItemsListingPreference:B}=ca(),l=C({offset:0,limit:50,sortBy:"name",search:"",libraryOnly:!1}),g=C("list"),d=C(!1),F=C(!1),n=C([]),b=C([]),w=C(!1),x=C([]),O=C(!1),L=C(!1),N=C(!0),$=C(!1),U=C(!1),H=C(!1),le=function(){l.value.search="",d.value=!1},Z=function(){be(()=>{document.getElementById("searchInput")?.focus()})},se=function(){d.value?le():(d.value=!0,Z())},_=function(){if(a.onTitleClick){a.onTitleClick();return}N.value=!N.value,B(a.path||a.itemtype,a.itemtype,"expand",N.value)},ee=function(t){g.value=t,B(a.path||a.itemtype,a.itemtype,"viewMode",t)},ce=function(){l.value.favoritesOnly=!l.value.favoritesOnly,B(a.path||a.itemtype,a.itemtype,"favoriteFilter",l.value.favoritesOnly),D(void 0,void 0,!0)},me=function(){l.value.libraryOnly=!l.value.libraryOnly,B(a.path||a.itemtype,a.itemtype,"libraryFilter",l.value.libraryOnly),D(!0,void 0,!0)},P=function(){l.value.albumArtistsFilter=!l.value.albumArtistsFilter,B(a.path||a.itemtype,a.itemtype,"albumArtistsFilter",l.value.albumArtistsFilter),D(void 0,void 0,!0)},z=function(t){return x.value.includes(t)},te=function(t,o){if(T.activePlayer?.playback_state!=oa.PLAYING)return!1;const i=T.curQueueItem?.media_item;if(!i)return!1;switch(o){case"tracks":return t.item_id===i.item_id;case"albums":return"album"in i?t.item_id===i.album.item_id:!1;case"artists":return"artists"in i?Array.isArray(i.artists)&&i.artists.some(u=>u.item_id===t.item_id):!1;case"radios":return t.item_id===i.item_id;case"podcasts":return"podcast"in i?t.item_id===i.podcast.item_id:!1;case"podcastepisodes":return t.item_id===i.item_id;default:return!1}},de=function(t,o){if(o)x.value.includes(t)||x.value.push(t);else for(let i=0;i<x.value.length;i++)x.value[i]===t&&x.value.splice(i,1)},at=function(){L.value&&(x.value=[]),L.value=!L.value},it=function(){D(!0,!0)},lt=function(){l.value.search="",d.value=!1,D(void 0,void 0,!0)},st=function(t){t!==void 0&&(l.value.sortBy=t),B(a.path||a.itemtype,a.itemtype,"sortBy",l.value.sortBy),D(void 0,void 0,!0)},ot=function(t){l.value.albumType?.includes(t)?l.value.albumType=l.value.albumType?.filter(o=>o!==t):(l.value.albumType=l.value.albumType||[],l.value.albumType.push(t)),B(a.path||a.itemtype,a.itemtype,"albumType",l.value.albumType),D(void 0,void 0,!0)},nt=function(t){l.value.provider?.includes(t)?l.value.provider=l.value.provider?.filter(o=>o!==t):(l.value.provider=l.value.provider||[],l.value.provider.push(t)),l.value.provider.length===0&&(l.value.provider=void 0),B(a.path||a.itemtype,a.itemtype,"providerFilter",l.value.provider),D(void 0,void 0,!0)},ut=function(){T.globalSearchTerm=l.value.search,a.itemtype=="artists"?T.globalSearchType=V.ARTIST:a.itemtype=="albums"?T.globalSearchType=V.ALBUM:a.itemtype=="tracks"?T.globalSearchType=V.TRACK:a.itemtype=="playlists"?T.globalSearchType=V.PLAYLIST:a.itemtype=="audiobooks"?T.globalSearchType=V.AUDIOBOOK:a.itemtype=="podcasts"?T.globalSearchType=V.PODCAST:a.itemtype=="radios"&&(T.globalSearchType=V.RADIO),p.push({name:"search"})},Be=async function({done:t}){if($.value){t("empty");return}await D(void 0,void 0,void 0,l.value.offset+a.limit),t("ok")},rt=async function(){for(;!$.value;)await Be({done:function(){}})},Ae=W(()=>{var t=!1;return l.value.search&&l.value.search.length!==0&&(t=!0),t}),Se=W(()=>d.value&&N.value),Te=W(()=>{const o={artists:q.LIBRARY_ARTISTS,albums:q.LIBRARY_ALBUMS,tracks:q.LIBRARY_TRACKS,playlists:q.LIBRARY_PLAYLISTS,radios:q.LIBRARY_RADIOS,podcasts:q.LIBRARY_PODCASTS,audiobooks:q.LIBRARY_AUDIOBOOKS}[a.itemtype];return Object.values(oe.providers).filter(i=>i.type!==ea.MUSIC?!1:o?i.supported_features.includes(o):!0).map(i=>({label:i.name,value:i.instance_id})).sort((i,u)=>i.label.localeCompare(u.label))});Ue(()=>{Se.value||(F.value=!1)});const ct=W(()=>{if(a.allowCollapse===!0&&!N.value)return[{label:"tooltip.collapse_expand",icon:"mdi-chevron-down",action:_,overflowAllowed:!1}];const t=[];return a.showSelectButton!==!1&&(L.value&&t.push({label:"tooltip.select_all",icon:"mdi-select-all",action:Fe}),t.push({label:"tooltip.select_items",icon:L.value?"mdi-checkbox-multiple-outline":"mdi-checkbox-multiple-blank-outline",action:at,active:L.value})),a.showLibraryOnlyFilter===!0&&t.push({label:"tooltip.filter_library",icon:"mdi-bookshelf",action:me,active:l.value.libraryOnly}),a.showFavoritesOnlyFilter===!0&&t.push({label:"tooltip.filter_favorites",icon:l.value.favoritesOnly?"mdi-heart":"mdi-heart-outline",action:ce,active:l.value.favoritesOnly}),a.showAlbumArtistsOnlyFilter===!0&&t.push({label:"tooltip.album_artist_filter",icon:l.value.albumArtistsFilter?"mdi-account-music":"mdi-account-music-outline",action:P,active:l.value.albumArtistsFilter}),a.showAlbumTypeFilter&&t.push({label:"tooltip.album_type",icon:"mdi-album",disabled:w.value,active:l.value.albumType&&l.value.albumType.length>0,closeOnContentClick:!1,subItems:["album","single","ep","compilation","live","soundtrack","unknown"].map(o=>({label:`album_type.${o}`,selected:l.value.albumType?.includes(o),action:()=>{ot(o)}}))}),a.showProviderFilter&&Te.value.length>1&&t.push({label:"tooltip.filter_provider",icon:"mdi-package-variant",disabled:w.value,active:l.value.provider&&l.value.provider.length>0,closeOnContentClick:!1,subItems:Te.value.map(o=>({label:o.label,selected:l.value.provider?.includes(o.value),action:()=>{nt(o.value)}}))}),(a.showRefreshButton!==!1||O.value)&&t.push({label:O.value?"tooltip.refresh_new_content":"tooltip.refresh",icon:"mdi-refresh",action:it,active:O.value,disabled:w.value}),a.sortKeys?.length&&t.push({label:"tooltip.sort_options",icon:"mdi-sort",disabled:a.sortKeys.length<=1||w.value,subItems:a.sortKeys.map(o=>({label:`sort.${o}`,selected:l.value.sortBy==o,action:()=>{st(o)}}))}),a.showSearchButton!==!1&&t.push({label:Ae.value?"tooltip.search_filter_active":"tooltip.search",icon:"mdi-magnify",action:se,active:Ae.value,disabled:w.value}),t.push({label:"tooltip.toggle_view_mode",icon:g.value=="list"?"mdi-view-list":"mdi-grid",subItems:[{label:"view.list",icon:"mdi-view-list",selected:g.value=="list",action:()=>{ee("list")}},{label:"view.panel",icon:"mdi-grid",selected:g.value=="panel",action:()=>{ee("panel")}},{label:"view.panel_compact",icon:"mdi-grid",selected:g.value=="panel_compact",action:()=>{ee("panel_compact")}}]}),a.extraMenuItems?.length&&t.push(...a.extraMenuItems),a.allowCollapse===!0&&t.push({label:"tooltip.collapse_expand",icon:"mdi-chevron-up",action:_}),t}),D=async function(t=!1,o=!1,i=!1,u=0){if(!w.value){if(w.value=!0,i&&a.loadPagedData!=null&&(t=!0),(t||o)&&(u=0,$.value&&(H.value=!0),$.value=!1,U.value=!1,O.value=!1),l.value.offset=u,l.value.limit=a.limit,l.value.refresh=o,a.loadPagedData!=null){const r=await a.loadPagedData(l.value);l.value.offset?n.value.push(...r):n.value=r,Math.abs(r.length-a.limit)>10&&($.value=!0)}else if(a.loadItems!=null){(!U.value||o)&&(b.value=await a.loadItems(l.value),U.value=!0);const r=dt(b.value,l.value);l.value.offset?n.value.push(...r):n.value=r,$.value=r.length<a.limit}l.value.refresh=!1,w.value=!1,H.value=!1}},Ce=A(a.path||a.itemtype,a.itemtype),mt=async function(){const t=Ce.value;t.viewMode?g.value=t.viewMode:a.itemtype=="artists"||a.itemtype=="albums"?g.value="panel":g.value="list",t.sortBy&&a.sortKeys.includes(t.sortBy)?l.value.sortBy=t.sortBy:l.value.sortBy=a.sortKeys[0],a.showFavoritesOnlyFilter!==!1&&t.favoriteFilter&&(l.value.favoritesOnly=t.favoriteFilter),a.showLibraryOnlyFilter!==!1&&t.libraryFilter&&(l.value.libraryOnly=t.libraryFilter),a.showAlbumArtistsOnlyFilter!==!1&&t.albumArtistsFilter!==void 0&&(l.value.albumArtistsFilter=t.albumArtistsFilter),a.allowCollapse!==!1&&t.expand!==void 0&&(N.value=t.expand),a.showAlbumTypeFilter===!0&&t.albumType&&(l.value.albumType=t.albumType),a.showProviderFilter===!0&&t.providerFilter&&(l.value.provider=t.providerFilter),a.restoreState&&t.search&&(l.value.search=t.search)},Pe=function(t){T.dialogActive||w.value||(t.key==="Escape"&&le(),!F.value&&(t.key==="a"&&(t.ctrlKey||t.metaKey)?(t.preventDefault(),Fe()):!F.value&&t.key=="Backspace"?Z():!F.value&&t.key.length==1&&(d.value=!0,Z())))};a.allowKeyHooks&&(document.addEventListener("keydown",Pe),ve(()=>{document.removeEventListener("keydown",Pe)})),a.restoreState&&ve(()=>{const t=a.path||a.itemtype,o=document.querySelector("#cont");T.prevState={path:t,scrollPos:o?.scrollTop||0,pagedItems:n.value,allItems:b.value,allItemsReceived:$.value,initialDataReceived:U.value,params:l.value}}),j(()=>l.value.search,t=>{t&&(d.value=!0),D(void 0,void 0,!0),a.restoreState&&B(a.path||a.itemtype,a.itemtype,"search",l.value.search)}),j(()=>a.path,t=>{w.value!=!0&&(n.value=[],b.value=[],D(!0))}),j(()=>a.parentItem,()=>{w.value!=!0&&(b.value=[],O.value=!0)},{deep:!0}),j(()=>a.limit,t=>{l.value.limit=t}),j(()=>a.updateAvailable,t=>{w.value||(O.value=t)},{immediate:!0}),j(Ce,()=>mt(),{immediate:!0}),Ke(async()=>{const t=a.path||a.itemtype;a.restoreState&&T.prevState?.path==t?(l.value=T.prevState.params,n.value=T.prevState.pagedItems,b.value=T.prevState.allItems,$.value=T.prevState.allItemsReceived,U.value=T.prevState.initialDataReceived,be(()=>{const i=document.getElementById("cont");i&&ta(i,T.prevState.scrollPos,50)}),w.value=!1):D(!0),xe.on("clearSelection",()=>{x.value=[],L.value=!1});const o=oe.subscribe_multi([Q.MEDIA_ITEM_UPDATED,Q.MEDIA_ITEM_DELETED,Q.MEDIA_ITEM_PLAYED],i=>{if(i.event==Q.MEDIA_ITEM_DELETED)n.value=n.value.filter(u=>u.uri!=i.object_id);else if(i.event==Q.MEDIA_ITEM_UPDATED){const u=n.value.findIndex(r=>r.uri==i.object_id);u>=0&&(n.value[u]=i.data)}else if(i.event==Q.MEDIA_ITEM_PLAYED){const u=n.value.findIndex(r=>r.uri==i.object_id);u>=0&&("fully_played"in n.value[u]&&(n.value[u].fully_played=i.data.fully_played),"resume_position_ms"in n.value[u]&&(n.value[u].resume_position_ms=i.data.seconds_played*1e3))}});ve(()=>{xe.off("clearSelection"),o()})});const M=function(t,o=!1){return t?"translation_key"in t&&t.translation_key&&t.name?f(t.translation_key,[t.name]):"translation_key"in t&&t.translation_key?f(t.translation_key):o&&"sort_name"in t&&t.sort_name?t.sort_name:t.name:""},dt=function(t,o){let i=[];if(o.search){const u=o.search.toLowerCase();for(const r of t)(r.name.toLowerCase().includes(u)||"album"in r&&r.album?.name.toLowerCase().includes(u)||"artists"in r&&r.artists&&r.artists.length&&r.artists[0].name.toLowerCase().includes(u))&&i.push(r)}else i=[...t];return o.sortBy=="name"&&i.sort((u,r)=>M(u).localeCompare(M(r),void 0,{numeric:!0})),o.sortBy=="sort_name"&&i.sort((u,r)=>M(u,!0).localeCompare(M(r,!0),void 0,{numeric:!0})),o.sortBy=="name_desc"&&i.sort((u,r)=>M(r).localeCompare(M(u),void 0,{numeric:!0})),o.sortBy=="sort_name_desc"&&i.sort((u,r)=>M(r,!0).localeCompare(M(u,!0),void 0,{numeric:!0})),o.sortBy=="album"&&i.sort((u,r)=>M(u.album).localeCompare(M(r.album),void 0,{numeric:!0})),o.sortBy=="artist"&&i.sort((u,r)=>M(u.artists[0]).localeCompare(M(r.artists[0]))),o.sortBy=="track_number"&&(i.sort((u,r)=>(u.track_number||0)-(r.track_number||0)),i.sort((u,r)=>(u.disc_number||0)-(r.disc_number||0))),o.sortBy=="position"&&i.sort((u,r)=>(u.position||0)-(r.position||0)),o.sortBy=="position_desc"&&i.sort((u,r)=>(r.position||0)-(u.position||0)),o.sortBy=="year"&&i.sort((u,r)=>(u.year||0)-(r.year||0)),o.sortBy=="year_desc"&&i.sort((u,r)=>(r.year||0)-(u.year||0)),o.sortBy=="recent"&&i.sort((u,r)=>(r.timestamp_added||0)-(u.timestamp_added||0)),o.sortBy=="duration"&&i.sort((u,r)=>(u.duration||0)-(r.duration||0)),o.sortBy=="duration_desc"&&i.sort((u,r)=>(r.duration||0)-(u.duration||0)),o.sortBy=="provider"&&i.sort((u,r)=>u.provider.localeCompare(r.provider)),o.favoritesOnly&&(i=i.filter(u=>u.favorite)),o.albumType&&o.albumType.length>0&&(i=i.filter(u=>o.albumType?.includes(u.album_type))),i.slice(o.offset,o.offset+o.limit)},Fe=async function(){let t=!0;(a.total||b.value.length)>250&&(t=await new Promise(i=>{confirm(f("select_all_confirmation"))?i(!0):i(!1)})),t&&(await rt(),x.value=n.value,L.value=!0)};return(t,o)=>e.hideOnEmpty&&n.value.length==0?v("",!0):(s(),I("section",Ka,[k(ft,{icon:e.icon,title:e.title,count:l.value.search?n.value.length:e.total||b.value.length,color:"transparent","menu-items":ct.value,onTitleClicked:_},{title:c(()=>[aa(t.$slots,"title",{},()=>[S(h(e.title),1)],!0)]),_:3},8,["icon","title","count","menu-items"]),k(ia),Se.value?(s(),m(la,{key:0,id:"searchInput",modelValue:l.value.search,"onUpdate:modelValue":o[0]||(o[0]=i=>l.value.search=i),clearable:"","prepend-inner-icon":"mdi-magnify",label:t.$t("search"),"hide-details":"",variant:"filled",style:{width:"auto","margin-top":"10px"},onFocus:o[1]||(o[1]=i=>F.value=!0),onBlur:o[2]||(o[2]=i=>F.value=!1),"onClick:clear":lt},null,8,["modelValue","label"])):v("",!0),N.value?(s(),m(vt,{key:1,variant:g.value=="list"?"default":"panel",style:{overflow:"hidden"}},{default:c(()=>[w.value?(s(),m(ze,{key:0,color:"accent",height:"4",indeterminate:"",rounded:""})):v("",!0),!H.value&&!(n.value.length==0&&$.value)?(s(),m(ma,{key:1,onLoad:Be,mode:e.infiniteScroll?"intersect":"manual","load-more-text":t.$t("load_more_items"),"empty-text":"",style:{overflow:"hidden"}},{default:c(()=>[g.value=="panel"?(s(),m(Ve,{key:0},{default:c(()=>[(s(!0),I(Le,null,De(n.value,i=>(s(),m(Me,{key:i.uri,cols:"12",class:R(`col-${y(Oe)(t.$vuetify.display.width)}`)},{default:c(()=>[k(Ya,{item:i,"is-selected":z(i),"show-checkboxes":L.value,"show-actions":["tracks","albums","albumtracks"].includes(e.itemtype),"show-track-number":e.showTrackNumber,"is-available":y(fe)(i),"is-playing":te(i,e.itemtype),"parent-item":e.parentItem,onSelect:de},null,8,["item","is-selected","show-checkboxes","show-actions","show-track-number","is-available","is-playing","parent-item"])]),_:2},1032,["class"]))),128))]),_:1})):v("",!0),g.value=="panel_compact"?(s(),m(Ve,{key:1},{default:c(()=>[(s(!0),I(Le,null,De(n.value,i=>(s(),m(Me,{key:i.uri,cols:"12",class:R(`col-${y(Oe)(t.$vuetify.display.width)}`)},{default:c(()=>[k(ra,{item:i,"is-selected":z(i),"show-checkboxes":L.value,"is-available":y(fe)(i),"is-playing":te(i,e.itemtype),"parent-item":e.parentItem,onSelect:de},null,8,["item","is-selected","show-checkboxes","is-available","is-playing","parent-item"])]),_:2},1032,["class"]))),128))]),_:1})):v("",!0),g.value=="list"?(s(),m(da,{key:2,"item-height":70,height:"100%",items:n.value,style:{height:"100%",overflow:"hidden"}},{default:c(({item:i})=>[k(Oa,{item:i,"show-track-number":e.showTrackNumber,"show-disc-number":e.showTrackNumber,"show-duration":e.showDuration,"show-favorite":e.showFavoritesOnlyFilter,"show-menu":i.is_playable,"show-provider":e.showProvider,"show-album":e.showAlbum,"show-checkboxes":L.value,"is-selected":z(i),"is-available":y(fe)(i),"is-playing":te(i,e.itemtype),"show-details":e.itemtype.includes("versions"),"parent-item":e.parentItem,onSelect:de},null,8,["item","show-track-number","show-disc-number","show-duration","show-favorite","show-menu","show-provider","show-album","show-checkboxes","is-selected","is-available","is-playing","show-details","parent-item"])]),_:1},8,["items"])):v("",!0)]),_:1},8,["mode","load-more-text"])):v("",!0),!w.value&&n.value.length==0?(s(),I("div",Ua,[!w.value&&n.value.length==0&&(l.value.search||l.value.favoritesOnly)?(s(),m($e,{key:0,title:t.$t("no_content_filter")},{default:c(()=>[l.value.search?(s(),m(ue,{key:0,style:{"margin-top":"15px"},onClick:ut},{default:c(()=>[S(h(t.$t("try_global_search")),1)]),_:1})):v("",!0)]),_:1},8,["title"])):!w.value&&n.value.length==0?(s(),m($e,{key:1},{default:c(()=>[S(h(t.$t("no_content")),1)]),_:1})):v("",!0)])):v("",!0),k(ha,{"model-value":x.value.length>1,timeout:-1,style:{"margin-bottom":"120px"}},{actions:c(()=>[k(ue,{color:"primary",variant:"text",onClick:o[3]||(o[3]=i=>y(ge)(x.value,i.clientX,i.clientY,e.parentItem))},{default:c(()=>[S(h(t.$t("actions")),1)]),_:1})]),default:c(()=>[E("span",null,h(t.$t("items_selected",[x.value.length])),1)]),_:1},8,["model-value"])]),_:1},8,["variant"])):v("",!0)]))}}),ii=Ie(za,[["__scopeId","data-v-599e3d6b"]]);export{ii as I};
@@ -0,0 +1 @@
1
+ import{I as d}from"./ItemsListing-4Tzirx3k.js";import{ay as m,J as i,ax as s,a3 as p,aP as r,bb as b,a4 as c,aI as y,aA as v}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const K=m({name:"Albums",__name:"LibraryAlbums",setup(_){const o=i(!1),e=i(s.libraryAlbumsCount),l=["name","name_desc","sort_name","sort_name_desc","year","year_desc","timestamp_added","timestamp_added_desc","last_played","last_played_desc","play_count","play_count_desc","artist_name","artist_name_desc"];p(()=>{const t=r.subscribe(b.MEDIA_ITEM_ADDED,a=>{a.object_id?.startsWith("library://artist")&&(o.value=!0)});c(t)});const n=async function(t){return o.value=!1,u(t),await r.getLibraryAlbums(t.favoritesOnly||void 0,t.search,t.limit,t.offset,t.sortBy,t.albumType,t.provider&&t.provider.length>0?t.provider:void 0)},u=async function(t){if(!t.favoritesOnly&&!t.albumType&&!t.provider){e.value=s.libraryAlbumsCount;return}if(t.provider&&t.provider.length>0){e.value=void 0;return}e.value=await r.getLibraryAlbumsCount(t.favoritesOnly||void 0,t.albumType||void 0)};return(t,a)=>(v(),y(d,{itemtype:"albums",path:"libraryalbums","show-provider":!1,"show-favorites-only-filter":!0,"load-paged-data":n,"sort-keys":l,"update-available":o.value,title:t.$t("albums"),"allow-key-hooks":!0,"show-search-button":!0,icon:"mdi-album","restore-state":!0,total:e.value,"show-album-type-filter":!0,"show-provider-filter":!0},null,8,["update-available","title","total"]))}});export{K as default};
@@ -0,0 +1 @@
1
+ import{I as d}from"./ItemsListing-4Tzirx3k.js";import{ay as c,J as s,ax as a,a3 as p,aP as o,bb as m,a4 as f,aI as v,aA as y}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const J=c({name:"Artists",__name:"LibraryArtists",setup(_){const r=s(!1),e=s(a.libraryArtistsCount),l=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","last_played","last_played_desc","play_count","play_count_desc"],n=async function(t){return r.value=!1,u(t),await o.getLibraryArtists(t.favoritesOnly||void 0,t.search,t.limit,t.offset,t.sortBy,t.albumArtistsFilter,t.provider&&t.provider.length>0?t.provider:void 0)},u=async function(t){if(!t.favoritesOnly&&!t.albumArtistsFilter&&!t.provider){e.value=a.libraryArtistsCount;return}if(t.provider&&t.provider.length>0){e.value=void 0;return}e.value=await o.getLibraryArtistsCount(t.favoritesOnly||!1,t.albumArtistsFilter||!1)};return p(()=>{const t=o.subscribe(m.MEDIA_ITEM_ADDED,i=>{i.object_id?.startsWith("library://artist")&&(r.value=!0)});f(t)}),(t,i)=>(y(),v(d,{itemtype:"artists",path:"libraryartists","show-provider":!1,"show-favorites-only-filter":!0,"load-paged-data":n,"show-album-artists-only-filter":!0,"update-available":r.value,title:t.$t("artists"),"allow-key-hooks":!0,"show-search-button":!0,"sort-keys":l,icon:"mdi-account-outline","restore-state":!0,total:e.value,"show-provider-filter":!0},null,8,["update-available","title","total"]))}});export{J as default};
@@ -0,0 +1 @@
1
+ import{I as u}from"./ItemsListing-4Tzirx3k.js";import{ay as p,J as a,ax as s,a3 as m,aP as i,bb as c,a4 as b,aI as f,aA as v}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const K=p({name:"Audiobooks",__name:"LibraryAudiobooks",setup(y){const e=a(!1),t=a(s.libraryAudiobooksCount),l=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","timestamp_modified","timestamp_modified_desc","last_played","last_played_desc","play_count","play_count_desc"],n=async function(o){return e.value=!1,d(o),await i.getLibraryAudiobooks(o.favoritesOnly||void 0,o.search,o.limit,o.offset,o.sortBy,o.provider&&o.provider.length>0?o.provider:void 0)},d=async function(o){if(!o.favoritesOnly&&!o.provider){t.value=s.libraryAudiobooksCount;return}if(o.provider&&o.provider.length>0){t.value=void 0;return}t.value=await i.getLibraryAudiobooksCount(o.favoritesOnly||!1)};return m(()=>{const o=i.subscribe(c.MEDIA_ITEM_ADDED,r=>{r.object_id?.startsWith("library://audiobook")&&(e.value=!0)});b(o)}),(o,r)=>(v(),f(u,{itemtype:"audiobooks",path:"libraryaudiobooks","show-duration":!1,"show-provider":!0,"show-favorites-only-filter":!0,"load-paged-data":n,"show-library":!0,"sort-keys":l,"update-available":e.value,title:o.$t("audiobooks"),"allow-key-hooks":!0,"show-search-button":!0,icon:"mdi-book-play-outline","restore-state":!0,total:t.value,"show-provider-filter":!0},null,8,["update-available","title","total"]))}});export{K as default};
@@ -0,0 +1 @@
1
+ import{I as f}from"./ItemsListing-4Tzirx3k.js";import{ay as v,bN as b,J as l,ax as p,a3 as h,aP as i,aR as I,bb as r,a4 as E,aI as w,aA as P}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const W=v({name:"Playlists",__name:"LibraryPlaylists",setup(A){const{t:c}=b(),o=l(!1),s=l(p.libraryPlaylistsCount),n=l([]),d=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","timestamp_modified","timestamp_modified_desc","last_played","last_played_desc","play_count","play_count_desc"],m=async function(t){return o.value=!1,y(t),await i.getLibraryPlaylists(t.favoritesOnly||void 0,t.search,t.limit,t.offset,t.sortBy,t.provider&&t.provider.length>0?t.provider:void 0)},y=async function(t){if(!t.favoritesOnly&&!t.provider){s.value=p.libraryPlaylistsCount;return}if(t.provider&&t.provider.length>0){s.value=void 0;return}s.value=await i.getLibraryPlaylistsCount(t.favoritesOnly||!1)};h(()=>{const t=[];for(const e of Object.values(i.providers).filter(u=>u.available&&u.supported_features.includes(I.PLAYLIST_CREATE)))t.push({label:"create_playlist_on",labelArgs:[e.name],action:()=>{_(e.instance_id)},icon:"mdi-playlist-plus"});t.length&&n.value.push({label:"create_playlist_on",icon:"mdi-playlist-plus",subItems:t});const a=i.subscribe_multi([r.MEDIA_ITEM_ADDED,r.MEDIA_ITEM_UPDATED,r.MEDIA_ITEM_DELETED],e=>{e.object_id?.startsWith("library://playlist")&&(o.value=!0)});E(a)});const _=async function(t){const a=prompt(c("new_playlist_name"));a&&await i.createPlaylist(a,t).then(()=>location.reload()).catch(e=>alert(e))};return(t,a)=>(P(),w(f,{itemtype:"playlists",path:"libraryplaylists","show-duration":!1,"show-provider":!0,"show-favorites-only-filter":!0,"load-paged-data":m,"show-library":!0,"sort-keys":d,"update-available":o.value,title:t.$t("playlists"),"allow-key-hooks":!0,"show-search-button":!0,"extra-menu-items":n.value,icon:"mdi-playlist-play","restore-state":!0,total:s.value,"show-provider-filter":!0},null,8,["update-available","title","extra-menu-items","total"]))}});export{W as default};
@@ -0,0 +1 @@
1
+ import{I as c}from"./ItemsListing-4Tzirx3k.js";import{ay as p,J as s,ax as i,a3 as u,aP as a,bb as m,a4 as f,aI as v,aA as _}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const J=p({name:"Podcasts",__name:"LibraryPodcasts",setup(y){const o=s(!1),e=s(i.libraryPodcastsCount),d=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","timestamp_modified","timestamp_modified_desc","last_played","last_played_desc","play_count","play_count_desc"],l=async function(t){return o.value=!1,n(t),await a.getLibraryPodcasts(t.favoritesOnly||void 0,t.search,t.limit,t.offset,t.sortBy,t.provider&&t.provider.length>0?t.provider:void 0)},n=async function(t){if(!t.favoritesOnly&&!t.provider){e.value=i.libraryPodcastsCount;return}if(t.provider&&t.provider.length>0){e.value=void 0;return}e.value=await a.getLibraryPodcastsCount(t.favoritesOnly||!1)};return u(()=>{const t=a.subscribe(m.MEDIA_ITEM_ADDED,r=>{r.object_id?.startsWith("library://podcast")&&(o.value=!0)});f(t)}),(t,r)=>(_(),v(c,{itemtype:"podcasts",path:"librarypodcasts","show-duration":!1,"show-provider":!0,"show-favorites-only-filter":!0,"load-paged-data":l,"show-library":!0,"sort-keys":d,"update-available":o.value,title:t.$t("podcasts"),"allow-key-hooks":!0,"show-search-button":!0,icon:"mdi-podcast","restore-state":!0,total:e.value,"show-provider-filter":!0},null,8,["update-available","title","total"]))}});export{J as default};
@@ -0,0 +1 @@
1
+ import{_ as c}from"./AddManualLink.vue_vue_type_script_setup_true_lang-C1nm8oQh.js";import{I as f}from"./ItemsListing-4Tzirx3k.js";import{ay as v,J as r,ax as l,a3 as y,aP as s,bb as _,a4 as b,az as h,aA as g,o as n,aD as w,aQ as A,ah as D}from"./index-GQ3lWXrm.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./VDialog-OmJrmVI_.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const Q=v({name:"Radios",__name:"LibraryRadios",setup(R){const a=r(!1),t=r(l.libraryRadiosCount),i=r(!1),d=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","last_played","last_played_desc","play_count","play_count_desc"];y(()=>{const e=s.subscribe(_.MEDIA_ITEM_ADDED,o=>{o.object_id?.startsWith("library://radio")&&(a.value=!0)});b(e)});const u=async function(e){return a.value=!1,p(e),await s.getLibraryRadios(e.favoritesOnly||void 0,e.search,e.limit,e.offset,e.sortBy,e.provider&&e.provider.length>0?e.provider:void 0)},p=async function(e){if(!e.favoritesOnly&&!e.provider){t.value=l.libraryRadiosCount;return}if(e.provider&&e.provider.length>0){t.value=void 0;return}t.value=await s.getLibraryRadiosCount(e.favoritesOnly||!1)};return(e,o)=>(g(),h(D,null,[n(f,{itemtype:"radios",path:"libraryradios","show-duration":!1,"show-provider":!1,"show-favorites-only-filter":!0,"load-paged-data":u,"sort-keys":d,"update-available":a.value,title:e.$t("radios"),"show-search-button":!0,"allow-key-hooks":!0,"extra-menu-items":[{label:"add_url_item",labelArgs:[],action:()=>{i.value=!0},icon:"mdi-playlist-plus"}],icon:"mdi-access-point","restore-state":!0,total:t.value,"show-provider-filter":!0},null,8,["update-available","title","extra-menu-items","total"]),n(c,{modelValue:i.value,"onUpdate:modelValue":o[0]||(o[0]=m=>i.value=m),type:w(A).RADIO},null,8,["modelValue","type"])],64))}});export{Q as default};
@@ -0,0 +1 @@
1
+ import{_ as p}from"./AddManualLink.vue_vue_type_script_setup_true_lang-C1nm8oQh.js";import{I as f}from"./ItemsListing-4Tzirx3k.js";import{ay as v,J as i,ax as l,a3 as y,aP as s,bb as _,a4 as b,az as k,aA as h,o as n,aD as w,aQ as T,ah as g}from"./index-GQ3lWXrm.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./VDialog-OmJrmVI_.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const R=v({name:"Tracks",__name:"LibraryTracks",setup(A){const o=i(!1),e=i(l.libraryTracksCount),r=i(!1),u=["name","name_desc","sort_name","sort_name_desc","duration","duration_desc","timestamp_added","timestamp_added_desc","last_played","last_played_desc","play_count","play_count_desc"];y(()=>{const t=s.subscribe(_.MEDIA_ITEM_ADDED,a=>{a.object_id?.startsWith("library://track")&&(o.value=!0)});b(t)});const d=async function(t){return t.favoritesOnly=t.favoritesOnly||void 0,o.value=!1,c(t),await s.getLibraryTracks(t.favoritesOnly,t.search,t.limit,t.offset,t.sortBy,t.provider&&t.provider.length>0?t.provider:void 0)},c=async function(t){if(!t.favoritesOnly&&!t.provider){e.value=l.libraryTracksCount;return}if(t.provider&&t.provider.length>0){e.value=void 0;return}e.value=await s.getLibraryTracksCount(t.favoritesOnly||!1)};return(t,a)=>(h(),k(g,null,[n(f,{itemtype:"tracks",path:"librarytracks","show-provider":!1,"show-favorites-only-filter":!0,"show-track-number":!1,"load-paged-data":d,"sort-keys":u,"show-album":!0,"update-available":o.value,title:t.$t("tracks"),"show-search-button":!0,"allow-key-hooks":!0,"extra-menu-items":[{label:"add_url_item",labelArgs:[],action:()=>{r.value=!0},icon:"mdi-playlist-plus"}],icon:"mdi-music-note","restore-state":!0,total:e.value,"show-provider-filter":!0},null,8,["update-available","title","extra-menu-items","total"]),n(p,{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=m=>r.value=m),type:w(T).RADIO},null,8,["modelValue","type"])],64))}});export{R as default};
@@ -1 +1 @@
1
- import{i as r,ay as B,a_ as b,N as p,aA as c,aI as u,aJ as $,ae as w,bd as d,aD as f,aK as h,aH as I,aG as v,a$ as y,aB as k,bO as C,_ as M}from"./index-rZUS0c3q.js";import{m as g,M as L}from"./Button-Cm9Kv1fL.js";import{M as P}from"./index-kQIztB-E.js";const S=t=>{const l=r(()=>{const{variant:o,showMenuBtn:e,...s}=t,i={...s,"aria-label":t["aria-label"]};return P(o).with("compact",()=>({...i,density:t.density||"compact",class:t.class?`list-item-compact ${t.class}`:"list-item-compact"})).with("comfortable",()=>({...i,density:t.density||"comfortable",class:t.class?`list-item-comfortable ${t.class}`:"list-item-comfortable"})).with("default",()=>({...i,class:t.class?`list-item-default ${t.class}`:"list-item-default"})).otherwise(()=>({...i,class:t.class?`list-item-default ${t.class}`:"list-item-default"}))}),n=r(()=>g("list-item-main",t.variant&&`list-item--${t.variant}`));return{listItemProps:l,listItemClasses:n}},D={variant:"default",showMenuBtn:!1,link:!1},N=B({__name:"ListItem",props:b({showMenuBtn:{type:Boolean},variant:{},active:{type:Boolean},disabled:{type:Boolean},link:{type:Boolean},nav:{type:Boolean},density:{},height:{},lines:{type:[String,Boolean]},subtitle:{},title:{},value:{},color:{},rounded:{type:[Boolean,String,Number]},tag:{},to:{},href:{},replace:{type:Boolean},exact:{type:Boolean},class:{},style:{},"aria-label":{},role:{}},D),emits:["click","menu","input"],setup(t){const l=t,{listItemProps:n,listItemClasses:o}=S(l);return(e,s)=>{const i=C("hold");return p((c(),u($,w(f(n),{class:f(o),onClick:s[1]||(s[1]=a=>e.$emit("click",a)),onContextmenu:s[2]||(s[2]=d(a=>e.$emit("menu",a),["right","prevent"])),onInput:s[3]||(s[3]=a=>e.$emit("input",a))}),h({_:2},[I(e.$slots,(a,m)=>({name:m,fn:v(()=>[y(e.$slots,m,{},void 0,!0)])})),e.$slots.append||t.showMenuBtn?{name:"append",fn:v(()=>[y(e.$slots,"append",{},void 0,!0),t.showMenuBtn?(c(),u(L,{key:0,variant:"icon",icon:"mdi-dots-vertical","aria-label":"Show context menu",onClick:s[0]||(s[0]=d(a=>e.$emit("menu",a),["stop"]))})):k("",!0)]),key:"0"}:void 0]),1040,["class"])),[[i,a=>e.$emit("menu",a)]])}}}),H=M(N,[["__scopeId","data-v-e242bb46"]]);export{H as L};
1
+ import{i as r,ay as B,a_ as b,N as p,aA as c,aI as u,aJ as $,ae as w,bd as d,aD as f,aK as h,aH as I,aG as v,a$ as y,aB as k,bO as C,_ as M}from"./index-GQ3lWXrm.js";import{m as g,M as L}from"./Button-BcX_QSum.js";import{M as P}from"./index-kQIztB-E.js";const S=t=>{const l=r(()=>{const{variant:o,showMenuBtn:e,...s}=t,i={...s,"aria-label":t["aria-label"]};return P(o).with("compact",()=>({...i,density:t.density||"compact",class:t.class?`list-item-compact ${t.class}`:"list-item-compact"})).with("comfortable",()=>({...i,density:t.density||"comfortable",class:t.class?`list-item-comfortable ${t.class}`:"list-item-comfortable"})).with("default",()=>({...i,class:t.class?`list-item-default ${t.class}`:"list-item-default"})).otherwise(()=>({...i,class:t.class?`list-item-default ${t.class}`:"list-item-default"}))}),n=r(()=>g("list-item-main",t.variant&&`list-item--${t.variant}`));return{listItemProps:l,listItemClasses:n}},D={variant:"default",showMenuBtn:!1,link:!1},N=B({__name:"ListItem",props:b({showMenuBtn:{type:Boolean},variant:{},active:{type:Boolean},disabled:{type:Boolean},link:{type:Boolean},nav:{type:Boolean},density:{},height:{},lines:{type:[String,Boolean]},subtitle:{},title:{},value:{},color:{},rounded:{type:[Boolean,String,Number]},tag:{},to:{},href:{},replace:{type:Boolean},exact:{type:Boolean},class:{},style:{},"aria-label":{},role:{}},D),emits:["click","menu","input"],setup(t){const l=t,{listItemProps:n,listItemClasses:o}=S(l);return(e,s)=>{const i=C("hold");return p((c(),u($,w(f(n),{class:f(o),onClick:s[1]||(s[1]=a=>e.$emit("click",a)),onContextmenu:s[2]||(s[2]=d(a=>e.$emit("menu",a),["right","prevent"])),onInput:s[3]||(s[3]=a=>e.$emit("input",a))}),h({_:2},[I(e.$slots,(a,m)=>({name:m,fn:v(()=>[y(e.$slots,m,{},void 0,!0)])})),e.$slots.append||t.showMenuBtn?{name:"append",fn:v(()=>[y(e.$slots,"append",{},void 0,!0),t.showMenuBtn?(c(),u(L,{key:0,variant:"icon",icon:"mdi-dots-vertical","aria-label":"Show context menu",onClick:s[0]||(s[0]=d(a=>e.$emit("menu",a),["stop"]))})):k("",!0)]),key:"0"}:void 0]),1040,["class"])),[[i,a=>e.$emit("menu",a)]])}}}),H=M(N,[["__scopeId","data-v-e242bb46"]]);export{H as L};
@@ -1 +1 @@
1
- import{ay as B,J as R,i as S,az as u,aA as n,o as s,aI as r,aB as h,aU as X,aG as t,ah as _,aH as y,aD as d,bu as Y,bO as z,bP as V,bQ as A,r as E,bL as H,N as J,aS as O,ae as U,bd as j,am as F,bR as v,b8 as G,aJ as Q,aM as q,bh as p,aN as I,bS as K,aL as W,aO as Z,aP as k,_ as ee}from"./index-rZUS0c3q.js";import{C as te}from"./Container-BunIU4BI.js";import{T as ae}from"./Toolbar-xH_GEfSi.js";import{V as oe}from"./PanelviewItemCompact-zZvQaI6t.js";const se={style:{"margin-bottom":"10px"}},ne=B({__name:"MediaItemImages",props:{modelValue:{}},emits:["update:modelValue"],setup(f,{emit:C}){const w=f,c=R(!1),x=C,P=function(e){window.open(e,"_blank")},g=function(e,a){const i="clientX"in e?e.clientX:e.touches[0].clientX,m="clientY"in e?e.clientY:e.touches[0].clientY;Z.emit("contextmenu",{items:[{label:"image_make_primary",icon:"mdi-star-box",action:()=>{N(a)}}],posX:i,posY:m})},L=function(e){return k.getProvider(e)?k.getProvider(e).name:e},M=function(e,a){P(v(a))},b=function(){c.value=!c.value},N=function(e){const a=[e];a.push(...w.modelValue.filter(i=>i!=e)),x("update:modelValue",a)},T=S(()=>[{label:"tooltip.collapse_expand",icon:c.value?"mdi-chevron-up":"mdi-chevron-down",action:b,overflowAllowed:!1}]);return(e,a)=>{const i=z("hold");return n(),u("section",se,[s(ae,{title:e.$t("images"),"menu-items":T.value,onTitleClicked:b},null,8,["title","menu-items"]),s(X),c.value?(n(),r(te,{key:0},{default:t(()=>[(n(!0),u(_,null,y(d(Y),m=>(n(),r(V,{key:m},{default:t(()=>[(n(!0),u(_,null,y(f.modelValue.filter(o=>o.type==m),(o,$)=>(n(),r(A,{key:o.path,cols:"12",class:E(`col-${d(H)(e.$vuetify.display.width)}`)},{default:t(()=>[s(oe,null,{default:t(({props:D})=>[J((n(),r(O,U({ref_for:!0},D,{tile:"",hover:"",class:"panel-item",onClick:l=>{M(l,o)},onContextmenu:j(l=>{g(l,o)},["right","prevent"])}),{default:t(()=>[s(F,{src:d(v)(o,256),class:"bg-grey-lighten-2",width:"100%"},{placeholder:t(()=>[s(V,{align:"center",class:"fill-height ma-0",justify:"center"},{default:t(()=>[s(G,{color:"grey-lighten-5",indeterminate:""})]),_:1})]),_:1},8,["src"]),s(Q,{variant:"text",slim:"",tile:"",density:"compact",class:"panel-item-details"},{default:t(()=>[s(q,{width:"95%"},{default:t(()=>[p(I(e.$t("image_type")+": "+o.type),1)]),_:2},1024),s(K,{class:"line-clamp-1",style:{"margin-right":"25px"}},{default:t(()=>[p(I(e.$t("image_source")+": "+L(o.provider)),1)]),_:2},1024),$==0?(n(),r(W,{key:0,size:"x-large",style:{position:"absolute",right:"0",bottom:"5px"},color:"orange",title:e.$t("tooltip.primary_image")},{default:t(()=>[...a[0]||(a[0]=[p("mdi-star-box",-1)])]),_:1},8,["title"])):h("",!0)]),_:2},1024)]),_:2},1040,["onClick","onContextmenu"])),[[i,l=>{g(l,o)}]])]),_:2},1024)]),_:2},1032,["class"]))),128))]),_:2},1024))),128))]),_:1})):h("",!0)])}}}),me=ee(ne,[["__scopeId","data-v-d74e8be5"]]);export{me as M};
1
+ import{ay as B,J as R,i as S,az as u,aA as n,o as s,aI as r,aB as h,aU as X,aG as t,ah as _,aH as y,aD as d,bu as Y,bO as z,bP as V,bQ as A,r as E,bL as H,N as J,aS as O,ae as U,bd as j,am as F,bR as v,b8 as G,aJ as Q,aM as q,bh as p,aN as I,bS as K,aL as W,aO as Z,aP as k,_ as ee}from"./index-GQ3lWXrm.js";import{C as te}from"./Container-Bc5cvdS8.js";import{T as ae}from"./Toolbar-BhPGsr4E.js";import{V as oe}from"./PanelviewItemCompact-BFofUlbn.js";const se={style:{"margin-bottom":"10px"}},ne=B({__name:"MediaItemImages",props:{modelValue:{}},emits:["update:modelValue"],setup(f,{emit:C}){const w=f,c=R(!1),x=C,P=function(e){window.open(e,"_blank")},g=function(e,a){const i="clientX"in e?e.clientX:e.touches[0].clientX,m="clientY"in e?e.clientY:e.touches[0].clientY;Z.emit("contextmenu",{items:[{label:"image_make_primary",icon:"mdi-star-box",action:()=>{N(a)}}],posX:i,posY:m})},L=function(e){return k.getProvider(e)?k.getProvider(e).name:e},M=function(e,a){P(v(a))},b=function(){c.value=!c.value},N=function(e){const a=[e];a.push(...w.modelValue.filter(i=>i!=e)),x("update:modelValue",a)},T=S(()=>[{label:"tooltip.collapse_expand",icon:c.value?"mdi-chevron-up":"mdi-chevron-down",action:b,overflowAllowed:!1}]);return(e,a)=>{const i=z("hold");return n(),u("section",se,[s(ae,{title:e.$t("images"),"menu-items":T.value,onTitleClicked:b},null,8,["title","menu-items"]),s(X),c.value?(n(),r(te,{key:0},{default:t(()=>[(n(!0),u(_,null,y(d(Y),m=>(n(),r(V,{key:m},{default:t(()=>[(n(!0),u(_,null,y(f.modelValue.filter(o=>o.type==m),(o,$)=>(n(),r(A,{key:o.path,cols:"12",class:E(`col-${d(H)(e.$vuetify.display.width)}`)},{default:t(()=>[s(oe,null,{default:t(({props:D})=>[J((n(),r(O,U({ref_for:!0},D,{tile:"",hover:"",class:"panel-item",onClick:l=>{M(l,o)},onContextmenu:j(l=>{g(l,o)},["right","prevent"])}),{default:t(()=>[s(F,{src:d(v)(o,256),class:"bg-grey-lighten-2",width:"100%"},{placeholder:t(()=>[s(V,{align:"center",class:"fill-height ma-0",justify:"center"},{default:t(()=>[s(G,{color:"grey-lighten-5",indeterminate:""})]),_:1})]),_:1},8,["src"]),s(Q,{variant:"text",slim:"",tile:"",density:"compact",class:"panel-item-details"},{default:t(()=>[s(q,{width:"95%"},{default:t(()=>[p(I(e.$t("image_type")+": "+o.type),1)]),_:2},1024),s(K,{class:"line-clamp-1",style:{"margin-right":"25px"}},{default:t(()=>[p(I(e.$t("image_source")+": "+L(o.provider)),1)]),_:2},1024),$==0?(n(),r(W,{key:0,size:"x-large",style:{position:"absolute",right:"0",bottom:"5px"},color:"orange",title:e.$t("tooltip.primary_image")},{default:t(()=>[...a[0]||(a[0]=[p("mdi-star-box",-1)])]),_:1},8,["title"])):h("",!0)]),_:2},1024)]),_:2},1040,["onClick","onContextmenu"])),[[i,l=>{g(l,o)}]])]),_:2},1024)]),_:2},1032,["class"]))),128))]),_:2},1024))),128))]),_:1})):h("",!0)])}}}),me=ee(ne,[["__scopeId","data-v-d74e8be5"]]);export{me as M};
@@ -0,0 +1 @@
1
+ import{_ as s,cs as a}from"./index-GQ3lWXrm.js";const c=s(a,[["__scopeId","data-v-565bc716"]]);export{c as M};
@@ -0,0 +1 @@
1
+ .now-playing-badge{background:rgb(var(--v-theme-primary));color:#fff;padding:2px 8px;border-radius:999px;font-size:.55rem;text-transform:uppercase;letter-spacing:.5px}.is-playing{font-weight:600}.now-playing-icon{display:flex;gap:2px;margin-left:6px;margin-right:6px;align-items:flex-end;height:16px}.now-playing-icon .bar{width:3px;background:rgb(var(--v-theme-primary));animation:eq 1s infinite ease-in-out}.now-playing-icon .bar:nth-child(1){animation-delay:0s}.now-playing-icon .bar:nth-child(2){animation-delay:.2s}.now-playing-icon .bar:nth-child(3){animation-delay:.4s}.now-playing-icon .bar:nth-child(4){animation-delay:.6s}@keyframes eq{0%,to{height:4px}50%{height:16px}}
@@ -0,0 +1 @@
1
+ import{ay as r,az as l,aA as n,ah as d,aB as o,q as s,E as e}from"./index-GQ3lWXrm.js";const y=r({__name:"NowPlayingBadge",props:{showBadge:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},badgeStyle:{default:""},iconStyle:{default:""}},setup(a){return(i,t)=>(n(),l(d,null,[a.showBadge?(n(),l("span",{key:0,style:s(a.badgeStyle),class:"now-playing-badge","aria-label":"Now playing"}," Now playing ",4)):o("",!0),a.showIcon?(n(),l("div",{key:1,style:s(a.iconStyle),class:"now-playing-icon"},[...t[0]||(t[0]=[e("div",{class:"bar"},null,-1),e("div",{class:"bar"},null,-1),e("div",{class:"bar"},null,-1),e("div",{class:"bar"},null,-1)])],4)):o("",!0)],64))}});export{y as _};
@@ -0,0 +1 @@
1
+ import{g as p,p as I,j as M,af as S,ak as D,ay as A,bO as N,aI as l,aA as t,aG as s,N as O,aS as Y,ae as z,bd as V,aB as o,E as C,o as c,bx as L,az as y,aV as T,aD as m,aQ as w,ax as X,M as H,aM as $,aN as n,cl as E,r as B,bS as d,bh as r,bp as F,aJ as j,cn as G,cm as J,c4 as Q,_ as R}from"./index-GQ3lWXrm.js";import{_ as q}from"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import{M as K}from"./MediaItemThumb-C--YJJ5Y.js";import{V as U}from"./VCheckbox-CgwahLqh.js";const W=I({disabled:Boolean,modelValue:{type:Boolean,default:null},...D()},"VHover"),Z=p()({name:"VHover",props:W(),emits:{"update:modelValue":e=>!0},setup(e,h){let{slots:i}=h;const u=M(e,"modelValue"),{runOpenDelay:f,runCloseDelay:v}=S(e,b=>!e.disabled&&(u.value=b));return()=>i.default?.({isHovering:u.value,props:{onMouseenter:f,onMouseleave:v}})}}),_={class:"thumb-container"},ee={style:{position:"absolute",left:"-10px",top:"0px","z-index":"2"}},ae={key:1,class:"play-button-overlay"},te={key:0},ie=A({__name:"PanelviewItemCompact",props:{item:{},size:{default:200},isSelected:{type:Boolean,default:!1},showCheckboxes:{type:Boolean,default:!1},permanentOverlay:{type:Boolean,default:!1},showProviderOnCover:{type:Boolean,default:!1},isAvailable:{type:Boolean,default:!0},isPlaying:{type:Boolean},parentItem:{default:void 0},disabled:{type:Boolean}},emits:["select"],setup(e,{emit:h}){const i=e,u=h,f=function(a){if(i.showCheckboxes)return;const g="clientX"in a?a.clientX:a.touches[0].clientX,k="clientY"in a?a.clientY:a.touches[0].clientY;J(i.item,g,k,i.parentItem)},v=function(a){if(i.showCheckboxes){u("select",i.item,!i.isSelected);return}G(i.item,a.clientX,a.clientY,i.parentItem)},b=function(a){i.showCheckboxes||Q(i.item,a.clientX,a.clientY,i.parentItem)};return(a,g)=>{const k=N("hold");return t(),l(Z,null,{default:s(({isHovering:x,props:P})=>[O((t(),l(Y,z(P,{class:{"on-hover":x,unavailable:!e.isAvailable},elevation:"0",disabled:e.disabled,onClick:v,onContextmenu:V(f,["right","prevent"])}),{default:s(()=>[e.showCheckboxes?(t(),l(L,{key:0,"model-value":e.showCheckboxes,contained:"",scrim:e.isSelected?a.$vuetify.theme.current.dark?"rgba(0,0,0,.75)":"rgba(255,255,255,.75)":"#ffffff00"},{default:s(()=>[c(U,{class:"panel-item-checkbox",ripple:!1,"model-value":e.isSelected},null,8,["model-value"])]),_:1},8,["model-value","scrim"])):o("",!0),C("div",_,[c(K,{item:e.isAvailable?e.item:void 0},null,8,["item"]),C("div",ee,[e.showProviderOnCover&&"provider_mappings"in e.item?(t(),l(T,{key:0,domain:e.item.media_type==m(w).PLAYLIST?e.item.provider_mappings[0].provider_domain:e.item.provider,size:20},null,8,["domain"])):o("",!0)]),e.isPlaying?(t(),l(q,{key:0,"icon-style":"position: absolute; right: 5px; bottom: 5px","show-badge":!1})):o("",!0),(x||m(X).isTouchscreen)&&e.isAvailable&&e.item.is_playable?(t(),y("div",ae,[c(H,{icon:"mdi-play",color:"white",fab:"",style:{opacity:"0.6","font-size":"20px"},onClick:V(b,["stop"])})])):o("",!0)]),c(j,{variant:"text",slim:"",tile:"",density:"compact",class:"panel-item-details"},{default:s(()=>[c($,null,{default:s(()=>[e.item.media_type==m(w).FOLDER?(t(),y("span",te,[C("span",null,n(m(E)(e.item,a.$t)),1)])):(t(),y("span",{key:1,class:B({"is-playing":e.isPlaying})},n(e.item.name),3)),"version"in e.item&&e.item.version?(t(),y("span",{key:2,class:B({"is-playing":e.isPlaying})}," - "+n(e.item.version),3)):o("",!0)]),_:1}),"artists"in e.item&&e.item.artists?(t(),l(d,{key:0,class:"line-clamp-1"},{default:s(()=>[r(n(m(F)(e.item.artists,1)),1)]),_:1})):o("",!0),"authors"in e.item&&e.item.authors?(t(),l(d,{key:1,class:"line-clamp-1"},{default:s(()=>[r(n(e.item.authors.join(" / ")),1)]),_:1})):"publisher"in e.item&&e.item.publisher?(t(),l(d,{key:2,class:"line-clamp-1"},{default:s(()=>[r(n(e.item.publisher),1)]),_:1})):"owner"in e.item&&e.item.owner?(t(),l(d,{key:3,class:"line-clamp-1"},{default:s(()=>[r(n(e.item.owner),1)]),_:1})):"provider_mappings"in e.item?o("",!0):(t(),l(d,{key:4,class:"line-clamp-1"},{default:s(()=>[r(n(a.$t(e.item.media_type)),1)]),_:1}))]),_:1})]),_:2},1040,["class","disabled"])),[[k,f]])]),_:1})}}}),ce=R(ie,[["__scopeId","data-v-eba3a2ae"]]);export{ce as P,Z as V};
@@ -0,0 +1 @@
1
+ import{J as w,L as W,i as x,ax as T,_ as j,aI as S,aA as n,aK as re,aH as ae,aG as c,a$ as de,ae as me,bd as V,ay as le,aF as ce,aB as C,az as f,aJ as O,q as Y,aD as u,bG as X,o as h,aL as M,E as $,aN as g,bl as H,aP as d,b2 as z,aU as ve,ah as pe,br as P,b3 as R,bq as ye,b1 as D,by as fe,bm as J,be as K,bf as be,ba as ge,bs as he,aS as we,r as _e,b5 as F,bh as G,aQ as ke,bp as Ce,bj as Se,bw as Ve,am as Me,aO as Te,bt as Z,bu as Q}from"./index-GQ3lWXrm.js";import{M as q}from"./Button-BcX_QSum.js";import{M as Ee}from"./MediaItemThumb-C--YJJ5Y.js";import{V as Ue}from"./VSlider-BxXcuhLj.js";import{V as Ae}from"./VCheckbox-CgwahLqh.js";import{V as Be}from"./Toolbar-BhPGsr4E.js";const ze={inheritAttrs:!1,props:{width:String,height:String,style:String,allowWheel:Boolean},emits:["update:model-value","update:local-value"],setup(e,t){const r=w(null),l=w(0),_=w(0),o=w(0),m=w(typeof t.attrs["model-value"]=="number"?t.attrs["model-value"]:0),y=w(0),b=w(0),k=w(!1),E=w(null),s=w(0),i=w(null),a=w(0);W(m,v=>{t.emit("update:local-value",v)});const p=x(()=>({class:"player-volume",hideDetails:!0,trackSize:2,thumbSize:20,step:2,elevation:0,style:`width: ${e.width}; height:${e.height}; display: inline-grid; ${e.style}`})),N=x(()=>{const v=t.attrs,{"model-value":U,modelValue:A,...B}=v||{};return B}),I=x(()=>({...p.value,...N.value})),te=({deltaY:v})=>{if(!e.allowWheel)return;const U=I.value.step,A=v<0?U:-U,B=Math.max(0,Math.min(100,m.value+A));s.value=Date.now()+2e3,m.value=B,t.emit("update:model-value",B),E.value=B},oe=v=>{k.value||(s.value=Date.now()+1e4,l.value=v,_.value=0,m.value=v,E.value=null,T.isTouchscreen&&"vibrate"in navigator&&navigator.vibrate&&navigator.vibrate(10))},ie=v=>{k.value||(_.value++,m.value=v,_.value>2&&(i.value&&clearTimeout(i.value),i.value=setTimeout(()=>{t.emit("update:model-value",v),i.value=null},50)))},se=v=>{if(i.value&&(clearTimeout(i.value),i.value=null),k.value){k.value=!1,_.value=0,s.value=0;return}const U=Date.now();if(U-o.value<250){s.value=0;return}o.value=U;const A=I.value.step;if(_.value>3)m.value=v,t.emit("update:model-value",v),E.value=v;else if(!T.mobileLayout)m.value=v,t.emit("update:model-value",v),E.value=v;else{const B=v>l.value?A:-A,L=Math.max(0,Math.min(100,l.value+B));m.value=L,t.emit("update:model-value",L),E.value=L}_.value=0,s.value=Date.now()+1e3},ne=v=>{y.value=v.touches[0].clientX,b.value=v.touches[0].clientY,k.value=!1,a.value=m.value},ue=v=>{const U=v.touches[0].clientX,A=v.touches[0].clientY,B=Math.abs(U-y.value),L=Math.abs(A-b.value);L>5&&L>B*2&&(k.value||(k.value=!0,m.value=a.value))};return W(()=>t.attrs["model-value"],v=>{const A=Date.now()<s.value;typeof v=="number"&&(E.value!==null&&v===E.value?(m.value=v,E.value=null,s.value=0):A||(m.value=v))}),{playerVolumeProps:I,onWheel:te,sliderRef:r,onDragStart:oe,onUpdateModelValue:ie,onDragEnd:se,localValue:m,onTouchStart:ne,onTouchMove:ue}}};function qe(e,t,r,l,_,o){return n(),S(Ue,me({ref:"sliderRef"},l.playerVolumeProps,{"model-value":l.localValue,onWheel:V(l.onWheel,["prevent"]),onClick:t[0]||(t[0]=V(()=>{},["stop"])),onTouchstart:l.onTouchStart,onTouchmove:l.onTouchMove,onStart:l.onDragStart,"onUpdate:modelValue":l.onUpdateModelValue,onEnd:l.onDragEnd}),re({_:2},[ae(e.$slots,(m,y)=>({name:y,fn:c(()=>[de(e.$slots,y,{localValue:l.localValue},void 0,!0)])}))]),1040,["model-value","onWheel","onTouchstart","onTouchmove","onStart","onUpdate:modelValue","onEnd"])}const ee=j(ze,[["render",qe],["__scopeId","data-v-e4b3dbf4"]]),Le={key:1,class:"text-caption volumecaption"},De={class:"text-caption volumecaption"},$e=le({__name:"VolumeControl",props:{player:{},showSyncControls:{type:Boolean},showSubPlayers:{type:Boolean},showHeadingRow:{type:Boolean},showVolumeControl:{type:Boolean},allowWheel:{type:Boolean}},emits:["toggle-expand"],setup(e){const t=e,r=w([]),l=w([]),_=w(void 0),o=w(0),m=w({});W(()=>t.player,s=>{o.value=Math.round(s.group_members.length?s.group_volume:s.volume_level||0);for(const i of s.group_members)d?.players[i]&&!(i in m.value)&&(m.value[i]=Math.round(d.players[i].volume_level||0))},{immediate:!0,deep:!0});const y=x(()=>t.player.group_members.length>0),b=function(s,i){if(s.volume_muted)return"mdi-volume-mute";const a=i!==void 0?i:s.group_members.length?s.group_volume:s.volume_level||0;return a===0?"mdi-volume-low":a<50?"mdi-volume-medium":"mdi-volume-high"},k=function(s){const i=[];for(const a of s.group_members){const p=d?.players[a];p&&p.volume_control!=X&&p&&p.available&&!i.includes(p)&&i.push(p)}if(t.showSyncControls&&s.supported_features.includes(z.SET_MEMBERS))for(const a of Object.values(d?.players))a.player_id!=s.player_id&&(!s.can_group_with.includes(a.player_id)&&!s.can_group_with.includes(a.provider)||a.available&&a.type!=P.GROUP&&(a.active_group&&a.active_group!=s.player_id||a.active_source&&a.playback_state==R.PLAYING&&![s.player_id,a.player_id].includes(a.active_source)||i.includes(a)||i.push(a)));return i.sort((a,p)=>{const N=s.group_members.includes(a.player_id),I=s.group_members.includes(p.player_id);return N!==I?N?-1:1:a.name.toUpperCase()>p.name.toUpperCase()?1:-1}),i},E=async function(s,i){const a=t.player.player_id;i?(l.value.includes(s)&&(l.value=l.value.filter(p=>p!=s)),r.value.includes(s)||r.value.push(s),d.players[a].group_members.push(s)):(r.value.includes(s)&&(r.value=r.value.filter(p=>p!=s)),l.value.includes(s)||l.value.push(s),d.players[a].group_members=d.players[a].group_members.filter(p=>p!=s)),_.value!=null&&clearTimeout(_.value),!(r.value.length==0&&l.value.length==0)&&(_.value=setTimeout(async()=>{d.playerCommandSetMembers(a,r.value.length?r.value:void 0,l.value.length?l.value:void 0).catch(async()=>{d.players[a]=await d.getPlayer(a)}).finally(()=>{r.value=[],l.value=[]})},500))};return(s,i)=>(n(),S(ce,{style:{overflow:"hidden",padding:"0"},lines:"two"},{default:c(()=>[e.showHeadingRow?(n(),S(O,{key:0,class:"volumesliderrow heading",link:!1,style:Y(e.player.powered==!1?"opacity: 0.6":"opacity: 1")},{prepend:c(()=>[h(M,{size:25,icon:e.player.icon,style:{"margin-left":"6px",opacity:"0.6"}},null,8,["icon"])]),default:c(()=>[$("h5",null,g(u(H)(e.player,27)),1)]),append:c(()=>[e.player.power_control!=u(X)?(n(),S(q,{key:0,class:"powerbtn",variant:"icon",onClick:i[0]||(i[0]=V(a=>u(d).playerCommandPowerToggle(e.player.player_id),["stop"]))},{default:c(()=>[h(M,{size:25,icon:"mdi-power"})]),_:1})):C("",!0)]),_:1},8,["style"])):C("",!0),e.showVolumeControl?(n(),S(O,{key:1,class:"volumesliderrow",link:!1,style:Y(e.player.powered==!1?"opacity: 0.35":"opacity: 0.75")},{prepend:c(()=>[h(q,{icon:"",style:{height:"25px",width:"25px","min-width":"25px"},disabled:!e.player.available||e.player.powered==!1||!e.player.supported_features.includes(u(z).VOLUME_MUTE),onClick:i[1]||(i[1]=V(a=>u(d).playerCommandMuteToggle(e.player.player_id),["stop"]))},{default:c(()=>[h(M,{size:25,icon:b(e.player,o.value)},null,8,["icon"])]),_:1},8,["disabled"])]),default:c(()=>[h(ee,{color:"secondary",width:"100%","is-powered":e.player.powered!=!1,disabled:!e.player.available||e.player.powered==!1||e.player.volume_muted||!e.player.supported_features.includes(u(z).VOLUME_SET),"model-value":Math.round(e.player.group_members.length?e.player.group_volume:e.player.volume_level||0),onClick:i[2]||(i[2]=V(()=>{},["stop"])),"onUpdate:modelValue":i[3]||(i[3]=a=>e.player.group_members.length>0?u(d).playerCommandGroupVolume(e.player.player_id,a):u(d).playerCommandVolumeSet(e.player.player_id,a)),"onUpdate:localValue":i[4]||(i[4]=a=>o.value=a)},null,8,["is-powered","disabled","model-value"])]),append:c(()=>[y.value?(n(),S(M,{key:0,variant:"plain",icon:e.showSubPlayers?"mdi-chevron-up":"mdi-chevron-down",class:"expandbtn",onClick:i[5]||(i[5]=a=>s.$emit("toggle-expand",e.player))},null,8,["icon"])):(n(),f("div",Le,g(Math.round(o.value)),1))]),_:1},8,["style"])):C("",!0),e.showSubPlayers&&(e.player.group_members.length>0||e.showSyncControls)&&k(e.player).length>0?(n(),f("div",{key:2,onClick:i[8]||(i[8]=V(()=>{},["stop"]))},[h(ve,{style:{"margin-top":"10px","margin-bottom":"15px"}}),(n(!0),f(pe,null,ae(k(e.player),a=>(n(),f("div",{key:a.player_id},[h(O,{class:"volumesliderrow",link:!1,style:Y(a.powered!=!1||e.showSyncControls?"opacity: 0.75":"opacity: 0.4"),onClick:i[6]||(i[6]=V(()=>{},["stop"]))},{prepend:c(()=>[h(M,{size:30,icon:a.icon,style:{"margin-left":"6px",opacity:"0.6"}},null,8,["icon"])]),default:c(()=>[$("h6",null,g(u(ye)(a.name,27)),1)]),append:c(()=>[e.showSyncControls?(n(),S(Ae,{key:0,ripple:!1,disabled:a.player_id==e.player.player_id||e.player.static_group_members.includes(a.player_id)&&e.player.group_members.includes(a.player_id),"model-value":e.player.group_members.includes(a.player_id)||a.player_id==e.player.player_id,size:"22",class:"checkbox","onUpdate:modelValue":p=>E(a.player_id,p)},null,8,["disabled","model-value","onUpdate:modelValue"])):C("",!0)]),_:2},1032,["style"]),e.player.group_members.includes(a.player_id)?(n(),S(O,{key:0,class:"volumesliderrow",link:!1,style:Y(a.powered==!1?"opacity: 0.4":"opacity: 0.75"),onClick:i[7]||(i[7]=V(()=>{},["stop"]))},{prepend:c(()=>[h(q,{icon:"",style:{height:"25px","margin-left":"5px",width:"25px","min-width":"25px"},disabled:!a.available||a.powered==!1||!a.supported_features.includes(u(z).VOLUME_MUTE),onClick:p=>u(d).playerCommandMuteToggle(a.player_id)},{default:c(()=>[h(M,{size:25,icon:b(a,m.value[a.player_id])},null,8,["icon"])]),_:2},1032,["disabled","onClick"])]),default:c(()=>[h(ee,{color:"secondary",width:"100%","is-powered":a.powered!=!1,disabled:!a.available||a.powered==!1||a.volume_muted||!a.supported_features.includes(u(z).VOLUME_SET),"allow-wheel":e.allowWheel,"model-value":Math.round(a.volume_level||0),"onUpdate:modelValue":p=>u(d).playerCommandVolumeSet(a.player_id,p),"onUpdate:localValue":p=>m.value[a.player_id]=p},null,8,["is-powered","disabled","allow-wheel","model-value","onUpdate:modelValue","onUpdate:localValue"])]),append:c(()=>[$("div",De,g(Math.round(m.value[a.player_id]??a.volume_level??0)),1)]),_:2},1032,["style"])):C("",!0),i[9]||(i[9]=$("div",{style:{height:"14px"}},null,-1))]))),128))])):C("",!0)]),_:1}))}}),xe=j($e,[["__scopeId","data-v-1aba2ac4"]]),Ie=(e,t)=>{const r=[];e?.power_control!=X&&r.push({label:e.powered?"power_off_player":"power_on_player",labelArgs:[],action:()=>{d.playerCommandPowerToggle(e.player_id)},icon:"mdi-power"}),(e?.playback_state=="playing"||e?.playback_state=="paused")&&r.push({label:"stop_playback",labelArgs:[],action:()=>{d.playerCommandStop(e.player_id)},icon:"mdi-stop"});const l=Object.values(d.players).filter(o=>o.player_id!=e.player_id&&o.available&&o.enabled&&(o.can_group_with.includes(e.provider)||o.can_group_with.includes(e.player_id))&&o.supported_features.includes(z.SET_MEMBERS)&&!o.synced_to);e.supported_features.includes(z.SET_MEMBERS)&&!e.synced_to&&e.type==P.PLAYER&&e.group_members.length==0&&l.length>0&&r.push({label:"sync_player_with",labelArgs:[],icon:"mdi-link-variant",subItems:l.map(o=>({label:o.name,labelArgs:[],action:()=>{d.playerCommandGroup(e.player_id,o.player_id)}})).sort((o,m)=>o.label.toUpperCase()>m.label?.toUpperCase()?1:-1)}),t&&r.push({label:t.shuffle_enabled?"shuffle_disable":"shuffle_enable",labelArgs:[],action:()=>{d.queueCommandShuffleToggle(t.queue_id)},icon:t.shuffle_enabled?"mdi-shuffle-disabled":"mdi-shuffle"}),t&&r.push({label:"select_repeat_mode",labelArgs:[],subItems:[{label:"repeat_mode.off",labelArgs:[],action:()=>{d.queueCommandRepeat(t.queue_id,D.OFF)},selected:t.repeat_mode==D.OFF},{label:"repeat_mode.all",labelArgs:[],action:()=>{d.queueCommandRepeat(t.queue_id,D.ALL)},selected:t.repeat_mode==D.ALL},{label:"repeat_mode.one",labelArgs:[],action:()=>{d.queueCommandRepeat(t.queue_id,D.ONE)},selected:t.repeat_mode==D.ONE}],icon:"mdi-repeat"}),t?.items&&r.push({label:"transfer_queue",icon:"mdi-swap-horizontal",subItems:Object.values(d.players).filter(o=>o.player_id!=t.queue_id&&o.player_id!=e.player_id&&o.available&&o.enabled&&!o.synced_to).map(o=>({label:o.name,labelArgs:[],action:()=>{d.queueCommandTransfer(t.queue_id,o.player_id),T.activePlayerId=o.player_id}})).sort((o,m)=>o.label.toUpperCase()>m.label?.toUpperCase()?1:-1)}),t?.items&&r.push({label:"queue_clear",labelArgs:[],action:()=>{d.queueCommandClear(t.queue_id)},icon:"mdi-cancel"});const _=e.source_list.filter(o=>!o.passive||o.id==e.active_source);return!e.synced_to&&_.length>0&&r.push({label:"select_source",labelArgs:[],icon:"mdi-import",subItems:_.map(o=>({label:o.name,labelArgs:[],disabled:o.id==e.active_source,selected:o.id==e.active_source,action:()=>{d.playerCommandGroupSelectSource(e.player_id,o.id)}})).sort((o,m)=>o.label.toUpperCase()>m.label?.toUpperCase()?1:-1)}),t&&"dont_stop_the_music_enabled"in t&&r.push({label:t.dont_stop_the_music_enabled?"dont_stop_the_music_disable":"dont_stop_the_music_enable",labelArgs:[],action:()=>{d.queueCommandDontStopTheMusicToggle(t.queue_id)},icon:"mdi-all-inclusive"}),fe.isAdmin()&&(r.push({label:"open_player_settings",labelArgs:[],action:()=>{T.showFullscreenPlayer=!1,T.showPlayersMenu=!1,J.push(`/settings/editplayer/${e.player_id}`)},icon:"mdi-cog-outline"}),e.type!==P.GROUP&&r.push({label:"open_dsp_settings",labelArgs:[],action:()=>{T.showFullscreenPlayer=!1,T.showPlayersMenu=!1,J.push(`/settings/editplayer/${e.player_id}/dsp`)},icon:"mdi-equalizer"})),r},Oe={class:"player-media-thumb"},Re={key:1},Pe={key:2,class:"icon-thumb"},Ne={key:0,style:{"margin-bottom":"3px"}},Ye={key:0},Fe={key:1},Ge={key:1},We={key:0,style:{"font-size":"0.85rem","font-weight":"500","white-space":"nowrap"}},Xe={key:0},He={key:0},je={key:1},Je={key:2},Ke={class:"v-list-item-subtitle",style:{"font-size":"0.85rem","white-space":"nowrap"}},Ze={key:0},Qe={key:1},ea={key:2},aa={key:3},la={key:4},ta={key:5},oa={key:6},ia={key:7},sa=le({__name:"PlayerCard",props:{player:{},showVolumeControl:{type:Boolean},showMenuButton:{type:Boolean},showSubPlayers:{type:Boolean},showSyncControls:{type:Boolean},allowPowerControl:{type:Boolean}},emits:["click","toggle-expand"],setup(e){const t=e,r=x(()=>{if(t.player&&t.player.active_source&&t.player.active_source in d.queues)return d.queues[t.player.active_source];if(t.player&&!t.player.active_source&&t.player.player_id in d.queues)return d.queues[t.player.player_id]}),l=x(()=>{if(r.value&&r.value.active)return r.value.current_item}),_=function(y){Te.emit("contextmenu",{items:Ie(t.player,r.value),posX:y.clientX,posY:y.clientY})},o=w({0:"",1:"",2:"",3:"",4:"",5:"",lightColor:"",darkColor:""}),m=new Image;return m.src=ge.theme.current.value.dark?K:be,m.crossOrigin="Anonymous",m.addEventListener("load",function(){o.value=he(m)}),W(l,y=>{y?.media_item?m.src=Z(y.media_item,Q.THUMB)||"":y?m.src=Z(y,Q.THUMB)||"":m.src=""},{immediate:!0}),(y,b)=>(n(),S(we,{flat:"",class:_e(["panel-item",{"panel-item-selected":e.player.player_id==u(T).activePlayerId,"panel-item-idle":e.player.playback_state==u(R).IDLE,"panel-item-off":e.player.powered==!1}]),ripple:!1,disabled:!e.player.available,onClick:b[4]||(b[4]=k=>y.$emit("click",e.player))},{default:c(()=>[h(O,{class:"panel-item-details",flat:"",ripple:!1},{prepend:c(()=>[$("div",Oe,[e.player.powered!=!1&&l.value?(n(),S(Ee,{key:0,class:"media-thumb",size:"60",item:l.value,fallback:u(K)},null,8,["item","fallback"])):e.player.powered!=!1&&!r.value&&e.player.current_media?.image_url?(n(),f("div",Re,[h(Me,{class:"media-thumb",size:"60",src:e.player.current_media.image_url},null,8,["src"])])):(n(),f("div",Pe,[h(M,{size:"24",icon:e.player.type==u(P).PLAYER&&e.player.group_members.length?"mdi-speaker-multiple":e.player.icon,style:{display:"table-cell",opacity:"0.8"}},null,8,["icon"])]))])]),title:c(()=>[u(Ve).player_id===e.player.player_id?(n(),f("div",Ne,[e.player.name=="This Device"?(n(),f("span",Ye,g(y.$t("this_device")),1)):(n(),f("span",Fe,g(u(H)(e.player,27)),1)),h(M,{size:"20",class:"ml-2",icon:u(T).deviceType=="phone"?"mdi-cellphone":"mdi-monitor"},null,8,["icon"])])):(n(),f("div",Ge,g(u(H)(e.player,27)),1))]),subtitle:c(()=>[e.player.powered!=!1?(n(),f("div",We,[l.value?.media_item?(n(),f("div",Xe,[G(g(l.value?.media_item.name)+" ",1),"version"in l.value?.media_item&&l.value?.media_item.version?(n(),f("span",He,"("+g(l.value?.media_item.version)+")",1)):C("",!0)])):l.value?(n(),f("div",je,g(l.value?.name),1)):!r.value&&e.player.current_media?.title?(n(),f("div",Je,g(e.player.current_media.title),1)):C("",!0)])):C("",!0)]),default:c(()=>[$("div",Ke,[e.player.powered==!1?(n(),f("div",Ze,g(y.$t("off")),1)):l.value?.media_item&&l.value?.media_item?.media_type==u(ke).TRACK&&"album"in l.value?.media_item&&l.value?.media_item.album?(n(),f("div",Qe,g(u(Ce)(l.value?.media_item.artists))+" • "+g(l.value?.media_item.album.name),1)):l.value?.media_item&&"artists"in l.value?.media_item&&l.value?.media_item.artists.length>0?(n(),f("div",ea,g(l.value?.media_item.artists[0].name),1)):l.value?.streamdetails?.stream_metadata&&l.value?.streamdetails?.stream_metadata.title&&l.value?.streamdetails?.stream_metadata.artist?(n(),f("div",aa,g(l.value?.streamdetails?.stream_metadata.artist)+" - "+g(l.value?.streamdetails?.stream_metadata.title),1)):l.value?.streamdetails?.stream_metadata&&l.value?.streamdetails?.stream_metadata.title?(n(),f("div",la,g(l.value?.streamdetails?.stream_metadata.title),1)):l.value?.media_item?.metadata.description?(n(),f("div",ta,g(l.value?.media_item.metadata.description),1)):!r.value&&e.player.active_source?(n(),f("div",oa,g(y.$t("external_source_active",[u(Se)(e.player)])),1)):r.value?.items==0?(n(),f("div",ia,g(y.$t("queue_empty")),1)):C("",!0)])]),append:c(()=>[e.player.playback_state==u(R).PAUSED||e.player.playback_state==u(R).PLAYING||r.value?.items?(n(),S(q,{key:0,variant:"icon",class:"player-command-btn",onClick:b[0]||(b[0]=V(k=>{u(d).playerCommandPlayPause(e.player.player_id),u(T).activePlayerId=e.player.player_id},["stop"]))},{default:c(()=>[h(M,{size:u(F)({breakpoint:"phone"})?"30":"32",icon:e.player.playback_state==u(R).PLAYING?"mdi-pause":"mdi-play"},null,8,["size","icon"])]),_:1})):C("",!0),e.showSyncControls&&e.player.supported_features.includes(u(z).SET_MEMBERS)&&e.showVolumeControl?(n(),S(q,{key:1,variant:"icon",class:"player-command-btn group-expand-btn",onClick:b[1]||(b[1]=V(k=>y.$emit("toggle-expand",e.player),["stop"]))},{default:c(()=>[h(Be,{color:"primary","offset-x":-5,"offset-y":-5,content:e.player.type==u(P).GROUP?e.player.group_members.length:e.player.group_members.length||1,class:"group-badge"},{default:c(()=>[h(M,{size:u(F)({breakpoint:"phone"})?"20":"22"},{default:c(()=>[...b[5]||(b[5]=[G("mdi-speaker-multiple",-1)])]),_:1},8,["size"])]),_:1},8,["content"])]),_:1})):C("",!0),e.player.power_control!=u(X)&&e.allowPowerControl?(n(),S(q,{key:2,variant:"icon",class:"player-command-btn",onClick:b[2]||(b[2]=V(k=>{u(d).playerCommandPowerToggle(e.player.player_id),u(T).activePlayerId=e.player.player_id},["stop"]))},{default:c(()=>[h(M,{size:u(F)({breakpoint:"phone"})?"30":"32"},{default:c(()=>[...b[6]||(b[6]=[G("mdi-power",-1)])]),_:1},8,["size"])]),_:1})):C("",!0),e.showMenuButton?(n(),S(q,{key:3,variant:"icon",class:"player-command-btn",style:{"margin-right":"-5px"},onClick:V(_,["stop"])},{default:c(()=>[h(M,{size:u(F)({breakpoint:"phone"})?"30":"32"},{default:c(()=>[...b[7]||(b[7]=[G("mdi-dots-vertical",-1)])]),_:1},8,["size"])]),_:1})):C("",!0)]),_:1}),e.showVolumeControl?(n(),S(xe,{key:0,player:e.player,"show-sync-controls":e.showSyncControls,"show-heading-row":!1,"show-sub-players":e.showSubPlayers,"show-volume-control":e.player.powered!=!1,"allow-wheel":!1,onToggleExpand:b[3]||(b[3]=k=>y.$emit("toggle-expand",e.player))},null,8,["player","show-sync-controls","show-sub-players","show-volume-control"])):C("",!0)]),_:1},8,["class","disabled"]))}}),va=j(sa,[["__scopeId","data-v-eb4a3dad"]]);export{ee as P,xe as V,va as a,Ie as g};
@@ -0,0 +1 @@
1
+ .v-slider.v-input--horizontal .v-input__control[data-v-e4b3dbf4]{min-height:5px}.v-slider.v-input--horizontal[data-v-e4b3dbf4]{margin-inline:unset!important}.volumesliderrow[data-v-1aba2ac4]{margin-top:0;padding-top:0;padding-bottom:0;height:40px;min-height:40px}.volumesliderrow[data-v-1aba2ac4] .v-list-item__content{height:40px;min-height:40px;overflow:visible!important;align-content:center}.heading[data-v-1aba2ac4]{margin-bottom:5px;height:35px}.volumecaption[data-v-1aba2ac4]{width:34px;text-align:right;margin-right:-20px}.expandbtn[data-v-1aba2ac4]{margin-right:-12px}.powerbtn[data-v-1aba2ac4]{right:8px}.volumesliderrow[data-v-1aba2ac4] .v-list-item__prepend{width:40px;margin-left:-20px}.volumesliderrow[data-v-1aba2ac4] .v-list-item__append{width:20px}.checkbox[data-v-1aba2ac4]{margin-right:-5px;width:25px;margin-top:-30px;height:22px!important;min-height:22px!important;display:unset}.syncbtn[data-v-1aba2ac4]{margin-right:-32px;height:25px!important;padding-bottom:20px}.panel-item-details[data-v-eb4a3dad]{width:100%;margin:0!important;padding:0!important;min-height:72px}.panel-item-details[data-v-eb4a3dad] .v-list-item__content{display:flex;flex-direction:column;justify-content:center;min-height:60px}.volumesliderrow[data-v-eb4a3dad]{margin-top:0;padding-top:0;padding-bottom:0;height:24px;min-height:24px}.volumecaption[data-v-eb4a3dad]{width:25px;text-align:right;margin-right:0}.volumesliderrow[data-v-eb4a3dad] .v-list-item__prepend{width:40px;margin-left:-25px}.volumesliderrow[data-v-eb4a3dad] .v-expansion-panel-text__wrapper{padding:0}.player-media-thumb[data-v-eb4a3dad]{margin-right:10px}.media-thumb[data-v-eb4a3dad]{width:60px;height:60px;border-radius:4px;background-color:#0000004d}.icon-thumb[data-v-eb4a3dad]{width:60px;height:60px;border-radius:4px;background-color:#0000004d;display:flex;align-items:center;justify-content:center}.media-thumb[data-v-eb4a3dad]{width:55px;height:55px;border-radius:4px;background-color:#0000004d}.icon-thumb[data-v-eb4a3dad]{width:55px;height:55px;margin-top:5px;border-radius:4px;background-color:#0000004d;display:inline-table}.panel-item[data-v-eb4a3dad]{border-style:ridge;border-width:thin;border-color:#cccccc5e;padding:5px 8px;background-color:#a2bcff1a;opacity:1;transition:opacity .4s ease-in-out;border-radius:6px;margin:5px 0 8px;height:100%;width:auto}.panel-item-idle[data-v-eb4a3dad]{opacity:.8}.panel-item-off[data-v-eb4a3dad]{opacity:.6}.panel-item-selected[data-v-eb4a3dad]{border-color:#2f2f2f5e;background-color:#a2bcff66}.player-command-btn[data-v-eb4a3dad]{width:35px;min-width:35px;margin-left:5px}.group-badge[data-v-eb4a3dad] .v-badge__badge{font-size:10px;height:16px;min-width:16px;padding:0 3px 0 4px}