APlayer-Typecho/assets/APlayer.min.js.map
metowolf 00f8c05a65 🎉 支持 APlayer 1.7
- 升级 MetingJS 1.1.1
 - 增强接口安全性
 - 修复虾米音乐 HTTPS
2018-03-12 18:35:22 +08:00

2 lines
234 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///APlayer.min.js","webpack:///webpack/bootstrap e40d0520cf9b07d68ca4","webpack:///./src/js/utils.js","webpack:///(webpack)/buildin/global.js","webpack:///./src/js/icons.js","webpack:///./node_modules/art-template/lib/runtime.js","webpack:///./src/js/index.js","webpack:///./src/js/player.js","webpack:///./node_modules/promise-polyfill/lib/index.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./src/assets/play.svg","webpack:///./src/assets/pause.svg","webpack:///./src/assets/volume-up.svg","webpack:///./src/assets/volume-down.svg","webpack:///./src/assets/volume-off.svg","webpack:///./src/assets/order-random.svg","webpack:///./src/assets/order-list.svg","webpack:///./src/assets/menu.svg","webpack:///./src/assets/loop-all.svg","webpack:///./src/assets/loop-one.svg","webpack:///./src/assets/loop-none.svg","webpack:///./src/assets/loading.svg","webpack:///./src/js/options.js","webpack:///./src/js/template.js","webpack:///./src/template/player.art","webpack:///./node_modules/art-template/lib/compile/runtime.js","webpack:///./node_modules/detect-node/index.js","webpack:///./src/js/bar.js","webpack:///./src/js/user.js","webpack:///./src/js/lrc.js","webpack:///./src/template/lrc.art","webpack:///./src/js/controller.js","webpack:///./src/js/timer.js","webpack:///./src/js/events.js"],"names":["root","factory","exports","module","define","amd","self","this","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","_toConsumableArray","arr","Array","isArray","arr2","length","from","value","isMobile","test","window","navigator","userAgent","utils","secondToTime","second","add0","num","hour","Math","floor","min","sec","map","join","getElementViewLeft","element","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","document","body","scrollLeft","documentElement","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getElementViewTop","actualTop","offsetTop","elementScrollTop","scrollTop","storage","set","key","localStorage","setItem","getItem","nameMap","dragStart","dragMove","dragEnd","randomOrder","arguments","undefined","options","audio","randomIndex","random","itemAtIndex","concat","item","default","g","_typeof","Symbol","iterator","obj","constructor","Function","eval","e","_interopRequireDefault","_play","_play2","_pause","_pause2","_volumeUp","_volumeUp2","_volumeDown","_volumeDown2","_volumeOff","_volumeOff2","_orderRandom","_orderRandom2","_orderList","_orderList2","_menu","_menu2","_loopAll","_loopAll2","_loopOne","_loopOne2","_loopNone","_loopNone2","_loading","_loading2","Icons","play","pause","volumeUp","volumeDown","volumeOff","orderRandom","orderList","menu","loopAll","loopOne","loopNone","loading","_player","_player2","console","log","_classCallCheck","instance","Constructor","TypeError","_createClass","defineProperties","target","props","descriptor","writable","protoProps","staticProps","_promisePolyfill","_promisePolyfill2","_utils","_utils2","_icons","_icons2","_options","_options2","_template","_template2","_bar","_bar2","_user","_user2","_lrc","_lrc2","_controller","_controller2","_timer","_timer2","_events","_events2","instances","APlayer","container","playIndex","paused","playedPromise","resolve","classList","add","lrc","arrow","offsetWidth","mini","lrcEle","getElementsByClassName","innerHTML","template","info","time","async","content","player","events","user","bar","controller","timer","initAudio","order","switchAudio","autoplay","push","_this","createElement","preload","audioEvents","addEventListener","trigger","on","duration","dtime","percentage","buffered","end","author","loop","indexOf","nextRandomNum","volume","index","_this2","handlePlayPromise","cover","pic","style","backgroundImage","title","artist","light","remove","querySelectorAll","list","src","url","seek","playPromise","catch","err","error","switch","max","currentTime","isNaN","ptime","_this3","button","setTimeout","enable","mutex","_this4","disable","volumeButton","nostorage","parseFloat","muted","switchVolumeIcon","callback","contains","isMultiple","newMusic","wasSingle","newItemHTML","theme","listOl","songListLength","height","splice","textContent","parseInt","destroy","then","setImmediate","noop","bind","fn","thisArg","apply","Promise","_state","_handled","_value","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","reject","promise","ret","newValue","finale","_unhandledRejectionFn","len","Handler","done","reason","ex","setTimeoutFunc","prom","all","res","val","args","remaining","slice","race","values","warn","Timeout","id","clearFn","_id","_clearFn","clearTimeout","setInterval","clearInterval","timeout","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","clearImmediate","global","process","task","tasksByHandle","nextHandle","registerImmediate","run","runIfPresent","currentlyRunningATask","doc","attachTo","getPrototypeOf","toString","nextTick","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","messagePrefix","onGlobalMessage","event","source","data","attachEvent","MessageChannel","channel","port1","port2","html","script","onreadystatechange","removeChild","appendChild","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","cachedSetTimeout","runClearTimeout","marker","cachedClearTimeout","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","Item","array","browser","env","argv","version","versions","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","defaultOption","narrow","showlrc","listFolded","listMaxHeight","listmaxheight","music","defaultKey","Template","init","icons","querySelector","barWrap","played","loaded","thumb","volumeBar","volumeBarWrap","$imports","$data","$$out","$escape","$each","$value","$index","JSON","stringify","xmlEscape","regexResult","ESCAPE_REG","exec","result","lastIndex","char","charCodeAt","substring","detectNode","runtime","create","_i","Bar","elements","type","direction","User","storageName","Lrc","parsed","transform","webkitTransform","getElementsByTagName","xhr","XMLHttpRequest","readyState","status","parse","responseText","lyrics","update","apiurl","open","send","lrc_s","replace","match","p1","lyric","split","lyricLen","lrcTimes","lrcText","timeLen","j","oneTime","min2sec","sec2sec","msec2sec","lrcTime","sort","a","b","Controller","initPlayButton","initList","initPlayBar","initOrderButton","initLoopButton","initMenuButton","initVolumeButton","toggle","tagName","toUpperCase","parentElement","audioIndex","thumbMove","clientX","changedTouches","clientWidth","thumbUp","removeEventListener","clientY","clientHeight","_this5","_this6","_this7","Timer","requestAnimationFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","progressChecker","enableprogressChecker","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","enableloadingChecker","initfpsChecker","Events","playerEvents"],"mappings":"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","file":"APlayer.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"APlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"APlayer\"] = factory();\n\telse\n\t\troot[\"APlayer\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"APlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"APlayer\"] = factory();\n\telse\n\t\troot[\"APlayer\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nfunction _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n } else {\n return Array.from(arr);\n }\n}\nvar isMobile = /mobile/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n var add0 = function add0(num) {\n return num < 10 ? '0' + num : '' + num;\n };\n var hour = Math.floor(second / 3600);\n var min = Math.floor((second - hour * 3600) / 60);\n var sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [\n hour,\n min,\n sec\n ] : [\n min,\n sec\n ]).map(add0).join(':');\n },\n getElementViewLeft: function getElementViewLeft(element) {\n var actualLeft = element.offsetLeft;\n var current = element.offsetParent;\n var elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {\n while (current !== null) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n } else {\n while (current !== null && current !== element) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n }\n return actualLeft - elementScrollLeft;\n },\n getElementViewTop: function getElementViewTop(element) {\n var actualTop = element.offsetTop;\n var current = element.offsetParent;\n var elementScrollTop = 0;\n while (current !== null) {\n actualTop += current.offsetTop;\n current = current.offsetParent;\n }\n elementScrollTop = document.body.scrollTop + document.documentElement.scrollTop;\n return actualTop - elementScrollTop;\n },\n isMobile: isMobile,\n storage: {\n set: function set(key, value) {\n localStorage.setItem(key, value);\n },\n get: function get(key) {\n return localStorage.getItem(key);\n }\n },\n nameMap: {\n dragStart: isMobile ? 'touchstart' : 'mousedown',\n dragMove: isMobile ? 'touchmove' : 'mousemove',\n dragEnd: isMobile ? 'touchend' : 'mouseup'\n },\n randomOrder: function randomOrder() {\n var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined.options.audio.length;\n function shuffle(arr) {\n for (var i = arr.length - 1; i >= 0; i--) {\n var randomIndex = Math.floor(Math.random() * (i + 1));\n var itemAtIndex = arr[randomIndex];\n arr[randomIndex] = arr[i];\n arr[i] = itemAtIndex;\n }\n return arr;\n }\n return shuffle([].concat(_toConsumableArray(Array(length))).map(function (item, i) {\n return i;\n }));\n }\n};\nexports.default = utils;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || Function('return this')() || (1, eval)('this');\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _play = __webpack_require__(11);\nvar _play2 = _interopRequireDefault(_play);\nvar _pause = __webpack_require__(12);\nvar _pause2 = _interopRequireDefault(_pause);\nvar _volumeUp = __webpack_require__(13);\nvar _volumeUp2 = _interopRequireDefault(_volumeUp);\nvar _volumeDown = __webpack_require__(14);\nvar _volumeDown2 = _interopRequireDefault(_volumeDown);\nvar _volumeOff = __webpack_require__(15);\nvar _volumeOff2 = _interopRequireDefault(_volumeOff);\nvar _orderRandom = __webpack_require__(16);\nvar _orderRandom2 = _interopRequireDefault(_orderRandom);\nvar _orderList = __webpack_require__(17);\nvar _orderList2 = _interopRequireDefault(_orderList);\nvar _menu = __webpack_require__(18);\nvar _menu2 = _interopRequireDefault(_menu);\nvar _loopAll = __webpack_require__(19);\nvar _loopAll2 = _interopRequireDefault(_loopAll);\nvar _loopOne = __webpack_require__(20);\nvar _loopOne2 = _interopRequireDefault(_loopOne);\nvar _loopNone = __webpack_require__(21);\nvar _loopNone2 = _interopRequireDefault(_loopNone);\nvar _loading = __webpack_require__(22);\nvar _loading2 = _interopRequireDefault(_loading);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nvar Icons = {\n play: _play2.default,\n pause: _pause2.default,\n volumeUp: _volumeUp2.default,\n volumeDown: _volumeDown2.default,\n volumeOff: _volumeOff2.default,\n orderRandom: _orderRandom2.default,\n orderList: _orderList2.default,\n menu: _menu2.default,\n loopAll: _loopAll2.default,\n loopOne: _loopOne2.default,\n loopNone: _loopNone2.default,\n loading: _loading2.default\n};\nexports.default = Icons;\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nmodule.exports = __webpack_require__(26);\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\n__webpack_require__(5);\nvar _player = __webpack_require__(6);\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nconsole.log('\\n' + ' %c APlayer v' + \"1.7.0\" + ' ' + \"375c0f7\" + ' %c http://aplayer.js.org ' + '\\n' + '\\n', 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexports.default = _player2.default;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _promisePolyfill = __webpack_require__(7);\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = __webpack_require__(2);\nvar _icons2 = _interopRequireDefault(_icons);\nvar _options = __webpack_require__(23);\nvar _options2 = _interopRequireDefault(_options);\nvar _template = __webpack_require__(24);\nvar _template2 = _interopRequireDefault(_template);\nvar _bar = __webpack_require__(28);\nvar _bar2 = _interopRequireDefault(_bar);\nvar _user = __webpack_require__(29);\nvar _user2 = _interopRequireDefault(_user);\nvar _lrc = __webpack_require__(30);\nvar _lrc2 = _interopRequireDefault(_lrc);\nvar _controller = __webpack_require__(32);\nvar _controller2 = _interopRequireDefault(_controller);\nvar _timer = __webpack_require__(33);\nvar _timer2 = _interopRequireDefault(_timer);\nvar _events = __webpack_require__(34);\nvar _events2 = _interopRequireDefault(_events);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar instances = [];\nvar APlayer = function () {\n function APlayer(options) {\n _classCallCheck(this, APlayer);\n this.options = (0, _options2.default)(options);\n this.container = this.options.container;\n this.playIndex = 0;\n this.paused = true;\n this.playedPromise = _promisePolyfill2.default.resolve();\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n this.container.classList.add('aplayer');\n if (this.options.lrc) {\n this.container.classList.add('aplayer-withlrc');\n }\n if (this.options.audio.length > 1) {\n this.container.classList.add('aplayer-withlist');\n }\n if (_utils2.default.isMobile) {\n this.container.classList.add('aplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 300;\n if (this.arrow) {\n this.container.classList.add('aplayer-arrow');\n }\n if (this.options.mini) {\n this.container.classList.add('aplayer-narrow');\n }\n this.container = this.options.container;\n if (this.options.lrc === 2 || this.options.lrc === true) {\n var lrcEle = this.container.getElementsByClassName('aplayer-lrc-content');\n for (var i = 0; i < lrcEle.length; i++) {\n if (this.options.audio[i]) {\n this.options.audio[i].lrc = lrcEle[i].innerHTML;\n }\n }\n }\n this.template = new _template2.default({\n container: this.container,\n options: this.options,\n randomOrder: this.randomOrder\n });\n if (this.template.info.offsetWidth < 200) {\n this.template.time.classList.add('aplayer-time-narrow');\n }\n if (this.options.lrc) {\n this.lrc = new _lrc2.default({\n container: this.template.lrc,\n async: this.options.lrc === 3,\n content: this.options.audio.map(function (item) {\n return item.lrc;\n }),\n player: this\n });\n }\n this.events = new _events2.default();\n this.user = new _user2.default(this);\n this.bar = new _bar2.default(this.template);\n this.controller = new _controller2.default(this);\n this.timer = new _timer2.default(this);\n this.initAudio();\n if (this.options.order === 'random') {\n this.switchAudio(this.randomOrder[0]);\n } else {\n this.switchAudio(0);\n }\n if (this.options.autoplay) {\n this.play();\n }\n instances.push(this);\n }\n _createClass(APlayer, [\n {\n key: 'initAudio',\n value: function initAudio() {\n var _this = this;\n this.audio = document.createElement('audio');\n this.audio.preload = this.options.preload;\n var _loop = function _loop(i) {\n _this.audio.addEventListener(_this.events.audioEvents[i], function () {\n _this.events.trigger(_this.events.audioEvents[i]);\n });\n };\n for (var i = 0; i < this.events.audioEvents.length; i++) {\n _loop(i);\n }\n this.on('play', function () {\n if (_this.paused) {\n _this.play();\n }\n });\n this.on('pause', function () {\n if (!_this.paused) {\n _this.pause();\n }\n });\n this.on('durationchange', function () {\n if (_this.audio.duration !== 1) {\n _this.template.dtime.innerHTML = _utils2.default.secondToTime(_this.audio.duration);\n }\n });\n this.on('progress', function () {\n var percentage = _this.audio.buffered.length ? _this.audio.buffered.end(_this.audio.buffered.length - 1) / _this.audio.duration : 0;\n _this.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n _this.template.author.innerHTML = ' - Error happens \\u2565\\u2565';\n });\n this.on('ended', function () {\n if (_this.options.loop === 'none') {\n if (_this.options.order === 'list') {\n if (_this.playIndex < _this.options.audio.length - 1) {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.play();\n } else {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.pause();\n }\n } else if (_this.options.order === 'random') {\n if (_this.randomOrder.indexOf(_this.playIndex) < _this.randomOrder.length - 1) {\n _this.switchAudio(_this.nextRandomNum());\n _this.play();\n } else {\n _this.switchAudio(_this.nextRandomNum());\n _this.pause();\n }\n }\n } else if (_this.options.loop === 'one') {\n _this.switchAudio(_this.playIndex);\n _this.play();\n } else if (_this.options.loop === 'all') {\n if (_this.options.order === 'list') {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n } else if (_this.options.order === 'random') {\n _this.switchAudio(_this.nextRandomNum());\n }\n _this.play();\n }\n });\n this.volume(this.user.get('volume'), true);\n }\n },\n {\n key: 'switchAudio',\n value: function switchAudio(index) {\n var _this2 = this;\n this.handlePlayPromise(function () {\n _this2.events.trigger('switchaudio', index);\n if (typeof index !== 'undefined') {\n _this2.playIndex = index;\n }\n if (_this2.options.audio[_this2.playIndex].cover) {\n _this2.template.pic.style.backgroundImage = 'url(\\'' + _this2.options.audio[_this2.playIndex].cover + '\\')';\n } else {\n _this2.template.pic.style.backgroundImage = '';\n }\n _this2.template.title.innerHTML = _this2.options.audio[_this2.playIndex].name;\n _this2.template.author.innerHTML = _this2.options.audio[_this2.playIndex].artist ? ' - ' + _this2.options.audio[_this2.playIndex].artist : '';\n var light = _this2.container.getElementsByClassName('aplayer-list-light')[0];\n if (light) {\n light.classList.remove('aplayer-list-light');\n }\n _this2.container.querySelectorAll('.aplayer-list li')[_this2.playIndex].classList.add('aplayer-list-light');\n _this2.template.list.scrollTop = _this2.playIndex * 33;\n _this2.audio.src = _this2.options.audio[_this2.playIndex].url;\n _this2.seek(0);\n var playPromise = void 0;\n if (!_this2.paused) {\n playPromise = _promisePolyfill2.default.resolve(_this2.audio.play()).catch(function (err) {\n console.error(err);\n _this2.pause();\n });\n }\n _this2.lrc && _this2.lrc.switch(_this2.playIndex);\n if (_this2.audio.duration !== 1) {\n _this2.template.dtime.innerHTML = _this2.audio.duration ? _utils2.default.secondToTime(_this2.audio.duration) : '00:00';\n }\n return playPromise;\n });\n }\n },\n {\n key: 'seek',\n value: function seek(time) {\n time = Math.max(time, 0);\n if (this.audio.duration) {\n time = Math.min(time, this.audio.duration);\n }\n this.audio.currentTime = time;\n if (isNaN(this.audio.duration)) {\n this.bar.set('played', 0, 'width');\n } else {\n this.bar.set('played', time / this.audio.duration, 'width');\n }\n this.template.ptime.innerHTML = _utils2.default.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play() {\n var _this3 = this;\n this.handlePlayPromise(function () {\n if (_this3.paused) {\n _this3.paused = false;\n _this3.template.button.classList.remove('aplayer-play');\n _this3.template.button.classList.add('aplayer-pause');\n _this3.template.button.innerHTML = '';\n setTimeout(function () {\n _this3.template.button.innerHTML = _icons2.default.pause;\n }, 100);\n }\n var playPromise = _promisePolyfill2.default.resolve(_this3.audio.play()).catch(function (err) {\n console.error(err);\n _this3.pause();\n });\n _this3.timer.enable('loading');\n _this3.timer.enable('progress');\n if (_this3.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (_this3 !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n return playPromise;\n });\n }\n },\n {\n key: 'pause',\n value: function pause() {\n var _this4 = this;\n this.handlePlayPromise(function () {\n if (!_this4.paused) {\n _this4.paused = true;\n _this4.template.button.classList.remove('aplayer-pause');\n _this4.template.button.classList.add('aplayer-play');\n _this4.template.button.innerHTML = '';\n setTimeout(function () {\n _this4.template.button.innerHTML = _icons2.default.play;\n }, 100);\n }\n _this4.audio.pause();\n _this4.timer.disable('loading');\n _this4.timer.disable('progress');\n });\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeDown;\n } else {\n this.template.volumeButton.innerHTML = _icons2.default.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage) {\n percentage = parseFloat(percentage);\n if (!isNaN(percentage)) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.bar.set('volume', percentage, 'height');\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n this.audio.volume = percentage;\n if (this.audio.muted) {\n this.audio.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.audio.muted ? 0 : this.audio.volume;\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.template.button.classList.contains('aplayer-play')) {\n this.play();\n } else if (this.template.button.classList.contains('aplayer-pause')) {\n this.pause();\n }\n }\n },\n {\n key: 'isMultiple',\n value: function isMultiple() {\n return this.options.audio.length > 1;\n }\n },\n {\n key: 'nextRandomNum',\n value: function nextRandomNum() {\n if (this.isMultiple()) {\n var index = this.randomOrder.indexOf(this.playIndex);\n if (index === this.randomOrder.length - 1) {\n return this.randomOrder[0];\n } else {\n return this.randomOrder[index + 1];\n }\n } else {\n return 0;\n }\n }\n },\n {\n key: 'addAudio',\n value: function addAudio(newMusic) {\n this.events.trigger('addaudio', newMusic);\n var wasSingle = !this.isMultiple();\n this.options.audio = this.options.audio.concat(newMusic);\n var newItemHTML = '';\n for (var i = 0; i < newMusic.length; i++) {\n newItemHTML += '<li><span class=\"aplayer-list-cur\" style=\"background: ' + this.options.theme + ';\"></span><span class=\"aplayer-list-index\">' + (this.options.audio.length - newMusic.length + i + 1) + '</span><span class=\"aplayer-list-title\">' + newMusic[i].name + '</span><span class=\"aplayer-list-author\">' + newMusic[i].artist + '</span></li>';\n }\n this.template.listOl.innerHTML += newItemHTML;\n if (wasSingle && this.isMultiple()) {\n this.container.classList.add('aplayer-withlist');\n this.audio.loop = false;\n }\n var songListLength = this.container.querySelectorAll('.aplayer-list li').length;\n this.template.list.style.height = songListLength * 33 - 1 + 'px';\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n }\n },\n {\n key: 'removeAudio',\n value: function removeAudio(index) {\n this.events.trigger('removeaudio', index);\n if (this.options.audio[index] && this.options.audio.length > 1) {\n var list = this.container.querySelectorAll('.aplayer-list li');\n this.options.audio.splice(index, 1);\n if (index === this.playIndex) {\n if (this.options.audio[index + 1]) {\n this.switchAudio(index);\n } else {\n this.switchAudio(index - 1);\n }\n }\n if (this.playIndex > index) {\n this.playIndex--;\n }\n list[index].remove();\n for (var i = index; i < list.length; i++) {\n list[i].getElementsByClassName('aplayer-list-index')[0].textContent = i;\n }\n if (this.options.audio.length === 1) {\n this.container.classList.remove('aplayer-withlist');\n }\n this.template.list.style.height = parseInt(this.template.list.style.height, 10) - 33 + 'px';\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n instances.splice(instances.indexOf(this), 1);\n this.pause();\n this.container.innerHTML = '';\n this.audio.src = '';\n this.timer.destroy();\n this.events.trigger('destroy');\n }\n },\n {\n key: 'handlePlayPromise',\n value: function handlePlayPromise(callback) {\n this.playedPromise = this.playedPromise.then(callback).catch(function (err) {\n console.error(err);\n });\n }\n }\n ]);\n return APlayer;\n}();\nexports.default = APlayer;\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(setImmediate) {\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar setTimeoutFunc = setTimeout;\nfunction noop() {\n}\nfunction bind(fn, thisArg) {\n return function () {\n fn.apply(thisArg, arguments);\n };\n}\nfunction Promise(fn) {\n if (!(this instanceof Promise))\n throw new TypeError('Promises must be constructed via new');\n if (typeof fn !== 'function')\n throw new TypeError('not a function');\n this._state = 0;\n this._handled = false;\n this._value = undefined;\n this._deferreds = [];\n doResolve(fn, this);\n}\nfunction handle(self, deferred) {\n while (self._state === 3) {\n self = self._value;\n }\n if (self._state === 0) {\n self._deferreds.push(deferred);\n return;\n }\n self._handled = true;\n Promise._immediateFn(function () {\n var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;\n if (cb === null) {\n (self._state === 1 ? resolve : reject)(deferred.promise, self._value);\n return;\n }\n var ret;\n try {\n ret = cb(self._value);\n } catch (e) {\n reject(deferred.promise, e);\n return;\n }\n resolve(deferred.promise, ret);\n });\n}\nfunction resolve(self, newValue) {\n try {\n if (newValue === self)\n throw new TypeError('A promise cannot be resolved with itself.');\n if (newValue && ((typeof newValue === 'undefined' ? 'undefined' : _typeof(newValue)) === 'object' || typeof newValue === 'function')) {\n var then = newValue.then;\n if (newValue instanceof Promise) {\n self._state = 3;\n self._value = newValue;\n finale(self);\n return;\n } else if (typeof then === 'function') {\n doResolve(bind(then, newValue), self);\n return;\n }\n }\n self._state = 1;\n self._value = newValue;\n finale(self);\n } catch (e) {\n reject(self, e);\n }\n}\nfunction reject(self, newValue) {\n self._state = 2;\n self._value = newValue;\n finale(self);\n}\nfunction finale(self) {\n if (self._state === 2 && self._deferreds.length === 0) {\n Promise._immediateFn(function () {\n if (!self._handled) {\n Promise._unhandledRejectionFn(self._value);\n }\n });\n }\n for (var i = 0, len = self._deferreds.length; i < len; i++) {\n handle(self, self._deferreds[i]);\n }\n self._deferreds = null;\n}\nfunction Handler(onFulfilled, onRejected, promise) {\n this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;\n this.onRejected = typeof onRejected === 'function' ? onRejected : null;\n this.promise = promise;\n}\nfunction doResolve(fn, self) {\n var done = false;\n try {\n fn(function (value) {\n if (done)\n return;\n done = true;\n resolve(self, value);\n }, function (reason) {\n if (done)\n return;\n done = true;\n reject(self, reason);\n });\n } catch (ex) {\n if (done)\n return;\n done = true;\n reject(self, ex);\n }\n}\nPromise.prototype['catch'] = function (onRejected) {\n return this.then(null, onRejected);\n};\nPromise.prototype.then = function (onFulfilled, onRejected) {\n var prom = new this.constructor(noop);\n handle(this, new Handler(onFulfilled, onRejected, prom));\n return prom;\n};\nPromise.prototype['finally'] = function (callback) {\n var constructor = this.constructor;\n return this.then(function (value) {\n return constructor.resolve(callback()).then(function () {\n return value;\n });\n }, function (reason) {\n return constructor.resolve(callback()).then(function () {\n return constructor.reject(reason);\n });\n });\n};\nPromise.all = function (arr) {\n return new Promise(function (resolve, reject) {\n if (!arr || typeof arr.length === 'undefined')\n throw new TypeError('Promise.all accepts an array');\n var args = Array.prototype.slice.call(arr);\n if (args.length === 0)\n return resolve([]);\n var remaining = args.length;\n function res(i, val) {\n try {\n if (val && ((typeof val === 'undefined' ? 'undefined' : _typeof(val)) === 'object' || typeof val === 'function')) {\n var then = val.then;\n if (typeof then === 'function') {\n then.call(val, function (val) {\n res(i, val);\n }, reject);\n return;\n }\n }\n args[i] = val;\n if (--remaining === 0) {\n resolve(args);\n }\n } catch (ex) {\n reject(ex);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n};\nPromise.resolve = function (value) {\n if (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.constructor === Promise) {\n return value;\n }\n return new Promise(function (resolve) {\n resolve(value);\n });\n};\nPromise.reject = function (value) {\n return new Promise(function (resolve, reject) {\n reject(value);\n });\n};\nPromise.race = function (values) {\n return new Promise(function (resolve, reject) {\n for (var i = 0, len = values.length; i < len; i++) {\n values[i].then(resolve, reject);\n }\n });\n};\nPromise._immediateFn = typeof setImmediate === 'function' && function (fn) {\n setImmediate(fn);\n} || function (fn) {\n setTimeoutFunc(fn, 0);\n};\nPromise._unhandledRejectionFn = function _unhandledRejectionFn(err) {\n if (typeof console !== 'undefined' && console) {\n console.warn('Possible Unhandled Promise Rejection:', err);\n }\n};\nmodule.exports = Promise;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(8).setImmediate))\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar apply = Function.prototype.apply;\nexports.setTimeout = function () {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function () {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout = exports.clearInterval = function (timeout) {\n if (timeout) {\n timeout.close();\n }\n};\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function () {\n};\nTimeout.prototype.close = function () {\n this._clearFn.call(window, this._id);\n};\nexports.enroll = function (item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\nexports.unenroll = function (item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\nexports._unrefActive = exports.active = function (item) {\n clearTimeout(item._idleTimeoutId);\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n__webpack_require__(9);\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global, process) {\n(function (global, undefined) {\n 'use strict';\n if (global.setImmediate) {\n return;\n }\n var nextHandle = 1;\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n function setImmediate(callback) {\n if (typeof callback !== 'function') {\n callback = new Function('' + callback);\n }\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n var task = {\n callback: callback,\n args: args\n };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n function runIfPresent(handle) {\n if (currentlyRunningATask) {\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n function installNextTickImplementation() {\n registerImmediate = function registerImmediate(handle) {\n process.nextTick(function () {\n runIfPresent(handle);\n });\n };\n }\n function canUsePostMessage() {\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function () {\n postMessageIsAsynchronous = false;\n };\n global.postMessage('', '*');\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n function installPostMessageImplementation() {\n var messagePrefix = 'setImmediate$' + Math.random() + '$';\n var onGlobalMessage = function onGlobalMessage(event) {\n if (event.source === global && typeof event.data === 'string' && event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n if (global.addEventListener) {\n global.addEventListener('message', onGlobalMessage, false);\n } else {\n global.attachEvent('onmessage', onGlobalMessage);\n }\n registerImmediate = function registerImmediate(handle) {\n global.postMessage(messagePrefix + handle, '*');\n };\n }\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function (event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n registerImmediate = function registerImmediate(handle) {\n channel.port2.postMessage(handle);\n };\n }\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function registerImmediate(handle) {\n var script = doc.createElement('script');\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n function installSetTimeoutImplementation() {\n registerImmediate = function registerImmediate(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n if ({}.toString.call(global.process) === '[object process]') {\n installNextTickImplementation();\n } else if (canUsePostMessage()) {\n installPostMessageImplementation();\n } else if (global.MessageChannel) {\n installMessageChannelImplementation();\n } else if (doc && 'onreadystatechange' in doc.createElement('script')) {\n installReadyStateChangeImplementation();\n } else {\n installSetTimeoutImplementation();\n }\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === 'undefined' ? typeof global === 'undefined' ? undefined : global : self));\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1), __webpack_require__(10)))\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar process = module.exports = {};\nvar cachedSetTimeout;\nvar cachedClearTimeout;\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout() {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n}());\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n return setTimeout(fun, 0);\n }\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n return cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n return cachedSetTimeout.call(null, fun, 0);\n } catch (e) {\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n return clearTimeout(marker);\n }\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n return cachedClearTimeout(marker);\n } catch (e) {\n try {\n return cachedClearTimeout.call(null, marker);\n } catch (e) {\n return cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n var len = queue.length;\n while (len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = '';\nprocess.versions = {};\nfunction noop() {\n}\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\nprocess.listeners = function (name) {\n return [];\n};\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\nprocess.cwd = function () {\n return '/';\n};\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function () {\n return 0;\n};\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 16 31\\\"><path d=\\\"M15.552 15.168q0.448 0.32 0.448 0.832 0 0.448-0.448 0.768l-13.696 8.512q-0.768 0.512-1.312 0.192t-0.544-1.28v-16.448q0-0.96 0.544-1.28t1.312 0.192z\\\"></path></svg>\"\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 17 32\\\"><path d=\\\"M14.080 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048zM2.88 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048z\\\"></path></svg>\"\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528zM25.152 16q0 2.72-1.536 5.056t-4 3.36q-0.256 0.096-0.448 0.096-0.48 0-0.832-0.352t-0.32-0.8q0-0.704 0.672-1.056 1.024-0.512 1.376-0.8 1.312-0.96 2.048-2.4t0.736-3.104-0.736-3.104-2.048-2.4q-0.352-0.288-1.376-0.8-0.672-0.352-0.672-1.056 0-0.448 0.32-0.8t0.8-0.352q0.224 0 0.48 0.096 2.496 1.056 4 3.36t1.536 5.056zM29.728 16q0 4.096-2.272 7.552t-6.048 5.056q-0.224 0.096-0.448 0.096-0.48 0-0.832-0.352t-0.32-0.8q0-0.64 0.704-1.056 0.128-0.064 0.384-0.192t0.416-0.192q0.8-0.448 1.44-0.896 2.208-1.632 3.456-4.064t1.216-5.152-1.216-5.152-3.456-4.064q-0.64-0.448-1.44-0.896-0.128-0.096-0.416-0.192t-0.384-0.192q-0.704-0.416-0.704-1.056 0-0.448 0.32-0.8t0.832-0.352q0.224 0 0.448 0.096 3.776 1.632 6.048 5.056t2.272 7.552z\\\"></path></svg>\"\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528z\\\"></path></svg>\"\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8z\\\"></path></svg>\"\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M22.667 4l7 6-7 6 7 6-7 6v-4h-3.653l-3.76-3.76 2.827-2.827 2.587 2.587h2v-8h-2l-12 12h-6v-4h4.347l12-12h3.653v-4zM2.667 8h6l3.76 3.76-2.827 2.827-2.587-2.587h-4.347v-4z\\\"></path></svg>\"\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M0.622 18.334h19.54v7.55l11.052-9.412-11.052-9.413v7.549h-19.54v3.725z\\\"></path></svg>\"\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 22 32\\\"><path d=\\\"M20.8 14.4q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2zM1.6 11.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2zM20.8 20.8q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2z\\\"></path></svg>\"\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 29 32\\\"><path d=\\\"M9.333 9.333h13.333v4l5.333-5.333-5.333-5.333v4h-16v8h2.667v-5.333zM22.667 22.667h-13.333v-4l-5.333 5.333 5.333 5.333v-4h16v-8h-2.667v5.333z\\\"></path></svg>\"\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 33 32\\\"><path d=\\\"M9.333 9.333h13.333v4l5.333-5.333-5.333-5.333v4h-16v8h2.667v-5.333zM22.667 22.667h-13.333v-4l-5.333 5.333 5.333 5.333v-4h16v-8h-2.667v5.333zM17.333 20v-8h-1.333l-2.667 1.333v1.333h2v5.333h2z\\\"></path></svg>\"\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 29 32\\\"><path d=\\\"M2.667 7.027l1.707-1.693 22.293 22.293-1.693 1.707-4-4h-11.64v4l-5.333-5.333 5.333-5.333v4h8.973l-8.973-8.973v0.973h-2.667v-3.64l-4-4zM22.667 17.333h2.667v5.573l-2.667-2.667v-2.907zM22.667 6.667v-4l5.333 5.333-5.333 5.333v-4h-10.907l-2.667-2.667h13.573z\\\"></path></svg>\"\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports) {\n\nmodule.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M4 16c0-6.6 5.4-12 12-12s12 5.4 12 12c0 1.2-0.8 2-2 2s-2-0.8-2-2c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8c1.2 0 2 0.8 2 2s-0.8 2-2 2c-6.6 0-12-5.4-12-12z\\\"></path></svg>\"\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nexports.default = function (options) {\n var defaultOption = {\n container: options.element || document.getElementsByClassName('aplayer')[0],\n mini: options.narrow || false,\n autoplay: false,\n mutex: true,\n lrc: options.showlrc || 0,\n preload: 'auto',\n theme: '#b7daff',\n loop: 'all',\n order: 'list',\n volume: 0.7,\n listFolded: false,\n listMaxHeight: options.listmaxheight,\n audio: options.music\n };\n for (var defaultKey in defaultOption) {\n if (defaultOption.hasOwnProperty(defaultKey) && !options.hasOwnProperty(defaultKey)) {\n options[defaultKey] = defaultOption[defaultKey];\n }\n }\n if (Object.prototype.toString.call(options.audio) !== '[object Array]') {\n options.audio = [options.audio];\n }\n options.audio.map(function (item) {\n item.name = item.name || item.title;\n item.artist = item.artist || item.author;\n item.cover = item.cover || item.pic;\n return item;\n });\n if (options.audio.length <= 1 && options.loop === 'one') {\n options.loop = 'all';\n }\n return options;\n};\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _icons = __webpack_require__(2);\nvar _icons2 = _interopRequireDefault(_icons);\nvar _player = __webpack_require__(25);\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Template = function () {\n function Template(options) {\n _classCallCheck(this, Template);\n this.container = options.container;\n this.options = options.options;\n this.randomOrder = options.randomOrder;\n this.init();\n }\n _createClass(Template, [{\n key: 'init',\n value: function init() {\n var cover = void 0;\n if (this.options.order === 'random') {\n cover = this.options.audio[this.randomOrder[0]].cover;\n } else {\n cover = this.options.audio[0].cover;\n }\n this.container.innerHTML = (0, _player2.default)({\n options: this.options,\n icons: _icons2.default,\n cover: cover\n });\n this.lrc = this.container.querySelector('.aplayer-lrc-contents');\n this.ptime = this.container.querySelector('.aplayer-ptime');\n this.info = this.container.querySelector('.aplayer-info');\n this.time = this.container.querySelector('.aplayer-time');\n this.barWrap = this.container.querySelector('.aplayer-bar-wrap');\n this.button = this.container.querySelector('.aplayer-button');\n this.list = this.container.querySelector('.aplayer-list');\n this.listOl = this.container.querySelector('.aplayer-list ol');\n this.played = this.container.querySelector('.aplayer-played');\n this.loaded = this.container.querySelector('.aplayer-loaded');\n this.thumb = this.container.querySelector('.aplayer-thumb');\n this.volume = this.container.querySelector('.aplayer-volume');\n this.volumeBar = this.container.querySelector('.aplayer-volume-bar');\n this.volumeButton = this.container.querySelector('.aplayer-time button');\n this.volumeBarWrap = this.container.querySelector('.aplayer-volume-bar-wrap');\n this.loop = this.container.querySelector('.aplayer-icon-loop');\n this.order = this.container.querySelector('.aplayer-icon-order');\n this.menu = this.container.querySelector('.aplayer-icon-menu');\n this.pic = this.container.querySelector('.aplayer-pic');\n this.title = this.container.querySelector('.aplayer-title');\n this.author = this.container.querySelector('.aplayer-author');\n this.dtime = this.container.querySelector('.aplayer-dtime');\n }\n }]);\n return Template;\n}();\nexports.default = Template;\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $imports = __webpack_require__(3);\nmodule.exports = function ($data) {\n 'use strict';\n $data = $data || {};\n var $$out = '', cover = $data.cover, $escape = $imports.$escape, icons = $data.icons, options = $data.options, $each = $imports.$each, $value = $data.$value, $index = $data.$index;\n $$out += '<div class=\"aplayer-pic\"';\n if (cover) {\n $$out += ' style=\"background-image: url(\"';\n $$out += $escape(cover);\n $$out += '\");\"';\n }\n $$out += '>\\n <div class=\"aplayer-button aplayer-play\">';\n $$out += icons.play;\n $$out += '</div>\\n</div>\\n<div class=\"aplayer-info\">\\n <div class=\"aplayer-music\">\\n <span class=\"aplayer-title\"></span>\\n <span class=\"aplayer-author\"></span>\\n </div>\\n <div class=\"aplayer-lrc\">\\n <div class=\"aplayer-lrc-contents\" style=\"transform: translateY(0); -webkit-transform: translateY(0);\"></div>\\n </div>\\n <div class=\"aplayer-controller\">\\n <div class=\"aplayer-bar-wrap\">\\n <div class=\"aplayer-bar\">\\n <div class=\"aplayer-loaded\" style=\"width: 0\"></div>\\n <div class=\"aplayer-played\" style=\"width: 0; background: ';\n $$out += $escape(options.theme);\n $$out += ';\">\\n <span class=\"aplayer-thumb\" style=\"background: ';\n $$out += $escape(options.theme);\n $$out += ';\">\\n <span class=\"aplayer-loading-icon\">';\n $$out += icons.loading;\n $$out += '</span>\\n </span>\\n </div>\\n </div>\\n </div>\\n <div class=\"aplayer-time\">\\n <span class=\"aplayer-time-inner\">\\n - <span class=\"aplayer-ptime\">00:00</span> / <span class=\"aplayer-dtime\">00:00</span>\\n </span>\\n <div class=\"aplayer-volume-wrap\">\\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-volume-down\">\\n ';\n $$out += icons.volumeDown;\n $$out += '\\n </button>\\n <div class=\"aplayer-volume-bar-wrap\">\\n <div class=\"aplayer-volume-bar\">\\n <div class=\"aplayer-volume\" style=\"height: 80%; background: ';\n $$out += $escape(options.theme);\n $$out += ';\"></div>\\n </div>\\n </div>\\n </div>\\n ';\n if (options.audio.length > 1) {\n $$out += '\\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-order\">\\n ';\n if (options.order === 'list') {\n $$out += icons.orderList;\n } else if (options.order === 'random') {\n $$out += icons.orderRandom;\n }\n $$out += '\\n </button>\\n ';\n }\n $$out += '\\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-loop\">\\n ';\n if (options.loop === 'one') {\n $$out += icons.loopOne;\n } else if (options.loop === 'all') {\n $$out += icons.loopAll;\n } else if (options.loop === 'none') {\n $$out += icons.loopNone;\n }\n $$out += '\\n </button>\\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-menu\">\\n ';\n $$out += icons.menu;\n $$out += '\\n </button>\\n </div>\\n </div>\\n</div>\\n<div class=\"aplayer-list';\n if (options.listFolded) {\n $$out += ' aplayer-list-hide';\n }\n $$out += '\"';\n if (options.listMaxHeight) {\n $$out += ' style=\"max-height: ';\n $$out += $escape(options.listMaxHeight);\n $$out += '\"';\n }\n $$out += '>\\n <ol>\\n ';\n $each(options.audio, function ($value, $index) {\n $$out += '\\n <li>\\n <span class=\"aplayer-list-cur\" style=\"background: ';\n $$out += $escape(options.theme);\n $$out += ';\"></span>\\n <span class=\"aplayer-list-index\">';\n $$out += $escape($index + 1);\n $$out += '</span>\\n <span class=\"aplayer-list-title\">';\n $$out += $escape($value.name);\n $$out += '</span>\\n <span class=\"aplayer-list-author\">';\n $$out += $escape($value.artist);\n $$out += '</span>\\n </li>\\n ';\n });\n $$out += '\\n </ol>\\n</div>';\n return $$out;\n};\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\nvar detectNode = __webpack_require__(27);\nvar runtime = Object.create(detectNode ? global : window);\nvar ESCAPE_REG = /[\"&'<>]/;\nruntime.$escape = function (content) {\n return xmlEscape(toString(content));\n};\nruntime.$each = function (data, callback) {\n if (Array.isArray(data)) {\n for (var i = 0, len = data.length; i < len; i++) {\n callback(data[i], i);\n }\n } else {\n for (var _i in data) {\n callback(data[_i], _i);\n }\n }\n};\nfunction toString(value) {\n if (typeof value !== 'string') {\n if (value === undefined || value === null) {\n value = '';\n } else if (typeof value === 'function') {\n value = toString(value.call(value));\n } else {\n value = JSON.stringify(value);\n }\n }\n return value;\n}\n;\nfunction xmlEscape(content) {\n var html = '' + content;\n var regexResult = ESCAPE_REG.exec(html);\n if (!regexResult) {\n return content;\n }\n var result = '';\n var i = void 0, lastIndex = void 0, char = void 0;\n for (i = regexResult.index, lastIndex = 0; i < html.length; i++) {\n switch (html.charCodeAt(i)) {\n case 34:\n char = '&#34;';\n break;\n case 38:\n char = '&#38;';\n break;\n case 39:\n char = '&#39;';\n break;\n case 60:\n char = '&#60;';\n break;\n case 62:\n char = '&#62;';\n break;\n default:\n continue;\n }\n if (lastIndex !== i) {\n result += html.substring(lastIndex, i);\n }\n lastIndex = i + 1;\n result += char;\n }\n if (lastIndex !== i) {\n return result + html.substring(lastIndex, i);\n } else {\n return result;\n }\n}\n;\nmodule.exports = runtime;\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\nmodule.exports = false;\ntry {\n module.exports = Object.prototype.toString.call(global.process) === '[object process]';\n} catch (e) {\n}\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(1)))\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Bar = function () {\n function Bar(template) {\n _classCallCheck(this, Bar);\n this.elements = {};\n this.elements.volume = template.volume;\n this.elements.played = template.played;\n this.elements.loaded = template.loaded;\n }\n _createClass(Bar, [\n {\n key: 'set',\n value: function set(type, percentage, direction) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.elements[type].style[direction] = percentage * 100 + '%';\n }\n },\n {\n key: 'get',\n value: function get(type, direction) {\n return parseFloat(this.elements[type].style[direction]) / 100;\n }\n }\n ]);\n return Bar;\n}();\nexports.default = Bar;\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar User = function () {\n function User(player) {\n _classCallCheck(this, User);\n this.storageName = { volume: 'aplayer-volume' };\n this.default = { volume: player.options.volume || 0.7 };\n this.data = {};\n this.init();\n }\n _createClass(User, [\n {\n key: 'init',\n value: function init() {\n for (var item in this.storageName) {\n var name = this.storageName[item];\n this.data[item] = parseFloat(_utils2.default.storage.get(name) || this.default[item]);\n }\n }\n },\n {\n key: 'get',\n value: function get(key) {\n return this.data[key];\n }\n },\n {\n key: 'set',\n value: function set(key, value) {\n this.data[key] = value;\n _utils2.default.storage.set(this.storageName[key], value);\n }\n }\n ]);\n return User;\n}();\nexports.default = User;\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _lrc = __webpack_require__(31);\nvar _lrc2 = _interopRequireDefault(_lrc);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Lrc = function () {\n function Lrc(options) {\n _classCallCheck(this, Lrc);\n this.container = options.container;\n this.async = options.async;\n this.player = options.player;\n this.content = options.content;\n this.parsed = [];\n this.index = 0;\n this.current = [];\n }\n _createClass(Lrc, [\n {\n key: 'update',\n value: function update() {\n var currentTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.player.audio.currentTime;\n if (this.index > this.current.length - 1 || currentTime < this.current[this.index][0] || !this.current[this.index + 1] || currentTime >= this.current[this.index + 1][0]) {\n for (var i = 0; i < this.current.length; i++) {\n if (currentTime >= this.current[i][0] && (!this.current[i + 1] || currentTime < this.current[i + 1][0])) {\n this.index = i;\n this.container.style.transform = 'translateY(' + -this.index * 16 + 'px)';\n this.container.style.webkitTransform = 'translateY(' + -this.index * 16 + 'px)';\n this.container.getElementsByClassName('aplayer-lrc-current')[0].classList.remove('aplayer-lrc-current');\n this.container.getElementsByTagName('p')[i].classList.add('aplayer-lrc-current');\n }\n }\n }\n }\n },\n {\n key: 'switch',\n value: function _switch(index) {\n var _this = this;\n if (!this.parsed[index]) {\n if (!this.async) {\n if (this.content[index]) {\n this.parsed[index] = this.parse(this.content[index]);\n } else {\n this.parsed[index] = [[\n '00:00',\n 'Not available'\n ]];\n }\n } else {\n this.parsed[index] = [[\n '00:00',\n 'Loading'\n ]];\n var xhr = new XMLHttpRequest();\n xhr.onreadystatechange = function () {\n if (xhr.readyState === 4) {\n if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {\n _this.parsed[index] = _this.parse(xhr.responseText);\n } else {\n console.log('Request was unsuccessful: ' + xhr.status);\n _this.parsed[index] = [[\n '00:00',\n 'Not available'\n ]];\n }\n _this.container.innerHTML = (0, _lrc2.default)({ lyrics: _this.parsed[index] });\n _this.update(0);\n _this.current = _this.parsed[index];\n }\n };\n var apiurl = this.content[index];\n xhr.open('get', apiurl, true);\n xhr.send(null);\n }\n }\n this.container.innerHTML = (0, _lrc2.default)({ lyrics: this.parsed[index] });\n this.update(0);\n this.current = this.parsed[index];\n }\n },\n {\n key: 'parse',\n value: function parse(lrc_s) {\n if (lrc_s) {\n lrc_s = lrc_s.replace(/([^\\]^\\n])\\[/g, function (match, p1) {\n return p1 + '\\n[';\n });\n var lyric = lrc_s.split('\\n');\n var lrc = [];\n var lyricLen = lyric.length;\n for (var i = 0; i < lyricLen; i++) {\n var lrcTimes = lyric[i].match(/\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/g);\n var lrcText = lyric[i].replace(/.*\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/g, '').replace(/<(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?>/g, '').replace(/^\\s+|\\s+$/g, '');\n if (lrcTimes) {\n var timeLen = lrcTimes.length;\n for (var j = 0; j < timeLen; j++) {\n var oneTime = /\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/.exec(lrcTimes[j]);\n var min2sec = oneTime[1] * 60;\n var sec2sec = parseInt(oneTime[2]);\n var msec2sec = oneTime[4] ? parseInt(oneTime[4]) / ((oneTime[4] + '').length === 2 ? 100 : 1000) : 0;\n var lrcTime = min2sec + sec2sec + msec2sec;\n lrc.push([\n lrcTime,\n lrcText\n ]);\n }\n }\n }\n lrc.sort(function (a, b) {\n return a[0] - b[0];\n });\n return lrc;\n } else {\n return [];\n }\n }\n }\n ]);\n return Lrc;\n}();\nexports.default = Lrc;\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $imports = __webpack_require__(3);\nmodule.exports = function ($data) {\n 'use strict';\n $data = $data || {};\n var $$out = '', $each = $imports.$each, lyrics = $data.lyrics, $value = $data.$value, $index = $data.$index, $escape = $imports.$escape;\n $each(lyrics, function ($value, $index) {\n $$out += '\\n <p';\n if ($index === 0) {\n $$out += ' class=\"aplayer-lrc-current\"';\n }\n $$out += '>';\n $$out += $escape($value[1]);\n $$out += '</p>\\n';\n });\n return $$out;\n};\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = __webpack_require__(2);\nvar _icons2 = _interopRequireDefault(_icons);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.initPlayButton();\n this.initList();\n this.initPlayBar();\n if (this.player.isMultiple()) {\n this.initOrderButton();\n }\n this.initLoopButton();\n this.initMenuButton();\n if (!_utils2.default.isMobile) {\n this.initVolumeButton();\n }\n }\n _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.pic.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n },\n {\n key: 'initList',\n value: function initList() {\n var _this2 = this;\n this.player.template.list.addEventListener('click', function (e) {\n var target = void 0;\n if (e.target.tagName.toUpperCase() === 'LI') {\n target = e.target;\n } else {\n target = e.target.parentElement;\n }\n var audioIndex = parseInt(target.getElementsByClassName('aplayer-list-index')[0].innerHTML) - 1;\n if (audioIndex !== _this2.player.playIndex) {\n _this2.player.switchAudio(audioIndex);\n _this2.player.play();\n } else {\n _this2.player.toggle();\n }\n });\n }\n },\n {\n key: 'initPlayBar',\n value: function initPlayBar() {\n var _this3 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.lrc && _this3.player.lrc.update(percentage * _this3.player.audio.duration);\n _this3.player.template.ptime.innerHTML = _utils2.default.secondToTime(percentage * _this3.player.audio.duration);\n };\n var thumbUp = function thumbUp(e) {\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.seek(_this3.player.bar.get('played', 'width') * _this3.player.audio.duration);\n _this3.player.timer.enable('progress');\n };\n this.player.template.barWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this3.player.timer.disable('progress');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this4 = this;\n this.player.template.volumeButton.addEventListener('click', function () {\n if (_this4.player.audio.muted) {\n _this4.player.audio.muted = false;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', _this4.player.volume(), 'height');\n } else {\n _this4.player.audio.muted = true;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', 0, 'height');\n }\n });\n var thumbMove = function thumbMove(e) {\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n var thumbUp = function thumbUp(e) {\n _this4.player.template.volumeBarWrap.classList.remove('aplayer-volume-bar-wrap-active');\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n this.player.template.volumeBarWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this4.player.template.volumeBarWrap.classList.add('aplayer-volume-bar-wrap-active');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initOrderButton',\n value: function initOrderButton() {\n var _this5 = this;\n this.player.template.order.addEventListener('click', function () {\n if (_this5.player.options.order === 'list') {\n _this5.player.options.order = 'random';\n _this5.player.template.order.innerHTML = _icons2.default.orderRandom;\n } else if (_this5.player.options.order === 'random') {\n _this5.player.options.order = 'list';\n _this5.player.template.order.innerHTML = _icons2.default.orderList;\n }\n });\n }\n },\n {\n key: 'initLoopButton',\n value: function initLoopButton() {\n var _this6 = this;\n this.player.template.loop.addEventListener('click', function () {\n if (_this6.player.isMultiple()) {\n if (_this6.player.options.loop === 'one') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n } else if (_this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'one';\n _this6.player.template.loop.innerHTML = _icons2.default.loopOne;\n }\n } else {\n if (_this6.player.options.loop === 'one' || _this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n }\n }\n });\n }\n },\n {\n key: 'initMenuButton',\n value: function initMenuButton() {\n var _this7 = this;\n this.player.template.list.style.height = 33 * this.player.options.audio.length - 1 + 'px';\n this.player.template.menu.addEventListener('click', function () {\n if (!_this7.player.template.list.classList.contains('aplayer-list-hide')) {\n _this7.player.template.list.classList.add('aplayer-list-hide');\n } else {\n _this7.player.template.list.classList.remove('aplayer-list-hide');\n }\n });\n }\n }\n ]);\n return Controller;\n}();\nexports.default = Controller;\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = __webpack_require__(0);\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Timer = function () {\n function Timer(player) {\n _classCallCheck(this, Timer);\n this.player = player;\n window.requestAnimationFrame = function () {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {\n window.setTimeout(callback, 1000 / 60);\n };\n }();\n this.types = [\n 'loading',\n 'progress'\n ];\n this.init();\n }\n _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n _this['init' + item + 'Checker']();\n return item;\n });\n }\n },\n {\n key: 'initprogressChecker',\n value: function initprogressChecker() {\n var _this2 = this;\n this.progressChecker = setInterval(function () {\n if (_this2.enableprogressChecker) {\n _this2.player.bar.set('played', _this2.player.audio.currentTime / _this2.player.audio.duration, 'width');\n _this2.player.lrc && _this2.player.lrc.update();\n var currentTime = _utils2.default.secondToTime(_this2.player.audio.currentTime);\n if (_this2.player.template.ptime.innerHTML !== currentTime) {\n _this2.player.template.ptime.innerHTML = currentTime;\n }\n }\n }, 100);\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this3 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this3.enableloadingChecker) {\n currentPlayPos = _this3.player.audio.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.add('aplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.remove('aplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable' + type + 'Checker'] = true;\n if (type === 'fps') {\n this.initfpsChecker();\n }\n }\n },\n {\n key: 'disable',\n value: function disable(type) {\n this['enable' + type + 'Checker'] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this4 = this;\n this.types.map(function (item) {\n _this4['enable' + item + 'Checker'] = false;\n _this4[item + 'Checker'] && clearInterval(_this4[item + 'Checker']);\n return item;\n });\n }\n }\n ]);\n return Timer;\n}();\nexports.default = Timer;\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.audioEvents = [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'mozaudioavailable',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ];\n this.playerEvents = [\n 'destroy',\n 'switchaudio',\n 'addaudio',\n 'removeaudio'\n ];\n }\n _createClass(Events, [\n {\n key: 'on',\n value: function on(name, callback) {\n if (this.type(name) && typeof callback === 'function') {\n if (!this.events[name]) {\n this.events[name] = [];\n }\n this.events[name].push(callback);\n }\n }\n },\n {\n key: 'trigger',\n value: function trigger(name, info) {\n if (this.events[name] && this.events[name].length) {\n for (var i = 0; i < this.events[name].length; i++) {\n this.events[name][i](info);\n }\n }\n }\n },\n {\n key: 'type',\n value: function type(name) {\n if (this.playerEvents.indexOf(name) !== -1) {\n return 'player';\n } else if (this.audioEvents.indexOf(name) !== -1) {\n return 'audio';\n }\n console.error('Unknown event name: ' + name);\n return null;\n }\n }\n ]);\n return Events;\n}();\nexports.default = Events;\n\n/***/ })\n/******/ ])[\"default\"];\n});\n\n\n// WEBPACK FOOTER //\n// APlayer.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 4);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap e40d0520cf9b07d68ca4","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nfunction _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n } else {\n return Array.from(arr);\n }\n}\nvar isMobile = /mobile/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n var add0 = function add0(num) {\n return num < 10 ? '0' + num : '' + num;\n };\n var hour = Math.floor(second / 3600);\n var min = Math.floor((second - hour * 3600) / 60);\n var sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [\n hour,\n min,\n sec\n ] : [\n min,\n sec\n ]).map(add0).join(':');\n },\n getElementViewLeft: function getElementViewLeft(element) {\n var actualLeft = element.offsetLeft;\n var current = element.offsetParent;\n var elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {\n while (current !== null) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n } else {\n while (current !== null && current !== element) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n }\n return actualLeft - elementScrollLeft;\n },\n getElementViewTop: function getElementViewTop(element) {\n var actualTop = element.offsetTop;\n var current = element.offsetParent;\n var elementScrollTop = 0;\n while (current !== null) {\n actualTop += current.offsetTop;\n current = current.offsetParent;\n }\n elementScrollTop = document.body.scrollTop + document.documentElement.scrollTop;\n return actualTop - elementScrollTop;\n },\n isMobile: isMobile,\n storage: {\n set: function set(key, value) {\n localStorage.setItem(key, value);\n },\n get: function get(key) {\n return localStorage.getItem(key);\n }\n },\n nameMap: {\n dragStart: isMobile ? 'touchstart' : 'mousedown',\n dragMove: isMobile ? 'touchmove' : 'mousemove',\n dragEnd: isMobile ? 'touchend' : 'mouseup'\n },\n randomOrder: function randomOrder() {\n var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined.options.audio.length;\n function shuffle(arr) {\n for (var i = arr.length - 1; i >= 0; i--) {\n var randomIndex = Math.floor(Math.random() * (i + 1));\n var itemAtIndex = arr[randomIndex];\n arr[randomIndex] = arr[i];\n arr[i] = itemAtIndex;\n }\n return arr;\n }\n return shuffle([].concat(_toConsumableArray(Array(length))).map(function (item, i) {\n return i;\n }));\n }\n};\nexports.default = utils;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/utils.js\n// module id = 0\n// module chunks = 0","'use strict';\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || Function('return this')() || (1, eval)('this');\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 1\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _play = require('../assets/play.svg');\nvar _play2 = _interopRequireDefault(_play);\nvar _pause = require('../assets/pause.svg');\nvar _pause2 = _interopRequireDefault(_pause);\nvar _volumeUp = require('../assets/volume-up.svg');\nvar _volumeUp2 = _interopRequireDefault(_volumeUp);\nvar _volumeDown = require('../assets/volume-down.svg');\nvar _volumeDown2 = _interopRequireDefault(_volumeDown);\nvar _volumeOff = require('../assets/volume-off.svg');\nvar _volumeOff2 = _interopRequireDefault(_volumeOff);\nvar _orderRandom = require('../assets/order-random.svg');\nvar _orderRandom2 = _interopRequireDefault(_orderRandom);\nvar _orderList = require('../assets/order-list.svg');\nvar _orderList2 = _interopRequireDefault(_orderList);\nvar _menu = require('../assets/menu.svg');\nvar _menu2 = _interopRequireDefault(_menu);\nvar _loopAll = require('../assets/loop-all.svg');\nvar _loopAll2 = _interopRequireDefault(_loopAll);\nvar _loopOne = require('../assets/loop-one.svg');\nvar _loopOne2 = _interopRequireDefault(_loopOne);\nvar _loopNone = require('../assets/loop-none.svg');\nvar _loopNone2 = _interopRequireDefault(_loopNone);\nvar _loading = require('../assets/loading.svg');\nvar _loading2 = _interopRequireDefault(_loading);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nvar Icons = {\n play: _play2.default,\n pause: _pause2.default,\n volumeUp: _volumeUp2.default,\n volumeDown: _volumeDown2.default,\n volumeOff: _volumeOff2.default,\n orderRandom: _orderRandom2.default,\n orderList: _orderList2.default,\n menu: _menu2.default,\n loopAll: _loopAll2.default,\n loopOne: _loopOne2.default,\n loopNone: _loopNone2.default,\n loading: _loading2.default\n};\nexports.default = Icons;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/icons.js\n// module id = 2\n// module chunks = 0","'use strict';\nmodule.exports = require('./compile/runtime');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/art-template/lib/runtime.js\n// module id = 3\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nrequire('../css/index.scss');\nvar _player = require('./player');\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nconsole.log('\\n' + ' %c APlayer v' + APLAYER_VERSION + ' ' + GIT_HASH + ' %c http://aplayer.js.org ' + '\\n' + '\\n', 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexports.default = _player2.default;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/index.js\n// module id = 4\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _promisePolyfill = require('promise-polyfill');\nvar _promisePolyfill2 = _interopRequireDefault(_promisePolyfill);\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = require('./icons');\nvar _icons2 = _interopRequireDefault(_icons);\nvar _options = require('./options');\nvar _options2 = _interopRequireDefault(_options);\nvar _template = require('./template');\nvar _template2 = _interopRequireDefault(_template);\nvar _bar = require('./bar');\nvar _bar2 = _interopRequireDefault(_bar);\nvar _user = require('./user');\nvar _user2 = _interopRequireDefault(_user);\nvar _lrc = require('./lrc');\nvar _lrc2 = _interopRequireDefault(_lrc);\nvar _controller = require('./controller');\nvar _controller2 = _interopRequireDefault(_controller);\nvar _timer = require('./timer');\nvar _timer2 = _interopRequireDefault(_timer);\nvar _events = require('./events');\nvar _events2 = _interopRequireDefault(_events);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar instances = [];\nvar APlayer = function () {\n function APlayer(options) {\n _classCallCheck(this, APlayer);\n this.options = (0, _options2.default)(options);\n this.container = this.options.container;\n this.playIndex = 0;\n this.paused = true;\n this.playedPromise = _promisePolyfill2.default.resolve();\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n this.container.classList.add('aplayer');\n if (this.options.lrc) {\n this.container.classList.add('aplayer-withlrc');\n }\n if (this.options.audio.length > 1) {\n this.container.classList.add('aplayer-withlist');\n }\n if (_utils2.default.isMobile) {\n this.container.classList.add('aplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 300;\n if (this.arrow) {\n this.container.classList.add('aplayer-arrow');\n }\n if (this.options.mini) {\n this.container.classList.add('aplayer-narrow');\n }\n this.container = this.options.container;\n if (this.options.lrc === 2 || this.options.lrc === true) {\n var lrcEle = this.container.getElementsByClassName('aplayer-lrc-content');\n for (var i = 0; i < lrcEle.length; i++) {\n if (this.options.audio[i]) {\n this.options.audio[i].lrc = lrcEle[i].innerHTML;\n }\n }\n }\n this.template = new _template2.default({\n container: this.container,\n options: this.options,\n randomOrder: this.randomOrder\n });\n if (this.template.info.offsetWidth < 200) {\n this.template.time.classList.add('aplayer-time-narrow');\n }\n if (this.options.lrc) {\n this.lrc = new _lrc2.default({\n container: this.template.lrc,\n async: this.options.lrc === 3,\n content: this.options.audio.map(function (item) {\n return item.lrc;\n }),\n player: this\n });\n }\n this.events = new _events2.default();\n this.user = new _user2.default(this);\n this.bar = new _bar2.default(this.template);\n this.controller = new _controller2.default(this);\n this.timer = new _timer2.default(this);\n this.initAudio();\n if (this.options.order === 'random') {\n this.switchAudio(this.randomOrder[0]);\n } else {\n this.switchAudio(0);\n }\n if (this.options.autoplay) {\n this.play();\n }\n instances.push(this);\n }\n _createClass(APlayer, [\n {\n key: 'initAudio',\n value: function initAudio() {\n var _this = this;\n this.audio = document.createElement('audio');\n this.audio.preload = this.options.preload;\n var _loop = function _loop(i) {\n _this.audio.addEventListener(_this.events.audioEvents[i], function () {\n _this.events.trigger(_this.events.audioEvents[i]);\n });\n };\n for (var i = 0; i < this.events.audioEvents.length; i++) {\n _loop(i);\n }\n this.on('play', function () {\n if (_this.paused) {\n _this.play();\n }\n });\n this.on('pause', function () {\n if (!_this.paused) {\n _this.pause();\n }\n });\n this.on('durationchange', function () {\n if (_this.audio.duration !== 1) {\n _this.template.dtime.innerHTML = _utils2.default.secondToTime(_this.audio.duration);\n }\n });\n this.on('progress', function () {\n var percentage = _this.audio.buffered.length ? _this.audio.buffered.end(_this.audio.buffered.length - 1) / _this.audio.duration : 0;\n _this.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n _this.template.author.innerHTML = ' - Error happens \\u2565\\u2565';\n });\n this.on('ended', function () {\n if (_this.options.loop === 'none') {\n if (_this.options.order === 'list') {\n if (_this.playIndex < _this.options.audio.length - 1) {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.play();\n } else {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n _this.pause();\n }\n } else if (_this.options.order === 'random') {\n if (_this.randomOrder.indexOf(_this.playIndex) < _this.randomOrder.length - 1) {\n _this.switchAudio(_this.nextRandomNum());\n _this.play();\n } else {\n _this.switchAudio(_this.nextRandomNum());\n _this.pause();\n }\n }\n } else if (_this.options.loop === 'one') {\n _this.switchAudio(_this.playIndex);\n _this.play();\n } else if (_this.options.loop === 'all') {\n if (_this.options.order === 'list') {\n _this.switchAudio((_this.playIndex + 1) % _this.options.audio.length);\n } else if (_this.options.order === 'random') {\n _this.switchAudio(_this.nextRandomNum());\n }\n _this.play();\n }\n });\n this.volume(this.user.get('volume'), true);\n }\n },\n {\n key: 'switchAudio',\n value: function switchAudio(index) {\n var _this2 = this;\n this.handlePlayPromise(function () {\n _this2.events.trigger('switchaudio', index);\n if (typeof index !== 'undefined') {\n _this2.playIndex = index;\n }\n if (_this2.options.audio[_this2.playIndex].cover) {\n _this2.template.pic.style.backgroundImage = 'url(\\'' + _this2.options.audio[_this2.playIndex].cover + '\\')';\n } else {\n _this2.template.pic.style.backgroundImage = '';\n }\n _this2.template.title.innerHTML = _this2.options.audio[_this2.playIndex].name;\n _this2.template.author.innerHTML = _this2.options.audio[_this2.playIndex].artist ? ' - ' + _this2.options.audio[_this2.playIndex].artist : '';\n var light = _this2.container.getElementsByClassName('aplayer-list-light')[0];\n if (light) {\n light.classList.remove('aplayer-list-light');\n }\n _this2.container.querySelectorAll('.aplayer-list li')[_this2.playIndex].classList.add('aplayer-list-light');\n _this2.template.list.scrollTop = _this2.playIndex * 33;\n _this2.audio.src = _this2.options.audio[_this2.playIndex].url;\n _this2.seek(0);\n var playPromise = void 0;\n if (!_this2.paused) {\n playPromise = _promisePolyfill2.default.resolve(_this2.audio.play()).catch(function (err) {\n console.error(err);\n _this2.pause();\n });\n }\n _this2.lrc && _this2.lrc.switch(_this2.playIndex);\n if (_this2.audio.duration !== 1) {\n _this2.template.dtime.innerHTML = _this2.audio.duration ? _utils2.default.secondToTime(_this2.audio.duration) : '00:00';\n }\n return playPromise;\n });\n }\n },\n {\n key: 'seek',\n value: function seek(time) {\n time = Math.max(time, 0);\n if (this.audio.duration) {\n time = Math.min(time, this.audio.duration);\n }\n this.audio.currentTime = time;\n if (isNaN(this.audio.duration)) {\n this.bar.set('played', 0, 'width');\n } else {\n this.bar.set('played', time / this.audio.duration, 'width');\n }\n this.template.ptime.innerHTML = _utils2.default.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play() {\n var _this3 = this;\n this.handlePlayPromise(function () {\n if (_this3.paused) {\n _this3.paused = false;\n _this3.template.button.classList.remove('aplayer-play');\n _this3.template.button.classList.add('aplayer-pause');\n _this3.template.button.innerHTML = '';\n setTimeout(function () {\n _this3.template.button.innerHTML = _icons2.default.pause;\n }, 100);\n }\n var playPromise = _promisePolyfill2.default.resolve(_this3.audio.play()).catch(function (err) {\n console.error(err);\n _this3.pause();\n });\n _this3.timer.enable('loading');\n _this3.timer.enable('progress');\n if (_this3.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (_this3 !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n return playPromise;\n });\n }\n },\n {\n key: 'pause',\n value: function pause() {\n var _this4 = this;\n this.handlePlayPromise(function () {\n if (!_this4.paused) {\n _this4.paused = true;\n _this4.template.button.classList.remove('aplayer-pause');\n _this4.template.button.classList.add('aplayer-play');\n _this4.template.button.innerHTML = '';\n setTimeout(function () {\n _this4.template.button.innerHTML = _icons2.default.play;\n }, 100);\n }\n _this4.audio.pause();\n _this4.timer.disable('loading');\n _this4.timer.disable('progress');\n });\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeButton.innerHTML = _icons2.default.volumeDown;\n } else {\n this.template.volumeButton.innerHTML = _icons2.default.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage) {\n percentage = parseFloat(percentage);\n if (!isNaN(percentage)) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.bar.set('volume', percentage, 'height');\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n this.audio.volume = percentage;\n if (this.audio.muted) {\n this.audio.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.audio.muted ? 0 : this.audio.volume;\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.template.button.classList.contains('aplayer-play')) {\n this.play();\n } else if (this.template.button.classList.contains('aplayer-pause')) {\n this.pause();\n }\n }\n },\n {\n key: 'isMultiple',\n value: function isMultiple() {\n return this.options.audio.length > 1;\n }\n },\n {\n key: 'nextRandomNum',\n value: function nextRandomNum() {\n if (this.isMultiple()) {\n var index = this.randomOrder.indexOf(this.playIndex);\n if (index === this.randomOrder.length - 1) {\n return this.randomOrder[0];\n } else {\n return this.randomOrder[index + 1];\n }\n } else {\n return 0;\n }\n }\n },\n {\n key: 'addAudio',\n value: function addAudio(newMusic) {\n this.events.trigger('addaudio', newMusic);\n var wasSingle = !this.isMultiple();\n this.options.audio = this.options.audio.concat(newMusic);\n var newItemHTML = '';\n for (var i = 0; i < newMusic.length; i++) {\n newItemHTML += '<li><span class=\"aplayer-list-cur\" style=\"background: ' + this.options.theme + ';\"></span><span class=\"aplayer-list-index\">' + (this.options.audio.length - newMusic.length + i + 1) + '</span><span class=\"aplayer-list-title\">' + newMusic[i].name + '</span><span class=\"aplayer-list-author\">' + newMusic[i].artist + '</span></li>';\n }\n this.template.listOl.innerHTML += newItemHTML;\n if (wasSingle && this.isMultiple()) {\n this.container.classList.add('aplayer-withlist');\n this.audio.loop = false;\n }\n var songListLength = this.container.querySelectorAll('.aplayer-list li').length;\n this.template.list.style.height = songListLength * 33 - 1 + 'px';\n this.randomOrder = _utils2.default.randomOrder(this.options.audio.length);\n }\n },\n {\n key: 'removeAudio',\n value: function removeAudio(index) {\n this.events.trigger('removeaudio', index);\n if (this.options.audio[index] && this.options.audio.length > 1) {\n var list = this.container.querySelectorAll('.aplayer-list li');\n this.options.audio.splice(index, 1);\n if (index === this.playIndex) {\n if (this.options.audio[index + 1]) {\n this.switchAudio(index);\n } else {\n this.switchAudio(index - 1);\n }\n }\n if (this.playIndex > index) {\n this.playIndex--;\n }\n list[index].remove();\n for (var i = index; i < list.length; i++) {\n list[i].getElementsByClassName('aplayer-list-index')[0].textContent = i;\n }\n if (this.options.audio.length === 1) {\n this.container.classList.remove('aplayer-withlist');\n }\n this.template.list.style.height = parseInt(this.template.list.style.height, 10) - 33 + 'px';\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n instances.splice(instances.indexOf(this), 1);\n this.pause();\n this.container.innerHTML = '';\n this.audio.src = '';\n this.timer.destroy();\n this.events.trigger('destroy');\n }\n },\n {\n key: 'handlePlayPromise',\n value: function handlePlayPromise(callback) {\n this.playedPromise = this.playedPromise.then(callback).catch(function (err) {\n console.error(err);\n });\n }\n }\n ]);\n return APlayer;\n}();\nexports.default = APlayer;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/player.js\n// module id = 6\n// module chunks = 0","'use strict';\nvar _typeof = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n};\nvar setTimeoutFunc = setTimeout;\nfunction noop() {\n}\nfunction bind(fn, thisArg) {\n return function () {\n fn.apply(thisArg, arguments);\n };\n}\nfunction Promise(fn) {\n if (!(this instanceof Promise))\n throw new TypeError('Promises must be constructed via new');\n if (typeof fn !== 'function')\n throw new TypeError('not a function');\n this._state = 0;\n this._handled = false;\n this._value = undefined;\n this._deferreds = [];\n doResolve(fn, this);\n}\nfunction handle(self, deferred) {\n while (self._state === 3) {\n self = self._value;\n }\n if (self._state === 0) {\n self._deferreds.push(deferred);\n return;\n }\n self._handled = true;\n Promise._immediateFn(function () {\n var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;\n if (cb === null) {\n (self._state === 1 ? resolve : reject)(deferred.promise, self._value);\n return;\n }\n var ret;\n try {\n ret = cb(self._value);\n } catch (e) {\n reject(deferred.promise, e);\n return;\n }\n resolve(deferred.promise, ret);\n });\n}\nfunction resolve(self, newValue) {\n try {\n if (newValue === self)\n throw new TypeError('A promise cannot be resolved with itself.');\n if (newValue && ((typeof newValue === 'undefined' ? 'undefined' : _typeof(newValue)) === 'object' || typeof newValue === 'function')) {\n var then = newValue.then;\n if (newValue instanceof Promise) {\n self._state = 3;\n self._value = newValue;\n finale(self);\n return;\n } else if (typeof then === 'function') {\n doResolve(bind(then, newValue), self);\n return;\n }\n }\n self._state = 1;\n self._value = newValue;\n finale(self);\n } catch (e) {\n reject(self, e);\n }\n}\nfunction reject(self, newValue) {\n self._state = 2;\n self._value = newValue;\n finale(self);\n}\nfunction finale(self) {\n if (self._state === 2 && self._deferreds.length === 0) {\n Promise._immediateFn(function () {\n if (!self._handled) {\n Promise._unhandledRejectionFn(self._value);\n }\n });\n }\n for (var i = 0, len = self._deferreds.length; i < len; i++) {\n handle(self, self._deferreds[i]);\n }\n self._deferreds = null;\n}\nfunction Handler(onFulfilled, onRejected, promise) {\n this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;\n this.onRejected = typeof onRejected === 'function' ? onRejected : null;\n this.promise = promise;\n}\nfunction doResolve(fn, self) {\n var done = false;\n try {\n fn(function (value) {\n if (done)\n return;\n done = true;\n resolve(self, value);\n }, function (reason) {\n if (done)\n return;\n done = true;\n reject(self, reason);\n });\n } catch (ex) {\n if (done)\n return;\n done = true;\n reject(self, ex);\n }\n}\nPromise.prototype['catch'] = function (onRejected) {\n return this.then(null, onRejected);\n};\nPromise.prototype.then = function (onFulfilled, onRejected) {\n var prom = new this.constructor(noop);\n handle(this, new Handler(onFulfilled, onRejected, prom));\n return prom;\n};\nPromise.prototype['finally'] = function (callback) {\n var constructor = this.constructor;\n return this.then(function (value) {\n return constructor.resolve(callback()).then(function () {\n return value;\n });\n }, function (reason) {\n return constructor.resolve(callback()).then(function () {\n return constructor.reject(reason);\n });\n });\n};\nPromise.all = function (arr) {\n return new Promise(function (resolve, reject) {\n if (!arr || typeof arr.length === 'undefined')\n throw new TypeError('Promise.all accepts an array');\n var args = Array.prototype.slice.call(arr);\n if (args.length === 0)\n return resolve([]);\n var remaining = args.length;\n function res(i, val) {\n try {\n if (val && ((typeof val === 'undefined' ? 'undefined' : _typeof(val)) === 'object' || typeof val === 'function')) {\n var then = val.then;\n if (typeof then === 'function') {\n then.call(val, function (val) {\n res(i, val);\n }, reject);\n return;\n }\n }\n args[i] = val;\n if (--remaining === 0) {\n resolve(args);\n }\n } catch (ex) {\n reject(ex);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n};\nPromise.resolve = function (value) {\n if (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.constructor === Promise) {\n return value;\n }\n return new Promise(function (resolve) {\n resolve(value);\n });\n};\nPromise.reject = function (value) {\n return new Promise(function (resolve, reject) {\n reject(value);\n });\n};\nPromise.race = function (values) {\n return new Promise(function (resolve, reject) {\n for (var i = 0, len = values.length; i < len; i++) {\n values[i].then(resolve, reject);\n }\n });\n};\nPromise._immediateFn = typeof setImmediate === 'function' && function (fn) {\n setImmediate(fn);\n} || function (fn) {\n setTimeoutFunc(fn, 0);\n};\nPromise._unhandledRejectionFn = function _unhandledRejectionFn(err) {\n if (typeof console !== 'undefined' && console) {\n console.warn('Possible Unhandled Promise Rejection:', err);\n }\n};\nmodule.exports = Promise;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/promise-polyfill/lib/index.js\n// module id = 7\n// module chunks = 0","'use strict';\nvar apply = Function.prototype.apply;\nexports.setTimeout = function () {\n return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);\n};\nexports.setInterval = function () {\n return new Timeout(apply.call(setInterval, window, arguments), clearInterval);\n};\nexports.clearTimeout = exports.clearInterval = function (timeout) {\n if (timeout) {\n timeout.close();\n }\n};\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function () {\n};\nTimeout.prototype.close = function () {\n this._clearFn.call(window, this._id);\n};\nexports.enroll = function (item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\nexports.unenroll = function (item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\nexports._unrefActive = exports.active = function (item) {\n clearTimeout(item._idleTimeoutId);\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\nrequire('setimmediate');\nexports.setImmediate = setImmediate;\nexports.clearImmediate = clearImmediate;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/timers-browserify/main.js\n// module id = 8\n// module chunks = 0","'use strict';\n(function (global, undefined) {\n 'use strict';\n if (global.setImmediate) {\n return;\n }\n var nextHandle = 1;\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n function setImmediate(callback) {\n if (typeof callback !== 'function') {\n callback = new Function('' + callback);\n }\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n var task = {\n callback: callback,\n args: args\n };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n function runIfPresent(handle) {\n if (currentlyRunningATask) {\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n function installNextTickImplementation() {\n registerImmediate = function registerImmediate(handle) {\n process.nextTick(function () {\n runIfPresent(handle);\n });\n };\n }\n function canUsePostMessage() {\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function () {\n postMessageIsAsynchronous = false;\n };\n global.postMessage('', '*');\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n function installPostMessageImplementation() {\n var messagePrefix = 'setImmediate$' + Math.random() + '$';\n var onGlobalMessage = function onGlobalMessage(event) {\n if (event.source === global && typeof event.data === 'string' && event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n if (global.addEventListener) {\n global.addEventListener('message', onGlobalMessage, false);\n } else {\n global.attachEvent('onmessage', onGlobalMessage);\n }\n registerImmediate = function registerImmediate(handle) {\n global.postMessage(messagePrefix + handle, '*');\n };\n }\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function (event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n registerImmediate = function registerImmediate(handle) {\n channel.port2.postMessage(handle);\n };\n }\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function registerImmediate(handle) {\n var script = doc.createElement('script');\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n function installSetTimeoutImplementation() {\n registerImmediate = function registerImmediate(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n if ({}.toString.call(global.process) === '[object process]') {\n installNextTickImplementation();\n } else if (canUsePostMessage()) {\n installPostMessageImplementation();\n } else if (global.MessageChannel) {\n installMessageChannelImplementation();\n } else if (doc && 'onreadystatechange' in doc.createElement('script')) {\n installReadyStateChangeImplementation();\n } else {\n installSetTimeoutImplementation();\n }\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === 'undefined' ? typeof global === 'undefined' ? undefined : global : self));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/setimmediate/setImmediate.js\n// module id = 9\n// module chunks = 0","'use strict';\nvar process = module.exports = {};\nvar cachedSetTimeout;\nvar cachedClearTimeout;\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout() {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n}());\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n return setTimeout(fun, 0);\n }\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n return cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n return cachedSetTimeout.call(null, fun, 0);\n } catch (e) {\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n return clearTimeout(marker);\n }\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n return cachedClearTimeout(marker);\n } catch (e) {\n try {\n return cachedClearTimeout.call(null, marker);\n } catch (e) {\n return cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n var len = queue.length;\n while (len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = '';\nprocess.versions = {};\nfunction noop() {\n}\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\nprocess.listeners = function (name) {\n return [];\n};\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\nprocess.cwd = function () {\n return '/';\n};\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function () {\n return 0;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/process/browser.js\n// module id = 10\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 16 31\\\"><path d=\\\"M15.552 15.168q0.448 0.32 0.448 0.832 0 0.448-0.448 0.768l-13.696 8.512q-0.768 0.512-1.312 0.192t-0.544-1.28v-16.448q0-0.96 0.544-1.28t1.312 0.192z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/play.svg\n// module id = 11\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 17 32\\\"><path d=\\\"M14.080 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048zM2.88 4.8q2.88 0 2.88 2.048v18.24q0 2.112-2.88 2.112t-2.88-2.112v-18.24q0-2.048 2.88-2.048z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/pause.svg\n// module id = 12\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528zM25.152 16q0 2.72-1.536 5.056t-4 3.36q-0.256 0.096-0.448 0.096-0.48 0-0.832-0.352t-0.32-0.8q0-0.704 0.672-1.056 1.024-0.512 1.376-0.8 1.312-0.96 2.048-2.4t0.736-3.104-0.736-3.104-2.048-2.4q-0.352-0.288-1.376-0.8-0.672-0.352-0.672-1.056 0-0.448 0.32-0.8t0.8-0.352q0.224 0 0.48 0.096 2.496 1.056 4 3.36t1.536 5.056zM29.728 16q0 4.096-2.272 7.552t-6.048 5.056q-0.224 0.096-0.448 0.096-0.48 0-0.832-0.352t-0.32-0.8q0-0.64 0.704-1.056 0.128-0.064 0.384-0.192t0.416-0.192q0.8-0.448 1.44-0.896 2.208-1.632 3.456-4.064t1.216-5.152-1.216-5.152-3.456-4.064q-0.64-0.448-1.44-0.896-0.128-0.096-0.416-0.192t-0.384-0.192q-0.704-0.416-0.704-1.056 0-0.448 0.32-0.8t0.832-0.352q0.224 0 0.448 0.096 3.776 1.632 6.048 5.056t2.272 7.552z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/volume-up.svg\n// module id = 13\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8zM20.576 16q0 1.344-0.768 2.528t-2.016 1.664q-0.16 0.096-0.448 0.096-0.448 0-0.8-0.32t-0.32-0.832q0-0.384 0.192-0.64t0.544-0.448 0.608-0.384 0.512-0.64 0.192-1.024-0.192-1.024-0.512-0.64-0.608-0.384-0.544-0.448-0.192-0.64q0-0.48 0.32-0.832t0.8-0.32q0.288 0 0.448 0.096 1.248 0.48 2.016 1.664t0.768 2.528z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/volume-down.svg\n// module id = 14\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 28 32\\\"><path d=\\\"M13.728 6.272v19.456q0 0.448-0.352 0.8t-0.8 0.32-0.8-0.32l-5.952-5.952h-4.672q-0.48 0-0.8-0.352t-0.352-0.8v-6.848q0-0.48 0.352-0.8t0.8-0.352h4.672l5.952-5.952q0.32-0.32 0.8-0.32t0.8 0.32 0.352 0.8z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/volume-off.svg\n// module id = 15\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M22.667 4l7 6-7 6 7 6-7 6v-4h-3.653l-3.76-3.76 2.827-2.827 2.587 2.587h2v-8h-2l-12 12h-6v-4h4.347l12-12h3.653v-4zM2.667 8h6l3.76 3.76-2.827 2.827-2.587-2.587h-4.347v-4z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/order-random.svg\n// module id = 16\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M0.622 18.334h19.54v7.55l11.052-9.412-11.052-9.413v7.549h-19.54v3.725z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/order-list.svg\n// module id = 17\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 22 32\\\"><path d=\\\"M20.8 14.4q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2zM1.6 11.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2zM20.8 20.8q0.704 0 1.152 0.48t0.448 1.12-0.48 1.12-1.12 0.48h-19.2q-0.64 0-1.12-0.48t-0.48-1.12 0.448-1.12 1.152-0.48h19.2z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/menu.svg\n// module id = 18\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 29 32\\\"><path d=\\\"M9.333 9.333h13.333v4l5.333-5.333-5.333-5.333v4h-16v8h2.667v-5.333zM22.667 22.667h-13.333v-4l-5.333 5.333 5.333 5.333v-4h16v-8h-2.667v5.333z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/loop-all.svg\n// module id = 19\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 33 32\\\"><path d=\\\"M9.333 9.333h13.333v4l5.333-5.333-5.333-5.333v4h-16v8h2.667v-5.333zM22.667 22.667h-13.333v-4l-5.333 5.333 5.333 5.333v-4h16v-8h-2.667v5.333zM17.333 20v-8h-1.333l-2.667 1.333v1.333h2v5.333h2z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/loop-one.svg\n// module id = 20\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 29 32\\\"><path d=\\\"M2.667 7.027l1.707-1.693 22.293 22.293-1.693 1.707-4-4h-11.64v4l-5.333-5.333 5.333-5.333v4h8.973l-8.973-8.973v0.973h-2.667v-3.64l-4-4zM22.667 17.333h2.667v5.573l-2.667-2.667v-2.907zM22.667 6.667v-4l5.333 5.333-5.333 5.333v-4h-10.907l-2.667-2.667h13.573z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/loop-none.svg\n// module id = 21\n// module chunks = 0","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M4 16c0-6.6 5.4-12 12-12s12 5.4 12 12c0 1.2-0.8 2-2 2s-2-0.8-2-2c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8c1.2 0 2 0.8 2 2s-0.8 2-2 2c-6.6 0-12-5.4-12-12z\\\"></path></svg>\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/loading.svg\n// module id = 22\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nexports.default = function (options) {\n var defaultOption = {\n container: options.element || document.getElementsByClassName('aplayer')[0],\n mini: options.narrow || false,\n autoplay: false,\n mutex: true,\n lrc: options.showlrc || 0,\n preload: 'auto',\n theme: '#b7daff',\n loop: 'all',\n order: 'list',\n volume: 0.7,\n listFolded: false,\n listMaxHeight: options.listmaxheight,\n audio: options.music\n };\n for (var defaultKey in defaultOption) {\n if (defaultOption.hasOwnProperty(defaultKey) && !options.hasOwnProperty(defaultKey)) {\n options[defaultKey] = defaultOption[defaultKey];\n }\n }\n if (Object.prototype.toString.call(options.audio) !== '[object Array]') {\n options.audio = [options.audio];\n }\n options.audio.map(function (item) {\n item.name = item.name || item.title;\n item.artist = item.artist || item.author;\n item.cover = item.cover || item.pic;\n return item;\n });\n if (options.audio.length <= 1 && options.loop === 'one') {\n options.loop = 'all';\n }\n return options;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/options.js\n// module id = 23\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _icons = require('./icons');\nvar _icons2 = _interopRequireDefault(_icons);\nvar _player = require('../template/player.art');\nvar _player2 = _interopRequireDefault(_player);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Template = function () {\n function Template(options) {\n _classCallCheck(this, Template);\n this.container = options.container;\n this.options = options.options;\n this.randomOrder = options.randomOrder;\n this.init();\n }\n _createClass(Template, [{\n key: 'init',\n value: function init() {\n var cover = void 0;\n if (this.options.order === 'random') {\n cover = this.options.audio[this.randomOrder[0]].cover;\n } else {\n cover = this.options.audio[0].cover;\n }\n this.container.innerHTML = (0, _player2.default)({\n options: this.options,\n icons: _icons2.default,\n cover: cover\n });\n this.lrc = this.container.querySelector('.aplayer-lrc-contents');\n this.ptime = this.container.querySelector('.aplayer-ptime');\n this.info = this.container.querySelector('.aplayer-info');\n this.time = this.container.querySelector('.aplayer-time');\n this.barWrap = this.container.querySelector('.aplayer-bar-wrap');\n this.button = this.container.querySelector('.aplayer-button');\n this.list = this.container.querySelector('.aplayer-list');\n this.listOl = this.container.querySelector('.aplayer-list ol');\n this.played = this.container.querySelector('.aplayer-played');\n this.loaded = this.container.querySelector('.aplayer-loaded');\n this.thumb = this.container.querySelector('.aplayer-thumb');\n this.volume = this.container.querySelector('.aplayer-volume');\n this.volumeBar = this.container.querySelector('.aplayer-volume-bar');\n this.volumeButton = this.container.querySelector('.aplayer-time button');\n this.volumeBarWrap = this.container.querySelector('.aplayer-volume-bar-wrap');\n this.loop = this.container.querySelector('.aplayer-icon-loop');\n this.order = this.container.querySelector('.aplayer-icon-order');\n this.menu = this.container.querySelector('.aplayer-icon-menu');\n this.pic = this.container.querySelector('.aplayer-pic');\n this.title = this.container.querySelector('.aplayer-title');\n this.author = this.container.querySelector('.aplayer-author');\n this.dtime = this.container.querySelector('.aplayer-dtime');\n }\n }]);\n return Template;\n}();\nexports.default = Template;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/template.js\n// module id = 24\n// module chunks = 0","<div class=\"aplayer-pic\"{{ if cover }} style=\"background-image: url(\"{{ cover }}\");\"{{ /if }}>\n <div class=\"aplayer-button aplayer-play\">{{@ icons.play }}</div>\n</div>\n<div class=\"aplayer-info\">\n <div class=\"aplayer-music\">\n <span class=\"aplayer-title\"></span>\n <span class=\"aplayer-author\"></span>\n </div>\n <div class=\"aplayer-lrc\">\n <div class=\"aplayer-lrc-contents\" style=\"transform: translateY(0); -webkit-transform: translateY(0);\"></div>\n </div>\n <div class=\"aplayer-controller\">\n <div class=\"aplayer-bar-wrap\">\n <div class=\"aplayer-bar\">\n <div class=\"aplayer-loaded\" style=\"width: 0\"></div>\n <div class=\"aplayer-played\" style=\"width: 0; background: {{ options.theme }};\">\n <span class=\"aplayer-thumb\" style=\"background: {{ options.theme }};\">\n <span class=\"aplayer-loading-icon\">{{@ icons.loading }}</span>\n </span>\n </div>\n </div>\n </div>\n <div class=\"aplayer-time\">\n <span class=\"aplayer-time-inner\">\n - <span class=\"aplayer-ptime\">00:00</span> / <span class=\"aplayer-dtime\">00:00</span>\n </span>\n <div class=\"aplayer-volume-wrap\">\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-volume-down\">\n {{@ icons.volumeDown }}\n </button>\n <div class=\"aplayer-volume-bar-wrap\">\n <div class=\"aplayer-volume-bar\">\n <div class=\"aplayer-volume\" style=\"height: 80%; background: {{ options.theme }};\"></div>\n </div>\n </div>\n </div>\n {{ if options.audio.length > 1 }}\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-order\">\n {{ if options.order === 'list' }}{{@ icons.orderList }}{{ else if options.order === 'random' }}{{@ icons.orderRandom }}{{ /if }}\n </button>\n {{ /if }}\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-loop\">\n {{ if options.loop === 'one' }}{{@ icons.loopOne }}{{ else if options.loop === 'all' }}{{@ icons.loopAll }}{{ else if options.loop === 'none' }}{{@ icons.loopNone }}{{ /if }}\n </button>\n <button type=\"button\" class=\"aplayer-icon aplayer-icon-menu\">\n {{@ icons.menu }}\n </button>\n </div>\n </div>\n</div>\n<div class=\"aplayer-list{{ if options.listFolded }} aplayer-list-hide{{ /if }}\"{{ if options.listMaxHeight }} style=\"max-height: {{ options.listMaxHeight }}\"{{ /if }}>\n <ol>\n {{each options.audio}}\n <li>\n <span class=\"aplayer-list-cur\" style=\"background: {{ options.theme }};\"></span>\n <span class=\"aplayer-list-index\">{{ $index + 1 }}</span>\n <span class=\"aplayer-list-title\">{{ $value.name }}</span>\n <span class=\"aplayer-list-author\">{{ $value.artist }}</span>\n </li>\n {{/each}}\n </ol>\n</div>\n\n\n// WEBPACK FOOTER //\n// ./src/template/player.art","'use strict';\nvar detectNode = require('detect-node');\nvar runtime = Object.create(detectNode ? global : window);\nvar ESCAPE_REG = /[\"&'<>]/;\nruntime.$escape = function (content) {\n return xmlEscape(toString(content));\n};\nruntime.$each = function (data, callback) {\n if (Array.isArray(data)) {\n for (var i = 0, len = data.length; i < len; i++) {\n callback(data[i], i);\n }\n } else {\n for (var _i in data) {\n callback(data[_i], _i);\n }\n }\n};\nfunction toString(value) {\n if (typeof value !== 'string') {\n if (value === undefined || value === null) {\n value = '';\n } else if (typeof value === 'function') {\n value = toString(value.call(value));\n } else {\n value = JSON.stringify(value);\n }\n }\n return value;\n}\n;\nfunction xmlEscape(content) {\n var html = '' + content;\n var regexResult = ESCAPE_REG.exec(html);\n if (!regexResult) {\n return content;\n }\n var result = '';\n var i = void 0, lastIndex = void 0, char = void 0;\n for (i = regexResult.index, lastIndex = 0; i < html.length; i++) {\n switch (html.charCodeAt(i)) {\n case 34:\n char = '&#34;';\n break;\n case 38:\n char = '&#38;';\n break;\n case 39:\n char = '&#39;';\n break;\n case 60:\n char = '&#60;';\n break;\n case 62:\n char = '&#62;';\n break;\n default:\n continue;\n }\n if (lastIndex !== i) {\n result += html.substring(lastIndex, i);\n }\n lastIndex = i + 1;\n result += char;\n }\n if (lastIndex !== i) {\n return result + html.substring(lastIndex, i);\n } else {\n return result;\n }\n}\n;\nmodule.exports = runtime;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/art-template/lib/compile/runtime.js\n// module id = 26\n// module chunks = 0","'use strict';\nmodule.exports = false;\ntry {\n module.exports = Object.prototype.toString.call(global.process) === '[object process]';\n} catch (e) {\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/detect-node/index.js\n// module id = 27\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Bar = function () {\n function Bar(template) {\n _classCallCheck(this, Bar);\n this.elements = {};\n this.elements.volume = template.volume;\n this.elements.played = template.played;\n this.elements.loaded = template.loaded;\n }\n _createClass(Bar, [\n {\n key: 'set',\n value: function set(type, percentage, direction) {\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n this.elements[type].style[direction] = percentage * 100 + '%';\n }\n },\n {\n key: 'get',\n value: function get(type, direction) {\n return parseFloat(this.elements[type].style[direction]) / 100;\n }\n }\n ]);\n return Bar;\n}();\nexports.default = Bar;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/bar.js\n// module id = 28\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar User = function () {\n function User(player) {\n _classCallCheck(this, User);\n this.storageName = { volume: 'aplayer-volume' };\n this.default = { volume: player.options.volume || 0.7 };\n this.data = {};\n this.init();\n }\n _createClass(User, [\n {\n key: 'init',\n value: function init() {\n for (var item in this.storageName) {\n var name = this.storageName[item];\n this.data[item] = parseFloat(_utils2.default.storage.get(name) || this.default[item]);\n }\n }\n },\n {\n key: 'get',\n value: function get(key) {\n return this.data[key];\n }\n },\n {\n key: 'set',\n value: function set(key, value) {\n this.data[key] = value;\n _utils2.default.storage.set(this.storageName[key], value);\n }\n }\n ]);\n return User;\n}();\nexports.default = User;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/user.js\n// module id = 29\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _lrc = require('../template/lrc.art');\nvar _lrc2 = _interopRequireDefault(_lrc);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Lrc = function () {\n function Lrc(options) {\n _classCallCheck(this, Lrc);\n this.container = options.container;\n this.async = options.async;\n this.player = options.player;\n this.content = options.content;\n this.parsed = [];\n this.index = 0;\n this.current = [];\n }\n _createClass(Lrc, [\n {\n key: 'update',\n value: function update() {\n var currentTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.player.audio.currentTime;\n if (this.index > this.current.length - 1 || currentTime < this.current[this.index][0] || !this.current[this.index + 1] || currentTime >= this.current[this.index + 1][0]) {\n for (var i = 0; i < this.current.length; i++) {\n if (currentTime >= this.current[i][0] && (!this.current[i + 1] || currentTime < this.current[i + 1][0])) {\n this.index = i;\n this.container.style.transform = 'translateY(' + -this.index * 16 + 'px)';\n this.container.style.webkitTransform = 'translateY(' + -this.index * 16 + 'px)';\n this.container.getElementsByClassName('aplayer-lrc-current')[0].classList.remove('aplayer-lrc-current');\n this.container.getElementsByTagName('p')[i].classList.add('aplayer-lrc-current');\n }\n }\n }\n }\n },\n {\n key: 'switch',\n value: function _switch(index) {\n var _this = this;\n if (!this.parsed[index]) {\n if (!this.async) {\n if (this.content[index]) {\n this.parsed[index] = this.parse(this.content[index]);\n } else {\n this.parsed[index] = [[\n '00:00',\n 'Not available'\n ]];\n }\n } else {\n this.parsed[index] = [[\n '00:00',\n 'Loading'\n ]];\n var xhr = new XMLHttpRequest();\n xhr.onreadystatechange = function () {\n if (xhr.readyState === 4) {\n if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {\n _this.parsed[index] = _this.parse(xhr.responseText);\n } else {\n console.log('Request was unsuccessful: ' + xhr.status);\n _this.parsed[index] = [[\n '00:00',\n 'Not available'\n ]];\n }\n _this.container.innerHTML = (0, _lrc2.default)({ lyrics: _this.parsed[index] });\n _this.update(0);\n _this.current = _this.parsed[index];\n }\n };\n var apiurl = this.content[index];\n xhr.open('get', apiurl, true);\n xhr.send(null);\n }\n }\n this.container.innerHTML = (0, _lrc2.default)({ lyrics: this.parsed[index] });\n this.update(0);\n this.current = this.parsed[index];\n }\n },\n {\n key: 'parse',\n value: function parse(lrc_s) {\n if (lrc_s) {\n lrc_s = lrc_s.replace(/([^\\]^\\n])\\[/g, function (match, p1) {\n return p1 + '\\n[';\n });\n var lyric = lrc_s.split('\\n');\n var lrc = [];\n var lyricLen = lyric.length;\n for (var i = 0; i < lyricLen; i++) {\n var lrcTimes = lyric[i].match(/\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/g);\n var lrcText = lyric[i].replace(/.*\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/g, '').replace(/<(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?>/g, '').replace(/^\\s+|\\s+$/g, '');\n if (lrcTimes) {\n var timeLen = lrcTimes.length;\n for (var j = 0; j < timeLen; j++) {\n var oneTime = /\\[(\\d{2}):(\\d{2})(\\.(\\d{2,3}))?]/.exec(lrcTimes[j]);\n var min2sec = oneTime[1] * 60;\n var sec2sec = parseInt(oneTime[2]);\n var msec2sec = oneTime[4] ? parseInt(oneTime[4]) / ((oneTime[4] + '').length === 2 ? 100 : 1000) : 0;\n var lrcTime = min2sec + sec2sec + msec2sec;\n lrc.push([\n lrcTime,\n lrcText\n ]);\n }\n }\n }\n lrc.sort(function (a, b) {\n return a[0] - b[0];\n });\n return lrc;\n } else {\n return [];\n }\n }\n }\n ]);\n return Lrc;\n}();\nexports.default = Lrc;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/lrc.js\n// module id = 30\n// module chunks = 0","{{each lyrics}}\n <p{{ if $index === 0 }} class=\"aplayer-lrc-current\"{{ /if }}>{{$value[1]}}</p>\n{{/each}}\n\n\n// WEBPACK FOOTER //\n// ./src/template/lrc.art","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nvar _icons = require('./icons');\nvar _icons2 = _interopRequireDefault(_icons);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.initPlayButton();\n this.initList();\n this.initPlayBar();\n if (this.player.isMultiple()) {\n this.initOrderButton();\n }\n this.initLoopButton();\n this.initMenuButton();\n if (!_utils2.default.isMobile) {\n this.initVolumeButton();\n }\n }\n _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.pic.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n },\n {\n key: 'initList',\n value: function initList() {\n var _this2 = this;\n this.player.template.list.addEventListener('click', function (e) {\n var target = void 0;\n if (e.target.tagName.toUpperCase() === 'LI') {\n target = e.target;\n } else {\n target = e.target.parentElement;\n }\n var audioIndex = parseInt(target.getElementsByClassName('aplayer-list-index')[0].innerHTML) - 1;\n if (audioIndex !== _this2.player.playIndex) {\n _this2.player.switchAudio(audioIndex);\n _this2.player.play();\n } else {\n _this2.player.toggle();\n }\n });\n }\n },\n {\n key: 'initPlayBar',\n value: function initPlayBar() {\n var _this3 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.lrc && _this3.player.lrc.update(percentage * _this3.player.audio.duration);\n _this3.player.template.ptime.innerHTML = _utils2.default.secondToTime(percentage * _this3.player.audio.duration);\n };\n var thumbUp = function thumbUp(e) {\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - _utils2.default.getElementViewLeft(_this3.player.template.barWrap)) / _this3.player.template.barWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this3.player.bar.set('played', percentage, 'width');\n _this3.player.seek(_this3.player.bar.get('played', 'width') * _this3.player.audio.duration);\n _this3.player.timer.enable('progress');\n };\n this.player.template.barWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this3.player.timer.disable('progress');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this4 = this;\n this.player.template.volumeButton.addEventListener('click', function () {\n if (_this4.player.audio.muted) {\n _this4.player.audio.muted = false;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', _this4.player.volume(), 'height');\n } else {\n _this4.player.audio.muted = true;\n _this4.player.switchVolumeIcon();\n _this4.player.bar.set('volume', 0, 'height');\n }\n });\n var thumbMove = function thumbMove(e) {\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n var thumbUp = function thumbUp(e) {\n _this4.player.template.volumeBarWrap.classList.remove('aplayer-volume-bar-wrap-active');\n document.removeEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n document.removeEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n var percentage = 1 - ((e.clientY || e.changedTouches[0].clientY) - _utils2.default.getElementViewTop(_this4.player.template.volumeBar)) / _this4.player.template.volumeBar.clientHeight;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.volume(percentage);\n };\n this.player.template.volumeBarWrap.addEventListener(_utils2.default.nameMap.dragStart, function () {\n _this4.player.template.volumeBarWrap.classList.add('aplayer-volume-bar-wrap-active');\n document.addEventListener(_utils2.default.nameMap.dragMove, thumbMove);\n document.addEventListener(_utils2.default.nameMap.dragEnd, thumbUp);\n });\n }\n },\n {\n key: 'initOrderButton',\n value: function initOrderButton() {\n var _this5 = this;\n this.player.template.order.addEventListener('click', function () {\n if (_this5.player.options.order === 'list') {\n _this5.player.options.order = 'random';\n _this5.player.template.order.innerHTML = _icons2.default.orderRandom;\n } else if (_this5.player.options.order === 'random') {\n _this5.player.options.order = 'list';\n _this5.player.template.order.innerHTML = _icons2.default.orderList;\n }\n });\n }\n },\n {\n key: 'initLoopButton',\n value: function initLoopButton() {\n var _this6 = this;\n this.player.template.loop.addEventListener('click', function () {\n if (_this6.player.isMultiple()) {\n if (_this6.player.options.loop === 'one') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n } else if (_this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'one';\n _this6.player.template.loop.innerHTML = _icons2.default.loopOne;\n }\n } else {\n if (_this6.player.options.loop === 'one' || _this6.player.options.loop === 'all') {\n _this6.player.options.loop = 'none';\n _this6.player.template.loop.innerHTML = _icons2.default.loopNone;\n } else if (_this6.player.options.loop === 'none') {\n _this6.player.options.loop = 'all';\n _this6.player.template.loop.innerHTML = _icons2.default.loopAll;\n }\n }\n });\n }\n },\n {\n key: 'initMenuButton',\n value: function initMenuButton() {\n var _this7 = this;\n this.player.template.list.style.height = 33 * this.player.options.audio.length - 1 + 'px';\n this.player.template.menu.addEventListener('click', function () {\n if (!_this7.player.template.list.classList.contains('aplayer-list-hide')) {\n _this7.player.template.list.classList.add('aplayer-list-hide');\n } else {\n _this7.player.template.list.classList.remove('aplayer-list-hide');\n }\n });\n }\n }\n ]);\n return Controller;\n}();\nexports.default = Controller;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/controller.js\n// module id = 32\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nvar _utils = require('./utils');\nvar _utils2 = _interopRequireDefault(_utils);\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Timer = function () {\n function Timer(player) {\n _classCallCheck(this, Timer);\n this.player = player;\n window.requestAnimationFrame = function () {\n return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function (callback) {\n window.setTimeout(callback, 1000 / 60);\n };\n }();\n this.types = [\n 'loading',\n 'progress'\n ];\n this.init();\n }\n _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n _this['init' + item + 'Checker']();\n return item;\n });\n }\n },\n {\n key: 'initprogressChecker',\n value: function initprogressChecker() {\n var _this2 = this;\n this.progressChecker = setInterval(function () {\n if (_this2.enableprogressChecker) {\n _this2.player.bar.set('played', _this2.player.audio.currentTime / _this2.player.audio.duration, 'width');\n _this2.player.lrc && _this2.player.lrc.update();\n var currentTime = _utils2.default.secondToTime(_this2.player.audio.currentTime);\n if (_this2.player.template.ptime.innerHTML !== currentTime) {\n _this2.player.template.ptime.innerHTML = currentTime;\n }\n }\n }, 100);\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this3 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this3.enableloadingChecker) {\n currentPlayPos = _this3.player.audio.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.add('aplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this3.player.audio.paused) {\n _this3.player.container.classList.remove('aplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable' + type + 'Checker'] = true;\n if (type === 'fps') {\n this.initfpsChecker();\n }\n }\n },\n {\n key: 'disable',\n value: function disable(type) {\n this['enable' + type + 'Checker'] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this4 = this;\n this.types.map(function (item) {\n _this4['enable' + item + 'Checker'] = false;\n _this4[item + 'Checker'] && clearInterval(_this4[item + 'Checker']);\n return item;\n });\n }\n }\n ]);\n return Timer;\n}();\nexports.default = Timer;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/timer.js\n// module id = 33\n// module chunks = 0","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar _createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n return function (Constructor, protoProps, staticProps) {\n if (protoProps)\n defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.audioEvents = [\n 'abort',\n 'canplay',\n 'canplaythrough',\n 'durationchange',\n 'emptied',\n 'ended',\n 'error',\n 'loadeddata',\n 'loadedmetadata',\n 'loadstart',\n 'mozaudioavailable',\n 'pause',\n 'play',\n 'playing',\n 'progress',\n 'ratechange',\n 'seeked',\n 'seeking',\n 'stalled',\n 'suspend',\n 'timeupdate',\n 'volumechange',\n 'waiting'\n ];\n this.playerEvents = [\n 'destroy',\n 'switchaudio',\n 'addaudio',\n 'removeaudio'\n ];\n }\n _createClass(Events, [\n {\n key: 'on',\n value: function on(name, callback) {\n if (this.type(name) && typeof callback === 'function') {\n if (!this.events[name]) {\n this.events[name] = [];\n }\n this.events[name].push(callback);\n }\n }\n },\n {\n key: 'trigger',\n value: function trigger(name, info) {\n if (this.events[name] && this.events[name].length) {\n for (var i = 0; i < this.events[name].length; i++) {\n this.events[name][i](info);\n }\n }\n }\n },\n {\n key: 'type',\n value: function type(name) {\n if (this.playerEvents.indexOf(name) !== -1) {\n return 'player';\n } else if (this.audioEvents.indexOf(name) !== -1) {\n return 'audio';\n }\n console.error('Unknown event name: ' + name);\n return null;\n }\n }\n ]);\n return Events;\n}();\nexports.default = Events;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/js/events.js\n// module id = 34\n// module chunks = 0"],"sourceRoot":""}