dplayer-enhanced 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"DPlayer.min.js","mappings":"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","sources":["webpack://dplayer-enhanced/webpack/universalModuleDefinition","webpack://dplayer-enhanced/./src/assets/comment.svg","webpack://dplayer-enhanced/./src/assets/airplay.svg","webpack://dplayer-enhanced/./src/assets/subtitle.svg","webpack://dplayer-enhanced/./src/assets/pause.svg","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://dplayer-enhanced/./src/assets/pallette.svg","webpack://dplayer-enhanced/./src/assets/comment-off.svg","webpack://dplayer-enhanced/./src/template/video.art","webpack://dplayer-enhanced/./src/assets/volume-off.svg","webpack://dplayer-enhanced/./src/assets/chromecast.svg","webpack://dplayer-enhanced/./src/assets/volume-up.svg","webpack://dplayer-enhanced/./node_modules/art-template/lib/compile/runtime.js","webpack://dplayer-enhanced/./src/assets/play.svg","webpack://dplayer-enhanced/./src/assets/loading.svg","webpack://dplayer-enhanced/./src/template/player.art","webpack://dplayer-enhanced/./src/assets/right.svg","webpack://dplayer-enhanced/./src/assets/send.svg","webpack://dplayer-enhanced/./src/assets/volume-down.svg","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://dplayer-enhanced/./src/css/index.less","webpack://dplayer-enhanced/./src/assets/camera.svg","webpack://dplayer-enhanced/./node_modules/art-template/lib/runtime.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://dplayer-enhanced/./src/assets/full.svg","webpack://dplayer-enhanced/./node_modules/balloon-css/balloon.css","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/api.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://dplayer-enhanced/./src/assets/setting.svg","webpack://dplayer-enhanced/./src/assets/full-web.svg","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://dplayer-enhanced/webpack/bootstrap","webpack://dplayer-enhanced/webpack/runtime/compat get default export","webpack://dplayer-enhanced/webpack/runtime/define property getters","webpack://dplayer-enhanced/webpack/runtime/global","webpack://dplayer-enhanced/webpack/runtime/hasOwnProperty shorthand","webpack://dplayer-enhanced/webpack/runtime/jsonp chunk loading","webpack://dplayer-enhanced/webpack/runtime/nonce","webpack://dplayer-enhanced/./src/css/index.less?d46e","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/allSettled.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/any.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/index.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/finally.js","webpack://dplayer-enhanced/./src/js/utils.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/bind.js","webpack://dplayer-enhanced/./node_modules/axios/lib/utils.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/AxiosError.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/toFormData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/buildURL.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/InterceptorManager.js","webpack://dplayer-enhanced/./node_modules/axios/lib/defaults/transitional.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/index.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://dplayer-enhanced/./node_modules/axios/lib/defaults/index.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/transformData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/isCancel.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/CanceledError.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/cookies.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/buildFullPath.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/combineURLs.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://dplayer-enhanced/./node_modules/axios/lib/adapters/xhr.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/speedometer.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/settle.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://dplayer-enhanced/./node_modules/axios/lib/adapters/adapters.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/null.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/dispatchRequest.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/mergeConfig.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/validator.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/Axios.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/CancelToken.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://dplayer-enhanced/./node_modules/axios/lib/axios.js","webpack://dplayer-enhanced/./node_modules/axios/lib/env/data.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/spread.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://dplayer-enhanced/./src/js/api.js","webpack://dplayer-enhanced/./src/js/options.js","webpack://dplayer-enhanced/./src/js/i18n.js","webpack://dplayer-enhanced/./src/js/icons.js","webpack://dplayer-enhanced/./src/js/template.js","webpack://dplayer-enhanced/./src/js/danmaku.js","webpack://dplayer-enhanced/./src/js/events.js","webpack://dplayer-enhanced/./src/js/fullscreen.js","webpack://dplayer-enhanced/./src/js/user.js","webpack://dplayer-enhanced/./src/js/subtitle.js","webpack://dplayer-enhanced/./src/js/subtitles.js","webpack://dplayer-enhanced/./src/js/bar.js","webpack://dplayer-enhanced/./src/js/timer.js","webpack://dplayer-enhanced/./src/js/bezel.js","webpack://dplayer-enhanced/./src/js/thumbnails.js","webpack://dplayer-enhanced/./src/js/controller.js","webpack://dplayer-enhanced/./src/js/setting.js","webpack://dplayer-enhanced/./src/js/comment.js","webpack://dplayer-enhanced/./src/js/hotkey.js","webpack://dplayer-enhanced/./src/js/contextmenu.js","webpack://dplayer-enhanced/./src/js/info-panel.js","webpack://dplayer-enhanced/./src/js/player.js","webpack://dplayer-enhanced/./src/js/index.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(\"DPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"DPlayer\"] = factory();\n\telse\n\t\troot[\"DPlayer\"] = factory();\n})(self, () => {\nreturn ","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M27.128 0.38h-22.553c-2.336 0-4.229 1.825-4.229 4.076v16.273c0 2.251 1.893 4.076 4.229 4.076h4.229v-2.685h8.403l-8.784 8.072 1.566 1.44 7.429-6.827h9.71c2.335 0 4.229-1.825 4.229-4.076v-16.273c0-2.252-1.894-4.076-4.229-4.076zM28.538 19.403c0 1.5-1.262 2.717-2.819 2.717h-8.36l-0.076-0.070-0.076 0.070h-11.223c-1.557 0-2.819-1.217-2.819-2.717v-13.589c0-1.501 1.262-2.718 2.819-2.718h19.734c1.557 0 2.819-0.141 2.819 1.359v14.947zM9.206 10.557c-1.222 0-2.215 0.911-2.215 2.036s0.992 2.035 2.215 2.035c1.224 0 2.216-0.911 2.216-2.035s-0.992-2.036-2.216-2.036zM22.496 10.557c-1.224 0-2.215 0.911-2.215 2.036s0.991 2.035 2.215 2.035c1.224 0 2.215-0.911 2.215-2.035s-0.991-2.036-2.215-2.036zM15.852 10.557c-1.224 0-2.215 0.911-2.215 2.036s0.991 2.035 2.215 2.035c1.222 0 2.215-0.911 2.215-2.035s-0.992-2.036-2.215-2.036z\\\"></path></svg>\"","module.exports = \"<svg viewBox=\\\"0 0 288 288\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><path d=\\\"M288 90v96c0 20-16 36-36 36h-10c-16 0-16-24 0-24h10c7 0 12-5 12-12V90c0-7-5-12-12-12H36c-7 0-12 5-12 12v96c0 7 5 12 12 12h10c16 0 16 24 0 24H36c-20 0-36-16-36-36V90c0-20 16-36 36-36h216c20 0 36 16 36 36zm-120 62l48 68c14 20 1 38-20 38H92c-21 0-34-18-20-38l48-68c13-18 35-18 48 0z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M26.667 5.333h-21.333c-0 0-0.001 0-0.001 0-1.472 0-2.666 1.194-2.666 2.666 0 0 0 0.001 0 0.001v-0 16c0 0 0 0.001 0 0.001 0 1.472 1.194 2.666 2.666 2.666 0 0 0.001 0 0.001 0h21.333c0 0 0.001 0 0.001 0 1.472 0 2.666-1.194 2.666-2.666 0-0 0-0.001 0-0.001v0-16c0-0 0-0.001 0-0.001 0-1.472-1.194-2.666-2.666-2.666-0 0-0.001 0-0.001 0h0zM5.333 16h5.333v2.667h-5.333v-2.667zM18.667 24h-13.333v-2.667h13.333v2.667zM26.667 24h-5.333v-2.667h5.333v2.667zM26.667 18.667h-13.333v-2.667h13.333v2.667z\\\"></path></svg>\"","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>\"","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M19.357 2.88c1.749 0 3.366 0.316 4.851 0.946 1.485 0.632 2.768 1.474 3.845 2.533s1.922 2.279 2.532 3.661c0.611 1.383 0.915 2.829 0.915 4.334 0 1.425-0.304 2.847-0.915 4.271-0.611 1.425-1.587 2.767-2.928 4.028-0.855 0.813-1.811 1.607-2.869 2.38s-2.136 1.465-3.233 2.075c-1.099 0.61-2.198 1.098-3.296 1.465-1.098 0.366-2.115 0.549-3.051 0.549-1.343 0-2.441-0.438-3.296-1.311-0.854-0.876-1.281-2.41-1.281-4.608 0-0.366 0.020-0.773 0.060-1.221s0.062-0.895 0.062-1.343c0-0.773-0.183-1.353-0.55-1.738-0.366-0.387-0.793-0.58-1.281-0.58-0.652 0-1.21 0.295-1.678 0.886s-0.926 1.23-1.373 1.921c-0.447 0.693-0.905 1.334-1.372 1.923s-1.028 0.886-1.679 0.886c-0.529 0-1.048-0.427-1.556-1.282s-0.763-2.259-0.763-4.212c0-2.197 0.529-4.241 1.587-6.133s2.462-3.529 4.21-4.912c1.75-1.383 3.762-2.471 6.041-3.264 2.277-0.796 4.617-1.212 7.018-1.253zM7.334 15.817c0.569 0 1.047-0.204 1.434-0.611s0.579-0.875 0.579-1.404c0-0.569-0.193-1.047-0.579-1.434s-0.864-0.579-1.434-0.579c-0.529 0-0.987 0.193-1.373 0.579s-0.58 0.864-0.58 1.434c0 0.53 0.194 0.998 0.58 1.404 0.388 0.407 0.845 0.611 1.373 0.611zM12.216 11.79c0.691 0 1.292-0.254 1.8-0.763s0.762-1.107 0.762-1.8c0-0.732-0.255-1.343-0.762-1.831-0.509-0.489-1.109-0.732-1.8-0.732-0.732 0-1.342 0.244-1.831 0.732-0.488 0.488-0.732 1.098-0.732 1.831 0 0.693 0.244 1.292 0.732 1.8s1.099 0.763 1.831 0.763zM16.366 25.947c0.692 0 1.282-0.214 1.77-0.64s0.732-0.987 0.732-1.678-0.244-1.261-0.732-1.709c-0.489-0.448-1.078-0.671-1.77-0.671-0.65 0-1.21 0.223-1.678 0.671s-0.702 1.018-0.702 1.709c0 0.692 0.234 1.25 0.702 1.678s1.027 0.64 1.678 0.64zM19.113 9.592c0.651 0 1.129-0.203 1.433-0.611 0.305-0.406 0.459-0.874 0.459-1.404 0-0.488-0.154-0.947-0.459-1.373-0.304-0.427-0.782-0.641-1.433-0.641-0.529 0-1.008 0.193-1.434 0.58s-0.64 0.865-0.64 1.434c0 0.571 0.213 1.049 0.64 1.434 0.427 0.389 0.905 0.581 1.434 0.581zM24.848 12.826c0.57 0 1.067-0.213 1.495-0.64 0.427-0.427 0.64-0.947 0.64-1.556 0-0.57-0.214-1.068-0.64-1.495-0.428-0.427-0.927-0.64-1.495-0.64-0.611 0-1.129 0.213-1.555 0.64-0.428 0.427-0.642 0.926-0.642 1.495 0 0.611 0.213 1.129 0.642 1.556s0.947 0.64 1.555 0.64z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M27.090 0.131h-22.731c-2.354 0-4.262 1.839-4.262 4.109v16.401c0 2.269 1.908 4.109 4.262 4.109h4.262v-2.706h8.469l-8.853 8.135 1.579 1.451 7.487-6.88h9.787c2.353 0 4.262-1.84 4.262-4.109v-16.401c0-2.27-1.909-4.109-4.262-4.109v0zM28.511 19.304c0 1.512-1.272 2.738-2.841 2.738h-8.425l-0.076-0.070-0.076 0.070h-11.311c-1.569 0-2.841-1.226-2.841-2.738v-13.696c0-1.513 1.272-2.739 2.841-2.739h19.889c1.569 0 2.841-0.142 2.841 1.37v15.064z\\\"></path></svg>\"","{{ set enableSubtitle = subtitle && subtitle.type === 'webvtt' }}\r\n<video\r\n class=\"dplayer-video {{ if current }}dplayer-video-current{{ /if }}\"\r\n webkit-playsinline\r\n {{ if airplay }} x-webkit-airplay=\"allow\" {{ /if }}\r\n playsinline\r\n {{ if pic }}poster=\"{{ pic }}\"{{ /if }}\r\n {{ if screenshot || enableSubtitle }}crossorigin=\"anonymous\"{{ /if }}\r\n {{ if preload }}preload=\"{{ preload }}\"{{ /if }}\r\n {{ if airplay }}\r\n nosrc\r\n {{ else if url }}\r\n src=\"{{ url }}\"\r\n {{ /if }}\r\n >\r\n {{ if airplay }}\r\n <source src=\"{{ url }}\">\r\n {{ /if}}\r\n {{ if enableSubtitle }}\r\n <track class=\"dplayer-subtrack\" kind=\"metadata\" default src=\"{{ typeof subtitle.url === 'string' ? subtitle.url : subtitle.url[subtitle.index].url }}\"></track>\r\n {{ /if }}\r\n</video>","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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>\"","module.exports = \"<svg aria-hidden=\\\"true\\\" focusable=\\\"false\\\" data-prefix=\\\"fab\\\" data-icon=\\\"chromecast\\\" class=\\\"svg-inline--fa fa-chromecast fa-w-16\\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path fill=\\\"currentColor\\\" d=\\\"M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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.056z\\\"></path></svg>\"","'use strict';\nvar globalThis = typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};\nvar runtime = Object.create(globalThis);\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}\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}\nmodule.exports = runtime;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 16 32\\\"><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>\"","module.exports = \"<svg version=\\\"1.1\\\" viewBox=\\\"0 0 22 22\\\"><svg x=\\\"7\\\" y=\\\"1\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-0\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"11\\\" y=\\\"3\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-1\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"13\\\" y=\\\"7\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-2\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"11\\\" y=\\\"11\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-3\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"7\\\" y=\\\"13\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-4\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"3\\\" y=\\\"11\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-5\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"1\\\" y=\\\"7\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-6\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"3\\\" y=\\\"3\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-7\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg></svg>\"","<div class=\"dplayer-mask\"></div>\r\n<div class=\"dplayer-video-wrap\">\r\n {{ include './video.art' video }}\r\n {{ if options.logo }}\r\n <div class=\"dplayer-logo\">\r\n <img src=\"{{ options.logo }}\">\r\n </div>\r\n {{ /if }}\r\n <div class=\"dplayer-danmaku\"{{ if options.danmaku && options.danmaku.bottom }} style=\"margin-bottom:{{ options.danmaku.bottom }}\"{{ /if }}>\r\n <div class=\"dplayer-danmaku-item dplayer-danmaku-item--demo\"></div>\r\n </div>\r\n <div class=\"dplayer-subtitle\"></div>\r\n <div class=\"dplayer-bezel\">\r\n <span class=\"dplayer-bezel-icon\"></span>\r\n {{ if options.danmaku }}\r\n <span class=\"dplayer-danloading\">{{ tran('danmaku-loading') }}</span>\r\n {{ /if }}\r\n <span class=\"diplayer-loading-icon\">{{@ icons.loading }}</span>\r\n </div>\r\n</div>\r\n<div class=\"dplayer-controller-mask\"></div>\r\n<div class=\"dplayer-controller\">\r\n <div class=\"dplayer-icons dplayer-comment-box\">\r\n <button class=\"dplayer-icon dplayer-comment-setting-icon\" data-balloon=\"{{ tran('setting') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.pallette }}</span>\r\n </button>\r\n <div class=\"dplayer-comment-setting-box\">\r\n <div class=\"dplayer-comment-setting-color\">\r\n <div class=\"dplayer-comment-setting-title\">{{ tran('set-danmaku-color') }}</div>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#fff\" checked>\r\n <span style=\"background: #fff;\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#e54256\">\r\n <span style=\"background: #e54256\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#ffe133\">\r\n <span style=\"background: #ffe133\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#64DD17\">\r\n <span style=\"background: #64DD17\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#39ccff\">\r\n <span style=\"background: #39ccff\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#D500F9\">\r\n <span style=\"background: #D500F9\"></span>\r\n </label>\r\n </div>\r\n <div class=\"dplayer-comment-setting-type\">\r\n <div class=\"dplayer-comment-setting-title\">{{ tran('set-danmaku-type') }}</div>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"1\">\r\n <span>{{ tran('top') }}</span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"0\" checked>\r\n <span>{{ tran('rolling') }}</span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"2\">\r\n <span>{{ tran('bottom') }}</span>\r\n </label>\r\n </div>\r\n </div>\r\n <input class=\"dplayer-comment-input\" type=\"text\" placeholder=\"{{ tran('input-danmaku-enter') }}\" maxlength=\"30\">\r\n <button class=\"dplayer-icon dplayer-send-icon\" data-balloon=\"{{ tran('send') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.send }}</span>\r\n </button>\r\n </div>\r\n <div class=\"dplayer-icons dplayer-icons-left\">\r\n <button class=\"dplayer-icon dplayer-play-icon\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.play }}</span>\r\n </button>\r\n <div class=\"dplayer-volume\">\r\n <button class=\"dplayer-icon dplayer-volume-icon\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.volumeDown }}</span>\r\n </button>\r\n <div class=\"dplayer-volume-bar-wrap\" data-balloon-pos=\"up\">\r\n <div class=\"dplayer-volume-bar\">\r\n <div class=\"dplayer-volume-bar-inner\" style=\"background: {{ options.theme }};\">\r\n <span class=\"dplayer-thumb\" style=\"background: {{ options.theme }}\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <span class=\"dplayer-time\">\r\n <span class=\"dplayer-ptime\">0:00</span> /\r\n <span class=\"dplayer-dtime\">0:00</span>\r\n </span>\r\n <div class=\"dplayer-speed-wrap\">\r\n <span class=\"dplayer-speed-indicator\" data-balloon=\"{{ tran('speed') }}\" data-balloon-pos=\"up\">1x</span>\r\n <div class=\"dplayer-speed-panel\">\r\n <div class=\"dplayer-speed-panel-title\">{{ tran('speed') }}</div>\r\n <div class=\"dplayer-speed-slider-wrap\">\r\n <button class=\"dplayer-speed-slider-btn dplayer-speed-slider-btn-minus\">−</button>\r\n <div class=\"dplayer-speed-slider-inner\">\r\n <div class=\"dplayer-speed-slider-track\">\r\n <div class=\"dplayer-speed-slider-filled\"></div>\r\n <div class=\"dplayer-speed-slider-thumb\"></div>\r\n {{ each options.playbackSpeed }}\r\n <div class=\"dplayer-speed-slider-tick{{ $value === 1 ? ' dplayer-speed-slider-tick-active' : '' }}\" data-speed=\"{{ $value }}\"></div>\r\n {{ /each }}\r\n </div>\r\n <div class=\"dplayer-speed-slider-labels\">\r\n {{ each options.playbackSpeed }}\r\n <span class=\"dplayer-speed-slider-label{{ $value === 1 ? ' dplayer-speed-slider-label-active' : '' }}\" data-speed=\"{{ $value }}\">{{ $value }}x</span>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n <button class=\"dplayer-speed-slider-btn dplayer-speed-slider-btn-plus\">+</button>\r\n </div>\r\n </div>\r\n </div>\r\n {{ if options.live }}\r\n <span class=\"dplayer-live-badge\"><span class=\"dplayer-live-dot\" style=\"background: {{ options.theme }};\"></span>{{ tran('live') }}</span>\r\n {{ /if }}\r\n </div>\r\n <div class=\"dplayer-icons dplayer-icons-right\">\r\n {{ if options.video.quality }}\r\n <div class=\"dplayer-quality\">\r\n <button class=\"dplayer-icon dplayer-quality-icon\">{{ options.video.quality[options.video.defaultQuality].name }}</button>\r\n <div class=\"dplayer-quality-mask\">\r\n <div class=\"dplayer-quality-list\">\r\n {{ each options.video.quality }}\r\n <div class=\"dplayer-quality-item\" data-index=\"{{ $index }}\">{{ $value.name }}</div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n {{ /if }}\r\n {{ if options.screenshot }}\r\n <div class=\"dplayer-icon dplayer-camera-icon\" data-balloon=\"{{ tran('screenshot') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.camera }}</span>\r\n </div>\r\n {{ /if }}\r\n {{ if options.airplay }}\r\n <div class=\"dplayer-icon dplayer-airplay-icon\" data-balloon=\"{{ tran('airplay') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.airplay }}</span>\r\n </div>\r\n {{ /if }}\r\n {{ if options.chromecast }}\r\n <div class=\"dplayer-icon dplayer-chromecast-icon\" data-balloon=\"{{ tran('chromecast') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.chromecast }}</span>\r\n </div>\r\n {{ /if }}\r\n <div class=\"dplayer-comment\">\r\n <button class=\"dplayer-icon dplayer-comment-icon\" data-balloon=\"{{ tran('send-danmaku') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.comment }}</span>\r\n </button>\r\n </div>\r\n {{ if options.subtitle }}\r\n {{ if (typeof options.subtitle.url === 'string') }}\r\n <div class=\"dplayer-subtitle-btn\">\r\n <button class=\"dplayer-icon dplayer-subtitle-icon\" data-balloon=\"{{ tran('hide-subs') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.subtitle }}</span>\r\n </button>\r\n </div>\r\n {{ else }}\r\n <div class=\"dplayer-subtitles\">\r\n <button class=\"dplayer-icon dplayer-subtitles-icon\" data-balloon=\"{{ tran('subtitle') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.subtitle }}</span>\r\n </button>\r\n <div class=\"dplayer-subtitles-box\">\r\n <div class=\"dplayer-subtitles-panel\">\r\n {{ each options.subtitle.url }}\r\n <div class=\"dplayer-subtitles-item\" data-subtitle=\"{{ $value.url }}\">\r\n <!-- if lang, show tran(lang). if lang and name, show name + (tran(lang)). if name, show name. off option use lang for translation. -->\r\n <span class=\"dplayer-label\">{{ $value.lang ? $value.name ? $value.name+' ('+tran($value.lang)+')' : tran($value.lang) : $value.name }}</span>\r\n </div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n {{ /if }}\r\n {{ /if }}\r\n <div class=\"dplayer-setting\">\r\n <button class=\"dplayer-icon dplayer-setting-icon\" data-balloon=\"{{ tran('setting') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.setting }}</span>\r\n </button>\r\n <div class=\"dplayer-setting-box\">\r\n <div class=\"dplayer-setting-origin-panel\">\r\n <div class=\"dplayer-setting-item dplayer-setting-speed\">\r\n <span class=\"dplayer-label\">{{ tran('speed') }}</span>\r\n <div class=\"dplayer-toggle\">{{@ icons.right }}</div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-loop\">\r\n <span class=\"dplayer-label\">{{ tran('loop') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-toggle-setting-input\" type=\"checkbox\" name=\"dplayer-toggle\">\r\n <label for=\"dplayer-toggle\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-showdan\">\r\n <span class=\"dplayer-label\">{{ tran('show-danmaku') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-showdan-setting-input\" type=\"checkbox\" name=\"dplayer-toggle-dan\">\r\n <label for=\"dplayer-toggle-dan\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-danunlimit\">\r\n <span class=\"dplayer-label\">{{ tran('unlimited-danmaku') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-danunlimit-setting-input\" type=\"checkbox\" name=\"dplayer-toggle-danunlimit\">\r\n <label for=\"dplayer-toggle-danunlimit\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-danmaku\">\r\n <span class=\"dplayer-label\">{{ tran('opacity-danmaku') }}</span>\r\n <div class=\"dplayer-danmaku-bar-wrap\">\r\n <div class=\"dplayer-danmaku-bar\">\r\n <div class=\"dplayer-danmaku-bar-inner\">\r\n <span class=\"dplayer-thumb\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-speed-panel\">\r\n {{ each options.playbackSpeed }}\r\n <div class=\"dplayer-setting-speed-item\" data-speed=\"{{ $value }}\">\r\n <span class=\"dplayer-label\">{{ $value === 1 ? tran('normal') : $value }}</span>\r\n </div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-full\">\r\n <button class=\"dplayer-icon dplayer-full-in-icon\" data-balloon=\"{{ tran('web-fullscreen') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.fullWeb }}</span>\r\n </button>\r\n <button class=\"dplayer-icon dplayer-full-icon\" data-balloon=\"{{ tran('fullscreen') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.full }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-bar-wrap\">\r\n <div class=\"dplayer-bar-time hidden\">00:00</div>\r\n <div class=\"dplayer-bar-preview\"></div>\r\n <div class=\"dplayer-bar\">\r\n <div class=\"dplayer-loaded\" style=\"width: 0;\"></div>\r\n <div class=\"dplayer-played\" style=\"width: 0; background: {{ options.theme }}\">\r\n <span class=\"dplayer-thumb\" style=\"background: {{ options.theme }}\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"dplayer-info-panel dplayer-info-panel-hide\">\r\n <div class=\"dplayer-info-panel-close\">[x]</div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-version\">\r\n <span class=\"dplayer-info-panel-item-title\">Player version</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-fps\">\r\n <span class=\"dplayer-info-panel-item-title\">Player FPS</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-type\">\r\n <span class=\"dplayer-info-panel-item-title\">Video type</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-url\">\r\n <span class=\"dplayer-info-panel-item-title\">Video url</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-resolution\">\r\n <span class=\"dplayer-info-panel-item-title\">Video resolution</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-duration\">\r\n <span class=\"dplayer-info-panel-item-title\">Video duration</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n {{ if options.danmaku }}\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-id\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku id</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-api\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku api</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-amount\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku amount</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n {{ /if }}\r\n</div>\r\n<div class=\"dplayer-menu\">\r\n {{ each options.contextmenu }}\r\n <div class=\"dplayer-menu-item\">\r\n <a{{ if $value.link }} target=\"_blank\"{{ /if }} href=\"{{ $value.link || 'javascript:void(0);' }}\">{{ if $value.key }} {{ tran($value.key) }}{{ /if }}{{ if $value.text }} {{$value.text}}{{ /if }}</a>\r\n </div>\r\n {{ /each }}\r\n</div>\r\n<div class=\"dplayer-notice-list\"></div>\r\n<button class=\"dplayer-mobile-play\">\r\n {{@ icons.play }}\r\n</button>","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M22 16l-10.105-10.6-1.895 1.987 8.211 8.613-8.211 8.612 1.895 1.988 8.211-8.613z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M13.725 30l3.9-5.325-3.9-1.125v6.45zM0 17.5l11.050 3.35 13.6-11.55-10.55 12.425 11.8 3.65 6.1-23.375-32 15.5z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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>\"","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_0___ from \"-!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/balloon-css/balloon.css\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@keyframes my-face {\n 2% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 4% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 6% {\n transform: translate(0, 1.5px) rotate(-1.5deg);\n }\n 8% {\n transform: translate(0, -1.5px) rotate(-1.5deg);\n }\n 10% {\n transform: translate(0, 2.5px) rotate(1.5deg);\n }\n 12% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 14% {\n transform: translate(0, -1.5px) rotate(1.5deg);\n }\n 16% {\n transform: translate(0, -0.5px) rotate(-1.5deg);\n }\n 18% {\n transform: translate(0, 0.5px) rotate(-1.5deg);\n }\n 20% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 22% {\n transform: translate(0, 0.5px) rotate(-1.5deg);\n }\n 24% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 26% {\n transform: translate(0, 0.5px) rotate(0.5deg);\n }\n 28% {\n transform: translate(0, 0.5px) rotate(1.5deg);\n }\n 30% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 32% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 34% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 36% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 38% {\n transform: translate(0, 1.5px) rotate(-1.5deg);\n }\n 40% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 42% {\n transform: translate(0, 2.5px) rotate(-1.5deg);\n }\n 44% {\n transform: translate(0, 1.5px) rotate(0.5deg);\n }\n 46% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 48% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 50% {\n transform: translate(0, 0.5px) rotate(0.5deg);\n }\n 52% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 54% {\n transform: translate(0, -1.5px) rotate(1.5deg);\n }\n 56% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 58% {\n transform: translate(0, 0.5px) rotate(2.5deg);\n }\n 60% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 62% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 64% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 66% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 68% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 70% {\n transform: translate(0, 1.5px) rotate(0.5deg);\n }\n 72% {\n transform: translate(0, 2.5px) rotate(1.5deg);\n }\n 74% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 76% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 78% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 80% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 82% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 84% {\n transform: translate(0, 1.5px) rotate(2.5deg);\n }\n 86% {\n transform: translate(0, -1.5px) rotate(-1.5deg);\n }\n 88% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 90% {\n transform: translate(0, 2.5px) rotate(-0.5deg);\n }\n 92% {\n transform: translate(0, 0.5px) rotate(-0.5deg);\n }\n 94% {\n transform: translate(0, 2.5px) rotate(0.5deg);\n }\n 96% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 98% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 0%,\n 100% {\n transform: translate(0, 0) rotate(0deg);\n }\n}\n.dplayer {\n position: relative;\n overflow: hidden;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n line-height: 1;\n}\n.dplayer * {\n box-sizing: content-box;\n}\n.dplayer svg {\n width: 100%;\n height: 100%;\n}\n.dplayer svg path,\n.dplayer svg circle {\n fill: #fff;\n}\n.dplayer:-webkit-full-screen {\n width: 100%;\n height: 100%;\n background: #000;\n position: fixed;\n z-index: 100000;\n left: 0;\n top: 0;\n margin: 0;\n padding: 0;\n transform: translate(0, 0);\n}\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit {\n display: none;\n}\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment {\n display: none;\n}\n.dplayer.dplayer-no-danmaku .dplayer-danmaku {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-time {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-bar-wrap {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-setting-speed {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-setting-loop {\n display: none;\n}\n.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting {\n display: none;\n}\n.dplayer.dplayer-arrow .dplayer-danmaku {\n font-size: 18px;\n}\n.dplayer.dplayer-arrow .dplayer-icon {\n margin: 0 -3px;\n}\n.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move {\n animation-play-state: running;\n}\n@media (min-width: 900px) {\n .dplayer.dplayer-playing .dplayer-controller-mask {\n opacity: 0;\n }\n .dplayer.dplayer-playing .dplayer-controller {\n opacity: 0;\n }\n .dplayer.dplayer-playing:hover .dplayer-controller-mask {\n opacity: 1;\n }\n .dplayer.dplayer-playing:hover .dplayer-controller {\n opacity: 1;\n }\n}\n.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon {\n display: block;\n}\n.dplayer.dplayer-loading .dplayer-danmaku,\n.dplayer.dplayer-paused .dplayer-danmaku,\n.dplayer.dplayer-loading .dplayer-danmaku-move,\n.dplayer.dplayer-paused .dplayer-danmaku-move {\n animation-play-state: paused;\n}\n.dplayer.dplayer-hide-controller {\n cursor: none;\n}\n.dplayer.dplayer-hide-controller .dplayer-controller-mask {\n opacity: 0;\n transform: translateY(100%);\n}\n.dplayer.dplayer-hide-controller .dplayer-controller {\n opacity: 0;\n transform: translateY(100%);\n}\n.dplayer.dplayer-show-controller .dplayer-controller-mask {\n opacity: 1;\n}\n.dplayer.dplayer-show-controller .dplayer-controller {\n opacity: 1;\n}\n.dplayer.dplayer-fulled {\n position: fixed;\n z-index: 100000;\n left: 0;\n top: 0;\n width: 100% !important;\n height: 100% !important;\n}\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-airplay-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-chromecast-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-play-icon {\n display: none;\n}\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\n position: static;\n display: inline-block;\n}\n.dplayer.dplayer-mobile .dplayer-bar-time {\n display: none;\n}\n.dplayer.dplayer-mobile.dplayer-hide-controller .dplayer-mobile-play {\n display: none;\n}\n.dplayer.dplayer-mobile .dplayer-mobile-play {\n display: block;\n}\n.dplayer-web-fullscreen-fix {\n position: fixed;\n top: 0;\n left: 0;\n margin: 0;\n padding: 0;\n}\n[data-balloon]:before {\n display: none;\n}\n[data-balloon]:after {\n padding: 0.3em 0.7em;\n background: rgba(17, 17, 17, 0.7);\n}\n[data-balloon][data-balloon-pos=\"up\"]:after {\n margin-bottom: 0;\n}\n.dplayer-bezel {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n font-size: 22px;\n color: #fff;\n pointer-events: none;\n}\n.dplayer-bezel .dplayer-bezel-icon {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -26px 0 0 -26px;\n height: 52px;\n width: 52px;\n padding: 12px;\n box-sizing: border-box;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n}\n.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition {\n animation: bezel-hide 0.5s linear;\n}\n@keyframes bezel-hide {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(2);\n }\n}\n.dplayer-bezel .dplayer-danloading {\n position: absolute;\n top: 50%;\n margin-top: -7px;\n width: 100%;\n text-align: center;\n font-size: 14px;\n line-height: 14px;\n animation: my-face 5s infinite ease-in-out;\n}\n.dplayer-bezel .diplayer-loading-icon {\n display: none;\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -18px 0 0 -18px;\n height: 36px;\n width: 36px;\n pointer-events: none;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide {\n display: none;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot {\n animation: diplayer-loading-dot-fade 0.8s ease infinite;\n opacity: 0;\n transform-origin: 4px 4px;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1 {\n animation-delay: 0.1s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2 {\n animation-delay: 0.2s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3 {\n animation-delay: 0.3s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4 {\n animation-delay: 0.4s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5 {\n animation-delay: 0.5s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6 {\n animation-delay: 0.6s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7 {\n animation-delay: 0.7s;\n}\n@keyframes diplayer-loading-dot-fade {\n 0% {\n opacity: 0.7;\n transform: scale(1.2, 1.2);\n }\n 50% {\n opacity: 0.25;\n transform: scale(0.9, 0.9);\n }\n to {\n opacity: 0.25;\n transform: scale(0.85, 0.85);\n }\n}\n.dplayer-controller-mask {\n background: url(${___CSS_LOADER_URL_REPLACEMENT_0___}) repeat-x bottom;\n height: 98px;\n width: 100%;\n position: absolute;\n bottom: 0;\n transition: all 0.3s ease;\n}\n.dplayer-controller {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 41px;\n padding: 0 20px;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n transition: all 0.3s ease;\n}\n.dplayer-controller.dplayer-controller-comment .dplayer-icons {\n display: none;\n}\n.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box {\n display: block;\n}\n.dplayer-controller .dplayer-bar-wrap {\n padding: 5px 0;\n cursor: pointer;\n position: absolute;\n bottom: 33px;\n width: calc(100% - 40px);\n height: 3px;\n}\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight {\n display: block;\n width: 8px;\n transform: translateX(-4px);\n top: 4px;\n height: 40%;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight {\n z-index: 12;\n position: absolute;\n top: 5px;\n width: 6px;\n height: 20%;\n border-radius: 6px;\n background-color: #fff;\n text-align: center;\n transform: translateX(-3px);\n transition: all 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text {\n display: block;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-preview {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-time {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text {\n display: none;\n position: absolute;\n left: 50%;\n top: -24px;\n padding: 5px 8px;\n background-color: rgba(0, 0, 0, 0.62);\n color: #fff;\n border-radius: 4px;\n font-size: 12px;\n white-space: nowrap;\n transform: translateX(-50%);\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview {\n position: absolute;\n background: #fff;\n pointer-events: none;\n display: none;\n background-size: 16000px 100%;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 1;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time {\n position: absolute;\n left: 0px;\n top: -20px;\n border-radius: 4px;\n padding: 5px 7px;\n background-color: rgba(0, 0, 0, 0.62);\n color: #fff;\n font-size: 12px;\n text-align: center;\n opacity: 1;\n transition: opacity 0.1s ease-in-out;\n word-wrap: normal;\n word-break: normal;\n z-index: 2;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar {\n position: relative;\n height: 3px;\n width: 100%;\n background: rgba(255, 255, 255, 0.2);\n cursor: pointer;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.4);\n height: 3px;\n transition: all 0.5s ease;\n will-change: width;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n height: 3px;\n will-change: width;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n transform: scale(0);\n}\n.dplayer-controller .dplayer-icons {\n height: 38px;\n position: absolute;\n bottom: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box {\n display: none;\n position: absolute;\n transition: all 0.3s ease-in-out;\n z-index: 2;\n height: 38px;\n bottom: 0;\n left: 20px;\n right: 20px;\n color: #fff;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon {\n padding: 7px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon {\n position: absolute;\n left: 0;\n top: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon {\n position: absolute;\n right: 0;\n top: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box {\n position: absolute;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n bottom: 41px;\n left: 0;\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\n border-radius: 4px;\n padding: 10px 10px 16px;\n font-size: 14px;\n width: 204px;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n transform: translateY(10px) scale(0.95);\n visibility: hidden;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type='radio'] {\n display: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label {\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title {\n font-size: 13px;\n color: #fff;\n line-height: 30px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type {\n font-size: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title {\n margin-bottom: 6px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span {\n border-radius: 4px 0 0 4px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span {\n border-radius: 0 4px 4px 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span {\n width: 33%;\n padding: 4px 6px;\n line-height: 16px;\n display: inline-block;\n font-size: 12px;\n color: #fff;\n border: 1px solid #fff;\n margin-right: -1px;\n box-sizing: border-box;\n text-align: center;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked + span {\n background: #e4e4e6;\n color: #1c1c1c;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color {\n font-size: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label {\n font-size: 0;\n padding: 6px;\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span {\n width: 22px;\n height: 22px;\n display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover {\n animation: my-face 5s infinite ease-in-out;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input {\n outline: none;\n border: none;\n padding: 8px 31px;\n font-size: 14px;\n line-height: 18px;\n text-align: center;\n border-radius: 4px;\n background: none;\n margin: 0;\n height: 100%;\n box-sizing: border-box;\n width: 100%;\n color: #fff;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-moz-placeholder {\n color: #fff;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder {\n color: #fff;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear {\n display: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon {\n padding: 7px;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-right {\n right: 20px;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon {\n padding: 8px;\n}\n.dplayer-controller .dplayer-icons .dplayer-time,\n.dplayer-controller .dplayer-icons .dplayer-live-badge {\n line-height: 38px;\n color: #eee;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\n vertical-align: middle;\n font-size: 13px;\n cursor: default;\n}\n.dplayer-controller .dplayer-icons .dplayer-live-dot {\n display: inline-block;\n width: 6px;\n height: 6px;\n vertical-align: 4%;\n margin-right: 5px;\n content: '';\n border-radius: 6px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-wrap {\n position: relative;\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n margin-left: 10px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator {\n line-height: 38px;\n color: #eee;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\n vertical-align: middle;\n font-size: 13px;\n cursor: pointer;\n padding: 0 4px;\n border-radius: 3px;\n transition: background 0.2s ease, color 0.2s ease;\n display: inline-block;\n min-width: 32px;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator:hover {\n background: rgba(255, 255, 255, 0.1);\n color: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel {\n position: absolute;\n bottom: 42px;\n left: 50%;\n transform: translateX(-50%) translateY(8px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: 280px;\n border-radius: 10px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.06);\n padding: 16px 20px 12px;\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n z-index: 10;\n box-sizing: border-box;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel::after {\n content: '';\n position: absolute;\n bottom: -6px;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid rgba(28, 28, 28, 0.7);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel.dplayer-speed-panel-open {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n transform: translateX(-50%) translateY(0) scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-panel-title {\n color: rgba(255, 255, 255, 0.7);\n font-size: 12px;\n margin-bottom: 14px;\n letter-spacing: 0.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-wrap {\n position: relative;\n width: 100%;\n padding: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn {\n flex-shrink: 0;\n border: none;\n background: none;\n color: rgba(255, 255, 255, 0.85);\n font-size: 18px;\n font-weight: 700;\n width: 24px;\n height: 22px;\n line-height: 22px;\n text-align: center;\n cursor: pointer;\n padding: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n transition: color 0.15s ease, opacity 0.15s ease;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:hover {\n color: #fff;\n opacity: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:active {\n transform: scale(0.9);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-inner {\n flex: 1;\n min-width: 0;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track {\n position: relative;\n width: 100%;\n height: 22px;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track::before {\n content: '';\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n height: 3px;\n background: rgba(255, 255, 255, 0.18);\n border-radius: 1.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-filled {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n height: 3px;\n background: #fff;\n border-radius: 1.5px 0 0 1.5px;\n pointer-events: none;\n z-index: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb {\n position: absolute;\n top: 50%;\n width: 12px;\n height: 12px;\n background: #fff;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n transition: box-shadow 0.2s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\n cursor: pointer;\n z-index: 3;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb:hover {\n box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12), 0 1px 3px rgba(0, 0, 0, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb.dplayer-speed-slider-thumb-active {\n box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.15), 0 1px 3px rgba(0, 0, 0, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick {\n position: absolute;\n top: 50%;\n width: 5px;\n height: 5px;\n background: #505050;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n z-index: 2;\n pointer-events: none;\n transition: background 0.15s ease;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-filled {\n background: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-active {\n background: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-labels {\n position: relative;\n margin-top: 2px;\n height: 16px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label {\n position: absolute;\n top: 0;\n transform: translateX(-50%);\n color: rgba(255, 255, 255, 0.45);\n font-size: 10px;\n cursor: pointer;\n text-align: center;\n transition: color 0.15s ease;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n white-space: nowrap;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label:hover {\n color: rgba(255, 255, 255, 0.85);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label.dplayer-speed-slider-label-active {\n color: #fff;\n font-weight: 600;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon {\n width: 40px;\n height: 100%;\n border: none;\n background-color: transparent;\n outline: none;\n cursor: pointer;\n vertical-align: middle;\n box-sizing: border-box;\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content {\n transition: all 0.2s ease-in-out;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content {\n opacity: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon {\n color: #fff;\n width: auto;\n line-height: 22px;\n font-size: 14px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon {\n padding: 10px 9px 9px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon {\n padding-top: 8.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon {\n width: 43px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume {\n position: relative;\n display: inline-block;\n cursor: pointer;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar {\n width: 45px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar {\n width: 45px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap {\n display: inline-block;\n margin: 0 10px 0 -5px;\n vertical-align: middle;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar {\n position: relative;\n top: 17px;\n width: 0;\n height: 3px;\n background: #aaa;\n transition: all 0.3s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 100%;\n transition: all 0.1s ease;\n will-change: width;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n transform: scale(0);\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitle-btn {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box {\n position: absolute;\n right: 0;\n bottom: 50px;\n transform: translateY(10px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: -moz-fit-content;\n width: fit-content;\n max-width: 240px;\n min-width: 120px;\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n padding: 7px 0;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: auto;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-box-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item {\n height: 30px;\n padding: 5px 10px;\n box-sizing: border-box;\n cursor: pointer;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-setting {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\n position: absolute;\n right: 0;\n bottom: 50px;\n transform: translateY(10px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: 150px;\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n padding: 7px 0;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div.dplayer-setting-origin-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow {\n width: 70px;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item {\n height: 30px;\n padding: 5px 10px;\n box-sizing: border-box;\n cursor: pointer;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku {\n padding: 5px 0;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label {\n padding: 0 10px;\n display: inline;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap {\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap {\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap {\n padding: 0 10px;\n box-sizing: border-box;\n display: none;\n vertical-align: middle;\n height: 100%;\n width: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar {\n position: relative;\n top: 8.5px;\n width: 100%;\n height: 3px;\n background: #fff;\n transition: all 0.3s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 100%;\n transition: all 0.1s ease;\n background: #aaa;\n will-change: width;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n background: #aaa;\n}\n.dplayer-controller .dplayer-icons .dplayer-full {\n display: inline-block;\n height: 100%;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\n position: absolute;\n top: -30px;\n z-index: 1;\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality {\n position: relative;\n display: inline-block;\n height: 100%;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask {\n display: none;\n position: absolute;\n bottom: 38px;\n left: -18px;\n width: 80px;\n padding-bottom: 12px;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list {\n display: none;\n font-size: 12px;\n width: 80px;\n border-radius: 2px;\n background: rgba(28, 28, 28, 0.9);\n padding: 5px 0;\n transition: all 0.3s ease-in-out;\n overflow: hidden;\n color: #fff;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item {\n height: 25px;\n box-sizing: border-box;\n cursor: pointer;\n line-height: 25px;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-comment {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-label {\n color: #eee;\n font-size: 13px;\n display: inline-block;\n vertical-align: middle;\n white-space: nowrap;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle {\n width: 32px;\n height: 20px;\n text-align: center;\n font-size: 0;\n vertical-align: middle;\n position: absolute;\n top: 5px;\n right: 10px;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input {\n max-height: 0;\n max-width: 0;\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label {\n display: inline-block;\n position: relative;\n box-shadow: #dfdfdf 0 0 0 0 inset;\n border: 1px solid #dfdfdf;\n height: 20px;\n width: 32px;\n border-radius: 10px;\n box-sizing: border-box;\n cursor: pointer;\n transition: 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:before {\n content: '';\n position: absolute;\n display: block;\n height: 18px;\n width: 18px;\n top: 0;\n left: 0;\n border-radius: 15px;\n transition: 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:after {\n content: '';\n position: absolute;\n display: block;\n left: 0;\n top: 0;\n border-radius: 15px;\n background: #fff;\n transition: 0.2s ease-in-out;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\n height: 18px;\n width: 18px;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label {\n border-color: rgba(255, 255, 255, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:before {\n width: 30px;\n background: rgba(255, 255, 255, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:after {\n left: 12px;\n}\n.dplayer-mobile-play {\n display: none;\n width: 50px;\n height: 50px;\n border: none;\n background-color: transparent;\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n bottom: 0;\n opacity: 0.8;\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n}\n.dplayer-danmaku {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n font-size: 22px;\n color: #fff;\n}\n.dplayer-danmaku .dplayer-danmaku-item {\n display: inline-block;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n cursor: default;\n white-space: nowrap;\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\n}\n.dplayer-danmaku .dplayer-danmaku-item--demo {\n position: absolute;\n visibility: hidden;\n}\n.dplayer-danmaku .dplayer-danmaku-right {\n position: absolute;\n right: 0;\n transform: translateX(100%);\n}\n.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move {\n will-change: transform;\n animation-name: danmaku;\n animation-timing-function: linear;\n animation-play-state: paused;\n}\n@keyframes danmaku {\n from {\n transform: translateX(100%);\n }\n}\n.dplayer-danmaku .dplayer-danmaku-top,\n.dplayer-danmaku .dplayer-danmaku-bottom {\n position: absolute;\n width: 100%;\n text-align: center;\n visibility: hidden;\n}\n.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,\n.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move {\n will-change: visibility;\n animation-name: danmaku-center;\n animation-timing-function: linear;\n animation-play-state: paused;\n}\n@keyframes danmaku-center {\n from {\n visibility: visible;\n }\n to {\n visibility: visible;\n }\n}\n.dplayer-logo {\n pointer-events: none;\n position: absolute;\n left: 20px;\n top: 20px;\n max-width: 50px;\n max-height: 50px;\n}\n.dplayer-logo img {\n max-width: 100%;\n max-height: 100%;\n background: none;\n}\n.dplayer-menu {\n position: absolute;\n width: 170px;\n border-radius: 2px;\n background: rgba(28, 28, 28, 0.85);\n padding: 5px 0;\n overflow: hidden;\n z-index: 3;\n display: none;\n}\n.dplayer-menu.dplayer-menu-show {\n display: block;\n}\n.dplayer-menu .dplayer-menu-item {\n height: 30px;\n box-sizing: border-box;\n cursor: pointer;\n}\n.dplayer-menu .dplayer-menu-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-menu .dplayer-menu-item a {\n padding: 0 10px;\n line-height: 30px;\n color: #eee;\n font-size: 13px;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n box-sizing: border-box;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n.dplayer-menu .dplayer-menu-item a:hover {\n -webkit-text-decoration: none;\n text-decoration: none;\n}\n.dplayer-notice-list {\n position: absolute;\n top: 10px;\n left: 10px;\n display: flex;\n flex-direction: column;\n max-height: 50px;\n overflow: visible;\n}\n.dplayer-notice-list .dplayer-notice {\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(5px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n color: #fff;\n display: table;\n pointer-events: none;\n padding: 5px 10px;\n font-size: 14px;\n opacity: 0;\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\n}\n.dplayer-notice-list .dplayer-notice:not(:last-child) {\n display: none;\n}\n.dplayer-notice-list .remove-notice {\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\n}\n@keyframes showNotice {\n 100% {\n opacity: 1;\n }\n}\n@keyframes removeNotice {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n.dplayer-subtitle {\n position: absolute;\n bottom: 40px;\n width: 90%;\n left: 5%;\n text-align: center;\n color: #fff;\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\n font-size: 20px;\n}\n.dplayer-subtitle.dplayer-subtitle-hide {\n display: none;\n}\n.dplayer-mask {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1;\n display: none;\n}\n.dplayer-mask.dplayer-mask-show {\n display: block;\n}\n.dplayer-video-wrap {\n position: relative;\n background: #000;\n font-size: 0;\n width: 100%;\n height: 100%;\n}\n.dplayer-video-wrap .dplayer-video {\n width: 100%;\n height: 100%;\n display: none;\n}\n.dplayer-video-wrap .dplayer-video-current {\n display: block;\n}\n.dplayer-video-wrap .dplayer-video-prepare {\n display: none;\n}\n.dplayer-info-panel {\n position: absolute;\n top: 10px;\n left: 10px;\n width: 400px;\n background: rgba(28, 28, 28, 0.8);\n padding: 10px;\n color: #fff;\n font-size: 12px;\n border-radius: 2px;\n}\n.dplayer-info-panel-hide {\n display: none;\n}\n.dplayer-info-panel .dplayer-info-panel-close {\n cursor: pointer;\n position: absolute;\n right: 10px;\n top: 10px;\n}\n.dplayer-info-panel .dplayer-info-panel-item > span {\n display: inline-block;\n vertical-align: middle;\n line-height: 15px;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n.dplayer-info-panel .dplayer-info-panel-item-title {\n width: 100px;\n text-align: right;\n margin-right: 10px;\n}\n.dplayer-info-panel .dplayer-info-panel-item-data {\n width: 260px;\n}\n/*# sourceMappingURL=index.css.map */`, \"\",{\"version\":3,\"sources\":[\"webpack://./global.less\",\"webpack://./src/css/index.less\",\"webpack://./player.less\",\"webpack://./balloon.less\",\"webpack://./bezel.less\",\"webpack://./controller.less\",\"webpack://./danmaku.less\",\"webpack://./logo.less\",\"webpack://./menu.less\",\"webpack://./notice.less\",\"webpack://./subtitle.less\",\"webpack://./video.less\",\"webpack://./info-panel.less\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\"@keyframes my-face {\\n 2% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 4% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 6% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 8% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 10% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 12% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 14% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 16% {\\n transform: translate(0, -0.5px) rotate(-1.5deg);\\n }\\n 18% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 20% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 22% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 24% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 26% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 28% {\\n transform: translate(0, 0.5px) rotate(1.5deg);\\n }\\n 30% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 32% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 34% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 36% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 38% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 40% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 42% {\\n transform: translate(0, 2.5px) rotate(-1.5deg);\\n }\\n 44% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 46% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 48% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 50% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 52% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 54% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 56% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 58% {\\n transform: translate(0, 0.5px) rotate(2.5deg);\\n }\\n 60% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 62% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 64% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 66% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 68% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 70% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 72% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 74% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 76% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 78% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 80% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 82% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 84% {\\n transform: translate(0, 1.5px) rotate(2.5deg);\\n }\\n 86% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 88% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 90% {\\n transform: translate(0, 2.5px) rotate(-0.5deg);\\n }\\n 92% {\\n transform: translate(0, 0.5px) rotate(-0.5deg);\\n }\\n 94% {\\n transform: translate(0, 2.5px) rotate(0.5deg);\\n }\\n 96% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 98% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 0%,\\n 100% {\\n transform: translate(0, 0) rotate(0deg);\\n }\\n}\",\"@import '../../node_modules/balloon-css/balloon.css';\\n@keyframes my-face {\\n 2% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 4% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 6% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 8% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 10% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 12% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 14% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 16% {\\n transform: translate(0, -0.5px) rotate(-1.5deg);\\n }\\n 18% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 20% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 22% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 24% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 26% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 28% {\\n transform: translate(0, 0.5px) rotate(1.5deg);\\n }\\n 30% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 32% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 34% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 36% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 38% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 40% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 42% {\\n transform: translate(0, 2.5px) rotate(-1.5deg);\\n }\\n 44% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 46% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 48% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 50% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 52% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 54% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 56% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 58% {\\n transform: translate(0, 0.5px) rotate(2.5deg);\\n }\\n 60% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 62% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 64% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 66% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 68% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 70% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 72% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 74% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 76% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 78% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 80% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 82% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 84% {\\n transform: translate(0, 1.5px) rotate(2.5deg);\\n }\\n 86% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 88% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 90% {\\n transform: translate(0, 2.5px) rotate(-0.5deg);\\n }\\n 92% {\\n transform: translate(0, 0.5px) rotate(-0.5deg);\\n }\\n 94% {\\n transform: translate(0, 2.5px) rotate(0.5deg);\\n }\\n 96% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 98% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 0%,\\n 100% {\\n transform: translate(0, 0) rotate(0deg);\\n }\\n}\\n.dplayer {\\n position: relative;\\n overflow: hidden;\\n user-select: none;\\n line-height: 1;\\n}\\n.dplayer * {\\n box-sizing: content-box;\\n}\\n.dplayer svg {\\n width: 100%;\\n height: 100%;\\n}\\n.dplayer svg path,\\n.dplayer svg circle {\\n fill: #fff;\\n}\\n.dplayer:-webkit-full-screen {\\n width: 100%;\\n height: 100%;\\n background: #000;\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n margin: 0;\\n padding: 0;\\n transform: translate(0, 0);\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit {\\n display: none;\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment {\\n display: none;\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-danmaku {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-time {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-bar-wrap {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-setting-speed {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-setting-loop {\\n display: none;\\n}\\n.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting {\\n display: none;\\n}\\n.dplayer.dplayer-arrow .dplayer-danmaku {\\n font-size: 18px;\\n}\\n.dplayer.dplayer-arrow .dplayer-icon {\\n margin: 0 -3px;\\n}\\n.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move {\\n animation-play-state: running;\\n}\\n@media (min-width: 900px) {\\n .dplayer.dplayer-playing .dplayer-controller-mask {\\n opacity: 0;\\n }\\n .dplayer.dplayer-playing .dplayer-controller {\\n opacity: 0;\\n }\\n .dplayer.dplayer-playing:hover .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer.dplayer-playing:hover .dplayer-controller {\\n opacity: 1;\\n }\\n}\\n.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon {\\n display: block;\\n}\\n.dplayer.dplayer-loading .dplayer-danmaku,\\n.dplayer.dplayer-paused .dplayer-danmaku,\\n.dplayer.dplayer-loading .dplayer-danmaku-move,\\n.dplayer.dplayer-paused .dplayer-danmaku-move {\\n animation-play-state: paused;\\n}\\n.dplayer.dplayer-hide-controller {\\n cursor: none;\\n}\\n.dplayer.dplayer-hide-controller .dplayer-controller-mask {\\n opacity: 0;\\n transform: translateY(100%);\\n}\\n.dplayer.dplayer-hide-controller .dplayer-controller {\\n opacity: 0;\\n transform: translateY(100%);\\n}\\n.dplayer.dplayer-show-controller .dplayer-controller-mask {\\n opacity: 1;\\n}\\n.dplayer.dplayer-show-controller .dplayer-controller {\\n opacity: 1;\\n}\\n.dplayer.dplayer-fulled {\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n width: 100% !important;\\n height: 100% !important;\\n}\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-airplay-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-chromecast-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-play-icon {\\n display: none;\\n}\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\\n position: static;\\n display: inline-block;\\n}\\n.dplayer.dplayer-mobile .dplayer-bar-time {\\n display: none;\\n}\\n.dplayer.dplayer-mobile.dplayer-hide-controller .dplayer-mobile-play {\\n display: none;\\n}\\n.dplayer.dplayer-mobile .dplayer-mobile-play {\\n display: block;\\n}\\n.dplayer-web-fullscreen-fix {\\n position: fixed;\\n top: 0;\\n left: 0;\\n margin: 0;\\n padding: 0;\\n}\\n[data-balloon]:before {\\n display: none;\\n}\\n[data-balloon]:after {\\n padding: 0.3em 0.7em;\\n background: rgba(17, 17, 17, 0.7);\\n}\\n[data-balloon][data-balloon-pos=\\\"up\\\"]:after {\\n margin-bottom: 0;\\n}\\n.dplayer-bezel {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n pointer-events: none;\\n}\\n.dplayer-bezel .dplayer-bezel-icon {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -26px 0 0 -26px;\\n height: 52px;\\n width: 52px;\\n padding: 12px;\\n box-sizing: border-box;\\n background: rgba(0, 0, 0, 0.5);\\n border-radius: 50%;\\n opacity: 0;\\n pointer-events: none;\\n}\\n.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition {\\n animation: bezel-hide 0.5s linear;\\n}\\n@keyframes bezel-hide {\\n from {\\n opacity: 1;\\n transform: scale(1);\\n }\\n to {\\n opacity: 0;\\n transform: scale(2);\\n }\\n}\\n.dplayer-bezel .dplayer-danloading {\\n position: absolute;\\n top: 50%;\\n margin-top: -7px;\\n width: 100%;\\n text-align: center;\\n font-size: 14px;\\n line-height: 14px;\\n animation: my-face 5s infinite ease-in-out;\\n}\\n.dplayer-bezel .diplayer-loading-icon {\\n display: none;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -18px 0 0 -18px;\\n height: 36px;\\n width: 36px;\\n pointer-events: none;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide {\\n display: none;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot {\\n animation: diplayer-loading-dot-fade 0.8s ease infinite;\\n opacity: 0;\\n transform-origin: 4px 4px;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1 {\\n animation-delay: 0.1s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2 {\\n animation-delay: 0.2s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3 {\\n animation-delay: 0.3s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4 {\\n animation-delay: 0.4s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5 {\\n animation-delay: 0.5s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6 {\\n animation-delay: 0.6s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7 {\\n animation-delay: 0.7s;\\n}\\n@keyframes diplayer-loading-dot-fade {\\n 0% {\\n opacity: 0.7;\\n transform: scale(1.2, 1.2);\\n }\\n 50% {\\n opacity: 0.25;\\n transform: scale(0.9, 0.9);\\n }\\n to {\\n opacity: 0.25;\\n transform: scale(0.85, 0.85);\\n }\\n}\\n.dplayer-controller-mask {\\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;\\n height: 98px;\\n width: 100%;\\n position: absolute;\\n bottom: 0;\\n transition: all 0.3s ease;\\n}\\n.dplayer-controller {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n height: 41px;\\n padding: 0 20px;\\n user-select: none;\\n transition: all 0.3s ease;\\n}\\n.dplayer-controller.dplayer-controller-comment .dplayer-icons {\\n display: none;\\n}\\n.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box {\\n display: block;\\n}\\n.dplayer-controller .dplayer-bar-wrap {\\n padding: 5px 0;\\n cursor: pointer;\\n position: absolute;\\n bottom: 33px;\\n width: calc(100% - 40px);\\n height: 3px;\\n}\\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight {\\n display: block;\\n width: 8px;\\n transform: translateX(-4px);\\n top: 4px;\\n height: 40%;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight {\\n z-index: 12;\\n position: absolute;\\n top: 5px;\\n width: 6px;\\n height: 20%;\\n border-radius: 6px;\\n background-color: #fff;\\n text-align: center;\\n transform: translateX(-3px);\\n transition: all 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text {\\n display: block;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-preview {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-time {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text {\\n display: none;\\n position: absolute;\\n left: 50%;\\n top: -24px;\\n padding: 5px 8px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n border-radius: 4px;\\n font-size: 12px;\\n white-space: nowrap;\\n transform: translateX(-50%);\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview {\\n position: absolute;\\n background: #fff;\\n pointer-events: none;\\n display: none;\\n background-size: 16000px 100%;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time {\\n position: absolute;\\n left: 0px;\\n top: -20px;\\n border-radius: 4px;\\n padding: 5px 7px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n font-size: 12px;\\n text-align: center;\\n opacity: 1;\\n transition: opacity 0.1s ease-in-out;\\n word-wrap: normal;\\n word-break: normal;\\n z-index: 2;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar {\\n position: relative;\\n height: 3px;\\n width: 100%;\\n background: rgba(255, 255, 255, 0.2);\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: rgba(255, 255, 255, 0.4);\\n height: 3px;\\n transition: all 0.5s ease;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n height: 3px;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n}\\n.dplayer-controller .dplayer-icons {\\n height: 38px;\\n position: absolute;\\n bottom: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box {\\n display: none;\\n position: absolute;\\n transition: all 0.3s ease-in-out;\\n z-index: 2;\\n height: 38px;\\n bottom: 0;\\n left: 20px;\\n right: 20px;\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon {\\n padding: 7px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon {\\n position: absolute;\\n left: 0;\\n top: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon {\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box {\\n position: absolute;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n bottom: 41px;\\n left: 0;\\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\\n border-radius: 4px;\\n padding: 10px 10px 16px;\\n font-size: 14px;\\n width: 204px;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n opacity: 0;\\n transform: translateY(10px) scale(0.95);\\n visibility: hidden;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type='radio'] {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label {\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title {\\n font-size: 13px;\\n color: #fff;\\n line-height: 30px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type {\\n font-size: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title {\\n margin-bottom: 6px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span {\\n border-radius: 4px 0 0 4px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span {\\n border-radius: 0 4px 4px 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span {\\n width: 33%;\\n padding: 4px 6px;\\n line-height: 16px;\\n display: inline-block;\\n font-size: 12px;\\n color: #fff;\\n border: 1px solid #fff;\\n margin-right: -1px;\\n box-sizing: border-box;\\n text-align: center;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked + span {\\n background: #e4e4e6;\\n color: #1c1c1c;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color {\\n font-size: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label {\\n font-size: 0;\\n padding: 6px;\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span {\\n width: 22px;\\n height: 22px;\\n display: inline-block;\\n border-radius: 50%;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover {\\n animation: my-face 5s infinite ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input {\\n outline: none;\\n border: none;\\n padding: 8px 31px;\\n font-size: 14px;\\n line-height: 18px;\\n text-align: center;\\n border-radius: 4px;\\n background: none;\\n margin: 0;\\n height: 100%;\\n box-sizing: border-box;\\n width: 100%;\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder {\\n color: #fff;\\n opacity: 0.8;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon {\\n padding: 7px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-right {\\n right: 20px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon {\\n padding: 8px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-time,\\n.dplayer-controller .dplayer-icons .dplayer-live-badge {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: default;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-live-dot {\\n display: inline-block;\\n width: 6px;\\n height: 6px;\\n vertical-align: 4%;\\n margin-right: 5px;\\n content: '';\\n border-radius: 6px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-wrap {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n vertical-align: middle;\\n margin-left: 10px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: pointer;\\n padding: 0 4px;\\n border-radius: 3px;\\n transition: background 0.2s ease, color 0.2s ease;\\n display: inline-block;\\n min-width: 32px;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator:hover {\\n background: rgba(255, 255, 255, 0.1);\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel {\\n position: absolute;\\n bottom: 42px;\\n left: 50%;\\n transform: translateX(-50%) translateY(8px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 280px;\\n border-radius: 10px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.06);\\n padding: 16px 20px 12px;\\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\\n z-index: 10;\\n box-sizing: border-box;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel::after {\\n content: '';\\n position: absolute;\\n bottom: -6px;\\n left: 50%;\\n transform: translateX(-50%);\\n width: 0;\\n height: 0;\\n border-left: 6px solid transparent;\\n border-right: 6px solid transparent;\\n border-top: 6px solid rgba(28, 28, 28, 0.7);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel.dplayer-speed-panel-open {\\n opacity: 1;\\n visibility: visible;\\n pointer-events: auto;\\n transform: translateX(-50%) translateY(0) scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-panel-title {\\n color: rgba(255, 255, 255, 0.7);\\n font-size: 12px;\\n margin-bottom: 14px;\\n letter-spacing: 0.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-wrap {\\n position: relative;\\n width: 100%;\\n padding: 0;\\n box-sizing: border-box;\\n display: flex;\\n align-items: flex-start;\\n gap: 8px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn {\\n flex-shrink: 0;\\n border: none;\\n background: none;\\n color: rgba(255, 255, 255, 0.85);\\n font-size: 18px;\\n font-weight: 700;\\n width: 24px;\\n height: 22px;\\n line-height: 22px;\\n text-align: center;\\n cursor: pointer;\\n padding: 0;\\n user-select: none;\\n transition: color 0.15s ease, opacity 0.15s ease;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:hover {\\n color: #fff;\\n opacity: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:active {\\n transform: scale(0.9);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-inner {\\n flex: 1;\\n min-width: 0;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track {\\n position: relative;\\n width: 100%;\\n height: 22px;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track::before {\\n content: '';\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n width: 100%;\\n height: 3px;\\n background: rgba(255, 255, 255, 0.18);\\n border-radius: 1.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-filled {\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n height: 3px;\\n background: #fff;\\n border-radius: 1.5px 0 0 1.5px;\\n pointer-events: none;\\n z-index: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb {\\n position: absolute;\\n top: 50%;\\n width: 12px;\\n height: 12px;\\n background: #fff;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n transition: box-shadow 0.2s ease;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\\n cursor: pointer;\\n z-index: 3;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb:hover {\\n box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12), 0 1px 3px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb.dplayer-speed-slider-thumb-active {\\n box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.15), 0 1px 3px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick {\\n position: absolute;\\n top: 50%;\\n width: 5px;\\n height: 5px;\\n background: #505050;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 2;\\n pointer-events: none;\\n transition: background 0.15s ease;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-filled {\\n background: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-active {\\n background: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-labels {\\n position: relative;\\n margin-top: 2px;\\n height: 16px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label {\\n position: absolute;\\n top: 0;\\n transform: translateX(-50%);\\n color: rgba(255, 255, 255, 0.45);\\n font-size: 10px;\\n cursor: pointer;\\n text-align: center;\\n transition: color 0.15s ease;\\n user-select: none;\\n white-space: nowrap;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label:hover {\\n color: rgba(255, 255, 255, 0.85);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label.dplayer-speed-slider-label-active {\\n color: #fff;\\n font-weight: 600;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon {\\n width: 40px;\\n height: 100%;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n vertical-align: middle;\\n box-sizing: border-box;\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content {\\n transition: all 0.2s ease-in-out;\\n opacity: 0.8;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content {\\n opacity: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon {\\n color: #fff;\\n width: auto;\\n line-height: 22px;\\n font-size: 14px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon {\\n padding: 10px 9px 9px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon {\\n padding-top: 8.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon {\\n width: 43px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume {\\n position: relative;\\n display: inline-block;\\n cursor: pointer;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap {\\n display: inline-block;\\n margin: 0 10px 0 -5px;\\n vertical-align: middle;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n position: relative;\\n top: 17px;\\n width: 0;\\n height: 3px;\\n background: #aaa;\\n transition: all 0.3s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitle-btn {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: fit-content;\\n max-width: 240px;\\n min-width: 120px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: auto;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 150px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div.dplayer-setting-origin-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow {\\n width: 70px;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku {\\n padding: 5px 0;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label {\\n padding: 0 10px;\\n display: inline;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap {\\n padding: 0 10px;\\n box-sizing: border-box;\\n display: none;\\n vertical-align: middle;\\n height: 100%;\\n width: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar {\\n position: relative;\\n top: 8.5px;\\n width: 100%;\\n height: 3px;\\n background: #fff;\\n transition: all 0.3s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n background: #aaa;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n background: #aaa;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full {\\n display: inline-block;\\n height: 100%;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\\n position: absolute;\\n top: -30px;\\n z-index: 1;\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask {\\n display: none;\\n position: absolute;\\n bottom: 38px;\\n left: -18px;\\n width: 80px;\\n padding-bottom: 12px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list {\\n display: none;\\n font-size: 12px;\\n width: 80px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.9);\\n padding: 5px 0;\\n transition: all 0.3s ease-in-out;\\n overflow: hidden;\\n color: #fff;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item {\\n height: 25px;\\n box-sizing: border-box;\\n cursor: pointer;\\n line-height: 25px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-comment {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-label {\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n white-space: nowrap;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle {\\n width: 32px;\\n height: 20px;\\n text-align: center;\\n font-size: 0;\\n vertical-align: middle;\\n position: absolute;\\n top: 5px;\\n right: 10px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input {\\n max-height: 0;\\n max-width: 0;\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label {\\n display: inline-block;\\n position: relative;\\n box-shadow: #dfdfdf 0 0 0 0 inset;\\n border: 1px solid #dfdfdf;\\n height: 20px;\\n width: 32px;\\n border-radius: 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n transition: 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:before {\\n content: '';\\n position: absolute;\\n display: block;\\n height: 18px;\\n width: 18px;\\n top: 0;\\n left: 0;\\n border-radius: 15px;\\n transition: 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:after {\\n content: '';\\n position: absolute;\\n display: block;\\n left: 0;\\n top: 0;\\n border-radius: 15px;\\n background: #fff;\\n transition: 0.2s ease-in-out;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\\n height: 18px;\\n width: 18px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label {\\n border-color: rgba(255, 255, 255, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:before {\\n width: 30px;\\n background: rgba(255, 255, 255, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:after {\\n left: 12px;\\n}\\n.dplayer-mobile-play {\\n display: none;\\n width: 50px;\\n height: 50px;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n box-sizing: border-box;\\n bottom: 0;\\n opacity: 0.8;\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n}\\n.dplayer-danmaku {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n}\\n.dplayer-danmaku .dplayer-danmaku-item {\\n display: inline-block;\\n pointer-events: none;\\n user-select: none;\\n cursor: default;\\n white-space: nowrap;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-danmaku .dplayer-danmaku-item--demo {\\n position: absolute;\\n visibility: hidden;\\n}\\n.dplayer-danmaku .dplayer-danmaku-right {\\n position: absolute;\\n right: 0;\\n transform: translateX(100%);\\n}\\n.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move {\\n will-change: transform;\\n animation-name: danmaku;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n}\\n@keyframes danmaku {\\n from {\\n transform: translateX(100%);\\n }\\n}\\n.dplayer-danmaku .dplayer-danmaku-top,\\n.dplayer-danmaku .dplayer-danmaku-bottom {\\n position: absolute;\\n width: 100%;\\n text-align: center;\\n visibility: hidden;\\n}\\n.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,\\n.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move {\\n will-change: visibility;\\n animation-name: danmaku-center;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n}\\n@keyframes danmaku-center {\\n from {\\n visibility: visible;\\n }\\n to {\\n visibility: visible;\\n }\\n}\\n.dplayer-logo {\\n pointer-events: none;\\n position: absolute;\\n left: 20px;\\n top: 20px;\\n max-width: 50px;\\n max-height: 50px;\\n}\\n.dplayer-logo img {\\n max-width: 100%;\\n max-height: 100%;\\n background: none;\\n}\\n.dplayer-menu {\\n position: absolute;\\n width: 170px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.85);\\n padding: 5px 0;\\n overflow: hidden;\\n z-index: 3;\\n display: none;\\n}\\n.dplayer-menu.dplayer-menu-show {\\n display: block;\\n}\\n.dplayer-menu .dplayer-menu-item {\\n height: 30px;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.dplayer-menu .dplayer-menu-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-menu .dplayer-menu-item a {\\n padding: 0 10px;\\n line-height: 30px;\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n width: 100%;\\n box-sizing: border-box;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n.dplayer-menu .dplayer-menu-item a:hover {\\n text-decoration: none;\\n}\\n.dplayer-notice-list {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n display: flex;\\n flex-direction: column;\\n max-height: 50px;\\n overflow: visible;\\n}\\n.dplayer-notice-list .dplayer-notice {\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(5px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n color: #fff;\\n display: table;\\n pointer-events: none;\\n padding: 5px 10px;\\n font-size: 14px;\\n opacity: 0;\\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n}\\n.dplayer-notice-list .dplayer-notice:not(:last-child) {\\n display: none;\\n}\\n.dplayer-notice-list .remove-notice {\\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n}\\n@keyframes showNotice {\\n 100% {\\n opacity: 1;\\n }\\n}\\n@keyframes removeNotice {\\n 0% {\\n opacity: 1;\\n }\\n 100% {\\n opacity: 0;\\n }\\n}\\n.dplayer-subtitle {\\n position: absolute;\\n bottom: 40px;\\n width: 90%;\\n left: 5%;\\n text-align: center;\\n color: #fff;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n font-size: 20px;\\n}\\n.dplayer-subtitle.dplayer-subtitle-hide {\\n display: none;\\n}\\n.dplayer-mask {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 1;\\n display: none;\\n}\\n.dplayer-mask.dplayer-mask-show {\\n display: block;\\n}\\n.dplayer-video-wrap {\\n position: relative;\\n background: #000;\\n font-size: 0;\\n width: 100%;\\n height: 100%;\\n}\\n.dplayer-video-wrap .dplayer-video {\\n width: 100%;\\n height: 100%;\\n display: none;\\n}\\n.dplayer-video-wrap .dplayer-video-current {\\n display: block;\\n}\\n.dplayer-video-wrap .dplayer-video-prepare {\\n display: none;\\n}\\n.dplayer-info-panel {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n width: 400px;\\n background: rgba(28, 28, 28, 0.8);\\n padding: 10px;\\n color: #fff;\\n font-size: 12px;\\n border-radius: 2px;\\n}\\n.dplayer-info-panel-hide {\\n display: none;\\n}\\n.dplayer-info-panel .dplayer-info-panel-close {\\n cursor: pointer;\\n position: absolute;\\n right: 10px;\\n top: 10px;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item > span {\\n display: inline-block;\\n vertical-align: middle;\\n line-height: 15px;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item-title {\\n width: 100px;\\n text-align: right;\\n margin-right: 10px;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item-data {\\n width: 260px;\\n}\\n/*# sourceMappingURL=index.css.map */\",\".dplayer {\\n position: relative;\\n overflow: hidden;\\n user-select: none;\\n line-height: 1;\\n\\n * {\\n box-sizing: content-box;\\n }\\n\\n svg {\\n width: 100%;\\n height: 100%;\\n\\n path,\\n circle {\\n fill: #fff;\\n }\\n }\\n\\n &:-webkit-full-screen {\\n width: 100%;\\n height: 100%;\\n background: #000;\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n margin: 0;\\n padding: 0;\\n transform: translate(0, 0);\\n \\n }\\n\\n &.dplayer-no-danmaku {\\n .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\\n .dplayer-setting-showdan,\\n .dplayer-setting-danmaku,\\n .dplayer-setting-danunlimit {\\n display: none;\\n }\\n }\\n\\n .dplayer-controller .dplayer-icons .dplayer-comment {\\n display: none;\\n }\\n\\n .dplayer-danmaku {\\n display: none;\\n }\\n }\\n\\n &.dplayer-live {\\n .dplayer-time {\\n display: none;\\n }\\n .dplayer-bar-wrap {\\n display: none;\\n }\\n .dplayer-setting-speed {\\n display: none;\\n }\\n .dplayer-setting-loop {\\n display: none;\\n }\\n\\n &.dplayer-no-danmaku {\\n .dplayer-setting {\\n display: none;\\n }\\n }\\n }\\n\\n &.dplayer-arrow {\\n .dplayer-danmaku {\\n font-size: 18px;\\n }\\n .dplayer-icon {\\n margin: 0 -3px;\\n }\\n }\\n\\n &.dplayer-playing {\\n .dplayer-danmaku .dplayer-danmaku-move {\\n animation-play-state: running;\\n }\\n\\n @media (min-width: 900px) {\\n .dplayer-controller-mask {\\n opacity: 0;\\n }\\n .dplayer-controller {\\n opacity: 0;\\n }\\n\\n &:hover {\\n .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer-controller {\\n opacity: 1;\\n }\\n }\\n }\\n }\\n\\n &.dplayer-loading {\\n .dplayer-bezel .diplayer-loading-icon {\\n display: block;\\n }\\n }\\n\\n &.dplayer-loading,\\n &.dplayer-paused {\\n .dplayer-danmaku,\\n .dplayer-danmaku-move {\\n animation-play-state: paused;\\n }\\n }\\n\\n &.dplayer-hide-controller {\\n cursor: none;\\n\\n .dplayer-controller-mask {\\n opacity: 0;\\n transform: translateY(100%);\\n }\\n .dplayer-controller {\\n opacity: 0;\\n transform: translateY(100%);\\n }\\n }\\n &.dplayer-show-controller {\\n .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer-controller {\\n opacity: 1;\\n }\\n }\\n &.dplayer-fulled {\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n width: 100% !important;\\n height: 100% !important;\\n }\\n &.dplayer-mobile {\\n .dplayer-controller .dplayer-icons {\\n .dplayer-volume,\\n .dplayer-camera-icon,\\n .dplayer-airplay-icon,\\n .dplayer-chromecast-icon,\\n .dplayer-play-icon {\\n display: none;\\n }\\n .dplayer-full .dplayer-full-in-icon {\\n position: static;\\n display: inline-block;\\n }\\n }\\n\\n .dplayer-bar-time {\\n display: none;\\n }\\n\\n &.dplayer-hide-controller {\\n .dplayer-mobile-play {\\n display: none;\\n }\\n }\\n\\n .dplayer-mobile-play {\\n display: block;\\n }\\n }\\n}\\n\\n// To hide scroll bar, apply this class to <body>\\n.dplayer-web-fullscreen-fix {\\n position: fixed;\\n top: 0;\\n left: 0;\\n margin: 0;\\n padding: 0;\\n}\\n\",\"@import '../../node_modules/balloon-css/balloon.css';\\n\\n[data-balloon]:before {\\n display: none;\\n}\\n\\n[data-balloon]:after {\\n padding: 0.3em 0.7em;\\n background: rgba(17, 17, 17, 0.7);\\n}\\n\\n[data-balloon][data-balloon-pos=\\\"up\\\"]:after {\\n margin-bottom: 0;\\n}\",\".dplayer-bezel {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n pointer-events: none;\\n .dplayer-bezel-icon {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -26px 0 0 -26px;\\n height: 52px;\\n width: 52px;\\n padding: 12px;\\n box-sizing: border-box;\\n background: rgba(0, 0, 0, .5);\\n border-radius: 50%;\\n opacity: 0;\\n pointer-events: none;\\n &.dplayer-bezel-transition {\\n animation: bezel-hide .5s linear;\\n }\\n @keyframes bezel-hide {\\n from {\\n opacity: 1;\\n transform: scale(1);\\n }\\n to {\\n opacity: 0;\\n transform: scale(2);\\n }\\n }\\n }\\n .dplayer-danloading {\\n position: absolute;\\n top: 50%;\\n margin-top: -7px;\\n width: 100%;\\n text-align: center;\\n font-size: 14px;\\n line-height: 14px;\\n animation: my-face 5s infinite ease-in-out;\\n }\\n .diplayer-loading-icon {\\n display: none;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -18px 0 0 -18px;\\n height: 36px;\\n width: 36px;\\n pointer-events: none;\\n .diplayer-loading-hide {\\n display: none;\\n }\\n .diplayer-loading-dot {\\n animation: diplayer-loading-dot-fade .8s ease infinite;\\n opacity: 0;\\n transform-origin: 4px 4px;\\n each(range(7), {\\n &.diplayer-loading-dot-@{value} {\\n animation-delay: (@value * 0.1s);\\n }\\n });\\n }\\n @keyframes diplayer-loading-dot-fade {\\n 0% {\\n opacity: .7;\\n transform: scale(1.2, 1.2)\\n }\\n 50% {\\n opacity: .25;\\n transform: scale(.9, .9)\\n }\\n to {\\n opacity: .25;\\n transform: scale(.85, .85)\\n }\\n }\\n }\\n}\",\".dplayer-controller-mask {\\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==)\\n repeat-x bottom;\\n height: 98px;\\n width: 100%;\\n position: absolute;\\n bottom: 0;\\n transition: all 0.3s ease;\\n}\\n\\n.dplayer-controller {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n height: 41px;\\n padding: 0 20px;\\n user-select: none;\\n transition: all 0.3s ease;\\n\\n &.dplayer-controller-comment {\\n .dplayer-icons {\\n display: none;\\n }\\n\\n .dplayer-icons.dplayer-comment-box {\\n display: block;\\n }\\n }\\n\\n .dplayer-bar-wrap {\\n padding: 5px 0;\\n cursor: pointer;\\n position: absolute;\\n bottom: 33px;\\n width: calc(100% - 40px);\\n height: 3px;\\n\\n &:hover {\\n .dplayer-bar .dplayer-played .dplayer-thumb {\\n transform: scale(1);\\n }\\n\\n .dplayer-highlight {\\n display: block;\\n width: 8px;\\n transform: translateX(-4px);\\n top: 4px;\\n height: 40%;\\n }\\n }\\n\\n .dplayer-highlight {\\n z-index: 12;\\n position: absolute;\\n top: 5px;\\n width: 6px;\\n height: 20%;\\n border-radius: 6px;\\n background-color: #fff;\\n text-align: center;\\n transform: translateX(-3px);\\n transition: all 0.2s ease-in-out;\\n\\n &:hover {\\n .dplayer-highlight-text {\\n display: block;\\n }\\n\\n & ~ .dplayer-bar-preview {\\n opacity: 0;\\n }\\n\\n & ~ .dplayer-bar-time {\\n opacity: 0;\\n }\\n }\\n\\n .dplayer-highlight-text {\\n display: none;\\n position: absolute;\\n left: 50%;\\n top: -24px;\\n padding: 5px 8px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n border-radius: 4px;\\n font-size: 12px;\\n white-space: nowrap;\\n transform: translateX(-50%);\\n }\\n }\\n\\n .dplayer-bar-preview {\\n position: absolute;\\n background: #fff;\\n pointer-events: none;\\n display: none;\\n background-size: 16000px 100%;\\n }\\n\\n .dplayer-bar-preview-canvas {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n pointer-events: none;\\n }\\n\\n .dplayer-bar-time {\\n &.hidden {\\n opacity: 0;\\n }\\n\\n position: absolute;\\n left: 0px;\\n top: -20px;\\n border-radius: 4px;\\n padding: 5px 7px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n font-size: 12px;\\n text-align: center;\\n opacity: 1;\\n transition: opacity 0.1s ease-in-out;\\n word-wrap: normal;\\n word-break: normal;\\n z-index: 2;\\n pointer-events: none;\\n }\\n\\n .dplayer-bar {\\n position: relative;\\n height: 3px;\\n width: 100%;\\n background: rgba(255, 255, 255, 0.2);\\n cursor: pointer;\\n\\n .dplayer-loaded {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: rgba(255, 255, 255, 0.4);\\n height: 3px;\\n transition: all 0.5s ease;\\n will-change: width;\\n }\\n\\n .dplayer-played {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n height: 3px;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n }\\n }\\n }\\n }\\n\\n .dplayer-icons {\\n height: 38px;\\n position: absolute;\\n bottom: 0;\\n\\n &.dplayer-comment-box {\\n display: none;\\n position: absolute;\\n transition: all 0.3s ease-in-out;\\n z-index: 2;\\n height: 38px;\\n bottom: 0;\\n left: 20px;\\n right: 20px;\\n color: #fff;\\n\\n .dplayer-icon {\\n padding: 7px;\\n }\\n\\n .dplayer-comment-setting-icon {\\n position: absolute;\\n left: 0;\\n top: 0;\\n }\\n\\n .dplayer-send-icon {\\n position: absolute;\\n right: 0;\\n top: 0;\\n }\\n\\n .dplayer-comment-setting-box {\\n position: absolute;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n bottom: 41px;\\n left: 0;\\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\\n border-radius: 4px;\\n padding: 10px 10px 16px;\\n font-size: 14px;\\n width: 204px;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n opacity: 0;\\n transform: translateY(10px) scale(0.95);\\n visibility: hidden;\\n pointer-events: none;\\n\\n &.dplayer-comment-setting-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n\\n input[type='radio'] {\\n display: none;\\n }\\n\\n label {\\n cursor: pointer;\\n }\\n\\n .dplayer-comment-setting-title {\\n font-size: 13px;\\n color: #fff;\\n line-height: 30px;\\n }\\n\\n .dplayer-comment-setting-type {\\n font-size: 0;\\n\\n .dplayer-comment-setting-title {\\n margin-bottom: 6px;\\n }\\n\\n label {\\n &:nth-child(2) {\\n span {\\n border-radius: 4px 0 0 4px;\\n }\\n }\\n\\n &:nth-child(4) {\\n span {\\n border-radius: 0 4px 4px 0;\\n }\\n }\\n }\\n\\n span {\\n width: 33%;\\n padding: 4px 6px;\\n line-height: 16px;\\n display: inline-block;\\n font-size: 12px;\\n color: #fff;\\n border: 1px solid #fff;\\n margin-right: -1px;\\n box-sizing: border-box;\\n text-align: center;\\n cursor: pointer;\\n }\\n\\n input:checked + span {\\n background: #e4e4e6;\\n color: #1c1c1c;\\n }\\n }\\n\\n .dplayer-comment-setting-color {\\n font-size: 0;\\n\\n label {\\n font-size: 0;\\n padding: 6px;\\n display: inline-block;\\n }\\n\\n span {\\n width: 22px;\\n height: 22px;\\n display: inline-block;\\n border-radius: 50%;\\n box-sizing: border-box;\\n cursor: pointer;\\n\\n &:hover {\\n animation: my-face 5s infinite ease-in-out;\\n }\\n }\\n }\\n }\\n\\n .dplayer-comment-input {\\n outline: none;\\n border: none;\\n padding: 8px 31px;\\n font-size: 14px;\\n line-height: 18px;\\n text-align: center;\\n border-radius: 4px;\\n background: none;\\n margin: 0;\\n height: 100%;\\n box-sizing: border-box;\\n width: 100%;\\n color: #fff;\\n\\n &::placeholder {\\n color: #fff;\\n opacity: 0.8;\\n }\\n\\n &::-ms-clear {\\n display: none;\\n }\\n }\\n }\\n\\n &.dplayer-icons-left {\\n .dplayer-icon {\\n padding: 7px;\\n }\\n }\\n\\n &.dplayer-icons-right {\\n right: 20px;\\n\\n .dplayer-icon {\\n padding: 8px;\\n }\\n }\\n\\n .dplayer-time,\\n .dplayer-live-badge {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: default;\\n }\\n\\n .dplayer-live-dot {\\n display: inline-block;\\n width: 6px;\\n height: 6px;\\n vertical-align: 4%;\\n margin-right: 5px;\\n content: '';\\n border-radius: 6px;\\n }\\n\\n .dplayer-speed-wrap {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n vertical-align: middle;\\n margin-left: 10px;\\n }\\n\\n .dplayer-speed-indicator {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: pointer;\\n padding: 0 4px;\\n border-radius: 3px;\\n transition:\\n background 0.2s ease,\\n color 0.2s ease;\\n display: inline-block;\\n min-width: 32px;\\n text-align: center;\\n\\n &:hover {\\n background: rgba(255, 255, 255, 0.1);\\n color: #fff;\\n }\\n }\\n\\n .dplayer-speed-panel {\\n position: absolute;\\n bottom: 42px;\\n left: 50%;\\n transform: translateX(-50%) translateY(8px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 280px;\\n border-radius: 10px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow:\\n 0 4px 24px rgba(0, 0, 0, 0.4),\\n 0 0 0 1px rgba(255, 255, 255, 0.06);\\n padding: 16px 20px 12px;\\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\\n z-index: 10;\\n box-sizing: border-box;\\n\\n &::after {\\n content: '';\\n position: absolute;\\n bottom: -6px;\\n left: 50%;\\n transform: translateX(-50%);\\n width: 0;\\n height: 0;\\n border-left: 6px solid transparent;\\n border-right: 6px solid transparent;\\n border-top: 6px solid rgba(28, 28, 28, 0.7);\\n }\\n\\n &.dplayer-speed-panel-open {\\n opacity: 1;\\n visibility: visible;\\n pointer-events: auto;\\n transform: translateX(-50%) translateY(0) scale(1);\\n }\\n\\n .dplayer-speed-panel-title {\\n color: rgba(255, 255, 255, 0.7);\\n font-size: 12px;\\n margin-bottom: 14px;\\n letter-spacing: 0.5px;\\n }\\n\\n .dplayer-speed-slider-wrap {\\n position: relative;\\n width: 100%;\\n padding: 0;\\n box-sizing: border-box;\\n display: flex;\\n align-items: flex-start;\\n gap: 8px;\\n }\\n\\n .dplayer-speed-slider-btn {\\n flex-shrink: 0;\\n border: none;\\n background: none;\\n color: rgba(255, 255, 255, 0.85);\\n font-size: 18px;\\n font-weight: 700;\\n width: 24px;\\n height: 22px;\\n line-height: 22px;\\n text-align: center;\\n cursor: pointer;\\n padding: 0;\\n user-select: none;\\n transition:\\n color 0.15s ease,\\n opacity 0.15s ease;\\n\\n &:hover {\\n color: #fff;\\n opacity: 1;\\n }\\n\\n &:active {\\n transform: scale(0.9);\\n }\\n }\\n\\n .dplayer-speed-slider-inner {\\n flex: 1;\\n min-width: 0;\\n }\\n\\n .dplayer-speed-slider-track {\\n position: relative;\\n width: 100%;\\n height: 22px;\\n cursor: pointer;\\n\\n &::before {\\n content: '';\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n width: 100%;\\n height: 3px;\\n background: rgba(255, 255, 255, 0.18);\\n border-radius: 1.5px;\\n }\\n }\\n\\n .dplayer-speed-slider-filled {\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n height: 3px;\\n background: #fff;\\n border-radius: 1.5px 0 0 1.5px;\\n pointer-events: none;\\n z-index: 1;\\n }\\n\\n .dplayer-speed-slider-thumb {\\n position: absolute;\\n top: 50%;\\n width: 12px;\\n height: 12px;\\n background: #fff;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n transition: box-shadow 0.2s ease;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\\n cursor: pointer;\\n z-index: 3;\\n\\n &:hover {\\n box-shadow:\\n 0 0 0 5px rgba(255, 255, 255, 0.12),\\n 0 1px 3px rgba(0, 0, 0, 0.5);\\n }\\n\\n &.dplayer-speed-slider-thumb-active {\\n box-shadow:\\n 0 0 0 7px rgba(255, 255, 255, 0.15),\\n 0 1px 3px rgba(0, 0, 0, 0.5);\\n }\\n }\\n\\n .dplayer-speed-slider-tick {\\n position: absolute;\\n top: 50%;\\n width: 5px;\\n height: 5px;\\n background: #505050;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 2;\\n pointer-events: none;\\n transition: background 0.15s ease;\\n\\n &.dplayer-speed-slider-tick-filled {\\n background: #fff;\\n }\\n\\n &.dplayer-speed-slider-tick-active {\\n background: #fff;\\n }\\n }\\n\\n .dplayer-speed-slider-labels {\\n position: relative;\\n margin-top: 2px;\\n height: 16px;\\n }\\n\\n .dplayer-speed-slider-label {\\n position: absolute;\\n top: 0;\\n transform: translateX(-50%);\\n color: rgba(255, 255, 255, 0.45);\\n font-size: 10px;\\n cursor: pointer;\\n text-align: center;\\n transition: color 0.15s ease;\\n user-select: none;\\n white-space: nowrap;\\n\\n &:hover {\\n color: rgba(255, 255, 255, 0.85);\\n }\\n\\n &.dplayer-speed-slider-label-active {\\n color: #fff;\\n font-weight: 600;\\n }\\n }\\n }\\n\\n .dplayer-icon {\\n width: 40px;\\n height: 100%;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n vertical-align: middle;\\n box-sizing: border-box;\\n display: inline-block;\\n\\n .dplayer-icon-content {\\n transition: all 0.2s ease-in-out;\\n opacity: 0.8;\\n }\\n\\n &:hover {\\n .dplayer-icon-content {\\n opacity: 1;\\n }\\n }\\n\\n &.dplayer-quality-icon {\\n color: #fff;\\n width: auto;\\n line-height: 22px;\\n font-size: 14px;\\n }\\n\\n &.dplayer-comment-icon {\\n padding: 10px 9px 9px;\\n }\\n\\n &.dplayer-setting-icon {\\n padding-top: 8.5px;\\n }\\n\\n &.dplayer-volume-icon {\\n width: 43px;\\n }\\n }\\n\\n .dplayer-volume {\\n position: relative;\\n display: inline-block;\\n cursor: pointer;\\n height: 100%;\\n\\n &:hover {\\n .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n }\\n\\n .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n }\\n }\\n\\n &.dplayer-volume-active {\\n .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n }\\n\\n .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n }\\n }\\n\\n .dplayer-volume-bar-wrap {\\n display: inline-block;\\n margin: 0 10px 0 -5px;\\n vertical-align: middle;\\n height: 100%;\\n\\n .dplayer-volume-bar {\\n position: relative;\\n top: 17px;\\n width: 0;\\n height: 3px;\\n background: #aaa;\\n transition: all 0.3s ease-in-out;\\n\\n .dplayer-volume-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n }\\n }\\n }\\n }\\n }\\n\\n .dplayer-subtitle-btn {\\n display: inline-block;\\n height: 100%;\\n }\\n\\n .dplayer-subtitles {\\n display: inline-block;\\n height: 100%;\\n\\n .dplayer-subtitles-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: fit-content;\\n max-width: 240px;\\n min-width: 120px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: auto;\\n z-index: 2;\\n\\n &.dplayer-subtitles-panel {\\n display: block;\\n }\\n\\n &.dplayer-subtitles-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n }\\n\\n .dplayer-subtitles-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n }\\n\\n .dplayer-setting {\\n display: inline-block;\\n height: 100%;\\n\\n .dplayer-setting-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 150px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n z-index: 2;\\n\\n & > div {\\n display: none;\\n\\n &.dplayer-setting-origin-panel {\\n display: block;\\n }\\n }\\n\\n &.dplayer-setting-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n\\n &.dplayer-setting-box-narrow {\\n width: 70px;\\n text-align: center;\\n }\\n\\n &.dplayer-setting-box-speed {\\n .dplayer-setting-origin-panel {\\n display: none;\\n }\\n\\n .dplayer-setting-speed-panel {\\n display: block;\\n }\\n }\\n }\\n\\n .dplayer-setting-item,\\n .dplayer-setting-speed-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n\\n .dplayer-setting-danmaku {\\n padding: 5px 0;\\n\\n .dplayer-label {\\n padding: 0 10px;\\n display: inline;\\n }\\n\\n &:hover {\\n .dplayer-label {\\n display: none;\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n }\\n }\\n\\n &.dplayer-setting-danmaku-active {\\n .dplayer-label {\\n display: none;\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n }\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n padding: 0 10px;\\n box-sizing: border-box;\\n display: none;\\n vertical-align: middle;\\n height: 100%;\\n width: 100%;\\n\\n .dplayer-danmaku-bar {\\n position: relative;\\n top: 8.5px;\\n width: 100%;\\n height: 3px;\\n background: #fff;\\n transition: all 0.3s ease-in-out;\\n\\n .dplayer-danmaku-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n background: #aaa;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n background: #aaa;\\n }\\n }\\n }\\n }\\n }\\n }\\n\\n .dplayer-full {\\n display: inline-block;\\n height: 100%;\\n position: relative;\\n\\n &:hover {\\n .dplayer-full-in-icon {\\n display: block;\\n }\\n }\\n\\n .dplayer-full-in-icon {\\n position: absolute;\\n top: -30px;\\n z-index: 1;\\n display: none;\\n }\\n }\\n\\n .dplayer-quality {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n z-index: 2;\\n\\n &:hover {\\n .dplayer-quality-list {\\n display: block;\\n }\\n\\n .dplayer-quality-mask {\\n display: block;\\n }\\n }\\n\\n .dplayer-quality-mask {\\n display: none;\\n position: absolute;\\n bottom: 38px;\\n left: -18px;\\n width: 80px;\\n padding-bottom: 12px;\\n }\\n\\n .dplayer-quality-list {\\n display: none;\\n font-size: 12px;\\n width: 80px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.9);\\n padding: 5px 0;\\n transition: all 0.3s ease-in-out;\\n overflow: hidden;\\n color: #fff;\\n text-align: center;\\n }\\n\\n .dplayer-quality-item {\\n height: 25px;\\n box-sizing: border-box;\\n cursor: pointer;\\n line-height: 25px;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n }\\n\\n .dplayer-comment {\\n display: inline-block;\\n height: 100%;\\n }\\n\\n .dplayer-label {\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n white-space: nowrap;\\n }\\n\\n .dplayer-toggle {\\n width: 32px;\\n height: 20px;\\n text-align: center;\\n font-size: 0;\\n vertical-align: middle;\\n position: absolute;\\n top: 5px;\\n right: 10px;\\n\\n input {\\n max-height: 0;\\n max-width: 0;\\n display: none;\\n }\\n\\n input + label {\\n display: inline-block;\\n position: relative;\\n box-shadow: rgb(223, 223, 223) 0 0 0 0 inset;\\n border: 1px solid rgb(223, 223, 223);\\n height: 20px;\\n width: 32px;\\n border-radius: 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n transition: 0.2s ease-in-out;\\n }\\n\\n input + label:before {\\n content: '';\\n position: absolute;\\n display: block;\\n height: 18px;\\n width: 18px;\\n top: 0;\\n left: 0;\\n border-radius: 15px;\\n transition: 0.2s ease-in-out;\\n }\\n\\n input + label:after {\\n content: '';\\n position: absolute;\\n display: block;\\n left: 0;\\n top: 0;\\n border-radius: 15px;\\n background: #fff;\\n transition: 0.2s ease-in-out;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\\n height: 18px;\\n width: 18px;\\n }\\n\\n input:checked + label {\\n border-color: rgba(255, 255, 255, 0.5);\\n }\\n\\n input:checked + label:before {\\n width: 30px;\\n background: rgba(255, 255, 255, 0.5);\\n }\\n\\n input:checked + label:after {\\n left: 12px;\\n }\\n }\\n }\\n}\\n\\n.dplayer-mobile-play {\\n display: none;\\n width: 50px;\\n height: 50px;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n box-sizing: border-box;\\n position: absolute;\\n bottom: 0;\\n opacity: 0.8;\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n}\\n\",\".dplayer-danmaku {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n .dplayer-danmaku-item {\\n display: inline-block;\\n pointer-events: none;\\n user-select: none;\\n cursor: default;\\n white-space: nowrap;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n &--demo {\\n position: absolute;\\n visibility: hidden;\\n }\\n }\\n .dplayer-danmaku-right {\\n position: absolute;\\n right: 0;\\n transform: translateX(100%);\\n &.dplayer-danmaku-move {\\n will-change: transform;\\n animation-name: danmaku;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n }\\n }\\n @keyframes danmaku {\\n from {\\n transform: translateX(100%);\\n }\\n }\\n .dplayer-danmaku-top,\\n .dplayer-danmaku-bottom {\\n position: absolute;\\n width: 100%;\\n text-align: center;\\n visibility: hidden;\\n &.dplayer-danmaku-move {\\n will-change: visibility;\\n animation-name: danmaku-center;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n }\\n }\\n @keyframes danmaku-center {\\n from {\\n visibility: visible;\\n }\\n to {\\n visibility: visible;\\n }\\n }\\n}\\n\",\".dplayer-logo {\\n pointer-events: none;\\n position: absolute;\\n left: 20px;\\n top: 20px;\\n max-width: 50px;\\n max-height: 50px;\\n img {\\n max-width: 100%;\\n max-height: 100%;\\n background: none;\\n }\\n}\",\".dplayer-menu {\\n position: absolute;\\n width: 170px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.85);\\n padding: 5px 0;\\n overflow: hidden;\\n z-index: 3;\\n display: none;\\n &.dplayer-menu-show {\\n display: block;\\n }\\n .dplayer-menu-item {\\n height: 30px;\\n box-sizing: border-box;\\n cursor: pointer;\\n &:hover {\\n background-color: rgba(255, 255, 255, .1);\\n }\\n a {\\n display: inline-block;\\n padding: 0 10px;\\n line-height: 30px;\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n width: 100%;\\n box-sizing: border-box;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n &:hover {\\n text-decoration: none;\\n }\\n }\\n }\\n}\",\".dplayer-notice-list {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n // Prevent stacking - show only latest notice\\n display: flex;\\n flex-direction: column;\\n max-height: 50px;\\n overflow: visible;\\n\\n .dplayer-notice {\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(5px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n color: #fff;\\n display: table;\\n pointer-events: none;\\n padding: 5px 10px;\\n font-size: 14px;\\n opacity: 0;\\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n\\n &:not(:last-child) {\\n display: none; // Hide all but the latest notice\\n }\\n }\\n\\n .remove-notice {\\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n }\\n}\\n\\n@keyframes showNotice {\\n 100% {\\n opacity: 1;\\n }\\n}\\n\\n@keyframes removeNotice {\\n 0% {\\n opacity: 1;\\n }\\n\\n 100% {\\n opacity: 0;\\n }\\n}\\n\",\".dplayer-subtitle {\\n position: absolute;\\n bottom: 40px;\\n width: 90%;\\n left: 5%;\\n text-align: center;\\n color: #fff;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n font-size: 20px;\\n &.dplayer-subtitle-hide {\\n display: none;\\n }\\n}\",\".dplayer-mask {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 1;\\n display: none;\\n &.dplayer-mask-show {\\n display: block;\\n }\\n}\\n\\n.dplayer-video-wrap {\\n position: relative;\\n background: #000;\\n font-size: 0;\\n width: 100%;\\n height: 100%;\\n .dplayer-video {\\n width: 100%;\\n height: 100%;\\n display: none;\\n }\\n .dplayer-video-current {\\n display: block;\\n }\\n .dplayer-video-prepare {\\n display: none;\\n }\\n}\",\".dplayer-info-panel {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n width: 400px;\\n background: rgba(28, 28, 28, 0.8);\\n padding: 10px;\\n color: #fff;\\n font-size: 12px;\\n border-radius: 2px;\\n\\n &-hide {\\n display: none;\\n }\\n\\n .dplayer-info-panel-close {\\n cursor: pointer;\\n position: absolute;\\n right: 10px;\\n top: 10px;\\n }\\n\\n .dplayer-info-panel-item {\\n & > span {\\n display: inline-block;\\n vertical-align: middle;\\n line-height: 15px;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n }\\n }\\n\\n .dplayer-info-panel-item-title {\\n width: 100px;\\n text-align: right;\\n margin-right: 10px;\\n }\\n \\n .dplayer-info-panel-item-data {\\n width: 260px;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M16 23c-3.309 0-6-2.691-6-6s2.691-6 6-6 6 2.691 6 6-2.691 6-6 6zM16 13c-2.206 0-4 1.794-4 4s1.794 4 4 4c2.206 0 4-1.794 4-4s-1.794-4-4-4zM27 28h-22c-1.654 0-3-1.346-3-3v-16c0-1.654 1.346-3 3-3h3c0.552 0 1 0.448 1 1s-0.448 1-1 1h-3c-0.551 0-1 0.449-1 1v16c0 0.552 0.449 1 1 1h22c0.552 0 1-0.448 1-1v-16c0-0.551-0.448-1-1-1h-11c-0.552 0-1-0.448-1-1s0.448-1 1-1h11c1.654 0 3 1.346 3 3v16c0 1.654-1.346 3-3 3zM24 10.5c0 0.828 0.672 1.5 1.5 1.5s1.5-0.672 1.5-1.5c0-0.828-0.672-1.5-1.5-1.5s-1.5 0.672-1.5 1.5zM15 4c0 0.552-0.448 1-1 1h-4c-0.552 0-1-0.448-1-1v0c0-0.552 0.448-1 1-1h4c0.552 0 1 0.448 1 1v0z\\\"></path></svg>\"","'use strict';\nmodule.exports = require('./compile/runtime');","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","'use strict';\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === 'function') {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,'.concat(base64);\n var sourceMapping = '/*# '.concat(data, ' */');\n return [content].concat([sourceMapping]).join('\\n');\n }\n return [content].join('\\n');\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 33\\\"><path d=\\\"M6.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v4h4c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333zM30.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h4v-4c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM30.667 12c-0.8 0-1.333-0.533-1.333-1.333v-4h-4c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM1.333 12c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333h-4v4c0 0.8-0.533 1.333-1.333 1.333z\\\"></path></svg>\"","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root {\n --balloon-border-radius: 2px;\n --balloon-color: rgba(16, 16, 16, 0.95);\n --balloon-text-color: #fff;\n --balloon-font-size: 12px;\n --balloon-move: 4px; }\n\nbutton[aria-label][data-balloon-pos] {\n overflow: visible; }\n\n[aria-label][data-balloon-pos] {\n position: relative;\n cursor: pointer; }\n [aria-label][data-balloon-pos]:after {\n opacity: 0;\n pointer-events: none;\n transition: all 0.18s ease-out 0.18s;\n text-indent: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-weight: normal;\n font-style: normal;\n text-shadow: none;\n font-size: 12px;\n font-size: var(--balloon-font-size);\n background: rgba(16, 16, 16, 0.95);\n background: var(--balloon-color);\n border-radius: 2px;\n color: #fff;\n color: var(--balloon-text-color);\n border-radius: var(--balloon-border-radius);\n content: attr(aria-label);\n padding: .5em 1em;\n position: absolute;\n white-space: nowrap;\n z-index: 10; }\n [aria-label][data-balloon-pos]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-top-color: rgba(16, 16, 16, 0.95);\n border-top-color: var(--balloon-color);\n opacity: 0;\n pointer-events: none;\n transition: all 0.18s ease-out 0.18s;\n content: \"\";\n position: absolute;\n z-index: 10; }\n [aria-label][data-balloon-pos]:hover:before, [aria-label][data-balloon-pos]:hover:after, [aria-label][data-balloon-pos][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-visible]:after, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after {\n opacity: 1;\n pointer-events: none; }\n [aria-label][data-balloon-pos].font-awesome:after {\n font-family: FontAwesome, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }\n [aria-label][data-balloon-pos][data-balloon-break]:after {\n white-space: pre; }\n [aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after {\n white-space: pre-line;\n word-break: break-word; }\n [aria-label][data-balloon-pos][data-balloon-blunt]:before, [aria-label][data-balloon-pos][data-balloon-blunt]:after {\n transition: none; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"][data-balloon-visible]:after {\n transform: translate(-50%, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"][data-balloon-visible]:before {\n transform: translate(-50%, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-left\"]:after {\n left: 0; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-left\"]:before {\n left: 5px; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:after {\n right: 0; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:before {\n right: 5px; }\n [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"][data-balloon-visible]:after {\n transform: translate(0, 0); }\n [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"][data-balloon-visible]:before {\n transform: translate(0, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:after {\n bottom: 100%;\n transform-origin: top;\n transform: translate(0, 4px);\n transform: translate(0, var(--balloon-move)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:after {\n margin-bottom: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:after {\n left: 50%;\n transform: translate(-50%, 4px);\n transform: translate(-50%, var(--balloon-move)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:after {\n top: 100%;\n transform: translate(0, calc(4px * -1));\n transform: translate(0, calc(var(--balloon-move) * -1)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:after {\n margin-top: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-bottom-color: rgba(16, 16, 16, 0.95);\n border-bottom-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:before {\n left: 50%;\n transform: translate(-50%, calc(4px * -1));\n transform: translate(-50%, calc(var(--balloon-move) * -1)); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"][data-balloon-visible]:after {\n transform: translate(0, -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"][data-balloon-visible]:before {\n transform: translate(0, -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:before {\n right: 100%;\n top: 50%;\n transform: translate(4px, -50%);\n transform: translate(var(--balloon-move), -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:after {\n margin-right: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-left-color: rgba(16, 16, 16, 0.95);\n border-left-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:before {\n left: 100%;\n top: 50%;\n transform: translate(calc(4px * -1), -50%);\n transform: translate(calc(var(--balloon-move) * -1), -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:after {\n margin-left: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-right-color: rgba(16, 16, 16, 0.95);\n border-right-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-length]:after {\n white-space: normal; }\n [aria-label][data-balloon-pos][data-balloon-length=\"small\"]:after {\n width: 80px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"medium\"]:after {\n width: 150px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"large\"]:after {\n width: 260px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"xlarge\"]:after {\n width: 380px; }\n @media screen and (max-width: 768px) {\n [aria-label][data-balloon-pos][data-balloon-length=\"xlarge\"]:after {\n width: 90vw; } }\n [aria-label][data-balloon-pos][data-balloon-length=\"fit\"]:after {\n width: 100%; }\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/balloon-css/balloon.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,4BAA4B;EAC5B,uCAAuC;EACvC,0BAA0B;EAC1B,yBAAyB;EACzB,mBAAmB,EAAE;;AAEvB;EACE,iBAAiB,EAAE;;AAErB;EACE,kBAAkB;EAClB,eAAe,EAAE;EACjB;IACE,UAAU;IACV,oBAAoB;IACpB,oCAAoC;IACpC,cAAc;IACd,wIAAwI;IACxI,mBAAmB;IACnB,kBAAkB;IAClB,iBAAiB;IACjB,eAAmC;IAAnC,mCAAmC;IACnC,kCAAgC;IAAhC,gCAAgC;IAChC,kBAAkB;IAClB,WAAgC;IAAhC,gCAAgC;IAChC,2CAA2C;IAC3C,yBAAyB;IACzB,iBAAiB;IACjB,kBAAkB;IAClB,mBAAmB;IACnB,WAAW,EAAE;EACf;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,wCAAsC;IAAtC,sCAAsC;IACtC,UAAU;IACV,oBAAoB;IACpB,oCAAoC;IACpC,WAAW;IACX,kBAAkB;IAClB,WAAW,EAAE;EACf;IACE,UAAU;IACV,oBAAoB,EAAE;EACxB;IACE,qJAAqJ,EAAE;EACzJ;IACE,gBAAgB,EAAE;EACpB;IACE,qBAAqB;IACrB,sBAAsB,EAAE;EAC1B;IACE,gBAAgB,EAAE;EACpB;IACE,6BAA6B,EAAE;EACjC;IACE,6BAA6B,EAAE;EACjC;IACE,OAAO,EAAE;EACX;IACE,SAAS,EAAE;EACb;IACE,QAAQ,EAAE;EACZ;IACE,UAAU,EAAE;EACd;IACE,0BAA0B,EAAE;EAC9B;IACE,0BAA0B,EAAE;EAC9B;IACE,YAAY;IACZ,qBAAqB;IACrB,4BAA4C;IAA5C,4CAA4C,EAAE;EAChD;IACE,mBAAmB,EAAE;EACvB;IACE,SAAS;IACT,+BAA+C;IAA/C,+CAA+C,EAAE;EACnD;IACE,SAAS;IACT,uCAAuD;IAAvD,uDAAuD,EAAE;EAC3D;IACE,gBAAgB,EAAE;EACpB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,2CAAyC;IAAzC,yCAAyC,EAAE;EAC7C;IACE,SAAS;IACT,0CAA0D;IAA1D,0DAA0D,EAAE;EAC9D;IACE,6BAA6B,EAAE;EACjC;IACE,6BAA6B,EAAE;EACjC;IACE,WAAW;IACX,QAAQ;IACR,+BAA+C;IAA/C,+CAA+C,EAAE;EACnD;IACE,kBAAkB,EAAE;EACtB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,yCAAuC;IAAvC,uCAAuC,EAAE;EAC3C;IACE,UAAU;IACV,QAAQ;IACR,0CAA0D;IAA1D,0DAA0D,EAAE;EAC9D;IACE,iBAAiB,EAAE;EACrB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,0CAAwC;IAAxC,wCAAwC,EAAE;EAC5C;IACE,mBAAmB,EAAE;EACvB;IACE,WAAW,EAAE;EACf;IACE,YAAY,EAAE;EAChB;IACE,YAAY,EAAE;EAChB;IACE,YAAY,EAAE;IACd;MACE;QACE,WAAW,EAAE,EAAE;EACrB;IACE,WAAW,EAAE\",\"sourcesContent\":[\":root {\\n --balloon-border-radius: 2px;\\n --balloon-color: rgba(16, 16, 16, 0.95);\\n --balloon-text-color: #fff;\\n --balloon-font-size: 12px;\\n --balloon-move: 4px; }\\n\\nbutton[aria-label][data-balloon-pos] {\\n overflow: visible; }\\n\\n[aria-label][data-balloon-pos] {\\n position: relative;\\n cursor: pointer; }\\n [aria-label][data-balloon-pos]:after {\\n opacity: 0;\\n pointer-events: none;\\n transition: all 0.18s ease-out 0.18s;\\n text-indent: 0;\\n font-family: -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, Oxygen, Ubuntu, Cantarell, \\\"Open Sans\\\", \\\"Helvetica Neue\\\", sans-serif;\\n font-weight: normal;\\n font-style: normal;\\n text-shadow: none;\\n font-size: var(--balloon-font-size);\\n background: var(--balloon-color);\\n border-radius: 2px;\\n color: var(--balloon-text-color);\\n border-radius: var(--balloon-border-radius);\\n content: attr(aria-label);\\n padding: .5em 1em;\\n position: absolute;\\n white-space: nowrap;\\n z-index: 10; }\\n [aria-label][data-balloon-pos]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-top-color: var(--balloon-color);\\n opacity: 0;\\n pointer-events: none;\\n transition: all 0.18s ease-out 0.18s;\\n content: \\\"\\\";\\n position: absolute;\\n z-index: 10; }\\n [aria-label][data-balloon-pos]:hover:before, [aria-label][data-balloon-pos]:hover:after, [aria-label][data-balloon-pos][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-visible]:after, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after {\\n opacity: 1;\\n pointer-events: none; }\\n [aria-label][data-balloon-pos].font-awesome:after {\\n font-family: FontAwesome, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }\\n [aria-label][data-balloon-pos][data-balloon-break]:after {\\n white-space: pre; }\\n [aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after {\\n white-space: pre-line;\\n word-break: break-word; }\\n [aria-label][data-balloon-pos][data-balloon-blunt]:before, [aria-label][data-balloon-pos][data-balloon-blunt]:after {\\n transition: none; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"][data-balloon-visible]:after {\\n transform: translate(-50%, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"][data-balloon-visible]:before {\\n transform: translate(-50%, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-left\\\"]:after {\\n left: 0; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-left\\\"]:before {\\n left: 5px; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:after {\\n right: 0; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:before {\\n right: 5px; }\\n [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"][data-balloon-visible]:after {\\n transform: translate(0, 0); }\\n [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"][data-balloon-visible]:before {\\n transform: translate(0, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:after {\\n bottom: 100%;\\n transform-origin: top;\\n transform: translate(0, var(--balloon-move)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:after {\\n margin-bottom: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:after {\\n left: 50%;\\n transform: translate(-50%, var(--balloon-move)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:after {\\n top: 100%;\\n transform: translate(0, calc(var(--balloon-move) * -1)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:after {\\n margin-top: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-bottom-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:before {\\n left: 50%;\\n transform: translate(-50%, calc(var(--balloon-move) * -1)); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"][data-balloon-visible]:after {\\n transform: translate(0, -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"][data-balloon-visible]:before {\\n transform: translate(0, -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:before {\\n right: 100%;\\n top: 50%;\\n transform: translate(var(--balloon-move), -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:after {\\n margin-right: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-left-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:before {\\n left: 100%;\\n top: 50%;\\n transform: translate(calc(var(--balloon-move) * -1), -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:after {\\n margin-left: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-right-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-length]:after {\\n white-space: normal; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"small\\\"]:after {\\n width: 80px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"medium\\\"]:after {\\n width: 150px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"large\\\"]:after {\\n width: 260px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"xlarge\\\"]:after {\\n width: 380px; }\\n @media screen and (max-width: 768px) {\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"xlarge\\\"]:after {\\n width: 90vw; } }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"fit\\\"]:after {\\n width: 100%; }\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n list.toString = function toString() {\n return this.map(function (item) {\n var content = '';\n var needLayer = typeof item[5] !== 'undefined';\n if (item[4]) {\n content += '@supports ('.concat(item[4], ') {');\n }\n if (item[2]) {\n content += '@media '.concat(item[2], ' {');\n }\n if (needLayer) {\n content += '@layer'.concat(item[5].length > 0 ? ' '.concat(item[5]) : '', ' {');\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += '}';\n }\n if (item[2]) {\n content += '}';\n }\n if (item[4]) {\n content += '}';\n }\n return content;\n }).join('');\n };\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === 'string') {\n modules = [[\n null,\n modules,\n undefined\n ]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== 'undefined') {\n if (typeof item[5] === 'undefined') {\n item[5] = layer;\n } else {\n item[1] = '@layer'.concat(item[5].length > 0 ? ' '.concat(item[5]) : '', ' {').concat(item[1], '}');\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = '@media '.concat(item[2], ' {').concat(item[1], '}');\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = ''.concat(supports);\n } else {\n item[1] = '@supports ('.concat(item[4], ') {').concat(item[1], '}');\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 28\\\"><path d=\\\"M28.633 17.104c0.035 0.21 0.026 0.463-0.026 0.76s-0.14 0.598-0.262 0.904c-0.122 0.306-0.271 0.581-0.445 0.825s-0.367 0.419-0.576 0.524c-0.209 0.105-0.393 0.157-0.55 0.157s-0.332-0.035-0.524-0.105c-0.175-0.052-0.393-0.1-0.655-0.144s-0.528-0.052-0.799-0.026c-0.271 0.026-0.541 0.083-0.812 0.17s-0.502 0.236-0.694 0.445c-0.419 0.437-0.664 0.934-0.734 1.493s0.009 1.092 0.236 1.598c0.175 0.349 0.148 0.699-0.079 1.048-0.105 0.14-0.271 0.284-0.498 0.432s-0.476 0.284-0.747 0.406-0.555 0.218-0.851 0.288c-0.297 0.070-0.559 0.105-0.786 0.105-0.157 0-0.306-0.061-0.445-0.183s-0.236-0.253-0.288-0.393h-0.026c-0.192-0.541-0.52-1.009-0.982-1.402s-1-0.589-1.611-0.589c-0.594 0-1.131 0.197-1.611 0.589s-0.816 0.851-1.009 1.375c-0.087 0.21-0.218 0.362-0.393 0.458s-0.367 0.144-0.576 0.144c-0.244 0-0.52-0.044-0.825-0.131s-0.611-0.197-0.917-0.327c-0.306-0.131-0.581-0.284-0.825-0.458s-0.428-0.349-0.55-0.524c-0.087-0.122-0.135-0.266-0.144-0.432s0.057-0.397 0.197-0.694c0.192-0.402 0.266-0.86 0.223-1.375s-0.266-0.991-0.668-1.428c-0.244-0.262-0.541-0.432-0.891-0.511s-0.681-0.109-0.995-0.092c-0.367 0.017-0.742 0.087-1.127 0.21-0.244 0.070-0.489 0.052-0.734-0.052-0.192-0.070-0.371-0.231-0.537-0.485s-0.314-0.533-0.445-0.838c-0.131-0.306-0.231-0.62-0.301-0.943s-0.087-0.59-0.052-0.799c0.052-0.384 0.227-0.629 0.524-0.734 0.524-0.21 0.995-0.555 1.415-1.035s0.629-1.017 0.629-1.611c0-0.611-0.21-1.144-0.629-1.598s-0.891-0.786-1.415-0.996c-0.157-0.052-0.288-0.179-0.393-0.38s-0.157-0.406-0.157-0.616c0-0.227 0.035-0.48 0.105-0.76s0.162-0.55 0.275-0.812 0.244-0.502 0.393-0.72c0.148-0.218 0.31-0.38 0.485-0.485 0.14-0.087 0.275-0.122 0.406-0.105s0.275 0.052 0.432 0.105c0.524 0.21 1.070 0.275 1.637 0.197s1.070-0.327 1.506-0.747c0.21-0.209 0.362-0.467 0.458-0.773s0.157-0.607 0.183-0.904c0.026-0.297 0.026-0.568 0-0.812s-0.048-0.419-0.065-0.524c-0.035-0.105-0.066-0.227-0.092-0.367s-0.013-0.262 0.039-0.367c0.105-0.244 0.293-0.458 0.563-0.642s0.563-0.336 0.878-0.458c0.314-0.122 0.62-0.214 0.917-0.275s0.533-0.092 0.707-0.092c0.227 0 0.406 0.074 0.537 0.223s0.223 0.301 0.275 0.458c0.192 0.471 0.507 0.886 0.943 1.244s0.952 0.537 1.546 0.537c0.611 0 1.153-0.17 1.624-0.511s0.803-0.773 0.996-1.297c0.070-0.14 0.179-0.284 0.327-0.432s0.301-0.223 0.458-0.223c0.244 0 0.511 0.035 0.799 0.105s0.572 0.166 0.851 0.288c0.279 0.122 0.537 0.279 0.773 0.472s0.423 0.402 0.563 0.629c0.087 0.14 0.113 0.293 0.079 0.458s-0.070 0.284-0.105 0.354c-0.227 0.506-0.297 1.039-0.21 1.598s0.341 1.048 0.76 1.467c0.419 0.419 0.934 0.651 1.546 0.694s1.179-0.057 1.703-0.301c0.14-0.087 0.31-0.122 0.511-0.105s0.371 0.096 0.511 0.236c0.262 0.244 0.493 0.616 0.694 1.113s0.336 1 0.406 1.506c0.035 0.297-0.013 0.528-0.144 0.694s-0.266 0.275-0.406 0.327c-0.542 0.192-1.004 0.528-1.388 1.009s-0.576 1.026-0.576 1.637c0 0.594 0.162 1.113 0.485 1.559s0.747 0.764 1.27 0.956c0.122 0.070 0.227 0.14 0.314 0.21 0.192 0.157 0.323 0.358 0.393 0.602v0zM16.451 19.462c0.786 0 1.528-0.149 2.227-0.445s1.305-0.707 1.821-1.231c0.515-0.524 0.921-1.131 1.218-1.821s0.445-1.428 0.445-2.214c0-0.786-0.148-1.524-0.445-2.214s-0.703-1.292-1.218-1.808c-0.515-0.515-1.122-0.921-1.821-1.218s-1.441-0.445-2.227-0.445c-0.786 0-1.524 0.148-2.214 0.445s-1.292 0.703-1.808 1.218c-0.515 0.515-0.921 1.118-1.218 1.808s-0.445 1.428-0.445 2.214c0 0.786 0.149 1.524 0.445 2.214s0.703 1.297 1.218 1.821c0.515 0.524 1.118 0.934 1.808 1.231s1.428 0.445 2.214 0.445v0z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 33\\\"><path d=\\\"M24.965 24.38h-18.132c-1.366 0-2.478-1.113-2.478-2.478v-11.806c0-1.364 1.111-2.478 2.478-2.478h18.132c1.366 0 2.478 1.113 2.478 2.478v11.806c0 1.364-1.11 2.478-2.478 2.478zM6.833 10.097v11.806h18.134l-0.002-11.806h-18.132zM2.478 28.928h5.952c0.684 0 1.238-0.554 1.238-1.239 0-0.684-0.554-1.238-1.238-1.238h-5.952v-5.802c0-0.684-0.554-1.239-1.238-1.239s-1.239 0.556-1.239 1.239v5.802c0 1.365 1.111 2.478 2.478 2.478zM30.761 19.412c-0.684 0-1.238 0.554-1.238 1.238v5.801h-5.951c-0.686 0-1.239 0.554-1.239 1.238 0 0.686 0.554 1.239 1.239 1.239h5.951c1.366 0 2.478-1.111 2.478-2.478v-5.801c0-0.683-0.554-1.238-1.239-1.238zM0 5.55v5.802c0 0.683 0.554 1.238 1.238 1.238s1.238-0.555 1.238-1.238v-5.802h5.952c0.684 0 1.238-0.554 1.238-1.238s-0.554-1.238-1.238-1.238h-5.951c-1.366-0.001-2.478 1.111-2.478 2.476zM32 11.35v-5.801c0-1.365-1.11-2.478-2.478-2.478h-5.951c-0.686 0-1.239 0.554-1.239 1.238s0.554 1.238 1.239 1.238h5.951v5.801c0 0.683 0.554 1.237 1.238 1.237 0.686 0.002 1.239-0.553 1.239-1.236z\\\"></path></svg>\"","'use strict';\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url['default'] : url);\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return '\"'.concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), '\"');\n }\n return url;\n};","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t678: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// no jsonp function","__webpack_require__.nc = undefined;","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n export default content && content.locals ? content.locals : undefined;\n","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction allSettled(arr) {\n var P = this;\n return new P(function (resolve, reject) {\n if (!(arr && typeof arr.length !== 'undefined')) {\n return reject(new TypeError(_typeof(arr) + ' ' + arr + ' is not iterable(cannot read property Symbol(Symbol.iterator))'));\n }\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 if (val && (_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 }, function (e) {\n args[i] = {\n status: 'rejected',\n reason: e\n };\n if (--remaining === 0) {\n resolve(args);\n }\n });\n return;\n }\n }\n args[i] = {\n status: 'fulfilled',\n value: val\n };\n if (--remaining === 0) {\n resolve(args);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n}\nexport default allSettled;","function AggregateError(errors, message) {\n this.name = 'AggregateError', this.errors = errors;\n this.message = message || '';\n}\nAggregateError.prototype = Error.prototype;\nfunction any(arr) {\n var P = this;\n return new P(function (resolve, reject) {\n if (!(arr && typeof arr.length !== 'undefined')) {\n return reject(new TypeError('Promise.any accepts an array'));\n }\n var args = Array.prototype.slice.call(arr);\n if (args.length === 0)\n return reject();\n var rejectionReasons = [];\n for (var i = 0; i < args.length; i++) {\n try {\n P.resolve(args[i]).then(resolve)['catch'](function (error) {\n rejectionReasons.push(error);\n if (rejectionReasons.length === args.length) {\n reject(new AggregateError(rejectionReasons, 'All promises were rejected'));\n }\n });\n } catch (ex) {\n reject(ex);\n }\n }\n });\n}\nexport default any;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport promiseFinally from './finally';\nimport allSettled from './allSettled';\nimport any from './any';\nvar setTimeoutFunc = setTimeout;\nfunction isArray(x) {\n return Boolean(x && typeof x.length !== 'undefined');\n}\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) === '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'] = promiseFinally;\nPromise.all = function (arr) {\n return new Promise(function (resolve, reject) {\n if (!isArray(arr)) {\n return reject(new TypeError('Promise.all accepts an array'));\n }\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) === '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.any = any;\nPromise.allSettled = allSettled;\nPromise.resolve = function (value) {\n if (value && _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 (arr) {\n return new Promise(function (resolve, reject) {\n if (!isArray(arr)) {\n return reject(new TypeError('Promise.race accepts an array'));\n }\n for (var i = 0, len = arr.length; i < len; i++) {\n Promise.resolve(arr[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};\nexport default Promise;","function finallyConstructor(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}\nexport default finallyConstructor;","var isMobile = /mobile|android|iphone|ipod|phone|ipad/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n second = second || 0;\n if (second === 0 || second === Infinity || second.toString() === 'NaN') {\n return '00:00';\n }\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 getBoundingClientRectViewLeft: function getBoundingClientRectViewLeft(element) {\n var scrollTop = window.scrollY || window.pageYOffset || document.body.scrollTop + (document.documentElement && document.documentElement.scrollTop || 0);\n if (element.getBoundingClientRect) {\n if (typeof this.getBoundingClientRectViewLeft.offset !== 'number') {\n var temp = document.createElement('div');\n temp.style.cssText = 'position:absolute;top:0;left:0;';\n document.body.appendChild(temp);\n this.getBoundingClientRectViewLeft.offset = -temp.getBoundingClientRect().top - scrollTop;\n document.body.removeChild(temp);\n temp = null;\n }\n var rect = element.getBoundingClientRect();\n var offset = this.getBoundingClientRectViewLeft.offset;\n return rect.left + offset;\n } else {\n return this.getElementViewLeft(element);\n }\n },\n getScrollPosition: function getScrollPosition() {\n return {\n left: window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0,\n top: window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0\n };\n },\n setScrollPosition: function setScrollPosition(_ref) {\n var _ref$left = _ref.left, left = _ref$left === void 0 ? 0 : _ref$left, _ref$top = _ref.top, top = _ref$top === void 0 ? 0 : _ref$top;\n if (this.isFirefox) {\n document.documentElement.scrollLeft = left;\n document.documentElement.scrollTop = top;\n } else {\n window.scrollTo(left, top);\n }\n },\n isMobile: isMobile,\n isFirefox: /firefox/i.test(window.navigator.userAgent),\n isChrome: /chrome/i.test(window.navigator.userAgent),\n isSafari: /safari/i.test(window.navigator.userAgent),\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 color2Number: function color2Number(color) {\n if (color[0] === '#') {\n color = color.substr(1);\n }\n if (color.length === 3) {\n color = ''.concat(color[0]).concat(color[0]).concat(color[1]).concat(color[1]).concat(color[2]).concat(color[2]);\n }\n return parseInt(color, 16) + 0 & 16777215;\n },\n number2Color: function number2Color(number) {\n return '#' + ('00000' + number.toString(16)).slice(-6);\n },\n number2Type: function number2Type(number) {\n switch (number) {\n case 0:\n return 'right';\n case 1:\n return 'top';\n case 2:\n return 'bottom';\n default:\n return 'right';\n }\n }\n};\nexport default utils;","'use strict';\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport bind from './helpers/bind.js';\nvar toString = Object.prototype.toString;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar kindOf = function (cache) {\n return function (thing) {\n var str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n };\n}(Object.create(null));\nvar kindOfTest = function kindOfTest(type) {\n type = type.toLowerCase();\n return function (thing) {\n return kindOf(thing) === type;\n };\n};\nvar typeOfTest = function typeOfTest(type) {\n return function (thing) {\n return _typeof(thing) === type;\n };\n};\nvar isArray = Array.isArray;\nvar isUndefined = typeOfTest('undefined');\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\nvar isArrayBuffer = kindOfTest('ArrayBuffer');\nfunction isArrayBufferView(val) {\n var result;\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && isArrayBuffer(val.buffer);\n }\n return result;\n}\nvar isString = typeOfTest('string');\nvar isFunction = typeOfTest('function');\nvar isNumber = typeOfTest('number');\nvar isObject = function isObject(thing) {\n return thing !== null && _typeof(thing) === 'object';\n};\nvar isBoolean = function isBoolean(thing) {\n return thing === true || thing === false;\n};\nvar isPlainObject = function isPlainObject(val) {\n if (kindOf(val) !== 'object') {\n return false;\n }\n var prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n};\nvar isDate = kindOfTest('Date');\nvar isFile = kindOfTest('File');\nvar isBlob = kindOfTest('Blob');\nvar isFileList = kindOfTest('FileList');\nvar isStream = function isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n};\nvar isFormData = function isFormData(thing) {\n var kind;\n return thing && (typeof FormData === 'function' && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === 'formdata' || kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]'));\n};\nvar isURLSearchParams = kindOfTest('URLSearchParams');\nvar trim = function trim(str) {\n return str.trim ? str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n};\nfunction forEach(obj, fn) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref$allOwnKeys = _ref.allOwnKeys, allOwnKeys = _ref$allOwnKeys === void 0 ? false : _ref$allOwnKeys;\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n var i;\n var l;\n if (_typeof(obj) !== 'object') {\n obj = [obj];\n }\n if (isArray(obj)) {\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n var keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n var len = keys.length;\n var key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n var keys = Object.keys(obj);\n var i = keys.length;\n var _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\nvar _global = function () {\n if (typeof globalThis !== 'undefined')\n return globalThis;\n return typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : global;\n}();\nvar isContextDefined = function isContextDefined(context) {\n return !isUndefined(context) && context !== _global;\n};\nfunction merge() {\n var _ref2 = isContextDefined(this) && this || {}, caseless = _ref2.caseless;\n var result = {};\n var assignValue = function assignValue(val, key) {\n var targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n };\n for (var i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\nvar extend = function extend(a, b, thisArg) {\n var _ref3 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}, allOwnKeys = _ref3.allOwnKeys;\n forEach(b, function (val, key) {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, { allOwnKeys: allOwnKeys });\n return a;\n};\nvar stripBOM = function stripBOM(content) {\n if (content.charCodeAt(0) === 65279) {\n content = content.slice(1);\n }\n return content;\n};\nvar inherits = function inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', { value: superConstructor.prototype });\n props && Object.assign(constructor.prototype, props);\n};\nvar toFlatObject = function toFlatObject(sourceObj, destObj, filter, propFilter) {\n var props;\n var i;\n var prop;\n var merged = {};\n destObj = destObj || {};\n if (sourceObj == null)\n return destObj;\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n return destObj;\n};\nvar endsWith = function endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n};\nvar toArray = function toArray(thing) {\n if (!thing)\n return null;\n if (isArray(thing))\n return thing;\n var i = thing.length;\n if (!isNumber(i))\n return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n};\nvar isTypedArray = function (TypedArray) {\n return function (thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n}(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\nvar forEachEntry = function forEachEntry(obj, fn) {\n var generator = obj && obj[Symbol.iterator];\n var iterator = generator.call(obj);\n var result;\n while ((result = iterator.next()) && !result.done) {\n var pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n};\nvar matchAll = function matchAll(regExp, str) {\n var matches;\n var arr = [];\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n return arr;\n};\nvar isHTMLForm = kindOfTest('HTMLFormElement');\nvar toCamelCase = function toCamelCase(str) {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g, function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n });\n};\nvar hasOwnProperty = function (_ref4) {\n var hasOwnProperty = _ref4.hasOwnProperty;\n return function (obj, prop) {\n return hasOwnProperty.call(obj, prop);\n };\n}(Object.prototype);\nvar isRegExp = kindOfTest('RegExp');\nvar reduceDescriptors = function reduceDescriptors(obj, reducer) {\n var descriptors = Object.getOwnPropertyDescriptors(obj);\n var reducedDescriptors = {};\n forEach(descriptors, function (descriptor, name) {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n Object.defineProperties(obj, reducedDescriptors);\n};\nvar freezeMethods = function freezeMethods(obj) {\n reduceDescriptors(obj, function (descriptor, name) {\n if (isFunction(obj) && [\n 'arguments',\n 'caller',\n 'callee'\n ].indexOf(name) !== -1) {\n return false;\n }\n var value = obj[name];\n if (!isFunction(value))\n return;\n descriptor.enumerable = false;\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n if (!descriptor.set) {\n descriptor.set = function () {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n};\nvar toObjectSet = function toObjectSet(arrayOrString, delimiter) {\n var obj = {};\n var define = function define(arr) {\n arr.forEach(function (value) {\n obj[value] = true;\n });\n };\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n return obj;\n};\nvar noop = function noop() {\n};\nvar toFiniteNumber = function toFiniteNumber(value, defaultValue) {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n};\nvar ALPHA = 'abcdefghijklmnopqrstuvwxyz';\nvar DIGIT = '0123456789';\nvar ALPHABET = {\n DIGIT: DIGIT,\n ALPHA: ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n};\nvar generateString = function generateString() {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 16;\n var alphabet = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ALPHABET.ALPHA_DIGIT;\n var str = '';\n var length = alphabet.length;\n while (size--) {\n str += alphabet[Math.random() * length | 0];\n }\n return str;\n};\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\nvar toJSONObject = function toJSONObject(obj) {\n var stack = new Array(10);\n var _visit = function visit(source, i) {\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n if (!('toJSON' in source)) {\n stack[i] = source;\n var target = isArray(source) ? [] : {};\n forEach(source, function (value, key) {\n var reducedValue = _visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n stack[i] = undefined;\n return target;\n }\n }\n return source;\n };\n return _visit(obj, 0);\n};\nvar isAsyncFn = kindOfTest('AsyncFunction');\nvar isThenable = function isThenable(thing) {\n return thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing['catch']);\n};\nexport default {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isBoolean: isBoolean,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isRegExp: isRegExp,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isTypedArray: isTypedArray,\n isFileList: isFileList,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM,\n inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n forEachEntry: forEachEntry,\n matchAll: matchAll,\n isHTMLForm: isHTMLForm,\n hasOwnProperty: hasOwnProperty,\n hasOwnProp: hasOwnProperty,\n reduceDescriptors: reduceDescriptors,\n freezeMethods: freezeMethods,\n toObjectSet: toObjectSet,\n toCamelCase: toCamelCase,\n noop: noop,\n toFiniteNumber: toFiniteNumber,\n findKey: findKey,\n global: _global,\n isContextDefined: isContextDefined,\n ALPHABET: ALPHABET,\n generateString: generateString,\n isSpecCompliantForm: isSpecCompliantForm,\n toJSONObject: toJSONObject,\n isAsyncFn: isAsyncFn,\n isThenable: isThenable\n};","'use strict';\nimport utils from '../utils.js';\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = new Error().stack;\n }\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n message: this.message,\n name: this.name,\n description: this.description,\n number: this.number,\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n].forEach(function (code) {\n descriptors[code] = { value: code };\n});\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', { value: true });\nAxiosError.from = function (error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, function (prop) {\n return prop !== 'isAxiosError';\n });\n AxiosError.call(axiosError, error.message, code, config, request, response);\n axiosError.cause = error;\n axiosError.name = error.name;\n customProps && Object.assign(axiosError, customProps);\n return axiosError;\n};\nexport default AxiosError;","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport PlatformFormData from '../platform/node/classes/FormData.js';\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\nfunction renderKey(path, key, dots) {\n if (!path)\n return key;\n return path.concat(key).map(function each(token, i) {\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\nvar predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n formData = formData || new (PlatformFormData || FormData)();\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n return !utils.isUndefined(source[option]);\n });\n var metaTokens = options.metaTokens;\n var visitor = options.visitor || defaultVisitor;\n var dots = options.dots;\n var indexes = options.indexes;\n var _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n var useBlob = _Blob && utils.isSpecCompliantForm(formData);\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n function convertValue(value) {\n if (value === null)\n return '';\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n return value;\n }\n function defaultVisitor(value, key, path) {\n var arr = value;\n if (value && !path && _typeof(value) === 'object') {\n if (utils.endsWith(key, '{}')) {\n key = metaTokens ? key : key.slice(0, -2);\n value = JSON.stringify(value);\n } else if (utils.isArray(value) && isFlatArray(value) || (utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))) {\n key = removeBrackets(key);\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + '[]', convertValue(el));\n });\n return false;\n }\n }\n if (isVisitable(value)) {\n return true;\n }\n formData.append(renderKey(path, key, dots), convertValue(value));\n return false;\n }\n var stack = [];\n var exposedHelpers = Object.assign(predicates, {\n defaultVisitor: defaultVisitor,\n convertValue: convertValue,\n isVisitable: isVisitable\n });\n function build(value, path) {\n if (utils.isUndefined(value))\n return;\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n stack.push(value);\n utils.forEach(value, function each(el, key) {\n var result = !(utils.isUndefined(el) || el === null) && visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n stack.pop();\n }\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n build(obj);\n return formData;\n}\nexport default toFormData;","'use strict';\nimport toFormData from './toFormData.js';\nfunction encode(str) {\n var charMap = {\n '!': '%21',\n '\\'': '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\0'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n params && toFormData(params, this, options);\n}\nvar prototype = AxiosURLSearchParams.prototype;\nprototype.append = function append(name, value) {\n this._pairs.push([\n name,\n value\n ]);\n};\nprototype.toString = function toString(encoder) {\n var _encode = encoder ? function (value) {\n return encoder.call(this, value, encode);\n } : encode;\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\nexport default AxiosURLSearchParams;","'use strict';\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');\n}\nexport default function buildURL(url, params, options) {\n if (!params) {\n return url;\n }\n var _encode = options && options.encode || encode;\n var serializeFn = options && options.serialize;\n var serializedParams;\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode);\n }\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n return url;\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './../utils.js';\nvar InterceptorManager = function () {\n function InterceptorManager() {\n _classCallCheck(this, InterceptorManager);\n this.handlers = [];\n }\n return _createClass(InterceptorManager, [\n {\n key: 'use',\n value: function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n },\n {\n key: 'eject',\n value: function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n },\n {\n key: 'clear',\n value: function clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n },\n {\n key: 'forEach',\n value: function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n }\n ]);\n}();\nexport default InterceptorManager;","'use strict';\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};","import URLSearchParams from './classes/URLSearchParams.js';\nimport FormData from './classes/FormData.js';\nimport Blob from './classes/Blob.js';\nvar isStandardBrowserEnv = function () {\n var product;\n if (typeof navigator !== 'undefined' && ((product = navigator.product) === 'ReactNative' || product === 'NativeScript' || product === 'NS')) {\n return false;\n }\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}();\nvar isStandardBrowserWebWorkerEnv = function () {\n return typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope && typeof self.importScripts === 'function';\n}();\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams: URLSearchParams,\n FormData: FormData,\n Blob: Blob\n },\n isStandardBrowserEnv: isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv: isStandardBrowserWebWorkerEnv,\n protocols: [\n 'http',\n 'https',\n 'file',\n 'blob',\n 'url',\n 'data'\n ]\n};","'use strict';\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;","'use strict';\nexport default typeof FormData !== 'undefined' ? FormData : null;","'use strict';\nexport default typeof Blob !== 'undefined' ? Blob : null;","'use strict';\nimport utils from '../utils.js';\nfunction parsePropPath(name) {\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(function (match) {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\nfunction arrayToObject(arr) {\n var obj = {};\n var keys = Object.keys(arr);\n var i;\n var len = keys.length;\n var key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n var name = path[index++];\n var isNumericKey = Number.isFinite(+name);\n var isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [\n target[name],\n value\n ];\n } else {\n target[name] = value;\n }\n return !isNumericKey;\n }\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n var result = buildPath(path, value, target[name], index);\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n return !isNumericKey;\n }\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n var obj = {};\n utils.forEachEntry(formData, function (name, value) {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n return obj;\n }\n return null;\n}\nexport default formDataToJSON;","'use strict';\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\nvar DEFAULT_CONTENT_TYPE = { 'Content-Type': undefined };\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n return (encoder || JSON.stringify)(rawValue);\n}\nvar defaults = {\n transitional: transitionalDefaults,\n adapter: [\n 'xhr',\n 'http'\n ],\n transformRequest: [function transformRequest(data, headers) {\n var contentType = headers.getContentType() || '';\n var hasJSONContentType = contentType.indexOf('application/json') > -1;\n var isObjectPayload = utils.isObject(data);\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n var isFormData = utils.isFormData(data);\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n if (utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n var isFileList;\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? { 'files[]': data } : data, _FormData && new _FormData(), this.formSerializer);\n }\n }\n if (isObjectPayload || hasJSONContentType) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var JSONRequested = this.responseType === 'json';\n if (data && utils.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) {\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var strictJSONParsing = !silentJSONParsing && JSONRequested;\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n return data;\n }],\n timeout: 0,\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n maxContentLength: -1,\n maxBodyLength: -1,\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n headers: { common: { 'Accept': 'application/json, text/plain, */*' } }\n};\nutils.forEach([\n 'delete',\n 'get',\n 'head'\n], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\nutils.forEach([\n 'post',\n 'put',\n 'patch'\n], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\nexport default defaults;","'use strict';\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function visitor(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}","'use strict';\nimport utils from './../utils.js';\nvar ignoreDuplicateOf = utils.toObjectSet([\n 'age',\n 'authorization',\n 'content-length',\n 'content-type',\n 'etag',\n 'expires',\n 'from',\n 'host',\n 'if-modified-since',\n 'if-unmodified-since',\n 'last-modified',\n 'location',\n 'max-forwards',\n 'proxy-authorization',\n 'referer',\n 'retry-after',\n 'user-agent'\n]);\nexport default function (rawHeaders) {\n var parsed = {};\n var key;\n var val;\n var i;\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n if (!key || parsed[key] && ignoreDuplicateOf[key]) {\n return;\n }\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n return parsed;\n};","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError('Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if ('string' == typeof r)\n return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return 'Object' === t && r.constructor && (t = r.constructor.name), 'Map' === t || 'Set' === t ? Array.from(r) : 'Arguments' === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++)\n n[e] = r[e];\n return n;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (null != t) {\n var e, n, i, u, a = [], f = !0, o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t)\n return;\n f = !1;\n } else\n for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t['return'] && (u = t['return'](), Object(u) !== u))\n return;\n } finally {\n if (o)\n throw n;\n }\n }\n return a;\n }\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r))\n return r;\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\nvar $internals = Symbol('internals');\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\nfunction parseTokens(str) {\n var tokens = Object.create(null);\n var tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n var match;\n while (match = tokensRE.exec(str)) {\n tokens[match[1]] = match[2];\n }\n return tokens;\n}\nvar isValidHeaderName = function isValidHeaderName(str) {\n return /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n};\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n if (isHeaderNameFilter) {\n value = header;\n }\n if (!utils.isString(value))\n return;\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\nfunction formatHeader(header) {\n return header.trim().toLowerCase().replace(/([a-z\\d])(\\w*)/g, function (w, _char, str) {\n return _char.toUpperCase() + str;\n });\n}\nfunction buildAccessors(obj, header) {\n var accessorName = utils.toCamelCase(' ' + header);\n [\n 'get',\n 'set',\n 'has'\n ].forEach(function (methodName) {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function value(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\nvar AxiosHeaders = function () {\n function AxiosHeaders(headers) {\n _classCallCheck(this, AxiosHeaders);\n headers && this.set(headers);\n }\n return _createClass(AxiosHeaders, [\n {\n key: 'set',\n value: function set(header, valueOrRewrite, rewrite) {\n var self = this;\n function setHeader(_value, _header, _rewrite) {\n var lHeader = normalizeHeader(_header);\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n var key = utils.findKey(self, lHeader);\n if (!key || self[key] === undefined || _rewrite === true || _rewrite === undefined && self[key] !== false) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n var setHeaders = function setHeaders(headers, _rewrite) {\n return utils.forEach(headers, function (_value, _header) {\n return setHeader(_value, _header, _rewrite);\n });\n };\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite);\n } else if (utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n return this;\n }\n },\n {\n key: 'get',\n value: function get(header, parser) {\n header = normalizeHeader(header);\n if (header) {\n var key = utils.findKey(this, header);\n if (key) {\n var value = this[key];\n if (!parser) {\n return value;\n }\n if (parser === true) {\n return parseTokens(value);\n }\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n },\n {\n key: 'has',\n value: function has(header, matcher) {\n header = normalizeHeader(header);\n if (header) {\n var key = utils.findKey(this, header);\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n return false;\n }\n },\n {\n key: 'delete',\n value: function _delete(header, matcher) {\n var self = this;\n var deleted = false;\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n if (_header) {\n var key = utils.findKey(self, _header);\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n deleted = true;\n }\n }\n }\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n return deleted;\n }\n },\n {\n key: 'clear',\n value: function clear(matcher) {\n var keys = Object.keys(this);\n var i = keys.length;\n var deleted = false;\n while (i--) {\n var key = keys[i];\n if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n return deleted;\n }\n },\n {\n key: 'normalize',\n value: function normalize(format) {\n var self = this;\n var headers = {};\n utils.forEach(this, function (value, header) {\n var key = utils.findKey(headers, header);\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n var normalized = format ? formatHeader(header) : String(header).trim();\n if (normalized !== header) {\n delete self[header];\n }\n self[normalized] = normalizeValue(value);\n headers[normalized] = true;\n });\n return this;\n }\n },\n {\n key: 'concat',\n value: function concat() {\n var _this$constructor;\n for (var _len = arguments.length, targets = new Array(_len), _key = 0; _key < _len; _key++) {\n targets[_key] = arguments[_key];\n }\n return (_this$constructor = this.constructor).concat.apply(_this$constructor, [this].concat(targets));\n }\n },\n {\n key: 'toJSON',\n value: function toJSON(asStrings) {\n var obj = Object.create(null);\n utils.forEach(this, function (value, header) {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n return obj;\n }\n },\n {\n key: Symbol.iterator,\n value: function value() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n },\n {\n key: 'toString',\n value: function toString() {\n return Object.entries(this.toJSON()).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2), header = _ref2[0], value = _ref2[1];\n return header + ': ' + value;\n }).join('\\n');\n }\n },\n {\n key: Symbol.toStringTag,\n get: function get() {\n return 'AxiosHeaders';\n }\n }\n ], [\n {\n key: 'from',\n value: function from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n },\n {\n key: 'concat',\n value: function concat(first) {\n var computed = new this(first);\n for (var _len2 = arguments.length, targets = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n targets[_key2 - 1] = arguments[_key2];\n }\n targets.forEach(function (target) {\n return computed.set(target);\n });\n return computed;\n }\n },\n {\n key: 'accessor',\n value: function accessor(header) {\n var internals = this[$internals] = this[$internals] = { accessors: {} };\n var accessors = internals.accessors;\n var prototype = this.prototype;\n function defineAccessor(_header) {\n var lHeader = normalizeHeader(_header);\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n return this;\n }\n }\n ]);\n}();\nAxiosHeaders.accessor([\n 'Content-Type',\n 'Content-Length',\n 'Accept',\n 'Accept-Encoding',\n 'User-Agent',\n 'Authorization'\n]);\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\nexport default AxiosHeaders;","'use strict';\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nexport default function transformData(fns, response) {\n var config = this || defaults;\n var context = response || config;\n var headers = AxiosHeaders.from(context.headers);\n var data = context.data;\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n headers.normalize();\n return data;\n}","'use strict';\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}","'use strict';\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\nfunction CanceledError(message, config, request) {\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\nutils.inherits(CanceledError, AxiosError, { __CANCEL__: true });\nexport default CanceledError;","'use strict';\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\nexport default platform.isStandardBrowserEnv ? function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n if (secure === true) {\n cookie.push('secure');\n }\n document.cookie = cookie.join('; ');\n },\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return match ? decodeURIComponent(match[3]) : null;\n },\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n}() : function nonStandardBrowserEnv() {\n return {\n write: function write() {\n },\n read: function read() {\n return null;\n },\n remove: function remove() {\n }\n };\n}();","'use strict';\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}","'use strict';\nexport default function isAbsoluteURL(url) {\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}","'use strict';\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '') : baseURL;\n}","'use strict';\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\nexport default platform.isStandardBrowserEnv ? function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n function resolveURL(url) {\n var href = url;\n if (msie) {\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n urlParsingNode.setAttribute('href', href);\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: urlParsingNode.pathname.charAt(0) === '/' ? urlParsingNode.pathname : '/' + urlParsingNode.pathname\n };\n }\n originURL = resolveURL(window.location.href);\n return function isURLSameOrigin(requestURL) {\n var parsed = utils.isString(requestURL) ? resolveURL(requestURL) : requestURL;\n return parsed.protocol === originURL.protocol && parsed.host === originURL.host;\n };\n}() : function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n}();","'use strict';\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\nfunction progressEventReducer(listener, isDownloadStream) {\n var bytesNotified = 0;\n var _speedometer = speedometer(50, 250);\n return function (e) {\n var loaded = e.loaded;\n var total = e.lengthComputable ? e.total : undefined;\n var progressBytes = loaded - bytesNotified;\n var rate = _speedometer(progressBytes);\n var inRange = loaded <= total;\n bytesNotified = loaded;\n var data = {\n loaded: loaded,\n total: total,\n progress: total ? loaded / total : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n data[isDownloadStream ? 'download' : 'upload'] = true;\n listener(data);\n };\n}\nvar isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = AxiosHeaders.from(config.headers).normalize();\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n if (utils.isFormData(requestData)) {\n if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false);\n } else {\n requestHeaders.setContentType('multipart/form-data;', false);\n }\n }\n var request = new XMLHttpRequest();\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n request.timeout = config.timeout;\n function onloadend() {\n if (!request) {\n return;\n }\n var responseHeaders = AxiosHeaders.from('getAllResponseHeaders' in request && request.getAllResponseHeaders());\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n request = null;\n }\n if ('onloadend' in request) {\n request.onloadend = onloadend;\n } else {\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n setTimeout(onloadend);\n };\n }\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n request = null;\n };\n request.onerror = function handleError() {\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n request = null;\n };\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(timeoutErrorMessage, transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED, config, request));\n request = null;\n };\n if (platform.isStandardBrowserEnv) {\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n requestData === undefined && requestHeaders.setContentType(null);\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n if (config.cancelToken || config.signal) {\n onCanceled = function onCanceled(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n var protocol = parseProtocol(fullPath);\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n request.send(requestData || null);\n });\n};","'use strict';\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n var bytes = new Array(samplesCount);\n var timestamps = new Array(samplesCount);\n var head = 0;\n var tail = 0;\n var firstSampleTS;\n min = min !== undefined ? min : 1000;\n return function push(chunkLength) {\n var now = Date.now();\n var startedAt = timestamps[tail];\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n bytes[head] = chunkLength;\n timestamps[head] = now;\n var i = tail;\n var bytesCount = 0;\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n head = (head + 1) % samplesCount;\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n if (now - firstSampleTS < min) {\n return;\n }\n var passed = startedAt && now - startedAt;\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\nexport default speedometer;","'use strict';\nimport AxiosError from './AxiosError.js';\nexport default function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError('Request failed with status code ' + response.status, [\n AxiosError.ERR_BAD_REQUEST,\n AxiosError.ERR_BAD_RESPONSE\n ][Math.floor(response.status / 100) - 4], response.config, response.request, response));\n }\n}","'use strict';\nexport default function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from '../core/AxiosError.js';\nvar knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n};\nutils.forEach(knownAdapters, function (fn, value) {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', { value: value });\n } catch (e) {\n }\n Object.defineProperty(fn, 'adapterName', { value: value });\n }\n});\nexport default {\n getAdapter: function getAdapter(adapters) {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n var _adapters = adapters, length = _adapters.length;\n var nameOrAdapter;\n var adapter;\n for (var i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if (adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter) {\n break;\n }\n }\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError('Adapter '.concat(nameOrAdapter, ' is not supported by the environment'), 'ERR_NOT_SUPPORT');\n }\n throw new Error(utils.hasOwnProp(knownAdapters, nameOrAdapter) ? 'Adapter \\''.concat(nameOrAdapter, '\\' is not available in the build') : 'Unknown adapter \\''.concat(nameOrAdapter, '\\''));\n }\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n return adapter;\n },\n adapters: knownAdapters\n};","export default null;","'use strict';\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from '../adapters/adapters.js';\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n config.headers = AxiosHeaders.from(config.headers);\n config.data = transformData.call(config, config.transformRequest);\n if ([\n 'post',\n 'put',\n 'patch'\n ].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n var adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n response.data = transformData.call(config, config.transformResponse, response);\n response.headers = AxiosHeaders.from(response.headers);\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n if (reason && reason.response) {\n reason.response.data = transformData.call(config, config.transformResponse, reason.response);\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n return Promise.reject(reason);\n });\n}","'use strict';\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nvar headersToObject = function headersToObject(thing) {\n return thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n};\nexport default function mergeConfig(config1, config2) {\n config2 = config2 || {};\n var config = {};\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({ caseless: caseless }, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n var mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: function headers(a, b) {\n return mergeDeepProperties(headersToObject(a), headersToObject(b), true);\n }\n };\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(config1[prop], config2[prop], prop);\n utils.isUndefined(configValue) && merge !== mergeDirectKeys || (config[prop] = configValue);\n });\n return config;\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport { VERSION } from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\nvar validators = {};\n[\n 'object',\n 'boolean',\n 'number',\n 'function',\n 'string',\n 'symbol'\n].forEach(function (type, i) {\n validators[type] = function validator(thing) {\n return _typeof(thing) === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\nvar deprecatedWarnings = {};\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n return function (value, opt, opts) {\n if (validator === false) {\n throw new AxiosError(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')), AxiosError.ERR_DEPRECATED);\n }\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n console.warn(formatMessage(opt, ' has been deprecated since v' + version + ' and will be removed in the near future'));\n }\n return validator ? validator(value, opt, opts) : true;\n };\n};\nfunction assertOptions(options, schema, allowUnknown) {\n if (_typeof(options) !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\nexport default {\n assertOptions: assertOptions,\n validators: validators\n};","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nvar validators = validator.validators;\nvar Axios = function () {\n function Axios(instanceConfig) {\n _classCallCheck(this, Axios);\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n return _createClass(Axios, [\n {\n key: 'request',\n value: function request(configOrUrl, config) {\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n config = mergeConfig(this.defaults, config);\n var _config = config, transitional = _config.transitional, paramsSerializer = _config.paramsSerializer, headers = _config.headers;\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators['boolean']),\n forcedJSONParsing: validators.transitional(validators['boolean']),\n clarifyTimeoutError: validators.transitional(validators['boolean'])\n }, false);\n }\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = { serialize: paramsSerializer };\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators['function'],\n serialize: validators['function']\n }, true);\n }\n }\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n var contextHeaders;\n contextHeaders = headers && utils.merge(headers.common, headers[config.method]);\n contextHeaders && utils.forEach([\n 'delete',\n 'get',\n 'head',\n 'post',\n 'put',\n 'patch',\n 'common'\n ], function (method) {\n delete headers[method];\n });\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n var promise;\n var i = 0;\n var len;\n if (!synchronousRequestInterceptors) {\n var chain = [\n dispatchRequest.bind(this),\n undefined\n ];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n promise = Promise.resolve(config);\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n return promise;\n }\n len = requestInterceptorChain.length;\n var newConfig = config;\n i = 0;\n while (i < len) {\n var onFulfilled = requestInterceptorChain[i++];\n var onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n i = 0;\n len = responseInterceptorChain.length;\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n return promise;\n }\n },\n {\n key: 'getUri',\n value: function getUri(config) {\n config = mergeConfig(this.defaults, config);\n var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n }\n ]);\n}();\nutils.forEach([\n 'delete',\n 'get',\n 'head',\n 'options'\n], function forEachMethodNoData(method) {\n Axios.prototype[method] = function (url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\nutils.forEach([\n 'post',\n 'put',\n 'patch'\n], function forEachMethodWithData(method) {\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? { 'Content-Type': 'multipart/form-data' } : {},\n url: url,\n data: data\n }));\n };\n }\n Axios.prototype[method] = generateHTTPMethod();\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\nexport default Axios;","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport CanceledError from './CanceledError.js';\nvar CancelToken = function () {\n function CancelToken(executor) {\n _classCallCheck(this, CancelToken);\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n var token = this;\n this.promise.then(function (cancel) {\n if (!token._listeners)\n return;\n var i = token._listeners.length;\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n this.promise.then = function (onfulfilled) {\n var _resolve;\n var promise = new Promise(function (resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n return promise;\n };\n executor(function cancel(message, config, request) {\n if (token.reason) {\n return;\n }\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n return _createClass(CancelToken, [\n {\n key: 'throwIfRequested',\n value: function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n },\n {\n key: 'subscribe',\n value: function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n },\n {\n key: 'unsubscribe',\n value: function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n }\n ], [{\n key: 'source',\n value: function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n }\n }]);\n}();\nexport default CancelToken;","function _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError('Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if ('string' == typeof r)\n return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return 'Object' === t && r.constructor && (t = r.constructor.name), 'Map' === t || 'Set' === t ? Array.from(r) : 'Arguments' === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++)\n n[e] = r[e];\n return n;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (null != t) {\n var e, n, i, u, a = [], f = !0, o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t)\n return;\n f = !1;\n } else\n for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t['return'] && (u = t['return'](), Object(u) !== u))\n return;\n } finally {\n if (o)\n throw n;\n }\n }\n return a;\n }\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r))\n return r;\n}\nvar HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511\n};\nObject.entries(HttpStatusCode).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2), key = _ref2[0], value = _ref2[1];\n HttpStatusCode[value] = key;\n});\nexport default HttpStatusCode;","'use strict';\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport { VERSION } from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from './core/AxiosHeaders.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n utils.extend(instance, Axios.prototype, context, { allOwnKeys: true });\n utils.extend(instance, context, null, { allOwnKeys: true });\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n return instance;\n}\nvar axios = createInstance(defaults);\naxios.Axios = Axios;\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\naxios.AxiosError = AxiosError;\naxios.Cancel = axios.CanceledError;\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = spread;\naxios.isAxiosError = isAxiosError;\naxios.mergeConfig = mergeConfig;\naxios.AxiosHeaders = AxiosHeaders;\naxios.formToJSON = function (thing) {\n return formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n};\naxios.HttpStatusCode = HttpStatusCode;\naxios['default'] = axios;\nexport default axios;","export var VERSION = '1.4.0';","'use strict';\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}","'use strict';\nimport utils from './../utils.js';\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && payload.isAxiosError === true;\n}","import axios from 'axios';\nexport default {\n send: function send(options) {\n axios.post(options.url, options.data).then(function (response) {\n var data = response.data;\n if (!data || data.code !== 0) {\n options.error && options.error(data && data.msg);\n return;\n }\n options.success && options.success(data);\n })['catch'](function (e) {\n console.error(e);\n options.error && options.error();\n });\n },\n read: function read(options) {\n axios.get(options.url).then(function (response) {\n var data = response.data;\n if (!data || data.code !== 0) {\n options.error && options.error(data && data.msg);\n return;\n }\n options.success && options.success(data.data.map(function (item) {\n return {\n time: item[0],\n type: item[1],\n color: item[2],\n author: item[3],\n text: item[4]\n };\n }));\n })['catch'](function (e) {\n console.error(e);\n options.error && options.error();\n });\n }\n};","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport defaultApiBackend from './api.js';\nexport default function (options) {\n var defaultOption = {\n container: options.element || document.getElementsByClassName('dplayer')[0],\n live: false,\n autoplay: false,\n theme: '#b7daff',\n loop: false,\n lang: (navigator.language || navigator.browserLanguage).toLowerCase(),\n screenshot: false,\n airplay: true,\n chromecast: false,\n hotkey: true,\n globalHotkey: true,\n preload: 'metadata',\n volume: 0.7,\n playbackSpeed: [\n 0.5,\n 0.75,\n 1,\n 1.25,\n 1.5,\n 2\n ],\n apiBackend: defaultApiBackend,\n video: {},\n contextmenu: [],\n mutex: true,\n pluginOptions: {\n hls: {},\n flv: {},\n dash: {},\n webtorrent: {}\n },\n preventClickToggle: false\n };\n for (var defaultKey in defaultOption) {\n if (defaultOption.hasOwnProperty(defaultKey) && !options.hasOwnProperty(defaultKey)) {\n options[defaultKey] = defaultOption[defaultKey];\n }\n }\n if (options.video) {\n !options.video.type && (options.video.type = 'auto');\n }\n if (_typeof(options.danmaku) === 'object' && options.danmaku) {\n !options.danmaku.user && (options.danmaku.user = 'Fluxonide');\n }\n if (options.subtitle) {\n !options.subtitle.type && (options.subtitle.type = 'webvtt');\n !options.subtitle.fontSize && (options.subtitle.fontSize = '20px');\n !options.subtitle.bottom && (options.subtitle.bottom = '40px');\n !options.subtitle.color && (options.subtitle.color = '#fff');\n }\n if (options.video.quality) {\n options.video.url = options.video.quality[options.video.defaultQuality].url;\n }\n if (options.lang) {\n options.lang = options.lang.toLowerCase();\n }\n options.contextmenu = options.contextmenu.concat([\n {\n key: 'video-info',\n click: function click(player) {\n player.infoPanel.triggle();\n }\n },\n {\n key: 'about-author',\n link: 'https://github.com/Fluxonide'\n },\n {\n text: 'dplayer-enhanced v'.concat(DPLAYER_VERSION),\n link: 'https://github.com/Fluxonide/dplayer-enhanced'\n }\n ]);\n return options;\n};","function i18n(lang) {\n var _this = this;\n this.lang = lang;\n this.fallbackLang = this.lang.includes('-') ? this.lang.split('-')[0] : this.lang;\n this.tran = function (key) {\n key = key.toLowerCase();\n if (tranTxt[_this.lang] && tranTxt[_this.lang][key]) {\n return tranTxt[_this.lang][key];\n } else if (tranTxt[_this.fallbackLang] && tranTxt[_this.fallbackLang][key]) {\n return tranTxt[_this.fallbackLang][key];\n } else if (standard[key]) {\n return standard[key];\n } else {\n return key;\n }\n };\n}\nvar standard = {\n 'danmaku-loading': 'Danmaku is loading',\n top: 'Top',\n bottom: 'Bottom',\n rolling: 'Rolling',\n 'input-danmaku-enter': 'Input danmaku, hit Enter',\n 'about-author': 'About author',\n 'dplayer-feedback': 'DPlayer feedback',\n 'about-dplayer': 'About DPlayer',\n loop: 'Loop',\n speed: 'Speed',\n 'opacity-danmaku': 'Opacity for danmaku',\n normal: 'Normal',\n 'please-input-danmaku': 'Please input danmaku content!',\n 'set-danmaku-color': 'Set danmaku color',\n 'set-danmaku-type': 'Set danmaku type',\n 'show-danmaku': 'Show danmaku',\n 'video-failed': 'Video load failed',\n 'danmaku-failed': 'Danmaku load failed',\n 'danmaku-send-failed': 'Danmaku send failed',\n 'switching-quality': 'Switching to %q quality',\n 'switched-quality': 'Switched to %q quality',\n ff: 'FF %s s',\n rew: 'REW %s s',\n 'unlimited-danmaku': 'Unlimited danmaku',\n 'send-danmaku': 'Send danmaku',\n setting: 'Setting',\n fullscreen: 'Full screen',\n 'web-fullscreen': 'Web full screen',\n send: 'Send',\n screenshot: 'Screenshot',\n airplay: 'AirPlay',\n chromecast: 'ChromeCast',\n subtitle: 'Subtitle',\n off: 'Off',\n 'show-subs': 'Show subtitle',\n 'hide-subs': 'Hide subtitle',\n volume: 'Volume',\n live: 'Live',\n 'video-info': 'Video info'\n};\nvar tranTxt = {\n en: standard,\n 'zh-cn': {\n 'danmaku-loading': '弹幕加载中',\n top: '顶部',\n bottom: '底部',\n rolling: '滚动',\n 'input-danmaku-enter': '输入弹幕\\uFF0C回车发送',\n 'about-author': '关于作者',\n 'dplayer-feedback': '播放器意见反馈',\n 'about-dplayer': '关于 DPlayer 播放器',\n loop: '洗脑循环',\n speed: '速度',\n 'opacity-danmaku': '弹幕透明度',\n normal: '正常',\n 'please-input-danmaku': '要输入弹幕内容啊喂\\uFF01',\n 'set-danmaku-color': '设置弹幕颜色',\n 'set-danmaku-type': '设置弹幕类型',\n 'show-danmaku': '显示弹幕',\n 'video-failed': '视频加载失败',\n 'danmaku-failed': '弹幕加载失败',\n 'danmaku-send-failed': '弹幕发送失败',\n 'switching-quality': '正在切换至 %q 画质',\n 'switched-quality': '已经切换至 %q 画质',\n ff: '快进 %s 秒',\n rew: '快退 %s 秒',\n 'unlimited-danmaku': '海量弹幕',\n 'send-danmaku': '发送弹幕',\n setting: '设置',\n fullscreen: '全屏',\n 'web-fullscreen': '页面全屏',\n send: '发送',\n screenshot: '截图',\n airplay: '无线投屏',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: '关闭',\n 'show-subs': '显示字幕',\n 'hide-subs': '隐藏字幕',\n volume: '音量',\n live: '直播',\n 'video-info': '视频统计信息'\n },\n 'zh-tw': {\n 'danmaku-loading': '彈幕載入中',\n top: '頂部',\n bottom: '底部',\n rolling: '滾動',\n 'input-danmaku-enter': '輸入彈幕\\uFF0CEnter 發送',\n 'about-author': '關於作者',\n 'dplayer-feedback': '播放器意見回饋',\n 'about-dplayer': '關於 DPlayer 播放器',\n loop: '循環播放',\n speed: '速度',\n 'opacity-danmaku': '彈幕透明度',\n normal: '正常',\n 'please-input-danmaku': '請輸入彈幕內容啊\\uFF01',\n 'set-danmaku-color': '設定彈幕顏色',\n 'set-danmaku-type': '設定彈幕類型',\n 'show-danmaku': '顯示彈幕',\n 'video-failed': '影片載入失敗',\n 'danmaku-failed': '彈幕載入失敗',\n 'danmaku-send-failed': '彈幕發送失敗',\n 'switching-quality': '正在切換至 %q 畫質',\n 'switched-quality': '已經切換至 %q 畫質',\n ff: '快進 %s 秒',\n rew: '快退 %s 秒',\n 'unlimited-danmaku': '巨量彈幕',\n 'send-danmaku': '發送彈幕',\n setting: '設定',\n fullscreen: '全螢幕',\n 'web-fullscreen': '頁面全螢幕',\n send: '發送',\n screenshot: '截圖',\n airplay: '無線投屏',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: '關閉',\n 'show-subs': '顯示字幕',\n 'hide-subs': '隱藏字幕',\n volume: '音量',\n live: '直播',\n 'video-info': '影片統計訊息'\n },\n 'ko-kr': {\n 'danmaku-loading': 'Danmaku를 불러오는 중입니다.',\n top: 'Top',\n bottom: 'Bottom',\n rolling: 'Rolling',\n 'input-danmaku-enter': 'Danmaku를 입력하고 Enter를 누르세요.',\n 'about-author': '만든이',\n 'dplayer-feedback': '피드백 보내기',\n 'about-dplayer': 'DPlayer 정보',\n loop: '반복',\n speed: '배속',\n 'opacity-danmaku': 'Danmaku 불투명도',\n normal: '표준',\n 'please-input-danmaku': 'Danmaku를 입력하세요!',\n 'set-danmaku-color': 'Danmaku 색상',\n 'set-danmaku-type': 'Danmaku 설정',\n 'show-danmaku': 'Danmaku 표시',\n 'video-failed': '비디오를 불러오지 못했습니다.',\n 'danmaku-failed': 'Danmaku를 불러오지 못했습니다.',\n 'danmaku-send-failed': 'Danmaku 전송에 실패했습니다.',\n 'Switching to': '',\n 'Switched to': '',\n 'switching-quality': '전환 %q 화질',\n 'switched-quality': '전환 됨 %q 화질',\n ff: '앞으로 %s 초',\n rew: '뒤로 %s 초',\n 'unlimited-danmaku': '끝없는 Danmaku',\n 'send-danmaku': 'Danmaku 보내기',\n setting: '설정',\n fullscreen: '전체 화면',\n 'web-fullscreen': '웹 내 전체화면',\n send: '보내기',\n screenshot: '화면 캡쳐',\n airplay: '에어플레이',\n chromecast: 'ChromeCast',\n subtitle: '부제',\n off: '끄다',\n 'show-subs': '자막 보이기',\n 'hide-subs': '자막 숨기기',\n Volume: '볼륨',\n live: '생방송',\n 'video-info': '비디오 정보'\n },\n de: {\n 'danmaku-loading': 'Danmaku lädt...',\n top: 'Oben',\n bottom: 'Unten',\n rolling: 'Rollend',\n 'input-danmaku-enter': 'Drücke Enter nach dem Einfügen vom Danmaku',\n 'about-author': 'Über den Autor',\n 'dplayer-feedback': 'DPlayer Feedback',\n 'about-dplayer': 'Über DPlayer',\n loop: 'Wiederholen',\n speed: 'Geschwindigkeit',\n 'opacity-danmaku': 'Transparenz für Danmaku',\n normal: 'Normal',\n 'please-input-danmaku': 'Bitte Danmaku Inhalt eingeben!',\n 'set-danmaku-color': 'Danmaku Farbe festlegen',\n 'set-danmaku-type': 'Danmaku Typ festlegen',\n 'show-danmaku': 'Zeige Danmaku',\n 'video-failed': 'Das Video konnte nicht geladen werden',\n 'danmaku-failed': 'Danmaku konnte nicht geladen werden',\n 'danmaku-send-failed': 'Das senden von Danmaku ist fehgeschlagen',\n 'switching-quality': 'Wechsle zur %q Qualität',\n 'switched-quality': 'Zur %q Qualität gewechselt',\n ff: '%s s Vorwärts',\n rew: '%s s Zurück',\n 'unlimited-danmaku': 'Unlimitiertes Danmaku',\n 'send-danmaku': 'Sende Danmaku',\n setting: 'Einstellungen',\n fullscreen: 'Vollbild',\n 'web-fullscreen': 'Browser Vollbild',\n send: 'Senden',\n screenshot: 'Screenshot',\n airplay: 'AirPlay',\n 'show-subs': 'Zeige Untertitel',\n chromecast: 'ChromeCast',\n subtitle: 'Untertitel',\n off: 'Schließung',\n 'hide-subs': 'Verstecke Untertitel',\n volume: 'Lautstärke',\n live: 'Live',\n 'video-info': 'Video Info'\n },\n 'ja': {\n 'danmaku-loading': 'コメントを読み込んでいます',\n top: 'トップ',\n bottom: 'ボトム',\n rolling: 'スクロール',\n 'input-danmaku-enter': 'コメントを入力し\\uFF0CEnter で送信',\n 'about-author': '作者について',\n 'dplayer-feedback': 'DPlayer についての意見\\u30FB要望',\n 'about-dplayer': 'DPlayer について',\n loop: 'くり返し',\n speed: '再生速度',\n 'opacity-danmaku': 'コメントの透明度',\n normal: '通常',\n 'please-input-danmaku': 'コメントを入力してください!',\n 'set-danmaku-color': 'コメントの色',\n 'set-danmaku-type': 'コメントの種類',\n 'show-danmaku': 'コメント表示',\n 'video-failed': 'ビデオの読み込みに失敗',\n 'danmaku-failed': 'コメントの読み込みに失敗',\n 'danmaku-send-failed': 'コメントの送信に失敗',\n 'switching-quality': '%qへ切り替え中',\n 'switched-quality': '%qへ切り替え完了',\n quality: 'へ',\n ff: '%s 秒早送り',\n rew: '%s 秒早戻し',\n 'unlimited-danmaku': 'コメント無制限',\n 'send-danmaku': 'コメント送信',\n setting: '設定',\n fullscreen: '全画面表示',\n 'web-fullscreen': 'ブラウザ全体表示',\n send: '送信',\n screenshot: '画面コピー',\n airplay: 'AirPlay',\n 'show-subs': '字幕表示',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: 'OFF',\n 'hide-subs': '字幕非表示',\n volume: '音量',\n live: 'ライブ',\n 'video-info': '動画情報'\n },\n 'ru': {\n 'danmaku-loading': 'Загрузка комментариев',\n top: 'Вверху',\n bottom: 'Внизу',\n rolling: 'Лента',\n 'input-danmaku-enter': 'Введите комментарий, нажмите Enter',\n 'about-author': 'Об авторе',\n 'dplayer-feedback': 'Обратная связь',\n 'about-dplayer': 'О плеере',\n loop: 'Закольцевать',\n speed: 'Скорость',\n 'opacity-danmaku': 'Прозрачность',\n normal: 'Обычный',\n 'please-input-danmaku': 'Пожалуйста, введите комментарий!',\n 'set-danmaku-color': 'Цвет комментария',\n 'set-danmaku-type': 'Тип комментария',\n 'show-danmaku': 'Показать комментарии',\n 'video-failed': 'Ошибка загрузки видео',\n 'danmaku-failed': 'Ошибка загрузки комментариев',\n 'danmaku-send-failed': 'Ошибка отправки комментария',\n 'switching-quality': 'Переключение качества на: %q',\n 'switched-quality': 'Установлено качество: %q',\n ff: 'Вперёд: %s с',\n rew: 'Назад: %s с',\n 'unlimited-danmaku': 'Без ограничений',\n 'send-danmaku': 'Отправить комментарий',\n setting: 'Настройки',\n fullscreen: 'На весь экран',\n 'web-fullscreen': 'На весь Web экран',\n send: 'Отправить',\n screenshot: 'Скриншот',\n airplay: 'AirPlay',\n chromecast: 'ChromeCast',\n subtitle: 'Комментарий',\n off: 'Выкл',\n 'show-subs': 'Показать комментарии',\n 'hide-subs': 'Скрыть комментарии',\n volume: 'Громкость',\n live: 'Живые комментарии',\n 'video-info': 'Информация о видео'\n }\n};\nexport {\n i18n\n};","import play from '../assets/play.svg';\nimport pause from '../assets/pause.svg';\nimport volumeUp from '../assets/volume-up.svg';\nimport volumeDown from '../assets/volume-down.svg';\nimport volumeOff from '../assets/volume-off.svg';\nimport full from '../assets/full.svg';\nimport fullWeb from '../assets/full-web.svg';\nimport setting from '../assets/setting.svg';\nimport right from '../assets/right.svg';\nimport comment from '../assets/comment.svg';\nimport commentOff from '../assets/comment-off.svg';\nimport send from '../assets/send.svg';\nimport pallette from '../assets/pallette.svg';\nimport camera from '../assets/camera.svg';\nimport airplay from '../assets/airplay.svg';\nimport subtitle from '../assets/subtitle.svg';\nimport loading from '../assets/loading.svg';\nimport chromecast from '../assets/chromecast.svg';\nvar Icons = {\n play: play,\n pause: pause,\n volumeUp: volumeUp,\n volumeDown: volumeDown,\n volumeOff: volumeOff,\n full: full,\n fullWeb: fullWeb,\n setting: setting,\n right: right,\n comment: comment,\n commentOff: commentOff,\n send: send,\n pallette: pallette,\n camera: camera,\n subtitle: subtitle,\n loading: loading,\n airplay: airplay,\n chromecast: chromecast\n};\nexport default Icons;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport Icons from './icons';\nimport tplPlayer from '../template/player.art';\nimport utils from './utils';\nvar Template = function () {\n function Template(options) {\n _classCallCheck(this, Template);\n this.container = options.container;\n this.options = options.options;\n this.index = options.index;\n this.tran = options.tran;\n this.init();\n }\n return _createClass(Template, [{\n key: 'init',\n value: function init() {\n this.container.innerHTML = tplPlayer({\n options: this.options,\n index: this.index,\n tran: this.tran,\n icons: Icons,\n mobile: utils.isMobile,\n video: {\n current: true,\n pic: this.options.video.pic,\n screenshot: this.options.screenshot,\n airplay: utils.isSafari && !utils.isChrome ? this.options.airplay : false,\n chromecast: this.options.chromecast,\n preload: this.options.preload,\n url: this.options.video.url,\n subtitle: this.options.subtitle\n }\n });\n this.volumeBar = this.container.querySelector('.dplayer-volume-bar-inner');\n this.volumeBarWrap = this.container.querySelector('.dplayer-volume-bar');\n this.volumeBarWrapWrap = this.container.querySelector('.dplayer-volume-bar-wrap');\n this.volumeButton = this.container.querySelector('.dplayer-volume');\n this.volumeButtonIcon = this.container.querySelector('.dplayer-volume-icon');\n this.volumeIcon = this.container.querySelector('.dplayer-volume-icon .dplayer-icon-content');\n this.playedBar = this.container.querySelector('.dplayer-played');\n this.loadedBar = this.container.querySelector('.dplayer-loaded');\n this.playedBarWrap = this.container.querySelector('.dplayer-bar-wrap');\n this.playedBarTime = this.container.querySelector('.dplayer-bar-time');\n this.danmaku = this.container.querySelector('.dplayer-danmaku');\n this.danmakuLoading = this.container.querySelector('.dplayer-danloading');\n this.video = this.container.querySelector('.dplayer-video-current');\n this.bezel = this.container.querySelector('.dplayer-bezel-icon');\n this.playButton = this.container.querySelector('.dplayer-play-icon');\n this.mobilePlayButton = this.container.querySelector('.dplayer-mobile-play');\n this.videoWrap = this.container.querySelector('.dplayer-video-wrap');\n this.controllerMask = this.container.querySelector('.dplayer-controller-mask');\n this.ptime = this.container.querySelector('.dplayer-ptime');\n this.settingButton = this.container.querySelector('.dplayer-setting-icon');\n this.settingBox = this.container.querySelector('.dplayer-setting-box');\n this.mask = this.container.querySelector('.dplayer-mask');\n this.loop = this.container.querySelector('.dplayer-setting-loop');\n this.loopToggle = this.container.querySelector('.dplayer-setting-loop .dplayer-toggle-setting-input');\n this.showDanmaku = this.container.querySelector('.dplayer-setting-showdan');\n this.showDanmakuToggle = this.container.querySelector('.dplayer-showdan-setting-input');\n this.unlimitDanmaku = this.container.querySelector('.dplayer-setting-danunlimit');\n this.unlimitDanmakuToggle = this.container.querySelector('.dplayer-danunlimit-setting-input');\n this.speed = this.container.querySelector('.dplayer-setting-speed');\n this.speedItem = this.container.querySelectorAll('.dplayer-setting-speed-item');\n this.danmakuOpacityBar = this.container.querySelector('.dplayer-danmaku-bar-inner');\n this.danmakuOpacityBarWrap = this.container.querySelector('.dplayer-danmaku-bar');\n this.danmakuOpacityBarWrapWrap = this.container.querySelector('.dplayer-danmaku-bar-wrap');\n this.danmakuOpacityBox = this.container.querySelector('.dplayer-setting-danmaku');\n this.dtime = this.container.querySelector('.dplayer-dtime');\n this.speedIndicator = this.container.querySelector('.dplayer-speed-indicator');\n this.speedPanel = this.container.querySelector('.dplayer-speed-panel');\n this.speedSliderTrack = this.container.querySelector('.dplayer-speed-slider-track');\n this.speedSliderFilled = this.container.querySelector('.dplayer-speed-slider-filled');\n this.speedSliderThumb = this.container.querySelector('.dplayer-speed-slider-thumb');\n this.speedSliderTicks = this.container.querySelectorAll('.dplayer-speed-slider-tick');\n this.speedSliderLabels = this.container.querySelectorAll('.dplayer-speed-slider-label');\n this.speedSliderBtnMinus = this.container.querySelector('.dplayer-speed-slider-btn-minus');\n this.speedSliderBtnPlus = this.container.querySelector('.dplayer-speed-slider-btn-plus');\n this.controller = this.container.querySelector('.dplayer-controller');\n this.commentInput = this.container.querySelector('.dplayer-comment-input');\n this.commentButton = this.container.querySelector('.dplayer-comment-icon');\n this.commentSettingBox = this.container.querySelector('.dplayer-comment-setting-box');\n this.commentSettingButton = this.container.querySelector('.dplayer-comment-setting-icon');\n this.commentSettingFill = this.container.querySelector('.dplayer-comment-setting-icon path');\n this.commentSendButton = this.container.querySelector('.dplayer-send-icon');\n this.commentSendFill = this.container.querySelector('.dplayer-send-icon path');\n this.commentColorSettingBox = this.container.querySelector('.dplayer-comment-setting-color');\n this.browserFullButton = this.container.querySelector('.dplayer-full-icon');\n this.webFullButton = this.container.querySelector('.dplayer-full-in-icon');\n this.menu = this.container.querySelector('.dplayer-menu');\n this.menuItem = this.container.querySelectorAll('.dplayer-menu-item');\n this.qualityList = this.container.querySelector('.dplayer-quality-list');\n this.camareButton = this.container.querySelector('.dplayer-camera-icon');\n this.airplayButton = this.container.querySelector('.dplayer-airplay-icon');\n this.chromecastButton = this.container.querySelector('.dplayer-chromecast-icon');\n this.subtitleButton = this.container.querySelector('.dplayer-subtitle-icon');\n this.subtitleButtonInner = this.container.querySelector('.dplayer-subtitle-icon .dplayer-icon-content');\n this.subtitlesButton = this.container.querySelector('.dplayer-subtitles-icon');\n this.subtitlesBox = this.container.querySelector('.dplayer-subtitles-box');\n this.subtitlesItem = this.container.querySelectorAll('.dplayer-subtitles-item');\n this.subtitle = this.container.querySelector('.dplayer-subtitle');\n this.subtrack = this.container.querySelector('.dplayer-subtrack');\n this.qualityButton = this.container.querySelector('.dplayer-quality-icon');\n this.barPreview = this.container.querySelector('.dplayer-bar-preview');\n this.barWrap = this.container.querySelector('.dplayer-bar-wrap');\n this.noticeList = this.container.querySelector('.dplayer-notice-list');\n this.infoPanel = this.container.querySelector('.dplayer-info-panel');\n this.infoPanelClose = this.container.querySelector('.dplayer-info-panel-close');\n this.infoVersion = this.container.querySelector('.dplayer-info-panel-item-version .dplayer-info-panel-item-data');\n this.infoFPS = this.container.querySelector('.dplayer-info-panel-item-fps .dplayer-info-panel-item-data');\n this.infoType = this.container.querySelector('.dplayer-info-panel-item-type .dplayer-info-panel-item-data');\n this.infoUrl = this.container.querySelector('.dplayer-info-panel-item-url .dplayer-info-panel-item-data');\n this.infoResolution = this.container.querySelector('.dplayer-info-panel-item-resolution .dplayer-info-panel-item-data');\n this.infoDuration = this.container.querySelector('.dplayer-info-panel-item-duration .dplayer-info-panel-item-data');\n this.infoDanmakuId = this.container.querySelector('.dplayer-info-panel-item-danmaku-id .dplayer-info-panel-item-data');\n this.infoDanmakuApi = this.container.querySelector('.dplayer-info-panel-item-danmaku-api .dplayer-info-panel-item-data');\n this.infoDanmakuAmount = this.container.querySelector('.dplayer-info-panel-item-danmaku-amount .dplayer-info-panel-item-data');\n }\n }], [{\n key: 'NewNotice',\n value: function NewNotice(text, opacity, id) {\n var notice = document.createElement('div');\n notice.classList.add('dplayer-notice');\n notice.style.opacity = opacity;\n notice.innerText = text;\n if (id) {\n notice.id = 'dplayer-notice-'.concat(id);\n }\n return notice;\n }\n }]);\n}();\nexport default Template;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Danmaku = function () {\n function Danmaku(options) {\n _classCallCheck(this, Danmaku);\n this.options = options;\n this.player = this.options.player;\n this.container = this.options.container;\n this.danTunnel = {\n right: {},\n top: {},\n bottom: {}\n };\n this.danIndex = 0;\n this.dan = [];\n this.showing = true;\n this._opacity = this.options.opacity;\n this.events = this.options.events;\n this.unlimited = this.options.unlimited;\n this._measure('');\n this.load();\n }\n return _createClass(Danmaku, [\n {\n key: 'load',\n value: function load() {\n var _this = this;\n var apiurl;\n if (this.options.api.maximum) {\n apiurl = ''.concat(this.options.api.address, 'v3/?id=').concat(this.options.api.id, '&max=').concat(this.options.api.maximum);\n } else {\n apiurl = ''.concat(this.options.api.address, 'v3/?id=').concat(this.options.api.id);\n }\n var endpoints = (this.options.api.addition || []).slice(0);\n endpoints.push(apiurl);\n this.events && this.events.trigger('danmaku_load_start', endpoints);\n this._readAllEndpoints(endpoints, function (results) {\n _this.dan = [].concat.apply([], results).sort(function (a, b) {\n return a.time - b.time;\n });\n window.requestAnimationFrame(function () {\n _this.frame();\n });\n _this.options.callback();\n _this.events && _this.events.trigger('danmaku_load_end');\n });\n }\n },\n {\n key: 'reload',\n value: function reload(newAPI) {\n this.options.api = newAPI;\n this.dan = [];\n this.clear();\n this.load();\n }\n },\n {\n key: '_readAllEndpoints',\n value: function _readAllEndpoints(endpoints, callback) {\n var _this2 = this;\n var results = [];\n var readCount = 0;\n var _loop = function _loop(i) {\n _this2.options.apiBackend.read({\n url: endpoints[i],\n success: function success(data) {\n results[i] = data;\n ++readCount;\n if (readCount === endpoints.length) {\n callback(results);\n }\n },\n error: function error(msg) {\n _this2.options.error(msg || _this2.options.tran('danmaku-failed'));\n results[i] = [];\n ++readCount;\n if (readCount === endpoints.length) {\n callback(results);\n }\n }\n });\n };\n for (var i = 0; i < endpoints.length; ++i) {\n _loop(i);\n }\n }\n },\n {\n key: 'send',\n value: function send(dan, callback) {\n var _this3 = this;\n var danmakuData = {\n token: this.options.api.token,\n id: this.options.api.id,\n author: this.options.api.user,\n time: this.options.time(),\n text: dan.text,\n color: dan.color,\n type: dan.type\n };\n this.options.apiBackend.send({\n url: this.options.api.address + 'v3/',\n data: danmakuData,\n success: callback,\n error: function error(msg) {\n _this3.options.error(msg || _this3.options.tran('danmaku-failed'));\n }\n });\n this.dan.splice(this.danIndex, 0, danmakuData);\n this.danIndex++;\n var danmaku = {\n text: this.htmlEncode(danmakuData.text),\n color: danmakuData.color,\n type: danmakuData.type,\n border: '2px solid '.concat(this.options.borderColor)\n };\n this.draw(danmaku);\n this.events && this.events.trigger('danmaku_send', danmakuData);\n }\n },\n {\n key: 'frame',\n value: function frame() {\n var _this4 = this;\n if (this.dan.length && !this.paused && this.showing) {\n var item = this.dan[this.danIndex];\n var dan = [];\n while (item && this.options.time() > parseFloat(item.time)) {\n dan.push(item);\n item = this.dan[++this.danIndex];\n }\n this.draw(dan);\n }\n window.requestAnimationFrame(function () {\n _this4.frame();\n });\n }\n },\n {\n key: 'opacity',\n value: function opacity(percentage) {\n if (percentage !== undefined) {\n var items = this.container.getElementsByClassName('dplayer-danmaku-item');\n for (var i = 0; i < items.length; i++) {\n items[i].style.opacity = percentage;\n }\n this._opacity = percentage;\n this.events && this.events.trigger('danmaku_opacity', this._opacity);\n }\n return this._opacity;\n }\n },\n {\n key: 'draw',\n value: function draw(dan) {\n var _this5 = this;\n if (this.showing) {\n var itemHeight = this.options.height;\n var danWidth = this.container.offsetWidth;\n var danHeight = this.container.offsetHeight;\n var itemY = parseInt(danHeight / itemHeight);\n var danItemRight = function danItemRight(ele) {\n var eleWidth = ele.offsetWidth || parseInt(ele.style.width);\n var eleRight = ele.getBoundingClientRect().right || _this5.container.getBoundingClientRect().right + eleWidth;\n return _this5.container.getBoundingClientRect().right - eleRight;\n };\n var danSpeed = function danSpeed(width) {\n return (danWidth + width) / 5;\n };\n var getTunnel = function getTunnel(ele, type, width) {\n var tmp = danWidth / danSpeed(width);\n var _loop2 = function _loop2(i) {\n var item = _this5.danTunnel[type][i + ''];\n if (item && item.length) {\n if (type !== 'right') {\n return 0;\n }\n for (var j = 0; j < item.length; j++) {\n var danRight = danItemRight(item[j]) - 10;\n if (danRight <= danWidth - tmp * danSpeed(parseInt(item[j].style.width)) || danRight <= 0) {\n break;\n }\n if (j === item.length - 1) {\n _this5.danTunnel[type][i + ''].push(ele);\n ele.addEventListener('animationend', function () {\n _this5.danTunnel[type][i + ''].splice(0, 1);\n });\n return { v: i % itemY };\n }\n }\n } else {\n _this5.danTunnel[type][i + ''] = [ele];\n ele.addEventListener('animationend', function () {\n _this5.danTunnel[type][i + ''].splice(0, 1);\n });\n return { v: i % itemY };\n }\n }, _ret;\n for (var i = 0; _this5.unlimited || i < itemY; i++) {\n _ret = _loop2(i);\n if (_ret === 0)\n continue;\n if (_ret)\n return _ret.v;\n }\n return -1;\n };\n if (Object.prototype.toString.call(dan) !== '[object Array]') {\n dan = [dan];\n }\n var docFragment = document.createDocumentFragment();\n var _loop3 = function _loop3() {\n dan[i].type = utils.number2Type(dan[i].type);\n if (!dan[i].color) {\n dan[i].color = 16777215;\n }\n var item = document.createElement('div');\n item.classList.add('dplayer-danmaku-item');\n item.classList.add('dplayer-danmaku-'.concat(dan[i].type));\n if (dan[i].border) {\n item.innerHTML = '<span style=\"border:'.concat(dan[i].border, '\">').concat(dan[i].text, '</span>');\n } else {\n item.innerHTML = dan[i].text;\n }\n item.style.opacity = _this5._opacity;\n item.style.color = utils.number2Color(dan[i].color);\n item.addEventListener('animationend', function () {\n _this5.container.removeChild(item);\n });\n var itemWidth = _this5._measure(dan[i].text);\n var tunnel;\n switch (dan[i].type) {\n case 'right':\n tunnel = getTunnel(item, dan[i].type, itemWidth);\n if (tunnel >= 0) {\n item.style.width = itemWidth + 1 + 'px';\n item.style.top = itemHeight * tunnel + 'px';\n item.style.transform = 'translateX(-'.concat(danWidth, 'px)');\n }\n break;\n case 'top':\n tunnel = getTunnel(item, dan[i].type);\n if (tunnel >= 0) {\n item.style.top = itemHeight * tunnel + 'px';\n }\n break;\n case 'bottom':\n tunnel = getTunnel(item, dan[i].type);\n if (tunnel >= 0) {\n item.style.bottom = itemHeight * tunnel + 'px';\n }\n break;\n default:\n console.error('Can\\'t handled danmaku type: '.concat(dan[i].type));\n }\n if (tunnel >= 0) {\n item.classList.add('dplayer-danmaku-move');\n item.style.animationDuration = _this5._danAnimation(dan[i].type);\n docFragment.appendChild(item);\n }\n };\n for (var i = 0; i < dan.length; i++) {\n _loop3();\n }\n this.container.appendChild(docFragment);\n return docFragment;\n }\n }\n },\n {\n key: 'play',\n value: function play() {\n this.paused = false;\n }\n },\n {\n key: 'pause',\n value: function pause() {\n this.paused = true;\n }\n },\n {\n key: '_measure',\n value: function _measure(text) {\n if (!this.context) {\n var measureStyle = getComputedStyle(this.container.getElementsByClassName('dplayer-danmaku-item')[0], null);\n this.context = document.createElement('canvas').getContext('2d');\n this.context.font = measureStyle.getPropertyValue('font');\n }\n return this.context.measureText(text).width;\n }\n },\n {\n key: 'seek',\n value: function seek() {\n this.clear();\n for (var i = 0; i < this.dan.length; i++) {\n if (this.dan[i].time >= this.options.time()) {\n this.danIndex = i;\n break;\n }\n this.danIndex = this.dan.length;\n }\n }\n },\n {\n key: 'clear',\n value: function clear() {\n this.danTunnel = {\n right: {},\n top: {},\n bottom: {}\n };\n this.danIndex = 0;\n this.options.container.innerHTML = '';\n this.events && this.events.trigger('danmaku_clear');\n }\n },\n {\n key: 'htmlEncode',\n value: function htmlEncode(str) {\n return str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;').replace(/'/g, '&#x27;').replace(/\\//g, '&#x2f;');\n }\n },\n {\n key: 'resize',\n value: function resize() {\n var danWidth = this.container.offsetWidth;\n var items = this.container.getElementsByClassName('dplayer-danmaku-item');\n for (var i = 0; i < items.length; i++) {\n items[i].style.transform = 'translateX(-'.concat(danWidth, 'px)');\n }\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.showing = false;\n this.pause();\n this.clear();\n this.events && this.events.trigger('danmaku_hide');\n }\n },\n {\n key: 'show',\n value: function show() {\n this.seek();\n this.showing = true;\n this.play();\n this.events && this.events.trigger('danmaku_show');\n }\n },\n {\n key: 'unlimit',\n value: function unlimit(_boolean) {\n this.unlimited = _boolean;\n }\n },\n {\n key: 'speed',\n value: function speed(rate) {\n this.options.api.speedRate = rate;\n }\n },\n {\n key: '_danAnimation',\n value: function _danAnimation(position) {\n var rate = this.options.api.speedRate || 1;\n var isFullScreen = !!this.player.fullScreen.isFullScreen();\n var animations = {\n top: ''.concat((isFullScreen ? 6 : 4) / rate, 's'),\n right: ''.concat((isFullScreen ? 8 : 5) / rate, 's'),\n bottom: ''.concat((isFullScreen ? 6 : 4) / rate, 's')\n };\n return animations[position];\n }\n }\n ]);\n}();\nexport default Danmaku;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.videoEvents = [\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 'screenshot',\n 'thumbnails_show',\n 'thumbnails_hide',\n 'danmaku_show',\n 'danmaku_hide',\n 'danmaku_clear',\n 'danmaku_loaded',\n 'danmaku_send',\n 'danmaku_opacity',\n 'contextmenu_show',\n 'contextmenu_hide',\n 'notice_show',\n 'notice_hide',\n 'quality_start',\n 'quality_end',\n 'destroy',\n 'resize',\n 'fullscreen',\n 'fullscreen_cancel',\n 'webfullscreen',\n 'webfullscreen_cancel',\n 'subtitle_show',\n 'subtitle_hide',\n 'subtitle_change'\n ];\n }\n return _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.videoEvents.indexOf(name) !== -1) {\n return 'video';\n }\n console.error('Unknown event name: '.concat(name));\n return null;\n }\n }\n ]);\n}();\nexport default Events;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar FullScreen = function () {\n function FullScreen(player) {\n var _this = this;\n _classCallCheck(this, FullScreen);\n this.player = player;\n this.lastScrollPosition = {\n left: 0,\n top: 0\n };\n this.player.events.on('webfullscreen', function () {\n _this.player.resize();\n });\n this.player.events.on('webfullscreen_cancel', function () {\n _this.player.resize();\n utils.setScrollPosition(_this.lastScrollPosition);\n });\n this.fullscreenchange = function () {\n _this.player.resize();\n if (_this.isFullScreen('browser')) {\n _this.player.events.trigger('fullscreen');\n } else {\n utils.setScrollPosition(_this.lastScrollPosition);\n _this.player.events.trigger('fullscreen_cancel');\n }\n };\n this.docfullscreenchange = function () {\n var fullEle = document.fullscreenElement || document.mozFullScreenElement || document.msFullscreenElement;\n if (fullEle && fullEle !== _this.player.container) {\n return;\n }\n _this.player.resize();\n if (fullEle) {\n _this.player.events.trigger('fullscreen');\n } else {\n utils.setScrollPosition(_this.lastScrollPosition);\n _this.player.events.trigger('fullscreen_cancel');\n }\n };\n if (/Firefox/.test(navigator.userAgent)) {\n document.addEventListener('mozfullscreenchange', this.docfullscreenchange);\n document.addEventListener('fullscreenchange', this.docfullscreenchange);\n } else {\n this.player.container.addEventListener('fullscreenchange', this.fullscreenchange);\n this.player.container.addEventListener('webkitfullscreenchange', this.fullscreenchange);\n document.addEventListener('msfullscreenchange', this.docfullscreenchange);\n document.addEventListener('MSFullscreenChange', this.docfullscreenchange);\n }\n }\n return _createClass(FullScreen, [\n {\n key: 'isFullScreen',\n value: function isFullScreen() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n switch (type) {\n case 'browser':\n return document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement;\n case 'web':\n return this.player.container.classList.contains('dplayer-fulled');\n }\n }\n },\n {\n key: 'request',\n value: function request() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n var anotherType = type === 'browser' ? 'web' : 'browser';\n var anotherTypeOn = this.isFullScreen(anotherType);\n if (!anotherTypeOn) {\n this.lastScrollPosition = utils.getScrollPosition();\n }\n switch (type) {\n case 'browser':\n if (this.player.container.requestFullscreen) {\n this.player.container.requestFullscreen();\n } else if (this.player.container.mozRequestFullScreen) {\n this.player.container.mozRequestFullScreen();\n } else if (this.player.container.webkitRequestFullscreen) {\n this.player.container.webkitRequestFullscreen();\n } else if (this.player.video.webkitEnterFullscreen) {\n this.player.video.webkitEnterFullscreen();\n } else if (this.player.video.webkitEnterFullScreen) {\n this.player.video.webkitEnterFullScreen();\n } else if (this.player.container.msRequestFullscreen) {\n this.player.container.msRequestFullscreen();\n }\n break;\n case 'web':\n this.player.container.classList.add('dplayer-fulled');\n document.body.classList.add('dplayer-web-fullscreen-fix');\n this.player.events.trigger('webfullscreen');\n break;\n }\n if (anotherTypeOn) {\n this.cancel(anotherType);\n }\n }\n },\n {\n key: 'cancel',\n value: function cancel() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n switch (type) {\n case 'browser':\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n } else if (document.webkitCancelFullscreen) {\n document.webkitCancelFullscreen();\n } else if (document.msCancelFullScreen) {\n document.msCancelFullScreen();\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen();\n }\n break;\n case 'web':\n this.player.container.classList.remove('dplayer-fulled');\n document.body.classList.remove('dplayer-web-fullscreen-fix');\n this.player.events.trigger('webfullscreen_cancel');\n break;\n }\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n if (this.isFullScreen(type)) {\n this.cancel(type);\n } else {\n this.request(type);\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (/Firefox/.test(navigator.userAgent)) {\n document.removeEventListener('mozfullscreenchange', this.docfullscreenchange);\n document.removeEventListener('fullscreenchange', this.docfullscreenchange);\n } else {\n this.player.container.removeEventListener('fullscreenchange', this.fullscreenchange);\n this.player.container.removeEventListener('webkitfullscreenchange', this.fullscreenchange);\n document.removeEventListener('msfullscreenchange', this.docfullscreenchange);\n document.removeEventListener('MSFullscreenChange', this.docfullscreenchange);\n }\n }\n }\n ]);\n}();\nexport default FullScreen;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar User = function () {\n function User(player) {\n _classCallCheck(this, User);\n this.storageName = {\n opacity: 'dplayer-danmaku-opacity',\n volume: 'dplayer-volume',\n unlimited: 'dplayer-danmaku-unlimited',\n danmaku: 'dplayer-danmaku-show',\n subtitle: 'dplayer-subtitle-show'\n };\n this['default'] = {\n opacity: 0.7,\n volume: player.options.hasOwnProperty('volume') ? player.options.volume : 0.7,\n unlimited: (player.options.danmaku && player.options.danmaku.unlimited ? 1 : 0) || 0,\n danmaku: 1,\n subtitle: 1\n };\n this.data = {};\n this.init();\n }\n return _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(utils.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 utils.storage.set(this.storageName[key], value);\n }\n }\n ]);\n}();\nexport default User;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Subtitle = function () {\n function Subtitle(container, video, options, events) {\n _classCallCheck(this, Subtitle);\n this.container = container;\n this.video = video;\n this.options = options;\n this.events = events;\n this.init();\n }\n return _createClass(Subtitle, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.container.style.fontSize = this.options.fontSize;\n this.container.style.bottom = this.options.bottom;\n this.container.style.color = this.options.color;\n if (this.video.textTracks && this.video.textTracks[0]) {\n var track = this.video.textTracks[0];\n track.oncuechange = function () {\n var cue = track.activeCues[track.activeCues.length - 1];\n _this.container.innerHTML = '';\n if (cue) {\n var template = document.createElement('div');\n template.appendChild(cue.getCueAsHTML());\n var trackHtml = template.innerHTML.split(/\\r?\\n/).map(function (item) {\n return '<p>'.concat(item, '</p>');\n }).join('');\n _this.container.innerHTML = trackHtml;\n }\n _this.events.trigger('subtitle_change');\n };\n }\n }\n },\n {\n key: 'show',\n value: function show() {\n this.container.classList.remove('dplayer-subtitle-hide');\n this.events.trigger('subtitle_show');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.container.classList.add('dplayer-subtitle-hide');\n this.events.trigger('subtitle_hide');\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.container.classList.contains('dplayer-subtitle-hide')) {\n this.show();\n } else {\n this.hide();\n }\n }\n }\n ]);\n}();\nexport default Subtitle;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Subtitles = function () {\n function Subtitles(player) {\n var _this = this;\n _classCallCheck(this, Subtitles);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n this.player.template.subtitlesButton.addEventListener('click', function () {\n _this.adaptiveHeight();\n _this.show();\n });\n var lastItemIndex = this.player.template.subtitlesItem.length - 1;\n var _loop = function _loop(i) {\n _this.player.template.subtitlesItem[i].addEventListener('click', function () {\n _this.hide();\n if (_this.player.options.subtitle.index !== i) {\n _this.player.template.subtitle.innerHTML = '<p></p>';\n _this.player.template.subtrack.src = _this.player.template.subtitlesItem[i].dataset.subtitle;\n _this.player.options.subtitle.index = i;\n if (_this.player.template.subtitle.classList.contains('dplayer-subtitle-hide')) {\n _this.subContainerShow();\n }\n }\n });\n };\n for (var i = 0; i < lastItemIndex; i++) {\n _loop(i);\n }\n this.player.template.subtitlesItem[lastItemIndex].addEventListener('click', function () {\n _this.hide();\n if (_this.player.options.subtitle.index !== lastItemIndex) {\n _this.player.template.subtitle.innerHTML = '<p></p>';\n _this.player.template.subtrack.src = '';\n _this.player.options.subtitle.index = lastItemIndex;\n _this.subContainerHide();\n }\n });\n }\n return _createClass(Subtitles, [\n {\n key: 'subContainerShow',\n value: function subContainerShow() {\n this.player.template.subtitle.classList.remove('dplayer-subtitle-hide');\n this.player.events.trigger('subtitle_show');\n }\n },\n {\n key: 'subContainerHide',\n value: function subContainerHide() {\n this.player.template.subtitle.classList.add('dplayer-subtitle-hide');\n this.player.events.trigger('subtitle_hide');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.subtitlesBox.classList.remove('dplayer-subtitles-box-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.template.subtitlesBox.classList.add('dplayer-subtitles-box-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'adaptiveHeight',\n value: function adaptiveHeight() {\n var curBoxHeight = this.player.template.subtitlesItem.length * 30 + 14;\n var stdMaxHeight = this.player.template.videoWrap.offsetHeight * 0.8;\n if (curBoxHeight >= stdMaxHeight - 50) {\n this.player.template.subtitlesBox.style.bottom = '8px';\n this.player.template.subtitlesBox.style['max-height'] = stdMaxHeight - 8 + 'px';\n } else {\n this.player.template.subtitlesBox.style.bottom = '50px';\n this.player.template.subtitlesBox.style['max-height'] = stdMaxHeight - 50 + 'px';\n }\n }\n }\n ]);\n}();\nexport default Subtitles;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Bar = function () {\n function Bar(template) {\n _classCallCheck(this, Bar);\n this.elements = {};\n this.elements.volume = template.volumeBar;\n this.elements.played = template.playedBar;\n this.elements.loaded = template.loadedBar;\n this.elements.danmaku = template.danmakuOpacityBar;\n }\n return _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) {\n return parseFloat(this.elements[type].style.width) / 100;\n }\n }\n ]);\n}();\nexport default Bar;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\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 'info',\n 'fps'\n ];\n this.init();\n }\n return _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n if (item !== 'fps') {\n _this['init'.concat(item, 'Checker')]();\n }\n return item;\n });\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this2 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this2.enableloadingChecker) {\n currentPlayPos = _this2.player.video.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this2.player.video.paused) {\n _this2.player.container.classList.add('dplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this2.player.video.paused) {\n _this2.player.container.classList.remove('dplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'initfpsChecker',\n value: function initfpsChecker() {\n var _this3 = this;\n window.requestAnimationFrame(function () {\n if (_this3.enablefpsChecker) {\n _this3.initfpsChecker();\n if (!_this3.fpsStart) {\n _this3.fpsStart = new Date();\n _this3.fpsIndex = 0;\n } else {\n _this3.fpsIndex++;\n var fpsCurrent = new Date();\n if (fpsCurrent - _this3.fpsStart > 1000) {\n _this3.player.infoPanel.fps(_this3.fpsIndex / (fpsCurrent - _this3.fpsStart) * 1000);\n _this3.fpsStart = new Date();\n _this3.fpsIndex = 0;\n }\n }\n } else {\n _this3.fpsStart = 0;\n _this3.fpsIndex = 0;\n }\n });\n }\n },\n {\n key: 'initinfoChecker',\n value: function initinfoChecker() {\n var _this4 = this;\n this.infoChecker = setInterval(function () {\n if (_this4.enableinfoChecker) {\n _this4.player.infoPanel.update();\n }\n }, 1000);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable'.concat(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'.concat(type, 'Checker')] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this5 = this;\n this.types.map(function (item) {\n _this5['enable'.concat(item, 'Checker')] = false;\n _this5[''.concat(item, 'Checker')] && clearInterval(_this5[''.concat(item, 'Checker')]);\n return item;\n });\n }\n }\n ]);\n}();\nexport default Timer;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Bezel = function () {\n function Bezel(container) {\n var _this = this;\n _classCallCheck(this, Bezel);\n this.container = container;\n this.container.addEventListener('animationend', function () {\n _this.container.classList.remove('dplayer-bezel-transition');\n });\n }\n return _createClass(Bezel, [{\n key: 'switch',\n value: function _switch(icon) {\n this.container.innerHTML = icon;\n this.container.classList.add('dplayer-bezel-transition');\n }\n }]);\n}();\nexport default Bezel;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Thumbnails = function () {\n function Thumbnails(options) {\n _classCallCheck(this, Thumbnails);\n this.container = options.container;\n this.barWidth = options.barWidth;\n this.container.style.backgroundImage = 'url(\\''.concat(options.url, '\\')');\n this.events = options.events;\n }\n return _createClass(Thumbnails, [\n {\n key: 'resize',\n value: function resize(width, height, barWrapWidth) {\n this.container.style.width = ''.concat(width, 'px');\n this.container.style.height = ''.concat(height, 'px');\n this.container.style.top = ''.concat(-height + 2, 'px');\n this.barWidth = barWrapWidth;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.container.style.display = 'block';\n this.events && this.events.trigger('thumbnails_show');\n }\n },\n {\n key: 'move',\n value: function move(position) {\n this.container.style.backgroundPosition = '-'.concat((Math.ceil(position / this.barWidth * 100) - 1) * 160, 'px 0');\n this.container.style.left = ''.concat(Math.min(Math.max(position - this.container.offsetWidth / 2, -10), this.barWidth - 150), 'px');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.container.style.display = 'none';\n this.events && this.events.trigger('thumbnails_hide');\n }\n }\n ]);\n}();\nexport default Thumbnails;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nimport Thumbnails from './thumbnails';\nimport Icons from './icons';\nvar cast;\nvar runOnce = true;\nvar isCasting = false;\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.autoHideTimer = 0;\n if (!utils.isMobile) {\n this.setAutoHideHandler = this.setAutoHide.bind(this);\n this.player.container.addEventListener('mousemove', this.setAutoHideHandler);\n this.player.container.addEventListener('click', this.setAutoHideHandler);\n this.player.on('play', this.setAutoHideHandler);\n this.player.on('pause', this.setAutoHideHandler);\n }\n this.initPlayButton();\n this.initThumbnails();\n this.initPlayedBar();\n this.initFullButton();\n this.initQualityButton();\n this.initScreenshotButton();\n if (this.player.options.subtitle) {\n if (typeof this.player.options.subtitle.url === 'string') {\n this.initSubtitleButton();\n }\n }\n this.initHighlights();\n this.initAirplayButton();\n this.initChromecastButton();\n if (!utils.isMobile) {\n this.initVolumeButton();\n }\n }\n return _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.playButton.addEventListener('click', function () {\n _this.player.toggle();\n });\n this.player.template.mobilePlayButton.addEventListener('click', function () {\n _this.player.toggle();\n });\n if (!utils.isMobile) {\n if (!this.player.options.preventClickToggle) {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this.player.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n } else {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this.toggle();\n });\n }\n }\n },\n {\n key: 'initHighlights',\n value: function initHighlights() {\n var _this2 = this;\n this.player.on('durationchange', function () {\n if (_this2.player.video.duration !== 1 && _this2.player.video.duration !== Infinity) {\n if (_this2.player.options.highlight) {\n var highlights = _this2.player.template.playedBarWrap.querySelectorAll('.dplayer-highlight');\n [].slice.call(highlights, 0).forEach(function (item) {\n _this2.player.template.playedBarWrap.removeChild(item);\n });\n for (var i = 0; i < _this2.player.options.highlight.length; i++) {\n if (!_this2.player.options.highlight[i].text || !_this2.player.options.highlight[i].time) {\n continue;\n }\n var p = document.createElement('div');\n p.classList.add('dplayer-highlight');\n p.style.left = _this2.player.options.highlight[i].time / _this2.player.video.duration * 100 + '%';\n p.innerHTML = '<span class=\"dplayer-highlight-text\">' + _this2.player.options.highlight[i].text + '</span>';\n _this2.player.template.playedBarWrap.insertBefore(p, _this2.player.template.playedBarTime);\n }\n }\n }\n });\n }\n },\n {\n key: 'initThumbnails',\n value: function initThumbnails() {\n var _this3 = this;\n if (this.player.options.video.thumbnails) {\n this.thumbnails = new Thumbnails({\n container: this.player.template.barPreview,\n barWidth: this.player.template.barWrap.offsetWidth,\n url: this.player.options.video.thumbnails,\n events: this.player.events\n });\n this.player.on('loadedmetadata', function () {\n _this3.thumbnails.resize(160, _this3.player.video.videoHeight / _this3.player.video.videoWidth * 160, _this3.player.template.barWrap.offsetWidth);\n });\n }\n }\n },\n {\n key: 'initPlayedBar',\n value: function initPlayedBar() {\n var _this4 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this4.player.template.playedBarWrap)) / _this4.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.bar.set('played', percentage, 'width');\n _this4.player.template.ptime.innerHTML = utils.secondToTime(percentage * _this4.player.video.duration);\n };\n var _thumbUp = function thumbUp(e) {\n document.removeEventListener(utils.nameMap.dragEnd, _thumbUp);\n document.removeEventListener(utils.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this4.player.template.playedBarWrap)) / _this4.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.bar.set('played', percentage, 'width');\n _this4.player.seek(_this4.player.bar.get('played') * _this4.player.video.duration);\n _this4.player.moveBar = false;\n };\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragStart, function () {\n _this4.player.moveBar = true;\n document.addEventListener(utils.nameMap.dragMove, thumbMove);\n document.addEventListener(utils.nameMap.dragEnd, _thumbUp);\n });\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragMove, function (e) {\n if (_this4.player.video.duration) {\n var px = _this4.player.template.playedBarWrap.getBoundingClientRect().left;\n var tx = (e.clientX || e.changedTouches[0].clientX) - px;\n if (tx < 0 || tx > _this4.player.template.playedBarWrap.offsetWidth) {\n return;\n }\n var time = _this4.player.video.duration * (tx / _this4.player.template.playedBarWrap.offsetWidth);\n if (utils.isMobile) {\n _this4.thumbnails && _this4.thumbnails.show();\n }\n _this4.thumbnails && _this4.thumbnails.move(tx);\n _this4.player.template.playedBarTime.style.left = ''.concat(tx - (time >= 3600 ? 25 : 20), 'px');\n _this4.player.template.playedBarTime.innerText = utils.secondToTime(time);\n _this4.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragEnd, function () {\n if (utils.isMobile) {\n _this4.thumbnails && _this4.thumbnails.hide();\n }\n });\n if (!utils.isMobile) {\n this.player.template.playedBarWrap.addEventListener('mouseenter', function () {\n if (_this4.player.video.duration) {\n _this4.thumbnails && _this4.thumbnails.show();\n _this4.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener('mouseleave', function () {\n if (_this4.player.video.duration) {\n _this4.thumbnails && _this4.thumbnails.hide();\n _this4.player.template.playedBarTime.classList.add('hidden');\n }\n });\n }\n }\n },\n {\n key: 'initFullButton',\n value: function initFullButton() {\n var _this5 = this;\n this.player.template.browserFullButton.addEventListener('click', function () {\n _this5.player.fullScreen.toggle('browser');\n });\n this.player.template.webFullButton.addEventListener('click', function () {\n _this5.player.fullScreen.toggle('web');\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this6 = this;\n var vWidth = 35;\n var volumeMove = function volumeMove(event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this6.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this6.player.volume(percentage);\n };\n var _volumeUp = function volumeUp() {\n document.removeEventListener(utils.nameMap.dragEnd, _volumeUp);\n document.removeEventListener(utils.nameMap.dragMove, volumeMove);\n _this6.player.template.volumeButton.classList.remove('dplayer-volume-active');\n };\n this.player.template.volumeBarWrapWrap.addEventListener('click', function (event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this6.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this6.player.volume(percentage);\n });\n this.player.template.volumeBarWrapWrap.addEventListener(utils.nameMap.dragStart, function () {\n document.addEventListener(utils.nameMap.dragMove, volumeMove);\n document.addEventListener(utils.nameMap.dragEnd, _volumeUp);\n _this6.player.template.volumeButton.classList.add('dplayer-volume-active');\n });\n this.player.template.volumeButtonIcon.addEventListener('click', function () {\n if (_this6.player.video.muted) {\n _this6.player.video.muted = false;\n _this6.player.switchVolumeIcon();\n _this6.player.bar.set('volume', _this6.player.volume(), 'width');\n } else {\n _this6.player.video.muted = true;\n _this6.player.template.volumeIcon.innerHTML = Icons.volumeOff;\n _this6.player.bar.set('volume', 0, 'width');\n }\n });\n }\n },\n {\n key: 'initQualityButton',\n value: function initQualityButton() {\n var _this7 = this;\n if (this.player.options.video.quality) {\n this.player.template.qualityList.addEventListener('click', function (e) {\n if (e.target.classList.contains('dplayer-quality-item')) {\n _this7.player.switchQuality(e.target.dataset.index);\n }\n });\n }\n }\n },\n {\n key: 'initScreenshotButton',\n value: function initScreenshotButton() {\n var _this8 = this;\n if (this.player.options.screenshot) {\n this.player.template.camareButton.addEventListener('click', function () {\n var canvas = document.createElement('canvas');\n canvas.width = _this8.player.video.videoWidth;\n canvas.height = _this8.player.video.videoHeight;\n canvas.getContext('2d').drawImage(_this8.player.video, 0, 0, canvas.width, canvas.height);\n var dataURL;\n canvas.toBlob(function (blob) {\n dataURL = URL.createObjectURL(blob);\n var link = document.createElement('a');\n link.href = dataURL;\n link.download = 'DPlayer.png';\n link.style.display = 'none';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(dataURL);\n _this8.player.events.trigger('screenshot', dataURL);\n });\n });\n }\n }\n },\n {\n key: 'initAirplayButton',\n value: function initAirplayButton() {\n if (this.player.options.airplay) {\n if (window.WebKitPlaybackTargetAvailabilityEvent) {\n this.player.video.addEventListener('webkitplaybacktargetavailabilitychanged', function (event) {\n switch (event.availability) {\n case 'available':\n this.template.airplayButton.disable = false;\n break;\n default:\n this.template.airplayButton.disable = true;\n }\n this.template.airplayButton.addEventListener('click', function () {\n this.video.webkitShowPlaybackTargetPicker();\n }.bind(this));\n }.bind(this.player));\n } else {\n this.player.template.airplayButton.style.display = 'none';\n }\n }\n }\n },\n {\n key: 'initChromecast',\n value: function initChromecast() {\n var script = window.document.createElement('script');\n script.setAttribute('type', 'text/javascript');\n script.setAttribute('src', 'https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1');\n window.document.body.appendChild(script);\n window.__onGCastApiAvailable = function (isAvailable) {\n if (isAvailable) {\n cast = window.chrome.cast;\n var sessionRequest = new cast.SessionRequest(cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID);\n var apiConfig = new cast.ApiConfig(sessionRequest, function () {\n }, function (status) {\n if (status === cast.ReceiverAvailability.AVAILABLE) {\n console.log('chromecast: ', status);\n }\n });\n cast.initialize(apiConfig, function () {\n });\n }\n };\n }\n },\n {\n key: 'initChromecastButton',\n value: function initChromecastButton() {\n var _this9 = this;\n if (this.player.options.chromecast) {\n if (runOnce) {\n runOnce = false;\n this.initChromecast();\n }\n var discoverDevices = function discoverDevices() {\n cast.requestSession(function (s) {\n _this9.session = s;\n launchMedia(_this9.player.options.video.url);\n }, function (err) {\n if (err.code === 'cancel') {\n _this9.session = undefined;\n } else {\n console.error('Error selecting a cast device', err);\n }\n });\n };\n var launchMedia = function launchMedia(media) {\n var mediaInfo = new cast.media.MediaInfo(media);\n var request = new cast.media.LoadRequest(mediaInfo);\n if (!_this9.session) {\n window.open(media);\n return false;\n }\n _this9.session.loadMedia(request, onMediaDiscovered.bind(_this9, 'loadMedia'), onMediaError).play();\n return true;\n };\n var onMediaDiscovered = function onMediaDiscovered(how, media) {\n _this9.currentMedia = media;\n };\n var onMediaError = function onMediaError(err) {\n console.error('Error launching media', err);\n };\n this.player.template.chromecastButton.addEventListener('click', function () {\n if (isCasting) {\n isCasting = false;\n _this9.currentMedia.stop();\n _this9.session.stop();\n _this9.initChromecast();\n } else {\n isCasting = true;\n discoverDevices();\n }\n });\n }\n }\n },\n {\n key: 'initSubtitleButton',\n value: function initSubtitleButton() {\n var _this0 = this;\n this.player.events.on('subtitle_show', function () {\n _this0.player.template.subtitleButton.dataset.balloon = _this0.player.tran('hide-subs');\n _this0.player.template.subtitleButtonInner.style.opacity = '';\n _this0.player.user.set('subtitle', 1);\n });\n this.player.events.on('subtitle_hide', function () {\n _this0.player.template.subtitleButton.dataset.balloon = _this0.player.tran('show-subs');\n _this0.player.template.subtitleButtonInner.style.opacity = '0.4';\n _this0.player.user.set('subtitle', 0);\n });\n this.player.template.subtitleButton.addEventListener('click', function () {\n _this0.player.subtitle.toggle();\n });\n }\n },\n {\n key: 'setAutoHide',\n value: function setAutoHide() {\n var _this1 = this;\n this.show();\n clearTimeout(this.autoHideTimer);\n this.autoHideTimer = setTimeout(function () {\n if (!_this1.player.paused && !_this1.disableAutoHide) {\n _this1.hide();\n }\n }, 3000);\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.container.classList.remove('dplayer-hide-controller');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.container.classList.add('dplayer-hide-controller');\n this.player.setting.hide();\n this.player.setting.hideSpeedPanel();\n this.player.comment && this.player.comment.hide();\n }\n },\n {\n key: 'isShow',\n value: function isShow() {\n return !this.player.container.classList.contains('dplayer-hide-controller');\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.isShow()) {\n this.hide();\n } else {\n this.show();\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (!utils.isMobile) {\n this.player.container.removeEventListener('mousemove', this.setAutoHideHandler);\n this.player.container.removeEventListener('click', this.setAutoHideHandler);\n }\n clearTimeout(this.autoHideTimer);\n }\n }\n ]);\n}();\nexport default Controller;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Setting = function () {\n function Setting(player) {\n var _this = this;\n _classCallCheck(this, Setting);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n _this.hideSpeedPanel();\n });\n this.player.template.settingButton.addEventListener('click', function () {\n _this.show();\n });\n this.loop = this.player.options.loop;\n this.player.template.loopToggle.checked = this.loop;\n this.player.template.loop.addEventListener('click', function () {\n _this.player.template.loopToggle.checked = !_this.player.template.loopToggle.checked;\n if (_this.player.template.loopToggle.checked) {\n _this.loop = true;\n } else {\n _this.loop = false;\n }\n _this.hide();\n });\n this.showDanmaku = this.player.user.get('danmaku');\n if (!this.showDanmaku) {\n this.player.danmaku && this.player.danmaku.hide();\n }\n this.player.template.showDanmakuToggle.checked = this.showDanmaku;\n this.player.template.showDanmaku.addEventListener('click', function () {\n _this.player.template.showDanmakuToggle.checked = !_this.player.template.showDanmakuToggle.checked;\n if (_this.player.template.showDanmakuToggle.checked) {\n _this.showDanmaku = true;\n _this.player.danmaku.show();\n } else {\n _this.showDanmaku = false;\n _this.player.danmaku.hide();\n }\n _this.player.user.set('danmaku', _this.showDanmaku ? 1 : 0);\n _this.hide();\n });\n this.unlimitDanmaku = this.player.user.get('unlimited');\n this.player.template.unlimitDanmakuToggle.checked = this.unlimitDanmaku;\n this.player.template.unlimitDanmaku.addEventListener('click', function () {\n _this.player.template.unlimitDanmakuToggle.checked = !_this.player.template.unlimitDanmakuToggle.checked;\n if (_this.player.template.unlimitDanmakuToggle.checked) {\n _this.unlimitDanmaku = true;\n _this.player.danmaku.unlimit(true);\n } else {\n _this.unlimitDanmaku = false;\n _this.player.danmaku.unlimit(false);\n }\n _this.player.user.set('unlimited', _this.unlimitDanmaku ? 1 : 0);\n _this.hide();\n });\n this.player.template.speed.addEventListener('click', function () {\n _this.player.template.settingBox.classList.add('dplayer-setting-box-narrow');\n _this.player.template.settingBox.classList.add('dplayer-setting-box-speed');\n });\n var _loop = function _loop(i) {\n _this.player.template.speedItem[i].addEventListener('click', function () {\n _this.player.speed(_this.player.template.speedItem[i].dataset.speed);\n _this.updateSpeedPanelActive(_this.player.template.speedItem[i].dataset.speed);\n _this.hide();\n });\n };\n for (var i = 0; i < this.player.template.speedItem.length; i++) {\n _loop(i);\n }\n if (this.player.template.speedIndicator) {\n this.player.template.speedIndicator.addEventListener('click', function (e) {\n e.stopPropagation();\n _this.toggleSpeedPanel();\n });\n }\n if (this.player.template.speedPanel) {\n this.player.template.speedPanel.addEventListener('click', function (e) {\n e.stopPropagation();\n });\n }\n this.speedValues = this.player.options.playbackSpeed;\n this.currentSpeed = 1;\n this._positionSpeedTicks();\n this._updateSliderToSpeed(1);\n if (this.player.template.speedSliderTrack) {\n this.player.template.speedSliderTrack.addEventListener('click', function (e) {\n if (e.target === _this.player.template.speedSliderThumb) {\n return;\n }\n var rect = _this.player.template.speedSliderTrack.getBoundingClientRect();\n var x = e.clientX - rect.left;\n var percentage = Math.max(0, Math.min(1, x / rect.width));\n var speed = _this._getSpeedFromPercentage(percentage);\n _this.currentSpeed = speed;\n _this._updateSliderToSpeed(speed);\n _this.player.speed(speed);\n });\n }\n if (this.player.template.speedSliderThumb) {\n var lastDragSpeed = this.currentSpeed;\n var thumbDragStart = function thumbDragStart(e) {\n e.preventDefault();\n e.stopPropagation();\n lastDragSpeed = _this.currentSpeed;\n _this.player.template.speedSliderThumb.classList.add('dplayer-speed-slider-thumb-active');\n document.addEventListener(utils.nameMap.dragMove, thumbDragMove);\n document.addEventListener(utils.nameMap.dragEnd, _thumbDragEnd);\n };\n var thumbDragMove = function thumbDragMove(e) {\n var rect = _this.player.template.speedSliderTrack.getBoundingClientRect();\n var clientX = e.clientX || e.changedTouches && e.changedTouches[0].clientX;\n var percentage = (clientX - rect.left) / rect.width;\n percentage = Math.max(0, Math.min(1, percentage));\n var speed = _this._getSpeedFromPercentage(percentage);\n if (speed === lastDragSpeed) {\n return;\n }\n lastDragSpeed = speed;\n _this.currentSpeed = speed;\n var snappedPercentage = _this._getPercentageFromSpeed(speed);\n _this.player.template.speedSliderThumb.style.left = snappedPercentage * 100 + '%';\n _this.player.template.speedSliderFilled.style.width = snappedPercentage * 100 + '%';\n _this._highlightActivePreset(speed);\n _this.player.video.playbackRate = speed;\n _this.player._savedPlaybackRate = speed;\n if (_this.player.template.speedIndicator) {\n _this.player.template.speedIndicator.innerText = ''.concat(speed, 'x');\n }\n };\n var _thumbDragEnd = function thumbDragEnd() {\n document.removeEventListener(utils.nameMap.dragMove, thumbDragMove);\n document.removeEventListener(utils.nameMap.dragEnd, _thumbDragEnd);\n _this.player.template.speedSliderThumb.classList.remove('dplayer-speed-slider-thumb-active');\n _this.player.speed(_this.currentSpeed);\n };\n this.player.template.speedSliderThumb.addEventListener(utils.nameMap.dragStart, thumbDragStart);\n }\n var stepSpeed = function stepSpeed(delta) {\n var next = Math.round((_this.currentSpeed + delta) * 20) / 20;\n var min = _this.speedValues[0];\n var max = _this.speedValues[_this.speedValues.length - 1];\n var clamped = Math.min(max, Math.max(min, next));\n _this.currentSpeed = clamped;\n _this._updateSliderToSpeed(clamped);\n _this.player.speed(clamped);\n };\n if (this.player.template.speedSliderBtnMinus) {\n this.player.template.speedSliderBtnMinus.addEventListener('click', function (e) {\n e.stopPropagation();\n stepSpeed(-0.05);\n });\n }\n if (this.player.template.speedSliderBtnPlus) {\n this.player.template.speedSliderBtnPlus.addEventListener('click', function (e) {\n e.stopPropagation();\n stepSpeed(0.05);\n });\n }\n var _loop2 = function _loop2(_i) {\n _this.player.template.speedSliderLabels[_i].addEventListener('click', function () {\n var speed = _this.speedValues[_i];\n _this.currentSpeed = speed;\n _this._updateSliderToSpeed(speed);\n _this.player.speed(speed);\n });\n };\n for (var _i = 0; _i < this.player.template.speedSliderLabels.length; _i++) {\n _loop2(_i);\n }\n if (this.player.danmaku) {\n var dWidth = 130;\n this.player.on('danmaku_opacity', function (percentage) {\n _this.player.bar.set('danmaku', percentage, 'width');\n _this.player.user.set('opacity', percentage);\n });\n this.player.danmaku.opacity(this.player.user.get('opacity'));\n var danmakuMove = function danmakuMove(event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this.player.template.danmakuOpacityBarWrap)) / dWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this.player.danmaku.opacity(percentage);\n };\n var _danmakuUp = function danmakuUp() {\n document.removeEventListener(utils.nameMap.dragEnd, _danmakuUp);\n document.removeEventListener(utils.nameMap.dragMove, danmakuMove);\n _this.player.template.danmakuOpacityBox.classList.remove('dplayer-setting-danmaku-active');\n };\n this.player.template.danmakuOpacityBarWrapWrap.addEventListener('click', function (event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this.player.template.danmakuOpacityBarWrap)) / dWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this.player.danmaku.opacity(percentage);\n });\n this.player.template.danmakuOpacityBarWrapWrap.addEventListener(utils.nameMap.dragStart, function () {\n document.addEventListener(utils.nameMap.dragMove, danmakuMove);\n document.addEventListener(utils.nameMap.dragEnd, _danmakuUp);\n _this.player.template.danmakuOpacityBox.classList.add('dplayer-setting-danmaku-active');\n });\n }\n }\n return _createClass(Setting, [\n {\n key: 'hide',\n value: function hide() {\n var _this2 = this;\n this.player.template.settingBox.classList.remove('dplayer-setting-box-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n setTimeout(function () {\n _this2.player.template.settingBox.classList.remove('dplayer-setting-box-narrow');\n _this2.player.template.settingBox.classList.remove('dplayer-setting-box-speed');\n }, 300);\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.template.settingBox.classList.add('dplayer-setting-box-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'toggleSpeedPanel',\n value: function toggleSpeedPanel() {\n if (this.player.template.speedPanel.classList.contains('dplayer-speed-panel-open')) {\n this.hideSpeedPanel();\n } else {\n this.showSpeedPanel();\n }\n }\n },\n {\n key: 'showSpeedPanel',\n value: function showSpeedPanel() {\n this.hide();\n this.player.template.speedPanel.classList.add('dplayer-speed-panel-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'hideSpeedPanel',\n value: function hideSpeedPanel() {\n this.player.template.speedPanel.classList.remove('dplayer-speed-panel-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: '_positionSpeedTicks',\n value: function _positionSpeedTicks() {\n var count = this.speedValues.length;\n for (var i = 0; i < this.player.template.speedSliderTicks.length; i++) {\n var percent = count > 1 ? i / (count - 1) * 100 : 50;\n this.player.template.speedSliderTicks[i].style.left = percent + '%';\n }\n for (var _i2 = 0; _i2 < this.player.template.speedSliderLabels.length; _i2++) {\n var _percent = count > 1 ? _i2 / (count - 1) * 100 : 50;\n this.player.template.speedSliderLabels[_i2].style.left = _percent + '%';\n }\n }\n },\n {\n key: '_getSpeedFromPercentage',\n value: function _getSpeedFromPercentage(percentage) {\n var count = this.speedValues.length;\n if (count === 0) {\n return 1;\n }\n if (count === 1) {\n return this.speedValues[0];\n }\n var floatIndex = percentage * (count - 1);\n var lowerIndex = Math.floor(floatIndex);\n var upperIndex = Math.ceil(floatIndex);\n if (lowerIndex === upperIndex || upperIndex >= count) {\n return this.speedValues[Math.min(lowerIndex, count - 1)];\n }\n var fraction = floatIndex - lowerIndex;\n var speed = this.speedValues[lowerIndex] + (this.speedValues[upperIndex] - this.speedValues[lowerIndex]) * fraction;\n return Math.round(speed * 20) / 20;\n }\n },\n {\n key: '_getPercentageFromSpeed',\n value: function _getPercentageFromSpeed(speed) {\n var count = this.speedValues.length;\n if (count <= 1) {\n return 0.5;\n }\n if (speed <= this.speedValues[0]) {\n return 0;\n }\n if (speed >= this.speedValues[count - 1]) {\n return 1;\n }\n for (var i = 0; i < count - 1; i++) {\n if (speed >= this.speedValues[i] && speed <= this.speedValues[i + 1]) {\n var range = this.speedValues[i + 1] - this.speedValues[i];\n var fraction = range > 0 ? (speed - this.speedValues[i]) / range : 0;\n return (i + fraction) / (count - 1);\n }\n }\n return 0.5;\n }\n },\n {\n key: '_setSliderAt',\n value: function _setSliderAt(percentage, speed) {\n var percent = percentage * 100;\n if (this.player.template.speedSliderThumb) {\n this.player.template.speedSliderThumb.style.left = percent + '%';\n }\n if (this.player.template.speedSliderFilled) {\n this.player.template.speedSliderFilled.style.width = percent + '%';\n }\n this._highlightActivePreset(speed);\n }\n },\n {\n key: '_updateSliderToSpeed',\n value: function _updateSliderToSpeed(speed) {\n var percentage = this._getPercentageFromSpeed(speed);\n this._setSliderAt(percentage, speed);\n }\n },\n {\n key: '_highlightActivePreset',\n value: function _highlightActivePreset(speed) {\n var rounded = Math.round(speed * 20) / 20;\n for (var i = 0; i < this.player.template.speedSliderTicks.length; i++) {\n var tickSpeed = this.speedValues[i];\n if (tickSpeed <= rounded) {\n this.player.template.speedSliderTicks[i].classList.add('dplayer-speed-slider-tick-filled');\n } else {\n this.player.template.speedSliderTicks[i].classList.remove('dplayer-speed-slider-tick-filled');\n }\n if (tickSpeed === rounded) {\n this.player.template.speedSliderTicks[i].classList.add('dplayer-speed-slider-tick-active');\n } else {\n this.player.template.speedSliderTicks[i].classList.remove('dplayer-speed-slider-tick-active');\n }\n }\n for (var _i3 = 0; _i3 < this.player.template.speedSliderLabels.length; _i3++) {\n if (this.speedValues[_i3] === rounded) {\n this.player.template.speedSliderLabels[_i3].classList.add('dplayer-speed-slider-label-active');\n } else {\n this.player.template.speedSliderLabels[_i3].classList.remove('dplayer-speed-slider-label-active');\n }\n }\n }\n },\n {\n key: 'updateSpeedPanelActive',\n value: function updateSpeedPanelActive(speed) {\n var speedNum = parseFloat(speed);\n this.currentSpeed = speedNum;\n this._updateSliderToSpeed(speedNum);\n }\n }\n ]);\n}();\nexport default Setting;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Comment = function () {\n function Comment(player) {\n var _this = this;\n _classCallCheck(this, Comment);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n this.player.template.commentButton.addEventListener('click', function () {\n _this.show();\n });\n this.player.template.commentSettingButton.addEventListener('click', function () {\n _this.toggleSetting();\n });\n this.player.template.commentColorSettingBox.addEventListener('click', function () {\n var sele = _this.player.template.commentColorSettingBox.querySelector('input:checked+span');\n if (sele) {\n var color = _this.player.template.commentColorSettingBox.querySelector('input:checked').value;\n _this.player.template.commentSettingFill.style.fill = color;\n _this.player.template.commentInput.style.color = color;\n _this.player.template.commentSendFill.style.fill = color;\n }\n });\n this.player.template.commentInput.addEventListener('click', function () {\n _this.hideSetting();\n });\n this.player.template.commentInput.addEventListener('keydown', function (e) {\n var event = e || window.event;\n if (event.keyCode === 13) {\n _this.send();\n }\n });\n this.player.template.commentSendButton.addEventListener('click', function () {\n _this.send();\n });\n }\n return _createClass(Comment, [\n {\n key: 'show',\n value: function show() {\n this.player.controller.disableAutoHide = true;\n this.player.template.controller.classList.add('dplayer-controller-comment');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.container.classList.add('dplayer-show-controller');\n this.player.template.commentInput.focus();\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.controller.classList.remove('dplayer-controller-comment');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.container.classList.remove('dplayer-show-controller');\n this.player.controller.disableAutoHide = false;\n this.hideSetting();\n }\n },\n {\n key: 'showSetting',\n value: function showSetting() {\n this.player.template.commentSettingBox.classList.add('dplayer-comment-setting-open');\n }\n },\n {\n key: 'hideSetting',\n value: function hideSetting() {\n this.player.template.commentSettingBox.classList.remove('dplayer-comment-setting-open');\n }\n },\n {\n key: 'toggleSetting',\n value: function toggleSetting() {\n if (this.player.template.commentSettingBox.classList.contains('dplayer-comment-setting-open')) {\n this.hideSetting();\n } else {\n this.showSetting();\n }\n }\n },\n {\n key: 'send',\n value: function send() {\n var _this2 = this;\n this.player.template.commentInput.blur();\n if (!this.player.template.commentInput.value.replace(/^\\s+|\\s+$/g, '')) {\n this.player.notice(this.player.tran('please-input-danmaku'));\n return;\n }\n this.player.danmaku.send({\n text: this.player.template.commentInput.value,\n color: utils.color2Number(this.player.container.querySelector('.dplayer-comment-setting-color input:checked').value),\n type: parseInt(this.player.container.querySelector('.dplayer-comment-setting-type input:checked').value)\n }, function () {\n _this2.player.template.commentInput.value = '';\n _this2.hide();\n });\n }\n }\n ]);\n}();\nexport default Comment;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar HotKey = function () {\n function HotKey(player) {\n _classCallCheck(this, HotKey);\n this.player = player;\n this.doHotKeyHandler = this.doHotKey.bind(this);\n this.cancelFullScreenHandler = this.cancelFullScreen.bind(this);\n if (this.player.options.hotkey) {\n document.addEventListener('keydown', this.doHotKeyHandler);\n }\n document.addEventListener('keydown', this.cancelFullScreenHandler);\n }\n return _createClass(HotKey, [\n {\n key: 'takeScreenshot',\n value: function takeScreenshot() {\n var video = this.player.video;\n var canvas = document.createElement('canvas');\n canvas.width = video.videoWidth;\n canvas.height = video.videoHeight;\n var ctx = canvas.getContext('2d');\n ctx.drawImage(video, 0, 0, canvas.width, canvas.height);\n var time = video.currentTime;\n var h = String(Math.floor(time / 3600)).padStart(2, '0');\n var m = String(Math.floor(time % 3600 / 60)).padStart(2, '0');\n var s = String(Math.floor(time % 60)).padStart(2, '0');\n var timestamp = ''.concat(h, '-').concat(m, '-').concat(s);\n canvas.toBlob(function (blob) {\n var link = document.createElement('a');\n link.href = URL.createObjectURL(blob);\n link.download = 'screenshot_'.concat(timestamp, '.png');\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(link.href);\n });\n this.player.notice('Screenshot: '.concat(timestamp));\n }\n },\n {\n key: 'changeSpeed',\n value: function changeSpeed(delta) {\n var newRate = this.player.video.playbackRate + delta;\n newRate = Math.max(0.25, Math.min(2, newRate));\n newRate = Math.round(newRate * 100) / 100;\n this.player.speed(newRate);\n }\n },\n {\n key: 'resetSpeed',\n value: function resetSpeed() {\n this.player.speed(1);\n }\n },\n {\n key: 'seekToPercent',\n value: function seekToPercent(percent) {\n if (this.player.video.duration) {\n var time = percent / 100 * this.player.video.duration;\n this.player.seek(time, true);\n this.player.notice('Seek: '.concat(percent, '%'));\n }\n }\n },\n {\n key: 'doHotKey',\n value: function doHotKey(e) {\n if (this.player.focus || this.player.options.globalHotkey) {\n var tag = document.activeElement.tagName.toUpperCase();\n var editable = document.activeElement.getAttribute('contenteditable');\n if (tag === 'INPUT' || tag === 'TEXTAREA' || editable === '' || editable === 'true') {\n return;\n }\n var event = e || window.event;\n var key = event.key;\n var keyCode = event.keyCode;\n if (!event.ctrlKey && !event.altKey && key === '>') {\n event.preventDefault();\n this.changeSpeed(0.05);\n return;\n }\n if (!event.ctrlKey && !event.altKey && key === '<') {\n event.preventDefault();\n this.changeSpeed(-0.05);\n return;\n }\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && event.keyCode === 8) {\n event.preventDefault();\n this.resetSpeed();\n return;\n }\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && key.toLowerCase() === 'p') {\n event.preventDefault();\n this.takeScreenshot();\n return;\n }\n switch (keyCode) {\n case 32:\n event.preventDefault();\n this.player.toggle();\n break;\n case 37:\n event.preventDefault();\n if (this.player.options.live)\n break;\n this.player.seek(this.player.video.currentTime - 5);\n this.player.controller.setAutoHide();\n break;\n case 39:\n event.preventDefault();\n if (this.player.options.live)\n break;\n this.player.seek(this.player.video.currentTime + 5);\n this.player.controller.setAutoHide();\n break;\n case 38:\n event.preventDefault();\n this.player.volume(this.player.volume() + 0.1);\n break;\n case 40:\n event.preventDefault();\n this.player.volume(this.player.volume() - 0.1);\n break;\n case 13:\n if (event.location === 3) {\n event.preventDefault();\n this.resetSpeed();\n }\n break;\n default:\n this.handleLetterKeys(event, key);\n break;\n }\n }\n }\n },\n {\n key: 'handleLetterKeys',\n value: function handleLetterKeys(event, key) {\n var lowerKey = key.toLowerCase();\n switch (lowerKey) {\n case 'a':\n event.preventDefault();\n if (this.player.options.live)\n break;\n if (this.player.video.currentTime >= 5) {\n this.player.seek(this.player.video.currentTime - 5);\n } else {\n this.player.seek(0);\n }\n this.player.controller.setAutoHide();\n break;\n case 'd':\n event.preventDefault();\n if (this.player.options.live)\n break;\n if (this.player.video.duration && this.player.video.currentTime + 5 < this.player.video.duration) {\n this.player.seek(this.player.video.currentTime + 5);\n } else if (this.player.video.duration) {\n this.player.seek(this.player.video.duration - 1);\n }\n this.player.controller.setAutoHide();\n break;\n case 'f':\n event.preventDefault();\n if (this.player.fullScreen.isFullScreen('browser')) {\n this.player.fullScreen.cancel('browser');\n } else {\n this.player.fullScreen.request('browser');\n }\n break;\n case 'w':\n event.preventDefault();\n if (this.player.fullScreen.isFullScreen('web')) {\n this.player.fullScreen.cancel('web');\n } else {\n this.player.fullScreen.request('web');\n }\n break;\n case 'm':\n event.preventDefault();\n if (this.player.video.muted) {\n this.player.video.muted = false;\n this.player.notice('Unmuted');\n } else {\n this.player.video.muted = true;\n this.player.notice('Muted');\n }\n break;\n case '+':\n case '=':\n event.preventDefault();\n this.changeSpeed(0.05);\n break;\n case '-':\n event.preventDefault();\n this.changeSpeed(-0.05);\n break;\n case '0':\n case '1':\n case '2':\n case '3':\n case '4':\n case '5':\n case '6':\n case '7':\n case '8':\n case '9':\n event.preventDefault();\n if (!this.player.options.live) {\n this.seekToPercent(parseInt(lowerKey) * 10);\n }\n break;\n }\n }\n },\n {\n key: 'cancelFullScreen',\n value: function cancelFullScreen(e) {\n var event = e || window.event;\n if (event.keyCode === 27) {\n if (this.player.fullScreen.isFullScreen('web')) {\n this.player.fullScreen.cancel('web');\n }\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (this.player.options.hotkey) {\n document.removeEventListener('keydown', this.doHotKeyHandler);\n }\n document.removeEventListener('keydown', this.cancelFullScreenHandler);\n }\n }\n ]);\n}();\nexport default HotKey;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar ContextMenu = function () {\n function ContextMenu(player) {\n var _this = this;\n _classCallCheck(this, ContextMenu);\n this.player = player;\n this.shown = false;\n Array.prototype.slice.call(this.player.template.menuItem).forEach(function (item, index) {\n if (_this.player.options.contextmenu[index].click) {\n item.addEventListener('click', function () {\n _this.player.options.contextmenu[index].click(_this.player);\n _this.hide();\n });\n }\n });\n this.contextmenuHandler = function (e) {\n if (_this.shown) {\n _this.hide();\n return;\n }\n var event = e || window.event;\n event.preventDefault();\n var clientRect = _this.player.container.getBoundingClientRect();\n _this.show(event.clientX - clientRect.left, event.clientY - clientRect.top);\n _this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n };\n this.player.container.addEventListener('contextmenu', this.contextmenuHandler);\n }\n return _createClass(ContextMenu, [\n {\n key: 'show',\n value: function show(x, y) {\n this.player.template.menu.classList.add('dplayer-menu-show');\n var clientRect = this.player.container.getBoundingClientRect();\n if (x + this.player.template.menu.offsetWidth >= clientRect.width) {\n this.player.template.menu.style.right = clientRect.width - x + 'px';\n this.player.template.menu.style.left = 'initial';\n } else {\n this.player.template.menu.style.left = x + 'px';\n this.player.template.menu.style.right = 'initial';\n }\n if (y + this.player.template.menu.offsetHeight >= clientRect.height) {\n this.player.template.menu.style.bottom = clientRect.height - y + 'px';\n this.player.template.menu.style.top = 'initial';\n } else {\n this.player.template.menu.style.top = y + 'px';\n this.player.template.menu.style.bottom = 'initial';\n }\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.shown = true;\n this.player.events.trigger('contextmenu_show');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.template.menu.classList.remove('dplayer-menu-show');\n this.shown = false;\n this.player.events.trigger('contextmenu_hide');\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n this.player.container.removeEventListener('contextmenu', this.contextmenuHandler);\n }\n }\n ]);\n}();\nexport default ContextMenu;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar InfoPanel = function () {\n function InfoPanel(player) {\n var _this = this;\n _classCallCheck(this, InfoPanel);\n this.container = player.template.infoPanel;\n this.template = player.template;\n this.video = player.video;\n this.player = player;\n this.template.infoPanelClose.addEventListener('click', function () {\n _this.hide();\n });\n }\n return _createClass(InfoPanel, [\n {\n key: 'show',\n value: function show() {\n this.beginTime = Date.now();\n this.update();\n this.player.timer.enable('info');\n this.player.timer.enable('fps');\n this.container.classList.remove('dplayer-info-panel-hide');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.timer.disable('info');\n this.player.timer.disable('fps');\n this.container.classList.add('dplayer-info-panel-hide');\n }\n },\n {\n key: 'triggle',\n value: function triggle() {\n if (this.container.classList.contains('dplayer-info-panel-hide')) {\n this.show();\n } else {\n this.hide();\n }\n }\n },\n {\n key: 'update',\n value: function update() {\n this.template.infoVersion.innerHTML = 'v'.concat(DPLAYER_VERSION, ' ').concat(GIT_HASH);\n this.template.infoType.innerHTML = this.player.type;\n this.template.infoUrl.innerHTML = this.player.options.video.url;\n this.template.infoResolution.innerHTML = ''.concat(this.player.video.videoWidth, ' x ').concat(this.player.video.videoHeight);\n this.template.infoDuration.innerHTML = this.player.video.duration;\n if (this.player.options.danmaku) {\n this.template.infoDanmakuId.innerHTML = this.player.options.danmaku.id;\n this.template.infoDanmakuApi.innerHTML = this.player.options.danmaku.api;\n this.template.infoDanmakuAmount.innerHTML = this.player.danmaku.dan.length;\n }\n }\n },\n {\n key: 'fps',\n value: function fps(value) {\n this.template.infoFPS.innerHTML = ''.concat(value.toFixed(1));\n }\n }\n ]);\n}();\nexport default InfoPanel;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _readOnlyError(r) {\n throw new TypeError('\"' + r + '\" is read-only');\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport Promise from 'promise-polyfill';\nimport utils from './utils';\nimport handleOption from './options';\nimport { i18n } from './i18n';\nimport Template from './template';\nimport Icons from './icons';\nimport Danmaku from './danmaku';\nimport Events from './events';\nimport FullScreen from './fullscreen';\nimport User from './user';\nimport Subtitle from './subtitle';\nimport Subtitles from './subtitles';\nimport Bar from './bar';\nimport Timer from './timer';\nimport Bezel from './bezel';\nimport Controller from './controller';\nimport Setting from './setting';\nimport Comment from './comment';\nimport HotKey from './hotkey';\nimport ContextMenu from './contextmenu';\nimport InfoPanel from './info-panel';\nimport tplVideo from '../template/video.art';\nvar index = 0;\nvar instances = [];\nvar DPlayer = function () {\n function DPlayer(options) {\n var _this = this;\n _classCallCheck(this, DPlayer);\n this.options = handleOption(_objectSpread({ preload: options.video.type === 'webtorrent' ? 'none' : 'metadata' }, options));\n if (this.options.video.quality) {\n this.qualityIndex = this.options.video.defaultQuality;\n this.quality = this.options.video.quality[this.options.video.defaultQuality];\n }\n this.tran = new i18n(this.options.lang).tran;\n this.events = new Events();\n this.user = new User(this);\n this.container = this.options.container;\n this.noticeList = {};\n this.container.classList.add('dplayer');\n if (!this.options.danmaku) {\n this.container.classList.add('dplayer-no-danmaku');\n }\n if (this.options.live) {\n this.container.classList.add('dplayer-live');\n } else {\n this.container.classList.remove('dplayer-live');\n }\n if (utils.isMobile) {\n this.container.classList.add('dplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 500;\n if (this.arrow) {\n this.container.classList.add('dplayer-arrow');\n }\n if (this.options.subtitle) {\n if (Array.isArray(this.options.subtitle.url)) {\n var offSubtitle = {\n subtitle: '',\n lang: 'off'\n };\n this.options.subtitle.url.push(offSubtitle);\n if (this.options.subtitle.defaultSubtitle) {\n if (typeof this.options.subtitle.defaultSubtitle === 'string') {\n this.options.subtitle.index = this.options.subtitle.url.findIndex(function (sub) {\n return sub.lang === _this.options.subtitle.defaultSubtitle ? true : sub.name === _this.options.subtitle.defaultSubtitle ? true : false;\n });\n } else if (typeof this.options.subtitle.defaultSubtitle === 'number') {\n this.options.subtitle.index = this.options.subtitle.defaultSubtitle;\n }\n }\n if (this.options.subtitle.index === -1 || !this.options.subtitle.index || this.options.subtitle.index > this.options.subtitle.url.length - 1) {\n this.options.subtitle.index = this.options.subtitle.url.findIndex(function (sub) {\n return sub.lang === _this.options.lang;\n });\n }\n if (this.options.subtitle.index === -1) {\n this.options.subtitle.index = this.options.subtitle.url.length - 1;\n }\n }\n }\n this.template = new Template({\n container: this.container,\n options: this.options,\n index: index,\n tran: this.tran\n });\n this.video = this.template.video;\n this.bar = new Bar(this.template);\n this.bezel = new Bezel(this.template.bezel);\n this.fullScreen = new FullScreen(this);\n this.controller = new Controller(this);\n if (this.options.danmaku) {\n this.danmaku = new Danmaku({\n player: this,\n container: this.template.danmaku,\n opacity: this.user.get('opacity'),\n callback: function callback() {\n setTimeout(function () {\n _this.template.danmakuLoading.style.display = 'none';\n if (_this.options.autoplay) {\n _this.play();\n }\n }, 0);\n },\n error: function error(msg) {\n _this.notice(msg);\n },\n apiBackend: this.options.apiBackend,\n borderColor: this.options.theme,\n height: this.arrow ? 24 : 30,\n time: function time() {\n return _this.video.currentTime;\n },\n unlimited: this.user.get('unlimited'),\n api: {\n id: this.options.danmaku.id,\n address: this.options.danmaku.api,\n token: this.options.danmaku.token,\n maximum: this.options.danmaku.maximum,\n addition: this.options.danmaku.addition,\n user: this.options.danmaku.user,\n speedRate: this.options.danmaku.speedRate\n },\n events: this.events,\n tran: function tran(msg) {\n return _this.tran(msg);\n }\n });\n this.comment = new Comment(this);\n }\n this.setting = new Setting(this);\n this.plugins = {};\n if (this.options.globalHotkey) {\n this.focus = true;\n this.docClickFun = null;\n this.containerClickFun = null;\n } else {\n this.docClickFun = function () {\n _this.focus = false;\n };\n this.containerClickFun = function () {\n _this.focus = true;\n };\n document.addEventListener('click', this.docClickFun, true);\n this.container.addEventListener('click', this.containerClickFun, true);\n }\n this.paused = true;\n this.timer = new Timer(this);\n this.hotkey = new HotKey(this);\n this.contextmenu = new ContextMenu(this);\n this.initVideo(this.video, this.quality && this.quality.type || this.options.video.type);\n this.infoPanel = new InfoPanel(this);\n if (!this.danmaku && this.options.autoplay) {\n this.play();\n }\n this.moveBar = false;\n index++;\n instances.push(this);\n }\n return _createClass(DPlayer, [\n {\n key: 'seek',\n value: function seek(time) {\n var nonotice = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n time = Math.max(time, 0);\n if (this.video.duration) {\n time = Math.min(time, this.video.duration);\n }\n if (!nonotice) {\n var timeText = utils.secondToTime(time);\n var durationText = this.video.duration ? utils.secondToTime(this.video.duration) : '00:00';\n this.notice(''.concat(timeText, ' / ').concat(durationText));\n }\n this.video.currentTime = time;\n if (this.danmaku) {\n this.danmaku.seek();\n }\n this.bar.set('played', time / this.video.duration, 'width');\n this.template.ptime.innerHTML = utils.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play(fromNative) {\n var _this2 = this;\n this.paused = false;\n if (this.video.paused && !utils.isMobile) {\n this.bezel['switch'](Icons.play);\n }\n this.template.playButton.innerHTML = Icons.pause;\n this.template.mobilePlayButton.innerHTML = Icons.pause;\n if (!fromNative) {\n var playedPromise = Promise.resolve(this.video.play());\n playedPromise['catch'](function () {\n _this2.pause();\n }).then(function () {\n });\n }\n this.timer.enable('loading');\n this.container.classList.remove('dplayer-paused');\n this.container.classList.add('dplayer-playing');\n if (this.danmaku) {\n this.danmaku.play();\n }\n if (this.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (this !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n }\n },\n {\n key: 'pause',\n value: function pause(fromNative) {\n this.paused = true;\n this.container.classList.remove('dplayer-loading');\n if (!this.video.paused && !utils.isMobile) {\n this.bezel['switch'](Icons.pause);\n }\n this.template.playButton.innerHTML = Icons.play;\n this.template.mobilePlayButton.innerHTML = Icons.play;\n if (!fromNative) {\n this.video.pause();\n }\n this.timer.disable('loading');\n this.container.classList.remove('dplayer-playing');\n this.container.classList.add('dplayer-paused');\n if (this.danmaku) {\n this.danmaku.pause();\n }\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeIcon.innerHTML = Icons.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeIcon.innerHTML = Icons.volumeDown;\n } else {\n this.template.volumeIcon.innerHTML = Icons.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage, nonotice) {\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, 'width');\n var formatPercentage = ''.concat((percentage * 100).toFixed(0), '%');\n this.template.volumeBarWrapWrap.dataset.balloon = formatPercentage;\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n if (!nonotice) {\n this.notice(''.concat(this.tran('volume'), ' ').concat((percentage * 100).toFixed(0), '%'), undefined, undefined, 'volume');\n }\n this.video.volume = percentage;\n if (this.video.muted) {\n this.video.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.video.volume;\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.video.paused) {\n this.play();\n } else {\n this.pause();\n }\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'switchVideo',\n value: function switchVideo(video, danmakuAPI) {\n this.pause();\n this.video.poster = video.pic ? video.pic : '';\n this.video.src = video.url;\n this.initMSE(this.video, video.type || 'auto');\n if (danmakuAPI) {\n this.template.danmakuLoading.style.display = 'block';\n this.bar.set('played', 0, 'width');\n this.bar.set('loaded', 0, 'width');\n this.template.ptime.innerHTML = '00:00';\n this.template.danmaku.innerHTML = '';\n if (this.danmaku) {\n this.danmaku.reload({\n id: danmakuAPI.id,\n address: danmakuAPI.api,\n token: danmakuAPI.token,\n maximum: danmakuAPI.maximum,\n addition: danmakuAPI.addition,\n user: danmakuAPI.user\n });\n }\n }\n }\n },\n {\n key: 'initMSE',\n value: function initMSE(video, type) {\n var _this3 = this;\n this.type = type;\n if (this.options.video.customType && this.options.video.customType[type]) {\n if (Object.prototype.toString.call(this.options.video.customType[type]) === '[object Function]') {\n this.options.video.customType[type](this.video, this);\n } else {\n console.error('Illegal customType: '.concat(type));\n }\n } else {\n if (this.type === 'auto') {\n if (/m3u8(#|\\?|$)/i.exec(video.src)) {\n this.type = 'hls';\n } else if (/.flv(#|\\?|$)/i.exec(video.src)) {\n this.type = 'flv';\n } else if (/.mpd(#|\\?|$)/i.exec(video.src)) {\n this.type = 'dash';\n } else {\n this.type = 'normal';\n }\n }\n if (this.type === 'hls' && (video.canPlayType('application/x-mpegURL') || video.canPlayType('application/vnd.apple.mpegURL'))) {\n this.type = 'normal';\n }\n switch (this.type) {\n case 'hls':\n if (window.Hls) {\n if (window.Hls.isSupported()) {\n var options = this.options.pluginOptions.hls;\n var hls = new window.Hls(options);\n this.plugins.hls = hls;\n hls.loadSource(video.src);\n hls.attachMedia(video);\n this.events.on('destroy', function () {\n hls.destroy();\n delete _this3.plugins.hls;\n });\n } else {\n this.notice('Error: Hls is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find Hls.');\n }\n break;\n case 'flv':\n if (window.flvjs) {\n if (window.flvjs.isSupported()) {\n var flvPlayer = window.flvjs.createPlayer(Object.assign(this.options.pluginOptions.flv.mediaDataSource || {}, {\n type: 'flv',\n url: video.src\n }), this.options.pluginOptions.flv.config);\n this.plugins.flvjs = flvPlayer;\n flvPlayer.attachMediaElement(video);\n flvPlayer.load();\n this.events.on('destroy', function () {\n flvPlayer.unload();\n flvPlayer.detachMediaElement();\n flvPlayer.destroy();\n delete _this3.plugins.flvjs;\n });\n } else {\n this.notice('Error: flvjs is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find flvjs.');\n }\n break;\n case 'dash':\n if (window.dashjs) {\n var dashjsPlayer = window.dashjs.MediaPlayer().create();\n dashjsPlayer.initialize(video, video.src, false, 0);\n var _options = this.options.pluginOptions.dash;\n dashjsPlayer.updateSettings(_options);\n this.plugins.dash = dashjsPlayer;\n this.events.on('destroy', function () {\n window.dashjs.MediaPlayer().reset();\n delete _this3.plugins.dash;\n });\n } else {\n this.notice('Error: Can\\'t find dashjs.');\n }\n break;\n case 'webtorrent':\n if (window.WebTorrent) {\n if (window.WebTorrent.WEBRTC_SUPPORT) {\n this.container.classList.add('dplayer-loading');\n var _options2 = this.options.pluginOptions.webtorrent;\n var client = new window.WebTorrent(_options2);\n this.plugins.webtorrent = client;\n var torrentId = video.src;\n video.src = '';\n video.preload = 'metadata';\n video.addEventListener('durationchange', function () {\n return _this3.container.classList.remove('dplayer-loading');\n }, { once: true });\n client.add(torrentId, function (torrent) {\n var file = torrent.files.find(function (file) {\n return file.name.endsWith('.mp4');\n });\n file.renderTo(_this3.video, {\n autoplay: _this3.options.autoplay,\n controls: false\n });\n });\n this.events.on('destroy', function () {\n client.remove(torrentId);\n client.destroy();\n delete _this3.plugins.webtorrent;\n });\n } else {\n this.notice('Error: Webtorrent is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find Webtorrent.');\n }\n break;\n }\n }\n }\n },\n {\n key: 'initVideo',\n value: function initVideo(video, type) {\n var _this4 = this;\n this.initMSE(video, type);\n this.on('durationchange', function () {\n if (video.duration !== 1 && video.duration !== Infinity) {\n _this4.template.dtime.innerHTML = utils.secondToTime(video.duration);\n }\n });\n this.on('progress', function () {\n var percentage = video.buffered.length ? video.buffered.end(video.buffered.length - 1) / video.duration : 0;\n _this4.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n if (!_this4.video.error) {\n return;\n }\n _this4.tran && _this4.notice && _this4.type !== 'webtorrent' && _this4.notice(_this4.tran('video-failed'));\n });\n this.on('ended', function () {\n _this4.bar.set('played', 1, 'width');\n if (!_this4.setting.loop) {\n _this4.pause();\n } else {\n _this4.seek(0);\n _this4.play();\n }\n if (_this4.danmaku) {\n _this4.danmaku.danIndex = 0;\n }\n });\n this.on('play', function () {\n if (_this4.paused) {\n _this4.play(true);\n }\n });\n this.on('pause', function () {\n if (!_this4.paused) {\n _this4.pause(true);\n }\n });\n this.on('ratechange', function () {\n if (_this4._savedPlaybackRate && _this4.video.playbackRate !== _this4._savedPlaybackRate) {\n var targetRate = _this4._savedPlaybackRate;\n setTimeout(function () {\n if (_this4._savedPlaybackRate === targetRate && _this4.video.playbackRate !== targetRate) {\n _this4.video.playbackRate = targetRate;\n }\n }, 0);\n }\n });\n this.on('timeupdate', function () {\n if (!_this4.moveBar) {\n _this4.bar.set('played', _this4.video.currentTime / _this4.video.duration, 'width');\n }\n var currentTime = utils.secondToTime(_this4.video.currentTime);\n if (_this4.template.ptime.innerHTML !== currentTime) {\n _this4.template.ptime.innerHTML = currentTime;\n }\n });\n var _loop = function _loop(i) {\n video.addEventListener(_this4.events.videoEvents[i], function (e) {\n _this4.events.trigger(_this4.events.videoEvents[i], e);\n });\n };\n for (var i = 0; i < this.events.videoEvents.length; i++) {\n _loop(i);\n }\n this.volume(this.user.get('volume'), true, true);\n if (this.options.subtitle) {\n this.subtitle = new Subtitle(this.template.subtitle, this.video, this.options.subtitle, this.events);\n if (Array.isArray(this.options.subtitle.url)) {\n this.subtitles = new Subtitles(this);\n }\n if (!this.user.get('subtitle')) {\n this.subtitle.hide();\n }\n }\n }\n },\n {\n key: 'switchQuality',\n value: function switchQuality(index) {\n var _this5 = this;\n index = typeof index === 'string' ? parseInt(index) : index;\n if (this.qualityIndex === index || this.switchingQuality) {\n return;\n } else {\n this.prevIndex = this.qualityIndex;\n this.qualityIndex = index;\n }\n this.switchingQuality = true;\n this.quality = this.options.video.quality[index];\n this.template.qualityButton.innerHTML = this.quality.name;\n var paused = this.video.paused;\n this.video.pause();\n var videoHTML = tplVideo({\n current: false,\n pic: null,\n screenshot: this.options.screenshot,\n preload: 'auto',\n url: this.quality.url,\n subtitle: this.options.subtitle\n });\n var videoEle = new DOMParser().parseFromString(videoHTML, 'text/html').body.firstChild;\n this.template.videoWrap.insertBefore(videoEle, this.template.videoWrap.getElementsByTagName('div')[0]);\n this.prevVideo = this.video;\n this.video = videoEle;\n this.initVideo(this.video, this.quality.type || this.options.video.type);\n this.seek(this.prevVideo.currentTime);\n this.notice(''.concat(this.tran('switching-quality').replace('%q', this.quality.name)), -1, undefined, 'switch-quality');\n this.events.trigger('quality_start', this.quality);\n this.on('canplay', function () {\n if (_this5.prevVideo) {\n if (_this5.video.currentTime !== _this5.prevVideo.currentTime) {\n _this5.seek(_this5.prevVideo.currentTime);\n return;\n }\n _this5.template.videoWrap.removeChild(_this5.prevVideo);\n _this5.video.classList.add('dplayer-video-current');\n if (!paused) {\n _this5.video.play();\n }\n _this5.prevVideo = null;\n _this5.notice(''.concat(_this5.tran('switched-quality').replace('%q', _this5.quality.name)), undefined, undefined, 'switch-quality');\n _this5.switchingQuality = false;\n _this5.events.trigger('quality_end');\n }\n });\n this.on('error', function () {\n if (!_this5.video.error) {\n return;\n }\n if (_this5.prevVideo) {\n _this5.template.videoWrap.removeChild(_this5.video);\n _this5.video = _this5.prevVideo;\n if (!paused) {\n _this5.video.play();\n }\n _this5.qualityIndex = _this5.prevIndex;\n _this5.quality = _this5.options.video.quality[_this5.qualityIndex];\n _this5.noticeTime = setTimeout(function () {\n _this5.template.notice.style.opacity = 0;\n _this5.events.trigger('notice_hide');\n }, 3000);\n _this5.prevVideo = null;\n _this5.switchingQuality = false;\n }\n });\n }\n },\n {\n key: 'notice',\n value: function notice(text) {\n var time = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000;\n var opacity = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.8;\n var id = arguments.length > 3 ? arguments[3] : undefined;\n var noticeListEl = this.template.noticeList;\n if (noticeListEl) {\n while (noticeListEl.firstChild) {\n noticeListEl.removeChild(noticeListEl.firstChild);\n }\n for (var key in this.noticeList) {\n if (this.noticeList[key]) {\n clearTimeout(this.noticeList[key]);\n this.noticeList[key] = null;\n }\n }\n }\n var notice = Template.NewNotice(text, opacity, id);\n this.template.noticeList.appendChild(notice);\n this.events.trigger('notice_show', notice);\n if (time > 0) {\n this.noticeList[id] = setTimeout(function (e, dp) {\n return function () {\n e.addEventListener('animationend', function () {\n if (e.parentNode) {\n dp.template.noticeList.removeChild(e);\n }\n });\n e.classList.add('remove-notice');\n dp.events.trigger('notice_hide');\n dp.noticeList[id] = null;\n };\n }(notice, this), time);\n }\n }\n },\n {\n key: 'resize',\n value: function resize() {\n if (this.danmaku) {\n this.danmaku.resize();\n }\n if (this.controller.thumbnails) {\n this.controller.thumbnails.resize(160, this.video.videoHeight / this.video.videoWidth * 160, this.template.barWrap.offsetWidth);\n }\n this.events.trigger('resize');\n }\n },\n {\n key: 'speed',\n value: function speed(rate) {\n this._savedPlaybackRate = rate;\n this.video.playbackRate = rate;\n if (this.template.speedIndicator) {\n this.template.speedIndicator.innerText = ''.concat(rate, 'x');\n }\n if (this.setting) {\n this.setting.updateSpeedPanelActive(rate);\n }\n this.notice('Speed: '.concat(rate, 'x'));\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n instances.splice(instances.indexOf(this), 1);\n this.pause();\n document.removeEventListener('click', this.docClickFun, true);\n this.container.removeEventListener('click', this.containerClickFun, true);\n this.fullScreen.destroy();\n this.hotkey.destroy();\n this.contextmenu.destroy();\n this.controller.destroy();\n this.timer.destroy();\n this.video.src = '';\n this.container.innerHTML = '';\n this.events.trigger('destroy');\n }\n }\n ], [{\n key: 'version',\n get: function get() {\n return DPLAYER_VERSION;\n }\n }]);\n}();\nexport default DPlayer;","import '../css/index.less';\nimport DPlayer from './player';\nconsole.log('\\n'.concat(' %c DPlayer v', DPLAYER_VERSION, ' ').concat(GIT_HASH, ' %c https://github.com/Fluxonide/dplayer-enhanced ', '\\n', '\\n'), 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexport default DPlayer;"],"names":["root","factory","exports","module","define","amd","self","styleElement","nonce","setAttribute","stylesInDOM","getIndexByIdentifier","identifier","result","i","length","modulesToDom","list","options","idCountMap","identifiers","item","id","base","count","concat","indexByIdentifier","obj","css","media","sourceMap","supports","layer","references","updater","addElementStyle","byIndex","splice","push","api","domAPI","update","newObj","remove","lastIdentifiers","newList","index","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","removeChild","appendChild","document","createTextNode","globalThis","window","g","runtime","Object","create","ESCAPE_REG","toString","value","call","JSON","stringify","$escape","content","html","regexResult","exec","lastIndex","_char","charCodeAt","substring","xmlEscape","$each","data","callback","Array","isArray","len","element","createElement","setAttributes","attributes","insert","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","memo","style","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","e","getTarget","Error","cssMapping","btoa","base64","unescape","encodeURIComponent","sourceMapping","join","cssWithMappingToString","this","map","needLayer","modules","dedupe","undefined","alreadyImportedModules","k","_k","insertStyleElement","styleTagTransform","apply","parentNode","removeStyleElement","url","String","__esModule","test","slice","hash","needQuotes","replace","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","m","n","getter","d","a","definition","key","o","defineProperty","enumerable","get","Function","prop","prototype","hasOwnProperty","b","baseURI","location","href","nc","locals","_typeof","Symbol","iterator","constructor","AggregateError","errors","message","name","setTimeoutFunc","setTimeout","x","Boolean","noop","fn","TypeError","_state","_handled","_value","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","reject","promise","resolve","newValue","then","finale","thisArg","arguments","_unhandledRejectionFn","Handler","done","reason","ex","prom","all","arr","args","remaining","res","val","any","P","rejectionReasons","error","allSettled","status","race","setImmediate","err","console","warn","isMobile","navigator","userAgent","secondToTime","second","Infinity","hour","Math","floor","min","sec","num","getElementViewLeft","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","body","scrollLeft","documentElement","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getBoundingClientRectViewLeft","scrollTop","scrollY","pageYOffset","getBoundingClientRect","offset","temp","top","rect","left","getScrollPosition","pageXOffset","setScrollPosition","_ref","_ref$left","_ref$top","isFirefox","scrollTo","isChrome","isSafari","storage","set","localStorage","setItem","getItem","nameMap","dragStart","dragMove","dragEnd","color2Number","color","substr","parseInt","number2Color","number","number2Type","cache","getPrototypeOf","kindOf","thing","str","toLowerCase","kindOfTest","type","typeOfTest","isUndefined","isArrayBuffer","isString","isFunction","isNumber","isObject","isPlainObject","toStringTag","isDate","isFile","isBlob","isFileList","isURLSearchParams","forEach","l","_ref$allOwnKeys","allOwnKeys","keys","getOwnPropertyNames","findKey","_key","TypedArray","_global","isContextDefined","context","isTypedArray","Uint8Array","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","descriptor","defineProperties","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","toUpperCase","isAsyncFn","isBuffer","isFormData","kind","FormData","append","isArrayBufferView","ArrayBuffer","isView","buffer","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","extend","trim","stripBOM","inherits","superConstructor","props","assign","toFlatObject","sourceObj","destObj","filter","propFilter","merged","endsWith","searchString","position","indexOf","toArray","forEachEntry","next","pair","matchAll","regExp","matches","hasOwnProp","freezeMethods","writable","toObjectSet","arrayOrString","delimiter","split","toCamelCase","p1","p2","toFiniteNumber","defaultValue","Number","isFinite","global","generateString","size","alphabet","random","isSpecCompliantForm","toJSONObject","stack","_visit","source","reducedValue","isThenable","AxiosError","code","config","request","response","captureStackTrace","toJSON","description","fileName","lineNumber","columnNumber","from","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","path","dots","token","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","toISOString","Buffer","some","isFlatArray","el","exposedHelpers","build","pop","encode","charMap","match","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","serializedParams","serializeFn","serialize","hashmarkIndex","_defineProperties","r","t","configurable","_toPropertyKey","toPrimitive","_toPrimitive","InterceptorManager","_classCallCheck","handlers","fulfilled","rejected","synchronous","runWhen","h","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","product","isBrowser","classes","URLSearchParams","isStandardBrowserEnv","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","protocols","buildPath","isNumericKey","isLast","arrayToObject","entries","parsePropPath","DEFAULT_CONTENT_TYPE","defaults","transitional","adapter","transformRequest","headers","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","env","rawValue","parse","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","method","ignoreDuplicateOf","_arrayLikeToArray","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_header","_rewrite","lHeader","rawHeaders","parsed","setHeaders","line","parser","tokens","tokensRE","parseTokens","matcher","deleted","deleteHeader","format","normalized","w","formatHeader","_this$constructor","_len","targets","asStrings","_ref2","_arrayWithHoles","u","f","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_slicedToArray","first","computed","_len2","_key2","accessors","defineAccessor","accessorName","methodName","arg1","arg2","arg3","buildAccessors","accessor","transformData","fns","normalize","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","write","expires","domain","secure","cookie","Date","toGMTString","read","RegExp","decodeURIComponent","now","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","originURL","msie","urlParsingNode","resolveURL","protocol","host","search","hostname","port","pathname","charAt","requestURL","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","samplesCount","firstSampleTS","bytes","timestamps","tail","chunkLength","startedAt","bytesCount","passed","round","loaded","total","lengthComputable","progressBytes","rate","progress","estimated","event","XMLHttpRequest","Promise","onCanceled","requestData","requestHeaders","cancelToken","unsubscribe","signal","removeEventListener","auth","username","password","fullPath","onloadend","responseHeaders","getAllResponseHeaders","ERR_BAD_REQUEST","settle","responseText","statusText","open","paramsSerializer","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","xsrfValue","withCredentials","isURLSameOrigin","cookies","setRequestHeader","onDownloadProgress","addEventListener","onUploadProgress","upload","cancel","abort","subscribe","aborted","send","knownAdapters","http","xhr","throwIfCancellationRequested","throwIfRequested","dispatchRequest","adapters","nameOrAdapter","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","_config","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","chain","bind","newConfig","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","c","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","instance","VERSION","toFormData","Cancel","promises","spread","isAxiosError","payload","formToJSON","post","success","msg","time","author","text","i18n","lang","_this","fallbackLang","includes","tran","tranTxt","standard","bottom","rolling","loop","speed","normal","ff","rew","setting","fullscreen","screenshot","airplay","chromecast","subtitle","off","volume","live","en","Volume","de","quality","play","pause","volumeUp","volumeDown","volumeOff","full","fullWeb","right","comment","commentOff","pallette","camera","loading","Template","container","init","innerHTML","icons","mobile","video","pic","preload","volumeBar","volumeBarWrap","volumeBarWrapWrap","volumeButton","volumeButtonIcon","volumeIcon","playedBar","loadedBar","playedBarWrap","playedBarTime","danmaku","danmakuLoading","bezel","playButton","mobilePlayButton","videoWrap","controllerMask","ptime","settingButton","settingBox","mask","loopToggle","showDanmaku","showDanmakuToggle","unlimitDanmaku","unlimitDanmakuToggle","speedItem","querySelectorAll","danmakuOpacityBar","danmakuOpacityBarWrap","danmakuOpacityBarWrapWrap","danmakuOpacityBox","dtime","speedIndicator","speedPanel","speedSliderTrack","speedSliderFilled","speedSliderThumb","speedSliderTicks","speedSliderLabels","speedSliderBtnMinus","speedSliderBtnPlus","controller","commentInput","commentButton","commentSettingBox","commentSettingButton","commentSettingFill","commentSendButton","commentSendFill","commentColorSettingBox","browserFullButton","webFullButton","menu","menuItem","qualityList","camareButton","airplayButton","chromecastButton","subtitleButton","subtitleButtonInner","subtitlesButton","subtitlesBox","subtitlesItem","subtrack","qualityButton","barPreview","barWrap","noticeList","infoPanel","infoPanelClose","infoVersion","infoFPS","infoType","infoUrl","infoResolution","infoDuration","infoDanmakuId","infoDanmakuApi","infoDanmakuAmount","opacity","notice","classList","add","innerText","Danmaku","player","danTunnel","danIndex","dan","showing","_opacity","events","unlimited","_measure","load","apiurl","maximum","address","endpoints","addition","trigger","_readAllEndpoints","results","sort","requestAnimationFrame","frame","newAPI","clear","_this2","readCount","_loop","apiBackend","_this3","danmakuData","user","htmlEncode","border","borderColor","draw","_this4","paused","parseFloat","percentage","items","getElementsByClassName","_this5","itemHeight","height","danWidth","offsetWidth","danHeight","offsetHeight","itemY","danItemRight","ele","eleWidth","width","eleRight","danSpeed","getTunnel","_ret","tmp","_loop2","v","j","danRight","docFragment","createDocumentFragment","_loop3","tunnel","itemWidth","transform","animationDuration","_danAnimation","measureStyle","getComputedStyle","getContext","font","getPropertyValue","measureText","seek","_boolean","speedRate","isFullScreen","fullScreen","Events","videoEvents","playerEvents","info","FullScreen","lastScrollPosition","on","resize","fullscreenchange","docfullscreenchange","fullEle","msFullscreenElement","contains","anotherType","anotherTypeOn","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","msRequestFullscreen","cancelFullScreen","mozCancelFullScreen","webkitCancelFullScreen","webkitCancelFullscreen","msCancelFullScreen","msExitFullscreen","User","storageName","Subtitle","fontSize","textTracks","track","oncuechange","cue","activeCues","template","getCueAsHTML","trackHtml","show","hide","Subtitles","adaptiveHeight","lastItemIndex","src","dataset","subContainerShow","subContainerHide","disableAutoHide","curBoxHeight","stdMaxHeight","Bar","elements","played","direction","max","Timer","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","setInterval","enableloadingChecker","currentTime","enablefpsChecker","initfpsChecker","fpsStart","fpsIndex","fpsCurrent","fps","infoChecker","enableinfoChecker","clearInterval","Bezel","icon","Thumbnails","barWidth","backgroundImage","barWrapWidth","display","backgroundPosition","ceil","cast","runOnce","isCasting","Controller","autoHideTimer","setAutoHideHandler","setAutoHide","initPlayButton","initThumbnails","initPlayedBar","initFullButton","initQualityButton","initScreenshotButton","initSubtitleButton","initHighlights","initAirplayButton","initChromecastButton","initVolumeButton","toggle","preventClickToggle","duration","highlight","highlights","p","insertBefore","thumbnails","videoHeight","videoWidth","thumbMove","clientX","changedTouches","clientWidth","bar","_thumbUp","moveBar","px","tx","move","_this6","volumeMove","_volumeUp","muted","switchVolumeIcon","_this7","switchQuality","_this8","dataURL","canvas","drawImage","toBlob","blob","createObjectURL","link","download","click","revokeObjectURL","WebKitPlaybackTargetAvailabilityEvent","availability","disable","webkitShowPlaybackTargetPicker","script","__onGCastApiAvailable","isAvailable","sessionRequest","chrome","SessionRequest","DEFAULT_MEDIA_RECEIVER_APP_ID","apiConfig","ApiConfig","ReceiverAvailability","AVAILABLE","log","initialize","_this9","initChromecast","onMediaDiscovered","how","currentMedia","onMediaError","stop","session","requestSession","s","mediaInfo","MediaInfo","LoadRequest","loadMedia","_this0","balloon","_this1","clearTimeout","hideSpeedPanel","isShow","Setting","checked","unlimit","updateSpeedPanelActive","stopPropagation","toggleSpeedPanel","speedValues","playbackSpeed","currentSpeed","_positionSpeedTicks","_updateSliderToSpeed","_getSpeedFromPercentage","lastDragSpeed","thumbDragMove","snappedPercentage","_getPercentageFromSpeed","_highlightActivePreset","playbackRate","_savedPlaybackRate","_thumbDragEnd","preventDefault","stepSpeed","delta","clamped","danmakuMove","_danmakuUp","showSpeedPanel","percent","_i2","_percent","floatIndex","lowerIndex","upperIndex","fraction","range","_setSliderAt","rounded","tickSpeed","_i3","speedNum","Comment","toggleSetting","fill","hideSetting","keyCode","focus","showSetting","blur","HotKey","doHotKeyHandler","doHotKey","cancelFullScreenHandler","hotkey","padStart","timestamp","newRate","globalHotkey","tag","activeElement","tagName","editable","getAttribute","ctrlKey","altKey","changeSpeed","shiftKey","resetSpeed","takeScreenshot","handleLetterKeys","lowerKey","seekToPercent","ContextMenu","shown","contextmenu","contextmenuHandler","clientRect","clientY","y","InfoPanel","beginTime","timer","enable","toFixed","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","_defineProperty","instances","DPlayer","defaultOption","autoplay","theme","language","browserLanguage","mutex","pluginOptions","hls","flv","dash","webtorrent","defaultKey","defaultQuality","triggle","_objectSpread","qualityIndex","arrow","defaultSubtitle","findIndex","sub","plugins","docClickFun","containerClickFun","initVideo","nonotice","timeText","durationText","fromNative","nostorage","isNaN","formatPercentage","danmakuAPI","poster","initMSE","reload","customType","canPlayType","Hls","isSupported","loadSource","attachMedia","destroy","flvjs","flvPlayer","createPlayer","mediaDataSource","attachMediaElement","unload","detachMediaElement","dashjs","dashjsPlayer","MediaPlayer","_options","updateSettings","reset","WebTorrent","WEBRTC_SUPPORT","_options2","client","torrentId","once","torrent","files","find","file","renderTo","controls","buffered","end","targetRate","subtitles","switchingQuality","prevIndex","videoHTML","videoEle","DOMParser","parseFromString","getElementsByTagName","prevVideo","noticeTime","noticeListEl","NewNotice","dp"],"ignoreList":[],"sourceRoot":""}
1
+ {"version":3,"file":"DPlayer.min.js","mappings":"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","sources":["webpack://dplayer-enhanced/webpack/universalModuleDefinition","webpack://dplayer-enhanced/./src/assets/comment.svg","webpack://dplayer-enhanced/./src/assets/airplay.svg","webpack://dplayer-enhanced/./src/assets/subtitle.svg","webpack://dplayer-enhanced/./src/assets/pause.svg","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://dplayer-enhanced/./src/assets/pallette.svg","webpack://dplayer-enhanced/./src/assets/comment-off.svg","webpack://dplayer-enhanced/./src/template/video.art","webpack://dplayer-enhanced/./src/assets/volume-off.svg","webpack://dplayer-enhanced/./src/assets/chromecast.svg","webpack://dplayer-enhanced/./src/assets/volume-up.svg","webpack://dplayer-enhanced/./node_modules/art-template/lib/compile/runtime.js","webpack://dplayer-enhanced/./src/assets/play.svg","webpack://dplayer-enhanced/./src/assets/loading.svg","webpack://dplayer-enhanced/./src/template/player.art","webpack://dplayer-enhanced/./src/assets/right.svg","webpack://dplayer-enhanced/./src/assets/send.svg","webpack://dplayer-enhanced/./src/assets/volume-down.svg","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://dplayer-enhanced/./src/css/index.less","webpack://dplayer-enhanced/./src/assets/camera.svg","webpack://dplayer-enhanced/./node_modules/art-template/lib/runtime.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://dplayer-enhanced/./src/assets/full.svg","webpack://dplayer-enhanced/./node_modules/balloon-css/balloon.css","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/api.js","webpack://dplayer-enhanced/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://dplayer-enhanced/./src/assets/setting.svg","webpack://dplayer-enhanced/./src/assets/full-web.svg","webpack://dplayer-enhanced/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://dplayer-enhanced/webpack/bootstrap","webpack://dplayer-enhanced/webpack/runtime/compat get default export","webpack://dplayer-enhanced/webpack/runtime/define property getters","webpack://dplayer-enhanced/webpack/runtime/global","webpack://dplayer-enhanced/webpack/runtime/hasOwnProperty shorthand","webpack://dplayer-enhanced/webpack/runtime/jsonp chunk loading","webpack://dplayer-enhanced/webpack/runtime/nonce","webpack://dplayer-enhanced/./src/css/index.less?d46e","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/allSettled.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/any.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/index.js","webpack://dplayer-enhanced/./node_modules/promise-polyfill/src/finally.js","webpack://dplayer-enhanced/./src/js/utils.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/bind.js","webpack://dplayer-enhanced/./node_modules/axios/lib/utils.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/AxiosError.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/toFormData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/AxiosURLSearchParams.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/buildURL.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/InterceptorManager.js","webpack://dplayer-enhanced/./node_modules/axios/lib/defaults/transitional.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/index.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/FormData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/platform/browser/classes/Blob.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/formDataToJSON.js","webpack://dplayer-enhanced/./node_modules/axios/lib/defaults/index.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/toURLEncodedForm.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/AxiosHeaders.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/transformData.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/isCancel.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/CanceledError.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/cookies.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/buildFullPath.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/combineURLs.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://dplayer-enhanced/./node_modules/axios/lib/adapters/xhr.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/speedometer.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/settle.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/parseProtocol.js","webpack://dplayer-enhanced/./node_modules/axios/lib/adapters/adapters.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/null.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/dispatchRequest.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/mergeConfig.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/validator.js","webpack://dplayer-enhanced/./node_modules/axios/lib/core/Axios.js","webpack://dplayer-enhanced/./node_modules/axios/lib/cancel/CancelToken.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/HttpStatusCode.js","webpack://dplayer-enhanced/./node_modules/axios/lib/axios.js","webpack://dplayer-enhanced/./node_modules/axios/lib/env/data.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/spread.js","webpack://dplayer-enhanced/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://dplayer-enhanced/./src/js/api.js","webpack://dplayer-enhanced/./src/js/options.js","webpack://dplayer-enhanced/./src/js/i18n.js","webpack://dplayer-enhanced/./src/js/icons.js","webpack://dplayer-enhanced/./src/js/template.js","webpack://dplayer-enhanced/./src/js/danmaku.js","webpack://dplayer-enhanced/./src/js/events.js","webpack://dplayer-enhanced/./src/js/fullscreen.js","webpack://dplayer-enhanced/./src/js/user.js","webpack://dplayer-enhanced/./src/js/subtitle.js","webpack://dplayer-enhanced/./src/js/subtitles.js","webpack://dplayer-enhanced/./src/js/bar.js","webpack://dplayer-enhanced/./src/js/timer.js","webpack://dplayer-enhanced/./src/js/bezel.js","webpack://dplayer-enhanced/./src/js/thumbnails.js","webpack://dplayer-enhanced/./src/js/controller.js","webpack://dplayer-enhanced/./src/js/setting.js","webpack://dplayer-enhanced/./src/js/comment.js","webpack://dplayer-enhanced/./src/js/hotkey.js","webpack://dplayer-enhanced/./src/js/contextmenu.js","webpack://dplayer-enhanced/./src/js/info-panel.js","webpack://dplayer-enhanced/./src/js/player.js","webpack://dplayer-enhanced/./src/js/index.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(\"DPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"DPlayer\"] = factory();\n\telse\n\t\troot[\"DPlayer\"] = factory();\n})(self, () => {\nreturn ","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M27.128 0.38h-22.553c-2.336 0-4.229 1.825-4.229 4.076v16.273c0 2.251 1.893 4.076 4.229 4.076h4.229v-2.685h8.403l-8.784 8.072 1.566 1.44 7.429-6.827h9.71c2.335 0 4.229-1.825 4.229-4.076v-16.273c0-2.252-1.894-4.076-4.229-4.076zM28.538 19.403c0 1.5-1.262 2.717-2.819 2.717h-8.36l-0.076-0.070-0.076 0.070h-11.223c-1.557 0-2.819-1.217-2.819-2.717v-13.589c0-1.501 1.262-2.718 2.819-2.718h19.734c1.557 0 2.819-0.141 2.819 1.359v14.947zM9.206 10.557c-1.222 0-2.215 0.911-2.215 2.036s0.992 2.035 2.215 2.035c1.224 0 2.216-0.911 2.216-2.035s-0.992-2.036-2.216-2.036zM22.496 10.557c-1.224 0-2.215 0.911-2.215 2.036s0.991 2.035 2.215 2.035c1.224 0 2.215-0.911 2.215-2.035s-0.991-2.036-2.215-2.036zM15.852 10.557c-1.224 0-2.215 0.911-2.215 2.036s0.991 2.035 2.215 2.035c1.222 0 2.215-0.911 2.215-2.035s-0.992-2.036-2.215-2.036z\\\"></path></svg>\"","module.exports = \"<svg viewBox=\\\"0 0 288 288\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><path d=\\\"M288 90v96c0 20-16 36-36 36h-10c-16 0-16-24 0-24h10c7 0 12-5 12-12V90c0-7-5-12-12-12H36c-7 0-12 5-12 12v96c0 7 5 12 12 12h10c16 0 16 24 0 24H36c-20 0-36-16-36-36V90c0-20 16-36 36-36h216c20 0 36 16 36 36zm-120 62l48 68c14 20 1 38-20 38H92c-21 0-34-18-20-38l48-68c13-18 35-18 48 0z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M26.667 5.333h-21.333c-0 0-0.001 0-0.001 0-1.472 0-2.666 1.194-2.666 2.666 0 0 0 0.001 0 0.001v-0 16c0 0 0 0.001 0 0.001 0 1.472 1.194 2.666 2.666 2.666 0 0 0.001 0 0.001 0h21.333c0 0 0.001 0 0.001 0 1.472 0 2.666-1.194 2.666-2.666 0-0 0-0.001 0-0.001v0-16c0-0 0-0.001 0-0.001 0-1.472-1.194-2.666-2.666-2.666-0 0-0.001 0-0.001 0h0zM5.333 16h5.333v2.667h-5.333v-2.667zM18.667 24h-13.333v-2.667h13.333v2.667zM26.667 24h-5.333v-2.667h5.333v2.667zM26.667 18.667h-13.333v-2.667h13.333v2.667z\\\"></path></svg>\"","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>\"","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M19.357 2.88c1.749 0 3.366 0.316 4.851 0.946 1.485 0.632 2.768 1.474 3.845 2.533s1.922 2.279 2.532 3.661c0.611 1.383 0.915 2.829 0.915 4.334 0 1.425-0.304 2.847-0.915 4.271-0.611 1.425-1.587 2.767-2.928 4.028-0.855 0.813-1.811 1.607-2.869 2.38s-2.136 1.465-3.233 2.075c-1.099 0.61-2.198 1.098-3.296 1.465-1.098 0.366-2.115 0.549-3.051 0.549-1.343 0-2.441-0.438-3.296-1.311-0.854-0.876-1.281-2.41-1.281-4.608 0-0.366 0.020-0.773 0.060-1.221s0.062-0.895 0.062-1.343c0-0.773-0.183-1.353-0.55-1.738-0.366-0.387-0.793-0.58-1.281-0.58-0.652 0-1.21 0.295-1.678 0.886s-0.926 1.23-1.373 1.921c-0.447 0.693-0.905 1.334-1.372 1.923s-1.028 0.886-1.679 0.886c-0.529 0-1.048-0.427-1.556-1.282s-0.763-2.259-0.763-4.212c0-2.197 0.529-4.241 1.587-6.133s2.462-3.529 4.21-4.912c1.75-1.383 3.762-2.471 6.041-3.264 2.277-0.796 4.617-1.212 7.018-1.253zM7.334 15.817c0.569 0 1.047-0.204 1.434-0.611s0.579-0.875 0.579-1.404c0-0.569-0.193-1.047-0.579-1.434s-0.864-0.579-1.434-0.579c-0.529 0-0.987 0.193-1.373 0.579s-0.58 0.864-0.58 1.434c0 0.53 0.194 0.998 0.58 1.404 0.388 0.407 0.845 0.611 1.373 0.611zM12.216 11.79c0.691 0 1.292-0.254 1.8-0.763s0.762-1.107 0.762-1.8c0-0.732-0.255-1.343-0.762-1.831-0.509-0.489-1.109-0.732-1.8-0.732-0.732 0-1.342 0.244-1.831 0.732-0.488 0.488-0.732 1.098-0.732 1.831 0 0.693 0.244 1.292 0.732 1.8s1.099 0.763 1.831 0.763zM16.366 25.947c0.692 0 1.282-0.214 1.77-0.64s0.732-0.987 0.732-1.678-0.244-1.261-0.732-1.709c-0.489-0.448-1.078-0.671-1.77-0.671-0.65 0-1.21 0.223-1.678 0.671s-0.702 1.018-0.702 1.709c0 0.692 0.234 1.25 0.702 1.678s1.027 0.64 1.678 0.64zM19.113 9.592c0.651 0 1.129-0.203 1.433-0.611 0.305-0.406 0.459-0.874 0.459-1.404 0-0.488-0.154-0.947-0.459-1.373-0.304-0.427-0.782-0.641-1.433-0.641-0.529 0-1.008 0.193-1.434 0.58s-0.64 0.865-0.64 1.434c0 0.571 0.213 1.049 0.64 1.434 0.427 0.389 0.905 0.581 1.434 0.581zM24.848 12.826c0.57 0 1.067-0.213 1.495-0.64 0.427-0.427 0.64-0.947 0.64-1.556 0-0.57-0.214-1.068-0.64-1.495-0.428-0.427-0.927-0.64-1.495-0.64-0.611 0-1.129 0.213-1.555 0.64-0.428 0.427-0.642 0.926-0.642 1.495 0 0.611 0.213 1.129 0.642 1.556s0.947 0.64 1.555 0.64z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M27.090 0.131h-22.731c-2.354 0-4.262 1.839-4.262 4.109v16.401c0 2.269 1.908 4.109 4.262 4.109h4.262v-2.706h8.469l-8.853 8.135 1.579 1.451 7.487-6.88h9.787c2.353 0 4.262-1.84 4.262-4.109v-16.401c0-2.27-1.909-4.109-4.262-4.109v0zM28.511 19.304c0 1.512-1.272 2.738-2.841 2.738h-8.425l-0.076-0.070-0.076 0.070h-11.311c-1.569 0-2.841-1.226-2.841-2.738v-13.696c0-1.513 1.272-2.739 2.841-2.739h19.889c1.569 0 2.841-0.142 2.841 1.37v15.064z\\\"></path></svg>\"","{{ set enableSubtitle = subtitle && subtitle.type === 'webvtt' }}\r\n<video\r\n class=\"dplayer-video {{ if current }}dplayer-video-current{{ /if }}\"\r\n webkit-playsinline\r\n {{ if airplay }} x-webkit-airplay=\"allow\" {{ /if }}\r\n playsinline\r\n {{ if pic }}poster=\"{{ pic }}\"{{ /if }}\r\n {{ if screenshot || enableSubtitle }}crossorigin=\"anonymous\"{{ /if }}\r\n {{ if preload }}preload=\"{{ preload }}\"{{ /if }}\r\n {{ if airplay }}\r\n nosrc\r\n {{ else if url }}\r\n src=\"{{ url }}\"\r\n {{ /if }}\r\n >\r\n {{ if airplay }}\r\n <source src=\"{{ url }}\">\r\n {{ /if}}\r\n {{ if enableSubtitle }}\r\n <track class=\"dplayer-subtrack\" kind=\"metadata\" default src=\"{{ typeof subtitle.url === 'string' ? subtitle.url : subtitle.url[subtitle.index].url }}\"></track>\r\n {{ /if }}\r\n</video>","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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>\"","module.exports = \"<svg aria-hidden=\\\"true\\\" focusable=\\\"false\\\" data-prefix=\\\"fab\\\" data-icon=\\\"chromecast\\\" class=\\\"svg-inline--fa fa-chromecast fa-w-16\\\" role=\\\"img\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 512 512\\\"><path fill=\\\"currentColor\\\" d=\\\"M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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.056z\\\"></path></svg>\"","'use strict';\nvar globalThis = typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};\nvar runtime = Object.create(globalThis);\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}\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}\nmodule.exports = runtime;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 16 32\\\"><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>\"","module.exports = \"<svg version=\\\"1.1\\\" viewBox=\\\"0 0 22 22\\\"><svg x=\\\"7\\\" y=\\\"1\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-0\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"11\\\" y=\\\"3\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-1\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"13\\\" y=\\\"7\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-2\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"11\\\" y=\\\"11\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-3\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"7\\\" y=\\\"13\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-4\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"3\\\" y=\\\"11\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-5\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"1\\\" y=\\\"7\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-6\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg><svg x=\\\"3\\\" y=\\\"3\\\"><circle class=\\\"diplayer-loading-dot diplayer-loading-dot-7\\\" cx=\\\"4\\\" cy=\\\"4\\\" r=\\\"2\\\"></circle></svg></svg>\"","<div class=\"dplayer-mask\"></div>\r\n<div class=\"dplayer-video-wrap\">\r\n {{ include './video.art' video }}\r\n {{ if options.logo }}\r\n <div class=\"dplayer-logo\">\r\n <img src=\"{{ options.logo }}\">\r\n </div>\r\n {{ /if }}\r\n <div class=\"dplayer-danmaku\"{{ if options.danmaku && options.danmaku.bottom }} style=\"margin-bottom:{{ options.danmaku.bottom }}\"{{ /if }}>\r\n <div class=\"dplayer-danmaku-item dplayer-danmaku-item--demo\"></div>\r\n </div>\r\n <div class=\"dplayer-subtitle\"></div>\r\n <div class=\"dplayer-bezel\">\r\n <span class=\"dplayer-bezel-icon\"></span>\r\n {{ if options.danmaku }}\r\n <span class=\"dplayer-danloading\">{{ tran('danmaku-loading') }}</span>\r\n {{ /if }}\r\n <span class=\"diplayer-loading-icon\">{{@ icons.loading }}</span>\r\n </div>\r\n</div>\r\n<div class=\"dplayer-controller-mask\"></div>\r\n<div class=\"dplayer-controller\">\r\n <div class=\"dplayer-icons dplayer-comment-box\">\r\n <button class=\"dplayer-icon dplayer-comment-setting-icon\" data-balloon=\"{{ tran('setting') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.pallette }}</span>\r\n </button>\r\n <div class=\"dplayer-comment-setting-box\">\r\n <div class=\"dplayer-comment-setting-color\">\r\n <div class=\"dplayer-comment-setting-title\">{{ tran('set-danmaku-color') }}</div>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#fff\" checked>\r\n <span style=\"background: #fff;\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#e54256\">\r\n <span style=\"background: #e54256\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#ffe133\">\r\n <span style=\"background: #ffe133\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#64DD17\">\r\n <span style=\"background: #64DD17\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#39ccff\">\r\n <span style=\"background: #39ccff\"></span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-color-{{ index }}\" value=\"#D500F9\">\r\n <span style=\"background: #D500F9\"></span>\r\n </label>\r\n </div>\r\n <div class=\"dplayer-comment-setting-type\">\r\n <div class=\"dplayer-comment-setting-title\">{{ tran('set-danmaku-type') }}</div>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"1\">\r\n <span>{{ tran('top') }}</span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"0\" checked>\r\n <span>{{ tran('rolling') }}</span>\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"dplayer-danmaku-type-{{ index }}\" value=\"2\">\r\n <span>{{ tran('bottom') }}</span>\r\n </label>\r\n </div>\r\n </div>\r\n <input class=\"dplayer-comment-input\" type=\"text\" placeholder=\"{{ tran('input-danmaku-enter') }}\" maxlength=\"30\">\r\n <button class=\"dplayer-icon dplayer-send-icon\" data-balloon=\"{{ tran('send') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.send }}</span>\r\n </button>\r\n </div>\r\n <div class=\"dplayer-icons dplayer-icons-left\">\r\n <button class=\"dplayer-icon dplayer-play-icon\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.play }}</span>\r\n </button>\r\n <div class=\"dplayer-volume\">\r\n <button class=\"dplayer-icon dplayer-volume-icon\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.volumeDown }}</span>\r\n </button>\r\n <div class=\"dplayer-volume-bar-wrap\" data-balloon-pos=\"up\">\r\n <div class=\"dplayer-volume-bar\">\r\n <div class=\"dplayer-volume-bar-inner\" style=\"background: {{ options.theme }};\">\r\n <span class=\"dplayer-thumb\" style=\"background: {{ options.theme }}\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <span class=\"dplayer-time\">\r\n <span class=\"dplayer-ptime\">0:00</span> /\r\n <span class=\"dplayer-dtime\">0:00</span>\r\n </span>\r\n <div class=\"dplayer-speed-wrap\">\r\n <span class=\"dplayer-speed-indicator\" data-balloon=\"{{ tran('speed') }}\" data-balloon-pos=\"up\">1x</span>\r\n <div class=\"dplayer-speed-panel\">\r\n <div class=\"dplayer-speed-panel-title\">{{ tran('speed') }}</div>\r\n <div class=\"dplayer-speed-slider-wrap\">\r\n <button class=\"dplayer-speed-slider-btn dplayer-speed-slider-btn-minus\">−</button>\r\n <div class=\"dplayer-speed-slider-inner\">\r\n <div class=\"dplayer-speed-slider-track\">\r\n <div class=\"dplayer-speed-slider-filled\"></div>\r\n <div class=\"dplayer-speed-slider-thumb\"></div>\r\n {{ each options.playbackSpeed }}\r\n <div class=\"dplayer-speed-slider-tick{{ $value === 1 ? ' dplayer-speed-slider-tick-active' : '' }}\" data-speed=\"{{ $value }}\"></div>\r\n {{ /each }}\r\n </div>\r\n <div class=\"dplayer-speed-slider-labels\">\r\n {{ each options.playbackSpeed }}\r\n <span class=\"dplayer-speed-slider-label{{ $value === 1 ? ' dplayer-speed-slider-label-active' : '' }}\" data-speed=\"{{ $value }}\">{{ $value }}x</span>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n <button class=\"dplayer-speed-slider-btn dplayer-speed-slider-btn-plus\">+</button>\r\n </div>\r\n </div>\r\n </div>\r\n {{ if options.live }}\r\n <span class=\"dplayer-live-badge\"><span class=\"dplayer-live-dot\" style=\"background: {{ options.theme }};\"></span>{{ tran('live') }}</span>\r\n {{ /if }}\r\n </div>\r\n <div class=\"dplayer-icons dplayer-icons-right\">\r\n {{ if options.video.quality }}\r\n <div class=\"dplayer-quality\">\r\n <button class=\"dplayer-icon dplayer-quality-icon\">{{ options.video.quality[options.video.defaultQuality].name }}</button>\r\n <div class=\"dplayer-quality-mask\">\r\n <div class=\"dplayer-quality-list\">\r\n {{ each options.video.quality }}\r\n <div class=\"dplayer-quality-item\" data-index=\"{{ $index }}\">{{ $value.name }}</div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n {{ /if }}\r\n {{ if options.screenshot }}\r\n <div class=\"dplayer-icon dplayer-camera-icon\" data-balloon=\"{{ tran('screenshot') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.camera }}</span>\r\n </div>\r\n {{ /if }}\r\n {{ if options.airplay }}\r\n <div class=\"dplayer-icon dplayer-airplay-icon\" data-balloon=\"{{ tran('airplay') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.airplay }}</span>\r\n </div>\r\n {{ /if }}\r\n {{ if options.chromecast }}\r\n <div class=\"dplayer-icon dplayer-chromecast-icon\" data-balloon=\"{{ tran('chromecast') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.chromecast }}</span>\r\n </div>\r\n {{ /if }}\r\n <div class=\"dplayer-comment\">\r\n <button class=\"dplayer-icon dplayer-comment-icon\" data-balloon=\"{{ tran('send-danmaku') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.comment }}</span>\r\n </button>\r\n </div>\r\n {{ if options.subtitle }}\r\n {{ if (typeof options.subtitle.url === 'string') }}\r\n <div class=\"dplayer-subtitle-btn\">\r\n <button class=\"dplayer-icon dplayer-subtitle-icon\" data-balloon=\"{{ tran('hide-subs') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.subtitle }}</span>\r\n </button>\r\n </div>\r\n {{ else }}\r\n <div class=\"dplayer-subtitles\">\r\n <button class=\"dplayer-icon dplayer-subtitles-icon\" data-balloon=\"{{ tran('subtitle') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.subtitle }}</span>\r\n </button>\r\n <div class=\"dplayer-subtitles-box\">\r\n <div class=\"dplayer-subtitles-panel\">\r\n {{ each options.subtitle.url }}\r\n <div class=\"dplayer-subtitles-item\" data-subtitle=\"{{ $value.url }}\">\r\n <!-- if lang, show tran(lang). if lang and name, show name + (tran(lang)). if name, show name. off option use lang for translation. -->\r\n <span class=\"dplayer-label\">{{ $value.lang ? $value.name ? $value.name+' ('+tran($value.lang)+')' : tran($value.lang) : $value.name }}</span>\r\n </div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n {{ /if }}\r\n {{ /if }}\r\n <div class=\"dplayer-setting\">\r\n <button class=\"dplayer-icon dplayer-setting-icon\" data-balloon=\"{{ tran('setting') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.setting }}</span>\r\n </button>\r\n <div class=\"dplayer-setting-box\">\r\n <div class=\"dplayer-setting-origin-panel\">\r\n <div class=\"dplayer-setting-item dplayer-setting-speed\">\r\n <span class=\"dplayer-label\">{{ tran('speed') }}</span>\r\n <div class=\"dplayer-toggle\">{{@ icons.right }}</div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-loop\">\r\n <span class=\"dplayer-label\">{{ tran('loop') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-toggle-setting-input\" type=\"checkbox\" name=\"dplayer-toggle\">\r\n <label for=\"dplayer-toggle\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-showdan\">\r\n <span class=\"dplayer-label\">{{ tran('show-danmaku') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-showdan-setting-input\" type=\"checkbox\" name=\"dplayer-toggle-dan\">\r\n <label for=\"dplayer-toggle-dan\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-danunlimit\">\r\n <span class=\"dplayer-label\">{{ tran('unlimited-danmaku') }}</span>\r\n <div class=\"dplayer-toggle\">\r\n <input class=\"dplayer-danunlimit-setting-input\" type=\"checkbox\" name=\"dplayer-toggle-danunlimit\">\r\n <label for=\"dplayer-toggle-danunlimit\"></label>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-item dplayer-setting-danmaku\">\r\n <span class=\"dplayer-label\">{{ tran('opacity-danmaku') }}</span>\r\n <div class=\"dplayer-danmaku-bar-wrap\">\r\n <div class=\"dplayer-danmaku-bar\">\r\n <div class=\"dplayer-danmaku-bar-inner\">\r\n <span class=\"dplayer-thumb\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-setting-speed-panel\">\r\n {{ each options.playbackSpeed }}\r\n <div class=\"dplayer-setting-speed-item\" data-speed=\"{{ $value }}\">\r\n <span class=\"dplayer-label\">{{ $value === 1 ? tran('normal') : $value }}</span>\r\n </div>\r\n {{ /each }}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-full\">\r\n <button class=\"dplayer-icon dplayer-full-in-icon\" data-balloon=\"{{ tran('web-fullscreen') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.fullWeb }}</span>\r\n </button>\r\n <button class=\"dplayer-icon dplayer-full-icon\" data-balloon=\"{{ tran('fullscreen') }}\" data-balloon-pos=\"up\">\r\n <span class=\"dplayer-icon-content\">{{@ icons.full }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"dplayer-bar-wrap\">\r\n <div class=\"dplayer-bar-time hidden\">00:00</div>\r\n <div class=\"dplayer-bar-preview\"></div>\r\n <div class=\"dplayer-bar\">\r\n <div class=\"dplayer-loaded\" style=\"width: 0;\"></div>\r\n <div class=\"dplayer-played\" style=\"width: 0; background: {{ options.theme }}\">\r\n <span class=\"dplayer-thumb\" style=\"background: {{ options.theme }}\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"dplayer-info-panel dplayer-info-panel-hide\">\r\n <div class=\"dplayer-info-panel-close\">[x]</div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-version\">\r\n <span class=\"dplayer-info-panel-item-title\">Player version</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-fps\">\r\n <span class=\"dplayer-info-panel-item-title\">Player FPS</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-type\">\r\n <span class=\"dplayer-info-panel-item-title\">Video type</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-url\">\r\n <span class=\"dplayer-info-panel-item-title\">Video url</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-resolution\">\r\n <span class=\"dplayer-info-panel-item-title\">Video resolution</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-duration\">\r\n <span class=\"dplayer-info-panel-item-title\">Video duration</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n {{ if options.danmaku }}\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-id\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku id</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-api\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku api</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n <div class=\"dplayer-info-panel-item dplayer-info-panel-item-danmaku-amount\">\r\n <span class=\"dplayer-info-panel-item-title\">Danmaku amount</span>\r\n <span class=\"dplayer-info-panel-item-data\"></span>\r\n </div>\r\n {{ /if }}\r\n</div>\r\n<div class=\"dplayer-menu\">\r\n {{ each options.contextmenu }}\r\n <div class=\"dplayer-menu-item\">\r\n <a{{ if $value.link }} target=\"_blank\"{{ /if }} href=\"{{ $value.link || 'javascript:void(0);' }}\">{{ if $value.key }} {{ tran($value.key) }}{{ /if }}{{ if $value.text }} {{$value.text}}{{ /if }}</a>\r\n </div>\r\n {{ /each }}\r\n</div>\r\n<div class=\"dplayer-notice-list\"></div>\r\n<button class=\"dplayer-mobile-play\">\r\n {{@ icons.play }}\r\n</button>","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M22 16l-10.105-10.6-1.895 1.987 8.211 8.613-8.211 8.612 1.895 1.988 8.211-8.613z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M13.725 30l3.9-5.325-3.9-1.125v6.45zM0 17.5l11.050 3.35 13.6-11.55-10.55 12.425 11.8 3.65 6.1-23.375-32 15.5z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 21 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>\"","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_0___ from \"-!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/balloon-css/balloon.css\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@keyframes my-face {\n 2% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 4% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 6% {\n transform: translate(0, 1.5px) rotate(-1.5deg);\n }\n 8% {\n transform: translate(0, -1.5px) rotate(-1.5deg);\n }\n 10% {\n transform: translate(0, 2.5px) rotate(1.5deg);\n }\n 12% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 14% {\n transform: translate(0, -1.5px) rotate(1.5deg);\n }\n 16% {\n transform: translate(0, -0.5px) rotate(-1.5deg);\n }\n 18% {\n transform: translate(0, 0.5px) rotate(-1.5deg);\n }\n 20% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 22% {\n transform: translate(0, 0.5px) rotate(-1.5deg);\n }\n 24% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 26% {\n transform: translate(0, 0.5px) rotate(0.5deg);\n }\n 28% {\n transform: translate(0, 0.5px) rotate(1.5deg);\n }\n 30% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 32% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 34% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 36% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 38% {\n transform: translate(0, 1.5px) rotate(-1.5deg);\n }\n 40% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 42% {\n transform: translate(0, 2.5px) rotate(-1.5deg);\n }\n 44% {\n transform: translate(0, 1.5px) rotate(0.5deg);\n }\n 46% {\n transform: translate(0, -1.5px) rotate(2.5deg);\n }\n 48% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 50% {\n transform: translate(0, 0.5px) rotate(0.5deg);\n }\n 52% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 54% {\n transform: translate(0, -1.5px) rotate(1.5deg);\n }\n 56% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 58% {\n transform: translate(0, 0.5px) rotate(2.5deg);\n }\n 60% {\n transform: translate(0, 2.5px) rotate(2.5deg);\n }\n 62% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 64% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 66% {\n transform: translate(0, 1.5px) rotate(-0.5deg);\n }\n 68% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 70% {\n transform: translate(0, 1.5px) rotate(0.5deg);\n }\n 72% {\n transform: translate(0, 2.5px) rotate(1.5deg);\n }\n 74% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 76% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 78% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 80% {\n transform: translate(0, 1.5px) rotate(1.5deg);\n }\n 82% {\n transform: translate(0, -0.5px) rotate(0.5deg);\n }\n 84% {\n transform: translate(0, 1.5px) rotate(2.5deg);\n }\n 86% {\n transform: translate(0, -1.5px) rotate(-1.5deg);\n }\n 88% {\n transform: translate(0, -0.5px) rotate(2.5deg);\n }\n 90% {\n transform: translate(0, 2.5px) rotate(-0.5deg);\n }\n 92% {\n transform: translate(0, 0.5px) rotate(-0.5deg);\n }\n 94% {\n transform: translate(0, 2.5px) rotate(0.5deg);\n }\n 96% {\n transform: translate(0, -0.5px) rotate(1.5deg);\n }\n 98% {\n transform: translate(0, -1.5px) rotate(-0.5deg);\n }\n 0%,\n 100% {\n transform: translate(0, 0) rotate(0deg);\n }\n}\n.dplayer {\n position: relative;\n overflow: hidden;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n line-height: 1;\n}\n.dplayer * {\n box-sizing: content-box;\n}\n.dplayer svg {\n width: 100%;\n height: 100%;\n}\n.dplayer svg path,\n.dplayer svg circle {\n fill: #fff;\n}\n.dplayer:-webkit-full-screen {\n width: 100%;\n height: 100%;\n background: #000;\n position: fixed;\n z-index: 100000;\n left: 0;\n top: 0;\n margin: 0;\n padding: 0;\n transform: translate(0, 0);\n}\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit {\n display: none;\n}\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment {\n display: none;\n}\n.dplayer.dplayer-no-danmaku .dplayer-danmaku {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-time {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-bar-wrap {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-setting-speed {\n display: none;\n}\n.dplayer.dplayer-live .dplayer-setting-loop {\n display: none;\n}\n.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting {\n display: none;\n}\n.dplayer.dplayer-arrow .dplayer-danmaku {\n font-size: 18px;\n}\n.dplayer.dplayer-arrow .dplayer-icon {\n margin: 0 -3px;\n}\n.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move {\n animation-play-state: running;\n}\n@media (min-width: 900px) {\n .dplayer.dplayer-playing .dplayer-controller-mask {\n opacity: 0;\n }\n .dplayer.dplayer-playing .dplayer-controller {\n opacity: 0;\n }\n .dplayer.dplayer-playing:hover .dplayer-controller-mask {\n opacity: 1;\n }\n .dplayer.dplayer-playing:hover .dplayer-controller {\n opacity: 1;\n }\n}\n.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon {\n display: block;\n}\n.dplayer.dplayer-loading .dplayer-danmaku,\n.dplayer.dplayer-paused .dplayer-danmaku,\n.dplayer.dplayer-loading .dplayer-danmaku-move,\n.dplayer.dplayer-paused .dplayer-danmaku-move {\n animation-play-state: paused;\n}\n.dplayer.dplayer-hide-controller {\n cursor: none;\n}\n.dplayer.dplayer-hide-controller .dplayer-controller-mask {\n opacity: 0;\n transform: translateY(100%);\n}\n.dplayer.dplayer-hide-controller .dplayer-controller {\n opacity: 0;\n transform: translateY(100%);\n}\n.dplayer.dplayer-show-controller .dplayer-controller-mask {\n opacity: 1;\n}\n.dplayer.dplayer-show-controller .dplayer-controller {\n opacity: 1;\n}\n.dplayer.dplayer-fulled {\n position: fixed;\n z-index: 100000;\n left: 0;\n top: 0;\n width: 100% !important;\n height: 100% !important;\n}\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-airplay-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-chromecast-icon,\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-play-icon {\n display: none;\n}\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\n position: static;\n display: inline-block;\n}\n.dplayer.dplayer-mobile .dplayer-bar-time {\n display: none;\n}\n.dplayer.dplayer-mobile.dplayer-hide-controller .dplayer-mobile-play {\n display: none;\n}\n.dplayer.dplayer-mobile .dplayer-mobile-play {\n display: block;\n}\n.dplayer-web-fullscreen-fix {\n position: fixed;\n top: 0;\n left: 0;\n margin: 0;\n padding: 0;\n}\n[data-balloon]:before {\n display: none;\n}\n[data-balloon]:after {\n padding: 0.3em 0.7em;\n background: rgba(17, 17, 17, 0.7);\n}\n[data-balloon][data-balloon-pos=\"up\"]:after {\n margin-bottom: 0;\n}\n.dplayer-bezel {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n font-size: 22px;\n color: #fff;\n pointer-events: none;\n}\n.dplayer-bezel .dplayer-bezel-icon {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -26px 0 0 -26px;\n height: 52px;\n width: 52px;\n padding: 12px;\n box-sizing: border-box;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 50%;\n opacity: 0;\n pointer-events: none;\n}\n.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition {\n animation: bezel-hide 0.5s linear;\n}\n@keyframes bezel-hide {\n from {\n opacity: 1;\n transform: scale(1);\n }\n to {\n opacity: 0;\n transform: scale(2);\n }\n}\n.dplayer-bezel .dplayer-danloading {\n position: absolute;\n top: 50%;\n margin-top: -7px;\n width: 100%;\n text-align: center;\n font-size: 14px;\n line-height: 14px;\n animation: my-face 5s infinite ease-in-out;\n}\n.dplayer-bezel .diplayer-loading-icon {\n display: none;\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -18px 0 0 -18px;\n height: 36px;\n width: 36px;\n pointer-events: none;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide {\n display: none;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot {\n animation: diplayer-loading-dot-fade 0.8s ease infinite;\n opacity: 0;\n transform-origin: 4px 4px;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1 {\n animation-delay: 0.1s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2 {\n animation-delay: 0.2s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3 {\n animation-delay: 0.3s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4 {\n animation-delay: 0.4s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5 {\n animation-delay: 0.5s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6 {\n animation-delay: 0.6s;\n}\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7 {\n animation-delay: 0.7s;\n}\n@keyframes diplayer-loading-dot-fade {\n 0% {\n opacity: 0.7;\n transform: scale(1.2, 1.2);\n }\n 50% {\n opacity: 0.25;\n transform: scale(0.9, 0.9);\n }\n to {\n opacity: 0.25;\n transform: scale(0.85, 0.85);\n }\n}\n.dplayer-controller-mask {\n background: url(${___CSS_LOADER_URL_REPLACEMENT_0___}) repeat-x bottom;\n height: 98px;\n width: 100%;\n position: absolute;\n bottom: 0;\n transition: all 0.3s ease;\n}\n.dplayer-controller {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n height: 41px;\n padding: 0 20px;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n transition: all 0.3s ease;\n}\n.dplayer-controller.dplayer-controller-comment .dplayer-icons {\n display: none;\n}\n.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box {\n display: block;\n}\n.dplayer-controller .dplayer-bar-wrap {\n padding: 5px 0;\n cursor: pointer;\n position: absolute;\n bottom: 33px;\n width: calc(100% - 40px);\n height: 3px;\n}\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight {\n display: block;\n width: 8px;\n transform: translateX(-4px);\n top: 4px;\n height: 40%;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight {\n z-index: 12;\n position: absolute;\n top: 5px;\n width: 6px;\n height: 20%;\n border-radius: 6px;\n background-color: #fff;\n text-align: center;\n transform: translateX(-3px);\n transition: all 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text {\n display: block;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-preview {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-time {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text {\n display: none;\n position: absolute;\n left: 50%;\n top: -24px;\n padding: 5px 8px;\n background-color: rgba(0, 0, 0, 0.62);\n color: #fff;\n border-radius: 4px;\n font-size: 12px;\n white-space: nowrap;\n transform: translateX(-50%);\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview {\n position: absolute;\n background: #fff;\n pointer-events: none;\n display: none;\n background-size: 16000px 100%;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 1;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time {\n position: absolute;\n left: 0px;\n top: -20px;\n border-radius: 4px;\n padding: 5px 7px;\n background-color: rgba(0, 0, 0, 0.62);\n color: #fff;\n font-size: 12px;\n text-align: center;\n opacity: 1;\n transition: opacity 0.1s ease-in-out;\n word-wrap: normal;\n word-break: normal;\n z-index: 2;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden {\n opacity: 0;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar {\n position: relative;\n height: 3px;\n width: 100%;\n background: rgba(255, 255, 255, 0.2);\n cursor: pointer;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n background: rgba(255, 255, 255, 0.4);\n height: 3px;\n transition: all 0.5s ease;\n will-change: width;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n height: 3px;\n will-change: width;\n}\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n transform: scale(0);\n}\n.dplayer-controller .dplayer-icons {\n height: 38px;\n position: absolute;\n bottom: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box {\n display: none;\n position: absolute;\n transition: all 0.3s ease-in-out;\n z-index: 2;\n height: 38px;\n bottom: 0;\n left: 20px;\n right: 20px;\n color: #fff;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon {\n padding: 7px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon {\n position: absolute;\n left: 0;\n top: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon {\n position: absolute;\n right: 0;\n top: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box {\n position: absolute;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n bottom: 41px;\n left: 0;\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\n border-radius: 4px;\n padding: 10px 10px 16px;\n font-size: 14px;\n width: 204px;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n opacity: 0;\n transform: translateY(10px) scale(0.95);\n visibility: hidden;\n pointer-events: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type='radio'] {\n display: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label {\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title {\n font-size: 13px;\n color: #fff;\n line-height: 30px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type {\n font-size: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title {\n margin-bottom: 6px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span {\n border-radius: 4px 0 0 4px;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span {\n border-radius: 0 4px 4px 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span {\n width: 33%;\n padding: 4px 6px;\n line-height: 16px;\n display: inline-block;\n font-size: 12px;\n color: #fff;\n border: 1px solid #fff;\n margin-right: -1px;\n box-sizing: border-box;\n text-align: center;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked + span {\n background: #e4e4e6;\n color: #1c1c1c;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color {\n font-size: 0;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label {\n font-size: 0;\n padding: 6px;\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span {\n width: 22px;\n height: 22px;\n display: inline-block;\n border-radius: 50%;\n box-sizing: border-box;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover {\n animation: my-face 5s infinite ease-in-out;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input {\n outline: none;\n border: none;\n padding: 8px 31px;\n font-size: 14px;\n line-height: 18px;\n text-align: center;\n border-radius: 4px;\n background: none;\n margin: 0;\n height: 100%;\n box-sizing: border-box;\n width: 100%;\n color: #fff;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-moz-placeholder {\n color: #fff;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder {\n color: #fff;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear {\n display: none;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon {\n padding: 7px;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-right {\n right: 20px;\n}\n.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon {\n padding: 8px;\n}\n.dplayer-controller .dplayer-icons .dplayer-time,\n.dplayer-controller .dplayer-icons .dplayer-live-badge {\n line-height: 38px;\n color: #eee;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\n vertical-align: middle;\n font-size: 13px;\n cursor: default;\n}\n.dplayer-controller .dplayer-icons .dplayer-live-dot {\n display: inline-block;\n width: 6px;\n height: 6px;\n vertical-align: 4%;\n margin-right: 5px;\n content: '';\n border-radius: 6px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-wrap {\n position: relative;\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n margin-left: 10px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator {\n line-height: 38px;\n color: #eee;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\n vertical-align: middle;\n font-size: 13px;\n cursor: pointer;\n padding: 0 4px;\n border-radius: 3px;\n transition: background 0.2s ease, color 0.2s ease;\n display: inline-block;\n min-width: 32px;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator:hover {\n background: rgba(255, 255, 255, 0.1);\n color: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel {\n position: absolute;\n bottom: 42px;\n left: 50%;\n transform: translateX(-50%) translateY(8px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: 280px;\n border-radius: 10px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.06);\n padding: 16px 20px 12px;\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n z-index: 10;\n box-sizing: border-box;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel::after {\n content: '';\n position: absolute;\n bottom: -6px;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid rgba(28, 28, 28, 0.7);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel.dplayer-speed-panel-open {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n transform: translateX(-50%) translateY(0) scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-panel-title {\n color: rgba(255, 255, 255, 0.7);\n font-size: 12px;\n margin-bottom: 14px;\n letter-spacing: 0.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-wrap {\n position: relative;\n width: 100%;\n padding: 0;\n box-sizing: border-box;\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn {\n flex-shrink: 0;\n border: none;\n background: none;\n color: rgba(255, 255, 255, 0.85);\n font-size: 18px;\n font-weight: 700;\n width: 24px;\n height: 22px;\n line-height: 22px;\n text-align: center;\n cursor: pointer;\n padding: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n transition: color 0.15s ease, opacity 0.15s ease;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:hover {\n color: #fff;\n opacity: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:active {\n transform: scale(0.9);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-inner {\n flex: 1;\n min-width: 0;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track {\n position: relative;\n width: 100%;\n height: 22px;\n cursor: pointer;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track::before {\n content: '';\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n height: 3px;\n background: rgba(255, 255, 255, 0.18);\n border-radius: 1.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-filled {\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n height: 3px;\n background: #fff;\n border-radius: 1.5px 0 0 1.5px;\n pointer-events: none;\n z-index: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb {\n position: absolute;\n top: 50%;\n width: 12px;\n height: 12px;\n background: #fff;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n transition: box-shadow 0.2s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\n cursor: pointer;\n z-index: 3;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb:hover {\n box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12), 0 1px 3px rgba(0, 0, 0, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb.dplayer-speed-slider-thumb-active {\n box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.15), 0 1px 3px rgba(0, 0, 0, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick {\n position: absolute;\n top: 50%;\n width: 5px;\n height: 5px;\n background: #505050;\n border-radius: 50%;\n transform: translate(-50%, -50%);\n z-index: 2;\n pointer-events: none;\n transition: background 0.15s ease;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-filled {\n background: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-active {\n background: #fff;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-labels {\n position: relative;\n margin-top: 2px;\n height: 16px;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label {\n position: absolute;\n top: 0;\n transform: translateX(-50%);\n color: rgba(255, 255, 255, 0.45);\n font-size: 10px;\n cursor: pointer;\n text-align: center;\n transition: color 0.15s ease;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n white-space: nowrap;\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label:hover {\n color: rgba(255, 255, 255, 0.85);\n}\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label.dplayer-speed-slider-label-active {\n color: #fff;\n font-weight: 600;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon {\n width: 40px;\n height: 100%;\n border: none;\n background-color: transparent;\n outline: none;\n cursor: pointer;\n vertical-align: middle;\n box-sizing: border-box;\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content {\n transition: all 0.2s ease-in-out;\n opacity: 0.8;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content {\n opacity: 1;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon {\n color: #fff;\n width: auto;\n line-height: 22px;\n font-size: 14px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon {\n padding: 10px 9px 9px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon {\n padding-top: 8.5px;\n}\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon {\n width: 43px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume {\n position: relative;\n display: inline-block;\n cursor: pointer;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar {\n width: 45px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar {\n width: 45px;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n transform: scale(1);\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap {\n display: inline-block;\n margin: 0 10px 0 -5px;\n vertical-align: middle;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar {\n position: relative;\n top: 17px;\n width: 0;\n height: 3px;\n background: #aaa;\n transition: all 0.3s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 100%;\n transition: all 0.1s ease;\n will-change: width;\n}\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n transform: scale(0);\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitle-btn {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box {\n position: absolute;\n right: 0;\n bottom: 50px;\n transform: translateY(10px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: -moz-fit-content;\n width: fit-content;\n max-width: 240px;\n min-width: 120px;\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n padding: 7px 0;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: auto;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-box-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item {\n height: 30px;\n padding: 5px 10px;\n box-sizing: border-box;\n cursor: pointer;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-setting {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\n position: absolute;\n right: 0;\n bottom: 50px;\n transform: translateY(10px) scale(0.95);\n opacity: 0;\n visibility: hidden;\n pointer-events: none;\n width: 150px;\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(10px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n padding: 7px 0;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div.dplayer-setting-origin-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open {\n opacity: 1;\n transform: translateY(0) scale(1);\n visibility: visible;\n pointer-events: auto;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow {\n width: 70px;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item {\n height: 30px;\n padding: 5px 10px;\n box-sizing: border-box;\n cursor: pointer;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku {\n padding: 5px 0;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label {\n padding: 0 10px;\n display: inline;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap {\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label {\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap {\n display: inline-block;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap {\n padding: 0 10px;\n box-sizing: border-box;\n display: none;\n vertical-align: middle;\n height: 100%;\n width: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar {\n position: relative;\n top: 8.5px;\n width: 100%;\n height: 3px;\n background: #fff;\n transition: all 0.3s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 100%;\n transition: all 0.1s ease;\n background: #aaa;\n will-change: width;\n}\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb {\n position: absolute;\n top: 0;\n right: 5px;\n margin-top: -4px;\n margin-right: -10px;\n height: 11px;\n width: 11px;\n border-radius: 50%;\n cursor: pointer;\n transition: all 0.3s ease-in-out;\n background: #aaa;\n}\n.dplayer-controller .dplayer-icons .dplayer-full {\n display: inline-block;\n height: 100%;\n position: relative;\n}\n.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\n position: absolute;\n top: -30px;\n z-index: 1;\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality {\n position: relative;\n display: inline-block;\n height: 100%;\n z-index: 2;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask {\n display: block;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask {\n display: none;\n position: absolute;\n bottom: 38px;\n left: -18px;\n width: 80px;\n padding-bottom: 12px;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list {\n display: none;\n font-size: 12px;\n width: 80px;\n border-radius: 2px;\n background: rgba(28, 28, 28, 0.9);\n padding: 5px 0;\n transition: all 0.3s ease-in-out;\n overflow: hidden;\n color: #fff;\n text-align: center;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item {\n height: 25px;\n box-sizing: border-box;\n cursor: pointer;\n line-height: 25px;\n}\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-controller .dplayer-icons .dplayer-comment {\n display: inline-block;\n height: 100%;\n}\n.dplayer-controller .dplayer-icons .dplayer-label {\n color: #eee;\n font-size: 13px;\n display: inline-block;\n vertical-align: middle;\n white-space: nowrap;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle {\n width: 32px;\n height: 20px;\n text-align: center;\n font-size: 0;\n vertical-align: middle;\n position: absolute;\n top: 5px;\n right: 10px;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input {\n max-height: 0;\n max-width: 0;\n display: none;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label {\n display: inline-block;\n position: relative;\n box-shadow: #dfdfdf 0 0 0 0 inset;\n border: 1px solid #dfdfdf;\n height: 20px;\n width: 32px;\n border-radius: 10px;\n box-sizing: border-box;\n cursor: pointer;\n transition: 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:before {\n content: '';\n position: absolute;\n display: block;\n height: 18px;\n width: 18px;\n top: 0;\n left: 0;\n border-radius: 15px;\n transition: 0.2s ease-in-out;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:after {\n content: '';\n position: absolute;\n display: block;\n left: 0;\n top: 0;\n border-radius: 15px;\n background: #fff;\n transition: 0.2s ease-in-out;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\n height: 18px;\n width: 18px;\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label {\n border-color: rgba(255, 255, 255, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:before {\n width: 30px;\n background: rgba(255, 255, 255, 0.5);\n}\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:after {\n left: 12px;\n}\n.dplayer-mobile-play {\n display: none;\n width: 50px;\n height: 50px;\n border: none;\n background-color: transparent;\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n bottom: 0;\n opacity: 0.8;\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n}\n.dplayer-danmaku {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n font-size: 22px;\n color: #fff;\n}\n.dplayer-danmaku .dplayer-danmaku-item {\n display: inline-block;\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n cursor: default;\n white-space: nowrap;\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\n}\n.dplayer-danmaku .dplayer-danmaku-item--demo {\n position: absolute;\n visibility: hidden;\n}\n.dplayer-danmaku .dplayer-danmaku-right {\n position: absolute;\n right: 0;\n transform: translateX(100%);\n}\n.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move {\n will-change: transform;\n animation-name: danmaku;\n animation-timing-function: linear;\n animation-play-state: paused;\n}\n@keyframes danmaku {\n from {\n transform: translateX(100%);\n }\n}\n.dplayer-danmaku .dplayer-danmaku-top,\n.dplayer-danmaku .dplayer-danmaku-bottom {\n position: absolute;\n width: 100%;\n text-align: center;\n visibility: hidden;\n}\n.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,\n.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move {\n will-change: visibility;\n animation-name: danmaku-center;\n animation-timing-function: linear;\n animation-play-state: paused;\n}\n@keyframes danmaku-center {\n from {\n visibility: visible;\n }\n to {\n visibility: visible;\n }\n}\n.dplayer-logo {\n pointer-events: none;\n position: absolute;\n left: 20px;\n top: 20px;\n max-width: 50px;\n max-height: 50px;\n}\n.dplayer-logo img {\n max-width: 100%;\n max-height: 100%;\n background: none;\n}\n.dplayer-menu {\n position: absolute;\n width: 170px;\n border-radius: 2px;\n background: rgba(28, 28, 28, 0.85);\n padding: 5px 0;\n overflow: hidden;\n z-index: 3;\n display: none;\n}\n.dplayer-menu.dplayer-menu-show {\n display: block;\n}\n.dplayer-menu .dplayer-menu-item {\n height: 30px;\n box-sizing: border-box;\n cursor: pointer;\n}\n.dplayer-menu .dplayer-menu-item:hover {\n background-color: rgba(255, 255, 255, 0.1);\n}\n.dplayer-menu .dplayer-menu-item a {\n padding: 0 10px;\n line-height: 30px;\n color: #eee;\n font-size: 13px;\n display: inline-block;\n vertical-align: middle;\n width: 100%;\n box-sizing: border-box;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n.dplayer-menu .dplayer-menu-item a:hover {\n -webkit-text-decoration: none;\n text-decoration: none;\n}\n.dplayer-notice-list {\n position: absolute;\n top: 10px;\n left: 10px;\n display: flex;\n flex-direction: column;\n max-height: 50px;\n overflow: visible;\n}\n.dplayer-notice-list .dplayer-notice {\n border-radius: 4px;\n background: rgba(28, 28, 28, 0.7);\n backdrop-filter: blur(5px);\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n overflow: hidden;\n color: #fff;\n display: table;\n pointer-events: none;\n padding: 5px 10px;\n font-size: 14px;\n opacity: 0;\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\n}\n.dplayer-notice-list .dplayer-notice:not(:last-child) {\n display: none;\n}\n.dplayer-notice-list .remove-notice {\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\n}\n@keyframes showNotice {\n 100% {\n opacity: 1;\n }\n}\n@keyframes removeNotice {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n.dplayer-subtitle {\n position: absolute;\n bottom: 40px;\n width: 90%;\n left: 5%;\n text-align: center;\n color: #fff;\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\n font-size: 20px;\n}\n.dplayer-subtitle.dplayer-subtitle-hide {\n display: none;\n}\n.dplayer-mask {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1;\n display: none;\n}\n.dplayer-mask.dplayer-mask-show {\n display: block;\n}\n.dplayer-video-wrap {\n position: relative;\n background: #000;\n font-size: 0;\n width: 100%;\n height: 100%;\n}\n.dplayer-video-wrap .dplayer-video {\n width: 100%;\n height: 100%;\n display: none;\n}\n.dplayer-video-wrap .dplayer-video-current {\n display: block;\n}\n.dplayer-video-wrap .dplayer-video-prepare {\n display: none;\n}\n.dplayer-info-panel {\n position: absolute;\n top: 10px;\n left: 10px;\n width: 400px;\n background: rgba(28, 28, 28, 0.8);\n padding: 10px;\n color: #fff;\n font-size: 12px;\n border-radius: 2px;\n}\n.dplayer-info-panel-hide {\n display: none;\n}\n.dplayer-info-panel .dplayer-info-panel-close {\n cursor: pointer;\n position: absolute;\n right: 10px;\n top: 10px;\n}\n.dplayer-info-panel .dplayer-info-panel-item > span {\n display: inline-block;\n vertical-align: middle;\n line-height: 15px;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n.dplayer-info-panel .dplayer-info-panel-item-title {\n width: 100px;\n text-align: right;\n margin-right: 10px;\n}\n.dplayer-info-panel .dplayer-info-panel-item-data {\n width: 260px;\n}\n/*# sourceMappingURL=index.css.map */`, \"\",{\"version\":3,\"sources\":[\"webpack://./global.less\",\"webpack://./src/css/index.less\",\"webpack://./player.less\",\"webpack://./balloon.less\",\"webpack://./bezel.less\",\"webpack://./controller.less\",\"webpack://./danmaku.less\",\"webpack://./logo.less\",\"webpack://./menu.less\",\"webpack://./notice.less\",\"webpack://./subtitle.less\",\"webpack://./video.less\",\"webpack://./info-panel.less\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\"@keyframes my-face {\\n 2% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 4% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 6% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 8% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 10% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 12% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 14% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 16% {\\n transform: translate(0, -0.5px) rotate(-1.5deg);\\n }\\n 18% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 20% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 22% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 24% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 26% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 28% {\\n transform: translate(0, 0.5px) rotate(1.5deg);\\n }\\n 30% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 32% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 34% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 36% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 38% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 40% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 42% {\\n transform: translate(0, 2.5px) rotate(-1.5deg);\\n }\\n 44% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 46% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 48% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 50% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 52% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 54% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 56% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 58% {\\n transform: translate(0, 0.5px) rotate(2.5deg);\\n }\\n 60% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 62% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 64% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 66% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 68% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 70% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 72% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 74% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 76% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 78% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 80% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 82% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 84% {\\n transform: translate(0, 1.5px) rotate(2.5deg);\\n }\\n 86% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 88% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 90% {\\n transform: translate(0, 2.5px) rotate(-0.5deg);\\n }\\n 92% {\\n transform: translate(0, 0.5px) rotate(-0.5deg);\\n }\\n 94% {\\n transform: translate(0, 2.5px) rotate(0.5deg);\\n }\\n 96% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 98% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 0%,\\n 100% {\\n transform: translate(0, 0) rotate(0deg);\\n }\\n}\",\"@import '../../node_modules/balloon-css/balloon.css';\\n@keyframes my-face {\\n 2% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 4% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 6% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 8% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 10% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 12% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 14% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 16% {\\n transform: translate(0, -0.5px) rotate(-1.5deg);\\n }\\n 18% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 20% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 22% {\\n transform: translate(0, 0.5px) rotate(-1.5deg);\\n }\\n 24% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 26% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 28% {\\n transform: translate(0, 0.5px) rotate(1.5deg);\\n }\\n 30% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 32% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 34% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 36% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 38% {\\n transform: translate(0, 1.5px) rotate(-1.5deg);\\n }\\n 40% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 42% {\\n transform: translate(0, 2.5px) rotate(-1.5deg);\\n }\\n 44% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 46% {\\n transform: translate(0, -1.5px) rotate(2.5deg);\\n }\\n 48% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 50% {\\n transform: translate(0, 0.5px) rotate(0.5deg);\\n }\\n 52% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 54% {\\n transform: translate(0, -1.5px) rotate(1.5deg);\\n }\\n 56% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 58% {\\n transform: translate(0, 0.5px) rotate(2.5deg);\\n }\\n 60% {\\n transform: translate(0, 2.5px) rotate(2.5deg);\\n }\\n 62% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 64% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 66% {\\n transform: translate(0, 1.5px) rotate(-0.5deg);\\n }\\n 68% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 70% {\\n transform: translate(0, 1.5px) rotate(0.5deg);\\n }\\n 72% {\\n transform: translate(0, 2.5px) rotate(1.5deg);\\n }\\n 74% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 76% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 78% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 80% {\\n transform: translate(0, 1.5px) rotate(1.5deg);\\n }\\n 82% {\\n transform: translate(0, -0.5px) rotate(0.5deg);\\n }\\n 84% {\\n transform: translate(0, 1.5px) rotate(2.5deg);\\n }\\n 86% {\\n transform: translate(0, -1.5px) rotate(-1.5deg);\\n }\\n 88% {\\n transform: translate(0, -0.5px) rotate(2.5deg);\\n }\\n 90% {\\n transform: translate(0, 2.5px) rotate(-0.5deg);\\n }\\n 92% {\\n transform: translate(0, 0.5px) rotate(-0.5deg);\\n }\\n 94% {\\n transform: translate(0, 2.5px) rotate(0.5deg);\\n }\\n 96% {\\n transform: translate(0, -0.5px) rotate(1.5deg);\\n }\\n 98% {\\n transform: translate(0, -1.5px) rotate(-0.5deg);\\n }\\n 0%,\\n 100% {\\n transform: translate(0, 0) rotate(0deg);\\n }\\n}\\n.dplayer {\\n position: relative;\\n overflow: hidden;\\n user-select: none;\\n line-height: 1;\\n}\\n.dplayer * {\\n box-sizing: content-box;\\n}\\n.dplayer svg {\\n width: 100%;\\n height: 100%;\\n}\\n.dplayer svg path,\\n.dplayer svg circle {\\n fill: #fff;\\n}\\n.dplayer:-webkit-full-screen {\\n width: 100%;\\n height: 100%;\\n background: #000;\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n margin: 0;\\n padding: 0;\\n transform: translate(0, 0);\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit {\\n display: none;\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment {\\n display: none;\\n}\\n.dplayer.dplayer-no-danmaku .dplayer-danmaku {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-time {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-bar-wrap {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-setting-speed {\\n display: none;\\n}\\n.dplayer.dplayer-live .dplayer-setting-loop {\\n display: none;\\n}\\n.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting {\\n display: none;\\n}\\n.dplayer.dplayer-arrow .dplayer-danmaku {\\n font-size: 18px;\\n}\\n.dplayer.dplayer-arrow .dplayer-icon {\\n margin: 0 -3px;\\n}\\n.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move {\\n animation-play-state: running;\\n}\\n@media (min-width: 900px) {\\n .dplayer.dplayer-playing .dplayer-controller-mask {\\n opacity: 0;\\n }\\n .dplayer.dplayer-playing .dplayer-controller {\\n opacity: 0;\\n }\\n .dplayer.dplayer-playing:hover .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer.dplayer-playing:hover .dplayer-controller {\\n opacity: 1;\\n }\\n}\\n.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon {\\n display: block;\\n}\\n.dplayer.dplayer-loading .dplayer-danmaku,\\n.dplayer.dplayer-paused .dplayer-danmaku,\\n.dplayer.dplayer-loading .dplayer-danmaku-move,\\n.dplayer.dplayer-paused .dplayer-danmaku-move {\\n animation-play-state: paused;\\n}\\n.dplayer.dplayer-hide-controller {\\n cursor: none;\\n}\\n.dplayer.dplayer-hide-controller .dplayer-controller-mask {\\n opacity: 0;\\n transform: translateY(100%);\\n}\\n.dplayer.dplayer-hide-controller .dplayer-controller {\\n opacity: 0;\\n transform: translateY(100%);\\n}\\n.dplayer.dplayer-show-controller .dplayer-controller-mask {\\n opacity: 1;\\n}\\n.dplayer.dplayer-show-controller .dplayer-controller {\\n opacity: 1;\\n}\\n.dplayer.dplayer-fulled {\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n width: 100% !important;\\n height: 100% !important;\\n}\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-airplay-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-chromecast-icon,\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-play-icon {\\n display: none;\\n}\\n.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\\n position: static;\\n display: inline-block;\\n}\\n.dplayer.dplayer-mobile .dplayer-bar-time {\\n display: none;\\n}\\n.dplayer.dplayer-mobile.dplayer-hide-controller .dplayer-mobile-play {\\n display: none;\\n}\\n.dplayer.dplayer-mobile .dplayer-mobile-play {\\n display: block;\\n}\\n.dplayer-web-fullscreen-fix {\\n position: fixed;\\n top: 0;\\n left: 0;\\n margin: 0;\\n padding: 0;\\n}\\n[data-balloon]:before {\\n display: none;\\n}\\n[data-balloon]:after {\\n padding: 0.3em 0.7em;\\n background: rgba(17, 17, 17, 0.7);\\n}\\n[data-balloon][data-balloon-pos=\\\"up\\\"]:after {\\n margin-bottom: 0;\\n}\\n.dplayer-bezel {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n pointer-events: none;\\n}\\n.dplayer-bezel .dplayer-bezel-icon {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -26px 0 0 -26px;\\n height: 52px;\\n width: 52px;\\n padding: 12px;\\n box-sizing: border-box;\\n background: rgba(0, 0, 0, 0.5);\\n border-radius: 50%;\\n opacity: 0;\\n pointer-events: none;\\n}\\n.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition {\\n animation: bezel-hide 0.5s linear;\\n}\\n@keyframes bezel-hide {\\n from {\\n opacity: 1;\\n transform: scale(1);\\n }\\n to {\\n opacity: 0;\\n transform: scale(2);\\n }\\n}\\n.dplayer-bezel .dplayer-danloading {\\n position: absolute;\\n top: 50%;\\n margin-top: -7px;\\n width: 100%;\\n text-align: center;\\n font-size: 14px;\\n line-height: 14px;\\n animation: my-face 5s infinite ease-in-out;\\n}\\n.dplayer-bezel .diplayer-loading-icon {\\n display: none;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -18px 0 0 -18px;\\n height: 36px;\\n width: 36px;\\n pointer-events: none;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide {\\n display: none;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot {\\n animation: diplayer-loading-dot-fade 0.8s ease infinite;\\n opacity: 0;\\n transform-origin: 4px 4px;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1 {\\n animation-delay: 0.1s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2 {\\n animation-delay: 0.2s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3 {\\n animation-delay: 0.3s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4 {\\n animation-delay: 0.4s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5 {\\n animation-delay: 0.5s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6 {\\n animation-delay: 0.6s;\\n}\\n.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7 {\\n animation-delay: 0.7s;\\n}\\n@keyframes diplayer-loading-dot-fade {\\n 0% {\\n opacity: 0.7;\\n transform: scale(1.2, 1.2);\\n }\\n 50% {\\n opacity: 0.25;\\n transform: scale(0.9, 0.9);\\n }\\n to {\\n opacity: 0.25;\\n transform: scale(0.85, 0.85);\\n }\\n}\\n.dplayer-controller-mask {\\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;\\n height: 98px;\\n width: 100%;\\n position: absolute;\\n bottom: 0;\\n transition: all 0.3s ease;\\n}\\n.dplayer-controller {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n height: 41px;\\n padding: 0 20px;\\n user-select: none;\\n transition: all 0.3s ease;\\n}\\n.dplayer-controller.dplayer-controller-comment .dplayer-icons {\\n display: none;\\n}\\n.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box {\\n display: block;\\n}\\n.dplayer-controller .dplayer-bar-wrap {\\n padding: 5px 0;\\n cursor: pointer;\\n position: absolute;\\n bottom: 33px;\\n width: calc(100% - 40px);\\n height: 3px;\\n}\\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight {\\n display: block;\\n width: 8px;\\n transform: translateX(-4px);\\n top: 4px;\\n height: 40%;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight {\\n z-index: 12;\\n position: absolute;\\n top: 5px;\\n width: 6px;\\n height: 20%;\\n border-radius: 6px;\\n background-color: #fff;\\n text-align: center;\\n transform: translateX(-3px);\\n transition: all 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text {\\n display: block;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-preview {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-time {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text {\\n display: none;\\n position: absolute;\\n left: 50%;\\n top: -24px;\\n padding: 5px 8px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n border-radius: 4px;\\n font-size: 12px;\\n white-space: nowrap;\\n transform: translateX(-50%);\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview {\\n position: absolute;\\n background: #fff;\\n pointer-events: none;\\n display: none;\\n background-size: 16000px 100%;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time {\\n position: absolute;\\n left: 0px;\\n top: -20px;\\n border-radius: 4px;\\n padding: 5px 7px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n font-size: 12px;\\n text-align: center;\\n opacity: 1;\\n transition: opacity 0.1s ease-in-out;\\n word-wrap: normal;\\n word-break: normal;\\n z-index: 2;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden {\\n opacity: 0;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar {\\n position: relative;\\n height: 3px;\\n width: 100%;\\n background: rgba(255, 255, 255, 0.2);\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: rgba(255, 255, 255, 0.4);\\n height: 3px;\\n transition: all 0.5s ease;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n height: 3px;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n}\\n.dplayer-controller .dplayer-icons {\\n height: 38px;\\n position: absolute;\\n bottom: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box {\\n display: none;\\n position: absolute;\\n transition: all 0.3s ease-in-out;\\n z-index: 2;\\n height: 38px;\\n bottom: 0;\\n left: 20px;\\n right: 20px;\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon {\\n padding: 7px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon {\\n position: absolute;\\n left: 0;\\n top: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon {\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box {\\n position: absolute;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n bottom: 41px;\\n left: 0;\\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\\n border-radius: 4px;\\n padding: 10px 10px 16px;\\n font-size: 14px;\\n width: 204px;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n opacity: 0;\\n transform: translateY(10px) scale(0.95);\\n visibility: hidden;\\n pointer-events: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type='radio'] {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label {\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title {\\n font-size: 13px;\\n color: #fff;\\n line-height: 30px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type {\\n font-size: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title {\\n margin-bottom: 6px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span {\\n border-radius: 4px 0 0 4px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span {\\n border-radius: 0 4px 4px 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span {\\n width: 33%;\\n padding: 4px 6px;\\n line-height: 16px;\\n display: inline-block;\\n font-size: 12px;\\n color: #fff;\\n border: 1px solid #fff;\\n margin-right: -1px;\\n box-sizing: border-box;\\n text-align: center;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked + span {\\n background: #e4e4e6;\\n color: #1c1c1c;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color {\\n font-size: 0;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label {\\n font-size: 0;\\n padding: 6px;\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span {\\n width: 22px;\\n height: 22px;\\n display: inline-block;\\n border-radius: 50%;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover {\\n animation: my-face 5s infinite ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input {\\n outline: none;\\n border: none;\\n padding: 8px 31px;\\n font-size: 14px;\\n line-height: 18px;\\n text-align: center;\\n border-radius: 4px;\\n background: none;\\n margin: 0;\\n height: 100%;\\n box-sizing: border-box;\\n width: 100%;\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder {\\n color: #fff;\\n opacity: 0.8;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon {\\n padding: 7px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-right {\\n right: 20px;\\n}\\n.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon {\\n padding: 8px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-time,\\n.dplayer-controller .dplayer-icons .dplayer-live-badge {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: default;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-live-dot {\\n display: inline-block;\\n width: 6px;\\n height: 6px;\\n vertical-align: 4%;\\n margin-right: 5px;\\n content: '';\\n border-radius: 6px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-wrap {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n vertical-align: middle;\\n margin-left: 10px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: pointer;\\n padding: 0 4px;\\n border-radius: 3px;\\n transition: background 0.2s ease, color 0.2s ease;\\n display: inline-block;\\n min-width: 32px;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-indicator:hover {\\n background: rgba(255, 255, 255, 0.1);\\n color: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel {\\n position: absolute;\\n bottom: 42px;\\n left: 50%;\\n transform: translateX(-50%) translateY(8px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 280px;\\n border-radius: 10px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.06);\\n padding: 16px 20px 12px;\\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\\n z-index: 10;\\n box-sizing: border-box;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel::after {\\n content: '';\\n position: absolute;\\n bottom: -6px;\\n left: 50%;\\n transform: translateX(-50%);\\n width: 0;\\n height: 0;\\n border-left: 6px solid transparent;\\n border-right: 6px solid transparent;\\n border-top: 6px solid rgba(28, 28, 28, 0.7);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel.dplayer-speed-panel-open {\\n opacity: 1;\\n visibility: visible;\\n pointer-events: auto;\\n transform: translateX(-50%) translateY(0) scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-panel-title {\\n color: rgba(255, 255, 255, 0.7);\\n font-size: 12px;\\n margin-bottom: 14px;\\n letter-spacing: 0.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-wrap {\\n position: relative;\\n width: 100%;\\n padding: 0;\\n box-sizing: border-box;\\n display: flex;\\n align-items: flex-start;\\n gap: 8px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn {\\n flex-shrink: 0;\\n border: none;\\n background: none;\\n color: rgba(255, 255, 255, 0.85);\\n font-size: 18px;\\n font-weight: 700;\\n width: 24px;\\n height: 22px;\\n line-height: 22px;\\n text-align: center;\\n cursor: pointer;\\n padding: 0;\\n user-select: none;\\n transition: color 0.15s ease, opacity 0.15s ease;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:hover {\\n color: #fff;\\n opacity: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-btn:active {\\n transform: scale(0.9);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-inner {\\n flex: 1;\\n min-width: 0;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track {\\n position: relative;\\n width: 100%;\\n height: 22px;\\n cursor: pointer;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-track::before {\\n content: '';\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n width: 100%;\\n height: 3px;\\n background: rgba(255, 255, 255, 0.18);\\n border-radius: 1.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-filled {\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n height: 3px;\\n background: #fff;\\n border-radius: 1.5px 0 0 1.5px;\\n pointer-events: none;\\n z-index: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb {\\n position: absolute;\\n top: 50%;\\n width: 12px;\\n height: 12px;\\n background: #fff;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n transition: box-shadow 0.2s ease;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\\n cursor: pointer;\\n z-index: 3;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb:hover {\\n box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12), 0 1px 3px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-thumb.dplayer-speed-slider-thumb-active {\\n box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.15), 0 1px 3px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick {\\n position: absolute;\\n top: 50%;\\n width: 5px;\\n height: 5px;\\n background: #505050;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 2;\\n pointer-events: none;\\n transition: background 0.15s ease;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-filled {\\n background: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-tick.dplayer-speed-slider-tick-active {\\n background: #fff;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-labels {\\n position: relative;\\n margin-top: 2px;\\n height: 16px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label {\\n position: absolute;\\n top: 0;\\n transform: translateX(-50%);\\n color: rgba(255, 255, 255, 0.45);\\n font-size: 10px;\\n cursor: pointer;\\n text-align: center;\\n transition: color 0.15s ease;\\n user-select: none;\\n white-space: nowrap;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label:hover {\\n color: rgba(255, 255, 255, 0.85);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-speed-panel .dplayer-speed-slider-label.dplayer-speed-slider-label-active {\\n color: #fff;\\n font-weight: 600;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon {\\n width: 40px;\\n height: 100%;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n vertical-align: middle;\\n box-sizing: border-box;\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content {\\n transition: all 0.2s ease-in-out;\\n opacity: 0.8;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content {\\n opacity: 1;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon {\\n color: #fff;\\n width: auto;\\n line-height: 22px;\\n font-size: 14px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon {\\n padding: 10px 9px 9px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon {\\n padding-top: 8.5px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon {\\n width: 43px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume {\\n position: relative;\\n display: inline-block;\\n cursor: pointer;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap {\\n display: inline-block;\\n margin: 0 10px 0 -5px;\\n vertical-align: middle;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n position: relative;\\n top: 17px;\\n width: 0;\\n height: 3px;\\n background: #aaa;\\n transition: all 0.3s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitle-btn {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: fit-content;\\n max-width: 240px;\\n min-width: 120px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: auto;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-box.dplayer-subtitles-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-subtitles .dplayer-subtitles-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 150px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box > div.dplayer-setting-origin-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow {\\n width: 70px;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku {\\n padding: 5px 0;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label {\\n padding: 0 10px;\\n display: inline;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label {\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap {\\n padding: 0 10px;\\n box-sizing: border-box;\\n display: none;\\n vertical-align: middle;\\n height: 100%;\\n width: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar {\\n position: relative;\\n top: 8.5px;\\n width: 100%;\\n height: 3px;\\n background: #fff;\\n transition: all 0.3s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n background: #aaa;\\n will-change: width;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n background: #aaa;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full {\\n display: inline-block;\\n height: 100%;\\n position: relative;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon {\\n position: absolute;\\n top: -30px;\\n z-index: 1;\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n z-index: 2;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask {\\n display: block;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask {\\n display: none;\\n position: absolute;\\n bottom: 38px;\\n left: -18px;\\n width: 80px;\\n padding-bottom: 12px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list {\\n display: none;\\n font-size: 12px;\\n width: 80px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.9);\\n padding: 5px 0;\\n transition: all 0.3s ease-in-out;\\n overflow: hidden;\\n color: #fff;\\n text-align: center;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item {\\n height: 25px;\\n box-sizing: border-box;\\n cursor: pointer;\\n line-height: 25px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-comment {\\n display: inline-block;\\n height: 100%;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-label {\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n white-space: nowrap;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle {\\n width: 32px;\\n height: 20px;\\n text-align: center;\\n font-size: 0;\\n vertical-align: middle;\\n position: absolute;\\n top: 5px;\\n right: 10px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input {\\n max-height: 0;\\n max-width: 0;\\n display: none;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label {\\n display: inline-block;\\n position: relative;\\n box-shadow: #dfdfdf 0 0 0 0 inset;\\n border: 1px solid #dfdfdf;\\n height: 20px;\\n width: 32px;\\n border-radius: 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n transition: 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:before {\\n content: '';\\n position: absolute;\\n display: block;\\n height: 18px;\\n width: 18px;\\n top: 0;\\n left: 0;\\n border-radius: 15px;\\n transition: 0.2s ease-in-out;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input + label:after {\\n content: '';\\n position: absolute;\\n display: block;\\n left: 0;\\n top: 0;\\n border-radius: 15px;\\n background: #fff;\\n transition: 0.2s ease-in-out;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\\n height: 18px;\\n width: 18px;\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label {\\n border-color: rgba(255, 255, 255, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:before {\\n width: 30px;\\n background: rgba(255, 255, 255, 0.5);\\n}\\n.dplayer-controller .dplayer-icons .dplayer-toggle input:checked + label:after {\\n left: 12px;\\n}\\n.dplayer-mobile-play {\\n display: none;\\n width: 50px;\\n height: 50px;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n box-sizing: border-box;\\n bottom: 0;\\n opacity: 0.8;\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n}\\n.dplayer-danmaku {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n}\\n.dplayer-danmaku .dplayer-danmaku-item {\\n display: inline-block;\\n pointer-events: none;\\n user-select: none;\\n cursor: default;\\n white-space: nowrap;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n}\\n.dplayer-danmaku .dplayer-danmaku-item--demo {\\n position: absolute;\\n visibility: hidden;\\n}\\n.dplayer-danmaku .dplayer-danmaku-right {\\n position: absolute;\\n right: 0;\\n transform: translateX(100%);\\n}\\n.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move {\\n will-change: transform;\\n animation-name: danmaku;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n}\\n@keyframes danmaku {\\n from {\\n transform: translateX(100%);\\n }\\n}\\n.dplayer-danmaku .dplayer-danmaku-top,\\n.dplayer-danmaku .dplayer-danmaku-bottom {\\n position: absolute;\\n width: 100%;\\n text-align: center;\\n visibility: hidden;\\n}\\n.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,\\n.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move {\\n will-change: visibility;\\n animation-name: danmaku-center;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n}\\n@keyframes danmaku-center {\\n from {\\n visibility: visible;\\n }\\n to {\\n visibility: visible;\\n }\\n}\\n.dplayer-logo {\\n pointer-events: none;\\n position: absolute;\\n left: 20px;\\n top: 20px;\\n max-width: 50px;\\n max-height: 50px;\\n}\\n.dplayer-logo img {\\n max-width: 100%;\\n max-height: 100%;\\n background: none;\\n}\\n.dplayer-menu {\\n position: absolute;\\n width: 170px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.85);\\n padding: 5px 0;\\n overflow: hidden;\\n z-index: 3;\\n display: none;\\n}\\n.dplayer-menu.dplayer-menu-show {\\n display: block;\\n}\\n.dplayer-menu .dplayer-menu-item {\\n height: 30px;\\n box-sizing: border-box;\\n cursor: pointer;\\n}\\n.dplayer-menu .dplayer-menu-item:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n}\\n.dplayer-menu .dplayer-menu-item a {\\n padding: 0 10px;\\n line-height: 30px;\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n width: 100%;\\n box-sizing: border-box;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n.dplayer-menu .dplayer-menu-item a:hover {\\n text-decoration: none;\\n}\\n.dplayer-notice-list {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n display: flex;\\n flex-direction: column;\\n max-height: 50px;\\n overflow: visible;\\n}\\n.dplayer-notice-list .dplayer-notice {\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(5px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n color: #fff;\\n display: table;\\n pointer-events: none;\\n padding: 5px 10px;\\n font-size: 14px;\\n opacity: 0;\\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n}\\n.dplayer-notice-list .dplayer-notice:not(:last-child) {\\n display: none;\\n}\\n.dplayer-notice-list .remove-notice {\\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n}\\n@keyframes showNotice {\\n 100% {\\n opacity: 1;\\n }\\n}\\n@keyframes removeNotice {\\n 0% {\\n opacity: 1;\\n }\\n 100% {\\n opacity: 0;\\n }\\n}\\n.dplayer-subtitle {\\n position: absolute;\\n bottom: 40px;\\n width: 90%;\\n left: 5%;\\n text-align: center;\\n color: #fff;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n font-size: 20px;\\n}\\n.dplayer-subtitle.dplayer-subtitle-hide {\\n display: none;\\n}\\n.dplayer-mask {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 1;\\n display: none;\\n}\\n.dplayer-mask.dplayer-mask-show {\\n display: block;\\n}\\n.dplayer-video-wrap {\\n position: relative;\\n background: #000;\\n font-size: 0;\\n width: 100%;\\n height: 100%;\\n}\\n.dplayer-video-wrap .dplayer-video {\\n width: 100%;\\n height: 100%;\\n display: none;\\n}\\n.dplayer-video-wrap .dplayer-video-current {\\n display: block;\\n}\\n.dplayer-video-wrap .dplayer-video-prepare {\\n display: none;\\n}\\n.dplayer-info-panel {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n width: 400px;\\n background: rgba(28, 28, 28, 0.8);\\n padding: 10px;\\n color: #fff;\\n font-size: 12px;\\n border-radius: 2px;\\n}\\n.dplayer-info-panel-hide {\\n display: none;\\n}\\n.dplayer-info-panel .dplayer-info-panel-close {\\n cursor: pointer;\\n position: absolute;\\n right: 10px;\\n top: 10px;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item > span {\\n display: inline-block;\\n vertical-align: middle;\\n line-height: 15px;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item-title {\\n width: 100px;\\n text-align: right;\\n margin-right: 10px;\\n}\\n.dplayer-info-panel .dplayer-info-panel-item-data {\\n width: 260px;\\n}\\n/*# sourceMappingURL=index.css.map */\",\".dplayer {\\n position: relative;\\n overflow: hidden;\\n user-select: none;\\n line-height: 1;\\n\\n * {\\n box-sizing: content-box;\\n }\\n\\n svg {\\n width: 100%;\\n height: 100%;\\n\\n path,\\n circle {\\n fill: #fff;\\n }\\n }\\n\\n &:-webkit-full-screen {\\n width: 100%;\\n height: 100%;\\n background: #000;\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n margin: 0;\\n padding: 0;\\n transform: translate(0, 0);\\n \\n }\\n\\n &.dplayer-no-danmaku {\\n .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box {\\n .dplayer-setting-showdan,\\n .dplayer-setting-danmaku,\\n .dplayer-setting-danunlimit {\\n display: none;\\n }\\n }\\n\\n .dplayer-controller .dplayer-icons .dplayer-comment {\\n display: none;\\n }\\n\\n .dplayer-danmaku {\\n display: none;\\n }\\n }\\n\\n &.dplayer-live {\\n .dplayer-time {\\n display: none;\\n }\\n .dplayer-bar-wrap {\\n display: none;\\n }\\n .dplayer-setting-speed {\\n display: none;\\n }\\n .dplayer-setting-loop {\\n display: none;\\n }\\n\\n &.dplayer-no-danmaku {\\n .dplayer-setting {\\n display: none;\\n }\\n }\\n }\\n\\n &.dplayer-arrow {\\n .dplayer-danmaku {\\n font-size: 18px;\\n }\\n .dplayer-icon {\\n margin: 0 -3px;\\n }\\n }\\n\\n &.dplayer-playing {\\n .dplayer-danmaku .dplayer-danmaku-move {\\n animation-play-state: running;\\n }\\n\\n @media (min-width: 900px) {\\n .dplayer-controller-mask {\\n opacity: 0;\\n }\\n .dplayer-controller {\\n opacity: 0;\\n }\\n\\n &:hover {\\n .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer-controller {\\n opacity: 1;\\n }\\n }\\n }\\n }\\n\\n &.dplayer-loading {\\n .dplayer-bezel .diplayer-loading-icon {\\n display: block;\\n }\\n }\\n\\n &.dplayer-loading,\\n &.dplayer-paused {\\n .dplayer-danmaku,\\n .dplayer-danmaku-move {\\n animation-play-state: paused;\\n }\\n }\\n\\n &.dplayer-hide-controller {\\n cursor: none;\\n\\n .dplayer-controller-mask {\\n opacity: 0;\\n transform: translateY(100%);\\n }\\n .dplayer-controller {\\n opacity: 0;\\n transform: translateY(100%);\\n }\\n }\\n &.dplayer-show-controller {\\n .dplayer-controller-mask {\\n opacity: 1;\\n }\\n .dplayer-controller {\\n opacity: 1;\\n }\\n }\\n &.dplayer-fulled {\\n position: fixed;\\n z-index: 100000;\\n left: 0;\\n top: 0;\\n width: 100% !important;\\n height: 100% !important;\\n }\\n &.dplayer-mobile {\\n .dplayer-controller .dplayer-icons {\\n .dplayer-volume,\\n .dplayer-camera-icon,\\n .dplayer-airplay-icon,\\n .dplayer-chromecast-icon,\\n .dplayer-play-icon {\\n display: none;\\n }\\n .dplayer-full .dplayer-full-in-icon {\\n position: static;\\n display: inline-block;\\n }\\n }\\n\\n .dplayer-bar-time {\\n display: none;\\n }\\n\\n &.dplayer-hide-controller {\\n .dplayer-mobile-play {\\n display: none;\\n }\\n }\\n\\n .dplayer-mobile-play {\\n display: block;\\n }\\n }\\n}\\n\\n// To hide scroll bar, apply this class to <body>\\n.dplayer-web-fullscreen-fix {\\n position: fixed;\\n top: 0;\\n left: 0;\\n margin: 0;\\n padding: 0;\\n}\\n\",\"@import '../../node_modules/balloon-css/balloon.css';\\n\\n[data-balloon]:before {\\n display: none;\\n}\\n\\n[data-balloon]:after {\\n padding: 0.3em 0.7em;\\n background: rgba(17, 17, 17, 0.7);\\n}\\n\\n[data-balloon][data-balloon-pos=\\\"up\\\"]:after {\\n margin-bottom: 0;\\n}\",\".dplayer-bezel {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n pointer-events: none;\\n .dplayer-bezel-icon {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -26px 0 0 -26px;\\n height: 52px;\\n width: 52px;\\n padding: 12px;\\n box-sizing: border-box;\\n background: rgba(0, 0, 0, .5);\\n border-radius: 50%;\\n opacity: 0;\\n pointer-events: none;\\n &.dplayer-bezel-transition {\\n animation: bezel-hide .5s linear;\\n }\\n @keyframes bezel-hide {\\n from {\\n opacity: 1;\\n transform: scale(1);\\n }\\n to {\\n opacity: 0;\\n transform: scale(2);\\n }\\n }\\n }\\n .dplayer-danloading {\\n position: absolute;\\n top: 50%;\\n margin-top: -7px;\\n width: 100%;\\n text-align: center;\\n font-size: 14px;\\n line-height: 14px;\\n animation: my-face 5s infinite ease-in-out;\\n }\\n .diplayer-loading-icon {\\n display: none;\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n margin: -18px 0 0 -18px;\\n height: 36px;\\n width: 36px;\\n pointer-events: none;\\n .diplayer-loading-hide {\\n display: none;\\n }\\n .diplayer-loading-dot {\\n animation: diplayer-loading-dot-fade .8s ease infinite;\\n opacity: 0;\\n transform-origin: 4px 4px;\\n each(range(7), {\\n &.diplayer-loading-dot-@{value} {\\n animation-delay: (@value * 0.1s);\\n }\\n });\\n }\\n @keyframes diplayer-loading-dot-fade {\\n 0% {\\n opacity: .7;\\n transform: scale(1.2, 1.2)\\n }\\n 50% {\\n opacity: .25;\\n transform: scale(.9, .9)\\n }\\n to {\\n opacity: .25;\\n transform: scale(.85, .85)\\n }\\n }\\n }\\n}\",\".dplayer-controller-mask {\\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==)\\n repeat-x bottom;\\n height: 98px;\\n width: 100%;\\n position: absolute;\\n bottom: 0;\\n transition: all 0.3s ease;\\n}\\n\\n.dplayer-controller {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n height: 41px;\\n padding: 0 20px;\\n user-select: none;\\n transition: all 0.3s ease;\\n\\n &.dplayer-controller-comment {\\n .dplayer-icons {\\n display: none;\\n }\\n\\n .dplayer-icons.dplayer-comment-box {\\n display: block;\\n }\\n }\\n\\n .dplayer-bar-wrap {\\n padding: 5px 0;\\n cursor: pointer;\\n position: absolute;\\n bottom: 33px;\\n width: calc(100% - 40px);\\n height: 3px;\\n\\n &:hover {\\n .dplayer-bar .dplayer-played .dplayer-thumb {\\n transform: scale(1);\\n }\\n\\n .dplayer-highlight {\\n display: block;\\n width: 8px;\\n transform: translateX(-4px);\\n top: 4px;\\n height: 40%;\\n }\\n }\\n\\n .dplayer-highlight {\\n z-index: 12;\\n position: absolute;\\n top: 5px;\\n width: 6px;\\n height: 20%;\\n border-radius: 6px;\\n background-color: #fff;\\n text-align: center;\\n transform: translateX(-3px);\\n transition: all 0.2s ease-in-out;\\n\\n &:hover {\\n .dplayer-highlight-text {\\n display: block;\\n }\\n\\n & ~ .dplayer-bar-preview {\\n opacity: 0;\\n }\\n\\n & ~ .dplayer-bar-time {\\n opacity: 0;\\n }\\n }\\n\\n .dplayer-highlight-text {\\n display: none;\\n position: absolute;\\n left: 50%;\\n top: -24px;\\n padding: 5px 8px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n border-radius: 4px;\\n font-size: 12px;\\n white-space: nowrap;\\n transform: translateX(-50%);\\n }\\n }\\n\\n .dplayer-bar-preview {\\n position: absolute;\\n background: #fff;\\n pointer-events: none;\\n display: none;\\n background-size: 16000px 100%;\\n }\\n\\n .dplayer-bar-preview-canvas {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n z-index: 1;\\n pointer-events: none;\\n }\\n\\n .dplayer-bar-time {\\n &.hidden {\\n opacity: 0;\\n }\\n\\n position: absolute;\\n left: 0px;\\n top: -20px;\\n border-radius: 4px;\\n padding: 5px 7px;\\n background-color: rgba(0, 0, 0, 0.62);\\n color: #fff;\\n font-size: 12px;\\n text-align: center;\\n opacity: 1;\\n transition: opacity 0.1s ease-in-out;\\n word-wrap: normal;\\n word-break: normal;\\n z-index: 2;\\n pointer-events: none;\\n }\\n\\n .dplayer-bar {\\n position: relative;\\n height: 3px;\\n width: 100%;\\n background: rgba(255, 255, 255, 0.2);\\n cursor: pointer;\\n\\n .dplayer-loaded {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: rgba(255, 255, 255, 0.4);\\n height: 3px;\\n transition: all 0.5s ease;\\n will-change: width;\\n }\\n\\n .dplayer-played {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n height: 3px;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n }\\n }\\n }\\n }\\n\\n .dplayer-icons {\\n height: 38px;\\n position: absolute;\\n bottom: 0;\\n\\n &.dplayer-comment-box {\\n display: none;\\n position: absolute;\\n transition: all 0.3s ease-in-out;\\n z-index: 2;\\n height: 38px;\\n bottom: 0;\\n left: 20px;\\n right: 20px;\\n color: #fff;\\n\\n .dplayer-icon {\\n padding: 7px;\\n }\\n\\n .dplayer-comment-setting-icon {\\n position: absolute;\\n left: 0;\\n top: 0;\\n }\\n\\n .dplayer-send-icon {\\n position: absolute;\\n right: 0;\\n top: 0;\\n }\\n\\n .dplayer-comment-setting-box {\\n position: absolute;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n bottom: 41px;\\n left: 0;\\n box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);\\n border-radius: 4px;\\n padding: 10px 10px 16px;\\n font-size: 14px;\\n width: 204px;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n opacity: 0;\\n transform: translateY(10px) scale(0.95);\\n visibility: hidden;\\n pointer-events: none;\\n\\n &.dplayer-comment-setting-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n\\n input[type='radio'] {\\n display: none;\\n }\\n\\n label {\\n cursor: pointer;\\n }\\n\\n .dplayer-comment-setting-title {\\n font-size: 13px;\\n color: #fff;\\n line-height: 30px;\\n }\\n\\n .dplayer-comment-setting-type {\\n font-size: 0;\\n\\n .dplayer-comment-setting-title {\\n margin-bottom: 6px;\\n }\\n\\n label {\\n &:nth-child(2) {\\n span {\\n border-radius: 4px 0 0 4px;\\n }\\n }\\n\\n &:nth-child(4) {\\n span {\\n border-radius: 0 4px 4px 0;\\n }\\n }\\n }\\n\\n span {\\n width: 33%;\\n padding: 4px 6px;\\n line-height: 16px;\\n display: inline-block;\\n font-size: 12px;\\n color: #fff;\\n border: 1px solid #fff;\\n margin-right: -1px;\\n box-sizing: border-box;\\n text-align: center;\\n cursor: pointer;\\n }\\n\\n input:checked + span {\\n background: #e4e4e6;\\n color: #1c1c1c;\\n }\\n }\\n\\n .dplayer-comment-setting-color {\\n font-size: 0;\\n\\n label {\\n font-size: 0;\\n padding: 6px;\\n display: inline-block;\\n }\\n\\n span {\\n width: 22px;\\n height: 22px;\\n display: inline-block;\\n border-radius: 50%;\\n box-sizing: border-box;\\n cursor: pointer;\\n\\n &:hover {\\n animation: my-face 5s infinite ease-in-out;\\n }\\n }\\n }\\n }\\n\\n .dplayer-comment-input {\\n outline: none;\\n border: none;\\n padding: 8px 31px;\\n font-size: 14px;\\n line-height: 18px;\\n text-align: center;\\n border-radius: 4px;\\n background: none;\\n margin: 0;\\n height: 100%;\\n box-sizing: border-box;\\n width: 100%;\\n color: #fff;\\n\\n &::placeholder {\\n color: #fff;\\n opacity: 0.8;\\n }\\n\\n &::-ms-clear {\\n display: none;\\n }\\n }\\n }\\n\\n &.dplayer-icons-left {\\n .dplayer-icon {\\n padding: 7px;\\n }\\n }\\n\\n &.dplayer-icons-right {\\n right: 20px;\\n\\n .dplayer-icon {\\n padding: 8px;\\n }\\n }\\n\\n .dplayer-time,\\n .dplayer-live-badge {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: default;\\n }\\n\\n .dplayer-live-dot {\\n display: inline-block;\\n width: 6px;\\n height: 6px;\\n vertical-align: 4%;\\n margin-right: 5px;\\n content: '';\\n border-radius: 6px;\\n }\\n\\n .dplayer-speed-wrap {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n vertical-align: middle;\\n margin-left: 10px;\\n }\\n\\n .dplayer-speed-indicator {\\n line-height: 38px;\\n color: #eee;\\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);\\n vertical-align: middle;\\n font-size: 13px;\\n cursor: pointer;\\n padding: 0 4px;\\n border-radius: 3px;\\n transition:\\n background 0.2s ease,\\n color 0.2s ease;\\n display: inline-block;\\n min-width: 32px;\\n text-align: center;\\n\\n &:hover {\\n background: rgba(255, 255, 255, 0.1);\\n color: #fff;\\n }\\n }\\n\\n .dplayer-speed-panel {\\n position: absolute;\\n bottom: 42px;\\n left: 50%;\\n transform: translateX(-50%) translateY(8px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 280px;\\n border-radius: 10px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow:\\n 0 4px 24px rgba(0, 0, 0, 0.4),\\n 0 0 0 1px rgba(255, 255, 255, 0.06);\\n padding: 16px 20px 12px;\\n transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\\n z-index: 10;\\n box-sizing: border-box;\\n\\n &::after {\\n content: '';\\n position: absolute;\\n bottom: -6px;\\n left: 50%;\\n transform: translateX(-50%);\\n width: 0;\\n height: 0;\\n border-left: 6px solid transparent;\\n border-right: 6px solid transparent;\\n border-top: 6px solid rgba(28, 28, 28, 0.7);\\n }\\n\\n &.dplayer-speed-panel-open {\\n opacity: 1;\\n visibility: visible;\\n pointer-events: auto;\\n transform: translateX(-50%) translateY(0) scale(1);\\n }\\n\\n .dplayer-speed-panel-title {\\n color: rgba(255, 255, 255, 0.7);\\n font-size: 12px;\\n margin-bottom: 14px;\\n letter-spacing: 0.5px;\\n }\\n\\n .dplayer-speed-slider-wrap {\\n position: relative;\\n width: 100%;\\n padding: 0;\\n box-sizing: border-box;\\n display: flex;\\n align-items: flex-start;\\n gap: 8px;\\n }\\n\\n .dplayer-speed-slider-btn {\\n flex-shrink: 0;\\n border: none;\\n background: none;\\n color: rgba(255, 255, 255, 0.85);\\n font-size: 18px;\\n font-weight: 700;\\n width: 24px;\\n height: 22px;\\n line-height: 22px;\\n text-align: center;\\n cursor: pointer;\\n padding: 0;\\n user-select: none;\\n transition:\\n color 0.15s ease,\\n opacity 0.15s ease;\\n\\n &:hover {\\n color: #fff;\\n opacity: 1;\\n }\\n\\n &:active {\\n transform: scale(0.9);\\n }\\n }\\n\\n .dplayer-speed-slider-inner {\\n flex: 1;\\n min-width: 0;\\n }\\n\\n .dplayer-speed-slider-track {\\n position: relative;\\n width: 100%;\\n height: 22px;\\n cursor: pointer;\\n\\n &::before {\\n content: '';\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n width: 100%;\\n height: 3px;\\n background: rgba(255, 255, 255, 0.18);\\n border-radius: 1.5px;\\n }\\n }\\n\\n .dplayer-speed-slider-filled {\\n position: absolute;\\n left: 0;\\n top: 50%;\\n transform: translateY(-50%);\\n height: 3px;\\n background: #fff;\\n border-radius: 1.5px 0 0 1.5px;\\n pointer-events: none;\\n z-index: 1;\\n }\\n\\n .dplayer-speed-slider-thumb {\\n position: absolute;\\n top: 50%;\\n width: 12px;\\n height: 12px;\\n background: #fff;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n transition: box-shadow 0.2s ease;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);\\n cursor: pointer;\\n z-index: 3;\\n\\n &:hover {\\n box-shadow:\\n 0 0 0 5px rgba(255, 255, 255, 0.12),\\n 0 1px 3px rgba(0, 0, 0, 0.5);\\n }\\n\\n &.dplayer-speed-slider-thumb-active {\\n box-shadow:\\n 0 0 0 7px rgba(255, 255, 255, 0.15),\\n 0 1px 3px rgba(0, 0, 0, 0.5);\\n }\\n }\\n\\n .dplayer-speed-slider-tick {\\n position: absolute;\\n top: 50%;\\n width: 5px;\\n height: 5px;\\n background: #505050;\\n border-radius: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 2;\\n pointer-events: none;\\n transition: background 0.15s ease;\\n\\n &.dplayer-speed-slider-tick-filled {\\n background: #fff;\\n }\\n\\n &.dplayer-speed-slider-tick-active {\\n background: #fff;\\n }\\n }\\n\\n .dplayer-speed-slider-labels {\\n position: relative;\\n margin-top: 2px;\\n height: 16px;\\n }\\n\\n .dplayer-speed-slider-label {\\n position: absolute;\\n top: 0;\\n transform: translateX(-50%);\\n color: rgba(255, 255, 255, 0.45);\\n font-size: 10px;\\n cursor: pointer;\\n text-align: center;\\n transition: color 0.15s ease;\\n user-select: none;\\n white-space: nowrap;\\n\\n &:hover {\\n color: rgba(255, 255, 255, 0.85);\\n }\\n\\n &.dplayer-speed-slider-label-active {\\n color: #fff;\\n font-weight: 600;\\n }\\n }\\n }\\n\\n .dplayer-icon {\\n width: 40px;\\n height: 100%;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n vertical-align: middle;\\n box-sizing: border-box;\\n display: inline-block;\\n\\n .dplayer-icon-content {\\n transition: all 0.2s ease-in-out;\\n opacity: 0.8;\\n }\\n\\n &:hover {\\n .dplayer-icon-content {\\n opacity: 1;\\n }\\n }\\n\\n &.dplayer-quality-icon {\\n color: #fff;\\n width: auto;\\n line-height: 22px;\\n font-size: 14px;\\n }\\n\\n &.dplayer-comment-icon {\\n padding: 10px 9px 9px;\\n }\\n\\n &.dplayer-setting-icon {\\n padding-top: 8.5px;\\n }\\n\\n &.dplayer-volume-icon {\\n width: 43px;\\n }\\n }\\n\\n .dplayer-volume {\\n position: relative;\\n display: inline-block;\\n cursor: pointer;\\n height: 100%;\\n\\n &:hover {\\n .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n }\\n\\n .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n }\\n }\\n\\n &.dplayer-volume-active {\\n .dplayer-volume-bar-wrap .dplayer-volume-bar {\\n width: 45px;\\n }\\n\\n .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb {\\n transform: scale(1);\\n }\\n }\\n\\n .dplayer-volume-bar-wrap {\\n display: inline-block;\\n margin: 0 10px 0 -5px;\\n vertical-align: middle;\\n height: 100%;\\n\\n .dplayer-volume-bar {\\n position: relative;\\n top: 17px;\\n width: 0;\\n height: 3px;\\n background: #aaa;\\n transition: all 0.3s ease-in-out;\\n\\n .dplayer-volume-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n transform: scale(0);\\n }\\n }\\n }\\n }\\n }\\n\\n .dplayer-subtitle-btn {\\n display: inline-block;\\n height: 100%;\\n }\\n\\n .dplayer-subtitles {\\n display: inline-block;\\n height: 100%;\\n\\n .dplayer-subtitles-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: fit-content;\\n max-width: 240px;\\n min-width: 120px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: auto;\\n z-index: 2;\\n\\n &.dplayer-subtitles-panel {\\n display: block;\\n }\\n\\n &.dplayer-subtitles-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n }\\n\\n .dplayer-subtitles-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n }\\n\\n .dplayer-setting {\\n display: inline-block;\\n height: 100%;\\n\\n .dplayer-setting-box {\\n position: absolute;\\n right: 0;\\n bottom: 50px;\\n transform: translateY(10px) scale(0.95);\\n opacity: 0;\\n visibility: hidden;\\n pointer-events: none;\\n width: 150px;\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(10px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\\n padding: 7px 0;\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n z-index: 2;\\n\\n & > div {\\n display: none;\\n\\n &.dplayer-setting-origin-panel {\\n display: block;\\n }\\n }\\n\\n &.dplayer-setting-box-open {\\n opacity: 1;\\n transform: translateY(0) scale(1);\\n visibility: visible;\\n pointer-events: auto;\\n }\\n\\n &.dplayer-setting-box-narrow {\\n width: 70px;\\n text-align: center;\\n }\\n\\n &.dplayer-setting-box-speed {\\n .dplayer-setting-origin-panel {\\n display: none;\\n }\\n\\n .dplayer-setting-speed-panel {\\n display: block;\\n }\\n }\\n }\\n\\n .dplayer-setting-item,\\n .dplayer-setting-speed-item {\\n height: 30px;\\n padding: 5px 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n position: relative;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n\\n .dplayer-setting-danmaku {\\n padding: 5px 0;\\n\\n .dplayer-label {\\n padding: 0 10px;\\n display: inline;\\n }\\n\\n &:hover {\\n .dplayer-label {\\n display: none;\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n }\\n }\\n\\n &.dplayer-setting-danmaku-active {\\n .dplayer-label {\\n display: none;\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n display: inline-block;\\n }\\n }\\n\\n .dplayer-danmaku-bar-wrap {\\n padding: 0 10px;\\n box-sizing: border-box;\\n display: none;\\n vertical-align: middle;\\n height: 100%;\\n width: 100%;\\n\\n .dplayer-danmaku-bar {\\n position: relative;\\n top: 8.5px;\\n width: 100%;\\n height: 3px;\\n background: #fff;\\n transition: all 0.3s ease-in-out;\\n\\n .dplayer-danmaku-bar-inner {\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n height: 100%;\\n transition: all 0.1s ease;\\n background: #aaa;\\n will-change: width;\\n\\n .dplayer-thumb {\\n position: absolute;\\n top: 0;\\n right: 5px;\\n margin-top: -4px;\\n margin-right: -10px;\\n height: 11px;\\n width: 11px;\\n border-radius: 50%;\\n cursor: pointer;\\n transition: all 0.3s ease-in-out;\\n background: #aaa;\\n }\\n }\\n }\\n }\\n }\\n }\\n\\n .dplayer-full {\\n display: inline-block;\\n height: 100%;\\n position: relative;\\n\\n &:hover {\\n .dplayer-full-in-icon {\\n display: block;\\n }\\n }\\n\\n .dplayer-full-in-icon {\\n position: absolute;\\n top: -30px;\\n z-index: 1;\\n display: none;\\n }\\n }\\n\\n .dplayer-quality {\\n position: relative;\\n display: inline-block;\\n height: 100%;\\n z-index: 2;\\n\\n &:hover {\\n .dplayer-quality-list {\\n display: block;\\n }\\n\\n .dplayer-quality-mask {\\n display: block;\\n }\\n }\\n\\n .dplayer-quality-mask {\\n display: none;\\n position: absolute;\\n bottom: 38px;\\n left: -18px;\\n width: 80px;\\n padding-bottom: 12px;\\n }\\n\\n .dplayer-quality-list {\\n display: none;\\n font-size: 12px;\\n width: 80px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.9);\\n padding: 5px 0;\\n transition: all 0.3s ease-in-out;\\n overflow: hidden;\\n color: #fff;\\n text-align: center;\\n }\\n\\n .dplayer-quality-item {\\n height: 25px;\\n box-sizing: border-box;\\n cursor: pointer;\\n line-height: 25px;\\n\\n &:hover {\\n background-color: rgba(255, 255, 255, 0.1);\\n }\\n }\\n }\\n\\n .dplayer-comment {\\n display: inline-block;\\n height: 100%;\\n }\\n\\n .dplayer-label {\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n white-space: nowrap;\\n }\\n\\n .dplayer-toggle {\\n width: 32px;\\n height: 20px;\\n text-align: center;\\n font-size: 0;\\n vertical-align: middle;\\n position: absolute;\\n top: 5px;\\n right: 10px;\\n\\n input {\\n max-height: 0;\\n max-width: 0;\\n display: none;\\n }\\n\\n input + label {\\n display: inline-block;\\n position: relative;\\n box-shadow: rgb(223, 223, 223) 0 0 0 0 inset;\\n border: 1px solid rgb(223, 223, 223);\\n height: 20px;\\n width: 32px;\\n border-radius: 10px;\\n box-sizing: border-box;\\n cursor: pointer;\\n transition: 0.2s ease-in-out;\\n }\\n\\n input + label:before {\\n content: '';\\n position: absolute;\\n display: block;\\n height: 18px;\\n width: 18px;\\n top: 0;\\n left: 0;\\n border-radius: 15px;\\n transition: 0.2s ease-in-out;\\n }\\n\\n input + label:after {\\n content: '';\\n position: absolute;\\n display: block;\\n left: 0;\\n top: 0;\\n border-radius: 15px;\\n background: #fff;\\n transition: 0.2s ease-in-out;\\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);\\n height: 18px;\\n width: 18px;\\n }\\n\\n input:checked + label {\\n border-color: rgba(255, 255, 255, 0.5);\\n }\\n\\n input:checked + label:before {\\n width: 30px;\\n background: rgba(255, 255, 255, 0.5);\\n }\\n\\n input:checked + label:after {\\n left: 12px;\\n }\\n }\\n }\\n}\\n\\n.dplayer-mobile-play {\\n display: none;\\n width: 50px;\\n height: 50px;\\n border: none;\\n background-color: transparent;\\n outline: none;\\n cursor: pointer;\\n box-sizing: border-box;\\n position: absolute;\\n bottom: 0;\\n opacity: 0.8;\\n position: absolute;\\n left: 50%;\\n top: 50%;\\n transform: translate(-50%, -50%);\\n}\\n\",\".dplayer-danmaku {\\n position: absolute;\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n font-size: 22px;\\n color: #fff;\\n .dplayer-danmaku-item {\\n display: inline-block;\\n pointer-events: none;\\n user-select: none;\\n cursor: default;\\n white-space: nowrap;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n &--demo {\\n position: absolute;\\n visibility: hidden;\\n }\\n }\\n .dplayer-danmaku-right {\\n position: absolute;\\n right: 0;\\n transform: translateX(100%);\\n &.dplayer-danmaku-move {\\n will-change: transform;\\n animation-name: danmaku;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n }\\n }\\n @keyframes danmaku {\\n from {\\n transform: translateX(100%);\\n }\\n }\\n .dplayer-danmaku-top,\\n .dplayer-danmaku-bottom {\\n position: absolute;\\n width: 100%;\\n text-align: center;\\n visibility: hidden;\\n &.dplayer-danmaku-move {\\n will-change: visibility;\\n animation-name: danmaku-center;\\n animation-timing-function: linear;\\n animation-play-state: paused;\\n }\\n }\\n @keyframes danmaku-center {\\n from {\\n visibility: visible;\\n }\\n to {\\n visibility: visible;\\n }\\n }\\n}\\n\",\".dplayer-logo {\\n pointer-events: none;\\n position: absolute;\\n left: 20px;\\n top: 20px;\\n max-width: 50px;\\n max-height: 50px;\\n img {\\n max-width: 100%;\\n max-height: 100%;\\n background: none;\\n }\\n}\",\".dplayer-menu {\\n position: absolute;\\n width: 170px;\\n border-radius: 2px;\\n background: rgba(28, 28, 28, 0.85);\\n padding: 5px 0;\\n overflow: hidden;\\n z-index: 3;\\n display: none;\\n &.dplayer-menu-show {\\n display: block;\\n }\\n .dplayer-menu-item {\\n height: 30px;\\n box-sizing: border-box;\\n cursor: pointer;\\n &:hover {\\n background-color: rgba(255, 255, 255, .1);\\n }\\n a {\\n display: inline-block;\\n padding: 0 10px;\\n line-height: 30px;\\n color: #eee;\\n font-size: 13px;\\n display: inline-block;\\n vertical-align: middle;\\n width: 100%;\\n box-sizing: border-box;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n &:hover {\\n text-decoration: none;\\n }\\n }\\n }\\n}\",\".dplayer-notice-list {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n // Prevent stacking - show only latest notice\\n display: flex;\\n flex-direction: column;\\n max-height: 50px;\\n overflow: visible;\\n\\n .dplayer-notice {\\n border-radius: 4px;\\n background: rgba(28, 28, 28, 0.7);\\n backdrop-filter: blur(5px);\\n box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);\\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n overflow: hidden;\\n color: #fff;\\n display: table;\\n pointer-events: none;\\n padding: 5px 10px;\\n font-size: 14px;\\n opacity: 0;\\n animation: showNotice 0.3s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n\\n &:not(:last-child) {\\n display: none; // Hide all but the latest notice\\n }\\n }\\n\\n .remove-notice {\\n animation: removeNotice 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;\\n }\\n}\\n\\n@keyframes showNotice {\\n 100% {\\n opacity: 1;\\n }\\n}\\n\\n@keyframes removeNotice {\\n 0% {\\n opacity: 1;\\n }\\n\\n 100% {\\n opacity: 0;\\n }\\n}\\n\",\".dplayer-subtitle {\\n position: absolute;\\n bottom: 40px;\\n width: 90%;\\n left: 5%;\\n text-align: center;\\n color: #fff;\\n text-shadow: 0.5px 0.5px 0.5px rgba(0, 0, 0, 0.5);\\n font-size: 20px;\\n &.dplayer-subtitle-hide {\\n display: none;\\n }\\n}\",\".dplayer-mask {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n left: 0;\\n right: 0;\\n z-index: 1;\\n display: none;\\n &.dplayer-mask-show {\\n display: block;\\n }\\n}\\n\\n.dplayer-video-wrap {\\n position: relative;\\n background: #000;\\n font-size: 0;\\n width: 100%;\\n height: 100%;\\n .dplayer-video {\\n width: 100%;\\n height: 100%;\\n display: none;\\n }\\n .dplayer-video-current {\\n display: block;\\n }\\n .dplayer-video-prepare {\\n display: none;\\n }\\n}\",\".dplayer-info-panel {\\n position: absolute;\\n top: 10px;\\n left: 10px;\\n width: 400px;\\n background: rgba(28, 28, 28, 0.8);\\n padding: 10px;\\n color: #fff;\\n font-size: 12px;\\n border-radius: 2px;\\n\\n &-hide {\\n display: none;\\n }\\n\\n .dplayer-info-panel-close {\\n cursor: pointer;\\n position: absolute;\\n right: 10px;\\n top: 10px;\\n }\\n\\n .dplayer-info-panel-item {\\n & > span {\\n display: inline-block;\\n vertical-align: middle;\\n line-height: 15px;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n }\\n }\\n\\n .dplayer-info-panel-item-title {\\n width: 100px;\\n text-align: right;\\n margin-right: 10px;\\n }\\n \\n .dplayer-info-panel-item-data {\\n width: 260px;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 32\\\"><path d=\\\"M16 23c-3.309 0-6-2.691-6-6s2.691-6 6-6 6 2.691 6 6-2.691 6-6 6zM16 13c-2.206 0-4 1.794-4 4s1.794 4 4 4c2.206 0 4-1.794 4-4s-1.794-4-4-4zM27 28h-22c-1.654 0-3-1.346-3-3v-16c0-1.654 1.346-3 3-3h3c0.552 0 1 0.448 1 1s-0.448 1-1 1h-3c-0.551 0-1 0.449-1 1v16c0 0.552 0.449 1 1 1h22c0.552 0 1-0.448 1-1v-16c0-0.551-0.448-1-1-1h-11c-0.552 0-1-0.448-1-1s0.448-1 1-1h11c1.654 0 3 1.346 3 3v16c0 1.654-1.346 3-3 3zM24 10.5c0 0.828 0.672 1.5 1.5 1.5s1.5-0.672 1.5-1.5c0-0.828-0.672-1.5-1.5-1.5s-1.5 0.672-1.5 1.5zM15 4c0 0.552-0.448 1-1 1h-4c-0.552 0-1-0.448-1-1v0c0-0.552 0.448-1 1-1h4c0.552 0 1 0.448 1 1v0z\\\"></path></svg>\"","'use strict';\nmodule.exports = require('./compile/runtime');","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","'use strict';\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === 'function') {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,'.concat(base64);\n var sourceMapping = '/*# '.concat(data, ' */');\n return [content].concat([sourceMapping]).join('\\n');\n }\n return [content].join('\\n');\n};","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 33\\\"><path d=\\\"M6.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v4h4c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333zM30.667 28h-5.333c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h4v-4c0-0.8 0.533-1.333 1.333-1.333s1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM30.667 12c-0.8 0-1.333-0.533-1.333-1.333v-4h-4c-0.8 0-1.333-0.533-1.333-1.333s0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333v5.333c0 0.8-0.533 1.333-1.333 1.333zM1.333 12c-0.8 0-1.333-0.533-1.333-1.333v-5.333c0-0.8 0.533-1.333 1.333-1.333h5.333c0.8 0 1.333 0.533 1.333 1.333s-0.533 1.333-1.333 1.333h-4v4c0 0.8-0.533 1.333-1.333 1.333z\\\"></path></svg>\"","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:root {\n --balloon-border-radius: 2px;\n --balloon-color: rgba(16, 16, 16, 0.95);\n --balloon-text-color: #fff;\n --balloon-font-size: 12px;\n --balloon-move: 4px; }\n\nbutton[aria-label][data-balloon-pos] {\n overflow: visible; }\n\n[aria-label][data-balloon-pos] {\n position: relative;\n cursor: pointer; }\n [aria-label][data-balloon-pos]:after {\n opacity: 0;\n pointer-events: none;\n transition: all 0.18s ease-out 0.18s;\n text-indent: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif;\n font-weight: normal;\n font-style: normal;\n text-shadow: none;\n font-size: 12px;\n font-size: var(--balloon-font-size);\n background: rgba(16, 16, 16, 0.95);\n background: var(--balloon-color);\n border-radius: 2px;\n color: #fff;\n color: var(--balloon-text-color);\n border-radius: var(--balloon-border-radius);\n content: attr(aria-label);\n padding: .5em 1em;\n position: absolute;\n white-space: nowrap;\n z-index: 10; }\n [aria-label][data-balloon-pos]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-top-color: rgba(16, 16, 16, 0.95);\n border-top-color: var(--balloon-color);\n opacity: 0;\n pointer-events: none;\n transition: all 0.18s ease-out 0.18s;\n content: \"\";\n position: absolute;\n z-index: 10; }\n [aria-label][data-balloon-pos]:hover:before, [aria-label][data-balloon-pos]:hover:after, [aria-label][data-balloon-pos][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-visible]:after, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after {\n opacity: 1;\n pointer-events: none; }\n [aria-label][data-balloon-pos].font-awesome:after {\n font-family: FontAwesome, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }\n [aria-label][data-balloon-pos][data-balloon-break]:after {\n white-space: pre; }\n [aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after {\n white-space: pre-line;\n word-break: break-word; }\n [aria-label][data-balloon-pos][data-balloon-blunt]:before, [aria-label][data-balloon-pos][data-balloon-blunt]:after {\n transition: none; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"][data-balloon-visible]:after {\n transform: translate(-50%, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"][data-balloon-visible]:before {\n transform: translate(-50%, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-left\"]:after {\n left: 0; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-left\"]:before {\n left: 5px; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:after {\n right: 0; }\n [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:before {\n right: 5px; }\n [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"][data-balloon-visible]:after {\n transform: translate(0, 0); }\n [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-po*=\"-left\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos*=\"-right\"][data-balloon-visible]:before {\n transform: translate(0, 0); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:after {\n bottom: 100%;\n transform-origin: top;\n transform: translate(0, 4px);\n transform: translate(0, var(--balloon-move)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"up\"]:after {\n margin-bottom: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"up\"]:after {\n left: 50%;\n transform: translate(-50%, 4px);\n transform: translate(-50%, var(--balloon-move)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:after {\n top: 100%;\n transform: translate(0, calc(4px * -1));\n transform: translate(0, calc(var(--balloon-move) * -1)); }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:after {\n margin-top: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos^=\"down\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-bottom-color: rgba(16, 16, 16, 0.95);\n border-bottom-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"down\"]:before {\n left: 50%;\n transform: translate(-50%, calc(4px * -1));\n transform: translate(-50%, calc(var(--balloon-move) * -1)); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"][data-balloon-visible]:after {\n transform: translate(0, -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"][data-balloon-visible]:before {\n transform: translate(0, -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:before {\n right: 100%;\n top: 50%;\n transform: translate(4px, -50%);\n transform: translate(var(--balloon-move), -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:after {\n margin-right: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"left\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-left-color: rgba(16, 16, 16, 0.95);\n border-left-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:before {\n left: 100%;\n top: 50%;\n transform: translate(calc(4px * -1), -50%);\n transform: translate(calc(var(--balloon-move) * -1), -50%); }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:after {\n margin-left: 10px; }\n [aria-label][data-balloon-pos][data-balloon-pos=\"right\"]:before {\n width: 0;\n height: 0;\n border: 5px solid transparent;\n border-right-color: rgba(16, 16, 16, 0.95);\n border-right-color: var(--balloon-color); }\n [aria-label][data-balloon-pos][data-balloon-length]:after {\n white-space: normal; }\n [aria-label][data-balloon-pos][data-balloon-length=\"small\"]:after {\n width: 80px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"medium\"]:after {\n width: 150px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"large\"]:after {\n width: 260px; }\n [aria-label][data-balloon-pos][data-balloon-length=\"xlarge\"]:after {\n width: 380px; }\n @media screen and (max-width: 768px) {\n [aria-label][data-balloon-pos][data-balloon-length=\"xlarge\"]:after {\n width: 90vw; } }\n [aria-label][data-balloon-pos][data-balloon-length=\"fit\"]:after {\n width: 100%; }\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/balloon-css/balloon.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,4BAA4B;EAC5B,uCAAuC;EACvC,0BAA0B;EAC1B,yBAAyB;EACzB,mBAAmB,EAAE;;AAEvB;EACE,iBAAiB,EAAE;;AAErB;EACE,kBAAkB;EAClB,eAAe,EAAE;EACjB;IACE,UAAU;IACV,oBAAoB;IACpB,oCAAoC;IACpC,cAAc;IACd,wIAAwI;IACxI,mBAAmB;IACnB,kBAAkB;IAClB,iBAAiB;IACjB,eAAmC;IAAnC,mCAAmC;IACnC,kCAAgC;IAAhC,gCAAgC;IAChC,kBAAkB;IAClB,WAAgC;IAAhC,gCAAgC;IAChC,2CAA2C;IAC3C,yBAAyB;IACzB,iBAAiB;IACjB,kBAAkB;IAClB,mBAAmB;IACnB,WAAW,EAAE;EACf;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,wCAAsC;IAAtC,sCAAsC;IACtC,UAAU;IACV,oBAAoB;IACpB,oCAAoC;IACpC,WAAW;IACX,kBAAkB;IAClB,WAAW,EAAE;EACf;IACE,UAAU;IACV,oBAAoB,EAAE;EACxB;IACE,qJAAqJ,EAAE;EACzJ;IACE,gBAAgB,EAAE;EACpB;IACE,qBAAqB;IACrB,sBAAsB,EAAE;EAC1B;IACE,gBAAgB,EAAE;EACpB;IACE,6BAA6B,EAAE;EACjC;IACE,6BAA6B,EAAE;EACjC;IACE,OAAO,EAAE;EACX;IACE,SAAS,EAAE;EACb;IACE,QAAQ,EAAE;EACZ;IACE,UAAU,EAAE;EACd;IACE,0BAA0B,EAAE;EAC9B;IACE,0BAA0B,EAAE;EAC9B;IACE,YAAY;IACZ,qBAAqB;IACrB,4BAA4C;IAA5C,4CAA4C,EAAE;EAChD;IACE,mBAAmB,EAAE;EACvB;IACE,SAAS;IACT,+BAA+C;IAA/C,+CAA+C,EAAE;EACnD;IACE,SAAS;IACT,uCAAuD;IAAvD,uDAAuD,EAAE;EAC3D;IACE,gBAAgB,EAAE;EACpB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,2CAAyC;IAAzC,yCAAyC,EAAE;EAC7C;IACE,SAAS;IACT,0CAA0D;IAA1D,0DAA0D,EAAE;EAC9D;IACE,6BAA6B,EAAE;EACjC;IACE,6BAA6B,EAAE;EACjC;IACE,WAAW;IACX,QAAQ;IACR,+BAA+C;IAA/C,+CAA+C,EAAE;EACnD;IACE,kBAAkB,EAAE;EACtB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,yCAAuC;IAAvC,uCAAuC,EAAE;EAC3C;IACE,UAAU;IACV,QAAQ;IACR,0CAA0D;IAA1D,0DAA0D,EAAE;EAC9D;IACE,iBAAiB,EAAE;EACrB;IACE,QAAQ;IACR,SAAS;IACT,6BAA6B;IAC7B,0CAAwC;IAAxC,wCAAwC,EAAE;EAC5C;IACE,mBAAmB,EAAE;EACvB;IACE,WAAW,EAAE;EACf;IACE,YAAY,EAAE;EAChB;IACE,YAAY,EAAE;EAChB;IACE,YAAY,EAAE;IACd;MACE;QACE,WAAW,EAAE,EAAE;EACrB;IACE,WAAW,EAAE\",\"sourcesContent\":[\":root {\\n --balloon-border-radius: 2px;\\n --balloon-color: rgba(16, 16, 16, 0.95);\\n --balloon-text-color: #fff;\\n --balloon-font-size: 12px;\\n --balloon-move: 4px; }\\n\\nbutton[aria-label][data-balloon-pos] {\\n overflow: visible; }\\n\\n[aria-label][data-balloon-pos] {\\n position: relative;\\n cursor: pointer; }\\n [aria-label][data-balloon-pos]:after {\\n opacity: 0;\\n pointer-events: none;\\n transition: all 0.18s ease-out 0.18s;\\n text-indent: 0;\\n font-family: -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, Oxygen, Ubuntu, Cantarell, \\\"Open Sans\\\", \\\"Helvetica Neue\\\", sans-serif;\\n font-weight: normal;\\n font-style: normal;\\n text-shadow: none;\\n font-size: var(--balloon-font-size);\\n background: var(--balloon-color);\\n border-radius: 2px;\\n color: var(--balloon-text-color);\\n border-radius: var(--balloon-border-radius);\\n content: attr(aria-label);\\n padding: .5em 1em;\\n position: absolute;\\n white-space: nowrap;\\n z-index: 10; }\\n [aria-label][data-balloon-pos]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-top-color: var(--balloon-color);\\n opacity: 0;\\n pointer-events: none;\\n transition: all 0.18s ease-out 0.18s;\\n content: \\\"\\\";\\n position: absolute;\\n z-index: 10; }\\n [aria-label][data-balloon-pos]:hover:before, [aria-label][data-balloon-pos]:hover:after, [aria-label][data-balloon-pos][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-visible]:after, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before, [aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after {\\n opacity: 1;\\n pointer-events: none; }\\n [aria-label][data-balloon-pos].font-awesome:after {\\n font-family: FontAwesome, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; }\\n [aria-label][data-balloon-pos][data-balloon-break]:after {\\n white-space: pre; }\\n [aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after {\\n white-space: pre-line;\\n word-break: break-word; }\\n [aria-label][data-balloon-pos][data-balloon-blunt]:before, [aria-label][data-balloon-pos][data-balloon-blunt]:after {\\n transition: none; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"][data-balloon-visible]:after {\\n transform: translate(-50%, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"][data-balloon-visible]:before {\\n transform: translate(-50%, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-left\\\"]:after {\\n left: 0; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-left\\\"]:before {\\n left: 5px; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:after {\\n right: 0; }\\n [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:before {\\n right: 5px; }\\n [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"][data-balloon-visible]:after {\\n transform: translate(0, 0); }\\n [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-po*=\\\"-left\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos*=\\\"-right\\\"][data-balloon-visible]:before {\\n transform: translate(0, 0); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:after {\\n bottom: 100%;\\n transform-origin: top;\\n transform: translate(0, var(--balloon-move)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"up\\\"]:after {\\n margin-bottom: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"up\\\"]:after {\\n left: 50%;\\n transform: translate(-50%, var(--balloon-move)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:before, [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:after {\\n top: 100%;\\n transform: translate(0, calc(var(--balloon-move) * -1)); }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:after {\\n margin-top: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos^=\\\"down\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-bottom-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"down\\\"]:before {\\n left: 50%;\\n transform: translate(-50%, calc(var(--balloon-move) * -1)); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"][data-balloon-visible]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:hover:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"][data-balloon-visible]:after {\\n transform: translate(0, -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"][data-balloon-visible]:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:hover:before, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"][data-balloon-visible]:before {\\n transform: translate(0, -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:before {\\n right: 100%;\\n top: 50%;\\n transform: translate(var(--balloon-move), -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:after {\\n margin-right: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"left\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-left-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:after, [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:before {\\n left: 100%;\\n top: 50%;\\n transform: translate(calc(var(--balloon-move) * -1), -50%); }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:after {\\n margin-left: 10px; }\\n [aria-label][data-balloon-pos][data-balloon-pos=\\\"right\\\"]:before {\\n width: 0;\\n height: 0;\\n border: 5px solid transparent;\\n border-right-color: var(--balloon-color); }\\n [aria-label][data-balloon-pos][data-balloon-length]:after {\\n white-space: normal; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"small\\\"]:after {\\n width: 80px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"medium\\\"]:after {\\n width: 150px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"large\\\"]:after {\\n width: 260px; }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"xlarge\\\"]:after {\\n width: 380px; }\\n @media screen and (max-width: 768px) {\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"xlarge\\\"]:after {\\n width: 90vw; } }\\n [aria-label][data-balloon-pos][data-balloon-length=\\\"fit\\\"]:after {\\n width: 100%; }\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","'use strict';\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n list.toString = function toString() {\n return this.map(function (item) {\n var content = '';\n var needLayer = typeof item[5] !== 'undefined';\n if (item[4]) {\n content += '@supports ('.concat(item[4], ') {');\n }\n if (item[2]) {\n content += '@media '.concat(item[2], ' {');\n }\n if (needLayer) {\n content += '@layer'.concat(item[5].length > 0 ? ' '.concat(item[5]) : '', ' {');\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += '}';\n }\n if (item[2]) {\n content += '}';\n }\n if (item[4]) {\n content += '}';\n }\n return content;\n }).join('');\n };\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === 'string') {\n modules = [[\n null,\n modules,\n undefined\n ]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== 'undefined') {\n if (typeof item[5] === 'undefined') {\n item[5] = layer;\n } else {\n item[1] = '@layer'.concat(item[5].length > 0 ? ' '.concat(item[5]) : '', ' {').concat(item[1], '}');\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = '@media '.concat(item[2], ' {').concat(item[1], '}');\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = ''.concat(supports);\n } else {\n item[1] = '@supports ('.concat(item[4], ') {').concat(item[1], '}');\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 28\\\"><path d=\\\"M28.633 17.104c0.035 0.21 0.026 0.463-0.026 0.76s-0.14 0.598-0.262 0.904c-0.122 0.306-0.271 0.581-0.445 0.825s-0.367 0.419-0.576 0.524c-0.209 0.105-0.393 0.157-0.55 0.157s-0.332-0.035-0.524-0.105c-0.175-0.052-0.393-0.1-0.655-0.144s-0.528-0.052-0.799-0.026c-0.271 0.026-0.541 0.083-0.812 0.17s-0.502 0.236-0.694 0.445c-0.419 0.437-0.664 0.934-0.734 1.493s0.009 1.092 0.236 1.598c0.175 0.349 0.148 0.699-0.079 1.048-0.105 0.14-0.271 0.284-0.498 0.432s-0.476 0.284-0.747 0.406-0.555 0.218-0.851 0.288c-0.297 0.070-0.559 0.105-0.786 0.105-0.157 0-0.306-0.061-0.445-0.183s-0.236-0.253-0.288-0.393h-0.026c-0.192-0.541-0.52-1.009-0.982-1.402s-1-0.589-1.611-0.589c-0.594 0-1.131 0.197-1.611 0.589s-0.816 0.851-1.009 1.375c-0.087 0.21-0.218 0.362-0.393 0.458s-0.367 0.144-0.576 0.144c-0.244 0-0.52-0.044-0.825-0.131s-0.611-0.197-0.917-0.327c-0.306-0.131-0.581-0.284-0.825-0.458s-0.428-0.349-0.55-0.524c-0.087-0.122-0.135-0.266-0.144-0.432s0.057-0.397 0.197-0.694c0.192-0.402 0.266-0.86 0.223-1.375s-0.266-0.991-0.668-1.428c-0.244-0.262-0.541-0.432-0.891-0.511s-0.681-0.109-0.995-0.092c-0.367 0.017-0.742 0.087-1.127 0.21-0.244 0.070-0.489 0.052-0.734-0.052-0.192-0.070-0.371-0.231-0.537-0.485s-0.314-0.533-0.445-0.838c-0.131-0.306-0.231-0.62-0.301-0.943s-0.087-0.59-0.052-0.799c0.052-0.384 0.227-0.629 0.524-0.734 0.524-0.21 0.995-0.555 1.415-1.035s0.629-1.017 0.629-1.611c0-0.611-0.21-1.144-0.629-1.598s-0.891-0.786-1.415-0.996c-0.157-0.052-0.288-0.179-0.393-0.38s-0.157-0.406-0.157-0.616c0-0.227 0.035-0.48 0.105-0.76s0.162-0.55 0.275-0.812 0.244-0.502 0.393-0.72c0.148-0.218 0.31-0.38 0.485-0.485 0.14-0.087 0.275-0.122 0.406-0.105s0.275 0.052 0.432 0.105c0.524 0.21 1.070 0.275 1.637 0.197s1.070-0.327 1.506-0.747c0.21-0.209 0.362-0.467 0.458-0.773s0.157-0.607 0.183-0.904c0.026-0.297 0.026-0.568 0-0.812s-0.048-0.419-0.065-0.524c-0.035-0.105-0.066-0.227-0.092-0.367s-0.013-0.262 0.039-0.367c0.105-0.244 0.293-0.458 0.563-0.642s0.563-0.336 0.878-0.458c0.314-0.122 0.62-0.214 0.917-0.275s0.533-0.092 0.707-0.092c0.227 0 0.406 0.074 0.537 0.223s0.223 0.301 0.275 0.458c0.192 0.471 0.507 0.886 0.943 1.244s0.952 0.537 1.546 0.537c0.611 0 1.153-0.17 1.624-0.511s0.803-0.773 0.996-1.297c0.070-0.14 0.179-0.284 0.327-0.432s0.301-0.223 0.458-0.223c0.244 0 0.511 0.035 0.799 0.105s0.572 0.166 0.851 0.288c0.279 0.122 0.537 0.279 0.773 0.472s0.423 0.402 0.563 0.629c0.087 0.14 0.113 0.293 0.079 0.458s-0.070 0.284-0.105 0.354c-0.227 0.506-0.297 1.039-0.21 1.598s0.341 1.048 0.76 1.467c0.419 0.419 0.934 0.651 1.546 0.694s1.179-0.057 1.703-0.301c0.14-0.087 0.31-0.122 0.511-0.105s0.371 0.096 0.511 0.236c0.262 0.244 0.493 0.616 0.694 1.113s0.336 1 0.406 1.506c0.035 0.297-0.013 0.528-0.144 0.694s-0.266 0.275-0.406 0.327c-0.542 0.192-1.004 0.528-1.388 1.009s-0.576 1.026-0.576 1.637c0 0.594 0.162 1.113 0.485 1.559s0.747 0.764 1.27 0.956c0.122 0.070 0.227 0.14 0.314 0.21 0.192 0.157 0.323 0.358 0.393 0.602v0zM16.451 19.462c0.786 0 1.528-0.149 2.227-0.445s1.305-0.707 1.821-1.231c0.515-0.524 0.921-1.131 1.218-1.821s0.445-1.428 0.445-2.214c0-0.786-0.148-1.524-0.445-2.214s-0.703-1.292-1.218-1.808c-0.515-0.515-1.122-0.921-1.821-1.218s-1.441-0.445-2.227-0.445c-0.786 0-1.524 0.148-2.214 0.445s-1.292 0.703-1.808 1.218c-0.515 0.515-0.921 1.118-1.218 1.808s-0.445 1.428-0.445 2.214c0 0.786 0.149 1.524 0.445 2.214s0.703 1.297 1.218 1.821c0.515 0.524 1.118 0.934 1.808 1.231s1.428 0.445 2.214 0.445v0z\\\"></path></svg>\"","module.exports = \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" version=\\\"1.1\\\" viewBox=\\\"0 0 32 33\\\"><path d=\\\"M24.965 24.38h-18.132c-1.366 0-2.478-1.113-2.478-2.478v-11.806c0-1.364 1.111-2.478 2.478-2.478h18.132c1.366 0 2.478 1.113 2.478 2.478v11.806c0 1.364-1.11 2.478-2.478 2.478zM6.833 10.097v11.806h18.134l-0.002-11.806h-18.132zM2.478 28.928h5.952c0.684 0 1.238-0.554 1.238-1.239 0-0.684-0.554-1.238-1.238-1.238h-5.952v-5.802c0-0.684-0.554-1.239-1.238-1.239s-1.239 0.556-1.239 1.239v5.802c0 1.365 1.111 2.478 2.478 2.478zM30.761 19.412c-0.684 0-1.238 0.554-1.238 1.238v5.801h-5.951c-0.686 0-1.239 0.554-1.239 1.238 0 0.686 0.554 1.239 1.239 1.239h5.951c1.366 0 2.478-1.111 2.478-2.478v-5.801c0-0.683-0.554-1.238-1.239-1.238zM0 5.55v5.802c0 0.683 0.554 1.238 1.238 1.238s1.238-0.555 1.238-1.238v-5.802h5.952c0.684 0 1.238-0.554 1.238-1.238s-0.554-1.238-1.238-1.238h-5.951c-1.366-0.001-2.478 1.111-2.478 2.476zM32 11.35v-5.801c0-1.365-1.11-2.478-2.478-2.478h-5.951c-0.686 0-1.239 0.554-1.239 1.238s0.554 1.238 1.239 1.238h5.951v5.801c0 0.683 0.554 1.237 1.238 1.237 0.686 0.002 1.239-0.553 1.239-1.236z\\\"></path></svg>\"","'use strict';\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url['default'] : url);\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return '\"'.concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), '\"');\n }\n return url;\n};","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t678: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// no jsonp function","__webpack_require__.nc = undefined;","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!../../node_modules/less-loader/dist/cjs.js!./index.less\";\n export default content && content.locals ? content.locals : undefined;\n","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction allSettled(arr) {\n var P = this;\n return new P(function (resolve, reject) {\n if (!(arr && typeof arr.length !== 'undefined')) {\n return reject(new TypeError(_typeof(arr) + ' ' + arr + ' is not iterable(cannot read property Symbol(Symbol.iterator))'));\n }\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 if (val && (_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 }, function (e) {\n args[i] = {\n status: 'rejected',\n reason: e\n };\n if (--remaining === 0) {\n resolve(args);\n }\n });\n return;\n }\n }\n args[i] = {\n status: 'fulfilled',\n value: val\n };\n if (--remaining === 0) {\n resolve(args);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n}\nexport default allSettled;","function AggregateError(errors, message) {\n this.name = 'AggregateError', this.errors = errors;\n this.message = message || '';\n}\nAggregateError.prototype = Error.prototype;\nfunction any(arr) {\n var P = this;\n return new P(function (resolve, reject) {\n if (!(arr && typeof arr.length !== 'undefined')) {\n return reject(new TypeError('Promise.any accepts an array'));\n }\n var args = Array.prototype.slice.call(arr);\n if (args.length === 0)\n return reject();\n var rejectionReasons = [];\n for (var i = 0; i < args.length; i++) {\n try {\n P.resolve(args[i]).then(resolve)['catch'](function (error) {\n rejectionReasons.push(error);\n if (rejectionReasons.length === args.length) {\n reject(new AggregateError(rejectionReasons, 'All promises were rejected'));\n }\n });\n } catch (ex) {\n reject(ex);\n }\n }\n });\n}\nexport default any;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport promiseFinally from './finally';\nimport allSettled from './allSettled';\nimport any from './any';\nvar setTimeoutFunc = setTimeout;\nfunction isArray(x) {\n return Boolean(x && typeof x.length !== 'undefined');\n}\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) === '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'] = promiseFinally;\nPromise.all = function (arr) {\n return new Promise(function (resolve, reject) {\n if (!isArray(arr)) {\n return reject(new TypeError('Promise.all accepts an array'));\n }\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) === '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.any = any;\nPromise.allSettled = allSettled;\nPromise.resolve = function (value) {\n if (value && _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 (arr) {\n return new Promise(function (resolve, reject) {\n if (!isArray(arr)) {\n return reject(new TypeError('Promise.race accepts an array'));\n }\n for (var i = 0, len = arr.length; i < len; i++) {\n Promise.resolve(arr[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};\nexport default Promise;","function finallyConstructor(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}\nexport default finallyConstructor;","var isMobile = /mobile|android|iphone|ipod|phone|ipad/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n second = second || 0;\n if (second === 0 || second === Infinity || second.toString() === 'NaN') {\n return '00:00';\n }\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 getBoundingClientRectViewLeft: function getBoundingClientRectViewLeft(element) {\n var scrollTop = window.scrollY || window.pageYOffset || document.body.scrollTop + (document.documentElement && document.documentElement.scrollTop || 0);\n if (element.getBoundingClientRect) {\n if (typeof this.getBoundingClientRectViewLeft.offset !== 'number') {\n var temp = document.createElement('div');\n temp.style.cssText = 'position:absolute;top:0;left:0;';\n document.body.appendChild(temp);\n this.getBoundingClientRectViewLeft.offset = -temp.getBoundingClientRect().top - scrollTop;\n document.body.removeChild(temp);\n temp = null;\n }\n var rect = element.getBoundingClientRect();\n var offset = this.getBoundingClientRectViewLeft.offset;\n return rect.left + offset;\n } else {\n return this.getElementViewLeft(element);\n }\n },\n getScrollPosition: function getScrollPosition() {\n return {\n left: window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0,\n top: window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0\n };\n },\n setScrollPosition: function setScrollPosition(_ref) {\n var _ref$left = _ref.left, left = _ref$left === void 0 ? 0 : _ref$left, _ref$top = _ref.top, top = _ref$top === void 0 ? 0 : _ref$top;\n if (this.isFirefox) {\n document.documentElement.scrollLeft = left;\n document.documentElement.scrollTop = top;\n } else {\n window.scrollTo(left, top);\n }\n },\n isMobile: isMobile,\n isFirefox: /firefox/i.test(window.navigator.userAgent),\n isChrome: /chrome/i.test(window.navigator.userAgent),\n isSafari: /safari/i.test(window.navigator.userAgent),\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 color2Number: function color2Number(color) {\n if (color[0] === '#') {\n color = color.substr(1);\n }\n if (color.length === 3) {\n color = ''.concat(color[0]).concat(color[0]).concat(color[1]).concat(color[1]).concat(color[2]).concat(color[2]);\n }\n return parseInt(color, 16) + 0 & 16777215;\n },\n number2Color: function number2Color(number) {\n return '#' + ('00000' + number.toString(16)).slice(-6);\n },\n number2Type: function number2Type(number) {\n switch (number) {\n case 0:\n return 'right';\n case 1:\n return 'top';\n case 2:\n return 'bottom';\n default:\n return 'right';\n }\n }\n};\nexport default utils;","'use strict';\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport bind from './helpers/bind.js';\nvar toString = Object.prototype.toString;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar kindOf = function (cache) {\n return function (thing) {\n var str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n };\n}(Object.create(null));\nvar kindOfTest = function kindOfTest(type) {\n type = type.toLowerCase();\n return function (thing) {\n return kindOf(thing) === type;\n };\n};\nvar typeOfTest = function typeOfTest(type) {\n return function (thing) {\n return _typeof(thing) === type;\n };\n};\nvar isArray = Array.isArray;\nvar isUndefined = typeOfTest('undefined');\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\nvar isArrayBuffer = kindOfTest('ArrayBuffer');\nfunction isArrayBufferView(val) {\n var result;\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && isArrayBuffer(val.buffer);\n }\n return result;\n}\nvar isString = typeOfTest('string');\nvar isFunction = typeOfTest('function');\nvar isNumber = typeOfTest('number');\nvar isObject = function isObject(thing) {\n return thing !== null && _typeof(thing) === 'object';\n};\nvar isBoolean = function isBoolean(thing) {\n return thing === true || thing === false;\n};\nvar isPlainObject = function isPlainObject(val) {\n if (kindOf(val) !== 'object') {\n return false;\n }\n var prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n};\nvar isDate = kindOfTest('Date');\nvar isFile = kindOfTest('File');\nvar isBlob = kindOfTest('Blob');\nvar isFileList = kindOfTest('FileList');\nvar isStream = function isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n};\nvar isFormData = function isFormData(thing) {\n var kind;\n return thing && (typeof FormData === 'function' && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === 'formdata' || kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]'));\n};\nvar isURLSearchParams = kindOfTest('URLSearchParams');\nvar trim = function trim(str) {\n return str.trim ? str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n};\nfunction forEach(obj, fn) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, _ref$allOwnKeys = _ref.allOwnKeys, allOwnKeys = _ref$allOwnKeys === void 0 ? false : _ref$allOwnKeys;\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n var i;\n var l;\n if (_typeof(obj) !== 'object') {\n obj = [obj];\n }\n if (isArray(obj)) {\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n var keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n var len = keys.length;\n var key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n var keys = Object.keys(obj);\n var i = keys.length;\n var _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\nvar _global = function () {\n if (typeof globalThis !== 'undefined')\n return globalThis;\n return typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : global;\n}();\nvar isContextDefined = function isContextDefined(context) {\n return !isUndefined(context) && context !== _global;\n};\nfunction merge() {\n var _ref2 = isContextDefined(this) && this || {}, caseless = _ref2.caseless;\n var result = {};\n var assignValue = function assignValue(val, key) {\n var targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n };\n for (var i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\nvar extend = function extend(a, b, thisArg) {\n var _ref3 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {}, allOwnKeys = _ref3.allOwnKeys;\n forEach(b, function (val, key) {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, { allOwnKeys: allOwnKeys });\n return a;\n};\nvar stripBOM = function stripBOM(content) {\n if (content.charCodeAt(0) === 65279) {\n content = content.slice(1);\n }\n return content;\n};\nvar inherits = function inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', { value: superConstructor.prototype });\n props && Object.assign(constructor.prototype, props);\n};\nvar toFlatObject = function toFlatObject(sourceObj, destObj, filter, propFilter) {\n var props;\n var i;\n var prop;\n var merged = {};\n destObj = destObj || {};\n if (sourceObj == null)\n return destObj;\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n return destObj;\n};\nvar endsWith = function endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n};\nvar toArray = function toArray(thing) {\n if (!thing)\n return null;\n if (isArray(thing))\n return thing;\n var i = thing.length;\n if (!isNumber(i))\n return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n};\nvar isTypedArray = function (TypedArray) {\n return function (thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n}(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\nvar forEachEntry = function forEachEntry(obj, fn) {\n var generator = obj && obj[Symbol.iterator];\n var iterator = generator.call(obj);\n var result;\n while ((result = iterator.next()) && !result.done) {\n var pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n};\nvar matchAll = function matchAll(regExp, str) {\n var matches;\n var arr = [];\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n return arr;\n};\nvar isHTMLForm = kindOfTest('HTMLFormElement');\nvar toCamelCase = function toCamelCase(str) {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g, function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n });\n};\nvar hasOwnProperty = function (_ref4) {\n var hasOwnProperty = _ref4.hasOwnProperty;\n return function (obj, prop) {\n return hasOwnProperty.call(obj, prop);\n };\n}(Object.prototype);\nvar isRegExp = kindOfTest('RegExp');\nvar reduceDescriptors = function reduceDescriptors(obj, reducer) {\n var descriptors = Object.getOwnPropertyDescriptors(obj);\n var reducedDescriptors = {};\n forEach(descriptors, function (descriptor, name) {\n if (reducer(descriptor, name, obj) !== false) {\n reducedDescriptors[name] = descriptor;\n }\n });\n Object.defineProperties(obj, reducedDescriptors);\n};\nvar freezeMethods = function freezeMethods(obj) {\n reduceDescriptors(obj, function (descriptor, name) {\n if (isFunction(obj) && [\n 'arguments',\n 'caller',\n 'callee'\n ].indexOf(name) !== -1) {\n return false;\n }\n var value = obj[name];\n if (!isFunction(value))\n return;\n descriptor.enumerable = false;\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n if (!descriptor.set) {\n descriptor.set = function () {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n};\nvar toObjectSet = function toObjectSet(arrayOrString, delimiter) {\n var obj = {};\n var define = function define(arr) {\n arr.forEach(function (value) {\n obj[value] = true;\n });\n };\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n return obj;\n};\nvar noop = function noop() {\n};\nvar toFiniteNumber = function toFiniteNumber(value, defaultValue) {\n value = +value;\n return Number.isFinite(value) ? value : defaultValue;\n};\nvar ALPHA = 'abcdefghijklmnopqrstuvwxyz';\nvar DIGIT = '0123456789';\nvar ALPHABET = {\n DIGIT: DIGIT,\n ALPHA: ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n};\nvar generateString = function generateString() {\n var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 16;\n var alphabet = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ALPHABET.ALPHA_DIGIT;\n var str = '';\n var length = alphabet.length;\n while (size--) {\n str += alphabet[Math.random() * length | 0];\n }\n return str;\n};\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\nvar toJSONObject = function toJSONObject(obj) {\n var stack = new Array(10);\n var _visit = function visit(source, i) {\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n if (!('toJSON' in source)) {\n stack[i] = source;\n var target = isArray(source) ? [] : {};\n forEach(source, function (value, key) {\n var reducedValue = _visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n stack[i] = undefined;\n return target;\n }\n }\n return source;\n };\n return _visit(obj, 0);\n};\nvar isAsyncFn = kindOfTest('AsyncFunction');\nvar isThenable = function isThenable(thing) {\n return thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing['catch']);\n};\nexport default {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isBoolean: isBoolean,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isRegExp: isRegExp,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isTypedArray: isTypedArray,\n isFileList: isFileList,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM,\n inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n forEachEntry: forEachEntry,\n matchAll: matchAll,\n isHTMLForm: isHTMLForm,\n hasOwnProperty: hasOwnProperty,\n hasOwnProp: hasOwnProperty,\n reduceDescriptors: reduceDescriptors,\n freezeMethods: freezeMethods,\n toObjectSet: toObjectSet,\n toCamelCase: toCamelCase,\n noop: noop,\n toFiniteNumber: toFiniteNumber,\n findKey: findKey,\n global: _global,\n isContextDefined: isContextDefined,\n ALPHABET: ALPHABET,\n generateString: generateString,\n isSpecCompliantForm: isSpecCompliantForm,\n toJSONObject: toJSONObject,\n isAsyncFn: isAsyncFn,\n isThenable: isThenable\n};","'use strict';\nimport utils from '../utils.js';\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = new Error().stack;\n }\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n message: this.message,\n name: this.name,\n description: this.description,\n number: this.number,\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n].forEach(function (code) {\n descriptors[code] = { value: code };\n});\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', { value: true });\nAxiosError.from = function (error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, function (prop) {\n return prop !== 'isAxiosError';\n });\n AxiosError.call(axiosError, error.message, code, config, request, response);\n axiosError.cause = error;\n axiosError.name = error.name;\n customProps && Object.assign(axiosError, customProps);\n return axiosError;\n};\nexport default AxiosError;","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport PlatformFormData from '../platform/node/classes/FormData.js';\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\nfunction renderKey(path, key, dots) {\n if (!path)\n return key;\n return path.concat(key).map(function each(token, i) {\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\nvar predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n formData = formData || new (PlatformFormData || FormData)();\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n return !utils.isUndefined(source[option]);\n });\n var metaTokens = options.metaTokens;\n var visitor = options.visitor || defaultVisitor;\n var dots = options.dots;\n var indexes = options.indexes;\n var _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n var useBlob = _Blob && utils.isSpecCompliantForm(formData);\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n function convertValue(value) {\n if (value === null)\n return '';\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n return value;\n }\n function defaultVisitor(value, key, path) {\n var arr = value;\n if (value && !path && _typeof(value) === 'object') {\n if (utils.endsWith(key, '{}')) {\n key = metaTokens ? key : key.slice(0, -2);\n value = JSON.stringify(value);\n } else if (utils.isArray(value) && isFlatArray(value) || (utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))) {\n key = removeBrackets(key);\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + '[]', convertValue(el));\n });\n return false;\n }\n }\n if (isVisitable(value)) {\n return true;\n }\n formData.append(renderKey(path, key, dots), convertValue(value));\n return false;\n }\n var stack = [];\n var exposedHelpers = Object.assign(predicates, {\n defaultVisitor: defaultVisitor,\n convertValue: convertValue,\n isVisitable: isVisitable\n });\n function build(value, path) {\n if (utils.isUndefined(value))\n return;\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n stack.push(value);\n utils.forEach(value, function each(el, key) {\n var result = !(utils.isUndefined(el) || el === null) && visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n stack.pop();\n }\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n build(obj);\n return formData;\n}\nexport default toFormData;","'use strict';\nimport toFormData from './toFormData.js';\nfunction encode(str) {\n var charMap = {\n '!': '%21',\n '\\'': '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\0'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n params && toFormData(params, this, options);\n}\nvar prototype = AxiosURLSearchParams.prototype;\nprototype.append = function append(name, value) {\n this._pairs.push([\n name,\n value\n ]);\n};\nprototype.toString = function toString(encoder) {\n var _encode = encoder ? function (value) {\n return encoder.call(this, value, encode);\n } : encode;\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\nexport default AxiosURLSearchParams;","'use strict';\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');\n}\nexport default function buildURL(url, params, options) {\n if (!params) {\n return url;\n }\n var _encode = options && options.encode || encode;\n var serializeFn = options && options.serialize;\n var serializedParams;\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode);\n }\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n return url;\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './../utils.js';\nvar InterceptorManager = function () {\n function InterceptorManager() {\n _classCallCheck(this, InterceptorManager);\n this.handlers = [];\n }\n return _createClass(InterceptorManager, [\n {\n key: 'use',\n value: function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n },\n {\n key: 'eject',\n value: function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n },\n {\n key: 'clear',\n value: function clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n },\n {\n key: 'forEach',\n value: function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n }\n ]);\n}();\nexport default InterceptorManager;","'use strict';\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};","import URLSearchParams from './classes/URLSearchParams.js';\nimport FormData from './classes/FormData.js';\nimport Blob from './classes/Blob.js';\nvar isStandardBrowserEnv = function () {\n var product;\n if (typeof navigator !== 'undefined' && ((product = navigator.product) === 'ReactNative' || product === 'NativeScript' || product === 'NS')) {\n return false;\n }\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}();\nvar isStandardBrowserWebWorkerEnv = function () {\n return typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope && typeof self.importScripts === 'function';\n}();\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams: URLSearchParams,\n FormData: FormData,\n Blob: Blob\n },\n isStandardBrowserEnv: isStandardBrowserEnv,\n isStandardBrowserWebWorkerEnv: isStandardBrowserWebWorkerEnv,\n protocols: [\n 'http',\n 'https',\n 'file',\n 'blob',\n 'url',\n 'data'\n ]\n};","'use strict';\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;","'use strict';\nexport default typeof FormData !== 'undefined' ? FormData : null;","'use strict';\nexport default typeof Blob !== 'undefined' ? Blob : null;","'use strict';\nimport utils from '../utils.js';\nfunction parsePropPath(name) {\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(function (match) {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\nfunction arrayToObject(arr) {\n var obj = {};\n var keys = Object.keys(arr);\n var i;\n var len = keys.length;\n var key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n var name = path[index++];\n var isNumericKey = Number.isFinite(+name);\n var isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [\n target[name],\n value\n ];\n } else {\n target[name] = value;\n }\n return !isNumericKey;\n }\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n var result = buildPath(path, value, target[name], index);\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n return !isNumericKey;\n }\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n var obj = {};\n utils.forEachEntry(formData, function (name, value) {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n return obj;\n }\n return null;\n}\nexport default formDataToJSON;","'use strict';\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\nvar DEFAULT_CONTENT_TYPE = { 'Content-Type': undefined };\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n return (encoder || JSON.stringify)(rawValue);\n}\nvar defaults = {\n transitional: transitionalDefaults,\n adapter: [\n 'xhr',\n 'http'\n ],\n transformRequest: [function transformRequest(data, headers) {\n var contentType = headers.getContentType() || '';\n var hasJSONContentType = contentType.indexOf('application/json') > -1;\n var isObjectPayload = utils.isObject(data);\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n var isFormData = utils.isFormData(data);\n if (isFormData) {\n if (!hasJSONContentType) {\n return data;\n }\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n if (utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n var isFileList;\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? { 'files[]': data } : data, _FormData && new _FormData(), this.formSerializer);\n }\n }\n if (isObjectPayload || hasJSONContentType) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var JSONRequested = this.responseType === 'json';\n if (data && utils.isString(data) && (forcedJSONParsing && !this.responseType || JSONRequested)) {\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var strictJSONParsing = !silentJSONParsing && JSONRequested;\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n return data;\n }],\n timeout: 0,\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n maxContentLength: -1,\n maxBodyLength: -1,\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n headers: { common: { 'Accept': 'application/json, text/plain, */*' } }\n};\nutils.forEach([\n 'delete',\n 'get',\n 'head'\n], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\nutils.forEach([\n 'post',\n 'put',\n 'patch'\n], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\nexport default defaults;","'use strict';\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function visitor(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}","'use strict';\nimport utils from './../utils.js';\nvar ignoreDuplicateOf = utils.toObjectSet([\n 'age',\n 'authorization',\n 'content-length',\n 'content-type',\n 'etag',\n 'expires',\n 'from',\n 'host',\n 'if-modified-since',\n 'if-unmodified-since',\n 'last-modified',\n 'location',\n 'max-forwards',\n 'proxy-authorization',\n 'referer',\n 'retry-after',\n 'user-agent'\n]);\nexport default function (rawHeaders) {\n var parsed = {};\n var key;\n var val;\n var i;\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n if (!key || parsed[key] && ignoreDuplicateOf[key]) {\n return;\n }\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n return parsed;\n};","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError('Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if ('string' == typeof r)\n return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return 'Object' === t && r.constructor && (t = r.constructor.name), 'Map' === t || 'Set' === t ? Array.from(r) : 'Arguments' === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++)\n n[e] = r[e];\n return n;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (null != t) {\n var e, n, i, u, a = [], f = !0, o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t)\n return;\n f = !1;\n } else\n for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t['return'] && (u = t['return'](), Object(u) !== u))\n return;\n } finally {\n if (o)\n throw n;\n }\n }\n return a;\n }\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r))\n return r;\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\nvar $internals = Symbol('internals');\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\nfunction parseTokens(str) {\n var tokens = Object.create(null);\n var tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n var match;\n while (match = tokensRE.exec(str)) {\n tokens[match[1]] = match[2];\n }\n return tokens;\n}\nvar isValidHeaderName = function isValidHeaderName(str) {\n return /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n};\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n if (isHeaderNameFilter) {\n value = header;\n }\n if (!utils.isString(value))\n return;\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\nfunction formatHeader(header) {\n return header.trim().toLowerCase().replace(/([a-z\\d])(\\w*)/g, function (w, _char, str) {\n return _char.toUpperCase() + str;\n });\n}\nfunction buildAccessors(obj, header) {\n var accessorName = utils.toCamelCase(' ' + header);\n [\n 'get',\n 'set',\n 'has'\n ].forEach(function (methodName) {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function value(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\nvar AxiosHeaders = function () {\n function AxiosHeaders(headers) {\n _classCallCheck(this, AxiosHeaders);\n headers && this.set(headers);\n }\n return _createClass(AxiosHeaders, [\n {\n key: 'set',\n value: function set(header, valueOrRewrite, rewrite) {\n var self = this;\n function setHeader(_value, _header, _rewrite) {\n var lHeader = normalizeHeader(_header);\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n var key = utils.findKey(self, lHeader);\n if (!key || self[key] === undefined || _rewrite === true || _rewrite === undefined && self[key] !== false) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n var setHeaders = function setHeaders(headers, _rewrite) {\n return utils.forEach(headers, function (_value, _header) {\n return setHeader(_value, _header, _rewrite);\n });\n };\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite);\n } else if (utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n return this;\n }\n },\n {\n key: 'get',\n value: function get(header, parser) {\n header = normalizeHeader(header);\n if (header) {\n var key = utils.findKey(this, header);\n if (key) {\n var value = this[key];\n if (!parser) {\n return value;\n }\n if (parser === true) {\n return parseTokens(value);\n }\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n },\n {\n key: 'has',\n value: function has(header, matcher) {\n header = normalizeHeader(header);\n if (header) {\n var key = utils.findKey(this, header);\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n return false;\n }\n },\n {\n key: 'delete',\n value: function _delete(header, matcher) {\n var self = this;\n var deleted = false;\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n if (_header) {\n var key = utils.findKey(self, _header);\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n deleted = true;\n }\n }\n }\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n return deleted;\n }\n },\n {\n key: 'clear',\n value: function clear(matcher) {\n var keys = Object.keys(this);\n var i = keys.length;\n var deleted = false;\n while (i--) {\n var key = keys[i];\n if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n return deleted;\n }\n },\n {\n key: 'normalize',\n value: function normalize(format) {\n var self = this;\n var headers = {};\n utils.forEach(this, function (value, header) {\n var key = utils.findKey(headers, header);\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n var normalized = format ? formatHeader(header) : String(header).trim();\n if (normalized !== header) {\n delete self[header];\n }\n self[normalized] = normalizeValue(value);\n headers[normalized] = true;\n });\n return this;\n }\n },\n {\n key: 'concat',\n value: function concat() {\n var _this$constructor;\n for (var _len = arguments.length, targets = new Array(_len), _key = 0; _key < _len; _key++) {\n targets[_key] = arguments[_key];\n }\n return (_this$constructor = this.constructor).concat.apply(_this$constructor, [this].concat(targets));\n }\n },\n {\n key: 'toJSON',\n value: function toJSON(asStrings) {\n var obj = Object.create(null);\n utils.forEach(this, function (value, header) {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n return obj;\n }\n },\n {\n key: Symbol.iterator,\n value: function value() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n },\n {\n key: 'toString',\n value: function toString() {\n return Object.entries(this.toJSON()).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2), header = _ref2[0], value = _ref2[1];\n return header + ': ' + value;\n }).join('\\n');\n }\n },\n {\n key: Symbol.toStringTag,\n get: function get() {\n return 'AxiosHeaders';\n }\n }\n ], [\n {\n key: 'from',\n value: function from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n },\n {\n key: 'concat',\n value: function concat(first) {\n var computed = new this(first);\n for (var _len2 = arguments.length, targets = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n targets[_key2 - 1] = arguments[_key2];\n }\n targets.forEach(function (target) {\n return computed.set(target);\n });\n return computed;\n }\n },\n {\n key: 'accessor',\n value: function accessor(header) {\n var internals = this[$internals] = this[$internals] = { accessors: {} };\n var accessors = internals.accessors;\n var prototype = this.prototype;\n function defineAccessor(_header) {\n var lHeader = normalizeHeader(_header);\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n return this;\n }\n }\n ]);\n}();\nAxiosHeaders.accessor([\n 'Content-Type',\n 'Content-Length',\n 'Accept',\n 'Accept-Encoding',\n 'User-Agent',\n 'Authorization'\n]);\nutils.freezeMethods(AxiosHeaders.prototype);\nutils.freezeMethods(AxiosHeaders);\nexport default AxiosHeaders;","'use strict';\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nexport default function transformData(fns, response) {\n var config = this || defaults;\n var context = response || config;\n var headers = AxiosHeaders.from(context.headers);\n var data = context.data;\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n headers.normalize();\n return data;\n}","'use strict';\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}","'use strict';\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\nfunction CanceledError(message, config, request) {\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\nutils.inherits(CanceledError, AxiosError, { __CANCEL__: true });\nexport default CanceledError;","'use strict';\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\nexport default platform.isStandardBrowserEnv ? function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n if (secure === true) {\n cookie.push('secure');\n }\n document.cookie = cookie.join('; ');\n },\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return match ? decodeURIComponent(match[3]) : null;\n },\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n}() : function nonStandardBrowserEnv() {\n return {\n write: function write() {\n },\n read: function read() {\n return null;\n },\n remove: function remove() {\n }\n };\n}();","'use strict';\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}","'use strict';\nexport default function isAbsoluteURL(url) {\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}","'use strict';\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '') : baseURL;\n}","'use strict';\nimport utils from './../utils.js';\nimport platform from '../platform/index.js';\nexport default platform.isStandardBrowserEnv ? function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n function resolveURL(url) {\n var href = url;\n if (msie) {\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n urlParsingNode.setAttribute('href', href);\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: urlParsingNode.pathname.charAt(0) === '/' ? urlParsingNode.pathname : '/' + urlParsingNode.pathname\n };\n }\n originURL = resolveURL(window.location.href);\n return function isURLSameOrigin(requestURL) {\n var parsed = utils.isString(requestURL) ? resolveURL(requestURL) : requestURL;\n return parsed.protocol === originURL.protocol && parsed.host === originURL.host;\n };\n}() : function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n}();","'use strict';\nimport utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport cookies from './../helpers/cookies.js';\nimport buildURL from './../helpers/buildURL.js';\nimport buildFullPath from '../core/buildFullPath.js';\nimport isURLSameOrigin from './../helpers/isURLSameOrigin.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport speedometer from '../helpers/speedometer.js';\nfunction progressEventReducer(listener, isDownloadStream) {\n var bytesNotified = 0;\n var _speedometer = speedometer(50, 250);\n return function (e) {\n var loaded = e.loaded;\n var total = e.lengthComputable ? e.total : undefined;\n var progressBytes = loaded - bytesNotified;\n var rate = _speedometer(progressBytes);\n var inRange = loaded <= total;\n bytesNotified = loaded;\n var data = {\n loaded: loaded,\n total: total,\n progress: total ? loaded / total : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e\n };\n data[isDownloadStream ? 'download' : 'upload'] = true;\n listener(data);\n };\n}\nvar isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = AxiosHeaders.from(config.headers).normalize();\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n if (utils.isFormData(requestData)) {\n if (platform.isStandardBrowserEnv || platform.isStandardBrowserWebWorkerEnv) {\n requestHeaders.setContentType(false);\n } else {\n requestHeaders.setContentType('multipart/form-data;', false);\n }\n }\n var request = new XMLHttpRequest();\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.set('Authorization', 'Basic ' + btoa(username + ':' + password));\n }\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n request.timeout = config.timeout;\n function onloadend() {\n if (!request) {\n return;\n }\n var responseHeaders = AxiosHeaders.from('getAllResponseHeaders' in request && request.getAllResponseHeaders());\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n request = null;\n }\n if ('onloadend' in request) {\n request.onloadend = onloadend;\n } else {\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n setTimeout(onloadend);\n };\n }\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n request = null;\n };\n request.onerror = function handleError() {\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n request = null;\n };\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(timeoutErrorMessage, transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED, config, request));\n request = null;\n };\n if (platform.isStandardBrowserEnv) {\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName && cookies.read(config.xsrfCookieName);\n if (xsrfValue) {\n requestHeaders.set(config.xsrfHeaderName, xsrfValue);\n }\n }\n requestData === undefined && requestHeaders.setContentType(null);\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', progressEventReducer(config.onDownloadProgress, true));\n }\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', progressEventReducer(config.onUploadProgress));\n }\n if (config.cancelToken || config.signal) {\n onCanceled = function onCanceled(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n var protocol = parseProtocol(fullPath);\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n request.send(requestData || null);\n });\n};","'use strict';\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n var bytes = new Array(samplesCount);\n var timestamps = new Array(samplesCount);\n var head = 0;\n var tail = 0;\n var firstSampleTS;\n min = min !== undefined ? min : 1000;\n return function push(chunkLength) {\n var now = Date.now();\n var startedAt = timestamps[tail];\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n bytes[head] = chunkLength;\n timestamps[head] = now;\n var i = tail;\n var bytesCount = 0;\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n head = (head + 1) % samplesCount;\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n if (now - firstSampleTS < min) {\n return;\n }\n var passed = startedAt && now - startedAt;\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\nexport default speedometer;","'use strict';\nimport AxiosError from './AxiosError.js';\nexport default function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError('Request failed with status code ' + response.status, [\n AxiosError.ERR_BAD_REQUEST,\n AxiosError.ERR_BAD_RESPONSE\n ][Math.floor(response.status / 100) - 4], response.config, response.request, response));\n }\n}","'use strict';\nexport default function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport AxiosError from '../core/AxiosError.js';\nvar knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter\n};\nutils.forEach(knownAdapters, function (fn, value) {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', { value: value });\n } catch (e) {\n }\n Object.defineProperty(fn, 'adapterName', { value: value });\n }\n});\nexport default {\n getAdapter: function getAdapter(adapters) {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n var _adapters = adapters, length = _adapters.length;\n var nameOrAdapter;\n var adapter;\n for (var i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n if (adapter = utils.isString(nameOrAdapter) ? knownAdapters[nameOrAdapter.toLowerCase()] : nameOrAdapter) {\n break;\n }\n }\n if (!adapter) {\n if (adapter === false) {\n throw new AxiosError('Adapter '.concat(nameOrAdapter, ' is not supported by the environment'), 'ERR_NOT_SUPPORT');\n }\n throw new Error(utils.hasOwnProp(knownAdapters, nameOrAdapter) ? 'Adapter \\''.concat(nameOrAdapter, '\\' is not available in the build') : 'Unknown adapter \\''.concat(nameOrAdapter, '\\''));\n }\n if (!utils.isFunction(adapter)) {\n throw new TypeError('adapter is not a function');\n }\n return adapter;\n },\n adapters: knownAdapters\n};","export default null;","'use strict';\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from '../adapters/adapters.js';\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n config.headers = AxiosHeaders.from(config.headers);\n config.data = transformData.call(config, config.transformRequest);\n if ([\n 'post',\n 'put',\n 'patch'\n ].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n var adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n response.data = transformData.call(config, config.transformResponse, response);\n response.headers = AxiosHeaders.from(response.headers);\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n if (reason && reason.response) {\n reason.response.data = transformData.call(config, config.transformResponse, reason.response);\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n return Promise.reject(reason);\n });\n}","'use strict';\nimport utils from '../utils.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nvar headersToObject = function headersToObject(thing) {\n return thing instanceof AxiosHeaders ? thing.toJSON() : thing;\n};\nexport default function mergeConfig(config1, config2) {\n config2 = config2 || {};\n var config = {};\n function getMergedValue(target, source, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({ caseless: caseless }, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n function mergeDeepProperties(a, b, caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, caseless);\n }\n }\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n var mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: function headers(a, b) {\n return mergeDeepProperties(headersToObject(a), headersToObject(b), true);\n }\n };\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(config1[prop], config2[prop], prop);\n utils.isUndefined(configValue) && merge !== mergeDirectKeys || (config[prop] = configValue);\n });\n return config;\n}","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport { VERSION } from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\nvar validators = {};\n[\n 'object',\n 'boolean',\n 'number',\n 'function',\n 'string',\n 'symbol'\n].forEach(function (type, i) {\n validators[type] = function validator(thing) {\n return _typeof(thing) === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\nvar deprecatedWarnings = {};\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n return function (value, opt, opts) {\n if (validator === false) {\n throw new AxiosError(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')), AxiosError.ERR_DEPRECATED);\n }\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n console.warn(formatMessage(opt, ' has been deprecated since v' + version + ' and will be removed in the near future'));\n }\n return validator ? validator(value, opt, opts) : true;\n };\n};\nfunction assertOptions(options, schema, allowUnknown) {\n if (_typeof(options) !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\nexport default {\n assertOptions: assertOptions,\n validators: validators\n};","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\nvar validators = validator.validators;\nvar Axios = function () {\n function Axios(instanceConfig) {\n _classCallCheck(this, Axios);\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n return _createClass(Axios, [\n {\n key: 'request',\n value: function request(configOrUrl, config) {\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n config = mergeConfig(this.defaults, config);\n var _config = config, transitional = _config.transitional, paramsSerializer = _config.paramsSerializer, headers = _config.headers;\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators['boolean']),\n forcedJSONParsing: validators.transitional(validators['boolean']),\n clarifyTimeoutError: validators.transitional(validators['boolean'])\n }, false);\n }\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = { serialize: paramsSerializer };\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators['function'],\n serialize: validators['function']\n }, true);\n }\n }\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n var contextHeaders;\n contextHeaders = headers && utils.merge(headers.common, headers[config.method]);\n contextHeaders && utils.forEach([\n 'delete',\n 'get',\n 'head',\n 'post',\n 'put',\n 'patch',\n 'common'\n ], function (method) {\n delete headers[method];\n });\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n var promise;\n var i = 0;\n var len;\n if (!synchronousRequestInterceptors) {\n var chain = [\n dispatchRequest.bind(this),\n undefined\n ];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n promise = Promise.resolve(config);\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n return promise;\n }\n len = requestInterceptorChain.length;\n var newConfig = config;\n i = 0;\n while (i < len) {\n var onFulfilled = requestInterceptorChain[i++];\n var onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n i = 0;\n len = responseInterceptorChain.length;\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n return promise;\n }\n },\n {\n key: 'getUri',\n value: function getUri(config) {\n config = mergeConfig(this.defaults, config);\n var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n }\n ]);\n}();\nutils.forEach([\n 'delete',\n 'get',\n 'head',\n 'options'\n], function forEachMethodNoData(method) {\n Axios.prototype[method] = function (url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\nutils.forEach([\n 'post',\n 'put',\n 'patch'\n], function forEachMethodWithData(method) {\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? { 'Content-Type': 'multipart/form-data' } : {},\n url: url,\n data: data\n }));\n };\n }\n Axios.prototype[method] = generateHTTPMethod();\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\nexport default Axios;","'use strict';\nfunction _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport CanceledError from './CanceledError.js';\nvar CancelToken = function () {\n function CancelToken(executor) {\n _classCallCheck(this, CancelToken);\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n var token = this;\n this.promise.then(function (cancel) {\n if (!token._listeners)\n return;\n var i = token._listeners.length;\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n this.promise.then = function (onfulfilled) {\n var _resolve;\n var promise = new Promise(function (resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n return promise;\n };\n executor(function cancel(message, config, request) {\n if (token.reason) {\n return;\n }\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n return _createClass(CancelToken, [\n {\n key: 'throwIfRequested',\n value: function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n },\n {\n key: 'subscribe',\n value: function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n },\n {\n key: 'unsubscribe',\n value: function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n }\n ], [{\n key: 'source',\n value: function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n }\n }]);\n}();\nexport default CancelToken;","function _slicedToArray(r, e) {\n return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError('Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');\n}\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if ('string' == typeof r)\n return _arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return 'Object' === t && r.constructor && (t = r.constructor.name), 'Map' === t || 'Set' === t ? Array.from(r) : 'Arguments' === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;\n }\n}\nfunction _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++)\n n[e] = r[e];\n return n;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : 'undefined' != typeof Symbol && r[Symbol.iterator] || r['@@iterator'];\n if (null != t) {\n var e, n, i, u, a = [], f = !0, o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t)\n return;\n f = !1;\n } else\n for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t['return'] && (u = t['return'](), Object(u) !== u))\n return;\n } finally {\n if (o)\n throw n;\n }\n }\n return a;\n }\n}\nfunction _arrayWithHoles(r) {\n if (Array.isArray(r))\n return r;\n}\nvar HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511\n};\nObject.entries(HttpStatusCode).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2), key = _ref2[0], value = _ref2[1];\n HttpStatusCode[value] = key;\n});\nexport default HttpStatusCode;","'use strict';\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport { VERSION } from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from './core/AxiosHeaders.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n utils.extend(instance, Axios.prototype, context, { allOwnKeys: true });\n utils.extend(instance, context, null, { allOwnKeys: true });\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n return instance;\n}\nvar axios = createInstance(defaults);\naxios.Axios = Axios;\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\naxios.AxiosError = AxiosError;\naxios.Cancel = axios.CanceledError;\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = spread;\naxios.isAxiosError = isAxiosError;\naxios.mergeConfig = mergeConfig;\naxios.AxiosHeaders = AxiosHeaders;\naxios.formToJSON = function (thing) {\n return formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n};\naxios.HttpStatusCode = HttpStatusCode;\naxios['default'] = axios;\nexport default axios;","export var VERSION = '1.4.0';","'use strict';\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}","'use strict';\nimport utils from './../utils.js';\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && payload.isAxiosError === true;\n}","import axios from 'axios';\nexport default {\n send: function send(options) {\n axios.post(options.url, options.data).then(function (response) {\n var data = response.data;\n if (!data || data.code !== 0) {\n options.error && options.error(data && data.msg);\n return;\n }\n options.success && options.success(data);\n })['catch'](function (e) {\n console.error(e);\n options.error && options.error();\n });\n },\n read: function read(options) {\n axios.get(options.url).then(function (response) {\n var data = response.data;\n if (!data || data.code !== 0) {\n options.error && options.error(data && data.msg);\n return;\n }\n options.success && options.success(data.data.map(function (item) {\n return {\n time: item[0],\n type: item[1],\n color: item[2],\n author: item[3],\n text: item[4]\n };\n }));\n })['catch'](function (e) {\n console.error(e);\n options.error && options.error();\n });\n }\n};","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nimport defaultApiBackend from './api.js';\nexport default function (options) {\n var defaultOption = {\n container: options.element || document.getElementsByClassName('dplayer')[0],\n live: false,\n autoplay: false,\n theme: '#b7daff',\n loop: false,\n lang: (navigator.language || navigator.browserLanguage).toLowerCase(),\n screenshot: false,\n airplay: true,\n chromecast: false,\n hotkey: true,\n globalHotkey: true,\n preload: 'metadata',\n volume: 0.7,\n playbackSpeed: [\n 0.5,\n 0.75,\n 1,\n 1.25,\n 1.5,\n 2\n ],\n apiBackend: defaultApiBackend,\n video: {},\n contextmenu: [],\n mutex: true,\n pluginOptions: {\n hls: {},\n flv: {},\n dash: {},\n webtorrent: {}\n },\n preventClickToggle: false\n };\n for (var defaultKey in defaultOption) {\n if (defaultOption.hasOwnProperty(defaultKey) && !options.hasOwnProperty(defaultKey)) {\n options[defaultKey] = defaultOption[defaultKey];\n }\n }\n if (options.video) {\n !options.video.type && (options.video.type = 'auto');\n }\n if (_typeof(options.danmaku) === 'object' && options.danmaku) {\n !options.danmaku.user && (options.danmaku.user = 'Fluxonide');\n }\n if (options.subtitle) {\n !options.subtitle.type && (options.subtitle.type = 'webvtt');\n !options.subtitle.fontSize && (options.subtitle.fontSize = '20px');\n !options.subtitle.bottom && (options.subtitle.bottom = '40px');\n !options.subtitle.color && (options.subtitle.color = '#fff');\n }\n if (options.video.quality) {\n options.video.url = options.video.quality[options.video.defaultQuality].url;\n }\n if (options.lang) {\n options.lang = options.lang.toLowerCase();\n }\n options.contextmenu = options.contextmenu.concat([\n {\n key: 'video-info',\n click: function click(player) {\n player.infoPanel.triggle();\n }\n },\n {\n key: 'about-author',\n link: 'https://github.com/Fluxonide'\n },\n {\n text: 'dplayer-enhanced v'.concat(DPLAYER_VERSION),\n link: 'https://github.com/Fluxonide/dplayer-enhanced'\n }\n ]);\n return options;\n};","function i18n(lang) {\n var _this = this;\n this.lang = lang;\n this.fallbackLang = this.lang.includes('-') ? this.lang.split('-')[0] : this.lang;\n this.tran = function (key) {\n key = key.toLowerCase();\n if (tranTxt[_this.lang] && tranTxt[_this.lang][key]) {\n return tranTxt[_this.lang][key];\n } else if (tranTxt[_this.fallbackLang] && tranTxt[_this.fallbackLang][key]) {\n return tranTxt[_this.fallbackLang][key];\n } else if (standard[key]) {\n return standard[key];\n } else {\n return key;\n }\n };\n}\nvar standard = {\n 'danmaku-loading': 'Danmaku is loading',\n top: 'Top',\n bottom: 'Bottom',\n rolling: 'Rolling',\n 'input-danmaku-enter': 'Input danmaku, hit Enter',\n 'about-author': 'About author',\n 'dplayer-feedback': 'DPlayer feedback',\n 'about-dplayer': 'About DPlayer',\n loop: 'Loop',\n speed: 'Speed',\n 'opacity-danmaku': 'Opacity for danmaku',\n normal: 'Normal',\n 'please-input-danmaku': 'Please input danmaku content!',\n 'set-danmaku-color': 'Set danmaku color',\n 'set-danmaku-type': 'Set danmaku type',\n 'show-danmaku': 'Show danmaku',\n 'video-failed': 'Video load failed',\n 'danmaku-failed': 'Danmaku load failed',\n 'danmaku-send-failed': 'Danmaku send failed',\n 'switching-quality': 'Switching to %q quality',\n 'switched-quality': 'Switched to %q quality',\n ff: 'FF %s s',\n rew: 'REW %s s',\n 'unlimited-danmaku': 'Unlimited danmaku',\n 'send-danmaku': 'Send danmaku',\n setting: 'Setting',\n fullscreen: 'Full screen',\n 'web-fullscreen': 'Web full screen',\n send: 'Send',\n screenshot: 'Screenshot',\n airplay: 'AirPlay',\n chromecast: 'ChromeCast',\n subtitle: 'Subtitle',\n off: 'Off',\n 'show-subs': 'Show subtitle',\n 'hide-subs': 'Hide subtitle',\n volume: 'Volume',\n live: 'Live',\n 'video-info': 'Video info'\n};\nvar tranTxt = {\n en: standard,\n 'zh-cn': {\n 'danmaku-loading': '弹幕加载中',\n top: '顶部',\n bottom: '底部',\n rolling: '滚动',\n 'input-danmaku-enter': '输入弹幕\\uFF0C回车发送',\n 'about-author': '关于作者',\n 'dplayer-feedback': '播放器意见反馈',\n 'about-dplayer': '关于 DPlayer 播放器',\n loop: '洗脑循环',\n speed: '速度',\n 'opacity-danmaku': '弹幕透明度',\n normal: '正常',\n 'please-input-danmaku': '要输入弹幕内容啊喂\\uFF01',\n 'set-danmaku-color': '设置弹幕颜色',\n 'set-danmaku-type': '设置弹幕类型',\n 'show-danmaku': '显示弹幕',\n 'video-failed': '视频加载失败',\n 'danmaku-failed': '弹幕加载失败',\n 'danmaku-send-failed': '弹幕发送失败',\n 'switching-quality': '正在切换至 %q 画质',\n 'switched-quality': '已经切换至 %q 画质',\n ff: '快进 %s 秒',\n rew: '快退 %s 秒',\n 'unlimited-danmaku': '海量弹幕',\n 'send-danmaku': '发送弹幕',\n setting: '设置',\n fullscreen: '全屏',\n 'web-fullscreen': '页面全屏',\n send: '发送',\n screenshot: '截图',\n airplay: '无线投屏',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: '关闭',\n 'show-subs': '显示字幕',\n 'hide-subs': '隐藏字幕',\n volume: '音量',\n live: '直播',\n 'video-info': '视频统计信息'\n },\n 'zh-tw': {\n 'danmaku-loading': '彈幕載入中',\n top: '頂部',\n bottom: '底部',\n rolling: '滾動',\n 'input-danmaku-enter': '輸入彈幕\\uFF0CEnter 發送',\n 'about-author': '關於作者',\n 'dplayer-feedback': '播放器意見回饋',\n 'about-dplayer': '關於 DPlayer 播放器',\n loop: '循環播放',\n speed: '速度',\n 'opacity-danmaku': '彈幕透明度',\n normal: '正常',\n 'please-input-danmaku': '請輸入彈幕內容啊\\uFF01',\n 'set-danmaku-color': '設定彈幕顏色',\n 'set-danmaku-type': '設定彈幕類型',\n 'show-danmaku': '顯示彈幕',\n 'video-failed': '影片載入失敗',\n 'danmaku-failed': '彈幕載入失敗',\n 'danmaku-send-failed': '彈幕發送失敗',\n 'switching-quality': '正在切換至 %q 畫質',\n 'switched-quality': '已經切換至 %q 畫質',\n ff: '快進 %s 秒',\n rew: '快退 %s 秒',\n 'unlimited-danmaku': '巨量彈幕',\n 'send-danmaku': '發送彈幕',\n setting: '設定',\n fullscreen: '全螢幕',\n 'web-fullscreen': '頁面全螢幕',\n send: '發送',\n screenshot: '截圖',\n airplay: '無線投屏',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: '關閉',\n 'show-subs': '顯示字幕',\n 'hide-subs': '隱藏字幕',\n volume: '音量',\n live: '直播',\n 'video-info': '影片統計訊息'\n },\n 'ko-kr': {\n 'danmaku-loading': 'Danmaku를 불러오는 중입니다.',\n top: 'Top',\n bottom: 'Bottom',\n rolling: 'Rolling',\n 'input-danmaku-enter': 'Danmaku를 입력하고 Enter를 누르세요.',\n 'about-author': '만든이',\n 'dplayer-feedback': '피드백 보내기',\n 'about-dplayer': 'DPlayer 정보',\n loop: '반복',\n speed: '배속',\n 'opacity-danmaku': 'Danmaku 불투명도',\n normal: '표준',\n 'please-input-danmaku': 'Danmaku를 입력하세요!',\n 'set-danmaku-color': 'Danmaku 색상',\n 'set-danmaku-type': 'Danmaku 설정',\n 'show-danmaku': 'Danmaku 표시',\n 'video-failed': '비디오를 불러오지 못했습니다.',\n 'danmaku-failed': 'Danmaku를 불러오지 못했습니다.',\n 'danmaku-send-failed': 'Danmaku 전송에 실패했습니다.',\n 'Switching to': '',\n 'Switched to': '',\n 'switching-quality': '전환 %q 화질',\n 'switched-quality': '전환 됨 %q 화질',\n ff: '앞으로 %s 초',\n rew: '뒤로 %s 초',\n 'unlimited-danmaku': '끝없는 Danmaku',\n 'send-danmaku': 'Danmaku 보내기',\n setting: '설정',\n fullscreen: '전체 화면',\n 'web-fullscreen': '웹 내 전체화면',\n send: '보내기',\n screenshot: '화면 캡쳐',\n airplay: '에어플레이',\n chromecast: 'ChromeCast',\n subtitle: '부제',\n off: '끄다',\n 'show-subs': '자막 보이기',\n 'hide-subs': '자막 숨기기',\n Volume: '볼륨',\n live: '생방송',\n 'video-info': '비디오 정보'\n },\n de: {\n 'danmaku-loading': 'Danmaku lädt...',\n top: 'Oben',\n bottom: 'Unten',\n rolling: 'Rollend',\n 'input-danmaku-enter': 'Drücke Enter nach dem Einfügen vom Danmaku',\n 'about-author': 'Über den Autor',\n 'dplayer-feedback': 'DPlayer Feedback',\n 'about-dplayer': 'Über DPlayer',\n loop: 'Wiederholen',\n speed: 'Geschwindigkeit',\n 'opacity-danmaku': 'Transparenz für Danmaku',\n normal: 'Normal',\n 'please-input-danmaku': 'Bitte Danmaku Inhalt eingeben!',\n 'set-danmaku-color': 'Danmaku Farbe festlegen',\n 'set-danmaku-type': 'Danmaku Typ festlegen',\n 'show-danmaku': 'Zeige Danmaku',\n 'video-failed': 'Das Video konnte nicht geladen werden',\n 'danmaku-failed': 'Danmaku konnte nicht geladen werden',\n 'danmaku-send-failed': 'Das senden von Danmaku ist fehgeschlagen',\n 'switching-quality': 'Wechsle zur %q Qualität',\n 'switched-quality': 'Zur %q Qualität gewechselt',\n ff: '%s s Vorwärts',\n rew: '%s s Zurück',\n 'unlimited-danmaku': 'Unlimitiertes Danmaku',\n 'send-danmaku': 'Sende Danmaku',\n setting: 'Einstellungen',\n fullscreen: 'Vollbild',\n 'web-fullscreen': 'Browser Vollbild',\n send: 'Senden',\n screenshot: 'Screenshot',\n airplay: 'AirPlay',\n 'show-subs': 'Zeige Untertitel',\n chromecast: 'ChromeCast',\n subtitle: 'Untertitel',\n off: 'Schließung',\n 'hide-subs': 'Verstecke Untertitel',\n volume: 'Lautstärke',\n live: 'Live',\n 'video-info': 'Video Info'\n },\n 'ja': {\n 'danmaku-loading': 'コメントを読み込んでいます',\n top: 'トップ',\n bottom: 'ボトム',\n rolling: 'スクロール',\n 'input-danmaku-enter': 'コメントを入力し\\uFF0CEnter で送信',\n 'about-author': '作者について',\n 'dplayer-feedback': 'DPlayer についての意見\\u30FB要望',\n 'about-dplayer': 'DPlayer について',\n loop: 'くり返し',\n speed: '再生速度',\n 'opacity-danmaku': 'コメントの透明度',\n normal: '通常',\n 'please-input-danmaku': 'コメントを入力してください!',\n 'set-danmaku-color': 'コメントの色',\n 'set-danmaku-type': 'コメントの種類',\n 'show-danmaku': 'コメント表示',\n 'video-failed': 'ビデオの読み込みに失敗',\n 'danmaku-failed': 'コメントの読み込みに失敗',\n 'danmaku-send-failed': 'コメントの送信に失敗',\n 'switching-quality': '%qへ切り替え中',\n 'switched-quality': '%qへ切り替え完了',\n quality: 'へ',\n ff: '%s 秒早送り',\n rew: '%s 秒早戻し',\n 'unlimited-danmaku': 'コメント無制限',\n 'send-danmaku': 'コメント送信',\n setting: '設定',\n fullscreen: '全画面表示',\n 'web-fullscreen': 'ブラウザ全体表示',\n send: '送信',\n screenshot: '画面コピー',\n airplay: 'AirPlay',\n 'show-subs': '字幕表示',\n chromecast: 'ChromeCast',\n subtitle: '字幕',\n off: 'OFF',\n 'hide-subs': '字幕非表示',\n volume: '音量',\n live: 'ライブ',\n 'video-info': '動画情報'\n },\n 'ru': {\n 'danmaku-loading': 'Загрузка комментариев',\n top: 'Вверху',\n bottom: 'Внизу',\n rolling: 'Лента',\n 'input-danmaku-enter': 'Введите комментарий, нажмите Enter',\n 'about-author': 'Об авторе',\n 'dplayer-feedback': 'Обратная связь',\n 'about-dplayer': 'О плеере',\n loop: 'Закольцевать',\n speed: 'Скорость',\n 'opacity-danmaku': 'Прозрачность',\n normal: 'Обычный',\n 'please-input-danmaku': 'Пожалуйста, введите комментарий!',\n 'set-danmaku-color': 'Цвет комментария',\n 'set-danmaku-type': 'Тип комментария',\n 'show-danmaku': 'Показать комментарии',\n 'video-failed': 'Ошибка загрузки видео',\n 'danmaku-failed': 'Ошибка загрузки комментариев',\n 'danmaku-send-failed': 'Ошибка отправки комментария',\n 'switching-quality': 'Переключение качества на: %q',\n 'switched-quality': 'Установлено качество: %q',\n ff: 'Вперёд: %s с',\n rew: 'Назад: %s с',\n 'unlimited-danmaku': 'Без ограничений',\n 'send-danmaku': 'Отправить комментарий',\n setting: 'Настройки',\n fullscreen: 'На весь экран',\n 'web-fullscreen': 'На весь Web экран',\n send: 'Отправить',\n screenshot: 'Скриншот',\n airplay: 'AirPlay',\n chromecast: 'ChromeCast',\n subtitle: 'Комментарий',\n off: 'Выкл',\n 'show-subs': 'Показать комментарии',\n 'hide-subs': 'Скрыть комментарии',\n volume: 'Громкость',\n live: 'Живые комментарии',\n 'video-info': 'Информация о видео'\n }\n};\nexport {\n i18n\n};","import play from '../assets/play.svg';\nimport pause from '../assets/pause.svg';\nimport volumeUp from '../assets/volume-up.svg';\nimport volumeDown from '../assets/volume-down.svg';\nimport volumeOff from '../assets/volume-off.svg';\nimport full from '../assets/full.svg';\nimport fullWeb from '../assets/full-web.svg';\nimport setting from '../assets/setting.svg';\nimport right from '../assets/right.svg';\nimport comment from '../assets/comment.svg';\nimport commentOff from '../assets/comment-off.svg';\nimport send from '../assets/send.svg';\nimport pallette from '../assets/pallette.svg';\nimport camera from '../assets/camera.svg';\nimport airplay from '../assets/airplay.svg';\nimport subtitle from '../assets/subtitle.svg';\nimport loading from '../assets/loading.svg';\nimport chromecast from '../assets/chromecast.svg';\nvar Icons = {\n play: play,\n pause: pause,\n volumeUp: volumeUp,\n volumeDown: volumeDown,\n volumeOff: volumeOff,\n full: full,\n fullWeb: fullWeb,\n setting: setting,\n right: right,\n comment: comment,\n commentOff: commentOff,\n send: send,\n pallette: pallette,\n camera: camera,\n subtitle: subtitle,\n loading: loading,\n airplay: airplay,\n chromecast: chromecast\n};\nexport default Icons;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport Icons from './icons';\nimport tplPlayer from '../template/player.art';\nimport utils from './utils';\nvar Template = function () {\n function Template(options) {\n _classCallCheck(this, Template);\n this.container = options.container;\n this.options = options.options;\n this.index = options.index;\n this.tran = options.tran;\n this.init();\n }\n return _createClass(Template, [{\n key: 'init',\n value: function init() {\n this.container.innerHTML = tplPlayer({\n options: this.options,\n index: this.index,\n tran: this.tran,\n icons: Icons,\n mobile: utils.isMobile,\n video: {\n current: true,\n pic: this.options.video.pic,\n screenshot: this.options.screenshot,\n airplay: utils.isSafari && !utils.isChrome ? this.options.airplay : false,\n chromecast: this.options.chromecast,\n preload: this.options.preload,\n url: this.options.video.url,\n subtitle: this.options.subtitle\n }\n });\n this.volumeBar = this.container.querySelector('.dplayer-volume-bar-inner');\n this.volumeBarWrap = this.container.querySelector('.dplayer-volume-bar');\n this.volumeBarWrapWrap = this.container.querySelector('.dplayer-volume-bar-wrap');\n this.volumeButton = this.container.querySelector('.dplayer-volume');\n this.volumeButtonIcon = this.container.querySelector('.dplayer-volume-icon');\n this.volumeIcon = this.container.querySelector('.dplayer-volume-icon .dplayer-icon-content');\n this.playedBar = this.container.querySelector('.dplayer-played');\n this.loadedBar = this.container.querySelector('.dplayer-loaded');\n this.playedBarWrap = this.container.querySelector('.dplayer-bar-wrap');\n this.playedBarTime = this.container.querySelector('.dplayer-bar-time');\n this.danmaku = this.container.querySelector('.dplayer-danmaku');\n this.danmakuLoading = this.container.querySelector('.dplayer-danloading');\n this.video = this.container.querySelector('.dplayer-video-current');\n this.bezel = this.container.querySelector('.dplayer-bezel-icon');\n this.playButton = this.container.querySelector('.dplayer-play-icon');\n this.mobilePlayButton = this.container.querySelector('.dplayer-mobile-play');\n this.videoWrap = this.container.querySelector('.dplayer-video-wrap');\n this.controllerMask = this.container.querySelector('.dplayer-controller-mask');\n this.ptime = this.container.querySelector('.dplayer-ptime');\n this.settingButton = this.container.querySelector('.dplayer-setting-icon');\n this.settingBox = this.container.querySelector('.dplayer-setting-box');\n this.mask = this.container.querySelector('.dplayer-mask');\n this.loop = this.container.querySelector('.dplayer-setting-loop');\n this.loopToggle = this.container.querySelector('.dplayer-setting-loop .dplayer-toggle-setting-input');\n this.showDanmaku = this.container.querySelector('.dplayer-setting-showdan');\n this.showDanmakuToggle = this.container.querySelector('.dplayer-showdan-setting-input');\n this.unlimitDanmaku = this.container.querySelector('.dplayer-setting-danunlimit');\n this.unlimitDanmakuToggle = this.container.querySelector('.dplayer-danunlimit-setting-input');\n this.speed = this.container.querySelector('.dplayer-setting-speed');\n this.speedItem = this.container.querySelectorAll('.dplayer-setting-speed-item');\n this.danmakuOpacityBar = this.container.querySelector('.dplayer-danmaku-bar-inner');\n this.danmakuOpacityBarWrap = this.container.querySelector('.dplayer-danmaku-bar');\n this.danmakuOpacityBarWrapWrap = this.container.querySelector('.dplayer-danmaku-bar-wrap');\n this.danmakuOpacityBox = this.container.querySelector('.dplayer-setting-danmaku');\n this.dtime = this.container.querySelector('.dplayer-dtime');\n this.speedIndicator = this.container.querySelector('.dplayer-speed-indicator');\n this.speedPanel = this.container.querySelector('.dplayer-speed-panel');\n this.speedSliderTrack = this.container.querySelector('.dplayer-speed-slider-track');\n this.speedSliderFilled = this.container.querySelector('.dplayer-speed-slider-filled');\n this.speedSliderThumb = this.container.querySelector('.dplayer-speed-slider-thumb');\n this.speedSliderTicks = this.container.querySelectorAll('.dplayer-speed-slider-tick');\n this.speedSliderLabels = this.container.querySelectorAll('.dplayer-speed-slider-label');\n this.speedSliderBtnMinus = this.container.querySelector('.dplayer-speed-slider-btn-minus');\n this.speedSliderBtnPlus = this.container.querySelector('.dplayer-speed-slider-btn-plus');\n this.controller = this.container.querySelector('.dplayer-controller');\n this.commentInput = this.container.querySelector('.dplayer-comment-input');\n this.commentButton = this.container.querySelector('.dplayer-comment-icon');\n this.commentSettingBox = this.container.querySelector('.dplayer-comment-setting-box');\n this.commentSettingButton = this.container.querySelector('.dplayer-comment-setting-icon');\n this.commentSettingFill = this.container.querySelector('.dplayer-comment-setting-icon path');\n this.commentSendButton = this.container.querySelector('.dplayer-send-icon');\n this.commentSendFill = this.container.querySelector('.dplayer-send-icon path');\n this.commentColorSettingBox = this.container.querySelector('.dplayer-comment-setting-color');\n this.browserFullButton = this.container.querySelector('.dplayer-full-icon');\n this.webFullButton = this.container.querySelector('.dplayer-full-in-icon');\n this.menu = this.container.querySelector('.dplayer-menu');\n this.menuItem = this.container.querySelectorAll('.dplayer-menu-item');\n this.qualityList = this.container.querySelector('.dplayer-quality-list');\n this.camareButton = this.container.querySelector('.dplayer-camera-icon');\n this.airplayButton = this.container.querySelector('.dplayer-airplay-icon');\n this.chromecastButton = this.container.querySelector('.dplayer-chromecast-icon');\n this.subtitleButton = this.container.querySelector('.dplayer-subtitle-icon');\n this.subtitleButtonInner = this.container.querySelector('.dplayer-subtitle-icon .dplayer-icon-content');\n this.subtitlesButton = this.container.querySelector('.dplayer-subtitles-icon');\n this.subtitlesBox = this.container.querySelector('.dplayer-subtitles-box');\n this.subtitlesItem = this.container.querySelectorAll('.dplayer-subtitles-item');\n this.subtitle = this.container.querySelector('.dplayer-subtitle');\n this.subtrack = this.container.querySelector('.dplayer-subtrack');\n this.qualityButton = this.container.querySelector('.dplayer-quality-icon');\n this.barPreview = this.container.querySelector('.dplayer-bar-preview');\n this.barWrap = this.container.querySelector('.dplayer-bar-wrap');\n this.noticeList = this.container.querySelector('.dplayer-notice-list');\n this.infoPanel = this.container.querySelector('.dplayer-info-panel');\n this.infoPanelClose = this.container.querySelector('.dplayer-info-panel-close');\n this.infoVersion = this.container.querySelector('.dplayer-info-panel-item-version .dplayer-info-panel-item-data');\n this.infoFPS = this.container.querySelector('.dplayer-info-panel-item-fps .dplayer-info-panel-item-data');\n this.infoType = this.container.querySelector('.dplayer-info-panel-item-type .dplayer-info-panel-item-data');\n this.infoUrl = this.container.querySelector('.dplayer-info-panel-item-url .dplayer-info-panel-item-data');\n this.infoResolution = this.container.querySelector('.dplayer-info-panel-item-resolution .dplayer-info-panel-item-data');\n this.infoDuration = this.container.querySelector('.dplayer-info-panel-item-duration .dplayer-info-panel-item-data');\n this.infoDanmakuId = this.container.querySelector('.dplayer-info-panel-item-danmaku-id .dplayer-info-panel-item-data');\n this.infoDanmakuApi = this.container.querySelector('.dplayer-info-panel-item-danmaku-api .dplayer-info-panel-item-data');\n this.infoDanmakuAmount = this.container.querySelector('.dplayer-info-panel-item-danmaku-amount .dplayer-info-panel-item-data');\n }\n }], [{\n key: 'NewNotice',\n value: function NewNotice(text, opacity, id) {\n var notice = document.createElement('div');\n notice.classList.add('dplayer-notice');\n notice.style.opacity = opacity;\n notice.innerText = text;\n if (id) {\n notice.id = 'dplayer-notice-'.concat(id);\n }\n return notice;\n }\n }]);\n}();\nexport default Template;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Danmaku = function () {\n function Danmaku(options) {\n _classCallCheck(this, Danmaku);\n this.options = options;\n this.player = this.options.player;\n this.container = this.options.container;\n this.danTunnel = {\n right: {},\n top: {},\n bottom: {}\n };\n this.danIndex = 0;\n this.dan = [];\n this.showing = true;\n this._opacity = this.options.opacity;\n this.events = this.options.events;\n this.unlimited = this.options.unlimited;\n this._measure('');\n this.load();\n }\n return _createClass(Danmaku, [\n {\n key: 'load',\n value: function load() {\n var _this = this;\n var apiurl;\n if (this.options.api.maximum) {\n apiurl = ''.concat(this.options.api.address, 'v3/?id=').concat(this.options.api.id, '&max=').concat(this.options.api.maximum);\n } else {\n apiurl = ''.concat(this.options.api.address, 'v3/?id=').concat(this.options.api.id);\n }\n var endpoints = (this.options.api.addition || []).slice(0);\n endpoints.push(apiurl);\n this.events && this.events.trigger('danmaku_load_start', endpoints);\n this._readAllEndpoints(endpoints, function (results) {\n _this.dan = [].concat.apply([], results).sort(function (a, b) {\n return a.time - b.time;\n });\n window.requestAnimationFrame(function () {\n _this.frame();\n });\n _this.options.callback();\n _this.events && _this.events.trigger('danmaku_load_end');\n });\n }\n },\n {\n key: 'reload',\n value: function reload(newAPI) {\n this.options.api = newAPI;\n this.dan = [];\n this.clear();\n this.load();\n }\n },\n {\n key: '_readAllEndpoints',\n value: function _readAllEndpoints(endpoints, callback) {\n var _this2 = this;\n var results = [];\n var readCount = 0;\n var _loop = function _loop(i) {\n _this2.options.apiBackend.read({\n url: endpoints[i],\n success: function success(data) {\n results[i] = data;\n ++readCount;\n if (readCount === endpoints.length) {\n callback(results);\n }\n },\n error: function error(msg) {\n _this2.options.error(msg || _this2.options.tran('danmaku-failed'));\n results[i] = [];\n ++readCount;\n if (readCount === endpoints.length) {\n callback(results);\n }\n }\n });\n };\n for (var i = 0; i < endpoints.length; ++i) {\n _loop(i);\n }\n }\n },\n {\n key: 'send',\n value: function send(dan, callback) {\n var _this3 = this;\n var danmakuData = {\n token: this.options.api.token,\n id: this.options.api.id,\n author: this.options.api.user,\n time: this.options.time(),\n text: dan.text,\n color: dan.color,\n type: dan.type\n };\n this.options.apiBackend.send({\n url: this.options.api.address + 'v3/',\n data: danmakuData,\n success: callback,\n error: function error(msg) {\n _this3.options.error(msg || _this3.options.tran('danmaku-failed'));\n }\n });\n this.dan.splice(this.danIndex, 0, danmakuData);\n this.danIndex++;\n var danmaku = {\n text: this.htmlEncode(danmakuData.text),\n color: danmakuData.color,\n type: danmakuData.type,\n border: '2px solid '.concat(this.options.borderColor)\n };\n this.draw(danmaku);\n this.events && this.events.trigger('danmaku_send', danmakuData);\n }\n },\n {\n key: 'frame',\n value: function frame() {\n var _this4 = this;\n if (this.dan.length && !this.paused && this.showing) {\n var item = this.dan[this.danIndex];\n var dan = [];\n while (item && this.options.time() > parseFloat(item.time)) {\n dan.push(item);\n item = this.dan[++this.danIndex];\n }\n this.draw(dan);\n }\n window.requestAnimationFrame(function () {\n _this4.frame();\n });\n }\n },\n {\n key: 'opacity',\n value: function opacity(percentage) {\n if (percentage !== undefined) {\n var items = this.container.getElementsByClassName('dplayer-danmaku-item');\n for (var i = 0; i < items.length; i++) {\n items[i].style.opacity = percentage;\n }\n this._opacity = percentage;\n this.events && this.events.trigger('danmaku_opacity', this._opacity);\n }\n return this._opacity;\n }\n },\n {\n key: 'draw',\n value: function draw(dan) {\n var _this5 = this;\n if (this.showing) {\n var itemHeight = this.options.height;\n var danWidth = this.container.offsetWidth;\n var danHeight = this.container.offsetHeight;\n var itemY = parseInt(danHeight / itemHeight);\n var danItemRight = function danItemRight(ele) {\n var eleWidth = ele.offsetWidth || parseInt(ele.style.width);\n var eleRight = ele.getBoundingClientRect().right || _this5.container.getBoundingClientRect().right + eleWidth;\n return _this5.container.getBoundingClientRect().right - eleRight;\n };\n var danSpeed = function danSpeed(width) {\n return (danWidth + width) / 5;\n };\n var getTunnel = function getTunnel(ele, type, width) {\n var tmp = danWidth / danSpeed(width);\n var _loop2 = function _loop2(i) {\n var item = _this5.danTunnel[type][i + ''];\n if (item && item.length) {\n if (type !== 'right') {\n return 0;\n }\n for (var j = 0; j < item.length; j++) {\n var danRight = danItemRight(item[j]) - 10;\n if (danRight <= danWidth - tmp * danSpeed(parseInt(item[j].style.width)) || danRight <= 0) {\n break;\n }\n if (j === item.length - 1) {\n _this5.danTunnel[type][i + ''].push(ele);\n ele.addEventListener('animationend', function () {\n _this5.danTunnel[type][i + ''].splice(0, 1);\n });\n return { v: i % itemY };\n }\n }\n } else {\n _this5.danTunnel[type][i + ''] = [ele];\n ele.addEventListener('animationend', function () {\n _this5.danTunnel[type][i + ''].splice(0, 1);\n });\n return { v: i % itemY };\n }\n }, _ret;\n for (var i = 0; _this5.unlimited || i < itemY; i++) {\n _ret = _loop2(i);\n if (_ret === 0)\n continue;\n if (_ret)\n return _ret.v;\n }\n return -1;\n };\n if (Object.prototype.toString.call(dan) !== '[object Array]') {\n dan = [dan];\n }\n var docFragment = document.createDocumentFragment();\n var _loop3 = function _loop3() {\n dan[i].type = utils.number2Type(dan[i].type);\n if (!dan[i].color) {\n dan[i].color = 16777215;\n }\n var item = document.createElement('div');\n item.classList.add('dplayer-danmaku-item');\n item.classList.add('dplayer-danmaku-'.concat(dan[i].type));\n if (dan[i].border) {\n item.innerHTML = '<span style=\"border:'.concat(dan[i].border, '\">').concat(dan[i].text, '</span>');\n } else {\n item.innerHTML = dan[i].text;\n }\n item.style.opacity = _this5._opacity;\n item.style.color = utils.number2Color(dan[i].color);\n item.addEventListener('animationend', function () {\n _this5.container.removeChild(item);\n });\n var itemWidth = _this5._measure(dan[i].text);\n var tunnel;\n switch (dan[i].type) {\n case 'right':\n tunnel = getTunnel(item, dan[i].type, itemWidth);\n if (tunnel >= 0) {\n item.style.width = itemWidth + 1 + 'px';\n item.style.top = itemHeight * tunnel + 'px';\n item.style.transform = 'translateX(-'.concat(danWidth, 'px)');\n }\n break;\n case 'top':\n tunnel = getTunnel(item, dan[i].type);\n if (tunnel >= 0) {\n item.style.top = itemHeight * tunnel + 'px';\n }\n break;\n case 'bottom':\n tunnel = getTunnel(item, dan[i].type);\n if (tunnel >= 0) {\n item.style.bottom = itemHeight * tunnel + 'px';\n }\n break;\n default:\n console.error('Can\\'t handled danmaku type: '.concat(dan[i].type));\n }\n if (tunnel >= 0) {\n item.classList.add('dplayer-danmaku-move');\n item.style.animationDuration = _this5._danAnimation(dan[i].type);\n docFragment.appendChild(item);\n }\n };\n for (var i = 0; i < dan.length; i++) {\n _loop3();\n }\n this.container.appendChild(docFragment);\n return docFragment;\n }\n }\n },\n {\n key: 'play',\n value: function play() {\n this.paused = false;\n }\n },\n {\n key: 'pause',\n value: function pause() {\n this.paused = true;\n }\n },\n {\n key: '_measure',\n value: function _measure(text) {\n if (!this.context) {\n var measureStyle = getComputedStyle(this.container.getElementsByClassName('dplayer-danmaku-item')[0], null);\n this.context = document.createElement('canvas').getContext('2d');\n this.context.font = measureStyle.getPropertyValue('font');\n }\n return this.context.measureText(text).width;\n }\n },\n {\n key: 'seek',\n value: function seek() {\n this.clear();\n for (var i = 0; i < this.dan.length; i++) {\n if (this.dan[i].time >= this.options.time()) {\n this.danIndex = i;\n break;\n }\n this.danIndex = this.dan.length;\n }\n }\n },\n {\n key: 'clear',\n value: function clear() {\n this.danTunnel = {\n right: {},\n top: {},\n bottom: {}\n };\n this.danIndex = 0;\n this.options.container.innerHTML = '';\n this.events && this.events.trigger('danmaku_clear');\n }\n },\n {\n key: 'htmlEncode',\n value: function htmlEncode(str) {\n return str.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;').replace(/'/g, '&#x27;').replace(/\\//g, '&#x2f;');\n }\n },\n {\n key: 'resize',\n value: function resize() {\n var danWidth = this.container.offsetWidth;\n var items = this.container.getElementsByClassName('dplayer-danmaku-item');\n for (var i = 0; i < items.length; i++) {\n items[i].style.transform = 'translateX(-'.concat(danWidth, 'px)');\n }\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.showing = false;\n this.pause();\n this.clear();\n this.events && this.events.trigger('danmaku_hide');\n }\n },\n {\n key: 'show',\n value: function show() {\n this.seek();\n this.showing = true;\n this.play();\n this.events && this.events.trigger('danmaku_show');\n }\n },\n {\n key: 'unlimit',\n value: function unlimit(_boolean) {\n this.unlimited = _boolean;\n }\n },\n {\n key: 'speed',\n value: function speed(rate) {\n this.options.api.speedRate = rate;\n }\n },\n {\n key: '_danAnimation',\n value: function _danAnimation(position) {\n var rate = this.options.api.speedRate || 1;\n var isFullScreen = !!this.player.fullScreen.isFullScreen();\n var animations = {\n top: ''.concat((isFullScreen ? 6 : 4) / rate, 's'),\n right: ''.concat((isFullScreen ? 8 : 5) / rate, 's'),\n bottom: ''.concat((isFullScreen ? 6 : 4) / rate, 's')\n };\n return animations[position];\n }\n }\n ]);\n}();\nexport default Danmaku;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Events = function () {\n function Events() {\n _classCallCheck(this, Events);\n this.events = {};\n this.videoEvents = [\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 'screenshot',\n 'thumbnails_show',\n 'thumbnails_hide',\n 'danmaku_show',\n 'danmaku_hide',\n 'danmaku_clear',\n 'danmaku_loaded',\n 'danmaku_send',\n 'danmaku_opacity',\n 'contextmenu_show',\n 'contextmenu_hide',\n 'notice_show',\n 'notice_hide',\n 'quality_start',\n 'quality_end',\n 'destroy',\n 'resize',\n 'fullscreen',\n 'fullscreen_cancel',\n 'webfullscreen',\n 'webfullscreen_cancel',\n 'subtitle_show',\n 'subtitle_hide',\n 'subtitle_change'\n ];\n }\n return _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.videoEvents.indexOf(name) !== -1) {\n return 'video';\n }\n console.error('Unknown event name: '.concat(name));\n return null;\n }\n }\n ]);\n}();\nexport default Events;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar FullScreen = function () {\n function FullScreen(player) {\n var _this = this;\n _classCallCheck(this, FullScreen);\n this.player = player;\n this.lastScrollPosition = {\n left: 0,\n top: 0\n };\n this.player.events.on('webfullscreen', function () {\n _this.player.resize();\n });\n this.player.events.on('webfullscreen_cancel', function () {\n _this.player.resize();\n utils.setScrollPosition(_this.lastScrollPosition);\n });\n this.fullscreenchange = function () {\n _this.player.resize();\n if (_this.isFullScreen('browser')) {\n _this.player.events.trigger('fullscreen');\n } else {\n utils.setScrollPosition(_this.lastScrollPosition);\n _this.player.events.trigger('fullscreen_cancel');\n }\n };\n this.docfullscreenchange = function () {\n var fullEle = document.fullscreenElement || document.mozFullScreenElement || document.msFullscreenElement;\n if (fullEle && fullEle !== _this.player.container) {\n return;\n }\n _this.player.resize();\n if (fullEle) {\n _this.player.events.trigger('fullscreen');\n } else {\n utils.setScrollPosition(_this.lastScrollPosition);\n _this.player.events.trigger('fullscreen_cancel');\n }\n };\n if (/Firefox/.test(navigator.userAgent)) {\n document.addEventListener('mozfullscreenchange', this.docfullscreenchange);\n document.addEventListener('fullscreenchange', this.docfullscreenchange);\n } else {\n this.player.container.addEventListener('fullscreenchange', this.fullscreenchange);\n this.player.container.addEventListener('webkitfullscreenchange', this.fullscreenchange);\n document.addEventListener('msfullscreenchange', this.docfullscreenchange);\n document.addEventListener('MSFullscreenChange', this.docfullscreenchange);\n }\n }\n return _createClass(FullScreen, [\n {\n key: 'isFullScreen',\n value: function isFullScreen() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n switch (type) {\n case 'browser':\n return document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement;\n case 'web':\n return this.player.container.classList.contains('dplayer-fulled');\n }\n }\n },\n {\n key: 'request',\n value: function request() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n var anotherType = type === 'browser' ? 'web' : 'browser';\n var anotherTypeOn = this.isFullScreen(anotherType);\n if (!anotherTypeOn) {\n this.lastScrollPosition = utils.getScrollPosition();\n }\n switch (type) {\n case 'browser':\n if (this.player.container.requestFullscreen) {\n this.player.container.requestFullscreen();\n } else if (this.player.container.mozRequestFullScreen) {\n this.player.container.mozRequestFullScreen();\n } else if (this.player.container.webkitRequestFullscreen) {\n this.player.container.webkitRequestFullscreen();\n } else if (this.player.video.webkitEnterFullscreen) {\n this.player.video.webkitEnterFullscreen();\n } else if (this.player.video.webkitEnterFullScreen) {\n this.player.video.webkitEnterFullScreen();\n } else if (this.player.container.msRequestFullscreen) {\n this.player.container.msRequestFullscreen();\n }\n break;\n case 'web':\n this.player.container.classList.add('dplayer-fulled');\n document.body.classList.add('dplayer-web-fullscreen-fix');\n this.player.events.trigger('webfullscreen');\n break;\n }\n if (anotherTypeOn) {\n this.cancel(anotherType);\n }\n }\n },\n {\n key: 'cancel',\n value: function cancel() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n switch (type) {\n case 'browser':\n if (document.cancelFullScreen) {\n document.cancelFullScreen();\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen();\n } else if (document.webkitCancelFullScreen) {\n document.webkitCancelFullScreen();\n } else if (document.webkitCancelFullscreen) {\n document.webkitCancelFullscreen();\n } else if (document.msCancelFullScreen) {\n document.msCancelFullScreen();\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen();\n }\n break;\n case 'web':\n this.player.container.classList.remove('dplayer-fulled');\n document.body.classList.remove('dplayer-web-fullscreen-fix');\n this.player.events.trigger('webfullscreen_cancel');\n break;\n }\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'browser';\n if (this.isFullScreen(type)) {\n this.cancel(type);\n } else {\n this.request(type);\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (/Firefox/.test(navigator.userAgent)) {\n document.removeEventListener('mozfullscreenchange', this.docfullscreenchange);\n document.removeEventListener('fullscreenchange', this.docfullscreenchange);\n } else {\n this.player.container.removeEventListener('fullscreenchange', this.fullscreenchange);\n this.player.container.removeEventListener('webkitfullscreenchange', this.fullscreenchange);\n document.removeEventListener('msfullscreenchange', this.docfullscreenchange);\n document.removeEventListener('MSFullscreenChange', this.docfullscreenchange);\n }\n }\n }\n ]);\n}();\nexport default FullScreen;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar User = function () {\n function User(player) {\n _classCallCheck(this, User);\n this.storageName = {\n opacity: 'dplayer-danmaku-opacity',\n volume: 'dplayer-volume',\n unlimited: 'dplayer-danmaku-unlimited',\n danmaku: 'dplayer-danmaku-show',\n subtitle: 'dplayer-subtitle-show'\n };\n this['default'] = {\n opacity: 0.7,\n volume: player.options.hasOwnProperty('volume') ? player.options.volume : 0.7,\n unlimited: (player.options.danmaku && player.options.danmaku.unlimited ? 1 : 0) || 0,\n danmaku: 1,\n subtitle: 1\n };\n this.data = {};\n this.init();\n }\n return _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(utils.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 utils.storage.set(this.storageName[key], value);\n }\n }\n ]);\n}();\nexport default User;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Subtitle = function () {\n function Subtitle(container, video, options, events) {\n _classCallCheck(this, Subtitle);\n this.container = container;\n this.video = video;\n this.options = options;\n this.events = events;\n this.init();\n }\n return _createClass(Subtitle, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.container.style.fontSize = this.options.fontSize;\n this.container.style.bottom = this.options.bottom;\n this.container.style.color = this.options.color;\n if (this.video.textTracks && this.video.textTracks[0]) {\n var track = this.video.textTracks[0];\n track.oncuechange = function () {\n var cue = track.activeCues[track.activeCues.length - 1];\n _this.container.innerHTML = '';\n if (cue) {\n var template = document.createElement('div');\n template.appendChild(cue.getCueAsHTML());\n var trackHtml = template.innerHTML.split(/\\r?\\n/).map(function (item) {\n return '<p>'.concat(item, '</p>');\n }).join('');\n _this.container.innerHTML = trackHtml;\n }\n _this.events.trigger('subtitle_change');\n };\n }\n }\n },\n {\n key: 'show',\n value: function show() {\n this.container.classList.remove('dplayer-subtitle-hide');\n this.events.trigger('subtitle_show');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.container.classList.add('dplayer-subtitle-hide');\n this.events.trigger('subtitle_hide');\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.container.classList.contains('dplayer-subtitle-hide')) {\n this.show();\n } else {\n this.hide();\n }\n }\n }\n ]);\n}();\nexport default Subtitle;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Subtitles = function () {\n function Subtitles(player) {\n var _this = this;\n _classCallCheck(this, Subtitles);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n this.player.template.subtitlesButton.addEventListener('click', function () {\n _this.adaptiveHeight();\n _this.show();\n });\n var lastItemIndex = this.player.template.subtitlesItem.length - 1;\n var _loop = function _loop(i) {\n _this.player.template.subtitlesItem[i].addEventListener('click', function () {\n _this.hide();\n if (_this.player.options.subtitle.index !== i) {\n _this.player.template.subtitle.innerHTML = '<p></p>';\n _this.player.template.subtrack.src = _this.player.template.subtitlesItem[i].dataset.subtitle;\n _this.player.options.subtitle.index = i;\n if (_this.player.template.subtitle.classList.contains('dplayer-subtitle-hide')) {\n _this.subContainerShow();\n }\n }\n });\n };\n for (var i = 0; i < lastItemIndex; i++) {\n _loop(i);\n }\n this.player.template.subtitlesItem[lastItemIndex].addEventListener('click', function () {\n _this.hide();\n if (_this.player.options.subtitle.index !== lastItemIndex) {\n _this.player.template.subtitle.innerHTML = '<p></p>';\n _this.player.template.subtrack.src = '';\n _this.player.options.subtitle.index = lastItemIndex;\n _this.subContainerHide();\n }\n });\n }\n return _createClass(Subtitles, [\n {\n key: 'subContainerShow',\n value: function subContainerShow() {\n this.player.template.subtitle.classList.remove('dplayer-subtitle-hide');\n this.player.events.trigger('subtitle_show');\n }\n },\n {\n key: 'subContainerHide',\n value: function subContainerHide() {\n this.player.template.subtitle.classList.add('dplayer-subtitle-hide');\n this.player.events.trigger('subtitle_hide');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.subtitlesBox.classList.remove('dplayer-subtitles-box-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.template.subtitlesBox.classList.add('dplayer-subtitles-box-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'adaptiveHeight',\n value: function adaptiveHeight() {\n var curBoxHeight = this.player.template.subtitlesItem.length * 30 + 14;\n var stdMaxHeight = this.player.template.videoWrap.offsetHeight * 0.8;\n if (curBoxHeight >= stdMaxHeight - 50) {\n this.player.template.subtitlesBox.style.bottom = '8px';\n this.player.template.subtitlesBox.style['max-height'] = stdMaxHeight - 8 + 'px';\n } else {\n this.player.template.subtitlesBox.style.bottom = '50px';\n this.player.template.subtitlesBox.style['max-height'] = stdMaxHeight - 50 + 'px';\n }\n }\n }\n ]);\n}();\nexport default Subtitles;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Bar = function () {\n function Bar(template) {\n _classCallCheck(this, Bar);\n this.elements = {};\n this.elements.volume = template.volumeBar;\n this.elements.played = template.playedBar;\n this.elements.loaded = template.loadedBar;\n this.elements.danmaku = template.danmakuOpacityBar;\n }\n return _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) {\n return parseFloat(this.elements[type].style.width) / 100;\n }\n }\n ]);\n}();\nexport default Bar;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\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 'info',\n 'fps'\n ];\n this.init();\n }\n return _createClass(Timer, [\n {\n key: 'init',\n value: function init() {\n var _this = this;\n this.types.map(function (item) {\n if (item !== 'fps') {\n _this['init'.concat(item, 'Checker')]();\n }\n return item;\n });\n }\n },\n {\n key: 'initloadingChecker',\n value: function initloadingChecker() {\n var _this2 = this;\n var lastPlayPos = 0;\n var currentPlayPos = 0;\n var bufferingDetected = false;\n this.loadingChecker = setInterval(function () {\n if (_this2.enableloadingChecker) {\n currentPlayPos = _this2.player.video.currentTime;\n if (!bufferingDetected && currentPlayPos === lastPlayPos && !_this2.player.video.paused) {\n _this2.player.container.classList.add('dplayer-loading');\n bufferingDetected = true;\n }\n if (bufferingDetected && currentPlayPos > lastPlayPos && !_this2.player.video.paused) {\n _this2.player.container.classList.remove('dplayer-loading');\n bufferingDetected = false;\n }\n lastPlayPos = currentPlayPos;\n }\n }, 100);\n }\n },\n {\n key: 'initfpsChecker',\n value: function initfpsChecker() {\n var _this3 = this;\n window.requestAnimationFrame(function () {\n if (_this3.enablefpsChecker) {\n _this3.initfpsChecker();\n if (!_this3.fpsStart) {\n _this3.fpsStart = new Date();\n _this3.fpsIndex = 0;\n } else {\n _this3.fpsIndex++;\n var fpsCurrent = new Date();\n if (fpsCurrent - _this3.fpsStart > 1000) {\n _this3.player.infoPanel.fps(_this3.fpsIndex / (fpsCurrent - _this3.fpsStart) * 1000);\n _this3.fpsStart = new Date();\n _this3.fpsIndex = 0;\n }\n }\n } else {\n _this3.fpsStart = 0;\n _this3.fpsIndex = 0;\n }\n });\n }\n },\n {\n key: 'initinfoChecker',\n value: function initinfoChecker() {\n var _this4 = this;\n this.infoChecker = setInterval(function () {\n if (_this4.enableinfoChecker) {\n _this4.player.infoPanel.update();\n }\n }, 1000);\n }\n },\n {\n key: 'enable',\n value: function enable(type) {\n this['enable'.concat(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'.concat(type, 'Checker')] = false;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n var _this5 = this;\n this.types.map(function (item) {\n _this5['enable'.concat(item, 'Checker')] = false;\n _this5[''.concat(item, 'Checker')] && clearInterval(_this5[''.concat(item, 'Checker')]);\n return item;\n });\n }\n }\n ]);\n}();\nexport default Timer;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Bezel = function () {\n function Bezel(container) {\n var _this = this;\n _classCallCheck(this, Bezel);\n this.container = container;\n this.container.addEventListener('animationend', function () {\n _this.container.classList.remove('dplayer-bezel-transition');\n });\n }\n return _createClass(Bezel, [{\n key: 'switch',\n value: function _switch(icon) {\n this.container.innerHTML = icon;\n this.container.classList.add('dplayer-bezel-transition');\n }\n }]);\n}();\nexport default Bezel;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar Thumbnails = function () {\n function Thumbnails(options) {\n _classCallCheck(this, Thumbnails);\n this.container = options.container;\n this.barWidth = options.barWidth;\n this.container.style.backgroundImage = 'url(\\''.concat(options.url, '\\')');\n this.events = options.events;\n }\n return _createClass(Thumbnails, [\n {\n key: 'resize',\n value: function resize(width, height, barWrapWidth) {\n this.container.style.width = ''.concat(width, 'px');\n this.container.style.height = ''.concat(height, 'px');\n this.container.style.top = ''.concat(-height + 2, 'px');\n this.barWidth = barWrapWidth;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.container.style.display = 'block';\n this.events && this.events.trigger('thumbnails_show');\n }\n },\n {\n key: 'move',\n value: function move(position) {\n this.container.style.backgroundPosition = '-'.concat((Math.ceil(position / this.barWidth * 100) - 1) * 160, 'px 0');\n this.container.style.left = ''.concat(Math.min(Math.max(position - this.container.offsetWidth / 2, -10), this.barWidth - 150), 'px');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.container.style.display = 'none';\n this.events && this.events.trigger('thumbnails_hide');\n }\n }\n ]);\n}();\nexport default Thumbnails;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nimport Thumbnails from './thumbnails';\nimport Icons from './icons';\nvar cast;\nvar runOnce = true;\nvar isCasting = false;\nvar Controller = function () {\n function Controller(player) {\n _classCallCheck(this, Controller);\n this.player = player;\n this.autoHideTimer = 0;\n if (!utils.isMobile) {\n this.setAutoHideHandler = this.setAutoHide.bind(this);\n this.player.container.addEventListener('mousemove', this.setAutoHideHandler);\n this.player.container.addEventListener('click', this.setAutoHideHandler);\n this.player.on('play', this.setAutoHideHandler);\n this.player.on('pause', this.setAutoHideHandler);\n }\n this.initPlayButton();\n this.initThumbnails();\n this.initPlayedBar();\n this.initFullButton();\n this.initQualityButton();\n this.initScreenshotButton();\n if (this.player.options.subtitle) {\n if (typeof this.player.options.subtitle.url === 'string') {\n this.initSubtitleButton();\n }\n }\n this.initHighlights();\n this.initAirplayButton();\n this.initChromecastButton();\n if (!utils.isMobile) {\n this.initVolumeButton();\n }\n }\n return _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this = this;\n this.player.template.playButton.addEventListener('click', function () {\n _this.player.toggle();\n });\n this.player.template.mobilePlayButton.addEventListener('click', function () {\n _this.player.toggle();\n });\n if (!utils.isMobile) {\n if (!this.player.options.preventClickToggle) {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this.player.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this.player.toggle();\n });\n }\n } else {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this.toggle();\n });\n }\n }\n },\n {\n key: 'initHighlights',\n value: function initHighlights() {\n var _this2 = this;\n this.player.on('durationchange', function () {\n if (_this2.player.video.duration !== 1 && _this2.player.video.duration !== Infinity) {\n if (_this2.player.options.highlight) {\n var highlights = _this2.player.template.playedBarWrap.querySelectorAll('.dplayer-highlight');\n [].slice.call(highlights, 0).forEach(function (item) {\n _this2.player.template.playedBarWrap.removeChild(item);\n });\n for (var i = 0; i < _this2.player.options.highlight.length; i++) {\n if (!_this2.player.options.highlight[i].text || !_this2.player.options.highlight[i].time) {\n continue;\n }\n var p = document.createElement('div');\n p.classList.add('dplayer-highlight');\n p.style.left = _this2.player.options.highlight[i].time / _this2.player.video.duration * 100 + '%';\n p.innerHTML = '<span class=\"dplayer-highlight-text\">' + _this2.player.options.highlight[i].text + '</span>';\n _this2.player.template.playedBarWrap.insertBefore(p, _this2.player.template.playedBarTime);\n }\n }\n }\n });\n }\n },\n {\n key: 'initThumbnails',\n value: function initThumbnails() {\n var _this3 = this;\n if (this.player.options.video.thumbnails) {\n this.thumbnails = new Thumbnails({\n container: this.player.template.barPreview,\n barWidth: this.player.template.barWrap.offsetWidth,\n url: this.player.options.video.thumbnails,\n events: this.player.events\n });\n this.player.on('loadedmetadata', function () {\n _this3.thumbnails.resize(160, _this3.player.video.videoHeight / _this3.player.video.videoWidth * 160, _this3.player.template.barWrap.offsetWidth);\n });\n }\n }\n },\n {\n key: 'initPlayedBar',\n value: function initPlayedBar() {\n var _this4 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this4.player.template.playedBarWrap)) / _this4.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.bar.set('played', percentage, 'width');\n _this4.player.template.ptime.innerHTML = utils.secondToTime(percentage * _this4.player.video.duration);\n };\n var _thumbUp = function thumbUp(e) {\n document.removeEventListener(utils.nameMap.dragEnd, _thumbUp);\n document.removeEventListener(utils.nameMap.dragMove, thumbMove);\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this4.player.template.playedBarWrap)) / _this4.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this4.player.bar.set('played', percentage, 'width');\n _this4.player.seek(_this4.player.bar.get('played') * _this4.player.video.duration);\n _this4.player.moveBar = false;\n };\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragStart, function () {\n _this4.player.moveBar = true;\n document.addEventListener(utils.nameMap.dragMove, thumbMove);\n document.addEventListener(utils.nameMap.dragEnd, _thumbUp);\n });\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragMove, function (e) {\n if (_this4.player.video.duration) {\n var px = _this4.player.template.playedBarWrap.getBoundingClientRect().left;\n var tx = (e.clientX || e.changedTouches[0].clientX) - px;\n if (tx < 0 || tx > _this4.player.template.playedBarWrap.offsetWidth) {\n return;\n }\n var time = _this4.player.video.duration * (tx / _this4.player.template.playedBarWrap.offsetWidth);\n if (utils.isMobile) {\n _this4.thumbnails && _this4.thumbnails.show();\n }\n _this4.thumbnails && _this4.thumbnails.move(tx);\n _this4.player.template.playedBarTime.style.left = ''.concat(tx - (time >= 3600 ? 25 : 20), 'px');\n _this4.player.template.playedBarTime.innerText = utils.secondToTime(time);\n _this4.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragEnd, function () {\n if (utils.isMobile) {\n _this4.thumbnails && _this4.thumbnails.hide();\n }\n });\n if (!utils.isMobile) {\n this.player.template.playedBarWrap.addEventListener('mouseenter', function () {\n if (_this4.player.video.duration) {\n _this4.thumbnails && _this4.thumbnails.show();\n _this4.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener('mouseleave', function () {\n if (_this4.player.video.duration) {\n _this4.thumbnails && _this4.thumbnails.hide();\n _this4.player.template.playedBarTime.classList.add('hidden');\n }\n });\n }\n }\n },\n {\n key: 'initFullButton',\n value: function initFullButton() {\n var _this5 = this;\n this.player.template.browserFullButton.addEventListener('click', function () {\n _this5.player.fullScreen.toggle('browser');\n });\n this.player.template.webFullButton.addEventListener('click', function () {\n _this5.player.fullScreen.toggle('web');\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this6 = this;\n var vWidth = 35;\n var volumeMove = function volumeMove(event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this6.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this6.player.volume(percentage);\n };\n var _volumeUp = function volumeUp() {\n document.removeEventListener(utils.nameMap.dragEnd, _volumeUp);\n document.removeEventListener(utils.nameMap.dragMove, volumeMove);\n _this6.player.template.volumeButton.classList.remove('dplayer-volume-active');\n };\n this.player.template.volumeBarWrapWrap.addEventListener('click', function (event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this6.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this6.player.volume(percentage);\n });\n this.player.template.volumeBarWrapWrap.addEventListener(utils.nameMap.dragStart, function () {\n document.addEventListener(utils.nameMap.dragMove, volumeMove);\n document.addEventListener(utils.nameMap.dragEnd, _volumeUp);\n _this6.player.template.volumeButton.classList.add('dplayer-volume-active');\n });\n this.player.template.volumeButtonIcon.addEventListener('click', function () {\n if (_this6.player.video.muted) {\n _this6.player.video.muted = false;\n _this6.player.switchVolumeIcon();\n _this6.player.bar.set('volume', _this6.player.volume(), 'width');\n } else {\n _this6.player.video.muted = true;\n _this6.player.template.volumeIcon.innerHTML = Icons.volumeOff;\n _this6.player.bar.set('volume', 0, 'width');\n }\n });\n }\n },\n {\n key: 'initQualityButton',\n value: function initQualityButton() {\n var _this7 = this;\n if (this.player.options.video.quality) {\n this.player.template.qualityList.addEventListener('click', function (e) {\n if (e.target.classList.contains('dplayer-quality-item')) {\n _this7.player.switchQuality(e.target.dataset.index);\n }\n });\n }\n }\n },\n {\n key: 'initScreenshotButton',\n value: function initScreenshotButton() {\n var _this8 = this;\n if (this.player.options.screenshot) {\n this.player.template.camareButton.addEventListener('click', function () {\n var canvas = document.createElement('canvas');\n canvas.width = _this8.player.video.videoWidth;\n canvas.height = _this8.player.video.videoHeight;\n canvas.getContext('2d').drawImage(_this8.player.video, 0, 0, canvas.width, canvas.height);\n var dataURL;\n canvas.toBlob(function (blob) {\n dataURL = URL.createObjectURL(blob);\n var link = document.createElement('a');\n link.href = dataURL;\n link.download = 'DPlayer.png';\n link.style.display = 'none';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(dataURL);\n _this8.player.events.trigger('screenshot', dataURL);\n });\n });\n }\n }\n },\n {\n key: 'initAirplayButton',\n value: function initAirplayButton() {\n if (this.player.options.airplay) {\n if (window.WebKitPlaybackTargetAvailabilityEvent) {\n this.player.video.addEventListener('webkitplaybacktargetavailabilitychanged', function (event) {\n switch (event.availability) {\n case 'available':\n this.template.airplayButton.disable = false;\n break;\n default:\n this.template.airplayButton.disable = true;\n }\n this.template.airplayButton.addEventListener('click', function () {\n this.video.webkitShowPlaybackTargetPicker();\n }.bind(this));\n }.bind(this.player));\n } else {\n this.player.template.airplayButton.style.display = 'none';\n }\n }\n }\n },\n {\n key: 'initChromecast',\n value: function initChromecast() {\n var script = window.document.createElement('script');\n script.setAttribute('type', 'text/javascript');\n script.setAttribute('src', 'https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1');\n window.document.body.appendChild(script);\n window.__onGCastApiAvailable = function (isAvailable) {\n if (isAvailable) {\n cast = window.chrome.cast;\n var sessionRequest = new cast.SessionRequest(cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID);\n var apiConfig = new cast.ApiConfig(sessionRequest, function () {\n }, function (status) {\n if (status === cast.ReceiverAvailability.AVAILABLE) {\n console.log('chromecast: ', status);\n }\n });\n cast.initialize(apiConfig, function () {\n });\n }\n };\n }\n },\n {\n key: 'initChromecastButton',\n value: function initChromecastButton() {\n var _this9 = this;\n if (this.player.options.chromecast) {\n if (runOnce) {\n runOnce = false;\n this.initChromecast();\n }\n var discoverDevices = function discoverDevices() {\n cast.requestSession(function (s) {\n _this9.session = s;\n launchMedia(_this9.player.options.video.url);\n }, function (err) {\n if (err.code === 'cancel') {\n _this9.session = undefined;\n } else {\n console.error('Error selecting a cast device', err);\n }\n });\n };\n var launchMedia = function launchMedia(media) {\n var mediaInfo = new cast.media.MediaInfo(media);\n var request = new cast.media.LoadRequest(mediaInfo);\n if (!_this9.session) {\n window.open(media);\n return false;\n }\n _this9.session.loadMedia(request, onMediaDiscovered.bind(_this9, 'loadMedia'), onMediaError).play();\n return true;\n };\n var onMediaDiscovered = function onMediaDiscovered(how, media) {\n _this9.currentMedia = media;\n };\n var onMediaError = function onMediaError(err) {\n console.error('Error launching media', err);\n };\n this.player.template.chromecastButton.addEventListener('click', function () {\n if (isCasting) {\n isCasting = false;\n _this9.currentMedia.stop();\n _this9.session.stop();\n _this9.initChromecast();\n } else {\n isCasting = true;\n discoverDevices();\n }\n });\n }\n }\n },\n {\n key: 'initSubtitleButton',\n value: function initSubtitleButton() {\n var _this0 = this;\n this.player.events.on('subtitle_show', function () {\n _this0.player.template.subtitleButton.dataset.balloon = _this0.player.tran('hide-subs');\n _this0.player.template.subtitleButtonInner.style.opacity = '';\n _this0.player.user.set('subtitle', 1);\n });\n this.player.events.on('subtitle_hide', function () {\n _this0.player.template.subtitleButton.dataset.balloon = _this0.player.tran('show-subs');\n _this0.player.template.subtitleButtonInner.style.opacity = '0.4';\n _this0.player.user.set('subtitle', 0);\n });\n this.player.template.subtitleButton.addEventListener('click', function () {\n _this0.player.subtitle.toggle();\n });\n }\n },\n {\n key: 'setAutoHide',\n value: function setAutoHide() {\n var _this1 = this;\n this.show();\n clearTimeout(this.autoHideTimer);\n this.autoHideTimer = setTimeout(function () {\n if (!_this1.player.paused && !_this1.disableAutoHide) {\n _this1.hide();\n }\n }, 3000);\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.container.classList.remove('dplayer-hide-controller');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.container.classList.add('dplayer-hide-controller');\n this.player.setting.hide();\n this.player.setting.hideSpeedPanel();\n this.player.comment && this.player.comment.hide();\n }\n },\n {\n key: 'isShow',\n value: function isShow() {\n return !this.player.container.classList.contains('dplayer-hide-controller');\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.isShow()) {\n this.hide();\n } else {\n this.show();\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (!utils.isMobile) {\n this.player.container.removeEventListener('mousemove', this.setAutoHideHandler);\n this.player.container.removeEventListener('click', this.setAutoHideHandler);\n }\n clearTimeout(this.autoHideTimer);\n }\n }\n ]);\n}();\nexport default Controller;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Setting = function () {\n function Setting(player) {\n var _this = this;\n _classCallCheck(this, Setting);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n _this.hideSpeedPanel();\n });\n this.player.template.settingButton.addEventListener('click', function () {\n _this.show();\n });\n this.loop = this.player.options.loop;\n this.player.template.loopToggle.checked = this.loop;\n this.player.template.loop.addEventListener('click', function () {\n _this.player.template.loopToggle.checked = !_this.player.template.loopToggle.checked;\n if (_this.player.template.loopToggle.checked) {\n _this.loop = true;\n } else {\n _this.loop = false;\n }\n _this.hide();\n });\n this.showDanmaku = this.player.user.get('danmaku');\n if (!this.showDanmaku) {\n this.player.danmaku && this.player.danmaku.hide();\n }\n this.player.template.showDanmakuToggle.checked = this.showDanmaku;\n this.player.template.showDanmaku.addEventListener('click', function () {\n _this.player.template.showDanmakuToggle.checked = !_this.player.template.showDanmakuToggle.checked;\n if (_this.player.template.showDanmakuToggle.checked) {\n _this.showDanmaku = true;\n _this.player.danmaku.show();\n } else {\n _this.showDanmaku = false;\n _this.player.danmaku.hide();\n }\n _this.player.user.set('danmaku', _this.showDanmaku ? 1 : 0);\n _this.hide();\n });\n this.unlimitDanmaku = this.player.user.get('unlimited');\n this.player.template.unlimitDanmakuToggle.checked = this.unlimitDanmaku;\n this.player.template.unlimitDanmaku.addEventListener('click', function () {\n _this.player.template.unlimitDanmakuToggle.checked = !_this.player.template.unlimitDanmakuToggle.checked;\n if (_this.player.template.unlimitDanmakuToggle.checked) {\n _this.unlimitDanmaku = true;\n _this.player.danmaku.unlimit(true);\n } else {\n _this.unlimitDanmaku = false;\n _this.player.danmaku.unlimit(false);\n }\n _this.player.user.set('unlimited', _this.unlimitDanmaku ? 1 : 0);\n _this.hide();\n });\n this.player.template.speed.addEventListener('click', function () {\n _this.player.template.settingBox.classList.add('dplayer-setting-box-narrow');\n _this.player.template.settingBox.classList.add('dplayer-setting-box-speed');\n });\n var _loop = function _loop(i) {\n _this.player.template.speedItem[i].addEventListener('click', function () {\n _this.player.speed(_this.player.template.speedItem[i].dataset.speed);\n _this.updateSpeedPanelActive(_this.player.template.speedItem[i].dataset.speed);\n _this.hide();\n });\n };\n for (var i = 0; i < this.player.template.speedItem.length; i++) {\n _loop(i);\n }\n if (this.player.template.speedIndicator) {\n this.player.template.speedIndicator.addEventListener('click', function (e) {\n e.stopPropagation();\n _this.toggleSpeedPanel();\n });\n }\n if (this.player.template.speedPanel) {\n this.player.template.speedPanel.addEventListener('click', function (e) {\n e.stopPropagation();\n });\n }\n this.speedValues = this.player.options.playbackSpeed;\n this.currentSpeed = 1;\n this._positionSpeedTicks();\n this._updateSliderToSpeed(1);\n if (this.player.template.speedSliderTrack) {\n this.player.template.speedSliderTrack.addEventListener('click', function (e) {\n if (e.target === _this.player.template.speedSliderThumb) {\n return;\n }\n var rect = _this.player.template.speedSliderTrack.getBoundingClientRect();\n var x = e.clientX - rect.left;\n var percentage = Math.max(0, Math.min(1, x / rect.width));\n var speed = _this._getSpeedFromPercentage(percentage);\n _this.currentSpeed = speed;\n _this._updateSliderToSpeed(speed);\n _this.player.speed(speed);\n });\n }\n if (this.player.template.speedSliderThumb) {\n var lastDragSpeed = this.currentSpeed;\n var thumbDragStart = function thumbDragStart(e) {\n e.preventDefault();\n e.stopPropagation();\n lastDragSpeed = _this.currentSpeed;\n _this.player.template.speedSliderThumb.classList.add('dplayer-speed-slider-thumb-active');\n document.addEventListener(utils.nameMap.dragMove, thumbDragMove);\n document.addEventListener(utils.nameMap.dragEnd, _thumbDragEnd);\n };\n var thumbDragMove = function thumbDragMove(e) {\n var rect = _this.player.template.speedSliderTrack.getBoundingClientRect();\n var clientX = e.clientX || e.changedTouches && e.changedTouches[0].clientX;\n var percentage = (clientX - rect.left) / rect.width;\n percentage = Math.max(0, Math.min(1, percentage));\n var speed = _this._getSpeedFromPercentage(percentage);\n if (speed === lastDragSpeed) {\n return;\n }\n lastDragSpeed = speed;\n _this.currentSpeed = speed;\n var snappedPercentage = _this._getPercentageFromSpeed(speed);\n _this.player.template.speedSliderThumb.style.left = snappedPercentage * 100 + '%';\n _this.player.template.speedSliderFilled.style.width = snappedPercentage * 100 + '%';\n _this._highlightActivePreset(speed);\n _this.player.video.playbackRate = speed;\n _this.player._savedPlaybackRate = speed;\n if (_this.player.template.speedIndicator) {\n _this.player.template.speedIndicator.innerText = ''.concat(speed, 'x');\n }\n };\n var _thumbDragEnd = function thumbDragEnd() {\n document.removeEventListener(utils.nameMap.dragMove, thumbDragMove);\n document.removeEventListener(utils.nameMap.dragEnd, _thumbDragEnd);\n _this.player.template.speedSliderThumb.classList.remove('dplayer-speed-slider-thumb-active');\n _this.player.speed(_this.currentSpeed);\n };\n this.player.template.speedSliderThumb.addEventListener(utils.nameMap.dragStart, thumbDragStart);\n }\n var stepSpeed = function stepSpeed(delta) {\n var next = Math.round((_this.currentSpeed + delta) * 20) / 20;\n var min = _this.speedValues[0];\n var max = _this.speedValues[_this.speedValues.length - 1];\n var clamped = Math.min(max, Math.max(min, next));\n _this.currentSpeed = clamped;\n _this._updateSliderToSpeed(clamped);\n _this.player.speed(clamped);\n };\n if (this.player.template.speedSliderBtnMinus) {\n this.player.template.speedSliderBtnMinus.addEventListener('click', function (e) {\n e.stopPropagation();\n stepSpeed(-0.05);\n });\n }\n if (this.player.template.speedSliderBtnPlus) {\n this.player.template.speedSliderBtnPlus.addEventListener('click', function (e) {\n e.stopPropagation();\n stepSpeed(0.05);\n });\n }\n var _loop2 = function _loop2(_i) {\n _this.player.template.speedSliderLabels[_i].addEventListener('click', function () {\n var speed = _this.speedValues[_i];\n _this.currentSpeed = speed;\n _this._updateSliderToSpeed(speed);\n _this.player.speed(speed);\n });\n };\n for (var _i = 0; _i < this.player.template.speedSliderLabels.length; _i++) {\n _loop2(_i);\n }\n if (this.player.danmaku) {\n var dWidth = 130;\n this.player.on('danmaku_opacity', function (percentage) {\n _this.player.bar.set('danmaku', percentage, 'width');\n _this.player.user.set('opacity', percentage);\n });\n this.player.danmaku.opacity(this.player.user.get('opacity'));\n var danmakuMove = function danmakuMove(event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this.player.template.danmakuOpacityBarWrap)) / dWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this.player.danmaku.opacity(percentage);\n };\n var _danmakuUp = function danmakuUp() {\n document.removeEventListener(utils.nameMap.dragEnd, _danmakuUp);\n document.removeEventListener(utils.nameMap.dragMove, danmakuMove);\n _this.player.template.danmakuOpacityBox.classList.remove('dplayer-setting-danmaku-active');\n };\n this.player.template.danmakuOpacityBarWrapWrap.addEventListener('click', function (event) {\n var e = event || window.event;\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this.player.template.danmakuOpacityBarWrap)) / dWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this.player.danmaku.opacity(percentage);\n });\n this.player.template.danmakuOpacityBarWrapWrap.addEventListener(utils.nameMap.dragStart, function () {\n document.addEventListener(utils.nameMap.dragMove, danmakuMove);\n document.addEventListener(utils.nameMap.dragEnd, _danmakuUp);\n _this.player.template.danmakuOpacityBox.classList.add('dplayer-setting-danmaku-active');\n });\n }\n }\n return _createClass(Setting, [\n {\n key: 'hide',\n value: function hide() {\n var _this2 = this;\n this.player.template.settingBox.classList.remove('dplayer-setting-box-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n setTimeout(function () {\n _this2.player.template.settingBox.classList.remove('dplayer-setting-box-narrow');\n _this2.player.template.settingBox.classList.remove('dplayer-setting-box-speed');\n }, 300);\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: 'show',\n value: function show() {\n this.player.template.settingBox.classList.add('dplayer-setting-box-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'toggleSpeedPanel',\n value: function toggleSpeedPanel() {\n if (this.player.template.speedPanel.classList.contains('dplayer-speed-panel-open')) {\n this.hideSpeedPanel();\n } else {\n this.showSpeedPanel();\n }\n }\n },\n {\n key: 'showSpeedPanel',\n value: function showSpeedPanel() {\n this.hide();\n this.player.template.speedPanel.classList.add('dplayer-speed-panel-open');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.controller.disableAutoHide = true;\n }\n },\n {\n key: 'hideSpeedPanel',\n value: function hideSpeedPanel() {\n this.player.template.speedPanel.classList.remove('dplayer-speed-panel-open');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.controller.disableAutoHide = false;\n }\n },\n {\n key: '_positionSpeedTicks',\n value: function _positionSpeedTicks() {\n var count = this.speedValues.length;\n for (var i = 0; i < this.player.template.speedSliderTicks.length; i++) {\n var percent = count > 1 ? i / (count - 1) * 100 : 50;\n this.player.template.speedSliderTicks[i].style.left = percent + '%';\n }\n for (var _i2 = 0; _i2 < this.player.template.speedSliderLabels.length; _i2++) {\n var _percent = count > 1 ? _i2 / (count - 1) * 100 : 50;\n this.player.template.speedSliderLabels[_i2].style.left = _percent + '%';\n }\n }\n },\n {\n key: '_getSpeedFromPercentage',\n value: function _getSpeedFromPercentage(percentage) {\n var count = this.speedValues.length;\n if (count === 0) {\n return 1;\n }\n if (count === 1) {\n return this.speedValues[0];\n }\n var floatIndex = percentage * (count - 1);\n var lowerIndex = Math.floor(floatIndex);\n var upperIndex = Math.ceil(floatIndex);\n if (lowerIndex === upperIndex || upperIndex >= count) {\n return this.speedValues[Math.min(lowerIndex, count - 1)];\n }\n var fraction = floatIndex - lowerIndex;\n var speed = this.speedValues[lowerIndex] + (this.speedValues[upperIndex] - this.speedValues[lowerIndex]) * fraction;\n return Math.round(speed * 20) / 20;\n }\n },\n {\n key: '_getPercentageFromSpeed',\n value: function _getPercentageFromSpeed(speed) {\n var count = this.speedValues.length;\n if (count <= 1) {\n return 0.5;\n }\n if (speed <= this.speedValues[0]) {\n return 0;\n }\n if (speed >= this.speedValues[count - 1]) {\n return 1;\n }\n for (var i = 0; i < count - 1; i++) {\n if (speed >= this.speedValues[i] && speed <= this.speedValues[i + 1]) {\n var range = this.speedValues[i + 1] - this.speedValues[i];\n var fraction = range > 0 ? (speed - this.speedValues[i]) / range : 0;\n return (i + fraction) / (count - 1);\n }\n }\n return 0.5;\n }\n },\n {\n key: '_setSliderAt',\n value: function _setSliderAt(percentage, speed) {\n var percent = percentage * 100;\n if (this.player.template.speedSliderThumb) {\n this.player.template.speedSliderThumb.style.left = percent + '%';\n }\n if (this.player.template.speedSliderFilled) {\n this.player.template.speedSliderFilled.style.width = percent + '%';\n }\n this._highlightActivePreset(speed);\n }\n },\n {\n key: '_updateSliderToSpeed',\n value: function _updateSliderToSpeed(speed) {\n var percentage = this._getPercentageFromSpeed(speed);\n this._setSliderAt(percentage, speed);\n }\n },\n {\n key: '_highlightActivePreset',\n value: function _highlightActivePreset(speed) {\n var rounded = Math.round(speed * 20) / 20;\n for (var i = 0; i < this.player.template.speedSliderTicks.length; i++) {\n var tickSpeed = this.speedValues[i];\n if (tickSpeed <= rounded) {\n this.player.template.speedSliderTicks[i].classList.add('dplayer-speed-slider-tick-filled');\n } else {\n this.player.template.speedSliderTicks[i].classList.remove('dplayer-speed-slider-tick-filled');\n }\n if (tickSpeed === rounded) {\n this.player.template.speedSliderTicks[i].classList.add('dplayer-speed-slider-tick-active');\n } else {\n this.player.template.speedSliderTicks[i].classList.remove('dplayer-speed-slider-tick-active');\n }\n }\n for (var _i3 = 0; _i3 < this.player.template.speedSliderLabels.length; _i3++) {\n if (this.speedValues[_i3] === rounded) {\n this.player.template.speedSliderLabels[_i3].classList.add('dplayer-speed-slider-label-active');\n } else {\n this.player.template.speedSliderLabels[_i3].classList.remove('dplayer-speed-slider-label-active');\n }\n }\n }\n },\n {\n key: 'updateSpeedPanelActive',\n value: function updateSpeedPanelActive(speed) {\n var speedNum = parseFloat(speed);\n this.currentSpeed = speedNum;\n this._updateSliderToSpeed(speedNum);\n }\n }\n ]);\n}();\nexport default Setting;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport utils from './utils';\nvar Comment = function () {\n function Comment(player) {\n var _this = this;\n _classCallCheck(this, Comment);\n this.player = player;\n this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n this.player.template.commentButton.addEventListener('click', function () {\n _this.show();\n });\n this.player.template.commentSettingButton.addEventListener('click', function () {\n _this.toggleSetting();\n });\n this.player.template.commentColorSettingBox.addEventListener('click', function () {\n var sele = _this.player.template.commentColorSettingBox.querySelector('input:checked+span');\n if (sele) {\n var color = _this.player.template.commentColorSettingBox.querySelector('input:checked').value;\n _this.player.template.commentSettingFill.style.fill = color;\n _this.player.template.commentInput.style.color = color;\n _this.player.template.commentSendFill.style.fill = color;\n }\n });\n this.player.template.commentInput.addEventListener('click', function () {\n _this.hideSetting();\n });\n this.player.template.commentInput.addEventListener('keydown', function (e) {\n var event = e || window.event;\n if (event.keyCode === 13) {\n _this.send();\n }\n });\n this.player.template.commentSendButton.addEventListener('click', function () {\n _this.send();\n });\n }\n return _createClass(Comment, [\n {\n key: 'show',\n value: function show() {\n this.player.controller.disableAutoHide = true;\n this.player.template.controller.classList.add('dplayer-controller-comment');\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.player.container.classList.add('dplayer-show-controller');\n this.player.template.commentInput.focus();\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.controller.classList.remove('dplayer-controller-comment');\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.container.classList.remove('dplayer-show-controller');\n this.player.controller.disableAutoHide = false;\n this.hideSetting();\n }\n },\n {\n key: 'showSetting',\n value: function showSetting() {\n this.player.template.commentSettingBox.classList.add('dplayer-comment-setting-open');\n }\n },\n {\n key: 'hideSetting',\n value: function hideSetting() {\n this.player.template.commentSettingBox.classList.remove('dplayer-comment-setting-open');\n }\n },\n {\n key: 'toggleSetting',\n value: function toggleSetting() {\n if (this.player.template.commentSettingBox.classList.contains('dplayer-comment-setting-open')) {\n this.hideSetting();\n } else {\n this.showSetting();\n }\n }\n },\n {\n key: 'send',\n value: function send() {\n var _this2 = this;\n this.player.template.commentInput.blur();\n if (!this.player.template.commentInput.value.replace(/^\\s+|\\s+$/g, '')) {\n this.player.notice(this.player.tran('please-input-danmaku'));\n return;\n }\n this.player.danmaku.send({\n text: this.player.template.commentInput.value,\n color: utils.color2Number(this.player.container.querySelector('.dplayer-comment-setting-color input:checked').value),\n type: parseInt(this.player.container.querySelector('.dplayer-comment-setting-type input:checked').value)\n }, function () {\n _this2.player.template.commentInput.value = '';\n _this2.hide();\n });\n }\n }\n ]);\n}();\nexport default Comment;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar HotKey = function () {\n function HotKey(player) {\n _classCallCheck(this, HotKey);\n this.player = player;\n this.doHotKeyHandler = this.doHotKey.bind(this);\n this.cancelFullScreenHandler = this.cancelFullScreen.bind(this);\n if (this.player.options.hotkey) {\n document.addEventListener('keydown', this.doHotKeyHandler);\n }\n document.addEventListener('keydown', this.cancelFullScreenHandler);\n }\n return _createClass(HotKey, [\n {\n key: 'takeScreenshot',\n value: function takeScreenshot() {\n var video = this.player.video;\n var canvas = document.createElement('canvas');\n canvas.width = video.videoWidth;\n canvas.height = video.videoHeight;\n var ctx = canvas.getContext('2d');\n ctx.drawImage(video, 0, 0, canvas.width, canvas.height);\n var time = video.currentTime;\n var h = String(Math.floor(time / 3600)).padStart(2, '0');\n var m = String(Math.floor(time % 3600 / 60)).padStart(2, '0');\n var s = String(Math.floor(time % 60)).padStart(2, '0');\n var timestamp = ''.concat(h, '-').concat(m, '-').concat(s);\n canvas.toBlob(function (blob) {\n var link = document.createElement('a');\n link.href = URL.createObjectURL(blob);\n link.download = 'screenshot_'.concat(timestamp, '.png');\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n URL.revokeObjectURL(link.href);\n });\n this.player.notice('Screenshot: '.concat(timestamp));\n }\n },\n {\n key: 'changeSpeed',\n value: function changeSpeed(delta) {\n var newRate = this.player.video.playbackRate + delta;\n newRate = Math.max(0.25, Math.min(2, newRate));\n newRate = Math.round(newRate * 100) / 100;\n this.player.speed(newRate);\n }\n },\n {\n key: 'resetSpeed',\n value: function resetSpeed() {\n this.player.speed(1);\n }\n },\n {\n key: 'seekToPercent',\n value: function seekToPercent(percent) {\n if (this.player.video.duration) {\n var time = percent / 100 * this.player.video.duration;\n this.player.seek(time, true);\n this.player.notice('Seek: '.concat(percent, '%'));\n }\n }\n },\n {\n key: 'doHotKey',\n value: function doHotKey(e) {\n if (this.player.focus || this.player.options.globalHotkey) {\n var tag = document.activeElement.tagName.toUpperCase();\n var editable = document.activeElement.getAttribute('contenteditable');\n if (tag === 'INPUT' || tag === 'TEXTAREA' || editable === '' || editable === 'true') {\n return;\n }\n var event = e || window.event;\n var key = event.key;\n var keyCode = event.keyCode;\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && key === '`') {\n event.preventDefault();\n this.changeSpeed(0.05);\n return;\n }\n if (!event.ctrlKey && !event.altKey && event.shiftKey && key === '~') {\n event.preventDefault();\n this.changeSpeed(-0.05);\n return;\n }\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && event.keyCode === 8) {\n event.preventDefault();\n this.resetSpeed();\n return;\n }\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && key.toLowerCase() === 'p') {\n event.preventDefault();\n this.takeScreenshot();\n return;\n }\n switch (keyCode) {\n case 32:\n event.preventDefault();\n this.player.toggle();\n break;\n case 37:\n event.preventDefault();\n if (this.player.options.live)\n break;\n this.player.seek(this.player.video.currentTime - 5);\n this.player.controller.setAutoHide();\n break;\n case 39:\n event.preventDefault();\n if (this.player.options.live)\n break;\n this.player.seek(this.player.video.currentTime + 5);\n this.player.controller.setAutoHide();\n break;\n case 38:\n event.preventDefault();\n this.player.volume(this.player.volume() + 0.1);\n break;\n case 40:\n event.preventDefault();\n this.player.volume(this.player.volume() - 0.1);\n break;\n case 13:\n if (event.location === 3) {\n event.preventDefault();\n this.resetSpeed();\n }\n break;\n default:\n this.handleLetterKeys(event, key);\n break;\n }\n }\n }\n },\n {\n key: 'handleLetterKeys',\n value: function handleLetterKeys(event, key) {\n var lowerKey = key.toLowerCase();\n switch (lowerKey) {\n case 'a':\n event.preventDefault();\n if (this.player.options.live)\n break;\n if (this.player.video.currentTime >= 5) {\n this.player.seek(this.player.video.currentTime - 5);\n } else {\n this.player.seek(0);\n }\n this.player.controller.setAutoHide();\n break;\n case 'd':\n event.preventDefault();\n if (this.player.options.live)\n break;\n if (this.player.video.duration && this.player.video.currentTime + 5 < this.player.video.duration) {\n this.player.seek(this.player.video.currentTime + 5);\n } else if (this.player.video.duration) {\n this.player.seek(this.player.video.duration - 1);\n }\n this.player.controller.setAutoHide();\n break;\n case 'f':\n event.preventDefault();\n if (this.player.fullScreen.isFullScreen('browser')) {\n this.player.fullScreen.cancel('browser');\n } else {\n this.player.fullScreen.request('browser');\n }\n break;\n case 'w':\n event.preventDefault();\n if (this.player.fullScreen.isFullScreen('web')) {\n this.player.fullScreen.cancel('web');\n } else {\n this.player.fullScreen.request('web');\n }\n break;\n case 'm':\n event.preventDefault();\n if (this.player.video.muted) {\n this.player.video.muted = false;\n this.player.notice('Unmuted');\n } else {\n this.player.video.muted = true;\n this.player.notice('Muted');\n }\n break;\n case '+':\n case '=':\n event.preventDefault();\n this.changeSpeed(0.05);\n break;\n case '-':\n event.preventDefault();\n this.changeSpeed(-0.05);\n break;\n case '0':\n case '1':\n case '2':\n case '3':\n case '4':\n case '5':\n case '6':\n case '7':\n case '8':\n case '9':\n event.preventDefault();\n if (!this.player.options.live) {\n this.seekToPercent(parseInt(lowerKey) * 10);\n }\n break;\n }\n }\n },\n {\n key: 'cancelFullScreen',\n value: function cancelFullScreen(e) {\n var event = e || window.event;\n if (event.keyCode === 27) {\n if (this.player.fullScreen.isFullScreen('web')) {\n this.player.fullScreen.cancel('web');\n }\n }\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n if (this.player.options.hotkey) {\n document.removeEventListener('keydown', this.doHotKeyHandler);\n }\n document.removeEventListener('keydown', this.cancelFullScreenHandler);\n }\n }\n ]);\n}();\nexport default HotKey;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar ContextMenu = function () {\n function ContextMenu(player) {\n var _this = this;\n _classCallCheck(this, ContextMenu);\n this.player = player;\n this.shown = false;\n Array.prototype.slice.call(this.player.template.menuItem).forEach(function (item, index) {\n if (_this.player.options.contextmenu[index].click) {\n item.addEventListener('click', function () {\n _this.player.options.contextmenu[index].click(_this.player);\n _this.hide();\n });\n }\n });\n this.contextmenuHandler = function (e) {\n if (_this.shown) {\n _this.hide();\n return;\n }\n var event = e || window.event;\n event.preventDefault();\n var clientRect = _this.player.container.getBoundingClientRect();\n _this.show(event.clientX - clientRect.left, event.clientY - clientRect.top);\n _this.player.template.mask.addEventListener('click', function () {\n _this.hide();\n });\n };\n this.player.container.addEventListener('contextmenu', this.contextmenuHandler);\n }\n return _createClass(ContextMenu, [\n {\n key: 'show',\n value: function show(x, y) {\n this.player.template.menu.classList.add('dplayer-menu-show');\n var clientRect = this.player.container.getBoundingClientRect();\n if (x + this.player.template.menu.offsetWidth >= clientRect.width) {\n this.player.template.menu.style.right = clientRect.width - x + 'px';\n this.player.template.menu.style.left = 'initial';\n } else {\n this.player.template.menu.style.left = x + 'px';\n this.player.template.menu.style.right = 'initial';\n }\n if (y + this.player.template.menu.offsetHeight >= clientRect.height) {\n this.player.template.menu.style.bottom = clientRect.height - y + 'px';\n this.player.template.menu.style.top = 'initial';\n } else {\n this.player.template.menu.style.top = y + 'px';\n this.player.template.menu.style.bottom = 'initial';\n }\n this.player.template.mask.classList.add('dplayer-mask-show');\n this.shown = true;\n this.player.events.trigger('contextmenu_show');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.template.mask.classList.remove('dplayer-mask-show');\n this.player.template.menu.classList.remove('dplayer-menu-show');\n this.shown = false;\n this.player.events.trigger('contextmenu_hide');\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n this.player.container.removeEventListener('contextmenu', this.contextmenuHandler);\n }\n }\n ]);\n}();\nexport default ContextMenu;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nvar InfoPanel = function () {\n function InfoPanel(player) {\n var _this = this;\n _classCallCheck(this, InfoPanel);\n this.container = player.template.infoPanel;\n this.template = player.template;\n this.video = player.video;\n this.player = player;\n this.template.infoPanelClose.addEventListener('click', function () {\n _this.hide();\n });\n }\n return _createClass(InfoPanel, [\n {\n key: 'show',\n value: function show() {\n this.beginTime = Date.now();\n this.update();\n this.player.timer.enable('info');\n this.player.timer.enable('fps');\n this.container.classList.remove('dplayer-info-panel-hide');\n }\n },\n {\n key: 'hide',\n value: function hide() {\n this.player.timer.disable('info');\n this.player.timer.disable('fps');\n this.container.classList.add('dplayer-info-panel-hide');\n }\n },\n {\n key: 'triggle',\n value: function triggle() {\n if (this.container.classList.contains('dplayer-info-panel-hide')) {\n this.show();\n } else {\n this.hide();\n }\n }\n },\n {\n key: 'update',\n value: function update() {\n this.template.infoVersion.innerHTML = 'v'.concat(DPLAYER_VERSION, ' ').concat(GIT_HASH);\n this.template.infoType.innerHTML = this.player.type;\n this.template.infoUrl.innerHTML = this.player.options.video.url;\n this.template.infoResolution.innerHTML = ''.concat(this.player.video.videoWidth, ' x ').concat(this.player.video.videoHeight);\n this.template.infoDuration.innerHTML = this.player.video.duration;\n if (this.player.options.danmaku) {\n this.template.infoDanmakuId.innerHTML = this.player.options.danmaku.id;\n this.template.infoDanmakuApi.innerHTML = this.player.options.danmaku.api;\n this.template.infoDanmakuAmount.innerHTML = this.player.danmaku.dan.length;\n }\n }\n },\n {\n key: 'fps',\n value: function fps(value) {\n this.template.infoFPS.innerHTML = ''.concat(value.toFixed(1));\n }\n }\n ]);\n}();\nexport default InfoPanel;","function _typeof(o) {\n '@babel/helpers - typeof';\n return _typeof = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && 'function' == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? 'symbol' : typeof o;\n }, _typeof(o);\n}\nfunction _readOnlyError(r) {\n throw new TypeError('\"' + r + '\" is read-only');\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _classCallCheck(a, n) {\n if (!(a instanceof n))\n throw new TypeError('Cannot call a class as a function');\n}\nfunction _defineProperties(e, r) {\n for (var t = 0; t < r.length; t++) {\n var o = r[t];\n o.enumerable = o.enumerable || !1, o.configurable = !0, 'value' in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o);\n }\n}\nfunction _createClass(e, r, t) {\n return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, 'prototype', { writable: !1 }), e;\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, 'string');\n return 'symbol' == _typeof(i) ? i : i + '';\n}\nfunction _toPrimitive(t, r) {\n if ('object' != _typeof(t) || !t)\n return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || 'default');\n if ('object' != _typeof(i))\n return i;\n throw new TypeError('@@toPrimitive must return a primitive value.');\n }\n return ('string' === r ? String : Number)(t);\n}\nimport Promise from 'promise-polyfill';\nimport utils from './utils';\nimport handleOption from './options';\nimport { i18n } from './i18n';\nimport Template from './template';\nimport Icons from './icons';\nimport Danmaku from './danmaku';\nimport Events from './events';\nimport FullScreen from './fullscreen';\nimport User from './user';\nimport Subtitle from './subtitle';\nimport Subtitles from './subtitles';\nimport Bar from './bar';\nimport Timer from './timer';\nimport Bezel from './bezel';\nimport Controller from './controller';\nimport Setting from './setting';\nimport Comment from './comment';\nimport HotKey from './hotkey';\nimport ContextMenu from './contextmenu';\nimport InfoPanel from './info-panel';\nimport tplVideo from '../template/video.art';\nvar index = 0;\nvar instances = [];\nvar DPlayer = function () {\n function DPlayer(options) {\n var _this = this;\n _classCallCheck(this, DPlayer);\n this.options = handleOption(_objectSpread({ preload: options.video.type === 'webtorrent' ? 'none' : 'metadata' }, options));\n if (this.options.video.quality) {\n this.qualityIndex = this.options.video.defaultQuality;\n this.quality = this.options.video.quality[this.options.video.defaultQuality];\n }\n this.tran = new i18n(this.options.lang).tran;\n this.events = new Events();\n this.user = new User(this);\n this.container = this.options.container;\n this.noticeList = {};\n this.container.classList.add('dplayer');\n if (!this.options.danmaku) {\n this.container.classList.add('dplayer-no-danmaku');\n }\n if (this.options.live) {\n this.container.classList.add('dplayer-live');\n } else {\n this.container.classList.remove('dplayer-live');\n }\n if (utils.isMobile) {\n this.container.classList.add('dplayer-mobile');\n }\n this.arrow = this.container.offsetWidth <= 500;\n if (this.arrow) {\n this.container.classList.add('dplayer-arrow');\n }\n if (this.options.subtitle) {\n if (Array.isArray(this.options.subtitle.url)) {\n var offSubtitle = {\n subtitle: '',\n lang: 'off'\n };\n this.options.subtitle.url.push(offSubtitle);\n if (this.options.subtitle.defaultSubtitle) {\n if (typeof this.options.subtitle.defaultSubtitle === 'string') {\n this.options.subtitle.index = this.options.subtitle.url.findIndex(function (sub) {\n return sub.lang === _this.options.subtitle.defaultSubtitle ? true : sub.name === _this.options.subtitle.defaultSubtitle ? true : false;\n });\n } else if (typeof this.options.subtitle.defaultSubtitle === 'number') {\n this.options.subtitle.index = this.options.subtitle.defaultSubtitle;\n }\n }\n if (this.options.subtitle.index === -1 || !this.options.subtitle.index || this.options.subtitle.index > this.options.subtitle.url.length - 1) {\n this.options.subtitle.index = this.options.subtitle.url.findIndex(function (sub) {\n return sub.lang === _this.options.lang;\n });\n }\n if (this.options.subtitle.index === -1) {\n this.options.subtitle.index = this.options.subtitle.url.length - 1;\n }\n }\n }\n this.template = new Template({\n container: this.container,\n options: this.options,\n index: index,\n tran: this.tran\n });\n this.video = this.template.video;\n this.bar = new Bar(this.template);\n this.bezel = new Bezel(this.template.bezel);\n this.fullScreen = new FullScreen(this);\n this.controller = new Controller(this);\n if (this.options.danmaku) {\n this.danmaku = new Danmaku({\n player: this,\n container: this.template.danmaku,\n opacity: this.user.get('opacity'),\n callback: function callback() {\n setTimeout(function () {\n _this.template.danmakuLoading.style.display = 'none';\n if (_this.options.autoplay) {\n _this.play();\n }\n }, 0);\n },\n error: function error(msg) {\n _this.notice(msg);\n },\n apiBackend: this.options.apiBackend,\n borderColor: this.options.theme,\n height: this.arrow ? 24 : 30,\n time: function time() {\n return _this.video.currentTime;\n },\n unlimited: this.user.get('unlimited'),\n api: {\n id: this.options.danmaku.id,\n address: this.options.danmaku.api,\n token: this.options.danmaku.token,\n maximum: this.options.danmaku.maximum,\n addition: this.options.danmaku.addition,\n user: this.options.danmaku.user,\n speedRate: this.options.danmaku.speedRate\n },\n events: this.events,\n tran: function tran(msg) {\n return _this.tran(msg);\n }\n });\n this.comment = new Comment(this);\n }\n this.setting = new Setting(this);\n this.plugins = {};\n if (this.options.globalHotkey) {\n this.focus = true;\n this.docClickFun = null;\n this.containerClickFun = null;\n } else {\n this.docClickFun = function () {\n _this.focus = false;\n };\n this.containerClickFun = function () {\n _this.focus = true;\n };\n document.addEventListener('click', this.docClickFun, true);\n this.container.addEventListener('click', this.containerClickFun, true);\n }\n this.paused = true;\n this.timer = new Timer(this);\n this.hotkey = new HotKey(this);\n this.contextmenu = new ContextMenu(this);\n this.initVideo(this.video, this.quality && this.quality.type || this.options.video.type);\n this.infoPanel = new InfoPanel(this);\n if (!this.danmaku && this.options.autoplay) {\n this.play();\n }\n this.moveBar = false;\n index++;\n instances.push(this);\n }\n return _createClass(DPlayer, [\n {\n key: 'seek',\n value: function seek(time) {\n var nonotice = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n time = Math.max(time, 0);\n if (this.video.duration) {\n time = Math.min(time, this.video.duration);\n }\n if (!nonotice) {\n var timeText = utils.secondToTime(time);\n var durationText = this.video.duration ? utils.secondToTime(this.video.duration) : '00:00';\n this.notice(''.concat(timeText, ' / ').concat(durationText));\n }\n this.video.currentTime = time;\n if (this.danmaku) {\n this.danmaku.seek();\n }\n this.bar.set('played', time / this.video.duration, 'width');\n this.template.ptime.innerHTML = utils.secondToTime(time);\n }\n },\n {\n key: 'play',\n value: function play(fromNative) {\n var _this2 = this;\n this.paused = false;\n if (this.video.paused && !utils.isMobile) {\n this.bezel['switch'](Icons.play);\n }\n this.template.playButton.innerHTML = Icons.pause;\n this.template.mobilePlayButton.innerHTML = Icons.pause;\n if (!fromNative) {\n var playedPromise = Promise.resolve(this.video.play());\n playedPromise['catch'](function () {\n _this2.pause();\n }).then(function () {\n });\n }\n this.timer.enable('loading');\n this.container.classList.remove('dplayer-paused');\n this.container.classList.add('dplayer-playing');\n if (this.danmaku) {\n this.danmaku.play();\n }\n if (this.options.mutex) {\n for (var i = 0; i < instances.length; i++) {\n if (this !== instances[i]) {\n instances[i].pause();\n }\n }\n }\n }\n },\n {\n key: 'pause',\n value: function pause(fromNative) {\n this.paused = true;\n this.container.classList.remove('dplayer-loading');\n if (!this.video.paused && !utils.isMobile) {\n this.bezel['switch'](Icons.pause);\n }\n this.template.playButton.innerHTML = Icons.play;\n this.template.mobilePlayButton.innerHTML = Icons.play;\n if (!fromNative) {\n this.video.pause();\n }\n this.timer.disable('loading');\n this.container.classList.remove('dplayer-playing');\n this.container.classList.add('dplayer-paused');\n if (this.danmaku) {\n this.danmaku.pause();\n }\n }\n },\n {\n key: 'switchVolumeIcon',\n value: function switchVolumeIcon() {\n if (this.volume() >= 0.95) {\n this.template.volumeIcon.innerHTML = Icons.volumeUp;\n } else if (this.volume() > 0) {\n this.template.volumeIcon.innerHTML = Icons.volumeDown;\n } else {\n this.template.volumeIcon.innerHTML = Icons.volumeOff;\n }\n }\n },\n {\n key: 'volume',\n value: function volume(percentage, nostorage, nonotice) {\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, 'width');\n var formatPercentage = ''.concat((percentage * 100).toFixed(0), '%');\n this.template.volumeBarWrapWrap.dataset.balloon = formatPercentage;\n if (!nostorage) {\n this.user.set('volume', percentage);\n }\n if (!nonotice) {\n this.notice(''.concat(this.tran('volume'), ' ').concat((percentage * 100).toFixed(0), '%'), undefined, undefined, 'volume');\n }\n this.video.volume = percentage;\n if (this.video.muted) {\n this.video.muted = false;\n }\n this.switchVolumeIcon();\n }\n return this.video.volume;\n }\n },\n {\n key: 'toggle',\n value: function toggle() {\n if (this.video.paused) {\n this.play();\n } else {\n this.pause();\n }\n }\n },\n {\n key: 'on',\n value: function on(name, callback) {\n this.events.on(name, callback);\n }\n },\n {\n key: 'switchVideo',\n value: function switchVideo(video, danmakuAPI) {\n this.pause();\n this.video.poster = video.pic ? video.pic : '';\n this.video.src = video.url;\n this.initMSE(this.video, video.type || 'auto');\n if (danmakuAPI) {\n this.template.danmakuLoading.style.display = 'block';\n this.bar.set('played', 0, 'width');\n this.bar.set('loaded', 0, 'width');\n this.template.ptime.innerHTML = '00:00';\n this.template.danmaku.innerHTML = '';\n if (this.danmaku) {\n this.danmaku.reload({\n id: danmakuAPI.id,\n address: danmakuAPI.api,\n token: danmakuAPI.token,\n maximum: danmakuAPI.maximum,\n addition: danmakuAPI.addition,\n user: danmakuAPI.user\n });\n }\n }\n }\n },\n {\n key: 'initMSE',\n value: function initMSE(video, type) {\n var _this3 = this;\n this.type = type;\n if (this.options.video.customType && this.options.video.customType[type]) {\n if (Object.prototype.toString.call(this.options.video.customType[type]) === '[object Function]') {\n this.options.video.customType[type](this.video, this);\n } else {\n console.error('Illegal customType: '.concat(type));\n }\n } else {\n if (this.type === 'auto') {\n if (/m3u8(#|\\?|$)/i.exec(video.src)) {\n this.type = 'hls';\n } else if (/.flv(#|\\?|$)/i.exec(video.src)) {\n this.type = 'flv';\n } else if (/.mpd(#|\\?|$)/i.exec(video.src)) {\n this.type = 'dash';\n } else {\n this.type = 'normal';\n }\n }\n if (this.type === 'hls' && (video.canPlayType('application/x-mpegURL') || video.canPlayType('application/vnd.apple.mpegURL'))) {\n this.type = 'normal';\n }\n switch (this.type) {\n case 'hls':\n if (window.Hls) {\n if (window.Hls.isSupported()) {\n var options = this.options.pluginOptions.hls;\n var hls = new window.Hls(options);\n this.plugins.hls = hls;\n hls.loadSource(video.src);\n hls.attachMedia(video);\n this.events.on('destroy', function () {\n hls.destroy();\n delete _this3.plugins.hls;\n });\n } else {\n this.notice('Error: Hls is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find Hls.');\n }\n break;\n case 'flv':\n if (window.flvjs) {\n if (window.flvjs.isSupported()) {\n var flvPlayer = window.flvjs.createPlayer(Object.assign(this.options.pluginOptions.flv.mediaDataSource || {}, {\n type: 'flv',\n url: video.src\n }), this.options.pluginOptions.flv.config);\n this.plugins.flvjs = flvPlayer;\n flvPlayer.attachMediaElement(video);\n flvPlayer.load();\n this.events.on('destroy', function () {\n flvPlayer.unload();\n flvPlayer.detachMediaElement();\n flvPlayer.destroy();\n delete _this3.plugins.flvjs;\n });\n } else {\n this.notice('Error: flvjs is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find flvjs.');\n }\n break;\n case 'dash':\n if (window.dashjs) {\n var dashjsPlayer = window.dashjs.MediaPlayer().create();\n dashjsPlayer.initialize(video, video.src, false, 0);\n var _options = this.options.pluginOptions.dash;\n dashjsPlayer.updateSettings(_options);\n this.plugins.dash = dashjsPlayer;\n this.events.on('destroy', function () {\n window.dashjs.MediaPlayer().reset();\n delete _this3.plugins.dash;\n });\n } else {\n this.notice('Error: Can\\'t find dashjs.');\n }\n break;\n case 'webtorrent':\n if (window.WebTorrent) {\n if (window.WebTorrent.WEBRTC_SUPPORT) {\n this.container.classList.add('dplayer-loading');\n var _options2 = this.options.pluginOptions.webtorrent;\n var client = new window.WebTorrent(_options2);\n this.plugins.webtorrent = client;\n var torrentId = video.src;\n video.src = '';\n video.preload = 'metadata';\n video.addEventListener('durationchange', function () {\n return _this3.container.classList.remove('dplayer-loading');\n }, { once: true });\n client.add(torrentId, function (torrent) {\n var file = torrent.files.find(function (file) {\n return file.name.endsWith('.mp4');\n });\n file.renderTo(_this3.video, {\n autoplay: _this3.options.autoplay,\n controls: false\n });\n });\n this.events.on('destroy', function () {\n client.remove(torrentId);\n client.destroy();\n delete _this3.plugins.webtorrent;\n });\n } else {\n this.notice('Error: Webtorrent is not supported.');\n }\n } else {\n this.notice('Error: Can\\'t find Webtorrent.');\n }\n break;\n }\n }\n }\n },\n {\n key: 'initVideo',\n value: function initVideo(video, type) {\n var _this4 = this;\n this.initMSE(video, type);\n this.on('durationchange', function () {\n if (video.duration !== 1 && video.duration !== Infinity) {\n _this4.template.dtime.innerHTML = utils.secondToTime(video.duration);\n }\n });\n this.on('progress', function () {\n var percentage = video.buffered.length ? video.buffered.end(video.buffered.length - 1) / video.duration : 0;\n _this4.bar.set('loaded', percentage, 'width');\n });\n this.on('error', function () {\n if (!_this4.video.error) {\n return;\n }\n _this4.tran && _this4.notice && _this4.type !== 'webtorrent' && _this4.notice(_this4.tran('video-failed'));\n });\n this.on('ended', function () {\n _this4.bar.set('played', 1, 'width');\n if (!_this4.setting.loop) {\n _this4.pause();\n } else {\n _this4.seek(0);\n _this4.play();\n }\n if (_this4.danmaku) {\n _this4.danmaku.danIndex = 0;\n }\n });\n this.on('play', function () {\n if (_this4.paused) {\n _this4.play(true);\n }\n });\n this.on('pause', function () {\n if (!_this4.paused) {\n _this4.pause(true);\n }\n });\n this.on('ratechange', function () {\n if (_this4._savedPlaybackRate && _this4.video.playbackRate !== _this4._savedPlaybackRate) {\n var targetRate = _this4._savedPlaybackRate;\n setTimeout(function () {\n if (_this4._savedPlaybackRate === targetRate && _this4.video.playbackRate !== targetRate) {\n _this4.video.playbackRate = targetRate;\n }\n }, 0);\n }\n });\n this.on('timeupdate', function () {\n if (!_this4.moveBar) {\n _this4.bar.set('played', _this4.video.currentTime / _this4.video.duration, 'width');\n }\n var currentTime = utils.secondToTime(_this4.video.currentTime);\n if (_this4.template.ptime.innerHTML !== currentTime) {\n _this4.template.ptime.innerHTML = currentTime;\n }\n });\n var _loop = function _loop(i) {\n video.addEventListener(_this4.events.videoEvents[i], function (e) {\n _this4.events.trigger(_this4.events.videoEvents[i], e);\n });\n };\n for (var i = 0; i < this.events.videoEvents.length; i++) {\n _loop(i);\n }\n this.volume(this.user.get('volume'), true, true);\n if (this.options.subtitle) {\n this.subtitle = new Subtitle(this.template.subtitle, this.video, this.options.subtitle, this.events);\n if (Array.isArray(this.options.subtitle.url)) {\n this.subtitles = new Subtitles(this);\n }\n if (!this.user.get('subtitle')) {\n this.subtitle.hide();\n }\n }\n }\n },\n {\n key: 'switchQuality',\n value: function switchQuality(index) {\n var _this5 = this;\n index = typeof index === 'string' ? parseInt(index) : index;\n if (this.qualityIndex === index || this.switchingQuality) {\n return;\n } else {\n this.prevIndex = this.qualityIndex;\n this.qualityIndex = index;\n }\n this.switchingQuality = true;\n this.quality = this.options.video.quality[index];\n this.template.qualityButton.innerHTML = this.quality.name;\n var paused = this.video.paused;\n this.video.pause();\n var videoHTML = tplVideo({\n current: false,\n pic: null,\n screenshot: this.options.screenshot,\n preload: 'auto',\n url: this.quality.url,\n subtitle: this.options.subtitle\n });\n var videoEle = new DOMParser().parseFromString(videoHTML, 'text/html').body.firstChild;\n this.template.videoWrap.insertBefore(videoEle, this.template.videoWrap.getElementsByTagName('div')[0]);\n this.prevVideo = this.video;\n this.video = videoEle;\n this.initVideo(this.video, this.quality.type || this.options.video.type);\n this.seek(this.prevVideo.currentTime);\n this.notice(''.concat(this.tran('switching-quality').replace('%q', this.quality.name)), -1, undefined, 'switch-quality');\n this.events.trigger('quality_start', this.quality);\n this.on('canplay', function () {\n if (_this5.prevVideo) {\n if (_this5.video.currentTime !== _this5.prevVideo.currentTime) {\n _this5.seek(_this5.prevVideo.currentTime);\n return;\n }\n _this5.template.videoWrap.removeChild(_this5.prevVideo);\n _this5.video.classList.add('dplayer-video-current');\n if (!paused) {\n _this5.video.play();\n }\n _this5.prevVideo = null;\n _this5.notice(''.concat(_this5.tran('switched-quality').replace('%q', _this5.quality.name)), undefined, undefined, 'switch-quality');\n _this5.switchingQuality = false;\n _this5.events.trigger('quality_end');\n }\n });\n this.on('error', function () {\n if (!_this5.video.error) {\n return;\n }\n if (_this5.prevVideo) {\n _this5.template.videoWrap.removeChild(_this5.video);\n _this5.video = _this5.prevVideo;\n if (!paused) {\n _this5.video.play();\n }\n _this5.qualityIndex = _this5.prevIndex;\n _this5.quality = _this5.options.video.quality[_this5.qualityIndex];\n _this5.noticeTime = setTimeout(function () {\n _this5.template.notice.style.opacity = 0;\n _this5.events.trigger('notice_hide');\n }, 3000);\n _this5.prevVideo = null;\n _this5.switchingQuality = false;\n }\n });\n }\n },\n {\n key: 'notice',\n value: function notice(text) {\n var time = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000;\n var opacity = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.8;\n var id = arguments.length > 3 ? arguments[3] : undefined;\n var noticeListEl = this.template.noticeList;\n if (noticeListEl) {\n while (noticeListEl.firstChild) {\n noticeListEl.removeChild(noticeListEl.firstChild);\n }\n for (var key in this.noticeList) {\n if (this.noticeList[key]) {\n clearTimeout(this.noticeList[key]);\n this.noticeList[key] = null;\n }\n }\n }\n var notice = Template.NewNotice(text, opacity, id);\n this.template.noticeList.appendChild(notice);\n this.events.trigger('notice_show', notice);\n if (time > 0) {\n this.noticeList[id] = setTimeout(function (e, dp) {\n return function () {\n e.addEventListener('animationend', function () {\n if (e.parentNode) {\n dp.template.noticeList.removeChild(e);\n }\n });\n e.classList.add('remove-notice');\n dp.events.trigger('notice_hide');\n dp.noticeList[id] = null;\n };\n }(notice, this), time);\n }\n }\n },\n {\n key: 'resize',\n value: function resize() {\n if (this.danmaku) {\n this.danmaku.resize();\n }\n if (this.controller.thumbnails) {\n this.controller.thumbnails.resize(160, this.video.videoHeight / this.video.videoWidth * 160, this.template.barWrap.offsetWidth);\n }\n this.events.trigger('resize');\n }\n },\n {\n key: 'speed',\n value: function speed(rate) {\n this._savedPlaybackRate = rate;\n this.video.playbackRate = rate;\n if (this.template.speedIndicator) {\n this.template.speedIndicator.innerText = ''.concat(rate, 'x');\n }\n if (this.setting) {\n this.setting.updateSpeedPanelActive(rate);\n }\n this.notice('Speed: '.concat(rate, 'x'));\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n instances.splice(instances.indexOf(this), 1);\n this.pause();\n document.removeEventListener('click', this.docClickFun, true);\n this.container.removeEventListener('click', this.containerClickFun, true);\n this.fullScreen.destroy();\n this.hotkey.destroy();\n this.contextmenu.destroy();\n this.controller.destroy();\n this.timer.destroy();\n this.video.src = '';\n this.container.innerHTML = '';\n this.events.trigger('destroy');\n }\n }\n ], [{\n key: 'version',\n get: function get() {\n return DPLAYER_VERSION;\n }\n }]);\n}();\nexport default DPlayer;","import '../css/index.less';\nimport DPlayer from './player';\nconsole.log('\\n'.concat(' %c DPlayer v', DPLAYER_VERSION, ' ').concat(GIT_HASH, ' %c https://github.com/Fluxonide/dplayer-enhanced ', '\\n', '\\n'), 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexport default DPlayer;"],"names":["root","factory","exports","module","define","amd","self","styleElement","nonce","setAttribute","stylesInDOM","getIndexByIdentifier","identifier","result","i","length","modulesToDom","list","options","idCountMap","identifiers","item","id","base","count","concat","indexByIdentifier","obj","css","media","sourceMap","supports","layer","references","updater","addElementStyle","byIndex","splice","push","api","domAPI","update","newObj","remove","lastIdentifiers","newList","index","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","removeChild","appendChild","document","createTextNode","globalThis","window","g","runtime","Object","create","ESCAPE_REG","toString","value","call","JSON","stringify","$escape","content","html","regexResult","exec","lastIndex","_char","charCodeAt","substring","xmlEscape","$each","data","callback","Array","isArray","len","element","createElement","setAttributes","attributes","insert","___CSS_LOADER_URL_IMPORT_0___","URL","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","memo","style","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","e","getTarget","Error","cssMapping","btoa","base64","unescape","encodeURIComponent","sourceMapping","join","cssWithMappingToString","this","map","needLayer","modules","dedupe","undefined","alreadyImportedModules","k","_k","insertStyleElement","styleTagTransform","apply","parentNode","removeStyleElement","url","String","__esModule","test","slice","hash","needQuotes","replace","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","m","n","getter","d","a","definition","key","o","defineProperty","enumerable","get","Function","prop","prototype","hasOwnProperty","b","baseURI","location","href","nc","locals","_typeof","Symbol","iterator","constructor","AggregateError","errors","message","name","setTimeoutFunc","setTimeout","x","Boolean","noop","fn","TypeError","_state","_handled","_value","_deferreds","doResolve","handle","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","reject","promise","resolve","newValue","then","finale","thisArg","arguments","_unhandledRejectionFn","Handler","done","reason","ex","prom","all","arr","args","remaining","res","val","any","P","rejectionReasons","error","allSettled","status","race","setImmediate","err","console","warn","isMobile","navigator","userAgent","secondToTime","second","Infinity","hour","Math","floor","min","sec","num","getElementViewLeft","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","body","scrollLeft","documentElement","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getBoundingClientRectViewLeft","scrollTop","scrollY","pageYOffset","getBoundingClientRect","offset","temp","top","rect","left","getScrollPosition","pageXOffset","setScrollPosition","_ref","_ref$left","_ref$top","isFirefox","scrollTo","isChrome","isSafari","storage","set","localStorage","setItem","getItem","nameMap","dragStart","dragMove","dragEnd","color2Number","color","substr","parseInt","number2Color","number","number2Type","cache","getPrototypeOf","kindOf","thing","str","toLowerCase","kindOfTest","type","typeOfTest","isUndefined","isArrayBuffer","isString","isFunction","isNumber","isObject","isPlainObject","toStringTag","isDate","isFile","isBlob","isFileList","isURLSearchParams","forEach","l","_ref$allOwnKeys","allOwnKeys","keys","getOwnPropertyNames","findKey","_key","TypedArray","_global","isContextDefined","context","isTypedArray","Uint8Array","isHTMLForm","isRegExp","reduceDescriptors","reducer","descriptors","getOwnPropertyDescriptors","reducedDescriptors","descriptor","defineProperties","ALPHA","DIGIT","ALPHABET","ALPHA_DIGIT","toUpperCase","isAsyncFn","isBuffer","isFormData","kind","FormData","append","isArrayBufferView","ArrayBuffer","isView","buffer","isBoolean","isStream","pipe","merge","caseless","assignValue","targetKey","extend","trim","stripBOM","inherits","superConstructor","props","assign","toFlatObject","sourceObj","destObj","filter","propFilter","merged","endsWith","searchString","position","indexOf","toArray","forEachEntry","next","pair","matchAll","regExp","matches","hasOwnProp","freezeMethods","writable","toObjectSet","arrayOrString","delimiter","split","toCamelCase","p1","p2","toFiniteNumber","defaultValue","Number","isFinite","global","generateString","size","alphabet","random","isSpecCompliantForm","toJSONObject","stack","_visit","source","reducedValue","isThenable","AxiosError","code","config","request","response","captureStackTrace","toJSON","description","fileName","lineNumber","columnNumber","from","customProps","axiosError","cause","isVisitable","removeBrackets","renderKey","path","dots","token","predicates","formData","metaTokens","indexes","option","visitor","defaultVisitor","useBlob","Blob","convertValue","toISOString","Buffer","some","isFlatArray","el","exposedHelpers","build","pop","encode","charMap","match","AxiosURLSearchParams","params","_pairs","encoder","_encode","buildURL","serializedParams","serializeFn","serialize","hashmarkIndex","_defineProperties","r","t","configurable","_toPropertyKey","toPrimitive","_toPrimitive","InterceptorManager","_classCallCheck","handlers","fulfilled","rejected","synchronous","runWhen","h","silentJSONParsing","forcedJSONParsing","clarifyTimeoutError","product","isBrowser","classes","URLSearchParams","isStandardBrowserEnv","isStandardBrowserWebWorkerEnv","WorkerGlobalScope","importScripts","protocols","buildPath","isNumericKey","isLast","arrayToObject","entries","parsePropPath","DEFAULT_CONTENT_TYPE","defaults","transitional","adapter","transformRequest","headers","contentType","getContentType","hasJSONContentType","isObjectPayload","setContentType","helpers","isNode","toURLEncodedForm","formSerializer","_FormData","env","rawValue","parse","stringifySafely","transformResponse","JSONRequested","responseType","strictJSONParsing","ERR_BAD_RESPONSE","timeout","xsrfCookieName","xsrfHeaderName","maxContentLength","maxBodyLength","validateStatus","common","method","ignoreDuplicateOf","_arrayLikeToArray","$internals","normalizeHeader","header","normalizeValue","matchHeaderValue","isHeaderNameFilter","AxiosHeaders","valueOrRewrite","rewrite","setHeader","_header","_rewrite","lHeader","rawHeaders","parsed","setHeaders","line","parser","tokens","tokensRE","parseTokens","matcher","deleted","deleteHeader","format","normalized","w","formatHeader","_this$constructor","_len","targets","asStrings","_ref2","_arrayWithHoles","u","f","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_slicedToArray","first","computed","_len2","_key2","accessors","defineAccessor","accessorName","methodName","arg1","arg2","arg3","buildAccessors","accessor","transformData","fns","normalize","isCancel","__CANCEL__","CanceledError","ERR_CANCELED","write","expires","domain","secure","cookie","Date","toGMTString","read","RegExp","decodeURIComponent","now","buildFullPath","baseURL","requestedURL","relativeURL","combineURLs","originURL","msie","urlParsingNode","resolveURL","protocol","host","search","hostname","port","pathname","charAt","requestURL","progressEventReducer","listener","isDownloadStream","bytesNotified","_speedometer","samplesCount","firstSampleTS","bytes","timestamps","tail","chunkLength","startedAt","bytesCount","passed","round","loaded","total","lengthComputable","progressBytes","rate","progress","estimated","event","XMLHttpRequest","Promise","onCanceled","requestData","requestHeaders","cancelToken","unsubscribe","signal","removeEventListener","auth","username","password","fullPath","onloadend","responseHeaders","getAllResponseHeaders","ERR_BAD_REQUEST","settle","responseText","statusText","open","paramsSerializer","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","ETIMEDOUT","xsrfValue","withCredentials","isURLSameOrigin","cookies","setRequestHeader","onDownloadProgress","addEventListener","onUploadProgress","upload","cancel","abort","subscribe","aborted","send","knownAdapters","http","xhr","throwIfCancellationRequested","throwIfRequested","dispatchRequest","adapters","nameOrAdapter","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","timeoutMessage","decompress","beforeRedirect","transport","httpAgent","httpsAgent","socketPath","responseEncoding","configValue","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","ERR_DEPRECATED","assertOptions","schema","allowUnknown","ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","Axios","instanceConfig","interceptors","configOrUrl","contextHeaders","_config","requestInterceptorChain","synchronousRequestInterceptors","interceptor","unshift","responseInterceptorChain","chain","bind","newConfig","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","_listeners","onfulfilled","_resolve","c","HttpStatusCode","Continue","SwitchingProtocols","Processing","EarlyHints","Ok","Created","Accepted","NonAuthoritativeInformation","NoContent","ResetContent","PartialContent","MultiStatus","AlreadyReported","ImUsed","MultipleChoices","MovedPermanently","Found","SeeOther","NotModified","UseProxy","Unused","TemporaryRedirect","PermanentRedirect","BadRequest","Unauthorized","PaymentRequired","Forbidden","NotFound","MethodNotAllowed","NotAcceptable","ProxyAuthenticationRequired","RequestTimeout","Conflict","Gone","LengthRequired","PreconditionFailed","PayloadTooLarge","UriTooLong","UnsupportedMediaType","RangeNotSatisfiable","ExpectationFailed","ImATeapot","MisdirectedRequest","UnprocessableEntity","Locked","FailedDependency","TooEarly","UpgradeRequired","PreconditionRequired","TooManyRequests","RequestHeaderFieldsTooLarge","UnavailableForLegalReasons","InternalServerError","NotImplemented","BadGateway","ServiceUnavailable","GatewayTimeout","HttpVersionNotSupported","VariantAlsoNegotiates","InsufficientStorage","LoopDetected","NotExtended","NetworkAuthenticationRequired","axios","createInstance","defaultConfig","instance","VERSION","toFormData","Cancel","promises","spread","isAxiosError","payload","formToJSON","post","success","msg","time","author","text","i18n","lang","_this","fallbackLang","includes","tran","tranTxt","standard","bottom","rolling","loop","speed","normal","ff","rew","setting","fullscreen","screenshot","airplay","chromecast","subtitle","off","volume","live","en","Volume","de","quality","play","pause","volumeUp","volumeDown","volumeOff","full","fullWeb","right","comment","commentOff","pallette","camera","loading","Template","container","init","innerHTML","icons","mobile","video","pic","preload","volumeBar","volumeBarWrap","volumeBarWrapWrap","volumeButton","volumeButtonIcon","volumeIcon","playedBar","loadedBar","playedBarWrap","playedBarTime","danmaku","danmakuLoading","bezel","playButton","mobilePlayButton","videoWrap","controllerMask","ptime","settingButton","settingBox","mask","loopToggle","showDanmaku","showDanmakuToggle","unlimitDanmaku","unlimitDanmakuToggle","speedItem","querySelectorAll","danmakuOpacityBar","danmakuOpacityBarWrap","danmakuOpacityBarWrapWrap","danmakuOpacityBox","dtime","speedIndicator","speedPanel","speedSliderTrack","speedSliderFilled","speedSliderThumb","speedSliderTicks","speedSliderLabels","speedSliderBtnMinus","speedSliderBtnPlus","controller","commentInput","commentButton","commentSettingBox","commentSettingButton","commentSettingFill","commentSendButton","commentSendFill","commentColorSettingBox","browserFullButton","webFullButton","menu","menuItem","qualityList","camareButton","airplayButton","chromecastButton","subtitleButton","subtitleButtonInner","subtitlesButton","subtitlesBox","subtitlesItem","subtrack","qualityButton","barPreview","barWrap","noticeList","infoPanel","infoPanelClose","infoVersion","infoFPS","infoType","infoUrl","infoResolution","infoDuration","infoDanmakuId","infoDanmakuApi","infoDanmakuAmount","opacity","notice","classList","add","innerText","Danmaku","player","danTunnel","danIndex","dan","showing","_opacity","events","unlimited","_measure","load","apiurl","maximum","address","endpoints","addition","trigger","_readAllEndpoints","results","sort","requestAnimationFrame","frame","newAPI","clear","_this2","readCount","_loop","apiBackend","_this3","danmakuData","user","htmlEncode","border","borderColor","draw","_this4","paused","parseFloat","percentage","items","getElementsByClassName","_this5","itemHeight","height","danWidth","offsetWidth","danHeight","offsetHeight","itemY","danItemRight","ele","eleWidth","width","eleRight","danSpeed","getTunnel","_ret","tmp","_loop2","v","j","danRight","docFragment","createDocumentFragment","_loop3","tunnel","itemWidth","transform","animationDuration","_danAnimation","measureStyle","getComputedStyle","getContext","font","getPropertyValue","measureText","seek","_boolean","speedRate","isFullScreen","fullScreen","Events","videoEvents","playerEvents","info","FullScreen","lastScrollPosition","on","resize","fullscreenchange","docfullscreenchange","fullEle","msFullscreenElement","contains","anotherType","anotherTypeOn","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","msRequestFullscreen","cancelFullScreen","mozCancelFullScreen","webkitCancelFullScreen","webkitCancelFullscreen","msCancelFullScreen","msExitFullscreen","User","storageName","Subtitle","fontSize","textTracks","track","oncuechange","cue","activeCues","template","getCueAsHTML","trackHtml","show","hide","Subtitles","adaptiveHeight","lastItemIndex","src","dataset","subContainerShow","subContainerHide","disableAutoHide","curBoxHeight","stdMaxHeight","Bar","elements","played","direction","max","Timer","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","setInterval","enableloadingChecker","currentTime","enablefpsChecker","initfpsChecker","fpsStart","fpsIndex","fpsCurrent","fps","infoChecker","enableinfoChecker","clearInterval","Bezel","icon","Thumbnails","barWidth","backgroundImage","barWrapWidth","display","backgroundPosition","ceil","cast","runOnce","isCasting","Controller","autoHideTimer","setAutoHideHandler","setAutoHide","initPlayButton","initThumbnails","initPlayedBar","initFullButton","initQualityButton","initScreenshotButton","initSubtitleButton","initHighlights","initAirplayButton","initChromecastButton","initVolumeButton","toggle","preventClickToggle","duration","highlight","highlights","p","insertBefore","thumbnails","videoHeight","videoWidth","thumbMove","clientX","changedTouches","clientWidth","bar","_thumbUp","moveBar","px","tx","move","_this6","volumeMove","_volumeUp","muted","switchVolumeIcon","_this7","switchQuality","_this8","dataURL","canvas","drawImage","toBlob","blob","createObjectURL","link","download","click","revokeObjectURL","WebKitPlaybackTargetAvailabilityEvent","availability","disable","webkitShowPlaybackTargetPicker","script","__onGCastApiAvailable","isAvailable","sessionRequest","chrome","SessionRequest","DEFAULT_MEDIA_RECEIVER_APP_ID","apiConfig","ApiConfig","ReceiverAvailability","AVAILABLE","log","initialize","_this9","initChromecast","onMediaDiscovered","how","currentMedia","onMediaError","stop","session","requestSession","s","mediaInfo","MediaInfo","LoadRequest","loadMedia","_this0","balloon","_this1","clearTimeout","hideSpeedPanel","isShow","Setting","checked","unlimit","updateSpeedPanelActive","stopPropagation","toggleSpeedPanel","speedValues","playbackSpeed","currentSpeed","_positionSpeedTicks","_updateSliderToSpeed","_getSpeedFromPercentage","lastDragSpeed","thumbDragMove","snappedPercentage","_getPercentageFromSpeed","_highlightActivePreset","playbackRate","_savedPlaybackRate","_thumbDragEnd","preventDefault","stepSpeed","delta","clamped","danmakuMove","_danmakuUp","showSpeedPanel","percent","_i2","_percent","floatIndex","lowerIndex","upperIndex","fraction","range","_setSliderAt","rounded","tickSpeed","_i3","speedNum","Comment","toggleSetting","fill","hideSetting","keyCode","focus","showSetting","blur","HotKey","doHotKeyHandler","doHotKey","cancelFullScreenHandler","hotkey","padStart","timestamp","newRate","globalHotkey","tag","activeElement","tagName","editable","getAttribute","ctrlKey","altKey","shiftKey","changeSpeed","resetSpeed","takeScreenshot","handleLetterKeys","lowerKey","seekToPercent","ContextMenu","shown","contextmenu","contextmenuHandler","clientRect","clientY","y","InfoPanel","beginTime","timer","enable","toFixed","ownKeys","getOwnPropertySymbols","getOwnPropertyDescriptor","_defineProperty","instances","DPlayer","defaultOption","autoplay","theme","language","browserLanguage","mutex","pluginOptions","hls","flv","dash","webtorrent","defaultKey","defaultQuality","triggle","_objectSpread","qualityIndex","arrow","defaultSubtitle","findIndex","sub","plugins","docClickFun","containerClickFun","initVideo","nonotice","timeText","durationText","fromNative","nostorage","isNaN","formatPercentage","danmakuAPI","poster","initMSE","reload","customType","canPlayType","Hls","isSupported","loadSource","attachMedia","destroy","flvjs","flvPlayer","createPlayer","mediaDataSource","attachMediaElement","unload","detachMediaElement","dashjs","dashjsPlayer","MediaPlayer","_options","updateSettings","reset","WebTorrent","WEBRTC_SUPPORT","_options2","client","torrentId","once","torrent","files","find","file","renderTo","controls","buffered","end","targetRate","subtitles","switchingQuality","prevIndex","videoHTML","videoEle","DOMParser","parseFromString","getElementsByTagName","prevVideo","noticeTime","noticeListEl","NewNotice","dp"],"ignoreList":[],"sourceRoot":""}