mirror of
https://github.com/owntone/owntone-server.git
synced 2024-12-27 15:45:56 -05:00
2 lines
218 KiB
JavaScript
2 lines
218 KiB
JavaScript
(function(t){function s(s){for(var e,l,o=s[0],r=s[1],c=s[2],u=0,_=[];u<o.length;u++)l=o[u],Object.prototype.hasOwnProperty.call(i,l)&&i[l]&&_.push(i[l][0]),i[l]=0;for(e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e]);d&&d(s);while(_.length)_.shift()();return n.push.apply(n,c||[]),a()}function a(){for(var t,s=0;s<n.length;s++){for(var a=n[s],e=!0,o=1;o<a.length;o++){var r=a[o];0!==i[r]&&(e=!1)}e&&(n.splice(s--,1),t=l(l.s=a[0]))}return t}var e={},i={app:0},n=[];function l(s){if(e[s])return e[s].exports;var a=e[s]={i:s,l:!1,exports:{}};return t[s].call(a.exports,a,a.exports,l),a.l=!0,a.exports}l.m=t,l.c=e,l.d=function(t,s,a){l.o(t,s)||Object.defineProperty(t,s,{enumerable:!0,get:a})},l.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},l.t=function(t,s){if(1&s&&(t=l(t)),8&s)return t;if(4&s&&"object"===typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(l.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&s&&"string"!=typeof t)for(var e in t)l.d(a,e,function(s){return t[s]}.bind(null,e));return a},l.n=function(t){var s=t&&t.__esModule?function(){return t["default"]}:function(){return t};return l.d(s,"a",s),s},l.o=function(t,s){return Object.prototype.hasOwnProperty.call(t,s)},l.p="/";var o=window["webpackJsonp"]=window["webpackJsonp"]||[],r=o.push.bind(o);o.push=s,o=o.slice();for(var c=0;c<o.length;c++)s(o[c]);var d=r;n.push([0,"chunk-vendors"]),a()})({0:function(t,s,a){t.exports=a("56d7")},"39bf":function(t,s){},4061:function(t,s,a){"use strict";a.d(s,"a",(function(){return e})),a.d(s,"b",(function(){return i}));var e=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",{staticClass:"section fd-content"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[t._t("options"),a("nav",{staticClass:"level",attrs:{id:"top"}},[a("div",{staticClass:"level-left"},[a("div",{staticClass:"level-item has-text-centered-mobile"},[a("div",[t._t("heading-left")],2)])]),a("div",{staticClass:"level-right has-text-centered-mobile"},[t._t("heading-right")],2)]),t._t("content"),a("div",{staticStyle:{"margin-top":"16px"}},[t._t("footer")],2)],2)])])])},i=[]},4678:function(t,s,a){var e={"./af":"2bfb","./af.js":"2bfb","./ar":"8e73","./ar-dz":"a356","./ar-dz.js":"a356","./ar-kw":"423e","./ar-kw.js":"423e","./ar-ly":"1cfd","./ar-ly.js":"1cfd","./ar-ma":"0a84","./ar-ma.js":"0a84","./ar-sa":"8230","./ar-sa.js":"8230","./ar-tn":"6d83","./ar-tn.js":"6d83","./ar.js":"8e73","./az":"485c","./az.js":"485c","./be":"1fc1","./be.js":"1fc1","./bg":"84aa","./bg.js":"84aa","./bm":"a7fa","./bm.js":"a7fa","./bn":"9043","./bn.js":"9043","./bo":"d26a","./bo.js":"d26a","./br":"6887","./br.js":"6887","./bs":"2554","./bs.js":"2554","./ca":"d716","./ca.js":"d716","./cs":"3c0d","./cs.js":"3c0d","./cv":"03ec","./cv.js":"03ec","./cy":"9797","./cy.js":"9797","./da":"0f14","./da.js":"0f14","./de":"b469","./de-at":"b3eb","./de-at.js":"b3eb","./de-ch":"bb71","./de-ch.js":"bb71","./de.js":"b469","./dv":"598a","./dv.js":"598a","./el":"8d47","./el.js":"8d47","./en-SG":"cdab","./en-SG.js":"cdab","./en-au":"0e6b","./en-au.js":"0e6b","./en-ca":"3886","./en-ca.js":"3886","./en-gb":"39a6","./en-gb.js":"39a6","./en-ie":"e1d3","./en-ie.js":"e1d3","./en-il":"7333","./en-il.js":"7333","./en-nz":"6f50","./en-nz.js":"6f50","./eo":"65db","./eo.js":"65db","./es":"898b","./es-do":"0a3c","./es-do.js":"0a3c","./es-us":"55c9","./es-us.js":"55c9","./es.js":"898b","./et":"ec18","./et.js":"ec18","./eu":"0ff2","./eu.js":"0ff2","./fa":"8df4","./fa.js":"8df4","./fi":"81e9","./fi.js":"81e9","./fo":"0721","./fo.js":"0721","./fr":"9f26","./fr-ca":"d9f8","./fr-ca.js":"d9f8","./fr-ch":"0e49","./fr-ch.js":"0e49","./fr.js":"9f26","./fy":"7118","./fy.js":"7118","./ga":"5120","./ga.js":"5120","./gd":"f6b4","./gd.js":"f6b4","./gl":"8840","./gl.js":"8840","./gom-latn":"0caa","./gom-latn.js":"0caa","./gu":"e0c5","./gu.js":"e0c5","./he":"c7aa","./he.js":"c7aa","./hi":"dc4d","./hi.js":"dc4d","./hr":"4ba9","./hr.js":"4ba9","./hu":"5b14","./hu.js":"5b14","./hy-am":"d6b6","./hy-am.js":"d6b6","./id":"5038","./id.js":"5038","./is":"0558","./is.js":"0558","./it":"6e98","./it-ch":"6f12","./it-ch.js":"6f12","./it.js":"6e98","./ja":"079e","./ja.js":"079e","./jv":"b540","./jv.js":"b540","./ka":"201b","./ka.js":"201b","./kk":"6d79","./kk.js":"6d79","./km":"e81d","./km.js":"e81d","./kn":"3e92","./kn.js":"3e92","./ko":"22f8","./ko.js":"22f8","./ku":"2421","./ku.js":"2421","./ky":"9609","./ky.js":"9609","./lb":"440c","./lb.js":"440c","./lo":"b29d","./lo.js":"b29d","./lt":"26f9","./lt.js":"26f9","./lv":"b97c","./lv.js":"b97c","./me":"293c","./me.js":"293c","./mi":"688b","./mi.js":"688b","./mk":"6909","./mk.js":"6909","./ml":"02fb","./ml.js":"02fb","./mn":"958b","./mn.js":"958b","./mr":"39bd","./mr.js":"39bd","./ms":"ebe4","./ms-my":"6403","./ms-my.js":"6403","./ms.js":"ebe4","./mt":"1b45","./mt.js":"1b45","./my":"8689","./my.js":"8689","./nb":"6ce3","./nb.js":"6ce3","./ne":"3a39","./ne.js":"3a39","./nl":"facd","./nl-be":"db29","./nl-be.js":"db29","./nl.js":"facd","./nn":"b84c","./nn.js":"b84c","./pa-in":"f3ff","./pa-in.js":"f3ff","./pl":"8d57","./pl.js":"8d57","./pt":"f260","./pt-br":"d2d4","./pt-br.js":"d2d4","./pt.js":"f260","./ro":"972c","./ro.js":"972c","./ru":"957c","./ru.js":"957c","./sd":"6784","./sd.js":"6784","./se":"ffff","./se.js":"ffff","./si":"eda5","./si.js":"eda5","./sk":"7be6","./sk.js":"7be6","./sl":"8155","./sl.js":"8155","./sq":"c8f3","./sq.js":"c8f3","./sr":"cf1e","./sr-cyrl":"13e9","./sr-cyrl.js":"13e9","./sr.js":"cf1e","./ss":"52bd","./ss.js":"52bd","./sv":"5fbd","./sv.js":"5fbd","./sw":"74dc","./sw.js":"74dc","./ta":"3de5","./ta.js":"3de5","./te":"5cbb","./te.js":"5cbb","./tet":"576c","./tet.js":"576c","./tg":"3b1b","./tg.js":"3b1b","./th":"10e8","./th.js":"10e8","./tl-ph":"0f38","./tl-ph.js":"0f38","./tlh":"cf75","./tlh.js":"cf75","./tr":"0e81","./tr.js":"0e81","./tzl":"cf51","./tzl.js":"cf51","./tzm":"c109","./tzm-latn":"b53d","./tzm-latn.js":"b53d","./tzm.js":"c109","./ug-cn":"6117","./ug-cn.js":"6117","./uk":"ada2","./uk.js":"ada2","./ur":"5294","./ur.js":"5294","./uz":"2e8c","./uz-latn":"010e","./uz-latn.js":"010e","./uz.js":"2e8c","./vi":"2921","./vi.js":"2921","./x-pseudo":"fd7e","./x-pseudo.js":"fd7e","./yo":"7f33","./yo.js":"7f33","./zh-cn":"5c3a","./zh-cn.js":"5c3a","./zh-hk":"49ab","./zh-hk.js":"49ab","./zh-tw":"90ea","./zh-tw.js":"90ea"};function i(t){var s=n(t);return a(s)}function n(t){if(!a.o(e,t)){var s=new Error("Cannot find module '"+t+"'");throw s.code="MODULE_NOT_FOUND",s}return e[t]}i.keys=function(){return Object.keys(e)},i.resolve=n,t.exports=i,i.id="4678"},"53c4":function(t,s,a){},"56d7":function(t,s,a){"use strict";a.r(s);a("e260"),a("e6cf"),a("cca6"),a("a79d");var e,i=a("a026"),n=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{attrs:{id:"app"}},[a("navbar-top"),a("vue-progress-bar",{staticClass:"fd-progress-bar"}),a("transition",{attrs:{name:"fade"}},[a("router-view",{directives:[{name:"show",rawName:"v-show",value:!0,expression:"true"}]})],1),a("modal-dialog-remote-pairing",{attrs:{show:t.pairing_active},on:{close:function(s){t.pairing_active=!1}}}),a("notifications",{directives:[{name:"show",rawName:"v-show",value:!t.show_burger_menu,expression:"!show_burger_menu"}]}),a("navbar-bottom"),a("div",{directives:[{name:"show",rawName:"v-show",value:t.show_burger_menu||t.show_player_menu,expression:"show_burger_menu || show_player_menu"}],staticClass:"is-overlay",staticStyle:{"z-index":"25",width:"100vw",height:"100vh","background-color":"rgba(10, 10, 10, 0.2)"},on:{click:function(s){t.show_burger_menu=t.show_player_menu=!1}}})],1)},l=[],o=(a("caad"),a("2532"),function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("nav",{staticClass:"navbar is-light is-fixed-top",style:t.zindex,attrs:{role:"navigation","aria-label":"main navigation"}},[a("div",{staticClass:"navbar-brand"},[a("navbar-item-link",{attrs:{to:"/playlists"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-library-music"})])]),a("navbar-item-link",{attrs:{to:"/music"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-music"})])]),a("navbar-item-link",{attrs:{to:"/podcasts"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-microphone"})])]),t.audiobooks.tracks>0?a("navbar-item-link",{attrs:{to:"/audiobooks"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-book-open-variant"})])]):t._e(),a("navbar-item-link",{attrs:{to:"/files"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-folder-open"})])]),a("navbar-item-link",{attrs:{to:"/search"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-magnify"})])]),a("div",{staticClass:"navbar-burger",class:{"is-active":t.show_burger_menu},on:{click:function(s){t.show_burger_menu=!t.show_burger_menu}}},[a("span"),a("span"),a("span")])],1),a("div",{staticClass:"navbar-menu",class:{"is-active":t.show_burger_menu}},[a("div",{staticClass:"navbar-start"}),a("div",{staticClass:"navbar-end"},[a("div",{staticClass:"navbar-item has-dropdown is-hoverable",class:{"is-active":t.show_settings_menu},on:{click:t.on_click_outside_settings}},[t._m(0),a("div",{staticClass:"navbar-dropdown is-right"},[a("navbar-item-link",{attrs:{to:"/playlists"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-library-music"})]),t._v(" "),a("b",[t._v("Playlists")])]),a("navbar-item-link",{attrs:{to:"/music",exact:""}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-music"})]),t._v(" "),a("b",[t._v("Music")])]),a("navbar-item-link",{attrs:{to:"/music/artists"}},[a("span",{staticStyle:{"padding-left":"1.5rem"}},[t._v("Artists")])]),a("navbar-item-link",{attrs:{to:"/music/albums"}},[a("span",{staticStyle:{"padding-left":"1.5rem"}},[t._v("Albums")])]),a("navbar-item-link",{attrs:{to:"/music/genres"}},[a("span",{staticStyle:{"padding-left":"1.5rem"}},[t._v("Genres")])]),t.spotify_enabled?a("navbar-item-link",{attrs:{to:"/music/spotify"}},[a("span",{staticStyle:{"padding-left":"1.5rem"}},[t._v("Spotify")])]):t._e(),a("navbar-item-link",{attrs:{to:"/podcasts"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-microphone"})]),t._v(" "),a("b",[t._v("Podcasts")])]),a("navbar-item-link",{attrs:{to:"/audiobooks"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-book-open-variant"})]),t._v(" "),a("b",[t._v("Audiobooks")])]),a("navbar-item-link",{attrs:{to:"/files"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-folder-open"})]),t._v(" "),a("b",[t._v("Files")])]),a("navbar-item-link",{attrs:{to:"/search"}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-magnify"})]),t._v(" "),a("b",[t._v("Search")])]),a("hr",{staticStyle:{margin:"12px 0"}}),a("a",{staticClass:"navbar-item",attrs:{href:"/admin.html"}},[t._v("Admin")]),a("hr",{staticStyle:{margin:"12px 0"}}),a("navbar-item-link",{attrs:{to:"/settings/webinterface"}},[t._v("Settings")]),a("navbar-item-link",{attrs:{to:"/about"}},[t._v("About")])],1)])])]),a("div",{directives:[{name:"show",rawName:"v-show",value:t.show_settings_menu,expression:"show_settings_menu"}],staticClass:"is-overlay",staticStyle:{"z-index":"10",width:"100vw",height:"100vh"},on:{click:function(s){t.show_settings_menu=!1}}})])}),r=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{staticClass:"navbar-link is-arrowless"},[a("span",{staticClass:"icon is-hidden-touch"},[a("i",{staticClass:"mdi mdi-24px mdi-menu"})]),a("span",{staticClass:"is-hidden-desktop has-text-weight-bold"},[t._v("forked-daapd")])])}],c=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{staticClass:"navbar-item",class:{"is-active":t.is_active},attrs:{href:t.full_path()},on:{click:function(s){return s.stopPropagation(),s.preventDefault(),t.open_link()}}},[t._t("default")],2)},d=[],u=(a("2ca0"),"UPDATE_CONFIG"),_="UPDATE_SETTINGS",p="UPDATE_SETTINGS_OPTION",m="UPDATE_LIBRARY_STATS",h="UPDATE_LIBRARY_AUDIOBOOKS_COUNT",f="UPDATE_LIBRARY_PODCASTS_COUNT",y="UPDATE_OUTPUTS",v="UPDATE_PLAYER_STATUS",g="UPDATE_QUEUE",b="UPDATE_LASTFM",k="UPDATE_SPOTIFY",C="UPDATE_PAIRING",w="SPOTIFY_NEW_RELEASES",x="SPOTIFY_FEATURED_PLAYLISTS",$="ADD_NOTIFICATION",q="DELETE_NOTIFICATION",j="ADD_RECENT_SEARCH",S="HIDE_SINGLES",P="SHOW_ONLY_NEXT_ITEMS",A="SHOW_BURGER_MENU",O="SHOW_PLAYER_MENU",T={name:"NavbarItemLink",props:{to:String,exact:Boolean},computed:{is_active:function(){return this.exact?this.$route.path===this.to:this.$route.path.startsWith(this.to)},show_player_menu:{get:function(){return this.$store.state.show_player_menu},set:function(t){this.$store.commit(O,t)}},show_burger_menu:{get:function(){return this.$store.state.show_burger_menu},set:function(t){this.$store.commit(A,t)}}},methods:{open_link:function(){this.show_burger_menu&&this.$store.commit(A,!1),this.show_player_menu&&this.$store.commit(O,!1),this.$router.push({path:this.to})},full_path:function(){var t=this.$router.resolve(this.to);return t.href}}},E=T,I=a("2877"),D=Object(I["a"])(E,c,d,!1,null,null,null),z=D.exports,L={name:"NavbarTop",components:{NavbarItemLink:z},data:function(){return{show_settings_menu:!1}},computed:{player:function(){return this.$store.state.player},config:function(){return this.$store.state.config},library:function(){return this.$store.state.library},audiobooks:function(){return this.$store.state.audiobooks_count},podcasts:function(){return this.$store.state.podcasts_count},spotify_enabled:function(){return this.$store.state.spotify.webapi_token_valid},show_burger_menu:{get:function(){return this.$store.state.show_burger_menu},set:function(t){this.$store.commit(A,t)}},show_player_menu:function(){return this.$store.state.show_player_menu},zindex:function(){return this.show_player_menu?"z-index: 20":""}},methods:{on_click_outside_settings:function(){this.show_settings_menu=!this.show_settings_menu}},watch:{$route:function(t,s){this.show_settings_menu=!1}}},M=L,N=Object(I["a"])(M,o,r,!1,null,null,null),R=N.exports,U=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("nav",{staticClass:"navbar is-white is-fixed-bottom",class:{"is-transparent":t.is_now_playing_page,"is-dark":!t.is_now_playing_page},style:t.zindex,attrs:{role:"navigation","aria-label":"player controls"}},[a("div",{staticClass:"navbar-brand fd-expanded"},[a("navbar-item-link",{attrs:{to:"/",exact:""}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-24px mdi-playlist-play"})])]),t.is_now_playing_page?t._e():a("router-link",{staticClass:"navbar-item is-expanded is-clipped",attrs:{to:"/now-playing","active-class":"is-active",exact:""}},[a("div",{staticClass:"is-clipped"},[a("p",{staticClass:"is-size-7 fd-is-text-clipped"},[a("strong",[t._v(t._s(t.now_playing.title))]),a("br"),t._v(" "+t._s(t.now_playing.artist)),"url"===t.now_playing.data_kind?a("span",[t._v(" - "+t._s(t.now_playing.album))]):t._e()])])]),t.is_now_playing_page?a("player-button-previous",{staticClass:"navbar-item fd-margin-left-auto",attrs:{icon_style:"mdi-24px"}}):t._e(),t.is_now_playing_page?a("player-button-seek-back",{staticClass:"navbar-item",attrs:{seek_ms:"10000",icon_style:"mdi-24px"}}):t._e(),a("player-button-play-pause",{staticClass:"navbar-item",attrs:{icon_style:"mdi-36px",show_disabled_message:""}}),t.is_now_playing_page?a("player-button-seek-forward",{staticClass:"navbar-item",attrs:{seek_ms:"30000",icon_style:"mdi-24px"}}):t._e(),t.is_now_playing_page?a("player-button-next",{staticClass:"navbar-item",attrs:{icon_style:"mdi-24px"}}):t._e(),a("a",{staticClass:"navbar-item fd-margin-left-auto is-hidden-desktop",on:{click:function(s){t.show_player_menu=!t.show_player_menu}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-18px",class:{"mdi-chevron-up":!t.show_player_menu,"mdi-chevron-down":t.show_player_menu}})])]),a("div",{staticClass:"navbar-item has-dropdown has-dropdown-up fd-margin-left-auto is-hidden-touch",class:{"is-active":t.show_player_menu}},[a("a",{staticClass:"navbar-link is-arrowless",on:{click:function(s){t.show_player_menu=!t.show_player_menu}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-18px",class:{"mdi-chevron-up":!t.show_player_menu,"mdi-chevron-down":t.show_player_menu}})])]),a("div",{staticClass:"navbar-dropdown is-right is-boxed",staticStyle:{"margin-right":"6px","margin-bottom":"6px","border-radius":"6px"}},[a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"level is-mobile"},[a("div",{staticClass:"level-left fd-expanded"},[a("div",{staticClass:"level-item",staticStyle:{"flex-grow":"0"}},[a("a",{staticClass:"button is-white is-small",on:{click:t.toggle_mute_volume}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-18px",class:{"mdi-volume-off":t.player.volume<=0,"mdi-volume-high":t.player.volume>0}})])])]),a("div",{staticClass:"level-item fd-expanded"},[a("div",{staticClass:"fd-expanded"},[a("p",{staticClass:"heading"},[t._v("Volume")]),a("range-slider",{staticClass:"slider fd-has-action",attrs:{min:"0",max:"100",step:"1",value:t.player.volume},on:{change:t.set_volume}})],1)])])])]),a("hr",{staticClass:"navbar-divider"}),t._l(t.outputs,(function(t){return a("navbar-item-output",{key:t.id,attrs:{output:t}})})),a("hr",{staticClass:"navbar-divider"}),a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"level is-mobile"},[a("div",{staticClass:"level-left fd-expanded"},[a("div",{staticClass:"level-item",staticStyle:{"flex-grow":"0"}},[a("a",{staticClass:"button is-white is-small",class:{"is-loading":t.loading}},[a("span",{staticClass:"icon fd-has-action",class:{"has-text-grey-light":!t.playing&&!t.loading,"is-loading":t.loading},on:{click:t.togglePlay}},[a("i",{staticClass:"mdi mdi-18px mdi-radio-tower"})])])]),a("div",{staticClass:"level-item fd-expanded"},[a("div",{staticClass:"fd-expanded"},[a("p",{staticClass:"heading",class:{"has-text-grey-light":!t.playing}},[t._v("HTTP stream "),t._m(0)]),a("range-slider",{staticClass:"slider fd-has-action",attrs:{min:"0",max:"100",step:"1",disabled:!t.playing,value:t.stream_volume},on:{change:t.set_stream_volume}})],1)])])])]),a("hr",{staticClass:"navbar-divider"}),a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"level is-mobile fd-expanded"},[a("div",{staticClass:"level-item"},[a("div",{staticClass:"buttons has-addons"},[a("player-button-repeat",{staticClass:"button"}),a("player-button-shuffle",{staticClass:"button"}),a("player-button-consume",{staticClass:"button"})],1)])])])],2)])],1),a("div",{staticClass:"navbar-menu is-hidden-desktop",class:{"is-active":t.show_player_menu},staticStyle:{"max-height":"calc(100vh - 3.25rem)",overflow:"scroll"}},[a("div",{staticClass:"navbar-start"}),a("div",{staticClass:"navbar-end"},[a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"buttons is-centered"},[a("player-button-repeat",{staticClass:"button",attrs:{icon_style:"mdi-18px"}}),a("player-button-shuffle",{staticClass:"button",attrs:{icon_style:"mdi-18px"}}),a("player-button-consume",{staticClass:"button",attrs:{icon_style:"mdi-18px"}})],1)]),a("hr",{staticStyle:{margin:"12px 0"}}),a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"level is-mobile"},[a("div",{staticClass:"level-left fd-expanded"},[a("div",{staticClass:"level-item",staticStyle:{"flex-grow":"0"}},[a("a",{staticClass:"button is-white is-small",on:{click:t.toggle_mute_volume}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-18px",class:{"mdi-volume-off":t.player.volume<=0,"mdi-volume-high":t.player.volume>0}})])])]),a("div",{staticClass:"level-item fd-expanded"},[a("div",{staticClass:"fd-expanded"},[a("p",{staticClass:"heading"},[t._v("Volume")]),a("range-slider",{staticClass:"slider fd-has-action",attrs:{min:"0",max:"100",step:"1",value:t.player.volume},on:{change:t.set_volume}})],1)])])])]),t._l(t.outputs,(function(t){return a("navbar-item-output",{key:t.id,attrs:{output:t}})})),a("hr",{staticClass:"navbar-divider"}),a("div",{staticClass:"navbar-item fd-has-margin-bottom"},[a("div",{staticClass:"level is-mobile"},[a("div",{staticClass:"level-left fd-expanded"},[a("div",{staticClass:"level-item",staticStyle:{"flex-grow":"0"}},[a("a",{staticClass:"button is-white is-small",class:{"is-loading":t.loading}},[a("span",{staticClass:"icon fd-has-action",class:{"has-text-grey-light":!t.playing&&!t.loading,"is-loading":t.loading},on:{click:t.togglePlay}},[a("i",{staticClass:"mdi mdi-18px mdi-radio-tower"})])])]),a("div",{staticClass:"level-item fd-expanded"},[a("div",{staticClass:"fd-expanded"},[a("p",{staticClass:"heading",class:{"has-text-grey-light":!t.playing}},[t._v("HTTP stream "),t._m(1)]),a("range-slider",{staticClass:"slider fd-has-action",attrs:{min:"0",max:"100",step:"1",disabled:!t.playing,value:t.stream_volume},on:{change:t.set_stream_volume}})],1)])])])])],2)])])},B=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{attrs:{href:"/stream.mp3"}},[a("span",{staticClass:"is-lowercase"},[t._v("(stream.mp3)")])])},function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{attrs:{href:"/stream.mp3"}},[a("span",{staticClass:"is-lowercase"},[t._v("(stream.mp3)")])])}],W=(a("b0c0"),a("d3b7"),a("bc3a")),H=a.n(W),G=(a("7db0"),a("c740"),a("c975"),a("a434"),a("ade3")),F=a("2f62");i["a"].use(F["a"]);var Y=new F["a"].Store({state:{config:{websocket_port:0,version:"",buildoptions:[]},settings:{categories:[]},library:{artists:0,albums:0,songs:0,db_playtime:0,updating:!1},audiobooks_count:{},podcasts_count:{},outputs:[],player:{state:"stop",repeat:"off",consume:!1,shuffle:!1,volume:0,item_id:0,item_length_ms:0,item_progress_ms:0},queue:{version:0,count:0,items:[]},lastfm:{},spotify:{},pairing:{},spotify_new_releases:[],spotify_featured_playlists:[],notifications:{next_id:1,list:[]},recent_searches:[],hide_singles:!1,show_only_next_items:!1,show_burger_menu:!1,show_player_menu:!1},getters:{now_playing:function(t){var s=t.queue.items.find((function(s){return s.id===t.player.item_id}));return void 0===s?{}:s},settings_webinterface:function(t){return t.settings?t.settings.categories.find((function(t){return"webinterface"===t.name})):null},settings_option_show_composer_now_playing:function(t,s){if(s.settings_webinterface){var a=s.settings_webinterface.options.find((function(t){return"show_composer_now_playing"===t.name}));if(a)return a.value}return!1},settings_option_show_composer_for_genre:function(t,s){if(s.settings_webinterface){var a=s.settings_webinterface.options.find((function(t){return"show_composer_for_genre"===t.name}));if(a)return a.value}return null}},mutations:(e={},Object(G["a"])(e,u,(function(t,s){t.config=s})),Object(G["a"])(e,_,(function(t,s){t.settings=s})),Object(G["a"])(e,p,(function(t,s){var a=t.settings.categories.find((function(t){return t.name===s.category})),e=a.options.find((function(t){return t.name===s.name}));e.value=s.value})),Object(G["a"])(e,m,(function(t,s){t.library=s})),Object(G["a"])(e,h,(function(t,s){t.audiobooks_count=s})),Object(G["a"])(e,f,(function(t,s){t.podcasts_count=s})),Object(G["a"])(e,y,(function(t,s){t.outputs=s})),Object(G["a"])(e,v,(function(t,s){t.player=s})),Object(G["a"])(e,g,(function(t,s){t.queue=s})),Object(G["a"])(e,b,(function(t,s){t.lastfm=s})),Object(G["a"])(e,k,(function(t,s){t.spotify=s})),Object(G["a"])(e,C,(function(t,s){t.pairing=s})),Object(G["a"])(e,w,(function(t,s){t.spotify_new_releases=s})),Object(G["a"])(e,x,(function(t,s){t.spotify_featured_playlists=s})),Object(G["a"])(e,$,(function(t,s){if(s.topic){var a=t.notifications.list.findIndex((function(t){return t.topic===s.topic}));if(a>=0)return void t.notifications.list.splice(a,1,s)}t.notifications.list.push(s)})),Object(G["a"])(e,q,(function(t,s){var a=t.notifications.list.indexOf(s);-1!==a&&t.notifications.list.splice(a,1)})),Object(G["a"])(e,j,(function(t,s){var a=t.recent_searches.findIndex((function(t){return t===s}));a>=0&&t.recent_searches.splice(a,1),t.recent_searches.splice(0,0,s),t.recent_searches.length>5&&t.recent_searches.pop()})),Object(G["a"])(e,S,(function(t,s){t.hide_singles=s})),Object(G["a"])(e,P,(function(t,s){t.show_only_next_items=s})),Object(G["a"])(e,A,(function(t,s){t.show_burger_menu=s})),Object(G["a"])(e,O,(function(t,s){t.show_player_menu=s})),e),actions:{add_notification:function(t,s){var a=t.commit,e=t.state,i={id:e.notifications.next_id++,type:s.type,text:s.text,topic:s.topic,timeout:s.timeout};a($,i),s.timeout>0&&setTimeout((function(){a(q,i)}),s.timeout)}}});H.a.interceptors.response.use((function(t){return t}),(function(t){return t.request.status&&t.request.responseURL&&Y.dispatch("add_notification",{text:"Request failed (status: "+t.request.status+" "+t.request.statusText+", url: "+t.request.responseURL+")",type:"danger"}),Promise.reject(t)}));var Q={config:function(){return H.a.get("/api/config")},settings:function(){return H.a.get("/api/settings")},settings_update:function(t,s){return H.a.put("/api/settings/"+t+"/"+s.name,s)},library_stats:function(){return H.a.get("/api/library")},library_update:function(){return H.a.put("/api/update")},library_rescan:function(){return H.a.put("/api/rescan")},library_count:function(t){return H.a.get("/api/library/count?expression="+t)},queue:function(){return H.a.get("/api/queue")},queue_clear:function(){return H.a.put("/api/queue/clear")},queue_remove:function(t){return H.a.delete("/api/queue/items/"+t)},queue_move:function(t,s){return H.a.put("/api/queue/items/"+t+"?new_position="+s)},queue_add:function(t){return H.a.post("/api/queue/items/add?uris="+t).then((function(t){return Y.dispatch("add_notification",{text:t.data.count+" tracks appended to queue",type:"info",timeout:2e3}),Promise.resolve(t)}))},queue_add_next:function(t){var s=0;return Y.getters.now_playing&&Y.getters.now_playing.id&&(s=Y.getters.now_playing.position+1),H.a.post("/api/queue/items/add?uris="+t+"&position="+s).then((function(t){return Y.dispatch("add_notification",{text:t.data.count+" tracks appended to queue",type:"info",timeout:2e3}),Promise.resolve(t)}))},queue_expression_add:function(t){var s={};return s.expression=t,H.a.post("/api/queue/items/add",void 0,{params:s}).then((function(t){return Y.dispatch("add_notification",{text:t.data.count+" tracks appended to queue",type:"info",timeout:2e3}),Promise.resolve(t)}))},queue_expression_add_next:function(t){var s={};return s.expression=t,s.position=0,Y.getters.now_playing&&Y.getters.now_playing.id&&(s.position=Y.getters.now_playing.position+1),H.a.post("/api/queue/items/add",void 0,{params:s}).then((function(t){return Y.dispatch("add_notification",{text:t.data.count+" tracks appended to queue",type:"info",timeout:2e3}),Promise.resolve(t)}))},queue_save_playlist:function(t){return H.a.post("/api/queue/save",void 0,{params:{name:t}}).then((function(s){return Y.dispatch("add_notification",{text:'Queue saved to playlist "'+t+'"',type:"info",timeout:2e3}),Promise.resolve(s)}))},player_status:function(){return H.a.get("/api/player")},player_play_uri:function(t,s){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,e={};return e.uris=t,e.shuffle=s?"true":"false",e.clear="true",e.playback="start",e.playback_from_position=a,H.a.post("/api/queue/items/add",void 0,{params:e})},player_play_expression:function(t,s){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,e={};return e.expression=t,e.shuffle=s?"true":"false",e.clear="true",e.playback="start",e.playback_from_position=a,H.a.post("/api/queue/items/add",void 0,{params:e})},player_play:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return H.a.put("/api/player/play",void 0,{params:t})},player_playpos:function(t){return H.a.put("/api/player/play?position="+t)},player_playid:function(t){return H.a.put("/api/player/play?item_id="+t)},player_pause:function(){return H.a.put("/api/player/pause")},player_stop:function(){return H.a.put("/api/player/stop")},player_next:function(){return H.a.put("/api/player/next")},player_previous:function(){return H.a.put("/api/player/previous")},player_shuffle:function(t){var s=t?"true":"false";return H.a.put("/api/player/shuffle?state="+s)},player_consume:function(t){var s=t?"true":"false";return H.a.put("/api/player/consume?state="+s)},player_repeat:function(t){return H.a.put("/api/player/repeat?state="+t)},player_volume:function(t){return H.a.put("/api/player/volume?volume="+t)},player_output_volume:function(t,s){return H.a.put("/api/player/volume?volume="+s+"&output_id="+t)},player_seek_to_pos:function(t){return H.a.put("/api/player/seek?position_ms="+t)},player_seek:function(t){return H.a.put("/api/player/seek?seek_ms="+t)},outputs:function(){return H.a.get("/api/outputs")},output_update:function(t,s){return H.a.put("/api/outputs/"+t,s)},output_toggle:function(t){return H.a.put("/api/outputs/"+t+"/toggle")},library_artists:function(){return H.a.get("/api/library/artists?media_kind=music")},library_artist:function(t){return H.a.get("/api/library/artists/"+t)},library_albums:function(t){return t?H.a.get("/api/library/artists/"+t+"/albums"):H.a.get("/api/library/albums?media_kind=music")},library_album:function(t){return H.a.get("/api/library/albums/"+t)},library_album_tracks:function(t){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{limit:-1,offset:0};return H.a.get("/api/library/albums/"+t+"/tracks",{params:s})},library_album_track_update:function(t,s){return H.a.put("/api/library/albums/"+t+"/tracks",void 0,{params:s})},library_genres:function(){return H.a.get("/api/library/genres")},library_genre:function(t){var s={type:"albums",media_kind:"music",expression:'genre is "'+t+'"'};return H.a.get("/api/search",{params:s})},library_genre_tracks:function(t){var s={type:"tracks",media_kind:"music",expression:'genre is "'+t+'"'};return H.a.get("/api/search",{params:s})},library_artist_tracks:function(t){if(t){var s={type:"tracks",expression:'songartistid is "'+t+'"'};return H.a.get("/api/search",{params:s})}},library_podcasts:function(){return H.a.get("/api/library/albums?media_kind=podcast")},library_podcasts_new_episodes:function(){var t={type:"tracks",expression:"media_kind is podcast and play_count = 0 ORDER BY time_added DESC"};return H.a.get("/api/search",{params:t})},library_podcast_episodes:function(t){var s={type:"tracks",expression:'media_kind is podcast and songalbumid is "'+t+'" ORDER BY date_released DESC'};return H.a.get("/api/search",{params:s})},library_add:function(t){return H.a.post("/api/library/add",void 0,{params:{url:t}})},library_playlist_delete:function(t){return H.a.delete("/api/library/playlists/"+t,void 0)},library_audiobooks:function(){return H.a.get("/api/library/albums?media_kind=audiobook")},library_playlists:function(){return H.a.get("/api/library/playlists")},library_playlist_folder:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return H.a.get("/api/library/playlists/"+t+"/playlists")},library_playlist:function(t){return H.a.get("/api/library/playlists/"+t)},library_playlist_tracks:function(t){return H.a.get("/api/library/playlists/"+t+"/tracks")},library_track:function(t){return H.a.get("/api/library/tracks/"+t)},library_track_playlists:function(t){return H.a.get("/api/library/tracks/"+t+"/playlists")},library_track_update:function(t){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return H.a.put("/api/library/tracks/"+t,void 0,{params:s})},library_files:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,s={directory:t};return H.a.get("/api/library/files",{params:s})},search:function(t){return H.a.get("/api/search",{params:t})},spotify:function(){return H.a.get("/api/spotify")},spotify_login:function(t){return H.a.post("/api/spotify-login",t)},lastfm:function(){return H.a.get("/api/lastfm")},lastfm_login:function(t){return H.a.post("/api/lastfm-login",t)},lastfm_logout:function(t){return H.a.get("/api/lastfm-logout")},pairing:function(){return H.a.get("/api/pairing")},pairing_kickoff:function(t){return H.a.post("/api/pairing",t)},verification_kickoff:function(t){return H.a.post("/api/verification",t)},artwork_url_append_size_params:function(t){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:600,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:600;return t&&t.startsWith("/")?t.includes("?")?t+"&maxwidth="+s+"&maxheight="+a:t+"?maxwidth="+s+"&maxheight="+a:t}},V={_audio:new Audio,_context:null,_source:null,_gain:null,setupAudio:function(){var t=this,s=window.AudioContext||window.webkitAudioContext;return this._context=new s,this._source=this._context.createMediaElementSource(this._audio),this._gain=this._context.createGain(),this._source.connect(this._gain),this._gain.connect(this._context.destination),this._audio.addEventListener("canplaythrough",(function(s){t._audio.play()})),this._audio.addEventListener("canplay",(function(s){t._audio.play()})),this._audio},setVolume:function(t){this._gain&&(t=parseFloat(t)||0,t=t<0?0:t,t=t>1?1:t,this._gain.gain.value=t)},playSource:function(t){var s=this;this.stopAudio(),this._context.resume().then((function(){s._audio.src=String(t||"")+"?x="+Date.now(),s._audio.crossOrigin="anonymous",s._audio.load()}))},stopAudio:function(){try{this._audio.pause()}catch(t){}try{this._audio.stop()}catch(t){}try{this._audio.close()}catch(t){}}},J=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"navbar-item"},[a("div",{staticClass:"level is-mobile"},[a("div",{staticClass:"level-left fd-expanded"},[a("div",{staticClass:"level-item",staticStyle:{"flex-grow":"0"}},[a("a",{staticClass:"button is-white is-small"},[a("span",{staticClass:"icon fd-has-action",class:{"has-text-grey-light":!t.output.selected},on:{click:t.set_enabled}},[a("i",{staticClass:"mdi mdi-18px",class:t.type_class})])])]),a("div",{staticClass:"level-item fd-expanded"},[a("div",{staticClass:"fd-expanded"},[a("p",{staticClass:"heading",class:{"has-text-grey-light":!t.output.selected}},[t._v(t._s(t.output.name))]),a("range-slider",{staticClass:"slider fd-has-action",attrs:{min:"0",max:"100",step:"1",disabled:!t.output.selected,value:t.volume},on:{change:t.set_volume}})],1)])])])])},K=[],X=a("c7e3"),Z=a.n(X),tt={name:"NavbarItemOutput",components:{RangeSlider:Z.a},props:["output"],computed:{type_class:function(){return"AirPlay"===this.output.type?"mdi-airplay":"fifo"===this.output.type?"mdi-pipe":"mdi-server"},volume:function(){return this.output.selected?this.output.volume:0}},methods:{play_next:function(){Q.player_next()},set_volume:function(t){Q.player_output_volume(this.output.id,t)},set_enabled:function(){var t={selected:!this.output.selected};Q.output_update(this.output.id,t)}}},st=tt,at=Object(I["a"])(st,J,K,!1,null,null,null),et=at.exports,it=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{attrs:{disabled:t.disabled},on:{click:t.toggle_play_pause}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi",class:[t.icon_style,{"mdi-play":!t.is_playing,"mdi-pause":t.is_playing&&t.is_pause_allowed,"mdi-stop":t.is_playing&&!t.is_pause_allowed}]})])])},nt=[],lt={name:"PlayerButtonPlayPause",props:{icon_style:String,show_disabled_message:Boolean},computed:{is_playing:function(){return"play"===this.$store.state.player.state},is_pause_allowed:function(){return this.$store.getters.now_playing&&"pipe"!==this.$store.getters.now_playing.data_kind},disabled:function(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{toggle_play_pause:function(){this.disabled?this.show_disabled_message&&this.$store.dispatch("add_notification",{text:"Queue is empty",type:"info",topic:"connection",timeout:2e3}):this.is_playing&&this.is_pause_allowed?Q.player_pause():this.is_playing&&!this.is_pause_allowed?Q.player_stop():Q.player_play()}}},ot=lt,rt=Object(I["a"])(ot,it,nt,!1,null,null,null),ct=rt.exports,dt=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{attrs:{disabled:t.disabled},on:{click:t.play_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-skip-forward",class:t.icon_style})])])},ut=[],_t={name:"PlayerButtonNext",props:{icon_style:String},computed:{disabled:function(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_next:function(){this.disabled||Q.player_next()}}},pt=_t,mt=Object(I["a"])(pt,dt,ut,!1,null,null,null),ht=mt.exports,ft=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{attrs:{disabled:t.disabled},on:{click:t.play_previous}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-skip-backward",class:t.icon_style})])])},yt=[],vt={name:"PlayerButtonPrevious",props:{icon_style:String},computed:{disabled:function(){return!this.$store.state.queue||this.$store.state.queue.count<=0}},methods:{play_previous:function(){this.disabled||Q.player_previous()}}},gt=vt,bt=Object(I["a"])(gt,ft,yt,!1,null,null,null),kt=bt.exports,Ct=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{class:{"is-warning":t.is_shuffle},on:{click:t.toggle_shuffle_mode}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi",class:[t.icon_style,{"mdi-shuffle":t.is_shuffle,"mdi-shuffle-disabled":!t.is_shuffle}]})])])},wt=[],xt={name:"PlayerButtonShuffle",props:{icon_style:String},computed:{is_shuffle:function(){return this.$store.state.player.shuffle}},methods:{toggle_shuffle_mode:function(){Q.player_shuffle(!this.is_shuffle)}}},$t=xt,qt=Object(I["a"])($t,Ct,wt,!1,null,null,null),jt=qt.exports,St=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{class:{"is-warning":t.is_consume},on:{click:t.toggle_consume_mode}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-fire",class:t.icon_style})])])},Pt=[],At={name:"PlayerButtonConsume",props:{icon_style:String},computed:{is_consume:function(){return this.$store.state.player.consume}},methods:{toggle_consume_mode:function(){Q.player_consume(!this.is_consume)}}},Ot=At,Tt=Object(I["a"])(Ot,St,Pt,!1,null,null,null),Et=Tt.exports,It=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("a",{class:{"is-warning":!t.is_repeat_off},on:{click:t.toggle_repeat_mode}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi",class:[t.icon_style,{"mdi-repeat":t.is_repeat_all,"mdi-repeat-once":t.is_repeat_single,"mdi-repeat-off":t.is_repeat_off}]})])])},Dt=[],zt=(a("38cf"),{name:"PlayerButtonRepeat",props:{icon_style:String},computed:{is_repeat_all:function(){return"all"===this.$store.state.player.repeat},is_repeat_single:function(){return"single"===this.$store.state.player.repeat},is_repeat_off:function(){return!this.is_repeat_all&&!this.is_repeat_single}},methods:{toggle_repeat_mode:function(){this.is_repeat_all?Q.player_repeat("single"):this.is_repeat_single?Q.player_repeat("off"):Q.player_repeat("all")}}}),Lt=zt,Mt=Object(I["a"])(Lt,It,Dt,!1,null,null,null),Nt=Mt.exports,Rt=function(){var t=this,s=t.$createElement,a=t._self._c||s;return t.visible?a("a",{attrs:{disabled:t.disabled},on:{click:t.seek}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-rewind",class:t.icon_style})])]):t._e()},Ut=[],Bt={name:"PlayerButtonSeekBack",props:["seek_ms","icon_style"],computed:{now_playing:function(){return this.$store.getters.now_playing},is_stopped:function(){return"stop"===this.$store.state.player.state},disabled:function(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||"pipe"===this.now_playing.data_kind},visible:function(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek:function(){this.disabled||Q.player_seek(-1*this.seek_ms)}}},Wt=Bt,Ht=Object(I["a"])(Wt,Rt,Ut,!1,null,null,null),Gt=Ht.exports,Ft=function(){var t=this,s=t.$createElement,a=t._self._c||s;return t.visible?a("a",{attrs:{disabled:t.disabled},on:{click:t.seek}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-fast-forward",class:t.icon_style})])]):t._e()},Yt=[],Qt={name:"PlayerButtonSeekForward",props:["seek_ms","icon_style"],computed:{now_playing:function(){return this.$store.getters.now_playing},is_stopped:function(){return"stop"===this.$store.state.player.state},disabled:function(){return!this.$store.state.queue||this.$store.state.queue.count<=0||this.is_stopped||"pipe"===this.now_playing.data_kind},visible:function(){return["podcast","audiobook"].includes(this.now_playing.media_kind)}},methods:{seek:function(){this.disabled||Q.player_seek(this.seek_ms)}}},Vt=Qt,Jt=Object(I["a"])(Vt,Ft,Yt,!1,null,null,null),Kt=Jt.exports,Xt={name:"NavbarBottom",components:{NavbarItemLink:z,NavbarItemOutput:et,RangeSlider:Z.a,PlayerButtonPlayPause:ct,PlayerButtonNext:ht,PlayerButtonPrevious:kt,PlayerButtonShuffle:jt,PlayerButtonConsume:Et,PlayerButtonRepeat:Nt,PlayerButtonSeekForward:Kt,PlayerButtonSeekBack:Gt},data:function(){return{old_volume:0,playing:!1,loading:!1,stream_volume:10,show_outputs_menu:!1,show_desktop_outputs_menu:!1}},computed:{show_player_menu:{get:function(){return this.$store.state.show_player_menu},set:function(t){this.$store.commit(O,t)}},show_burger_menu:function(){return this.$store.state.show_burger_menu},zindex:function(){return this.show_burger_menu?"z-index: 20":""},state:function(){return this.$store.state.player},now_playing:function(){return this.$store.getters.now_playing},is_now_playing_page:function(){return"/now-playing"===this.$route.path},outputs:function(){return this.$store.state.outputs},player:function(){return this.$store.state.player},config:function(){return this.$store.state.config}},methods:{on_click_outside_outputs:function(){this.show_outputs_menu=!1},set_volume:function(t){Q.player_volume(t)},toggle_mute_volume:function(){this.player.volume>0?this.set_volume(0):this.set_volume(this.old_volume)},setupAudio:function(){var t=this,s=V.setupAudio();s.addEventListener("waiting",(function(s){t.playing=!1,t.loading=!0})),s.addEventListener("playing",(function(s){t.playing=!0,t.loading=!1})),s.addEventListener("ended",(function(s){t.playing=!1,t.loading=!1})),s.addEventListener("error",(function(s){t.closeAudio(),t.$store.dispatch("add_notification",{text:"HTTP stream error: failed to load stream or stopped loading due to network problem",type:"danger"}),t.playing=!1,t.loading=!1}))},closeAudio:function(){V.stopAudio(),this.playing=!1},playChannel:function(){if(!this.playing){var t="/stream.mp3";this.loading=!0,V.playSource(t),V.setVolume(this.stream_volume/100)}},togglePlay:function(){if(!this.loading)return this.playing?this.closeAudio():this.playChannel()},set_stream_volume:function(t){this.stream_volume=t,V.setVolume(this.stream_volume/100)}},watch:{"$store.state.player.volume":function(){this.player.volume>0&&(this.old_volume=this.player.volume)}},mounted:function(){this.setupAudio()},destroyed:function(){this.closeAudio()}},Zt=Xt,ts=Object(I["a"])(Zt,U,B,!1,null,null,null),ss=ts.exports,as=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",{staticClass:"fd-notifications"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-half"},t._l(t.notifications,(function(s){return a("div",{key:s.id,staticClass:"notification has-shadow ",class:["notification",s.type?"is-"+s.type:""]},[a("button",{staticClass:"delete",on:{click:function(a){return t.remove(s)}}}),t._v(" "+t._s(s.text)+" ")])})),0)])])},es=[],is={name:"Notifications",components:{},data:function(){return{showNav:!1}},computed:{notifications:function(){return this.$store.state.notifications.list}},methods:{remove:function(t){this.$store.commit(q,t)}}},ns=is,ls=(a("cf45"),Object(I["a"])(ns,as,es,!1,null,null,null)),os=ls.exports,rs=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" Remote pairing request ")]),a("form",{on:{submit:function(s){return s.preventDefault(),t.kickoff_pairing(s)}}},[a("label",{staticClass:"label"},[t._v(" "+t._s(t.pairing.remote)+" ")]),a("div",{staticClass:"field"},[a("div",{staticClass:"control"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.pairing_req.pin,expression:"pairing_req.pin"}],ref:"pin_field",staticClass:"input",attrs:{type:"text",placeholder:"Enter pairing code"},domProps:{value:t.pairing_req.pin},on:{input:function(s){s.target.composing||t.$set(t.pairing_req,"pin",s.target.value)}}})])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-danger",on:{click:function(s){return t.$emit("close")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cancel"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Cancel")])]),a("a",{staticClass:"card-footer-item has-background-info has-text-white has-text-weight-bold",on:{click:t.kickoff_pairing}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cellphone-iphone"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Pair Remote")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},cs=[],ds={name:"ModalDialogRemotePairing",props:["show"],data:function(){return{pairing_req:{pin:""}}},computed:{pairing:function(){return this.$store.state.pairing}},methods:{kickoff_pairing:function(){var t=this;Q.pairing_kickoff(this.pairing_req).then((function(){t.pairing_req.pin=""}))}},watch:{show:function(){var t=this;this.show&&(this.loading=!1,setTimeout((function(){t.$refs.pin_field.focus()}),10))}}},us=ds,_s=Object(I["a"])(us,rs,cs,!1,null,null,null),ps=_s.exports,ms=a("d04d"),hs=a.n(ms),fs={name:"App",components:{NavbarTop:R,NavbarBottom:ss,Notifications:os,ModalDialogRemotePairing:ps},template:"<App/>",data:function(){return{token_timer_id:0,reconnect_attempts:0,pairing_active:!1}},computed:{show_burger_menu:{get:function(){return this.$store.state.show_burger_menu},set:function(t){this.$store.commit(A,t)}},show_player_menu:{get:function(){return this.$store.state.show_player_menu},set:function(t){this.$store.commit(O,t)}}},created:function(){var t=this;this.connect(),this.$Progress.start(),this.$router.beforeEach((function(s,a,e){if(s.meta.show_progress){if(void 0!==s.meta.progress){var i=s.meta.progress;t.$Progress.parseMeta(i)}t.$Progress.start()}e()})),this.$router.afterEach((function(s,a){s.meta.show_progress&&t.$Progress.finish()}))},methods:{connect:function(){var t=this;this.$store.dispatch("add_notification",{text:"Connecting to forked-daapd",type:"info",topic:"connection",timeout:2e3}),Q.config().then((function(s){var a=s.data;t.$store.commit(u,a),t.$store.commit(S,a.hide_singles),document.title=a.library_name,t.open_ws(),t.$Progress.finish()})).catch((function(){t.$store.dispatch("add_notification",{text:"Failed to connect to forked-daapd",type:"danger",topic:"connection"})}))},open_ws:function(){if(this.$store.state.config.websocket_port<=0)this.$store.dispatch("add_notification",{text:"Missing websocket port",type:"danger"});else{var t=this,s="ws://";"https:"===window.location.protocol&&(s="wss://");var a=new hs.a(s+window.location.hostname+":"+t.$store.state.config.websocket_port,"notify",{reconnectInterval:3e3});a.onopen=function(){t.$store.dispatch("add_notification",{text:"Connection to server established",type:"primary",topic:"connection",timeout:2e3}),t.reconnect_attempts=0,a.send(JSON.stringify({notify:["update","database","player","options","outputs","volume","spotify","lastfm","pairing"]})),t.update_outputs(),t.update_player_status(),t.update_library_stats(),t.update_settings(),t.update_queue(),t.update_spotify(),t.update_lastfm(),t.update_pairing()},a.onclose=function(){},a.onerror=function(){t.reconnect_attempts++,t.$store.dispatch("add_notification",{text:"Connection lost. Reconnecting ... ("+t.reconnect_attempts+")",type:"danger",topic:"connection"})},a.onmessage=function(s){var a=JSON.parse(s.data);(a.notify.includes("update")||a.notify.includes("database"))&&t.update_library_stats(),(a.notify.includes("player")||a.notify.includes("options")||a.notify.includes("volume"))&&t.update_player_status(),(a.notify.includes("outputs")||a.notify.includes("volume"))&&t.update_outputs(),a.notify.includes("queue")&&t.update_queue(),a.notify.includes("spotify")&&t.update_spotify(),a.notify.includes("lastfm")&&t.update_lastfm(),a.notify.includes("pairing")&&t.update_pairing()}}},update_library_stats:function(){var t=this;Q.library_stats().then((function(s){var a=s.data;t.$store.commit(m,a)})),Q.library_count("media_kind is audiobook").then((function(s){var a=s.data;t.$store.commit(h,a)})),Q.library_count("media_kind is podcast").then((function(s){var a=s.data;t.$store.commit(f,a)}))},update_outputs:function(){var t=this;Q.outputs().then((function(s){var a=s.data;t.$store.commit(y,a.outputs)}))},update_player_status:function(){var t=this;Q.player_status().then((function(s){var a=s.data;t.$store.commit(v,a)}))},update_queue:function(){var t=this;Q.queue().then((function(s){var a=s.data;t.$store.commit(g,a)}))},update_settings:function(){var t=this;Q.settings().then((function(s){var a=s.data;t.$store.commit(_,a)}))},update_lastfm:function(){var t=this;Q.lastfm().then((function(s){var a=s.data;t.$store.commit(b,a)}))},update_spotify:function(){var t=this;Q.spotify().then((function(s){var a=s.data;t.$store.commit(k,a),t.token_timer_id>0&&(window.clearTimeout(t.token_timer_id),t.token_timer_id=0),a.webapi_token_expires_in>0&&a.webapi_token&&(t.token_timer_id=window.setTimeout(t.update_spotify,1e3*a.webapi_token_expires_in))}))},update_pairing:function(){var t=this;Q.pairing().then((function(s){var a=s.data;t.$store.commit(C,a),t.pairing_active=a.active}))},update_is_clipped:function(){this.show_burger_menu||this.show_player_menu?document.querySelector("html").classList.add("is-clipped"):document.querySelector("html").classList.remove("is-clipped")}},watch:{show_burger_menu:function(){this.update_is_clipped()},show_player_menu:function(){this.update_is_clipped()}}},ys=fs,vs=Object(I["a"])(ys,n,l,!1,null,null,null),gs=vs.exports,bs=a("8c4f"),ks=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"heading"},[t._v(t._s(t.queue.count)+" tracks")]),a("p",{staticClass:"title is-4"},[t._v("Queue")])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small",class:{"is-info":t.show_only_next_items},on:{click:t.update_show_next_items}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-arrow-collapse-down"})]),a("span",[t._v("Hide previous")])]),a("a",{staticClass:"button is-small",on:{click:t.open_add_stream_dialog}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-web"})]),a("span",[t._v("Add Stream")])]),a("a",{staticClass:"button is-small",class:{"is-info":t.edit_mode},on:{click:function(s){t.edit_mode=!t.edit_mode}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-pencil"})]),a("span",[t._v("Edit")])]),a("a",{staticClass:"button is-small",on:{click:t.queue_clear}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-delete-empty"})]),a("span",[t._v("Clear")])]),t.is_queue_save_allowed?a("a",{staticClass:"button is-small",attrs:{disabled:0===t.queue_items.length},on:{click:t.save_dialog}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-content-save"})]),a("span",[t._v("Save")])]):t._e()])]),a("template",{slot:"content"},[a("draggable",{attrs:{handle:".handle"},on:{end:t.move_item},model:{value:t.queue_items,callback:function(s){t.queue_items=s},expression:"queue_items"}},t._l(t.queue_items,(function(s,e){return a("list-item-queue-item",{key:s.id,attrs:{item:s,position:e,current_position:t.current_position,show_only_next_items:t.show_only_next_items,edit_mode:t.edit_mode}},[a("template",{slot:"actions"},[t.edit_mode?t._e():a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])]),s.id!==t.state.item_id&&t.edit_mode?a("a",{on:{click:function(a){return t.remove(s)}}},[a("span",{staticClass:"icon has-text-grey"},[a("i",{staticClass:"mdi mdi-delete mdi-18px"})])]):t._e()])],2)})),1),a("modal-dialog-queue-item",{attrs:{show:t.show_details_modal,item:t.selected_item},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-add-url-stream",{attrs:{show:t.show_url_modal},on:{close:function(s){t.show_url_modal=!1}}}),t.is_queue_save_allowed?a("modal-dialog-playlist-save",{attrs:{show:t.show_pls_save_modal},on:{close:function(s){t.show_pls_save_modal=!1}}}):t._e()],1)],2)},Cs=[],ws=a("7412"),xs=function(){var t=this,s=t.$createElement,a=t._self._c||s;return t.is_next||!t.show_only_next_items?a("div",{staticClass:"media"},[t.edit_mode?a("div",{staticClass:"media-left"},[t._m(0)]):t._e(),a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:t.play}},[a("h1",{staticClass:"title is-6",class:{"has-text-primary":t.item.id===t.state.item_id,"has-text-grey-light":!t.is_next}},[t._v(t._s(t.item.title))]),a("h2",{staticClass:"subtitle is-7",class:{"has-text-primary":t.item.id===t.state.item_id,"has-text-grey-light":!t.is_next,"has-text-grey":t.is_next&&t.item.id!==t.state.item_id}},[a("b",[t._v(t._s(t.item.artist))])]),a("h2",{staticClass:"subtitle is-7",class:{"has-text-primary":t.item.id===t.state.item_id,"has-text-grey-light":!t.is_next,"has-text-grey":t.is_next&&t.item.id!==t.state.item_id}},[t._v(t._s(t.item.album))])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)]):t._e()},$s=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("span",{staticClass:"icon has-text-grey fd-is-movable handle"},[a("i",{staticClass:"mdi mdi-drag-horizontal mdi-18px"})])}],qs={name:"ListItemQueueItem",props:["item","position","current_position","show_only_next_items","edit_mode"],computed:{state:function(){return this.$store.state.player},is_next:function(){return this.current_position<0||this.position>=this.current_position}},methods:{play:function(){Q.player_play({item_id:this.item.id})}}},js=qs,Ss=Object(I["a"])(js,xs,$s,!1,null,null,null),Ps=Ss.exports,As=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" "+t._s(t.item.title)+" ")]),a("p",{staticClass:"subtitle"},[t._v(" "+t._s(t.item.artist)+" ")]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Album")]),t.item.album_id?a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_album}},[t._v(t._s(t.item.album))]):a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.album))])]),t.item.album_artist?a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),t.item.album_artist_id?a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_album_artist}},[t._v(t._s(t.item.album_artist))]):a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.album_artist))])]):t._e(),t.item.composer?a("p",[a("span",{staticClass:"heading"},[t._v("Composer")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.composer))])]):t._e(),t.item.year>0?a("p",[a("span",{staticClass:"heading"},[t._v("Year")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.year))])]):t._e(),t.item.genre?a("p",[a("span",{staticClass:"heading"},[t._v("Genre")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_genre}},[t._v(t._s(t.item.genre))])]):t._e(),a("p",[a("span",{staticClass:"heading"},[t._v("Track / Disc")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.track_number)+" / "+t._s(t.item.disc_number))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Length")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t._f("duration")(t.item.length_ms)))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Path")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.path))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Type")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.media_kind)+" - "+t._s(t.item.data_kind)+" "),"spotify"===t.item.data_kind?a("span",{staticClass:"has-text-weight-normal"},[t._v("("),a("a",{on:{click:t.open_spotify_artist}},[t._v("artist")]),t._v(", "),a("a",{on:{click:t.open_spotify_album}},[t._v("album")]),t._v(")")]):t._e()])]),a("p",[a("span",{staticClass:"heading"},[t._v("Quality")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.item.type)+" | "+t._s(t.item.samplerate)+" Hz | "+t._s(t.item.channels)+" | "+t._s(t.item.bitrate)+" Kb/s")])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.remove}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-delete"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Remove")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Os=[],Ts=(a("baa5"),a("fb6a"),a("be8d")),Es=a.n(Ts),Is={name:"ModalDialogQueueItem",props:["show","item"],data:function(){return{spotify_track:{}}},methods:{remove:function(){this.$emit("close"),Q.queue_remove(this.item.id)},play:function(){this.$emit("close"),Q.player_play({item_id:this.item.id})},open_album:function(){"podcast"===this.media_kind?this.$router.push({path:"/podcasts/"+this.item.album_id}):"audiobook"===this.media_kind?this.$router.push({path:"/audiobooks/"+this.item.album_id}):this.$router.push({path:"/music/albums/"+this.item.album_id})},open_album_artist:function(){this.$router.push({path:"/music/artists/"+this.item.album_artist_id})},open_genre:function(){this.$router.push({name:"Genre",params:{genre:this.item.genre}})},open_spotify_artist:function(){this.$emit("close"),this.$router.push({path:"/music/spotify/artists/"+this.spotify_track.artists[0].id})},open_spotify_album:function(){this.$emit("close"),this.$router.push({path:"/music/spotify/albums/"+this.spotify_track.album.id})}},watch:{item:function(){var t=this;if(this.item&&"spotify"===this.item.data_kind){var s=new Es.a;s.setAccessToken(this.$store.state.spotify.webapi_token),s.getTrack(this.item.path.slice(this.item.path.lastIndexOf(":")+1)).then((function(s){t.spotify_track=s}))}else this.spotify_track={}}}},Ds=Is,zs=Object(I["a"])(Ds,As,Os,!1,null,null,null),Ls=zs.exports,Ms=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" Add stream URL ")]),a("form",{staticClass:"fd-has-margin-bottom",on:{submit:function(s){return s.preventDefault(),t.play(s)}}},[a("div",{staticClass:"field"},[a("p",{staticClass:"control is-expanded has-icons-left"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],ref:"url_field",staticClass:"input is-shadowless",attrs:{type:"text",placeholder:"http://url-to-stream",disabled:t.loading},domProps:{value:t.url},on:{input:function(s){s.target.composing||(t.url=s.target.value)}}}),a("span",{staticClass:"icon is-left"},[a("i",{staticClass:"mdi mdi-web"})])])])])]),t.loading?a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-web"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Loading ...")])])]):a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-danger",on:{click:function(s){return t.$emit("close")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cancel"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Cancel")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.add_stream}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-background-info has-text-white has-text-weight-bold",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Ns=[],Rs={name:"ModalDialogAddUrlStream",props:["show"],data:function(){return{url:"",loading:!1}},methods:{add_stream:function(){var t=this;this.loading=!0,Q.queue_add(this.url).then((function(){t.$emit("close"),t.url=""})).catch((function(){t.loading=!1}))},play:function(){var t=this;this.loading=!0,Q.player_play_uri(this.url,!1).then((function(){t.$emit("close"),t.url=""})).catch((function(){t.loading=!1}))}},watch:{show:function(){var t=this;this.show&&(this.loading=!1,setTimeout((function(){t.$refs.url_field.focus()}),10))}}},Us=Rs,Bs=Object(I["a"])(Us,Ms,Ns,!1,null,null,null),Ws=Bs.exports,Hs=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" Save queue to playlist ")]),a("form",{staticClass:"fd-has-margin-bottom",on:{submit:function(s){return s.preventDefault(),t.save(s)}}},[a("div",{staticClass:"field"},[a("p",{staticClass:"control is-expanded has-icons-left"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.playlist_name,expression:"playlist_name"}],ref:"playlist_name_field",staticClass:"input is-shadowless",attrs:{type:"text",placeholder:"Playlist name",disabled:t.loading},domProps:{value:t.playlist_name},on:{input:function(s){s.target.composing||(t.playlist_name=s.target.value)}}}),a("span",{staticClass:"icon is-left"},[a("i",{staticClass:"mdi mdi-file-music"})])])])])]),t.loading?a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-web"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Saving ...")])])]):a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-danger",on:{click:function(s){return t.$emit("close")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cancel"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Cancel")])]),a("a",{staticClass:"card-footer-item has-background-info has-text-white has-text-weight-bold",on:{click:t.save}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-content-save"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Save")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Gs=[],Fs={name:"ModalDialogPlaylistSave",props:["show"],data:function(){return{playlist_name:"",loading:!1}},methods:{save:function(){var t=this;this.playlist_name.length<1||(this.loading=!0,Q.queue_save_playlist(this.playlist_name).then((function(){t.$emit("close"),t.playlist_name=""})).catch((function(){t.loading=!1})))}},watch:{show:function(){var t=this;this.show&&(this.loading=!1,setTimeout((function(){t.$refs.playlist_name_field.focus()}),10))}}},Ys=Fs,Qs=Object(I["a"])(Ys,Hs,Gs,!1,null,null,null),Vs=Qs.exports,Js=a("310e"),Ks=a.n(Js),Xs={name:"PageQueue",components:{ContentWithHeading:ws["default"],ListItemQueueItem:Ps,draggable:Ks.a,ModalDialogQueueItem:Ls,ModalDialogAddUrlStream:Ws,ModalDialogPlaylistSave:Vs},data:function(){return{edit_mode:!1,show_details_modal:!1,show_url_modal:!1,show_pls_save_modal:!1,selected_item:{}}},computed:{state:function(){return this.$store.state.player},is_queue_save_allowed:function(){return this.$store.state.config.allow_modifying_stored_playlists&&this.$store.state.config.default_playlist_directory},queue:function(){return this.$store.state.queue},queue_items:{get:function(){return this.$store.state.queue.items},set:function(t){}},current_position:function(){var t=this.$store.getters.now_playing;return void 0===t||void 0===t.position?-1:this.$store.getters.now_playing.position},show_only_next_items:function(){return this.$store.state.show_only_next_items}},methods:{queue_clear:function(){Q.queue_clear()},update_show_next_items:function(t){this.$store.commit(P,!this.show_only_next_items)},remove:function(t){Q.queue_remove(t.id)},move_item:function(t){var s=this.show_only_next_items?t.oldIndex+this.current_position:t.oldIndex,a=this.queue_items[s],e=a.position+(t.newIndex-t.oldIndex);e!==s&&Q.queue_move(a.id,e)},open_dialog:function(t){this.selected_item=t,this.show_details_modal=!0},open_add_stream_dialog:function(t){this.show_url_modal=!0},save_dialog:function(t){this.queue_items.length>0&&(this.show_pls_save_modal=!0)}}},Zs=Xs,ta=Object(I["a"])(Zs,ks,Cs,!1,null,null,null),sa=ta.exports,aa=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",[t.now_playing.id>0?a("div",{staticClass:"fd-is-fullheight"},[a("div",{staticClass:"fd-is-expanded"},[a("cover-artwork",{staticClass:"fd-cover-image fd-has-action",attrs:{artwork_url:t.now_playing.artwork_url,artist:t.now_playing.artist,album:t.now_playing.album},on:{click:function(s){return t.open_dialog(t.now_playing)}}})],1),a("div",{staticClass:"fd-has-padding-left-right"},[a("div",{staticClass:"container has-text-centered"},[a("p",{staticClass:"control has-text-centered fd-progress-now-playing"},[a("range-slider",{staticClass:"seek-slider fd-has-action",attrs:{min:"0",max:t.state.item_length_ms,value:t.item_progress_ms,disabled:"stop"===t.state.state,step:"1000"},on:{change:t.seek}})],1),a("p",{staticClass:"content"},[a("span",[t._v(t._s(t._f("duration")(t.item_progress_ms))+" / "+t._s(t._f("duration")(t.now_playing.length_ms)))])])])]),a("div",{staticClass:"fd-has-padding-left-right"},[a("div",{staticClass:"container has-text-centered fd-has-margin-top"},[a("h1",{staticClass:"title is-5"},[t._v(" "+t._s(t.now_playing.title)+" ")]),a("h2",{staticClass:"title is-6"},[t._v(" "+t._s(t.now_playing.artist)+" ")]),t.composer?a("h2",{staticClass:"subtitle is-6 has-text-grey has-text-weight-bold"},[t._v(" "+t._s(t.composer)+" ")]):t._e(),a("h3",{staticClass:"subtitle is-6"},[t._v(" "+t._s(t.now_playing.album)+" ")])])])]):a("div",{staticClass:"fd-is-fullheight",staticStyle:{"justify-content":"center"}},[t._m(0)]),a("modal-dialog-queue-item",{attrs:{show:t.show_details_modal,item:t.selected_item},on:{close:function(s){t.show_details_modal=!1}}})],1)},ea=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"fd-is-expanded fd-has-padding-left-right has-text-centered"},[a("h1",{staticClass:"title is-5"},[t._v(" You play queue is empty ")]),a("p",{staticClass:"content"},[t._v(" Add some tracks by browsing your library ")])])}],ia=(a("ac1f"),a("1276"),a("498a"),function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("figure",[a("img",{directives:[{name:"show",rawName:"v-show",value:t.artwork_visible,expression:"artwork_visible"}],attrs:{src:t.artwork_url_with_size},on:{load:t.artwork_loaded,error:t.artwork_error,click:function(s){return t.$emit("click")}}}),a("img",{directives:[{name:"show",rawName:"v-show",value:!t.artwork_visible,expression:"!artwork_visible"}],attrs:{src:t.dataURI,alt:t.alt_text},on:{click:function(s){return t.$emit("click")}}})])}),na=[],la=(a("13d5"),a("5319"),a("d4ec")),oa=a("bee2"),ra=function(){function t(){Object(la["a"])(this,t)}return Object(oa["a"])(t,[{key:"render",value:function(t){var s='<svg width="'+t.width+'" height="'+t.height+'" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 '+t.width+" "+t.height+'" preserveAspectRatio="none"><defs><style type="text/css"> #holder text { fill: '+t.textColor+"; font-family: "+t.fontFamily+"; font-size: "+t.fontSize+"px; font-weight: "+t.fontWeight+'; } </style></defs><g id="holder"> <rect width="100%" height="100%" fill="'+t.backgroundColor+'"></rect> <g> <text text-anchor="middle" x="50%" y="50%" dy=".3em">'+t.caption+"</text> </g></g></svg>";return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(s)}}]),t}(),ca=ra,da=a("5d8a"),ua=a.n(da),_a={name:"CoverArtwork",props:["artist","album","artwork_url"],data:function(){return{svg:new ca,width:600,height:600,font_family:"sans-serif",font_size:200,font_weight:600,artwork_visible:!1}},computed:{artwork_url_with_size:function(){return Q.artwork_url_append_size_params(this.artwork_url)},alt_text:function(){return this.artist+" - "+this.album},caption:function(){return this.album?this.album.substring(0,2):this.artist?this.artist.substring(0,2):""},background_color:function(){return ua()(this.alt_text)},is_background_light:function(){var t=this.background_color.replace(/#/,""),s=parseInt(t.substr(0,2),16),a=parseInt(t.substr(2,2),16),e=parseInt(t.substr(4,2),16),i=[.299*s,.587*a,.114*e].reduce((function(t,s){return t+s}))/255;return i>.5},text_color:function(){return this.is_background_light?"#000000":"#ffffff"},rendererParams:function(){return{width:this.width,height:this.height,textColor:this.text_color,backgroundColor:this.background_color,caption:this.caption,fontFamily:this.font_family,fontSize:this.font_size,fontWeight:this.font_weight}},dataURI:function(){return this.svg.render(this.rendererParams)}},methods:{artwork_loaded:function(){this.artwork_visible=!0},artwork_error:function(){this.artwork_visible=!1}}},pa=_a,ma=Object(I["a"])(pa,ia,na,!1,null,null,null),ha=ma.exports,fa={name:"PageNowPlaying",components:{ModalDialogQueueItem:Ls,RangeSlider:Z.a,CoverArtwork:ha},data:function(){return{item_progress_ms:0,interval_id:0,show_details_modal:!1,selected_item:{}}},created:function(){var t=this;this.item_progress_ms=this.state.item_progress_ms,Q.player_status().then((function(s){var a=s.data;t.$store.commit(v,a),"play"===t.state.state&&(t.interval_id=window.setInterval(t.tick,1e3))}))},destroyed:function(){this.interval_id>0&&(window.clearTimeout(this.interval_id),this.interval_id=0)},computed:{state:function(){return this.$store.state.player},now_playing:function(){return this.$store.getters.now_playing},settings_option_show_composer_now_playing:function(){return this.$store.getters.settings_option_show_composer_now_playing},settings_option_show_composer_for_genre:function(){return this.$store.getters.settings_option_show_composer_for_genre},composer:function(){var t=this;return this.settings_option_show_composer_now_playing&&(!this.settings_option_show_composer_for_genre||this.now_playing.genre&&this.settings_option_show_composer_for_genre.toLowerCase().split(",").findIndex((function(s){return t.now_playing.genre.toLowerCase().indexOf(s.trim())>=0}))>=0)?this.now_playing.composer:null}},methods:{tick:function(){this.item_progress_ms+=1e3},seek:function(t){var s=this;Q.player_seek_to_pos(t).catch((function(){s.item_progress_ms=s.state.item_progress_ms}))},open_dialog:function(t){this.selected_item=t,this.show_details_modal=!0}},watch:{state:function(){this.interval_id>0&&(window.clearTimeout(this.interval_id),this.interval_id=0),this.item_progress_ms=this.state.item_progress_ms,"play"===this.state.state&&(this.interval_id=window.setInterval(this.tick,1e3))}}},ya=fa,va=Object(I["a"])(ya,aa,ea,!1,null,null,null),ga=va.exports,ba=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Recently added")]),a("p",{staticClass:"heading"},[t._v("albums")])]),a("template",{slot:"content"},[t._l(t.recently_added.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album},on:{close:function(s){t.show_album_details_modal=!1}}})],2),a("template",{slot:"footer"},[a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:function(s){return t.open_browse("recently_added")}}},[t._v("Show more")])])])])],2),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Recently played")]),a("p",{staticClass:"heading"},[t._v("tracks")])]),a("template",{slot:"content"},[t._l(t.recently_played.items,(function(s){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(a){return t.play_track(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track},on:{close:function(s){t.show_track_details_modal=!1}}})],2),a("template",{slot:"footer"},[a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:function(s){return t.open_browse("recently_played")}}},[t._v("Show more")])])])])],2)],1)},ka=[],Ca=(a("3ca3"),a("841c"),a("ddb0"),function(t){return{beforeRouteEnter:function(s,a,e){t.load(s).then((function(s){e((function(a){return t.set(a,s)}))}))},beforeRouteUpdate:function(s,a,e){var i=this;t.load(s).then((function(s){t.set(i,s),e()}))}}}),wa=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",{staticClass:"section fd-tabs-section"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("div",{staticClass:"tabs is-centered is-small"},[a("ul",[a("router-link",{attrs:{tag:"li",to:"/music/browse","active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-web"})]),a("span",{},[t._v("Browse")])])]),a("router-link",{attrs:{tag:"li",to:"/music/artists","active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-artist"})]),a("span",{},[t._v("Artists")])])]),a("router-link",{attrs:{tag:"li",to:"/music/albums","active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-album"})]),a("span",{},[t._v("Albums")])])]),a("router-link",{attrs:{tag:"li",to:"/music/genres","active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-speaker"})]),a("span",{},[t._v("Genres")])])]),t.spotify_enabled?a("router-link",{attrs:{tag:"li",to:"/music/spotify","active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-spotify"})]),a("span",{},[t._v("Spotify")])])]):t._e()],1)])])])])])},xa=[],$a={name:"TabsMusic",computed:{spotify_enabled:function(){return this.$store.state.spotify.webapi_token_valid}}},qa=$a,ja=Object(I["a"])(qa,wa,xa,!1,null,null,null),Sa=ja.exports,Pa=function(t,s){var a=s._c;return a("div",{staticClass:"media",attrs:{id:"index_"+s.props.album.name_sort.charAt(0).toUpperCase()}},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6"},[s._v(s._s(s.props.album.name))]),a("h2",{staticClass:"subtitle is-7 has-text-grey"},[a("b",[s._v(s._s(s.props.album.artist))])])]),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},Aa=[],Oa={name:"ListItemAlbum",props:["album","media_kind"]},Ta=Oa,Ea=Object(I["a"])(Ta,Pa,Aa,!0,null,null,null),Ia=Ea.exports,Da=function(t,s){var a=s._c;return a("div",{staticClass:"media",class:{"with-progress":s.slots().progress},attrs:{id:"index_"+s.props.track.title_sort.charAt(0).toUpperCase()}},[s.slots().icon?a("figure",{staticClass:"media-left fd-has-action",on:{click:s.listeners.click}},[s._t("icon")],2):s._e(),a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6",class:{"has-text-grey":"podcast"===s.props.track.media_kind&&s.props.track.play_count>0}},[s._v(s._s(s.props.track.title))]),a("h2",{staticClass:"subtitle is-7 has-text-grey"},[a("b",[s._v(s._s(s.props.track.artist))])]),a("h2",{staticClass:"subtitle is-7 has-text-grey"},[s._v(s._s(s.props.track.album))]),s._t("progress")],2),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},za=[],La={name:"ListItemTrack",props:["track"]},Ma=La,Na=Object(I["a"])(Ma,Da,za,!0,null,null,null),Ra=Na.exports,Ua=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" "+t._s(t.track.title)+" ")]),a("p",{staticClass:"subtitle"},[t._v(" "+t._s(t.track.artist)+" ")]),"podcast"===t.track.media_kind?a("div",{staticClass:"buttons"},[t.track.play_count>0?a("a",{staticClass:"button is-small",on:{click:t.mark_new}},[t._v("Mark as new")]):t._e(),0===t.track.play_count?a("a",{staticClass:"button is-small",on:{click:t.mark_played}},[t._v("Mark as played")]):t._e()]):t._e(),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Album")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_album}},[t._v(t._s(t.track.album))])]),t.track.album_artist&&"audiobook"!==t.track.media_kind?a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.track.album_artist))])]):t._e(),t.track.composer?a("p",[a("span",{staticClass:"heading"},[t._v("Composer")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.composer))])]):t._e(),t.track.date_released?a("p",[a("span",{staticClass:"heading"},[t._v("Release date")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t._f("time")(t.track.date_released,"L")))])]):t.track.year>0?a("p",[a("span",{staticClass:"heading"},[t._v("Year")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.year))])]):t._e(),t.track.genre?a("p",[a("span",{staticClass:"heading"},[t._v("Genre")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_genre}},[t._v(t._s(t.track.genre))])]):t._e(),a("p",[a("span",{staticClass:"heading"},[t._v("Track / Disc")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.track_number)+" / "+t._s(t.track.disc_number))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Length")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t._f("duration")(t.track.length_ms)))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Path")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.path))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Type")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.media_kind)+" - "+t._s(t.track.data_kind)+" "),"spotify"===t.track.data_kind?a("span",{staticClass:"has-text-weight-normal"},[t._v("("),a("a",{on:{click:t.open_spotify_artist}},[t._v("artist")]),t._v(", "),a("a",{on:{click:t.open_spotify_album}},[t._v("album")]),t._v(")")]):t._e()])]),a("p",[a("span",{staticClass:"heading"},[t._v("Quality")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.type)+" | "+t._s(t.track.samplerate)+" Hz | "+t._s(t.track.channels)+" channels | "+t._s(t.track.bitrate)+" Kb/s")])]),a("p",[a("span",{staticClass:"heading"},[t._v("Added at")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t._f("time")(t.track.time_added,"L LT")))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Rating")]),a("span",{staticClass:"title is-6"},[t._v(t._s(Math.floor(t.track.rating/10))+" / 10")])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play_track}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Ba=[],Wa={name:"ModalDialogTrack",props:["show","track"],data:function(){return{spotify_track:{}}},methods:{play_track:function(){this.$emit("close"),Q.player_play_uri(this.track.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.track.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.track.uri)},open_album:function(){this.$emit("close"),"podcast"===this.track.media_kind?this.$router.push({path:"/podcasts/"+this.track.album_id}):"audiobook"===this.track.media_kind?this.$router.push({path:"/audiobooks/"+this.track.album_id}):this.$router.push({path:"/music/albums/"+this.track.album_id})},open_artist:function(){this.$emit("close"),this.$router.push({path:"/music/artists/"+this.track.album_artist_id})},open_genre:function(){this.$router.push({name:"Genre",params:{genre:this.track.genre}})},open_spotify_artist:function(){this.$emit("close"),this.$router.push({path:"/music/spotify/artists/"+this.spotify_track.artists[0].id})},open_spotify_album:function(){this.$emit("close"),this.$router.push({path:"/music/spotify/albums/"+this.spotify_track.album.id})},mark_new:function(){var t=this;Q.library_track_update(this.track.id,{play_count:"reset"}).then((function(){t.$emit("play_count_changed"),t.$emit("close")}))},mark_played:function(){var t=this;Q.library_track_update(this.track.id,{play_count:"increment"}).then((function(){t.$emit("play_count_changed"),t.$emit("close")}))}},watch:{track:function(){var t=this;if(this.track&&"spotify"===this.track.data_kind){var s=new Es.a;s.setAccessToken(this.$store.state.spotify.webapi_token),s.getTrack(this.track.path.slice(this.track.path.lastIndexOf(":")+1)).then((function(s){t.spotify_track=s}))}else this.spotify_track={}}}},Ha=Wa,Ga=Object(I["a"])(Ha,Ua,Ba,!1,null,null,null),Fa=Ga.exports,Ya=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("cover-artwork",{staticClass:"image is-square fd-has-margin-bottom fd-has-shadow",attrs:{artwork_url:t.album.artwork_url,artist:t.album.artist,album:t.album.name}}),a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_album}},[t._v(t._s(t.album.name))])]),"podcast"===t.media_kind?a("div",{staticClass:"buttons"},[a("a",{staticClass:"button is-small",on:{click:t.mark_played}},[t._v("Mark as played")]),a("a",{staticClass:"button is-small",on:{click:function(s){return t.$emit("remove_podcast")}}},[t._v("Remove podcast")])]):t._e(),a("div",{staticClass:"content is-small"},[t.album.artist&&"audiobook"!==t.media_kind?a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.album.artist))])]):t._e(),t.album.artist&&"audiobook"===t.media_kind?a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.album.artist))])]):t._e(),a("p",[a("span",{staticClass:"heading"},[t._v("Tracks")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.album.track_count))])])])],1),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Qa=[],Va={name:"ModalDialogAlbum",components:{CoverArtwork:ha},props:["show","album","media_kind","new_tracks"],data:function(){return{artwork_visible:!1}},computed:{artwork_url:function(){return Q.artwork_url_append_size_params(this.album.artwork_url)}},methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.album.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.album.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.album.uri)},open_album:function(){"podcast"===this.media_kind?this.$router.push({path:"/podcasts/"+this.album.id}):"audiobook"===this.media_kind?this.$router.push({path:"/audiobooks/"+this.album.id}):this.$router.push({path:"/music/albums/"+this.album.id})},open_artist:function(){this.$router.push({path:"/music/artists/"+this.album.artist_id})},mark_played:function(){var t=this;Q.library_album_track_update(this.album.id,{play_count:"played"}).then((function(s){s.data;t.$emit("play_count_changed"),t.$emit("close")}))},artwork_loaded:function(){this.artwork_visible=!0},artwork_error:function(){this.artwork_visible=!1}}},Ja=Va,Ka=Object(I["a"])(Ja,Ya,Qa,!1,null,null,null),Xa=Ka.exports,Za={load:function(t){return Promise.all([Q.search({type:"album",expression:"time_added after 8 weeks ago and media_kind is music having track_count > 3 order by time_added desc",limit:3}),Q.search({type:"track",expression:"time_played after 8 weeks ago and media_kind is music order by time_played desc",limit:3})])},set:function(t,s){t.recently_added=s[0].data.albums,t.recently_played=s[1].data.tracks}},te={name:"PageBrowse",mixins:[Ca(Za)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,ListItemAlbum:Ia,ListItemTrack:Ra,ModalDialogTrack:Fa,ModalDialogAlbum:Xa},data:function(){return{recently_added:{},recently_played:{},show_track_details_modal:!1,selected_track:{},show_album_details_modal:!1,selected_album:{}}},methods:{open_browse:function(t){this.$router.push({path:"/music/browse/"+t})},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0},open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_album_dialog:function(t){this.selected_album=t,this.show_album_details_modal=!0},play_track:function(t){Q.player_play_uri(t.uri,!1)}}},se=te,ae=Object(I["a"])(se,ba,ka,!1,null,null,null),ee=ae.exports,ie=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Recently added")]),a("p",{staticClass:"heading"},[t._v("albums")])]),a("template",{slot:"content"},[t._l(t.recently_added.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},ne=[],le={load:function(t){return Q.search({type:"album",expression:"time_added after 8 weeks ago and media_kind is music having track_count > 3 order by time_added desc",limit:50})},set:function(t,s){t.recently_added=s.data.albums}},oe={name:"PageBrowseType",mixins:[Ca(le)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,ListItemAlbum:Ia,ModalDialogAlbum:Xa},data:function(){return{recently_added:{},show_details_modal:!1,selected_album:{}}},methods:{open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}}},re=oe,ce=Object(I["a"])(re,ie,ne,!1,null,null,null),de=ce.exports,ue=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Recently played")]),a("p",{staticClass:"heading"},[t._v("tracks")])]),a("template",{slot:"content"},[t._l(t.recently_played.items,(function(s){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(a){return t.play_track(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},_e=[],pe={load:function(t){return Q.search({type:"track",expression:"time_played after 8 weeks ago and media_kind is music order by time_played desc",limit:50})},set:function(t,s){t.recently_played=s.data.tracks}},me={name:"PageBrowseType",mixins:[Ca(pe)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,ListItemTrack:Ra,ModalDialogTrack:Fa},data:function(){return{recently_played:{},show_details_modal:!1,selected_track:{}}},methods:{open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0},play_track:function(t){Q.player_play_uri(t.uri,!1)}}},he=me,fe=Object(I["a"])(he,ue,_e,!1,null,null,null),ye=fe.exports,ve=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Artists")]),a("p",{staticClass:"heading"},[t._v(t._s(t.artists.total)+" artists")])]),a("template",{slot:"heading-right"},[a("a",{staticClass:"button is-small",class:{"is-info":t.hide_singles},on:{click:t.update_hide_singles}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-numeric-1-box-multiple-outline"})]),a("span",[t._v("Hide singles")])])]),a("template",{slot:"content"},[t._l(t.artists_filtered,(function(s){return a("list-item-artist",{key:s.id,attrs:{artist:s},on:{click:function(a){return t.open_artist(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-artist",{attrs:{show:t.show_details_modal,artist:t.selected_artist},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},ge=[],be=(a("4de4"),a("d81d"),a("6062"),a("2909")),ke=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",[t.filtered_index.length>1?a("nav",{staticClass:"buttons is-centered fd-is-square",staticStyle:{"margin-bottom":"48px"}},t._l(t.filtered_index,(function(s){return a("a",{key:s,staticClass:"button is-small",on:{click:function(a){return t.nav(s)}}},[t._v(t._s(s))])})),0):t._e(),t.filtered_index.length>1?a("nav",{staticClass:"buttons is-centered",staticStyle:{"margin-bottom":"6px"}},[a("a",{staticClass:"button is-small is-white",on:{click:t.scroll_to_top}},[t._m(0)])]):t._e()])},Ce=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-chevron-up"})])}],we={name:"IndexButtonList",props:["index"],computed:{filtered_index:function(){var t="!\"#$%&'()*+,-./:;<=>?@[\\]^`{|}~";return this.index.filter((function(s){return!t.includes(s)}))}},methods:{nav:function(t){this.$router.push({path:this.$router.currentRoute.path+"#index_"+t})},scroll_to_top:function(){window.scrollTo({top:0,behavior:"smooth"})}}},xe=we,$e=Object(I["a"])(xe,ke,Ce,!1,null,null,null),qe=$e.exports,je=function(t,s){var a=s._c;return a("div",{staticClass:"media",attrs:{id:"index_"+s.props.artist.name_sort.charAt(0).toUpperCase()}},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6"},[s._v(s._s(s.props.artist.name))])]),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},Se=[],Pe={name:"ListItemArtist",props:["artist"]},Ae=Pe,Oe=Object(I["a"])(Ae,je,Se,!0,null,null,null),Te=Oe.exports,Ee=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.artist.name))])]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Albums")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.artist.album_count))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Tracks")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.artist.track_count))])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Ie=[],De={name:"ModalDialogArtist",props:["show","artist"],methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.artist.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.artist.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.artist.uri)},open_artist:function(){this.$emit("close"),this.$router.push({path:"/music/artists/"+this.artist.id})}}},ze=De,Le=Object(I["a"])(ze,Ee,Ie,!1,null,null,null),Me=Le.exports,Ne={load:function(t){return Q.library_artists()},set:function(t,s){t.artists=s.data}},Re={name:"PageArtists",mixins:[Ca(Ne)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,IndexButtonList:qe,ListItemArtist:Te,ModalDialogArtist:Me},data:function(){return{artists:{items:[]},show_details_modal:!1,selected_artist:{}}},computed:{hide_singles:function(){return this.$store.state.hide_singles},index_list:function(){var t=this;return Object(be["a"])(new Set(this.artists.items.filter((function(s){return!t.$store.state.hide_singles||s.track_count>2*s.album_count})).map((function(t){return t.name_sort.charAt(0).toUpperCase()}))))},artists_filtered:function(){var t=this;return this.artists.items.filter((function(s){return!t.hide_singles||s.track_count>2*s.album_count}))}},methods:{update_hide_singles:function(t){this.$store.commit(S,!this.hide_singles)},open_artist:function(t){this.$router.push({path:"/music/artists/"+t.id})},open_dialog:function(t){this.selected_artist=t,this.show_details_modal=!0}}},Ue=Re,Be=Object(I["a"])(Ue,ve,ge,!1,null,null,null),We=Be.exports,He=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.artist.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_artist_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.artist.album_count)+" albums | "),a("a",{staticClass:"has-text-link",on:{click:t.open_tracks}},[t._v(t._s(t.artist.track_count)+" tracks")])]),t._l(t.albums.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-artist",{attrs:{show:t.show_artist_details_modal,artist:t.artist},on:{close:function(s){t.show_artist_details_modal=!1}}})],2)],2)},Ge=[],Fe=(a("a15b"),{load:function(t){return Promise.all([Q.library_artist(t.params.artist_id),Q.library_albums(t.params.artist_id)])},set:function(t,s){t.artist=s[0].data,t.albums=s[1].data}}),Ye={name:"PageArtist",mixins:[Ca(Fe)],components:{ContentWithHeading:ws["default"],ListItemAlbum:Ia,ModalDialogAlbum:Xa,ModalDialogArtist:Me},data:function(){return{artist:{},albums:{},show_details_modal:!1,selected_album:{},show_artist_details_modal:!1}},methods:{open_tracks:function(){this.$router.push({path:"/music/artists/"+this.artist.id+"/tracks"})},play:function(){Q.player_play_uri(this.albums.items.map((function(t){return t.uri})).join(","),!0)},open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}}},Qe=Ye,Ve=Object(I["a"])(Qe,He,Ge,!1,null,null,null),Je=Ve.exports,Ke=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Albums")]),a("p",{staticClass:"heading"},[t._v(t._s(t.albums.total)+" albums")])]),a("template",{slot:"heading-right"},[a("a",{staticClass:"button is-small",class:{"is-info":t.hide_singles},on:{click:t.update_hide_singles}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-numeric-1-box-multiple-outline"})]),a("span",[t._v("Hide singles")])])]),a("template",{slot:"content"},[t._l(t.albums_filtered,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},Xe=[],Ze={load:function(t){return Q.library_albums()},set:function(t,s){t.albums=s.data,t.index_list=Object(be["a"])(new Set(t.albums.items.filter((function(s){return!t.$store.state.hide_singles||s.track_count>2})).map((function(t){return t.name_sort.charAt(0).toUpperCase()}))))}},ti={name:"PageAlbums",mixins:[Ca(Ze)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,IndexButtonList:qe,ListItemAlbum:Ia,ModalDialogAlbum:Xa},data:function(){return{albums:{items:[]},index_list:[],show_details_modal:!1,selected_album:{}}},computed:{hide_singles:function(){return this.$store.state.hide_singles},albums_filtered:function(){var t=this;return this.albums.items.filter((function(s){return!t.hide_singles||s.track_count>2}))}},methods:{update_hide_singles:function(t){this.$store.commit(S,!this.hide_singles)},open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}},watch:{hide_singles:function(){var t=this;this.index_list=Object(be["a"])(new Set(this.albums.items.filter((function(s){return!t.$store.state.hide_singles||s.track_count>2})).map((function(t){return t.name_sort.charAt(0).toUpperCase()}))))}}},si=ti,ai=Object(I["a"])(si,Ke,Xe,!1,null,null,null),ei=ai.exports,ii=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.album.name))]),a("a",{staticClass:"title is-4 has-text-link has-text-weight-normal",on:{click:t.open_artist}},[t._v(t._s(t.album.artist))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_album_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.album.track_count)+" tracks")]),t._l(t.tracks,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.album},on:{close:function(s){t.show_album_details_modal=!1}}})],2)],2)},ni=[],li={load:function(t){return Promise.all([Q.library_album(t.params.album_id),Q.library_album_tracks(t.params.album_id)])},set:function(t,s){t.album=s[0].data,t.tracks=s[1].data.items}},oi={name:"PageAlbum",mixins:[Ca(li)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,ModalDialogTrack:Fa,ModalDialogAlbum:Xa},data:function(){return{album:{},tracks:[],show_details_modal:!1,selected_track:{},show_album_details_modal:!1}},methods:{open_artist:function(){this.show_details_modal=!1,this.$router.push({path:"/music/artists/"+this.album.artist_id})},play:function(){Q.player_play_uri(this.album.uri,!0)},play_track:function(t){Q.player_play_uri(this.album.uri,!1,t)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0}}},ri=oi,ci=Object(I["a"])(ri,ii,ni,!1,null,null,null),di=ci.exports,ui=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Genres")]),a("p",{staticClass:"heading"},[t._v(t._s(t.genres.total)+" genres")])]),a("template",{slot:"content"},[t._l(t.genres.items,(function(s){return a("list-item-genre",{key:s.name,attrs:{genre:s},on:{click:function(a){return t.open_genre(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-genre",{attrs:{show:t.show_details_modal,genre:t.selected_genre},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},_i=[],pi=function(t,s){var a=s._c;return a("div",{staticClass:"media",attrs:{id:"index_"+s.props.genre.name.charAt(0).toUpperCase()}},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6"},[s._v(s._s(s.props.genre.name))])]),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},mi=[],hi={name:"ListItemGenre",props:["genre"]},fi=hi,yi=Object(I["a"])(fi,pi,mi,!0,null,null,null),vi=yi.exports,gi=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_genre}},[t._v(t._s(t.genre.name))])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},bi=[],ki={name:"ModalDialogGenre",props:["show","genre"],methods:{play:function(){this.$emit("close"),Q.player_play_expression('genre is "'+this.genre.name+'" and media_kind is music',!1)},queue_add:function(){this.$emit("close"),Q.queue_expression_add('genre is "'+this.genre.name+'" and media_kind is music')},queue_add_next:function(){this.$emit("close"),Q.queue_expression_add_next('genre is "'+this.genre.name+'" and media_kind is music')},open_genre:function(){this.$emit("close"),this.$router.push({name:"Genre",params:{genre:this.genre.name}})}}},Ci=ki,wi=Object(I["a"])(Ci,gi,bi,!1,null,null,null),xi=wi.exports,$i={load:function(t){return Q.library_genres()},set:function(t,s){t.genres=s.data}},qi={name:"PageGenres",mixins:[Ca($i)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,IndexButtonList:qe,ListItemGenre:vi,ModalDialogGenre:xi},data:function(){return{genres:{items:[]},show_details_modal:!1,selected_genre:{}}},computed:{index_list:function(){return Object(be["a"])(new Set(this.genres.items.map((function(t){return t.name.charAt(0).toUpperCase()}))))}},methods:{open_genre:function(t){this.$router.push({name:"Genre",params:{genre:t.name}})},open_dialog:function(t){this.selected_genre=t,this.show_details_modal=!0}}},ji=qi,Si=Object(I["a"])(ji,ui,_i,!1,null,null,null),Pi=Si.exports,Ai=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_genre_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.genre_albums.total)+" albums | "),a("a",{staticClass:"has-text-link",on:{click:t.open_tracks}},[t._v("tracks")])]),t._l(t.genre_albums.items,(function(s){return a("list-item-albums",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-genre",{attrs:{show:t.show_genre_details_modal,genre:{name:t.name}},on:{close:function(s){t.show_genre_details_modal=!1}}})],2)],2)],1)},Oi=[],Ti={load:function(t){return Q.library_genre(t.params.genre)},set:function(t,s){t.name=t.$route.params.genre,t.genre_albums=s.data.albums}},Ei={name:"PageGenre",mixins:[Ca(Ti)],components:{ContentWithHeading:ws["default"],IndexButtonList:qe,ListItemAlbums:Ia,ModalDialogAlbum:Xa,ModalDialogGenre:xi},data:function(){return{name:"",genre_albums:{items:[]},show_details_modal:!1,selected_album:{},show_genre_details_modal:!1}},computed:{index_list:function(){return Object(be["a"])(new Set(this.genre_albums.items.map((function(t){return t.name.charAt(0).toUpperCase()}))))}},methods:{open_tracks:function(){this.show_details_modal=!1,this.$router.push({name:"GenreTracks",params:{genre:this.name}})},play:function(){Q.player_play_expression('genre is "'+this.name+'" and media_kind is music',!0)},open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}}},Ii=Ei,Di=Object(I["a"])(Ii,Ai,Oi,!1,null,null,null),zi=Di.exports,Li=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.genre))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_genre_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[a("a",{staticClass:"has-text-link",on:{click:t.open_genre}},[t._v("albums")]),t._v(" | "+t._s(t.tracks.total)+" tracks")]),t._l(t.tracks.items,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-genre",{attrs:{show:t.show_genre_details_modal,genre:{name:t.genre}},on:{close:function(s){t.show_genre_details_modal=!1}}})],2)],2)],1)},Mi=[],Ni={load:function(t){return Q.library_genre_tracks(t.params.genre)},set:function(t,s){t.genre=t.$route.params.genre,t.tracks=s.data.tracks}},Ri={name:"PageGenreTracks",mixins:[Ca(Ni)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,IndexButtonList:qe,ModalDialogTrack:Fa,ModalDialogGenre:xi},data:function(){return{tracks:{items:[]},genre:"",show_details_modal:!1,selected_track:{},show_genre_details_modal:!1}},computed:{index_list:function(){return Object(be["a"])(new Set(this.tracks.items.map((function(t){return t.title_sort.charAt(0).toUpperCase()}))))}},methods:{open_genre:function(){this.show_details_modal=!1,this.$router.push({name:"Genre",params:{genre:this.genre}})},play:function(){Q.player_play_expression('genre is "'+this.genre+'" and media_kind is music',!0)},play_track:function(t){Q.player_play_expression('genre is "'+this.genre+'" and media_kind is music',!1,t)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0}}},Ui=Ri,Bi=Object(I["a"])(Ui,Li,Mi,!1,null,null,null),Wi=Bi.exports,Hi=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("content-with-heading",[a("template",{slot:"options"},[a("index-button-list",{attrs:{index:t.index_list}})],1),a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.artist.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_artist_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[a("a",{staticClass:"has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.artist.album_count)+" albums")]),t._v(" | "+t._s(t.artist.track_count)+" tracks")]),t._l(t.tracks.items,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-artist",{attrs:{show:t.show_artist_details_modal,artist:t.artist},on:{close:function(s){t.show_artist_details_modal=!1}}})],2)],2)],1)},Gi=[],Fi={load:function(t){return Promise.all([Q.library_artist(t.params.artist_id),Q.library_artist_tracks(t.params.artist_id)])},set:function(t,s){t.artist=s[0].data,t.tracks=s[1].data.tracks}},Yi={name:"PageArtistTracks",mixins:[Ca(Fi)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,IndexButtonList:qe,ModalDialogTrack:Fa,ModalDialogArtist:Me},data:function(){return{artist:{},tracks:{items:[]},show_details_modal:!1,selected_track:{},show_artist_details_modal:!1}},computed:{index_list:function(){return Object(be["a"])(new Set(this.tracks.items.map((function(t){return t.title_sort.charAt(0).toUpperCase()}))))}},methods:{open_artist:function(){this.show_details_modal=!1,this.$router.push({path:"/music/artists/"+this.artist.id})},play:function(){Q.player_play_uri(this.tracks.items.map((function(t){return t.uri})).join(","),!0)},play_track:function(t){Q.player_play_uri(this.tracks.items.map((function(t){return t.uri})).join(","),!1,t)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0}}},Qi=Yi,Vi=Object(I["a"])(Qi,Hi,Gi,!1,null,null,null),Ji=Vi.exports,Ki=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[t.new_episodes.items.length>0?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("New episodes")])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small",on:{click:t.mark_all_played}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-pencil"})]),a("span",[t._v("Mark All Played")])])])]),a("template",{slot:"content"},[t._l(t.new_episodes.items,(function(s){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(a){return t.play_track(s)}}},[a("template",{slot:"progress"},[a("range-slider",{staticClass:"track-progress",attrs:{min:"0",max:s.length_ms,step:"1",disabled:!0,value:s.seek_ms}})],1),a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track},on:{close:function(s){t.show_track_details_modal=!1},play_count_changed:t.reload_new_episodes}})],2)],2):t._e(),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Podcasts")]),a("p",{staticClass:"heading"},[t._v(t._s(t.albums.total)+" podcasts")])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small",on:{click:t.open_add_podcast_dialog}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-rss"})]),a("span",[t._v("Add Podcast")])])])]),a("template",{slot:"content"},[t._l(t.albums.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s,media_kind:"podcast"},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album,media_kind:"podcast"},on:{close:function(s){t.show_album_details_modal=!1},play_count_changed:t.reload_new_episodes,remove_podcast:t.open_remove_podcast_dialog}}),a("modal-dialog",{attrs:{show:t.show_remove_podcast_modal,title:"Remove podcast",delete_action:"Remove"},on:{close:function(s){t.show_remove_podcast_modal=!1},delete:t.remove_podcast}},[a("template",{slot:"modal-content"},[a("p",[t._v("Permanently remove this podcast from your library?")]),a("p",{staticClass:"is-size-7"},[t._v("(This will also remove the RSS playlist "),a("b",[t._v(t._s(t.rss_playlist_to_remove.name))]),t._v(".)")])])],2),a("modal-dialog-add-rss",{attrs:{show:t.show_url_modal},on:{close:function(s){t.show_url_modal=!1},podcast_added:t.reload_podcasts}})],2)],2)],1)},Xi=[],Zi=(a("4160"),a("159b"),function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v("Add Podcast RSS feed URL")]),a("form",{on:{submit:function(s){return s.preventDefault(),t.add_stream(s)}}},[a("div",{staticClass:"field"},[a("p",{staticClass:"control is-expanded has-icons-left"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],ref:"url_field",staticClass:"input is-shadowless",attrs:{type:"text",placeholder:"http://url-to-rss",disabled:t.loading},domProps:{value:t.url},on:{input:function(s){s.target.composing||(t.url=s.target.value)}}}),a("span",{staticClass:"icon is-left"},[a("i",{staticClass:"mdi mdi-rss"})])]),a("p",{staticClass:"help"},[t._v("Adding a podcast includes creating an RSS playlist, that will allow forked-daapd to manage the podcast subscription. ")])])])]),t.loading?a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item button is-loading"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-web"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Processing ...")])])]):a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-danger",on:{click:function(s){return t.$emit("close")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cancel"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Cancel")])]),a("a",{staticClass:"card-footer-item has-background-info has-text-white has-text-weight-bold",on:{click:t.add_stream}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)}),tn=[],sn={name:"ModalDialogAddRss",props:["show"],data:function(){return{url:"",loading:!1}},methods:{add_stream:function(){var t=this;this.loading=!0,Q.library_add(this.url).then((function(){t.$emit("close"),t.$emit("podcast_added"),t.url=""})).catch((function(){t.loading=!1}))}},watch:{show:function(){var t=this;this.show&&(this.loading=!1,setTimeout((function(){t.$refs.url_field.focus()}),10))}}},an=sn,en=Object(I["a"])(an,Zi,tn,!1,null,null,null),nn=en.exports,ln=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[t.title?a("p",{staticClass:"title is-4"},[t._v(" "+t._s(t.title)+" ")]):t._e(),t._t("modal-content")],2),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:function(s){return t.$emit("close")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-cancel"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Cancel")])]),t.delete_action?a("a",{staticClass:"card-footer-item has-background-danger has-text-white has-text-weight-bold",on:{click:function(s){return t.$emit("delete")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-delete"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v(t._s(t.delete_action))])]):t._e(),t.ok_action?a("a",{staticClass:"card-footer-item has-background-info has-text-white has-text-weight-bold",on:{click:function(s){return t.$emit("ok")}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-check"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v(t._s(t.ok_action))])]):t._e()])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},on=[],rn={name:"ModalDialog",props:["show","title","ok_action","delete_action"]},cn=rn,dn=Object(I["a"])(cn,ln,on,!1,null,null,null),un=dn.exports,_n={load:function(t){return Promise.all([Q.library_podcasts(),Q.library_podcasts_new_episodes()])},set:function(t,s){t.albums=s[0].data,t.new_episodes=s[1].data.tracks}},pn={name:"PagePodcasts",mixins:[Ca(_n)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,ListItemAlbum:Ia,ModalDialogTrack:Fa,ModalDialogAlbum:Xa,ModalDialogAddRss:nn,ModalDialog:un,RangeSlider:Z.a},data:function(){return{albums:{},new_episodes:{items:[]},show_album_details_modal:!1,selected_album:{},show_url_modal:!1,show_track_details_modal:!1,selected_track:{},show_remove_podcast_modal:!1,rss_playlist_to_remove:{}}},methods:{open_album:function(t){this.$router.push({path:"/podcasts/"+t.id})},play_track:function(t){Q.player_play_uri(t.uri,!1)},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0},open_album_dialog:function(t){this.selected_album=t,this.show_album_details_modal=!0},mark_all_played:function(){this.new_episodes.items.forEach((function(t){Q.library_track_update(t.id,{play_count:"increment"})})),this.new_episodes.items={}},open_add_podcast_dialog:function(t){this.show_url_modal=!0},open_remove_podcast_dialog:function(){var t=this;this.show_album_details_modal=!1,Q.library_album_tracks(this.selected_album.id,{limit:1}).then((function(s){var a=s.data;Q.library_track_playlists(a.items[0].id).then((function(s){var a=s.data,e=a.items.filter((function(t){return"rss"===t.type}));1===e.length?(t.rss_playlist_to_remove=e[0],t.show_remove_podcast_modal=!0):t.$store.dispatch("add_notification",{text:"Podcast cannot be removed. Probably it was not added as an RSS playlist.",type:"danger"})}))}))},remove_podcast:function(){var t=this;this.show_remove_podcast_modal=!1,Q.library_playlist_delete(this.rss_playlist_to_remove.id).then((function(){t.reload_podcasts()}))},reload_new_episodes:function(){var t=this;Q.library_podcasts_new_episodes().then((function(s){var a=s.data;t.new_episodes=a.tracks}))},reload_podcasts:function(){var t=this;Q.library_podcasts().then((function(s){var a=s.data;t.albums=a,t.reload_new_episodes()}))}}},mn=pn,hn=Object(I["a"])(mn,Ki,Xi,!1,null,null,null),fn=hn.exports,yn=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.album.name)+" ")])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_album_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),a("span",[t._v("Play")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.album.track_count)+" tracks")]),t._l(t.tracks,(function(s){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(a){return t.play_track(s)}}},[a("template",{slot:"progress"},[a("range-slider",{staticClass:"track-progress",attrs:{min:"0",max:s.length_ms,step:"1",disabled:!0,value:s.seek_ms}})],1),a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1},play_count_changed:t.reload_tracks}}),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.album,media_kind:"podcast",new_tracks:t.new_tracks},on:{close:function(s){t.show_album_details_modal=!1},play_count_changed:t.reload_tracks,remove_podcast:t.open_remove_podcast_dialog}}),a("modal-dialog",{attrs:{show:t.show_remove_podcast_modal,title:"Remove podcast",delete_action:"Remove"},on:{close:function(s){t.show_remove_podcast_modal=!1},delete:t.remove_podcast}},[a("template",{slot:"modal-content"},[a("p",[t._v("Permanently remove this podcast from your library?")]),a("p",{staticClass:"is-size-7"},[t._v("(This will also remove the RSS playlist "),a("b",[t._v(t._s(t.rss_playlist_to_remove.name))]),t._v(".)")])])],2)],2)],2)},vn=[],gn={load:function(t){return Promise.all([Q.library_album(t.params.album_id),Q.library_podcast_episodes(t.params.album_id)])},set:function(t,s){t.album=s[0].data,t.tracks=s[1].data.tracks.items}},bn={name:"PagePodcast",mixins:[Ca(gn)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,ModalDialogTrack:Fa,RangeSlider:Z.a,ModalDialogAlbum:Xa,ModalDialog:un},data:function(){return{album:{},tracks:[],show_details_modal:!1,selected_track:{},show_album_details_modal:!1,show_remove_podcast_modal:!1,rss_playlist_to_remove:{}}},computed:{new_tracks:function(){return this.tracks.filter((function(t){return 0===t.play_count})).length}},methods:{play:function(){Q.player_play_uri(this.album.uri,!1)},play_track:function(t){Q.player_play_uri(t.uri,!1)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0},open_remove_podcast_dialog:function(){var t=this;this.show_album_details_modal=!1,Q.library_track_playlists(this.tracks[0].id).then((function(s){var a=s.data,e=a.items.filter((function(t){return"rss"===t.type}));1===e.length?(t.rss_playlist_to_remove=e[0],t.show_remove_podcast_modal=!0):t.$store.dispatch("add_notification",{text:"Podcast cannot be removed. Probably it was not added as an RSS playlist.",type:"danger"})}))},remove_podcast:function(){var t=this;this.show_remove_podcast_modal=!1,Q.library_playlist_delete(this.rss_playlist_to_remove.id).then((function(){t.$router.replace({path:"/podcasts"})}))},reload_tracks:function(){var t=this;Q.library_podcast_episodes(this.album.id).then((function(s){var a=s.data;t.tracks=a.tracks.items}))}}},kn=bn,Cn=Object(I["a"])(kn,yn,vn,!1,null,null,null),wn=Cn.exports,xn=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Audiobooks")]),a("p",{staticClass:"heading"},[t._v(t._s(t.albums.total)+" audiobooks")])]),a("template",{slot:"content"},[t._l(t.albums.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s,media_kind:"audiobook"},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album,media_kind:"audiobook"},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)],1)},$n=[],qn={load:function(t){return Q.library_audiobooks()},set:function(t,s){t.albums=s.data}},jn={name:"PageAudiobooks",mixins:[Ca(qn)],components:{ContentWithHeading:ws["default"],ListItemAlbum:Ia,ModalDialogAlbum:Xa},data:function(){return{albums:{},show_details_modal:!1,selected_album:{}}},methods:{open_album:function(t){this.$router.push({path:"/audiobooks/"+t.id})},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}}},Sn=jn,Pn=Object(I["a"])(Sn,xn,$n,!1,null,null,null),An=Pn.exports,On=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.album.name))]),a("div",{staticClass:"title is-4 has-text-grey has-text-weight-normal"},[t._v(t._s(t.album.artist))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_album_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),a("span",[t._v("Play")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.album.track_count)+" tracks")]),t._l(t.tracks,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.album,media_kind:"audiobook"},on:{close:function(s){t.show_album_details_modal=!1}}})],2)],2)},Tn=[],En={load:function(t){return Promise.all([Q.library_album(t.params.album_id),Q.library_album_tracks(t.params.album_id)])},set:function(t,s){t.album=s[0].data,t.tracks=s[1].data.items}},In={name:"PageAudiobook",mixins:[Ca(En)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,ModalDialogTrack:Fa,ModalDialogAlbum:Xa},data:function(){return{album:{},tracks:[],show_details_modal:!1,selected_track:{},show_album_details_modal:!1}},methods:{play:function(){Q.player_play_uri(this.album.uri,!1)},play_track:function(t){Q.player_play_uri(this.album.uri,!1,t)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0}}},Dn=In,zn=Object(I["a"])(Dn,On,Tn,!1,null,null,null),Ln=zn.exports,Mn=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.playlist.name))]),a("p",{staticClass:"heading"},[t._v(t._s(t.playlists.total)+" playlists")])]),a("template",{slot:"content"},[t._l(t.playlists.items,(function(s){return a("list-item-playlist",{key:s.id,attrs:{playlist:s},on:{click:function(a){return t.open_playlist(s)}}},[a("template",{slot:"icon"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi",class:{"mdi-library-music":"folder"!==s.type,"mdi-rss":"rss"===s.type,"mdi-folder":"folder"===s.type}})])]),a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-playlist",{attrs:{show:t.show_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_details_modal=!1}}})],2)],2)},Nn=[],Rn=function(t,s){var a=s._c;return a("div",{staticClass:"media"},[s.slots().icon?a("figure",{staticClass:"media-left fd-has-action",on:{click:s.listeners.click}},[s._t("icon")],2):s._e(),a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6"},[s._v(s._s(s.props.playlist.name))])]),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},Un=[],Bn={name:"ListItemPlaylist",props:["playlist"]},Wn=Bn,Hn=Object(I["a"])(Wn,Rn,Un,!0,null,null,null),Gn=Hn.exports,Fn=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_playlist}},[t._v(t._s(t.playlist.name))])]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Path")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.playlist.path))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Type")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.playlist.type))])])])]),t.playlist.folder?t._e():a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},Yn=[],Qn={name:"ModalDialogPlaylist",props:["show","playlist"],methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.playlist.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.playlist.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.playlist.uri)},open_playlist:function(){this.$emit("close"),this.$router.push({path:"/playlists/"+this.playlist.id+"/tracks"})}}},Vn=Qn,Jn=Object(I["a"])(Vn,Fn,Yn,!1,null,null,null),Kn=Jn.exports,Xn={load:function(t){return Promise.all([Q.library_playlist(t.params.playlist_id),Q.library_playlist_folder(t.params.playlist_id)])},set:function(t,s){t.playlist=s[0].data,t.playlists=s[1].data}},Zn={name:"PagePlaylists",mixins:[Ca(Xn)],components:{ContentWithHeading:ws["default"],ListItemPlaylist:Gn,ModalDialogPlaylist:Kn},data:function(){return{playlist:{},playlists:{},show_details_modal:!1,selected_playlist:{}}},methods:{open_playlist:function(t){"folder"!==t.type?this.$router.push({path:"/playlists/"+t.id+"/tracks"}):this.$router.push({path:"/playlists/"+t.id})},open_dialog:function(t){this.selected_playlist=t,this.show_details_modal=!0}}},tl=Zn,sl=Object(I["a"])(tl,Mn,Nn,!1,null,null,null),al=sl.exports,el=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.playlist.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_playlist_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.tracks.length)+" tracks")]),t._l(t.tracks,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_details_modal,track:t.selected_track},on:{close:function(s){t.show_details_modal=!1}}}),a("modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2)],2)},il=[],nl={load:function(t){return Promise.all([Q.library_playlist(t.params.playlist_id),Q.library_playlist_tracks(t.params.playlist_id)])},set:function(t,s){t.playlist=s[0].data,t.tracks=s[1].data.items}},ll={name:"PagePlaylist",mixins:[Ca(nl)],components:{ContentWithHeading:ws["default"],ListItemTrack:Ra,ModalDialogTrack:Fa,ModalDialogPlaylist:Kn},data:function(){return{playlist:{},tracks:[],show_details_modal:!1,selected_track:{},show_playlist_details_modal:!1}},methods:{play:function(){Q.player_play_uri(this.playlist.uri,!0)},play_track:function(t){Q.player_play_uri(this.playlist.uri,!1,t)},open_dialog:function(t){this.selected_track=t,this.show_details_modal=!0}}},ol=ll,rl=Object(I["a"])(ol,el,il,!1,null,null,null),cl=rl.exports,dl=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Files")]),a("p",{staticClass:"title is-7 has-text-grey"},[t._v(t._s(t.current_directory))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){return t.open_directory_dialog({path:t.current_directory})}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",[t._v("Play")])])])]),a("template",{slot:"content"},[t.$route.query.directory?a("div",{staticClass:"media",on:{click:function(s){return t.open_parent_directory()}}},[a("figure",{staticClass:"media-left fd-has-action"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-subdirectory-arrow-left"})])]),a("div",{staticClass:"media-content fd-has-action is-clipped"},[a("h1",{staticClass:"title is-6"},[t._v("..")])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)]):t._e(),t._l(t.files.directories,(function(s){return a("list-item-directory",{key:s.path,attrs:{directory:s},on:{click:function(a){return t.open_directory(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_directory_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),t._l(t.files.playlists.items,(function(s){return a("list-item-playlist",{key:s.id,attrs:{playlist:s},on:{click:function(a){return t.open_playlist(s)}}},[a("template",{slot:"icon"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-library-music"})])]),a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_playlist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),t._l(t.files.tracks.items,(function(s,e){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(s){return t.play_track(e)}}},[a("template",{slot:"icon"},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-file-outline"})])]),a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-directory",{attrs:{show:t.show_directory_details_modal,directory:t.selected_directory},on:{close:function(s){t.show_directory_details_modal=!1}}}),a("modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}}),a("modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track},on:{close:function(s){t.show_track_details_modal=!1}}})],2)],2)],1)},ul=[],_l=function(t,s){var a=s._c;return a("div",{staticClass:"media"},[a("figure",{staticClass:"media-left fd-has-action",on:{click:s.listeners.click}},[s._m(0)]),a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:s.listeners.click}},[a("h1",{staticClass:"title is-6"},[s._v(s._s(s.props.directory.path.substring(s.props.directory.path.lastIndexOf("/")+1)))]),a("h2",{staticClass:"subtitle is-7 has-text-grey-light"},[s._v(s._s(s.props.directory.path))])]),a("div",{staticClass:"media-right"},[s._t("actions")],2)])},pl=[function(t,s){var a=s._c;return a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-folder"})])}],ml={name:"ListItemDirectory",props:["directory"]},hl=ml,fl=Object(I["a"])(hl,_l,pl,!0,null,null,null),yl=fl.exports,vl=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" "+t._s(t.directory.path)+" ")])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},gl=[],bl={name:"ModalDialogDirectory",props:["show","directory"],methods:{play:function(){this.$emit("close"),Q.player_play_expression('path starts with "'+this.directory.path+'" order by path asc',!1)},queue_add:function(){this.$emit("close"),Q.queue_expression_add('path starts with "'+this.directory.path+'" order by path asc')},queue_add_next:function(){this.$emit("close"),Q.queue_expression_add_next('path starts with "'+this.directory.path+'" order by path asc')}}},kl=bl,Cl=Object(I["a"])(kl,vl,gl,!1,null,null,null),wl=Cl.exports,xl={load:function(t){return t.query.directory?Q.library_files(t.query.directory):Promise.resolve()},set:function(t,s){t.files=s?s.data:{directories:t.$store.state.config.directories.map((function(t){return{path:t}})),tracks:{items:[]},playlists:{items:[]}}}},$l={name:"PageFiles",mixins:[Ca(xl)],components:{ContentWithHeading:ws["default"],ListItemDirectory:yl,ListItemPlaylist:Gn,ListItemTrack:Ra,ModalDialogDirectory:wl,ModalDialogPlaylist:Kn,ModalDialogTrack:Fa},data:function(){return{files:{directories:[],tracks:{items:[]},playlists:{items:[]}},show_directory_details_modal:!1,selected_directory:{},show_playlist_details_modal:!1,selected_playlist:{},show_track_details_modal:!1,selected_track:{}}},computed:{current_directory:function(){return this.$route.query&&this.$route.query.directory?this.$route.query.directory:"/"}},methods:{open_parent_directory:function(){var t=this.current_directory.slice(0,this.current_directory.lastIndexOf("/"));""===t||this.$store.state.config.directories.includes(this.current_directory)?this.$router.push({path:"/files"}):this.$router.push({path:"/files",query:{directory:this.current_directory.slice(0,this.current_directory.lastIndexOf("/"))}})},open_directory:function(t){this.$router.push({path:"/files",query:{directory:t.path}})},open_directory_dialog:function(t){this.selected_directory=t,this.show_directory_details_modal=!0},play:function(){Q.player_play_expression('path starts with "'+this.current_directory+'" order by path asc',!1)},play_track:function(t){Q.player_play_uri(this.files.tracks.items.map((function(t){return t.uri})).join(","),!1,t)},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0},open_playlist:function(t){this.$router.push({path:"/playlists/"+t.id+"/tracks"})},open_playlist_dialog:function(t){this.selected_playlist=t,this.show_playlist_details_modal=!0}}},ql=$l,jl=Object(I["a"])(ql,dl,ul,!1,null,null,null),Sl=jl.exports,Pl=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("section",{staticClass:"section fd-remove-padding-bottom"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("form",{on:{submit:function(s){return s.preventDefault(),t.new_search(s)}}},[a("div",{staticClass:"field"},[a("p",{staticClass:"control is-expanded has-icons-left"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.search_query,expression:"search_query"}],ref:"search_field",staticClass:"input is-rounded is-shadowless",attrs:{type:"text",placeholder:"Search",autocomplete:"off"},domProps:{value:t.search_query},on:{input:function(s){s.target.composing||(t.search_query=s.target.value)}}}),t._m(0)]),t._m(1)])]),a("div",{staticClass:"tags",staticStyle:{"margin-top":"16px"}},t._l(t.recent_searches,(function(s){return a("a",{key:s,staticClass:"tag",on:{click:function(a){return t.open_recent_search(s)}}},[t._v(t._s(s))])})),0)])])])]),a("tabs-search"),t.show_tracks?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Tracks")])]),a("template",{slot:"content"},[t._l(t.tracks.items,(function(s){return a("list-item-track",{key:s.id,attrs:{track:s},on:{click:function(a){return t.play_track(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track},on:{close:function(s){t.show_track_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_tracks_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_tracks}},[t._v("Show all "+t._s(t.tracks.total)+" tracks")])])]):t._e(),t.tracks.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_artists?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Artists")])]),a("template",{slot:"content"},[t._l(t.artists.items,(function(s){return a("list-item-artist",{key:s.id,attrs:{artist:s},on:{click:function(a){return t.open_artist(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_artist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-artist",{attrs:{show:t.show_artist_details_modal,artist:t.selected_artist},on:{close:function(s){t.show_artist_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_artists_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_artists}},[t._v("Show all "+t._s(t.artists.total)+" artists")])])]):t._e(),t.artists.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_albums?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Albums")])]),a("template",{slot:"content"},[t._l(t.albums.items,(function(s){return a("list-item-album",{key:s.id,attrs:{album:s},on:{click:function(a){return t.open_album(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album},on:{close:function(s){t.show_album_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_albums_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_albums}},[t._v("Show all "+t._s(t.albums.total)+" albums")])])]):t._e(),t.albums.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_playlists?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Playlists")])]),a("template",{slot:"content"},[t._l(t.playlists.items,(function(s){return a("list-item-playlist",{key:s.id,attrs:{playlist:s},on:{click:function(a){return t.open_playlist(s)}}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_playlist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_playlists_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_playlists}},[t._v("Show all "+t._s(t.playlists.total)+" playlists")])])]):t._e(),t.playlists.total?t._e():a("p",[t._v("No results")])])],2):t._e()],1)},Al=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("span",{staticClass:"icon is-left"},[a("i",{staticClass:"mdi mdi-magnify"})])},function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("p",{staticClass:"help has-text-centered"},[t._v("Tip: you can search by a smart playlist query language "),a("a",{attrs:{href:"https://github.com/ejurgensen/forked-daapd/blob/master/README_SMARTPL.md",target:"_blank"}},[t._v("expression")]),t._v(" if you prefix it with "),a("code",[t._v("query:")]),t._v(". ")])}],Ol=function(){var t=this,s=t.$createElement,a=t._self._c||s;return t.spotify_enabled?a("section",{staticClass:"section fd-remove-padding-bottom"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("div",{staticClass:"tabs is-centered is-small is-toggle is-toggle-rounded"},[a("ul",[a("router-link",{attrs:{tag:"li",to:{path:"/search/library",query:t.$route.query},"active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-library-books"})]),a("span",{},[t._v("Library")])])]),a("router-link",{attrs:{tag:"li",to:{path:"/search/spotify",query:t.$route.query},"active-class":"is-active"}},[a("a",[a("span",{staticClass:"icon is-small"},[a("i",{staticClass:"mdi mdi-spotify"})]),a("span",{},[t._v("Spotify")])])])],1)])])])])]):t._e()},Tl=[],El={name:"TabsSearch",computed:{spotify_enabled:function(){return this.$store.state.spotify.webapi_token_valid}}},Il=El,Dl=Object(I["a"])(Il,Ol,Tl,!1,null,null,null),zl=Dl.exports,Ll={name:"PageSearch",components:{ContentWithHeading:ws["default"],TabsSearch:zl,ListItemTrack:Ra,ListItemArtist:Te,ListItemAlbum:Ia,ListItemPlaylist:Gn,ModalDialogTrack:Fa,ModalDialogAlbum:Xa,ModalDialogArtist:Me,ModalDialogPlaylist:Kn},data:function(){return{search_query:"",tracks:{items:[],total:0},artists:{items:[],total:0},albums:{items:[],total:0},playlists:{items:[],total:0},show_track_details_modal:!1,selected_track:{},show_album_details_modal:!1,selected_album:{},show_artist_details_modal:!1,selected_artist:{},show_playlist_details_modal:!1,selected_playlist:{}}},computed:{recent_searches:function(){return this.$store.state.recent_searches},show_tracks:function(){return this.$route.query.type&&this.$route.query.type.includes("track")},show_all_tracks_button:function(){return this.tracks.total>this.tracks.items.length},show_artists:function(){return this.$route.query.type&&this.$route.query.type.includes("artist")},show_all_artists_button:function(){return this.artists.total>this.artists.items.length},show_albums:function(){return this.$route.query.type&&this.$route.query.type.includes("album")},show_all_albums_button:function(){return this.albums.total>this.albums.items.length},show_playlists:function(){return this.$route.query.type&&this.$route.query.type.includes("playlist")},show_all_playlists_button:function(){return this.playlists.total>this.playlists.items.length}},methods:{search:function(t){var s=this;if(!t.query.query||""===t.query.query)return this.search_query="",void this.$refs.search_field.focus();var a={type:t.query.type,media_kind:"music"};t.query.query.startsWith("query:")?a.expression=t.query.query.replace(/^query:/,"").trim():a.query=t.query.query,t.query.limit&&(a.limit=t.query.limit,a.offset=t.query.offset),Q.search(a).then((function(a){var e=a.data;s.tracks=e.tracks?e.tracks:{items:[],total:0},s.artists=e.artists?e.artists:{items:[],total:0},s.albums=e.albums?e.albums:{items:[],total:0},s.playlists=e.playlists?e.playlists:{items:[],total:0},s.$store.commit(j,t.query.query)}))},new_search:function(){this.search_query&&(this.$router.push({path:"/search/library",query:{type:"track,artist,album,playlist",query:this.search_query,limit:3,offset:0}}),this.$refs.search_field.blur())},open_search_tracks:function(){this.$router.push({path:"/search/library",query:{type:"track",query:this.$route.query.query}})},open_search_artists:function(){this.$router.push({path:"/search/library",query:{type:"artist",query:this.$route.query.query}})},open_search_albums:function(){this.$router.push({path:"/search/library",query:{type:"album",query:this.$route.query.query}})},open_search_playlists:function(){this.$router.push({path:"/search/library",query:{type:"playlist",query:this.$route.query.query}})},play_track:function(t){Q.player_play_uri(t.uri,!1)},open_artist:function(t){this.$router.push({path:"/music/artists/"+t.id})},open_album:function(t){this.$router.push({path:"/music/albums/"+t.id})},open_playlist:function(t){this.$router.push({path:"/playlists/"+t.id+"/tracks"})},open_recent_search:function(t){this.search_query=t,this.new_search()},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0},open_album_dialog:function(t){this.selected_album=t,this.show_album_details_modal=!0},open_artist_dialog:function(t){this.selected_artist=t,this.show_artist_details_modal=!0},open_playlist_dialog:function(t){this.selected_playlist=t,this.show_playlist_details_modal=!0}},mounted:function(){this.search(this.$route)},watch:{$route:function(t,s){this.search(t)}}},Ml=Ll,Nl=Object(I["a"])(Ml,Pl,Al,!1,null,null,null),Rl=Nl.exports,Ul=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("section",{staticClass:"section"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths has-text-centered-mobile"},[a("p",{staticClass:"heading"},[a("b",[t._v("forked-daapd")]),t._v(" - version "+t._s(t.config.version))]),a("h1",{staticClass:"title is-4"},[t._v(t._s(t.config.library_name))])])])])]),a("section",{staticClass:"section"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("div",{staticClass:"content"},[a("nav",{staticClass:"level is-mobile"},[t._m(0),a("div",{staticClass:"level-right"},[t.library.updating?a("div",[a("a",{staticClass:"button is-small is-loading"},[t._v("Update")])]):a("div",{staticClass:"dropdown is-right",class:{"is-active":t.show_update_dropdown}},[a("div",{staticClass:"dropdown-trigger"},[a("div",{staticClass:"buttons has-addons"},[a("a",{staticClass:"button is-small",on:{click:t.update}},[t._v("Update")]),a("a",{staticClass:"button is-small",on:{click:function(s){t.show_update_dropdown=!t.show_update_dropdown}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi",class:{"mdi-chevron-down":!t.show_update_dropdown,"mdi-chevron-up":t.show_update_dropdown}})])])])]),a("div",{staticClass:"dropdown-menu",attrs:{id:"dropdown-menu",role:"menu"}},[a("div",{staticClass:"dropdown-content"},[a("div",{staticClass:"dropdown-item"},[a("a",{staticClass:"has-text-dark",on:{click:t.update}},[a("strong",[t._v("Update")]),a("br"),a("span",{staticClass:"is-size-7"},[t._v("Adds new, removes deleted and updates modified files.")])])]),a("hr",{staticClass:"dropdown-divider"}),a("div",{staticClass:"dropdown-item"},[a("a",{staticClass:"has-text-dark",on:{click:t.update_meta}},[a("strong",[t._v("Rescan metadata")]),a("br"),a("span",{staticClass:"is-size-7"},[t._v("Same as update, but also rescans unmodified files.")])])])])])])])]),a("table",{staticClass:"table"},[a("tbody",[a("tr",[a("th",[t._v("Artists")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("number")(t.library.artists)))])]),a("tr",[a("th",[t._v("Albums")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("number")(t.library.albums)))])]),a("tr",[a("th",[t._v("Tracks")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("number")(t.library.songs)))])]),a("tr",[a("th",[t._v("Total playtime")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("duration")(1e3*t.library.db_playtime,"y [years], d [days], h [hours], m [minutes]")))])]),a("tr",[a("th",[t._v("Library updated")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("timeFromNow")(t.library.updated_at))+" "),a("span",{staticClass:"has-text-grey"},[t._v("("+t._s(t._f("time")(t.library.updated_at,"MMM Do, h:mm"))+")")])])]),a("tr",[a("th",[t._v("Uptime")]),a("td",{staticClass:"has-text-right"},[t._v(t._s(t._f("timeFromNow")(t.library.started_at,!0))+" "),a("span",{staticClass:"has-text-grey"},[t._v("("+t._s(t._f("time")(t.library.started_at,"MMM Do, h:mm"))+")")])])])])])])])])])]),a("section",{staticClass:"section"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("div",{staticClass:"content has-text-centered-mobile"},[a("p",{staticClass:"is-size-7"},[t._v("Compiled with support for "+t._s(t._f("join")(t.config.buildoptions))+".")]),t._m(1)])])])])])])},Bl=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"level-left"},[a("div",{staticClass:"level-item"},[a("h2",{staticClass:"title is-5"},[t._v("Library")])])])},function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("p",{staticClass:"is-size-7"},[t._v("Web interface built with "),a("a",{attrs:{href:"http://bulma.io"}},[t._v("Bulma")]),t._v(", "),a("a",{attrs:{href:"https://materialdesignicons.com/"}},[t._v("Material Design Icons")]),t._v(", "),a("a",{attrs:{href:"https://vuejs.org/"}},[t._v("Vue.js")]),t._v(", "),a("a",{attrs:{href:"https://github.com/mzabriskie/axios"}},[t._v("axios")]),t._v(" and "),a("a",{attrs:{href:"https://github.com/ejurgensen/forked-daapd/network/dependencies"}},[t._v("more")]),t._v(".")])}],Wl={name:"PageAbout",data:function(){return{show_update_dropdown:!1}},computed:{config:function(){return this.$store.state.config},library:function(){return this.$store.state.library}},methods:{update:function(){this.show_update_dropdown=!1,Q.library_update()},update_meta:function(){this.show_update_dropdown=!1,Q.library_rescan()}},filters:{join:function(t){return t.join(", ")}}},Hl=Wl,Gl=Object(I["a"])(Hl,Ul,Bl,!1,null,null,null),Fl=Gl.exports,Yl=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("New Releases")])]),a("template",{slot:"content"},[t._l(t.new_releases,(function(s){return a("spotify-list-item-album",{key:s.id,attrs:{album:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("spotify-modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album},on:{close:function(s){t.show_album_details_modal=!1}}})],2),a("template",{slot:"footer"},[a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("router-link",{staticClass:"button is-light is-small is-rounded",attrs:{to:"/music/spotify/new-releases"}},[t._v(" Show more ")])],1)])])],2),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Featured Playlists")])]),a("template",{slot:"content"},[t._l(t.featured_playlists,(function(s){return a("spotify-list-item-playlist",{key:s.id,attrs:{playlist:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_playlist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("spotify-modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2),a("template",{slot:"footer"},[a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("router-link",{staticClass:"button is-light is-small is-rounded",attrs:{to:"/music/spotify/featured-playlists"}},[t._v(" Show more ")])],1)])])],2)],1)},Ql=[],Vl=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"media"},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:t.open_album}},[a("h1",{staticClass:"title is-6"},[t._v(t._s(t.album.name))]),a("h2",{staticClass:"subtitle is-7 has-text-grey"},[a("b",[t._v(t._s(t.album.artists[0].name))])]),a("h2",{staticClass:"subtitle is-7 has-text-grey has-text-weight-normal"},[t._v("("+t._s(t.album.album_type)+", "+t._s(t.album.release_date)+")")])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)])},Jl=[],Kl={name:"SpotifyListItemAlbum",props:["album"],methods:{open_album:function(){this.$router.push({path:"/music/spotify/albums/"+this.album.id})}}},Xl=Kl,Zl=Object(I["a"])(Xl,Vl,Jl,!1,null,null,null),to=Zl.exports,so=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"media"},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:t.open_playlist}},[a("h1",{staticClass:"title is-6"},[t._v(t._s(t.playlist.name))]),a("h2",{staticClass:"subtitle is-7"},[t._v(t._s(t.playlist.owner.display_name))])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)])},ao=[],eo={name:"SpotifyListItemPlaylist",props:["playlist"],methods:{open_playlist:function(){this.$router.push({path:"/music/spotify/playlists/"+this.playlist.id})}}},io=eo,no=Object(I["a"])(io,so,ao,!1,null,null,null),lo=no.exports,oo=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("figure",{directives:[{name:"show",rawName:"v-show",value:t.artwork_visible,expression:"artwork_visible"}],staticClass:"image is-square fd-has-margin-bottom"},[a("img",{staticClass:"fd-has-shadow",attrs:{src:t.artwork_url},on:{load:t.artwork_loaded,error:t.artwork_error}})]),a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_album}},[t._v(t._s(t.album.name))])]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.album.artists[0].name))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Release date")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.album.release_date))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Type")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.album.album_type))])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},ro=[],co={name:"SpotifyModalDialogAlbum",props:["show","album"],data:function(){return{artwork_visible:!1}},computed:{artwork_url:function(){return this.album.images&&this.album.images.length>0?this.album.images[0].url:""}},methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.album.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.album.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.album.uri)},open_album:function(){this.$router.push({path:"/music/spotify/albums/"+this.album.id})},open_artist:function(){this.$router.push({path:"/music/spotify/artists/"+this.album.artists[0].id})},artwork_loaded:function(){this.artwork_visible=!0},artwork_error:function(){this.artwork_visible=!1}}},uo=co,_o=Object(I["a"])(uo,oo,ro,!1,null,null,null),po=_o.exports,mo=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_playlist}},[t._v(t._s(t.playlist.name))])]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Owner")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.playlist.owner.display_name))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Tracks")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.playlist.tracks.total))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Path")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.playlist.uri))])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},ho=[],fo={name:"SpotifyModalDialogPlaylist",props:["show","playlist"],methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.playlist.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.playlist.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.playlist.uri)},open_playlist:function(){this.$router.push({path:"/music/spotify/playlists/"+this.playlist.id})}}},yo=fo,vo=Object(I["a"])(yo,mo,ho,!1,null,null,null),go=vo.exports,bo={load:function(t){if(Y.state.spotify_new_releases.length>0&&Y.state.spotify_featured_playlists.length>0)return Promise.resolve();var s=new Es.a;return s.setAccessToken(Y.state.spotify.webapi_token),Promise.all([s.getNewReleases({country:Y.state.spotify.webapi_country,limit:50}),s.getFeaturedPlaylists({country:Y.state.spotify.webapi_country,limit:50})])},set:function(t,s){s&&(Y.commit(w,s[0].albums.items),Y.commit(x,s[1].playlists.items))}},ko={name:"SpotifyPageBrowse",mixins:[Ca(bo)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,SpotifyListItemAlbum:to,SpotifyListItemPlaylist:lo,SpotifyModalDialogAlbum:po,SpotifyModalDialogPlaylist:go},data:function(){return{show_album_details_modal:!1,selected_album:{},show_playlist_details_modal:!1,selected_playlist:{}}},computed:{new_releases:function(){return this.$store.state.spotify_new_releases.slice(0,3)},featured_playlists:function(){return this.$store.state.spotify_featured_playlists.slice(0,3)}},methods:{open_album_dialog:function(t){this.selected_album=t,this.show_album_details_modal=!0},open_playlist_dialog:function(t){this.selected_playlist=t,this.show_playlist_details_modal=!0}}},Co=ko,wo=Object(I["a"])(Co,Yl,Ql,!1,null,null,null),xo=wo.exports,$o=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("New Releases")])]),a("template",{slot:"content"},[t._l(t.new_releases,(function(s){return a("spotify-list-item-album",{key:s.id,attrs:{album:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("spotify-modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album},on:{close:function(s){t.show_album_details_modal=!1}}})],2)],2)],1)},qo=[],jo={load:function(t){if(Y.state.spotify_new_releases.length>0)return Promise.resolve();var s=new Es.a;return s.setAccessToken(Y.state.spotify.webapi_token),s.getNewReleases({country:Y.state.spotify.webapi_country,limit:50})},set:function(t,s){s&&Y.commit(w,s.albums.items)}},So={name:"SpotifyPageBrowseNewReleases",mixins:[Ca(jo)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,SpotifyListItemAlbum:to,SpotifyModalDialogAlbum:po},data:function(){return{show_album_details_modal:!1,selected_album:{}}},computed:{new_releases:function(){return this.$store.state.spotify_new_releases}},methods:{open_album:function(t){this.selected_album=t,this.show_album_details_modal=!0}}},Po=So,Ao=Object(I["a"])(Po,$o,qo,!1,null,null,null),Oo=Ao.exports,To=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-music"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Featured Playlists")])]),a("template",{slot:"content"},[t._l(t.featured_playlists,(function(s){return a("spotify-list-item-playlist",{key:s.id,attrs:{playlist:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_playlist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("spotify-modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2)],2)],1)},Eo=[],Io={load:function(t){if(Y.state.spotify_featured_playlists.length>0)return Promise.resolve();var s=new Es.a;s.setAccessToken(Y.state.spotify.webapi_token),s.getFeaturedPlaylists({country:Y.state.spotify.webapi_country,limit:50})},set:function(t,s){s&&Y.commit(x,s.playlists.items)}},Do={name:"SpotifyPageBrowseFeaturedPlaylists",mixins:[Ca(Io)],components:{ContentWithHeading:ws["default"],TabsMusic:Sa,SpotifyListItemPlaylist:lo,SpotifyModalDialogPlaylist:go},data:function(){return{show_playlist_details_modal:!1,selected_playlist:{}}},computed:{featured_playlists:function(){return this.$store.state.spotify_featured_playlists}},methods:{open_playlist_dialog:function(t){this.selected_playlist=t,this.show_playlist_details_modal=!0}}},zo=Do,Lo=Object(I["a"])(zo,To,Eo,!1,null,null,null),Mo=Lo.exports,No=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v(t._s(t.artist.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_artist_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.total)+" albums")]),t._l(t.albums,(function(s){return a("spotify-list-item-album",{key:s.id,attrs:{album:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),t.offset<t.total?a("infinite-loading",{on:{infinite:t.load_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-album",{attrs:{show:t.show_details_modal,album:t.selected_album},on:{close:function(s){t.show_details_modal=!1}}}),a("spotify-modal-dialog-artist",{attrs:{show:t.show_artist_details_modal,artist:t.artist},on:{close:function(s){t.show_artist_details_modal=!1}}})],2)],2)},Ro=[],Uo=(a("99af"),function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[a("a",{staticClass:"has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.artist.name))])]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Popularity / Followers")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.artist.popularity)+" / "+t._s(t.artist.followers.total))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Genres")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.artist.genres.join(", ")))])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)}),Bo=[],Wo={name:"SpotifyModalDialogArtist",props:["show","artist"],methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.artist.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.artist.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.artist.uri)},open_artist:function(){this.$router.push({path:"/music/spotify/artists/"+this.artist.id})}}},Ho=Wo,Go=Object(I["a"])(Ho,Uo,Bo,!1,null,null,null),Fo=Go.exports,Yo=a("e166"),Qo=a.n(Yo),Vo={load:function(t){var s=new Es.a;return s.setAccessToken(Y.state.spotify.webapi_token),Promise.all([s.getArtist(t.params.artist_id),s.getArtistAlbums(t.params.artist_id,{limit:50,offset:0,include_groups:"album,single"})])},set:function(t,s){t.artist=s[0],t.albums=[],t.total=0,t.offset=0,t.append_albums(s[1])}},Jo={name:"SpotifyPageArtist",mixins:[Ca(Vo)],components:{ContentWithHeading:ws["default"],SpotifyListItemAlbum:to,SpotifyModalDialogAlbum:po,SpotifyModalDialogArtist:Fo,InfiniteLoading:Qo.a},data:function(){return{artist:{},albums:[],total:0,offset:0,show_details_modal:!1,selected_album:{},show_artist_details_modal:!1}},methods:{load_next:function(t){var s=this,a=new Es.a;a.setAccessToken(this.$store.state.spotify.webapi_token),a.getArtistAlbums(this.artist.id,{limit:50,offset:this.offset,include_groups:"album,single"}).then((function(a){s.append_albums(a,t)}))},append_albums:function(t,s){this.albums=this.albums.concat(t.items),this.total=t.total,this.offset+=t.limit,s&&(s.loaded(),this.offset>=this.total&&s.complete())},play:function(){this.show_details_modal=!1,Q.player_play_uri(this.artist.uri,!0)},open_dialog:function(t){this.selected_album=t,this.show_details_modal=!0}}},Ko=Jo,Xo=Object(I["a"])(Ko,No,Ro,!1,null,null,null),Zo=Xo.exports,tr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.album.name))]),a("a",{staticClass:"title is-4 has-text-link has-text-weight-normal",on:{click:t.open_artist}},[t._v(t._s(t.album.artists[0].name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_album_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.album.tracks.total)+" tracks")]),t._l(t.album.tracks.items,(function(s,e){return a("spotify-list-item-track",{key:s.id,attrs:{track:s,position:e,album:t.album,context_uri:t.album.uri}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),a("spotify-modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track,album:t.album},on:{close:function(s){t.show_track_details_modal=!1}}}),a("spotify-modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.album},on:{close:function(s){t.show_album_details_modal=!1}}})],2)],2)},sr=[],ar=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"media"},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:t.play}},[a("h1",{staticClass:"title is-6"},[t._v(t._s(t.track.name))]),a("h2",{staticClass:"subtitle is-7 has-text-grey"},[a("b",[t._v(t._s(t.track.artists[0].name))])])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)])},er=[],ir={name:"SpotifyListItemTrack",props:["track","position","album","context_uri"],methods:{play:function(){Q.player_play_uri(this.context_uri,!1,this.position)}}},nr=ir,lr=Object(I["a"])(nr,ar,er,!1,null,null,null),or=lr.exports,rr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("transition",{attrs:{name:"fade"}},[t.show?a("div",{staticClass:"modal is-active"},[a("div",{staticClass:"modal-background",on:{click:function(s){return t.$emit("close")}}}),a("div",{staticClass:"modal-content fd-modal-card"},[a("div",{staticClass:"card"},[a("div",{staticClass:"card-content"},[a("p",{staticClass:"title is-4"},[t._v(" "+t._s(t.track.name)+" ")]),a("p",{staticClass:"subtitle"},[t._v(" "+t._s(t.track.artists[0].name)+" ")]),a("div",{staticClass:"content is-small"},[a("p",[a("span",{staticClass:"heading"},[t._v("Album")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_album}},[t._v(t._s(t.album.name))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Album artist")]),a("a",{staticClass:"title is-6 has-text-link",on:{click:t.open_artist}},[t._v(t._s(t.album.artists[0].name))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Release date")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.album.release_date))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Track / Disc")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.track_number)+" / "+t._s(t.track.disc_number))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Length")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t._f("duration")(t.track.duration_ms)))])]),a("p",[a("span",{staticClass:"heading"},[t._v("Path")]),a("span",{staticClass:"title is-6"},[t._v(t._s(t.track.uri))])])])]),a("footer",{staticClass:"card-footer"},[a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-plus"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.queue_add_next}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-playlist-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Add Next")])]),a("a",{staticClass:"card-footer-item has-text-dark",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-play"})]),t._v(" "),a("span",{staticClass:"is-size-7"},[t._v("Play")])])])])]),a("button",{staticClass:"modal-close is-large",attrs:{"aria-label":"close"},on:{click:function(s){return t.$emit("close")}}})]):t._e()])],1)},cr=[],dr={name:"SpotifyModalDialogTrack",props:["show","track","album"],methods:{play:function(){this.$emit("close"),Q.player_play_uri(this.track.uri,!1)},queue_add:function(){this.$emit("close"),Q.queue_add(this.track.uri)},queue_add_next:function(){this.$emit("close"),Q.queue_add_next(this.track.uri)},open_album:function(){this.$router.push({path:"/music/spotify/albums/"+this.album.id})},open_artist:function(){this.$router.push({path:"/music/spotify/artists/"+this.album.artists[0].id})}}},ur=dr,_r=Object(I["a"])(ur,rr,cr,!1,null,null,null),pr=_r.exports,mr={load:function(t){var s=new Es.a;return s.setAccessToken(Y.state.spotify.webapi_token),s.getAlbum(t.params.album_id)},set:function(t,s){t.album=s}},hr={name:"PageAlbum",mixins:[Ca(mr)],components:{ContentWithHeading:ws["default"],SpotifyListItemTrack:or,SpotifyModalDialogTrack:pr,SpotifyModalDialogAlbum:po},data:function(){return{album:{artists:[{}],tracks:{}},show_track_details_modal:!1,selected_track:{},show_album_details_modal:!1}},methods:{open_artist:function(){this.$router.push({path:"/music/spotify/artists/"+this.album.artists[0].id})},play:function(){this.show_details_modal=!1,Q.player_play_uri(this.album.uri,!0)},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0}}},fr=hr,yr=Object(I["a"])(fr,tr,sr,!1,null,null,null),vr=yr.exports,gr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v(t._s(t.playlist.name))])]),a("template",{slot:"heading-right"},[a("div",{staticClass:"buttons is-centered"},[a("a",{staticClass:"button is-small is-light is-rounded",on:{click:function(s){t.show_playlist_details_modal=!0}}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-dots-horizontal mdi-18px"})])]),a("a",{staticClass:"button is-small is-dark is-rounded",on:{click:t.play}},[a("span",{staticClass:"icon"},[a("i",{staticClass:"mdi mdi-shuffle"})]),t._v(" "),a("span",[t._v("Shuffle")])])])]),a("template",{slot:"content"},[a("p",{staticClass:"heading has-text-centered-mobile"},[t._v(t._s(t.playlist.tracks.total)+" tracks")]),t._l(t.tracks,(function(s,e){return a("spotify-list-item-track",{key:s.track.id,attrs:{track:s.track,album:s.track.album,position:e,context_uri:t.playlist.uri}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s.track)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),t.offset<t.total?a("infinite-loading",{on:{infinite:t.load_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track,album:t.selected_track.album},on:{close:function(s){t.show_track_details_modal=!1}}}),a("spotify-modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2)],2)},br=[],kr={load:function(t){var s=new Es.a;return s.setAccessToken(Y.state.spotify.webapi_token),Promise.all([s.getPlaylist(t.params.playlist_id),s.getPlaylistTracks(t.params.playlist_id,{limit:50,offset:0})])},set:function(t,s){t.playlist=s[0],t.tracks=[],t.total=0,t.offset=0,t.append_tracks(s[1])}},Cr={name:"SpotifyPagePlaylist",mixins:[Ca(kr)],components:{ContentWithHeading:ws["default"],SpotifyListItemTrack:or,SpotifyModalDialogTrack:pr,SpotifyModalDialogPlaylist:go,InfiniteLoading:Qo.a},data:function(){return{playlist:{tracks:{}},tracks:[],total:0,offset:0,show_track_details_modal:!1,selected_track:{},show_playlist_details_modal:!1}},methods:{load_next:function(t){var s=this,a=new Es.a;a.setAccessToken(this.$store.state.spotify.webapi_token),a.getPlaylistTracks(this.playlist.id,{limit:50,offset:this.offset}).then((function(a){s.append_tracks(a,t)}))},append_tracks:function(t,s){this.tracks=this.tracks.concat(t.items),this.total=t.total,this.offset+=t.limit,s&&(s.loaded(),this.offset>=this.total&&s.complete())},play:function(){this.show_details_modal=!1,Q.player_play_uri(this.playlist.uri,!0)},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0}}},wr=Cr,xr=Object(I["a"])(wr,gr,br,!1,null,null,null),$r=xr.exports,qr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("section",{staticClass:"section fd-remove-padding-bottom"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("form",{on:{submit:function(s){return s.preventDefault(),t.new_search(s)}}},[a("div",{staticClass:"field"},[a("p",{staticClass:"control is-expanded has-icons-left"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.search_query,expression:"search_query"}],ref:"search_field",staticClass:"input is-rounded is-shadowless",attrs:{type:"text",placeholder:"Search",autocomplete:"off"},domProps:{value:t.search_query},on:{input:function(s){s.target.composing||(t.search_query=s.target.value)}}}),t._m(0)])])]),a("div",{staticClass:"tags",staticStyle:{"margin-top":"16px"}},t._l(t.recent_searches,(function(s){return a("a",{key:s,staticClass:"tag",on:{click:function(a){return t.open_recent_search(s)}}},[t._v(t._s(s))])})),0)])])])]),a("tabs-search"),t.show_tracks?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Tracks")])]),a("template",{slot:"content"},[t._l(t.tracks.items,(function(s){return a("spotify-list-item-track",{key:s.id,attrs:{track:s,album:s.album,position:0,context_uri:s.uri}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_track_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),"track"===t.query.type?a("infinite-loading",{on:{infinite:t.search_tracks_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-track",{attrs:{show:t.show_track_details_modal,track:t.selected_track,album:t.selected_track.album},on:{close:function(s){t.show_track_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_tracks_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_tracks}},[t._v("Show all "+t._s(t.tracks.total)+" tracks")])])]):t._e(),t.tracks.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_artists?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Artists")])]),a("template",{slot:"content"},[t._l(t.artists.items,(function(s){return a("spotify-list-item-artist",{key:s.id,attrs:{artist:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_artist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),"artist"===t.query.type?a("infinite-loading",{on:{infinite:t.search_artists_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-artist",{attrs:{show:t.show_artist_details_modal,artist:t.selected_artist},on:{close:function(s){t.show_artist_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_artists_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_artists}},[t._v("Show all "+t._s(t.artists.total)+" artists")])])]):t._e(),t.artists.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_albums?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Albums")])]),a("template",{slot:"content"},[t._l(t.albums.items,(function(s){return a("spotify-list-item-album",{key:s.id,attrs:{album:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_album_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),"album"===t.query.type?a("infinite-loading",{on:{infinite:t.search_albums_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-album",{attrs:{show:t.show_album_details_modal,album:t.selected_album},on:{close:function(s){t.show_album_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_albums_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_albums}},[t._v("Show all "+t._s(t.albums.total)+" albums")])])]):t._e(),t.albums.total?t._e():a("p",[t._v("No results")])])],2):t._e(),t.show_playlists?a("content-with-heading",[a("template",{slot:"heading-left"},[a("p",{staticClass:"title is-4"},[t._v("Playlists")])]),a("template",{slot:"content"},[t._l(t.playlists.items,(function(s){return a("spotify-list-item-playlist",{key:s.id,attrs:{playlist:s}},[a("template",{slot:"actions"},[a("a",{on:{click:function(a){return t.open_playlist_dialog(s)}}},[a("span",{staticClass:"icon has-text-dark"},[a("i",{staticClass:"mdi mdi-dots-vertical mdi-18px"})])])])],2)})),"playlist"===t.query.type?a("infinite-loading",{on:{infinite:t.search_playlists_next}},[a("span",{attrs:{slot:"no-more"},slot:"no-more"},[t._v(".")])]):t._e(),a("spotify-modal-dialog-playlist",{attrs:{show:t.show_playlist_details_modal,playlist:t.selected_playlist},on:{close:function(s){t.show_playlist_details_modal=!1}}})],2),a("template",{slot:"footer"},[t.show_all_playlists_button?a("nav",{staticClass:"level"},[a("p",{staticClass:"level-item"},[a("a",{staticClass:"button is-light is-small is-rounded",on:{click:t.open_search_playlists}},[t._v("Show all "+t._s(t.playlists.total)+" playlists")])])]):t._e(),t.playlists.total?t._e():a("p",[t._v("No results")])])],2):t._e()],1)},jr=[function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("span",{staticClass:"icon is-left"},[a("i",{staticClass:"mdi mdi-magnify"})])}],Sr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"media"},[a("div",{staticClass:"media-content fd-has-action is-clipped",on:{click:t.open_artist}},[a("h1",{staticClass:"title is-6"},[t._v(t._s(t.artist.name))])]),a("div",{staticClass:"media-right"},[t._t("actions")],2)])},Pr=[],Ar={name:"SpotifyListItemArtist",props:["artist"],methods:{open_artist:function(){this.$router.push({path:"/music/spotify/artists/"+this.artist.id})}}},Or=Ar,Tr=Object(I["a"])(Or,Sr,Pr,!1,null,null,null),Er=Tr.exports,Ir={name:"SpotifyPageSearch",components:{ContentWithHeading:ws["default"],TabsSearch:zl,SpotifyListItemTrack:or,SpotifyListItemArtist:Er,SpotifyListItemAlbum:to,SpotifyListItemPlaylist:lo,SpotifyModalDialogTrack:pr,SpotifyModalDialogArtist:Fo,SpotifyModalDialogAlbum:po,SpotifyModalDialogPlaylist:go,InfiniteLoading:Qo.a},data:function(){return{search_query:"",tracks:{items:[],total:0},artists:{items:[],total:0},albums:{items:[],total:0},playlists:{items:[],total:0},query:{},search_param:{},show_track_details_modal:!1,selected_track:{},show_album_details_modal:!1,selected_album:{},show_artist_details_modal:!1,selected_artist:{},show_playlist_details_modal:!1,selected_playlist:{}}},computed:{recent_searches:function(){return this.$store.state.recent_searches.filter((function(t){return!t.startsWith("query:")}))},show_tracks:function(){return this.$route.query.type&&this.$route.query.type.includes("track")},show_all_tracks_button:function(){return this.tracks.total>this.tracks.items.length},show_artists:function(){return this.$route.query.type&&this.$route.query.type.includes("artist")},show_all_artists_button:function(){return this.artists.total>this.artists.items.length},show_albums:function(){return this.$route.query.type&&this.$route.query.type.includes("album")},show_all_albums_button:function(){return this.albums.total>this.albums.items.length},show_playlists:function(){return this.$route.query.type&&this.$route.query.type.includes("playlist")},show_all_playlists_button:function(){return this.playlists.total>this.playlists.items.length}},methods:{reset:function(){this.tracks={items:[],total:0},this.artists={items:[],total:0},this.albums={items:[],total:0},this.playlists={items:[],total:0}},search:function(){if(this.reset(),!this.query.query||""===this.query.query||this.query.query.startsWith("query:"))return this.search_query="",void this.$refs.search_field.focus();this.search_param.limit=this.query.limit?this.query.limit:50,this.search_param.offset=this.query.offset?this.query.offset:0,this.$store.commit(j,this.query.query),this.query.type.includes(",")&&this.search_all()},spotify_search:function(){var t=this;return Q.spotify().then((function(s){var a=s.data;t.search_param.market=a.webapi_country;var e=new Es.a;return e.setAccessToken(a.webapi_token),e.search(t.query.query,t.query.type.split(","),t.search_param)}))},search_all:function(){var t=this;this.spotify_search().then((function(s){t.tracks=s.tracks?s.tracks:{items:[],total:0},t.artists=s.artists?s.artists:{items:[],total:0},t.albums=s.albums?s.albums:{items:[],total:0},t.playlists=s.playlists?s.playlists:{items:[],total:0}}))},search_tracks_next:function(t){var s=this;this.spotify_search().then((function(a){s.tracks.items=s.tracks.items.concat(a.tracks.items),s.tracks.total=a.tracks.total,s.search_param.offset+=a.tracks.limit,t.loaded(),s.search_param.offset>=s.tracks.total&&t.complete()}))},search_artists_next:function(t){var s=this;this.spotify_search().then((function(a){s.artists.items=s.artists.items.concat(a.artists.items),s.artists.total=a.artists.total,s.search_param.offset+=a.artists.limit,t.loaded(),s.search_param.offset>=s.artists.total&&t.complete()}))},search_albums_next:function(t){var s=this;this.spotify_search().then((function(a){s.albums.items=s.albums.items.concat(a.albums.items),s.albums.total=a.albums.total,s.search_param.offset+=a.albums.limit,t.loaded(),s.search_param.offset>=s.albums.total&&t.complete()}))},search_playlists_next:function(t){var s=this;this.spotify_search().then((function(a){s.playlists.items=s.playlists.items.concat(a.playlists.items),s.playlists.total=a.playlists.total,s.search_param.offset+=a.playlists.limit,t.loaded(),s.search_param.offset>=s.playlists.total&&t.complete()}))},new_search:function(){this.search_query&&(this.$router.push({path:"/search/spotify",query:{type:"track,artist,album,playlist",query:this.search_query,limit:3,offset:0}}),this.$refs.search_field.blur())},open_search_tracks:function(){this.$router.push({path:"/search/spotify",query:{type:"track",query:this.$route.query.query}})},open_search_artists:function(){this.$router.push({path:"/search/spotify",query:{type:"artist",query:this.$route.query.query}})},open_search_albums:function(){this.$router.push({path:"/search/spotify",query:{type:"album",query:this.$route.query.query}})},open_search_playlists:function(){this.$router.push({path:"/search/spotify",query:{type:"playlist",query:this.$route.query.query}})},open_recent_search:function(t){this.search_query=t,this.new_search()},open_track_dialog:function(t){this.selected_track=t,this.show_track_details_modal=!0},open_album_dialog:function(t){this.selected_album=t,this.show_album_details_modal=!0},open_artist_dialog:function(t){this.selected_artist=t,this.show_artist_details_modal=!0},open_playlist_dialog:function(t){this.selected_playlist=t,this.show_playlist_details_modal=!0}},mounted:function(){this.query=this.$route.query,this.search()},watch:{$route:function(t,s){this.query=t.query,this.search()}}},Dr=Ir,zr=Object(I["a"])(Dr,qr,jr,!1,null,null,null),Lr=zr.exports,Mr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-settings"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Now playing page")])]),a("template",{slot:"content"},[a("settings-checkbox",{attrs:{category_name:"webinterface",option_name:"show_composer_now_playing"}},[a("template",{slot:"label"},[t._v(" Show composer")]),a("template",{slot:"info"},[t._v('If enabled the composer of the current playing track is shown on the "now playing page"')])],2),a("settings-textfield",{attrs:{category_name:"webinterface",option_name:"show_composer_for_genre",disabled:!t.settings_option_show_composer_now_playing,placeholder:"Genres"}},[a("template",{slot:"label"},[t._v("Show composer only for listed genres")]),a("template",{slot:"info"},[a("p",{staticClass:"help"},[t._v(' Comma separated list of genres the composer should be displayed on the "now playing page". ')]),a("p",{staticClass:"help"},[t._v(" Leave empty to always show the composer. ")]),a("p",{staticClass:"help"},[t._v(" The genre tag of the current track is matched by checking, if one of the defined genres are included. For example setting to "),a("code",[t._v("classical, soundtrack")]),t._v(' will show the composer for tracks with a genre tag of "Contemporary Classical".'),a("br")])])],2)],1)],2)],1)},Nr=[],Rr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("section",{staticClass:"section fd-tabs-section"},[a("div",{staticClass:"container"},[a("div",{staticClass:"columns is-centered"},[a("div",{staticClass:"column is-four-fifths"},[a("div",{staticClass:"tabs is-centered is-small"},[a("ul",[a("router-link",{attrs:{tag:"li",to:"/settings/webinterface","active-class":"is-active"}},[a("a",[a("span",{},[t._v("Webinterface")])])]),a("router-link",{attrs:{tag:"li",to:"/settings/remotes-outputs","active-class":"is-active"}},[a("a",[a("span",{},[t._v("Remotes & Outputs")])])]),a("router-link",{attrs:{tag:"li",to:"/settings/artwork","active-class":"is-active"}},[a("a",[a("span",{},[t._v("Artwork")])])]),a("router-link",{attrs:{tag:"li",to:"/settings/online-services","active-class":"is-active"}},[a("a",[a("span",{},[t._v("Online Services")])])])],1)])])])])])},Ur=[],Br={name:"TabsSettings",computed:{}},Wr=Br,Hr=Object(I["a"])(Wr,Rr,Ur,!1,null,null,null),Gr=Hr.exports,Fr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",{staticClass:"field"},[a("label",{staticClass:"checkbox"},[a("input",{ref:"settings_checkbox",attrs:{type:"checkbox"},domProps:{checked:t.value},on:{change:t.set_update_timer}}),t._t("label"),a("i",{staticClass:"is-size-7",class:{"has-text-info":"success"===t.statusUpdate,"has-text-danger":"error"===t.statusUpdate}},[t._v(" "+t._s(t.info))])],2),t.$slots["info"]?a("p",{staticClass:"help"},[t._t("info")],2):t._e()])},Yr=[],Qr={name:"SettingsCheckbox",props:["category_name","option_name"],data:function(){return{timerDelay:2e3,timerId:-1,statusUpdate:""}},computed:{category:function(){var t=this;return this.$store.state.settings.categories.find((function(s){return s.name===t.category_name}))},option:function(){var t=this;return this.category?this.category.options.find((function(s){return s.name===t.option_name})):{}},value:function(){return this.option.value},info:function(){return"success"===this.statusUpdate?"(setting saved)":"error"===this.statusUpdate?"(error saving setting)":""}},methods:{set_update_timer:function(){this.timerId>0&&(window.clearTimeout(this.timerId),this.timerId=-1),this.statusUpdate="";var t=this.$refs.settings_checkbox.checked;t!==this.value&&(this.timerId=window.setTimeout(this.update_setting,this.timerDelay))},update_setting:function(){var t=this;this.timerId=-1;var s=this.$refs.settings_checkbox.checked;if(s!==this.value){var a={category:this.category.name,name:this.option_name,value:s};Q.settings_update(this.category.name,a).then((function(){t.$store.commit(p,a),t.statusUpdate="success"})).catch((function(){t.statusUpdate="error",t.$refs.settings_checkbox.checked=t.value})).finally((function(){t.timerId=window.setTimeout(t.clear_status,t.timerDelay)}))}else this.statusUpdate=""},clear_status:function(){this.statusUpdate=""}}},Vr=Qr,Jr=Object(I["a"])(Vr,Fr,Yr,!1,null,null,null),Kr=Jr.exports,Xr=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("fieldset",{attrs:{disabled:t.disabled}},[a("div",{staticClass:"field"},[a("label",{staticClass:"label has-text-weight-normal"},[t._t("label"),a("i",{staticClass:"is-size-7",class:{"has-text-info":"success"===t.statusUpdate,"has-text-danger":"error"===t.statusUpdate}},[t._v(" "+t._s(t.info))])],2),a("div",{staticClass:"control"},[a("input",{ref:"settings_text",staticClass:"input",attrs:{type:"text",placeholder:t.placeholder},domProps:{value:t.value},on:{input:t.set_update_timer}})]),t.$slots["info"]?a("p",{staticClass:"help"},[t._t("info")],2):t._e()])])},Zr=[],tc={name:"SettingsTextfield",props:["category_name","option_name","placeholder","disabled"],data:function(){return{timerDelay:2e3,timerId:-1,statusUpdate:""}},computed:{category:function(){var t=this;return this.$store.state.settings.categories.find((function(s){return s.name===t.category_name}))},option:function(){var t=this;return this.category?this.category.options.find((function(s){return s.name===t.option_name})):{}},value:function(){return this.option.value},info:function(){return"success"===this.statusUpdate?"(setting saved)":"error"===this.statusUpdate?"(error saving setting)":""}},methods:{set_update_timer:function(){this.timerId>0&&(window.clearTimeout(this.timerId),this.timerId=-1),this.statusUpdate="";var t=this.$refs.settings_text.value;t!==this.value&&(this.timerId=window.setTimeout(this.update_setting,this.timerDelay))},update_setting:function(){var t=this;this.timerId=-1;var s=this.$refs.settings_text.value;if(s!==this.value){var a={category:this.category.name,name:this.option_name,value:s};Q.settings_update(this.category.name,a).then((function(){t.$store.commit(p,a),t.statusUpdate="success"})).catch((function(){t.statusUpdate="error",t.$refs.settings_text.value=t.value})).finally((function(){t.timerId=window.setTimeout(t.clear_status,t.timerDelay)}))}else this.statusUpdate=""},clear_status:function(){this.statusUpdate=""}}},sc=tc,ac=Object(I["a"])(sc,Xr,Zr,!1,null,null,null),ec=ac.exports,ic={name:"SettingsPageWebinterface",components:{ContentWithHeading:ws["default"],TabsSettings:Gr,SettingsCheckbox:Kr,SettingsTextfield:ec},computed:{settings_option_show_composer_now_playing:function(){return this.$store.getters.settings_option_show_composer_now_playing}}},nc=ic,lc=Object(I["a"])(nc,Mr,Nr,!1,null,null,null),oc=lc.exports,rc=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-settings"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Artwork")])]),a("template",{slot:"content"},[a("div",{staticClass:"content"},[a("p",[t._v(" forked-daapd supports PNG and JPEG artwork which is either placed as separate image files in the library, embedded in the media files or made available online by radio stations. ")]),a("p",[t._v("In addition to that, you can enable fetching artwork from the following artwork providers:")])]),t.spotify.enabled?a("settings-checkbox",{attrs:{category_name:"artwork",option_name:"use_artwork_source_spotify"}},[a("template",{slot:"label"},[t._v(" Spotify")])],2):t._e(),a("settings-checkbox",{attrs:{category_name:"artwork",option_name:"use_artwork_source_discogs"}},[a("template",{slot:"label"},[t._v(" Discogs ("),a("a",{attrs:{href:"https://www.discogs.com/"}},[t._v("https://www.discogs.com/")]),t._v(")")])],2),a("settings-checkbox",{attrs:{category_name:"artwork",option_name:"use_artwork_source_coverartarchive"}},[a("template",{slot:"label"},[t._v(" Cover Art Archive ("),a("a",{attrs:{href:"https://coverartarchive.org/"}},[t._v("https://coverartarchive.org/")]),t._v(")")])],2)],1)],2)],1)},cc=[],dc={name:"SettingsPageArtwork",components:{ContentWithHeading:ws["default"],TabsSettings:Gr,SettingsCheckbox:Kr},computed:{spotify:function(){return this.$store.state.spotify}}},uc=dc,_c=Object(I["a"])(uc,rc,cc,!1,null,null,null),pc=_c.exports,mc=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-settings"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Spotify")])]),a("template",{slot:"content"},[t.spotify.libspotify_installed?t._e():a("div",{staticClass:"notification is-size-7"},[a("p",[t._v("forked-daapd was either built without support for Spotify or libspotify is not installed.")])]),t.spotify.libspotify_installed?a("div",[a("div",{staticClass:"notification is-size-7"},[a("b",[t._v("You must have a Spotify premium account")]),t._v(". If you normally log into Spotify with your Facebook account you must first go to Spotify's web site where you can get the Spotify username and password that matches your account. ")]),a("div",[a("p",{staticClass:"content"},[a("b",[t._v("libspotify")]),t._v(" - Login with your Spotify username and password ")]),t.spotify.libspotify_logged_in?a("p",{staticClass:"fd-has-margin-bottom"},[t._v(" Logged in as "),a("b",[a("code",[t._v(t._s(t.spotify.libspotify_user))])])]):t._e(),t.spotify.libspotify_installed&&!t.spotify.libspotify_logged_in?a("form",{on:{submit:function(s){return s.preventDefault(),t.login_libspotify(s)}}},[a("div",{staticClass:"field is-grouped"},[a("div",{staticClass:"control is-expanded"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.libspotify.user,expression:"libspotify.user"}],staticClass:"input",attrs:{type:"text",placeholder:"Username"},domProps:{value:t.libspotify.user},on:{input:function(s){s.target.composing||t.$set(t.libspotify,"user",s.target.value)}}}),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.libspotify.errors.user))])]),a("div",{staticClass:"control is-expanded"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.libspotify.password,expression:"libspotify.password"}],staticClass:"input",attrs:{type:"password",placeholder:"Password"},domProps:{value:t.libspotify.password},on:{input:function(s){s.target.composing||t.$set(t.libspotify,"password",s.target.value)}}}),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.libspotify.errors.password))])]),a("div",{staticClass:"control"},[a("button",{staticClass:"button is-info"},[t._v("Login")])])])]):t._e(),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.libspotify.errors.error))]),a("p",{staticClass:"help"},[t._v(" libspotify enables forked-daapd to play Spotify tracks. ")]),a("p",{staticClass:"help"},[t._v(" forked-daapd will not store your password, but will still be able to log you in automatically afterwards, because libspotify saves a login token. ")])]),a("div",{staticClass:"fd-has-margin-top"},[a("p",{staticClass:"content"},[a("b",[t._v("Spotify Web API")]),t._v(" - Grant access to the Spotify Web API ")]),t.spotify.webapi_token_valid?a("p",[t._v(" Access granted for "),a("b",[a("code",[t._v(t._s(t.spotify.webapi_user))])])]):t._e(),t.spotify_missing_scope.length>0?a("p",{staticClass:"help is-danger"},[t._v(" Please reauthorize Web API access to grant forked-daapd the following additional access rights: "),a("b",[a("code",[t._v(t._s(t._f("join")(t.spotify_missing_scope)))])])]):t._e(),a("div",{staticClass:"field fd-has-margin-top "},[a("div",{staticClass:"control"},[a("a",{staticClass:"button",class:{"is-info":!t.spotify.webapi_token_valid||t.spotify_missing_scope.length>0},attrs:{href:t.spotify.oauth_uri}},[t._v("Authorize Web API access")])])]),a("p",{staticClass:"help"},[t._v(" Access to the Spotify Web API enables scanning of your Spotify library. Required scopes are "),a("code",[t._v(t._s(t._f("join")(t.spotify_required_scope)))]),t._v(". ")])])]):t._e()])],2),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Last.fm")])]),a("template",{slot:"content"},[t.lastfm.enabled?t._e():a("div",{staticClass:"notification is-size-7"},[a("p",[t._v("forked-daapd was built without support for Last.fm.")])]),t.lastfm.enabled?a("div",[a("p",{staticClass:"content"},[a("b",[t._v("Last.fm")]),t._v(" - Login with your Last.fm username and password to enable scrobbling ")]),t.lastfm.scrobbling_enabled?a("div",[a("a",{staticClass:"button",on:{click:t.logoutLastfm}},[t._v("Stop scrobbling")])]):t._e(),t.lastfm.scrobbling_enabled?t._e():a("div",[a("form",{on:{submit:function(s){return s.preventDefault(),t.login_lastfm(s)}}},[a("div",{staticClass:"field is-grouped"},[a("div",{staticClass:"control is-expanded"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.lastfm_login.user,expression:"lastfm_login.user"}],staticClass:"input",attrs:{type:"text",placeholder:"Username"},domProps:{value:t.lastfm_login.user},on:{input:function(s){s.target.composing||t.$set(t.lastfm_login,"user",s.target.value)}}}),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.lastfm_login.errors.user))])]),a("div",{staticClass:"control is-expanded"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.lastfm_login.password,expression:"lastfm_login.password"}],staticClass:"input",attrs:{type:"password",placeholder:"Password"},domProps:{value:t.lastfm_login.password},on:{input:function(s){s.target.composing||t.$set(t.lastfm_login,"password",s.target.value)}}}),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.lastfm_login.errors.password))])]),a("div",{staticClass:"control"},[a("button",{staticClass:"button is-info",attrs:{type:"submit"}},[t._v("Login")])])]),a("p",{staticClass:"help is-danger"},[t._v(t._s(t.lastfm_login.errors.error))]),a("p",{staticClass:"help"},[t._v(" forked-daapd will not store your Last.fm username/password, only the session key. The session key does not expire. ")])])])]):t._e()])],2)],1)},hc=[],fc={name:"SettingsPageOnlineServices",components:{ContentWithHeading:ws["default"],TabsSettings:Gr},data:function(){return{libspotify:{user:"",password:"",errors:{user:"",password:"",error:""}},lastfm_login:{user:"",password:"",errors:{user:"",password:"",error:""}}}},computed:{lastfm:function(){return this.$store.state.lastfm},spotify:function(){return this.$store.state.spotify},spotify_required_scope:function(){return this.spotify.webapi_token_valid&&this.spotify.webapi_granted_scope&&this.spotify.webapi_required_scope?this.spotify.webapi_required_scope.split(" "):[]},spotify_missing_scope:function(){var t=this;return this.spotify.webapi_token_valid&&this.spotify.webapi_granted_scope&&this.spotify.webapi_required_scope?this.spotify.webapi_required_scope.split(" ").filter((function(s){return t.spotify.webapi_granted_scope.indexOf(s)<0})):[]}},methods:{login_libspotify:function(){var t=this;Q.spotify_login(this.libspotify).then((function(s){t.libspotify.user="",t.libspotify.password="",t.libspotify.errors.user="",t.libspotify.errors.password="",t.libspotify.errors.error="",s.data.success||(t.libspotify.errors.user=s.data.errors.user,t.libspotify.errors.password=s.data.errors.password,t.libspotify.errors.error=s.data.errors.error)}))},login_lastfm:function(){var t=this;Q.lastfm_login(this.lastfm_login).then((function(s){t.lastfm_login.user="",t.lastfm_login.password="",t.lastfm_login.errors.user="",t.lastfm_login.errors.password="",t.lastfm_login.errors.error="",s.data.success||(t.lastfm_login.errors.user=s.data.errors.user,t.lastfm_login.errors.password=s.data.errors.password,t.lastfm_login.errors.error=s.data.errors.error)}))},logoutLastfm:function(){Q.lastfm_logout()}},filters:{join:function(t){return t.join(", ")}}},yc=fc,vc=Object(I["a"])(yc,mc,hc,!1,null,null,null),gc=vc.exports,bc=function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("div",[a("tabs-settings"),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Remote Pairing")])]),a("template",{slot:"content"},[t.pairing.active?a("div",{staticClass:"notification"},[a("form",{on:{submit:function(s){return s.preventDefault(),t.kickoff_pairing(s)}}},[a("label",{staticClass:"label has-text-weight-normal"},[t._v(" Remote pairing request from "),a("b",[t._v(t._s(t.pairing.remote))])]),a("div",{staticClass:"field is-grouped"},[a("div",{staticClass:"control"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.pairing_req.pin,expression:"pairing_req.pin"}],staticClass:"input",attrs:{type:"text",placeholder:"Enter pairing code"},domProps:{value:t.pairing_req.pin},on:{input:function(s){s.target.composing||t.$set(t.pairing_req,"pin",s.target.value)}}})]),a("div",{staticClass:"control"},[a("button",{staticClass:"button is-info",attrs:{type:"submit"}},[t._v("Send")])])])])]):t._e(),t.pairing.active?t._e():a("div",{staticClass:"content"},[a("p",[t._v("No active pairing request.")])])])],2),a("content-with-heading",[a("template",{slot:"heading-left"},[a("div",{staticClass:"title is-4"},[t._v("Device Verification")])]),a("template",{slot:"content"},[a("p",{staticClass:"content"},[t._v(" If your Apple TV requires device verification then activate the device below and enter the PIN that the Apple TV displays. ")]),t._l(t.outputs,(function(s){return a("div",{key:s.id},[a("div",{staticClass:"field"},[a("div",{staticClass:"control"},[a("label",{staticClass:"checkbox"},[a("input",{directives:[{name:"model",rawName:"v-model",value:s.selected,expression:"output.selected"}],attrs:{type:"checkbox"},domProps:{checked:Array.isArray(s.selected)?t._i(s.selected,null)>-1:s.selected},on:{change:[function(a){var e=s.selected,i=a.target,n=!!i.checked;if(Array.isArray(e)){var l=null,o=t._i(e,l);i.checked?o<0&&t.$set(s,"selected",e.concat([l])):o>-1&&t.$set(s,"selected",e.slice(0,o).concat(e.slice(o+1)))}else t.$set(s,"selected",n)},function(a){return t.output_toggle(s.id)}]}}),t._v(" "+t._s(s.name)+" ")])])]),s.needs_auth_key?a("form",{staticClass:"fd-has-margin-bottom",on:{submit:function(s){return s.preventDefault(),t.kickoff_verification(s)}}},[a("div",{staticClass:"field is-grouped"},[a("div",{staticClass:"control"},[a("input",{directives:[{name:"model",rawName:"v-model",value:t.verification_req.pin,expression:"verification_req.pin"}],staticClass:"input",attrs:{type:"text",placeholder:"Enter verification code"},domProps:{value:t.verification_req.pin},on:{input:function(s){s.target.composing||t.$set(t.verification_req,"pin",s.target.value)}}})]),a("div",{staticClass:"control"},[a("button",{staticClass:"button is-info",attrs:{type:"submit"}},[t._v("Verify")])])])]):t._e()])}))],2)],2)],1)},kc=[],Cc={name:"SettingsPageRemotesOutputs",components:{ContentWithHeading:ws["default"],TabsSettings:Gr},data:function(){return{pairing_req:{pin:""},verification_req:{pin:""}}},computed:{pairing:function(){return this.$store.state.pairing},outputs:function(){return this.$store.state.outputs}},methods:{kickoff_pairing:function(){Q.pairing_kickoff(this.pairing_req)},output_toggle:function(t){Q.output_toggle(t)},kickoff_verification:function(){Q.verification_kickoff(this.verification_req)}},filters:{}},wc=Cc,xc=Object(I["a"])(wc,bc,kc,!1,null,null,null),$c=xc.exports;i["a"].use(bs["a"]);var qc=new bs["a"]({routes:[{path:"/",name:"PageQueue",component:sa},{path:"/about",name:"About",component:Fl},{path:"/now-playing",name:"Now playing",component:ga},{path:"/music",redirect:"/music/browse"},{path:"/music/browse",name:"Browse",component:ee,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/browse/recently_added",name:"Browse Recently Added",component:de,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/browse/recently_played",name:"Browse Recently Played",component:ye,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/artists",name:"Artists",component:We,meta:{show_progress:!0,has_tabs:!0,has_index:!0}},{path:"/music/artists/:artist_id",name:"Artist",component:Je,meta:{show_progress:!0}},{path:"/music/artists/:artist_id/tracks",name:"Tracks",component:Ji,meta:{show_progress:!0,has_index:!0}},{path:"/music/albums",name:"Albums",component:ei,meta:{show_progress:!0,has_tabs:!0,has_index:!0}},{path:"/music/albums/:album_id",name:"Album",component:di,meta:{show_progress:!0}},{path:"/music/genres",name:"Genres",component:Pi,meta:{show_progress:!0,has_tabs:!0,has_index:!0}},{path:"/music/genres/:genre",name:"Genre",component:zi,meta:{show_progress:!0,has_index:!0}},{path:"/music/genres/:genre/tracks",name:"GenreTracks",component:Wi,meta:{show_progress:!0,has_index:!0}},{path:"/podcasts",name:"Podcasts",component:fn,meta:{show_progress:!0}},{path:"/podcasts/:album_id",name:"Podcast",component:wn,meta:{show_progress:!0}},{path:"/audiobooks",name:"Audiobooks",component:An,meta:{show_progress:!0}},{path:"/audiobooks/:album_id",name:"Audiobook",component:Ln,meta:{show_progress:!0}},{path:"/files",name:"Files",component:Sl,meta:{show_progress:!0}},{path:"/playlists",redirect:"/playlists/0"},{path:"/playlists/:playlist_id",name:"Playlists",component:al,meta:{show_progress:!0}},{path:"/playlists/:playlist_id/tracks",name:"Playlist",component:cl,meta:{show_progress:!0}},{path:"/search",redirect:"/search/library"},{path:"/search/library",name:"Search Library",component:Rl},{path:"/music/spotify",name:"Spotify",component:xo,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/spotify/new-releases",name:"Spotify Browse New Releases",component:Oo,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/spotify/featured-playlists",name:"Spotify Browse Featured Playlists",component:Mo,meta:{show_progress:!0,has_tabs:!0}},{path:"/music/spotify/artists/:artist_id",name:"Spotify Artist",component:Zo,meta:{show_progress:!0}},{path:"/music/spotify/albums/:album_id",name:"Spotify Album",component:vr,meta:{show_progress:!0}},{path:"/music/spotify/playlists/:playlist_id",name:"Spotify Playlist",component:$r,meta:{show_progress:!0}},{path:"/search/spotify",name:"Spotify Search",component:Lr},{path:"/settings/webinterface",name:"Settings Webinterface",component:oc},{path:"/settings/artwork",name:"Settings Artwork",component:pc},{path:"/settings/online-services",name:"Settings Online Services",component:gc},{path:"/settings/remotes-outputs",name:"Settings Remotes Outputs",component:$c}],scrollBehavior:function(t,s,a){return a?new Promise((function(t,s){setTimeout((function(){t(a)}),10)})):t.path===s.path&&t.hash?{selector:t.hash,offset:{x:0,y:90}}:t.hash?new Promise((function(s,a){setTimeout((function(){s({selector:t.hash,offset:{x:0,y:90}})}),10)})):t.meta.has_index?new Promise((function(s,a){setTimeout((function(){t.meta.has_tabs?s({selector:"#top",offset:{x:0,y:140}}):s({selector:"#top",offset:{x:0,y:100}})}),10)})):{x:0,y:0}}});qc.beforeEach((function(t,s,a){return Y.state.show_burger_menu?(Y.commit(A,!1),void a(!1)):Y.state.show_player_menu?(Y.commit(O,!1),void a(!1)):void a(!0)}));var jc=a("c1df"),Sc=a.n(jc),Pc=a("4623"),Ac=a.n(Pc);Ac()(Sc.a),i["a"].filter("duration",(function(t,s){return s?Sc.a.duration(t).format(s):Sc.a.duration(t).format("hh:*mm:ss")})),i["a"].filter("time",(function(t,s){return s?Sc()(t).format(s):Sc()(t).format()})),i["a"].filter("timeFromNow",(function(t,s){return Sc()(t).fromNow(s)})),i["a"].filter("number",(function(t){return t.toLocaleString()}));var Oc=a("26b9"),Tc=a.n(Oc);i["a"].use(Tc.a,{color:"hsl(204, 86%, 53%)",failedColor:"red",height:"1px"});var Ec=a("c28b"),Ic=a.n(Ec);a("92c6"),a("de2f"),a("2760"),a("e1b4");i["a"].config.productionTip=!1,i["a"].use(Ic.a),new i["a"]({el:"#app",router:qc,store:Y,components:{App:gs},template:"<App/>"})},7412:function(t,s,a){"use strict";var e=a("4061"),i=a("91ed"),n=a("2877"),l=Object(n["a"])(i["default"],e["a"],e["b"],!1,null,null,null);s["default"]=l.exports},"91ed":function(t,s,a){"use strict";var e=a("39bf"),i=a.n(e);s["default"]=i.a},cf45:function(t,s,a){"use strict";var e=a("53c4"),i=a.n(e);i.a},e1b4:function(t,s,a){}});
|
|
//# sourceMappingURL=app-legacy.js.map
|