music-assistant-frontend 2.17.23__py3-none-any.whl → 2.17.32__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.
Files changed (124) hide show
  1. music_assistant_frontend/assets/About-BlM2bNNU.css +1 -0
  2. music_assistant_frontend/assets/About-CV6HY6Cu.js +1 -0
  3. music_assistant_frontend/assets/{AddManualLink.vue_vue_type_script_setup_true_lang-BPxtYoQW.js → AddManualLink.vue_vue_type_script_setup_true_lang-BeduIUk6.js} +1 -1
  4. music_assistant_frontend/assets/AddPlayerGroup-Du383NUc.js +1 -0
  5. music_assistant_frontend/assets/{AddProviderDetails-CelupE7u.js → AddProviderDetails-DH9lhcSK.js} +1 -1
  6. music_assistant_frontend/assets/AlbumDetails-COxyRlta.js +1 -0
  7. music_assistant_frontend/assets/ArtistDetails-BXxNva8k.js +1 -0
  8. music_assistant_frontend/assets/{AudiobookDetails-Bu9SszK7.js → AudiobookDetails-Dosym9RN.js} +1 -1
  9. music_assistant_frontend/assets/BrowseView-CYbwlBvT.css +1 -0
  10. music_assistant_frontend/assets/BrowseView-pB3l4XUD.js +1 -0
  11. music_assistant_frontend/assets/{Button-CsTMTfds.js → Button-BiCjBB20.js} +1 -1
  12. music_assistant_frontend/assets/{Container-DVyrkl2H.js → Container-CxScoaQr.js} +1 -1
  13. music_assistant_frontend/assets/{CreateTokenDialog.vue_vue_type_script_setup_true_lang-CDOcvzeY.js → CreateTokenDialog.vue_vue_type_script_setup_true_lang-D2Qjl841.js} +1 -1
  14. music_assistant_frontend/assets/Default-DHOHMFeE.js +21 -0
  15. music_assistant_frontend/assets/{Default-BGKNhhwh.css → Default-DJnoQ5hD.css} +1 -1
  16. music_assistant_frontend/assets/{EditConfig-DgPHHjUH.js → EditConfig-DB9H12KG.js} +2 -2
  17. music_assistant_frontend/assets/{EditCoreConfig-CbqG7Gbn.js → EditCoreConfig-BMQ7BS3a.js} +1 -1
  18. music_assistant_frontend/assets/{EditPlayer-K5ooPIlK.js → EditPlayer-DzVgRHoC.js} +1 -1
  19. music_assistant_frontend/assets/{EditPlayerDsp-B-LTM5mJ.js → EditPlayerDsp-D5V1CkM-.js} +3 -3
  20. music_assistant_frontend/assets/{EditProvider-LhZSA23p.js → EditProvider-CJto140u.js} +1 -1
  21. music_assistant_frontend/assets/FrontendConfig-BUkcUaxv.js +1 -0
  22. music_assistant_frontend/assets/HomeView-oK5JMBeb.js +1 -0
  23. music_assistant_frontend/assets/ItemsListing-A1ZT1kbn.js +1 -0
  24. music_assistant_frontend/assets/ItemsListing-DBRgGdb9.css +1 -0
  25. music_assistant_frontend/assets/LibraryAlbums-DJho375s.js +1 -0
  26. music_assistant_frontend/assets/LibraryArtists-DcWnNjeu.js +1 -0
  27. music_assistant_frontend/assets/LibraryAudiobooks-B117NR_V.js +1 -0
  28. music_assistant_frontend/assets/LibraryPlaylists-CoLgVbrh.js +1 -0
  29. music_assistant_frontend/assets/LibraryPodcasts-BEHMJqOA.js +1 -0
  30. music_assistant_frontend/assets/LibraryRadios-BrqYjq3J.js +1 -0
  31. music_assistant_frontend/assets/LibraryTracks-Bmvmk-4Y.js +1 -0
  32. music_assistant_frontend/assets/{ListItem-Emhe-KUj.js → ListItem-iWXF1T59.js} +1 -1
  33. music_assistant_frontend/assets/{MediaItemImages-Df7nKM8C.js → MediaItemImages-BOf5Uj2V.js} +1 -1
  34. music_assistant_frontend/assets/MediaItemThumb-Dw_UVqvI.js +1 -0
  35. music_assistant_frontend/assets/{PanelviewItemCompact-pmyYhZHE.js → PanelviewItemCompact-DqrW-65j.js} +1 -1
  36. music_assistant_frontend/assets/PlayerCard-CAzWxRts.js +1 -0
  37. music_assistant_frontend/assets/{PlayerCard-BtmAlIKh.css → PlayerCard-FDH7ZKgP.css} +1 -1
  38. music_assistant_frontend/assets/Players-C2XxoddH.js +1 -0
  39. music_assistant_frontend/assets/Players-DiFMAcvk.css +1 -0
  40. music_assistant_frontend/assets/PlaylistDetails-C7LgYTrG.js +1 -0
  41. music_assistant_frontend/assets/PodcastDetails-DWV8dfji.js +1 -0
  42. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-ne-sT3oC.js +8 -0
  43. music_assistant_frontend/assets/Providers-CNZqCuOW.js +1 -0
  44. music_assistant_frontend/assets/Providers-Df6R6NDc.css +1 -0
  45. music_assistant_frontend/assets/RadioDetails-CHnY3szA.js +1 -0
  46. music_assistant_frontend/assets/RemoteAccessSettings-Bf5s7Cwr.css +1 -0
  47. music_assistant_frontend/assets/RemoteAccessSettings-C7tOdY92.js +1 -0
  48. music_assistant_frontend/assets/Search-DnZKGW7M.js +1 -0
  49. music_assistant_frontend/assets/{ServerLogs-D72XN62w.js → ServerLogs-CN-V6Ykv.js} +1 -1
  50. music_assistant_frontend/assets/Settings-CUlHRuiJ.js +1 -0
  51. music_assistant_frontend/assets/{Settings-C1mth5_q.css → Settings-CbTYv9HY.css} +1 -1
  52. music_assistant_frontend/assets/{SystemConfig-B_pajhS9.js → SystemConfig-CfZR6dJU.js} +1 -1
  53. music_assistant_frontend/assets/Toolbar-B6JfB3ZK.js +1 -0
  54. music_assistant_frontend/assets/{Toolbar-CVFN8H4Z.css → Toolbar-DOjWle_n.css} +1 -1
  55. music_assistant_frontend/assets/TrackDetails-U0dq6UQ-.js +1 -0
  56. music_assistant_frontend/assets/{UserManagement-DbFQsYHK.js → UserManagement-BL2RuBx9.js} +1 -1
  57. music_assistant_frontend/assets/{UserProfile--j1jhm_i.js → UserProfile-B0pe-Ula.js} +1 -1
  58. music_assistant_frontend/assets/{VAlert-Kj2m6TCt.js → VAlert-CqZcE68W.js} +1 -1
  59. music_assistant_frontend/assets/{VCheckboxBtn-lg4Bkg3S.js → VCheckboxBtn-pFfosXS7.js} +1 -1
  60. music_assistant_frontend/assets/{VDialog-DofGN8Yd.js → VDialog-oA-qD8nK.js} +1 -1
  61. music_assistant_frontend/assets/VExpansionPanels-ynbmIXCh.js +1 -0
  62. music_assistant_frontend/assets/{VForm-DkfI6S-G.js → VForm-lwT5Vjdc.js} +1 -1
  63. music_assistant_frontend/assets/{VInfiniteScroll-C4zaTPzz.js → VInfiniteScroll-D5IkGjaw.js} +1 -1
  64. music_assistant_frontend/assets/{VSelect-CMxVGu2h.js → VSelect-BULCN41e.js} +1 -1
  65. music_assistant_frontend/assets/VSelectionControl-BU644enI.js +1 -0
  66. music_assistant_frontend/assets/{VSlider-D1oP09L0.js → VSlider-SvfKY3nA.js} +1 -1
  67. music_assistant_frontend/assets/{VSwitch-jlMLuij2.js → VSwitch-CbeBX82z.js} +1 -1
  68. music_assistant_frontend/assets/VToolbar-p_Wr_MDA.js +1 -0
  69. music_assistant_frontend/assets/{VVirtualScroll-RawLIXgS.js → VVirtualScroll-Bmp7pEa7.js} +1 -1
  70. music_assistant_frontend/assets/{WidgetRow-CkOdk0Z6.js → WidgetRow-CI7rsYFv.js} +1 -1
  71. music_assistant_frontend/assets/{index-Ci6ypq6O.js → index-Co2Il0FF.js} +55 -54
  72. music_assistant_frontend/assets/index-W5yBuLNV.css +1 -0
  73. music_assistant_frontend/assets/{marquee_text_sync-D_iJsxcD.js → marquee_text_sync-CRO4rHS2.js} +1 -1
  74. music_assistant_frontend/assets/userPreferences-BuMozdux.js +1 -0
  75. music_assistant_frontend/index.html +2 -2
  76. music_assistant_frontend/sw.js +1 -1
  77. {music_assistant_frontend-2.17.23.dist-info → music_assistant_frontend-2.17.32.dist-info}/METADATA +1 -1
  78. music_assistant_frontend-2.17.32.dist-info/RECORD +148 -0
  79. music_assistant_frontend/assets/About-Ba3VLBU-.css +0 -1
  80. music_assistant_frontend/assets/About-RUoOAv4X.js +0 -1
  81. music_assistant_frontend/assets/AddPlayerGroup-D1w33Hxp.js +0 -1
  82. music_assistant_frontend/assets/AlbumDetails-DAiKOl2b.js +0 -1
  83. music_assistant_frontend/assets/ArtistDetails-CB1LbwJB.js +0 -1
  84. music_assistant_frontend/assets/BrowseView-DsuxryYQ.css +0 -1
  85. music_assistant_frontend/assets/BrowseView-mL-Ro3la.js +0 -1
  86. music_assistant_frontend/assets/Default-CbXEYQ2G.js +0 -21
  87. music_assistant_frontend/assets/FrontendConfig-DK_MHxLP.js +0 -1
  88. music_assistant_frontend/assets/HomeView-CgBzF01O.js +0 -1
  89. music_assistant_frontend/assets/ItemsListing-BZL9sVtN.css +0 -1
  90. music_assistant_frontend/assets/ItemsListing-Bao8c9rP.js +0 -1
  91. music_assistant_frontend/assets/LibraryAlbums-DFEsqYSE.js +0 -1
  92. music_assistant_frontend/assets/LibraryArtists-zSFwRyIw.js +0 -1
  93. music_assistant_frontend/assets/LibraryAudiobooks-CWiohRcm.js +0 -1
  94. music_assistant_frontend/assets/LibraryPlaylists-BwcUK8IR.js +0 -1
  95. music_assistant_frontend/assets/LibraryPodcasts-CuYH_JUt.js +0 -1
  96. music_assistant_frontend/assets/LibraryRadios-C41h1ZhN.js +0 -1
  97. music_assistant_frontend/assets/LibraryTracks-wXT86JHG.js +0 -1
  98. music_assistant_frontend/assets/MediaItemThumb-DT_RR5hr.js +0 -1
  99. music_assistant_frontend/assets/PlayerCard-CEVvwv95.js +0 -1
  100. music_assistant_frontend/assets/Players-EhQqcnhl.css +0 -1
  101. music_assistant_frontend/assets/Players-tRk-aPmf.js +0 -1
  102. music_assistant_frontend/assets/PlaylistDetails-CLa5Z3w1.js +0 -1
  103. music_assistant_frontend/assets/PodcastDetails-CLsR7Tn5.js +0 -1
  104. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-DHz8rGQ5.js +0 -8
  105. music_assistant_frontend/assets/Providers-B-Yv3fiH.js +0 -1
  106. music_assistant_frontend/assets/Providers-Dn02HurB.css +0 -1
  107. music_assistant_frontend/assets/RadioDetails-CLCgG3cC.js +0 -1
  108. music_assistant_frontend/assets/RemoteAccessSettings-BAwrICX9.js +0 -1
  109. music_assistant_frontend/assets/RemoteAccessSettings-C5-vEsHF.css +0 -1
  110. music_assistant_frontend/assets/Search-BTfWUjPY.js +0 -1
  111. music_assistant_frontend/assets/Settings-BRF4vH9U.js +0 -1
  112. music_assistant_frontend/assets/Toolbar-DNqs9OXR.js +0 -1
  113. music_assistant_frontend/assets/TrackDetails-Dae-KK6X.js +0 -1
  114. music_assistant_frontend/assets/VExpansionPanels-Hd3nRlf_.js +0 -1
  115. music_assistant_frontend/assets/VSelectionControl-CuEKzbGp.js +0 -1
  116. music_assistant_frontend/assets/VSnackbar-B4pe7Cfy.css +0 -1
  117. music_assistant_frontend/assets/VSnackbar-DsamuEmf.js +0 -1
  118. music_assistant_frontend/assets/VToolbar-CTLIwz5x.js +0 -1
  119. music_assistant_frontend/assets/index-BMi8F_Xw.css +0 -1
  120. music_assistant_frontend/assets/userPreferences-D-oqBjc0.js +0 -1
  121. music_assistant_frontend-2.17.23.dist-info/RECORD +0 -150
  122. {music_assistant_frontend-2.17.23.dist-info → music_assistant_frontend-2.17.32.dist-info}/WHEEL +0 -0
  123. {music_assistant_frontend-2.17.23.dist-info → music_assistant_frontend-2.17.32.dist-info}/licenses/LICENSE +0 -0
  124. {music_assistant_frontend-2.17.23.dist-info → music_assistant_frontend-2.17.32.dist-info}/top_level.txt +0 -0
@@ -1,2 +1,2 @@
1
- import{p as Pe,K as ae,i as B,aD as u,a2 as ye,cY as Ue,cV as _e,E as n,r as ke,ah as Q,g as el,I as ll,J,d4 as al,ao as ul,j as Fe,cO as il,d5 as ve,R as pe,L as se,n as tl,bH as N,o as p,ae as _,ap as sl,ai as dl,d6 as ol,d7 as nl,cX as Le,d8 as rl,d9 as Re,O as vl,aL as De,da as pl,b4 as ml,aF as bl,aJ as Oe,aU as Ve,db as gl,bE as kl,bK as fe,dc as Vl,q as cl,an as Cl,bh as L,ay as hl,cG as r,az as E,aA as o,aI as C,aB as ee,aG as h,aH as me,M as j,aN as T,aT as d,aE as xl,aS as $l,c3 as Ne,c0 as El,bV as Il,bW as Sl,dd as ge,cT as he,_ as Ul}from"./index-Ci6ypq6O.js";import{V as Tl}from"./VForm-DkfI6S-G.js";import{V as ql,a as wl,b as Al,c as Fl}from"./VExpansionPanels-Hd3nRlf_.js";import{V as Ll}from"./VDialog-DofGN8Yd.js";import{V as te}from"./VAlert-Kj2m6TCt.js";import{V as xe}from"./VSwitch-jlMLuij2.js";import{V as $e}from"./VSlider-D1oP09L0.js";import{u as Rl,a as Dl,m as Ol,V as Ee}from"./VSelect-CMxVGu2h.js";import{V as fl}from"./VVirtualScroll-RawLIXgS.js";import{V as Nl}from"./VCheckboxBtn-lg4Bkg3S.js";const Pl=(i,x,U)=>{if(i==null||x==null)return-1;if(!x.length)return 0;i=i.toString().toLocaleLowerCase(),x=x.toString().toLocaleLowerCase();const b=[];let $=i.indexOf(x);for(;~$;)b.push([$,$+x.length]),$=i.indexOf(x,$+x.length);return b.length?b:-1};function Ie(i,x){if(!(i==null||typeof i=="boolean"||i===-1))return typeof i=="number"?[[i,i+x.length]]:Array.isArray(i[0])?i:[i]}const Ml=Pe({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Bl(i,x,U){const b=[],$=U?.default??Pl,A=U?.filterKeys?Ue(U.filterKeys):!1,q=Object.keys(U?.customKeyFilter??{}).length;if(!i?.length)return b;let w=null;e:for(let I=0;I<i.length;I++){const[S,H=S]=Ue(i[I]),c={},P={};let D=-1;if((x||q>0)&&!U?.noFilter){let X=!1;if(typeof S=="object"){if(S.type==="divider"||S.type==="subheader"){w?.type==="divider"&&S.type==="subheader"&&b.push(w),w={index:I,matches:{},type:S.type};continue}const y=A||Object.keys(H);X=y.length===q;for(const g of y){const z=_e(H,g),M=U?.customKeyFilter?.[g];if(D=M?M(z,x,S):$(z,x,S),D!==-1&&D!==!1)M?c[g]=Ie(D,x):P[g]=Ie(D,x);else if(U?.filterMode==="every")continue e}}else D=$(S,x,S),D!==-1&&D!==!1&&(P.title=Ie(D,x));const Y=Object.keys(P).length,Z=Object.keys(c).length;if(!Y&&!Z||U?.filterMode==="union"&&Z!==q&&!Y||U?.filterMode==="intersection"&&(Z!==q||!Y&&q>0&&!X))continue}w&&(b.push(w),w=null),b.push({index:I,matches:{...P,...c}})}return b}function Kl(i,x,U,b){const $=ae([]),A=ae(new Map),q=B(()=>u(x));ye(()=>{const I=typeof U=="function"?U():u(U),S=typeof I!="string"&&typeof I!="number"?"":String(I),H=Bl(q.value,S,{customKeyFilter:{...i.customKeyFilter,...u(b?.customKeyFilter)},default:i.customFilter,filterKeys:i.filterKeys,filterMode:i.filterMode,noFilter:i.noFilter}),c=u(x),P=[],D=new Map;H.forEach(X=>{let{index:Y,matches:Z}=X;const y=c[Y];P.push(y),D.set(y.value,Z)}),$.value=P,A.value=D});function w(I){return A.value.get(I.value)}return{filteredItems:$,filteredMatches:A,getMatches:w}}function Gl(i,x,U){return U==null||!U.length?x:U.map((b,$)=>{const A=$===0?0:U[$-1][1],q=[n("span",{class:ke(`${i}__unmask`)},[x.slice(A,b[0])]),n("span",{class:ke(`${i}__mask`)},[x.slice(b[0],b[1])])];return $===U.length-1&&q.push(n("span",{class:ke(`${i}__unmask`)},[x.slice(b[1])])),n(Q,null,[q])})}const jl=Pe({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Ml({filterKeys:["title"]}),...Ol({hideNoData:!0,returnObject:!0}),...dl(ol({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),Se=el()({name:"VCombobox",props:jl(),emits:{"update:focused":i=>!0,"update:modelValue":i=>!0,"update:search":i=>!0,"update:menu":i=>!0},setup(i,x){let{emit:U,slots:b}=x;const{t:$}=ll(),A=J(),q=ae(!1),w=ae(!0),I=ae(!1),S=J(),H=J(),c=ae(-1);let P=!1;const{items:D,transformIn:X,transformOut:Y}=al(i),{textColorClasses:Z,textColorStyles:y}=ul(()=>A.value?.color),g=Fe(i,"modelValue",[],s=>X(Ue(s)),s=>{const k=Y(s);return i.multiple?k:k[0]??null}),z=il(i),M=B(()=>!!(i.chips||b.chip)),K=B(()=>M.value||!!b.selection),O=ae(!i.multiple&&!K.value?g.value[0]?.title??"":""),ue=ae(null),F=B({get:()=>O.value,set:async s=>{if(O.value=s??"",s===null||s===""&&!i.multiple&&!K.value?g.value=[]:!i.multiple&&!K.value&&(g.value=[ve(i,s)],pe(()=>H.value?.scrollToIndex(0))),s&&i.multiple&&i.delimiters?.length){const k=we(s);k.length>1&&(Ae(k),O.value="")}s||(c.value=-1),w.value=!s}}),de=B(()=>typeof i.counterValue=="function"?i.counterValue(g.value):typeof i.counterValue=="number"?i.counterValue:i.multiple?g.value.length:F.value.length),{filteredItems:le,getMatches:v}=Kl(i,D,()=>ue.value??(i.alwaysFilter||!w.value?F.value:"")),a=B(()=>i.hideSelected&&ue.value===null?le.value.filter(s=>!g.value.some(k=>k.value===s.value)):le.value),l=B(()=>i.hideNoData&&!a.value.length||z.isReadonly.value||z.isDisabled.value),e=Fe(i,"menu"),t=B({get:()=>e.value,set:s=>{e.value&&!s&&S.value?.ΨopenChildren.size||s&&l.value||(e.value=s)}}),{menuId:Te,ariaExpanded:oe,ariaControls:ie,ariaLabel:qe}=Rl(i,t);se(O,s=>{P?pe(()=>P=!1):q.value&&!t.value&&(t.value=!0),U("update:search",s)}),se(g,s=>{!i.multiple&&!K.value&&(O.value=s[0]?.title??"")});const Me=B(()=>g.value.map(s=>s.value)),ce=B(()=>(i.autoSelectFirst===!0||i.autoSelectFirst==="exact"&&F.value===a.value[0]?.title)&&a.value.length>0&&!w.value&&!I.value),Ce=J(),Be=Dl(Ce,A);function Ke(s){P=!0,pe(()=>P=!1),i.openOnClear&&(t.value=!0)}function Ge(){l.value||(t.value=!0)}function je(s){l.value||(q.value&&(s.preventDefault(),s.stopPropagation()),t.value=!t.value)}function ze(s){(Re(s)||s.key==="Backspace")&&A.value?.focus()}function He(s){if(rl(s)||z.isReadonly.value)return;const k=A.value?.selectionStart,f=g.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(s.key)&&s.preventDefault(),["Enter","ArrowDown"].includes(s.key)&&(t.value=!0),["Escape"].includes(s.key)&&(t.value=!1),ce.value&&["Enter","Tab"].includes(s.key)&&!g.value.some(m=>{let{value:V}=m;return V===a.value[0].value})&&W(le.value[0]),s.key==="ArrowDown"&&ce.value&&Ce.value?.focus("next"),s.key==="Enter"&&F.value&&(W(ve(i,F.value),!0,!0),K.value&&(O.value="")),["Backspace","Delete"].includes(s.key)){if(!i.multiple&&K.value&&g.value.length>0&&!F.value)return W(g.value[0],!1);if(~c.value){s.preventDefault();const m=c.value;W(g.value[c.value],!1),c.value=m>=f-1?f-2:m}else s.key==="Backspace"&&!F.value&&(c.value=f-1);return}if(i.multiple)if(s.key==="ArrowLeft"){if(c.value<0&&k&&k>0)return;const m=c.value>-1?c.value-1:f-1;g.value[m]?c.value=m:(c.value=-1,A.value?.setSelectionRange(F.value.length,F.value.length))}else if(s.key==="ArrowRight"){if(c.value<0)return;const m=c.value+1;g.value[m]?c.value=m:(c.value=-1,A.value?.setSelectionRange(0,0))}else~c.value&&Re(s)&&(c.value=-1)}function Je(s){const k=s?.clipboardData?.getData("Text")??"",f=we(k);f.length>1&&i.multiple&&(s.preventDefault(),Ae(f))}function We(){i.eager&&H.value?.calculateVisibleItems()}function Qe(){q.value&&A.value?.focus(),w.value=!0,ue.value=null}function W(s){let k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!s||s.props.disabled))if(i.multiple){const m=g.value.findIndex(R=>(i.valueComparator||Le)(R.value,s.value)),V=k??!~m;if(~m){const R=V?[...g.value,s]:[...g.value];R.splice(m,1),g.value=R}else V&&(g.value=[...g.value,s]);i.clearOnSelect&&(F.value="")}else{const m=k!==!1;g.value=m?[s]:[],(!w.value||i.alwaysFilter)&&O.value&&(ue.value=O.value),O.value=m&&!K.value?s.title:"",pe(()=>{t.value=f,w.value=!0})}}function we(s){const f=[`
2
- `,...i.delimiters??[]].map(nl).join("|");return s.split(new RegExp(`(?:${f})+`))}async function Ae(s){for(let k of s)k=k.trim(),k&&(W(ve(i,k)),await pe())}function Xe(s){q.value=!0,setTimeout(()=>{I.value=!0})}function Ye(s){I.value=!1}return se(q,(s,k)=>{if(!(s||s===k)&&(c.value=-1,t.value=!1,F.value)){if(i.multiple){W(ve(i,F.value));return}if(!K.value)return;g.value.some(f=>{let{title:m}=f;return m===F.value})?O.value="":W(ve(i,F.value))}}),se(t,s=>{if(!i.hideSelected&&s&&g.value.length&&w.value){const k=a.value.findIndex(f=>g.value.some(m=>(i.valueComparator||Le)(m.value,f.value)));vl&&window.requestAnimationFrame(()=>{k>=0&&H.value?.scrollToIndex(k)})}s&&(ue.value=null)}),se(D,(s,k)=>{t.value||q.value&&!k.length&&s.length&&(t.value=!0)}),tl(()=>{const s=!!(!i.hideNoData||a.value.length||b["prepend-item"]||b["append-item"]||b["no-data"]),k=g.value.length>0,f=N.filterProps(i);return p(N,_({ref:A},f,{modelValue:F.value,"onUpdate:modelValue":m=>F.value=m,focused:q.value,"onUpdate:focused":m=>q.value=m,validationValue:g.externalValue,counterValue:de.value,dirty:k,class:["v-combobox",{"v-combobox--active-menu":t.value,"v-combobox--chips":!!i.chips,"v-combobox--selection-slot":!!K.value,"v-combobox--selecting-index":c.value>-1,[`v-combobox--${i.multiple?"multiple":"single"}`]:!0},i.class],style:i.style,readonly:z.isReadonly.value,placeholder:k?void 0:i.placeholder,"onClick:clear":Ke,"onMousedown:control":Ge,onKeydown:He,onPaste:Je,"aria-expanded":oe.value,"aria-controls":ie.value}),{...b,default:()=>n(Q,null,[p(ml,_({id:Te.value,ref:S,modelValue:t.value,"onUpdate:modelValue":m=>t.value=m,activator:"parent",contentClass:"v-combobox__content",disabled:l.value,eager:i.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:We,onAfterLeave:Qe},i.menuProps),{default:()=>[s&&p(bl,_({ref:Ce,filterable:!0,selected:Me.value,selectStrategy:i.multiple?"independent":"single-independent",onMousedown:m=>m.preventDefault(),selectable:!0,onKeydown:ze,onFocusin:Xe,onFocusout:Ye,tabindex:"-1","aria-live":"polite",color:i.itemColor??i.color},Be,i.listProps),{default:()=>[b["prepend-item"]?.(),!a.value.length&&!i.hideNoData&&(b["no-data"]?.()??p(Oe,{key:"no-data",title:$(i.noDataText)},null)),p(fl,{ref:H,renderless:!0,items:a.value,itemKey:"value"},{default:m=>{let{item:V,index:R,itemRef:be}=m;const ne=_(V.props,{ref:be,key:V.value,active:ce.value&&R===0?!0:void 0,onClick:()=>W(V,null)});return V.type==="divider"?b.divider?.({props:V.raw,index:R})??p(Ve,_(V.props,{key:`divider-${R}`}),null):V.type==="subheader"?b.subheader?.({props:V.raw,index:R})??p(gl,_(V.props,{key:`subheader-${R}`}),null):b.item?.({item:V,index:R,props:ne})??p(Oe,_(ne,{role:"option"}),{prepend:re=>{let{isSelected:G}=re;return n(Q,null,[i.multiple&&!i.hideSelected?p(Nl,{key:V.value,modelValue:G,ripple:!1,tabindex:"-1",onClick:Ze=>Ze.preventDefault()},null):void 0,V.props.prependAvatar&&p(kl,{image:V.props.prependAvatar},null),V.props.prependIcon&&p(De,{icon:V.props.prependIcon},null)])},title:()=>w.value?V.title:Gl("v-combobox",V.title,v(V)?.title)})}}),b["append-item"]?.()]})]}),g.value.map((m,V)=>{function R(G){G.stopPropagation(),G.preventDefault(),W(m,!1)}const be=_(fe.filterProps(m.props),{"onClick:close":R,onKeydown(G){G.key!=="Enter"&&G.key!==" "||(G.preventDefault(),G.stopPropagation(),R(G))},onMousedown(G){G.preventDefault(),G.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),ne=M.value?!!b.chip:!!b.selection,re=ne?Vl(M.value?b.chip({item:m,index:V,props:be}):b.selection({item:m,index:V})):void 0;if(!(ne&&!re))return n("div",{key:m.value,class:ke(["v-combobox__selection",V===c.value&&["v-combobox__selection--selected",Z.value]]),style:cl(V===c.value?y.value:{})},[M.value?b.chip?p(Cl,{key:"chip-defaults",defaults:{VChip:{closable:i.closableChips,size:"small",text:m.title}}},{default:()=>[re]}):p(fe,_({key:"chip",closable:i.closableChips,size:"small",text:m.title,disabled:m.props.disabled},be),null):re??n("span",{class:"v-combobox__selection-text"},[m.title,i.multiple&&V<g.value.length-1&&n("span",{class:"v-combobox__selection-comma"},[L(",")])])])})]),"append-inner":function(){for(var m=arguments.length,V=new Array(m),R=0;R<m;R++)V[R]=arguments[R];return n(Q,null,[b["append-inner"]?.(...V),(!i.hideNoData||i.items.length)&&i.menuIcon?p(De,{class:"v-combobox__menu-icon",color:A.value?.fieldIconColor,icon:i.menuIcon,onMousedown:je,onClick:pl,"aria-label":qe.value,title:qe.value,tabindex:"-1"},null):void 0])}})}),sl({isFocused:q,isPristine:w,menu:t,search:F,selectionIndex:c,filteredItems:le,select:W},A)}}),zl={key:0},Hl={class:"configcolumnleft"},Jl={key:0},Wl={key:1},Ql={key:2},Xl={key:3},Yl={key:4},Zl={key:0,class:"configcolumnright"},yl={style:{"padding-top":"16px"}},_l={class:"configcolumnleft"},ea={key:0},la={key:1},aa={key:2},ua={key:3},ia={key:4},ta={key:0,class:"configcolumnright"},sa={style:{"padding-bottom":"10px","padding-top":"30px"}},da={class:"configcolumnleft"},oa={key:0},na={key:1},ra={key:2},va={key:3},pa={key:4},ma={key:0,class:"configcolumnright"},ba=hl({__name:"EditConfig",props:{configEntries:{},disabled:{type:Boolean}},emits:["submit","action"],setup(i,{emit:x}){const U=xl(),b=x,$=J(),A=J(!1),q=J(),w=J([]),I=J(!1),S=J(),H=J({}),c=i,P=B(()=>["generic",...new Set($.value.map(a=>a.category).filter(a=>!["generic","advanced"].includes(a))),"advanced"]),D=B(()=>$.value?$.value.filter(v=>!v.hidden&&v.type!=r.DIVIDER&&v.type!=r.LABEL&&v.type!=r.ALERT).length:0),X=B(()=>D.value>=10),Y=B(()=>{if($.value){for(const v of $.value)if(v.required&&!(!O(v.value)||!O(v.default_value)||v.type==r.DIVIDER||v.type==r.LABEL||v.type==r.ALERT||v.type==r.ACTION))return!1;return!0}return!1});se(()=>c.configEntries,v=>{$.value=[];for(const a of v||[])a.value!==void 0&&a.value!==null&&(H.value[a.key]=a.value),(a.value==null||a.value==null)&&(a.value=a.default_value),$.value.push(a);if(X.value&&$.value.length>0){const a=P.value.filter(l=>l!=="generic");w.value=a}else w.value=[]},{immediate:!0});const Z=async function(){const{valid:v}=await q.value.validate();return v},y=async function(){await Z()&&b("submit",F())},g=async function(v){b("action",v,F())},z=function(v){const a=document.createElement("a");a.setAttribute("href",v),a.setAttribute("target","_blank"),a.click()},M=function(v){return $.value.filter(a=>a.category==v&&ue(a))},K=function(){U.push(`${U.currentRoute.value.path}/dsp`)},O=function(v){return v==null},ue=function(v){if(v.hidden)return!1;if(!O(v.depends_on)){const a=$.value?.find(l=>l.key==v.depends_on);if(a){const l=a.value;if(!O(v.depends_on_value))return l==v.depends_on_value;if(!O(v.depends_on_value_not))return l!=v.depends_on_value_not;if(a.required&&O(a))return!0;if(a.type==r.BOOLEAN&&!l)return!1}}return!0},F=function(){const v={};for(const a of c.configEntries)a.value==null&&(a.value=null),!(a.type==r.SECURE_STRING&&a.value==ge)&&(v[a.key]=a.value);return v},de=function(v){if(!v.options)return[];const a=[];for(const l of v.options){let e=l.value?.toString()||"",t=l.title?.toString()||"";for(const ie of["@","$","|"])e.includes(ie)&&(e=e.replaceAll(ie,"")),t.includes(ie)&&(t=t.toString().replaceAll(ie,""));const oe={title:d(`settings.${v.key}.options.${e}`,t),value:l.value};oe.value==v.default_value&&(oe.title+=` [${d("settings.default")}]`),a.push(oe)}return a},le=function(v){return(d(`settings.${v?.key}.description`,v.description||" ")||v.help_link||" ")?.length>1};return(v,a)=>(o(),E(Q,null,[$.value?(o(),C(Tl,{key:0,ref_key:"form",ref:q,modelValue:A.value,"onUpdate:modelValue":a[4]||(a[4]=l=>A.value=l),disabled:i.disabled},{default:h(()=>[M("generic").length>0?(o(),E("div",zl,[(o(!0),E(Q,null,me(M("generic"),l=>(o(),E("div",{key:l.key,class:"configrow"},[n("div",Hl,[l.type==u(r).DIVIDER?(o(),E("div",Jl,[a[9]||(a[9]=n("br",null,null,-1)),p(Ve),l.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(l.label),1)]),_:2},1024)):ee("",!0),a[10]||(a[10]=n("br",null,null,-1)),a[11]||(a[11]=n("br",null,null,-1))])):l.type==u(r).LABEL?(o(),E("div",Wl,[a[12]||(a[12]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${l.key}.label`,l.label)),1)]),_:2},1024),a[13]||(a[13]=n("br",null,null,-1)),a[14]||(a[14]=n("br",null,null,-1))])):l.type==u(r).ALERT?(o(),E("div",Ql,[a[15]||(a[15]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${l.key}.label`,l.label)),1)]),_:2},1024),a[16]||(a[16]=n("br",null,null,-1)),a[17]||(a[17]=n("br",null,null,-1))])):l.type==u(r).ACTION||l.action&&!l.value?(o(),E("div",Xl,[a[18]||(a[18]=n("br",null,null,-1)),p(j,{class:"actionbutton",disabled:l.read_only,onClick:e=>{g(l.action||l.key),l.value=l.action?null:l.key}},{default:h(()=>[L(T(u(d)(`settings.${l.action||l.key}.label`,l.action_label||l.label)),1)]),_:2},1032,["disabled","onClick"])])):l.type==u(r).DSP_SETTINGS?(o(),E("div",Yl,[a[19]||(a[19]=n("br",null,null,-1)),L(" "+T(l.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(j,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):l.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,label:u(d)(`settings.${l.key}.label`,l.label),color:"primary",disabled:l.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(l.type==u(r).INTEGER||l.type==u(r).FLOAT)&&l.range&&l.range.length==2?(o(),C($e,{key:6,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,class:"align-center",min:l.range[0],max:l.range[1],step:l.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):l.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,disabled:l.read_only,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof l.value=="string"&&l.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!l.action,"onClick:appendInner":a[0]||(a[0]=e=>I.value=!I.value),"onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):l.options&&l.options.length>0?(o(),C(Ee,{key:8,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,chips:l.multi_value,clearable:!0,multiple:l.multi_value,items:de(l),disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(e==null&&l.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):l.type==u(r).INTEGER||l.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!l.required,type:"number","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):l.type==u(r).ICON?(o(),C(N,{key:10,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),clearable:"",disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),"prepend-inner-icon":l.value,variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):l.type==u(r).STRING&&l.multi_value?(o(),C(Se,{key:11,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,multiple:"",chips:"",clearable:!0,disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),clearable:"",disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!l.action,"onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(l)?(o(),E("div",Zl,[p(j,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:e=>u(d)(`settings.${l?.key}.description`,l.description||"")?S.value=l:z(l.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))])):ee("",!0),X.value?(o(),C(ql,{key:1,modelValue:w.value,"onUpdate:modelValue":a[2]||(a[2]=l=>w.value=l),variant:"accordion",multiple:"",flat:""},{default:h(()=>[(o(!0),E(Q,null,me(P.value.filter(l=>l!=="generic"&&M(l).length>0),l=>(o(),C(wl,{key:l,value:l,flat:"",accordion:"",class:"configrowpanel"},{default:h(()=>[p(Al,null,{default:h(()=>[n("h3",null,T(u(d)("settings.category."+l,l)),1)]),_:2},1024),p(Fl,null,{default:h(()=>[n("div",yl,[(o(!0),E(Q,null,me(M(l),e=>(o(),E("div",{key:e.key,class:"configrow"},[n("div",_l,[e.type==u(r).DIVIDER?(o(),E("div",ea,[a[20]||(a[20]=n("br",null,null,-1)),p(Ve),e.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(e.label),1)]),_:2},1024)):ee("",!0),a[21]||(a[21]=n("br",null,null,-1)),a[22]||(a[22]=n("br",null,null,-1))])):e.type==u(r).LABEL?(o(),E("div",la,[a[23]||(a[23]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[24]||(a[24]=n("br",null,null,-1)),a[25]||(a[25]=n("br",null,null,-1))])):e.type==u(r).ALERT?(o(),E("div",aa,[a[26]||(a[26]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[27]||(a[27]=n("br",null,null,-1)),a[28]||(a[28]=n("br",null,null,-1))])):e.type==u(r).ACTION||e.action&&!e.value?(o(),E("div",ua,[a[29]||(a[29]=n("br",null,null,-1)),p(j,{class:"actionbutton",disabled:e.read_only,onClick:t=>{g(e.action||e.key),e.value=e.action?null:e.key}},{default:h(()=>[L(T(u(d)(`settings.${e.action||e.key}.label`,e.action_label||e.label)),1)]),_:2},1032,["disabled","onClick"])])):e.type==u(r).DSP_SETTINGS?(o(),E("div",ia,[a[30]||(a[30]=n("br",null,null,-1)),L(" "+T(e.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(j,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):e.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),color:"primary",disabled:e.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(e.type==u(r).INTEGER||e.type==u(r).FLOAT)&&e.range&&e.range.length==2?(o(),C($e,{key:6,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,class:"align-center",min:e.range[0],max:e.range[1],step:e.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):e.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,disabled:e.read_only,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof e.value=="string"&&e.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!e.action,"onClick:appendInner":a[1]||(a[1]=t=>I.value=!I.value),"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):e.options&&e.options.length>0?(o(),C(Ee,{key:8,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,chips:e.multi_value,clearable:!0,multiple:e.multi_value,items:de(e),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(t==null&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):e.type==u(r).INTEGER||e.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!e.required,type:"number","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):e.type==u(r).ICON?(o(),C(N,{key:10,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),"prepend-inner-icon":e.value,variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):e.type==u(r).STRING&&e.multi_value?(o(),C(Se,{key:11,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,multiple:"",chips:"",clearable:!0,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!e.action,"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(e)?(o(),E("div",ta,[p(j,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:t=>u(d)(`settings.${e?.key}.description`,e.description||"")?S.value=e:z(e.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))])]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])):(o(!0),E(Q,{key:2},me(P.value.filter(l=>l!=="generic"&&M(l).length>0),l=>(o(),E("div",{key:l},[n("h3",sa,T(u(d)("settings.category."+l,l)),1),(o(!0),E(Q,null,me(M(l),e=>(o(),E("div",{key:e.key,class:"configrow"},[n("div",da,[e.type==u(r).DIVIDER?(o(),E("div",oa,[a[31]||(a[31]=n("br",null,null,-1)),p(Ve),e.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(e.label),1)]),_:2},1024)):ee("",!0),a[32]||(a[32]=n("br",null,null,-1)),a[33]||(a[33]=n("br",null,null,-1))])):e.type==u(r).LABEL?(o(),E("div",na,[a[34]||(a[34]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[35]||(a[35]=n("br",null,null,-1)),a[36]||(a[36]=n("br",null,null,-1))])):e.type==u(r).ALERT?(o(),E("div",ra,[a[37]||(a[37]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[38]||(a[38]=n("br",null,null,-1)),a[39]||(a[39]=n("br",null,null,-1))])):e.type==u(r).ACTION||e.action&&!e.value?(o(),E("div",va,[a[40]||(a[40]=n("br",null,null,-1)),p(j,{class:"actionbutton",disabled:e.read_only,onClick:t=>{g(e.action||e.key),e.value=e.action?null:e.key}},{default:h(()=>[L(T(u(d)(`settings.${e.action||e.key}.label`,e.action_label||e.label)),1)]),_:2},1032,["disabled","onClick"])])):e.type==u(r).DSP_SETTINGS?(o(),E("div",pa,[a[41]||(a[41]=n("br",null,null,-1)),L(" "+T(e.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(j,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):e.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),color:"primary",disabled:e.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(e.type==u(r).INTEGER||e.type==u(r).FLOAT)&&e.range&&e.range.length==2?(o(),C($e,{key:6,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,class:"align-center",min:e.range[0],max:e.range[1],step:e.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):e.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,disabled:e.read_only,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof e.value=="string"&&e.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!e.action,"onClick:appendInner":a[3]||(a[3]=t=>I.value=!I.value),"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):e.options&&e.options.length>0?(o(),C(Ee,{key:8,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,chips:e.multi_value,clearable:!0,multiple:e.multi_value,items:de(e),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(t==null&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):e.type==u(r).INTEGER||e.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!e.required,type:"number","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):e.type==u(r).ICON?(o(),C(N,{key:10,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),"prepend-inner-icon":e.value,variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):e.type==u(r).STRING&&e.multi_value?(o(),C(Se,{key:11,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,multiple:"",chips:"",clearable:!0,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!e.action,"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(e)?(o(),E("div",ma,[p(j,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:t=>u(d)(`settings.${e?.key}.description`,e.description||"")?S.value=e:z(e.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))]))),128)),a[42]||(a[42]=n("br",null,null,-1)),p(j,{block:"",color:"primary",disabled:!Y.value,onClick:y},{default:h(()=>[L(T(u(d)("settings.save")),1)]),_:1},8,["disabled"])]),_:1},8,["modelValue","disabled"])):ee("",!0),a[43]||(a[43]=n("br",null,null,-1)),p(j,{block:"",onClick:a[5]||(a[5]=l=>u(U).back())},{default:h(()=>[L(T(u(d)("close")),1)]),_:1}),p(Ll,{"model-value":S.value!==void 0,width:"auto","onUpdate:modelValue":a[8]||(a[8]=l=>S.value=void 0)},{default:h(()=>[p($l,null,{default:h(()=>[p(Ne,null,{default:h(()=>[n("h2",null,T(u(d)(`settings.${S.value?.key}.label`,S.value?.label||"")),1)]),_:1}),p(Ne,{innerHTML:u(El)(u(d)(`settings.${S.value?.key}.description`,S.value?.description||""))},null,8,["innerHTML"]),p(Il,null,{default:h(()=>[S.value?.help_link?(o(),C(j,{key:0,onClick:a[6]||(a[6]=l=>z(S.value.help_link))},{default:h(()=>[L(T(u(d)("read_more")),1)]),_:1})):ee("",!0),p(Sl),p(j,{color:"primary",onClick:a[7]||(a[7]=l=>S.value=void 0)},{default:h(()=>[L(T(u(d)("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])],64))}}),Sa=Ul(ba,[["__scopeId","data-v-9e1654bf"]]);export{Sa as E};
1
+ import{p as Pe,K as ae,i as B,aD as u,a2 as ye,c_ as Ue,cX as _e,E as n,r as ke,ah as W,g as el,I as ll,J,d6 as al,ao as ul,j as Fe,cQ as il,d7 as ve,R as pe,L as se,n as tl,bH as N,o as p,ae as _,ap as sl,ai as dl,d8 as ol,d9 as nl,cZ as Le,da as rl,db as Re,O as vl,aL as De,dc as pl,b4 as ml,aF as bl,aJ as Oe,aU as Ve,dd as gl,bE as kl,bK as fe,de as Vl,q as cl,an as Cl,bh as L,ay as hl,cH as r,az as E,aA as o,aI as C,aB as ee,aG as h,aH as me,M as H,aN as T,aT as d,aE as xl,aS as $l,c3 as Ne,c0 as El,bV as Il,bW as Sl,df as ge,cV as he,_ as Ul}from"./index-Co2Il0FF.js";import{V as Tl}from"./VForm-lwT5Vjdc.js";import{V as ql,a as wl,b as Al,c as Fl}from"./VExpansionPanels-ynbmIXCh.js";import{V as Ll}from"./VDialog-oA-qD8nK.js";import{V as te}from"./VAlert-CqZcE68W.js";import{V as xe}from"./VSwitch-CbeBX82z.js";import{V as $e}from"./VSlider-SvfKY3nA.js";import{u as Rl,a as Dl,m as Ol,V as Ee}from"./VSelect-BULCN41e.js";import{V as fl}from"./VVirtualScroll-Bmp7pEa7.js";import{V as Nl}from"./VCheckboxBtn-pFfosXS7.js";const Pl=(i,x,U)=>{if(i==null||x==null)return-1;if(!x.length)return 0;i=i.toString().toLocaleLowerCase(),x=x.toString().toLocaleLowerCase();const b=[];let $=i.indexOf(x);for(;~$;)b.push([$,$+x.length]),$=i.indexOf(x,$+x.length);return b.length?b:-1};function Ie(i,x){if(!(i==null||typeof i=="boolean"||i===-1))return typeof i=="number"?[[i,i+x.length]]:Array.isArray(i[0])?i:[i]}const Ml=Pe({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Bl(i,x,U){const b=[],$=U?.default??Pl,A=U?.filterKeys?Ue(U.filterKeys):!1,q=Object.keys(U?.customKeyFilter??{}).length;if(!i?.length)return b;let w=null;e:for(let I=0;I<i.length;I++){const[S,z=S]=Ue(i[I]),c={},P={};let D=-1;if((x||q>0)&&!U?.noFilter){let X=!1;if(typeof S=="object"){if(S.type==="divider"||S.type==="subheader"){w?.type==="divider"&&S.type==="subheader"&&b.push(w),w={index:I,matches:{},type:S.type};continue}const y=A||Object.keys(z);X=y.length===q;for(const g of y){const j=_e(z,g),M=U?.customKeyFilter?.[g];if(D=M?M(j,x,S):$(j,x,S),D!==-1&&D!==!1)M?c[g]=Ie(D,x):P[g]=Ie(D,x);else if(U?.filterMode==="every")continue e}}else D=$(S,x,S),D!==-1&&D!==!1&&(P.title=Ie(D,x));const Z=Object.keys(P).length,Y=Object.keys(c).length;if(!Z&&!Y||U?.filterMode==="union"&&Y!==q&&!Z||U?.filterMode==="intersection"&&(Y!==q||!Z&&q>0&&!X))continue}w&&(b.push(w),w=null),b.push({index:I,matches:{...P,...c}})}return b}function Kl(i,x,U,b){const $=ae([]),A=ae(new Map),q=B(()=>u(x));ye(()=>{const I=typeof U=="function"?U():u(U),S=typeof I!="string"&&typeof I!="number"?"":String(I),z=Bl(q.value,S,{customKeyFilter:{...i.customKeyFilter,...u(b?.customKeyFilter)},default:i.customFilter,filterKeys:i.filterKeys,filterMode:i.filterMode,noFilter:i.noFilter}),c=u(x),P=[],D=new Map;z.forEach(X=>{let{index:Z,matches:Y}=X;const y=c[Z];P.push(y),D.set(y.value,Y)}),$.value=P,A.value=D});function w(I){return A.value.get(I.value)}return{filteredItems:$,filteredMatches:A,getMatches:w}}function Gl(i,x,U){return U==null||!U.length?x:U.map((b,$)=>{const A=$===0?0:U[$-1][1],q=[n("span",{class:ke(`${i}__unmask`)},[x.slice(A,b[0])]),n("span",{class:ke(`${i}__mask`)},[x.slice(b[0],b[1])])];return $===U.length-1&&q.push(n("span",{class:ke(`${i}__unmask`)},[x.slice(b[1])])),n(W,null,[q])})}const Hl=Pe({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Ml({filterKeys:["title"]}),...Ol({hideNoData:!0,returnObject:!0}),...dl(ol({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"])},"VCombobox"),Se=el()({name:"VCombobox",props:Hl(),emits:{"update:focused":i=>!0,"update:modelValue":i=>!0,"update:search":i=>!0,"update:menu":i=>!0},setup(i,x){let{emit:U,slots:b}=x;const{t:$}=ll(),A=J(),q=ae(!1),w=ae(!0),I=ae(!1),S=J(),z=J(),c=ae(-1);let P=!1;const{items:D,transformIn:X,transformOut:Z}=al(i),{textColorClasses:Y,textColorStyles:y}=ul(()=>A.value?.color),g=Fe(i,"modelValue",[],s=>X(Ue(s)),s=>{const k=Z(s);return i.multiple?k:k[0]??null}),j=il(i),M=B(()=>!!(i.chips||b.chip)),K=B(()=>M.value||!!b.selection),O=ae(!i.multiple&&!K.value?g.value[0]?.title??"":""),ue=ae(null),F=B({get:()=>O.value,set:async s=>{if(O.value=s??"",s===null||s===""&&!i.multiple&&!K.value?g.value=[]:!i.multiple&&!K.value&&(g.value=[ve(i,s)],pe(()=>z.value?.scrollToIndex(0))),s&&i.multiple&&i.delimiters?.length){const k=we(s);k.length>1&&(Ae(k),O.value="")}s||(c.value=-1),w.value=!s}}),de=B(()=>typeof i.counterValue=="function"?i.counterValue(g.value):typeof i.counterValue=="number"?i.counterValue:i.multiple?g.value.length:F.value.length),{filteredItems:le,getMatches:v}=Kl(i,D,()=>ue.value??(i.alwaysFilter||!w.value?F.value:"")),a=B(()=>i.hideSelected&&ue.value===null?le.value.filter(s=>!g.value.some(k=>k.value===s.value)):le.value),l=B(()=>i.hideNoData&&!a.value.length||j.isReadonly.value||j.isDisabled.value),e=Fe(i,"menu"),t=B({get:()=>e.value,set:s=>{e.value&&!s&&S.value?.ΨopenChildren.size||s&&l.value||(e.value=s)}}),{menuId:Te,ariaExpanded:oe,ariaControls:ie,ariaLabel:qe}=Rl(i,t);se(O,s=>{P?pe(()=>P=!1):q.value&&!t.value&&(t.value=!0),U("update:search",s)}),se(g,s=>{!i.multiple&&!K.value&&(O.value=s[0]?.title??"")});const Me=B(()=>g.value.map(s=>s.value)),ce=B(()=>(i.autoSelectFirst===!0||i.autoSelectFirst==="exact"&&F.value===a.value[0]?.title)&&a.value.length>0&&!w.value&&!I.value),Ce=J(),Be=Dl(Ce,A);function Ke(s){P=!0,pe(()=>P=!1),i.openOnClear&&(t.value=!0)}function Ge(){l.value||(t.value=!0)}function He(s){l.value||(q.value&&(s.preventDefault(),s.stopPropagation()),t.value=!t.value)}function je(s){(Re(s)||s.key==="Backspace")&&A.value?.focus()}function ze(s){if(rl(s)||j.isReadonly.value)return;const k=A.value?.selectionStart,f=g.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(s.key)&&s.preventDefault(),["Enter","ArrowDown"].includes(s.key)&&(t.value=!0),["Escape"].includes(s.key)&&(t.value=!1),ce.value&&["Enter","Tab"].includes(s.key)&&!g.value.some(m=>{let{value:V}=m;return V===a.value[0].value})&&Q(le.value[0]),s.key==="ArrowDown"&&ce.value&&Ce.value?.focus("next"),s.key==="Enter"&&F.value&&(Q(ve(i,F.value),!0,!0),K.value&&(O.value="")),["Backspace","Delete"].includes(s.key)){if(!i.multiple&&K.value&&g.value.length>0&&!F.value)return Q(g.value[0],!1);if(~c.value){s.preventDefault();const m=c.value;Q(g.value[c.value],!1),c.value=m>=f-1?f-2:m}else s.key==="Backspace"&&!F.value&&(c.value=f-1);return}if(i.multiple)if(s.key==="ArrowLeft"){if(c.value<0&&k&&k>0)return;const m=c.value>-1?c.value-1:f-1;g.value[m]?c.value=m:(c.value=-1,A.value?.setSelectionRange(F.value.length,F.value.length))}else if(s.key==="ArrowRight"){if(c.value<0)return;const m=c.value+1;g.value[m]?c.value=m:(c.value=-1,A.value?.setSelectionRange(0,0))}else~c.value&&Re(s)&&(c.value=-1)}function Je(s){const k=s?.clipboardData?.getData("Text")??"",f=we(k);f.length>1&&i.multiple&&(s.preventDefault(),Ae(f))}function Qe(){i.eager&&z.value?.calculateVisibleItems()}function We(){q.value&&A.value?.focus(),w.value=!0,ue.value=null}function Q(s){let k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!s||s.props.disabled))if(i.multiple){const m=g.value.findIndex(R=>(i.valueComparator||Le)(R.value,s.value)),V=k??!~m;if(~m){const R=V?[...g.value,s]:[...g.value];R.splice(m,1),g.value=R}else V&&(g.value=[...g.value,s]);i.clearOnSelect&&(F.value="")}else{const m=k!==!1;g.value=m?[s]:[],(!w.value||i.alwaysFilter)&&O.value&&(ue.value=O.value),O.value=m&&!K.value?s.title:"",pe(()=>{t.value=f,w.value=!0})}}function we(s){const f=[`
2
+ `,...i.delimiters??[]].map(nl).join("|");return s.split(new RegExp(`(?:${f})+`))}async function Ae(s){for(let k of s)k=k.trim(),k&&(Q(ve(i,k)),await pe())}function Xe(s){q.value=!0,setTimeout(()=>{I.value=!0})}function Ze(s){I.value=!1}return se(q,(s,k)=>{if(!(s||s===k)&&(c.value=-1,t.value=!1,F.value)){if(i.multiple){Q(ve(i,F.value));return}if(!K.value)return;g.value.some(f=>{let{title:m}=f;return m===F.value})?O.value="":Q(ve(i,F.value))}}),se(t,s=>{if(!i.hideSelected&&s&&g.value.length&&w.value){const k=a.value.findIndex(f=>g.value.some(m=>(i.valueComparator||Le)(m.value,f.value)));vl&&window.requestAnimationFrame(()=>{k>=0&&z.value?.scrollToIndex(k)})}s&&(ue.value=null)}),se(D,(s,k)=>{t.value||q.value&&!k.length&&s.length&&(t.value=!0)}),tl(()=>{const s=!!(!i.hideNoData||a.value.length||b["prepend-item"]||b["append-item"]||b["no-data"]),k=g.value.length>0,f=N.filterProps(i);return p(N,_({ref:A},f,{modelValue:F.value,"onUpdate:modelValue":m=>F.value=m,focused:q.value,"onUpdate:focused":m=>q.value=m,validationValue:g.externalValue,counterValue:de.value,dirty:k,class:["v-combobox",{"v-combobox--active-menu":t.value,"v-combobox--chips":!!i.chips,"v-combobox--selection-slot":!!K.value,"v-combobox--selecting-index":c.value>-1,[`v-combobox--${i.multiple?"multiple":"single"}`]:!0},i.class],style:i.style,readonly:j.isReadonly.value,placeholder:k?void 0:i.placeholder,"onClick:clear":Ke,"onMousedown:control":Ge,onKeydown:ze,onPaste:Je,"aria-expanded":oe.value,"aria-controls":ie.value}),{...b,default:()=>n(W,null,[p(ml,_({id:Te.value,ref:S,modelValue:t.value,"onUpdate:modelValue":m=>t.value=m,activator:"parent",contentClass:"v-combobox__content",disabled:l.value,eager:i.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:Qe,onAfterLeave:We},i.menuProps),{default:()=>[s&&p(bl,_({ref:Ce,filterable:!0,selected:Me.value,selectStrategy:i.multiple?"independent":"single-independent",onMousedown:m=>m.preventDefault(),selectable:!0,onKeydown:je,onFocusin:Xe,onFocusout:Ze,tabindex:"-1","aria-live":"polite",color:i.itemColor??i.color},Be,i.listProps),{default:()=>[b["prepend-item"]?.(),!a.value.length&&!i.hideNoData&&(b["no-data"]?.()??p(Oe,{key:"no-data",title:$(i.noDataText)},null)),p(fl,{ref:z,renderless:!0,items:a.value,itemKey:"value"},{default:m=>{let{item:V,index:R,itemRef:be}=m;const ne=_(V.props,{ref:be,key:V.value,active:ce.value&&R===0?!0:void 0,onClick:()=>Q(V,null)});return V.type==="divider"?b.divider?.({props:V.raw,index:R})??p(Ve,_(V.props,{key:`divider-${R}`}),null):V.type==="subheader"?b.subheader?.({props:V.raw,index:R})??p(gl,_(V.props,{key:`subheader-${R}`}),null):b.item?.({item:V,index:R,props:ne})??p(Oe,_(ne,{role:"option"}),{prepend:re=>{let{isSelected:G}=re;return n(W,null,[i.multiple&&!i.hideSelected?p(Nl,{key:V.value,modelValue:G,ripple:!1,tabindex:"-1",onClick:Ye=>Ye.preventDefault()},null):void 0,V.props.prependAvatar&&p(kl,{image:V.props.prependAvatar},null),V.props.prependIcon&&p(De,{icon:V.props.prependIcon},null)])},title:()=>w.value?V.title:Gl("v-combobox",V.title,v(V)?.title)})}}),b["append-item"]?.()]})]}),g.value.map((m,V)=>{function R(G){G.stopPropagation(),G.preventDefault(),Q(m,!1)}const be=_(fe.filterProps(m.props),{"onClick:close":R,onKeydown(G){G.key!=="Enter"&&G.key!==" "||(G.preventDefault(),G.stopPropagation(),R(G))},onMousedown(G){G.preventDefault(),G.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),ne=M.value?!!b.chip:!!b.selection,re=ne?Vl(M.value?b.chip({item:m,index:V,props:be}):b.selection({item:m,index:V})):void 0;if(!(ne&&!re))return n("div",{key:m.value,class:ke(["v-combobox__selection",V===c.value&&["v-combobox__selection--selected",Y.value]]),style:cl(V===c.value?y.value:{})},[M.value?b.chip?p(Cl,{key:"chip-defaults",defaults:{VChip:{closable:i.closableChips,size:"small",text:m.title}}},{default:()=>[re]}):p(fe,_({key:"chip",closable:i.closableChips,size:"small",text:m.title,disabled:m.props.disabled},be),null):re??n("span",{class:"v-combobox__selection-text"},[m.title,i.multiple&&V<g.value.length-1&&n("span",{class:"v-combobox__selection-comma"},[L(",")])])])})]),"append-inner":function(){for(var m=arguments.length,V=new Array(m),R=0;R<m;R++)V[R]=arguments[R];return n(W,null,[b["append-inner"]?.(...V),(!i.hideNoData||i.items.length)&&i.menuIcon?p(De,{class:"v-combobox__menu-icon",color:A.value?.fieldIconColor,icon:i.menuIcon,onMousedown:He,onClick:pl,"aria-label":qe.value,title:qe.value,tabindex:"-1"},null):void 0])}})}),sl({isFocused:q,isPristine:w,menu:t,search:F,selectionIndex:c,filteredItems:le,select:Q},A)}}),jl={key:0},zl={class:"configcolumnleft"},Jl={key:0},Ql={key:1},Wl={key:2},Xl={key:3},Zl={key:4},Yl={key:0,class:"configcolumnright"},yl={style:{"padding-top":"16px"}},_l={class:"configcolumnleft"},ea={key:0},la={key:1},aa={key:2},ua={key:3},ia={key:4},ta={key:0,class:"configcolumnright"},sa={style:{"padding-bottom":"10px","padding-top":"30px"}},da={class:"configcolumnleft"},oa={key:0},na={key:1},ra={key:2},va={key:3},pa={key:4},ma={key:0,class:"configcolumnright"},ba=hl({__name:"EditConfig",props:{configEntries:{},disabled:{type:Boolean}},emits:["submit","action"],setup(i,{emit:x}){const U=xl(),b=x,$=J(),A=J(!1),q=J(),w=J([]),I=J(!1),S=J(),z=J({}),c=i,P=B(()=>["generic",...new Set($.value.map(a=>a.category).filter(a=>!["generic","advanced"].includes(a))),"advanced"]),D=B(()=>$.value?$.value.filter(v=>!v.hidden&&v.type!=r.DIVIDER&&v.type!=r.LABEL&&v.type!=r.ALERT).length:0),X=B(()=>D.value>=10),Z=B(()=>{if($.value){for(const v of $.value)if(v.required&&!(!O(v.value)||!O(v.default_value)||v.type==r.DIVIDER||v.type==r.LABEL||v.type==r.ALERT||v.type==r.ACTION))return!1;return!0}return!1});se(()=>c.configEntries,v=>{$.value=[];for(const a of v||[])a.value!==void 0&&a.value!==null&&(z.value[a.key]=a.value),(a.value==null||a.value==null)&&(a.value=a.default_value),$.value.push(a);if(X.value&&$.value.length>0){const a=P.value.filter(l=>l!=="generic");w.value=a}else w.value=[]},{immediate:!0});const Y=async function(){const{valid:v}=await q.value.validate();return v},y=async function(){await Y()&&b("submit",F())},g=async function(v){b("action",v,F())},j=function(v){const a=document.createElement("a");a.setAttribute("href",v),a.setAttribute("target","_blank"),a.click()},M=function(v){return $.value.filter(a=>a.category==v&&ue(a))},K=function(){U.push(`${U.currentRoute.value.path}/dsp`)},O=function(v){return v==null},ue=function(v){if(v.hidden)return!1;if(!O(v.depends_on)){const a=$.value?.find(l=>l.key==v.depends_on);if(a){const l=a.value;if(!O(v.depends_on_value))return l==v.depends_on_value;if(!O(v.depends_on_value_not))return l!=v.depends_on_value_not;if(a.required&&O(a))return!0;if(a.type==r.BOOLEAN&&!l)return!1}}return!0},F=function(){const v={};for(const a of c.configEntries)a.value==null&&(a.value=null),!(a.type==r.SECURE_STRING&&a.value==ge)&&(v[a.key]=a.value);return v},de=function(v){if(!v.options)return[];const a=[];for(const l of v.options){let e=l.value?.toString()||"",t=l.title?.toString()||"";for(const ie of["@","$","|"])e.includes(ie)&&(e=e.replaceAll(ie,"")),t.includes(ie)&&(t=t.toString().replaceAll(ie,""));const oe={title:d(`settings.${v.key}.options.${e}`,t),value:l.value};oe.value==v.default_value&&(oe.title+=` [${d("settings.default")}]`),a.push(oe)}return a},le=function(v){return(d(`settings.${v?.key}.description`,v.description||" ")||v.help_link||" ")?.length>1};return(v,a)=>(o(),E(W,null,[$.value?(o(),C(Tl,{key:0,ref_key:"form",ref:q,modelValue:A.value,"onUpdate:modelValue":a[4]||(a[4]=l=>A.value=l),disabled:i.disabled},{default:h(()=>[M("generic").length>0?(o(),E("div",jl,[(o(!0),E(W,null,me(M("generic"),l=>(o(),E("div",{key:l.key,class:"configrow"},[n("div",zl,[l.type==u(r).DIVIDER?(o(),E("div",Jl,[a[9]||(a[9]=n("br",null,null,-1)),p(Ve),l.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(l.label),1)]),_:2},1024)):ee("",!0),a[10]||(a[10]=n("br",null,null,-1)),a[11]||(a[11]=n("br",null,null,-1))])):l.type==u(r).LABEL?(o(),E("div",Ql,[a[12]||(a[12]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${l.key}.label`,l.label)),1)]),_:2},1024),a[13]||(a[13]=n("br",null,null,-1)),a[14]||(a[14]=n("br",null,null,-1))])):l.type==u(r).ALERT?(o(),E("div",Wl,[a[15]||(a[15]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${l.key}.label`,l.label)),1)]),_:2},1024),a[16]||(a[16]=n("br",null,null,-1)),a[17]||(a[17]=n("br",null,null,-1))])):l.type==u(r).ACTION||l.action&&!l.value?(o(),E("div",Xl,[a[18]||(a[18]=n("br",null,null,-1)),p(H,{class:"actionbutton",disabled:l.read_only,onClick:e=>{g(l.action||l.key),l.value=l.action?null:l.key}},{default:h(()=>[L(T(u(d)(`settings.${l.action||l.key}.label`,l.action_label||l.label)),1)]),_:2},1032,["disabled","onClick"])])):l.type==u(r).DSP_SETTINGS?(o(),E("div",Zl,[a[19]||(a[19]=n("br",null,null,-1)),L(" "+T(l.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(H,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):l.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,label:u(d)(`settings.${l.key}.label`,l.label),color:"primary",disabled:l.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(l.type==u(r).INTEGER||l.type==u(r).FLOAT)&&l.range&&l.range.length==2?(o(),C($e,{key:6,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,class:"align-center",min:l.range[0],max:l.range[1],step:l.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):l.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,disabled:l.read_only,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof l.value=="string"&&l.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!l.action,"onClick:appendInner":a[0]||(a[0]=e=>I.value=!I.value),"onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):l.options&&l.options.length>0?(o(),C(Ee,{key:8,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,chips:l.multi_value,clearable:!0,multiple:l.multi_value,items:de(l),disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(e==null&&l.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):l.type==u(r).INTEGER||l.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!l.required,type:"number","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):l.type==u(r).ICON?(o(),C(N,{key:10,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),clearable:"",disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),"prepend-inner-icon":l.value,variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):l.type==u(r).STRING&&l.multi_value?(o(),C(Se,{key:11,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,multiple:"",chips:"",clearable:!0,disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:l.value,"onUpdate:modelValue":e=>l.value=e,placeholder:l.default_value?.toString(),clearable:"",disabled:l.read_only,label:u(d)(`settings.${l.key}.label`,l.label),required:l.required,rules:[e=>!(!e&&l.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!l.action,"onClick:clear":e=>l.value=l.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(l)?(o(),E("div",Yl,[p(H,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:e=>u(d)(`settings.${l?.key}.description`,l.description||"")?S.value=l:j(l.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))])):ee("",!0),X.value?(o(),C(ql,{key:1,modelValue:w.value,"onUpdate:modelValue":a[2]||(a[2]=l=>w.value=l),variant:"accordion",multiple:"",flat:""},{default:h(()=>[(o(!0),E(W,null,me(P.value.filter(l=>l!=="generic"&&M(l).length>0),l=>(o(),C(wl,{key:l,value:l,flat:"",accordion:"",class:"configrowpanel"},{default:h(()=>[p(Al,null,{default:h(()=>[n("h3",null,T(u(d)("settings.category."+l,l)),1)]),_:2},1024),p(Fl,null,{default:h(()=>[n("div",yl,[(o(!0),E(W,null,me(M(l),e=>(o(),E("div",{key:e.key,class:"configrow"},[n("div",_l,[e.type==u(r).DIVIDER?(o(),E("div",ea,[a[20]||(a[20]=n("br",null,null,-1)),p(Ve),e.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(e.label),1)]),_:2},1024)):ee("",!0),a[21]||(a[21]=n("br",null,null,-1)),a[22]||(a[22]=n("br",null,null,-1))])):e.type==u(r).LABEL?(o(),E("div",la,[a[23]||(a[23]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[24]||(a[24]=n("br",null,null,-1)),a[25]||(a[25]=n("br",null,null,-1))])):e.type==u(r).ALERT?(o(),E("div",aa,[a[26]||(a[26]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[27]||(a[27]=n("br",null,null,-1)),a[28]||(a[28]=n("br",null,null,-1))])):e.type==u(r).ACTION||e.action&&!e.value?(o(),E("div",ua,[a[29]||(a[29]=n("br",null,null,-1)),p(H,{class:"actionbutton",disabled:e.read_only,onClick:t=>{g(e.action||e.key),e.value=e.action?null:e.key}},{default:h(()=>[L(T(u(d)(`settings.${e.action||e.key}.label`,e.action_label||e.label)),1)]),_:2},1032,["disabled","onClick"])])):e.type==u(r).DSP_SETTINGS?(o(),E("div",ia,[a[30]||(a[30]=n("br",null,null,-1)),L(" "+T(e.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(H,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):e.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),color:"primary",disabled:e.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(e.type==u(r).INTEGER||e.type==u(r).FLOAT)&&e.range&&e.range.length==2?(o(),C($e,{key:6,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,class:"align-center",min:e.range[0],max:e.range[1],step:e.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):e.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,disabled:e.read_only,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof e.value=="string"&&e.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!e.action,"onClick:appendInner":a[1]||(a[1]=t=>I.value=!I.value),"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):e.options&&e.options.length>0?(o(),C(Ee,{key:8,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,chips:e.multi_value,clearable:!0,multiple:e.multi_value,items:de(e),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(t==null&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):e.type==u(r).INTEGER||e.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!e.required,type:"number","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):e.type==u(r).ICON?(o(),C(N,{key:10,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),"prepend-inner-icon":e.value,variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):e.type==u(r).STRING&&e.multi_value?(o(),C(Se,{key:11,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,multiple:"",chips:"",clearable:!0,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!e.action,"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(e)?(o(),E("div",ta,[p(H,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:t=>u(d)(`settings.${e?.key}.description`,e.description||"")?S.value=e:j(e.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))])]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])):(o(!0),E(W,{key:2},me(P.value.filter(l=>l!=="generic"&&M(l).length>0),l=>(o(),E("div",{key:l},[n("h3",sa,T(u(d)("settings.category."+l,l)),1),(o(!0),E(W,null,me(M(l),e=>(o(),E("div",{key:e.key,class:"configrow"},[n("div",da,[e.type==u(r).DIVIDER?(o(),E("div",oa,[a[31]||(a[31]=n("br",null,null,-1)),p(Ve),e.label?(o(),C(he,{key:0,style:{"margin-left":"8px","margin-top":"10px","margin-bottom":"10px"}},{default:h(()=>[n("b",null,T(e.label),1)]),_:2},1024)):ee("",!0),a[32]||(a[32]=n("br",null,null,-1)),a[33]||(a[33]=n("br",null,null,-1))])):e.type==u(r).LABEL?(o(),E("div",na,[a[34]||(a[34]=n("br",null,null,-1)),p(te,{variant:"outlined",type:"info"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[35]||(a[35]=n("br",null,null,-1)),a[36]||(a[36]=n("br",null,null,-1))])):e.type==u(r).ALERT?(o(),E("div",ra,[a[37]||(a[37]=n("br",null,null,-1)),p(te,{density:"compact",type:"warning"},{default:h(()=>[L(T(u(d)(`settings.${e.key}.label`,e.label)),1)]),_:2},1024),a[38]||(a[38]=n("br",null,null,-1)),a[39]||(a[39]=n("br",null,null,-1))])):e.type==u(r).ACTION||e.action&&!e.value?(o(),E("div",va,[a[40]||(a[40]=n("br",null,null,-1)),p(H,{class:"actionbutton",disabled:e.read_only,onClick:t=>{g(e.action||e.key),e.value=e.action?null:e.key}},{default:h(()=>[L(T(u(d)(`settings.${e.action||e.key}.label`,e.action_label||e.label)),1)]),_:2},1032,["disabled","onClick"])])):e.type==u(r).DSP_SETTINGS?(o(),E("div",pa,[a[41]||(a[41]=n("br",null,null,-1)),L(" "+T(e.value?u(d)("settings.dsp_enabled"):u(d)("settings.dsp_disabled"))+" ",1),p(H,{class:"actionbutton",onClick:K},{default:h(()=>[L(T(u(d)("open_dsp_settings")),1)]),_:1})])):e.type==u(r).BOOLEAN?(o(),C(xe,{key:5,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),color:"primary",disabled:e.read_only},null,8,["modelValue","onUpdate:modelValue","label","disabled"])):(e.type==u(r).INTEGER||e.type==u(r).FLOAT)&&e.range&&e.range.length==2?(o(),C($e,{key:6,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,class:"align-center",min:e.range[0],max:e.range[1],step:e.type==u(r).FLOAT?.5:1,"hide-details":"",style:{"margin-top":"10px","margin-bottom":"25px"},color:"primary"},{append:h(()=>[p(N,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,"hide-details":"","single-line":"",density:"compact",type:"number",style:{width:"70px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","label","required","min","max","step"])):e.type==u(r).SECURE_STRING?(o(),C(N,{key:7,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,disabled:e.read_only,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],type:I.value?"text":"password","append-inner-icon":I.value?"mdi-eye":typeof e.value=="string"&&e.value.includes(u(ge))?"":"mdi-eye-off",variant:"outlined",clearable:"",readonly:!!e.action,"onClick:appendInner":a[3]||(a[3]=t=>I.value=!I.value),"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","label","required","disabled","rules","type","append-inner-icon","readonly","onClick:clear"])):e.options&&e.options.length>0?(o(),C(Ee,{key:8,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,chips:e.multi_value,clearable:!0,multiple:e.multi_value,items:de(e),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(t==null&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","chips","multiple","items","disabled","label","required","rules","onClick:clear"])):e.type==u(r).INTEGER||e.type==u(r).FLOAT?(o(),C(N,{key:9,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",clearable:!e.required,type:"number","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","clearable","onClick:clear"])):e.type==u(r).ICON?(o(),C(N,{key:10,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),"prepend-inner-icon":e.value,variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","prepend-inner-icon","onClick:clear"])):e.type==u(r).STRING&&e.multi_value?(o(),C(Se,{key:11,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,multiple:"",chips:"",clearable:!0,disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined","onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","disabled","label","required","rules","onClick:clear"])):(o(),C(N,{key:12,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:e.default_value?.toString(),clearable:"",disabled:e.read_only,label:u(d)(`settings.${e.key}.label`,e.label),required:e.required,rules:[t=>!(!t&&e.required)||u(d)("settings.invalid_input")],variant:"outlined",readonly:!!e.action,"onClick:clear":t=>e.value=e.default_value},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","label","required","rules","readonly","onClick:clear"]))]),le(e)?(o(),E("div",ma,[p(H,{icon:"mdi-help-box",variant:"plain",class:"helpicon",size:"x-large",onClick:t=>u(d)(`settings.${e?.key}.description`,e.description||"")?S.value=e:j(e.help_link)},null,8,["onClick"])])):ee("",!0)]))),128))]))),128)),a[42]||(a[42]=n("br",null,null,-1)),p(H,{block:"",color:"primary",disabled:!Z.value,onClick:y},{default:h(()=>[L(T(u(d)("settings.save")),1)]),_:1},8,["disabled"])]),_:1},8,["modelValue","disabled"])):ee("",!0),a[43]||(a[43]=n("br",null,null,-1)),p(H,{block:"",onClick:a[5]||(a[5]=l=>u(U).back())},{default:h(()=>[L(T(u(d)("close")),1)]),_:1}),p(Ll,{"model-value":S.value!==void 0,width:"auto","onUpdate:modelValue":a[8]||(a[8]=l=>S.value=void 0)},{default:h(()=>[p($l,null,{default:h(()=>[p(Ne,null,{default:h(()=>[n("h2",null,T(u(d)(`settings.${S.value?.key}.label`,S.value?.label||"")),1)]),_:1}),p(Ne,{innerHTML:u(El)(u(d)(`settings.${S.value?.key}.description`,S.value?.description||""))},null,8,["innerHTML"]),p(Il,null,{default:h(()=>[S.value?.help_link?(o(),C(H,{key:0,onClick:a[6]||(a[6]=l=>j(S.value.help_link))},{default:h(()=>[L(T(u(d)("read_more")),1)]),_:1})):ee("",!0),p(Sl),p(H,{color:"primary",onClick:a[7]||(a[7]=l=>S.value=void 0)},{default:h(()=>[L(T(u(d)("close")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value"])],64))}}),Sa=Ul(ba,[["__scopeId","data-v-9e1654bf"]]);export{Sa as E};
@@ -1 +1 @@
1
- import{ay as _,bN as x,J as c,L as k,az as d,aA as r,o as n,aG as l,aB as m,aI as h,E,bi as N,bh as B,aN as I,c3 as j,b8 as w,bx as O,aP as i,aE as S}from"./index-Ci6ypq6O.js";import{E as z}from"./EditConfig-DgPHHjUH.js";import{n as A}from"./index.browser-OxPLOBIU.js";import"./VForm-DkfI6S-G.js";import"./VExpansionPanels-Hd3nRlf_.js";import"./VDialog-DofGN8Yd.js";import"./VAlert-Kj2m6TCt.js";import"./VSwitch-jlMLuij2.js";import"./VSelectionControl-CuEKzbGp.js";import"./VSlider-D1oP09L0.js";import"./VSelect-CMxVGu2h.js";import"./VVirtualScroll-RawLIXgS.js";import"./VCheckboxBtn-lg4Bkg3S.js";const D={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},Q=_({__name:"EditCoreConfig",props:{domain:{}},setup(f){const p=S(),{t:v}=x(),a=c(),g=A(11),s=c(!1),y=f;k(()=>y.domain,async t=>{t&&(a.value=await i.getCoreConfig(t))},{immediate:!0});const C=t=>{const e=v(`settings.core_module.${t.domain}.description`);return e!==`settings.core_module.${t.domain}.description`?e:i.providerManifests[t.domain].description},b=async function(t){s.value=!0,i.saveCoreConfig(a.value.domain,t).then(()=>{s.value=!1,p.push({name:"providersettings"})}).catch(e=>{alert(e),s.value=!1})},V=async function(t,e){s.value=!0;for(const o of Object.values(a.value.values))o.value!==void 0&&e[o.key]==null&&(e[o.key]=o.value);e.session_id=g,i.getCoreConfigEntries(a.value.domain,t,e).then(o=>{a.value.values={};for(const u of o)a.value.values[u.key]=u;s.value=!1}).catch(o=>{alert(o),s.value=!1})};return(t,e)=>(r(),d("section",null,[n(j,null,{default:l(()=>[a.value?(r(),d("div",D,[n(N,null,{default:l(()=>[B(I(C(a.value)),1)]),_:1}),e[1]||(e[1]=E("br",null,null,-1))])):m("",!0),a.value?(r(),h(z,{key:1,"config-entries":Object.values(a.value.values),disabled:!1,onSubmit:b,onAction:V},null,8,["config-entries"])):m("",!0)]),_:1}),n(O,{modelValue:s.value,"onUpdate:modelValue":e[0]||(e[0]=o=>s.value=o),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:l(()=>[n(w,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{Q as default};
1
+ import{ay as _,bN as x,J as c,L as k,az as d,aA as r,o as n,aG as l,aB as m,aI as h,E,bi as N,bh as B,aN as I,c3 as j,b8 as w,bx as O,aP as i,aE as S}from"./index-Co2Il0FF.js";import{E as z}from"./EditConfig-DB9H12KG.js";import{n as A}from"./index.browser-OxPLOBIU.js";import"./VForm-lwT5Vjdc.js";import"./VExpansionPanels-ynbmIXCh.js";import"./VDialog-oA-qD8nK.js";import"./VAlert-CqZcE68W.js";import"./VSwitch-CbeBX82z.js";import"./VSelectionControl-BU644enI.js";import"./VSlider-SvfKY3nA.js";import"./VSelect-BULCN41e.js";import"./VVirtualScroll-Bmp7pEa7.js";import"./VCheckboxBtn-pFfosXS7.js";const D={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},Q=_({__name:"EditCoreConfig",props:{domain:{}},setup(f){const p=S(),{t:v}=x(),a=c(),g=A(11),s=c(!1),y=f;k(()=>y.domain,async t=>{t&&(a.value=await i.getCoreConfig(t))},{immediate:!0});const C=t=>{const e=v(`settings.core_module.${t.domain}.description`);return e!==`settings.core_module.${t.domain}.description`?e:i.providerManifests[t.domain].description},b=async function(t){s.value=!0,i.saveCoreConfig(a.value.domain,t).then(()=>{s.value=!1,p.push({name:"providersettings"})}).catch(e=>{alert(e),s.value=!1})},V=async function(t,e){s.value=!0;for(const o of Object.values(a.value.values))o.value!==void 0&&e[o.key]==null&&(e[o.key]=o.value);e.session_id=g,i.getCoreConfigEntries(a.value.domain,t,e).then(o=>{a.value.values={};for(const u of o)a.value.values[u.key]=u;s.value=!1}).catch(o=>{alert(o),s.value=!1})};return(t,e)=>(r(),d("section",null,[n(j,null,{default:l(()=>[a.value?(r(),d("div",D,[n(N,null,{default:l(()=>[B(I(C(a.value)),1)]),_:1}),e[1]||(e[1]=E("br",null,null,-1))])):m("",!0),a.value?(r(),h(z,{key:1,"config-entries":Object.values(a.value.values),disabled:!1,onSubmit:b,onAction:V},null,8,["config-entries"])):m("",!0)]),_:1}),n(O,{modelValue:s.value,"onUpdate:modelValue":e[0]||(e[0]=o=>s.value=o),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:l(()=>[n(w,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{Q as default};
@@ -1 +1 @@
1
- import{ay as L,J as c,aP as t,bb as B,a4 as M,i as N,br as g,cG as _,b2 as V,L as w,az as P,aA as s,o as p,aG as d,aB as u,E as o,aI as y,aD as r,bg as G,bh as v,aN as i,bi as f,cr as A,aU as D,bH as O,c3 as R,aE as q}from"./index-Ci6ypq6O.js";import{E as F}from"./EditConfig-DgPHHjUH.js";import{n as j}from"./index.browser-OxPLOBIU.js";import{V as Y}from"./VSwitch-jlMLuij2.js";import"./VForm-DkfI6S-G.js";import"./VExpansionPanels-Hd3nRlf_.js";import"./VDialog-DofGN8Yd.js";import"./VAlert-Kj2m6TCt.js";import"./VSlider-D1oP09L0.js";import"./VSelect-CMxVGu2h.js";import"./VVirtualScroll-RawLIXgS.js";import"./VCheckboxBtn-lg4Bkg3S.js";import"./VSelectionControl-CuEKzbGp.js";const z={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},ie=L({__name:"EditPlayer",props:{playerId:{}},setup(C){const S=q(),e=c(),I=j(11),E=c(!1),m=C,b=c(!1);(async()=>{if(m.playerId)try{b.value=(await t.getDSPConfig(m.playerId)).enabled}catch(a){console.error("Error fetching DSP config:",a)}})();const T=t.subscribe(B.PLAYER_DSP_CONFIG_UPDATED,a=>{b.value=a.data.enabled});M(T);const $=N(()=>{if(!e.value)return[];const a=Object.values(e.value.values),l=t.players[e.value.player_id];return l&&l.type!==g.GROUP?a.push({key:"dsp_settings",type:_.DSP_SETTINGS,label:"",default_value:b.value,required:!1,category:"audio"}):l&&l.type===g.GROUP&&l.supported_features.includes(V.MULTI_DEVICE_DSP)?a.push({key:"dsp_note_multi_device_group",type:_.LABEL,label:"You can configure the DSP for each player individually.",default_value:null,required:!1,category:"audio"}):l&&l.type===g.GROUP&&!l.supported_features.includes(V.MULTI_DEVICE_DSP)&&a.push({key:"dsp_note_multi_device_group_not_supported",type:_.LABEL,label:"This group type does not support DSP when playing to multiple devices.",default_value:null,required:!1,category:"audio"}),a});w(()=>m.playerId,async a=>{a&&(e.value=await t.getPlayerConfig(a))},{immediate:!0});const U=async function(a){delete a.dsp_settings,a.enabled=e.value.enabled,a.name=e.value.name||null,t.savePlayerConfig(m.playerId,a),S.push({name:"playersettings"})},h=async function(a,l){E.value=!0;for(const n of Object.values(e.value.values))n.value!==void 0&&l[n.key]==null&&(l[n.key]=n.value);l.session_id=I,t.getPlayerConfigEntries(e.value.player_id,a,l).then(n=>{e.value.values={};for(const k of n)e.value.values[k.key]=k}).catch(n=>{alert(n)}).finally(()=>{E.value=!1})};return(a,l)=>(s(),P("section",null,[p(R,null,{default:d(()=>[e.value&&r(t).getProviderManifest(e.value.provider).domain in r(t).providerManifests?(s(),P("div",z,[p(G,null,{default:d(()=>[v(i(a.$t("settings.config_player",[e.value.name||r(t).players[e.value.player_id]?.name||e.value.default_name])),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_id"))+": ",1),v(i(e.value.player_id),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_provider"))+": ",1),v(i(r(t).getProviderManifest(e.value.provider)?.name)+" ",1),r(t).getProviderManifest(e.value.provider)?.documentation?(s(),P("a",{key:0,onClick:l[0]||(l[0]=n=>r(A)(r(t).getProviderManifest(e.value.provider)?.documentation))}," ["+i(a.$t("settings.check_docs"))+"]",1)):u("",!0)]),_:1}),r(t).players[e.value.player_id]?(s(),y(f,{key:0},{default:d(()=>[o("b",null,i(a.$t("settings.player_model"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.manufacturer)+" / "+i(r(t).players[e.value.player_id].device_info.model),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?.device_info.ip_address?(s(),y(f,{key:1},{default:d(()=>[o("b",null,i(a.$t("settings.player_address"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.ip_address),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?(s(),y(f,{key:2},{default:d(()=>[o("b",null,i(a.$t("settings.player_type_label"))+": ",1),v(i(a.$t(`player_type.${r(t).players[e.value.player_id].type}`)),1)]),_:1})):u("",!0),l[3]||(l[3]=o("br",null,null,-1)),p(D),l[4]||(l[4]=o("br",null,null,-1)),l[5]||(l[5]=o("br",null,null,-1)),"name"in e.value?(s(),y(O,{key:3,modelValue:e.value.name,"onUpdate:modelValue":l[1]||(l[1]=n=>e.value.name=n),placeholder:e.value?.name,label:a.$t("settings.player_name"),variant:"outlined",clearable:"",class:"configcolumnleft",style:{"margin-right":"25px"}},null,8,["modelValue","placeholder","label"])):u("",!0),"enabled"in e.value?(s(),y(Y,{key:4,modelValue:e.value.enabled,"onUpdate:modelValue":l[2]||(l[2]=n=>e.value.enabled=n),label:a.$t("settings.enable_player"),color:"primary",disabled:r(t).getProviderManifest(e.value.provider)?.builtin},null,8,["modelValue","label","disabled"])):u("",!0)])):u("",!0),l[6]||(l[6]=o("br",null,null,-1)),p(D),e.value?(s(),y(F,{key:1,disabled:!e.value.enabled,"config-entries":$.value,onSubmit:U,onAction:h},null,8,["disabled","config-entries"])):u("",!0)]),_:1})]))}});export{ie as default};
1
+ import{ay as B,J as c,aP as t,bb as L,a4 as M,i as N,br as g,cH as _,b2 as V,L as w,az as P,aA as s,o as p,aG as d,aB as u,E as o,aI as y,aD as r,bg as A,bh as v,aN as i,bi as f,cB as G,aU as D,bH as O,c3 as R,aE as q}from"./index-Co2Il0FF.js";import{E as F}from"./EditConfig-DB9H12KG.js";import{n as j}from"./index.browser-OxPLOBIU.js";import{V as H}from"./VSwitch-CbeBX82z.js";import"./VForm-lwT5Vjdc.js";import"./VExpansionPanels-ynbmIXCh.js";import"./VDialog-oA-qD8nK.js";import"./VAlert-CqZcE68W.js";import"./VSlider-SvfKY3nA.js";import"./VSelect-BULCN41e.js";import"./VVirtualScroll-Bmp7pEa7.js";import"./VCheckboxBtn-pFfosXS7.js";import"./VSelectionControl-BU644enI.js";const Y={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},ie=B({__name:"EditPlayer",props:{playerId:{}},setup(C){const S=q(),e=c(),I=j(11),E=c(!1),m=C,b=c(!1);(async()=>{if(m.playerId)try{b.value=(await t.getDSPConfig(m.playerId)).enabled}catch(a){console.error("Error fetching DSP config:",a)}})();const T=t.subscribe(L.PLAYER_DSP_CONFIG_UPDATED,a=>{b.value=a.data.enabled});M(T);const $=N(()=>{if(!e.value)return[];const a=Object.values(e.value.values),l=t.players[e.value.player_id];return l&&l.type!==g.GROUP?a.push({key:"dsp_settings",type:_.DSP_SETTINGS,label:"",default_value:b.value,required:!1,category:"audio"}):l&&l.type===g.GROUP&&l.supported_features.includes(V.MULTI_DEVICE_DSP)?a.push({key:"dsp_note_multi_device_group",type:_.LABEL,label:"You can configure the DSP for each player individually.",default_value:null,required:!1,category:"audio"}):l&&l.type===g.GROUP&&!l.supported_features.includes(V.MULTI_DEVICE_DSP)&&a.push({key:"dsp_note_multi_device_group_not_supported",type:_.LABEL,label:"This group type does not support DSP when playing to multiple devices.",default_value:null,required:!1,category:"audio"}),a});w(()=>m.playerId,async a=>{a&&(e.value=await t.getPlayerConfig(a))},{immediate:!0});const U=async function(a){delete a.dsp_settings,a.enabled=e.value.enabled,a.name=e.value.name||null,t.savePlayerConfig(m.playerId,a),S.push({name:"playersettings"})},h=async function(a,l){E.value=!0;for(const n of Object.values(e.value.values))n.value!==void 0&&l[n.key]==null&&(l[n.key]=n.value);l.session_id=I,t.getPlayerConfigEntries(e.value.player_id,a,l).then(n=>{e.value.values={};for(const k of n)e.value.values[k.key]=k}).catch(n=>{alert(n)}).finally(()=>{E.value=!1})};return(a,l)=>(s(),P("section",null,[p(R,null,{default:d(()=>[e.value&&r(t).getProviderManifest(e.value.provider).domain in r(t).providerManifests?(s(),P("div",Y,[p(A,null,{default:d(()=>[v(i(a.$t("settings.config_player",[e.value.name||r(t).players[e.value.player_id]?.name||e.value.default_name])),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_id"))+": ",1),v(i(e.value.player_id),1)]),_:1}),p(f,null,{default:d(()=>[o("b",null,i(a.$t("settings.player_provider"))+": ",1),v(i(r(t).getProviderManifest(e.value.provider)?.name)+" ",1),r(t).getProviderManifest(e.value.provider)?.documentation?(s(),P("a",{key:0,onClick:l[0]||(l[0]=n=>r(G)(r(t).getProviderManifest(e.value.provider)?.documentation))}," ["+i(a.$t("settings.check_docs"))+"]",1)):u("",!0)]),_:1}),r(t).players[e.value.player_id]?(s(),y(f,{key:0},{default:d(()=>[o("b",null,i(a.$t("settings.player_model"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.manufacturer)+" / "+i(r(t).players[e.value.player_id].device_info.model),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?.device_info.ip_address?(s(),y(f,{key:1},{default:d(()=>[o("b",null,i(a.$t("settings.player_address"))+": ",1),v(i(r(t).players[e.value.player_id].device_info.ip_address),1)]),_:1})):u("",!0),r(t).players[e.value.player_id]?(s(),y(f,{key:2},{default:d(()=>[o("b",null,i(a.$t("settings.player_type_label"))+": ",1),v(i(a.$t(`player_type.${r(t).players[e.value.player_id].type}`)),1)]),_:1})):u("",!0),l[3]||(l[3]=o("br",null,null,-1)),p(D),l[4]||(l[4]=o("br",null,null,-1)),l[5]||(l[5]=o("br",null,null,-1)),"name"in e.value?(s(),y(O,{key:3,modelValue:e.value.name,"onUpdate:modelValue":l[1]||(l[1]=n=>e.value.name=n),placeholder:e.value?.name,label:a.$t("settings.player_name"),variant:"outlined",clearable:"",class:"configcolumnleft",style:{"margin-right":"25px"}},null,8,["modelValue","placeholder","label"])):u("",!0),"enabled"in e.value?(s(),y(H,{key:4,modelValue:e.value.enabled,"onUpdate:modelValue":l[2]||(l[2]=n=>e.value.enabled=n),label:a.$t("settings.enable_player"),color:"primary",disabled:r(t).getProviderManifest(e.value.provider)?.builtin},null,8,["modelValue","label","disabled"])):u("",!0)])):u("",!0),l[6]||(l[6]=o("br",null,null,-1)),p(D),e.value?(s(),y(F,{key:1,disabled:!e.value.enabled,"config-entries":$.value,onSubmit:U,onAction:h},null,8,["disabled","config-entries"])):u("",!0)]),_:1})]))}});export{ie as default};
@@ -1,9 +1,9 @@
1
- import{g as Fe,p as qe,di 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,dj as Ke,z as Ye,C as we,cq 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,dk as L,dl as F,a2 as Cl,a3 as Le,cJ as tl,aB as W,aD as h,bI as kl,bK as Se,bP as al,bQ as $e,dm as Sl,bW as Te,R as Pe,bN as Pl,dn 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-Ci6ypq6O.js";import{V as wl}from"./VSlider-D1oP09L0.js";import{V as be}from"./VSelect-CMxVGu2h.js";import{V as Ae}from"./VSwitch-jlMLuij2.js";import{a as We,V as Ge}from"./VToolbar-CTLIwz5x.js";import{V as Ol}from"./VAlert-Kj2m6TCt.js";import{V as je}from"./VDialog-DofGN8Yd.js";import"./VVirtualScroll-RawLIXgS.js";import"./VCheckboxBtn-lg4Bkg3S.js";import"./VSelectionControl-CuEKzbGp.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"},Wl=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
- `),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(()=>{G.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
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-Co2Il0FF.js";import{V as wl}from"./VSlider-SvfKY3nA.js";import{V as be}from"./VSelect-BULCN41e.js";import{V as Ae}from"./VSwitch-CbeBX82z.js";import{a as Ge,V as We}from"./VToolbar-p_Wr_MDA.js";import{V as Ol}from"./VAlert-CqZcE68W.js";import{V as je}from"./VDialog-oA-qD8nK.js";import"./VVirtualScroll-Bmp7pEa7.js";import"./VCheckboxBtn-pFfosXS7.js";import"./VSelectionControl-BU644enI.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
+ `),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}
5
5
  `,n+=`Channel: ${C===F.FL?"L":"R"}
6
6
  `,u.value.per_channel_preamp[C]!==void 0&&(n+=`Preamp: ${u.value.per_channel_preamp[C].toFixed(2)} dB
7
7
  `);let d=1;u.value.bands.forEach(v=>{if(v.channel===C||v.channel===F.ALL){const _=b[v.type];n+=`Filter ${d++}: ${v.enabled?"ON":"OFF"} ${_} Fc ${v.frequency.toFixed(1)} Hz Gain ${v.gain.toFixed(2)} dB Q ${v.q.toFixed(3)}
8
8
  `}})}}else u.value.bands.forEach((T,C)=>{const y=b[T.type];n+=`Filter ${C+1}: ${T.enabled?"ON":"OFF"} ${y} Fc ${T.frequency.toFixed(1)} Hz Gain ${T.gain.toFixed(2)} dB Q ${T.q.toFixed(3)}
9
- `});const e=new Blob([n],{type:"text/plain"}),o=URL.createObjectURL(e),P=document.createElement("a");P.href=o,P.download=`music_assistant_eq_settings_${new Date().toISOString().split("T")[0]}.txt`,document.body.appendChild(P),P.click(),document.body.removeChild(P),URL.revokeObjectURL(o)},N=Oe(),u=Ie(t,"modelValue"),k=U(null),M=U(null),V=Object.values(L).map(n=>({title:O(`settings.dsp.parametric_eq.filter_types.${n}`),value:n})),E=n=>![L.HIGH_PASS,L.LOW_PASS,L.NOTCH].includes(n),q=U({width:0,height:0,min_gain:-20,max_gain:20,min_freq:20,max_freq:2e4,padding_lr:40,padding_tb:20}),I=()=>{if(!k.value||!M.value)return;const n=N.global.current.value.dark,e=k.value.getContext("2d");if(!e)return;k.value.width=M.value.clientWidth*2,k.value.height=M.value.clientHeight*2,q.value.width=k.value.width/2,q.value.height=k.value.height/2,e.scale(2,2),e.clearRect(0,0,k.value.width,k.value.height),ce(e,q.value);const o=e.canvas.width/2;e.canvas.height/2;const P=(C,y,d)=>{let v=`hsla(${y*360/u.value.bands.length}, 60%, ${n?70:50}%, 0.5)`;d.beginPath(),y===G.value?(d.lineWidth=5,v=`hsla(${y*360/u.value.bands.length}, 70%, ${n?70:60}%, 1)`):d.lineWidth=2,d.strokeStyle=v;const _=new Float32Array(o);for(let X=0;X<o;X++)_[X]=r(X,q.value);const Y=new Float32Array(o),Z=new Float32Array(o);oe(ye,C).getFrequencyResponse(_,Y,Z);for(let X=q.value.padding_lr;X<o-q.value.padding_lr;X++){const sl=20*Math.log10(Y[X]),Me=p(sl,q.value);X===q.value.padding_lr?d.moveTo(X,Me):d.lineTo(X,Me)}d.stroke();const Ce=i(C.frequency,q.value),ke=p(C.gain,q.value);return d.beginPath(),d.fillStyle=v,d.arc(Ce,ke,6,0,2*Math.PI),d.fill(),{frequencies:_,magResponse:Y}},T=(C,y)=>{y.lineWidth=3,n?y.strokeStyle="#fff":y.strokeStyle="#000",y.beginPath();for(let d=q.value.padding_lr;d<o-q.value.padding_lr;d++){const v=p(C[d],q.value);d===q.value.padding_lr?y.moveTo(d,v):y.lineTo(d,v)}y.stroke()};if(R.value===F.ALL&&re.value){const C=Object.values(F).filter(d=>d!==F.ALL),y={};C.forEach(d=>{y[d]=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[d]??0))}),u.value.bands.forEach((d,v)=>{if(d.enabled){const{magResponse:_}=P(d,v,e);if(d.channel===F.ALL)C.forEach(Y=>{for(let Z=0;Z<o;Z++)y[Y][Z]+=20*Math.log10(_[Z])});else for(let Y=0;Y<o;Y++)y[d.channel][Y]+=20*Math.log10(_[Y])}}),C.forEach(d=>{T(y[d],e)})}else{const C=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[R.value]??0));u.value.bands.forEach((y,d)=>{if(y.enabled&&y.channel===R.value||y.channel===F.ALL){const{magResponse:v}=P(y,d,e);for(let _=0;_<o;_++)C[_]+=20*Math.log10(v[_])}}),T(C,e)}},oe=(n,e)=>{const o=n.createBiquadFilter();switch(e.type){case L.HIGH_PASS:o.type="highpass";break;case L.LOW_PASS:o.type="lowpass";break;case L.HIGH_SHELF:o.type="highshelf";break;case L.LOW_SHELF:o.type="lowshelf";break;case L.NOTCH:o.type="notch";break;case L.PEAK:o.type="peaking";break}return o.frequency.value=e.frequency,o.Q.value=e.q,o.gain.value=e.gain,o},ye=new AudioContext;j(()=>u.value.bands.map(n=>oe(ye,n)));const re=j(()=>u.value.bands.some(n=>n.channel!==F.ALL)||Object.keys(u.value.per_channel_preamp).length>0&&Object.values(u.value.per_channel_preamp).some(n=>n!==0)),ue=U(!1),G=U(-1),R=U(F.ALL),x=j(()=>u.value.bands[G.value]),ve=j({get:()=>u.value.preamp??0,set:n=>{u.value.preamp=n}}),_e=j({get:()=>u.value.per_channel_preamp[R.value]??0,set:n=>{R.value!==F.ALL&&(u.value.per_channel_preamp[R.value]=n)}}),de=n=>{u.value.bands.splice(n,1),G.value>=u.value.bands.length&&Pe(()=>{G.value=u.value.bands.length-1})},Ve=()=>{const n=u.value.bands.length;u.value.bands.push({frequency:1e3,q:1,gain:0,type:L.PEAK,enabled:!0,channel:R.value}),Pe(()=>{G.value=n})};le(()=>u.value.preamp,I),le(()=>u.value.per_channel_preamp,I,{deep:!0}),le(()=>(G.value,u.value.bands),()=>{G.value>=u.value.bands.length&&(G.value=u.value.bands.length-1),I()},{deep:!0}),le(()=>R.value,I),le(()=>N.global.current.value.dark,I),Cl(()=>{re.value&&(ue.value=!0)}),Le(()=>{I(),window.addEventListener("resize",I)});const i=(n,e)=>{const o=Math.log2(n/e.min_freq),P=Math.log2(e.max_freq/e.min_freq);return o/P*(e.width-e.padding_lr*2)+e.padding_lr},r=(n,e)=>{const o=Math.log2(e.max_freq/e.min_freq),P=e.min_freq*Math.pow(2,(n-e.padding_lr)/(e.width-e.padding_lr*2)*o);return Math.min(Math.max(P,e.min_freq),e.max_freq)},p=(n,e)=>e.height/2-n*(e.height-2*e.padding_tb)/(2*Math.max(Math.abs(e.min_gain),Math.abs(e.max_gain))),ce=(n,e)=>{const o=n.canvas.width/2,P=n.canvas.height/2;N.global.current.value.dark?(n.fillStyle="#eee",n.strokeStyle="#eee"):(n.fillStyle="#222",n.strokeStyle="#666"),n.lineWidth=1,[20,50,100,200,500,1e3,2e3,5e3,1e4,2e4].forEach(v=>{const _=i(v,e);n.beginPath(),n.moveTo(_,e.padding_tb),n.lineTo(_,P-e.padding_tb),n.stroke(),n.font="10px Arial",n.textAlign="center",n.fillText(v>=1e3?`${v/1e3}k`:v.toString(),_,P-5)});const y=e.max_gain-e.min_gain,d=Math.ceil(y/(e.height/30));for(let v=e.min_gain;v<=e.max_gain;v+=d){const _=p(v,e);n.beginPath(),n.moveTo(e.padding_lr,_),n.lineTo(o-e.padding_lr,_),n.stroke(),n.font="10px Arial",n.textAlign="right",n.fillText(`${v}dB`,e.padding_lr-3,_+3)}};return Le(()=>{const n=new ResizeObserver(()=>{I()});return M.value&&n.observe(M.value),()=>{n.disconnect()}}),(n,e)=>(c(),$(tl,{class:"pa-2"},{default:a(()=>[z("div",Nl,[ue.value?(c(),$(be,{key:1,modelValue:R.value,"onUpdate:modelValue":e[1]||(e[1]=o=>R.value=o),class:"pa-2",items:h(g),label:h(O)("settings.dsp.parametric_eq.edited_channel"),variant:"outlined",density:"comfortable",style:{"min-width":"250px"},"hide-details":""},null,8,["modelValue","items","label"])):(c(),$(B,{key:0,variant:"outlined",onClick:e[0]||(e[0]=()=>{ue.value=!0})},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[12]||(e[12]=[f("mdi-speaker-multiple",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.show_multichannel_controls")),1)]),_:1})),l(B,{variant:"outlined",onClick:H},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[13]||(e[13]=[f("mdi-file-import",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.import_apo")),1)]),_:1}),l(B,{variant:"outlined",onClick:w},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[14]||(e[14]=[f("mdi-file-export",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.export_apo")),1)]),_:1}),z("input",{ref_key:"fileInputRef",ref:m,type:"file",accept:".txt",class:"d-none",onChange:D},null,544)]),l(te,{elevation:"0",color:"transparent"},{default:a(()=>[z("div",{ref_key:"graphContainer",ref:M,class:"graph-container"},[z("canvas",{ref_key:"canvas",ref:k,class:"frequency-graph"},null,512)],512)]),_:1}),l(te,{elevation:"0",color:"transparent",class:"border-t border-b rounded-0"},{default:a(()=>[l(ae,{class:"pa-0"},{default:a(()=>[l(kl,{modelValue:G.value,"onUpdate:modelValue":e[2]||(e[2]=o=>G.value=o),class:"mb-0 pa-2",mandatory:"","selected-class":"primary"},{default:a(()=>[(c(),$(Se,{key:-1,value:-1,filter:"",variant:"elevated"},{default:a(()=>[f(A(h(O)("settings.dsp.parametric_eq.preamp",{index:100})),1)]),_:1})),(c(!0),pe(fe,null,Ee(u.value.bands,(o,P)=>(c(),$(Se,{key:P,value:P,class:Q({"opacity-50":!o.enabled}),filter:"",variant:"elevated"},{default:a(()=>[f(A(o.channel===h(F).ALL?h(O)("settings.dsp.parametric_eq.band",{index:P+1}):h(O)("settings.dsp.parametric_eq.band_channel",{index:P+1,channel:h(O)(`settings.dsp.channels_compact.${o.channel}`)})),1)]),_:2},1032,["value","class"]))),128)),l(Se,{variant:"outlined",onClick:Ve},{default:a(()=>[l(K,{icon:"mdi-plus",start:""}),f(" "+A(R.value===h(F).ALL?h(O)("settings.dsp.parametric_eq.add_band"):h(O)("settings.dsp.parametric_eq.add_band_channel",{channel:h(O)(`settings.dsp.channels.${R.value}`)})),1)]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),G.value===-1?(c(),$(te,{key:0,elevation:"0",color:"transparent"},{default:a(()=>[l(ae,null,{default:a(()=>[l(al,{dense:""},{default:a(()=>[l($e,{cols:"12"},{default:a(()=>[l(J,{modelValue:ve.value,"onUpdate:modelValue":e[3]||(e[3]=o=>ve.value=o),type:"gain"},null,8,["modelValue"]),R.value!==h(F).ALL?(c(),$(J,{key:0,modelValue:_e.value,"onUpdate:modelValue":e[4]||(e[4]=o=>_e.value=o),type:{min:-15,max:15,step:.1,label:h(O)("settings.dsp.parametric_eq.per_channel_preamp",{channel:h(O)(`settings.dsp.channels.${R.value}`)}),unit:"dB",is_log:!1}},null,8,["modelValue","type"])):W("",!0)]),_:1})]),_:1})]),_:1})]),_:1})):W("",!0),x.value?(c(),pe(fe,{key:1},[l(Sl,null,{default:a(()=>[z("div",xl,[l(Ae,{modelValue:x.value.enabled,"onUpdate:modelValue":e[5]||(e[5]=o=>x.value.enabled=o),label:h(O)("settings.dsp.parametric_eq.enable_band"),density:"comfortable","hide-details":"",color:"primary"},null,8,["modelValue","label"]),l(Te),l(B,{color:"error",variant:"tonal",onClick:e[6]||(e[6]=o=>de(G.value))},{default:a(()=>[l(K,null,{default:a(()=>[...e[15]||(e[15]=[f("mdi-delete",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.delete_band")),1)]),_:1})])]),_:1}),l(be,{modelValue:x.value.type,"onUpdate:modelValue":e[7]||(e[7]=o=>x.value.type=o),items:h(V),label:h(O)("settings.dsp.parametric_eq.filter_type"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"]),l(J,{modelValue:x.value.frequency,"onUpdate:modelValue":e[8]||(e[8]=o=>x.value.frequency=o),type:"frequency"},null,8,["modelValue"]),E(x.value.type)?(c(),$(J,{key:0,modelValue:x.value.gain,"onUpdate:modelValue":e[9]||(e[9]=o=>x.value.gain=o),type:"gain"},null,8,["modelValue"])):W("",!0),l(J,{modelValue:x.value.q,"onUpdate:modelValue":e[10]||(e[10]=o=>x.value.q=o),type:"q"},null,8,["modelValue"]),ue.value?(c(),$(be,{key:1,modelValue:x.value.channel,"onUpdate:modelValue":e[11]||(e[11]=o=>x.value.channel=o),items:h(g),label:h(O)("settings.dsp.parametric_eq.channel"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"])):W("",!0)],64)):W("",!0)]),_:1}))}}),Gl=el(Wl,[["__scopeId","data-v-ac29d681"]]),jl=ge({__name:"DSPToneControl",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S=Ie(t,"modelValue");return(b,g)=>(c(),pe(fe,null,[l(J,{modelValue:S.value.bass_level,"onUpdate:modelValue":g[0]||(g[0]=s=>S.value.bass_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.bass_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.mid_level,"onUpdate:modelValue":g[1]||(g[1]=s=>S.value.mid_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.mid_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.treble_level,"onUpdate:modelValue":g[2]||(g[2]=s=>S.value.treble_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.treble_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"])],64))}}),Ql={key:0},Kl={class:"d-none d-md-inline"},Yl={class:"d-none d-md-inline"},ot=ge({__name:"EditPlayerDsp",props:{playerId:{}},setup(t){const{t:S}=Pl();Dl();const b=Oe(),g=t,s=U(),D=U([]),m=U(null),H=U(!1),w=U(!1),N=U(ne.PARAMETRIC_EQ),u=U("");U(window.innerWidth);const{mobile:k}=Ll();let M=!1,V;const E=Object.values(ne).map(i=>({value:i,title:S(`settings.dsp.types.${i}`)})),q=()=>b.global.current.value.dark?"bg-grey-darken-3":"bg-grey-lighten-3",I=i=>{m.value=i},oe=i=>S(i==="input"?"settings.dsp.input":i==="output"?"settings.dsp.output":`settings.dsp.types.${s.value?.filters[i].type}`),ye=()=>{if(!s.value)return;let i;switch(N.value){case ne.PARAMETRIC_EQ:i={preamp:0,per_channel_preamp:{},enabled:!0,type:ne.PARAMETRIC_EQ,bands:[]};break;case ne.TONE_CONTROL:i={enabled:!0,type:ne.TONE_CONTROL,bass_level:0,mid_level:0,treble_level:0};break;default:return}s.value.filters.push(i),H.value=!1,I(s.value.filters.length-1)},re=(i,r)=>{if(!s.value)return;const p=r==="up"?i-1:i+1;if(p<0||p>=s.value.filters.length)return;const[ce]=s.value.filters.splice(i,1);s.value.filters.splice(p,0,ce),m.value===i?m.value=p:m.value===p&&(m.value=i)},ue=i=>{m.value===i&&(m.value="input"),s.value?.filters.splice(i,1)},G=async i=>{!i||!i.config||(m.value="input",s.value=i.config)},R=async()=>{if(!s.value||!u.value.trim())return;const i={name:u.value.trim(),config:s.value};try{await se.saveDSPPreset(i),u.value="",w.value=!1}catch(r){console.error("Failed to save DSP preset:",r)}},x=async i=>{!i||!confirm(S("settings.dsp.presets.remove_confirm"))||(await se.removeDSPPreset(i),D.value=D.value.filter(r=>r.preset_id!==i))};le(k,i=>{!i&&m.value===null&&I("input")},{immediate:!0});const ve=j(()=>$l(se.players[g.playerId],27));le(()=>g.playerId,async i=>{V&&V(),M=!0,i&&(s.value=await se.getDSPConfig(i)),V=se.subscribe(He.PLAYER_DSP_CONFIG_UPDATED,r=>{M=!0,s.value=r.data},g.playerId)},{immediate:!0});const _e=se.subscribe(He.DSP_PRESETS_UPDATED,i=>{D.value=i.data});Le(async()=>{D.value=await se.getDSPPresets()}),Tl(()=>{V&&V(),_e()});let de=null;const Ve=i=>{de&&clearTimeout(de),de=setTimeout(async()=>{g.playerId&&await se.saveDSPConfig(g.playerId,i)},2e3)};return le(s,(i,r)=>{if(M){de&&clearTimeout(de),M=!1;return}r!==null&&i&&Ve(i)},{deep:!0}),(i,r)=>s.value?(c(),pe("section",Ql,[l(Ge,{color:"transparent",class:"border-b pr-4"},{default:a(()=>[l(Ae,{modelValue:s.value.enabled,"onUpdate:modelValue":r[0]||(r[0]=p=>s.value.enabled=p),"hide-details":"",color:"primary",class:"pl-4"},null,8,["modelValue"]),l(We,null,{default:a(()=>[f(A(i.$t("settings.dsp.configure_on",{name:ve.value})),1)]),_:1}),l(Al,{"offset-y":"",transition:"slide-y-transition"},{activator:a(({props:p})=>[l(B,ql(p,{class:["mr-4",q()]}),{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[19]||(r[19]=[f(" mdi-tray-arrow-down ",-1)])]),_:1}),z("span",Kl,A(i.$t("settings.dsp.presets.load")),1)]),_:1},16,["class"])]),default:a(()=>[l(Fl,null,{default:a(()=>[D.value.length===0?(c(),$(ze,{key:0},{default:a(()=>[l(Ue,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.empty_warning")),1)]),_:1})]),_:1})):(c(!0),pe(fe,{key:1},Ee(D.value,p=>(c(),$(ze,{key:p.preset_id,onClick:ce=>G(p)},{append:a(()=>[l(B,{icon:"mdi-delete",variant:"text",density:"compact",onClick:Ze(ce=>x(p.preset_id),["stop"])},null,8,["onClick"])]),default:a(()=>[l(Ue,null,{default:a(()=>[f(A(p.name),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1}),l(B,{class:Q(q()),onClick:r[1]||(r[1]=p=>w.value=!0)},{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[20]||(r[20]=[f(" mdi-content-save ",-1)])]),_:1}),z("span",Yl,A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["class"])]),_:1}),l(tl,{class:"pa-4"},{default:a(()=>[s.value.enabled?W("",!0):(c(),$(Ol,{key:0,type:"info",class:"mt-4",color:"transparent"},{default:a(()=>[f(A(i.$t("settings.dsp.disabled_message")),1)]),_:1})),l(al,{class:Q([{"justify-center":h(k)},"flex-nowrap"])},{default:a(()=>[!h(k)||m.value===null?(c(),$($e,{key:0,class:Q(["flex-grow-0 flex-shrink-0",{"border-e pr-4":!h(k)}]),"align-self":"start"},{default:a(()=>[l(Hl,{dsp:s.value,selected:m.value,onOnSelect:I,onOnAddFilter:r[2]||(r[2]=p=>H.value=!0),onOnMoveFilter:r[3]||(r[3]=p=>re(p.index,p.direction)),onOnDeleteFilter:ue},null,8,["dsp","selected"])]),_:1},8,["class"])):W("",!0),m.value!=null?(c(),$($e,{key:1,style:{"min-width":"0"}},{default:a(()=>[l(Ge,{density:"compact",color:i.$vuetify.theme.current.dark?"surface":"surface-light",class:"border-b"},{default:a(()=>[h(k)?(c(),$(B,{key:0,class:"hidden-xs-only",icon:"",onClick:r[4]||(r[4]=p=>m.value=null)},{default:a(()=>[l(K,null,{default:a(()=>[...r[21]||(r[21]=[f("mdi-arrow-left",-1)])]),_:1})]),_:1})):W("",!0),l(We,null,{default:a(()=>[f(A(oe(m.value)),1)]),_:1}),typeof m.value=="number"&&!h(k)&&m.value>0?(c(),$(B,{key:1,icon:"",onClick:r[5]||(r[5]=p=>re(m.value,"up"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[22]||(r[22]=[f("mdi-arrow-up",-1)])]),_:1})]),_:1})):W("",!0),typeof m.value=="number"&&!h(k)&&m.value<s.value.filters.length-1?(c(),$(B,{key:2,icon:"",onClick:r[6]||(r[6]=p=>re(m.value,"down"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[23]||(r[23]=[f("mdi-arrow-down",-1)])]),_:1})]),_:1})):W("",!0),typeof m.value=="number"?(c(),$(Ae,{key:3,modelValue:s.value.filters[m.value].enabled,"onUpdate:modelValue":r[7]||(r[7]=p=>s.value.filters[m.value].enabled=p),"hide-details":"",color:"primary",class:"mr-4"},null,8,["modelValue"])):W("",!0),typeof m.value=="number"?(c(),$(B,{key:4,icon:"",onClick:r[8]||(r[8]=p=>ue(m.value))},{default:a(()=>[l(K,null,{default:a(()=>[...r[24]||(r[24]=[f("mdi-delete",-1)])]),_:1})]),_:1})):W("",!0)]),_:1},8,["color"]),m.value==="input"?(c(),$(te,{key:0,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.input_gain,"onUpdate:modelValue":r[9]||(r[9]=p=>s.value.input_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):m.value==="output"?(c(),$(te,{key:1,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.output_gain,"onUpdate:modelValue":r[10]||(r[10]=p=>s.value.output_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):(c(),$(te,{key:2,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[s.value.filters[m.value].type===h(ne).PARAMETRIC_EQ?(c(),$(Gl,{key:0,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[11]||(r[11]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):W("",!0),s.value.filters[m.value].type===h(ne).TONE_CONTROL?(c(),$(jl,{key:1,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[12]||(r[12]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):W("",!0)]),_:1},8,["color"]))]),_:1})):W("",!0)]),_:1},8,["class"])]),_:1}),l(je,{modelValue:w.value,"onUpdate:modelValue":r[15]||(r[15]=p=>w.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(Ne,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1}),l(ae,null,{default:a(()=>[l(ll,{modelValue:u.value,"onUpdate:modelValue":r[13]||(r[13]=p=>u.value=p),label:i.$t("settings.dsp.presets.name"),placeholder:i.$t("settings.dsp.presets.name_placeholder"),variant:"outlined"},null,8,["modelValue","label","placeholder"])]),_:1}),l(xe,null,{default:a(()=>[l(Te),l(B,{onClick:r[14]||(r[14]=p=>w.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",disabled:!u.value.trim(),onClick:R},{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),l(je,{modelValue:H.value,"onUpdate:modelValue":r[18]||(r[18]=p=>H.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(Ne,null,{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1}),l(ae,null,{default:a(()=>[l(be,{modelValue:N.value,"onUpdate:modelValue":r[16]||(r[16]=p=>N.value=p),items:h(E),label:i.$t("settings.dsp.filter.type")},null,8,["modelValue","items","label"])]),_:1}),l(xe,null,{default:a(()=>[l(Te),l(B,{onClick:r[17]||(r[17]=p=>H.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",onClick:ye},{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])):W("",!0)}});export{ot as default};
9
+ `});const e=new Blob([n],{type:"text/plain"}),o=URL.createObjectURL(e),P=document.createElement("a");P.href=o,P.download=`music_assistant_eq_settings_${new Date().toISOString().split("T")[0]}.txt`,document.body.appendChild(P),P.click(),document.body.removeChild(P),URL.revokeObjectURL(o)},N=Oe(),u=Ie(t,"modelValue"),k=U(null),M=U(null),V=Object.values(L).map(n=>({title:O(`settings.dsp.parametric_eq.filter_types.${n}`),value:n})),E=n=>![L.HIGH_PASS,L.LOW_PASS,L.NOTCH].includes(n),q=U({width:0,height:0,min_gain:-20,max_gain:20,min_freq:20,max_freq:2e4,padding_lr:40,padding_tb:20}),I=()=>{if(!k.value||!M.value)return;const n=N.global.current.value.dark,e=k.value.getContext("2d");if(!e)return;k.value.width=M.value.clientWidth*2,k.value.height=M.value.clientHeight*2,q.value.width=k.value.width/2,q.value.height=k.value.height/2,e.scale(2,2),e.clearRect(0,0,k.value.width,k.value.height),ce(e,q.value);const o=e.canvas.width/2;e.canvas.height/2;const P=(C,y,d)=>{let v=`hsla(${y*360/u.value.bands.length}, 60%, ${n?70:50}%, 0.5)`;d.beginPath(),y===W.value?(d.lineWidth=5,v=`hsla(${y*360/u.value.bands.length}, 70%, ${n?70:60}%, 1)`):d.lineWidth=2,d.strokeStyle=v;const _=new Float32Array(o);for(let X=0;X<o;X++)_[X]=r(X,q.value);const Y=new Float32Array(o),Z=new Float32Array(o);oe(ye,C).getFrequencyResponse(_,Y,Z);for(let X=q.value.padding_lr;X<o-q.value.padding_lr;X++){const sl=20*Math.log10(Y[X]),Me=p(sl,q.value);X===q.value.padding_lr?d.moveTo(X,Me):d.lineTo(X,Me)}d.stroke();const Ce=i(C.frequency,q.value),ke=p(C.gain,q.value);return d.beginPath(),d.fillStyle=v,d.arc(Ce,ke,6,0,2*Math.PI),d.fill(),{frequencies:_,magResponse:Y}},T=(C,y)=>{y.lineWidth=3,n?y.strokeStyle="#fff":y.strokeStyle="#000",y.beginPath();for(let d=q.value.padding_lr;d<o-q.value.padding_lr;d++){const v=p(C[d],q.value);d===q.value.padding_lr?y.moveTo(d,v):y.lineTo(d,v)}y.stroke()};if(R.value===F.ALL&&re.value){const C=Object.values(F).filter(d=>d!==F.ALL),y={};C.forEach(d=>{y[d]=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[d]??0))}),u.value.bands.forEach((d,v)=>{if(d.enabled){const{magResponse:_}=P(d,v,e);if(d.channel===F.ALL)C.forEach(Y=>{for(let Z=0;Z<o;Z++)y[Y][Z]+=20*Math.log10(_[Z])});else for(let Y=0;Y<o;Y++)y[d.channel][Y]+=20*Math.log10(_[Y])}}),C.forEach(d=>{T(y[d],e)})}else{const C=new Float32Array(o).fill((u.value.preamp??0)+(u.value.per_channel_preamp[R.value]??0));u.value.bands.forEach((y,d)=>{if(y.enabled&&y.channel===R.value||y.channel===F.ALL){const{magResponse:v}=P(y,d,e);for(let _=0;_<o;_++)C[_]+=20*Math.log10(v[_])}}),T(C,e)}},oe=(n,e)=>{const o=n.createBiquadFilter();switch(e.type){case L.HIGH_PASS:o.type="highpass";break;case L.LOW_PASS:o.type="lowpass";break;case L.HIGH_SHELF:o.type="highshelf";break;case L.LOW_SHELF:o.type="lowshelf";break;case L.NOTCH:o.type="notch";break;case L.PEAK:o.type="peaking";break}return o.frequency.value=e.frequency,o.Q.value=e.q,o.gain.value=e.gain,o},ye=new AudioContext;j(()=>u.value.bands.map(n=>oe(ye,n)));const re=j(()=>u.value.bands.some(n=>n.channel!==F.ALL)||Object.keys(u.value.per_channel_preamp).length>0&&Object.values(u.value.per_channel_preamp).some(n=>n!==0)),ue=U(!1),W=U(-1),R=U(F.ALL),x=j(()=>u.value.bands[W.value]),ve=j({get:()=>u.value.preamp??0,set:n=>{u.value.preamp=n}}),_e=j({get:()=>u.value.per_channel_preamp[R.value]??0,set:n=>{R.value!==F.ALL&&(u.value.per_channel_preamp[R.value]=n)}}),de=n=>{u.value.bands.splice(n,1),W.value>=u.value.bands.length&&Pe(()=>{W.value=u.value.bands.length-1})},Ve=()=>{const n=u.value.bands.length;u.value.bands.push({frequency:1e3,q:1,gain:0,type:L.PEAK,enabled:!0,channel:R.value}),Pe(()=>{W.value=n})};le(()=>u.value.preamp,I),le(()=>u.value.per_channel_preamp,I,{deep:!0}),le(()=>(W.value,u.value.bands),()=>{W.value>=u.value.bands.length&&(W.value=u.value.bands.length-1),I()},{deep:!0}),le(()=>R.value,I),le(()=>N.global.current.value.dark,I),Cl(()=>{re.value&&(ue.value=!0)}),Le(()=>{I(),window.addEventListener("resize",I)});const i=(n,e)=>{const o=Math.log2(n/e.min_freq),P=Math.log2(e.max_freq/e.min_freq);return o/P*(e.width-e.padding_lr*2)+e.padding_lr},r=(n,e)=>{const o=Math.log2(e.max_freq/e.min_freq),P=e.min_freq*Math.pow(2,(n-e.padding_lr)/(e.width-e.padding_lr*2)*o);return Math.min(Math.max(P,e.min_freq),e.max_freq)},p=(n,e)=>e.height/2-n*(e.height-2*e.padding_tb)/(2*Math.max(Math.abs(e.min_gain),Math.abs(e.max_gain))),ce=(n,e)=>{const o=n.canvas.width/2,P=n.canvas.height/2;N.global.current.value.dark?(n.fillStyle="#eee",n.strokeStyle="#eee"):(n.fillStyle="#222",n.strokeStyle="#666"),n.lineWidth=1,[20,50,100,200,500,1e3,2e3,5e3,1e4,2e4].forEach(v=>{const _=i(v,e);n.beginPath(),n.moveTo(_,e.padding_tb),n.lineTo(_,P-e.padding_tb),n.stroke(),n.font="10px Arial",n.textAlign="center",n.fillText(v>=1e3?`${v/1e3}k`:v.toString(),_,P-5)});const y=e.max_gain-e.min_gain,d=Math.ceil(y/(e.height/30));for(let v=e.min_gain;v<=e.max_gain;v+=d){const _=p(v,e);n.beginPath(),n.moveTo(e.padding_lr,_),n.lineTo(o-e.padding_lr,_),n.stroke(),n.font="10px Arial",n.textAlign="right",n.fillText(`${v}dB`,e.padding_lr-3,_+3)}};return Le(()=>{const n=new ResizeObserver(()=>{I()});return M.value&&n.observe(M.value),()=>{n.disconnect()}}),(n,e)=>(c(),$(tl,{class:"pa-2"},{default:a(()=>[z("div",Nl,[ue.value?(c(),$(be,{key:1,modelValue:R.value,"onUpdate:modelValue":e[1]||(e[1]=o=>R.value=o),class:"pa-2",items:h(g),label:h(O)("settings.dsp.parametric_eq.edited_channel"),variant:"outlined",density:"comfortable",style:{"min-width":"250px"},"hide-details":""},null,8,["modelValue","items","label"])):(c(),$(B,{key:0,variant:"outlined",onClick:e[0]||(e[0]=()=>{ue.value=!0})},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[12]||(e[12]=[f("mdi-speaker-multiple",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.show_multichannel_controls")),1)]),_:1})),l(B,{variant:"outlined",onClick:H},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[13]||(e[13]=[f("mdi-file-import",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.import_apo")),1)]),_:1}),l(B,{variant:"outlined",onClick:w},{default:a(()=>[l(K,{start:""},{default:a(()=>[...e[14]||(e[14]=[f("mdi-file-export",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.export_apo")),1)]),_:1}),z("input",{ref_key:"fileInputRef",ref:m,type:"file",accept:".txt",class:"d-none",onChange:D},null,544)]),l(te,{elevation:"0",color:"transparent"},{default:a(()=>[z("div",{ref_key:"graphContainer",ref:M,class:"graph-container"},[z("canvas",{ref_key:"canvas",ref:k,class:"frequency-graph"},null,512)],512)]),_:1}),l(te,{elevation:"0",color:"transparent",class:"border-t border-b rounded-0"},{default:a(()=>[l(ae,{class:"pa-0"},{default:a(()=>[l(kl,{modelValue:W.value,"onUpdate:modelValue":e[2]||(e[2]=o=>W.value=o),class:"mb-0 pa-2",mandatory:"","selected-class":"primary"},{default:a(()=>[(c(),$(Se,{key:-1,value:-1,filter:"",variant:"elevated"},{default:a(()=>[f(A(h(O)("settings.dsp.parametric_eq.preamp",{index:100})),1)]),_:1})),(c(!0),pe(fe,null,Ee(u.value.bands,(o,P)=>(c(),$(Se,{key:P,value:P,class:Q({"opacity-50":!o.enabled}),filter:"",variant:"elevated"},{default:a(()=>[f(A(o.channel===h(F).ALL?h(O)("settings.dsp.parametric_eq.band",{index:P+1}):h(O)("settings.dsp.parametric_eq.band_channel",{index:P+1,channel:h(O)(`settings.dsp.channels_compact.${o.channel}`)})),1)]),_:2},1032,["value","class"]))),128)),l(Se,{variant:"outlined",onClick:Ve},{default:a(()=>[l(K,{icon:"mdi-plus",start:""}),f(" "+A(R.value===h(F).ALL?h(O)("settings.dsp.parametric_eq.add_band"):h(O)("settings.dsp.parametric_eq.add_band_channel",{channel:h(O)(`settings.dsp.channels.${R.value}`)})),1)]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1}),W.value===-1?(c(),$(te,{key:0,elevation:"0",color:"transparent"},{default:a(()=>[l(ae,null,{default:a(()=>[l(al,{dense:""},{default:a(()=>[l($e,{cols:"12"},{default:a(()=>[l(J,{modelValue:ve.value,"onUpdate:modelValue":e[3]||(e[3]=o=>ve.value=o),type:"gain"},null,8,["modelValue"]),R.value!==h(F).ALL?(c(),$(J,{key:0,modelValue:_e.value,"onUpdate:modelValue":e[4]||(e[4]=o=>_e.value=o),type:{min:-15,max:15,step:.1,label:h(O)("settings.dsp.parametric_eq.per_channel_preamp",{channel:h(O)(`settings.dsp.channels.${R.value}`)}),unit:"dB",is_log:!1}},null,8,["modelValue","type"])):G("",!0)]),_:1})]),_:1})]),_:1})]),_:1})):G("",!0),x.value?(c(),pe(fe,{key:1},[l(Sl,null,{default:a(()=>[z("div",xl,[l(Ae,{modelValue:x.value.enabled,"onUpdate:modelValue":e[5]||(e[5]=o=>x.value.enabled=o),label:h(O)("settings.dsp.parametric_eq.enable_band"),density:"comfortable","hide-details":"",color:"primary"},null,8,["modelValue","label"]),l(Te),l(B,{color:"error",variant:"tonal",onClick:e[6]||(e[6]=o=>de(W.value))},{default:a(()=>[l(K,null,{default:a(()=>[...e[15]||(e[15]=[f("mdi-delete",-1)])]),_:1}),f(" "+A(h(O)("settings.dsp.parametric_eq.delete_band")),1)]),_:1})])]),_:1}),l(be,{modelValue:x.value.type,"onUpdate:modelValue":e[7]||(e[7]=o=>x.value.type=o),items:h(V),label:h(O)("settings.dsp.parametric_eq.filter_type"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"]),l(J,{modelValue:x.value.frequency,"onUpdate:modelValue":e[8]||(e[8]=o=>x.value.frequency=o),type:"frequency"},null,8,["modelValue"]),E(x.value.type)?(c(),$(J,{key:0,modelValue:x.value.gain,"onUpdate:modelValue":e[9]||(e[9]=o=>x.value.gain=o),type:"gain"},null,8,["modelValue"])):G("",!0),l(J,{modelValue:x.value.q,"onUpdate:modelValue":e[10]||(e[10]=o=>x.value.q=o),type:"q"},null,8,["modelValue"]),ue.value?(c(),$(be,{key:1,modelValue:x.value.channel,"onUpdate:modelValue":e[11]||(e[11]=o=>x.value.channel=o),items:h(g),label:h(O)("settings.dsp.parametric_eq.channel"),variant:"outlined",density:"comfortable",class:"pa-4","hide-details":""},null,8,["modelValue","items","label"])):G("",!0)],64)):G("",!0)]),_:1}))}}),Wl=el(Gl,[["__scopeId","data-v-ac29d681"]]),jl=ge({__name:"DSPToneControl",props:{modelValue:{required:!0},modelModifiers:{}},emits:["update:modelValue"],setup(t){const S=Ie(t,"modelValue");return(b,g)=>(c(),pe(fe,null,[l(J,{modelValue:S.value.bass_level,"onUpdate:modelValue":g[0]||(g[0]=s=>S.value.bass_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.bass_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.mid_level,"onUpdate:modelValue":g[1]||(g[1]=s=>S.value.mid_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.mid_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"]),l(J,{modelValue:S.value.treble_level,"onUpdate:modelValue":g[2]||(g[2]=s=>S.value.treble_level=s),type:{min:-10,max:10,step:.1,label:b.$t("settings.dsp.tone_control.treble_level"),unit:"dB",is_log:!1}},null,8,["modelValue","type"])],64))}}),Ql={key:0},Kl={class:"d-none d-md-inline"},Yl={class:"d-none d-md-inline"},ot=ge({__name:"EditPlayerDsp",props:{playerId:{}},setup(t){const{t:S}=Pl();Dl();const b=Oe(),g=t,s=U(),D=U([]),m=U(null),H=U(!1),w=U(!1),N=U(ne.PARAMETRIC_EQ),u=U("");U(window.innerWidth);const{mobile:k}=Ll();let M=!1,V;const E=Object.values(ne).map(i=>({value:i,title:S(`settings.dsp.types.${i}`)})),q=()=>b.global.current.value.dark?"bg-grey-darken-3":"bg-grey-lighten-3",I=i=>{m.value=i},oe=i=>S(i==="input"?"settings.dsp.input":i==="output"?"settings.dsp.output":`settings.dsp.types.${s.value?.filters[i].type}`),ye=()=>{if(!s.value)return;let i;switch(N.value){case ne.PARAMETRIC_EQ:i={preamp:0,per_channel_preamp:{},enabled:!0,type:ne.PARAMETRIC_EQ,bands:[]};break;case ne.TONE_CONTROL:i={enabled:!0,type:ne.TONE_CONTROL,bass_level:0,mid_level:0,treble_level:0};break;default:return}s.value.filters.push(i),H.value=!1,I(s.value.filters.length-1)},re=(i,r)=>{if(!s.value)return;const p=r==="up"?i-1:i+1;if(p<0||p>=s.value.filters.length)return;const[ce]=s.value.filters.splice(i,1);s.value.filters.splice(p,0,ce),m.value===i?m.value=p:m.value===p&&(m.value=i)},ue=i=>{m.value===i&&(m.value="input"),s.value?.filters.splice(i,1)},W=async i=>{!i||!i.config||(m.value="input",s.value=i.config)},R=async()=>{if(!s.value||!u.value.trim())return;const i={name:u.value.trim(),config:s.value};try{await se.saveDSPPreset(i),u.value="",w.value=!1}catch(r){console.error("Failed to save DSP preset:",r)}},x=async i=>{!i||!confirm(S("settings.dsp.presets.remove_confirm"))||(await se.removeDSPPreset(i),D.value=D.value.filter(r=>r.preset_id!==i))};le(k,i=>{!i&&m.value===null&&I("input")},{immediate:!0});const ve=j(()=>$l(se.players[g.playerId],27));le(()=>g.playerId,async i=>{V&&V(),M=!0,i&&(s.value=await se.getDSPConfig(i)),V=se.subscribe(He.PLAYER_DSP_CONFIG_UPDATED,r=>{M=!0,s.value=r.data},g.playerId)},{immediate:!0});const _e=se.subscribe(He.DSP_PRESETS_UPDATED,i=>{D.value=i.data});Le(async()=>{D.value=await se.getDSPPresets()}),Tl(()=>{V&&V(),_e()});let de=null;const Ve=i=>{de&&clearTimeout(de),de=setTimeout(async()=>{g.playerId&&await se.saveDSPConfig(g.playerId,i)},2e3)};return le(s,(i,r)=>{if(M){de&&clearTimeout(de),M=!1;return}r!==null&&i&&Ve(i)},{deep:!0}),(i,r)=>s.value?(c(),pe("section",Ql,[l(We,{color:"transparent",class:"border-b pr-4"},{default:a(()=>[l(Ae,{modelValue:s.value.enabled,"onUpdate:modelValue":r[0]||(r[0]=p=>s.value.enabled=p),"hide-details":"",color:"primary",class:"pl-4"},null,8,["modelValue"]),l(Ge,null,{default:a(()=>[f(A(i.$t("settings.dsp.configure_on",{name:ve.value})),1)]),_:1}),l(Al,{"offset-y":"",transition:"slide-y-transition"},{activator:a(({props:p})=>[l(B,ql(p,{class:["mr-4",q()]}),{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[19]||(r[19]=[f(" mdi-tray-arrow-down ",-1)])]),_:1}),z("span",Kl,A(i.$t("settings.dsp.presets.load")),1)]),_:1},16,["class"])]),default:a(()=>[l(Fl,null,{default:a(()=>[D.value.length===0?(c(),$(ze,{key:0},{default:a(()=>[l(Ue,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.empty_warning")),1)]),_:1})]),_:1})):(c(!0),pe(fe,{key:1},Ee(D.value,p=>(c(),$(ze,{key:p.preset_id,onClick:ce=>W(p)},{append:a(()=>[l(B,{icon:"mdi-delete",variant:"text",density:"compact",onClick:Ze(ce=>x(p.preset_id),["stop"])},null,8,["onClick"])]),default:a(()=>[l(Ue,null,{default:a(()=>[f(A(p.name),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1}),l(B,{class:Q(q()),onClick:r[1]||(r[1]=p=>w.value=!0)},{default:a(()=>[l(K,{class:"p-0 ms-md-n1 me-md-2"},{default:a(()=>[...r[20]||(r[20]=[f(" mdi-content-save ",-1)])]),_:1}),z("span",Yl,A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["class"])]),_:1}),l(tl,{class:"pa-4"},{default:a(()=>[s.value.enabled?G("",!0):(c(),$(Ol,{key:0,type:"info",class:"mt-4",color:"transparent"},{default:a(()=>[f(A(i.$t("settings.dsp.disabled_message")),1)]),_:1})),l(al,{class:Q([{"justify-center":h(k)},"flex-nowrap"])},{default:a(()=>[!h(k)||m.value===null?(c(),$($e,{key:0,class:Q(["flex-grow-0 flex-shrink-0",{"border-e pr-4":!h(k)}]),"align-self":"start"},{default:a(()=>[l(Hl,{dsp:s.value,selected:m.value,onOnSelect:I,onOnAddFilter:r[2]||(r[2]=p=>H.value=!0),onOnMoveFilter:r[3]||(r[3]=p=>re(p.index,p.direction)),onOnDeleteFilter:ue},null,8,["dsp","selected"])]),_:1},8,["class"])):G("",!0),m.value!=null?(c(),$($e,{key:1,style:{"min-width":"0"}},{default:a(()=>[l(We,{density:"compact",color:i.$vuetify.theme.current.dark?"surface":"surface-light",class:"border-b"},{default:a(()=>[h(k)?(c(),$(B,{key:0,class:"hidden-xs-only",icon:"",onClick:r[4]||(r[4]=p=>m.value=null)},{default:a(()=>[l(K,null,{default:a(()=>[...r[21]||(r[21]=[f("mdi-arrow-left",-1)])]),_:1})]),_:1})):G("",!0),l(Ge,null,{default:a(()=>[f(A(oe(m.value)),1)]),_:1}),typeof m.value=="number"&&!h(k)&&m.value>0?(c(),$(B,{key:1,icon:"",onClick:r[5]||(r[5]=p=>re(m.value,"up"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[22]||(r[22]=[f("mdi-arrow-up",-1)])]),_:1})]),_:1})):G("",!0),typeof m.value=="number"&&!h(k)&&m.value<s.value.filters.length-1?(c(),$(B,{key:2,icon:"",onClick:r[6]||(r[6]=p=>re(m.value,"down"))},{default:a(()=>[l(K,null,{default:a(()=>[...r[23]||(r[23]=[f("mdi-arrow-down",-1)])]),_:1})]),_:1})):G("",!0),typeof m.value=="number"?(c(),$(Ae,{key:3,modelValue:s.value.filters[m.value].enabled,"onUpdate:modelValue":r[7]||(r[7]=p=>s.value.filters[m.value].enabled=p),"hide-details":"",color:"primary",class:"mr-4"},null,8,["modelValue"])):G("",!0),typeof m.value=="number"?(c(),$(B,{key:4,icon:"",onClick:r[8]||(r[8]=p=>ue(m.value))},{default:a(()=>[l(K,null,{default:a(()=>[...r[24]||(r[24]=[f("mdi-delete",-1)])]),_:1})]),_:1})):G("",!0)]),_:1},8,["color"]),m.value==="input"?(c(),$(te,{key:0,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.input_gain,"onUpdate:modelValue":r[9]||(r[9]=p=>s.value.input_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):m.value==="output"?(c(),$(te,{key:1,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[l(J,{modelValue:s.value.output_gain,"onUpdate:modelValue":r[10]||(r[10]=p=>s.value.output_gain=p),type:"gain"},null,8,["modelValue"])]),_:1},8,["color"])):(c(),$(te,{key:2,flat:"",color:i.$vuetify.theme.current.dark?"surface":"surface-light"},{default:a(()=>[s.value.filters[m.value].type===h(ne).PARAMETRIC_EQ?(c(),$(Wl,{key:0,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[11]||(r[11]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):G("",!0),s.value.filters[m.value].type===h(ne).TONE_CONTROL?(c(),$(jl,{key:1,modelValue:s.value.filters[m.value],"onUpdate:modelValue":r[12]||(r[12]=p=>s.value.filters[m.value]=p)},null,8,["modelValue"])):G("",!0)]),_:1},8,["color"]))]),_:1})):G("",!0)]),_:1},8,["class"])]),_:1}),l(je,{modelValue:w.value,"onUpdate:modelValue":r[15]||(r[15]=p=>w.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(Ne,null,{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1}),l(ae,null,{default:a(()=>[l(ll,{modelValue:u.value,"onUpdate:modelValue":r[13]||(r[13]=p=>u.value=p),label:i.$t("settings.dsp.presets.name"),placeholder:i.$t("settings.dsp.presets.name_placeholder"),variant:"outlined"},null,8,["modelValue","label","placeholder"])]),_:1}),l(xe,null,{default:a(()=>[l(Te),l(B,{onClick:r[14]||(r[14]=p=>w.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",disabled:!u.value.trim(),onClick:R},{default:a(()=>[f(A(i.$t("settings.dsp.presets.save")),1)]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),l(je,{modelValue:H.value,"onUpdate:modelValue":r[18]||(r[18]=p=>H.value=p),"max-width":"300"},{default:a(()=>[l(te,null,{default:a(()=>[l(Ne,null,{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1}),l(ae,null,{default:a(()=>[l(be,{modelValue:N.value,"onUpdate:modelValue":r[16]||(r[16]=p=>N.value=p),items:h(E),label:i.$t("settings.dsp.filter.type")},null,8,["modelValue","items","label"])]),_:1}),l(xe,null,{default:a(()=>[l(Te),l(B,{onClick:r[17]||(r[17]=p=>H.value=!1)},{default:a(()=>[f(A(i.$t("cancel")),1)]),_:1}),l(B,{color:"primary",onClick:ye},{default:a(()=>[f(A(i.$t("settings.dsp.filter.add")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])])):G("",!0)}});export{ot as default};
@@ -1 +1 @@
1
- import{ay as S,J as b,a3 as I,aP as l,bb as N,a4 as P,L as _,az as V,aA as r,o as s,aG as i,aB as v,aI as m,aD as u,E as p,bg as k,bh as f,aN as w,bi as y,c0 as U,aU as h,bH as $,c3 as j,bV as x,M as H,aS as L,b8 as O,bx as D,bN as z,aE as F}from"./index-Ci6ypq6O.js";import{E as G}from"./EditConfig-DgPHHjUH.js";import{n as J}from"./index.browser-OxPLOBIU.js";import{V as R}from"./VSwitch-jlMLuij2.js";import"./VForm-DkfI6S-G.js";import"./VExpansionPanels-Hd3nRlf_.js";import"./VDialog-DofGN8Yd.js";import"./VAlert-Kj2m6TCt.js";import"./VSlider-D1oP09L0.js";import"./VSelect-CMxVGu2h.js";import"./VVirtualScroll-RawLIXgS.js";import"./VCheckboxBtn-lg4Bkg3S.js";import"./VSelectionControl-CuEKzbGp.js";const q={key:0},K={id:"auth",href:"",target:"_blank"},re=S({__name:"EditProvider",props:{instanceId:{}},setup(C){const M=F(),a=b(),g=J(11),d=b(!1),c=b(!1),A=C;I(()=>{const n=l.subscribe(N.AUTH_SESSION,e=>{if(e.object_id!==g)return;const t=e.data;c.value=!0,window.setTimeout(()=>{const o=document.getElementById("auth");o.setAttribute("href",t),o.click()},100)});P(n)}),_(()=>A.instanceId,async n=>{n&&(a.value=await l.getProviderConfig(n))},{immediate:!0});const E=async function(n){d.value=!0,n.enabled=a.value.enabled,n.name=a.value.name||null,l.saveProviderConfig(a.value.domain,n,a.value.instance_id).then(()=>{M.push({name:"providersettings"})}).catch(e=>{alert(e)}).finally(()=>{d.value=!1,c.value=!1})},T=async function(n,e){d.value=!0;for(const t of Object.values(a.value.values))t.value!==void 0&&e[t.key]==null&&(e[t.key]=t.value);e.session_id=g,l.getProviderConfigEntries(a.value.domain,a.value.instance_id,n,e).then(t=>{a.value.values={};for(const o of t)a.value.values[o.key]=o}).catch(t=>{alert(t)}).finally(()=>{d.value=!1,c.value=!1})},B=function(n){const e=[],{t}=z();for(const o of n)o.includes("@")?e.push(`[${o.replace("@","")}](https://github.com/${o.replace("@","")})`):e.push(o);return`**${t("settings.codeowners")}**: `+e.join(" / ")};return(n,e)=>(r(),V("section",null,[s(j,null,{default:i(()=>[a.value&&u(l).providerManifests[a.value.domain]?(r(),V("div",q,[s(k,null,{default:i(()=>[f(w(n.$t("settings.setup_provider",[u(l).providerManifests[a.value.domain].name])),1)]),_:1}),s(y,{style:{"white-space":"normal"}},{default:i(()=>[f(w(u(l).providerManifests[a.value.domain].description),1)]),_:1}),e[3]||(e[3]=p("br",null,null,-1)),u(l).providerManifests[a.value.domain].codeowners.length?(r(),m(y,{key:0,innerHTML:u(U)(B(u(l).providerManifests[a.value.domain].codeowners))},null,8,["innerHTML"])):v("",!0),e[4]||(e[4]=p("br",null,null,-1)),s(h),e[5]||(e[5]=p("br",null,null,-1)),e[6]||(e[6]=p("br",null,null,-1)),"name"in a.value?(r(),m($,{key:1,modelValue:a.value.name,"onUpdate:modelValue":e[0]||(e[0]=t=>a.value.name=t),placeholder:u(l).getProvider(a.value.instance_id)?.name,label:n.$t("settings.provider_name"),variant:"outlined",clearable:""},null,8,["modelValue","placeholder","label"])):v("",!0),"enabled"in a.value?(r(),m(R,{key:2,modelValue:a.value.enabled,"onUpdate:modelValue":e[1]||(e[1]=t=>a.value.enabled=t),label:n.$t("settings.enable_provider"),color:"primary",disabled:!u(l).providerManifests[a.value.domain]?.allow_disable},null,8,["modelValue","label","disabled"])):v("",!0)])):v("",!0),s(h),a.value?(r(),m(G,{key:1,"config-entries":Object.values(a.value.values),disabled:!a.value.enabled,onSubmit:E,onAction:T},null,8,["config-entries","disabled"])):v("",!0)]),_:1}),s(D,{modelValue:d.value,"onUpdate:modelValue":e[2]||(e[2]=t=>d.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:i(()=>[c.value?(r(),m(L,{key:0,style:{"background-color":"white"}},{default:i(()=>[s(k,null,{default:i(()=>[...e[7]||(e[7]=[f("Authenticating...",-1)])]),_:1}),s(y,null,{default:i(()=>[...e[8]||(e[8]=[f("A new tab/popup should be opened where you can authenticate",-1)])]),_:1}),s(x,null,{default:i(()=>[p("a",K,[s(H,null,{default:i(()=>[...e[9]||(e[9]=[f("Click here if the popup did not open",-1)])]),_:1})])]),_:1})]),_:1})):(r(),m(O,{key:1,indeterminate:"",size:"64",color:"primary"}))]),_:1},8,["modelValue"])]))}});export{re as default};
1
+ import{ay as S,J as b,a3 as I,aP as l,bb as N,a4 as P,L as _,az as V,aA as r,o as s,aG as i,aB as v,aI as m,aD as u,E as p,bg as k,bh as f,aN as w,bi as y,c0 as U,aU as h,bH as $,c3 as j,bV as x,M as H,aS as L,b8 as O,bx as D,bN as z,aE as F}from"./index-Co2Il0FF.js";import{E as G}from"./EditConfig-DB9H12KG.js";import{n as J}from"./index.browser-OxPLOBIU.js";import{V as R}from"./VSwitch-CbeBX82z.js";import"./VForm-lwT5Vjdc.js";import"./VExpansionPanels-ynbmIXCh.js";import"./VDialog-oA-qD8nK.js";import"./VAlert-CqZcE68W.js";import"./VSlider-SvfKY3nA.js";import"./VSelect-BULCN41e.js";import"./VVirtualScroll-Bmp7pEa7.js";import"./VCheckboxBtn-pFfosXS7.js";import"./VSelectionControl-BU644enI.js";const q={key:0},K={id:"auth",href:"",target:"_blank"},re=S({__name:"EditProvider",props:{instanceId:{}},setup(C){const M=F(),a=b(),g=J(11),d=b(!1),c=b(!1),A=C;I(()=>{const n=l.subscribe(N.AUTH_SESSION,e=>{if(e.object_id!==g)return;const t=e.data;c.value=!0,window.setTimeout(()=>{const o=document.getElementById("auth");o.setAttribute("href",t),o.click()},100)});P(n)}),_(()=>A.instanceId,async n=>{n&&(a.value=await l.getProviderConfig(n))},{immediate:!0});const E=async function(n){d.value=!0,n.enabled=a.value.enabled,n.name=a.value.name||null,l.saveProviderConfig(a.value.domain,n,a.value.instance_id).then(()=>{M.push({name:"providersettings"})}).catch(e=>{alert(e)}).finally(()=>{d.value=!1,c.value=!1})},T=async function(n,e){d.value=!0;for(const t of Object.values(a.value.values))t.value!==void 0&&e[t.key]==null&&(e[t.key]=t.value);e.session_id=g,l.getProviderConfigEntries(a.value.domain,a.value.instance_id,n,e).then(t=>{a.value.values={};for(const o of t)a.value.values[o.key]=o}).catch(t=>{alert(t)}).finally(()=>{d.value=!1,c.value=!1})},B=function(n){const e=[],{t}=z();for(const o of n)o.includes("@")?e.push(`[${o.replace("@","")}](https://github.com/${o.replace("@","")})`):e.push(o);return`**${t("settings.codeowners")}**: `+e.join(" / ")};return(n,e)=>(r(),V("section",null,[s(j,null,{default:i(()=>[a.value&&u(l).providerManifests[a.value.domain]?(r(),V("div",q,[s(k,null,{default:i(()=>[f(w(n.$t("settings.setup_provider",[u(l).providerManifests[a.value.domain].name])),1)]),_:1}),s(y,{style:{"white-space":"normal"}},{default:i(()=>[f(w(u(l).providerManifests[a.value.domain].description),1)]),_:1}),e[3]||(e[3]=p("br",null,null,-1)),u(l).providerManifests[a.value.domain].codeowners.length?(r(),m(y,{key:0,innerHTML:u(U)(B(u(l).providerManifests[a.value.domain].codeowners))},null,8,["innerHTML"])):v("",!0),e[4]||(e[4]=p("br",null,null,-1)),s(h),e[5]||(e[5]=p("br",null,null,-1)),e[6]||(e[6]=p("br",null,null,-1)),"name"in a.value?(r(),m($,{key:1,modelValue:a.value.name,"onUpdate:modelValue":e[0]||(e[0]=t=>a.value.name=t),placeholder:u(l).getProvider(a.value.instance_id)?.name,label:n.$t("settings.provider_name"),variant:"outlined",clearable:""},null,8,["modelValue","placeholder","label"])):v("",!0),"enabled"in a.value?(r(),m(R,{key:2,modelValue:a.value.enabled,"onUpdate:modelValue":e[1]||(e[1]=t=>a.value.enabled=t),label:n.$t("settings.enable_provider"),color:"primary",disabled:!u(l).providerManifests[a.value.domain]?.allow_disable},null,8,["modelValue","label","disabled"])):v("",!0)])):v("",!0),s(h),a.value?(r(),m(G,{key:1,"config-entries":Object.values(a.value.values),disabled:!a.value.enabled,onSubmit:E,onAction:T},null,8,["config-entries","disabled"])):v("",!0)]),_:1}),s(D,{modelValue:d.value,"onUpdate:modelValue":e[2]||(e[2]=t=>d.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:i(()=>[c.value?(r(),m(L,{key:0,style:{"background-color":"white"}},{default:i(()=>[s(k,null,{default:i(()=>[...e[7]||(e[7]=[f("Authenticating...",-1)])]),_:1}),s(y,null,{default:i(()=>[...e[8]||(e[8]=[f("A new tab/popup should be opened where you can authenticate",-1)])]),_:1}),s(x,null,{default:i(()=>[p("a",K,[s(H,null,{default:i(()=>[...e[9]||(e[9]=[f("Click here if the popup did not open",-1)])]),_:1})])]),_:1})]),_:1})):(r(),m(O,{key:1,indeterminate:"",size:"64",color:"primary"}))]),_:1},8,["modelValue"])]))}});export{re as default};
@@ -0,0 +1 @@
1
+ import{ay as v,J as d,a3 as b,cH as s,cI as S,aT as e,aP as I,cJ as k,az as E,aA as m,o as r,aG as p,aI as h,aB as w,c3 as N,b8 as T,bx as C,aE as V}from"./index-Co2Il0FF.js";import{E as q}from"./EditConfig-DB9H12KG.js";import{D as g}from"./constants-CXMxJR4j.js";import"./VForm-lwT5Vjdc.js";import"./VExpansionPanels-ynbmIXCh.js";import"./VDialog-oA-qD8nK.js";import"./VAlert-CqZcE68W.js";import"./VSwitch-CbeBX82z.js";import"./VSelectionControl-BU644enI.js";import"./VSlider-SvfKY3nA.js";import"./VSelect-BULCN41e.js";import"./VVirtualScroll-Bmp7pEa7.js";import"./VCheckboxBtn-pFfosXS7.js";const $=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(I.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=k();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(N,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(C,{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(T,{indeterminate:"",size:"64",color:"primary"})]),_:1},8,["modelValue"])]))}});export{$ as default};
@@ -0,0 +1 @@
1
+ import{C as A}from"./Container-CxScoaQr.js";import{W as D}from"./WidgetRow-CI7rsYFv.js";import{u as T}from"./userPreferences-BuMozdux.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-Co2Il0FF.js";import{a as ae}from"./PlayerCard-CAzWxRts.js";import{V as se}from"./VToolbar-p_Wr_MDA.js";import{T as re}from"./Toolbar-B6JfB3ZK.js";import"./index-kQIztB-E.js";import"./PanelviewItemCompact-DqrW-65j.js";import"./MediaItemThumb-Dw_UVqvI.js";import"./VAlert-CqZcE68W.js";import"./VCheckboxBtn-pFfosXS7.js";import"./VSelectionControl-BU644enI.js";import"./Button-BiCjBB20.js";import"./VSlider-SvfKY3nA.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})]))}}),Pe=R(ue,[["__scopeId","data-v-22a0cc44"]]);export{Pe as default};