From cb756747bd4e037ec957ad11c0a2ba8ab5755f3e Mon Sep 17 00:00:00 2001 From: Roberto Tonino Date: Sat, 28 Nov 2020 20:18:35 +0100 Subject: [PATCH] chore: switched to v1.5.2; chore: removed default export for sendAddToQueue utility --- package.json | 2 +- public/js/bundle.js | 12 ++++++------ src/components/globals/TheQualityModal.vue | 4 ++-- src/components/pages/Tracklist.vue | 4 ++-- src/utils/downloads.js | 10 +++++++--- 5 files changed, 18 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index aa6a6f5..9051b27 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "deemix-webui", - "version": "1.5.1", + "version": "1.5.2", "scripts": { "clean": "rimraf public/js/bundle.js public/js/bundle.temp.js public/js/bundle.js.map", "clean-temp": "rimraf public/js/bundle.temp.js", diff --git a/public/js/bundle.js b/public/js/bundle.js index 02c407f..528cb85 100644 --- a/public/js/bundle.js +++ b/public/js/bundle.js @@ -2460,10 +2460,10 @@ a { */function applyMixin(e){var n=Number(e.version.split(".")[0]);if(n>=2)e.mixin({beforeCreate:r});else{var a=e.prototype._init;e.prototype._init=function(i){i===void 0&&(i={}),i.init=i.init?[r].concat(i.init):r,a.call(this,i)}}function r(){var i=this.$options;i.store?this.$store=typeof i.store=="function"?i.store():i.store:i.parent&&i.parent.$store&&(this.$store=i.parent.$store)}}var target$2=typeof window!="undefined"?window:typeof global!="undefined"?global:{},devtoolHook=target$2.__VUE_DEVTOOLS_GLOBAL_HOOK__;function devtoolPlugin(e){if(!devtoolHook)return;e._devtoolHook=devtoolHook,devtoolHook.emit("vuex:init",e),devtoolHook.on("vuex:travel-to-state",function(n){e.replaceState(n)}),e.subscribe(function(n,a){devtoolHook.emit("vuex:mutation",n,a)},{prepend:!0}),e.subscribeAction(function(n,a){devtoolHook.emit("vuex:action",n,a)},{prepend:!0})}function find(e,n){return e.filter(n)[0]}function deepCopy(e,n){if(n===void 0&&(n=[]),e===null||typeof e!="object")return e;var a=find(n,function(i){return i.original===e});if(a)return a.copy;var r=Array.isArray(e)?[]:{};return n.push({original:e,copy:r}),Object.keys(e).forEach(function(i){r[i]=deepCopy(e[i],n)}),r}function forEachValue(e,n){Object.keys(e).forEach(function(a){return n(e[a],a)})}function isObject$1(e){return e!==null&&typeof e=="object"}function isPromise$1(e){return e&&typeof e.then=="function"}function partial(e,n){return function(){return e(n)}}var Module=function(n,a){this.runtime=a,this._children=Object.create(null),this._rawModule=n;var r=n.state;this.state=(typeof r=="function"?r():r)||{}},prototypeAccessors$1={namespaced:{configurable:!0}};prototypeAccessors$1.namespaced.get=function(){return!!this._rawModule.namespaced},Module.prototype.addChild=function(n,a){this._children[n]=a},Module.prototype.removeChild=function(n){delete this._children[n]},Module.prototype.getChild=function(n){return this._children[n]},Module.prototype.hasChild=function(n){return n in this._children},Module.prototype.update=function(n){this._rawModule.namespaced=n.namespaced,n.actions&&(this._rawModule.actions=n.actions),n.mutations&&(this._rawModule.mutations=n.mutations),n.getters&&(this._rawModule.getters=n.getters)},Module.prototype.forEachChild=function(n){forEachValue(this._children,n)},Module.prototype.forEachGetter=function(n){this._rawModule.getters&&forEachValue(this._rawModule.getters,n)},Module.prototype.forEachAction=function(n){this._rawModule.actions&&forEachValue(this._rawModule.actions,n)},Module.prototype.forEachMutation=function(n){this._rawModule.mutations&&forEachValue(this._rawModule.mutations,n)},Object.defineProperties(Module.prototype,prototypeAccessors$1);var ModuleCollection=function(n){this.register([],n,!1)};ModuleCollection.prototype.get=function(n){return n.reduce(function(a,r){return a.getChild(r)},this.root)},ModuleCollection.prototype.getNamespace=function(n){var a=this.root;return n.reduce(function(r,i){return a=a.getChild(i),r+(a.namespaced?i+"/":"")},"")},ModuleCollection.prototype.update=function(n){update([],this.root,n)},ModuleCollection.prototype.register=function(n,a,r){var i=this;r===void 0&&(r=!0);var s=new Module(a,r);if(n.length===0)this.root=s;else{var l=this.get(n.slice(0,-1));l.addChild(n[n.length-1],s)}a.modules&&forEachValue(a.modules,function(c,o){i.register(n.concat(o),c,r)})},ModuleCollection.prototype.unregister=function(n){var a=this.get(n.slice(0,-1)),r=n[n.length-1],i=a.getChild(r);if(!i)return;if(!i.runtime)return;a.removeChild(r)},ModuleCollection.prototype.isRegistered=function(n){var a=this.get(n.slice(0,-1)),r=n[n.length-1];return a.hasChild(r)};function update(e,n,a){if(n.update(a),a.modules)for(var r in a.modules){if(!n.getChild(r))return;update(e.concat(r),n.getChild(r),a.modules[r])}}var Vue$1,Store=function(n){var a=this;n===void 0&&(n={}),!Vue$1&&typeof window!="undefined"&&window.Vue&&install(window.Vue);var r=n.plugins;r===void 0&&(r=[]);var i=n.strict;i===void 0&&(i=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new ModuleCollection(n),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new Vue$1,this._makeLocalGettersCache=Object.create(null);var s=this,l=this,c=l.dispatch,o=l.commit;this.dispatch=function(m,h){return c.call(s,m,h)},this.commit=function(m,h,v){return o.call(s,m,h,v)},this.strict=i;var u=this._modules.root.state;installModule(this,u,[],this._modules.root),resetStoreVM(this,u),r.forEach(function(f){return f(a)});var d=n.devtools!==void 0?n.devtools:Vue$1.config.devtools;d&&devtoolPlugin(this)},prototypeAccessors$1$1={state:{configurable:!0}};prototypeAccessors$1$1.state.get=function(){return this._vm._data.$$state},prototypeAccessors$1$1.state.set=function(e){},Store.prototype.commit=function(n,a,r){var i=this,s=unifyObjectStyle(n,a,r),l=s.type,c=s.payload,o={type:l,payload:c},u=this._mutations[l];if(!u)return;this._withCommit(function(){u.forEach(function(f){f(c)})}),this._subscribers.slice().forEach(function(d){return d(o,i.state)})},Store.prototype.dispatch=function(n,a){var r=this,i=unifyObjectStyle(n,a),s=i.type,l=i.payload,c={type:s,payload:l},o=this._actions[s];if(!o)return;try{this._actionSubscribers.slice().filter(function(d){return d.before}).forEach(function(d){return d.before(c,r.state)})}catch(d){}var u=o.length>1?Promise.all(o.map(function(d){return d(l)})):o[0](l);return new Promise(function(d,f){u.then(function(m){try{r._actionSubscribers.filter(function(h){return h.after}).forEach(function(h){return h.after(c,r.state)})}catch(h){}d(m)},function(m){try{r._actionSubscribers.filter(function(h){return h.error}).forEach(function(h){return h.error(c,r.state,m)})}catch(h){}f(m)})})},Store.prototype.subscribe=function(n,a){return genericSubscribe(n,this._subscribers,a)},Store.prototype.subscribeAction=function(n,a){var r=typeof n=="function"?{before:n}:n;return genericSubscribe(r,this._actionSubscribers,a)},Store.prototype.watch=function(n,a,r){var i=this;return this._watcherVM.$watch(function(){return n(i.state,i.getters)},a,r)},Store.prototype.replaceState=function(n){var a=this;this._withCommit(function(){a._vm._data.$$state=n})},Store.prototype.registerModule=function(n,a,r){r===void 0&&(r={}),typeof n=="string"&&(n=[n]),this._modules.register(n,a),installModule(this,this.state,n,this._modules.get(n),r.preserveState),resetStoreVM(this,this.state)},Store.prototype.unregisterModule=function(n){var a=this;typeof n=="string"&&(n=[n]),this._modules.unregister(n),this._withCommit(function(){var r=getNestedState(a.state,n.slice(0,-1));Vue$1.delete(r,n[n.length-1])}),resetStore(this)},Store.prototype.hasModule=function(n){return typeof n=="string"&&(n=[n]),this._modules.isRegistered(n)},Store.prototype.hotUpdate=function(n){this._modules.update(n),resetStore(this,!0)},Store.prototype._withCommit=function(n){var a=this._committing;this._committing=!0,n(),this._committing=a},Object.defineProperties(Store.prototype,prototypeAccessors$1$1);function genericSubscribe(e,n,a){return n.indexOf(e)<0&&(a&&a.prepend?n.unshift(e):n.push(e)),function(){var r=n.indexOf(e);r>-1&&n.splice(r,1)}}function resetStore(e,n){e._actions=Object.create(null),e._mutations=Object.create(null),e._wrappedGetters=Object.create(null),e._modulesNamespaceMap=Object.create(null);var a=e.state;installModule(e,a,[],e._modules.root,!0),resetStoreVM(e,a,n)}function resetStoreVM(e,n,a){var r=e._vm;e.getters={},e._makeLocalGettersCache=Object.create(null);var i=e._wrappedGetters,s={};forEachValue(i,function(c,o){s[o]=partial(c,e),Object.defineProperty(e.getters,o,{get:function(){return e._vm[o]},enumerable:!0})});var l=Vue$1.config.silent;Vue$1.config.silent=!0,e._vm=new Vue$1({data:{$$state:n},computed:s}),Vue$1.config.silent=l,e.strict&&enableStrictMode(e),r&&(a&&e._withCommit(function(){r._data.$$state=null}),Vue$1.nextTick(function(){return r.$destroy()}))}function installModule(e,n,a,r,i){var s=!a.length,l=e._modules.getNamespace(a);if(r.namespaced&&(e._modulesNamespaceMap[l]&&!1&&console.error("[vuex] duplicate namespace "+l+" for the namespaced module "+a.join("/")),e._modulesNamespaceMap[l]=r),!s&&!i){var c=getNestedState(n,a.slice(0,-1)),o=a[a.length-1];e._withCommit(function(){Vue$1.set(c,o,r.state)})}var u=r.context=makeLocalContext(e,l,a);r.forEachMutation(function(d,f){var m=l+f;registerMutation(e,m,d,u)}),r.forEachAction(function(d,f){var m=d.root?f:l+f,h=d.handler||d;registerAction(e,m,h,u)}),r.forEachGetter(function(d,f){var m=l+f;registerGetter(e,m,d,u)}),r.forEachChild(function(d,f){installModule(e,n,a.concat(f),d,i)})}function makeLocalContext(e,n,a){var r=n==="",i={dispatch:r?e.dispatch:function(s,l,c){var o=unifyObjectStyle(s,l,c),u=o.payload,d=o.options,f=o.type;return(!d||!d.root)&&(f=n+f),e.dispatch(f,u)},commit:r?e.commit:function(s,l,c){var o=unifyObjectStyle(s,l,c),u=o.payload,d=o.options,f=o.type;(!d||!d.root)&&(f=n+f),e.commit(f,u,d)}};return Object.defineProperties(i,{getters:{get:r?function(){return e.getters}:function(){return makeLocalGetters(e,n)}},state:{get:function(){return getNestedState(e.state,a)}}}),i}function makeLocalGetters(e,n){if(!e._makeLocalGettersCache[n]){var a={},r=n.length;Object.keys(e.getters).forEach(function(i){if(i.slice(0,r)!==n)return;var s=i.slice(r);Object.defineProperty(a,s,{get:function(){return e.getters[i]},enumerable:!0})}),e._makeLocalGettersCache[n]=a}return e._makeLocalGettersCache[n]}function registerMutation(e,n,a,r){var i=e._mutations[n]||(e._mutations[n]=[]);i.push(function(l){a.call(e,r.state,l)})}function registerAction(e,n,a,r){var i=e._actions[n]||(e._actions[n]=[]);i.push(function(l){var c=a.call(e,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:e.getters,rootState:e.state},l);return isPromise$1(c)||(c=Promise.resolve(c)),e._devtoolHook?c.catch(function(o){throw e._devtoolHook.emit("vuex:error",o),o}):c})}function registerGetter(e,n,a,r){if(e._wrappedGetters[n])return;e._wrappedGetters[n]=function(s){return a(r.state,r.getters,s.state,s.getters)}}function enableStrictMode(e){e._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function getNestedState(e,n){return n.reduce(function(a,r){return a[r]},e)}function unifyObjectStyle(e,n,a){return isObject$1(e)&&e.type&&(a=n,n=e,e=e.type),{type:e,payload:n,options:a}}function install(e){if(Vue$1&&e===Vue$1)return;Vue$1=e,applyMixin(Vue$1)}var mapState=normalizeNamespace(function(e,n){var a={};return normalizeMap(n).forEach(function(r){var i=r.key,s=r.val;a[i]=function(){var c=this.$store.state,o=this.$store.getters;if(e){var u=getModuleByNamespace(this.$store,"mapState",e);if(!u)return;c=u.context.state,o=u.context.getters}return typeof s=="function"?s.call(this,c,o):c[s]},a[i].vuex=!0}),a}),mapMutations=normalizeNamespace(function(e,n){var a={};return normalizeMap(n).forEach(function(r){var i=r.key,s=r.val;a[i]=function(){for(var c=[],o=arguments.length;o--;)c[o]=arguments[o];var u=this.$store.commit;if(e){var d=getModuleByNamespace(this.$store,"mapMutations",e);if(!d)return;u=d.context.commit}return typeof s=="function"?s.apply(this,[u].concat(c)):u.apply(this.$store,[s].concat(c))}}),a}),mapGetters=normalizeNamespace(function(e,n){var a={};return normalizeMap(n).forEach(function(r){var i=r.key,s=r.val;s=e+s,a[i]=function(){return e&&!getModuleByNamespace(this.$store,"mapGetters",e)?void 0:this.$store.getters[s]},a[i].vuex=!0}),a}),mapActions=normalizeNamespace(function(e,n){var a={};return normalizeMap(n).forEach(function(r){var i=r.key,s=r.val;a[i]=function(){for(var c=[],o=arguments.length;o--;)c[o]=arguments[o];var u=this.$store.dispatch;if(e){var d=getModuleByNamespace(this.$store,"mapActions",e);if(!d)return;u=d.context.dispatch}return typeof s=="function"?s.apply(this,[u].concat(c)):u.apply(this.$store,[s].concat(c))}}),a}),createNamespacedHelpers=function(e){return{mapState:mapState.bind(null,e),mapGetters:mapGetters.bind(null,e),mapMutations:mapMutations.bind(null,e),mapActions:mapActions.bind(null,e)}};function normalizeMap(e){return isValidMap(e)?Array.isArray(e)?e.map(function(n){return{key:n,val:n}}):Object.keys(e).map(function(n){return{key:n,val:e[n]}}):[]}function isValidMap(e){return Array.isArray(e)||isObject$1(e)}function normalizeNamespace(e){return function(n,a){return typeof n!="string"?(a=n,n=""):n.charAt(n.length-1)!=="/"&&(n+="/"),e(n,a)}}function getModuleByNamespace(e,n,a){var r=e._modulesNamespaceMap[a];return r}function createLogger(e){e===void 0&&(e={});var n=e.collapsed;n===void 0&&(n=!0);var a=e.filter;a===void 0&&(a=function(d,f,m){return!0});var r=e.transformer;r===void 0&&(r=function(d){return d});var i=e.mutationTransformer;i===void 0&&(i=function(d){return d});var s=e.actionFilter;s===void 0&&(s=function(d,f){return!0});var l=e.actionTransformer;l===void 0&&(l=function(d){return d});var c=e.logMutations;c===void 0&&(c=!0);var o=e.logActions;o===void 0&&(o=!0);var u=e.logger;return u===void 0&&(u=console),function(d){var f=deepCopy(d.state);if(typeof u=="undefined")return;c&&d.subscribe(function(m,h){var v=deepCopy(h);if(a(m,f,v)){var y=getFormattedTime(),w=i(m),k="mutation "+m.type+y;startMessage(u,k,n),u.log("%c prev state","color: #9E9E9E; font-weight: bold",r(f)),u.log("%c mutation","color: #03A9F4; font-weight: bold",w),u.log("%c next state","color: #4CAF50; font-weight: bold",r(v)),endMessage(u)}f=v}),o&&d.subscribeAction(function(m,h){if(s(m,h)){var v=getFormattedTime(),y=l(m),w="action "+m.type+v;startMessage(u,w,n),u.log("%c action","color: #03A9F4; font-weight: bold",y),endMessage(u)}})}}function startMessage(e,n,a){var r=a?e.groupCollapsed:e.group;try{r.call(e,n)}catch(i){e.log(n)}}function endMessage(e){try{e.groupEnd()}catch(n){e.log("\u2014\u2014 log end \u2014\u2014")}}function getFormattedTime(){var e=new Date;return" @ "+pad(e.getHours(),2)+":"+pad(e.getMinutes(),2)+":"+pad(e.getSeconds(),2)+"."+pad(e.getMilliseconds(),3)}function repeat(e,n){return new Array(n+1).join(e)}function pad(e,n){return repeat("0",n-e.toString().length)+e}var index$2={Store,install,version:"3.5.1",mapState,mapMutations,mapGetters,mapActions,createNamespacedHelpers,createLogger};let settingsData={},defaultSettingsData={},spotifyCredentials={};function getSettingsData(){return socket.emit("get_settings_data"),new Promise((e,n)=>{socket.on("init_settings",(a,r,i)=>{settingsData=a,defaultSettingsData=i,spotifyCredentials=r,socket.off("init_settings"),e({settingsData,defaultSettingsData,spotifyCredentials})})})}function getInitialPreviewVolume(){let e=parseInt(localStorage.getItem("previewVolume"));return isNaN(e)&&(e=80,localStorage.setItem("previewVolume",e.toString())),e}function checkInitialSlimDownloads(){return localStorage.getItem("slimDownloads")==="true"}function checkInitialSlimSidebar(){return localStorage.getItem("slimSidebar")==="true"}const state=()=>({currentCommit:null,latestCommit:null,updateAvailable:!1,deemixVersion:null,previewVolume:getInitialPreviewVolume(),hasSlimDownloads:checkInitialSlimDownloads(),hasSlimSidebar:checkInitialSlimSidebar()}),actions={setAppInfo({commit:e},n){e("SET_CURRENT_COMMIT",n.currentCommit),e("SET_LATEST_COMMIT",n.latestCommit),e("SET_UPDATE_AVAILABLE",n.updateAvailable),e("SET_DEEMIX_VERSION",n.deemixVersion)},setPreviewVolume({commit:e},n){e("SET_PREVIEW_VOLUME",n),localStorage.setItem("previewVolume",n.toString())},setSlimDownloads({commit:e},n){e("SET_SLIM_DOWNLOADS",n),localStorage.setItem("slimDownloads",n.toString())},setSlimSidebar({commit:e},n){e("SET_SLIM_SIDEBAR",n),localStorage.setItem("slimSidebar",n.toString()),Array.from(document.getElementsByClassName("toastify")).forEach(a=>{a.style.transform=`translate(${n?"3rem":"14rem"}, 0)`})}},getters={getAppInfo:e=>e,getPreviewVolume:e=>e.previewVolume,getSlimDownloads:e=>e.hasSlimDownloads,getSlimSidebar:e=>e.hasSlimSidebar},mutations={SET_CURRENT_COMMIT(e,n){e.currentCommit=n},SET_LATEST_COMMIT(e,n){e.latestCommit=n},SET_UPDATE_AVAILABLE(e,n){e.updateAvailable=n},SET_DEEMIX_VERSION(e,n){e.deemixVersion=n},SET_PREVIEW_VOLUME(e,n){e.previewVolume=n},SET_SLIM_DOWNLOADS(e,n){e.hasSlimDownloads=n},SET_SLIM_SIDEBAR(e,n){e.hasSlimSidebar=n}};var appInfo={state,getters,actions,mutations};const getDefaultState=()=>({arl:localStorage.getItem("arl")||"",status:null,user:{id:null,name:"",picture:""},clientMode:!1}),state$1=getDefaultState(),actions$1={login({commit:e,dispatch:n},a){const{arl:r,user:i,status:s}=a;n("setARL",{arl:r}),e("SET_USER",i),e("SET_STATUS",s)},logout({commit:e}){localStorage.removeItem("arl"),e("RESET_LOGIN")},setARL({commit:e},n){let{arl:a,saveOnLocalStorage:r}=n;r=typeof r=="undefined"?!0:r,e("SET_ARL",a),r&&localStorage.setItem("arl",a)},removeARL({commit:e}){e("SET_ARL",""),localStorage.removeItem("arl")},setUser({commit:e},n){e("SET_USER",n)},setClientMode({commit:e},n){e("SET_CLIENT_MODE",n)}},getters$1={getARL:e=>e.arl,getUser:e=>e.user,getClientMode:e=>e.clientMode,isLoggedIn:e=>!!e.arl},mutations$1={SET_ARL(e,n){e.arl=n},SET_STATUS(e,n){e.status=n},SET_USER(e,n){e.user=n},SET_CLIENT_MODE(e,n){e.clientMode=n},RESET_LOGIN(e){let n=e.clientMode;Object.assign(e,getDefaultState()),e.clientMode=n}};var login={state:state$1,getters:getters$1,actions:actions$1,mutations:mutations$1};const state$2=()=>({artist:"",bitrate:"",cover:"",downloaded:0,errors:[],failed:0,id:"",progress:0,silent:!0,size:0,title:"",type:"",uuid:""}),actions$2={setErrors({commit:e},n){e("SET_ERRORS",n)}},getters$2={getErrors:e=>e},mutations$2={SET_ERRORS(e,n){for(const a in e)if(e.hasOwnProperty(a)){const r=n[a];e[a]=r}}};var errors={state:state$2,getters:getters$2,actions:actions$2,mutations:mutations$2};Vue.use(index$2);var store=new index$2.Store({modules:{appInfo,login,errors},strict:!1});const socket=io.connect(window.location.href);socket.on("init_update",e=>{store.dispatch("setAppInfo",e)});var __vue_render__=function(e,n){var a=n._c;return a("div",{directives:[{name:"show",rawName:"v-show",value:!n.props.hidden,expression:"!props.hidden"}],staticClass:"flex justify-center items-center flex-col flex-1 h-full",class:n.props.additionalClasses},[a("span",{staticClass:"mb-5"},[n._v(n._s(n.props.text||"Loading..."))]),n._v(" "),n._m(0)])},__vue_staticRenderFns__=[function(e,n){var a=n._c;return a("div",{staticClass:"lds-ring"},[a("div"),n._v(" "),a("div"),n._v(" "),a("div"),n._v(" "),a("div")])}];const __vue_inject_styles__=function(e){if(!e)return;e("data-v-20045564_0",{source:".lds-ring[data-v-20045564]{display:inline-block;position:relative;width:80px;height:80px}.lds-ring div[data-v-20045564]{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:8px solid #fff;border-radius:50%;animation:lds-ring-data-v-20045564 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:#fff transparent transparent transparent}.lds-ring div[data-v-20045564]:nth-child(1){animation-delay:-.45s}.lds-ring div[data-v-20045564]:nth-child(2){animation-delay:-.3s}.lds-ring div[data-v-20045564]:nth-child(3){animation-delay:-.15s}@keyframes lds-ring-data-v-20045564{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}",map:void 0,media:void 0})},__vue_scope_id__="data-v-20045564",__vue_module_identifier__=void 0,__vue_is_functional_template__=!0;function __vue_normalize__(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="BaseLoadingPlaceholder.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__.styles||(__vue_create_injector__.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` /*# sourceURL=`+s.map.sources[0]+" */",o+=` /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),a&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),a&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(a&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` -`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var BaseLoadingPlaceholder=__vue_normalize__({render:__vue_render__,staticRenderFns:__vue_staticRenderFns__},__vue_inject_styles__,{},__vue_scope_id__,__vue_is_functional_template__,__vue_module_identifier__,__vue_create_injector__);function sendAddToQueue(e,n=null){if(!e)throw new Error("No URL given to sendAddToQueue function!");socket.emit("addToQueue",{url:e,bitrate:n},()=>{})}function aggregateDownloadLinks(e){let n=[];return e.forEach(a=>{n.push(a.link)}),n.join(";")}var Downloads={sendAddToQueue};function generatePath(e){if(!e)throw new Error("No element passed to the generatePath function!");let n=[e];for(;(e=e.parentNode)&&e!==document;)n.push(e);return n}function isValidURL(e){let n=e.toLowerCase();if(n.startsWith("http")){if(n.indexOf("deezer.com")>=0||n.indexOf("deezer.page.link")>=0||n.indexOf("open.spotify.com")>=0||n.indexOf("link.tospotify.com")>=0)return!0}else if(n.startsWith("spotify:"))return!0;return!1}function convertDuration(e){let n,a;return n=Math.floor(e/60),a=e-n*60,a<10&&(a="0"+a),n+":"+a}function convertDurationSeparated(e){let n,a,r;return a=Math.floor(e/60),n=Math.floor(a/60),r=e-a*60,a-=n*60,[n,a,r]}function numberWithDots(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,".")}function debounce(e,n,a){var r;return function(){var i=this,s=arguments,l=function(){r=null,a||e.apply(i,s)},c=a&&!r;clearTimeout(r),r=setTimeout(l,n),c&&e.apply(i,s)}}function copyToClipboard(e){const n=document.createElement("input");document.body.appendChild(n),n.setAttribute("type","text"),n.setAttribute("value",e),n.select(),n.setSelectionRange(0,99999),document.execCommand("copy"),n.remove()}function getPropertyWithFallback(e,...n){for(const a of n){let r=/\./.test(a),i=r?a.split(".").reduce((s,l)=>{if(s)return s[l]},e):e[a];if(typeof i!="undefined")return i}return null}var Utils={isValidURL,convertDuration,convertDurationSeparated,numberWithDots,debounce};const downloadQualities=[{objName:"flac",label:"FLAC",value:9},{objName:"320kbps",label:"MP3 320kbps",value:3},{objName:"128kbps",label:"MP3 128kbps",value:1},{objName:"realityAudioHQ",label:"360 Reality Audio [HQ]",value:15},{objName:"realityAudioMQ",label:"360 Reality Audio [MQ]",value:14},{objName:"realityAudioLQ",label:"360 Reality Audio [LQ]",value:13}];var script={data(){return{menuOpen:!1,xPos:0,yPos:0,deezerHref:"",generalHref:"",imgSrc:""}},computed:{options(){const e={cut:{label:this.$t("globals.cut"),show:!1,position:1,action:()=>{document.execCommand("Cut")}},copy:{label:this.$t("globals.copy"),show:!1,position:2,action:()=>{document.execCommand("Copy")}},copyLink:{label:this.$t("globals.copyLink"),show:!1,position:3,action:()=>{copyToClipboard(this.generalHref)}},copyImageLink:{label:this.$t("globals.copyImageLink"),show:!1,position:4,action:()=>{copyToClipboard(this.imgSrc)}},copyDeezerLink:{label:this.$t("globals.copyDeezerLink"),show:!1,position:5,action:()=>{copyToClipboard(this.deezerHref)}},paste:{label:this.$t("globals.paste"),show:!1,position:6,action:()=>{clipboard in navigator?navigator.clipboard.readText().then(a=>{document.execCommand("insertText",void 0,a)}):document.execCommand("paste")}}};let n=Object.values(e).length+1;return downloadQualities.forEach((a,r)=>{e[a.objName]={label:`${this.$t("globals.download",{thing:a.label})}`,show:!1,position:n+r,action:sendAddToQueue.bind(null,this.deezerHref,a.value)}}),e},sortedOptions(){return Object.values(this.options).sort((e,n)=>e.position{this.menuOpen=!1,this.options.copyLink.show=!1,this.options.copyDeezerLink.show=!1,this.options.copyImageLink.show=!1,downloadQualities.forEach(e=>{this.options[e.objName].show=!1})}).catch(e=>{console.error(e)})},positionMenu(e,n){this.xPos=`${e}px`,this.yPos=`${n}px`,this.$nextTick().then(()=>{const{innerHeight:a,innerWidth:r}=window,i=e+this.$refs.contextMenu.getBoundingClientRect().width,s=n+this.$refs.contextMenu.getBoundingClientRect().height;if(i>r){const l=i-r+15;this.xPos=`${e-l}px`}if(s>a){const l=s-a+15;this.yPos=`${n-l}px`}})},showDeezerOptions(){this.options.copyDeezerLink.show=!0,downloadQualities.forEach(e=>{this.options[e.objName].show=!0})}}};const __vue_script__=script;var __vue_render__$1=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.menuOpen,expression:"menuOpen"}],ref:"contextMenu",staticClass:"context-menu",style:{top:e.yPos,left:e.xPos}},e._l(e.sortedOptions,function(r){return a("button",{directives:[{name:"show",rawName:"v-show",value:r.show,expression:"option.show"}],key:r.label,staticClass:"btn menu-option",on:{click:function(i){return i.preventDefault(),r.action(i)}}},[a("span",{staticClass:"menu-option__text"},[e._v(e._s(r.label))])])}),0)},__vue_staticRenderFns__$1=[];const __vue_inject_styles__$1=function(e){if(!e)return;e("data-v-69d14104_0",{source:".context-menu[data-v-69d14104]{position:absolute;top:0;left:0;min-width:100px;border-radius:7px;background:var(--secondary-background);box-shadow:4px 10px 18px 0 rgba(0,0,0,.15);overflow:hidden;z-index:10000}.menu-option[data-v-69d14104]{display:flex;align-items:center;width:100%;height:40px;padding-left:10px;padding-right:10px;color:var(--foreground);cursor:pointer}.menu-option[data-v-69d14104]:hover{background:var(--table-highlight);filter:brightness(150%)}.menu-option__text[data-v-69d14104]{text-transform:capitalize}button[data-v-69d14104]{color:var(--primary-text);color:unset;background-color:var(--primary-color);background-color:unset;min-width:unset;position:unset;border:unset;border-radius:unset;font-family:unset;font-weight:unset;font-size:unset;padding:unset;margin-right:unset;height:unset;text-transform:unset;cursor:unset;transition:unset}button[data-v-69d14104]:focus{outline:0}button[data-v-69d14104]:active{background-color:unset;transform:unset}button[data-v-69d14104]:hover{background:unset;border:unset}",map:void 0,media:void 0})},__vue_scope_id__$1="data-v-69d14104",__vue_module_identifier__$1=void 0,__vue_is_functional_template__$1=!1;function __vue_normalize__$1(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="TheContextMenu.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__$1(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__$1.styles||(__vue_create_injector__$1.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` +`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var BaseLoadingPlaceholder=__vue_normalize__({render:__vue_render__,staticRenderFns:__vue_staticRenderFns__},__vue_inject_styles__,{},__vue_scope_id__,__vue_is_functional_template__,__vue_module_identifier__,__vue_create_injector__);function sendAddToQueue(e,n=null){if(!e)throw new Error("No URL given to sendAddToQueue function!");socket.emit("addToQueue",{url:e,bitrate:n},()=>{})}function aggregateDownloadLinks(e){let n=[];return e.forEach(a=>{n.push(a.link)}),n.join(";")}function generatePath(e){if(!e)throw new Error("No element passed to the generatePath function!");let n=[e];for(;(e=e.parentNode)&&e!==document;)n.push(e);return n}function isValidURL(e){let n=e.toLowerCase();if(n.startsWith("http")){if(n.indexOf("deezer.com")>=0||n.indexOf("deezer.page.link")>=0||n.indexOf("open.spotify.com")>=0||n.indexOf("link.tospotify.com")>=0)return!0}else if(n.startsWith("spotify:"))return!0;return!1}function convertDuration(e){let n,a;return n=Math.floor(e/60),a=e-n*60,a<10&&(a="0"+a),n+":"+a}function convertDurationSeparated(e){let n,a,r;return a=Math.floor(e/60),n=Math.floor(a/60),r=e-a*60,a-=n*60,[n,a,r]}function numberWithDots(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,".")}function debounce(e,n,a){var r;return function(){var i=this,s=arguments,l=function(){r=null,a||e.apply(i,s)},c=a&&!r;clearTimeout(r),r=setTimeout(l,n),c&&e.apply(i,s)}}function copyToClipboard(e){const n=document.createElement("input");document.body.appendChild(n),n.setAttribute("type","text"),n.setAttribute("value",e),n.select(),n.setSelectionRange(0,99999),document.execCommand("copy"),n.remove()}function getPropertyWithFallback(e,...n){for(const a of n){let r=/\./.test(a),i=r?a.split(".").reduce((s,l)=>{if(s)return s[l]},e):e[a];if(typeof i!="undefined")return i}return null}var Utils={isValidURL,convertDuration,convertDurationSeparated,numberWithDots,debounce};const downloadQualities=[{objName:"flac",label:"FLAC",value:9},{objName:"320kbps",label:"MP3 320kbps",value:3},{objName:"128kbps",label:"MP3 128kbps",value:1},{objName:"realityAudioHQ",label:"360 Reality Audio [HQ]",value:15},{objName:"realityAudioMQ",label:"360 Reality Audio [MQ]",value:14},{objName:"realityAudioLQ",label:"360 Reality Audio [LQ]",value:13}];var script={data(){return{menuOpen:!1,xPos:0,yPos:0,deezerHref:"",generalHref:"",imgSrc:""}},computed:{options(){const e={cut:{label:this.$t("globals.cut"),show:!1,position:1,action:()=>{document.execCommand("Cut")}},copy:{label:this.$t("globals.copy"),show:!1,position:2,action:()=>{document.execCommand("Copy")}},copyLink:{label:this.$t("globals.copyLink"),show:!1,position:3,action:()=>{copyToClipboard(this.generalHref)}},copyImageLink:{label:this.$t("globals.copyImageLink"),show:!1,position:4,action:()=>{copyToClipboard(this.imgSrc)}},copyDeezerLink:{label:this.$t("globals.copyDeezerLink"),show:!1,position:5,action:()=>{copyToClipboard(this.deezerHref)}},paste:{label:this.$t("globals.paste"),show:!1,position:6,action:()=>{clipboard in navigator?navigator.clipboard.readText().then(a=>{document.execCommand("insertText",void 0,a)}):document.execCommand("paste")}}};let n=Object.values(e).length+1;return downloadQualities.forEach((a,r)=>{e[a.objName]={label:`${this.$t("globals.download",{thing:a.label})}`,show:!1,position:n+r,action:sendAddToQueue.bind(null,this.deezerHref,a.value)}}),e},sortedOptions(){return Object.values(this.options).sort((e,n)=>e.position{this.menuOpen=!1,this.options.copyLink.show=!1,this.options.copyDeezerLink.show=!1,this.options.copyImageLink.show=!1,downloadQualities.forEach(e=>{this.options[e.objName].show=!1})}).catch(e=>{console.error(e)})},positionMenu(e,n){this.xPos=`${e}px`,this.yPos=`${n}px`,this.$nextTick().then(()=>{const{innerHeight:a,innerWidth:r}=window,i=e+this.$refs.contextMenu.getBoundingClientRect().width,s=n+this.$refs.contextMenu.getBoundingClientRect().height;if(i>r){const l=i-r+15;this.xPos=`${e-l}px`}if(s>a){const l=s-a+15;this.yPos=`${n-l}px`}})},showDeezerOptions(){this.options.copyDeezerLink.show=!0,downloadQualities.forEach(e=>{this.options[e.objName].show=!0})}}};const __vue_script__=script;var __vue_render__$1=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.menuOpen,expression:"menuOpen"}],ref:"contextMenu",staticClass:"context-menu",style:{top:e.yPos,left:e.xPos}},e._l(e.sortedOptions,function(r){return a("button",{directives:[{name:"show",rawName:"v-show",value:r.show,expression:"option.show"}],key:r.label,staticClass:"btn menu-option",on:{click:function(i){return i.preventDefault(),r.action(i)}}},[a("span",{staticClass:"menu-option__text"},[e._v(e._s(r.label))])])}),0)},__vue_staticRenderFns__$1=[];const __vue_inject_styles__$1=function(e){if(!e)return;e("data-v-69d14104_0",{source:".context-menu[data-v-69d14104]{position:absolute;top:0;left:0;min-width:100px;border-radius:7px;background:var(--secondary-background);box-shadow:4px 10px 18px 0 rgba(0,0,0,.15);overflow:hidden;z-index:10000}.menu-option[data-v-69d14104]{display:flex;align-items:center;width:100%;height:40px;padding-left:10px;padding-right:10px;color:var(--foreground);cursor:pointer}.menu-option[data-v-69d14104]:hover{background:var(--table-highlight);filter:brightness(150%)}.menu-option__text[data-v-69d14104]{text-transform:capitalize}button[data-v-69d14104]{color:var(--primary-text);color:unset;background-color:var(--primary-color);background-color:unset;min-width:unset;position:unset;border:unset;border-radius:unset;font-family:unset;font-weight:unset;font-size:unset;padding:unset;margin-right:unset;height:unset;text-transform:unset;cursor:unset;transition:unset}button[data-v-69d14104]:focus{outline:0}button[data-v-69d14104]:active{background-color:unset;transform:unset}button[data-v-69d14104]:hover{background:unset;border:unset}",map:void 0,media:void 0})},__vue_scope_id__$1="data-v-69d14104",__vue_module_identifier__$1=void 0,__vue_is_functional_template__$1=!1;function __vue_normalize__$1(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="TheContextMenu.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__$1(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__$1.styles||(__vue_create_injector__$1.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` /*# sourceURL=`+s.map.sources[0]+" */",o+=` /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),a&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),a&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(a&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` -`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var TheContextMenu=__vue_normalize__$1({render:__vue_render__$1,staticRenderFns:__vue_staticRenderFns__$1},__vue_inject_styles__$1,__vue_script__,__vue_scope_id__$1,__vue_is_functional_template__$1,__vue_module_identifier__$1,__vue_create_injector__$1),EventBus=new Vue;async function adjustVolume(e,n,{duration:a=1e3,easing:r=swing,interval:i=13}={}){const s=e.volume,l=n-s;if(!l||!a||!r||!i)return e.volume=n,Promise.resolve();const c=Math.floor(a/i);let o=1;return new Promise(u=>{const d=setInterval(()=>{e.volume=s+r(o/c)*l,++o===c&&(clearInterval(d),u())},i)})}function swing(e){return .5-Math.cos(e*Math.PI)/2}function playPausePreview(e){EventBus.$emit("trackPreview:playPausePreview",e)}function previewMouseEnter(e){EventBus.$emit("trackPreview:previewMouseEnter",e)}function previewMouseLeave(e){EventBus.$emit("trackPreview:previewMouseLeave",e)}var script$1={data:()=>({previewStopped:!1}),computed:{...mapGetters({previewVolume:"getPreviewVolume"})},mounted(){this.$refs.preview.volume=1,this.$router.beforeEach((e,n,a)=>{this.stopStackedTabsPreview(),a()}),EventBus.$on("trackPreview:playPausePreview",this.playPausePreview),EventBus.$on("trackPreview:previewMouseEnter",this.previewMouseEnter),EventBus.$on("trackPreview:previewMouseLeave",this.previewMouseLeave)},methods:{async onCanPlay(){await this.$refs.preview.play(),this.previewStopped=!1,await adjustVolume(this.$refs.preview,this.previewVolume/100,{duration:500})},async onTimeUpdate(){if(isNaN(this.$refs.preview.duration))return;let e=this.$refs.preview.duration;if(isFinite(e)||(e=30),e-this.$refs.preview.currentTime>=1)return;if(this.previewStopped)return;await adjustVolume(this.$refs.preview,0,{duration:800}),this.previewStopped=!0,document.querySelectorAll("a[playing] > .preview_controls").forEach(n=>{n.style.opacity=0}),document.querySelectorAll("*").forEach(n=>{n.removeAttribute("playing")}),document.querySelectorAll(".preview_controls, .preview_playlist_controls").forEach(n=>{n.textContent="play_arrow"})},async playPausePreview(e){e.preventDefault(),e.stopPropagation();const{currentTarget:n}=e;var a=n.tagName=="I"?n:n.querySelector("i");n.hasAttribute("playing")?this.$refs.preview.paused?(this.$refs.preview.play(),this.previewStopped=!1,a.innerText="pause",await adjustVolume(this.$refs.preview,this.previewVolume/100,{duration:500})):(this.previewStopped=!0,a.innerText="play_arrow",await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause()):(document.querySelectorAll("*").forEach(r=>{r.removeAttribute("playing")}),n.setAttribute("playing",!0),document.querySelectorAll(".preview_controls, .preview_playlist_controls").forEach(r=>{r.textContent="play_arrow"}),document.querySelectorAll(".preview_controls").forEach(r=>{r.style.opacity=0}),a.innerText="pause",a.style.opacity=1,this.previewStopped=!1,await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause(),document.getElementById("preview-track_source").src=n.getAttribute("data-preview"),this.$refs.preview.load())},async stopStackedTabsPreview(){let e=Array.prototype.slice.call(document.querySelectorAll(".preview_playlist_controls[playing]"));if(e.length===0)return;await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause(),this.previewStopped=!0,e.forEach(n=>{n.removeAttribute("playing"),n.innerText="play_arrow"})},previewMouseEnter(e){e.currentTarget.style.opacity=1},previewMouseLeave(e){const{currentTarget:n}=e,a=n.parentElement.hasAttribute("playing");(a&&this.previewStopped||!a)&&(n.style.opacity=0)}}};const __vue_script__$1=script$1;var __vue_render__$2=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("audio",{ref:"preview",attrs:{id:"preview-track"},on:{canplay:e.onCanPlay,timeupdate:e.onTimeUpdate}},[a("source",{attrs:{id:"preview-track_source",src:"",type:"audio/mpeg"}})])},__vue_staticRenderFns__$2=[];const __vue_inject_styles__$2=void 0,__vue_scope_id__$2=void 0,__vue_is_functional_template__$2=!1;function __vue_normalize__$2(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};return o.__file="TheTrackPreview.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r,o}var TheTrackPreview=__vue_normalize__$2({render:__vue_render__$2,staticRenderFns:__vue_staticRenderFns__$2},__vue_inject_styles__$2,__vue_script__$1,__vue_scope_id__$2,__vue_is_functional_template__$2),script$2={data:()=>({open:!1,url:""}),mounted(){this.$root.$on("QualityModal:open",this.openModal),this.$refs.modal.addEventListener("webkitAnimationEnd",this.handleAnimationEnd)},methods:{tryToDownloadTrack(e){const{target:n}=e;if(this.$refs.modal.classList.add("animated","fadeOut"),!n.matches(".quality-button"))return;Downloads.sendAddToQueue(this.url,n.dataset.qualityValue)},openModal(e){this.url=e,this.open=!0,this.$refs.modal.classList.add("animated","fadeIn")},handleAnimationEnd(e){const{animationName:n}=e;if(this.$refs.modal.classList.remove("animated",n),n==="fadeIn")return;this.open=!1}}};const __vue_script__$2=script$2;var __vue_render__$3=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.open,expression:"open"}],ref:"modal",staticClass:"smallmodal",attrs:{id:"modal_quality"},on:{click:function(r){return e.tryToDownloadTrack(r)}}},[a("div",{staticClass:"smallmodal-content"},[a("button",{staticClass:"btn btn-primary quality-button",attrs:{"data-quality-value":"9"}},[e._v(` +`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var TheContextMenu=__vue_normalize__$1({render:__vue_render__$1,staticRenderFns:__vue_staticRenderFns__$1},__vue_inject_styles__$1,__vue_script__,__vue_scope_id__$1,__vue_is_functional_template__$1,__vue_module_identifier__$1,__vue_create_injector__$1),EventBus=new Vue;async function adjustVolume(e,n,{duration:a=1e3,easing:r=swing,interval:i=13}={}){const s=e.volume,l=n-s;if(!l||!a||!r||!i)return e.volume=n,Promise.resolve();const c=Math.floor(a/i);let o=1;return new Promise(u=>{const d=setInterval(()=>{e.volume=s+r(o/c)*l,++o===c&&(clearInterval(d),u())},i)})}function swing(e){return .5-Math.cos(e*Math.PI)/2}function playPausePreview(e){EventBus.$emit("trackPreview:playPausePreview",e)}function previewMouseEnter(e){EventBus.$emit("trackPreview:previewMouseEnter",e)}function previewMouseLeave(e){EventBus.$emit("trackPreview:previewMouseLeave",e)}var script$1={data:()=>({previewStopped:!1}),computed:{...mapGetters({previewVolume:"getPreviewVolume"})},mounted(){this.$refs.preview.volume=1,this.$router.beforeEach((e,n,a)=>{this.stopStackedTabsPreview(),a()}),EventBus.$on("trackPreview:playPausePreview",this.playPausePreview),EventBus.$on("trackPreview:previewMouseEnter",this.previewMouseEnter),EventBus.$on("trackPreview:previewMouseLeave",this.previewMouseLeave)},methods:{async onCanPlay(){await this.$refs.preview.play(),this.previewStopped=!1,await adjustVolume(this.$refs.preview,this.previewVolume/100,{duration:500})},async onTimeUpdate(){if(isNaN(this.$refs.preview.duration))return;let e=this.$refs.preview.duration;if(isFinite(e)||(e=30),e-this.$refs.preview.currentTime>=1)return;if(this.previewStopped)return;await adjustVolume(this.$refs.preview,0,{duration:800}),this.previewStopped=!0,document.querySelectorAll("a[playing] > .preview_controls").forEach(n=>{n.style.opacity=0}),document.querySelectorAll("*").forEach(n=>{n.removeAttribute("playing")}),document.querySelectorAll(".preview_controls, .preview_playlist_controls").forEach(n=>{n.textContent="play_arrow"})},async playPausePreview(e){e.preventDefault(),e.stopPropagation();const{currentTarget:n}=e;var a=n.tagName=="I"?n:n.querySelector("i");n.hasAttribute("playing")?this.$refs.preview.paused?(this.$refs.preview.play(),this.previewStopped=!1,a.innerText="pause",await adjustVolume(this.$refs.preview,this.previewVolume/100,{duration:500})):(this.previewStopped=!0,a.innerText="play_arrow",await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause()):(document.querySelectorAll("*").forEach(r=>{r.removeAttribute("playing")}),n.setAttribute("playing",!0),document.querySelectorAll(".preview_controls, .preview_playlist_controls").forEach(r=>{r.textContent="play_arrow"}),document.querySelectorAll(".preview_controls").forEach(r=>{r.style.opacity=0}),a.innerText="pause",a.style.opacity=1,this.previewStopped=!1,await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause(),document.getElementById("preview-track_source").src=n.getAttribute("data-preview"),this.$refs.preview.load())},async stopStackedTabsPreview(){let e=Array.prototype.slice.call(document.querySelectorAll(".preview_playlist_controls[playing]"));if(e.length===0)return;await adjustVolume(this.$refs.preview,0,{duration:250}),this.$refs.preview.pause(),this.previewStopped=!0,e.forEach(n=>{n.removeAttribute("playing"),n.innerText="play_arrow"})},previewMouseEnter(e){e.currentTarget.style.opacity=1},previewMouseLeave(e){const{currentTarget:n}=e,a=n.parentElement.hasAttribute("playing");(a&&this.previewStopped||!a)&&(n.style.opacity=0)}}};const __vue_script__$1=script$1;var __vue_render__$2=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("audio",{ref:"preview",attrs:{id:"preview-track"},on:{canplay:e.onCanPlay,timeupdate:e.onTimeUpdate}},[a("source",{attrs:{id:"preview-track_source",src:"",type:"audio/mpeg"}})])},__vue_staticRenderFns__$2=[];const __vue_inject_styles__$2=void 0,__vue_scope_id__$2=void 0,__vue_is_functional_template__$2=!1;function __vue_normalize__$2(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};return o.__file="TheTrackPreview.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r,o}var TheTrackPreview=__vue_normalize__$2({render:__vue_render__$2,staticRenderFns:__vue_staticRenderFns__$2},__vue_inject_styles__$2,__vue_script__$1,__vue_scope_id__$2,__vue_is_functional_template__$2),script$2={data:()=>({open:!1,url:""}),mounted(){this.$root.$on("QualityModal:open",this.openModal),this.$refs.modal.addEventListener("webkitAnimationEnd",this.handleAnimationEnd)},methods:{tryToDownloadTrack(e){const{target:n}=e;if(this.$refs.modal.classList.add("animated","fadeOut"),!n.matches(".quality-button"))return;sendAddToQueue(this.url,n.dataset.qualityValue)},openModal(e){this.url=e,this.open=!0,this.$refs.modal.classList.add("animated","fadeIn")},handleAnimationEnd(e){const{animationName:n}=e;if(this.$refs.modal.classList.remove("animated",n),n==="fadeIn")return;this.open=!1}}};const __vue_script__$2=script$2;var __vue_render__$3=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{directives:[{name:"show",rawName:"v-show",value:e.open,expression:"open"}],ref:"modal",staticClass:"smallmodal",attrs:{id:"modal_quality"},on:{click:function(r){return e.tryToDownloadTrack(r)}}},[a("div",{staticClass:"smallmodal-content"},[a("button",{staticClass:"btn btn-primary quality-button",attrs:{"data-quality-value":"9"}},[e._v(` `+e._s(e.$t("globals.download",{thing:"FLAC"}))+` `)]),e._v(" "),a("button",{staticClass:"btn btn-primary quality-button",attrs:{"data-quality-value":"3"}},[e._v(` `+e._s(e.$t("globals.download",{thing:"MP3 320kbps"}))+` @@ -2475,7 +2475,7 @@ a { `+e._s(e.$t("globals.download",{thing:"360 Reality Audio [MQ]"}))+` `)]),e._v(" "),a("button",{staticClass:"btn btn-primary quality-button",attrs:{"data-quality-value":"13"}},[e._v(` `+e._s(e.$t("globals.download",{thing:"360 Reality Audio [LQ]"}))+` - `)])])])},__vue_staticRenderFns__$3=[];const __vue_inject_styles__$3=function(e){if(!e)return;e("data-v-e99efdea_0",{source:".smallmodal{position:fixed;z-index:1250;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.4);animation-duration:.3s}.smallmodal-content{--modal-content-width:95%;background-color:transparent;margin:auto;width:var(--modal-content-width);position:relative;top:50%;transform:translateY(-50%)}@media only screen and (min-width:601px){.smallmodal-content{--modal-content-width:85%}}@media only screen and (min-width:993px){.smallmodal-content{--modal-content-width:70%}}.smallmodal-content button{width:100%;margin-bottom:8px}",map:void 0,media:void 0})},__vue_scope_id__$3=void 0,__vue_module_identifier__$2=void 0,__vue_is_functional_template__$3=!1;function __vue_normalize__$3(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="TheQualityModal.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__$2(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__$2.styles||(__vue_create_injector__$2.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` + `)])])])},__vue_staticRenderFns__$3=[];const __vue_inject_styles__$3=function(e){if(!e)return;e("data-v-bc545508_0",{source:".smallmodal{position:fixed;z-index:1250;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,.4);animation-duration:.3s}.smallmodal-content{--modal-content-width:95%;background-color:transparent;margin:auto;width:var(--modal-content-width);position:relative;top:50%;transform:translateY(-50%)}@media only screen and (min-width:601px){.smallmodal-content{--modal-content-width:85%}}@media only screen and (min-width:993px){.smallmodal-content{--modal-content-width:70%}}.smallmodal-content button{width:100%;margin-bottom:8px}",map:void 0,media:void 0})},__vue_scope_id__$3=void 0,__vue_module_identifier__$2=void 0,__vue_is_functional_template__$3=!1;function __vue_normalize__$3(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="TheQualityModal.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__$2(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__$2.styles||(__vue_create_injector__$2.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` /*# sourceURL=`+s.map.sources[0]+" */",o+=` /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),a&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),a&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(a&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` `);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var TheQualityModal=__vue_normalize__$3({render:__vue_render__$3,staticRenderFns:__vue_staticRenderFns__$3},__vue_inject_styles__$3,__vue_script__$2,__vue_scope_id__$3,__vue_is_functional_template__$3,__vue_module_identifier__$2,__vue_create_injector__$2),toString$1=function(e){return Object.prototype.toString.call(e)};function isNative$1(e){return typeof e=="function"&&/native code/.test(e.toString())}var hasSymbol$1=typeof Symbol!="undefined"&&isNative$1(Symbol)&&typeof Reflect!="undefined"&&isNative$1(Reflect.ownKeys),noopFn=function(e){return e},sharedPropertyDefinition$1={enumerable:!0,configurable:!0,get:noopFn,set:noopFn};function proxy$1(e,n,a){var r=a.get,i=a.set;sharedPropertyDefinition$1.get=r||noopFn,sharedPropertyDefinition$1.set=i||noopFn,Object.defineProperty(e,n,sharedPropertyDefinition$1)}function def$1(e,n,a,r){Object.defineProperty(e,n,{value:a,enumerable:!!r,writable:!0,configurable:!0})}function hasOwn$1(e,n){return Object.hasOwnProperty.call(e,n)}function assert(e,n){if(!e)throw new Error("[vue-composition-api] "+n)}function isArray(e){return Array.isArray(e)}function isObject$2(e){return e!==null&&typeof e=="object"}function isPlainObject$1(e){return toString$1(e)==="[object Object]"}function isFunction(e){return typeof e=="function"}function warn$1(e,n){Vue.util.warn(e,n)}function logError$1(e,n,a){if(typeof window!="undefined"&&typeof console!="undefined")console.error(e);else throw e}var vueDependency=void 0;try{var requiredVue=require("vue");requiredVue&&isVue(requiredVue)?vueDependency=requiredVue:requiredVue&&"default"in requiredVue&&isVue(requiredVue.default)&&(vueDependency=requiredVue.default)}catch(e){}var vueConstructor=null,currentInstance=null,PluginInstalledFlag="__composition_api_installed__";function isVue(e){return e&&typeof e=="function"&&e.name==="Vue"}function isVueRegistered(e){return hasOwn$1(e,PluginInstalledFlag)}function getVueConstructor(){return vueConstructor}function getRegisteredVueOrDefault(){var e=vueConstructor||vueDependency;return e}function setVueConstructor(e){vueConstructor=e,Object.defineProperty(e,PluginInstalledFlag,{configurable:!0,writable:!0,value:!0})}function getCurrentInstance(){return currentInstance}function setCurrentInstance(e){currentInstance=e}function currentVMInFn(e){var n=getCurrentInstance();return n}function defineComponentInstance(e,n){n===void 0&&(n={});var a=e.config.silent;e.config.silent=!0;var r=new e(n);return e.config.silent=a,r}function isComponentInstance(e){var n=getVueConstructor();return n&&e instanceof n}function createSlotProxy(e,n){return function(){for(var a=[],r=0;r*[data-v-d52ba1f8],.settings-container__third>*[data-v-d52ba1f8]{margin-bottom:1rem}.with-checkbox[data-v-d52ba1f8]{display:flex;align-items:center}.with-checkbox [type=checkbox][data-v-d52ba1f8]{cursor:pointer}.with-checkbox .checkbox-text[data-v-d52ba1f8]{margin-left:10px;cursor:pointer;user-select:none}.input-group .input-group-text[data-v-d52ba1f8]{margin-bottom:.5rem}",map:void 0,media:void 0})},__vue_scope_id__$u="data-v-d52ba1f8",__vue_module_identifier__$e=void 0,__vue_is_functional_template__$u=!1;function __vue_normalize__$u(e,n,a,r,i,s,l,c){const o=(typeof a=="function"?a.options:a)||{};o.__file="Settings.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,i&&(o.functional=!0)),o._scopeId=r;{let u;if(n&&(u=function(d){n.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(m,h){return u.call(h),d(m,h)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__$e(){const e=document.head||document.getElementsByTagName("head")[0],n=__vue_create_injector__$e.styles||(__vue_create_injector__$e.styles={}),a=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(i,s){if(document.querySelector('style[data-vue-ssr-id~="'+i+'"]'))return;const l=a?s.media||"default":i,c=n[l]||(n[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(i)){let o=s.source,u=c.ids.length;if(c.ids.push(i),s.map&&(o+=` /*# sourceURL=`+s.map.sources[0]+" */",o+=` /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),a&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),a&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(a&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` -`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var Settings=__vue_normalize__$u({render:__vue_render__$u,staticRenderFns:__vue_staticRenderFns__$u},__vue_inject_styles__$u,__vue_script__$s,__vue_scope_id__$u,__vue_is_functional_template__$u,__vue_module_identifier__$e,__vue_create_injector__$e),script$t={data(){return{title:"",metadata:"",release_date:"",label:"",explicit:!1,image:"",type:"empty",link:"",body:[]}},mounted(){socket.on("show_album",this.showAlbum),socket.on("show_playlist",this.showPlaylist),socket.on("show_spotifyplaylist",this.showSpotifyPlaylist)},methods:{playPausePreview,reset(){this.title="Loading...",this.image="",this.metadata="",this.label="",this.release_date="",this.explicit=!1,this.type="empty",this.body=[]},addToQueue(e){Downloads.sendAddToQueue(e.currentTarget.dataset.link)},toggleAll(e){this.body.forEach(n=>{n.type=="track"&&(n.selected=e.currentTarget.checked)})},selectedLinks(){var e=[];return this.body&&this.body.forEach(n=>{n.type=="track"&&n.selected&&e.push(this.type=="spotifyPlaylist"?n.uri:n.link)}),e.join(";")},convertDuration:Utils.convertDuration,showAlbum(e){this.reset();const{id:n,title:a,explicit_lyrics:r,label:i,artist:{name:s},tracks:l,tracks:{length:c},release_date:o,cover_xl:u}=e;this.type="album",this.link=`https://www.deezer.com/album/${n}`,this.title=a,this.explicit=r,this.label=i,this.metadata=`${s} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,this.release_date=o.substring(0,10),this.image=u,isEmpty(l)?this.body=null:this.body=l},showPlaylist(e){this.reset();const{id:n,title:a,picture_xl:r,creation_date:i,creator:{name:s},tracks:l,tracks:{length:c}}=e;this.type="playlist",this.link=`https://www.deezer.com/playlist/${n}`,this.title=a,this.image=r,this.release_date=i.substring(0,10),this.metadata=`${this.$t("globals.by",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},showSpotifyPlaylist(e){this.reset();const{uri:n,name:a,images:r,images:{length:i},owner:{display_name:s},tracks:l,tracks:{length:c}}=e;this.type="spotifyPlaylist",this.link=n,this.title=a,this.image=i?r[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",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},selectRow(e,n){n.selected=!n.selected}}};const __vue_script__$t=script$t;var __vue_render__$v=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{ref:"root",staticClass:"relative fixed-footer bg-background-main image-header"},[a("header",{style:{"background-image":"linear-gradient(to bottom, transparent 0%, var(--main-background) 100%), url('"+e.image+"')"}},[a("h1",{staticClass:"flex items-center m-0 text-5xl"},[e._v(` +`);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var Settings=__vue_normalize__$u({render:__vue_render__$u,staticRenderFns:__vue_staticRenderFns__$u},__vue_inject_styles__$u,__vue_script__$s,__vue_scope_id__$u,__vue_is_functional_template__$u,__vue_module_identifier__$e,__vue_create_injector__$e),script$t={data(){return{title:"",metadata:"",release_date:"",label:"",explicit:!1,image:"",type:"empty",link:"",body:[]}},mounted(){socket.on("show_album",this.showAlbum),socket.on("show_playlist",this.showPlaylist),socket.on("show_spotifyplaylist",this.showSpotifyPlaylist)},methods:{playPausePreview,reset(){this.title="Loading...",this.image="",this.metadata="",this.label="",this.release_date="",this.explicit=!1,this.type="empty",this.body=[]},addToQueue(e){sendAddToQueue(e.currentTarget.dataset.link)},toggleAll(e){this.body.forEach(n=>{n.type=="track"&&(n.selected=e.currentTarget.checked)})},selectedLinks(){var e=[];return this.body&&this.body.forEach(n=>{n.type=="track"&&n.selected&&e.push(this.type=="spotifyPlaylist"?n.uri:n.link)}),e.join(";")},convertDuration:Utils.convertDuration,showAlbum(e){this.reset();const{id:n,title:a,explicit_lyrics:r,label:i,artist:{name:s},tracks:l,tracks:{length:c},release_date:o,cover_xl:u}=e;this.type="album",this.link=`https://www.deezer.com/album/${n}`,this.title=a,this.explicit=r,this.label=i,this.metadata=`${s} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,this.release_date=o.substring(0,10),this.image=u,isEmpty(l)?this.body=null:this.body=l},showPlaylist(e){this.reset();const{id:n,title:a,picture_xl:r,creation_date:i,creator:{name:s},tracks:l,tracks:{length:c}}=e;this.type="playlist",this.link=`https://www.deezer.com/playlist/${n}`,this.title=a,this.image=r,this.release_date=i.substring(0,10),this.metadata=`${this.$t("globals.by",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},showSpotifyPlaylist(e){this.reset();const{uri:n,name:a,images:r,images:{length:i},owner:{display_name:s},tracks:l,tracks:{length:c}}=e;this.type="spotifyPlaylist",this.link=n,this.title=a,this.image=i?r[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",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},selectRow(e,n){n.selected=!n.selected}}};const __vue_script__$t=script$t;var __vue_render__$v=function(){var e=this,n=e.$createElement,a=e._self._c||n;return a("div",{ref:"root",staticClass:"relative fixed-footer bg-background-main image-header"},[a("header",{style:{"background-image":"linear-gradient(to bottom, transparent 0%, var(--main-background) 100%), url('"+e.image+"')"}},[a("h1",{staticClass:"flex items-center m-0 text-5xl"},[e._v(` `+e._s(e.title)+" "),e.explicit?a("i",{staticClass:"material-icons title-icon title-icon--right"},[e._v("explicit")]):e._e()]),e._v(" "),a("h2",{staticClass:"m-0 mb-3 text-lg"},[e.metadata?a("p",[e._v(e._s(e.metadata))]):e._e(),e._v(" "),e.release_date?a("p",[e._v(e._s(e.release_date))]):e._e()])]),e._v(" "),a("table",{staticClass:"table table--tracklist"},[a("thead",[a("tr",[e._m(0),e._v(" "),a("th",[e._v("#")]),e._v(" "),a("th",[e._v(e._s(e.$tc("globals.listTabs.title",1)))]),e._v(" "),a("th",[e._v(e._s(e.$tc("globals.listTabs.artist",1)))]),e._v(" "),e.type==="playlist"?a("th",[e._v(e._s(e.$tc("globals.listTabs.album",1)))]):e._e(),e._v(" "),e._m(1),e._v(" "),a("th",{staticClass:"table__icon table__cell--center clickable"},[a("input",{staticClass:"selectAll",attrs:{type:"checkbox"},on:{click:e.toggleAll}})])])]),e._v(" "),a("tbody",[e.type!=="spotifyPlaylist"?[e._l(e.body,function(r,i){return[r.type=="track"?a("tr",{on:{click:function(s){return e.selectRow(i,r)}}},[a("td",{staticClass:"table__cell--x-small table__cell--center"},[a("div",{staticClass:"table__cell-content table__cell-content--vertical-center"},[a("i",e._g({staticClass:"material-icons",class:{preview_playlist_controls:r.preview,"cursor-pointer":r.preview,disabled:!r.preview},attrs:{"data-preview":r.preview,title:e.$t("globals.play_hint")}},{click:r.preview?e.playPausePreview:!1}),[e._v(` play_arrow `)])])]),e._v(" "),a("td",{staticClass:"table__cell--small table__cell--center track_position"},[e._v(` diff --git a/src/components/globals/TheQualityModal.vue b/src/components/globals/TheQualityModal.vue index 5d172b1..7b95002 100644 --- a/src/components/globals/TheQualityModal.vue +++ b/src/components/globals/TheQualityModal.vue @@ -60,7 +60,7 @@ }