diff --git a/public/js/bundle.js b/public/js/bundle.js index 399b2c7..d4848cf 100644 --- a/public/js/bundle.js +++ b/public/js/bundle.js @@ -8,7 +8,7 @@ var t=Object.freeze({});function e(t){return null==t}function n(t){return null!= * vue-router v3.3.4 * (c) 2020 Evan You * @license MIT - */function no(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function ao(t,e){return no(t)&&t._isRouter&&(null==e||t.type===e)}function ro(t,e){for(var n in e)t[n]=e[n];return t}var so={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,a=e.children,r=e.parent,i=e.data;i.routerView=!0;for(var s=r.$createElement,o=n.name,l=r.$route,c=r._routerViewCache||(r._routerViewCache={}),u=0,d=!1;r&&r._routerRoot!==r;){var p=r.$vnode?r.$vnode.data:{};p.routerView&&u++,p.keepAlive&&r._directInactive&&r._inactive&&(d=!0),r=r.$parent}if(i.routerViewDepth=u,d){var f=c[o],h=f&&f.component;return h?(f.configProps&&oo(h,i,f.route,f.configProps),s(h,i,a)):s()}var v=l.matched[u],m=v&&v.components[o];if(!v||!m)return c[o]=null,s();c[o]={component:m},i.registerRouteInstance=function(t,e){var n=v.instances[o];(e&&n!==t||!e&&n===t)&&(v.instances[o]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){v.instances[o]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==v.instances[o]&&(v.instances[o]=t.componentInstance)};var g=v.props&&v.props[o];return g&&(ro(c[o],{route:l,configProps:g}),oo(m,i,l,g)),s(m,i,a)}};function oo(t,e,n,a){var r=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0}}(n,a);if(r){r=e.props=ro({},r);var i=e.attrs=e.attrs||{};for(var s in r)t.props&&s in t.props||(i[s]=r[s],delete r[s])}}var lo=/[!'()*]/g,co=function(t){return"%"+t.charCodeAt(0).toString(16)},uo=/%2C/g,po=function(t){return encodeURIComponent(t).replace(lo,co).replace(uo,",")},fo=decodeURIComponent;function ho(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),a=fo(n.shift()),r=n.length>0?fo(n.join("=")):null;void 0===e[a]?e[a]=r:Array.isArray(e[a])?e[a].push(r):e[a]=[e[a],r]})),e):e}function vo(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return po(e);if(Array.isArray(n)){var a=[];return n.forEach((function(t){void 0!==t&&(null===t?a.push(po(e)):a.push(po(e)+"="+po(t)))})),a.join("&")}return po(e)+"="+po(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var mo=/\/?$/;function go(t,e,n,a){var r=a&&a.options.stringifyQuery,i=e.query||{};try{i=_o(i)}catch(t){}var s={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:wo(e,r),matched:t?bo(t):[]};return n&&(s.redirectedFrom=wo(n,r)),Object.freeze(s)}function _o(t){if(Array.isArray(t))return t.map(_o);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=_o(t[n]);return e}return t}var yo=go(null,{path:"/"});function bo(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function wo(t,e){var n=t.path,a=t.query;void 0===a&&(a={});var r=t.hash;return void 0===r&&(r=""),(n||"/")+(e||vo)(a)+r}function Ao(t,e){return e===yo?t===e:!!e&&(t.path&&e.path?t.path.replace(mo,"")===e.path.replace(mo,"")&&t.hash===e.hash&&ko(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&ko(t.query,e.query)&&ko(t.params,e.params)))}function ko(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),a=Object.keys(e);return n.length===a.length&&n.every((function(n){var a=t[n],r=e[n];return"object"==typeof a&&"object"==typeof r?ko(a,r):String(a)===String(r)}))}function Co(t,e,n){var a=t.charAt(0);if("/"===a)return t;if("?"===a||"#"===a)return e+t;var r=e.split("/");n&&r[r.length-1]||r.pop();for(var i=t.replace(/^\//,"").split("/"),s=0;s=0&&(e=t.slice(a),t=t.slice(0,a));var r=t.indexOf("?");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{path:t,query:n,hash:e}}(r.path||""),c=e&&e.path||"/",u=l.path?Co(l.path,c,n||r.append):c,d=function(t,e,n){void 0===e&&(e={});var a,r=n||ho;try{a=r(t||"")}catch(t){a={}}for(var i in e)a[i]=e[i];return a}(l.query,r.query,a&&a.options.parseQuery),p=r.hash||l.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:u,query:d,hash:p}}var Wo,Qo=function(){},Go={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,a=this.$route,r=n.resolve(this.to,a,this.append),i=r.location,s=r.route,o=r.href,l={},c=n.options.linkActiveClass,u=n.options.linkExactActiveClass,d=null==c?"router-link-active":c,p=null==u?"router-link-exact-active":u,f=null==this.activeClass?d:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=s.redirectedFrom?go(null,Vo(s.redirectedFrom),null,n):s;l[h]=Ao(a,v),l[f]=this.exact?l[h]:function(t,e){return 0===t.path.replace(mo,"/").indexOf(e.path.replace(mo,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(a,v);var m=l[h]?this.ariaCurrentValue:null,g=function(t){Ko(t)&&(e.replace?n.replace(i,Qo):n.push(i,Qo))},_={click:Ko};Array.isArray(this.event)?this.event.forEach((function(t){_[t]=g})):_[this.event]=g;var y={class:l},b=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:o,route:s,navigate:g,isActive:l[f],isExactActive:l[h]});if(b){if(1===b.length)return b[0];if(b.length>1||!b.length)return 0===b.length?t():t("span",{},b)}if("a"===this.tag)y.on=_,y.attrs={href:o,"aria-current":m};else{var w=function t(e){var n;if(e)for(var a=0;a-1&&(o.params[p]=n.params[p]);return o.path=Ho(u.path,o.params),l(u,o,s)}if(o.path){o.params={};for(var f=0;f=t.length?n():t[r]?e(t[r],(function(){a(r+1)})):a(r+1)};a(0)}function wl(t){return function(e,n,a){var r=!1,i=0,s=null;Al(t,(function(t,e,n,o){if("function"==typeof t&&void 0===t.cid){r=!0,i++;var l,c=xl((function(e){var r;((r=e).__esModule||Cl&&"Module"===r[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:Wo.extend(e),n.components[o]=e,--i<=0&&a()})),u=xl((function(t){var e="Failed to resolve async component "+o+": "+t;s||(s=no(t)?t:new Error(e),a(s))}));try{l=t(c,u)}catch(t){u(t)}if(l)if("function"==typeof l.then)l.then(c,u);else{var d=l.component;d&&"function"==typeof d.then&&d.then(c,u)}}})),r||a()}}function Al(t,e){return kl(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function kl(t){return Array.prototype.concat.apply([],t)}var Cl="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function xl(t){var e=!1;return function(){for(var n=[],a=arguments.length;a--;)n[a]=arguments[a];if(!e)return e=!0,t.apply(this,n)}}var Tl=1,$l=2,Sl=3,Ll=4;function El(t,e){return Dl(t,e,Tl,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return Pl.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}function Nl(t,e){return Dl(t,e,Sl,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Dl(t,e,n,a){var r=new Error(a);return r._isRouter=!0,r.from=t,r.to=e,r.type=n,r}var Pl=["params","query","hash"];var Il=function(t,e){this.router=t,this.base=function(t){if(!t)if(Yo){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=yo,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Ol(t,e,n,a){var r=Al(t,(function(t,a,r,i){var s=function(t,e){"function"!=typeof t&&(t=Wo.extend(t));return t.options[e]}(t,e);if(s)return Array.isArray(s)?s.map((function(t){return n(t,a,r,i)})):n(s,a,r,i)}));return kl(a?r.reverse():r)}function Rl(t,e){if(e)return function(){return t.apply(e,arguments)}}Il.prototype.listen=function(t){this.cb=t},Il.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Il.prototype.onError=function(t){this.errorCbs.push(t)},Il.prototype.transitionTo=function(t,e,n){var a=this,r=this.router.match(t,this.current);this.confirmTransition(r,(function(){var t=a.current;a.updateRoute(r),e&&e(r),a.ensureURL(),a.router.afterHooks.forEach((function(e){e&&e(r,t)})),a.ready||(a.ready=!0,a.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!a.ready&&(a.ready=!0,ao(t,Tl)?a.readyCbs.forEach((function(t){t(r)})):a.readyErrorCbs.forEach((function(e){e(t)})))}))},Il.prototype.confirmTransition=function(t,e,n){var a,r=this,i=this.current,s=function(t){!ao(t)&&no(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},o=t.matched.length-1,l=i.matched.length-1;if(Ao(t,i)&&o===l&&t.matched[o]===i.matched[l])return this.ensureURL(),s(Dl(a=i,t,Ll,'Avoided redundant navigation to current location: "'+a.fullPath+'".'));var c=function(t,e){var n,a=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,a=gl&&n;a&&this.listeners.push(ol());var r=function(){var n=t.current,r=Ml(t.base);t.current===yo&&r===t._startLocation||t.transitionTo(r,(function(t){a&&ll(e,t,n,!0)}))};window.addEventListener("popstate",r),this.listeners.push((function(){window.removeEventListener("popstate",r)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var a=this,r=this.current;this.transitionTo(t,(function(t){_l(xo(a.base+t.fullPath)),ll(a.router,t,r,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var a=this,r=this.current;this.transitionTo(t,(function(t){yl(xo(a.base+t.fullPath)),ll(a.router,t,r,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Ml(this.base)!==this.current.fullPath){var e=xo(this.base+this.current.fullPath);t?_l(e):yl(e)}},e.prototype.getCurrentLocation=function(){return Ml(this.base)},e}(Il);function Ml(t){var e=decodeURI(window.location.pathname);return t&&0===e.toLowerCase().indexOf(t.toLowerCase())&&(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var jl=function(t){function e(e,n,a){t.call(this,e,n),a&&function(t){var e=Ml(t);if(!/^\/#/.test(e))return window.location.replace(xo(t+"/#"+e)),!0}(this.base)||Bl()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=gl&&e;n&&this.listeners.push(ol());var a=function(){var e=t.current;Bl()&&t.transitionTo(ql(),(function(a){n&&ll(t.router,a,e,!0),gl||Hl(a.fullPath)}))},r=gl?"popstate":"hashchange";window.addEventListener(r,a),this.listeners.push((function(){window.removeEventListener(r,a)}))}},e.prototype.push=function(t,e,n){var a=this,r=this.current;this.transitionTo(t,(function(t){Ul(t.fullPath),ll(a.router,t,r,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var a=this,r=this.current;this.transitionTo(t,(function(t){Hl(t.fullPath),ll(a.router,t,r,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;ql()!==e&&(t?Ul(e):Hl(e))},e.prototype.getCurrentLocation=function(){return ql()},e}(Il);function Bl(){var t=ql();return"/"===t.charAt(0)||(Hl("/"+t),!1)}function ql(){var t=window.location.href,e=t.indexOf("#");if(e<0)return"";var n=(t=t.slice(e+1)).indexOf("?");if(n<0){var a=t.indexOf("#");t=a>-1?decodeURI(t.slice(0,a))+t.slice(a):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function zl(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Ul(t){gl?_l(zl(t)):window.location.hash=t}function Hl(t){gl?yl(zl(t)):window.location.replace(zl(t))}var Vl=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var a=this;this.transitionTo(t,(function(t){a.stack=a.stack.slice(0,a.index+1).concat(t),a.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var a=this;this.transitionTo(t,(function(t){a.stack=a.stack.slice(0,a.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var a=this.stack[n];this.confirmTransition(a,(function(){e.index=n,e.updateRoute(a)}),(function(t){ao(t,Ll)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Il),Wl=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Zo(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!gl&&!1!==t.fallback,this.fallback&&(e="hash"),Yo||(e="abstract"),this.mode=e,e){case"history":this.history=new Fl(this,t.base);break;case"hash":this.history=new jl(this,t.base,this.fallback);break;case"abstract":this.history=new Vl(this,t.base)}},Ql={currentRoute:{configurable:!0}};function Gl(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Wl.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Ql.currentRoute.get=function(){return this.history&&this.history.current},Wl.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardownListeners()})),!this.app){this.app=t;var n=this.history;if(n instanceof Fl||n instanceof jl){var a=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),a,a)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Wl.prototype.beforeEach=function(t){return Gl(this.beforeHooks,t)},Wl.prototype.beforeResolve=function(t){return Gl(this.resolveHooks,t)},Wl.prototype.afterEach=function(t){return Gl(this.afterHooks,t)},Wl.prototype.onReady=function(t,e){this.history.onReady(t,e)},Wl.prototype.onError=function(t){this.history.onError(t)},Wl.prototype.push=function(t,e,n){var a=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){a.history.push(t,e,n)}));this.history.push(t,e,n)},Wl.prototype.replace=function(t,e,n){var a=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){a.history.replace(t,e,n)}));this.history.replace(t,e,n)},Wl.prototype.go=function(t){this.history.go(t)},Wl.prototype.back=function(){this.go(-1)},Wl.prototype.forward=function(){this.go(1)},Wl.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Wl.prototype.resolve=function(t,e,n){var a=Vo(t,e=e||this.history.current,n,this),r=this.match(a,e),i=r.redirectedFrom||r.fullPath;return{location:a,route:r,href:function(t,e,n){var a="hash"===n?"#"+e:e;return t?xo(t+"/"+a):a}(this.history.base,i,this.mode),normalizedTo:a,resolved:r}},Wl.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==yo&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Wl.prototype,Ql),Wl.install=function t(e){if(!t.installed||Wo!==e){t.installed=!0,Wo=e;var n=function(t){return void 0!==t},a=function(t,e){var a=t.$options._parentVnode;n(a)&&n(a=a.data)&&n(a=a.registerRouteInstance)&&a(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,a(this,this)},destroyed:function(){a(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",so),e.component("RouterLink",Go);var r=e.config.optionMergeStrategies;r.beforeRouteEnter=r.beforeRouteLeave=r.beforeRouteUpdate=r.created}},Wl.version="3.3.4",Yo&&window.Vue&&window.Vue.use(Wl);var Kl={sendAddToQueue:function(t,e=null){""!=t&&to.emit("addToQueue",{url:t,bitrate:e},()=>{})}};const Yl={name:"the-home-tab",data:()=>({playlists:[],albums:[]}),methods:{artistView:Ed.bind(null,"artist"),albumView:Ed.bind(null,"album"),playlistView:Ed.bind(null,"playlist"),openSettings(){document.getElementById("main_settings_tablink").click()},addToQueue(t){Kl.sendAddToQueue(t.currentTarget.dataset.link)},openQualityModal(t){this.$root.$emit("QualityModal:open",t.currentTarget.dataset.link)},initHome(t){const{playlists:{data:e},albums:{data:n}}=t;this.playlists=e,this.albums=n}},mounted(){console.log("home mounted"),this.$refs.root.style.display="block",localStorage.getItem("arl")&&this.$refs.notLogged.classList.add("hide"),to.on("init_home",this.initHome)},beforeDestroy(){console.log("home bef dest"),this.$refs.root.style.display="none"}};var Jl=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"root",staticClass:"main_tabcontent",attrs:{id:"home_tab"}},[n("h2",{staticClass:"page_heading"},[t._v(t._s(t.$t("globals.welcome")))]),t._v(" "),n("section",{ref:"notLogged",staticClass:"home_section",attrs:{id:"home_not_logged_in"}},[n("p",{attrs:{id:"home_not_logged_text"}},[t._v(t._s(t.$t("home.needTologin")))]),t._v(" "),n("button",{attrs:{type:"button",name:"button"},on:{click:t.openSettings}},[t._v(t._s(t.$t("home.openSettings")))])]),t._v(" "),t.playlists.length?n("section",{staticClass:"home_section"},[n("h3",{staticClass:"section_heading"},[t._v(t._s(t.$t("home.sections.popularPlaylists")))]),t._v(" "),n("div",{staticClass:"release_grid"},t._l(t.playlists,(function(e){return n("div",{key:e.id,staticClass:"release clickable",attrs:{"data-id":e.id},on:{click:t.playlistView}},[n("div",{staticClass:"cover_container"},[n("img",{staticClass:"rounded coverart",attrs:{"aria-hidden":"true",src:e.picture_medium}}),t._v(" "),n("div",{staticClass:"download_overlay",attrs:{role:"button","aria-label":"download","data-link":e.link},on:{contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)},click:function(e){return e.stopPropagation(),t.addToQueue(e)}}},[n("i",{staticClass:"material-icons",attrs:{title:t.$t("globals.download_hint")}},[t._v("get_app")])])]),t._v(" "),n("p",{staticClass:"primary-text"},[t._v(t._s(e.title))]),t._v(" "),n("p",{staticClass:"secondary-text"},[t._v("\n\t\t\t\t\t"+t._s(t.$t("globals.by",[e.user.name])+" - "+t.$tc("globals.listTabs.trackN",e.nb_tracks))+"\n\t\t\t\t")])])})),0)]):t._e(),t._v(" "),t.albums.length?n("section",{staticClass:"home_section"},[n("h3",{staticClass:"section_heading"},[t._v(t._s(t.$t("home.sections.popularAlbums")))]),t._v(" "),n("div",{staticClass:"release_grid"},t._l(t.albums,(function(e){return n("div",{key:e.id,staticClass:"release clickable",attrs:{"data-id":e.id},on:{click:t.albumView}},[n("div",{staticClass:"cover_container"},[n("img",{staticClass:"rounded coverart",attrs:{"aria-hidden":"true",src:e.cover_medium}}),t._v(" "),n("div",{staticClass:"download_overlay",attrs:{role:"button","aria-label":"download","data-link":e.link},on:{contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)},click:function(e){return e.stopPropagation(),t.addToQueue(e)}}},[n("i",{staticClass:"material-icons",attrs:{title:t.$t("globals.download_hint")}},[t._v("get_app")])])]),t._v(" "),n("p",{staticClass:"primary-text"},[t._v(t._s(e.title))]),t._v(" "),n("p",{staticClass:"secondary-text"},[t._v(t._s(""+t.$t("globals.by",[e.artist.name])))])])})),0)]):t._e()])};Jl._withStripped=!0;var Xl=function(t,e,n,a,r,i,s,o){const l=("function"==typeof n?n.options:n)||{};l.__file="C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui\\src\\components\\TheHomeTab.vue",l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),l._scopeId=a;{let t;if(e&&(t=function(t){e.call(this,s(t))}),void 0!==t)if(l.functional){const e=l.render;l.render=function(n,a){return t.call(a),e(n,a)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,t):[t]}}return l}({render:Jl,staticRenderFns:[]},(function(t){t&&t("data-v-1a777f90_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"TheHomeTab.vue"},media:void 0})}),Yl,void 0,!1,0,(function t(){const e=document.head||document.getElementsByTagName("head")[0],n=t.styles||(t.styles={}),a="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(t,r){if(document.querySelector('style[data-vue-ssr-id~="'+t+'"]'))return;const i=a?r.media||"default":t,s=n[i]||(n[i]={ids:[],parts:[],element:void 0});if(!s.ids.includes(t)){let n=r.source,o=s.ids.length;if(s.ids.push(t),a&&(s.element=s.element||document.querySelector("style[data-group="+i+"]")),!s.element){const t=s.element=document.createElement("style");t.type="text/css",r.media&&t.setAttribute("media",r.media),a&&(t.setAttribute("data-group",i),t.setAttribute("data-next-index","0")),e.appendChild(t)}if(a&&(o=parseInt(s.element.getAttribute("data-next-index")),s.element.setAttribute("data-next-index",o+1)),s.element.styleSheet)s.parts.push(n),s.element.styleSheet.cssText=s.parts.filter(Boolean).join("\n");else{const t=document.createTextNode(n),e=s.element.childNodes;e[o]&&s.element.removeChild(e[o]),e.length?s.element.insertBefore(t,e[o]):s.element.appendChild(t)}}}})),Zl="object"==typeof global&&global&&global.Object===Object&&global,tc="object"==typeof self&&self&&self.Object===Object&&self,ec=Zl||tc||Function("return this")(),nc=ec.Symbol,ac=Object.prototype,rc=ac.hasOwnProperty,ic=ac.toString,sc=nc?nc.toStringTag:void 0;var oc=Object.prototype.toString;var lc=nc?nc.toStringTag:void 0;function cc(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":lc&&lc in Object(t)?function(t){var e=rc.call(t,sc),n=t[sc];try{t[sc]=void 0;var a=!0}catch(t){}var r=ic.call(t);return a&&(e?t[sc]=n:delete t[sc]),r}(t):function(t){return oc.call(t)}(t)}function uc(t){return null!=t&&"object"==typeof t}function dc(t){return"symbol"==typeof t||uc(t)&&"[object Symbol]"==cc(t)}function pc(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n-1&&t%1==0&&t-1&&t%1==0&&t<=9007199254740991}function Fc(t){return null!=t&&Rc(t.length)&&!yc(t)}var Mc=Object.prototype;function jc(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Mc)}function Bc(t){return uc(t)&&"[object Arguments]"==cc(t)}var qc=Object.prototype,zc=qc.hasOwnProperty,Uc=qc.propertyIsEnumerable,Hc=Bc(function(){return arguments}())?Bc:function(t){return uc(t)&&zc.call(t,"callee")&&!Uc.call(t,"callee")};var Vc="object"==typeof exports&&exports&&!exports.nodeType&&exports,Wc=Vc&&"object"==typeof module&&module&&!module.nodeType&&module,Qc=Wc&&Wc.exports===Vc?ec.Buffer:void 0,Gc=(Qc?Qc.isBuffer:void 0)||function(){return!1},Kc={};function Yc(t){return function(e){return t(e)}}Kc["[object Float32Array]"]=Kc["[object Float64Array]"]=Kc["[object Int8Array]"]=Kc["[object Int16Array]"]=Kc["[object Int32Array]"]=Kc["[object Uint8Array]"]=Kc["[object Uint8ClampedArray]"]=Kc["[object Uint16Array]"]=Kc["[object Uint32Array]"]=!0,Kc["[object Arguments]"]=Kc["[object Array]"]=Kc["[object ArrayBuffer]"]=Kc["[object Boolean]"]=Kc["[object DataView]"]=Kc["[object Date]"]=Kc["[object Error]"]=Kc["[object Function]"]=Kc["[object Map]"]=Kc["[object Number]"]=Kc["[object Object]"]=Kc["[object RegExp]"]=Kc["[object Set]"]=Kc["[object String]"]=Kc["[object WeakMap]"]=!1;var Jc="object"==typeof exports&&exports&&!exports.nodeType&&exports,Xc=Jc&&"object"==typeof module&&module&&!module.nodeType&&module,Zc=Xc&&Xc.exports===Jc&&Zl.process,tu=function(){try{var t=Xc&&Xc.require&&Xc.require("util").types;return t||Zc&&Zc.binding&&Zc.binding("util")}catch(t){}}(),eu=tu&&tu.isTypedArray,nu=eu?Yc(eu):function(t){return uc(t)&&Rc(t.length)&&!!Kc[cc(t)]},au=Object.prototype.hasOwnProperty;function ru(t,e){var n=fc(t),a=!n&&Hc(t),r=!n&&!a&&Gc(t),i=!n&&!a&&!r&&nu(t),s=n||a||r||i,o=s?function(t,e){for(var n=-1,a=Array(t);++n-1},bu.prototype.set=function(t,e){var n=this.__data__,a=_u(n,t);return a<0?(++this.size,n.push([t,e])):n[a][1]=e,this};var wu=Nc(ec,"Map");function Au(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function ku(t){var e=-1,n=null==t?0:t.length;for(this.clear();++eo))return!1;var c=i.get(t);if(c&&i.get(e))return c==e;var u=-1,d=!0,p=2&n?new Qu:void 0;for(i.set(t,e),i.set(e,t);++ue||i&&s&&l&&!o&&!c||a&&s&&l||!n&&l||!r)return 1;if(!a&&!i&&!c&&t=o?l:l*("desc"==n[a]?-1:1)}return t.index-e.index}(t,e,n)}))}function yd(t){let e=t.toLowerCase();if(e.startsWith("http")){if(e.indexOf("deezer.com")>=0||e.indexOf("open.spotify.com")>=0)return!0}else if(e.startsWith("spotify:"))return!0;return!1}function bd(t,e,n){var a;return function(){var r=this,i=arguments,s=function(){a=null,n||t.apply(r,i)},o=n&&!a;clearTimeout(a),a=setTimeout(s,e),o&&t.apply(r,i)}}var wd={isValidURL:yd,convertDuration:function(t){let e,n;return e=Math.floor(t/60),n=t-60*e,n<10&&(n="0"+n),e+":"+n},convertDurationSeparated:function(t){let e,n,a;return n=Math.floor(t/60),e=Math.floor(n/60),a=t-60*n,n-=60*e,[e,n,a]},numberWithDots:function(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,".")},debounce:bd,COUNTRIES:{AF:"Afghanistan",AX:"Åland Islands",AL:"Albania",DZ:"Algeria",AS:"American Samoa",AD:"Andorra",AO:"Angola",AI:"Anguilla",AQ:"Antarctica",AG:"Antigua and Barbuda",AR:"Argentina",AM:"Armenia",AW:"Aruba",AU:"Australia",AT:"Austria",AZ:"Azerbaijan",BS:"Bahamas",BH:"Bahrain",BD:"Bangladesh",BB:"Barbados",BY:"Belarus",BE:"Belgium",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivia, Plurinational State of",BQ:"Bonaire, Sint Eustatius and Saba",BA:"Bosnia and Herzegovina",BW:"Botswana",BV:"Bouvet Island",BR:"Brazil",IO:"British Indian Ocean Territory",BN:"Brunei Darussalam",BG:"Bulgaria",BF:"Burkina Faso",BI:"Burundi",KH:"Cambodia",CM:"Cameroon",CA:"Canada",CV:"Cape Verde",KY:"Cayman Islands",CF:"Central African Republic",TD:"Chad",CL:"Chile",CN:"China",CX:"Christmas Island",CC:"Cocos (Keeling) Islands",CO:"Colombia",KM:"Comoros",CG:"Congo",CD:"Congo, the Democratic Republic of the",CK:"Cook Islands",CR:"Costa Rica",CI:"Côte d'Ivoire",HR:"Croatia",CU:"Cuba",CW:"Curaçao",CY:"Cyprus",CZ:"Czech Republic",DK:"Denmark",DJ:"Djibouti",DM:"Dominica",DO:"Dominican Republic",EC:"Ecuador",EG:"Egypt",SV:"El Salvador",GQ:"Equatorial Guinea",ER:"Eritrea",EE:"Estonia",ET:"Ethiopia",FK:"Falkland Islands (Malvinas)",FO:"Faroe Islands",FJ:"Fiji",FI:"Finland",FR:"France",GF:"French Guiana",PF:"French Polynesia",TF:"French Southern Territories",GA:"Gabon",GM:"Gambia",GE:"Georgia",DE:"Germany",GH:"Ghana",GI:"Gibraltar",GR:"Greece",GL:"Greenland",GD:"Grenada",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GG:"Guernsey",GN:"Guinea",GW:"Guinea-Bissau",GY:"Guyana",HT:"Haiti",HM:"Heard Island and McDonald Islands",VA:"Holy See (Vatican City State)",HN:"Honduras",HK:"Hong Kong",HU:"Hungary",IS:"Iceland",IN:"India",ID:"Indonesia",IR:"Iran, Islamic Republic of",IQ:"Iraq",IE:"Ireland",IM:"Isle of Man",IL:"Israel",IT:"Italy",JM:"Jamaica",JP:"Japan",JE:"Jersey",JO:"Jordan",KZ:"Kazakhstan",KE:"Kenya",KI:"Kiribati",KP:"Korea, Democratic People's Republic of",KR:"Korea, Republic of",KW:"Kuwait",KG:"Kyrgyzstan",LA:"Lao People's Democratic Republic",LV:"Latvia",LB:"Lebanon",LS:"Lesotho",LR:"Liberia",LY:"Libya",LI:"Liechtenstein",LT:"Lithuania",LU:"Luxembourg",MO:"Macao",MK:"Macedonia, the Former Yugoslav Republic of",MG:"Madagascar",MW:"Malawi",MY:"Malaysia",MV:"Maldives",ML:"Mali",MT:"Malta",MH:"Marshall Islands",MQ:"Martinique",MR:"Mauritania",MU:"Mauritius",YT:"Mayotte",MX:"Mexico",FM:"Micronesia, Federated States of",MD:"Moldova, Republic of",MC:"Monaco",MN:"Mongolia",ME:"Montenegro",MS:"Montserrat",MA:"Morocco",MZ:"Mozambique",MM:"Myanmar",NA:"Namibia",NR:"Nauru",NP:"Nepal",NL:"Netherlands",NC:"New Caledonia",NZ:"New Zealand",NI:"Nicaragua",NE:"Niger",NG:"Nigeria",NU:"Niue",NF:"Norfolk Island",MP:"Northern Mariana Islands",NO:"Norway",OM:"Oman",PK:"Pakistan",PW:"Palau",PS:"Palestine, State of",PA:"Panama",PG:"Papua New Guinea",PY:"Paraguay",PE:"Peru",PH:"Philippines",PN:"Pitcairn",PL:"Poland",PT:"Portugal",PR:"Puerto Rico",QA:"Qatar",RE:"Réunion",RO:"Romania",RU:"Russian Federation",RW:"Rwanda",BL:"Saint Barthélemy",SH:"Saint Helena, Ascension and Tristan da Cunha",KN:"Saint Kitts and Nevis",LC:"Saint Lucia",MF:"Saint Martin (French part)",PM:"Saint Pierre and Miquelon",VC:"Saint Vincent and the Grenadines",WS:"Samoa",SM:"San Marino",ST:"Sao Tome and Principe",SA:"Saudi Arabia",SN:"Senegal",RS:"Serbia",SC:"Seychelles",SL:"Sierra Leone",SG:"Singapore",SX:"Sint Maarten (Dutch part)",SK:"Slovakia",SI:"Slovenia",SB:"Solomon Islands",SO:"Somalia",ZA:"South Africa",GS:"South Georgia and the South Sandwich Islands",SS:"South Sudan",ES:"Spain",LK:"Sri Lanka",SD:"Sudan",SR:"Suriname",SJ:"Svalbard and Jan Mayen",SZ:"Swaziland",SE:"Sweden",CH:"Switzerland",SY:"Syrian Arab Republic",TW:"Taiwan, Province of China",TJ:"Tajikistan",TZ:"Tanzania, United Republic of",TH:"Thailand",TL:"Timor-Leste",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinidad and Tobago",TN:"Tunisia",TR:"Turkey",TM:"Turkmenistan",TC:"Turks and Caicos Islands",TV:"Tuvalu",UG:"Uganda",UA:"Ukraine",AE:"United Arab Emirates",GB:"United Kingdom",US:"United States",UM:"United States Minor Outlying Islands",UY:"Uruguay",UZ:"Uzbekistan",VU:"Vanuatu",VE:"Venezuela, Bolivarian Republic of",VN:"Viet Nam",VG:"Virgin Islands, British",VI:"Virgin Islands, U.S.",WF:"Wallis and Futuna",EH:"Western Sahara",YE:"Yemen",ZM:"Zambia",ZW:"Zimbabwe"}};const Ad={name:"tracklist-tab",data:()=>({title:"",metadata:"",release_date:"",label:"",explicit:!1,image:"",type:"empty",link:"",body:[]}),methods:{backTab:Nd,artistView:Ed.bind(null,"artist"),albumView:Ed.bind(null,"album"),playPausePreview(t){eo.$emit("trackPreview:playPausePreview",t)},reset(){console.log("resetto"),this.title="Loading...",this.image="",this.metadata="",this.label="",this.release_date="",this.explicit=!1,this.type="empty",this.body=[]},addToQueue(t){Kl.sendAddToQueue(t.currentTarget.dataset.link)},openQualityModal(t){this.$root.$emit("QualityModal:open",t.currentTarget.dataset.link)},toggleAll(t){this.body.forEach(e=>{"track"==e.type&&(e.selected=t.currentTarget.checked)})},selectedLinks(){var t=[];return this.body&&this.body.forEach(e=>{"track"==e.type&&e.selected&&t.push("spotifyPlaylist"==this.type?e.uri:e.link)}),t.join(";")},convertDuration:wd.convertDuration,showAlbum(t){this.reset();const{id:e,title:n,explicit_lyrics:a,label:r,artist:{name:i},tracks:s,tracks:{length:o},release_date:l,cover_xl:c}=t;this.type="album",this.link="https://www.deezer.com/album/"+e,this.title=n,this.explicit=a,this.label=r,this.metadata=`${i} • ${this.$tc("globals.listTabs.trackN",o)}`,this.release_date=l.substring(0,10),this.image=c,md(s)?this.body=null:this.body=s},showPlaylist(t){this.reset();const{id:e,title:n,picture_xl:a,creation_date:r,creator:{name:i},tracks:s,tracks:{length:o}}=t;this.type="playlist",this.link="https://www.deezer.com/playlist/"+e,this.title=n,this.image=a,this.release_date=r.substring(0,10),this.metadata=`${this.$t("globals.by",[i])} • ${this.$tc("globals.listTabs.trackN",o)}`,md(s)?this.body=null:this.body=s},showSpotifyPlaylist(t){this.reset();const{uri:e,name:n,images:a,images:{length:r},owner:{display_name:i},tracks:s,tracks:{length:o}}=t;this.type="spotifyPlaylist",this.link=e,this.title=n,this.image=r?a[0].url:"https://e-cdns-images.dzcdn.net/images/cover/d41d8cd98f00b204e9800998ecf8427e/1000x1000-000000-80-0-0.jpg",this.release_date="",this.metadata=`${this.$t("globals.by",[i])} • ${this.$tc("globals.listTabs.trackN",o)}`,md(s)?this.body=null:this.body=s},selectRow(t,e){e.selected=!e.selected}},mounted(){console.log("tracklist mounted"),this.$refs.root.style.display="block",eo.$on("tracklistTab:selectRow",this.selectRow),to.on("show_album",this.showAlbum),to.on("show_playlist",this.showPlaylist),to.on("show_spotifyplaylist",this.showSpotifyPlaylist)},beforeDestroy(){console.log("tracklist bef dest"),this.$refs.root.style.display="none"}};var kd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"root",staticClass:"main_tabcontent fixed_footer image_header",attrs:{id:"tracklist_tab"}},[n("header",{style:{"background-image":"linear-gradient(to bottom, transparent 0%, var(--main-background) 100%), url('"+t.image+"')"}},[n("h1",{staticClass:"inline-flex"},[t._v("\n\t\t\t"+t._s(t.title)+" "),t.explicit?n("i",{staticClass:"material-icons explicit_icon explicit_icon--right"},[t._v("explicit")]):t._e()]),t._v(" "),n("h2",{staticClass:"inline-flex"},[t.metadata?n("span",[t._v(t._s(t.metadata))]):t._e(),t._v(" "),t.release_date?n("span",{staticClass:"right"},[t._v(t._s(t.release_date))]):t._e()])]),t._v(" "),n("table",{staticClass:"table table--tracklist"},[n("thead",[n("tr",[t._m(0),t._v(" "),n("th",[t._v("#")]),t._v(" "),n("th",[t._v(t._s(t.$tc("globals.listTabs.title",1)))]),t._v(" "),n("th",[t._v(t._s(t.$tc("globals.listTabs.artist",1)))]),t._v(" "),"playlist"===t.type?n("th",[t._v(t._s(t.$tc("globals.listTabs.album",1)))]):t._e(),t._v(" "),t._m(1),t._v(" "),n("th",{staticClass:"table__icon table__cell--center clickable"},[n("input",{staticClass:"selectAll",attrs:{type:"checkbox"},on:{click:t.toggleAll}})])])]),t._v(" "),n("tbody",["spotifyPlaylist"!==t.type?[t._l(t.body,(function(e,a){return["track"==e.type?n("tr",{on:{click:function(n){return t.selectRow(a,e)}}},[n("td",{staticClass:"table__cell--x-small table__cell--center"},[n("div",{staticClass:"table__cell-content table__cell-content--vertical-center"},[n("i",t._g({staticClass:"material-icons",class:{preview_playlist_controls:e.preview,disabled:!e.preview},attrs:{"data-preview":e.preview,title:t.$t("globals.play_hint")}},{click:!!e.preview&&t.playPausePreview}),[t._v("\n\t\t\t\t\t\t\t\t\tplay_arrow\n\t\t\t\t\t\t\t\t")])])]),t._v(" "),n("td",{staticClass:"table__cell--small table__cell--center track_position"},[t._v("\n\t\t\t\t\t\t\t"+t._s("album"===t.type?e.track_position:t.body.indexOf(e)+1)+"\n\t\t\t\t\t\t")]),t._v(" "),n("td",{staticClass:"table__cell--large table__cell--with-icon"},[n("div",{staticClass:"table__cell-content table__cell-content--vertical-center"},[e.explicit_lyrics?n("i",{staticClass:"material-icons explicit_icon"},[t._v("\n\t\t\t\t\t\t\t\t\texplicit\n\t\t\t\t\t\t\t\t")]):t._e(),t._v("\n\t\t\t\t\t\t\t\t"+t._s(e.title+(e.title_version&&-1==e.title.indexOf(e.title_version)?" "+e.title_version:""))+"\n\t\t\t\t\t\t\t")])]),t._v(" "),n("td",{staticClass:"table__cell--medium table__cell--center clickable",attrs:{"data-id":e.artist.id},on:{click:t.artistView}},[t._v("\n\t\t\t\t\t\t\t"+t._s(e.artist.name)+"\n\t\t\t\t\t\t")]),t._v(" "),"playlist"==t.type?n("td",{staticClass:"table__cell--medium table__cell--center clickable",attrs:{"data-id":e.album.id},on:{click:t.albumView}},[t._v("\n\t\t\t\t\t\t\t"+t._s(e.album.title)+"\n\t\t\t\t\t\t")]):t._e(),t._v(" "),n("td",{staticClass:"table__cell--center",class:{"table__cell--small":"album"===t.type,"table__cell--x-small":"playlist"===t.type}},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.convertDuration(e.duration))+"\n\t\t\t\t\t\t")]),t._v(" "),n("td",{staticClass:"table__icon table__cell--center"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.selected,expression:"track.selected"}],staticClass:"clickable",attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.selected)?t._i(e.selected,null)>-1:e.selected},on:{change:function(n){var a=e.selected,r=n.target,i=!!r.checked;if(Array.isArray(a)){var s=t._i(a,null);r.checked?s<0&&t.$set(e,"selected",a.concat([null])):s>-1&&t.$set(e,"selected",a.slice(0,s).concat(a.slice(s+1)))}else t.$set(e,"selected",i)}}})])]):"disc_separator"==e.type?n("tr",{staticClass:"table__row-no-highlight",staticStyle:{opacity:"0.54"}},[t._m(2,!0),t._v(" "),n("td",{staticClass:"table__cell--center"},[t._v("\n\t\t\t\t\t\t\t"+t._s(e.number)+"\n\t\t\t\t\t\t")]),t._v(" "),n("td",{attrs:{colspan:"4"}})]):t._e()]}))]:t._l(t.body,(function(e,a){return n("tr",[n("td",[e.preview_url?n("i",{class:"material-icons"+(e.preview_url?" preview_playlist_controls":""),attrs:{"data-preview":e.preview_url,title:t.$t("globals.play_hint")},on:{click:t.playPausePreview}},[t._v("\n\t\t\t\t\t\t\tplay_arrow\n\t\t\t\t\t\t")]):n("i",{staticClass:"material-icons disabled"},[t._v("play_arrow")])]),t._v(" "),n("td",[t._v(t._s(a+1))]),t._v(" "),n("td",{staticClass:"inline-flex"},[e.explicit?n("i",{staticClass:"material-icons explicit_icon"},[t._v("explicit")]):t._e(),t._v("\n\t\t\t\t\t\t"+t._s(e.name)+"\n\t\t\t\t\t")]),t._v(" "),n("td",[t._v(t._s(e.artists[0].name))]),t._v(" "),n("td",[t._v(t._s(e.album.name))]),t._v(" "),n("td",[t._v(t._s(t.convertDuration(Math.floor(e.duration_ms/1e3))))]),t._v(" "),n("td",[n("input",{directives:[{name:"model",rawName:"v-model",value:e.selected,expression:"track.selected"}],staticClass:"clickable",attrs:{type:"checkbox"},domProps:{checked:Array.isArray(e.selected)?t._i(e.selected,null)>-1:e.selected},on:{change:function(n){var a=e.selected,r=n.target,i=!!r.checked;if(Array.isArray(a)){var s=t._i(a,null);r.checked?s<0&&t.$set(e,"selected",a.concat([null])):s>-1&&t.$set(e,"selected",a.slice(0,s).concat(a.slice(s+1)))}else t.$set(e,"selected",i)}}})])])}))],2)]),t._v(" "),t.label?n("span",{staticStyle:{opacity:"0.4","margin-top":"8px",display:"inline-block","font-size":"13px"}},[t._v(t._s(t.label))]):t._e(),t._v(" "),n("footer",[n("button",{attrs:{"data-link":t.link},on:{contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)},click:function(e){return e.stopPropagation(),t.addToQueue(e)}}},[t._v("\n\t\t\t"+t._s(""+t.$t("globals.download",[t.$tc("globals.listTabs."+t.type,1)]))+"\n\t\t")]),t._v(" "),n("button",{staticClass:"with_icon",attrs:{"data-link":t.selectedLinks()},on:{contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)},click:function(e){return e.stopPropagation(),t.addToQueue(e)}}},[t._v("\n\t\t\t"+t._s(t.$t("tracklist.downloadSelection"))),n("i",{staticClass:"material-icons"},[t._v("file_download")])]),t._v(" "),n("button",{staticClass:"back-button",on:{click:t.backTab}},[t._v(t._s(t.$t("globals.back")))])])])};kd._withStripped=!0;var Cd=function(t,e,n,a,r,i,s,o){const l=("function"==typeof n?n.options:n)||{};l.__file="C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui\\src\\components\\TracklistTab.vue",l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),l._scopeId=a;{let t;if(e&&(t=function(t){e.call(this,s(t))}),void 0!==t)if(l.functional){const e=l.render;l.render=function(n,a){return t.call(a),e(n,a)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,t):[t]}}return l}({render:kd,staticRenderFns:[function(){var t=this.$createElement,e=this._self._c||t;return e("th",[e("i",{staticClass:"material-icons"},[this._v("music_note")])])},function(){var t=this.$createElement,e=this._self._c||t;return e("th",[e("i",{staticClass:"material-icons"},[this._v("timer")])])},function(){var t=this.$createElement,e=this._self._c||t;return e("td",[e("div",{staticClass:"table__cell-content table__cell-content--vertical-center",staticStyle:{opacity:"0.54"}},[e("i",{staticClass:"material-icons"},[this._v("album")])])])}]},(function(t){t&&t("data-v-2e1a67fb_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"TracklistTab.vue"},media:void 0})}),Ad,void 0,!1,0,(function t(){const e=document.head||document.getElementsByTagName("head")[0],n=t.styles||(t.styles={}),a="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(t,r){if(document.querySelector('style[data-vue-ssr-id~="'+t+'"]'))return;const i=a?r.media||"default":t,s=n[i]||(n[i]={ids:[],parts:[],element:void 0});if(!s.ids.includes(t)){let n=r.source,o=s.ids.length;if(s.ids.push(t),a&&(s.element=s.element||document.querySelector("style[data-group="+i+"]")),!s.element){const t=s.element=document.createElement("style");t.type="text/css",r.media&&t.setAttribute("media",r.media),a&&(t.setAttribute("data-group",i),t.setAttribute("data-next-index","0")),e.appendChild(t)}if(a&&(o=parseInt(s.element.getAttribute("data-next-index")),s.element.setAttribute("data-next-index",o+1)),s.element.styleSheet)s.parts.push(n),s.element.styleSheet.cssText=s.parts.filter(Boolean).join("\n");else{const t=document.createTextNode(n),e=s.element.childNodes;e[o]&&s.element.removeChild(e[o]),e.length?s.element.insertBefore(t,e[o]):s.element.appendChild(t)}}}}));const xd={name:"artist-tab",data:()=>({currentTab:"",sortKey:"release_date",sortOrder:"desc",title:"",image:"",type:"",link:"",head:null,body:null}),methods:{backTab:Nd,albumView:Ed.bind(null,"album"),reset(){this.title="Loading...",this.image="",this.type="",this.currentTab="",this.sortKey="release_date",this.sortOrder="desc",this.link="",this.head=[],this.body=null},addToQueue(t){t.stopPropagation(),Kl.sendAddToQueue(t.currentTarget.dataset.link)},openQualityModal(t){this.$root.$emit("QualityModal:open",t.currentTarget.dataset.link)},sortBy(t){t==this.sortKey?this.sortOrder="asc"==this.sortOrder?"desc":"asc":(this.sortKey=t,this.sortOrder="asc")},changeTab(t){this.currentTab=t},getCurrentTab(){return this.currentTab},updateSelected(){window.currentStack.selected=this.currentTab},checkNewRelease(t){let e=new Date,n=new Date(t);return n.setDate(n.getDate()+3),e.setHours(0,0,0,0),e.getTime()<=n.getTime()},showArtist(t){this.reset();const{name:e,picture_xl:n,id:a,releases:r}=t;this.title=e,this.image=n,this.type="Artist",this.link="https://www.deezer.com/artist/"+a,""===this.currentTab&&(this.currentTab=Object.keys(r)[0]),this.sortKey="release_date",this.sortOrder="desc",this.head=[{title:this.$tc("globals.listTabs.title",1),sortKey:"title"},{title:this.$t("globals.listTabs.releaseDate"),sortKey:"release_date"},{title:"",width:"32px"}],md(r)?this.body=null:this.body=r}},computed:{showTable(){return this.body?(t=this.body[this.currentTab],e=this.sortKey,n=this.sortOrder,null==t?[]:(fc(e)||(e=null==e?[]:[e]),fc(n=a?void 0:n)||(n=null==n?[]:[n]),_d(t,e,n))):[];var t,e,n,a}},mounted(){this.$refs.root.style.display="block",console.log("artist mounted"),to.on("show_artist",this.showArtist),eo.$on("artistTab:updateSelected",this.updateSelected),eo.$on("artistTab:changeTab",this.changeTab)},beforeDestroy(){console.log("artist bef dest"),this.$refs.root.style.display="none"}};var Td=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"root",staticClass:"main_tabcontent fixed_footer image_header",attrs:{id:"artist_tab"}},[n("header",{staticClass:"inline-flex",style:{"background-image":"linear-gradient(to bottom, transparent 0%, var(--main-background) 100%), url('"+t.image+"')"}},[n("h1",[t._v(t._s(t.title))]),t._v(" "),n("div",{staticClass:"fab right",attrs:{role:"button","aria-label":"download","data-link":t.link},on:{contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)},click:function(e){return e.stopPropagation(),t.addToQueue(e)}}},[n("i",{staticClass:"material-icons",attrs:{title:t.$t("globals.download_hint")}},[t._v("get_app")])])]),t._v(" "),n("div",{staticClass:"tab"},t._l(t.body,(function(e,a){return n("button",{key:a,staticClass:"selective",class:{active:a===t.currentTab},attrs:{href:"#artist_"+a},on:{click:function(e){return t.changeTab(a)}}},[t._v("\n\t\t\t"+t._s(t.$tc("globals.listTabs."+a,2))+"\n\t\t")])})),0),t._v(" "),n("table",{staticClass:"table"},[n("thead",[n("tr",t._l(t.head,(function(e){return n("th",{class:{"sort-asc":e.sortKey==t.sortKey&&"asc"==t.sortOrder,"sort-desc":e.sortKey==t.sortKey&&"desc"==t.sortOrder,sortable:e.sortKey,clickable:e.sortKey},style:{width:e.width?e.width:"auto"},on:{click:function(n){e.sortKey&&t.sortBy(e.sortKey)}}},[t._v("\n\t\t\t\t\t"+t._s(e.title)+"\n\t\t\t\t")])})),0)]),t._v(" "),n("tbody",t._l(t.showTable,(function(e){return n("tr",{key:e.id},[n("td",{staticClass:"inline-flex clickable",attrs:{"data-id":e.id},on:{click:t.albumView}},[n("img",{staticClass:"rounded coverart",staticStyle:{"margin-right":"16px",width:"56px",height:"56px"},attrs:{src:e.cover_small}}),t._v(" "),e.explicit_lyrics?n("i",{staticClass:"material-icons explicit_icon"},[t._v("\n\t\t\t\t\t\texplicit\n\t\t\t\t\t")]):t._e(),t._v("\n\t\t\t\t\t"+t._s(e.title)+"\n\t\t\t\t\t"),t.checkNewRelease(e.release_date)?n("i",{staticClass:"material-icons",staticStyle:{color:"#ff7300"}},[t._v("\n\t\t\t\t\t\tfiber_new\n\t\t\t\t\t")]):t._e()]),t._v(" "),n("td",[t._v(t._s(e.release_date))]),t._v(" "),n("td",{staticClass:"clickable",attrs:{"data-link":e.link},on:{click:function(e){return e.stopPropagation(),t.addToQueue(e)},contextmenu:function(e){return e.preventDefault(),t.openQualityModal(e)}}},[n("i",{staticClass:"material-icons",attrs:{title:t.$t("globals.download_hint")}},[t._v("\n\t\t\t\t\t\tfile_download\n\t\t\t\t\t")])])])})),0)]),t._v(" "),n("footer",[n("button",{staticClass:"back-button",on:{click:t.backTab}},[t._v(t._s(t.$t("globals.back")))])])])};Td._withStripped=!0;var $d=function(t,e,n,a,r,i,s,o){const l=("function"==typeof n?n.options:n)||{};l.__file="C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui\\src\\components\\ArtistTab.vue",l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),l._scopeId=a;{let t;if(e&&(t=function(t){e.call(this,s(t))}),void 0!==t)if(l.functional){const e=l.render;l.render=function(n,a){return t.call(a),e(n,a)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,t):[t]}}return l}({render:Td,staticRenderFns:[]},(function(t){t&&t("data-v-5a788dc3_0",{source:"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",map:{version:3,sources:[],names:[],mappings:"",file:"ArtistTab.vue"},media:void 0})}),xd,void 0,!1,0,(function t(){const e=document.head||document.getElementsByTagName("head")[0],n=t.styles||(t.styles={}),a="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(t,r){if(document.querySelector('style[data-vue-ssr-id~="'+t+'"]'))return;const i=a?r.media||"default":t,s=n[i]||(n[i]={ids:[],parts:[],element:void 0});if(!s.ids.includes(t)){let n=r.source,o=s.ids.length;if(s.ids.push(t),a&&(s.element=s.element||document.querySelector("style[data-group="+i+"]")),!s.element){const t=s.element=document.createElement("style");t.type="text/css",r.media&&t.setAttribute("media",r.media),a&&(t.setAttribute("data-group",i),t.setAttribute("data-next-index","0")),e.appendChild(t)}if(a&&(o=parseInt(s.element.getAttribute("data-next-index")),s.element.setAttribute("data-next-index",o+1)),s.element.styleSheet)s.parts.push(n),s.element.styleSheet.cssText=s.parts.filter(Boolean).join("\n");else{const t=document.createTextNode(n),e=s.element.childNodes;e[o]&&s.element.removeChild(e[o]),e.length?s.element.insertBefore(t,e[o]):s.element.appendChild(t)}}}}));wn.use(Wl);const Sd=new Wl({mode:"history",routes:[{path:"/",component:Xl},{path:"/tracklist/:type/:id",name:"Tracklist",component:Cd},{path:"/artist/:id",name:"Artist",component:$d},{path:"*",component:Cd}],scrollBehavior:(t,e,n)=>({x:0,y:0})});function Ld(t,e,n){window.windows_stack=[],window.currentStack={};const a=document.getElementsByClassName(e+"_tabcontent");for(let t=0;t{switch(console.log("before route change",t),t.name){case"Artist":to.emit("getTracklist",{type:"artist",id:t.params.id});break;case"Tracklist":to.emit("getTracklist",{type:t.params.type,id:t.params.id})}eo.$emit("trackPreview:stopStackedTabsPreview"),n()}),window.search_selected="",window.main_selected="",window.windows_stack=[],window.currentStack={};const Dd={name:"the-sidebar",data:()=>({appOnline:null,activeTheme:"light",themes:["purple","dark","light"]}),mounted(){this.appOnline=navigator.onLine,window.addEventListener("online",()=>{this.appOnline=!0}),window.addEventListener("offline",()=>{this.appOnline=!1}),this.activeTheme=localStorage.getItem("selectedTheme")||"light"},methods:{changeTheme(t){t!==this.activeTheme&&(this.activeTheme=t,document.documentElement.setAttribute("data-theme",t),localStorage.setItem("selectedTheme",t),document.querySelectorAll("*").forEach(t=>{t.style.transition="all 200ms ease-in-out"}),document.documentElement.addEventListener("transitionend",(function t(){document.querySelectorAll("*").forEach(t=>{t.style.transition=""}),document.documentElement.removeEventListener("transitionend",t)})))},handleSidebarClick(t){const{target:e}=t;if(!(e.matches(".main_tablinks")||e.parentElement.matches(".main_tablinks")))return;let n=e.matches(".main_tablinks")?e:e.parentElement,a=null;switch(n.id){case"main_search_tablink":a="search_tab";break;case"main_home_tablink":a="home_tab";break;case"main_charts_tablink":a="charts_tab";break;case"main_favorites_tablink":a="favorites_tab";break;case"main_analyzer_tablink":a="analyzer_tab";break;case"main_settings_tablink":a="settings_tab";break;case"main_about_tablink":a="about_tab"}a&&Ld(n,"main",a)}}};var Pd=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("aside",{attrs:{id:"sidebar",role:"navigation"},on:{click:t.handleSidebarClick}},[n("span",{staticClass:"main_tablinks",attrs:{id:"main_home_tablink",role:"link","aria-label":"home"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("home")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.home")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_search_tablink",role:"link","aria-label":"search"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("search")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.search")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_charts_tablink",role:"link","aria-label":"charts"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("bubble_chart")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.charts")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_favorites_tablink",role:"link","aria-label":"favorites"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("album")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.favorites")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_analyzer_tablink",role:"link","aria-label":"link analyzer"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("link")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.linkAnalyzer")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_settings_tablink",role:"link","aria-label":"settings"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("settings")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.settings")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"main_about_tablink",role:"link","aria-label":"info"}},[n("i",{staticClass:"material-icons side_icon"},[t._v("info")]),t._v(" "),n("span",{staticClass:"main_tablinks_text"},[t._v(t._s(t.$t("sidebar.about")))])]),t._v(" "),n("span",{staticClass:"main_tablinks",attrs:{id:"theme_selector",role:"link","aria-label":"theme selector"}},[n("i",{staticClass:"material-icons side_icon side_icon--theme"},[t._v("palette")]),t._v(" "),n("div",{attrs:{id:"theme_togglers"}},t._l(t.themes,(function(e){return n("div",{key:e,staticClass:"theme_toggler ",class:[{"theme_toggler--active":t.activeTheme===e},"theme_toggler--"+e],on:{click:function(n){return t.changeTheme(e)}}})})),0)]),t._v(" "),n("div",{class:{online:t.appOnline,offline:!t.appOnline},attrs:{id:"network-status"}},[t.appOnline?n("i",{staticClass:"material-icons"},[t._v("wifi")]):n("i",{staticClass:"material-icons"},[n("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M24 .01c0-.01 0-.01 0 0L0 0v24h24V.01zM0 0h24v24H0V0zm0 0h24v24H0V0z",fill:"none"}}),t._v(" "),n("path",{attrs:{d:"M22.99 9C19.15 5.16 13.8 3.76 8.84 4.78l2.52 2.52c3.47-.17 6.99 1.05 9.63 3.7l2-2zm-4 4c-1.29-1.29-2.84-2.13-4.49-2.56l3.53 3.53.96-.97zM2 3.05L5.07 6.1C3.6 6.82 2.22 7.78 1 9l1.99 2c1.24-1.24 2.67-2.16 4.2-2.77l2.24 2.24C7.81 10.89 6.27 11.73 5 13v.01L6.99 15c1.36-1.36 3.14-2.04 4.92-2.06L18.98 20l1.27-1.26L3.29 1.79 2 3.05zM9 17l3 3 3-3c-1.65-1.66-4.34-1.66-6 0z"}})])])])])};Pd._withStripped=!0;var Id=function(t,e,n,a,r,i,s,o){const l=("function"==typeof n?n.options:n)||{};l.__file="C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui\\src\\components\\TheSidebar.vue",l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,r&&(l.functional=!0)),l._scopeId=a;{let t;if(e&&(t=function(t){e.call(this,s(t))}),void 0!==t)if(l.functional){const e=l.render;l.render=function(n,a){return t.call(a),e(n,a)}}else{const e=l.beforeCreate;l.beforeCreate=e?[].concat(e,t):[t]}}return l}({render:Pd,staticRenderFns:[]},(function(t){t&&t("data-v-0888ab22_0",{source:"\n#network-status[data-v-0888ab22] {\r\n\tdisplay: flex;\r\n\tjustify-content: center;\r\n\talign-items: center;\r\n\tposition: relative;\r\n\tmargin-top: auto;\r\n\tbottom: 0;\n}\n#network-status.online i.material-icons[data-v-0888ab22] {\r\n\tcolor: hsl(151, 100%, 31%);\n}\n#network-status.offline i.material-icons svg[data-v-0888ab22] {\r\n\tfill: red;\r\n\twidth: 1em;\r\n\theight: 1em;\n}\r\n",map:{version:3,sources:["C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui/C:\\Users\\Roberto\\Dev\\repos\\deemix-pyweb\\webui\\src\\components\\TheSidebar.vue"],names:[],mappings:";AA0DA;CACA,aAAA;CACA,uBAAA;CACA,mBAAA;CACA,kBAAA;CACA,gBAAA;CACA,SAAA;AACA;AAEA;CACA,0BAAA;AACA;AAEA;CACA,SAAA;CACA,UAAA;CACA,WAAA;AACA",file:"TheSidebar.vue",sourcesContent:['\r\n\r\n\r\n\r\n diff --git a/src/components/TheChartsTab.vue b/src/components/TheChartsTab.vue index db83481..29b3edb 100644 --- a/src/components/TheChartsTab.vue +++ b/src/components/TheChartsTab.vue @@ -1,5 +1,5 @@