platypush/platypush/backend/http/webapp/dist/static/js/7816.72e88390.js

2 lines
45 KiB
JavaScript

"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[7816],{7816:function(e,t,s){s.r(t),s.d(t,{default:function(){return fa}});var a=s(6252),i=s(3577),l=s(9963);const n=e=>((0,a.dD)("data-v-68cf0316"),e=e(),(0,a.Cn)(),e),r={class:"media-plugin fade-in"},o={class:"view-container"},c={class:"media-info-container"},d={class:"subtitles-container"},u={key:0,class:"subtitles-content"},m={class:"play-url-container"},p={class:"row"},h={class:"row footer"},y=["disabled"],f=n((()=>(0,a._)("i",{class:"fa fa-play"},null,-1)));function g(e,t,s,n,g,w){const v=(0,a.up)("Loading"),_=(0,a.up)("Nav"),k=(0,a.up)("Header"),b=(0,a.up)("Results"),C=(0,a.up)("TorrentView"),x=(0,a.up)("Browser"),P=(0,a.up)("MediaView"),D=(0,a.up)("Info"),S=(0,a.up)("Modal"),q=(0,a.up)("Subtitles");return(0,a.wg)(),(0,a.j4)(a.Ob,null,[(0,a._)("div",r,[g.loading?((0,a.wg)(),(0,a.j4)(v,{key:0})):(0,a.kq)("",!0),(0,a.Wm)(P,{"plugin-name":s.pluginName,status:g.selectedPlayer?.status||{},track:g.selectedPlayer?.status||{},buttons:s.mediaButtons,onPlay:w.pause,onPause:w.pause,onStop:w.stop,onSetVolume:w.setVolume,onSeek:w.seek,onSearch:w.search,onMute:w.toggleMute,onUnmute:w.toggleMute},{default:(0,a.w5)((()=>[(0,a._)("main",null,[(0,a._)("div",{class:"nav-container from tablet",style:(0,i.j5)(w.navContainerStyle)},[(0,a.Wm)(_,{"selected-view":g.selectedView,onInput:t[0]||(t[0]=e=>g.selectedView=e),onToggle:t[1]||(t[1]=e=>g.forceShowNav=!g.forceShowNav)},null,8,["selected-view"])],4),(0,a._)("div",o,[(0,a.Wm)(k,{"plugin-name":s.pluginName,"selected-view":g.selectedView,"has-subtitles-plugin":w.hasSubtitlesPlugin,sources:g.sources,"selected-item":w.selectedItem,"selected-subtitles":g.selectedSubtitles,"browser-filter":g.browserFilter,"show-nav-button":!g.forceShowNav,ref:"header",onSearch:w.search,onSelectPlayer:t[2]||(t[2]=e=>g.selectedPlayer=e),onPlayerStatus:w.onStatusUpdate,onTorrentAdd:t[3]||(t[3]=e=>w.downloadTorrent(e)),onShowSubtitles:t[4]||(t[4]=e=>g.showSubtitlesModal=!g.showSubtitlesModal),onPlayUrl:w.showPlayUrlModal,onFilter:t[5]||(t[5]=e=>g.browserFilter=e),onToggleNav:t[6]||(t[6]=e=>g.forceShowNav=!g.forceShowNav),onSourceToggle:t[7]||(t[7]=e=>g.sources[e]=!g.sources[e])},null,8,["plugin-name","selected-view","has-subtitles-plugin","sources","selected-item","selected-subtitles","browser-filter","show-nav-button","onSearch","onPlayerStatus","onPlayUrl"]),(0,a._)("div",{class:(0,i.C_)(["body-container",{"expanded-header":e.$refs.header?.filterVisible}])},["search"===g.selectedView?((0,a.wg)(),(0,a.j4)(b,{key:0,results:g.results,"selected-result":g.selectedResult,onSelect:t[8]||(t[8]=e=>w.onResultSelect(e)),onPlay:w.play,onInfo:t[9]||(t[9]=t=>e.$refs.mediaInfo.isVisible=!0),onView:w.view,onDownload:w.download,sources:g.sources},null,8,["results","selected-result","onPlay","onView","onDownload","sources"])):"torrents"===g.selectedView?((0,a.wg)(),(0,a.j4)(C,{key:1,"plugin-name":g.torrentPlugin,"is-media":!0,onPlay:w.play},null,8,["plugin-name","onPlay"])):"browser"===g.selectedView?((0,a.wg)(),(0,a.j4)(x,{key:2,"plugin-name":g.torrentPlugin,"is-media":!0,filter:g.browserFilter,onPathChange:t[10]||(t[10]=e=>g.browserFilter=""),onPlay:t[11]||(t[11]=e=>w.play(e))},null,8,["plugin-name","filter"])):(0,a.kq)("",!0)],2)])])])),_:1},8,["plugin-name","status","track","buttons","onPlay","onPause","onStop","onSetVolume","onSeek","onSearch","onMute","onUnmute"]),(0,a._)("div",c,[(0,a.Wm)(S,{title:"Media info",ref:"mediaInfo"},{default:(0,a.w5)((()=>[null!=g.selectedResult?((0,a.wg)(),(0,a.j4)(D,{key:0,item:g.results[g.selectedResult]},null,8,["item"])):(0,a.kq)("",!0)])),_:1},512)]),(0,a._)("div",d,[(0,a.Wm)(S,{title:"Available subtitles",visible:g.showSubtitlesModal,ref:"subtitlesSelector",onClose:t[13]||(t[13]=e=>g.showSubtitlesModal=!1)},{default:(0,a.w5)((()=>[g.showSubtitlesModal&&null!=g.selectedResult?((0,a.wg)(),(0,a.iD)("div",u,[(0,a.Wm)(q,{item:g.selectedPlayer&&g.selectedPlayer.status&&("play"===g.selectedPlayer.status.state||"pause"===g.selectedPlayer.status.state)?g.selectedPlayer.status:g.results[g.selectedResult],onSelectSubs:t[12]||(t[12]=e=>w.selectSubtitles(e))},null,8,["item"])])):(0,a.kq)("",!0)])),_:1},8,["visible"])]),(0,a._)("div",m,[(0,a.Wm)(S,{title:"Play URL",ref:"playUrlModal",onOpen:t[16]||(t[16]=t=>e.$refs.playUrlInput.focus())},{default:(0,a.w5)((()=>[(0,a._)("form",{onSubmit:t[15]||(t[15]=(0,l.iM)((e=>w.playUrl(g.urlPlay)),["prevent"]))},[(0,a._)("div",p,[(0,a._)("label",null,[(0,a.Uk)(" Play URL (use the file:// prefix for local files) "),(0,a.wy)((0,a._)("input",{type:"text","onUpdate:modelValue":t[14]||(t[14]=e=>g.urlPlay=e),ref:"playUrlInput",autofocus:""},null,512),[[l.nr,g.urlPlay]])])]),(0,a._)("div",h,[(0,a._)("button",{type:"submit",disabled:!g.urlPlay?.length},[f,(0,a.Uk)(" Play ")],8,y)])],32)])),_:1},512)])])],1024)}var w=s(6791),v=s(3493),_=s(8637),k=s(1065),b=s(7562);const C=e=>((0,a.dD)("data-v-39ee4bbe"),e=e(),(0,a.Cn)(),e),x={class:"row"},P={key:0,class:"col-s-8 col-m-7 left side"},D=C((()=>(0,a._)("i",{class:"fa fa-filter"},null,-1))),S=[D],q={class:"search-box"},N={key:1,class:"col-s-8 col-m-7 left side"},I={class:"search-box"},$={key:2,class:"col-s-8 col-m-7 left side"},M={class:"search-box"},z=["value"],T={class:"col-s-4 col-m-5 right side"},V=C((()=>(0,a._)("i",{class:"fas fa-bars"},null,-1))),Z=[V],U=C((()=>(0,a._)("i",{class:"fas fa-closed-captioning"},null,-1))),j=[U],W=C((()=>(0,a._)("i",{class:"fas fa-play"},null,-1))),R=[W],E=["checked","onChange"];function L(e,t,s,n,r,o){const c=(0,a.up)("Players");return(0,a.wg)(),(0,a.iD)("div",{class:(0,i.C_)(["header",{"with-filter":r.filterVisible}])},[(0,a._)("div",x,["search"===s.selectedView?((0,a.wg)(),(0,a.iD)("div",P,[(0,a._)("button",{title:"Filter",class:(0,i.C_)(["filter-btn",{selected:r.filterVisible}]),onClick:t[0]||(t[0]=e=>r.filterVisible=!r.filterVisible)},S,2),(0,a._)("form",{onSubmit:t[2]||(t[2]=(0,l.iM)(((...e)=>o.search&&o.search(...e)),["prevent"]))},[(0,a._)("label",q,[(0,a.wy)((0,a._)("input",{type:"search",placeholder:"Search","onUpdate:modelValue":t[1]||(t[1]=e=>r.query=e)},null,512),[[l.nr,r.query]])])],32)])):"torrents"===s.selectedView?((0,a.wg)(),(0,a.iD)("div",N,[(0,a._)("form",{onSubmit:t[4]||(t[4]=(0,l.iM)((t=>e.$emit("torrent-add",r.torrentURL)),["prevent"]))},[(0,a._)("label",I,[(0,a.wy)((0,a._)("input",{type:"search",placeholder:"Add torrent URL","onUpdate:modelValue":t[3]||(t[3]=e=>r.torrentURL=e)},null,512),[[l.nr,r.torrentURL]])])],32)])):"browser"===s.selectedView?((0,a.wg)(),(0,a.iD)("div",$,[(0,a._)("label",M,[(0,a._)("input",{type:"search",placeholder:"Filter",value:s.browserFilter,onChange:t[5]||(t[5]=t=>e.$emit("filter",t.target.value)),onKeyup:t[6]||(t[6]=t=>e.$emit("filter",t.target.value))},null,40,z)])])):(0,a.kq)("",!0),(0,a._)("div",T,[s.showNavButton?((0,a.wg)(),(0,a.iD)("button",{key:0,class:"mobile",title:"Menu",onClick:t[7]||(t[7]=t=>e.$emit("toggle-nav"))},Z)):(0,a.kq)("",!0),s.hasSubtitlesPlugin&&s.selectedItem&&("file"===s.selectedItem.type||(s.selectedItem.url||"").startsWith("file://"))?((0,a.wg)(),(0,a.iD)("button",{key:1,title:"Select subtitles",class:(0,i.C_)(["captions-btn",{selected:null!=s.selectedSubtitles}]),onClick:t[8]||(t[8]=t=>e.$emit("show-subtitles"))},j,2)):(0,a.kq)("",!0),(0,a.Wm)(c,{"plugin-name":s.pluginName,onSelect:t[9]||(t[9]=t=>e.$emit("select-player",t)),onStatus:t[10]||(t[10]=t=>e.$emit("player-status",t))},null,8,["plugin-name"]),(0,a._)("button",{title:"Play URL",onClick:t[11]||(t[11]=t=>e.$emit("play-url"))},R)])]),(0,a._)("div",{class:(0,i.C_)(["row filter fade-in",{hidden:!r.filterVisible}])},[((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(Object.keys(s.sources),(t=>((0,a.wg)(),(0,a.iD)("label",{key:t},[(0,a._)("input",{type:"checkbox",checked:s.sources[t],onChange:s=>e.$emit("source-toggle",t)},null,40,E),(0,a.Uk)(" "+(0,i.zw)(t),1)])))),128))],2)],2)}const O={class:"plugins"},F={class:"players"},B={class:"refresh"},K={key:1,class:"no-results"};function H(e,t,s,l,n,r){const o=(0,a.up)("Chromecast"),c=(0,a.up)("Kodi"),d=(0,a.up)("Mplayer"),u=(0,a.up)("Mpv"),m=(0,a.up)("Omxplayer"),p=(0,a.up)("Vlc"),h=(0,a.up)("Loading"),y=(0,a.up)("DropdownItem"),f=(0,a.up)("Dropdown");return(0,a.wg)(),(0,a.iD)(a.HY,null,[(0,a._)("div",O,[(0,a.Wm)(o,{player:"media.chromecast"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"chromecastPlugin",onStatus:t[0]||(t[0]=t=>e.$emit("status",t))},null,8,["player"]),(0,a.Wm)(c,{player:"media.kodi"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"kodiPlugin",onStatus:t[1]||(t[1]=t=>e.$emit("status",t))},null,8,["player"]),(0,a.Wm)(d,{player:"media.mplayer"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"mplayerPlugin",onStatus:t[2]||(t[2]=t=>e.$emit("status",t))},null,8,["player"]),(0,a.Wm)(u,{player:"media.mpv"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"mpvPlugin",onStatus:t[3]||(t[3]=t=>e.$emit("status",t))},null,8,["player"]),(0,a.Wm)(m,{player:"media.omxplayer"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"omxplayerPlugin",onStatus:t[4]||(t[4]=t=>e.$emit("status",t))},null,8,["player"]),(0,a.Wm)(p,{player:"media.vlc"===n.selectedPlayer?.pluginName?n.selectedPlayer:null,ref:"vlcPlugin",onStatus:t[5]||(t[5]=t=>e.$emit("status",t))},null,8,["player"])]),(0,a._)("div",F,[(0,a.Wm)(f,{title:n.selectedPlayer?.name||"Players","icon-class":n.selectedPlayer?n.selectedPlayer.iconClass:"fab fa-chromecast"},{default:(0,a.w5)((()=>[n.loading?((0,a.wg)(),(0,a.j4)(h,{key:0})):(0,a.kq)("",!0),(0,a._)("div",B,[(0,a.Wm)(y,{text:"Refresh","icon-class":"fa fa-sync-alt",onClick:r.refresh},null,8,["onClick"])]),n.players?.length?(0,a.kq)("",!0):((0,a.wg)(),(0,a.iD)("div",K,"No players found")),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(n.players,((e,t)=>((0,a.wg)(),(0,a.iD)("div",{class:(0,i.C_)(["player",{selected:null!=n.selectedPlayer&&n.selectedPlayer.pluginName===e.pluginName&&n.selectedPlayer.name===e.name}]),key:t},[(0,a.Wm)(y,{text:e.name,"icon-class":e.iconClass,onClick:t=>r.select(e)},null,8,["text","icon-class","onClick"])],2)))),128))])),_:1},8,["title","icon-class"])])],64)}s(7658);var Y=s(8832),A=s(1693);function Q(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var G={name:"Mixin",mixins:[_.Z,k.Z],emits:["status"],props:{player:{type:Object}},data(){return{iconClass:null,name:null,pluginName:null}},methods:{async getPlayers(){return[{iconClass:this.iconClass,name:this.name,pluginName:this.pluginName,component:this,status:await this.status()}]},async status(){return await this.request(`${this.pluginName}.status`)},async play(e,t){return e?await this.request(`${this.pluginName}.play`,{resource:e.url,subtitles:t}):await this.pause()},async pause(){return await this.request(`${this.pluginName}.pause`)},async stop(){return await this.request(`${this.pluginName}.stop`)},async setVolume(e){return await this.request(`${this.pluginName}.set_volume`,{volume:e})},async toggleMute(){return await this.request(`${this.pluginName}.mute`)},async seek(e){return await this.request(`${this.pluginName}.seek`,{position:e})},async onNewMedia(e){const t=await this.onMediaEvent(e);t&&e.title&&this.notify({title:e.player||e.device||this.player?.name||this.name||this.pluginName,text:e.title,image:{iconClass:this.iconClass||"fa fa-play"}})},async onMediaEvent(e){return e.plugin===this.pluginName&&(this.$emit("status",await this.status()),!0)},async addSubtitles(e){await this.request(`${this.pluginName}.add_subtitles`,{filename:e}),await this.request(`${this.pluginName}.toggle_subtitles`,{visible:!0})},async removeSubtitles(){await this.request(`${this.pluginName}.toggle_subtitles`,{visible:!1})},supports(e){return"file"===e?.type||"youtube"===e?.type||(e.url||e).startsWith("file://")||(e.url||e).startsWith("http://")||(e.url||e).startsWith("https://")}},mounted(){this.subscribe(this.onNewMedia,`on-new-media-${this.pluginName}`,"platypush.message.event.media.NewPlayingMediaEvent"),this.subscribe(this.onMediaEvent,`on-media-event-${this.pluginName}`,"platypush.message.event.media.MediaPlayEvent","platypush.message.event.media.MediaStopEvent","platypush.message.event.media.MediaPauseEvent","platypush.message.event.media.MediaSeekEvent","platypush.message.event.media.MediaVolumeChangedEvent","platypush.message.event.media.MediaMuteChangedEvent")},destroy(){this.unsubscribe(`on-media-event-${this.pluginName}`)}};const X=G;var J=X,ee={name:"Chromecast",mixins:[J],data(){return{name:"Chromecast",pluginName:"media.chromecast",iconClass:"fab fa-chromecast"}},methods:{async getPlayers(){const e=await this.request(`${this.pluginName}.get_chromecasts`);return Promise.all(e.map((async e=>({...e,iconClass:"audio"===e.type?"fa fa-volume-up":"fab fa-chromecast",pluginName:this.pluginName,status:this.request(`${this.pluginName}.status`,{chromecast:e.name}),component:this}))))},getPlayerName(e){return"string"===typeof e?e:e?e?.name:this.player?.name},async status(e){return await this.request(`${this.pluginName}.status`,{chromecast:this.getPlayerName(e)})},async play(e,t){return e?await this.request(`${this.pluginName}.play`,{resource:e.url,chromecast:this.getPlayerName(t)}):await this.pause(t)},async pause(e){return await this.request(`${this.pluginName}.pause`,{chromecast:this.getPlayerName(e)})},async stop(e){return await this.request(`${this.pluginName}.quit`,{chromecast:this.getPlayerName(e)})},async setVolume(e,t){return await this.request(`${this.pluginName}.set_volume`,{volume:e,chromecast:this.getPlayerName(t)})},async seek(e,t){return await this.request(`${this.pluginName}.seek`,{position:e,chromecast:this.getPlayerName(t)})},async onMediaEvent(e){return e.plugin===this.pluginName&&(this.$emit("status",await this.status(e.player)),!0)},supports(e){return"youtube"===e?.type||(e.url||e).startsWith("http://")||(e.url||e).startsWith("https://")}}},te=s(3744);const se=(0,te.Z)(ee,[["render",Q]]);var ae=se;function ie(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var le={name:"Kodi",mixins:[J],data(){return{iconClass:"fa fa-kodi",name:"Kodi",pluginName:"media.kodi"}},methods:{async getPlayers(){return[{iconClass:this.iconClass,pluginName:this.pluginName,name:this.$root.config["media.kodi"]?.host||this.name,component:this,status:await this.request(`${this.pluginName}.status`)}]},supports(e){return"youtube"===e?.type||(e.url||e).startsWith("http://")||(e.url||e).startsWith("https://")}}};const ne=(0,te.Z)(le,[["render",ie]]);var re=ne;function oe(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var ce={name:"Mplayer",mixins:[J],data(){return{iconClass:"fa fa-tv",name:"MPlayer",pluginName:"media.mplayer"}}};const de=(0,te.Z)(ce,[["render",oe]]);var ue=de;function me(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var pe={name:"Mpv",mixins:[J],data(){return{iconClass:"fa fa-tv",name:"mpv",pluginName:"media.mpv"}}};const he=(0,te.Z)(pe,[["render",me]]);var ye=he;function fe(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var ge={name:"Omxplayer",mixins:[J],data(){return{iconClass:"fa fa-tv",name:"OMXPlayer",pluginName:"media.omxplayer"}}};const we=(0,te.Z)(ge,[["render",fe]]);var ve=we;function _e(e,t,s,i,l,n){return(0,a.wg)(),(0,a.iD)("div")}var ke={name:"Vlc",mixins:[J],data(){return{iconClass:"fa fa-tv",name:"VLC",pluginName:"media.vlc"}}};const be=(0,te.Z)(ke,[["render",_e]]);var Ce=be,xe={name:"Players",components:{Loading:w.Z,DropdownItem:A.Z,Dropdown:Y.Z,Chromecast:ae,Kodi:re,Mplayer:ue,Mpv:ye,Omxplayer:ve,Vlc:Ce},emits:["select","status"],props:{pluginName:{type:String,required:!0}},data(){return{loading:!1,players:[],selectedPlayer:null,config:{},plugins:[]}},methods:{loadPlugins(){this.plugins=Object.entries(this.$refs).filter((e=>e[0].endsWith("Plugin"))).map((e=>e[1]))},async refresh(){this.players=[],this.loading=!0;const e=this.$root.config;try{await Promise.all(this.plugins.map((async t=>{if(!(t.pluginName in e))return;const s=await t.getPlayers();this.players.push(...s),null==this.selectedPlayer&&t.pluginName===this.pluginName&&s.length>0&&this.select(s[0])})))}finally{this.loading=!1}},select(e){this.selectedPlayer=e,this.$emit("select",e)}},async mounted(){await this.loadPlugins(),await this.refresh()}};const Pe=(0,te.Z)(xe,[["render",H],["__scopeId","data-v-f3388e1c"]]);var De=Pe,Se={name:"Header",components:{Players:De},emits:["filter","play-url","player-status","search","select-player","show-subtitles","source-toggle","toggle-nav","torrent-add"],props:{pluginName:{type:String,required:!0},selectedView:{type:String,required:!0},selectedSubtitles:{type:String},selectedItem:{type:Object},hasSubtitlesPlugin:{type:Boolean,default:!1},showNavButton:{type:Boolean},browserFilter:{type:String,default:""},sources:{type:Object,default:()=>{}}},data(){return{filterVisible:!1,query:"",torrentURL:""}},methods:{search(){const e=Object.keys(this.sources).filter((e=>this.sources[e]));this.query?.length&&e?.length&&this.$emit("search",{query:this.query,types:e})}},mounted(){this.$watch((()=>this.selectedView),(()=>{this.$emit("filter",""),this.torrentURL="",this.query=""}))}};const qe=(0,te.Z)(Se,[["render",L],["__scopeId","data-v-39ee4bbe"]]);var Ne=qe;const Ie=e=>((0,a.dD)("data-v-79111024"),e=e(),(0,a.Cn)(),e),$e={class:"media-info"},Me={class:"row header"},ze={class:"title"},Te=["href","textContent"],Ve=["textContent"],Ze={key:0,class:"row"},Ue=Ie((()=>(0,a._)("div",{class:"left side"},"TV Series",-1))),je=["textContent"],We={key:1,class:"row"},Re=Ie((()=>(0,a._)("div",{class:"left side"},"Season",-1))),Ee=["textContent"],Le={key:2,class:"row"},Oe=Ie((()=>(0,a._)("div",{class:"left side"},"Episode",-1))),Fe=["textContent"],Be={key:3,class:"row"},Ke=Ie((()=>(0,a._)("div",{class:"left side"},"Number of seasons",-1))),He=["textContent"],Ye={key:4,class:"row"},Ae=Ie((()=>(0,a._)("div",{class:"left side"},"Synopsis",-1))),Qe=["textContent"],Ge={key:5,class:"row"},Xe=Ie((()=>(0,a._)("div",{class:"left side"},"Description",-1))),Je=["textContent"],et={key:6,class:"row"},tt=Ie((()=>(0,a._)("div",{class:"left side"},"Summary",-1))),st=["textContent"],at={key:7,class:"row"},it=Ie((()=>(0,a._)("div",{class:"left side"},"Overview",-1))),lt=["textContent"],nt={key:8,class:"row"},rt=Ie((()=>(0,a._)("div",{class:"left side"},"Country",-1))),ot=["textContent"],ct={key:9,class:"row"},dt=Ie((()=>(0,a._)("div",{class:"left side"},"Network",-1))),ut=["textContent"],mt={key:10,class:"row"},pt=Ie((()=>(0,a._)("div",{class:"left side"},"Status",-1))),ht=["textContent"],yt={key:11,class:"row"},ft=Ie((()=>(0,a._)("div",{class:"left side"},"Rating",-1))),gt=["textContent"],wt={key:12,class:"row"},vt=Ie((()=>(0,a._)("div",{class:"left side"},"Votes",-1))),_t=["textContent"],kt={key:13,class:"row"},bt=Ie((()=>(0,a._)("div",{class:"left side"},"Genres",-1))),Ct=["textContent"],xt={key:14,class:"row"},Pt=Ie((()=>(0,a._)("div",{class:"left side"},"Channel",-1))),Dt={class:"right side"},St=["href","textContent"],qt={key:15,class:"row"},Nt=Ie((()=>(0,a._)("div",{class:"left side"},"Year",-1))),It=["textContent"],$t={key:16,class:"row"},Mt=Ie((()=>(0,a._)("div",{class:"left side"},"Published at",-1))),zt=["textContent"],Tt={key:17,class:"row"},Vt=Ie((()=>(0,a._)("div",{class:"left side"},"File",-1))),Zt=["textContent"],Ut={key:18,class:"row"},jt=Ie((()=>(0,a._)("div",{class:"left side"},"Trailer",-1))),Wt={class:"right side url"},Rt=["href","textContent"],Et={key:19,class:"row"},Lt=Ie((()=>(0,a._)("div",{class:"left side"},"Size",-1))),Ot=["textContent"],Ft={key:20,class:"row"},Bt=Ie((()=>(0,a._)("div",{class:"left side"},"Quality",-1))),Kt=["textContent"],Ht={key:21,class:"row"},Yt=Ie((()=>(0,a._)("div",{class:"left side"},"Seeds",-1))),At=["textContent"],Qt={key:22,class:"row"},Gt=Ie((()=>(0,a._)("div",{class:"left side"},"Peers",-1))),Xt=["textContent"],Jt={key:23,class:"row"},es=Ie((()=>(0,a._)("div",{class:"left side"},"Language",-1))),ts=["textContent"];function ss(e,t,s,l,n,r){const o=(0,a.up)("MediaImage");return(0,a.wg)(),(0,a.iD)("div",$e,[(0,a._)("div",Me,[(0,a.Wm)(o,{item:s.item},null,8,["item"]),(0,a._)("div",ze,[s.item.url?((0,a.wg)(),(0,a.iD)("a",{key:0,href:s.item.url,target:"_blank",textContent:(0,i.zw)(s.item.title)},null,8,Te)):((0,a.wg)(),(0,a.iD)("span",{key:1,textContent:(0,i.zw)(s.item.title)},null,8,Ve))])]),s.item?.series?((0,a.wg)(),(0,a.iD)("div",Ze,[Ue,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.series)},null,8,je)])):(0,a.kq)("",!0),s.item?.season?((0,a.wg)(),(0,a.iD)("div",We,[Re,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.season)},null,8,Ee)])):(0,a.kq)("",!0),s.item?.episode?((0,a.wg)(),(0,a.iD)("div",Le,[Oe,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.episode)},null,8,Fe)])):(0,a.kq)("",!0),s.item?.num_seasons?((0,a.wg)(),(0,a.iD)("div",Be,[Ke,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.num_seasons)},null,8,He)])):(0,a.kq)("",!0),s.item?.synopsis?((0,a.wg)(),(0,a.iD)("div",Ye,[Ae,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.synopsis)},null,8,Qe)])):(0,a.kq)("",!0),s.item?.description?((0,a.wg)(),(0,a.iD)("div",Ge,[Xe,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.description)},null,8,Je)])):(0,a.kq)("",!0),s.item?.summary?((0,a.wg)(),(0,a.iD)("div",et,[tt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.summary)},null,8,st)])):(0,a.kq)("",!0),s.item?.overview?((0,a.wg)(),(0,a.iD)("div",at,[it,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.overview)},null,8,lt)])):(0,a.kq)("",!0),s.item?.country?((0,a.wg)(),(0,a.iD)("div",nt,[rt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.country)},null,8,ot)])):(0,a.kq)("",!0),s.item?.network?((0,a.wg)(),(0,a.iD)("div",ct,[dt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.network)},null,8,ut)])):(0,a.kq)("",!0),s.item?.status?((0,a.wg)(),(0,a.iD)("div",mt,[pt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.status)},null,8,ht)])):(0,a.kq)("",!0),s.item?.rating?((0,a.wg)(),(0,a.iD)("div",yt,[ft,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.rating.percentage)},null,8,gt)])):(0,a.kq)("",!0),s.item?.rating?((0,a.wg)(),(0,a.iD)("div",wt,[vt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.rating.votes)},null,8,_t)])):(0,a.kq)("",!0),s.item?.genres?((0,a.wg)(),(0,a.iD)("div",kt,[bt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.genres.join(", "))},null,8,Ct)])):(0,a.kq)("",!0),s.item?.channelId?((0,a.wg)(),(0,a.iD)("div",xt,[Pt,(0,a._)("div",Dt,[(0,a._)("a",{href:`https://www.youtube.com/channel/${s.item.channelId}`,target:"_blank",textContent:(0,i.zw)(s.item.channelTitle||`https://www.youtube.com/channel/${s.item.channelId}`)},null,8,St)])])):(0,a.kq)("",!0),s.item?.year?((0,a.wg)(),(0,a.iD)("div",qt,[Nt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.year)},null,8,It)])):(0,a.kq)("",!0),s.item?.publishedAt?((0,a.wg)(),(0,a.iD)("div",$t,[Mt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(e.formatDate(s.item.publishedAt,!0))},null,8,zt)])):(0,a.kq)("",!0),s.item?.file?((0,a.wg)(),(0,a.iD)("div",Tt,[Vt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.file)},null,8,Zt)])):(0,a.kq)("",!0),s.item?.trailer?((0,a.wg)(),(0,a.iD)("div",Ut,[jt,(0,a._)("div",Wt,[(0,a._)("a",{href:s.item.trailer,target:"_blank",textContent:(0,i.zw)(s.item.trailer)},null,8,Rt)])])):(0,a.kq)("",!0),s.item?.size?((0,a.wg)(),(0,a.iD)("div",Et,[Lt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(e.convertSize(s.item.size))},null,8,Ot)])):(0,a.kq)("",!0),s.item?.quality?((0,a.wg)(),(0,a.iD)("div",Ft,[Bt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.quality)},null,8,Kt)])):(0,a.kq)("",!0),s.item?.seeds?((0,a.wg)(),(0,a.iD)("div",Ht,[Yt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.seeds)},null,8,At)])):(0,a.kq)("",!0),s.item?.peers?((0,a.wg)(),(0,a.iD)("div",Qt,[Gt,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.peers)},null,8,Xt)])):(0,a.kq)("",!0),s.item?.language?((0,a.wg)(),(0,a.iD)("div",Jt,[es,(0,a._)("div",{class:"right side",textContent:(0,i.zw)(s.item.language)},null,8,ts)])):(0,a.kq)("",!0)])}const as=e=>((0,a.dD)("data-v-8f4d3bb8"),e=e(),(0,a.Cn)(),e),is={class:"image-container"},ls=["src","alt"],ns={key:1,class:"image"},rs=as((()=>(0,a._)("div",{class:"inner"},[(0,a._)("i",{class:"fas fa-play"})],-1))),os=[rs],cs={key:2,class:"imdb-link"},ds=["href"],us=as((()=>(0,a._)("i",{class:"fab fa-imdb"},null,-1))),ms=[us],ps=["textContent"];function hs(e,t,s,l,n,r){return(0,a.wg)(),(0,a.iD)("div",is,[s.item?.image?((0,a.wg)(),(0,a.iD)("img",{key:0,class:"image",src:s.item.image,alt:s.item.title},null,8,ls)):((0,a.wg)(),(0,a.iD)("div",ns,os)),s.item?.imdb_id?((0,a.wg)(),(0,a.iD)("span",cs,[(0,a._)("a",{href:`https://www.imdb.com/title/${s.item.imdb_id}`,target:"_blank"},ms,8,ds)])):(0,a.kq)("",!0),null!=s.item?.duration?((0,a.wg)(),(0,a.iD)("span",{key:3,class:"duration",textContent:(0,i.zw)(e.convertTime(s.item.duration))},null,8,ps)):(0,a.kq)("",!0)])}var ys={mixins:[k.Z],props:{item:{type:Object,default:()=>{}}}};const fs=(0,te.Z)(ys,[["render",hs],["__scopeId","data-v-8f4d3bb8"]]);var gs=fs,ws={name:"Info",components:{MediaImage:gs},mixins:[_.Z,k.Z],props:{item:{type:Object,default:()=>{}}}};const vs=(0,te.Z)(ws,[["render",ss],["__scopeId","data-v-79111024"]]);var _s=vs;const ks=e=>((0,a.dD)("data-v-f4632602"),e=e(),(0,a.Cn)(),e),bs=ks((()=>(0,a._)("i",{class:"fa fa-bars"},null,-1))),Cs=[bs],xs=["title","onClick"];function Ps(e,t,s,l,n,r){return(0,a.wg)(),(0,a.iD)("nav",null,[(0,a._)("button",{class:"menu-button mobile",onClick:t[0]||(t[0]=t=>e.$emit("toggle"))},Cs),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(s.views,((t,l)=>((0,a.wg)(),(0,a.iD)("li",{key:l,title:t.displayName,class:(0,i.C_)({selected:l===s.selectedView}),onClick:t=>e.$emit("input",l)},[(0,a._)("i",{class:(0,i.C_)(t.iconClass)},null,2)],10,xs)))),128))])}var Ds={emits:["input","toggle"],props:{selectedView:{type:String},collapsed:{type:Boolean,default:!1},views:{type:Object,default:()=>({search:{iconClass:"fa fa-search",displayName:"Search"},browser:{iconClass:"fa fa-folder",displayName:"Browser"},torrents:{iconClass:"fa fa-magnet",displayName:"Torrents"}})}}};const Ss=(0,te.Z)(Ds,[["render",Ps],["__scopeId","data-v-f4632602"]]);var qs=Ss;const Ns={class:"media-results"},Is={key:0,class:"no-content"},$s=["onClick"],Ms={class:"col-10 left side"},zs={class:"icon"},Ts=["textContent"],Vs={class:"col-2 right side"};function Zs(e,t,s,l,n,r){const o=(0,a.up)("DropdownItem"),c=(0,a.up)("Dropdown");return(0,a.wg)(),(0,a.iD)("div",Ns,[s.results?.length?(0,a.kq)("",!0):((0,a.wg)(),(0,a.iD)("div",Is," No search results ")),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(s.results,((t,l)=>((0,a.wg)(),(0,a.iD)("div",{class:(0,i.C_)(["row item",{selected:s.selectedResult===l,hidden:!s.sources[t.type]}]),key:l,onClick:t=>e.$emit("select",l)},[(0,a._)("div",Ms,[(0,a._)("div",zs,[(0,a._)("i",{class:(0,i.C_)(n.typeIcons[t.type])},null,2)]),(0,a._)("div",{class:"title",textContent:(0,i.zw)(t.title)},null,8,Ts)]),(0,a._)("div",Vs,[(0,a.Wm)(c,{title:"Actions","icon-class":"fa fa-ellipsis-h",onClick:t=>e.$emit("select",l)},{default:(0,a.w5)((()=>["torrent"!==t?.type?((0,a.wg)(),(0,a.j4)(o,{key:0,"icon-class":"fa fa-play",text:"Play",onClick:s=>e.$emit("play",t)},null,8,["onClick"])):(0,a.kq)("",!0),"torrent"===t?.type?((0,a.wg)(),(0,a.j4)(o,{key:1,"icon-class":"fa fa-download",text:"Download",onClick:s=>e.$emit("download",t)},null,8,["onClick"])):(0,a.kq)("",!0),"file"===t?.type?((0,a.wg)(),(0,a.j4)(o,{key:2,"icon-class":"fa fa-window-maximize",text:"View in browser",onClick:s=>e.$emit("view",t)},null,8,["onClick"])):(0,a.kq)("",!0),(0,a.Wm)(o,{"icon-class":"fa fa-info",text:"Info",onClick:s=>e.$emit("info",t)},null,8,["onClick"])])),_:2},1032,["onClick"])])],10,$s)))),128))])}var Us={name:"Results",components:{Dropdown:Y.Z,DropdownItem:A.Z},emits:["select","info","play","view","download"],props:{results:{type:Array,default:()=>[]},selectedResult:{type:Number},sources:{type:Object,default:()=>{}}},data(){return{typeIcons:{file:"fa fa-hdd",torrent:"fa fa-magnet",youtube:"fab fa-youtube",plex:"fa fa-plex",jellyfin:"fa fa-jellyfin"}}}};const js=(0,te.Z)(Us,[["render",Zs],["__scopeId","data-v-f13a5640"]]);var Ws=js;const Rs=e=>((0,a.dD)("data-v-77ae3705"),e=e(),(0,a.Cn)(),e),Es={class:"subtitles-container"},Ls={class:"items"},Os=Rs((()=>(0,a._)("div",{class:"col-1 icon"},[(0,a._)("i",{class:"fa fa-ban"})],-1))),Fs=Rs((()=>(0,a._)("div",{class:"col-11 title"},"None",-1))),Bs=[Os,Fs],Ks=["onClick"],Hs={class:"col-1 icon"},Ys={key:0,class:"fa fa-file"},As={key:2,class:"fa fa-closed-captioning"},Qs={class:"footer"};function Gs(e,t,s,l,n,r){const o=(0,a.up)("Loading");return(0,a.wg)(),(0,a.iD)("div",Es,[(0,a._)("div",Ls,[n.loading?((0,a.wg)(),(0,a.j4)(o,{key:0})):(0,a.kq)("",!0),(0,a._)("div",{class:(0,i.C_)(["row item",{selected:null==n.selectedItem}]),onClick:t[0]||(t[0]=e=>n.selectedItem=null)},Bs,2),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(n.items,((e,t)=>((0,a.wg)(),(0,a.iD)("div",{class:(0,i.C_)(["row item",{selected:n.selectedItem===t}]),key:t,onClick:e=>n.selectedItem=t},[(0,a._)("div",Hs,[e.IsLocal?((0,a.wg)(),(0,a.iD)("i",Ys)):e.ISO639?((0,a.wg)(),(0,a.iD)("i",{key:1,class:(0,i.C_)(["flag-icon",`flag-icon-${e.ISO639}`])},null,2)):((0,a.wg)(),(0,a.iD)("i",As))]),(0,a.Uk)(" "+(0,i.zw)(e.SubFileName),1)],10,Ks)))),128))]),(0,a._)("div",Qs,[(0,a._)("button",{onClick:t[1]||(t[1]=t=>e.$emit("select-subs",null==n.selectedItem?null:n.items[n.selectedItem]))},"Select")])])}var Xs={name:"Subtitles",mixins:[_.Z],components:{Loading:w.Z},emits:["select-subs"],props:{item:{type:Object,default:()=>{}}},data(){return{loading:!1,items:[],selectedItem:null}},methods:{async refresh(){this.loading=!0;try{this.items=await this.request("media.subtitles.search",{resource:this.item.url,language:"all"})}finally{this.loading=!1}}},mounted(){this.refresh()}};const Js=(0,te.Z)(Xs,[["render",Gs],["__scopeId","data-v-77ae3705"]]);var ea=Js,ta=s(562);const sa=e=>((0,a.dD)("data-v-a2e5c946"),e=e(),(0,a.Cn)(),e),aa={class:"browser-container"},ia=sa((()=>(0,a._)("div",{class:"col-10 left side"},[(0,a._)("i",{class:"icon fa fa-folder"}),(0,a._)("span",{class:"name"},"..")],-1))),la=[ia],na=["onClick"],ra={class:"col-10"},oa={class:"name"},ca={class:"col-2 actions"};function da(e,t,s,l,n,r){const o=(0,a.up)("Loading"),c=(0,a.up)("DropdownItem"),d=(0,a.up)("Dropdown");return(0,a.wg)(),(0,a.iD)("div",aa,[n.loading?((0,a.wg)(),(0,a.j4)(o,{key:0})):(0,a.kq)("",!0),n.path?.length&&"/"!==n.path?((0,a.wg)(),(0,a.iD)("div",{key:1,class:"row item",onClick:t[0]||(t[0]=e=>n.path=(n.path||"")+"/..")},la)):(0,a.kq)("",!0),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(r.filteredFiles,((t,l)=>((0,a.wg)(),(0,a.iD)("div",{class:"row item",key:l,onClick:e=>n.path=t.path},[(0,a._)("div",ra,[(0,a._)("i",{class:(0,i.C_)(["icon fa",{"fa-file":"directory"!==t.type,"fa-folder":"directory"===t.type}])},null,2),(0,a._)("span",oa,(0,i.zw)(t.name),1)]),(0,a._)("div",ca,[(0,a.Wm)(d,null,{default:(0,a.w5)((()=>[s.isMedia&&e.mediaExtensions.has(t.name.split(".").pop())?((0,a.wg)(),(0,a.j4)(c,{key:0,"icon-class":"fa fa-play",text:"Play",onClick:s=>e.$emit("play",{type:"file",url:`file://${t.path}`})},null,8,["onClick"])):(0,a.kq)("",!0)])),_:2},1024)])],8,na)))),128))])}var ua={name:"Browser",components:{DropdownItem:A.Z,Dropdown:Y.Z,Loading:w.Z},mixins:[_.Z,k.Z],emits:["path-change"],props:{initialPath:{type:String},isMedia:{type:Boolean},filter:{type:String,default:""}},data(){return{loading:!1,path:this.initialPath,files:[]}},computed:{filteredFiles(){return this.filter?.length?this.files.filter((e=>(e?.name||"").toLowerCase().indexOf(this.filter.toLowerCase())>=0)):this.files}},methods:{async refresh(){this.loading=!0;try{this.files=await this.request("file.list",{path:this.path}),this.$emit("path-change",this.path)}finally{this.loading=!1}}},mounted(){this.$watch((()=>this.path),(()=>this.refresh())),this.refresh()}};const ma=(0,te.Z)(ua,[["render",da],["__scopeId","data-v-a2e5c946"]]);var pa=ma,ha={name:"Media",mixins:[_.Z,k.Z],components:{Browser:pa,Loading:w.Z,MediaView:b.Z,Header:Ne,Results:Ws,Modal:v.Z,Info:_s,Nav:qs,TorrentView:ta.Z,Subtitles:ea},props:{pluginName:{type:String,required:!0},mediaButtons:{type:Object,default:()=>({previous:!1,next:!1,stop:!0})}},data(){return{loading:!1,results:[],selectedResult:null,selectedPlayer:null,selectedView:"search",selectedSubtitles:null,showSubtitlesModal:!1,forceShowNav:!1,awaitingPlayTorrent:null,urlPlay:null,browserFilter:null,torrentPlugin:null,torrentPlugins:["torrent","rtorrent"],sources:{file:!0,youtube:!0,torrent:!0}}},computed:{hasSubtitlesPlugin(){return"media.subtitles"in this.$root.config},navContainerStyle(){return this.forceShowNav?{display:"flex !important"}:{}},selectedItem(){return this.selectedPlayer&&this.selectedPlayer.status&&("play"===this.selectedPlayer.status.state||"pause"===this.selectedPlayer.status.state)?this.selectedPlayer.status:this.results[this.selectedResult]}},methods:{async search(e){this.loading=!0;try{this.results=await this.request(`${this.pluginName}.search`,e)}finally{this.loading=!1}},async play(e){if("torrent"===e?.type)return this.awaitingPlayTorrent=e.url,void await this.download(e);this.selectedPlayer.component.supports(e)||(e=await this.startStreaming(e,this.pluginName)),await this.selectedPlayer.component.play(e,this.selectedSubtitles,this.selectedPlayer),await this.refresh()},async pause(){await this.selectedPlayer.component.pause(this.selectedPlayer),await this.refresh()},async stop(){await this.selectedPlayer.component.stop(this.selectedPlayer),await this.refresh()},async setVolume(e){await this.selectedPlayer.component.setVolume(e,this.selectedPlayer),await this.refresh()},async toggleMute(){await this.selectedPlayer.component.toggleMute(this.selectedPlayer),await this.refresh()},async seek(e){await this.selectedPlayer.component.seek(e,this.selectedPlayer),await this.refresh()},async view(e){const t=await this.startStreaming(e,this.pluginName,!0);window.open(t.url,"_blank")},async download(e){"torrent"===e?.type&&await this.downloadTorrent(e)},async refresh(){this.selectedPlayer.status=await this.selectedPlayer.component.status(this.selectedPlayer)},onStatusUpdate(e){this.selectedPlayer&&(this.selectedPlayer.status=e)},onTorrentQueued(e){this.notify({title:"Torrent queued for download",text:e.name,image:{iconClass:"fa fa-magnet"}})},onTorrentMetadata(e){this.notify({title:"Torrent metadata downloaded",text:e.name,image:{iconClass:"fa fa-info"}})},onTorrentDownloadStart(e){this.notify({title:"Torrent download started",text:e.name,image:{iconClass:"fa fa-download"}})},onTorrentDownloadCompleted(e){this.notify({title:"Torrent download completed",text:e.name,image:{iconClass:"fa fa-check"}})},getTorrentPlugin(){const e=this.$root.config[this.pluginName]||{};let t=e.torrent_plugin;if(!t)for(let s of this.torrentPlugins)if(s in this.$root.config){t=s;break}return t},async downloadTorrent(e){const t=this.getTorrentPlugin();if(t)return await this.request(`${t}.download`,{torrent:e?.url||e});this.notify({text:"No torrent plugins configured",error:!0})},async selectSubtitles(e){if(this.$refs.subtitlesSelector.close(),!e)return void(this.selectedSubtitles=null);this.notify({text:"Downloading subtitles track",image:{iconClass:"fa fa-download"}});const t=await this.request("media.subtitles.download",{link:e.SubDownloadLink});this.selectedSubtitles=t.filename,this.notify({text:"Subtitles track downloaded",image:{iconClass:"fa fa-check"}})},onResultSelect(e){null!=this.selectedResult&&this.selectedResult===e||(this.selectedResult=e,this.selectedSubtitles=null)},showPlayUrlModal(){this.$refs.playUrlModal.show(),this.$refs.playUrlInput.value="",this.$nextTick((()=>{this.$refs.playUrlInput.value="",this.$refs.playUrlInput.focus()}))},async playUrl(e){this.loading=!0;try{await this.play({url:e}),this.$refs.playUrlModal.close()}finally{this.loading=!1}}},mounted(){this.$watch((()=>this.selectedPlayer),(e=>{e&&this.refresh()})),this.$watch((()=>this.selectedSubtitles),(e=>{new Set(["play","pause"]).has(this.selectedPlayer?.status?.state)&&(e?this.selectedPlayer.component.addSubtitles(e):this.selectedPlayer.component.removeSubtitles())})),this.torrentPlugin=this.getTorrentPlugin(),this.subscribe(this.onTorrentQueued,"notify-on-torrent-queued","platypush.message.event.torrent.TorrentQueuedEvent"),this.subscribe(this.onTorrentMetadata,"on-torrent-metadata","platypush.message.event.torrent.TorrentDownloadedMetadataEvent"),this.subscribe(this.onTorrentDownloadStart,"notify-on-torrent-download-start","platypush.message.event.torrent.TorrentDownloadStartEvent"),this.subscribe(this.onTorrentDownloadCompleted,"notify-on-torrent-download-completed","platypush.message.event.torrent.TorrentDownloadCompletedEvent"),"media.plex"in this.$root.config&&(this.sources.plex=!0),"media.jellyfin"in this.$root.config&&(this.sources.jellyfin=!0)},destroy(){this.unsubscribe("notify-on-torrent-queued"),this.unsubscribe("on-torrent-metadata"),this.unsubscribe("notify-on-torrent-download-start"),this.unsubscribe("notify-on-torrent-download-completed")}};const ya=(0,te.Z)(ha,[["render",g],["__scopeId","data-v-68cf0316"]]);var fa=ya},562:function(e,t,s){s.d(t,{Z:function(){return me}});var a=s(6252),i=s(3577);const l=e=>((0,a.dD)("data-v-7351a8a4"),e=e(),(0,a.Cn)(),e),n={key:1,class:"torrent-transfers fade-in"},r={key:0,class:"no-content"},o=["onClick"],c={class:"col-8 left side"},d=["textContent"],u={class:"col-2 right side"},m=["textContent"],p={class:"col-2 right side"},h={key:0,class:"modal-body torrent-info"},y={key:0,class:"row"},f=l((()=>(0,a._)("div",{class:"attr"},"Name",-1))),g=["textContent"],w={key:1,class:"row"},v=l((()=>(0,a._)("div",{class:"attr"},"State",-1))),_=["textContent"],k={class:"row"},b=l((()=>(0,a._)("div",{class:"attr"},"Progress",-1))),C=["textContent"],x={class:"row"},P=l((()=>(0,a._)("div",{class:"attr"},"DL rate",-1))),D=["textContent"],S={class:"row"},q=l((()=>(0,a._)("div",{class:"attr"},"UL rate",-1))),N=["textContent"],I={class:"row"},$=l((()=>(0,a._)("div",{class:"attr"},"Size",-1))),M=["textContent"],z={key:2,class:"row"},T=l((()=>(0,a._)("div",{class:"attr"},"Remaining",-1))),V=["textContent"],Z={class:"row"},U=l((()=>(0,a._)("div",{class:"attr"},"URL",-1))),j={class:"value nowrap"},W=["href","textContent"],R={class:"row"},E=l((()=>(0,a._)("div",{class:"attr"},"Peers",-1))),L=["textContent"],O={key:3,class:"row"},F=l((()=>(0,a._)("div",{class:"attr"},"Started",-1))),B=["textContent"],K={key:4,class:"row"},H=l((()=>(0,a._)("div",{class:"attr"},"Finished",-1))),Y=["textContent"],A={key:5,class:"row"},Q=l((()=>(0,a._)("div",{class:"attr"},"Save path",-1))),G=["textContent"],X={key:0,class:"modal-body torrent-files"},J={class:"col-1 icon"},ee={key:1,class:"fa fa-file"},te=["textContent"];function se(e,t,s,l,se,ae){const ie=(0,a.up)("Loading"),le=(0,a.up)("DropdownItem"),ne=(0,a.up)("Dropdown"),re=(0,a.up)("Modal");return se.loading?((0,a.wg)(),(0,a.j4)(ie,{key:0})):((0,a.wg)(),(0,a.iD)("div",n,[Object.keys(se.transfers).length?(0,a.kq)("",!0):((0,a.wg)(),(0,a.iD)("div",r,"No torrent transfers in progress")),((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(se.transfers,((s,l)=>((0,a.wg)(),(0,a.iD)("div",{class:(0,i.C_)(["row item",{selected:se.selectedItem===l}]),key:l,onClick:e=>se.selectedItem=l},[(0,a._)("div",c,[(0,a._)("i",{class:(0,i.C_)(["icon fa",{"fa-check":null!=s.finish_date,"fa-play":!s.finish_date&&"downloading"===s.state,"fa-pause":!s.finish_date&&"paused"===s.state,"fa-stop":!s.finish_date&&"stopped"===s.state}])},null,2),(0,a._)("div",{class:"title",textContent:(0,i.zw)(s.name||s.hash||s.url)},null,8,d)]),(0,a._)("div",u,[(0,a._)("span",{textContent:(0,i.zw)(`${s.progress}%`)},null,8,m)]),(0,a._)("div",p,[(0,a.Wm)(ne,{title:"Actions","icon-class":"fa fa-ellipsis-h",onClick:e=>se.selectedItem=l},{default:(0,a.w5)((()=>["downloading"===s.state?((0,a.wg)(),(0,a.j4)(le,{key:0,"icon-class":"fa fa-pause",text:"Pause transfer",onClick:e=>ae.pause(ae.torrentId(s))},null,8,["onClick"])):(0,a.kq)("",!0),"paused"===s.state?((0,a.wg)(),(0,a.j4)(le,{key:1,"icon-class":"fa fa-play",text:"Resume transfer",onClick:e=>ae.resume(ae.torrentId(s))},null,8,["onClick"])):(0,a.kq)("",!0),(0,a.Wm)(le,{"icon-class":"fa fa-trash",text:"Remove transfer",onClick:e=>ae.remove(ae.torrentId(s))},null,8,["onClick"]),(0,a.Wm)(le,{"icon-class":"fa fa-folder",text:"View files",onClick:t[0]||(t[0]=t=>e.$refs.torrentFiles.isVisible=!0)}),(0,a.Wm)(le,{"icon-class":"fa fa-info",text:"Torrent info",onClick:t[1]||(t[1]=t=>e.$refs.torrentInfo.isVisible=!0)})])),_:2},1032,["onClick"])])],10,o)))),128)),(0,a.Wm)(re,{ref:"torrentInfo",title:"Torrent info",width:"80%"},{default:(0,a.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,a.wg)(),(0,a.iD)("div",h,[se.transfers[se.selectedItem].name?((0,a.wg)(),(0,a.iD)("div",y,[f,(0,a._)("div",{class:"value",textContent:(0,i.zw)(se.transfers[se.selectedItem].name)},null,8,g)])):(0,a.kq)("",!0),se.transfers[se.selectedItem].state?((0,a.wg)(),(0,a.iD)("div",w,[v,(0,a._)("div",{class:"value",textContent:(0,i.zw)(se.transfers[se.selectedItem].state)},null,8,_)])):(0,a.kq)("",!0),(0,a._)("div",k,[b,(0,a._)("div",{class:"value",textContent:(0,i.zw)(`${se.transfers[se.selectedItem].progress||0}%`)},null,8,C)]),(0,a._)("div",x,[P,(0,a._)("div",{class:"value",textContent:(0,i.zw)(`${e.convertSize(se.transfers[se.selectedItem].download_rate||0)}/s`)},null,8,D)]),(0,a._)("div",S,[q,(0,a._)("div",{class:"value",textContent:(0,i.zw)(`${e.convertSize(se.transfers[se.selectedItem].upload_rate||0)}/s`)},null,8,N)]),(0,a._)("div",I,[$,(0,a._)("div",{class:"value",textContent:(0,i.zw)(e.convertSize(se.transfers[se.selectedItem].size||0))},null,8,M)]),se.transfers[se.selectedItem].remaining_bytes?((0,a.wg)(),(0,a.iD)("div",z,[T,(0,a._)("div",{class:"value",textContent:(0,i.zw)(e.convertSize(se.transfers[se.selectedItem].remaining_bytes))},null,8,V)])):(0,a.kq)("",!0),(0,a._)("div",Z,[U,(0,a._)("div",j,[(0,a._)("a",{href:se.transfers[se.selectedItem].url,target:"_blank",textContent:(0,i.zw)(se.transfers[se.selectedItem].url)},null,8,W)])]),(0,a._)("div",R,[E,(0,a._)("div",{class:"value",textContent:(0,i.zw)(se.transfers[se.selectedItem].peers||0)},null,8,L)]),se.transfers[se.selectedItem].start_date?((0,a.wg)(),(0,a.iD)("div",O,[F,(0,a._)("div",{class:"value",textContent:(0,i.zw)(e.formatDateTime(se.transfers[se.selectedItem].start_date))},null,8,B)])):(0,a.kq)("",!0),se.transfers[se.selectedItem].finish_date?((0,a.wg)(),(0,a.iD)("div",K,[H,(0,a._)("div",{class:"value",textContent:(0,i.zw)(e.formatDateTime(se.transfers[se.selectedItem].finish_date))},null,8,Y)])):(0,a.kq)("",!0),se.transfers[se.selectedItem].save_path?((0,a.wg)(),(0,a.iD)("div",A,[Q,(0,a._)("div",{class:"value",textContent:(0,i.zw)(se.transfers[se.selectedItem].save_path)},null,8,G)])):(0,a.kq)("",!0)])):(0,a.kq)("",!0)])),_:1},512),(0,a.Wm)(re,{ref:"torrentFiles",title:"Torrent files",width:"80%"},{default:(0,a.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,a.wg)(),(0,a.iD)("div",X,[((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)(ae.relativeFiles,((t,l)=>((0,a.wg)(),(0,a.iD)("div",{class:"row",key:t},[(0,a._)("div",J,[s.isMedia&&e.mediaExtensions.has(t.split(".").pop())?((0,a.wg)(),(0,a.j4)(ne,{key:0},{default:(0,a.w5)((()=>[(0,a.Wm)(le,{"icon-class":"fa fa-play",text:"Play",onClick:t=>e.$emit("play",{url:`file://${se.transfers[se.selectedItem].files[l]}`,type:"file"})},null,8,["onClick"])])),_:2},1024)):((0,a.wg)(),(0,a.iD)("i",ee))]),(0,a._)("div",{class:"col-11 name",textContent:(0,i.zw)(t)},null,8,te)])))),128))])):(0,a.kq)("",!0)])),_:1},512)]))}var ae=s(6791),ie=s(8637),le=s(1065),ne=s(3493),re=s(8832),oe=s(1693),ce={name:"View",emits:["play","play-with-captions"],components:{Dropdown:re.Z,DropdownItem:oe.Z,Loading:ae.Z,Modal:ne.Z},mixins:[ie.Z,le.Z],props:{pluginName:{type:String,required:!0},isMedia:{type:Boolean,default:!1}},data(){return{loading:!1,transfers:{},selectedItem:null}},computed:{relativeFiles(){return null!=this.selectedItem&&this.transfers[this.selectedItem]?.files?.length?this.transfers[this.selectedItem].files.map((e=>e.split("/").pop())):[]}},methods:{torrentId(e){return e?.hash&&e.hash.length?e.hash:e.url},async refresh(){this.loading=!0;try{this.transfers=Object.values(await this.request(`${this.pluginName}.status`)||{}).reduce(((e,t)=>(e[this.torrentId(t)]=t,e)),{})}finally{this.loading=!1}},async pause(e){await this.request(`${this.pluginName}.pause`,{torrent:e}),await this.refresh()},async resume(e){await this.request(`${this.pluginName}.resume`,{torrent:e}),await this.refresh()},async remove(e){await this.request(`${this.pluginName}.remove`,{torrent:e}),await this.refresh()},onTorrentUpdate(e){this.transfers[this.torrentId(e)]=e},onTorrentRemove(e){const t=this.torrentId(e);t in this.transfers&&delete this.transfers[t]}},mounted(){this.refresh(),this.subscribe(this.onTorrentUpdate,"on-torrent-update","platypush.message.event.torrent.TorrentQueuedEvent","platypush.message.event.torrent.TorrentDownloadedMetadataEvent","platypush.message.event.torrent.TorrentDownloadStartEvent","platypush.message.event.torrent.TorrentDownloadProgressEvent","platypush.message.event.torrent.TorrentResumedEvent","platypush.message.event.torrent.TorrentPausedEvent","platypush.message.event.torrent.TorrentSeedingStartEvent","platypush.message.event.torrent.TorrentStateChangeEvent","platypush.message.event.torrent.TorrentDownloadStopEvent","platypush.message.event.torrent.TorrentDownloadCompletedEvent"),this.subscribe(this.onTorrentRemove,"on-torrent-remove","platypush.message.event.torrent.TorrentRemovedEvent")},destroy(){this.unsubscribe("on-torrent-update"),this.unsubscribe("on-torrent-remove")}},de=s(3744);const ue=(0,de.Z)(ce,[["render",se],["__scopeId","data-v-7351a8a4"]]);var me=ue}}]);
//# sourceMappingURL=7816.72e88390.js.map