{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///APlayer.min.js","webpack:///webpack/bootstrap bb5f6f58a0347f133857","webpack:///./src/APlayer.js","webpack:///./src/APlayer.scss?031a","webpack:///./src/APlayer.scss","webpack:///./~/.0.26.0@css-loader/lib/css-base.js","webpack:///./src/default.jpg","webpack:///./~/style-loader/addStyles.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","_classCallCheck","instance","Constructor","TypeError","_createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","protoProps","staticProps","prototype","console","log","instances","APlayer","option","getElementViewLeft","element","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","document","body","scrollLeft","documentElement","getElementViewTop","actualTop","offsetTop","elementScrollTop","scrollTop","_this","svg","play","pause","volume-up","volume-down","volume-off","circulation","random","order","single","menu","getSVG","type","isMobile","test","window","navigator","userAgent","autoplay","defaultOption","getElementsByClassName","narrow","mutex","showlrc","theme","mode","defaultKey","hasOwnProperty","playIndex","toString","music","audios","secondToTime","second","add0","num","min","parseInt","sec","hours","minAdjust","savelrc","push","innerHTML","lrcs","updateBar","percentage","direction","bar","style","updateLrc","currentTime","arguments","undefined","audio","lrcIndex","lrc","_i","lrcContents","transform","webkitTransform","classList","remove","getElementsByTagName","add","eventTypes","event","_i2","trigger","_i3","multiple","getRandomOrder","eleHTML","pic","listmaxheight","_i4","title","author","offsetWidth","display","ptime","barWrap","button","addEventListener","e","toggle","listItem","_loop","_i5","musicIndex","setMusic","playedBar","loadedBar","thumb","barWidth","clientWidth","clientX","duration","parseFloat","width","background","thumbMove","thumbUp","removeEventListener","playedTime","setInterval","clearInterval","volumeBar","volumeBarWrap","volumeicon","barHeight","clientY","volume","muted","className","modeEle","loop","list","height","offsetHeight","contains","randomOrder","value","index","_this2","indexMusic","backgroundImage","createElement","src","url","preload","buffered","end","ended","nextRandomNum","parseLrc","lrc_s","lyric","split","lyricLen","lrcTimes","match","lrcText","replace","timeLen","j","oneTime","exec","lrcTime","sort","a","b","xhr","XMLHttpRequest","onreadystatechange","readyState","status","responseText","_lrcHTML","apiurl","open","send","lrcHTML","time","_this3","setTimeout","_this4","name","func","max","Math","floor","shuffle","arr","rand","shuffled","Array","normalOrder","indexOf","content","locals","result","item","join","mediaQuery","alreadyImportedModules","addStylesToDom","styles","options","domStyle","stylesInDom","refs","parts","addStyle","listToStyles","newStyles","css","media","sourceMap","part","insertStyleElement","styleElement","head","getHeadElement","lastStyleElementInsertedAtTop","styleElementsInsertedAtTop","insertAt","nextSibling","insertBefore","appendChild","firstChild","Error","removeStyleElement","parentNode","removeChild","idx","splice","createStyleElement","createLinkElement","linkElement","rel","obj","update","singleton","styleIndex","singletonCounter","singletonElement","applyToSingletonTag","bind","URL","createObjectURL","revokeObjectURL","Blob","btoa","updateLink","href","applyToTag","newObj","styleSheet","cssText","replaceText","cssNode","createTextNode","childNodes","setAttribute","unescape","encodeURIComponent","JSON","stringify","blob","oldSrc","memoize","fn","memo","apply","isOldIE","toLowerCase","newList","mayRemove","textStore","replacement","filter","Boolean"],"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})(this, function() {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/","(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})(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/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\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.loaded = 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// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\t\n\tconsole.log(\"\\n %c APlayer 1.5.8 %c http://aplayer.js.org \\n\\n\", \"color: #fadfa3; background: #030307; padding:5px 0;\", \"background: #fadfa3; padding:5px 0;\");\n\t\n\t__webpack_require__(1);\n\t\n\tvar instances = [];\n\t\n\tvar APlayer = function () {\n\t /**\n\t * APlayer constructor function\n\t *\n\t * @param {Object} option - See README\n\t * @constructor\n\t */\n\t\n\t function APlayer(option) {\n\t var _this = this;\n\t\n\t _classCallCheck(this, APlayer);\n\t\n\t var svg = {\n\t 'play': ['0 0 16 31', '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'],\n\t 'pause': ['0 0 17 32', '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'],\n\t 'volume-up': ['0 0 28 32', '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'],\n\t 'volume-down': ['0 0 28 32', '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'],\n\t 'volume-off': ['0 0 28 32', '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'],\n\t 'circulation': ['0 0 29 32', 'M25.6 9.92q1.344 0 2.272 0.928t0.928 2.272v9.28q0 1.28-0.928 2.24t-2.272 0.96h-22.4q-1.28 0-2.24-0.96t-0.96-2.24v-9.28q0-1.344 0.96-2.272t2.24-0.928h8v-3.52l6.4 5.76-6.4 5.76v-3.52h-6.72v6.72h19.84v-6.72h-4.8v-4.48h6.080z'],\n\t 'random': ['0 0 33 31', 'M29.867 9.356l-5.003 5.003c-0.094 0.094-0.235 0.141-0.36 0.141-0.266 0-0.5-0.219-0.5-0.5v-3.002h-4.002c-2.079 0-3.064 1.423-3.94 3.111-0.453 0.875-0.844 1.782-1.219 2.673-1.735 4.033-3.768 8.223-8.849 8.223h-3.502c-0.281 0-0.5-0.219-0.5-0.5v-3.002c0-0.281 0.219-0.5 0.5-0.5h3.502c2.079 0 3.064-1.423 3.94-3.111 0.453-0.875 0.844-1.782 1.219-2.673 1.735-4.033 3.768-8.223 8.849-8.223h4.002v-3.002c0-0.281 0.219-0.5 0.5-0.5 0.141 0 0.266 0.063 0.375 0.156l4.987 4.987c0.094 0.094 0.141 0.235 0.141 0.36s-0.047 0.266-0.141 0.36zM10.262 14.781c-0.907-1.892-1.907-3.783-4.268-3.783h-3.502c-0.281 0-0.5-0.219-0.5-0.5v-3.002c0-0.281 0.219-0.5 0.5-0.5h3.502c2.783 0 4.831 1.298 6.41 3.518-0.876 1.344-1.517 2.798-2.142 4.268zM29.867 23.363l-5.003 5.003c-0.094 0.094-0.235 0.141-0.36 0.141-0.266 0-0.5-0.235-0.5-0.5v-3.002c-4.643 0-7.504 0.547-10.396-3.518 0.86-1.344 1.501-2.798 2.126-4.268 0.907 1.892 1.907 3.783 4.268 3.783h4.002v-3.002c0-0.281 0.219-0.5 0.5-0.5 0.141 0 0.266 0.063 0.375 0.156l4.987 4.987c0.094 0.094 0.141 0.235 0.141 0.36s-0.047 0.266-0.141 0.36z'],\n\t 'order': ['0 0 32 32', 'M0.622 18.334h19.54v7.55l11.052-9.412-11.052-9.413v7.549h-19.54v3.725z'],\n\t 'single': ['0 0 38 32', 'M2.072 21.577c0.71-0.197 1.125-0.932 0.928-1.641-0.221-0.796-0.333-1.622-0.333-2.457 0-5.049 4.108-9.158 9.158-9.158h5.428c0.056-0.922 0.221-1.816 0.482-2.667h-5.911c-3.158 0-6.128 1.23-8.361 3.463s-3.463 5.203-3.463 8.361c0 1.076 0.145 2.143 0.431 3.171 0.164 0.59 0.7 0.976 1.284 0.976 0.117 0 0.238-0.016 0.357-0.049zM21.394 25.613h-12.409v-2.362c0-0.758-0.528-1.052-1.172-0.652l-5.685 3.522c-0.644 0.4-0.651 1.063-0.014 1.474l5.712 3.69c0.637 0.411 1.158 0.127 1.158-0.63v-2.374h12.409c3.158 0 6.128-1.23 8.361-3.463 1.424-1.424 2.44-3.148 2.99-5.029-0.985 0.368-2.033 0.606-3.125 0.691-1.492 3.038-4.619 5.135-8.226 5.135zM28.718 0c-4.985 0-9.026 4.041-9.026 9.026s4.041 9.026 9.026 9.026 9.026-4.041 9.026-9.026-4.041-9.026-9.026-9.026zM30.392 13.827h-1.728v-6.822c-0.635 0.576-1.433 1.004-2.407 1.285v-1.713c0.473-0.118 0.975-0.325 1.506-0.62 0.532-0.325 0.975-0.665 1.329-1.034h1.3v8.904z'],\n\t 'menu': ['0 0 22 32', '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']\n\t };\n\t this.getSVG = function (type) {\n\t return \"\\n \\n \\n \\n \\n \";\n\t };\n\t\n\t this.isMobile = /mobile/i.test(window.navigator.userAgent);\n\t // compatibility: some mobile browsers don't suppose autoplay\n\t if (this.isMobile) {\n\t option.autoplay = false;\n\t }\n\t\n\t // default options\n\t var defaultOption = {\n\t element: document.getElementsByClassName('aplayer')[0],\n\t narrow: false,\n\t autoplay: false,\n\t mutex: true,\n\t showlrc: 0,\n\t theme: '#b7daff',\n\t mode: 'circulation'\n\t };\n\t for (var defaultKey in defaultOption) {\n\t if (defaultOption.hasOwnProperty(defaultKey) && !option.hasOwnProperty(defaultKey)) {\n\t option[defaultKey] = defaultOption[defaultKey];\n\t }\n\t }\n\t\n\t // multiple music\n\t this.playIndex = Object.prototype.toString.call(option.music) === '[object Array]' ? 0 : -1;\n\t\n\t this.option = option;\n\t this.audios = [];\n\t this.mode = option.mode;\n\t\n\t /**\n\t * Parse second to 00:00 format. 00:00:00 if audio is over an hour long.\n\t *\n\t * @param {Number} second\n\t * @return {String} 00:00 format. 00:00:00 if over an hour long.\n\t */\n\t this.secondToTime = function (second) {\n\t var add0 = function add0(num) {\n\t return num < 10 ? '0' + num : '' + num;\n\t };\n\t var min = parseInt(second / 60);\n\t var sec = parseInt(second - min * 60);\n\t var hours = parseInt(min / 60);\n\t var minAdjust = parseInt(second / 60 - 60 * parseInt(second / 60 / 60));\n\t return second >= 3600 ? add0(hours) + ':' + add0(minAdjust) + ':' + add0(sec) : add0(min) + ':' + add0(sec);\n\t };\n\t\n\t // save lrc\n\t this.element = this.option.element;\n\t if (this.option.showlrc === 2 || this.option.showlrc === true) {\n\t this.savelrc = [];\n\t for (var i = 0; i < this.element.getElementsByClassName('aplayer-lrc-content').length; i++) {\n\t this.savelrc.push(this.element.getElementsByClassName('aplayer-lrc-content')[i].innerHTML);\n\t }\n\t }\n\t this.lrcs = [];\n\t\n\t /**\n\t * Update progress bar, including loading progress bar and play progress bar\n\t *\n\t * @param {String} type - Point out which bar it is, should be played loaded or volume\n\t * @param {Number} percentage\n\t * @param {String} direction - Point out the direction of this bar, Should be height or width\n\t */\n\t this.updateBar = function (type, percentage, direction) {\n\t percentage = percentage > 0 ? percentage : 0;\n\t percentage = percentage < 1 ? percentage : 1;\n\t bar[type + 'Bar'].style[direction] = percentage * 100 + '%';\n\t };\n\t\n\t /**\n\t * Update lrc\n\t *\n\t * @param {Number} currentTime\n\t */\n\t this.updateLrc = function () {\n\t var currentTime = arguments.length <= 0 || arguments[0] === undefined ? _this.audio.currentTime : arguments[0];\n\t\n\t if (_this.lrcIndex > _this.lrc.length - 1 || currentTime < _this.lrc[_this.lrcIndex][0] || !_this.lrc[_this.lrcIndex + 1] || currentTime >= _this.lrc[_this.lrcIndex + 1][0]) {\n\t for (var _i = 0; _i < _this.lrc.length; _i++) {\n\t if (currentTime >= _this.lrc[_i][0] && (!_this.lrc[_i + 1] || currentTime < _this.lrc[_i + 1][0])) {\n\t _this.lrcIndex = _i;\n\t _this.lrcContents.style.transform = \"translateY(\" + -_this.lrcIndex * 16 + \"px)\";\n\t _this.lrcContents.style.webkitTransform = \"translateY(\" + -_this.lrcIndex * 16 + \"px)\";\n\t _this.lrcContents.getElementsByClassName('aplayer-lrc-current')[0].classList.remove('aplayer-lrc-current');\n\t _this.lrcContents.getElementsByTagName('p')[_i].classList.add('aplayer-lrc-current');\n\t }\n\t }\n\t }\n\t };\n\t\n\t // define APlayer events\n\t var eventTypes = ['play', 'pause', 'canplay', 'playing', 'ended', 'error'];\n\t this.event = {};\n\t for (var _i2 = 0; _i2 < eventTypes.length; _i2++) {\n\t this.event[eventTypes[_i2]] = [];\n\t }\n\t this.trigger = function (type) {\n\t for (var _i3 = 0; _i3 < _this.event[type].length; _i3++) {\n\t _this.event[type][_i3]();\n\t }\n\t };\n\t\n\t this.multiple = this.playIndex > -1;\n\t this.music = this.multiple ? this.option.music[this.playIndex] : this.option.music;\n\t\n\t // add class aplayer-withlrc\n\t if (this.option.showlrc) {\n\t this.element.classList.add('aplayer-withlrc');\n\t }\n\t if (this.option.music.length > 1) {\n\t this.element.classList.add('aplayer-list');\n\t }\n\t\n\t if (!this.multiple && this.mode !== 'circulation' && this.mode !== 'order') {\n\t this.mode = 'circulation';\n\t }\n\t this.getRandomOrder();\n\t\n\t // fill in HTML\n\t var eleHTML = \"\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n - 00:00 / 00:00\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \" + (this.multiple ? \"\" : \"\") + \"\\n
\\n
\\n
\");\n\t if (this.multiple) {\n\t eleHTML += \"\\n
\\n
    \";\n\t for (var _i4 = 0; _i4 < this.option.music.length; _i4++) {\n\t eleHTML += \"\\n
  1. \\n \\n \" + (_i4 + 1) + \"\\n \" + this.option.music[_i4].title + \"\\n \" + this.option.music[_i4].author + \"\\n
  2. \";\n\t }\n\t eleHTML += \"\\n
\\n
\";\n\t }\n\t this.element.innerHTML = eleHTML;\n\t\n\t // hide mode button in arrow container\n\t if (this.element.offsetWidth < 300) {\n\t this.element.getElementsByClassName('aplayer-icon-mode')[0].style.display = 'none';\n\t }\n\t\n\t this.ptime = this.element.getElementsByClassName('aplayer-ptime')[0];\n\t\n\t if (this.element.getElementsByClassName('aplayer-info')[0].offsetWidth < 200) {\n\t this.element.getElementsByClassName('aplayer-time')[0].classList.add('aplayer-time-narrow');\n\t }\n\t // fix the width of aplayer bar\n\t var bar = {};\n\t bar.barWrap = this.element.getElementsByClassName('aplayer-bar-wrap')[0];\n\t\n\t // switch to narrow style\n\t if (this.option.narrow) {\n\t this.element.classList.add('aplayer-narrow');\n\t }\n\t\n\t // play and pause button\n\t this.button = this.element.getElementsByClassName('aplayer-button')[0];\n\t this.button.addEventListener('click', function (e) {\n\t _this.toggle();\n\t });\n\t\n\t // click music list: change music\n\t if (this.multiple) {\n\t (function () {\n\t var listItem = _this.element.getElementsByClassName('aplayer-list')[0].getElementsByTagName('li');\n\t\n\t var _loop = function _loop(_i5) {\n\t listItem[_i5].addEventListener('click', function () {\n\t var musicIndex = parseInt(listItem[_i5].getElementsByClassName('aplayer-list-index')[0].innerHTML) - 1;\n\t if (musicIndex !== _this.playIndex) {\n\t _this.setMusic(musicIndex);\n\t _this.play();\n\t } else {\n\t _this.toggle();\n\t }\n\t });\n\t };\n\t\n\t for (var _i5 = 0; _i5 < _this.option.music.length; _i5++) {\n\t _loop(_i5);\n\t }\n\t })();\n\t }\n\t\n\t // control play progress\n\t bar.playedBar = this.element.getElementsByClassName('aplayer-played')[0];\n\t bar.loadedBar = this.element.getElementsByClassName('aplayer-loaded')[0];\n\t var thumb = this.element.getElementsByClassName('aplayer-thumb')[0];\n\t var barWidth = void 0;\n\t bar.barWrap.addEventListener('click', function (event) {\n\t var e = event || window.event;\n\t barWidth = bar.barWrap.clientWidth;\n\t var percentage = (e.clientX - getElementViewLeft(bar.barWrap)) / barWidth;\n\t _this.updateBar('played', percentage, 'width');\n\t _this.element.getElementsByClassName('aplayer-ptime')[0].innerHTML = _this.secondToTime(percentage * _this.audio.duration);\n\t _this.audio.currentTime = parseFloat(bar.playedBar.style.width) / 100 * _this.audio.duration;\n\t });\n\t\n\t thumb.addEventListener('mouseover', function () {\n\t thumb.style.background = _this.option.theme;\n\t });\n\t thumb.addEventListener('mouseout', function () {\n\t thumb.style.background = '#fff';\n\t });\n\t\n\t var thumbMove = function thumbMove(event) {\n\t var e = event || window.event;\n\t var percentage = (e.clientX - getElementViewLeft(bar.barWrap)) / barWidth;\n\t percentage = percentage > 0 ? percentage : 0;\n\t percentage = percentage < 1 ? percentage : 1;\n\t _this.updateBar('played', percentage, 'width');\n\t if (_this.option.showlrc) {\n\t _this.updateLrc(parseFloat(bar.playedBar.style.width) / 100 * _this.audio.duration);\n\t }\n\t _this.element.getElementsByClassName('aplayer-ptime')[0].innerHTML = _this.secondToTime(percentage * _this.audio.duration);\n\t };\n\t\n\t var thumbUp = function thumbUp() {\n\t document.removeEventListener('mouseup', thumbUp);\n\t document.removeEventListener('mousemove', thumbMove);\n\t _this.audio.currentTime = parseFloat(bar.playedBar.style.width) / 100 * _this.audio.duration;\n\t _this.playedTime = setInterval(function () {\n\t _this.updateBar('played', _this.audio.currentTime / _this.audio.duration, 'width');\n\t if (_this.option.showlrc) {\n\t _this.updateLrc();\n\t }\n\t _this.element.getElementsByClassName('aplayer-ptime')[0].innerHTML = _this.secondToTime(_this.audio.currentTime);\n\t _this.trigger('playing');\n\t }, 100);\n\t };\n\t\n\t thumb.addEventListener('mousedown', function () {\n\t barWidth = bar.barWrap.clientWidth;\n\t clearInterval(_this.playedTime);\n\t document.addEventListener('mousemove', thumbMove);\n\t document.addEventListener('mouseup', thumbUp);\n\t });\n\t\n\t // control volume\n\t bar.volumeBar = this.element.getElementsByClassName('aplayer-volume')[0];\n\t var volumeBarWrap = this.element.getElementsByClassName('aplayer-volume-bar')[0];\n\t this.volumeicon = this.element.getElementsByClassName('aplayer-time')[0].getElementsByTagName('button')[0];\n\t var barHeight = 35;\n\t this.element.getElementsByClassName('aplayer-volume-bar-wrap')[0].addEventListener('click', function (event) {\n\t var e = event || window.event;\n\t var percentage = (barHeight - e.clientY + getElementViewTop(volumeBarWrap)) / barHeight;\n\t percentage = percentage > 0 ? percentage : 0;\n\t percentage = percentage < 1 ? percentage : 1;\n\t _this.volume(percentage);\n\t });\n\t this.volumeicon.addEventListener('click', function () {\n\t if (_this.audio.muted) {\n\t _this.audio.muted = false;\n\t _this.volumeicon.className = _this.audio.volume === 1 ? 'aplayer-icon aplayer-icon-volume-up' : 'aplayer-icon aplayer-icon-volume-down';\n\t if (_this.audio.volume === 1) {\n\t _this.volumeicon.className = 'aplayer-icon aplayer-icon-volume-up';\n\t _this.volumeicon.innerHTML = _this.getSVG('volume-up');\n\t } else {\n\t _this.volumeicon.className = 'aplayer-icon aplayer-icon-volume-down';\n\t _this.volumeicon.innerHTML = _this.getSVG('volume-down');\n\t }\n\t _this.updateBar('volume', _this.audio.volume, 'height');\n\t } else {\n\t _this.audio.muted = true;\n\t _this.volumeicon.className = 'aplayer-icon aplayer-icon-volume-off';\n\t _this.volumeicon.innerHTML = _this.getSVG('volume-off');\n\t _this.updateBar('volume', 0, 'height');\n\t }\n\t });\n\t\n\t // get element's view position\n\t function getElementViewLeft(element) {\n\t var actualLeft = element.offsetLeft;\n\t var current = element.offsetParent;\n\t var elementScrollLeft = void 0;\n\t while (current !== null) {\n\t actualLeft += current.offsetLeft;\n\t current = current.offsetParent;\n\t }\n\t elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n\t return actualLeft - elementScrollLeft;\n\t }\n\t\n\t function getElementViewTop(element) {\n\t var actualTop = element.offsetTop;\n\t var current = element.offsetParent;\n\t var elementScrollTop = void 0;\n\t while (current !== null) {\n\t actualTop += current.offsetTop;\n\t current = current.offsetParent;\n\t }\n\t elementScrollTop = document.body.scrollTop + document.documentElement.scrollTop;\n\t return actualTop - elementScrollTop;\n\t }\n\t\n\t // mode control\n\t var modeEle = this.element.getElementsByClassName('aplayer-icon-mode')[0];\n\t modeEle.addEventListener('click', function () {\n\t if (_this.multiple) {\n\t if (_this.mode === 'random') {\n\t _this.mode = 'single';\n\t } else if (_this.mode === 'single') {\n\t _this.mode = 'order';\n\t } else if (_this.mode === 'order') {\n\t _this.mode = 'circulation';\n\t } else if (_this.mode === 'circulation') {\n\t _this.mode = 'random';\n\t }\n\t } else {\n\t if (_this.mode === 'circulation') {\n\t _this.mode = 'order';\n\t } else {\n\t _this.mode = 'circulation';\n\t }\n\t }\n\t modeEle.innerHTML = _this.getSVG(_this.mode);\n\t _this.audio.loop = !(_this.multiple || _this.mode === 'order');\n\t });\n\t\n\t // toggle menu control\n\t if (this.multiple) {\n\t (function () {\n\t var list = _this.element.getElementsByClassName('aplayer-list')[0];\n\t list.style.height = list.offsetHeight + 'px';\n\t _this.element.getElementsByClassName('aplayer-icon-menu')[0].addEventListener('click', function () {\n\t if (!list.classList.contains('aplayer-list-hide')) {\n\t list.classList.add('aplayer-list-hide');\n\t } else {\n\t list.classList.remove('aplayer-list-hide');\n\t }\n\t });\n\t })();\n\t }\n\t\n\t if (this.mode === 'random') {\n\t this.setMusic(this.randomOrder[0]);\n\t } else {\n\t this.setMusic(0);\n\t }\n\t\n\t instances.push(this);\n\t }\n\t\n\t /**\n\t * Set music\n\t */\n\t\n\t\n\t _createClass(APlayer, [{\n\t key: \"setMusic\",\n\t value: function setMusic(index) {\n\t var _this2 = this;\n\t\n\t // get this.music\n\t if (this.multiple && typeof index !== 'undefined') {\n\t this.playIndex = index;\n\t }\n\t var indexMusic = this.playIndex;\n\t this.music = this.multiple ? this.option.music[indexMusic] : this.option.music;\n\t\n\t // set html\n\t if (this.music.pic) {\n\t this.element.getElementsByClassName('aplayer-pic')[0].style.backgroundImage = \"url('\" + this.music.pic + \"')\";\n\t }\n\t this.element.getElementsByClassName('aplayer-title')[0].innerHTML = this.music.title;\n\t this.element.getElementsByClassName('aplayer-author')[0].innerHTML = \" - \" + this.music.author;\n\t if (this.multiple) {\n\t if (this.element.getElementsByClassName('aplayer-list-light')[0]) {\n\t this.element.getElementsByClassName('aplayer-list-light')[0].classList.remove('aplayer-list-light');\n\t }\n\t this.element.getElementsByClassName('aplayer-list')[0].getElementsByTagName('li')[indexMusic].classList.add('aplayer-list-light');\n\t }\n\t\n\t // set the previous audio object\n\t if (this.audio) {\n\t this.pause();\n\t this.audio.currentTime = 0;\n\t }\n\t\n\t if (this.multiple) {\n\t this.element.getElementsByClassName('aplayer-list')[0].scrollTop = indexMusic * 33;\n\t }\n\t\n\t // get this audio object\n\t if (this.multiple && !this.audios[indexMusic] || this.playIndex === -1) {\n\t this.audio = document.createElement(\"audio\");\n\t this.audio.src = this.music.url;\n\t this.audio.preload = this.option.preload ? this.option.preload : 'auto';\n\t\n\t // show audio time: the metadata has loaded or changed\n\t this.audio.addEventListener('durationchange', function () {\n\t if (_this2.audio.duration !== 1) {\n\t // compatibility: Android browsers will output 1 at first\n\t _this2.element.getElementsByClassName('aplayer-dtime')[0].innerHTML = _this2.secondToTime(_this2.audio.duration);\n\t }\n\t });\n\t\n\t // show audio loaded bar: to inform interested parties of progress downloading the media\n\t this.audio.addEventListener('progress', function () {\n\t var percentage = _this2.audio.buffered.length ? _this2.audio.buffered.end(_this2.audio.buffered.length - 1) / _this2.audio.duration : 0;\n\t _this2.updateBar('loaded', percentage, 'width');\n\t });\n\t\n\t // audio download error: an error occurs\n\t this.audio.addEventListener('error', function () {\n\t _this2.element.getElementsByClassName('aplayer-author')[0].innerHTML = \" - Error happens ╥﹏╥\";\n\t _this2.trigger('pause');\n\t });\n\t\n\t // audio can play: enough data is available that the media can be played\n\t this.audio.addEventListener('canplay', function () {\n\t _this2.trigger('canplay');\n\t });\n\t\n\t // multiple music play\n\t this.ended = false;\n\t if (this.multiple) {\n\t this.audio.addEventListener('ended', function () {\n\t if (_this2.isMobile) {\n\t _this2.ended = true;\n\t _this2.pause();\n\t return;\n\t }\n\t if (_this2.audio.currentTime !== 0) {\n\t if (_this2.mode === 'random') {\n\t _this2.setMusic(_this2.nextRandomNum());\n\t } else if (_this2.mode === 'single') {\n\t _this2.setMusic(_this2.playIndex);\n\t } else if (_this2.mode === 'order') {\n\t if (_this2.playIndex < _this2.option.music.length - 1) {\n\t _this2.setMusic(++_this2.playIndex);\n\t } else {\n\t _this2.ended = true;\n\t _this2.pause();\n\t _this2.trigger('ended');\n\t }\n\t } else if (_this2.mode === 'circulation') {\n\t if (_this2.playIndex < _this2.option.music.length - 1) {\n\t _this2.setMusic(++_this2.playIndex);\n\t } else {\n\t _this2.setMusic(0);\n\t }\n\t }\n\t }\n\t });\n\t } else {\n\t this.audio.addEventListener('ended', function () {\n\t if (_this2.mode === 'order') {\n\t _this2.ended = true;\n\t _this2.pause();\n\t _this2.trigger('ended');\n\t }\n\t });\n\t }\n\t\n\t // control volume\n\t this.audio.volume = parseInt(this.element.getElementsByClassName('aplayer-volume')[0].style.height) / 100;\n\t\n\t // loop\n\t this.audio.loop = !(this.multiple || this.mode === 'order');\n\t\n\t if (this.multiple) {\n\t this.audios[indexMusic] = this.audio;\n\t }\n\t } else {\n\t this.audio = this.audios[indexMusic];\n\t this.audio.volume = parseInt(this.element.getElementsByClassName('aplayer-volume')[0].style.height) / 100;\n\t this.audio.currentTime = 0;\n\t }\n\t\n\t /**\n\t * Parse lrc, suppose multiple time tag\n\t *\n\t * @param {String} lrc_s - Format:\n\t * [mm:ss.xx]lyric\n\t * [mm:ss.xxx]lyric\n\t * [mm:ss.xx][mm:ss.xx][mm:ss.xx]lyric\n\t *\n\t * @return {String} [[time, text], [time, text], [time, text], ...]\n\t */\n\t var parseLrc = function parseLrc(lrc_s) {\n\t var lyric = lrc_s.split('\\n');\n\t var lrc = [];\n\t var lyricLen = lyric.length;\n\t for (var i = 0; i < lyricLen; i++) {\n\t // match lrc time\n\t var lrcTimes = lyric[i].match(/\\[(\\d{2}):(\\d{2})\\.(\\d{2,3})]/g);\n\t // match lrc text\n\t var lrcText = lyric[i].replace(/\\[(\\d{2}):(\\d{2})\\.(\\d{2,3})]/g, '').replace(/^\\s+|\\s+$/g, '');\n\t\n\t if (lrcTimes != null) {\n\t // handle multiple time tag\n\t var timeLen = lrcTimes.length;\n\t for (var j = 0; j < timeLen; j++) {\n\t var oneTime = /\\[(\\d{2}):(\\d{2})\\.(\\d{2,3})]/.exec(lrcTimes[j]);\n\t var lrcTime = oneTime[1] * 60 + parseInt(oneTime[2]) + parseInt(oneTime[3]) / ((oneTime[3] + '').length === 2 ? 100 : 1000);\n\t lrc.push([lrcTime, lrcText]);\n\t }\n\t }\n\t }\n\t // sort by time\n\t lrc.sort(function (a, b) {\n\t return a[0] - b[0];\n\t });\n\t return lrc;\n\t };\n\t\n\t // fill in lrc\n\t if (this.option.showlrc) {\n\t (function () {\n\t var index = _this2.multiple ? indexMusic : 0;\n\t\n\t if (!_this2.lrcs[index]) {\n\t (function () {\n\t var lrcs = '';\n\t if (_this2.option.showlrc === 1) {\n\t if (_this2.multiple) {\n\t lrcs = _this2.option.music[index].lrc;\n\t } else {\n\t lrcs = _this2.option.music.lrc;\n\t }\n\t } else if (_this2.option.showlrc === 2 || _this2.option.showlrc === true) {\n\t lrcs = _this2.savelrc[index];\n\t } else if (_this2.option.showlrc === 3) {\n\t (function () {\n\t var xhr = new XMLHttpRequest();\n\t xhr.onreadystatechange = function () {\n\t if (xhr.readyState === 4) {\n\t if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {\n\t lrcs = xhr.responseText;\n\t _this2.lrcs[index] = parseLrc(lrcs);\n\t _this2.lrc = _this2.lrcs[index];\n\t var _lrcHTML = '';\n\t _this2.lrcContents = _this2.element.getElementsByClassName('aplayer-lrc-contents')[0];\n\t for (var i = 0; i < _this2.lrc.length; i++) {\n\t _lrcHTML += \"

\" + _this2.lrc[i][1] + \"

\";\n\t }\n\t _this2.lrcContents.innerHTML = _lrcHTML;\n\t if (!_this2.lrcIndex) {\n\t _this2.lrcIndex = 0;\n\t }\n\t _this2.lrcContents.getElementsByTagName('p')[0].classList.add('aplayer-lrc-current');\n\t _this2.lrcContents.style.transform = 'translateY(0px)';\n\t _this2.lrcContents.style.webkitTransform = 'translateY(0px)';\n\t } else {\n\t console.log('Request was unsuccessful: ' + xhr.status);\n\t }\n\t }\n\t };\n\t var apiurl = void 0;\n\t if (_this2.multiple) {\n\t apiurl = _this2.option.music[index].lrc;\n\t } else {\n\t apiurl = _this2.option.music.lrc;\n\t }\n\t xhr.open('get', apiurl, true);\n\t xhr.send(null);\n\t })();\n\t }\n\t if (lrcs) {\n\t _this2.lrcs[index] = parseLrc(lrcs);\n\t } else {\n\t _this2.lrcs[index] = [['00:00', 'Loading']];\n\t }\n\t })();\n\t }\n\t\n\t _this2.lrc = _this2.lrcs[index];\n\t var lrcHTML = '';\n\t _this2.lrcContents = _this2.element.getElementsByClassName('aplayer-lrc-contents')[0];\n\t for (var i = 0; i < _this2.lrc.length; i++) {\n\t lrcHTML += \"

\" + _this2.lrc[i][1] + \"

\";\n\t }\n\t _this2.lrcContents.innerHTML = lrcHTML;\n\t if (!_this2.lrcIndex) {\n\t _this2.lrcIndex = 0;\n\t }\n\t _this2.lrcContents.getElementsByTagName('p')[0].classList.add('aplayer-lrc-current');\n\t _this2.lrcContents.style.transform = 'translateY(0px)';\n\t _this2.lrcContents.style.webkitTransform = 'translateY(0px)';\n\t })();\n\t }\n\t\n\t // set duration time\n\t if (this.audio.duration !== 1) {\n\t // compatibility: Android browsers will output 1 at first\n\t this.element.getElementsByClassName('aplayer-dtime')[0].innerHTML = this.audio.duration ? this.secondToTime(this.audio.duration) : '00:00';\n\t }\n\t\n\t // autoplay\n\t if (this.option.autoplay && !this.isMobile) {\n\t this.play();\n\t }\n\t this.option.autoplay = true; // autoplay next music\n\t\n\t if (this.isMobile) {\n\t this.pause();\n\t }\n\t }\n\t\n\t /**\n\t * Play music\n\t */\n\t\n\t }, {\n\t key: \"play\",\n\t value: function play(time) {\n\t var _this3 = this;\n\t\n\t if (Object.prototype.toString.call(time) === '[object Number]') {\n\t this.audio.currentTime = time;\n\t }\n\t if (this.button.classList.contains('aplayer-play')) {\n\t this.button.classList.remove('aplayer-play');\n\t this.button.classList.add('aplayer-pause');\n\t this.button.innerHTML = '';\n\t setTimeout(function () {\n\t _this3.button.innerHTML = \"\\n \";\n\t }, 100);\n\t\n\t // pause other players (Thanks @Aprikyblue)\n\t if (this.option.mutex) {\n\t for (var i = 0; i < instances.length; i++) {\n\t if (this != instances[i]) {\n\t instances[i].pause();\n\t }\n\t }\n\t }\n\t this.audio.play();\n\t if (this.playedTime) {\n\t clearInterval(this.playedTime);\n\t }\n\t this.playedTime = setInterval(function () {\n\t _this3.updateBar('played', _this3.audio.currentTime / _this3.audio.duration, 'width');\n\t if (_this3.option.showlrc) {\n\t _this3.updateLrc();\n\t }\n\t _this3.ptime.innerHTML = _this3.secondToTime(_this3.audio.currentTime);\n\t _this3.trigger('playing');\n\t }, 100);\n\t this.trigger('play');\n\t }\n\t }\n\t\n\t /**\n\t * Pause music\n\t */\n\t\n\t }, {\n\t key: \"pause\",\n\t value: function pause() {\n\t var _this4 = this;\n\t\n\t if (this.button.classList.contains('aplayer-pause') || this.ended) {\n\t this.ended = false;\n\t this.button.classList.remove('aplayer-pause');\n\t this.button.classList.add('aplayer-play');\n\t this.button.innerHTML = '';\n\t setTimeout(function () {\n\t _this4.button.innerHTML = \"\\n \";\n\t }, 100);\n\t this.audio.pause();\n\t clearInterval(this.playedTime);\n\t this.trigger('pause');\n\t }\n\t }\n\t\n\t /**\n\t * Set volume\n\t */\n\t\n\t }, {\n\t key: \"volume\",\n\t value: function volume(percentage) {\n\t this.updateBar('volume', percentage, 'height');\n\t this.audio.volume = percentage;\n\t if (this.audio.muted) {\n\t this.audio.muted = false;\n\t }\n\t if (percentage === 1) {\n\t this.volumeicon.className = 'aplayer-icon aplayer-icon-volume-up';\n\t this.volumeicon.innerHTML = this.getSVG('volume-up');\n\t } else {\n\t this.volumeicon.className = 'aplayer-icon aplayer-icon-volume-down';\n\t this.volumeicon.innerHTML = this.getSVG('volume-down');\n\t }\n\t }\n\t\n\t /**\n\t * attach event\n\t */\n\t\n\t }, {\n\t key: \"on\",\n\t value: function on(name, func) {\n\t if (typeof func === 'function') {\n\t this.event[name].push(func);\n\t }\n\t }\n\t\n\t /**\n\t * toggle between play and pause\n\t */\n\t\n\t }, {\n\t key: \"toggle\",\n\t value: function toggle() {\n\t if (this.button.classList.contains('aplayer-play')) {\n\t this.play();\n\t } else if (this.button.classList.contains('aplayer-pause')) {\n\t this.pause();\n\t }\n\t }\n\t\n\t /**\n\t * get random order, using Fisher–Yates shuffle\n\t */\n\t\n\t }, {\n\t key: \"getRandomOrder\",\n\t value: function getRandomOrder() {\n\t function random(min, max) {\n\t if (max == null) {\n\t max = min;\n\t min = 0;\n\t }\n\t return min + Math.floor(Math.random() * (max - min + 1));\n\t }\n\t function shuffle(arr) {\n\t var length = arr.length,\n\t shuffled = new Array(length);\n\t for (var index = 0, rand; index < length; index++) {\n\t rand = random(0, index);\n\t if (rand !== index) shuffled[index] = shuffled[rand];\n\t shuffled[rand] = arr[index];\n\t }\n\t return shuffled;\n\t }\n\t if (this.multiple) {\n\t if (!this.normalOrder) {\n\t this.normalOrder = [];\n\t for (var i = 0; i < this.option.music.length; i++) {\n\t this.normalOrder[i] = i;\n\t }\n\t }\n\t this.randomOrder = shuffle(this.normalOrder);\n\t }\n\t }\n\t\n\t /**\n\t * get next random number\n\t */\n\t\n\t }, {\n\t key: \"nextRandomNum\",\n\t value: function nextRandomNum() {\n\t if (this.multiple) {\n\t var index = this.randomOrder.indexOf(this.playIndex);\n\t if (index === this.randomOrder.length - 1) {\n\t return this.randomOrder[0];\n\t } else {\n\t return this.randomOrder[index + 1];\n\t }\n\t } else {\n\t return 0;\n\t }\n\t }\n\t }]);\n\t\n\t return APlayer;\n\t}();\n\t\n\tmodule.exports = APlayer;\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t// style-loader: Adds some css to the DOM by adding a