platypush/platypush/backend/http/webapp/dist/static/js/3694.9ca4ff97.js.map

1 line
38 KiB
Plaintext

{"version":3,"file":"static/js/3694.9ca4ff97.js","mappings":"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","sources":["webpack://platypush/./src/components/Media/Utils.vue","webpack://platypush/./src/components/Media/Utils.vue?af63","webpack://platypush/./src/components/Media/View.vue","webpack://platypush/./src/components/Media/Controls.vue","webpack://platypush/./src/components/Media/Controls.vue?3032","webpack://platypush/./src/components/Media/View.vue?78ca","webpack://platypush/./src/components/elements/Slider.vue","webpack://platypush/./src/components/elements/Slider.vue?787f"],"sourcesContent":["<script>\nimport Utils from \"@/Utils\";\n\nexport default {\n name: \"Utils\",\n mixins: [Utils],\n\n computed: {\n audioExtensions() {\n return new Set([\n '3gp', 'aa', 'aac', 'aax', 'act', 'aiff', 'amr', 'ape', 'au',\n 'awb', 'dct', 'dss', 'dvf', 'flac', 'gsm', 'iklax', 'ivs',\n 'm4a', 'm4b', 'm4p', 'mmf', 'mp3', 'mpc', 'msv', 'nmf', 'nsf',\n 'ogg,', 'opus', 'ra,', 'raw', 'sln', 'tta', 'vox', 'wav',\n 'wma', 'wv', 'webm', '8svx',\n ])\n },\n\n videoExtensions() {\n return new Set([\n 'webm', 'mkv', 'flv', 'flv', 'vob', 'ogv', 'ogg', 'drc', 'gif',\n 'gifv', 'mng', 'avi', 'mts', 'm2ts', 'mov', 'qt', 'wmv', 'yuv',\n 'rm', 'rmvb', 'asf', 'amv', 'mp4', 'm4p', 'm4v', 'mpg', 'mp2',\n 'mpeg', 'mpe', 'mpv', 'mpg', 'mpeg', 'm2v', 'm4v', 'svi',\n '3gp', '3g2', 'mxf', 'roq', 'nsv', 'flv', 'f4v', 'f4p', 'f4a', 'f4b',\n ])\n },\n\n mediaExtensions() {\n return new Set([...this.videoExtensions, ...this.audioExtensions])\n },\n },\n\n methods: {\n convertTime(time) {\n time = parseFloat(time); // Normalize strings\n const t = {}\n t.h = '' + parseInt(time/3600)\n t.m = '' + parseInt(time/60 - t.h*60)\n t.s = '' + parseInt(time - (t.h*3600 + t.m*60))\n\n for (const attr of ['m','s']) {\n if (parseInt(t[attr]) < 10) {\n t[attr] = '0' + t[attr]\n }\n }\n\n const ret = []\n if (parseInt(t.h)) {\n ret.push(t.h)\n }\n\n ret.push(t.m, t.s)\n return ret.join(':')\n },\n\n async startStreaming(resource, download=false) {\n let url = resource\n let subtitles = null\n\n if (resource instanceof Object) {\n url = resource.url\n subtitles = resource.subtitles\n } else {\n resource = {url: url}\n }\n\n const ret = await this.request(`media.start_streaming`, {\n media: url,\n subtitles: subtitles,\n download: download,\n })\n\n return {...resource, ...ret}\n },\n\n async stopStreaming(mediaId) {\n await this.request('media.stop_streaming', {media_id: mediaId})\n },\n },\n}\n</script>\n","import script from \"./Utils.vue?vue&type=script&lang=js\"\nexport * from \"./Utils.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","<template>\n <div class=\"media-container\">\n <div class=\"view-container\">\n <slot />\n </div>\n <div class=\"controls-container\">\n <Controls :status=\"status\" :track=\"track\" :buttons=\"buttons\" @play=\"$emit('play', $event)\"\n @pause=\"$emit('pause', $event)\" @stop=\"$emit('stop')\" @previous=\"$emit('previous')\"\n @next=\"$emit('next')\" @seek=\"$emit('seek', $event)\" @set-volume=\"$emit('set-volume', $event)\"\n @consume=\"$emit('consume', $event)\" @repeat=\"$emit('repeat', $event)\" @random=\"$emit('random', $event)\"\n @search=\"$emit('search', $event)\"/>\n </div>\n </div>\n</template>\n\n<script>\nimport Controls from \"@/components/Media/Controls\";\n\nexport default {\n name: \"View\",\n components: {Controls},\n emits: ['play', 'pause', 'stop', 'next', 'previous', 'set-volume', 'seek', 'consume', 'random', 'repeat', 'search'],\n props: {\n pluginName: {\n type: String,\n required: true,\n },\n\n status: {\n type: Object,\n default: () => {},\n },\n\n track: {\n type: Object,\n },\n\n buttons: {\n type: Object,\n },\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import 'vars.scss';\n\n.media-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n\n .view-container {\n height: 100%;\n }\n\n .controls-container {\n width: 100%;\n position: absolute;\n bottom: 0;\n border-top: $default-border-2;\n background: $default-bg-2;\n box-shadow: $border-shadow-top;\n }\n}\n</style>\n","<template>\n <div class=\"extension fade-in\" :class=\"{hidden: !expanded}\">\n <div class=\"row\">\n <div class=\"col-3\">\n </div>\n <div class=\"col-6\">\n <div class=\"buttons\">\n <button @click=\"$emit('previous')\" title=\"Play previous track\" v-if=\"buttons_.previous\">\n <i class=\"icon fa fa-step-backward\"></i>\n </button>\n <button @click=\"$emit('stop')\" v-if=\"buttons_.stop && status.state !== 'stop'\" title=\"Stop playback\">\n <i class=\"icon fa fa-stop\"></i>\n </button>\n <button @click=\"$emit('next')\" title=\"Play next track\" v-if=\"buttons_.next\">\n <i class=\"icon fa fa-step-forward\"></i>\n </button>\n </div>\n </div>\n <div class=\"col-3\">\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-9 volume-container\">\n <div class=\"col-1\">\n <button :disabled=\"status.muted == null\" @click=\"$emit(status.muted ? 'unmute' : 'mute')\">\n <i class=\"icon fa fa-volume-up\"></i>\n </button>\n </div>\n <div class=\"col-11 volume-slider\">\n <Slider :value=\"status.volume\" :range=\"volumeRange\" :disabled=\"status.volume == null\"\n @mouseup=\"$emit('set-volume', $event.target.value)\" />\n </div>\n </div>\n\n <div class=\"col-3 list-controls\">\n <button @click=\"$emit('consume', !status.consume)\" :class=\"{enabled: status.consume}\"\n title=\"Toggle consume mode\" v-if=\"buttons_.consume\">\n <i class=\"icon fa fa-utensils\"></i>\n </button>\n\n <button @click=\"$emit('random', !status.random)\" :class=\"{enabled: status.random}\"\n title=\"Toggle shuffle\" v-if=\"buttons_.random\">\n <i class=\"icon fa fa-random\"></i>\n </button>\n\n <button @click=\"$emit('repeat', !status.repeat)\" :class=\"{enabled: status.repeat}\"\n title=\"Toggle repeat\" v-if=\"buttons_.repeat\">\n <i class=\"icon fa fa-redo\"></i>\n </button>\n </div>\n </div>\n\n <div class=\"row\">\n <div class=\"col-s-2 col-m-1 time\">\n <span class=\"elapsed-time\"\n v-text=\"elapsed != null && (status.state === 'play' || status.state === 'pause') ? convertTime(elapsed) : '-:--'\"></span>\n </div>\n <div class=\"col-s-8 col-m-10 time-bar\">\n <Slider :value=\"elapsed\" :range=\"[0, duration]\" :disabled=\"!duration || status.state === 'stop'\"\n @mouseup=\"$emit('seek', $event.target.value)\" />\n </div>\n <div class=\"col-s-2 col-m-1 time\">\n <span class=\"total-time\"\n v-text=\"duration && status.state !== 'stop' ? convertTime(duration) : '-:--'\"></span>\n </div>\n </div>\n </div>\n\n <div class=\"controls\">\n <div class=\"playback-controls mobile tablet col-2\">\n <button @click=\"$emit(status.state === 'play' ? 'pause' : 'play')\"\n :title=\"status.state === 'play' ? 'Pause' : 'Play'\">\n <i class=\"icon play-pause fa fa-pause\" v-if=\"status.state === 'play'\"></i>\n <i class=\"icon play-pause fa fa-play\" v-else></i>\n </button>\n </div>\n\n <div class=\"track-container col-s-8 col-m-8 col-l-3\">\n <div class=\"track-info\" v-if=\"track && status?.state !== 'stop'\">\n <div class=\"title\" v-if=\"status.state === 'play' || status.state === 'pause'\">\n <a :href=\"$route.fullPath\" v-text=\"track.title?.length ? track.title : '[No Title]'\"\n @click.prevent=\"$emit('search', {artist: track.artist, album: track.album})\" v-if=\"track.album\"></a>\n <a :href=\"track.url\" v-text=\"track.title?.length ? track.title : '[No Title]'\" v-else-if=\"track.url\"></a>\n <span v-text=\"track.title?.length ? track.title : '[No Title]' \" v-else></span>\n </div>\n <div class=\"artist\" v-if=\"track.artist?.length && (status.state === 'play' || status.state === 'pause')\">\n <a :href=\"$route.fullPath\" v-text=\"track.artist\" @click.prevent=\"$emit('search', {artist: track.artist})\"></a>\n </div>\n </div>\n </div>\n\n <div class=\"playback-controls desktop col-6\">\n <div class=\"row buttons\">\n <button @click=\"$emit('previous')\" title=\"Play previous track\" v-if=\"buttons_.previous\">\n <i class=\"icon fa fa-step-backward\"></i>\n </button>\n <button @click=\"$emit(status.state === 'play' ? 'pause' : 'play')\"\n :title=\"status.state === 'play' ? 'Pause' : 'Play'\">\n <i class=\"icon play-pause fa fa-pause\" v-if=\"status.state === 'play'\"></i>\n <i class=\"icon play-pause fa fa-play\" v-else></i>\n </button>\n <button @click=\"$emit('stop')\" v-if=\"buttons_.stop && status.state !== 'stop'\" title=\"Stop playback\">\n <i class=\"icon fa fa-stop\"></i>\n </button>\n <button @click=\"$emit('next')\" title=\"Play next track\" v-if=\"buttons_.next\">\n <i class=\"icon fa fa-step-forward\"></i>\n </button>\n </div>\n\n <div class=\"row\">\n <div class=\"col-1 time\">\n <span class=\"elapsed-time\"\n v-text=\"elapsed != null && (status.state === 'play' || status.state === 'pause') ? convertTime(elapsed) : '-:--'\"></span>\n </div>\n <div class=\"col-10\">\n <Slider :value=\"elapsed\" :range=\"[0, duration]\" :disabled=\"!duration || status.state === 'stop'\"\n @mouseup=\"$emit('seek', $event.target.value)\" />\n </div>\n <div class=\"col-1 time\">\n <span class=\"total-time\"\n v-text=\"duration && status.state !== 'stop' ? convertTime(duration) : '-:--'\"></span>\n </div>\n </div>\n </div>\n\n <div class=\"col-2 pull-right mobile tablet right-buttons\">\n <button @click=\"expanded = !expanded\" :title=\"expanded ? 'Show more controls' : 'Hide extra controls'\">\n <i class=\"fas\" :class=\"[`fa-chevron-${expanded ? 'down' : 'up'}`]\" />\n </button>\n </div>\n\n <div class=\"col-3 pull-right desktop\">\n <div class=\"row list-controls\">\n <button @click=\"$emit('consume')\" :class=\"{enabled: status.consume}\" title=\"Toggle consume mode\" v-if=\"buttons_.consume\">\n <i class=\"icon fa fa-utensils\"></i>\n </button>\n <button @click=\"$emit('random')\" :class=\"{enabled: status.random}\" title=\"Toggle shuffle\" v-if=\"buttons_.random\">\n <i class=\"icon fa fa-random\"></i>\n </button>\n <button @click=\"$emit('repeat')\" :class=\"{enabled: status.repeat}\" title=\"Toggle repeat\" v-if=\"buttons_.repeat\">\n <i class=\"icon fa fa-redo\"></i>\n </button>\n </div>\n\n <div class=\"row volume-container\">\n <div class=\"col-2\">\n <button :disabled=\"status.muted == null\" @click=\"$emit(status.muted ? 'unmute' : 'mute')\">\n <i class=\"icon fa fa-volume-up\"></i>\n </button>\n </div>\n <div class=\"col-10\">\n <Slider :value=\"status.volume\" :range=\"volumeRange\" :disabled=\"status.volume == null\"\n @mouseup=\"$emit('set-volume', $event.target.value)\" />\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Utils from \"@/Utils\"\nimport MediaUtils from \"@/components/Media/Utils\";\nimport Slider from \"@/components/elements/Slider\";\n\nexport default {\n name: \"Controls\",\n components: {Slider},\n mixins: [Utils, MediaUtils],\n emits: ['search', 'previous', 'next', 'play', 'pause', 'stop', 'seek', 'consume', 'random', 'repeat',\n 'set-volume', 'mute', 'unmute'],\n\n props: {\n track: {\n type: Object,\n },\n\n status: {\n type: Object,\n default: () => {},\n },\n\n // Enabled playback buttons\n buttons: {\n type: Object,\n default: () => {\n return {\n previous: true,\n next: true,\n stop: true,\n consume: true,\n random: true,\n repeat: true,\n }\n },\n },\n\n // Volume range\n volumeRange: {\n type: Array,\n default: () => [0, 100],\n }\n },\n\n data() {\n const buttons = Object.keys(this.buttons)?.length ? this.buttons : {\n previous: true,\n next: true,\n stop: true,\n consume: true,\n random: true,\n repeat: true,\n }\n\n return {\n expanded: false,\n lastSync: 0,\n elapsed: this.status?.elapsed || this.status?.position,\n buttons_: buttons,\n }\n },\n\n computed: {\n duration() {\n return this.status?.duration != null ? this.status.duration : this.track?.duration\n },\n },\n\n methods: {\n getTime() {\n return (new Date()).getTime() / 1000\n }\n },\n\n mounted() {\n const self = this\n this.lastSync = this.getTime()\n\n this.$watch(() => this.track, (track) => {\n if (!track || self.status?.state !== 'play')\n self.lastSync = this.getTime()\n })\n\n this.$watch(() => this.status, () => {\n self.lastSync = this.getTime()\n })\n\n setInterval(() => {\n if (self.status?.state !== 'stop') {\n self.elapsed = (self.status?.elapsed || self.status?.position || 0)\n if (self.status?.state === 'play')\n self.elapsed += Math.round(this.getTime() - self.lastSync)\n }\n }, 1000)\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import 'vars.scss';\n\nbutton {\n border: 0;\n background: none;\n\n &:hover {\n border: 0;\n\n .icon {\n color: $default-hover-fg;\n }\n }\n\n &.enabled {\n color: $selected-fg;\n }\n}\n\n.extension {\n box-shadow: $border-shadow-bottom;\n flex-direction: column;\n display: none;\n overflow: hidden;\n\n @include until($desktop) {\n display: flex;\n padding-top: .5em;\n }\n\n .row {\n display: flex;\n }\n\n .buttons {\n justify-content: center;\n margin: 0;\n }\n\n .volume-container,\n .list-controls {\n display: flex;\n align-items: center;\n\n button {\n padding: 0 .25em;\n }\n }\n\n .list-controls {\n margin-top: -.5em;\n flex-flow: row-reverse;\n }\n\n .time {\n &:first-child {\n margin-left: .25em;\n }\n\n &:last-child {\n margin-right: .25em;\n }\n }\n\n .volume-slider {\n flex-grow: 1;\n }\n}\n\n.controls {\n width: 100%;\n height: $media-ctrl-panel-height;\n display: flex;\n padding: 1em .5em;\n overflow: hidden;\n\n .row {\n width: 100%;\n display: flex;\n }\n\n .track-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n margin-left: 0;\n\n @include until($tablet) {\n align-items: center;\n }\n\n a {\n color: initial;\n text-decoration: none;\n\n &:hover {\n color: $default-hover-fg;\n }\n }\n\n .artist, .title {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .artist {\n opacity: 0.6;\n letter-spacing: .04em;\n }\n\n .title {\n font-weight: normal;\n font-size: 1em;\n letter-spacing: .05em;\n margin-bottom: .25em;\n }\n }\n\n .playback-controls {\n &.mobile {\n display: none;\n\n @include until($tablet) {\n display: flex !important;\n align-items: center;\n }\n }\n\n &.tablet {\n display: none;\n\n @media screen and (min-width: $tablet) and (max-width: $desktop - 1) {\n display: flex !important;\n align-items: center;\n }\n }\n\n .row {\n justify-content: center;\n }\n\n .buttons {\n height: 50%;\n margin-bottom: .5em;\n align-items: center;\n }\n\n button {\n padding: 0.5em;\n margin: 0 .75em;\n\n .play-pause {\n color: $play-btn-fg;\n font-size: 1.75em;\n\n &:hover {\n color: $default-hover-fg-2;\n }\n }\n }\n }\n\n .list-controls {\n height: 50%;\n opacity: 0.7;\n display: flex;\n align-items: center;\n margin-bottom: 1em;\n flex-flow: row-reverse;\n }\n\n .mobile.right-buttons {\n @include until ($desktop) {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n flex: 1;\n }\n }\n\n .pull-right {\n button {\n padding: 0.5em;\n }\n\n .volume-container {\n align-items: center;\n margin-top: -1.25em;\n\n button {\n background: none;\n }\n }\n }\n\n .seek-slider {\n width: 75%;\n }\n\n .volume-slider {\n width: 75%;\n margin-right: .5em;\n }\n}\n\n.time {\n font-size: .7em;\n position: relative;\n}\n\n.elapsed-time {\n text-align: right;\n float: right;\n}\n\n.time-bar {\n flex-grow: 1;\n margin: 0 .5em;\n}\n</style>\n","import { render } from \"./Controls.vue?vue&type=template&id=a4579524&scoped=true\"\nimport script from \"./Controls.vue?vue&type=script&lang=js\"\nexport * from \"./Controls.vue?vue&type=script&lang=js\"\n\nimport \"./Controls.vue?vue&type=style&index=0&id=a4579524&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a4579524\"]])\n\nexport default __exports__","import { render } from \"./View.vue?vue&type=template&id=70d7a7df&scoped=true\"\nimport script from \"./View.vue?vue&type=script&lang=js\"\nexport * from \"./View.vue?vue&type=script&lang=js\"\n\nimport \"./View.vue?vue&type=style&index=0&id=70d7a7df&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-70d7a7df\"]])\n\nexport default __exports__","<template>\n <label class=\"slider-wrapper\">\n <span class=\"range-labels\" :class=\"{'with-label': withLabel}\" v-if=\"withRange\">\n <span class=\"label left\" v-if=\"withRange\" v-text=\"range[0]\" />\n <span class=\"label right\" v-if=\"withRange\" v-text=\"range[1]\" />\n </span>\n\n <span class=\"slider-container\">\n <input class=\"slider\"\n type=\"range\"\n :class=\"{'with-label': withLabel}\"\n :min=\"range[0]\"\n :max=\"range[1]\"\n :step=\"step\"\n :disabled=\"disabled\"\n :value=\"value\"\n ref=\"range\"\n @input.stop=\"onUpdate\"\n @change.stop=\"onUpdate\">\n\n <div class=\"track\" :class=\"{'with-label': withLabel}\">\n <div class=\"track-inner\" ref=\"track\"></div>\n </div>\n <div class=\"thumb\" ref=\"thumb\"></div>\n <span class=\"label\" v-if=\"withLabel\" v-text=\"value\" ref=\"label\"></span>\n </span>\n </label>\n</template>\n\n<script>\nexport default {\n name: \"Slider\",\n emits: ['input', 'change', 'mouseup', 'mousedown', 'touchstart', 'touchend', 'keyup', 'keydown'],\n props: {\n value: {\n type: Number,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n range: {\n type: Array,\n default: () => [0, 100],\n },\n\n step: {\n type: Number,\n default: 1,\n },\n\n withLabel: {\n type: Boolean,\n default: false,\n },\n\n withRange: {\n type: Boolean,\n default: false,\n }\n },\n\n methods: {\n onUpdate(event) {\n this.update(event.target.value)\n this.$emit(event.type, {\n ...event,\n target: {\n ...event.target,\n value: this.$refs.range.value,\n }\n })\n },\n\n update(value) {\n const sliderWidth = this.$refs.range.clientWidth\n const percent = (value - this.range[0]) / (this.range[1] - this.range[0])\n const innerWidth = percent * sliderWidth\n const thumb = this.$refs.thumb\n\n thumb.style.left = `${innerWidth - thumb.clientWidth / 2}px`\n this.$refs.thumb.style.transform = `translate(-${percent}%, -50%)`\n this.$refs.track.style.width = `${innerWidth}px`\n },\n },\n\n mounted() {\n if (this.value != null)\n this.update(this.value)\n this.$watch(() => this.value, (newValue) => this.update(newValue))\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n$label-width: 3em;\n\n.slider-wrapper {\n width: 100%;\n display: flex;\n position: relative;\n flex-direction: column;\n\n .slider-container {\n width: 100%;\n display: flex;\n position: relative;\n }\n\n .slider {\n width: 100%;\n cursor: pointer;\n opacity: 0;\n\n &::-ms-tooltip {\n display: none;\n }\n }\n\n .range-labels {\n width: 100%;\n display: flex;\n\n &.with-label {\n width: calc(100% - $label-width);\n }\n\n .left {\n text-align: left;\n }\n\n .right {\n @extend .pull-right;\n flex-grow: 1;\n }\n }\n\n .track {\n width: 100%;\n height: 0.75em;\n background: $slider-bg;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n border-radius: 0.5em;\n box-shadow: inset 1px 0px 3px 0 $slider-track-shadow;\n pointer-events: none;\n\n .track-inner {\n width: 0;\n height: 100%;\n background: $slider-progress-bg;\n border-radius: 0.5em 0 0 0.5em;\n }\n\n &.with-label {\n width: calc(100% - $label-width);\n }\n }\n\n .thumb {\n width: 1.25em;\n height: 1.25em;\n background: $slider-thumb-bg;\n position: absolute;\n top: 50%;\n left: 0;\n transform: translate(0%, -50%);\n border-radius: 50%;\n box-shadow: 1px 0px 2px 0 $slider-thumb-shadow;\n pointer-events: none;\n }\n\n .label {\n width: $label-width;\n position: relative;\n font-weight: normal;\n text-align: center;\n }\n}\n</style>\n","import { render } from \"./Slider.vue?vue&type=template&id=4b38623f&scoped=true\"\nimport script from \"./Slider.vue?vue&type=script&lang=js\"\nexport * from \"./Slider.vue?vue&type=script&lang=js\"\n\nimport \"./Slider.vue?vue&type=style&index=0&id=4b38623f&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4b38623f\"]])\n\nexport default __exports__"],"names":["name","mixins","Utils","computed","audioExtensions","Set","videoExtensions","mediaExtensions","this","methods","convertTime","time","parseFloat","t","h","parseInt","m","s","attr","ret","push","join","startStreaming","resource","download","url","subtitles","Object","request","media","stopStreaming","mediaId","media_id","__exports__","class","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_renderSlot","_ctx","$slots","undefined","_hoisted_3","_createVNode","_component_Controls","status","$props","track","buttons","onPlay","_cache","$event","$emit","onPause","onStop","onPrevious","onNext","onSeek","onSetVolume","onConsume","onRepeat","onRandom","onSearch","_hoisted_5","_hoisted_7","_hoisted_9","_hoisted_16","_hoisted_20","_hoisted_22","_hoisted_24","_hoisted_47","_hoisted_52","_hoisted_54","_hoisted_66","_hoisted_68","_hoisted_70","_hoisted_75","_normalizeClass","hidden","$data","expanded","_hoisted_4","buttons_","previous","onClick","title","stop","state","next","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","disabled","muted","_hoisted_18","_component_Slider","value","volume","range","volumeRange","onMouseup","target","_hoisted_19","consume","enabled","random","repeat","_hoisted_26","_hoisted_27","_toDisplayString","elapsed","_hoisted_29","$options","duration","_hoisted_30","_hoisted_32","_hoisted_33","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","album","href","$route","fullPath","length","_withModifiers","artist","_hoisted_43","_hoisted_45","_hoisted_46","_hoisted_50","_hoisted_51","_hoisted_56","_hoisted_57","_hoisted_59","_hoisted_60","_hoisted_62","_hoisted_64","_hoisted_65","_hoisted_72","_hoisted_73","_hoisted_77","components","Slider","MediaUtils","emits","props","type","default","Array","data","keys","lastSync","position","getTime","Date","mounted","self","$watch","setInterval","Math","round","Controls","pluginName","String","required","render","ref","withRange","withLabel","min","max","step","onInput","args","onUpdate","onChange","_hoisted_6","Number","Boolean","event","update","$refs","sliderWidth","clientWidth","percent","innerWidth","thumb","style","left","transform","width","newValue"],"sourceRoot":""}