platypush/platypush/backend/http/webapp/dist/static/js/5143.0fd82730.js

2 lines
41 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[5143],{5143:function(e,t,s){s.r(t),s.d(t,{default:function(){return ws}});var l=s(6252),a=s(3577),i=s(9963);const n=e=>((0,l.dD)("data-v-7c07f13e"),e=e(),(0,l.Cn)(),e),c={key:0,class:"nav-container mobile"},o={class:"nav-container from tablet"},r={class:"view-container"},d={class:"track-info-container"},u={key:0,class:"track-info-content"},h={key:0,class:"row file"},y=n((()=>(0,l._)("div",{class:"col-3 attr"},"File",-1))),p=["textContent"],k={key:1,class:"row artist"},m=n((()=>(0,l._)("div",{class:"col-3 attr"},"Artist",-1))),v={class:"col-9 value"},f=["href","textContent"],g={key:2,class:"row track-title"},w=n((()=>(0,l._)("div",{class:"col-3 attr"},"Title",-1))),b=["textContent"],C={key:3,class:"row album"},_=n((()=>(0,l._)("div",{class:"col-3 attr"},"Album",-1))),T={class:"col-9 value"},D=["href","textContent"],$={key:4,class:"row date"},x=n((()=>(0,l._)("div",{class:"col-3 attr"},"Date",-1))),P=["textContent"],S={key:5,class:"row duration"},A=n((()=>(0,l._)("div",{class:"col-3 attr"},"Duration",-1))),I=["textContent"],q={key:6,class:"row track"},R=n((()=>(0,l._)("div",{class:"col-3 attr"},"Track",-1))),M=["textContent"],V={key:7,class:"row disc"},L=n((()=>(0,l._)("div",{class:"col-3 attr"},"Disc",-1))),N=["textContent"],j={key:8,class:"row url"},W=n((()=>(0,l._)("div",{class:"col-3 attr"},"URL",-1))),E={class:"col-9 value"},O=["href","textContent"],B={class:"playlists-modal-container"},z={class:"filter"},Z={class:"playlists"},F=["checked","onChange"],H=["textContent"],K=n((()=>(0,l._)("i",{class:"fa fa-plus"},null,-1)));function U(e,t,s,n,U,Y){const Q=(0,l.up)("Loading"),G=(0,l.up)("Nav"),J=(0,l.up)("Playlist"),X=(0,l.up)("Playlists"),ee=(0,l.up)("Search"),te=(0,l.up)("Library"),se=(0,l.up)("MediaView"),le=(0,l.up)("Modal"),ae=(0,l.up)("FormFooter");return(0,l.wg)(),(0,l.iD)(l.HY,null,[s.loading?((0,l.wg)(),(0,l.j4)(Q,{key:0})):((0,l.wg)(),(0,l.j4)(se,{key:1,"plugin-name":s.pluginName,status:s.status,track:Y.track,onPlay:t[34]||(t[34]=t=>e.$emit("play",t)),onPause:t[35]||(t[35]=t=>e.$emit("pause")),onStop:t[36]||(t[36]=t=>e.$emit("stop")),onPrevious:t[37]||(t[37]=t=>e.$emit("previous")),onNext:t[38]||(t[38]=t=>e.$emit("next")),onSetVolume:t[39]||(t[39]=t=>e.$emit("set-volume",t)),onSeek:t[40]||(t[40]=t=>e.$emit("seek",t)),onConsume:t[41]||(t[41]=t=>e.$emit("consume",t)),onRepeat:t[42]||(t[42]=t=>e.$emit("repeat",t)),onRandom:t[43]||(t[43]=t=>e.$emit("random",t)),onSearch:Y.search},{default:(0,l.w5)((()=>[(0,l._)("main",null,[U.navVisible?((0,l.wg)(),(0,l.iD)("div",c,[(0,l.Wm)(G,{"selected-view":U.selectedView,onInput:t[0]||(t[0]=e=>U.selectedView=e),onToggle:t[1]||(t[1]=e=>U.navVisible=!U.navVisible)},null,8,["selected-view"])])):(0,l.kq)("",!0),(0,l._)("div",o,[(0,l.Wm)(G,{"selected-view":U.selectedView,onInput:t[2]||(t[2]=e=>U.selectedView=e),onToggle:t[3]||(t[3]=e=>U.navVisible=!U.navVisible)},null,8,["selected-view"])]),(0,l._)("div",r,["playing"===U.selectedView?((0,l.wg)(),(0,l.j4)(J,{key:0,tracks:s.tracks,status:s.status,loading:s.loading,devices:s.devices,"selected-device":s.selectedDevice,"active-device":s.activeDevice,"show-nav-button":!U.navVisible,"with-clear":!0,"with-save":!0,"with-swap":!0,onPlay:t[4]||(t[4]=t=>e.$emit("play",t)),onClear:t[5]||(t[5]=t=>e.$emit("clear")),onSwap:t[6]||(t[6]=t=>e.$emit("swap-tracks",t)),onAdd:t[7]||(t[7]=t=>e.$emit("add-to-tracklist",t)),onRemove:t[8]||(t[8]=t=>e.$emit("remove-from-tracklist",t)),onMove:t[9]||(t[9]=t=>e.$emit("tracklist-move",t)),onSave:t[10]||(t[10]=t=>e.$emit("tracklist-save",t)),onInfo:t[11]||(t[11]=t=>e.$emit("info",t)),onAddToPlaylist:Y.openAddToPlaylist,onSearch:Y.search,onToggleNav:t[12]||(t[12]=e=>U.navVisible=!U.navVisible),onRefreshStatus:Y.refreshStatus,onSelectDevice:Y.selectDevice},null,8,["tracks","status","loading","devices","selected-device","active-device","show-nav-button","onAddToPlaylist","onSearch","onRefreshStatus","onSelectDevice"])):"playlists"===U.selectedView?((0,l.wg)(),(0,l.j4)(X,{key:1,playlists:s.playlists,loading:s.loading,devices:s.devices,status:s.status,"selected-device":s.selectedDevice,"active-device":s.activeDevice,"edited-playlist":s.editedPlaylist,tracks:s.editedPlaylistTracks,"show-nav-button":!U.navVisible,onPlay:t[13]||(t[13]=t=>e.$emit("play-playlist",t)),onLoad:t[14]||(t[14]=t=>e.$emit("load-playlist",t)),onRemove:t[15]||(t[15]=t=>e.$emit("remove-playlist",t)),onPlaylistEdit:t[16]||(t[16]=t=>e.$emit("playlist-edit",t)),onLoadTracks:t[17]||(t[17]=t=>e.$emit("add-to-tracklist-from-edited-playlist",t)),onRemoveTrack:t[18]||(t[18]=t=>e.$emit("remove-from-playlist",t)),onInfo:t[19]||(t[19]=t=>e.$emit("info",t)),onPlaylistAdd:t[20]||(t[20]=t=>e.$emit("playlist-add",t)),onAddToPlaylist:Y.openAddToPlaylist,onTrackMove:t[21]||(t[21]=t=>e.$emit("playlist-track-move",t)),onSearch:Y.search,onToggleNav:t[22]||(t[22]=e=>U.navVisible=!U.navVisible),onRefreshStatus:Y.refreshStatus,onSelectDevice:Y.selectDevice},null,8,["playlists","loading","devices","status","selected-device","active-device","edited-playlist","tracks","show-nav-button","onAddToPlaylist","onSearch","onRefreshStatus","onSelectDevice"])):"search"===U.selectedView?((0,l.wg)(),(0,l.j4)(ee,{key:2,loading:s.loading,results:s.searchResults,devices:s.devices,"selected-device":s.selectedDevice,"active-device":s.activeDevice,"show-nav-button":!U.navVisible,onSearch:Y.search,onClear:t[23]||(t[23]=t=>e.$emit("search-clear")),onInfo:t[24]||(t[24]=t=>e.$emit("info",t)),onPlay:t[25]||(t[25]=t=>e.$emit("play",t)),onLoad:t[26]||(t[26]=t=>e.$emit("add-to-tracklist",t)),onAddToPlaylist:Y.openAddToPlaylist,onRefreshStatus:Y.refreshStatus,onToggleNav:t[27]||(t[27]=e=>U.navVisible=!U.navVisible),onSelectDevice:Y.selectDevice},null,8,["loading","results","devices","selected-device","active-device","show-nav-button","onSearch","onAddToPlaylist","onRefreshStatus","onSelectDevice"])):"library"===U.selectedView?((0,l.wg)(),(0,l.j4)(te,{key:3,loading:s.loading,results:s.libraryResults,path:s.path,devices:s.devices,"selected-device":s.selectedDevice,"active-device":s.activeDevice,"show-nav-button":!U.navVisible,onSearch:Y.search,onClear:t[28]||(t[28]=t=>e.$emit("search-clear")),onInfo:t[29]||(t[29]=t=>e.$emit("info",t)),onPlay:t[30]||(t[30]=t=>e.$emit("play",t)),onLoad:t[31]||(t[31]=t=>e.$emit("add-to-tracklist",t)),onAddToPlaylist:Y.openAddToPlaylist,onCd:t[32]||(t[32]=t=>e.$emit("cd",t)),onToggleNav:t[33]||(t[33]=e=>U.navVisible=!U.navVisible),onRefreshStatus:Y.refreshStatus,onSelectDevice:Y.selectDevice},null,8,["loading","results","path","devices","selected-device","active-device","show-nav-button","onSearch","onAddToPlaylist","onRefreshStatus","onSelectDevice"])):(0,l.kq)("",!0)])])])),_:1},8,["plugin-name","status","track","onSearch"])),(0,l._)("div",d,[(0,l.Wm)(le,{title:"Track info",ref:"trackInfo"},{default:(0,l.w5)((()=>[s.trackInfo?((0,l.wg)(),(0,l.iD)("div",u,[s.trackInfo.file?((0,l.wg)(),(0,l.iD)("div",h,[y,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(s.trackInfo.file)},null,8,p)])):(0,l.kq)("",!0),s.trackInfo.artist?((0,l.wg)(),(0,l.iD)("div",k,[m,(0,l._)("div",v,[(0,l._)("a",{href:e.$route.fullPath,textContent:(0,a.zw)(s.trackInfo.artist),onClick:t[44]||(t[44]=(0,i.iM)((e=>Y.search({artist:s.trackInfo.artist})),["prevent"]))},null,8,f)])])):(0,l.kq)("",!0),s.trackInfo.title?((0,l.wg)(),(0,l.iD)("div",g,[w,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(s.trackInfo.title)},null,8,b)])):(0,l.kq)("",!0),s.trackInfo.album?((0,l.wg)(),(0,l.iD)("div",C,[_,(0,l._)("div",T,[(0,l._)("a",{href:e.$route.fullPath,textContent:(0,a.zw)(s.trackInfo.album),onClick:t[45]||(t[45]=(0,i.iM)((e=>Y.search({artist:s.trackInfo.artist,album:s.trackInfo.album})),["prevent"]))},null,8,D)])])):(0,l.kq)("",!0),s.trackInfo.date?((0,l.wg)(),(0,l.iD)("div",$,[x,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(s.trackInfo.date)},null,8,P)])):(0,l.kq)("",!0),s.trackInfo.time?((0,l.wg)(),(0,l.iD)("div",S,[A,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(e.convertTime(s.trackInfo.time))},null,8,I)])):(0,l.kq)("",!0),s.trackInfo.track?((0,l.wg)(),(0,l.iD)("div",q,[R,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(s.trackInfo.track)},null,8,M)])):(0,l.kq)("",!0),s.trackInfo.disc?((0,l.wg)(),(0,l.iD)("div",V,[L,(0,l._)("div",{class:"col-9 value",textContent:(0,a.zw)(s.trackInfo.disc)},null,8,N)])):(0,l.kq)("",!0),s.trackInfo.url?((0,l.wg)(),(0,l.iD)("div",j,[W,(0,l._)("div",E,[(0,l._)("a",{href:s.trackInfo.url,textContent:(0,a.zw)(s.trackInfo.uri||s.trackInfo.url),target:"_blank"},null,8,O)])])):(0,l.kq)("",!0)])):(0,l.kq)("",!0)])),_:1},512)]),(0,l._)("div",B,[(0,l.Wm)(le,{title:"Playlists",ref:"playlistsModal",onClose:t[48]||(t[48]=e=>U.addToPlaylistTrack=null),onOpen:t[49]||(t[49]=e=>U.selectedPlaylists=[...Array(s.playlists.length).keys()].map((()=>!1)))},{default:(0,l.w5)((()=>[(0,l._)("div",z,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"search",placeholder:"Filter","onUpdate:modelValue":t[46]||(t[46]=e=>U.playlistFilter=e)},null,512),[[i.nr,U.playlistFilter]])])]),(0,l._)("div",Z,[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.playlists,((e,t)=>((0,l.wg)(),(0,l.iD)("label",{class:(0,a.C_)(["row playlist",{hidden:U.playlistFilter?.length>0&&e.name.toLowerCase().indexOf(U.playlistFilter.toLowerCase())<0}]),key:t},[(0,l._)("input",{type:"checkbox",checked:U.selectedPlaylists[t],onChange:e=>U.selectedPlaylists[t]=e.target.checked},null,40,F),(0,l._)("span",{class:"name",textContent:(0,a.zw)(e.name)},null,8,H)],2)))),128))]),(0,l.Wm)(ae,null,{default:(0,l.w5)((()=>[(0,l._)("button",{onClick:t[47]||(t[47]=(...e)=>Y.addToPlaylist&&Y.addToPlaylist(...e))},[K,(0,l.Uk)("   Add ")])])),_:1})])),_:1},512)])],64)}const Y={class:"form-footer"};function Q(e,t,s,a,i,n){return(0,l.wg)(),(0,l.iD)("div",Y,[(0,l.WI)(e.$slots,"default",{},void 0,!0)])}var G={name:"FormFooter"},J=s(3744);const X=(0,J.Z)(G,[["render",Q],["__scopeId","data-v-2495ce8a"]]);var ee=X,te=s(6791),se=s(3493),le=s(1065),ae=s(1420);const ie=e=>((0,l.dD)("data-v-0896abbc"),e=e(),(0,l.Cn)(),e),ne=ie((()=>(0,l._)("i",{class:"fa fa-bars"},null,-1))),ce=[ne],oe=["title","onClick"];function re(e,t,s,i,n,c){return(0,l.wg)(),(0,l.iD)("nav",null,[(0,l._)("button",{class:"menu-button mobile",onClick:t[0]||(t[0]=t=>e.$emit("toggle"))},ce),((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.views,((t,i)=>((0,l.wg)(),(0,l.iD)("li",{key:i,title:t.displayName,class:(0,a.C_)({selected:i===s.selectedView}),onClick:t=>e.$emit("input",i)},[(0,l._)("i",{class:(0,a.C_)(t.iconClass)},null,2)],10,oe)))),128))])}var de={name:"Nav",emits:["input","toggle"],props:{selectedView:{type:String},collapsed:{type:Boolean,default:!1},views:{type:Object,default:()=>({playing:{iconClass:"fas fa-play",displayName:"Queue"},search:{iconClass:"fas fa-search",displayName:"Search"},playlists:{iconClass:"fas fa-list-ul",displayName:"Playlists"},library:{iconClass:"fas fa-compact-disc",displayName:"Library"}})}}};const ue=(0,J.Z)(de,[["render",re],["__scopeId","data-v-0896abbc"]]);var he=ue;const ye=e=>((0,l.dD)("data-v-1f4db674"),e=e(),(0,l.Cn)(),e),pe={key:1,class:"playlist fade-in"},ke={class:"header-container"},me={class:"col-7 filter"},ve=ye((()=>(0,l._)("i",{class:"fas fa-arrow-left"},null,-1))),fe=[ve],ge={class:"col-5 buttons"},we=ye((()=>(0,l._)("i",{class:"fas fa-bars"},null,-1))),be=[we],Ce={key:0,class:"no-content"},_e=["onDragstart","onDragend","onDragover","set","data-index","onClick","onDblclick"],Te={class:"col-10"},De={class:"title"},$e={key:0,class:"artist"},xe=["href","textContent"],Pe={key:1,class:"album"},Se=["href","textContent"],Ae={class:"col-2 right-side"},Ie=["textContent"],qe={class:"actions"};function Re(e,t,s,n,c,o){const r=(0,l.up)("Loading"),d=(0,l.up)("DropdownItem"),u=(0,l.up)("Dropdown"),h=(0,l.up)("MusicHeader");return s.loading?((0,l.wg)(),(0,l.j4)(r,{key:0})):((0,l.wg)(),(0,l.iD)("div",pe,[(0,l._)("div",ke,[(0,l.Wm)(h,{ref:"header"},{default:(0,l.w5)((()=>[(0,l._)("div",me,[s.withBack?((0,l.wg)(),(0,l.iD)("button",{key:0,class:"back-btn",title:"Back",onClick:t[0]||(t[0]=t=>e.$emit("back"))},fe)):(0,l.kq)("",!0),(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"search",placeholder:"Filter","onUpdate:modelValue":t[1]||(t[1]=e=>c.filter=e)},null,512),[[i.nr,c.filter]])])]),(0,l._)("div",ge,[s.showNavButton?((0,l.wg)(),(0,l.iD)("button",{key:0,class:"mobile",title:"Menu",onClick:t[2]||(t[2]=t=>e.$emit("toggle-nav"))},be)):(0,l.kq)("",!0),(0,l.Wm)(u,{title:"Actions","icon-class":"fa fa-ellipsis-h"},{default:(0,l.w5)((()=>[(0,l.Wm)(d,{text:"Add track","icon-class":"fa fa-plus",onClick:o.addTrack},null,8,["onClick"]),null!=s.devices?((0,l.wg)(),(0,l.j4)(d,{key:0,text:"Refresh status","icon-class":"fa fa-sync",onClick:t[3]||(t[3]=t=>e.$emit("refresh-status"))})):(0,l.kq)("",!0),s.withSave?((0,l.wg)(),(0,l.j4)(d,{key:1,text:"Save as playlist","icon-class":"fa fa-save",disabled:!s.tracks?.length,onClick:o.playlistSave},null,8,["disabled","onClick"])):(0,l.kq)("",!0),s.withSwap&&2===c.selectedTracks?.length?((0,l.wg)(),(0,l.j4)(d,{key:2,text:"Swap tracks","icon-class":"fa fa-retweet",onClick:t[4]||(t[4]=t=>e.$emit("swap",c.selectedTracks))})):(0,l.kq)("",!0),(0,l.Wm)(d,{text:c.selectionMode?"End selection":"Start selection","icon-class":"far fa-check-square",disabled:!s.tracks?.length,onClick:t[5]||(t[5]=e=>c.selectionMode=!c.selectionMode)},null,8,["text","disabled"]),(0,l.Wm)(d,{text:c.selectedTracks?.length===s.tracks?.length?"Unselect all":"Select all","icon-class":"fa fa-check-double",disabled:!s.tracks?.length,onClick:t[6]||(t[6]=e=>c.selectedTracks=c.selectedTracks.length===s.tracks.length?[]:[...Array(s.tracks.length).keys()])},null,8,["text","disabled"]),c.selectedTracks.length>0?((0,l.wg)(),(0,l.j4)(d,{key:3,text:"Remove track"+(c.selectedTracks.length>1?"s":""),"icon-class":"fa fa-trash",onClick:t[7]||(t[7]=t=>e.$emit("remove",[...new Set(c.selectedTracks)]))},null,8,["text"])):(0,l.kq)("",!0),s.withClear?((0,l.wg)(),(0,l.j4)(d,{key:4,text:"Clear playlist","icon-class":"fa fa-ban",disabled:!s.tracks?.length,onClick:t[8]||(t[8]=t=>e.$emit("clear"))},null,8,["disabled"])):(0,l.kq)("",!0)])),_:1}),Object.keys(s.devices||{}).length?((0,l.wg)(),(0,l.j4)(u,{key:1,title:"Players","icon-class":"fa fa-volume-up"},{default:(0,l.w5)((()=>[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.devices,((t,i)=>((0,l.wg)(),(0,l.j4)(d,{key:i,textContent:(0,a.zw)(t.name),"item-class":{active:s.activeDevice===i,selected:s.selectedDevice===i},"icon-class":"fa fa-volume-up",onClick:t=>e.$emit("select-device",i)},null,8,["textContent","item-class","onClick"])))),128))])),_:1})):(0,l.kq)("",!0)])])),_:1},512)]),(0,l._)("div",{class:"body",ref:"body",onScroll:t[12]||(t[12]=(...e)=>o.onScroll&&o.onScroll(...e))},[s.tracks?.length?(0,l.kq)("",!0):((0,l.wg)(),(0,l.iD)("div",Ce," No tracks are loaded ")),((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(o.displayedTrackIndices,(n=>((0,l.wg)(),(0,l.iD)("div",{class:(0,a.C_)(["row track",o.trackClass(n)]),onDragstart:e=>o.onTrackDragStart(n),onDragend:e=>o.onTrackDragEnd(n),onDragover:e=>o.onTrackDragOver(n),draggable:"true",set:e.track=s.tracks[n],key:n,"data-index":n,onClick:e=>o.onTrackClick(e,n),onDblclick:t=>e.$emit("play",{pos:n})},[(0,l._)("div",Te,[(0,l._)("div",De,[(0,l.Uk)((0,a.zw)(e.track.title||"[No Title]")+" ",1),s.status?.playingPos!==n||"play"!==s.status?.state&&"pause"!==s.status?.state?(0,l.kq)("",!0):((0,l.wg)(),(0,l.iD)("div",{key:0,class:(0,a.C_)(["playing-icon",{paused:"pause"===s.status?.state}])},[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)([...Array(3).keys()],(e=>((0,l.wg)(),(0,l.iD)("span",{key:e})))),128))],2))]),e.track.artist?((0,l.wg)(),(0,l.iD)("div",$e,[(0,l._)("a",{href:e.$route.fullPath,textContent:(0,a.zw)(e.track.artist),onClick:t[9]||(t[9]=(0,i.iM)((t=>e.$emit("search",{artist:e.track.artist})),["prevent"]))},null,8,xe)])):(0,l.kq)("",!0),e.track.album?((0,l.wg)(),(0,l.iD)("div",Pe,[(0,l._)("a",{href:e.$route.fullPath,textContent:(0,a.zw)(e.track.album),onClick:t[10]||(t[10]=(0,i.iM)((t=>e.$emit("search",{artist:e.track.artist,album:e.track.album})),["prevent"]))},null,8,Se)])):(0,l.kq)("",!0)]),(0,l._)("div",Ae,[(0,l._)("span",{class:"duration",textContent:(0,a.zw)(e.track.time?e.convertTime(e.track.time):"-:--")},null,8,Ie),(0,l._)("span",qe,[(0,l.Wm)(u,{title:"Actions","icon-class":"fa fa-ellipsis-h"},{default:(0,l.w5)((()=>[(0,l.Wm)(d,{text:"Play","icon-class":"fa fa-play",onClick:o.onMenuPlay},null,8,["onClick"]),s.withAddToQueue?((0,l.wg)(),(0,l.j4)(d,{key:0,text:"Add to queue","icon-class":"fa fa-plus",onClick:t=>e.$emit("add-to-queue",[...new Set([...c.selectedTracks,n])])},null,8,["onClick"])):(0,l.kq)("",!0),(0,l.Wm)(d,{text:"Add to playlist","icon-class":"fa fa-list-ul",onClick:t[11]||(t[11]=t=>e.$emit("add-to-playlist",e.track))}),(0,l.Wm)(d,{text:"Remove","icon-class":"fa fa-trash",onClick:t=>e.$emit("remove",[...new Set([...c.selectedTracks,n])])},null,8,["onClick"]),(0,l.Wm)(d,{text:"Info","icon-class":"fa fa-info",onClick:t=>e.$emit("info",s.tracks[n])},null,8,["onClick"])])),_:2},1024)])])],42,_e)))),128))],544)]))}s(7658);const Me={class:"header"};function Ve(e,t,s,a,i,n){return(0,l.wg)(),(0,l.iD)("div",Me,[(0,l.WI)(e.$slots,"default",{},void 0,!0)])}var Le={name:"Header"};const Ne=(0,J.Z)(Le,[["render",Ve],["__scopeId","data-v-7e4bd102"]]);var je=Ne,We=s(2787),Ee=s(815),Oe={name:"Playlist",mixins:[le.Z],components:{DropdownItem:Ee.Z,Dropdown:We.Z,MusicHeader:je,Loading:te.Z},emits:["add","add-to-playlist","add-to-queue","add-to-queue-and-play","back","clear","info","move","play","refresh-status","remove","save","search","select-device","swap","toggle-nav"],props:{tracks:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1},status:{type:Object,default:()=>{}},devices:{type:Object},selectedDevice:{type:String},activeDevice:{type:String},maxVisibleTracks:{type:Number,default:100},showNavButton:{type:Boolean,default:!1},withAddToQueue:{type:Boolean,default:!1},withBack:{type:Boolean,default:!1},withClear:{type:Boolean,default:!1},withSave:{type:Boolean,default:!1},withSwap:{type:Boolean,default:!1}},data(){return{selectionMode:!1,selectedTracks:[],filter:"",infoTrack:null,sourcePos:null,targetPos:null,centerPos:0,mounted:!1,scrollTimeout:null}},computed:{selectedTracksSet(){return new Set(this.selectedTracks)},trackIndicesByToken(){const e={};return this.tracks.forEach(((t,s)=>{const l=[t?.artist,t?.album,t?.title].filter((e=>e?.trim()?.length)).map((e=>e.trim().toLowerCase())).join(" ");e[l]||(e[l]=new Set),e[l].add(s)})),e},displayedTrackIndices(){let e=[...Array(this.tracks.length).keys()];if(this.filter?.length){const t=this.filter?.trim()?.replace(/\s+/g," ").toLowerCase(),s=new Set;Object.entries(this.trackIndicesByToken).forEach((([e,l])=>{e.indexOf(t)<0||s.add(...l)})),e=[...s],e.sort()}if(e.length>this.maxVisibleTracks){const t=Math.max(0,this.centerPos-Math.floor(this.maxVisibleTracks/2));e=e.slice(t,t+this.maxVisibleTracks)}return e}},methods:{onTrackClick(e,t){if(e.shiftKey){const e=this.selectedTracks.sort();e.length?t<e[0]?this.selectedTracks=[...this.selectedTracks,...[...Array(e[0]-t).keys()].map((e=>e+t))]:t>e[e.length-1]&&(this.selectedTracks=[...this.selectedTracks,...[...Array(t-e[e.length-1]+1).keys()].map((t=>t+e[e.length-1]))]):this.selectedTracks=[t]}else{const s=this.selectedTracks.indexOf(t);this.selectionMode||e.ctrlKey?s>=0?this.selectedTracks.splice(s,1):this.selectedTracks.push(t):this.selectedTracks=s>=0?[]:[t]}},trackClass(e){return{selected:this.selectedTracksSet.has(e),active:!this.withAddToQueue&&this.status?.playingPos===e}},addTrack(){const e=prompt("Item path or URL");e?.length&&this.$emit("add",e)},onMenuPlay(e){this.withAddToQueue?this.$emit("add-to-queue-and-play",[...new Set([...this.selectedTracks,e])]):this.$emit("play",{pos:e})},onTrackDragStart(e){this.sourcePos=e},onTrackDragEnd(){this.$refs.body.querySelectorAll(".track").forEach((e=>e.classList.remove("dragover"))),null!=this.sourcePos&&null!=this.targetPos&&this.sourcePos!==this.targetPos&&(this.$emit("move",{from:this.sourcePos,to:this.targetPos}),this.sourcePos=null,this.targetPos=null)},onTrackDragOver(e){this.targetPos=e;const t=this.$refs.body.querySelectorAll(".track");t.forEach((e=>e.classList.remove("dragover"))),[...t][e].classList.add("dragover")},onScroll(){const e=this.$refs.body.scrollTop,t=parseFloat(getComputedStyle(this.$refs.body).height),s=this.$refs.body.scrollHeight;if(e<5){if(this.scrollTimeout)return;this.scrollTimeout=setTimeout((()=>{this.centerPos=Math.max(0,parseInt(this.centerPos-this.maxVisibleTracks/1.5)),this.$refs.body.scrollTop=6,this.scrollTimeout=null}),250)}else if(e>=s-t-5){if(this.scrollTimeout)return;this.scrollTimeout=setTimeout((()=>{this.centerPos=Math.min(this.tracks.length-1,parseInt(this.centerPos+this.maxVisibleTracks/1.5)),this.scrollTimeout=null}),250)}},playlistSave(){const e=prompt("Playlist name");e?.length&&this.$emit("save",e)},scrollToTrack(e){this.centerPos=e||this.status?.playingPos||0,this.$nextTick((()=>{this.$refs.body?([...this.$refs.body.querySelectorAll(".track")].filter((e=>e.classList.contains("active"))).forEach((e=>e.scrollIntoView({block:"center",behavior:"smooth"}))),this.mounted=!0):this.$watch((()=>this.$refs.body),(()=>{this.mounted||this.scrollToTrack(e)}))}))}},mounted(){this.scrollToTrack(),this.$watch((()=>this.status),(()=>this.scrollToTrack())),this.$watch((()=>this.filter),(e=>{e?.length||this.scrollToTrack()}))}};const Be=(0,J.Z)(Oe,[["render",Re],["__scopeId","data-v-1f4db674"]]);var ze=Be;const Ze=e=>((0,l.dD)("data-v-00f69182"),e=e(),(0,l.Cn)(),e),Fe={key:1,class:"editor-container fade-in"},He={key:2,class:"playlists fade-in"},Ke={class:"header-container"},Ue={class:"col-7 filter"},Ye={class:"col-5 buttons"},Qe=Ze((()=>(0,l._)("i",{class:"fa fa-sync"},null,-1))),Ge=[Qe],Je=Ze((()=>(0,l._)("i",{class:"fas fa-bars"},null,-1))),Xe=[Je],et={class:"body",ref:"body"},tt={key:0,class:"no-content"},st=["onClick","onDblclick"],lt={class:"col-10"},at=["textContent"],it={class:"col-2 right-side"},nt={class:"actions"};function ct(e,t,s,n,c,o){const r=(0,l.up)("Loading"),d=(0,l.up)("Playlist"),u=(0,l.up)("DropdownItem"),h=(0,l.up)("Dropdown"),y=(0,l.up)("MusicHeader");return s.loading?((0,l.wg)(),(0,l.j4)(r,{key:0})):null!=s.editedPlaylist?((0,l.wg)(),(0,l.iD)("div",Fe,[(0,l.Wm)(d,{tracks:s.tracks||[],status:s.status,devices:s.devices,"selected-device":s.selectedDevice,"active-device":s.activeDevice,"show-nav-button":s.showNavButton,"with-add-to-queue":!0,"with-back":!0,onAdd:t[0]||(t[0]=t=>e.$emit("playlist-add",t)),onAddToPlaylist:t[1]||(t[1]=t=>e.$emit("add-to-playlist",t)),onAddToQueue:t[2]||(t[2]=t=>e.$emit("load-tracks",{tracks:t,play:!1})),onAddToQueueAndPlay:t[3]||(t[3]=t=>e.$emit("load-tracks",{tracks:t,play:!0})),onBack:t[4]||(t[4]=t=>e.$emit("playlist-edit",null)),onInfo:t[5]||(t[5]=t=>e.$emit("info",t)),onMove:t[6]||(t[6]=t=>e.$emit("track-move",{...t,playlist:s.editedPlaylist})),onPlay:t[7]||(t[7]=t=>e.$emit("load-tracks",{tracks:[t],play:!0})),onRefreshStatus:t[8]||(t[8]=t=>e.$emit("refresh-status")),onRemove:t[9]||(t[9]=t=>e.$emit("remove-track",t)),onSearch:t[10]||(t[10]=t=>e.$emit("search",t)),onSelectDevice:t[11]||(t[11]=t=>e.$emit("select-device",t)),onToggleNav:t[12]||(t[12]=t=>e.$emit("toggle-nav"))},null,8,["tracks","status","devices","selected-device","active-device","show-nav-button"])])):((0,l.wg)(),(0,l.iD)("div",He,[(0,l._)("div",Ke,[(0,l.Wm)(y,{ref:"header"},{default:(0,l.w5)((()=>[(0,l._)("div",Ue,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"search",placeholder:"Filter","onUpdate:modelValue":t[13]||(t[13]=e=>c.filter=e)},null,512),[[i.nr,c.filter]])])]),(0,l._)("div",Ye,[Object.keys(s.devices||{}).length?((0,l.wg)(),(0,l.j4)(h,{key:0,title:"Players","icon-class":"fa fa-volume-up"},{default:(0,l.w5)((()=>[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.devices,((t,i)=>((0,l.wg)(),(0,l.j4)(u,{key:i,textContent:(0,a.zw)(t.name),"item-class":{active:s.activeDevice===i,selected:s.selectedDevice===i},"icon-class":"fa fa-volume-up",onClick:t=>e.$emit("select-device",i)},null,8,["textContent","item-class","onClick"])))),128))])),_:1})):(0,l.kq)("",!0),null!=s.devices?((0,l.wg)(),(0,l.iD)("button",{key:1,title:"Refresh status",onClick:t[14]||(t[14]=t=>e.$emit("refresh-status"))},Ge)):(0,l.kq)("",!0),s.showNavButton?((0,l.wg)(),(0,l.iD)("button",{key:2,class:"mobile",title:"Menu",onClick:t[15]||(t[15]=t=>e.$emit("toggle-nav"))},Xe)):(0,l.kq)("",!0)])])),_:1},512)]),(0,l._)("div",et,[s.playlists?.length?(0,l.kq)("",!0):((0,l.wg)(),(0,l.iD)("div",tt," No playlists found ")),((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.playlists,((t,s)=>((0,l.wg)(),(0,l.iD)("div",{class:(0,a.C_)(["row playlist",{hidden:!o.displayedPlaylists.has(s)}]),key:s,onClick:t=>e.$emit("playlist-edit",s),onDblclick:t=>e.$emit("load",s)},[(0,l._)("div",lt,[(0,l._)("div",{class:"name",textContent:(0,a.zw)(t.name||"[No Name]")},null,8,at)]),(0,l._)("div",it,[(0,l._)("span",nt,[(0,l.Wm)(h,{title:"Actions","icon-class":"fa fa-ellipsis-h"},{default:(0,l.w5)((()=>[(0,l.Wm)(u,{text:"Play","icon-class":"fa fa-play",onClick:(0,i.iM)((t=>e.$emit("play",s)),["stop"])},null,8,["onClick"]),(0,l.Wm)(u,{text:"Load","icon-class":"fa fa-list-ul",onClick:(0,i.iM)((t=>e.$emit("load",s)),["stop"])},null,8,["onClick"]),(0,l.Wm)(u,{text:"Edit","icon-class":"fa fa-edit",onClick:(0,i.iM)((t=>e.$emit("playlist-edit",s)),["stop"])},null,8,["onClick"]),(0,l.Wm)(u,{text:"Remove","icon-class":"fa fa-trash",onClick:(0,i.iM)((t=>e.$emit("remove",s)),["stop"])},null,8,["onClick"])])),_:2},1024)])])],42,st)))),128))],512)]))}var ot={name:"Playlists",mixins:[le.Z],components:{Dropdown:We.Z,DropdownItem:Ee.Z,MusicHeader:je,Loading:te.Z,Playlist:ze},emits:["add-to-playlist","info","load","load-tracks","play","playlist-add","playlist-edit","refresh-status","remove","remove-track","search","select-device","track-move"],props:{playlists:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1},tracks:{type:Array,default:()=>[]},editedPlaylist:{type:Number},devices:{type:Object},status:{type:Object,default:()=>{}},selectedDevice:{type:String},activeDevice:{type:String},showNavButton:{type:Boolean,default:!1}},data(){return{selectedTracks:[],filter:"",trackFilter:"",sourcePos:null,targetPos:null}},computed:{selectedTracksSet(){return new Set(this.selectedTracks)},displayedPlaylists(){const e=[...Array(this.playlists.length).keys()];if(!this.filter?.length)return new Set(e);const t=this,s=(t.filter||"").toLowerCase();return new Set(e.filter((e=>{const t=this.playlists[e];return(t?.name||"").toLowerCase().indexOf(s)>=0})))},displayedTracks(){const e=[...Array(this.tracks.length).keys()];if(!this.trackFilter?.length)return new Set(e);const t=this,s=(t.trackFilter||"").toLowerCase();return new Set(e.filter((e=>{const t=this.tracks[e];return(t?.artist||"").toLowerCase().indexOf(s)>=0||(t?.title||"").toLowerCase().indexOf(s)>=0||(t?.album||"").toLowerCase().indexOf(s)>=0})))}},methods:{onTrackClick(e,t){if(e.shiftKey){const e=this.selectedTracks.sort();e.length?t<e[0]?this.selectedTracks=[...this.selectedTracks,...[...Array(e[0]-t).keys()].map((e=>e+t))]:t>e[e.length-1]&&(this.selectedTracks=[...this.selectedTracks,...[...Array(t-e[e.length-1]+1).keys()].map((t=>t+e[e.length-1]))]):this.selectedTracks=[t]}else{const s=this.selectedTracks.indexOf(t);e.ctrlKey?s>=0?this.selectedTracks.splice(s,1):this.selectedTracks.push(t):this.selectedTracks=s>=0?[]:[t]}},onTrackDragStart(e){this.sourcePos=e},onTrackDragEnd(){this.$refs.editor.querySelectorAll(".track").forEach((e=>e.classList.remove("dragover"))),null!=this.sourcePos&&null!=this.targetPos&&this.sourcePos!==this.targetPos&&(this.$emit("track-move",{from:this.sourcePos,to:this.targetPos,playlist:this.editedPlaylist}),this.sourcePos=null,this.targetPos=null)},onTrackDragOver(e){this.targetPos=e;const t=this.$refs.editor.querySelectorAll(".track");t.forEach((e=>e.classList.remove("dragover"))),[...t][e].classList.add("dragover")}}};const rt=(0,J.Z)(ot,[["render",ct],["__scopeId","data-v-00f69182"]]);var dt=rt;const ut=e=>((0,l.dD)("data-v-6596df38"),e=e(),(0,l.Cn)(),e),ht=ut((()=>(0,l._)("i",{class:"fas fa-bars"},null,-1))),yt=[ht],pt={class:"search-form"},kt={class:"row"},mt={class:"row"},vt={class:"row"},ft={class:"row"},gt=ut((()=>(0,l._)("i",{class:"icon fa fa-times"},null,-1))),wt=ut((()=>(0,l._)("span",{class:"btn-title"},"Clear",-1))),bt=[gt,wt],Ct=ut((()=>(0,l._)("button",{type:"submit"},[(0,l._)("i",{class:"icon fa fa-search"}),(0,l._)("span",{class:"btn-title"},"Search")],-1))),_t={class:"col-10 search-box"},Tt=ut((()=>(0,l._)("i",{class:"fas fa-arrow-left"},null,-1))),Dt=[Tt],$t={class:"col-2 buttons"},xt=ut((()=>(0,l._)("i",{class:"fas fa-bars"},null,-1))),Pt=[xt],St={class:"results"},At=["onClick"],It={class:"col-10"},qt={class:"title"},Rt=["textContent"],Mt=["textContent"],Vt={class:"col-2 right-side"},Lt=["textContent"],Nt={class:"actions"};function jt(e,t,s,n,c,o){const r=(0,l.up)("FormFooter"),d=(0,l.up)("MusicHeader"),u=(0,l.up)("DropdownItem"),h=(0,l.up)("Dropdown");return(0,l.wg)(),(0,l.iD)("div",{class:(0,a.C_)(["search fade-in",{"form-collapsed":o.formCollapsed}])},[s.showNavButton&&!o.formCollapsed?((0,l.wg)(),(0,l.iD)("button",{key:0,class:"nav-toggler mobile floating",title:"Menu",onClick:t[0]||(t[0]=t=>e.$emit("toggle-nav"))},yt)):(0,l.kq)("",!0),o.formCollapsed?((0,l.wg)(),(0,l.j4)(d,{key:2},{default:(0,l.w5)((()=>[(0,l._)("label",_t,[(0,l._)("button",{class:"back-btn",title:"Back",onClick:t[7]||(t[7]=(...e)=>o.clear&&o.clear(...e))},Dt),(0,l.wy)((0,l._)("input",{type:"search",placeholder:"Filter","onUpdate:modelValue":t[8]||(t[8]=e=>c.filter=e)},null,512),[[i.nr,c.filter]])]),(0,l._)("span",$t,[s.showNavButton?((0,l.wg)(),(0,l.iD)("button",{key:0,class:"mobile",title:"Menu",onClick:t[9]||(t[9]=t=>e.$emit("toggle-nav"))},Pt)):(0,l.kq)("",!0)])])),_:1})):((0,l.wg)(),(0,l.iD)("div",{key:1,class:"form-container",onSubmit:t[6]||(t[6]=(0,i.iM)((t=>e.$emit("search",o.filteredQuery)),["prevent"]))},[(0,l._)("form",pt,[(0,l._)("div",kt,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"text",placeholder:"Any","onUpdate:modelValue":t[1]||(t[1]=e=>c.query.any=e)},null,512),[[i.nr,c.query.any]])])]),(0,l._)("div",mt,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"text",placeholder:"Artist","onUpdate:modelValue":t[2]||(t[2]=e=>c.query.artist=e)},null,512),[[i.nr,c.query.artist]])])]),(0,l._)("div",vt,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"text",placeholder:"Title","onUpdate:modelValue":t[3]||(t[3]=e=>c.query.title=e)},null,512),[[i.nr,c.query.title]])])]),(0,l._)("div",ft,[(0,l._)("label",null,[(0,l.wy)((0,l._)("input",{type:"text",placeholder:"Album","onUpdate:modelValue":t[4]||(t[4]=e=>c.query.album=e)},null,512),[[i.nr,c.query.album]])])]),(0,l.Wm)(r,null,{default:(0,l.w5)((()=>[(0,l._)("button",{onClick:t[5]||(t[5]=(...e)=>o.clear&&o.clear(...e))},bt),Ct])),_:1})])],32)),(0,l._)("div",St,[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.results,((t,s)=>((0,l.wg)(),(0,l.iD)("div",{class:(0,a.C_)(["row track",{selected:c.selectedResults.has(s),hidden:!o.displayedTracks.has(s)}]),key:s,onClick:e=>o.resultClick(s,e)},[(0,l._)("div",It,[(0,l._)("div",qt,(0,a.zw)(t.title||"[No Title]"),1),t.artist?.length?((0,l.wg)(),(0,l.iD)("div",{key:0,class:"artist",textContent:(0,a.zw)(t.artist)},null,8,Rt)):(0,l.kq)("",!0),t.album?.length?((0,l.wg)(),(0,l.iD)("div",{key:1,class:"album",textContent:(0,a.zw)(t.album)},null,8,Mt)):(0,l.kq)("",!0)]),(0,l._)("div",Vt,[(0,l._)("span",{class:"duration",textContent:(0,a.zw)(t.time&&parseInt(t.time)?e.convertTime(t.time):"-:--")},null,8,Lt),(0,l._)("span",Nt,[(0,l.Wm)(h,{title:"Actions","icon-class":"fa fa-ellipsis-h"},{default:(0,l.w5)((()=>[(0,l.Wm)(u,{text:"Play","icon-class":"fa fa-play",onClick:e=>o.play(s)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Add to queue","icon-class":"fa fa-plus",onClick:e=>o.load(s)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Add to playlist","icon-class":"fa fa-list-ul",onClick:s=>e.$emit("add-to-playlist",t)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Info","icon-class":"fa fa-info",onClick:s=>e.$emit("info",t)},null,8,["onClick"])])),_:2},1024)])])],10,At)))),128))])],2)}var Wt={name:"Search",components:{Dropdown:We.Z,DropdownItem:Ee.Z,FormFooter:ee,MusicHeader:je},mixins:[le.Z],emits:["add-to-playlist","clear","info","load","play","refresh-status","search","select-device","toggle-nav"],props:{loading:{type:Boolean,default:!1},results:{type:Array},devices:{type:Object},selectedDevice:{type:String},activeDevice:{type:String},showNavButton:{type:Boolean,default:!1}},data(){return{selectedResults:new Set,filter:"",query:{any:"",artist:"",title:"",album:""}}},computed:{formCollapsed(){return this.results?.length>0},filteredQuery(){return Object.entries(this.query).filter((e=>e[1]?.length)).reduce(((e,[t,s])=>(e[t]=s,e)),{})},displayedTracks(){return new Set([...Array(this.results?.length||0).keys()].filter((e=>{const t=this.results[e];if(!this.filter?.length)return t;const s=this.filter.toLowerCase();return(t?.artist||"").toLowerCase().indexOf(s)>=0||(t?.title||"").toLowerCase().indexOf(s)>=0||(t?.album||"").toLowerCase().indexOf(s)>=0})))}},methods:{clear(){this.$emit("clear"),this.selectedResults=new Set},resultClick(e,t){if(t.shiftKey){if(this.selectedResults.size>0&&!this.selectedResults.has(e)){const t=[...this.selectedResults],s=Math.min(Math.min(t),e),l=Math.max(Math.max(t),e);this.selectedResults=new Set([...Array(l-s+1).keys()].map((e=>e+s)))}}else t.ctrlKey||(this.selectedResults=new Set),this.selectedResults.has(e)?this.selectedResults.delete(e):this.selectedResults.add(e)},play(e){this.$emit("play",this.results[e]),this.selectedResults.size&&this.selectedResults.forEach((e=>{this.$emit("load",e)}))},load(e){this.selectedResults.has(e)||this.selectedResults.add(e),this.selectedResults.forEach((e=>{this.$emit("load",this.results[e])}))}}};const Et=(0,J.Z)(Wt,[["render",jt],["__scopeId","data-v-6596df38"]]);var Ot=Et;const Bt=e=>((0,l.dD)("data-v-31ebd80c"),e=e(),(0,l.Cn)(),e),zt={class:"library fade-in"},Zt={class:"col-10 search-box"},Ft={class:"col-2 buttons"},Ht=Bt((()=>(0,l._)("i",{class:"fas fa-bars"},null,-1))),Kt=[Ht],Ut={class:"results"},Yt=Bt((()=>(0,l._)("div",{class:"icon-container"},[(0,l._)("i",{class:"icon fa fa-folder"})],-1))),Qt=Bt((()=>(0,l._)("div",{class:"result-container"},[(0,l._)("div",{class:"title"},"..")],-1))),Gt=[Yt,Qt],Jt=["onClick"],Xt={class:"col-10 left-side"},es={class:"icon-container"},ts={key:0,class:"icon fa fa-folder"},ss={key:1,class:"icon fa fa-music"},ls={class:"info"},as={class:"title"},is=["textContent"],ns=["textContent"],cs={class:"artist-album"},os=["textContent"],rs=["textContent"],ds={class:"col-2 right-side"},us=["textContent"],hs={class:"actions"};function ys(e,t,s,n,c,o){const r=(0,l.up)("Loading"),d=(0,l.up)("MusicHeader"),u=(0,l.up)("DropdownItem"),h=(0,l.up)("Dropdown");return(0,l.wg)(),(0,l.iD)("div",zt,[s.loading?((0,l.wg)(),(0,l.j4)(r,{key:0})):(0,l.kq)("",!0),(0,l.Wm)(d,null,{default:(0,l.w5)((()=>[(0,l._)("label",Zt,[(0,l.wy)((0,l._)("input",{type:"search",placeholder:"Filter","onUpdate:modelValue":t[0]||(t[0]=e=>c.filter=e)},null,512),[[i.nr,c.filter]])]),(0,l._)("div",Ft,[s.showNavButton?((0,l.wg)(),(0,l.iD)("button",{key:0,class:"mobile",title:"Menu",onClick:t[1]||(t[1]=t=>e.$emit("toggle-nav"))},Kt)):(0,l.kq)("",!0)])])),_:1}),(0,l._)("div",Ut,["/"!==s.path?((0,l.wg)(),(0,l.iD)("div",{key:0,class:"row track back-track",onClick:t[2]||(t[2]=(...e)=>o.back&&o.back(...e))},Gt)):(0,l.kq)("",!0),((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(s.results,((t,s)=>((0,l.wg)(),(0,l.iD)("div",{class:(0,a.C_)(["row track",{selected:c.selectedResults.has(s),hidden:!o.displayedResults.has(s)}]),key:s,onClick:e=>o.resultClick(s,e)},[(0,l._)("div",Xt,[(0,l._)("div",es,[t.directory?((0,l.wg)(),(0,l.iD)("i",ts)):t.file?((0,l.wg)(),(0,l.iD)("i",ss)):(0,l.kq)("",!0)]),(0,l._)("div",ls,[(0,l._)("div",as,[t.directory?((0,l.wg)(),(0,l.iD)("span",{key:0,textContent:(0,a.zw)(t.directory.split("/").pop())},null,8,is)):t.title?((0,l.wg)(),(0,l.iD)("span",{key:1,textContent:(0,a.zw)(t.title)},null,8,ns)):(0,l.kq)("",!0)]),(0,l._)("div",cs,[t.artist?.length?((0,l.wg)(),(0,l.iD)("div",{key:0,class:"artist",textContent:(0,a.zw)(t.artist)},null,8,os)):(0,l.kq)("",!0),t.album?.length?((0,l.wg)(),(0,l.iD)("div",{key:1,class:"album",textContent:(0,a.zw)(t.album)},null,8,rs)):(0,l.kq)("",!0)])])]),(0,l._)("div",ds,[(0,l._)("span",{class:"duration",textContent:(0,a.zw)(t.time&&parseInt(t.time)?e.convertTime(t.time):"-:--")},null,8,us),(0,l._)("span",hs,[(0,l.Wm)(h,{title:"Actions","icon-class":"fa fa-ellipsis-h"},{default:(0,l.w5)((()=>[(0,l.Wm)(u,{text:"Play","icon-class":"fa fa-play",onClick:e=>o.play(s)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Add to queue","icon-class":"fa fa-plus",onClick:e=>o.load(s)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Add to playlist","icon-class":"fa fa-list-ul",onClick:s=>e.$emit("add-to-playlist",t)},null,8,["onClick"]),(0,l.Wm)(u,{text:"Info","icon-class":"fa fa-info",onClick:s=>e.$emit("info",t)},null,8,["onClick"])])),_:2},1024)])])],10,Jt)))),128))])])}var ps={name:"Library",components:{Dropdown:We.Z,DropdownItem:Ee.Z,MusicHeader:je,Loading:te.Z},mixins:[le.Z],emits:["add-to-playlist","cd","info","load","play","refresh-status","search","select-device","toggle-nav"],props:{loading:{type:Boolean,default:!1},results:{type:Array},path:{type:String},devices:{type:Object},selectedDevice:{type:String},activeDevice:{type:String},showNavButton:{type:Boolean,default:!1}},data(){return{selectedResults:new Set,filter:"",query:{any:"",artist:"",title:"",album:""}}},computed:{displayedResults(){return new Set([...Array(this.results?.length||0).keys()].filter((e=>{const t=this.results[e];if(!this.filter?.length)return t;const s=this.filter.toLowerCase();return(t?.artist||"").toLowerCase().indexOf(s)>=0||(t?.title||"").toLowerCase().indexOf(s)>=0||(t?.album||"").toLowerCase().indexOf(s)>=0||(t?.directory||"").toLowerCase().indexOf(s)>=0})))}},methods:{resultClick(e,t){if(t.shiftKey){if(this.selectedResults.size>0&&!this.selectedResults.has(e)){const t=[...this.selectedResults],s=Math.min(Math.min(t),e),l=Math.max(Math.max(t),e);this.selectedResults=new Set([...Array(l-s+1).keys()].map((e=>e+s)))}}else t.ctrlKey?this.selectedResults.has(e)?this.selectedResults.delete(e):this.selectedResults.add(e):this.results[e].directory?this.$emit("cd",this.results[e].directory):(this.selectedResults=new Set,this.selectedResults.has(e)?this.selectedResults.delete(e):this.selectedResults.add(e))},play(e){this.$emit("play",this.results[e]),this.selectedResults.size&&this.selectedResults.forEach((e=>{this.$emit("load",e)}))},load(e){this.selectedResults.has(e)||this.selectedResults.add(e),this.selectedResults.forEach((e=>{this.$emit("load",this.results[e])}))},back(){const e=this.path.split("/");this.$emit("cd",e.slice(0,e.length-1).join("/"))}}};const ks=(0,J.Z)(ps,[["render",ys],["__scopeId","data-v-31ebd80c"]]);var ms=ks,vs=s(8637),fs={name:"Music",emits:["add-to-playlist","add-to-tracklist","add-to-tracklist-from-edited-playlist","cd","clear","consume","info","load-playlist","new-playing-track","next","pause","play","play-playlist","playlist-add","playlist-edit","playlist-track-move","playlist-update","previous","random","refresh-status","remove-from-playlist","remove-from-tracklist","remove-playlist","repeat","search","search-clear","seek","select-device","set-volume","status-update","stop","swap-tracks","tracklist-move","tracklist-save"],mixins:[vs.Z,le.Z],components:{Loading:te.Z,Modal:se.Z,Nav:he,MediaView:ae.Z,Playlist:ze,Playlists:dt,FormFooter:ee,Search:Ot,Library:ms},props:{pluginName:{type:String,required:!0},loading:{type:Boolean,default:!1},config:{type:Object,default:()=>{}},tracks:{type:Array,default:()=>[]},editedPlaylistTracks:{type:Array,default:()=>[]},playlists:{type:Array,default:()=>[]},status:{type:Object,default:()=>{}},editedPlaylist:{type:Number},trackInfo:{type:String},searchResults:{type:Array},libraryResults:{type:Array},path:{type:String},devices:{type:Object},activeDevice:{type:String},selectedDevice:{type:String}},data(){return{selectedView:"playing",selectedPlaylists:[],addToPlaylistTrack:null,playlistFilter:"",navVisible:!1}},computed:{track(){return null==this.status?.playingPos?null:this.tracks[this.status.playingPos]}},methods:{async onStatusEvent(e){e.plugin_name===this.pluginName&&this.$emit("status-update",e)},async onPlaylistEvent(e){e.plugin_name===this.pluginName&&this.$emit("playlist-update",e)},async onNewPlayingTrack(e){e.plugin_name===this.pluginName&&(this.notify({html:`<b>${e.track?.artist}</b><br>${e.track?.title}`,image:{iconClass:"fa fa-play"}}),this.$emit("new-playing-track",e))},async openAddToPlaylist(e){this.addToPlaylistTrack=e,this.$refs.playlistsModal.isVisible=!0},async addToPlaylist(){this.$emit("add-to-playlist",{track:this.addToPlaylistTrack,playlists:[...Array(this.selectedPlaylists.length).keys()].filter((e=>this.selectedPlaylists[e]))}),this.$refs.playlistsModal.isVisible=!1,this.addToPlaylistTrack=null,this.playlistFilter=""},async search(e){this.$emit("search",e),this.$refs.trackInfo.isVisible=!1,this.selectedView="search"},selectDevice(e){this.$emit("select-device",e)},refreshStatus(){this.$emit("refresh-status")}},mounted(){this.subscribe(this.onStatusEvent,"on-status-update","platypush.message.event.music.MusicPlayEvent","platypush.message.event.music.MusicPauseEvent","platypush.message.event.music.MusicStopEvent","platypush.message.event.music.SeekChangeEvent","platypush.message.event.music.VolumeChangeEvent","platypush.message.event.music.MuteChangeEvent","platypush.message.event.music.PlaybackRepeatModeChangeEvent","platypush.message.event.music.PlaybackRandomModeChangeEvent","platypush.message.event.music.PlaybackConsumeModeChangeEvent","platypush.message.event.music.PlaybackSingleModeChangeEvent"),this.subscribe(this.onPlaylistEvent,"on-playlist-update","platypush.message.event.music.PlaylistChangeEvent"),this.subscribe(this.onNewPlayingTrack,"on-new-playing-track","platypush.message.event.music.NewPlayingTrackEvent"),this.$watch((()=>this.trackInfo),(e=>{null!=e&&(this.$refs.trackInfo.isVisible=!0)}))},unmounted(){this.unsubscribe("on-status-update"),this.unsubscribe("on-playlist-update")}};const gs=(0,J.Z)(fs,[["render",U],["__scopeId","data-v-7c07f13e"]]);var ws=gs}}]);
//# sourceMappingURL=5143.0fd82730.js.map