From cb95daa97d0886a6dc378f654dd731e4de0f2b4d Mon Sep 17 00:00:00 2001 From: DIYgod Date: Tue, 24 Sep 2019 01:34:03 +0800 Subject: [PATCH] chore: update workflow --- .eslintignore | 2 + .eslintrc | 29 +- .prettierignore | 2 + .prettierrc | 7 + dist/DPlayer.min.css | 4 - dist/DPlayer.min.css.map | 1 - dist/DPlayer.min.js | 2 +- dist/DPlayer.min.js.map | 2 +- package.json | 149 ++-- src/js/options.js | 11 +- src/js/player.js | 291 ++++--- src/js/utils.js | 60 +- webpack/dev.config.js | 67 +- webpack/postcss.config.js | 6 - webpack/prod.config.js | 58 +- yarn.lock | 1544 ++++++++++++++++++++++++++----------- 16 files changed, 1412 insertions(+), 823 deletions(-) create mode 100644 .eslintignore create mode 100644 .prettierignore create mode 100644 .prettierrc delete mode 100644 dist/DPlayer.min.css delete mode 100644 dist/DPlayer.min.css.map delete mode 100644 webpack/postcss.config.js diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 000000000..ae20ff6d2 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +dist +demo \ No newline at end of file diff --git a/.eslintrc b/.eslintrc index d71103ed3..45c0b91a3 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,15 +1,17 @@ { - "extends": "eslint:recommended", + "extends": ["eslint:recommended", "plugin:prettier/recommended"], + "plugins": ["prettier"], "parserOptions": { - "ecmaVersion": 10, + "ecmaVersion": 2018, "sourceType": "module" }, "env": { - "browser": true + "es6": true, + "browser": true, + "node": true, }, "rules": { "no-console": 0, - "no-extra-parens": 1, "block-scoped-var": 1, "curly": 1, "eqeqeq": 1, @@ -20,7 +22,6 @@ "comma-spacing": 1, "comma-style": 1, "func-call-spacing": 1, - "indent": 1, "keyword-spacing": 1, "linebreak-style": 1, "lines-around-comment": 1, @@ -31,14 +32,12 @@ "prefer-const": 1, "no-unsafe-negation": 1, "array-callback-return": 1, - "dot-location": 1, "dot-notation": 1, "no-eval": 1, "no-extend-native": 1, "no-extra-label": 1, "semi": 1, "space-before-blocks": 1, - "space-before-function-paren": 1, "space-in-parens": 1, "space-unary-ops": 1, "spaced-comment": 1, @@ -50,14 +49,10 @@ "no-useless-rename": 1, "rest-spread-spacing": 1, "no-trailing-spaces": 1, - "quotes": [1, "single"] - }, - "globals": { - "require": false, - "module": false, - "Hls": false, - "flvjs": false, - "dashjs": false, - "WebTorrent": false + "no-control-regex": 0, + "prettier/prettier": 0, + "no-await-in-loop": 1, + "require-atomic-updates": 0, + "no-prototype-builtins": 0 } -} \ No newline at end of file +} diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000..ae20ff6d2 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,2 @@ +dist +demo \ No newline at end of file diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 000000000..8fa3efce4 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,7 @@ +{ + "printWidth": 233, + "tabWidth": 4, + "singleQuote": true, + "trailingComma": "es5", + "arrowParens": "always" +} diff --git a/dist/DPlayer.min.css b/dist/DPlayer.min.css deleted file mode 100644 index 649134830..000000000 --- a/dist/DPlayer.min.css +++ /dev/null @@ -1,4 +0,0 @@ -button[data-balloon]{overflow:visible}[data-balloon]{position:relative;cursor:pointer}[data-balloon]:after{font-family:sans-serif!important;font-weight:400!important;font-style:normal!important;text-shadow:none!important;font-size:12px!important;background:rgba(17,17,17,.9);border-radius:4px;color:#fff;content:attr(data-balloon);padding:.5em 1em;white-space:nowrap}[data-balloon]:after,[data-balloon]:before{filter:alpha(opacity=0);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";-moz-opacity:0;-khtml-opacity:0;opacity:0;pointer-events:none;transition:all .18s ease-out .18s;position:absolute;z-index:10}[data-balloon]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M2.658 0h32.004c-6 0-11.627 12.002-16.002 12.002C14.285 12.002 8.594 0 2.658 0z'/%3E%3C/svg%3E");background-size:100% auto;width:18px;height:6px;content:""}[data-balloon]:hover:after,[data-balloon]:hover:before,[data-balloon][data-balloon-visible]:after,[data-balloon][data-balloon-visible]:before{filter:alpha(opacity=100);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";-moz-opacity:1;-khtml-opacity:1;opacity:1;pointer-events:auto}[data-balloon]:not([data-balloon-pos]):after{bottom:100%;left:50%;margin-bottom:11px;transform:translate(-50%,10px);transform-origin:top}[data-balloon]:not([data-balloon-pos]):before{bottom:100%;left:50%;margin-bottom:5px;transform:translate(-50%,10px);transform-origin:top}[data-balloon]:not([data-balloon-pos]):hover:after,[data-balloon]:not([data-balloon-pos]):hover:before,[data-balloon]:not([data-balloon-pos])[data-balloon-visible]:after,[data-balloon]:not([data-balloon-pos])[data-balloon-visible]:before{transform:translate(-50%)}[data-balloon].font-awesome:after{font-family:FontAwesome,sans-serif!important}[data-balloon][data-balloon-break]:after{white-space:pre}[data-balloon][data-balloon-blunt]:after,[data-balloon][data-balloon-blunt]:before{transition:none}[data-balloon][data-balloon-pos=up]:after{bottom:100%;left:50%;margin-bottom:11px;transform:translate(-50%,10px);transform-origin:top}[data-balloon][data-balloon-pos=up]:before{bottom:100%;left:50%;margin-bottom:5px;transform:translate(-50%,10px);transform-origin:top}[data-balloon][data-balloon-pos=up]:hover:after,[data-balloon][data-balloon-pos=up]:hover:before,[data-balloon][data-balloon-pos=up][data-balloon-visible]:after,[data-balloon][data-balloon-pos=up][data-balloon-visible]:before{transform:translate(-50%)}[data-balloon][data-balloon-pos=up-left]:after{bottom:100%;left:0;margin-bottom:11px;transform:translateY(10px);transform-origin:top}[data-balloon][data-balloon-pos=up-left]:before{bottom:100%;left:5px;margin-bottom:5px;transform:translateY(10px);transform-origin:top}[data-balloon][data-balloon-pos=up-left]:hover:after,[data-balloon][data-balloon-pos=up-left]:hover:before,[data-balloon][data-balloon-pos=up-left][data-balloon-visible]:after,[data-balloon][data-balloon-pos=up-left][data-balloon-visible]:before{transform:translate(0)}[data-balloon][data-balloon-pos=up-right]:after{bottom:100%;right:0;margin-bottom:11px;transform:translateY(10px);transform-origin:top}[data-balloon][data-balloon-pos=up-right]:before{bottom:100%;right:5px;margin-bottom:5px;transform:translateY(10px);transform-origin:top}[data-balloon][data-balloon-pos=up-right]:hover:after,[data-balloon][data-balloon-pos=up-right]:hover:before,[data-balloon][data-balloon-pos=up-right][data-balloon-visible]:after,[data-balloon][data-balloon-pos=up-right][data-balloon-visible]:before{transform:translate(0)}[data-balloon][data-balloon-pos=down]:after{left:50%;margin-top:11px;top:100%;transform:translate(-50%,-10px)}[data-balloon][data-balloon-pos=down]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M33.342 12H1.338c6 0 11.627-12.002 16.002-12.002C21.715-.002 27.406 12 33.342 12z'/%3E%3C/svg%3E");background-size:100% auto;width:18px;height:6px;left:50%;margin-top:5px;top:100%;transform:translate(-50%,-10px)}[data-balloon][data-balloon-pos=down]:hover:after,[data-balloon][data-balloon-pos=down]:hover:before,[data-balloon][data-balloon-pos=down][data-balloon-visible]:after,[data-balloon][data-balloon-pos=down][data-balloon-visible]:before{transform:translate(-50%)}[data-balloon][data-balloon-pos=down-left]:after{left:0;margin-top:11px;top:100%;transform:translateY(-10px)}[data-balloon][data-balloon-pos=down-left]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M33.342 12H1.338c6 0 11.627-12.002 16.002-12.002C21.715-.002 27.406 12 33.342 12z'/%3E%3C/svg%3E");background-size:100% auto;width:18px;height:6px;left:5px;margin-top:5px;top:100%;transform:translateY(-10px)}[data-balloon][data-balloon-pos=down-left]:hover:after,[data-balloon][data-balloon-pos=down-left]:hover:before,[data-balloon][data-balloon-pos=down-left][data-balloon-visible]:after,[data-balloon][data-balloon-pos=down-left][data-balloon-visible]:before{transform:translate(0)}[data-balloon][data-balloon-pos=down-right]:after{right:0;margin-top:11px;top:100%;transform:translateY(-10px)}[data-balloon][data-balloon-pos=down-right]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='12'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M33.342 12H1.338c6 0 11.627-12.002 16.002-12.002C21.715-.002 27.406 12 33.342 12z'/%3E%3C/svg%3E");background-size:100% auto;width:18px;height:6px;right:5px;margin-top:5px;top:100%;transform:translateY(-10px)}[data-balloon][data-balloon-pos=down-right]:hover:after,[data-balloon][data-balloon-pos=down-right]:hover:before,[data-balloon][data-balloon-pos=down-right][data-balloon-visible]:after,[data-balloon][data-balloon-pos=down-right][data-balloon-visible]:before{transform:translate(0)}[data-balloon][data-balloon-pos=left]:after{margin-right:11px;right:100%;top:50%;transform:translate(10px,-50%)}[data-balloon][data-balloon-pos=left]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='36'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M0 33.342V1.338c0 6 12.002 11.627 12.002 16.002C12.002 21.715 0 27.406 0 33.342z'/%3E%3C/svg%3E");background-size:100% auto;width:6px;height:18px;margin-right:5px;right:100%;top:50%;transform:translate(10px,-50%)}[data-balloon][data-balloon-pos=left]:hover:after,[data-balloon][data-balloon-pos=left]:hover:before,[data-balloon][data-balloon-pos=left][data-balloon-visible]:after,[data-balloon][data-balloon-pos=left][data-balloon-visible]:before{transform:translateY(-50%)}[data-balloon][data-balloon-pos=right]:after{left:100%;margin-left:11px;top:50%;transform:translate(-10px,-50%)}[data-balloon][data-balloon-pos=right]:before{background:no-repeat url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='36'%3E%3Cpath fill='rgba(17, 17, 17, 0.9)' d='M12 2.658v32.004c0-6-12.002-11.627-12.002-16.002C-.002 14.285 12 8.594 12 2.658z'/%3E%3C/svg%3E");background-size:100% auto;width:6px;height:18px;left:100%;margin-left:5px;top:50%;transform:translate(-10px,-50%)}[data-balloon][data-balloon-pos=right]:hover:after,[data-balloon][data-balloon-pos=right]:hover:before,[data-balloon][data-balloon-pos=right][data-balloon-visible]:after,[data-balloon][data-balloon-pos=right][data-balloon-visible]:before{transform:translateY(-50%)}[data-balloon][data-balloon-length=small]:after{white-space:normal;width:80px}[data-balloon][data-balloon-length=medium]:after{white-space:normal;width:150px}[data-balloon][data-balloon-length=large]:after{white-space:normal;width:260px}[data-balloon][data-balloon-length=xlarge]:after{white-space:normal;width:380px}@media screen and (max-width:768px){[data-balloon][data-balloon-length=xlarge]:after{white-space:normal;width:90vw}}[data-balloon][data-balloon-length=fit]:after{white-space:normal;width:100%} -@-webkit-keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}@keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}.dplayer{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:1}.dplayer *{box-sizing:content-box}.dplayer svg{width:100%;height:100%}.dplayer svg circle,.dplayer svg path{fill:#fff}.dplayer:-webkit-full-screen{width:100%;height:100%;background:#000;position:fixed;z-index:100000;left:0;top:0;margin:0;padding:0;transform:translate(0)}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{-webkit-animation:danmaku-center 6s linear;animation:danmaku-center 6s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{-webkit-animation:danmaku 8s linear;animation:danmaku 8s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer.dplayer-live .dplayer-bar-wrap,.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting,.dplayer.dplayer-live .dplayer-setting-loop,.dplayer.dplayer-live .dplayer-setting-speed,.dplayer.dplayer-live .dplayer-time,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,.dplayer.dplayer-no-danmaku .dplayer-danmaku{display:none}.dplayer.dplayer-arrow .dplayer-danmaku{font-size:18px}.dplayer.dplayer-arrow .dplayer-icon{margin:0 -3px}.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move{-webkit-animation-play-state:running;animation-play-state:running}@media (min-width:900px){.dplayer.dplayer-playing .dplayer-controller,.dplayer.dplayer-playing .dplayer-controller-mask{opacity:0}.dplayer.dplayer-playing:hover .dplayer-controller,.dplayer.dplayer-playing:hover .dplayer-controller-mask{opacity:1}}.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon{display:block}.dplayer.dplayer-loading .dplayer-danmaku,.dplayer.dplayer-loading .dplayer-danmaku-move,.dplayer.dplayer-paused .dplayer-danmaku,.dplayer.dplayer-paused .dplayer-danmaku-move{-webkit-animation-play-state:paused;animation-play-state:paused}.dplayer.dplayer-hide-controller{cursor:none}.dplayer.dplayer-hide-controller .dplayer-controller,.dplayer.dplayer-hide-controller .dplayer-controller-mask{opacity:0;transform:translateY(100%)}.dplayer.dplayer-show-controller .dplayer-controller,.dplayer.dplayer-show-controller .dplayer-controller-mask{opacity:1}.dplayer.dplayer-fulled{position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume{display:none}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:static;display:inline-block}.dplayer.dplayer-mobile .dplayer-bar-time{display:none}.dplayer-web-fullscreen-fix{position:fixed;top:0;left:0;margin:0;padding:0}[data-balloon]:before{display:none}[data-balloon]:after{padding:.3em .7em;background:rgba(17,17,17,.7)}[data-balloon][data-balloon-pos=up]:after{margin-bottom:0}.dplayer-bezel{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;height:52px;width:52px;padding:12px;box-sizing:border-box;background:rgba(0,0,0,.5);border-radius:50%;opacity:0;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition{-webkit-animation:bezel-hide .5s linear;animation:bezel-hide .5s linear}@-webkit-keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}@keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.dplayer-bezel .dplayer-danloading{position:absolute;top:50%;margin-top:-7px;width:100%;text-align:center;font-size:14px;line-height:14px;-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-bezel .diplayer-loading-icon{display:none;position:absolute;top:50%;left:50%;margin:-18px 0 0 -18px;height:36px;width:36px;pointer-events:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide{display:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot{-webkit-animation:diplayer-loading-dot-fade .8s ease infinite;animation:diplayer-loading-dot-fade .8s ease infinite;opacity:0;transform-origin:4px 4px}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7{-webkit-animation-delay:.7s;animation-delay:.7s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6{-webkit-animation-delay:.6s;animation-delay:.6s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5{-webkit-animation-delay:.5s;animation-delay:.5s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4{-webkit-animation-delay:.4s;animation-delay:.4s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3{-webkit-animation-delay:.3s;animation-delay:.3s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2{-webkit-animation-delay:.2s;animation-delay:.2s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1{-webkit-animation-delay:.1s;animation-delay:.1s}@-webkit-keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}@keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}.dplayer-controller-mask{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;height:98px;width:100%}.dplayer-controller,.dplayer-controller-mask{position:absolute;bottom:0;transition:all .3s ease}.dplayer-controller{left:0;right:0;height:41px;padding:0 20px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons{display:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box{display:block}.dplayer-controller .dplayer-bar-wrap{padding:5px 0;cursor:pointer;position:absolute;bottom:33px;width:calc(100% - 40px);height:3px}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight{display:block;width:8px;transform:translateX(-4px);top:4px;height:40%}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight{z-index:12;position:absolute;top:5px;width:6px;height:20%;border-radius:6px;background-color:#fff;text-align:center;transform:translateX(-3px);transition:all .2s ease-in-out}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text{display:block}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-preview,.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-time{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:rgba(0,0,0,.62);color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translateX(-50%)}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview{position:absolute;background:#fff;pointer-events:none;display:none;background-size:16000px 100%}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas{position:absolute;width:100%;height:100%;z-index:1;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time{position:absolute;left:0;top:-20px;border-radius:4px;padding:5px 7px;background-color:rgba(0,0,0,.62);color:#fff;font-size:12px;text-align:center;opacity:1;transition:opacity .1s ease-in-out;word-wrap:normal;word-break:normal;z-index:2;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-bar{position:relative;height:3px;width:100%;background:hsla(0,0%,100%,.2);cursor:pointer}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded{background:hsla(0,0%,100%,.4);transition:all .5s ease}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded,.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played{position:absolute;left:0;top:0;bottom:0;height:3px;will-change:width}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons{height:38px;position:absolute;bottom:0}.dplayer-controller .dplayer-icons.dplayer-comment-box{display:none;position:absolute;transition:all .3s ease-in-out;z-index:2;height:38px;bottom:0;left:20px;right:20px;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon{position:absolute;left:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon{position:absolute;right:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box{position:absolute;background:rgba(28,28,28,.9);bottom:41px;left:0;box-shadow:0 0 25px rgba(0,0,0,.3);border-radius:4px;padding:10px 10px 16px;font-size:14px;width:204px;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open{transform:scale(1)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type=radio]{display:none}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label{cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title{font-size:13px;color:#fff;line-height:30px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title{margin-bottom:6px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span{border-radius:4px 0 0 4px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span{border-radius:0 4px 4px 0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span{width:33%;padding:4px 6px;line-height:16px;display:inline-block;font-size:12px;color:#fff;border:1px solid #fff;margin-right:-1px;box-sizing:border-box;text-align:center;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked+span{background:#e4e4e6;color:#1c1c1c}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label{font-size:0;padding:6px;display:inline-block}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span{width:22px;height:22px;display:inline-block;border-radius:50%;box-sizing:border-box;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover{-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input{outline:none;border:none;padding:8px 31px;font-size:14px;line-height:18px;text-align:center;border-radius:4px;background:none;margin:0;height:100%;box-sizing:border-box;width:100%;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-webkit-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-moz-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input:-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear{display:none}.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-icons-right{right:20px}.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon{padding:8px}.dplayer-controller .dplayer-icons .dplayer-live-badge,.dplayer-controller .dplayer-icons .dplayer-time{line-height:38px;color:#eee;text-shadow:0 0 2px rgba(0,0,0,.5);vertical-align:middle;font-size:13px;cursor:default}.dplayer-controller .dplayer-icons .dplayer-live-dot{display:inline-block;width:6px;height:6px;vertical-align:4%;margin-right:5px;content:"";border-radius:6px}.dplayer-controller .dplayer-icons .dplayer-icon{width:40px;height:100%;border:none;background-color:transparent;outline:none;cursor:pointer;vertical-align:middle;box-sizing:border-box;display:inline-block}.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content{transition:all .2s ease-in-out;opacity:.8}.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content{opacity:1}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon{color:#fff;width:auto;line-height:22px;font-size:14px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon{padding:10px 9px 9px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon{padding-top:8.5px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon{width:43px}.dplayer-controller .dplayer-icons .dplayer-volume{position:relative;display:inline-block;cursor:pointer;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap{display:inline-block;margin:0 10px 0 -5px;vertical-align:middle;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar{position:relative;top:17px;width:0;height:3px;background:#aaa;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;will-change:width}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons .dplayer-setting,.dplayer-controller .dplayer-icons .dplayer-subtitle-btn{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box{position:absolute;right:0;bottom:50px;transform:scale(0);width:150px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 0;transition:all .3s ease-in-out;overflow:hidden;z-index:2}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div.dplayer-setting-origin-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow{width:70px;height:180px;text-align:center}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item{height:30px;padding:5px 10px;box-sizing:border-box;cursor:pointer;position:relative}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku{padding:5px 0}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label{padding:0 10px;display:inline}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap{padding:0 10px;box-sizing:border-box;display:none;vertical-align:middle;height:100%;width:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar{position:relative;top:8.5px;width:100%;height:3px;background:#fff;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;background:#aaa;will-change:width}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;background:#aaa}.dplayer-controller .dplayer-icons .dplayer-full{display:inline-block;height:100%;position:relative}.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon{display:block}.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:absolute;top:-30px;z-index:1;display:none}.dplayer-controller .dplayer-icons .dplayer-quality{position:relative;display:inline-block;height:100%;z-index:2}.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list,.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask{display:block}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask{display:none;position:absolute;bottom:38px;left:-18px;width:80px;padding-bottom:12px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list{display:none;font-size:12px;width:80px;border-radius:2px;background:rgba(28,28,28,.9);padding:5px 0;transition:all .3s ease-in-out;overflow:hidden;color:#fff;text-align:center}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item{height:25px;box-sizing:border-box;cursor:pointer;line-height:25px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-comment{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-label{color:#eee;font-size:13px;display:inline-block;vertical-align:middle;white-space:nowrap}.dplayer-controller .dplayer-icons .dplayer-toggle{width:32px;height:20px;text-align:center;font-size:0;vertical-align:middle;position:absolute;top:5px;right:10px}.dplayer-controller .dplayer-icons .dplayer-toggle input{max-height:0;max-width:0;display:none}.dplayer-controller .dplayer-icons .dplayer-toggle input+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 0 #dfdfdf;border:1px solid #dfdfdf;height:20px;width:32px;border-radius:10px;box-sizing:border-box;cursor:pointer;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after,.dplayer-controller .dplayer-icons .dplayer-toggle input+label:before{content:"";position:absolute;display:block;height:18px;width:18px;top:0;left:0;border-radius:15px;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label{border-color:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:before{width:30px;background:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:after{left:12px}.dplayer-danmaku{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff}.dplayer-danmaku .dplayer-danmaku-item{display:inline-block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;white-space:nowrap;text-shadow:.5px .5px .5px rgba(0,0,0,.5)}.dplayer-danmaku .dplayer-danmaku-item--demo{position:absolute;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-right{position:absolute;right:0;transform:translateX(100%)}.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{will-change:transform;-webkit-animation:danmaku 5s linear;animation:danmaku 5s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku{0%{transform:translateX(100%)}}@keyframes danmaku{0%{transform:translateX(100%)}}.dplayer-danmaku .dplayer-danmaku-bottom,.dplayer-danmaku .dplayer-danmaku-top{position:absolute;width:100%;text-align:center;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{will-change:visibility;-webkit-animation:danmaku-center 4s linear;animation:danmaku-center 4s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}@keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}.dplayer-logo{pointer-events:none;position:absolute;left:20px;top:20px;max-width:50px;max-height:50px}.dplayer-logo img{max-width:100%;max-height:100%;background:none}.dplayer-menu{position:absolute;width:170px;border-radius:2px;background:rgba(28,28,28,.85);padding:5px 0;overflow:hidden;z-index:3;display:none}.dplayer-menu.dplayer-menu-show{display:block}.dplayer-menu .dplayer-menu-item{height:30px;box-sizing:border-box;cursor:pointer}.dplayer-menu .dplayer-menu-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-menu .dplayer-menu-item a{padding:0 10px;line-height:30px;color:#eee;font-size:13px;display:inline-block;vertical-align:middle;width:100%;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-menu .dplayer-menu-item a:hover{text-decoration:none}.dplayer-notice{opacity:0;position:absolute;bottom:60px;left:20px;font-size:14px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 20px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none}.dplayer-subtitle{position:absolute;bottom:40px;width:90%;left:5%;text-align:center;color:#fff;text-shadow:.5px .5px .5px rgba(0,0,0,.5);font-size:20px}.dplayer-subtitle.dplayer-subtitle-hide{display:none}.dplayer-mask{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.dplayer-mask.dplayer-mask-show{display:block}.dplayer-video-wrap{position:relative;background:#000;font-size:0;width:100%;height:100%}.dplayer-video-wrap .dplayer-video{width:100%;height:100%;display:none}.dplayer-video-wrap .dplayer-video-current{display:block}.dplayer-video-wrap .dplayer-video-prepare{display:none}.dplayer-info-panel{position:absolute;top:10px;left:10px;width:400px;background:rgba(28,28,28,.8);padding:10px;color:#fff;font-size:12px;border-radius:2px}.dplayer-info-panel-hide{display:none}.dplayer-info-panel .dplayer-info-panel-close{cursor:pointer;position:absolute;right:10px;top:10px}.dplayer-info-panel .dplayer-info-panel-item>span{display:inline-block;vertical-align:middle;line-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-info-panel .dplayer-info-panel-item-title{width:100px;text-align:right;margin-right:10px}.dplayer-info-panel .dplayer-info-panel-item-data{width:260px} - -/*# sourceMappingURL=DPlayer.min.css.map*/ \ No newline at end of file diff --git a/dist/DPlayer.min.css.map b/dist/DPlayer.min.css.map deleted file mode 100644 index d666b9373..000000000 --- a/dist/DPlayer.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack://[name]/balloon.css","webpack://[name]/index.scss"],"names":[],"mappings":"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","file":"DPlayer.min.css","sourcesContent":["button[data-balloon] {\n overflow: visible; }\n\n[data-balloon] {\n position: relative;\n cursor: pointer; }\n [data-balloon]:after {\n filter: alpha(opacity=0);\n -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n -moz-opacity: 0;\n -khtml-opacity: 0;\n opacity: 0;\n pointer-events: none;\n -webkit-transition: all 0.18s ease-out 0.18s;\n -moz-transition: all 0.18s ease-out 0.18s;\n -ms-transition: all 0.18s ease-out 0.18s;\n -o-transition: all 0.18s ease-out 0.18s;\n transition: all 0.18s ease-out 0.18s;\n font-family: sans-serif !important;\n font-weight: normal !important;\n font-style: normal !important;\n text-shadow: none !important;\n font-size: 12px !important;\n background: rgba(17, 17, 17, 0.9);\n border-radius: 4px;\n color: #fff;\n content: attr(data-balloon);\n padding: .5em 1em;\n position: absolute;\n white-space: nowrap;\n z-index: 10; }\n [data-balloon]:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(0)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 18px;\n height: 6px;\n filter: alpha(opacity=0);\n -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\";\n -moz-opacity: 0;\n -khtml-opacity: 0;\n opacity: 0;\n pointer-events: none;\n -webkit-transition: all 0.18s ease-out 0.18s;\n -moz-transition: all 0.18s ease-out 0.18s;\n -ms-transition: all 0.18s ease-out 0.18s;\n -o-transition: all 0.18s ease-out 0.18s;\n transition: all 0.18s ease-out 0.18s;\n content: '';\n position: absolute;\n z-index: 10; }\n [data-balloon]:hover:before, [data-balloon]:hover:after, [data-balloon][data-balloon-visible]:before, [data-balloon][data-balloon-visible]:after {\n filter: alpha(opacity=100);\n -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)\";\n -moz-opacity: 1;\n -khtml-opacity: 1;\n opacity: 1;\n pointer-events: auto; }\n [data-balloon]:not([data-balloon-pos]):after {\n bottom: 100%;\n left: 50%;\n margin-bottom: 11px;\n -webkit-transform: translate(-50%, 10px);\n -moz-transform: translate(-50%, 10px);\n -ms-transform: translate(-50%, 10px);\n transform: translate(-50%, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon]:not([data-balloon-pos]):before {\n bottom: 100%;\n left: 50%;\n margin-bottom: 5px;\n -webkit-transform: translate(-50%, 10px);\n -moz-transform: translate(-50%, 10px);\n -ms-transform: translate(-50%, 10px);\n transform: translate(-50%, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon]:not([data-balloon-pos]):hover:after, [data-balloon]:not([data-balloon-pos])[data-balloon-visible]:after {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon]:not([data-balloon-pos]):hover:before, [data-balloon]:not([data-balloon-pos])[data-balloon-visible]:before {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon].font-awesome:after {\n font-family: FontAwesome, sans-serif !important; }\n [data-balloon][data-balloon-break]:after {\n white-space: pre; }\n [data-balloon][data-balloon-blunt]:before, [data-balloon][data-balloon-blunt]:after {\n -webkit-transition: none;\n -moz-transition: none;\n -ms-transition: none;\n -o-transition: none;\n transition: none; }\n [data-balloon][data-balloon-pos=\"up\"]:after {\n bottom: 100%;\n left: 50%;\n margin-bottom: 11px;\n -webkit-transform: translate(-50%, 10px);\n -moz-transform: translate(-50%, 10px);\n -ms-transform: translate(-50%, 10px);\n transform: translate(-50%, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up\"]:before {\n bottom: 100%;\n left: 50%;\n margin-bottom: 5px;\n -webkit-transform: translate(-50%, 10px);\n -moz-transform: translate(-50%, 10px);\n -ms-transform: translate(-50%, 10px);\n transform: translate(-50%, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up\"]:hover:after, [data-balloon][data-balloon-pos=\"up\"][data-balloon-visible]:after {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon][data-balloon-pos=\"up\"]:hover:before, [data-balloon][data-balloon-pos=\"up\"][data-balloon-visible]:before {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon][data-balloon-pos=\"up-left\"]:after {\n bottom: 100%;\n left: 0;\n margin-bottom: 11px;\n -webkit-transform: translate(0, 10px);\n -moz-transform: translate(0, 10px);\n -ms-transform: translate(0, 10px);\n transform: translate(0, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up-left\"]:before {\n bottom: 100%;\n left: 5px;\n margin-bottom: 5px;\n -webkit-transform: translate(0, 10px);\n -moz-transform: translate(0, 10px);\n -ms-transform: translate(0, 10px);\n transform: translate(0, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up-left\"]:hover:after, [data-balloon][data-balloon-pos=\"up-left\"][data-balloon-visible]:after {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos=\"up-left\"]:hover:before, [data-balloon][data-balloon-pos=\"up-left\"][data-balloon-visible]:before {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos=\"up-right\"]:after {\n bottom: 100%;\n right: 0;\n margin-bottom: 11px;\n -webkit-transform: translate(0, 10px);\n -moz-transform: translate(0, 10px);\n -ms-transform: translate(0, 10px);\n transform: translate(0, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up-right\"]:before {\n bottom: 100%;\n right: 5px;\n margin-bottom: 5px;\n -webkit-transform: translate(0, 10px);\n -moz-transform: translate(0, 10px);\n -ms-transform: translate(0, 10px);\n transform: translate(0, 10px);\n -webkit-transform-origin: top;\n -moz-transform-origin: top;\n -ms-transform-origin: top;\n transform-origin: top; }\n [data-balloon][data-balloon-pos=\"up-right\"]:hover:after, [data-balloon][data-balloon-pos=\"up-right\"][data-balloon-visible]:after {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos=\"up-right\"]:hover:before, [data-balloon][data-balloon-pos=\"up-right\"][data-balloon-visible]:before {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos='down']:after {\n left: 50%;\n margin-top: 11px;\n top: 100%;\n -webkit-transform: translate(-50%, -10px);\n -moz-transform: translate(-50%, -10px);\n -ms-transform: translate(-50%, -10px);\n transform: translate(-50%, -10px); }\n [data-balloon][data-balloon-pos='down']:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 18px;\n height: 6px;\n left: 50%;\n margin-top: 5px;\n top: 100%;\n -webkit-transform: translate(-50%, -10px);\n -moz-transform: translate(-50%, -10px);\n -ms-transform: translate(-50%, -10px);\n transform: translate(-50%, -10px); }\n [data-balloon][data-balloon-pos='down']:hover:after, [data-balloon][data-balloon-pos='down'][data-balloon-visible]:after {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon][data-balloon-pos='down']:hover:before, [data-balloon][data-balloon-pos='down'][data-balloon-visible]:before {\n -webkit-transform: translate(-50%, 0);\n -moz-transform: translate(-50%, 0);\n -ms-transform: translate(-50%, 0);\n transform: translate(-50%, 0); }\n [data-balloon][data-balloon-pos='down-left']:after {\n left: 0;\n margin-top: 11px;\n top: 100%;\n -webkit-transform: translate(0, -10px);\n -moz-transform: translate(0, -10px);\n -ms-transform: translate(0, -10px);\n transform: translate(0, -10px); }\n [data-balloon][data-balloon-pos='down-left']:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 18px;\n height: 6px;\n left: 5px;\n margin-top: 5px;\n top: 100%;\n -webkit-transform: translate(0, -10px);\n -moz-transform: translate(0, -10px);\n -ms-transform: translate(0, -10px);\n transform: translate(0, -10px); }\n [data-balloon][data-balloon-pos='down-left']:hover:after, [data-balloon][data-balloon-pos='down-left'][data-balloon-visible]:after {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos='down-left']:hover:before, [data-balloon][data-balloon-pos='down-left'][data-balloon-visible]:before {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos='down-right']:after {\n right: 0;\n margin-top: 11px;\n top: 100%;\n -webkit-transform: translate(0, -10px);\n -moz-transform: translate(0, -10px);\n -ms-transform: translate(0, -10px);\n transform: translate(0, -10px); }\n [data-balloon][data-balloon-pos='down-right']:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2236px%22%20height%3D%2212px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(180 18 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 18px;\n height: 6px;\n right: 5px;\n margin-top: 5px;\n top: 100%;\n -webkit-transform: translate(0, -10px);\n -moz-transform: translate(0, -10px);\n -ms-transform: translate(0, -10px);\n transform: translate(0, -10px); }\n [data-balloon][data-balloon-pos='down-right']:hover:after, [data-balloon][data-balloon-pos='down-right'][data-balloon-visible]:after {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos='down-right']:hover:before, [data-balloon][data-balloon-pos='down-right'][data-balloon-visible]:before {\n -webkit-transform: translate(0, 0);\n -moz-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n transform: translate(0, 0); }\n [data-balloon][data-balloon-pos='left']:after {\n margin-right: 11px;\n right: 100%;\n top: 50%;\n -webkit-transform: translate(10px, -50%);\n -moz-transform: translate(10px, -50%);\n -ms-transform: translate(10px, -50%);\n transform: translate(10px, -50%); }\n [data-balloon][data-balloon-pos='left']:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2212px%22%20height%3D%2236px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(-90 18 18)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 6px;\n height: 18px;\n margin-right: 5px;\n right: 100%;\n top: 50%;\n -webkit-transform: translate(10px, -50%);\n -moz-transform: translate(10px, -50%);\n -ms-transform: translate(10px, -50%);\n transform: translate(10px, -50%); }\n [data-balloon][data-balloon-pos='left']:hover:after, [data-balloon][data-balloon-pos='left'][data-balloon-visible]:after {\n -webkit-transform: translate(0, -50%);\n -moz-transform: translate(0, -50%);\n -ms-transform: translate(0, -50%);\n transform: translate(0, -50%); }\n [data-balloon][data-balloon-pos='left']:hover:before, [data-balloon][data-balloon-pos='left'][data-balloon-visible]:before {\n -webkit-transform: translate(0, -50%);\n -moz-transform: translate(0, -50%);\n -ms-transform: translate(0, -50%);\n transform: translate(0, -50%); }\n [data-balloon][data-balloon-pos='right']:after {\n left: 100%;\n margin-left: 11px;\n top: 50%;\n -webkit-transform: translate(-10px, -50%);\n -moz-transform: translate(-10px, -50%);\n -ms-transform: translate(-10px, -50%);\n transform: translate(-10px, -50%); }\n [data-balloon][data-balloon-pos='right']:before {\n background: no-repeat url(\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http://www.w3.org/2000/svg%22%20width%3D%2212px%22%20height%3D%2236px%22%3E%3Cpath%20fill%3D%22rgba(17, 17, 17, 0.9)%22%20transform%3D%22rotate(90 6 6)%22%20d%3D%22M2.658,0.000%20C-13.615,0.000%2050.938,0.000%2034.662,0.000%20C28.662,0.000%2023.035,12.002%2018.660,12.002%20C14.285,12.002%208.594,0.000%202.658,0.000%20Z%22/%3E%3C/svg%3E\");\n background-size: 100% auto;\n width: 6px;\n height: 18px;\n left: 100%;\n margin-left: 5px;\n top: 50%;\n -webkit-transform: translate(-10px, -50%);\n -moz-transform: translate(-10px, -50%);\n -ms-transform: translate(-10px, -50%);\n transform: translate(-10px, -50%); }\n [data-balloon][data-balloon-pos='right']:hover:after, [data-balloon][data-balloon-pos='right'][data-balloon-visible]:after {\n -webkit-transform: translate(0, -50%);\n -moz-transform: translate(0, -50%);\n -ms-transform: translate(0, -50%);\n transform: translate(0, -50%); }\n [data-balloon][data-balloon-pos='right']:hover:before, [data-balloon][data-balloon-pos='right'][data-balloon-visible]:before {\n -webkit-transform: translate(0, -50%);\n -moz-transform: translate(0, -50%);\n -ms-transform: translate(0, -50%);\n transform: translate(0, -50%); }\n [data-balloon][data-balloon-length='small']:after {\n white-space: normal;\n width: 80px; }\n [data-balloon][data-balloon-length='medium']:after {\n white-space: normal;\n width: 150px; }\n [data-balloon][data-balloon-length='large']:after {\n white-space: normal;\n width: 260px; }\n [data-balloon][data-balloon-length='xlarge']:after {\n white-space: normal;\n width: 380px; }\n @media screen and (max-width: 768px) {\n [data-balloon][data-balloon-length='xlarge']:after {\n white-space: normal;\n width: 90vw; } }\n [data-balloon][data-balloon-length='fit']:after {\n white-space: normal;\n width: 100%; }\n","@import url(../../node_modules/balloon-css/balloon.css);@keyframes my-face{2%{transform:translate(0, 1.5px) rotate(1.5deg)}4%{transform:translate(0, -1.5px) rotate(-0.5deg)}6%{transform:translate(0, 1.5px) rotate(-1.5deg)}8%{transform:translate(0, -1.5px) rotate(-1.5deg)}10%{transform:translate(0, 2.5px) rotate(1.5deg)}12%{transform:translate(0, -0.5px) rotate(1.5deg)}14%{transform:translate(0, -1.5px) rotate(1.5deg)}16%{transform:translate(0, -0.5px) rotate(-1.5deg)}18%{transform:translate(0, 0.5px) rotate(-1.5deg)}20%{transform:translate(0, -1.5px) rotate(2.5deg)}22%{transform:translate(0, 0.5px) rotate(-1.5deg)}24%{transform:translate(0, 1.5px) rotate(1.5deg)}26%{transform:translate(0, 0.5px) rotate(0.5deg)}28%{transform:translate(0, 0.5px) rotate(1.5deg)}30%{transform:translate(0, -0.5px) rotate(2.5deg)}32%{transform:translate(0, 1.5px) rotate(-0.5deg)}34%{transform:translate(0, 1.5px) rotate(-0.5deg)}36%{transform:translate(0, -1.5px) rotate(2.5deg)}38%{transform:translate(0, 1.5px) rotate(-1.5deg)}40%{transform:translate(0, -0.5px) rotate(2.5deg)}42%{transform:translate(0, 2.5px) rotate(-1.5deg)}44%{transform:translate(0, 1.5px) rotate(0.5deg)}46%{transform:translate(0, -1.5px) rotate(2.5deg)}48%{transform:translate(0, -0.5px) rotate(0.5deg)}50%{transform:translate(0, 0.5px) rotate(0.5deg)}52%{transform:translate(0, 2.5px) rotate(2.5deg)}54%{transform:translate(0, -1.5px) rotate(1.5deg)}56%{transform:translate(0, 2.5px) rotate(2.5deg)}58%{transform:translate(0, 0.5px) rotate(2.5deg)}60%{transform:translate(0, 2.5px) rotate(2.5deg)}62%{transform:translate(0, -0.5px) rotate(2.5deg)}64%{transform:translate(0, -0.5px) rotate(1.5deg)}66%{transform:translate(0, 1.5px) rotate(-0.5deg)}68%{transform:translate(0, -1.5px) rotate(-0.5deg)}70%{transform:translate(0, 1.5px) rotate(0.5deg)}72%{transform:translate(0, 2.5px) rotate(1.5deg)}74%{transform:translate(0, -0.5px) rotate(0.5deg)}76%{transform:translate(0, -0.5px) rotate(2.5deg)}78%{transform:translate(0, -0.5px) rotate(1.5deg)}80%{transform:translate(0, 1.5px) rotate(1.5deg)}82%{transform:translate(0, -0.5px) rotate(0.5deg)}84%{transform:translate(0, 1.5px) rotate(2.5deg)}86%{transform:translate(0, -1.5px) rotate(-1.5deg)}88%{transform:translate(0, -0.5px) rotate(2.5deg)}90%{transform:translate(0, 2.5px) rotate(-0.5deg)}92%{transform:translate(0, 0.5px) rotate(-0.5deg)}94%{transform:translate(0, 2.5px) rotate(0.5deg)}96%{transform:translate(0, -0.5px) rotate(1.5deg)}98%{transform:translate(0, -1.5px) rotate(-0.5deg)}0%,100%{transform:translate(0, 0) rotate(0deg)}}.dplayer{position:relative;overflow:hidden;user-select:none;line-height:1}.dplayer *{box-sizing:content-box}.dplayer svg{width:100%;height:100%}.dplayer svg path,.dplayer svg circle{fill:#fff}.dplayer:-webkit-full-screen{width:100%;height:100%;background:#000;position:fixed;z-index:100000;left:0;top:0;margin:0;padding:0;transform:translate(0, 0)}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move{animation:danmaku-center 6s linear;animation-play-state:inherit}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{animation:danmaku 8s linear;animation-play-state:inherit}.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit{display:none}.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment{display:none}.dplayer.dplayer-no-danmaku .dplayer-danmaku{display:none}.dplayer.dplayer-live .dplayer-time{display:none}.dplayer.dplayer-live .dplayer-bar-wrap{display:none}.dplayer.dplayer-live .dplayer-setting-speed{display:none}.dplayer.dplayer-live .dplayer-setting-loop{display:none}.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting{display:none}.dplayer.dplayer-arrow .dplayer-danmaku{font-size:18px}.dplayer.dplayer-arrow .dplayer-icon{margin:0 -3px}.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move{animation-play-state:running}@media (min-width: 900px){.dplayer.dplayer-playing .dplayer-controller-mask{opacity:0}.dplayer.dplayer-playing .dplayer-controller{opacity:0}.dplayer.dplayer-playing:hover .dplayer-controller-mask{opacity:1}.dplayer.dplayer-playing:hover .dplayer-controller{opacity:1}}.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon{display:block}.dplayer.dplayer-loading .dplayer-danmaku,.dplayer.dplayer-loading .dplayer-danmaku-move,.dplayer.dplayer-paused .dplayer-danmaku,.dplayer.dplayer-paused .dplayer-danmaku-move{animation-play-state:paused}.dplayer.dplayer-hide-controller{cursor:none}.dplayer.dplayer-hide-controller .dplayer-controller-mask{opacity:0;transform:translateY(100%)}.dplayer.dplayer-hide-controller .dplayer-controller{opacity:0;transform:translateY(100%)}.dplayer.dplayer-show-controller .dplayer-controller-mask{opacity:1}.dplayer.dplayer-show-controller .dplayer-controller{opacity:1}.dplayer.dplayer-fulled{position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume,.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon{display:none}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:static;display:inline-block}.dplayer.dplayer-mobile .dplayer-bar-time{display:none}.dplayer-web-fullscreen-fix{position:fixed;top:0;left:0;margin:0;padding:0}[data-balloon]:before{display:none}[data-balloon]:after{padding:0.3em 0.7em;background:rgba(17,17,17,0.7)}[data-balloon][data-balloon-pos=\"up\"]:after{margin-bottom:0}.dplayer-bezel{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;height:52px;width:52px;padding:12px;box-sizing:border-box;background:rgba(0,0,0,0.5);border-radius:50%;opacity:0;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition{animation:bezel-hide .5s linear}@keyframes bezel-hide{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.dplayer-bezel .dplayer-danloading{position:absolute;top:50%;margin-top:-7px;width:100%;text-align:center;font-size:14px;line-height:14px;animation:my-face 5s infinite ease-in-out}.dplayer-bezel .diplayer-loading-icon{display:none;position:absolute;top:50%;left:50%;margin:-18px 0 0 -18px;height:36px;width:36px;pointer-events:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide{display:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot{animation:diplayer-loading-dot-fade .8s ease infinite;opacity:0;transform-origin:4px 4px}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7{animation-delay:0.7s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6{animation-delay:0.6s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5{animation-delay:0.5s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4{animation-delay:0.4s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3{animation-delay:0.3s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2{animation-delay:0.2s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1{animation-delay:0.1s}@keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2, 1.2)}50%{opacity:.25;transform:scale(0.9, 0.9)}to{opacity:.25;transform:scale(0.85, 0.85)}}.dplayer-controller-mask{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;height:98px;width:100%;position:absolute;bottom:0;transition:all 0.3s ease}.dplayer-controller{position:absolute;bottom:0;left:0;right:0;height:41px;padding:0 20px;user-select:none;transition:all 0.3s ease}.dplayer-controller.dplayer-controller-comment .dplayer-icons{display:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box{display:block}.dplayer-controller .dplayer-bar-wrap{padding:5px 0;cursor:pointer;position:absolute;bottom:33px;width:calc(100% - 40px);height:3px}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight{display:block;width:8px;transform:translateX(-4px);top:4px;height:40%}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight{z-index:12;position:absolute;top:5px;width:6px;height:20%;border-radius:6px;background-color:#fff;text-align:center;transform:translateX(-3px);transition:all .2s ease-in-out}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text{display:block}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-preview{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover ~ .dplayer-bar-time{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:rgba(0,0,0,0.62);color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translateX(-50%)}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview{position:absolute;background:#fff;pointer-events:none;display:none;background-size:16000px 100%}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas{position:absolute;width:100%;height:100%;z-index:1;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time{position:absolute;left:0px;top:-20px;border-radius:4px;padding:5px 7px;background-color:rgba(0,0,0,0.62);color:#fff;font-size:12px;text-align:center;opacity:1;transition:opacity .1s ease-in-out;word-wrap:normal;word-break:normal;z-index:2;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-bar{position:relative;height:3px;width:100%;background:rgba(255,255,255,0.2);cursor:pointer}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded{position:absolute;left:0;top:0;bottom:0;background:rgba(255,255,255,0.4);height:3px;transition:all 0.5s ease;will-change:width}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played{position:absolute;left:0;top:0;bottom:0;height:3px;will-change:width}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons{height:38px;position:absolute;bottom:0}.dplayer-controller .dplayer-icons.dplayer-comment-box{display:none;position:absolute;transition:all .3s ease-in-out;z-index:2;height:38px;bottom:0;left:20px;right:20px;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon{position:absolute;left:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon{position:absolute;right:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box{position:absolute;background:rgba(28,28,28,0.9);bottom:41px;left:0;box-shadow:0 0 25px rgba(0,0,0,0.3);border-radius:4px;padding:10px 10px 16px;font-size:14px;width:204px;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open{transform:scale(1)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type=radio]{display:none}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label{cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title{font-size:13px;color:#fff;line-height:30px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title{margin-bottom:6px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span{border-radius:4px 0 0 4px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span{border-radius:0 4px 4px 0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span{width:33%;padding:4px 6px;line-height:16px;display:inline-block;font-size:12px;color:#fff;border:1px solid #fff;margin-right:-1px;box-sizing:border-box;text-align:center;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked+span{background:#E4E4E6;color:#1c1c1c}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label{font-size:0;padding:6px;display:inline-block}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span{width:22px;height:22px;display:inline-block;border-radius:50%;box-sizing:border-box;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover{animation:my-face 5s infinite ease-in-out}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input{outline:none;border:none;padding:8px 31px;font-size:14px;line-height:18px;text-align:center;border-radius:4px;background:none;margin:0;height:100%;box-sizing:border-box;width:100%;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder{color:#fff;opacity:0.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear{display:none}.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-icons-right{right:20px}.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon{padding:8px}.dplayer-controller .dplayer-icons .dplayer-time,.dplayer-controller .dplayer-icons .dplayer-live-badge{line-height:38px;color:#eee;text-shadow:0 0 2px rgba(0,0,0,0.5);vertical-align:middle;font-size:13px;cursor:default}.dplayer-controller .dplayer-icons .dplayer-live-dot{display:inline-block;width:6px;height:6px;vertical-align:4%;margin-right:5px;content:'';border-radius:6px}.dplayer-controller .dplayer-icons .dplayer-icon{width:40px;height:100%;border:none;background-color:transparent;outline:none;cursor:pointer;vertical-align:middle;box-sizing:border-box;display:inline-block}.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content{transition:all .2s ease-in-out;opacity:.8}.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content{opacity:1}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon{color:#fff;width:auto;line-height:22px;font-size:14px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon{padding:10px 9px 9px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon{padding-top:8.5px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon{width:43px}.dplayer-controller .dplayer-icons .dplayer-volume{position:relative;display:inline-block;cursor:pointer;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap{display:inline-block;margin:0 10px 0 -5px;vertical-align:middle;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar{position:relative;top:17px;width:0;height:3px;background:#aaa;transition:all 0.3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all 0.1s ease;will-change:width}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons .dplayer-subtitle-btn{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-setting{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box{position:absolute;right:0;bottom:50px;transform:scale(0);width:150px;border-radius:2px;background:rgba(28,28,28,0.9);padding:7px 0;transition:all .3s ease-in-out;overflow:hidden;z-index:2}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div.dplayer-setting-origin-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow{width:70px;height:180px;text-align:center}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item{height:30px;padding:5px 10px;box-sizing:border-box;cursor:pointer;position:relative}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover{background-color:rgba(255,255,255,0.1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku{padding:5px 0}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label{padding:0 10px;display:inline}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap{padding:0 10px;box-sizing:border-box;display:none;vertical-align:middle;height:100%;width:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar{position:relative;top:8.5px;width:100%;height:3px;background:#fff;transition:all 0.3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all 0.1s ease;background:#aaa;will-change:width}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;background:#aaa}.dplayer-controller .dplayer-icons .dplayer-full{display:inline-block;height:100%;position:relative}.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon{display:block}.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:absolute;top:-30px;z-index:1;display:none}.dplayer-controller .dplayer-icons .dplayer-quality{position:relative;display:inline-block;height:100%;z-index:2}.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list{display:block}.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask{display:block}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask{display:none;position:absolute;bottom:38px;left:-18px;width:80px;padding-bottom:12px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list{display:none;font-size:12px;width:80px;border-radius:2px;background:rgba(28,28,28,0.9);padding:5px 0;transition:all .3s ease-in-out;overflow:hidden;color:#fff;text-align:center}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item{height:25px;box-sizing:border-box;cursor:pointer;line-height:25px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover{background-color:rgba(255,255,255,0.1)}.dplayer-controller .dplayer-icons .dplayer-comment{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-label{color:#eee;font-size:13px;display:inline-block;vertical-align:middle;white-space:nowrap}.dplayer-controller .dplayer-icons .dplayer-toggle{width:32px;height:20px;text-align:center;font-size:0;vertical-align:middle;position:absolute;top:5px;right:10px}.dplayer-controller .dplayer-icons .dplayer-toggle input{max-height:0;max-width:0;display:none}.dplayer-controller .dplayer-icons .dplayer-toggle input+label{display:inline-block;position:relative;box-shadow:#dfdfdf 0 0 0 0 inset;border:1px solid #dfdfdf;height:20px;width:32px;border-radius:10px;box-sizing:border-box;cursor:pointer;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:before{content:\"\";position:absolute;display:block;height:18px;width:18px;top:0;left:0;border-radius:15px;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after{content:\"\";position:absolute;display:block;left:0;top:0;border-radius:15px;background:#fff;transition:.2s ease-in-out;box-shadow:0 1px 3px rgba(0,0,0,0.4);height:18px;width:18px}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label{border-color:rgba(255,255,255,0.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:before{width:30px;background:rgba(255,255,255,0.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:after{left:12px}.dplayer-danmaku{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff}.dplayer-danmaku .dplayer-danmaku-item{display:inline-block;pointer-events:none;user-select:none;cursor:default;white-space:nowrap;text-shadow:0.5px 0.5px 0.5px rgba(0,0,0,0.5)}.dplayer-danmaku .dplayer-danmaku-item--demo{position:absolute;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-right{position:absolute;right:0;transform:translateX(100%)}.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{will-change:transform;animation:danmaku 5s linear;animation-play-state:paused}@keyframes danmaku{from{transform:translateX(100%)}}.dplayer-danmaku .dplayer-danmaku-top,.dplayer-danmaku .dplayer-danmaku-bottom{position:absolute;width:100%;text-align:center;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move,.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move{will-change:visibility;animation:danmaku-center 4s linear;animation-play-state:paused}@keyframes danmaku-center{from{visibility:visible}to{visibility:visible}}.dplayer-logo{pointer-events:none;position:absolute;left:20px;top:20px;max-width:50px;max-height:50px}.dplayer-logo img{max-width:100%;max-height:100%;background:none}.dplayer-menu{position:absolute;width:170px;border-radius:2px;background:rgba(28,28,28,0.85);padding:5px 0;overflow:hidden;z-index:3;display:none}.dplayer-menu.dplayer-menu-show{display:block}.dplayer-menu .dplayer-menu-item{height:30px;box-sizing:border-box;cursor:pointer}.dplayer-menu .dplayer-menu-item:hover{background-color:rgba(255,255,255,0.1)}.dplayer-menu .dplayer-menu-item a{display:inline-block;padding:0 10px;line-height:30px;color:#eee;font-size:13px;display:inline-block;vertical-align:middle;width:100%;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-menu .dplayer-menu-item a:hover{text-decoration:none}.dplayer-notice{opacity:0;position:absolute;bottom:60px;left:20px;font-size:14px;border-radius:2px;background:rgba(28,28,28,0.9);padding:7px 20px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none}.dplayer-subtitle{position:absolute;bottom:40px;width:90%;left:5%;text-align:center;color:#fff;text-shadow:0.5px 0.5px 0.5px rgba(0,0,0,0.5);font-size:20px}.dplayer-subtitle.dplayer-subtitle-hide{display:none}.dplayer-mask{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.dplayer-mask.dplayer-mask-show{display:block}.dplayer-video-wrap{position:relative;background:#000;font-size:0;width:100%;height:100%}.dplayer-video-wrap .dplayer-video{width:100%;height:100%;display:none}.dplayer-video-wrap .dplayer-video-current{display:block}.dplayer-video-wrap .dplayer-video-prepare{display:none}.dplayer-info-panel{position:absolute;top:10px;left:10px;width:400px;background:rgba(28,28,28,0.8);padding:10px;color:#fff;font-size:12px;border-radius:2px}.dplayer-info-panel-hide{display:none}.dplayer-info-panel .dplayer-info-panel-close{cursor:pointer;position:absolute;right:10px;top:10px}.dplayer-info-panel .dplayer-info-panel-item>span{display:inline-block;vertical-align:middle;line-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-info-panel .dplayer-info-panel-item-title{width:100px;text-align:right;margin-right:10px}.dplayer-info-panel .dplayer-info-panel-item-data{width:260px}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/DPlayer.min.js b/dist/DPlayer.min.js index da8c77852..d8b1bb190 100644 --- a/dist/DPlayer.min.js +++ b/dist/DPlayer.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("DPlayer",[],t):"object"==typeof exports?exports.DPlayer=t():e.DPlayer=t()}(window,function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var a=t[i]={i:i,l:!1,exports:{}};return e[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(i,a,function(t){return e[t]}.bind(null,a));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=53)}([function(e,t,n){"use strict";function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var a=n(5),o=n(37),r=Object.prototype.toString;function s(e){return"[object Array]"===r.call(e)}function l(e){return null!==e&&"object"===i(e)}function c(e){return"[object Function]"===r.call(e)}function u(e,t){if(null!=e)if("object"!==i(e)&&(e=[e]),s(e))for(var n=0,a=e.length;n\n ",n&&(t+='\n \n '),t+="\n"}},function(e,t,n){e.exports=n(36)},function(e,t){var n,i,a=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{i="function"==typeof clearTimeout?clearTimeout:r}catch(e){i=r}}();var l,c=[],u=!1,d=-1;function p(){u&&l&&(u=!1,l.length?c=l.concat(c):d=-1,c.length&&h())}function h(){if(!u){var e=s(p);u=!0;for(var t=c.length;t;){for(l=c,c=[];++d1)for(var n=1;n=200&&e<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},i.forEach(["delete","get","head"],function(e){l.headers[e]={}}),i.forEach(["post","put","patch"],function(e){l.headers[e]=i.merge(o)}),e.exports=l}).call(this,n(4))},function(e,t,n){"use strict";var i=n(0),a=n(43),o=n(6),r=n(45),s=n(46),l=n(10);e.exports=function(e){return new Promise(function(t,c){var u=e.data,d=e.headers;i.isFormData(u)&&delete d["Content-Type"];var p=new XMLHttpRequest;if(e.auth){var h=e.auth.username||"",m=e.auth.password||"";d.Authorization="Basic "+btoa(h+":"+m)}if(p.open(e.method.toUpperCase(),o(e.url,e.params,e.paramsSerializer),!0),p.timeout=e.timeout,p.onreadystatechange=function(){if(p&&4===p.readyState&&(0!==p.status||p.responseURL&&0===p.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in p?r(p.getAllResponseHeaders()):null,i={data:e.responseType&&"text"!==e.responseType?p.response:p.responseText,status:p.status,statusText:p.statusText,headers:n,config:e,request:p};a(t,c,i),p=null}},p.onabort=function(){p&&(c(l("Request aborted",e,"ECONNABORTED",p)),p=null)},p.onerror=function(){c(l("Network Error",e,null,p)),p=null},p.ontimeout=function(){c(l("timeout of "+e.timeout+"ms exceeded",e,"ECONNABORTED",p)),p=null},i.isStandardBrowserEnv()){var y=n(47),f=(e.withCredentials||s(e.url))&&e.xsrfCookieName?y.read(e.xsrfCookieName):void 0;f&&(d[e.xsrfHeaderName]=f)}if("setRequestHeader"in p&&i.forEach(d,function(e,t){void 0===u&&"content-type"===t.toLowerCase()?delete d[t]:p.setRequestHeader(t,e)}),e.withCredentials&&(p.withCredentials=!0),e.responseType)try{p.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&p.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&p.upload&&p.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then(function(e){p&&(p.abort(),c(e),p=null)}),void 0===u&&(u=null),p.send(u)})}},function(e,t,n){"use strict";var i=n(44);e.exports=function(e,t,n,a,o){var r=new Error(e);return i(r,t,n,a,o)}},function(e,t,n){"use strict";var i=n(0);e.exports=function(e,t){t=t||{};var n={};return i.forEach(["url","method","params","data"],function(e){void 0!==t[e]&&(n[e]=t[e])}),i.forEach(["headers","auth","proxy"],function(a){i.isObject(t[a])?n[a]=i.deepMerge(e[a],t[a]):void 0!==t[a]?n[a]=t[a]:i.isObject(e[a])?n[a]=i.deepMerge(e[a]):void 0!==e[a]&&(n[a]=e[a])}),i.forEach(["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"],function(i){void 0!==t[i]?n[i]=t[i]:void 0!==e[i]&&(n[i]=e[i])}),n}},function(e,t,n){"use strict";function i(e){this.message=e}i.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},i.prototype.__CANCEL__=!0,e.exports=i},function(e,t,n){"use strict";e.exports=n(52)},function(e,t,n){"use strict";(function(e){var i=n(15);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o=setTimeout;function r(){}function s(e){if(!(this instanceof s))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],h(e,this)}function l(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,s._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var i;try{i=n(e._value)}catch(e){return void u(t.promise,e)}c(t.promise,i)}else(1===e._state?c:u)(t.promise,e._value)})):e._deferreds.push(t)}function c(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"===a(t)||"function"==typeof t)){var n=t.then;if(t instanceof s)return e._state=3,e._value=t,void d(e);if("function"==typeof n)return void h((i=n,o=t,function(){i.apply(o,arguments)}),e)}e._state=1,e._value=t,d(e)}catch(t){u(e,t)}var i,o}function u(e,t){e._state=2,e._value=t,d(e)}function d(e){2===e._state&&0===e._deferreds.length&&s._immediateFn(function(){e._handled||s._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;t\n \n '),t+='\n
\n
\n
\n
\n
\n \n ',r.danmaku&&(t+='\n ',t+=s(l("Danmaku is loading")),t+="\n "),t+='\n ',t+=c.loading,t+='\n
\n\n
\n
\n
\n \n
\n
\n
',t+=s(l("Set danmaku color")),t+='
\n \n \n \n \n \n \n
\n
\n
',t+=s(l("Set danmaku type")),t+='
\n \n \n \n
\n
\n \n ',t+=c.send,t+='\n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n 0:00 /\n 0:00\n \n ',r.live&&(t+='\n ',t+=s(l("Live")),t+="\n "),t+='\n
\n
\n ',r.video.quality&&(t+='\n
\n \n
\n
\n ',d(r.video.quality,function(e,n){t+='\n
',t+=s(e.name),t+="
\n "}),t+="\n
\n
\n
\n "),t+="\n ",r.screenshot&&(t+='\n
\n
\n "),t+='\n
\n \n
\n ",r.subtitle&&(t+='\n
\n \n
\n "),t+='\n
\n \n
\n
\n
\n ',t+=s(l("Speed")),t+='\n
',t+=c.right,t+='
\n
\n
\n ',t+=s(l("Loop")),t+='\n
\n \n \n
\n
\n
\n ',t+=s(l("Show danmaku")),t+='\n
\n \n \n
\n
\n
\n ',t+=s(l("Unlimited danmaku")),t+='\n
\n \n \n
\n
\n
\n ',t+=s(l("Opacity for danmaku")),t+='\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n 0.5\n
\n
\n 0.75\n
\n
\n ',t+=s(l("Normal")),t+='\n
\n
\n 1.25\n
\n
\n 1.5\n
\n
\n 2\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
[x]
\n
\n Player version\n \n
\n
\n Player FPS\n \n
\n
\n Video type\n \n
\n
\n Video url\n \n
\n
\n Video resolution\n \n
\n
\n Video duration\n \n
\n ',r.danmaku&&(t+='\n
\n Danamku id\n \n
\n
\n Danamku api\n \n
\n
\n Danamku amount\n \n
\n '),t+='\n
\n
\n ',d(r.contextmenu,function(e,n){t+='\n
\n ',t+=s(l(e.text)),t+="\n
\n "}),t+='\n
\n
'}},function(e,t,n){},function(e,t,n){(function(e){var i=void 0!==e&&e||"undefined"!=typeof self&&self||window,a=Function.prototype.apply;function o(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new o(a.call(setTimeout,i,arguments),clearTimeout)},t.setInterval=function(){return new o(a.call(setInterval,i,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(i,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n(35),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(1))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var i,a,o,r,s,l=1,c={},u=!1,d=e.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(e);p=p&&p.setTimeout?p:e,"[object process]"==={}.toString.call(e.process)?i=function(e){t.nextTick(function(){m(e)})}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((o=new MessageChannel).port1.onmessage=function(e){m(e.data)},i=function(e){o.port2.postMessage(e)}):d&&"onreadystatechange"in d.createElement("script")?(a=d.documentElement,i=function(e){var t=d.createElement("script");t.onreadystatechange=function(){m(e),t.onreadystatechange=null,a.removeChild(t),t=null},a.appendChild(t)}):i=function(e){setTimeout(m,0,e)}:(r="setImmediate$"+Math.random()+"$",s=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(r)&&m(+t.data.slice(r.length))},e.addEventListener?e.addEventListener("message",s,!1):e.attachEvent("onmessage",s),i=function(t){e.postMessage(r+t,"*")}),p.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n=0)return;r[t]="set-cookie"===t?(r[t]?r[t]:[]).concat([n]):r[t]?r[t]+", "+n:n}}),r):r}},function(e,t,n){"use strict";var i=n(0);e.exports=i.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function a(e){var i=e;return t&&(n.setAttribute("href",i),i=n.href),n.setAttribute("href",i),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=a(window.location.href),function(t){var n=i.isString(t)?a(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},function(e,t,n){"use strict";var i=n(0);e.exports=i.isStandardBrowserEnv()?{write:function(e,t,n,a,o,r){var s=[];s.push(e+"="+encodeURIComponent(t)),i.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),i.isString(a)&&s.push("path="+a),i.isString(o)&&s.push("domain="+o),!0===r&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,n){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t,n){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,n){"use strict";var i=n(12);function a(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var n=this;e(function(e){n.reason||(n.reason=new i(e),t(n.reason))})}a.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},a.source=function(){var e;return{token:new a(function(t){e=t}),cancel:e}},e.exports=a},function(e,t,n){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},function(e,t,n){"use strict";(function(t){var n="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},i=Object.create(n),a=/["&'<>]/;i.$escape=function(e){return function(e){var t=""+e,n=a.exec(t);if(!n)return e;var i="",o=void 0,r=void 0,s=void 0;for(o=n.index,r=0;o0?[t,n,i]:[n,i]).map(function(e){return e<10?"0"+e:""+e}).join(":")},getElementViewLeft:function(e){var t=e.offsetLeft,n=e.offsetParent,i=document.body.scrollLeft+document.documentElement.scrollLeft;if(document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)for(;null!==n&&n!==e;)t+=n.offsetLeft,n=n.offsetParent;else for(;null!==n;)t+=n.offsetLeft,n=n.offsetParent;return t-i},getBoundingClientRectViewLeft:function(e){var t=window.scrollY||window.pageYOffset||document.body.scrollTop+(document.documentElement&&document.documentElement.scrollTop||0);if(e.getBoundingClientRect){if("number"!=typeof this.getBoundingClientRectViewLeft.offset){var n=document.createElement("div");n.style.cssText="position:absolute;top:0;left:0;",document.body.appendChild(n),this.getBoundingClientRectViewLeft.offset=-n.getBoundingClientRect().top-t,document.body.removeChild(n),n=null}var i=e.getBoundingClientRect(),a=this.getBoundingClientRectViewLeft.offset;return i.left+a}return this.getElementViewLeft(e)},getScrollPosition:function(){return{left:window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0,top:window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0}},setScrollPosition:function(e){var t=e.left,n=void 0===t?0:t,i=e.top,a=void 0===i?0:i;this.isFirefox?(document.documentElement.scrollLeft=n,document.documentElement.scrollTop=a):window.scrollTo(n,a)},isMobile:a,isFirefox:/firefox/i.test(window.navigator.userAgent),isChrome:/chrome/i.test(window.navigator.userAgent),storage:{set:function(e,t){localStorage.setItem(e,t)},get:function(e){return localStorage.getItem(e)}},cumulativeOffset:function(e){var t=0,n=0;do{t+=e.offsetTop||0,n+=e.offsetLeft||0,e=e.offsetParent}while(e);return{top:t,left:n}},nameMap:{dragStart:a?"touchstart":"mousedown",dragMove:a?"touchmove":"mousemove",dragEnd:a?"touchend":"mouseup"},color2Number:function(e){return"#"===e[0]&&(e=e.substr(1)),3===e.length&&(e="".concat(e[0]).concat(e[0]).concat(e[1]).concat(e[1]).concat(e[2]).concat(e[2])),parseInt(e,16)+0&16777215},number2Color:function(e){return"#"+("00000"+e.toString(16)).slice(-6)},number2Type:function(e){switch(e){case 0:return"right";case 1:return"top";case 2:return"bottom";default:return"right"}}},r=n(3),s=n.n(r),l={send:function(e){s.a.post(e.url,e.data).then(function(t){var n=t.data;n&&0===n.code?e.success&&e.success(n):e.error&&e.error(n&&n.msg)}).catch(function(t){console.error(t),e.error&&e.error()})},read:function(e){s.a.get(e.url).then(function(t){var n=t.data;n&&0===n.code?e.success&&e.success(n.data.map(function(e){return{time:e[0],type:e[1],color:e[2],author:e[3],text:e[4]}})):e.error&&e.error(n&&n.msg)}).catch(function(t){console.error(t),e.error&&e.error()})}};function c(e){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var u=function(e){var t={container:e.element||document.getElementsByClassName("dplayer")[0],live:!1,autoplay:!1,theme:"#b7daff",loop:!1,lang:(navigator.language||navigator.browserLanguage).toLowerCase(),screenshot:!1,hotkey:!0,preload:"metadata",volume:.7,apiBackend:l,video:{},contextmenu:[],mutex:!0};for(var n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(e[n]=t[n]);return e.video&&!e.video.type&&(e.video.type="auto"),"object"===c(e.danmaku)&&e.danmaku&&!e.danmaku.user&&(e.danmaku.user="DIYgod"),e.subtitle&&(!e.subtitle.type&&(e.subtitle.type="webvtt"),!e.subtitle.fontSize&&(e.subtitle.fontSize="20px"),!e.subtitle.bottom&&(e.subtitle.bottom="40px"),!e.subtitle.color&&(e.subtitle.color="#fff")),e.video.quality&&(e.video.url=e.video.quality[e.video.defaultQuality].url),e.lang&&(e.lang=e.lang.toLowerCase()),e.contextmenu=e.contextmenu.concat([{text:"Video info",click:function(e){e.infoPanel.triggle()}},{text:"About author",link:"https://diygod.me"},{text:"DPlayer v".concat("1.25.0"),link:"https://github.com/MoePlayer/DPlayer"}]),e};var d={"zh-cn":{"Danmaku is loading":"弹幕加载中",Top:"顶部",Bottom:"底部",Rolling:"滚动","Input danmaku, hit Enter":"输入弹幕,回车发送","About author":"关于作者","DPlayer feedback":"播放器意见反馈","About DPlayer":"关于 DPlayer 播放器",Loop:"洗脑循环",Speed:"速度","Opacity for danmaku":"弹幕透明度",Normal:"正常","Please input danmaku content!":"要输入弹幕内容啊喂!","Set danmaku color":"设置弹幕颜色","Set danmaku type":"设置弹幕类型","Show danmaku":"显示弹幕","Video load failed":"视频加载失败","Danmaku load failed":"弹幕加载失败","Danmaku send failed":"弹幕发送失败","Switching to":"正在切换至","Switched to":"已经切换至",quality:"画质",FF:"快进",REW:"快退","Unlimited danmaku":"海量弹幕","Send danmaku":"发送弹幕",Setting:"设置","Full screen":"全屏","Web full screen":"页面全屏",Send:"发送",Screenshot:"截图",s:"秒","Show subtitle":"显示字幕","Hide subtitle":"隐藏字幕",Volume:"音量",Live:"直播","Video info":"视频统计信息"},"zh-tw":{"Danmaku is loading":"彈幕載入中",Top:"頂部",Bottom:"底部",Rolling:"滾動","Input danmaku, hit Enter":"輸入彈幕,Enter 發送","About author":"關於作者","DPlayer feedback":"播放器意見回饋","About DPlayer":"關於 DPlayer 播放器",Loop:"循環播放",Speed:"速度","Opacity for danmaku":"彈幕透明度",Normal:"正常","Please input danmaku content!":"請輸入彈幕內容啊!","Set danmaku color":"設定彈幕顏色","Set danmaku type":"設定彈幕類型","Show danmaku":"顯示彈幕","Video load failed":"影片載入失敗","Danmaku load failed":"彈幕載入失敗","Danmaku send failed":"彈幕發送失敗","Switching to":"正在切換至","Switched to":"已經切換至",quality:"畫質",FF:"快進",REW:"快退","Unlimited danmaku":"巨量彈幕","Send danmaku":"發送彈幕",Setting:"設定","Full screen":"全螢幕","Web full screen":"頁面全螢幕",Send:"發送",Screenshot:"截圖",s:"秒","Show subtitle":"顯示字幕","Hide subtitle":"隱藏字幕",Volume:"音量",Live:"直播","Video info":"影片統計訊息"}},p=function(e){var t=this;this.lang=e,this.tran=function(e){return d[t.lang]&&d[t.lang][e]?d[t.lang][e]:e}},h=n(16),m=n.n(h),y=n(17),f=n.n(y),v=n(18),g=n.n(v),b=n(19),w=n.n(b),k=n(20),x=n.n(k),S=n(21),T=n.n(S),L=n(22),E=n.n(L),q=n(23),B=n.n(q),M=n(24),C=n.n(M),P=n(25),_=n.n(P),F=n(26),O=n.n(F),j=n(27),D=n.n(j),z=n(28),I=n.n(z),R=n(29),A=n.n(R),W=n(30),H=n.n(W),N=n(31),V=n.n(N),U={play:m.a,pause:f.a,volumeUp:g.a,volumeDown:w.a,volumeOff:x.a,full:T.a,fullWeb:E.a,setting:B.a,right:C.a,comment:_.a,commentOff:O.a,send:D.a,pallette:I.a,camera:A.a,subtitle:H.a,loading:V.a},X=n(32),$=n.n(X);function Q(e,t){for(var n=0;nparseFloat(t.time);)n.push(t),t=this.dan[++this.danIndex];this.draw(n)}window.requestAnimationFrame(function(){e.frame()})}},{key:"opacity",value:function(e){if(void 0!==e){for(var t=this.container.getElementsByClassName("dplayer-danmaku-item"),n=0;n').concat(e[a].text,""):r.innerHTML=e[a].text,r.style.opacity=t._opacity,r.style.color=o.number2Color(e[a].color),r.addEventListener("animationend",function(){t.container.removeChild(r)});var s=t._measure(e[a].text),l=void 0;switch(e[a].type){case"right":(l=c(r,e[a].type,s))>=0&&(r.style.width=s+1+"px",r.style.top=n*l+"px",r.style.transform="translateX(-".concat(i,"px)"));break;case"top":(l=c(r,e[a].type))>=0&&(r.style.top=n*l+"px");break;case"bottom":(l=c(r,e[a].type))>=0&&(r.style.bottom=n*l+"px");break;default:console.error("Can't handled danmaku type: ".concat(e[a].type))}l>=0&&(r.classList.add("dplayer-danmaku-move"),u.appendChild(r))},p=0;p=this.options.time()){this.danIndex=e;break}this.danIndex=this.dan.length}}},{key:"clear",value:function(){this.danTunnel={right:{},top:{},bottom:{}},this.danIndex=0,this.options.container.innerHTML="",this.events&&this.events.trigger("danmaku_clear")}},{key:"htmlEncode",value:function(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}},{key:"resize",value:function(){for(var e=this.container.offsetWidth,t=this.container.getElementsByClassName("dplayer-danmaku-item"),n=0;n0&&void 0!==arguments[0]?arguments[0]:"browser";switch(e){case"browser":return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;case"web":return this.player.container.classList.contains("dplayer-fulled")}}},{key:"request",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser",t="browser"===e?"web":"browser",n=this.isFullScreen(t);switch(n||(this.lastScrollPosition=o.getScrollPosition()),e){case"browser":this.player.container.requestFullscreen?this.player.container.requestFullscreen():this.player.container.mozRequestFullScreen?this.player.container.mozRequestFullScreen():this.player.container.webkitRequestFullscreen?this.player.container.webkitRequestFullscreen():this.player.video.webkitEnterFullscreen?this.player.video.webkitEnterFullscreen():this.player.video.webkitEnterFullScreen?this.player.video.webkitEnterFullScreen():this.player.container.msRequestFullscreen&&this.player.container.msRequestFullscreen();break;case"web":this.player.container.classList.add("dplayer-fulled"),document.body.classList.add("dplayer-web-fullscreen-fix"),this.player.events.trigger("webfullscreen")}n&&this.cancel(t)}},{key:"cancel",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser";switch(e){case"browser":document.cancelFullScreen?document.cancelFullScreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitCancelFullScreen?document.webkitCancelFullScreen():document.webkitCancelFullscreen?document.webkitCancelFullscreen():document.msCancelFullScreen?document.msCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen();break;case"web":this.player.container.classList.remove("dplayer-fulled"),document.body.classList.remove("dplayer-web-fullscreen-fix"),this.player.events.trigger("webfullscreen_cancel")}}},{key:"toggle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser";this.isFullScreen(e)?this.cancel(e):this.request(e)}}])&&te(t.prototype,n),i&&te(t,i),e}();function ie(e,t){for(var n=0;n".concat(e,"

")}).join("");e.container.innerHTML=a}e.events.trigger("subtitle_change")}}}},{key:"show",value:function(){this.container.classList.remove("dplayer-subtitle-hide"),this.events.trigger("subtitle_show")}},{key:"hide",value:function(){this.container.classList.add("dplayer-subtitle-hide"),this.events.trigger("subtitle_hide")}},{key:"toggle",value:function(){this.container.classList.contains("dplayer-subtitle-hide")?this.show():this.hide()}}])&&oe(t.prototype,n),i&&oe(t,i),e}();function se(e,t){for(var n=0;nt&&!e.player.video.paused&&(e.player.container.classList.remove("dplayer-loading"),i=!1),t=n)},100)}},{key:"initfpsChecker",value:function(){var e=this;window.requestAnimationFrame(function(){if(e.enablefpsChecker)if(e.initfpsChecker(),e.fpsStart){e.fpsIndex++;var t=new Date;t-e.fpsStart>1e3&&(e.player.infoPanel.fps(e.fpsIndex/(t-e.fpsStart)*1e3),e.fpsStart=new Date,e.fpsIndex=0)}else e.fpsStart=new Date,e.fpsIndex=0;else e.fpsStart=0,e.fpsIndex=0})}},{key:"initinfoChecker",value:function(){var e=this;this.infoChecker=setInterval(function(){e.enableinfoChecker&&e.player.infoPanel.update()},1e3)}},{key:"enable",value:function(e){this["enable".concat(e,"Checker")]=!0,"fps"===e&&this.initfpsChecker()}},{key:"disable",value:function(e){this["enable".concat(e,"Checker")]=!1}},{key:"destroy",value:function(){var e=this;this.types.map(function(t){return e["enable".concat(t,"Checker")]=!1,e["".concat(t,"Checker")]&&clearInterval(e["".concat(t,"Checker")]),t})}}])&&ce(t.prototype,n),i&&ce(t,i),e}();function de(e,t){for(var n=0;n'+e.player.options.highlight[n].text+"",e.player.template.playedBarWrap.insertBefore(i,e.player.template.playedBarTime)}}})}},{key:"initThumbnails",value:function(){var e=this;this.player.options.video.thumbnails&&(this.thumbnails=new me({container:this.player.template.barPreview,barWidth:this.player.template.barWrap.offsetWidth,url:this.player.options.video.thumbnails,events:this.player.events}),this.player.on("loadedmetadata",function(){e.thumbnails.resize(160,e.player.video.videoHeight/e.player.video.videoWidth*160,e.player.template.barWrap.offsetWidth)}))}},{key:"initPlayedBar",value:function(){var e=this,t=function(t){var n=((t.clientX||t.changedTouches[0].clientX)-o.getBoundingClientRectViewLeft(e.player.template.playedBarWrap))/e.player.template.playedBarWrap.clientWidth;n=Math.max(n,0),n=Math.min(n,1),e.player.bar.set("played",n,"width"),e.player.template.ptime.innerHTML=o.secondToTime(n*e.player.video.duration)},n=function n(i){document.removeEventListener(o.nameMap.dragEnd,n),document.removeEventListener(o.nameMap.dragMove,t);var a=((i.clientX||i.changedTouches[0].clientX)-o.getBoundingClientRectViewLeft(e.player.template.playedBarWrap))/e.player.template.playedBarWrap.clientWidth;a=Math.max(a,0),a=Math.min(a,1),e.player.bar.set("played",a,"width"),e.player.seek(e.player.bar.get("played")*e.player.video.duration),e.player.timer.enable("progress")};this.player.template.playedBarWrap.addEventListener(o.nameMap.dragStart,function(){e.player.timer.disable("progress"),document.addEventListener(o.nameMap.dragMove,t),document.addEventListener(o.nameMap.dragEnd,n)}),this.player.template.playedBarWrap.addEventListener(o.nameMap.dragMove,function(t){if(e.player.video.duration){var n=o.cumulativeOffset(e.player.template.playedBarWrap).left,i=(t.clientX||t.changedTouches[0].clientX)-n;if(i<0||i>e.player.template.playedBarWrap.offsetWidth)return;var a=e.player.video.duration*(i/e.player.template.playedBarWrap.offsetWidth);o.isMobile&&e.thumbnails&&e.thumbnails.show(),e.thumbnails&&e.thumbnails.move(i),e.player.template.playedBarTime.style.left="".concat(i-(a>=3600?25:20),"px"),e.player.template.playedBarTime.innerText=o.secondToTime(a),e.player.template.playedBarTime.classList.remove("hidden")}}),this.player.template.playedBarWrap.addEventListener(o.nameMap.dragEnd,function(){o.isMobile&&e.thumbnails&&e.thumbnails.hide()}),o.isMobile||(this.player.template.playedBarWrap.addEventListener("mouseenter",function(){e.player.video.duration&&(e.thumbnails&&e.thumbnails.show(),e.player.template.playedBarTime.classList.remove("hidden"))}),this.player.template.playedBarWrap.addEventListener("mouseleave",function(){e.player.video.duration&&(e.thumbnails&&e.thumbnails.hide(),e.player.template.playedBarTime.classList.add("hidden"))}))}},{key:"initFullButton",value:function(){var e=this;this.player.template.browserFullButton.addEventListener("click",function(){e.player.fullScreen.toggle("browser")}),this.player.template.webFullButton.addEventListener("click",function(){e.player.fullScreen.toggle("web")})}},{key:"initVolumeButton",value:function(){var e=this,t=function(t){var n=t||window.event,i=((n.clientX||n.changedTouches[0].clientX)-o.getBoundingClientRectViewLeft(e.player.template.volumeBarWrap)-5.5)/35;e.player.volume(i)},n=function n(){document.removeEventListener(o.nameMap.dragEnd,n),document.removeEventListener(o.nameMap.dragMove,t),e.player.template.volumeButton.classList.remove("dplayer-volume-active")};this.player.template.volumeBarWrapWrap.addEventListener("click",function(t){var n=t||window.event,i=((n.clientX||n.changedTouches[0].clientX)-o.getBoundingClientRectViewLeft(e.player.template.volumeBarWrap)-5.5)/35;e.player.volume(i)}),this.player.template.volumeBarWrapWrap.addEventListener(o.nameMap.dragStart,function(){document.addEventListener(o.nameMap.dragMove,t),document.addEventListener(o.nameMap.dragEnd,n),e.player.template.volumeButton.classList.add("dplayer-volume-active")}),this.player.template.volumeButtonIcon.addEventListener("click",function(){e.player.video.muted?(e.player.video.muted=!1,e.player.switchVolumeIcon(),e.player.bar.set("volume",e.player.volume(),"width")):(e.player.video.muted=!0,e.player.template.volumeIcon.innerHTML=U.volumeOff,e.player.bar.set("volume",0,"width"))})}},{key:"initQualityButton",value:function(){var e=this;this.player.options.video.quality&&this.player.template.qualityList.addEventListener("click",function(t){t.target.classList.contains("dplayer-quality-item")&&e.player.switchQuality(t.target.dataset.index)})}},{key:"initScreenshotButton",value:function(){var e=this;this.player.options.screenshot&&this.player.template.camareButton.addEventListener("click",function(){var t,n=document.createElement("canvas");n.width=e.player.video.videoWidth,n.height=e.player.video.videoHeight,n.getContext("2d").drawImage(e.player.video,0,0,n.width,n.height),n.toBlob(function(e){t=URL.createObjectURL(e);var n=document.createElement("a");n.href=t,n.download="DPlayer.png",n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(t)}),e.player.events.trigger("screenshot",t)})}},{key:"initSubtitleButton",value:function(){var e=this;this.player.options.subtitle&&(this.player.events.on("subtitle_show",function(){e.player.template.subtitleButton.dataset.balloon=e.player.tran("Hide subtitle"),e.player.template.subtitleButtonInner.style.opacity="",e.player.user.set("subtitle",1)}),this.player.events.on("subtitle_hide",function(){e.player.template.subtitleButton.dataset.balloon=e.player.tran("Show subtitle"),e.player.template.subtitleButtonInner.style.opacity="0.4",e.player.user.set("subtitle",0)}),this.player.template.subtitleButton.addEventListener("click",function(){e.player.subtitle.toggle()}))}},{key:"setAutoHide",value:function(){var e=this;this.show(),clearTimeout(this.autoHideTimer),this.autoHideTimer=setTimeout(function(){!e.player.video.played.length||e.player.paused||e.disableAutoHide||e.hide()},3e3)}},{key:"show",value:function(){this.player.container.classList.remove("dplayer-hide-controller")}},{key:"hide",value:function(){this.player.container.classList.add("dplayer-hide-controller"),this.player.setting.hide(),this.player.comment&&this.player.comment.hide()}},{key:"isShow",value:function(){return!this.player.container.classList.contains("dplayer-hide-controller")}},{key:"toggle",value:function(){this.isShow()?this.hide():this.show()}},{key:"destroy",value:function(){clearTimeout(this.autoHideTimer)}}])&&ye(t.prototype,n),i&&ye(t,i),e}();function ve(e,t){for(var n=0;n=n.width?(this.player.template.menu.style.right=n.width-e+"px",this.player.template.menu.style.left="initial"):(this.player.template.menu.style.left=e+"px",this.player.template.menu.style.right="initial"),t+this.player.template.menu.offsetHeight>=n.height?(this.player.template.menu.style.bottom=n.height-t+"px",this.player.template.menu.style.top="initial"):(this.player.template.menu.style.top=t+"px",this.player.template.menu.style.bottom="initial"),this.player.template.mask.classList.add("dplayer-mask-show"),this.shown=!0,this.player.events.trigger("contextmenu_show")}},{key:"hide",value:function(){this.player.template.mask.classList.remove("dplayer-mask-show"),this.player.template.menu.classList.remove("dplayer-menu-show"),this.shown=!1,this.player.events.trigger("contextmenu_hide")}}])&&xe(t.prototype,n),i&&xe(t,i),e}();function Te(e,t){for(var n=0;ne&&this.notice("".concat(this.tran("REW")," ").concat((this.video.currentTime-e).toFixed(0)," ").concat(this.tran("s"))),this.video.currentTime=e,this.danmaku&&this.danmaku.seek(),this.bar.set("played",e/this.video.duration,"width"),this.template.ptime.innerHTML=o.secondToTime(e)}},{key:"play",value:function(){var e=this;if(this.paused=!1,this.video.paused&&this.bezel.switch(U.play),this.template.playButton.innerHTML=U.pause,i.a.resolve(this.video.play()).catch(function(){e.pause()}).then(function(){}),this.timer.enable("loading"),this.container.classList.remove("dplayer-paused"),this.container.classList.add("dplayer-playing"),this.danmaku&&this.danmaku.play(),this.options.mutex)for(var t=0;t<_e.length;t++)this!==_e[t]&&_e[t].pause()}},{key:"pause",value:function(){this.paused=!0,this.container.classList.remove("dplayer-loading"),this.video.paused||this.bezel.switch(U.pause),this.template.playButton.innerHTML=U.play,this.video.pause(),this.timer.disable("loading"),this.container.classList.remove("dplayer-playing"),this.container.classList.add("dplayer-paused"),this.danmaku&&this.danmaku.pause()}},{key:"switchVolumeIcon",value:function(){this.volume()>=.95?this.template.volumeIcon.innerHTML=U.volumeUp:this.volume()>0?this.template.volumeIcon.innerHTML=U.volumeDown:this.template.volumeIcon.innerHTML=U.volumeOff}},{key:"volume",value:function(e,t,n){if(e=parseFloat(e),!isNaN(e)){e=Math.max(e,0),e=Math.min(e,1),this.bar.set("volume",e,"width");var i="".concat((100*e).toFixed(0),"%");this.template.volumeBarWrapWrap.dataset.balloon=i,t||this.user.set("volume",e),n||this.notice("".concat(this.tran("Volume")," ").concat((100*e).toFixed(0),"%")),this.video.volume=e,this.video.muted&&(this.video.muted=!1),this.switchVolumeIcon()}return this.video.volume}},{key:"toggle",value:function(){this.video.paused?this.play():this.pause()}},{key:"on",value:function(e,t){this.events.on(e,t)}},{key:"switchVideo",value:function(e,t){this.pause(),this.video.poster=e.pic?e.pic:"",this.video.src=e.url,this.initMSE(this.video,e.type||"auto"),t&&(this.template.danmakuLoading.style.display="block",this.bar.set("played",0,"width"),this.bar.set("loaded",0,"width"),this.template.ptime.innerHTML="00:00",this.template.danmaku.innerHTML="",this.danmaku&&this.danmaku.reload({id:t.id,address:t.api,token:t.token,maximum:t.maximum,addition:t.addition,user:t.user}))}},{key:"initMSE",value:function(e,t){var n=this;if(this.type=t,this.options.video.customType&&this.options.video.customType[t])"[object Function]"===Object.prototype.toString.call(this.options.video.customType[t])?this.options.video.customType[t](this.video,this):console.error("Illegal customType: ".concat(t));else switch("auto"===this.type&&(/m3u8(#|\?|$)/i.exec(e.src)?this.type="hls":/.flv(#|\?|$)/i.exec(e.src)?this.type="flv":/.mpd(#|\?|$)/i.exec(e.src)?this.type="dash":this.type="normal"),"hls"===this.type&&(e.canPlayType("application/x-mpegURL")||e.canPlayType("application/vnd.apple.mpegURL"))&&(this.type="normal"),this.type){case"hls":if(Hls)if(Hls.isSupported()){var i=new Hls;i.loadSource(e.src),i.attachMedia(e),this.events.on("destroy",function(){i.destroy()})}else this.notice("Error: Hls is not supported.");else this.notice("Error: Can't find Hls.");break;case"flv":if(flvjs)if(flvjs.isSupported()){var a=flvjs.createPlayer({type:"flv",url:e.src});a.attachMediaElement(e),a.load(),this.events.on("destroy",function(){a.unload(),a.detachMediaElement(),a.destroy()})}else this.notice("Error: flvjs is not supported.");else this.notice("Error: Can't find flvjs.");break;case"dash":dashjs?(dashjs.MediaPlayer().create().initialize(e,e.src,!1),this.events.on("destroy",function(){dashjs.MediaPlayer().reset()})):this.notice("Error: Can't find dashjs.");break;case"webtorrent":if(WebTorrent)if(WebTorrent.WEBRTC_SUPPORT){this.container.classList.add("dplayer-loading");var o=new WebTorrent,r=e.src;e.src="",e.preload="metadata",e.addEventListener("durationchange",function(){return n.container.classList.remove("dplayer-loading")},{once:!0}),o.add(r,function(e){e.files.find(function(e){return e.name.endsWith(".mp4")}).renderTo(n.video,{autoplay:n.options.autoplay})}),this.events.on("destroy",function(){o.remove(r),o.destroy()})}else this.notice("Error: Webtorrent is not supported.");else this.notice("Error: Can't find Webtorrent.")}}},{key:"initVideo",value:function(e,t){var n=this;this.initMSE(e,t),this.on("durationchange",function(){1!==e.duration&&e.duration!==1/0&&(n.template.dtime.innerHTML=o.secondToTime(e.duration))}),this.on("progress",function(){var t=e.buffered.length?e.buffered.end(e.buffered.length-1)/e.duration:0;n.bar.set("loaded",t,"width")}),this.on("error",function(){n.video.error&&n.tran&&n.notice&&"webtorrent"!==n.type&&n.notice(n.tran("Video load failed"),-1)}),this.on("ended",function(){n.bar.set("played",1,"width"),n.setting.loop?(n.seek(0),n.play()):n.pause(),n.danmaku&&(n.danmaku.danIndex=0)}),this.on("play",function(){n.paused&&n.play()}),this.on("pause",function(){n.paused||n.pause()}),this.on("timeupdate",function(){n.bar.set("played",n.video.currentTime/n.video.duration,"width");var e=o.secondToTime(n.video.currentTime);n.template.ptime.innerHTML!==e&&(n.template.ptime.innerHTML=e)});for(var i=function(t){e.addEventListener(n.events.videoEvents[t],function(){n.events.trigger(n.events.videoEvents[t])})},a=0;a1&&void 0!==arguments[1]?arguments[1]:2e3,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.8;this.template.notice.innerHTML=e,this.template.notice.style.opacity=i,this.noticeTime&&clearTimeout(this.noticeTime),this.events.trigger("notice_show",e),n>0&&(this.noticeTime=setTimeout(function(){t.template.notice.style.opacity=0,t.events.trigger("notice_hide")},n))}},{key:"resize",value:function(){this.danmaku&&this.danmaku.resize(),this.controller.thumbnails&&this.controller.thumbnails.resize(160,this.video.videoHeight/this.video.videoWidth*160,this.template.barWrap.offsetWidth),this.events.trigger("resize")}},{key:"speed",value:function(e){this.video.playbackRate=e}},{key:"destroy",value:function(){_e.splice(_e.indexOf(this),1),this.pause(),this.controller.destroy(),this.timer.destroy(),this.video.src="",this.container.innerHTML="",this.events.trigger("destroy")}}])&&Ce(t.prototype,n),a&&Ce(t,a),e}();console.log("\n".concat(" %c DPlayer v","1.25.0"," ").concat("ee9c4bf"," %c http://dplayer.js.org ","\n","\n"),"color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;");t.default=Fe}]).default}); +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("DPlayer",[],t):"object"==typeof exports?exports.DPlayer=t():e.DPlayer=t()}(window,(function(){return function(e){var t={};function a(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,a),o.l=!0,o.exports}return a.m=e,a.c=t,a.d=function(e,t,n){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(a.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)a.d(n,o,function(t){return e[t]}.bind(null,o));return n},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="/",a(a.s=57)}([function(e,t,a){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o=a(6),r=a(41),i=Object.prototype.toString;function l(e){return"[object Array]"===i.call(e)}function s(e){return null!==e&&"object"===n(e)}function d(e){return"[object Function]"===i.call(e)}function p(e,t){if(null!=e)if("object"!==n(e)&&(e=[e]),l(e))for(var a=0,o=e.length;a\n ",a&&(t+='\n \n '),t+="\n"}},function(e,t,a){e.exports=a(40)},function(e,t,a){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a=function(e,t){var a=e[1]||"",n=e[3];if(!n)return a;if(t&&"function"==typeof btoa){var o=(i=n,l=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),s="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(l),"/*# ".concat(s," */")),r=n.sources.map((function(e){return"/*# sourceURL=".concat(n.sourceRoot).concat(e," */")}));return[a].concat(r).concat([o]).join("\n")}var i,l,s;return[a].join("\n")}(t,e);return t[2]?"@media ".concat(t[2],"{").concat(a,"}"):a})).join("")},t.i=function(e,a){"string"==typeof e&&(e=[[null,e,""]]);for(var n={},o=0;o1)for(var a=1;a=200&&e<300}};s.headers={common:{Accept:"application/json, text/plain, */*"}},n.forEach(["delete","get","head"],(function(e){s.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){s.headers[e]=n.merge(r)})),e.exports=s}).call(this,a(5))},function(e,t,a){"use strict";var n=a(0),o=a(47),r=a(7),i=a(49),l=a(50),s=a(11);e.exports=function(e){return new Promise((function(t,d){var p=e.data,c=e.headers;n.isFormData(p)&&delete c["Content-Type"];var u=new XMLHttpRequest;if(e.auth){var y=e.auth.username||"",h=e.auth.password||"";c.Authorization="Basic "+btoa(y+":"+h)}if(u.open(e.method.toUpperCase(),r(e.url,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,u.onreadystatechange=function(){if(u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))){var a="getAllResponseHeaders"in u?i(u.getAllResponseHeaders()):null,n={data:e.responseType&&"text"!==e.responseType?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:a,config:e,request:u};o(t,d,n),u=null}},u.onabort=function(){u&&(d(s("Request aborted",e,"ECONNABORTED",u)),u=null)},u.onerror=function(){d(s("Network Error",e,null,u)),u=null},u.ontimeout=function(){d(s("timeout of "+e.timeout+"ms exceeded",e,"ECONNABORTED",u)),u=null},n.isStandardBrowserEnv()){var m=a(51),f=(e.withCredentials||l(e.url))&&e.xsrfCookieName?m.read(e.xsrfCookieName):void 0;f&&(c[e.xsrfHeaderName]=f)}if("setRequestHeader"in u&&n.forEach(c,(function(e,t){void 0===p&&"content-type"===t.toLowerCase()?delete c[t]:u.setRequestHeader(t,e)})),e.withCredentials&&(u.withCredentials=!0),e.responseType)try{u.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&u.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){u&&(u.abort(),d(e),u=null)})),void 0===p&&(p=null),u.send(p)}))}},function(e,t,a){"use strict";var n=a(48);e.exports=function(e,t,a,o,r){var i=new Error(e);return n(i,t,a,o,r)}},function(e,t,a){"use strict";var n=a(0);e.exports=function(e,t){t=t||{};var a={};return n.forEach(["url","method","params","data"],(function(e){void 0!==t[e]&&(a[e]=t[e])})),n.forEach(["headers","auth","proxy"],(function(o){n.isObject(t[o])?a[o]=n.deepMerge(e[o],t[o]):void 0!==t[o]?a[o]=t[o]:n.isObject(e[o])?a[o]=n.deepMerge(e[o]):void 0!==e[o]&&(a[o]=e[o])})),n.forEach(["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"],(function(n){void 0!==t[n]?a[n]=t[n]:void 0!==e[n]&&(a[n]=e[n])})),a}},function(e,t,a){"use strict";function n(e){this.message=e}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,e.exports=n},function(e,t,a){"use strict";e.exports=a(56)},function(e,t,a){"use strict";(function(e){var n=a(16);function o(e){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var r=setTimeout;function i(e){return Boolean(e&&void 0!==e.length)}function l(){}function s(e){if(!(this instanceof s))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],h(e,this)}function d(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,s._immediateFn((function(){var a=1===e._state?t.onFulfilled:t.onRejected;if(null!==a){var n;try{n=a(e._value)}catch(e){return void c(t.promise,e)}p(t.promise,n)}else(1===e._state?p:c)(t.promise,e._value)}))):e._deferreds.push(t)}function p(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"===o(t)||"function"==typeof t)){var a=t.then;if(t instanceof s)return e._state=3,e._value=t,void u(e);if("function"==typeof a)return void h((n=a,r=t,function(){n.apply(r,arguments)}),e)}e._state=1,e._value=t,u(e)}catch(t){c(e,t)}var n,r}function c(e,t){e._state=2,e._value=t,u(e)}function u(e){2===e._state&&0===e._deferreds.length&&s._immediateFn((function(){e._handled||s._unhandledRejectionFn(e._value)}));for(var t=0,a=e._deferreds.length;t\n \n '),t+='\n
\n
\n
\n
\n
\n \n ',i.danmaku&&(t+='\n ',t+=l(s("Danmaku is loading")),t+="\n "),t+='\n ',t+=d.loading,t+='\n
\n\n
\n
\n
\n \n
\n
\n
',t+=l(s("Set danmaku color")),t+='
\n \n \n \n \n \n \n
\n
\n
',t+=l(s("Set danmaku type")),t+='
\n \n \n \n
\n
\n \n ',t+=d.send,t+='\n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n 0:00 /\n 0:00\n \n ',i.live&&(t+='\n ',t+=l(s("Live")),t+="\n "),t+='\n
\n
\n ',i.video.quality&&(t+='\n
\n \n
\n
\n ',c(i.video.quality,(function(e,a){t+='\n
',t+=l(e.name),t+="
\n "})),t+="\n
\n
\n
\n "),t+="\n ",i.screenshot&&(t+='\n
\n
\n "),t+='\n
\n \n
\n ",i.subtitle&&(t+='\n
\n \n
\n "),t+='\n
\n \n
\n
\n
\n ',t+=l(s("Speed")),t+='\n
',t+=d.right,t+='
\n
\n
\n ',t+=l(s("Loop")),t+='\n
\n \n \n
\n
\n
\n ',t+=l(s("Show danmaku")),t+='\n
\n \n \n
\n
\n
\n ',t+=l(s("Unlimited danmaku")),t+='\n
\n \n \n
\n
\n
\n ',t+=l(s("Opacity for danmaku")),t+='\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n 0.5\n
\n
\n 0.75\n
\n
\n ',t+=l(s("Normal")),t+='\n
\n
\n 1.25\n
\n
\n 1.5\n
\n
\n 2\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
[x]
\n
\n Player version\n \n
\n
\n Player FPS\n \n
\n
\n Video type\n \n
\n
\n Video url\n \n
\n
\n Video resolution\n \n
\n
\n Video duration\n \n
\n ',i.danmaku&&(t+='\n
\n Danamku id\n \n
\n
\n Danamku api\n \n
\n
\n Danamku amount\n \n
\n '),t+='\n
\n
\n ',c(i.contextmenu,(function(e,a){t+='\n
\n ',t+=l(s(e.text)),t+="\n
\n "})),t+='\n
\n
'}},function(e,t,a){var n=a(35);"string"==typeof n&&(n=[[e.i,n,""]]);var o={insert:"head",singleton:!1};a(37)(n,o);n.locals&&(e.exports=n.locals)},function(e,t,a){(t=e.exports=a(3)(!1)).i(a(36),""),t.push([e.i,'@-webkit-keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}@keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}.dplayer{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:1}.dplayer *{box-sizing:content-box}.dplayer svg{width:100%;height:100%}.dplayer svg circle,.dplayer svg path{fill:#fff}.dplayer:-webkit-full-screen{width:100%;height:100%;background:#000;position:fixed;z-index:100000;left:0;top:0;margin:0;padding:0;transform:translate(0)}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{-webkit-animation:danmaku-center 6s linear;animation:danmaku-center 6s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{-webkit-animation:danmaku 8s linear;animation:danmaku 8s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer.dplayer-live .dplayer-bar-wrap,.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting,.dplayer.dplayer-live .dplayer-setting-loop,.dplayer.dplayer-live .dplayer-setting-speed,.dplayer.dplayer-live .dplayer-time,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,.dplayer.dplayer-no-danmaku .dplayer-danmaku{display:none}.dplayer.dplayer-arrow .dplayer-danmaku{font-size:18px}.dplayer.dplayer-arrow .dplayer-icon{margin:0 -3px}.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move{-webkit-animation-play-state:running;animation-play-state:running}@media (min-width:900px){.dplayer.dplayer-playing .dplayer-controller,.dplayer.dplayer-playing .dplayer-controller-mask{opacity:0}.dplayer.dplayer-playing:hover .dplayer-controller,.dplayer.dplayer-playing:hover .dplayer-controller-mask{opacity:1}}.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon{display:block}.dplayer.dplayer-loading .dplayer-danmaku,.dplayer.dplayer-loading .dplayer-danmaku-move,.dplayer.dplayer-paused .dplayer-danmaku,.dplayer.dplayer-paused .dplayer-danmaku-move{-webkit-animation-play-state:paused;animation-play-state:paused}.dplayer.dplayer-hide-controller{cursor:none}.dplayer.dplayer-hide-controller .dplayer-controller,.dplayer.dplayer-hide-controller .dplayer-controller-mask{opacity:0;transform:translateY(100%)}.dplayer.dplayer-show-controller .dplayer-controller,.dplayer.dplayer-show-controller .dplayer-controller-mask{opacity:1}.dplayer.dplayer-fulled{position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume{display:none}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:static;display:inline-block}.dplayer.dplayer-mobile .dplayer-bar-time{display:none}.dplayer-web-fullscreen-fix{position:fixed;top:0;left:0;margin:0;padding:0}[data-balloon]:before{display:none}[data-balloon]:after{padding:.3em .7em;background:rgba(17,17,17,.7)}[data-balloon][data-balloon-pos=up]:after{margin-bottom:0}.dplayer-bezel{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;height:52px;width:52px;padding:12px;box-sizing:border-box;background:rgba(0,0,0,.5);border-radius:50%;opacity:0;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition{-webkit-animation:bezel-hide .5s linear;animation:bezel-hide .5s linear}@-webkit-keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}@keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.dplayer-bezel .dplayer-danloading{position:absolute;top:50%;margin-top:-7px;width:100%;text-align:center;font-size:14px;line-height:14px;-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-bezel .diplayer-loading-icon{display:none;position:absolute;top:50%;left:50%;margin:-18px 0 0 -18px;height:36px;width:36px;pointer-events:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide{display:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot{-webkit-animation:diplayer-loading-dot-fade .8s ease infinite;animation:diplayer-loading-dot-fade .8s ease infinite;opacity:0;transform-origin:4px 4px}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7{-webkit-animation-delay:.7s;animation-delay:.7s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6{-webkit-animation-delay:.6s;animation-delay:.6s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5{-webkit-animation-delay:.5s;animation-delay:.5s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4{-webkit-animation-delay:.4s;animation-delay:.4s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3{-webkit-animation-delay:.3s;animation-delay:.3s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2{-webkit-animation-delay:.2s;animation-delay:.2s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1{-webkit-animation-delay:.1s;animation-delay:.1s}@-webkit-keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}@keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}.dplayer-controller-mask{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;height:98px;width:100%}.dplayer-controller,.dplayer-controller-mask{position:absolute;bottom:0;transition:all .3s ease}.dplayer-controller{left:0;right:0;height:41px;padding:0 20px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons{display:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box{display:block}.dplayer-controller .dplayer-bar-wrap{padding:5px 0;cursor:pointer;position:absolute;bottom:33px;width:calc(100% - 40px);height:3px}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight{display:block;width:8px;transform:translateX(-4px);top:4px;height:40%}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight{z-index:12;position:absolute;top:5px;width:6px;height:20%;border-radius:6px;background-color:#fff;text-align:center;transform:translateX(-3px);transition:all .2s ease-in-out}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text{display:block}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-preview,.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-time{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:rgba(0,0,0,.62);color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translateX(-50%)}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview{position:absolute;background:#fff;pointer-events:none;display:none;background-size:16000px 100%}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas{position:absolute;width:100%;height:100%;z-index:1;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time{position:absolute;left:0;top:-20px;border-radius:4px;padding:5px 7px;background-color:rgba(0,0,0,.62);color:#fff;font-size:12px;text-align:center;opacity:1;transition:opacity .1s ease-in-out;word-wrap:normal;word-break:normal;z-index:2;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-bar{position:relative;height:3px;width:100%;background:hsla(0,0%,100%,.2);cursor:pointer}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded{background:hsla(0,0%,100%,.4);transition:all .5s ease}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded,.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played{position:absolute;left:0;top:0;bottom:0;height:3px;will-change:width}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons{height:38px;position:absolute;bottom:0}.dplayer-controller .dplayer-icons.dplayer-comment-box{display:none;position:absolute;transition:all .3s ease-in-out;z-index:2;height:38px;bottom:0;left:20px;right:20px;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon{position:absolute;left:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon{position:absolute;right:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box{position:absolute;background:rgba(28,28,28,.9);bottom:41px;left:0;box-shadow:0 0 25px rgba(0,0,0,.3);border-radius:4px;padding:10px 10px 16px;font-size:14px;width:204px;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open{transform:scale(1)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type=radio]{display:none}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label{cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title{font-size:13px;color:#fff;line-height:30px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title{margin-bottom:6px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span{border-radius:4px 0 0 4px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span{border-radius:0 4px 4px 0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span{width:33%;padding:4px 6px;line-height:16px;display:inline-block;font-size:12px;color:#fff;border:1px solid #fff;margin-right:-1px;box-sizing:border-box;text-align:center;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked+span{background:#e4e4e6;color:#1c1c1c}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label{font-size:0;padding:6px;display:inline-block}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span{width:22px;height:22px;display:inline-block;border-radius:50%;box-sizing:border-box;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover{-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input{outline:none;border:none;padding:8px 31px;font-size:14px;line-height:18px;text-align:center;border-radius:4px;background:none;margin:0;height:100%;box-sizing:border-box;width:100%;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-webkit-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-moz-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input:-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear{display:none}.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-icons-right{right:20px}.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon{padding:8px}.dplayer-controller .dplayer-icons .dplayer-live-badge,.dplayer-controller .dplayer-icons .dplayer-time{line-height:38px;color:#eee;text-shadow:0 0 2px rgba(0,0,0,.5);vertical-align:middle;font-size:13px;cursor:default}.dplayer-controller .dplayer-icons .dplayer-live-dot{display:inline-block;width:6px;height:6px;vertical-align:4%;margin-right:5px;content:"";border-radius:6px}.dplayer-controller .dplayer-icons .dplayer-icon{width:40px;height:100%;border:none;background-color:transparent;outline:none;cursor:pointer;vertical-align:middle;box-sizing:border-box;display:inline-block}.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content{transition:all .2s ease-in-out;opacity:.8}.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content{opacity:1}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon{color:#fff;width:auto;line-height:22px;font-size:14px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon{padding:10px 9px 9px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon{padding-top:8.5px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon{width:43px}.dplayer-controller .dplayer-icons .dplayer-volume{position:relative;display:inline-block;cursor:pointer;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap{display:inline-block;margin:0 10px 0 -5px;vertical-align:middle;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar{position:relative;top:17px;width:0;height:3px;background:#aaa;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;will-change:width}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons .dplayer-setting,.dplayer-controller .dplayer-icons .dplayer-subtitle-btn{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box{position:absolute;right:0;bottom:50px;transform:scale(0);width:150px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 0;transition:all .3s ease-in-out;overflow:hidden;z-index:2}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div.dplayer-setting-origin-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow{width:70px;height:180px;text-align:center}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item{height:30px;padding:5px 10px;box-sizing:border-box;cursor:pointer;position:relative}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku{padding:5px 0}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label{padding:0 10px;display:inline}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap{padding:0 10px;box-sizing:border-box;display:none;vertical-align:middle;height:100%;width:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar{position:relative;top:8.5px;width:100%;height:3px;background:#fff;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;background:#aaa;will-change:width}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;background:#aaa}.dplayer-controller .dplayer-icons .dplayer-full{display:inline-block;height:100%;position:relative}.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon{display:block}.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:absolute;top:-30px;z-index:1;display:none}.dplayer-controller .dplayer-icons .dplayer-quality{position:relative;display:inline-block;height:100%;z-index:2}.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list,.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask{display:block}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask{display:none;position:absolute;bottom:38px;left:-18px;width:80px;padding-bottom:12px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list{display:none;font-size:12px;width:80px;border-radius:2px;background:rgba(28,28,28,.9);padding:5px 0;transition:all .3s ease-in-out;overflow:hidden;color:#fff;text-align:center}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item{height:25px;box-sizing:border-box;cursor:pointer;line-height:25px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-comment{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-label{color:#eee;font-size:13px;display:inline-block;vertical-align:middle;white-space:nowrap}.dplayer-controller .dplayer-icons .dplayer-toggle{width:32px;height:20px;text-align:center;font-size:0;vertical-align:middle;position:absolute;top:5px;right:10px}.dplayer-controller .dplayer-icons .dplayer-toggle input{max-height:0;max-width:0;display:none}.dplayer-controller .dplayer-icons .dplayer-toggle input+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 0 #dfdfdf;border:1px solid #dfdfdf;height:20px;width:32px;border-radius:10px;box-sizing:border-box;cursor:pointer;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after,.dplayer-controller .dplayer-icons .dplayer-toggle input+label:before{content:"";position:absolute;display:block;height:18px;width:18px;top:0;left:0;border-radius:15px;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label{border-color:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:before{width:30px;background:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:after{left:12px}.dplayer-danmaku{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff}.dplayer-danmaku .dplayer-danmaku-item{display:inline-block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;white-space:nowrap;text-shadow:.5px .5px .5px rgba(0,0,0,.5)}.dplayer-danmaku .dplayer-danmaku-item--demo{position:absolute;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-right{position:absolute;right:0;transform:translateX(100%)}.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{will-change:transform;-webkit-animation:danmaku 5s linear;animation:danmaku 5s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku{0%{transform:translateX(100%)}}@keyframes danmaku{0%{transform:translateX(100%)}}.dplayer-danmaku .dplayer-danmaku-bottom,.dplayer-danmaku .dplayer-danmaku-top{position:absolute;width:100%;text-align:center;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{will-change:visibility;-webkit-animation:danmaku-center 4s linear;animation:danmaku-center 4s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}@keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}.dplayer-logo{pointer-events:none;position:absolute;left:20px;top:20px;max-width:50px;max-height:50px}.dplayer-logo img{max-width:100%;max-height:100%;background:none}.dplayer-menu{position:absolute;width:170px;border-radius:2px;background:rgba(28,28,28,.85);padding:5px 0;overflow:hidden;z-index:3;display:none}.dplayer-menu.dplayer-menu-show{display:block}.dplayer-menu .dplayer-menu-item{height:30px;box-sizing:border-box;cursor:pointer}.dplayer-menu .dplayer-menu-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-menu .dplayer-menu-item a{padding:0 10px;line-height:30px;color:#eee;font-size:13px;display:inline-block;vertical-align:middle;width:100%;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-menu .dplayer-menu-item a:hover{text-decoration:none}.dplayer-notice{opacity:0;position:absolute;bottom:60px;left:20px;font-size:14px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 20px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none}.dplayer-subtitle{position:absolute;bottom:40px;width:90%;left:5%;text-align:center;color:#fff;text-shadow:.5px .5px .5px rgba(0,0,0,.5);font-size:20px}.dplayer-subtitle.dplayer-subtitle-hide{display:none}.dplayer-mask{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.dplayer-mask.dplayer-mask-show{display:block}.dplayer-video-wrap{position:relative;background:#000;font-size:0;width:100%;height:100%}.dplayer-video-wrap .dplayer-video{width:100%;height:100%;display:none}.dplayer-video-wrap .dplayer-video-current{display:block}.dplayer-video-wrap .dplayer-video-prepare{display:none}.dplayer-info-panel{position:absolute;top:10px;left:10px;width:400px;background:rgba(28,28,28,.8);padding:10px;color:#fff;font-size:12px;border-radius:2px}.dplayer-info-panel-hide{display:none}.dplayer-info-panel .dplayer-info-panel-close{cursor:pointer;position:absolute;right:10px;top:10px}.dplayer-info-panel .dplayer-info-panel-item>span{display:inline-block;vertical-align:middle;line-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-info-panel .dplayer-info-panel-item-title{width:100px;text-align:right;margin-right:10px}.dplayer-info-panel .dplayer-info-panel-item-data{width:260px}',""])},function(e,t,a){(e.exports=a(3)(!1)).push([e.i,':root{--balloon-color:rgba(16,16,16,0.95);--balloon-font-size:12px;--balloon-move:4px}button[aria-label][data-balloon-pos]{overflow:visible}[aria-label][data-balloon-pos]{position:relative;cursor:pointer}[aria-label][data-balloon-pos]:after{text-indent:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:400;font-style:normal;text-shadow:none;font-size:var(--balloon-font-size);background:var(--balloon-color);border-radius:2px;color:#fff;content:attr(aria-label);padding:.5em 1em;white-space:nowrap}[aria-label][data-balloon-pos]:after,[aria-label][data-balloon-pos]:before{opacity:0;pointer-events:none;transition:all .18s ease-out .18s;position:absolute;z-index:10}[aria-label][data-balloon-pos]:before{width:0;height:0;border:5px solid transparent;border-top:5px solid var(--balloon-color);content:""}[aria-label][data-balloon-pos]:hover:after,[aria-label][data-balloon-pos]:hover:before,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before,[aria-label][data-balloon-pos][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-visible]:before{opacity:1;pointer-events:none}[aria-label][data-balloon-pos].font-awesome:after{font-family:FontAwesome,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}[aria-label][data-balloon-pos][data-balloon-break]:after{white-space:pre}[aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after{white-space:pre-line;word-break:break-word}[aria-label][data-balloon-pos][data-balloon-blunt]:after,[aria-label][data-balloon-pos][data-balloon-blunt]:before{transition:none}[aria-label][data-balloon-pos][data-balloon-pos=up]:after{margin-bottom:10px}[aria-label][data-balloon-pos][data-balloon-pos=up]:after,[aria-label][data-balloon-pos][data-balloon-pos=up]:before{bottom:100%;left:50%;transform:translate(-50%,var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:before{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:after{bottom:100%;left:0;margin-bottom:10px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:before{bottom:100%;left:5px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up-left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up-left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up-left][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:after{bottom:100%;right:0;margin-bottom:10px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:before{bottom:100%;right:5px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up-right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up-right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up-right][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=down]:after{left:50%;margin-top:10px;top:100%;transform:translate(-50%,calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);left:50%;top:100%;transform:translate(-50%,calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:before{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:after{left:0;margin-top:10px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);left:5px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down-left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down-left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down-left][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:after{right:0;margin-top:10px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);right:5px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down-right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down-right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down-right][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=left]:after{margin-right:10px;right:100%;top:50%;transform:translate(var(--balloon-move),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:before{width:0;height:0;border:5px solid transparent;border-left:5px solid var(--balloon-color);right:100%;top:50%;transform:translate(var(--balloon-move),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:before{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:after{left:100%;margin-left:10px;top:50%;transform:translate(calc(var(--balloon-move)*-1),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:before{width:0;height:0;border:5px solid transparent;border-right:5px solid var(--balloon-color);left:100%;top:50%;transform:translate(calc(var(--balloon-move)*-1),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:before{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-length=small]:after{white-space:normal;width:80px}[aria-label][data-balloon-pos][data-balloon-length=medium]:after{white-space:normal;width:150px}[aria-label][data-balloon-pos][data-balloon-length=large]:after{white-space:normal;width:260px}[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{white-space:normal;width:380px}@media screen and (max-width:768px){[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{white-space:normal;width:90vw}}[aria-label][data-balloon-pos][data-balloon-length=fit]:after{white-space:normal;width:100%}',""])},function(e,t,a){"use strict";var n,o={},r=function(){return void 0===n&&(n=Boolean(window&&document&&document.all&&!window.atob)),n},i=function(){var e={};return function(t){if(void 0===e[t]){var a=document.querySelector(t);if(window.HTMLIFrameElement&&a instanceof window.HTMLIFrameElement)try{a=a.contentDocument.head}catch(e){a=null}e[t]=a}return e[t]}}();function l(e,t){for(var a=[],n={},o=0;o=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},a(39),t.setImmediate=setImmediate,t.clearImmediate=clearImmediate},function(e,t,a){(function(e,t){!function(e,a){"use strict";if(!e.setImmediate){var n,o,r,i,l,s=1,d={},p=!1,c=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,"[object process]"==={}.toString.call(e.process)?n=function(e){t.nextTick((function(){h(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,a=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=a,t}}()?e.MessageChannel?((r=new MessageChannel).port1.onmessage=function(e){h(e.data)},n=function(e){r.port2.postMessage(e)}):c&&"onreadystatechange"in c.createElement("script")?(o=c.documentElement,n=function(e){var t=c.createElement("script");t.onreadystatechange=function(){h(e),t.onreadystatechange=null,o.removeChild(t),t=null},o.appendChild(t)}):n=function(e){setTimeout(h,0,e)}:(i="setImmediate$"+Math.random()+"$",l=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&h(+t.data.slice(i.length))},e.addEventListener?e.addEventListener("message",l,!1):e.attachEvent("onmessage",l),n=function(t){e.postMessage(i+t,"*")}),u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),a=0;a=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([a]):i[t]?i[t]+", "+a:a}})),i):i}},function(e,t,a){"use strict";var n=a(0);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),a=document.createElement("a");function o(e){var n=e;return t&&(a.setAttribute("href",n),n=a.href),a.setAttribute("href",n),{href:a.href,protocol:a.protocol?a.protocol.replace(/:$/,""):"",host:a.host,search:a.search?a.search.replace(/^\?/,""):"",hash:a.hash?a.hash.replace(/^#/,""):"",hostname:a.hostname,port:a.port,pathname:"/"===a.pathname.charAt(0)?a.pathname:"/"+a.pathname}}return e=o(window.location.href),function(t){var a=n.isString(t)?o(t):t;return a.protocol===e.protocol&&a.host===e.host}}():function(){return!0}},function(e,t,a){"use strict";var n=a(0);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,a,o,r,i){var l=[];l.push(e+"="+encodeURIComponent(t)),n.isNumber(a)&&l.push("expires="+new Date(a).toGMTString()),n.isString(o)&&l.push("path="+o),n.isString(r)&&l.push("domain="+r),!0===i&&l.push("secure"),document.cookie=l.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(e,t,a){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},function(e,t,a){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},function(e,t,a){"use strict";var n=a(13);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var a=this;e((function(e){a.reason||(a.reason=new n(e),t(a.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.source=function(){var e;return{token:new o((function(t){e=t})),cancel:e}},e.exports=o},function(e,t,a){"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},function(e,t,a){"use strict";(function(t){var a="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},n=Object.create(a),o=/["&'<>]/;n.$escape=function(e){return function(e){var t=""+e,a=o.exec(t);if(!a)return e;var n="",r=void 0,i=void 0,l=void 0;for(r=a.index,i=0;r0?[t,a,n]:[a,n]).map((function(e){return e<10?"0"+e:""+e})).join(":")},getElementViewLeft:function(e){var t=e.offsetLeft,a=e.offsetParent,n=document.body.scrollLeft+document.documentElement.scrollLeft;if(document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)for(;null!==a&&a!==e;)t+=a.offsetLeft,a=a.offsetParent;else for(;null!==a;)t+=a.offsetLeft,a=a.offsetParent;return t-n},getBoundingClientRectViewLeft:function(e){var t=window.scrollY||window.pageYOffset||document.body.scrollTop+(document.documentElement&&document.documentElement.scrollTop||0);if(e.getBoundingClientRect){if("number"!=typeof this.getBoundingClientRectViewLeft.offset){var a=document.createElement("div");a.style.cssText="position:absolute;top:0;left:0;",document.body.appendChild(a),this.getBoundingClientRectViewLeft.offset=-a.getBoundingClientRect().top-t,document.body.removeChild(a),a=null}var n=e.getBoundingClientRect(),o=this.getBoundingClientRectViewLeft.offset;return n.left+o}return this.getElementViewLeft(e)},getScrollPosition:function(){return{left:window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0,top:window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0}},setScrollPosition:function(e){var t=e.left,a=void 0===t?0:t,n=e.top,o=void 0===n?0:n;this.isFirefox?(document.documentElement.scrollLeft=a,document.documentElement.scrollTop=o):window.scrollTo(a,o)},isMobile:o,isFirefox:/firefox/i.test(window.navigator.userAgent),isChrome:/chrome/i.test(window.navigator.userAgent),storage:{set:function(e,t){localStorage.setItem(e,t)},get:function(e){return localStorage.getItem(e)}},cumulativeOffset:function(e){var t=0,a=0;do{t+=e.offsetTop||0,a+=e.offsetLeft||0,e=e.offsetParent}while(e);return{top:t,left:a}},nameMap:{dragStart:o?"touchstart":"mousedown",dragMove:o?"touchmove":"mousemove",dragEnd:o?"touchend":"mouseup"},color2Number:function(e){return"#"===e[0]&&(e=e.substr(1)),3===e.length&&(e="".concat(e[0]).concat(e[0]).concat(e[1]).concat(e[1]).concat(e[2]).concat(e[2])),parseInt(e,16)+0&16777215},number2Color:function(e){return"#"+("00000"+e.toString(16)).slice(-6)},number2Type:function(e){switch(e){case 0:return"right";case 1:return"top";case 2:return"bottom";default:return"right"}}},i=a(2),l=a.n(i),s={send:function(e){l.a.post(e.url,e.data).then((function(t){var a=t.data;a&&0===a.code?e.success&&e.success(a):e.error&&e.error(a&&a.msg)})).catch((function(t){console.error(t),e.error&&e.error()}))},read:function(e){l.a.get(e.url).then((function(t){var a=t.data;a&&0===a.code?e.success&&e.success(a.data.map((function(e){return{time:e[0],type:e[1],color:e[2],author:e[3],text:e[4]}}))):e.error&&e.error(a&&a.msg)})).catch((function(t){console.error(t),e.error&&e.error()}))}};function d(e){return(d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var p=function(e){var t={container:e.element||document.getElementsByClassName("dplayer")[0],live:!1,autoplay:!1,theme:"#b7daff",loop:!1,lang:(navigator.language||navigator.browserLanguage).toLowerCase(),screenshot:!1,hotkey:!0,preload:"metadata",volume:.7,apiBackend:s,video:{},contextmenu:[],mutex:!0,pluginOptions:{hls:{},flvjs:{},dash:{},webtorrent:{}}};for(var a in t)t.hasOwnProperty(a)&&!e.hasOwnProperty(a)&&(e[a]=t[a]);return e.video&&!e.video.type&&(e.video.type="auto"),"object"===d(e.danmaku)&&e.danmaku&&!e.danmaku.user&&(e.danmaku.user="DIYgod"),e.subtitle&&(!e.subtitle.type&&(e.subtitle.type="webvtt"),!e.subtitle.fontSize&&(e.subtitle.fontSize="20px"),!e.subtitle.bottom&&(e.subtitle.bottom="40px"),!e.subtitle.color&&(e.subtitle.color="#fff")),e.video.quality&&(e.video.url=e.video.quality[e.video.defaultQuality].url),e.lang&&(e.lang=e.lang.toLowerCase()),e.contextmenu=e.contextmenu.concat([{text:"Video info",click:function(e){e.infoPanel.triggle()}},{text:"About author",link:"https://diygod.me"},{text:"DPlayer v".concat("1.25.0"),link:"https://github.com/MoePlayer/DPlayer"}]),e};var c={"zh-cn":{"Danmaku is loading":"弹幕加载中",Top:"顶部",Bottom:"底部",Rolling:"滚动","Input danmaku, hit Enter":"输入弹幕,回车发送","About author":"关于作者","DPlayer feedback":"播放器意见反馈","About DPlayer":"关于 DPlayer 播放器",Loop:"洗脑循环",Speed:"速度","Opacity for danmaku":"弹幕透明度",Normal:"正常","Please input danmaku content!":"要输入弹幕内容啊喂!","Set danmaku color":"设置弹幕颜色","Set danmaku type":"设置弹幕类型","Show danmaku":"显示弹幕","Video load failed":"视频加载失败","Danmaku load failed":"弹幕加载失败","Danmaku send failed":"弹幕发送失败","Switching to":"正在切换至","Switched to":"已经切换至",quality:"画质",FF:"快进",REW:"快退","Unlimited danmaku":"海量弹幕","Send danmaku":"发送弹幕",Setting:"设置","Full screen":"全屏","Web full screen":"页面全屏",Send:"发送",Screenshot:"截图",s:"秒","Show subtitle":"显示字幕","Hide subtitle":"隐藏字幕",Volume:"音量",Live:"直播","Video info":"视频统计信息"},"zh-tw":{"Danmaku is loading":"彈幕載入中",Top:"頂部",Bottom:"底部",Rolling:"滾動","Input danmaku, hit Enter":"輸入彈幕,Enter 發送","About author":"關於作者","DPlayer feedback":"播放器意見回饋","About DPlayer":"關於 DPlayer 播放器",Loop:"循環播放",Speed:"速度","Opacity for danmaku":"彈幕透明度",Normal:"正常","Please input danmaku content!":"請輸入彈幕內容啊!","Set danmaku color":"設定彈幕顏色","Set danmaku type":"設定彈幕類型","Show danmaku":"顯示彈幕","Video load failed":"影片載入失敗","Danmaku load failed":"彈幕載入失敗","Danmaku send failed":"彈幕發送失敗","Switching to":"正在切換至","Switched to":"已經切換至",quality:"畫質",FF:"快進",REW:"快退","Unlimited danmaku":"巨量彈幕","Send danmaku":"發送彈幕",Setting:"設定","Full screen":"全螢幕","Web full screen":"頁面全螢幕",Send:"發送",Screenshot:"截圖",s:"秒","Show subtitle":"顯示字幕","Hide subtitle":"隱藏字幕",Volume:"音量",Live:"直播","Video info":"影片統計訊息"}},u=function(e){var t=this;this.lang=e,this.tran=function(e){return c[t.lang]&&c[t.lang][e]?c[t.lang][e]:e}},y=a(17),h=a.n(y),m=a(18),f=a.n(m),v=a(19),b=a.n(v),g=a(20),w=a.n(g),x=a(21),k=a.n(x),S=a(22),T=a.n(S),L=a(23),E=a.n(L),q=a(24),B=a.n(q),M=a(25),z=a.n(M),C=a(26),O=a.n(C),F=a(27),A=a.n(F),P=a(28),j=a.n(P),Y=a(29),_=a.n(Y),D=a(30),R=a.n(D),I=a(31),W=a.n(I),H=a(32),N=a.n(H),U={play:h.a,pause:f.a,volumeUp:b.a,volumeDown:w.a,volumeOff:k.a,full:T.a,fullWeb:E.a,setting:B.a,right:z.a,comment:O.a,commentOff:A.a,send:j.a,pallette:_.a,camera:R.a,subtitle:W.a,loading:N.a},V=a(33),X=a.n(V);function Q(e,t){for(var a=0;aparseFloat(t.time);)a.push(t),t=this.dan[++this.danIndex];this.draw(a)}window.requestAnimationFrame((function(){e.frame()}))}},{key:"opacity",value:function(e){if(void 0!==e){for(var t=this.container.getElementsByClassName("dplayer-danmaku-item"),a=0;a').concat(e[o].text,""):i.innerHTML=e[o].text,i.style.opacity=t._opacity,i.style.color=r.number2Color(e[o].color),i.addEventListener("animationend",(function(){t.container.removeChild(i)}));var l=t._measure(e[o].text),s=void 0;switch(e[o].type){case"right":(s=d(i,e[o].type,l))>=0&&(i.style.width=l+1+"px",i.style.top=a*s+"px",i.style.transform="translateX(-".concat(n,"px)"));break;case"top":(s=d(i,e[o].type))>=0&&(i.style.top=a*s+"px");break;case"bottom":(s=d(i,e[o].type))>=0&&(i.style.bottom=a*s+"px");break;default:console.error("Can't handled danmaku type: ".concat(e[o].type))}s>=0&&(i.classList.add("dplayer-danmaku-move"),p.appendChild(i))},u=0;u=this.options.time()){this.danIndex=e;break}this.danIndex=this.dan.length}}},{key:"clear",value:function(){this.danTunnel={right:{},top:{},bottom:{}},this.danIndex=0,this.options.container.innerHTML="",this.events&&this.events.trigger("danmaku_clear")}},{key:"htmlEncode",value:function(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")}},{key:"resize",value:function(){for(var e=this.container.offsetWidth,t=this.container.getElementsByClassName("dplayer-danmaku-item"),a=0;a0&&void 0!==arguments[0]?arguments[0]:"browser";switch(e){case"browser":return document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;case"web":return this.player.container.classList.contains("dplayer-fulled")}}},{key:"request",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser",t="browser"===e?"web":"browser",a=this.isFullScreen(t);switch(a||(this.lastScrollPosition=r.getScrollPosition()),e){case"browser":this.player.container.requestFullscreen?this.player.container.requestFullscreen():this.player.container.mozRequestFullScreen?this.player.container.mozRequestFullScreen():this.player.container.webkitRequestFullscreen?this.player.container.webkitRequestFullscreen():this.player.video.webkitEnterFullscreen?this.player.video.webkitEnterFullscreen():this.player.video.webkitEnterFullScreen?this.player.video.webkitEnterFullScreen():this.player.container.msRequestFullscreen&&this.player.container.msRequestFullscreen();break;case"web":this.player.container.classList.add("dplayer-fulled"),document.body.classList.add("dplayer-web-fullscreen-fix"),this.player.events.trigger("webfullscreen")}a&&this.cancel(t)}},{key:"cancel",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser";switch(e){case"browser":document.cancelFullScreen?document.cancelFullScreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitCancelFullScreen?document.webkitCancelFullScreen():document.webkitCancelFullscreen?document.webkitCancelFullscreen():document.msCancelFullScreen?document.msCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen();break;case"web":this.player.container.classList.remove("dplayer-fulled"),document.body.classList.remove("dplayer-web-fullscreen-fix"),this.player.events.trigger("webfullscreen_cancel")}}},{key:"toggle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"browser";this.isFullScreen(e)?this.cancel(e):this.request(e)}}])&&te(t.prototype,a),n&&te(t,n),e}();function ne(e,t){for(var a=0;a".concat(e,"

")})).join("");e.container.innerHTML=o}e.events.trigger("subtitle_change")}}}},{key:"show",value:function(){this.container.classList.remove("dplayer-subtitle-hide"),this.events.trigger("subtitle_show")}},{key:"hide",value:function(){this.container.classList.add("dplayer-subtitle-hide"),this.events.trigger("subtitle_hide")}},{key:"toggle",value:function(){this.container.classList.contains("dplayer-subtitle-hide")?this.show():this.hide()}}])&&re(t.prototype,a),n&&re(t,n),e}();function le(e,t){for(var a=0;at&&!e.player.video.paused&&(e.player.container.classList.remove("dplayer-loading"),n=!1),t=a)}),100)}},{key:"initfpsChecker",value:function(){var e=this;window.requestAnimationFrame((function(){if(e.enablefpsChecker)if(e.initfpsChecker(),e.fpsStart){e.fpsIndex++;var t=new Date;t-e.fpsStart>1e3&&(e.player.infoPanel.fps(e.fpsIndex/(t-e.fpsStart)*1e3),e.fpsStart=new Date,e.fpsIndex=0)}else e.fpsStart=new Date,e.fpsIndex=0;else e.fpsStart=0,e.fpsIndex=0}))}},{key:"initinfoChecker",value:function(){var e=this;this.infoChecker=setInterval((function(){e.enableinfoChecker&&e.player.infoPanel.update()}),1e3)}},{key:"enable",value:function(e){this["enable".concat(e,"Checker")]=!0,"fps"===e&&this.initfpsChecker()}},{key:"disable",value:function(e){this["enable".concat(e,"Checker")]=!1}},{key:"destroy",value:function(){var e=this;this.types.map((function(t){return e["enable".concat(t,"Checker")]=!1,e["".concat(t,"Checker")]&&clearInterval(e["".concat(t,"Checker")]),t}))}}])&&de(t.prototype,a),n&&de(t,n),e}();function ce(e,t){for(var a=0;a'+e.player.options.highlight[a].text+"",e.player.template.playedBarWrap.insertBefore(n,e.player.template.playedBarTime)}}}))}},{key:"initThumbnails",value:function(){var e=this;this.player.options.video.thumbnails&&(this.thumbnails=new he({container:this.player.template.barPreview,barWidth:this.player.template.barWrap.offsetWidth,url:this.player.options.video.thumbnails,events:this.player.events}),this.player.on("loadedmetadata",(function(){e.thumbnails.resize(160,e.player.video.videoHeight/e.player.video.videoWidth*160,e.player.template.barWrap.offsetWidth)})))}},{key:"initPlayedBar",value:function(){var e=this,t=function(t){var a=((t.clientX||t.changedTouches[0].clientX)-r.getBoundingClientRectViewLeft(e.player.template.playedBarWrap))/e.player.template.playedBarWrap.clientWidth;a=Math.max(a,0),a=Math.min(a,1),e.player.bar.set("played",a,"width"),e.player.template.ptime.innerHTML=r.secondToTime(a*e.player.video.duration)},a=function a(n){document.removeEventListener(r.nameMap.dragEnd,a),document.removeEventListener(r.nameMap.dragMove,t);var o=((n.clientX||n.changedTouches[0].clientX)-r.getBoundingClientRectViewLeft(e.player.template.playedBarWrap))/e.player.template.playedBarWrap.clientWidth;o=Math.max(o,0),o=Math.min(o,1),e.player.bar.set("played",o,"width"),e.player.seek(e.player.bar.get("played")*e.player.video.duration),e.player.timer.enable("progress")};this.player.template.playedBarWrap.addEventListener(r.nameMap.dragStart,(function(){e.player.timer.disable("progress"),document.addEventListener(r.nameMap.dragMove,t),document.addEventListener(r.nameMap.dragEnd,a)})),this.player.template.playedBarWrap.addEventListener(r.nameMap.dragMove,(function(t){if(e.player.video.duration){var a=r.cumulativeOffset(e.player.template.playedBarWrap).left,n=(t.clientX||t.changedTouches[0].clientX)-a;if(n<0||n>e.player.template.playedBarWrap.offsetWidth)return;var o=e.player.video.duration*(n/e.player.template.playedBarWrap.offsetWidth);r.isMobile&&e.thumbnails&&e.thumbnails.show(),e.thumbnails&&e.thumbnails.move(n),e.player.template.playedBarTime.style.left="".concat(n-(o>=3600?25:20),"px"),e.player.template.playedBarTime.innerText=r.secondToTime(o),e.player.template.playedBarTime.classList.remove("hidden")}})),this.player.template.playedBarWrap.addEventListener(r.nameMap.dragEnd,(function(){r.isMobile&&e.thumbnails&&e.thumbnails.hide()})),r.isMobile||(this.player.template.playedBarWrap.addEventListener("mouseenter",(function(){e.player.video.duration&&(e.thumbnails&&e.thumbnails.show(),e.player.template.playedBarTime.classList.remove("hidden"))})),this.player.template.playedBarWrap.addEventListener("mouseleave",(function(){e.player.video.duration&&(e.thumbnails&&e.thumbnails.hide(),e.player.template.playedBarTime.classList.add("hidden"))})))}},{key:"initFullButton",value:function(){var e=this;this.player.template.browserFullButton.addEventListener("click",(function(){e.player.fullScreen.toggle("browser")})),this.player.template.webFullButton.addEventListener("click",(function(){e.player.fullScreen.toggle("web")}))}},{key:"initVolumeButton",value:function(){var e=this,t=function(t){var a=t||window.event,n=((a.clientX||a.changedTouches[0].clientX)-r.getBoundingClientRectViewLeft(e.player.template.volumeBarWrap)-5.5)/35;e.player.volume(n)},a=function a(){document.removeEventListener(r.nameMap.dragEnd,a),document.removeEventListener(r.nameMap.dragMove,t),e.player.template.volumeButton.classList.remove("dplayer-volume-active")};this.player.template.volumeBarWrapWrap.addEventListener("click",(function(t){var a=t||window.event,n=((a.clientX||a.changedTouches[0].clientX)-r.getBoundingClientRectViewLeft(e.player.template.volumeBarWrap)-5.5)/35;e.player.volume(n)})),this.player.template.volumeBarWrapWrap.addEventListener(r.nameMap.dragStart,(function(){document.addEventListener(r.nameMap.dragMove,t),document.addEventListener(r.nameMap.dragEnd,a),e.player.template.volumeButton.classList.add("dplayer-volume-active")})),this.player.template.volumeButtonIcon.addEventListener("click",(function(){e.player.video.muted?(e.player.video.muted=!1,e.player.switchVolumeIcon(),e.player.bar.set("volume",e.player.volume(),"width")):(e.player.video.muted=!0,e.player.template.volumeIcon.innerHTML=U.volumeOff,e.player.bar.set("volume",0,"width"))}))}},{key:"initQualityButton",value:function(){var e=this;this.player.options.video.quality&&this.player.template.qualityList.addEventListener("click",(function(t){t.target.classList.contains("dplayer-quality-item")&&e.player.switchQuality(t.target.dataset.index)}))}},{key:"initScreenshotButton",value:function(){var e=this;this.player.options.screenshot&&this.player.template.camareButton.addEventListener("click",(function(){var t,a=document.createElement("canvas");a.width=e.player.video.videoWidth,a.height=e.player.video.videoHeight,a.getContext("2d").drawImage(e.player.video,0,0,a.width,a.height),a.toBlob((function(e){t=URL.createObjectURL(e);var a=document.createElement("a");a.href=t,a.download="DPlayer.png",a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(t)})),e.player.events.trigger("screenshot",t)}))}},{key:"initSubtitleButton",value:function(){var e=this;this.player.options.subtitle&&(this.player.events.on("subtitle_show",(function(){e.player.template.subtitleButton.dataset.balloon=e.player.tran("Hide subtitle"),e.player.template.subtitleButtonInner.style.opacity="",e.player.user.set("subtitle",1)})),this.player.events.on("subtitle_hide",(function(){e.player.template.subtitleButton.dataset.balloon=e.player.tran("Show subtitle"),e.player.template.subtitleButtonInner.style.opacity="0.4",e.player.user.set("subtitle",0)})),this.player.template.subtitleButton.addEventListener("click",(function(){e.player.subtitle.toggle()})))}},{key:"setAutoHide",value:function(){var e=this;this.show(),clearTimeout(this.autoHideTimer),this.autoHideTimer=setTimeout((function(){!e.player.video.played.length||e.player.paused||e.disableAutoHide||e.hide()}),3e3)}},{key:"show",value:function(){this.player.container.classList.remove("dplayer-hide-controller")}},{key:"hide",value:function(){this.player.container.classList.add("dplayer-hide-controller"),this.player.setting.hide(),this.player.comment&&this.player.comment.hide()}},{key:"isShow",value:function(){return!this.player.container.classList.contains("dplayer-hide-controller")}},{key:"toggle",value:function(){this.isShow()?this.hide():this.show()}},{key:"destroy",value:function(){clearTimeout(this.autoHideTimer)}}])&&me(t.prototype,a),n&&me(t,n),e}();function ve(e,t){for(var a=0;a=a.width?(this.player.template.menu.style.right=a.width-e+"px",this.player.template.menu.style.left="initial"):(this.player.template.menu.style.left=e+"px",this.player.template.menu.style.right="initial"),t+this.player.template.menu.offsetHeight>=a.height?(this.player.template.menu.style.bottom=a.height-t+"px",this.player.template.menu.style.top="initial"):(this.player.template.menu.style.top=t+"px",this.player.template.menu.style.bottom="initial"),this.player.template.mask.classList.add("dplayer-mask-show"),this.shown=!0,this.player.events.trigger("contextmenu_show")}},{key:"hide",value:function(){this.player.template.mask.classList.remove("dplayer-mask-show"),this.player.template.menu.classList.remove("dplayer-menu-show"),this.shown=!1,this.player.events.trigger("contextmenu_hide")}}])&&ke(t.prototype,a),n&&ke(t,n),e}();function Te(e,t){for(var a=0;ae&&this.notice("".concat(this.tran("REW")," ").concat((this.video.currentTime-e).toFixed(0)," ").concat(this.tran("s"))),this.video.currentTime=e,this.danmaku&&this.danmaku.seek(),this.bar.set("played",e/this.video.duration,"width"),this.template.ptime.innerHTML=r.secondToTime(e)}},{key:"play",value:function(){var e=this;if(this.paused=!1,this.video.paused&&this.bezel.switch(U.play),this.template.playButton.innerHTML=U.pause,n.a.resolve(this.video.play()).catch((function(){e.pause()})).then((function(){})),this.timer.enable("loading"),this.container.classList.remove("dplayer-paused"),this.container.classList.add("dplayer-playing"),this.danmaku&&this.danmaku.play(),this.options.mutex)for(var t=0;t=.95?this.template.volumeIcon.innerHTML=U.volumeUp:this.volume()>0?this.template.volumeIcon.innerHTML=U.volumeDown:this.template.volumeIcon.innerHTML=U.volumeOff}},{key:"volume",value:function(e,t,a){if(e=parseFloat(e),!isNaN(e)){e=Math.max(e,0),e=Math.min(e,1),this.bar.set("volume",e,"width");var n="".concat((100*e).toFixed(0),"%");this.template.volumeBarWrapWrap.dataset.balloon=n,t||this.user.set("volume",e),a||this.notice("".concat(this.tran("Volume")," ").concat((100*e).toFixed(0),"%")),this.video.volume=e,this.video.muted&&(this.video.muted=!1),this.switchVolumeIcon()}return this.video.volume}},{key:"toggle",value:function(){this.video.paused?this.play():this.pause()}},{key:"on",value:function(e,t){this.events.on(e,t)}},{key:"switchVideo",value:function(e,t){this.pause(),this.video.poster=e.pic?e.pic:"",this.video.src=e.url,this.initMSE(this.video,e.type||"auto"),t&&(this.template.danmakuLoading.style.display="block",this.bar.set("played",0,"width"),this.bar.set("loaded",0,"width"),this.template.ptime.innerHTML="00:00",this.template.danmaku.innerHTML="",this.danmaku&&this.danmaku.reload({id:t.id,address:t.api,token:t.token,maximum:t.maximum,addition:t.addition,user:t.user}))}},{key:"initMSE",value:function(e,t){var a=this;if(this.type=t,this.options.video.customType&&this.options.video.customType[t])"[object Function]"===Object.prototype.toString.call(this.options.video.customType[t])?this.options.video.customType[t](this.video,this):console.error("Illegal customType: ".concat(t));else switch("auto"===this.type&&(/m3u8(#|\?|$)/i.exec(e.src)?this.type="hls":/.flv(#|\?|$)/i.exec(e.src)?this.type="flv":/.mpd(#|\?|$)/i.exec(e.src)?this.type="dash":this.type="normal"),"hls"===this.type&&(e.canPlayType("application/x-mpegURL")||e.canPlayType("application/vnd.apple.mpegURL"))&&(this.type="normal"),this.type){case"hls":if(Hls)if(Hls.isSupported()){var n=this.options.pluginOptions.hls,o=new Hls(n);this.plugins.hls=o,o.loadSource(e.src),o.attachMedia(e),this.events.on("destroy",(function(){o.destroy(),delete a.plugins.hls}))}else this.notice("Error: Hls is not supported.");else this.notice("Error: Can't find Hls.");break;case"flv":if(flvjs)if(flvjs.isSupported()){var r=Object.assign(this.options.pluginOptions.flvjs,{type:"flv",url:e.src}),i=flvjs.createPlayer(r);this.plugins.flvjs=i,i.attachMediaElement(e),i.load(),this.events.on("destroy",(function(){i.unload(),i.detachMediaElement(),i.destroy(),delete a.plugins.flvjs}))}else this.notice("Error: flvjs is not supported.");else this.notice("Error: Can't find flvjs.");break;case"dash":if(dashjs){var l=dashjs.MediaPlayer().create().initialize(e,e.src,!1),s=this.options.pluginOptions.dash;l.updateSettings(s),this.plugins.dash=l,this.events.on("destroy",(function(){dashjs.MediaPlayer().reset(),delete a.plugins.dash}))}else this.notice("Error: Can't find dashjs.");break;case"webtorrent":if(WebTorrent)if(WebTorrent.WEBRTC_SUPPORT){this.container.classList.add("dplayer-loading");var d=this.options.pluginOptions.webtorrent,p=new WebTorrent(d);this.plugins.webtorrent=p;var c=e.src;e.src="",e.preload="metadata",e.addEventListener("durationchange",(function(){return a.container.classList.remove("dplayer-loading")}),{once:!0}),p.add(c,(function(e){e.files.find((function(e){return e.name.endsWith(".mp4")})).renderTo(a.video,{autoplay:a.options.autoplay})})),this.events.on("destroy",(function(){p.remove(c),p.destroy(),delete a.plugins.webtorrent}))}else this.notice("Error: Webtorrent is not supported.");else this.notice("Error: Can't find Webtorrent.")}}},{key:"initVideo",value:function(e,t){var a=this;this.initMSE(e,t),this.on("durationchange",(function(){1!==e.duration&&e.duration!==1/0&&(a.template.dtime.innerHTML=r.secondToTime(e.duration))})),this.on("progress",(function(){var t=e.buffered.length?e.buffered.end(e.buffered.length-1)/e.duration:0;a.bar.set("loaded",t,"width")})),this.on("error",(function(){a.video.error&&a.tran&&a.notice&&"webtorrent"!==a.type&&a.notice(a.tran("Video load failed"),-1)})),this.on("ended",(function(){a.bar.set("played",1,"width"),a.setting.loop?(a.seek(0),a.play()):a.pause(),a.danmaku&&(a.danmaku.danIndex=0)})),this.on("play",(function(){a.paused&&a.play()})),this.on("pause",(function(){a.paused||a.pause()})),this.on("timeupdate",(function(){a.bar.set("played",a.video.currentTime/a.video.duration,"width");var e=r.secondToTime(a.video.currentTime);a.template.ptime.innerHTML!==e&&(a.template.ptime.innerHTML=e)}));for(var n=function(t){e.addEventListener(a.events.videoEvents[t],(function(){a.events.trigger(a.events.videoEvents[t])}))},o=0;o1&&void 0!==arguments[1]?arguments[1]:2e3,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.8;this.template.notice.innerHTML=e,this.template.notice.style.opacity=n,this.noticeTime&&clearTimeout(this.noticeTime),this.events.trigger("notice_show",e),a>0&&(this.noticeTime=setTimeout((function(){t.template.notice.style.opacity=0,t.events.trigger("notice_hide")}),a))}},{key:"resize",value:function(){this.danmaku&&this.danmaku.resize(),this.controller.thumbnails&&this.controller.thumbnails.resize(160,this.video.videoHeight/this.video.videoWidth*160,this.template.barWrap.offsetWidth),this.events.trigger("resize")}},{key:"speed",value:function(e){this.video.playbackRate=e}},{key:"destroy",value:function(){Oe.splice(Oe.indexOf(this),1),this.pause(),this.controller.destroy(),this.timer.destroy(),this.video.src="",this.container.innerHTML="",this.events.trigger("destroy")}}])&&ze(t.prototype,a),o&&ze(t,o),e}();console.log("\n".concat(" %c DPlayer v","1.25.0"," ").concat("4ddc860"," %c http://dplayer.js.org ","\n","\n"),"color: #fadfa3; background: #030307; padding:5px 0;","background: #fadfa3; padding:5px 0;");t.default=Fe}]).default})); //# sourceMappingURL=DPlayer.min.js.map \ No newline at end of file diff --git a/dist/DPlayer.min.js.map b/dist/DPlayer.min.js.map index 5cd5b9500..65d7c7844 100644 --- a/dist/DPlayer.min.js.map +++ b/dist/DPlayer.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://[name]/webpack/universalModuleDefinition","webpack://[name]/webpack/bootstrap","webpack://[name]/./node_modules/axios/lib/utils.js","webpack://[name]/(webpack)/buildin/global.js","webpack://[name]/./src/template/video.art","webpack://[name]/./node_modules/axios/index.js","webpack://[name]/./node_modules/process/browser.js","webpack://[name]/./node_modules/axios/lib/helpers/bind.js","webpack://[name]/./node_modules/axios/lib/helpers/buildURL.js","webpack://[name]/./node_modules/axios/lib/cancel/isCancel.js","webpack://[name]/./node_modules/axios/lib/defaults.js","webpack://[name]/./node_modules/axios/lib/adapters/xhr.js","webpack://[name]/./node_modules/axios/lib/core/createError.js","webpack://[name]/./node_modules/axios/lib/core/mergeConfig.js","webpack://[name]/./node_modules/axios/lib/cancel/Cancel.js","webpack://[name]/./node_modules/art-template/lib/runtime.js","webpack://[name]/./node_modules/promise-polyfill/src/index.js","webpack://[name]/./node_modules/promise-polyfill/src/finally.js","webpack://[name]/./src/assets/play.svg","webpack://[name]/./src/assets/pause.svg","webpack://[name]/./src/assets/volume-up.svg","webpack://[name]/./src/assets/volume-down.svg","webpack://[name]/./src/assets/volume-off.svg","webpack://[name]/./src/assets/full.svg","webpack://[name]/./src/assets/full-web.svg","webpack://[name]/./src/assets/setting.svg","webpack://[name]/./src/assets/right.svg","webpack://[name]/./src/assets/comment.svg","webpack://[name]/./src/assets/comment-off.svg","webpack://[name]/./src/assets/send.svg","webpack://[name]/./src/assets/pallette.svg","webpack://[name]/./src/assets/camera.svg","webpack://[name]/./src/assets/subtitle.svg","webpack://[name]/./src/assets/loading.svg","webpack://[name]/./src/template/player.art","webpack://[name]/./node_modules/timers-browserify/main.js","webpack://[name]/./node_modules/setimmediate/setImmediate.js","webpack://[name]/./node_modules/axios/lib/axios.js","webpack://[name]/./node_modules/is-buffer/index.js","webpack://[name]/./node_modules/axios/lib/core/Axios.js","webpack://[name]/./node_modules/axios/lib/core/InterceptorManager.js","webpack://[name]/./node_modules/axios/lib/core/dispatchRequest.js","webpack://[name]/./node_modules/axios/lib/core/transformData.js","webpack://[name]/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://[name]/./node_modules/axios/lib/core/settle.js","webpack://[name]/./node_modules/axios/lib/core/enhanceError.js","webpack://[name]/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://[name]/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://[name]/./node_modules/axios/lib/helpers/cookies.js","webpack://[name]/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://[name]/./node_modules/axios/lib/helpers/combineURLs.js","webpack://[name]/./node_modules/axios/lib/cancel/CancelToken.js","webpack://[name]/./node_modules/axios/lib/helpers/spread.js","webpack://[name]/./node_modules/art-template/lib/compile/runtime.js","webpack://[name]/./src/js/utils.js","webpack://[name]/./src/js/api.js","webpack://[name]/./src/js/options.js","webpack://[name]/./src/js/i18n.js","webpack://[name]/./src/js/icons.js","webpack://[name]/./src/js/template.js","webpack://[name]/./src/js/danmaku.js","webpack://[name]/./src/js/events.js","webpack://[name]/./src/js/fullscreen.js","webpack://[name]/./src/js/user.js","webpack://[name]/./src/js/subtitle.js","webpack://[name]/./src/js/bar.js","webpack://[name]/./src/js/timer.js","webpack://[name]/./src/js/bezel.js","webpack://[name]/./src/js/thumbnails.js","webpack://[name]/./src/js/controller.js","webpack://[name]/./src/js/setting.js","webpack://[name]/./src/js/comment.js","webpack://[name]/./src/js/hotkey.js","webpack://[name]/./src/js/contextmenu.js","webpack://[name]/./src/js/info-panel.js","webpack://[name]/./src/js/player.js","webpack://[name]/./src/js/index.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_typeof","obj","iterator","constructor","isBuffer","toString","isArray","val","isObject","isFunction","forEach","fn","length","isArrayBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isNumber","isUndefined","isDate","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","result","assignValue","arguments","deepMerge","extend","a","b","thisArg","trim","str","replace","g","this","Function","e","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","push","apply","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","utils","encode","encodeURIComponent","url","params","paramsSerializer","serializedParams","parts","v","toISOString","JSON","stringify","join","hashmarkIndex","indexOf","slice","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","headers","adapter","defaults","XMLHttpRequest","transformRequest","data","transformResponse","parse","xsrfCookieName","xsrfHeaderName","maxContentLength","validateStatus","status","common","method","settle","buildURL","parseHeaders","isURLSameOrigin","createError","config","Promise","resolve","reject","requestData","requestHeaders","request","auth","username","password","Authorization","btoa","open","toUpperCase","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","cookies","xsrfValue","withCredentials","read","undefined","toLowerCase","setRequestHeader","onDownloadProgress","addEventListener","onUploadProgress","upload","cancelToken","promise","then","cancel","abort","send","enhanceError","message","code","error","config1","config2","prop","Cancel","setTimeoutFunc","TypeError","_state","_handled","_value","_deferreds","doResolve","handle","self","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","newValue","finale","_unhandledRejectionFn","Handler","done","reason","ex","prom","all","arr","remaining","res","race","values","setImmediate","err","console","warn","callback","Timeout","id","clearFn","_id","_clearFn","scope","setInterval","clearInterval","close","unref","ref","enroll","item","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","global","clearImmediate","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","getPrototypeOf","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","event","port2","createElement","documentElement","script","removeChild","appendChild","Math","random","source","attachEvent","task","Axios","mergeConfig","createInstance","defaultConfig","context","instance","axios","instanceConfig","CancelToken","isCancel","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","unshift","fulfilled","rejected","shift","getUri","handlers","use","eject","h","transformData","isAbsoluteURL","combineURLs","throwIfCancellationRequested","throwIfRequested","baseURL","fns","normalizedName","isAxiosError","toJSON","description","number","fileName","lineNumber","columnNumber","stack","ignoreDuplicateOf","parsed","split","line","substr","originURL","msie","test","userAgent","urlParsingNode","resolveURL","href","setAttribute","protocol","host","search","hash","hostname","port","pathname","charAt","location","requestURL","write","expires","path","domain","secure","cookie","Date","toGMTString","match","RegExp","decodeURIComponent","remove","now","relativeURL","executor","resolvePromise","token","globalThis","runtime","ESCAPE_REG","$escape","content","regexResult","exec","lastIndex","_char","index","charCodeAt","substring","xmlEscape","$each","_i","isMobile","secondToTime","second","hour","floor","min","sec","map","num","getElementViewLeft","element","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","body","scrollLeft","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getBoundingClientRectViewLeft","scrollTop","scrollY","pageYOffset","getBoundingClientRect","offset","temp","style","cssText","top","rect","left","getScrollPosition","pageXOffset","setScrollPosition","_ref","_ref$left","_ref$top","isFirefox","scrollTo","isChrome","storage","set","localStorage","setItem","getItem","cumulativeOffset","offsetTop","nameMap","dragStart","dragMove","dragEnd","color2Number","color","parseInt","number2Color","number2Type","options","post","success","msg","time","type","author","text","defaultOption","container","getElementsByClassName","live","autoplay","theme","loop","lang","language","browserLanguage","screenshot","hotkey","preload","volume","apiBackend","video","contextmenu","mutex","defaultKey","danmaku","user","subtitle","fontSize","bottom","quality","defaultQuality","click","player","infoPanel","triggle","link","tranTxt","_this","tran","play","pause","volumeUp","volumeDown","volumeOff","full","fullWeb","setting","right","comment","commentOff","pallette","camera","loading","_defineProperties","target","props","descriptor","configurable","writable","Template","Constructor","_classCallCheck","init","protoProps","staticProps","innerHTML","icons","pic","volumeBar","querySelector","volumeBarWrap","volumeBarWrapWrap","volumeButton","volumeButtonIcon","volumeIcon","playedBar","loadedBar","playedBarWrap","playedBarTime","danmakuLoading","bezel","playButton","videoWrap","controllerMask","ptime","settingButton","settingBox","mask","loopToggle","showDanmaku","showDanmakuToggle","unlimitDanmaku","unlimitDanmakuToggle","speed","speedItem","querySelectorAll","danmakuOpacityBar","danmakuOpacityBarWrap","danmakuOpacityBarWrapWrap","danmakuOpacityBox","dtime","controller","commentInput","commentButton","commentSettingBox","commentSettingButton","commentSettingFill","commentSendButton","commentSendFill","commentColorSettingBox","browserFullButton","webFullButton","menu","menuItem","qualityList","camareButton","subtitleButton","subtitleButtonInner","qualityButton","barPreview","barWrap","notice","infoPanelClose","infoVersion","infoFPS","infoType","infoUrl","infoResolution","infoDuration","infoDanmakuId","infoDanmakuApi","infoDanmakuAmount","Danmaku","danTunnel","danIndex","dan","showing","_opacity","opacity","events","unlimited","_measure","load","apiurl","api","maximum","address","endpoints","addition","trigger","_readAllEndpoints","results","sort","requestAnimationFrame","frame","newAPI","clear","_this2","readCount","_loop","_this3","danmakuData","splice","htmlEncode","border","borderColor","draw","_this4","paused","parseFloat","percentage","items","_this5","itemHeight","height","danWidth","offsetWidth","danHeight","offsetHeight","itemY","danItemRight","ele","eleWidth","width","eleRight","danSpeed","getTunnel","tmp","_loop2","j","danRight","_ret","docFragment","createDocumentFragment","_loop3","classList","add","itemWidth","tunnel","transform","measureStyle","getComputedStyle","getContext","font","getPropertyValue","measureText","seek","_boolean","Events","videoEvents","playerEvents","info","FullScreen","resize","lastScrollPosition","fullscreenchange","isFullScreen","docfullscreenchange","fullEle","msFullscreenElement","contains","anotherType","anotherTypeOn","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","msRequestFullscreen","cancelFullScreen","mozCancelFullScreen","webkitCancelFullScreen","webkitCancelFullscreen","msCancelFullScreen","msExitFullscreen","User","storageName","Subtitle","textTracks","track","oncuechange","cue","activeCues","template","getCueAsHTML","trackHtml","show","hide","Bar","elements","played","loaded","direction","max","Timer","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","enableloadingChecker","currentTime","enablefpsChecker","initfpsChecker","fpsStart","fpsIndex","fpsCurrent","fps","infoChecker","enableinfoChecker","update","Bezel","icon","Thumbnails","barWidth","backgroundImage","barWrapWidth","display","position","backgroundPosition","ceil","Controller","autoHideTimer","setAutoHide","initPlayButton","initThumbnails","initPlayedBar","initFullButton","initQualityButton","initScreenshotButton","initSubtitleButton","initHighlights","initVolumeButton","toggle","duration","Infinity","highlight","highlights","insertBefore","thumbnails","videoHeight","videoWidth","thumbMove","clientX","changedTouches","clientWidth","bar","thumbUp","removeEventListener","timer","enable","disable","px","tx","move","innerText","_this6","fullScreen","_this7","volumeMove","muted","switchVolumeIcon","_this8","switchQuality","dataset","_this9","dataURL","canvas","drawImage","toBlob","blob","URL","createObjectURL","download","revokeObjectURL","_this10","balloon","_this11","disableAutoHide","isShow","Setting","checked","unlimit","danmakuMove","danmakuUp","Comment","toggleSetting","fill","hideSetting","keyCode","focus","showSetting","blur","HotKey","tag","activeElement","tagName","editable","getAttribute","preventDefault","ContextMenu","shown","clientRect","clientY","x","y","InfoPanel","beginTime","toFixed","ownKeys","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","_defineProperty","instances","DPlayer","getOwnPropertyDescriptors","defineProperties","_objectSpread","qualityIndex","arrow","initVideo","nostorage","nonotice","isNaN","formatPercentage","danmakuAPI","poster","src","initMSE","reload","customType","canPlayType","Hls","isSupported","hls","loadSource","attachMedia","destroy","flvjs","flvPlayer","createPlayer","attachMediaElement","unload","detachMediaElement","dashjs","MediaPlayer","initialize","reset","WebTorrent","WEBRTC_SUPPORT","client","torrentId","torrent","files","find","file","endsWith","renderTo","buffered","end","switchingQuality","videoHTML","videoEle","DOMParser","parseFromString","firstChild","getElementsByTagName","prevVideo","noticeTime","rate","playbackRate","log"],"mappings":"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","file":"DPlayer.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"DPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"DPlayer\"] = factory();\n\telse\n\t\troot[\"DPlayer\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 53);\n","'use strict';\nfunction _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nvar bind = require('./helpers/bind');\nvar isBuffer = require('is-buffer');\nvar toString = Object.prototype.toString;\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\nfunction isFormData(val) {\n return typeof FormData !== 'undefined' && val instanceof FormData;\n}\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 && val.buffer instanceof ArrayBuffer;\n }\n return result;\n}\nfunction isString(val) {\n return typeof val === 'string';\n}\nfunction isNumber(val) {\n return typeof val === 'number';\n}\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\nfunction isObject(val) {\n return val !== null && _typeof(val) === 'object';\n}\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {\n return false;\n }\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\nfunction forEach(obj, fn) {\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n if (_typeof(obj) !== 'object') {\n obj = [obj];\n }\n if (isArray(obj)) {\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\nfunction merge() {\n var result = {};\n function assignValue(val, key) {\n if (_typeof(result[key]) === 'object' && _typeof(val) === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\nfunction deepMerge() {\n var result = {};\n function assignValue(val, key) {\n if (_typeof(result[key]) === 'object' && _typeof(val) === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (_typeof(val) === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};","function _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || new Function('return this')();\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;","{{ set enableSubtitle = subtitle && subtitle.type === 'webvtt' }}\n\n {{ if enableSubtitle }}\n \n {{ /if }}\n","module.exports = require('./lib/axios');","var process = module.exports = {};\nvar cachedSetTimeout;\nvar cachedClearTimeout;\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout() {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n}());\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n return setTimeout(fun, 0);\n }\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n return cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n return cachedSetTimeout.call(null, fun, 0);\n } catch (e) {\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n return clearTimeout(marker);\n }\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n return cachedClearTimeout(marker);\n } catch (e) {\n try {\n return cachedClearTimeout.call(null, marker);\n } catch (e) {\n return cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n var len = queue.length;\n while (len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = '';\nprocess.versions = {};\nfunction noop() {\n}\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\nprocess.listeners = function (name) {\n return [];\n};\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\nprocess.cwd = function () {\n return '/';\n};\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function () {\n return 0;\n};","'use strict';\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};","'use strict';\nvar utils = require('./../utils');\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');\n}\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n if (!params) {\n return url;\n }\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n serializedParams = parts.join('&');\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';\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};","'use strict';\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar DEFAULT_CONTENT_TYPE = { 'Content-Type': 'application/x-www-form-urlencoded' };\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n adapter = require('./adapters/http');\n } else if (typeof XMLHttpRequest !== 'undefined') {\n adapter = require('./adapters/xhr');\n }\n return adapter;\n}\nvar defaults = {\n adapter: getDefaultAdapter(),\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) || 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 setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) {\n }\n }\n return data;\n }],\n timeout: 0,\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n maxContentLength: -1,\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\ndefaults.headers = { common: { 'Accept': 'application/json, text/plain, */*' } };\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});\nmodule.exports = defaults;","'use strict';\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildURL = require('./../helpers/buildURL');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type'];\n }\n var request = new XMLHttpRequest();\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n request.timeout = config.timeout;\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 var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? 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(resolve, reject, response);\n request = null;\n };\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n request = null;\n };\n request.onerror = function handleError() {\n reject(createError('Network Error', config, null, request));\n request = null;\n };\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED', request));\n request = null;\n };\n if (utils.isStandardBrowserEnv()) {\n var cookies = require('./../helpers/cookies');\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n delete requestHeaders[key];\n } else {\n request.setRequestHeader(key, val);\n }\n });\n }\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n if (config.cancelToken) {\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n request.abort();\n reject(cancel);\n request = null;\n });\n }\n if (requestData === undefined) {\n requestData = null;\n }\n request.send(requestData);\n });\n};","'use strict';\nvar enhanceError = require('./enhanceError');\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};","'use strict';\nvar utils = require('../utils');\nmodule.exports = function mergeConfig(config1, config2) {\n config2 = config2 || {};\n var config = {};\n utils.forEach([\n 'url',\n 'method',\n 'params',\n 'data'\n ], function valueFromConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n }\n });\n utils.forEach([\n 'headers',\n 'auth',\n 'proxy'\n ], function mergeDeepProperties(prop) {\n if (utils.isObject(config2[prop])) {\n config[prop] = utils.deepMerge(config1[prop], config2[prop]);\n } else if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (utils.isObject(config1[prop])) {\n config[prop] = utils.deepMerge(config1[prop]);\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n utils.forEach([\n 'baseURL',\n 'transformRequest',\n 'transformResponse',\n 'paramsSerializer',\n 'timeout',\n 'withCredentials',\n 'adapter',\n 'responseType',\n 'xsrfCookieName',\n 'xsrfHeaderName',\n 'onUploadProgress',\n 'onDownloadProgress',\n 'maxContentLength',\n 'validateStatus',\n 'maxRedirects',\n 'httpAgent',\n 'httpsAgent',\n 'cancelToken',\n 'socketPath'\n ], function defaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n return config;\n};","'use strict';\nfunction Cancel(message) {\n this.message = message;\n}\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\nCancel.prototype.__CANCEL__ = true;\nmodule.exports = Cancel;","'use strict';\nmodule.exports = require('./compile/runtime');","function _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nimport promiseFinally from './finally';\nvar setTimeoutFunc = setTimeout;\nfunction noop() {\n}\nfunction bind(fn, thisArg) {\n return function () {\n fn.apply(thisArg, arguments);\n };\n}\nfunction Promise(fn) {\n if (!(this instanceof Promise))\n throw new TypeError('Promises must be constructed via new');\n if (typeof fn !== 'function')\n throw new TypeError('not a function');\n this._state = 0;\n this._handled = false;\n this._value = undefined;\n this._deferreds = [];\n doResolve(fn, this);\n}\nfunction handle(self, deferred) {\n while (self._state === 3) {\n self = self._value;\n }\n if (self._state === 0) {\n self._deferreds.push(deferred);\n return;\n }\n self._handled = true;\n Promise._immediateFn(function () {\n var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;\n if (cb === null) {\n (self._state === 1 ? resolve : reject)(deferred.promise, self._value);\n return;\n }\n var ret;\n try {\n ret = cb(self._value);\n } catch (e) {\n reject(deferred.promise, e);\n return;\n }\n resolve(deferred.promise, ret);\n });\n}\nfunction resolve(self, newValue) {\n try {\n if (newValue === self)\n throw new TypeError('A promise cannot be resolved with itself.');\n if (newValue && (_typeof(newValue) === '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 (!arr || typeof arr.length === 'undefined')\n throw new TypeError('Promise.all accepts an array');\n var args = Array.prototype.slice.call(arr);\n if (args.length === 0)\n return resolve([]);\n var remaining = args.length;\n function res(i, val) {\n try {\n if (val && (_typeof(val) === 'object' || typeof val === 'function')) {\n var then = val.then;\n if (typeof then === 'function') {\n then.call(val, function (val) {\n res(i, val);\n }, reject);\n return;\n }\n }\n args[i] = val;\n if (--remaining === 0) {\n resolve(args);\n }\n } catch (ex) {\n reject(ex);\n }\n }\n for (var i = 0; i < args.length; i++) {\n res(i, args[i]);\n }\n });\n};\nPromise.resolve = function (value) {\n if (value && _typeof(value) === 'object' && value.constructor === Promise) {\n return value;\n }\n return new Promise(function (resolve) {\n resolve(value);\n });\n};\nPromise.reject = function (value) {\n return new Promise(function (resolve, reject) {\n reject(value);\n });\n};\nPromise.race = function (values) {\n return new Promise(function (resolve, reject) {\n for (var i = 0, len = values.length; i < len; i++) {\n values[i].then(resolve, reject);\n }\n });\n};\nPromise._immediateFn = typeof setImmediate === 'function' && function (fn) {\n setImmediate(fn);\n} || function (fn) {\n setTimeoutFunc(fn, 0);\n};\nPromise._unhandledRejectionFn = function _unhandledRejectionFn(err) {\n if (typeof console !== 'undefined' && console) {\n console.warn('Possible Unhandled Promise Rejection:', err);\n }\n};\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;","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","
\n
\n {{ include './video.art' video }}\n {{ if options.logo }}\n
\n \n
\n {{ /if }}\n
\n
\n
\n
\n
\n \n {{ if options.danmaku }}\n {{ tran('Danmaku is loading') }}\n {{ /if }}\n {{@ icons.loading }}\n
\n
\n
\n
\n
\n \n
\n
\n
{{ tran('Set danmaku color') }}
\n \n \n \n \n \n \n
\n
\n
{{ tran('Set danmaku type') }}
\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n 0:00 /\n 0:00\n \n {{ if options.live }}\n {{ tran('Live') }}\n {{ /if }}\n
\n
\n {{ if options.video.quality }}\n
\n \n
\n
\n {{ each options.video.quality }}\n
{{ $value.name }}
\n {{ /each }}\n
\n
\n
\n {{ /if }}\n {{ if options.screenshot }}\n
\n {{@ icons.camera }}\n
\n {{ /if }}\n
\n \n
\n {{ if options.subtitle }}\n
\n \n
\n {{ /if }}\n
\n \n
\n
\n
\n {{ tran('Speed') }}\n
{{@ icons.right }}
\n
\n
\n {{ tran('Loop') }}\n
\n \n \n
\n
\n
\n {{ tran('Show danmaku') }}\n
\n \n \n
\n
\n
\n {{ tran('Unlimited danmaku') }}\n
\n \n \n
\n
\n
\n {{ tran('Opacity for danmaku') }}\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n 0.5\n
\n
\n 0.75\n
\n
\n {{ tran('Normal') }}\n
\n
\n 1.25\n
\n
\n 1.5\n
\n
\n 2\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
00:00
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
[x]
\n
\n Player version\n \n
\n
\n Player FPS\n \n
\n
\n Video type\n \n
\n
\n Video url\n \n
\n
\n Video resolution\n \n
\n
\n Video duration\n \n
\n {{ if options.danmaku }}\n
\n Danamku id\n \n
\n
\n Danamku api\n \n
\n
\n Danamku amount\n \n
\n {{ /if }}\n
\n
\n {{ each options.contextmenu }}\n
\n {{ tran($value.text) }}\n
\n {{ /each }}\n
\n
","var scope = typeof global !== 'undefined' && global || typeof self !== 'undefined' && self || window;\nvar apply = Function.prototype.apply;\nexports.setTimeout = function () {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function () {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout = exports.clearInterval = function (timeout) {\n if (timeout) {\n timeout.close();\n }\n};\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function () {\n};\nTimeout.prototype.close = function () {\n this._clearFn.call(scope, this._id);\n};\nexports.enroll = function (item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\nexports.unenroll = function (item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\nexports._unrefActive = exports.active = function (item) {\n clearTimeout(item._idleTimeoutId);\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\nrequire('setimmediate');\nexports.setImmediate = typeof self !== 'undefined' && self.setImmediate || typeof global !== 'undefined' && global.setImmediate || this && this.setImmediate;\nexports.clearImmediate = typeof self !== 'undefined' && self.clearImmediate || typeof global !== 'undefined' && global.clearImmediate || this && this.clearImmediate;","(function (global, undefined) {\n 'use strict';\n if (global.setImmediate) {\n return;\n }\n var nextHandle = 1;\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n function setImmediate(callback) {\n if (typeof callback !== 'function') {\n callback = new Function('' + callback);\n }\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n var task = {\n callback: callback,\n args: args\n };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n function runIfPresent(handle) {\n if (currentlyRunningATask) {\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n function installNextTickImplementation() {\n registerImmediate = function registerImmediate(handle) {\n process.nextTick(function () {\n runIfPresent(handle);\n });\n };\n }\n function canUsePostMessage() {\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function () {\n postMessageIsAsynchronous = false;\n };\n global.postMessage('', '*');\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n function installPostMessageImplementation() {\n var messagePrefix = 'setImmediate$' + Math.random() + '$';\n var onGlobalMessage = function onGlobalMessage(event) {\n if (event.source === global && typeof event.data === 'string' && event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n if (global.addEventListener) {\n global.addEventListener('message', onGlobalMessage, false);\n } else {\n global.attachEvent('onmessage', onGlobalMessage);\n }\n registerImmediate = function registerImmediate(handle) {\n global.postMessage(messagePrefix + handle, '*');\n };\n }\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function (event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n registerImmediate = function registerImmediate(handle) {\n channel.port2.postMessage(handle);\n };\n }\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function registerImmediate(handle) {\n var script = doc.createElement('script');\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n function installSetTimeoutImplementation() {\n registerImmediate = function registerImmediate(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n if ({}.toString.call(global.process) === '[object process]') {\n installNextTickImplementation();\n } else if (canUsePostMessage()) {\n installPostMessageImplementation();\n } else if (global.MessageChannel) {\n installMessageChannelImplementation();\n } else if (doc && 'onreadystatechange' in doc.createElement('script')) {\n installReadyStateChangeImplementation();\n } else {\n installSetTimeoutImplementation();\n }\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === 'undefined' ? typeof global === 'undefined' ? this : global : self));","'use strict';\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n utils.extend(instance, Axios.prototype, context);\n utils.extend(instance, context);\n return instance;\n}\nvar axios = createInstance(defaults);\naxios.Axios = Axios;\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\nmodule.exports = axios;\nmodule.exports['default'] = axios;","module.exports = function isBuffer(obj) {\n return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj);\n};","'use strict';\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\nAxios.prototype.request = function request(config) {\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n config = mergeConfig(this.defaults, config);\n config.method = config.method ? config.method.toLowerCase() : 'get';\n var chain = [\n dispatchRequest,\n undefined\n ];\n var promise = Promise.resolve(config);\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n return promise;\n};\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\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(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\nutils.forEach([\n 'post',\n 'put',\n 'patch'\n], function forEachMethodWithData(method) {\n Axios.prototype[method] = function (url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\nmodule.exports = Axios;","'use strict';\nvar utils = require('./../utils');\nfunction InterceptorManager() {\n this.handlers = [];\n}\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\nmodule.exports = InterceptorManager;","'use strict';\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar isAbsoluteURL = require('./../helpers/isAbsoluteURL');\nvar combineURLs = require('./../helpers/combineURLs');\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n config.headers = config.headers || {};\n config.data = transformData(config.data, config.headers, config.transformRequest);\n config.headers = utils.merge(config.headers.common || {}, config.headers[config.method] || {}, config.headers || {});\n utils.forEach([\n 'delete',\n 'get',\n 'head',\n 'post',\n 'put',\n 'patch',\n 'common'\n ], function cleanHeaderConfig(method) {\n delete config.headers[method];\n });\n var adapter = config.adapter || defaults.adapter;\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n response.data = transformData(response.data, response.headers, config.transformResponse);\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n if (reason && reason.response) {\n reason.response.data = transformData(reason.response.data, reason.response.headers, config.transformResponse);\n }\n }\n return Promise.reject(reason);\n });\n};","'use strict';\nvar utils = require('./../utils');\nmodule.exports = function transformData(data, headers, fns) {\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n return data;\n};","'use strict';\nvar utils = require('../utils');\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};","'use strict';\nvar createError = require('./createError');\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError('Request failed with status code ' + response.status, response.config, null, response.request, response));\n }\n};","'use strict';\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n error.toJSON = function () {\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: this.config,\n code: this.code\n };\n };\n return error;\n};","'use strict';\nvar utils = require('./../utils');\nvar ignoreDuplicateOf = [\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];\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n if (!headers) {\n return parsed;\n }\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n return parsed;\n};","'use strict';\nvar utils = require('./../utils');\nmodule.exports = utils.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';\nvar utils = require('./../utils');\nmodule.exports = utils.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';\nmodule.exports = function isAbsoluteURL(url) {\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};","'use strict';\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '') : baseURL;\n};","'use strict';\nvar Cancel = require('./Cancel');\nfunction CancelToken(executor) {\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 executor(function cancel(message) {\n if (token.reason) {\n return;\n }\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\nCancelToken.source = 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};\nmodule.exports = CancelToken;","'use strict';\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};","'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 = '"';\n break;\n case 38:\n _char = '&';\n break;\n case 39:\n _char = ''';\n break;\n case 60:\n _char = '<';\n break;\n case 62:\n _char = '>';\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;","var isMobile = /mobile/i.test(window.navigator.userAgent);\nvar utils = {\n secondToTime: function secondToTime(second) {\n var add0 = function add0(num) {\n return num < 10 ? '0' + num : '' + num;\n };\n var hour = Math.floor(second / 3600);\n var min = Math.floor((second - hour * 3600) / 60);\n var sec = Math.floor(second - hour * 3600 - min * 60);\n return (hour > 0 ? [\n hour,\n min,\n sec\n ] : [\n min,\n sec\n ]).map(add0).join(':');\n },\n getElementViewLeft: function getElementViewLeft(element) {\n var actualLeft = element.offsetLeft;\n var current = element.offsetParent;\n var elementScrollLeft = document.body.scrollLeft + document.documentElement.scrollLeft;\n if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement) {\n while (current !== null) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n } else {\n while (current !== null && current !== element) {\n actualLeft += current.offsetLeft;\n current = current.offsetParent;\n }\n }\n return actualLeft - elementScrollLeft;\n },\n 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 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 cumulativeOffset: function cumulativeOffset(element) {\n var top = 0, left = 0;\n do {\n top += element.offsetTop || 0;\n left += element.offsetLeft || 0;\n element = element.offsetParent;\n } while (element);\n return {\n top: top,\n left: left\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;","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(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\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 hotkey: true,\n preload: 'metadata',\n volume: 0.7,\n apiBackend: defaultApiBackend,\n video: {},\n contextmenu: [],\n mutex: true\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 = 'DIYgod');\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 text: 'Video info',\n click: function click(player) {\n player.infoPanel.triggle();\n }\n },\n {\n text: 'About author',\n link: 'https://diygod.me'\n },\n {\n text: 'DPlayer v'.concat(DPLAYER_VERSION),\n link: 'https://github.com/MoePlayer/DPlayer'\n }\n ]);\n return options;\n};","function i18n(lang) {\n var _this = this;\n this.lang = lang;\n this.tran = function (text) {\n if (tranTxt[_this.lang] && tranTxt[_this.lang][text]) {\n return tranTxt[_this.lang][text];\n } else {\n return text;\n }\n };\n}\nvar tranTxt = {\n 'zh-cn': {\n 'Danmaku is loading': '弹幕加载中',\n 'Top': '顶部',\n 'Bottom': '底部',\n 'Rolling': '滚动',\n 'Input danmaku, hit Enter': '输入弹幕\\uFF0C回车发送',\n 'About author': '关于作者',\n 'DPlayer feedback': '播放器意见反馈',\n 'About DPlayer': '关于 DPlayer 播放器',\n 'Loop': '洗脑循环',\n 'Speed': '速度',\n 'Opacity for danmaku': '弹幕透明度',\n 'Normal': '正常',\n 'Please input danmaku content!': '要输入弹幕内容啊喂\\uFF01',\n 'Set danmaku color': '设置弹幕颜色',\n 'Set danmaku type': '设置弹幕类型',\n 'Show danmaku': '显示弹幕',\n 'Video load failed': '视频加载失败',\n 'Danmaku load failed': '弹幕加载失败',\n 'Danmaku send failed': '弹幕发送失败',\n 'Switching to': '正在切换至',\n 'Switched to': '已经切换至',\n 'quality': '画质',\n 'FF': '快进',\n 'REW': '快退',\n 'Unlimited danmaku': '海量弹幕',\n 'Send danmaku': '发送弹幕',\n 'Setting': '设置',\n 'Full screen': '全屏',\n 'Web full screen': '页面全屏',\n 'Send': '发送',\n 'Screenshot': '截图',\n 's': '秒',\n 'Show subtitle': '显示字幕',\n 'Hide subtitle': '隐藏字幕',\n 'Volume': '音量',\n 'Live': '直播',\n 'Video info': '视频统计信息'\n },\n 'zh-tw': {\n 'Danmaku is loading': '彈幕載入中',\n 'Top': '頂部',\n 'Bottom': '底部',\n 'Rolling': '滾動',\n 'Input danmaku, hit Enter': '輸入彈幕\\uFF0CEnter 發送',\n 'About author': '關於作者',\n 'DPlayer feedback': '播放器意見回饋',\n 'About DPlayer': '關於 DPlayer 播放器',\n 'Loop': '循環播放',\n 'Speed': '速度',\n 'Opacity for danmaku': '彈幕透明度',\n 'Normal': '正常',\n 'Please input danmaku content!': '請輸入彈幕內容啊\\uFF01',\n 'Set danmaku color': '設定彈幕顏色',\n 'Set danmaku type': '設定彈幕類型',\n 'Show danmaku': '顯示彈幕',\n 'Video load failed': '影片載入失敗',\n 'Danmaku load failed': '彈幕載入失敗',\n 'Danmaku send failed': '彈幕發送失敗',\n 'Switching to': '正在切換至',\n 'Switched to': '已經切換至',\n 'quality': '畫質',\n 'FF': '快進',\n 'REW': '快退',\n 'Unlimited danmaku': '巨量彈幕',\n 'Send danmaku': '發送彈幕',\n 'Setting': '設定',\n 'Full screen': '全螢幕',\n 'Web full screen': '頁面全螢幕',\n 'Send': '發送',\n 'Screenshot': '截圖',\n 's': '秒',\n 'Show subtitle': '顯示字幕',\n 'Hide subtitle': '隱藏字幕',\n 'Volume': '音量',\n 'Live': '直播',\n 'Video info': '影片統計訊息'\n }\n};\nexport default i18n;","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 subtitle from '../assets/subtitle.svg';\nimport loading from '../assets/loading.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};\nexport default Icons;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nimport Icons from './icons';\nimport tplPlayer from '../template/player.art';\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 _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 video: {\n current: true,\n pic: this.options.video.pic,\n screenshot: this.options.screenshot,\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.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.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.subtitleButton = this.container.querySelector('.dplayer-subtitle-icon');\n this.subtitleButtonInner = this.container.querySelector('.dplayer-subtitle-icon .dplayer-icon-content');\n this.subtitle = this.container.querySelector('.dplayer-subtitle');\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.notice = this.container.querySelector('.dplayer-notice');\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 return Template;\n}();\nexport default Template;","function _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nimport utils from './utils';\nvar Danmaku = function () {\n function Danmaku(options) {\n _classCallCheck(this, Danmaku);\n this.options = options;\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 _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 load 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 send 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 'continue';\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 };\n for (var i = 0; _this5.unlimited || i < itemY; i++) {\n var _ret = _loop2(i);\n switch (_ret) {\n case 'continue':\n continue;\n default:\n if (_typeof(_ret) === 'object')\n return _ret.v;\n }\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(i) {\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 = '').concat(dan[i].text, '');\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 = void 0;\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 docFragment.appendChild(item);\n }\n };\n for (var i = 0; i < dan.length; i++) {\n _loop3(i);\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, '&').replace(//g, '>').replace(/\"/g, '"').replace(/'/g, ''').replace(/\\//g, '/');\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 return Danmaku;\n}();\nexport default Danmaku;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return Events;\n}();\nexport default Events;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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.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 var fullscreenchange = function fullscreenchange() {\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 var docfullscreenchange = function docfullscreenchange() {\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', docfullscreenchange);\n document.addEventListener('fullscreenchange', docfullscreenchange);\n } else {\n this.player.container.addEventListener('fullscreenchange', fullscreenchange);\n this.player.container.addEventListener('webkitfullscreenchange', fullscreenchange);\n document.addEventListener('msfullscreenchange', docfullscreenchange);\n document.addEventListener('MSFullscreenChange', docfullscreenchange);\n }\n }\n _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 return FullScreen;\n}();\nexport default FullScreen;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return User;\n}();\nexport default User;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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[0];\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 '

'.concat(item, '

');\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 return Subtitle;\n}();\nexport default Subtitle;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return Bar;\n}();\nexport default Bar;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return Timer;\n}();\nexport default Timer;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return Bezel;\n}();\nexport default Bezel;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return Thumbnails;\n}();\nexport default Thumbnails;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nimport utils from './utils';\nimport Thumbnails from './thumbnails';\nimport Icons from './icons';\nvar Controller = function () {\n function Controller(player) {\n var _this = this;\n _classCallCheck(this, Controller);\n this.player = player;\n this.autoHideTimer = 0;\n if (!utils.isMobile) {\n this.player.container.addEventListener('mousemove', function () {\n _this.setAutoHide();\n });\n this.player.container.addEventListener('click', function () {\n _this.setAutoHide();\n });\n this.player.on('play', function () {\n _this.setAutoHide();\n });\n this.player.on('pause', function () {\n _this.setAutoHide();\n });\n }\n this.initPlayButton();\n this.initThumbnails();\n this.initPlayedBar();\n this.initFullButton();\n this.initQualityButton();\n this.initScreenshotButton();\n this.initSubtitleButton();\n this.initHighlights();\n if (!utils.isMobile) {\n this.initVolumeButton();\n }\n }\n _createClass(Controller, [\n {\n key: 'initPlayButton',\n value: function initPlayButton() {\n var _this2 = this;\n this.player.template.playButton.addEventListener('click', function () {\n _this2.player.toggle();\n });\n if (!utils.isMobile) {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this2.player.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this2.player.toggle();\n });\n } else {\n this.player.template.videoWrap.addEventListener('click', function () {\n _this2.toggle();\n });\n this.player.template.controllerMask.addEventListener('click', function () {\n _this2.toggle();\n });\n }\n }\n },\n {\n key: 'initHighlights',\n value: function initHighlights() {\n var _this3 = this;\n this.player.on('durationchange', function () {\n if (_this3.player.video.duration !== 1 && _this3.player.video.duration !== Infinity) {\n if (_this3.player.options.highlight) {\n var highlights = document.querySelectorAll('.dplayer-highlight');\n [].slice.call(highlights, 0).forEach(function (item) {\n _this3.player.template.playedBarWrap.removeChild(item);\n });\n for (var i = 0; i < _this3.player.options.highlight.length; i++) {\n if (!_this3.player.options.highlight[i].text || !_this3.player.options.highlight[i].time) {\n continue;\n }\n var p = document.createElement('div');\n p.classList.add('dplayer-highlight');\n p.style.left = _this3.player.options.highlight[i].time / _this3.player.video.duration * 100 + '%';\n p.innerHTML = '' + _this3.player.options.highlight[i].text + '';\n _this3.player.template.playedBarWrap.insertBefore(p, _this3.player.template.playedBarTime);\n }\n }\n }\n });\n }\n },\n {\n key: 'initThumbnails',\n value: function initThumbnails() {\n var _this4 = 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 _this4.thumbnails.resize(160, _this4.player.video.videoHeight / _this4.player.video.videoWidth * 160, _this4.player.template.barWrap.offsetWidth);\n });\n }\n }\n },\n {\n key: 'initPlayedBar',\n value: function initPlayedBar() {\n var _this5 = this;\n var thumbMove = function thumbMove(e) {\n var percentage = ((e.clientX || e.changedTouches[0].clientX) - utils.getBoundingClientRectViewLeft(_this5.player.template.playedBarWrap)) / _this5.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this5.player.bar.set('played', percentage, 'width');\n _this5.player.template.ptime.innerHTML = utils.secondToTime(percentage * _this5.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(_this5.player.template.playedBarWrap)) / _this5.player.template.playedBarWrap.clientWidth;\n percentage = Math.max(percentage, 0);\n percentage = Math.min(percentage, 1);\n _this5.player.bar.set('played', percentage, 'width');\n _this5.player.seek(_this5.player.bar.get('played') * _this5.player.video.duration);\n _this5.player.timer.enable('progress');\n };\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragStart, function () {\n _this5.player.timer.disable('progress');\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 (_this5.player.video.duration) {\n var px = utils.cumulativeOffset(_this5.player.template.playedBarWrap).left;\n var tx = (e.clientX || e.changedTouches[0].clientX) - px;\n if (tx < 0 || tx > _this5.player.template.playedBarWrap.offsetWidth) {\n return;\n }\n var time = _this5.player.video.duration * (tx / _this5.player.template.playedBarWrap.offsetWidth);\n if (utils.isMobile) {\n _this5.thumbnails && _this5.thumbnails.show();\n }\n _this5.thumbnails && _this5.thumbnails.move(tx);\n _this5.player.template.playedBarTime.style.left = ''.concat(tx - (time >= 3600 ? 25 : 20), 'px');\n _this5.player.template.playedBarTime.innerText = utils.secondToTime(time);\n _this5.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener(utils.nameMap.dragEnd, function () {\n if (utils.isMobile) {\n _this5.thumbnails && _this5.thumbnails.hide();\n }\n });\n if (!utils.isMobile) {\n this.player.template.playedBarWrap.addEventListener('mouseenter', function () {\n if (_this5.player.video.duration) {\n _this5.thumbnails && _this5.thumbnails.show();\n _this5.player.template.playedBarTime.classList.remove('hidden');\n }\n });\n this.player.template.playedBarWrap.addEventListener('mouseleave', function () {\n if (_this5.player.video.duration) {\n _this5.thumbnails && _this5.thumbnails.hide();\n _this5.player.template.playedBarTime.classList.add('hidden');\n }\n });\n }\n }\n },\n {\n key: 'initFullButton',\n value: function initFullButton() {\n var _this6 = this;\n this.player.template.browserFullButton.addEventListener('click', function () {\n _this6.player.fullScreen.toggle('browser');\n });\n this.player.template.webFullButton.addEventListener('click', function () {\n _this6.player.fullScreen.toggle('web');\n });\n }\n },\n {\n key: 'initVolumeButton',\n value: function initVolumeButton() {\n var _this7 = 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(_this7.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this7.player.volume(percentage);\n };\n var volumeUp = function volumeUp() {\n document.removeEventListener(utils.nameMap.dragEnd, volumeUp);\n document.removeEventListener(utils.nameMap.dragMove, volumeMove);\n _this7.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(_this7.player.template.volumeBarWrap) - 5.5) / vWidth;\n _this7.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 _this7.player.template.volumeButton.classList.add('dplayer-volume-active');\n });\n this.player.template.volumeButtonIcon.addEventListener('click', function () {\n if (_this7.player.video.muted) {\n _this7.player.video.muted = false;\n _this7.player.switchVolumeIcon();\n _this7.player.bar.set('volume', _this7.player.volume(), 'width');\n } else {\n _this7.player.video.muted = true;\n _this7.player.template.volumeIcon.innerHTML = Icons.volumeOff;\n _this7.player.bar.set('volume', 0, 'width');\n }\n });\n }\n },\n {\n key: 'initQualityButton',\n value: function initQualityButton() {\n var _this8 = 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 _this8.player.switchQuality(e.target.dataset.index);\n }\n });\n }\n }\n },\n {\n key: 'initScreenshotButton',\n value: function initScreenshotButton() {\n var _this9 = this;\n if (this.player.options.screenshot) {\n this.player.template.camareButton.addEventListener('click', function () {\n var canvas = document.createElement('canvas');\n canvas.width = _this9.player.video.videoWidth;\n canvas.height = _this9.player.video.videoHeight;\n canvas.getContext('2d').drawImage(_this9.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 });\n _this9.player.events.trigger('screenshot', dataURL);\n });\n }\n }\n },\n {\n key: 'initSubtitleButton',\n value: function initSubtitleButton() {\n var _this10 = this;\n if (this.player.options.subtitle) {\n this.player.events.on('subtitle_show', function () {\n _this10.player.template.subtitleButton.dataset.balloon = _this10.player.tran('Hide subtitle');\n _this10.player.template.subtitleButtonInner.style.opacity = '';\n _this10.player.user.set('subtitle', 1);\n });\n this.player.events.on('subtitle_hide', function () {\n _this10.player.template.subtitleButton.dataset.balloon = _this10.player.tran('Show subtitle');\n _this10.player.template.subtitleButtonInner.style.opacity = '0.4';\n _this10.player.user.set('subtitle', 0);\n });\n this.player.template.subtitleButton.addEventListener('click', function () {\n _this10.player.subtitle.toggle();\n });\n }\n }\n },\n {\n key: 'setAutoHide',\n value: function setAutoHide() {\n var _this11 = this;\n this.show();\n clearTimeout(this.autoHideTimer);\n this.autoHideTimer = setTimeout(function () {\n if (_this11.player.video.played.length && !_this11.player.paused && !_this11.disableAutoHide) {\n _this11.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.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 clearTimeout(this.autoHideTimer);\n }\n }\n ]);\n return Controller;\n}();\nexport default Controller;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 });\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.hide();\n });\n };\n for (var i = 0; i < this.player.template.speedItem.length; i++) {\n _loop(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 _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 return Setting;\n}();\nexport default Setting;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 content!'));\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 return Comment;\n}();\nexport default Comment;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nvar HotKey = function HotKey(player) {\n _classCallCheck(this, HotKey);\n if (player.options.hotkey) {\n document.addEventListener('keydown', function (e) {\n if (player.focus) {\n var tag = document.activeElement.tagName.toUpperCase();\n var editable = document.activeElement.getAttribute('contenteditable');\n if (tag !== 'INPUT' && tag !== 'TEXTAREA' && editable !== '' && editable !== 'true') {\n var event = e || window.event;\n var percentage;\n switch (event.keyCode) {\n case 32:\n event.preventDefault();\n player.toggle();\n break;\n case 37:\n event.preventDefault();\n player.seek(player.video.currentTime - 5);\n player.controller.setAutoHide();\n break;\n case 39:\n event.preventDefault();\n player.seek(player.video.currentTime + 5);\n player.controller.setAutoHide();\n break;\n case 38:\n event.preventDefault();\n percentage = player.volume() + 0.1;\n player.volume(percentage);\n break;\n case 40:\n event.preventDefault();\n percentage = player.volume() - 0.1;\n player.volume(percentage);\n break;\n }\n }\n }\n });\n }\n document.addEventListener('keydown', function (e) {\n var event = e || window.event;\n switch (event.keyCode) {\n case 27:\n if (player.fullScreen.isFullScreen('web')) {\n player.fullScreen.cancel('web');\n }\n break;\n }\n });\n};\nexport default HotKey;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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.player.container.addEventListener('contextmenu', 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 }\n _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 return ContextMenu;\n}();\nexport default ContextMenu;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 _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 return InfoPanel;\n}();\nexport default InfoPanel;","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly)\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError('Cannot call a class as a function');\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if ('value' in descriptor)\n descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps)\n _defineProperties(Constructor.prototype, protoProps);\n if (staticProps)\n _defineProperties(Constructor, staticProps);\n return Constructor;\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 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.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 }\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 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 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 },\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 document.addEventListener('click', function () {\n _this.focus = false;\n }, true);\n this.container.addEventListener('click', function () {\n _this.focus = true;\n }, true);\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 index++;\n instances.push(this);\n }\n _createClass(DPlayer, [\n {\n key: 'seek',\n value: function seek(time) {\n time = Math.max(time, 0);\n if (this.video.duration) {\n time = Math.min(time, this.video.duration);\n }\n if (this.video.currentTime < time) {\n this.notice(''.concat(this.tran('FF'), ' ').concat((time - this.video.currentTime).toFixed(0), ' ').concat(this.tran('s')));\n } else if (this.video.currentTime > time) {\n this.notice(''.concat(this.tran('REW'), ' ').concat((this.video.currentTime - time).toFixed(0), ' ').concat(this.tran('s')));\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() {\n var _this2 = this;\n this.paused = false;\n if (this.video.paused) {\n this.bezel['switch'](Icons.play);\n }\n this.template.playButton.innerHTML = Icons.pause;\n var playedPromise = Promise.resolve(this.video.play());\n playedPromise['catch'](function () {\n _this2.pause();\n }).then(function () {\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() {\n this.paused = true;\n this.container.classList.remove('dplayer-loading');\n if (!this.video.paused) {\n this.bezel['switch'](Icons.pause);\n }\n this.template.playButton.innerHTML = Icons.play;\n this.video.pause();\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), '%'));\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 (Hls) {\n if (Hls.isSupported()) {\n var hls = new Hls();\n hls.loadSource(video.src);\n hls.attachMedia(video);\n this.events.on('destroy', function () {\n hls.destroy();\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 (flvjs) {\n if (flvjs.isSupported()) {\n var flvPlayer = flvjs.createPlayer({\n type: 'flv',\n url: video.src\n });\n flvPlayer.attachMediaElement(video);\n flvPlayer.load();\n this.events.on('destroy', function () {\n flvPlayer.unload();\n flvPlayer.detachMediaElement();\n flvPlayer.destroy();\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 (dashjs) {\n dashjs.MediaPlayer().create().initialize(video, video.src, false);\n this.events.on('destroy', function () {\n dashjs.MediaPlayer().reset();\n });\n } else {\n this.notice('Error: Can\\'t find dashjs.');\n }\n break;\n case 'webtorrent':\n if (WebTorrent) {\n if (WebTorrent.WEBRTC_SUPPORT) {\n this.container.classList.add('dplayer-loading');\n var client = new WebTorrent();\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, { autoplay: _this3.options.autoplay });\n });\n this.events.on('destroy', function () {\n client.remove(torrentId);\n client.destroy();\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 load failed'), -1);\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();\n }\n });\n this.on('pause', function () {\n if (!_this4.paused) {\n _this4.pause();\n }\n });\n this.on('timeupdate', function () {\n _this4.bar.set('played', _this4.video.currentTime / _this4.video.duration, 'width');\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 () {\n _this4.events.trigger(_this4.events.videoEvents[i]);\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 (!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.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 to'), ' ').concat(this.quality.name, ' ').concat(this.tran('quality')), -1);\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 to'), ' ').concat(_this5.quality.name, ' ').concat(_this5.tran('quality')));\n _this5.switchingQuality = false;\n _this5.events.trigger('quality_end');\n }\n });\n }\n },\n {\n key: 'notice',\n value: function notice(text) {\n var _this6 = this;\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 this.template.notice.innerHTML = text;\n this.template.notice.style.opacity = opacity;\n if (this.noticeTime) {\n clearTimeout(this.noticeTime);\n }\n this.events.trigger('notice_show', text);\n if (time > 0) {\n this.noticeTime = setTimeout(function () {\n _this6.template.notice.style.opacity = 0;\n _this6.events.trigger('notice_hide');\n }, 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.video.playbackRate = rate;\n }\n },\n {\n key: 'destroy',\n value: function destroy() {\n instances.splice(instances.indexOf(this), 1);\n this.pause();\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 return DPlayer;\n}();\nexport default DPlayer;","import '../css/index.scss';\nimport DPlayer from './player';\nconsole.log('\\n'.concat(' %c DPlayer v', DPLAYER_VERSION, ' ').concat(GIT_HASH, ' %c http://dplayer.js.org ', '\\n', '\\n'), 'color: #fadfa3; background: #030307; padding:5px 0;', 'background: #fadfa3; padding:5px 0;');\nexport default DPlayer;"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://[name]/webpack/universalModuleDefinition","webpack://[name]/webpack/bootstrap","webpack://[name]/./node_modules/axios/lib/utils.js","webpack://[name]/./src/template/video.art","webpack://[name]/./node_modules/axios/index.js","webpack://[name]/./node_modules/css-loader/dist/runtime/api.js","webpack://[name]/(webpack)/buildin/global.js","webpack://[name]/./node_modules/process/browser.js","webpack://[name]/./node_modules/axios/lib/helpers/bind.js","webpack://[name]/./node_modules/axios/lib/helpers/buildURL.js","webpack://[name]/./node_modules/axios/lib/cancel/isCancel.js","webpack://[name]/./node_modules/axios/lib/defaults.js","webpack://[name]/./node_modules/axios/lib/adapters/xhr.js","webpack://[name]/./node_modules/axios/lib/core/createError.js","webpack://[name]/./node_modules/axios/lib/core/mergeConfig.js","webpack://[name]/./node_modules/axios/lib/cancel/Cancel.js","webpack://[name]/./node_modules/art-template/lib/runtime.js","webpack://[name]/./node_modules/promise-polyfill/src/index.js","webpack://[name]/./node_modules/promise-polyfill/src/finally.js","webpack://[name]/./src/assets/play.svg","webpack://[name]/./src/assets/pause.svg","webpack://[name]/./src/assets/volume-up.svg","webpack://[name]/./src/assets/volume-down.svg","webpack://[name]/./src/assets/volume-off.svg","webpack://[name]/./src/assets/full.svg","webpack://[name]/./src/assets/full-web.svg","webpack://[name]/./src/assets/setting.svg","webpack://[name]/./src/assets/right.svg","webpack://[name]/./src/assets/comment.svg","webpack://[name]/./src/assets/comment-off.svg","webpack://[name]/./src/assets/send.svg","webpack://[name]/./src/assets/pallette.svg","webpack://[name]/./src/assets/camera.svg","webpack://[name]/./src/assets/subtitle.svg","webpack://[name]/./src/assets/loading.svg","webpack://[name]/./src/template/player.art","webpack://[name]/./src/css/index.scss?b345","webpack://[name]/./src/css/index.scss","webpack://[name]/./node_modules/balloon-css/balloon.css","webpack://[name]/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://[name]/./node_modules/timers-browserify/main.js","webpack://[name]/./node_modules/setimmediate/setImmediate.js","webpack://[name]/./node_modules/axios/lib/axios.js","webpack://[name]/./node_modules/axios/node_modules/is-buffer/index.js","webpack://[name]/./node_modules/axios/lib/core/Axios.js","webpack://[name]/./node_modules/axios/lib/core/InterceptorManager.js","webpack://[name]/./node_modules/axios/lib/core/dispatchRequest.js","webpack://[name]/./node_modules/axios/lib/core/transformData.js","webpack://[name]/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://[name]/./node_modules/axios/lib/core/settle.js","webpack://[name]/./node_modules/axios/lib/core/enhanceError.js","webpack://[name]/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://[name]/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://[name]/./node_modules/axios/lib/helpers/cookies.js","webpack://[name]/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://[name]/./node_modules/axios/lib/helpers/combineURLs.js","webpack://[name]/./node_modules/axios/lib/cancel/CancelToken.js","webpack://[name]/./node_modules/axios/lib/helpers/spread.js","webpack://[name]/./node_modules/art-template/lib/compile/runtime.js","webpack://[name]/./src/js/utils.js","webpack://[name]/./src/js/api.js","webpack://[name]/./src/js/options.js","webpack://[name]/./src/js/i18n.js","webpack://[name]/./src/js/icons.js","webpack://[name]/./src/js/template.js","webpack://[name]/./src/js/danmaku.js","webpack://[name]/./src/js/events.js","webpack://[name]/./src/js/fullscreen.js","webpack://[name]/./src/js/user.js","webpack://[name]/./src/js/subtitle.js","webpack://[name]/./src/js/bar.js","webpack://[name]/./src/js/timer.js","webpack://[name]/./src/js/bezel.js","webpack://[name]/./src/js/thumbnails.js","webpack://[name]/./src/js/controller.js","webpack://[name]/./src/js/setting.js","webpack://[name]/./src/js/comment.js","webpack://[name]/./src/js/hotkey.js","webpack://[name]/./src/js/contextmenu.js","webpack://[name]/./src/js/info-panel.js","webpack://[name]/./src/js/player.js","webpack://[name]/./src/js/index.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_typeof","obj","iterator","constructor","isBuffer","toString","isArray","val","isObject","isFunction","forEach","fn","length","isArrayBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isNumber","isUndefined","isDate","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","navigator","product","document","merge","result","assignValue","arguments","deepMerge","extend","a","b","thisArg","trim","str","replace","useSourceMap","list","this","map","item","content","cssMapping","btoa","sourceMapping","sourceMap","base64","unescape","encodeURIComponent","JSON","stringify","data","concat","sourceURLs","sources","source","sourceRoot","join","cssWithMappingToString","mediaQuery","alreadyImportedModules","id","_i","push","g","Function","e","cachedSetTimeout","cachedClearTimeout","process","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","apply","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","utils","encode","url","params","paramsSerializer","serializedParams","parts","v","toISOString","hashmarkIndex","indexOf","slice","__CANCEL__","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","headers","adapter","defaults","XMLHttpRequest","transformRequest","transformResponse","parse","xsrfCookieName","xsrfHeaderName","maxContentLength","validateStatus","status","common","method","settle","buildURL","parseHeaders","isURLSameOrigin","createError","config","Promise","resolve","reject","requestData","requestHeaders","request","auth","username","password","Authorization","open","toUpperCase","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onabort","onerror","ontimeout","cookies","xsrfValue","withCredentials","read","undefined","toLowerCase","setRequestHeader","onDownloadProgress","addEventListener","onUploadProgress","upload","cancelToken","promise","then","cancel","abort","send","enhanceError","message","code","error","config1","config2","prop","Cancel","setTimeoutFunc","x","Boolean","TypeError","_state","_handled","_value","_deferreds","doResolve","handle","self","deferred","_immediateFn","cb","onFulfilled","onRejected","ret","newValue","finale","_unhandledRejectionFn","Handler","done","reason","ex","prom","all","arr","remaining","res","race","setImmediate","err","console","warn","callback","options","locals","memo","stylesInDom","isOldIE","atob","getTarget","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","listToStyles","styles","newStyles","base","part","css","media","addStylesToDom","domStyle","j","refs","addStyle","insertStyleElement","style","createElement","attributes","nonce","keys","setAttribute","insert","appendChild","textStore","replaceText","index","replacement","filter","applyToSingletonTag","remove","styleSheet","cssText","cssNode","createTextNode","childNodes","removeChild","insertBefore","applyToTag","firstChild","singleton","singletonCounter","update","styleIndex","parentNode","removeStyleElement","newObj","newList","mayRemove","_domStyle","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","clearImmediate","global","registerImmediate","html","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","getPrototypeOf","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","event","port2","documentElement","script","Math","random","attachEvent","task","Axios","mergeConfig","createInstance","defaultConfig","context","instance","axios","instanceConfig","CancelToken","isCancel","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","unshift","fulfilled","rejected","shift","getUri","handlers","use","eject","h","transformData","isAbsoluteURL","combineURLs","throwIfCancellationRequested","throwIfRequested","baseURL","fns","normalizedName","isAxiosError","toJSON","description","number","fileName","lineNumber","columnNumber","stack","ignoreDuplicateOf","parsed","split","line","substr","originURL","msie","test","userAgent","urlParsingNode","resolveURL","href","protocol","host","search","hash","hostname","port","pathname","charAt","location","requestURL","write","expires","path","domain","secure","cookie","Date","toGMTString","match","RegExp","decodeURIComponent","now","relativeURL","executor","resolvePromise","token","globalThis","runtime","ESCAPE_REG","$escape","regexResult","exec","lastIndex","_char","charCodeAt","substring","xmlEscape","$each","isMobile","secondToTime","second","Infinity","hour","floor","min","sec","num","getElementViewLeft","element","actualLeft","offsetLeft","current","offsetParent","elementScrollLeft","body","scrollLeft","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","getBoundingClientRectViewLeft","scrollTop","scrollY","pageYOffset","getBoundingClientRect","offset","temp","top","rect","left","getScrollPosition","pageXOffset","setScrollPosition","_ref","_ref$left","_ref$top","isFirefox","scrollTo","isChrome","storage","set","localStorage","setItem","getItem","cumulativeOffset","offsetTop","nameMap","dragStart","dragMove","dragEnd","color2Number","color","parseInt","number2Color","number2Type","post","success","msg","time","type","author","text","defaultOption","container","getElementsByClassName","live","autoplay","theme","loop","lang","language","browserLanguage","screenshot","hotkey","preload","volume","apiBackend","video","contextmenu","mutex","pluginOptions","hls","flvjs","dash","webtorrent","defaultKey","danmaku","user","subtitle","fontSize","bottom","quality","defaultQuality","click","player","infoPanel","triggle","link","tranTxt","_this","tran","play","pause","volumeUp","volumeDown","volumeOff","full","fullWeb","setting","right","comment","commentOff","pallette","camera","loading","_defineProperties","props","descriptor","configurable","writable","Template","Constructor","_classCallCheck","init","protoProps","staticProps","innerHTML","icons","pic","volumeBar","volumeBarWrap","volumeBarWrapWrap","volumeButton","volumeButtonIcon","volumeIcon","playedBar","loadedBar","playedBarWrap","playedBarTime","danmakuLoading","bezel","playButton","videoWrap","controllerMask","ptime","settingButton","settingBox","mask","loopToggle","showDanmaku","showDanmakuToggle","unlimitDanmaku","unlimitDanmakuToggle","speed","speedItem","querySelectorAll","danmakuOpacityBar","danmakuOpacityBarWrap","danmakuOpacityBarWrapWrap","danmakuOpacityBox","dtime","controller","commentInput","commentButton","commentSettingBox","commentSettingButton","commentSettingFill","commentSendButton","commentSendFill","commentColorSettingBox","browserFullButton","webFullButton","menu","menuItem","qualityList","camareButton","subtitleButton","subtitleButtonInner","qualityButton","barPreview","barWrap","notice","infoPanelClose","infoVersion","infoFPS","infoType","infoUrl","infoResolution","infoDuration","infoDanmakuId","infoDanmakuApi","infoDanmakuAmount","Danmaku","danTunnel","danIndex","dan","showing","_opacity","opacity","events","unlimited","_measure","load","apiurl","api","maximum","address","endpoints","addition","trigger","_readAllEndpoints","results","sort","requestAnimationFrame","frame","newAPI","clear","_this2","readCount","_loop","_this3","danmakuData","splice","htmlEncode","border","borderColor","draw","_this4","paused","parseFloat","percentage","items","_this5","itemHeight","height","danWidth","offsetWidth","danHeight","offsetHeight","itemY","danItemRight","ele","eleWidth","width","eleRight","danSpeed","getTunnel","tmp","_loop2","danRight","_ret","docFragment","createDocumentFragment","_loop3","classList","add","itemWidth","tunnel","transform","measureStyle","getComputedStyle","getContext","font","getPropertyValue","measureText","seek","_boolean","Events","videoEvents","playerEvents","info","FullScreen","lastScrollPosition","resize","fullscreenchange","isFullScreen","docfullscreenchange","fullEle","msFullscreenElement","contains","anotherType","anotherTypeOn","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","webkitEnterFullscreen","webkitEnterFullScreen","msRequestFullscreen","cancelFullScreen","mozCancelFullScreen","webkitCancelFullScreen","webkitCancelFullscreen","msCancelFullScreen","msExitFullscreen","User","storageName","Subtitle","textTracks","track","oncuechange","cue","activeCues","template","getCueAsHTML","trackHtml","show","hide","Bar","elements","played","loaded","direction","max","Timer","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","types","lastPlayPos","currentPlayPos","bufferingDetected","loadingChecker","enableloadingChecker","currentTime","enablefpsChecker","initfpsChecker","fpsStart","fpsIndex","fpsCurrent","fps","infoChecker","enableinfoChecker","Bezel","icon","Thumbnails","barWidth","backgroundImage","barWrapWidth","display","position","backgroundPosition","ceil","Controller","autoHideTimer","setAutoHide","initPlayButton","initThumbnails","initPlayedBar","initFullButton","initQualityButton","initScreenshotButton","initSubtitleButton","initHighlights","initVolumeButton","toggle","duration","highlight","highlights","thumbnails","videoHeight","videoWidth","thumbMove","clientX","changedTouches","clientWidth","bar","thumbUp","removeEventListener","timer","enable","disable","px","tx","move","innerText","_this6","fullScreen","_this7","volumeMove","muted","switchVolumeIcon","_this8","switchQuality","dataset","_this9","dataURL","canvas","drawImage","toBlob","blob","URL","createObjectURL","download","revokeObjectURL","_this10","balloon","_this11","disableAutoHide","isShow","Setting","checked","unlimit","danmakuMove","danmakuUp","Comment","toggleSetting","fill","hideSetting","keyCode","focus","showSetting","blur","HotKey","tag","activeElement","tagName","editable","getAttribute","preventDefault","ContextMenu","shown","clientRect","clientY","y","InfoPanel","beginTime","toFixed","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","_defineProperty","instances","DPlayer","getOwnPropertyDescriptors","defineProperties","_objectSpread","qualityIndex","arrow","plugins","initVideo","nostorage","nonotice","isNaN","formatPercentage","danmakuAPI","poster","src","initMSE","reload","customType","canPlayType","Hls","isSupported","loadSource","attachMedia","destroy","_options","assign","flvPlayer","createPlayer","attachMediaElement","unload","detachMediaElement","dashjs","dashjsPlayer","MediaPlayer","initialize","_options2","updateSettings","reset","WebTorrent","WEBRTC_SUPPORT","_options3","client","torrentId","torrent","files","find","file","endsWith","renderTo","buffered","end","switchingQuality","videoHTML","videoEle","DOMParser","parseFromString","getElementsByTagName","prevVideo","noticeTime","rate","playbackRate","log"],"mappings":"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","file":"DPlayer.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"DPlayer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"DPlayer\"] = factory();\n\telse\n\t\troot[\"DPlayer\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 57);\n","'use strict';\nfunction _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nvar bind = require('./helpers/bind');\nvar isBuffer = require('is-buffer');\nvar toString = Object.prototype.toString;\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\nfunction isFormData(val) {\n return typeof FormData !== 'undefined' && val instanceof FormData;\n}\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 && val.buffer instanceof ArrayBuffer;\n }\n return result;\n}\nfunction isString(val) {\n return typeof val === 'string';\n}\nfunction isNumber(val) {\n return typeof val === 'number';\n}\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\nfunction isObject(val) {\n return val !== null && _typeof(val) === 'object';\n}\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {\n return false;\n }\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\nfunction forEach(obj, fn) {\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n if (_typeof(obj) !== 'object') {\n obj = [obj];\n }\n if (isArray(obj)) {\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\nfunction merge() {\n var result = {};\n function assignValue(val, key) {\n if (_typeof(result[key]) === 'object' && _typeof(val) === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\nfunction deepMerge() {\n var result = {};\n function assignValue(val, key) {\n if (_typeof(result[key]) === 'object' && _typeof(val) === 'object') {\n result[key] = deepMerge(result[key], val);\n } else if (_typeof(val) === 'object') {\n result[key] = deepMerge({}, val);\n } else {\n result[key] = val;\n }\n }\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n deepMerge: deepMerge,\n extend: extend,\n trim: trim\n};","{{ set enableSubtitle = subtitle && subtitle.type === 'webvtt' }}\n\n {{ if enableSubtitle }}\n \n {{ /if }}\n","module.exports = require('./lib/axios');","'use strict';\nmodule.exports = function (useSourceMap) {\n var list = [];\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n if (item[2]) {\n return '@media '.concat(item[2], '{').concat(content, '}');\n }\n return content;\n }).join('');\n };\n list.i = function (modules, mediaQuery) {\n if (typeof modules === 'string') {\n modules = [[\n null,\n modules,\n ''\n ]];\n }\n var alreadyImportedModules = {};\n for (var i = 0; i < this.length; i++) {\n var id = this[i][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n for (var _i = 0; _i < modules.length; _i++) {\n var item = modules[_i];\n if (item[0] == null || !alreadyImportedModules[item[0]]) {\n if (mediaQuery && !item[2]) {\n item[2] = mediaQuery;\n } else if (mediaQuery) {\n item[2] = '('.concat(item[2], ') and (').concat(mediaQuery, ')');\n }\n list.push(item);\n }\n }\n };\n return list;\n};\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || '';\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return '/*# sourceURL='.concat(cssMapping.sourceRoot).concat(source, ' */');\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n return [content].join('\\n');\n}\nfunction toComment(sourceMap) {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,'.concat(base64);\n return '/*# '.concat(data, ' */');\n}","function _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nvar g;\ng = function () {\n return this;\n}();\ntry {\n g = g || new Function('return this')();\n} catch (e) {\n if ((typeof window === 'undefined' ? 'undefined' : _typeof(window)) === 'object')\n g = window;\n}\nmodule.exports = g;","var process = module.exports = {};\nvar cachedSetTimeout;\nvar cachedClearTimeout;\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout() {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n}());\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n return setTimeout(fun, 0);\n }\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n return cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n return cachedSetTimeout.call(null, fun, 0);\n } catch (e) {\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n return clearTimeout(marker);\n }\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n return cachedClearTimeout(marker);\n } catch (e) {\n try {\n return cachedClearTimeout.call(null, marker);\n } catch (e) {\n return cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n var len = queue.length;\n while (len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = '';\nprocess.versions = {};\nfunction noop() {\n}\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\nprocess.listeners = function (name) {\n return [];\n};\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\nprocess.cwd = function () {\n return '/';\n};\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function () {\n return 0;\n};","'use strict';\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};","'use strict';\nvar utils = require('./../utils');\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');\n}\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n if (!params) {\n return url;\n }\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n serializedParams = parts.join('&');\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';\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};","'use strict';\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar DEFAULT_CONTENT_TYPE = { 'Content-Type': 'application/x-www-form-urlencoded' };\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n adapter = require('./adapters/http');\n } else if (typeof XMLHttpRequest !== 'undefined') {\n adapter = require('./adapters/xhr');\n }\n return adapter;\n}\nvar defaults = {\n adapter: getDefaultAdapter(),\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) || 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 setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) {\n }\n }\n return data;\n }],\n timeout: 0,\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n maxContentLength: -1,\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\ndefaults.headers = { common: { 'Accept': 'application/json, text/plain, */*' } };\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});\nmodule.exports = defaults;","'use strict';\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildURL = require('./../helpers/buildURL');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type'];\n }\n var request = new XMLHttpRequest();\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n request.timeout = config.timeout;\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 var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? 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(resolve, reject, response);\n request = null;\n };\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n request = null;\n };\n request.onerror = function handleError() {\n reject(createError('Network Error', config, null, request));\n request = null;\n };\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED', request));\n request = null;\n };\n if (utils.isStandardBrowserEnv()) {\n var cookies = require('./../helpers/cookies');\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n delete requestHeaders[key];\n } else {\n request.setRequestHeader(key, val);\n }\n });\n }\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n if (config.cancelToken) {\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n request.abort();\n reject(cancel);\n request = null;\n });\n }\n if (requestData === undefined) {\n requestData = null;\n }\n request.send(requestData);\n });\n};","'use strict';\nvar enhanceError = require('./enhanceError');\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};","'use strict';\nvar utils = require('../utils');\nmodule.exports = function mergeConfig(config1, config2) {\n config2 = config2 || {};\n var config = {};\n utils.forEach([\n 'url',\n 'method',\n 'params',\n 'data'\n ], function valueFromConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n }\n });\n utils.forEach([\n 'headers',\n 'auth',\n 'proxy'\n ], function mergeDeepProperties(prop) {\n if (utils.isObject(config2[prop])) {\n config[prop] = utils.deepMerge(config1[prop], config2[prop]);\n } else if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (utils.isObject(config1[prop])) {\n config[prop] = utils.deepMerge(config1[prop]);\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n utils.forEach([\n 'baseURL',\n 'transformRequest',\n 'transformResponse',\n 'paramsSerializer',\n 'timeout',\n 'withCredentials',\n 'adapter',\n 'responseType',\n 'xsrfCookieName',\n 'xsrfHeaderName',\n 'onUploadProgress',\n 'onDownloadProgress',\n 'maxContentLength',\n 'validateStatus',\n 'maxRedirects',\n 'httpAgent',\n 'httpsAgent',\n 'cancelToken',\n 'socketPath'\n ], function defaultToConfig2(prop) {\n if (typeof config2[prop] !== 'undefined') {\n config[prop] = config2[prop];\n } else if (typeof config1[prop] !== 'undefined') {\n config[prop] = config1[prop];\n }\n });\n return config;\n};","'use strict';\nfunction Cancel(message) {\n this.message = message;\n}\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\nCancel.prototype.__CANCEL__ = true;\nmodule.exports = Cancel;","'use strict';\nmodule.exports = require('./compile/runtime');","function _typeof(obj) {\n if (typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol') {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === 'function' && obj.constructor === Symbol && obj !== Symbol.prototype ? 'symbol' : typeof obj;\n };\n }\n return _typeof(obj);\n}\nimport promiseFinally from './finally';\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.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;","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","module.exports = \"\"","
\n
\n {{ include './video.art' video }}\n {{ if options.logo }}\n
\n \n
\n {{ /if }}\n
\n
\n
\n
\n
\n \n {{ if options.danmaku }}\n {{ tran('Danmaku is loading') }}\n {{ /if }}\n {{@ icons.loading }}\n
\n
\n
\n
\n
\n \n
\n
\n
{{ tran('Set danmaku color') }}
\n \n \n \n \n \n \n
\n
\n
{{ tran('Set danmaku type') }}
\n \n \n \n
\n
\n \n \n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n \n 0:00 /\n 0:00\n \n {{ if options.live }}\n {{ tran('Live') }}\n {{ /if }}\n
\n
\n {{ if options.video.quality }}\n
\n \n
\n
\n {{ each options.video.quality }}\n
{{ $value.name }}
\n {{ /each }}\n
\n
\n
\n {{ /if }}\n {{ if options.screenshot }}\n
\n {{@ icons.camera }}\n
\n {{ /if }}\n
\n \n
\n {{ if options.subtitle }}\n
\n \n
\n {{ /if }}\n
\n \n
\n
\n
\n {{ tran('Speed') }}\n
{{@ icons.right }}
\n
\n
\n {{ tran('Loop') }}\n
\n \n \n
\n
\n
\n {{ tran('Show danmaku') }}\n
\n \n \n
\n
\n
\n {{ tran('Unlimited danmaku') }}\n
\n \n \n
\n
\n
\n {{ tran('Opacity for danmaku') }}\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n 0.5\n
\n
\n 0.75\n
\n
\n {{ tran('Normal') }}\n
\n
\n 1.25\n
\n
\n 1.5\n
\n
\n 2\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
00:00
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
[x]
\n
\n Player version\n \n
\n
\n Player FPS\n \n
\n
\n Video type\n \n
\n
\n Video url\n \n
\n
\n Video resolution\n \n
\n
\n Video duration\n \n
\n {{ if options.danmaku }}\n
\n Danamku id\n \n
\n
\n Danamku api\n \n
\n
\n Danamku amount\n \n
\n {{ /if }}\n
\n
\n {{ each options.contextmenu }}\n
\n {{ tran($value.text) }}\n
\n {{ /each }}\n
\n
","var content = require(\"!!../../node_modules/css-loader/dist/cjs.js??ref--5-1!../../node_modules/postcss-loader/src/index.js??ref--5-2!../../node_modules/sass-loader/dist/cjs.js!./index.scss\");\n\nif (typeof content === 'string') {\n content = [[module.id, content, '']];\n}\n\nvar options = {}\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = require(\"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\")(content, options);\n\nif (content.locals) {\n module.exports = content.locals;\n}\n","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Imports\nexports.i(require(\"-!../../node_modules/css-loader/dist/cjs.js??ref--5-1!../../node_modules/postcss-loader/src/index.js??ref--5-2!../../node_modules/balloon-css/balloon.css\"), \"\");\n// Module\nexports.push([module.id, \"@-webkit-keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}@keyframes my-face{2%{transform:translateY(1.5px) rotate(1.5deg)}4%{transform:translateY(-1.5px) rotate(-.5deg)}6%{transform:translateY(1.5px) rotate(-1.5deg)}8%{transform:translateY(-1.5px) rotate(-1.5deg)}10%{transform:translateY(2.5px) rotate(1.5deg)}12%{transform:translateY(-.5px) rotate(1.5deg)}14%{transform:translateY(-1.5px) rotate(1.5deg)}16%{transform:translateY(-.5px) rotate(-1.5deg)}18%{transform:translateY(.5px) rotate(-1.5deg)}20%{transform:translateY(-1.5px) rotate(2.5deg)}22%{transform:translateY(.5px) rotate(-1.5deg)}24%{transform:translateY(1.5px) rotate(1.5deg)}26%{transform:translateY(.5px) rotate(.5deg)}28%{transform:translateY(.5px) rotate(1.5deg)}30%{transform:translateY(-.5px) rotate(2.5deg)}32%{transform:translateY(1.5px) rotate(-.5deg)}34%{transform:translateY(1.5px) rotate(-.5deg)}36%{transform:translateY(-1.5px) rotate(2.5deg)}38%{transform:translateY(1.5px) rotate(-1.5deg)}40%{transform:translateY(-.5px) rotate(2.5deg)}42%{transform:translateY(2.5px) rotate(-1.5deg)}44%{transform:translateY(1.5px) rotate(.5deg)}46%{transform:translateY(-1.5px) rotate(2.5deg)}48%{transform:translateY(-.5px) rotate(.5deg)}50%{transform:translateY(.5px) rotate(.5deg)}52%{transform:translateY(2.5px) rotate(2.5deg)}54%{transform:translateY(-1.5px) rotate(1.5deg)}56%{transform:translateY(2.5px) rotate(2.5deg)}58%{transform:translateY(.5px) rotate(2.5deg)}60%{transform:translateY(2.5px) rotate(2.5deg)}62%{transform:translateY(-.5px) rotate(2.5deg)}64%{transform:translateY(-.5px) rotate(1.5deg)}66%{transform:translateY(1.5px) rotate(-.5deg)}68%{transform:translateY(-1.5px) rotate(-.5deg)}70%{transform:translateY(1.5px) rotate(.5deg)}72%{transform:translateY(2.5px) rotate(1.5deg)}74%{transform:translateY(-.5px) rotate(.5deg)}76%{transform:translateY(-.5px) rotate(2.5deg)}78%{transform:translateY(-.5px) rotate(1.5deg)}80%{transform:translateY(1.5px) rotate(1.5deg)}82%{transform:translateY(-.5px) rotate(.5deg)}84%{transform:translateY(1.5px) rotate(2.5deg)}86%{transform:translateY(-1.5px) rotate(-1.5deg)}88%{transform:translateY(-.5px) rotate(2.5deg)}90%{transform:translateY(2.5px) rotate(-.5deg)}92%{transform:translateY(.5px) rotate(-.5deg)}94%{transform:translateY(2.5px) rotate(.5deg)}96%{transform:translateY(-.5px) rotate(1.5deg)}98%{transform:translateY(-1.5px) rotate(-.5deg)}0%,to{transform:translate(0) rotate(0deg)}}.dplayer{position:relative;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;line-height:1}.dplayer *{box-sizing:content-box}.dplayer svg{width:100%;height:100%}.dplayer svg circle,.dplayer svg path{fill:#fff}.dplayer:-webkit-full-screen{width:100%;height:100%;background:#000;position:fixed;z-index:100000;left:0;top:0;margin:0;padding:0;transform:translate(0)}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{-webkit-animation:danmaku-center 6s linear;animation:danmaku-center 6s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer:-webkit-full-screen .dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{-webkit-animation:danmaku 8s linear;animation:danmaku 8s linear;-webkit-animation-play-state:inherit;animation-play-state:inherit}.dplayer.dplayer-live .dplayer-bar-wrap,.dplayer.dplayer-live.dplayer-no-danmaku .dplayer-setting,.dplayer.dplayer-live .dplayer-setting-loop,.dplayer.dplayer-live .dplayer-setting-speed,.dplayer.dplayer-live .dplayer-time,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-comment,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danmaku,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-danunlimit,.dplayer.dplayer-no-danmaku .dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box .dplayer-setting-showdan,.dplayer.dplayer-no-danmaku .dplayer-danmaku{display:none}.dplayer.dplayer-arrow .dplayer-danmaku{font-size:18px}.dplayer.dplayer-arrow .dplayer-icon{margin:0 -3px}.dplayer.dplayer-playing .dplayer-danmaku .dplayer-danmaku-move{-webkit-animation-play-state:running;animation-play-state:running}@media (min-width:900px){.dplayer.dplayer-playing .dplayer-controller,.dplayer.dplayer-playing .dplayer-controller-mask{opacity:0}.dplayer.dplayer-playing:hover .dplayer-controller,.dplayer.dplayer-playing:hover .dplayer-controller-mask{opacity:1}}.dplayer.dplayer-loading .dplayer-bezel .diplayer-loading-icon{display:block}.dplayer.dplayer-loading .dplayer-danmaku,.dplayer.dplayer-loading .dplayer-danmaku-move,.dplayer.dplayer-paused .dplayer-danmaku,.dplayer.dplayer-paused .dplayer-danmaku-move{-webkit-animation-play-state:paused;animation-play-state:paused}.dplayer.dplayer-hide-controller{cursor:none}.dplayer.dplayer-hide-controller .dplayer-controller,.dplayer.dplayer-hide-controller .dplayer-controller-mask{opacity:0;transform:translateY(100%)}.dplayer.dplayer-show-controller .dplayer-controller,.dplayer.dplayer-show-controller .dplayer-controller-mask{opacity:1}.dplayer.dplayer-fulled{position:fixed;z-index:100000;left:0;top:0;width:100%;height:100%}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-camera-icon,.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-volume{display:none}.dplayer.dplayer-mobile .dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:static;display:inline-block}.dplayer.dplayer-mobile .dplayer-bar-time{display:none}.dplayer-web-fullscreen-fix{position:fixed;top:0;left:0;margin:0;padding:0}[data-balloon]:before{display:none}[data-balloon]:after{padding:.3em .7em;background:rgba(17,17,17,.7)}[data-balloon][data-balloon-pos=up]:after{margin-bottom:0}.dplayer-bezel{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon{position:absolute;top:50%;left:50%;margin:-26px 0 0 -26px;height:52px;width:52px;padding:12px;box-sizing:border-box;background:rgba(0,0,0,.5);border-radius:50%;opacity:0;pointer-events:none}.dplayer-bezel .dplayer-bezel-icon.dplayer-bezel-transition{-webkit-animation:bezel-hide .5s linear;animation:bezel-hide .5s linear}@-webkit-keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}@keyframes bezel-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.dplayer-bezel .dplayer-danloading{position:absolute;top:50%;margin-top:-7px;width:100%;text-align:center;font-size:14px;line-height:14px;-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-bezel .diplayer-loading-icon{display:none;position:absolute;top:50%;left:50%;margin:-18px 0 0 -18px;height:36px;width:36px;pointer-events:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-hide{display:none}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot{-webkit-animation:diplayer-loading-dot-fade .8s ease infinite;animation:diplayer-loading-dot-fade .8s ease infinite;opacity:0;transform-origin:4px 4px}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-7{-webkit-animation-delay:.7s;animation-delay:.7s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-6{-webkit-animation-delay:.6s;animation-delay:.6s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-5{-webkit-animation-delay:.5s;animation-delay:.5s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-4{-webkit-animation-delay:.4s;animation-delay:.4s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-3{-webkit-animation-delay:.3s;animation-delay:.3s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-2{-webkit-animation-delay:.2s;animation-delay:.2s}.dplayer-bezel .diplayer-loading-icon .diplayer-loading-dot.diplayer-loading-dot-1{-webkit-animation-delay:.1s;animation-delay:.1s}@-webkit-keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}@keyframes diplayer-loading-dot-fade{0%{opacity:.7;transform:scale(1.2)}50%{opacity:.25;transform:scale(.9)}to{opacity:.25;transform:scale(.85)}}.dplayer-controller-mask{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom;height:98px;width:100%}.dplayer-controller,.dplayer-controller-mask{position:absolute;bottom:0;transition:all .3s ease}.dplayer-controller{left:0;right:0;height:41px;padding:0 20px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons{display:none}.dplayer-controller.dplayer-controller-comment .dplayer-icons.dplayer-comment-box{display:block}.dplayer-controller .dplayer-bar-wrap{padding:5px 0;cursor:pointer;position:absolute;bottom:33px;width:calc(100% - 40px);height:3px}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-bar .dplayer-played .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-bar-wrap:hover .dplayer-highlight{display:block;width:8px;transform:translateX(-4px);top:4px;height:40%}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight{z-index:12;position:absolute;top:5px;width:6px;height:20%;border-radius:6px;background-color:#fff;text-align:center;transform:translateX(-3px);transition:all .2s ease-in-out}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover .dplayer-highlight-text{display:block}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-preview,.dplayer-controller .dplayer-bar-wrap .dplayer-highlight:hover~.dplayer-bar-time{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-highlight .dplayer-highlight-text{display:none;position:absolute;left:50%;top:-24px;padding:5px 8px;background-color:rgba(0,0,0,.62);color:#fff;border-radius:4px;font-size:12px;white-space:nowrap;transform:translateX(-50%)}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview{position:absolute;background:#fff;pointer-events:none;display:none;background-size:16000px 100%}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-preview-canvas{position:absolute;width:100%;height:100%;z-index:1;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time{position:absolute;left:0;top:-20px;border-radius:4px;padding:5px 7px;background-color:rgba(0,0,0,.62);color:#fff;font-size:12px;text-align:center;opacity:1;transition:opacity .1s ease-in-out;word-wrap:normal;word-break:normal;z-index:2;pointer-events:none}.dplayer-controller .dplayer-bar-wrap .dplayer-bar-time.hidden{opacity:0}.dplayer-controller .dplayer-bar-wrap .dplayer-bar{position:relative;height:3px;width:100%;background:hsla(0,0%,100%,.2);cursor:pointer}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded{background:hsla(0,0%,100%,.4);transition:all .5s ease}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-loaded,.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played{position:absolute;left:0;top:0;bottom:0;height:3px;will-change:width}.dplayer-controller .dplayer-bar-wrap .dplayer-bar .dplayer-played .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons{height:38px;position:absolute;bottom:0}.dplayer-controller .dplayer-icons.dplayer-comment-box{display:none;position:absolute;transition:all .3s ease-in-out;z-index:2;height:38px;bottom:0;left:20px;right:20px;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-icon{position:absolute;left:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-send-icon{position:absolute;right:0;top:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box{position:absolute;background:rgba(28,28,28,.9);bottom:41px;left:0;box-shadow:0 0 25px rgba(0,0,0,.3);border-radius:4px;padding:10px 10px 16px;font-size:14px;width:204px;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box.dplayer-comment-setting-open{transform:scale(1)}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box input[type=radio]{display:none}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box label{cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-title{font-size:13px;color:#fff;line-height:30px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type .dplayer-comment-setting-title{margin-bottom:6px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(2) span{border-radius:4px 0 0 4px}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type label:nth-child(4) span{border-radius:0 4px 4px 0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type span{width:33%;padding:4px 6px;line-height:16px;display:inline-block;font-size:12px;color:#fff;border:1px solid #fff;margin-right:-1px;box-sizing:border-box;text-align:center;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-type input:checked+span{background:#e4e4e6;color:#1c1c1c}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color{font-size:0}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color label{font-size:0;padding:6px;display:inline-block}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span{width:22px;height:22px;display:inline-block;border-radius:50%;box-sizing:border-box;cursor:pointer}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-setting-box .dplayer-comment-setting-color span:hover{-webkit-animation:my-face 5s ease-in-out infinite;animation:my-face 5s ease-in-out infinite}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input{outline:none;border:none;padding:8px 31px;font-size:14px;line-height:18px;text-align:center;border-radius:4px;background:none;margin:0;height:100%;box-sizing:border-box;width:100%;color:#fff}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-webkit-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-moz-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input:-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-input-placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::placeholder{color:#fff;opacity:.8}.dplayer-controller .dplayer-icons.dplayer-comment-box .dplayer-comment-input::-ms-clear{display:none}.dplayer-controller .dplayer-icons.dplayer-icons-left .dplayer-icon{padding:7px}.dplayer-controller .dplayer-icons.dplayer-icons-right{right:20px}.dplayer-controller .dplayer-icons.dplayer-icons-right .dplayer-icon{padding:8px}.dplayer-controller .dplayer-icons .dplayer-live-badge,.dplayer-controller .dplayer-icons .dplayer-time{line-height:38px;color:#eee;text-shadow:0 0 2px rgba(0,0,0,.5);vertical-align:middle;font-size:13px;cursor:default}.dplayer-controller .dplayer-icons .dplayer-live-dot{display:inline-block;width:6px;height:6px;vertical-align:4%;margin-right:5px;content:\\\"\\\";border-radius:6px}.dplayer-controller .dplayer-icons .dplayer-icon{width:40px;height:100%;border:none;background-color:transparent;outline:none;cursor:pointer;vertical-align:middle;box-sizing:border-box;display:inline-block}.dplayer-controller .dplayer-icons .dplayer-icon .dplayer-icon-content{transition:all .2s ease-in-out;opacity:.8}.dplayer-controller .dplayer-icons .dplayer-icon:hover .dplayer-icon-content{opacity:1}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-quality-icon{color:#fff;width:auto;line-height:22px;font-size:14px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-comment-icon{padding:10px 9px 9px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-setting-icon{padding-top:8.5px}.dplayer-controller .dplayer-icons .dplayer-icon.dplayer-volume-icon{width:43px}.dplayer-controller .dplayer-icons .dplayer-volume{position:relative;display:inline-block;cursor:pointer;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume:hover .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar{width:45px}.dplayer-controller .dplayer-icons .dplayer-volume.dplayer-volume-active .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap{display:inline-block;margin:0 10px 0 -5px;vertical-align:middle;height:100%}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar{position:relative;top:17px;width:0;height:3px;background:#aaa;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;will-change:width}.dplayer-controller .dplayer-icons .dplayer-volume .dplayer-volume-bar-wrap .dplayer-volume-bar .dplayer-volume-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;transform:scale(0)}.dplayer-controller .dplayer-icons .dplayer-setting,.dplayer-controller .dplayer-icons .dplayer-subtitle-btn{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box{position:absolute;right:0;bottom:50px;transform:scale(0);width:150px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 0;transition:all .3s ease-in-out;overflow:hidden;z-index:2}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box>div.dplayer-setting-origin-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-open{transform:scale(1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-narrow{width:70px;height:180px;text-align:center}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-origin-panel{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-box.dplayer-setting-box-speed .dplayer-setting-speed-panel{display:block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item{height:30px;padding:5px 10px;box-sizing:border-box;cursor:pointer;position:relative}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-item:hover,.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-speed-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku{padding:5px 0}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-label{padding:0 10px;display:inline}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku:hover .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-label{display:none}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku.dplayer-setting-danmaku-active .dplayer-danmaku-bar-wrap{display:inline-block}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap{padding:0 10px;box-sizing:border-box;display:none;vertical-align:middle;height:100%;width:100%}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar{position:relative;top:8.5px;width:100%;height:3px;background:#fff;transition:all .3s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner{position:absolute;bottom:0;left:0;height:100%;transition:all .1s ease;background:#aaa;will-change:width}.dplayer-controller .dplayer-icons .dplayer-setting .dplayer-setting-danmaku .dplayer-danmaku-bar-wrap .dplayer-danmaku-bar .dplayer-danmaku-bar-inner .dplayer-thumb{position:absolute;top:0;right:5px;margin-top:-4px;margin-right:-10px;height:11px;width:11px;border-radius:50%;cursor:pointer;transition:all .3s ease-in-out;background:#aaa}.dplayer-controller .dplayer-icons .dplayer-full{display:inline-block;height:100%;position:relative}.dplayer-controller .dplayer-icons .dplayer-full:hover .dplayer-full-in-icon{display:block}.dplayer-controller .dplayer-icons .dplayer-full .dplayer-full-in-icon{position:absolute;top:-30px;z-index:1;display:none}.dplayer-controller .dplayer-icons .dplayer-quality{position:relative;display:inline-block;height:100%;z-index:2}.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-list,.dplayer-controller .dplayer-icons .dplayer-quality:hover .dplayer-quality-mask{display:block}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-mask{display:none;position:absolute;bottom:38px;left:-18px;width:80px;padding-bottom:12px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-list{display:none;font-size:12px;width:80px;border-radius:2px;background:rgba(28,28,28,.9);padding:5px 0;transition:all .3s ease-in-out;overflow:hidden;color:#fff;text-align:center}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item{height:25px;box-sizing:border-box;cursor:pointer;line-height:25px}.dplayer-controller .dplayer-icons .dplayer-quality .dplayer-quality-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-controller .dplayer-icons .dplayer-comment{display:inline-block;height:100%}.dplayer-controller .dplayer-icons .dplayer-label{color:#eee;font-size:13px;display:inline-block;vertical-align:middle;white-space:nowrap}.dplayer-controller .dplayer-icons .dplayer-toggle{width:32px;height:20px;text-align:center;font-size:0;vertical-align:middle;position:absolute;top:5px;right:10px}.dplayer-controller .dplayer-icons .dplayer-toggle input{max-height:0;max-width:0;display:none}.dplayer-controller .dplayer-icons .dplayer-toggle input+label{display:inline-block;position:relative;box-shadow:inset 0 0 0 0 #dfdfdf;border:1px solid #dfdfdf;height:20px;width:32px;border-radius:10px;box-sizing:border-box;cursor:pointer;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after,.dplayer-controller .dplayer-icons .dplayer-toggle input+label:before{content:\\\"\\\";position:absolute;display:block;height:18px;width:18px;top:0;left:0;border-radius:15px;transition:.2s ease-in-out}.dplayer-controller .dplayer-icons .dplayer-toggle input+label:after{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label{border-color:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:before{width:30px;background:hsla(0,0%,100%,.5)}.dplayer-controller .dplayer-icons .dplayer-toggle input:checked+label:after{left:12px}.dplayer-danmaku{position:absolute;left:0;right:0;top:0;bottom:0;font-size:22px;color:#fff}.dplayer-danmaku .dplayer-danmaku-item{display:inline-block;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;white-space:nowrap;text-shadow:.5px .5px .5px rgba(0,0,0,.5)}.dplayer-danmaku .dplayer-danmaku-item--demo{position:absolute;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-right{position:absolute;right:0;transform:translateX(100%)}.dplayer-danmaku .dplayer-danmaku-right.dplayer-danmaku-move{will-change:transform;-webkit-animation:danmaku 5s linear;animation:danmaku 5s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku{0%{transform:translateX(100%)}}@keyframes danmaku{0%{transform:translateX(100%)}}.dplayer-danmaku .dplayer-danmaku-bottom,.dplayer-danmaku .dplayer-danmaku-top{position:absolute;width:100%;text-align:center;visibility:hidden}.dplayer-danmaku .dplayer-danmaku-bottom.dplayer-danmaku-move,.dplayer-danmaku .dplayer-danmaku-top.dplayer-danmaku-move{will-change:visibility;-webkit-animation:danmaku-center 4s linear;animation:danmaku-center 4s linear;-webkit-animation-play-state:paused;animation-play-state:paused}@-webkit-keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}@keyframes danmaku-center{0%{visibility:visible}to{visibility:visible}}.dplayer-logo{pointer-events:none;position:absolute;left:20px;top:20px;max-width:50px;max-height:50px}.dplayer-logo img{max-width:100%;max-height:100%;background:none}.dplayer-menu{position:absolute;width:170px;border-radius:2px;background:rgba(28,28,28,.85);padding:5px 0;overflow:hidden;z-index:3;display:none}.dplayer-menu.dplayer-menu-show{display:block}.dplayer-menu .dplayer-menu-item{height:30px;box-sizing:border-box;cursor:pointer}.dplayer-menu .dplayer-menu-item:hover{background-color:hsla(0,0%,100%,.1)}.dplayer-menu .dplayer-menu-item a{padding:0 10px;line-height:30px;color:#eee;font-size:13px;display:inline-block;vertical-align:middle;width:100%;box-sizing:border-box;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-menu .dplayer-menu-item a:hover{text-decoration:none}.dplayer-notice{opacity:0;position:absolute;bottom:60px;left:20px;font-size:14px;border-radius:2px;background:rgba(28,28,28,.9);padding:7px 20px;transition:all .3s ease-in-out;overflow:hidden;color:#fff;pointer-events:none}.dplayer-subtitle{position:absolute;bottom:40px;width:90%;left:5%;text-align:center;color:#fff;text-shadow:.5px .5px .5px rgba(0,0,0,.5);font-size:20px}.dplayer-subtitle.dplayer-subtitle-hide{display:none}.dplayer-mask{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;display:none}.dplayer-mask.dplayer-mask-show{display:block}.dplayer-video-wrap{position:relative;background:#000;font-size:0;width:100%;height:100%}.dplayer-video-wrap .dplayer-video{width:100%;height:100%;display:none}.dplayer-video-wrap .dplayer-video-current{display:block}.dplayer-video-wrap .dplayer-video-prepare{display:none}.dplayer-info-panel{position:absolute;top:10px;left:10px;width:400px;background:rgba(28,28,28,.8);padding:10px;color:#fff;font-size:12px;border-radius:2px}.dplayer-info-panel-hide{display:none}.dplayer-info-panel .dplayer-info-panel-close{cursor:pointer;position:absolute;right:10px;top:10px}.dplayer-info-panel .dplayer-info-panel-item>span{display:inline-block;vertical-align:middle;line-height:15px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dplayer-info-panel .dplayer-info-panel-item-title{width:100px;text-align:right;margin-right:10px}.dplayer-info-panel .dplayer-info-panel-item-data{width:260px}\", \"\"]);\n","exports = module.exports = require(\"../css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \":root{--balloon-color:rgba(16,16,16,0.95);--balloon-font-size:12px;--balloon-move:4px}button[aria-label][data-balloon-pos]{overflow:visible}[aria-label][data-balloon-pos]{position:relative;cursor:pointer}[aria-label][data-balloon-pos]:after{text-indent:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:400;font-style:normal;text-shadow:none;font-size:var(--balloon-font-size);background:var(--balloon-color);border-radius:2px;color:#fff;content:attr(aria-label);padding:.5em 1em;white-space:nowrap}[aria-label][data-balloon-pos]:after,[aria-label][data-balloon-pos]:before{opacity:0;pointer-events:none;transition:all .18s ease-out .18s;position:absolute;z-index:10}[aria-label][data-balloon-pos]:before{width:0;height:0;border:5px solid transparent;border-top:5px solid var(--balloon-color);content:\\\"\\\"}[aria-label][data-balloon-pos]:hover:after,[aria-label][data-balloon-pos]:hover:before,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:after,[aria-label][data-balloon-pos]:not([data-balloon-nofocus]):focus:before,[aria-label][data-balloon-pos][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-visible]:before{opacity:1;pointer-events:none}[aria-label][data-balloon-pos].font-awesome:after{font-family:FontAwesome,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif}[aria-label][data-balloon-pos][data-balloon-break]:after{white-space:pre}[aria-label][data-balloon-pos][data-balloon-break][data-balloon-length]:after{white-space:pre-line;word-break:break-word}[aria-label][data-balloon-pos][data-balloon-blunt]:after,[aria-label][data-balloon-pos][data-balloon-blunt]:before{transition:none}[aria-label][data-balloon-pos][data-balloon-pos=up]:after{margin-bottom:10px}[aria-label][data-balloon-pos][data-balloon-pos=up]:after,[aria-label][data-balloon-pos][data-balloon-pos=up]:before{bottom:100%;left:50%;transform:translate(-50%,var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up][data-balloon-visible]:before{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:after{bottom:100%;left:0;margin-bottom:10px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:before{bottom:100%;left:5px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up-left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up-left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up-left][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:after{bottom:100%;right:0;margin-bottom:10px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:before{bottom:100%;right:5px;transform:translateY(var(--balloon-move));transform-origin:top}[aria-label][data-balloon-pos][data-balloon-pos=up-right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=up-right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=up-right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=up-right][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=down]:after{left:50%;margin-top:10px;top:100%;transform:translate(-50%,calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);left:50%;top:100%;transform:translate(-50%,calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down][data-balloon-visible]:before{transform:translate(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:after{left:0;margin-top:10px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);left:5px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down-left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down-left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down-left][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:after{right:0;margin-top:10px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:before{width:0;height:0;border:5px solid transparent;border-bottom:5px solid var(--balloon-color);right:5px;top:100%;transform:translateY(calc(var(--balloon-move)*-1))}[aria-label][data-balloon-pos][data-balloon-pos=down-right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=down-right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=down-right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=down-right][data-balloon-visible]:before{transform:translate(0)}[aria-label][data-balloon-pos][data-balloon-pos=left]:after{margin-right:10px;right:100%;top:50%;transform:translate(var(--balloon-move),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:before{width:0;height:0;border:5px solid transparent;border-left:5px solid var(--balloon-color);right:100%;top:50%;transform:translate(var(--balloon-move),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=left]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=left][data-balloon-visible]:before{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:after{left:100%;margin-left:10px;top:50%;transform:translate(calc(var(--balloon-move)*-1),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:before{width:0;height:0;border:5px solid transparent;border-right:5px solid var(--balloon-color);left:100%;top:50%;transform:translate(calc(var(--balloon-move)*-1),-50%)}[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:after,[aria-label][data-balloon-pos][data-balloon-pos=right]:hover:before,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:after,[aria-label][data-balloon-pos][data-balloon-pos=right][data-balloon-visible]:before{transform:translateY(-50%)}[aria-label][data-balloon-pos][data-balloon-length=small]:after{white-space:normal;width:80px}[aria-label][data-balloon-pos][data-balloon-length=medium]:after{white-space:normal;width:150px}[aria-label][data-balloon-pos][data-balloon-length=large]:after{white-space:normal;width:260px}[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{white-space:normal;width:380px}@media screen and (max-width:768px){[aria-label][data-balloon-pos][data-balloon-length=xlarge]:after{white-space:normal;width:90vw}}[aria-label][data-balloon-pos][data-balloon-length=fit]:after{white-space:normal;width:100%}\", \"\"]);\n","\"use strict\";\n\nvar stylesInDom = {};\n\nvar isOldIE = function isOldIE() {\n var memo;\n return function memorize() {\n if (typeof memo === 'undefined') {\n // Test for IE <= 9 as proposed by Browserhacks\n // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n // Tests for existence of standard globals is to allow style-loader\n // to operate correctly into non-standard environments\n // @see https://github.com/webpack-contrib/style-loader/issues/177\n memo = Boolean(window && document && document.all && !window.atob);\n }\n\n return memo;\n };\n}();\n\nvar getTarget = function getTarget() {\n var memo = {};\n return function memorize(target) {\n if (typeof memo[target] === 'undefined') {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\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\n memo[target] = styleTarget;\n }\n\n return memo[target];\n };\n}();\n\nfunction listToStyles(list, options) {\n var styles = [];\n var newStyles = {};\n\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 css = item[1];\n var media = item[2];\n var sourceMap = item[3];\n var part = {\n css: css,\n media: media,\n sourceMap: sourceMap\n };\n\n if (!newStyles[id]) {\n styles.push(newStyles[id] = {\n id: id,\n parts: [part]\n });\n } else {\n newStyles[id].parts.push(part);\n }\n }\n\n return styles;\n}\n\nfunction addStylesToDom(styles, options) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i];\n var domStyle = stylesInDom[item.id];\n var j = 0;\n\n if (domStyle) {\n domStyle.refs++;\n\n for (; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j]);\n }\n\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j], options));\n }\n } else {\n var parts = [];\n\n for (; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j], options));\n }\n\n stylesInDom[item.id] = {\n id: item.id,\n refs: 1,\n parts: parts\n };\n }\n }\n}\n\nfunction insertStyleElement(options) {\n var style = document.createElement('style');\n\n if (typeof options.attributes.nonce === 'undefined') {\n var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n if (nonce) {\n options.attributes.nonce = nonce;\n }\n }\n\n Object.keys(options.attributes).forEach(function (key) {\n style.setAttribute(key, options.attributes[key]);\n });\n\n if (typeof options.insert === 'function') {\n options.insert(style);\n } else {\n var target = getTarget(options.insert || 'head');\n\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\n target.appendChild(style);\n }\n\n return style;\n}\n\nfunction removeStyleElement(style) {\n // istanbul ignore if\n if (style.parentNode === null) {\n return false;\n }\n\n style.parentNode.removeChild(style);\n}\n/* istanbul ignore next */\n\n\nvar replaceText = function replaceText() {\n var textStore = [];\n return function replace(index, replacement) {\n textStore[index] = replacement;\n return textStore.filter(Boolean).join('\\n');\n };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n var css = remove ? '' : obj.css; // For old IE\n\n /* istanbul ignore if */\n\n if (style.styleSheet) {\n style.styleSheet.cssText = replaceText(index, css);\n } else {\n var cssNode = document.createTextNode(css);\n var childNodes = style.childNodes;\n\n if (childNodes[index]) {\n style.removeChild(childNodes[index]);\n }\n\n if (childNodes.length) {\n style.insertBefore(cssNode, childNodes[index]);\n } else {\n style.appendChild(cssNode);\n }\n }\n}\n\nfunction applyToTag(style, options, obj) {\n var css = obj.css;\n var media = obj.media;\n var sourceMap = obj.sourceMap;\n\n if (media) {\n style.setAttribute('media', media);\n }\n\n if (sourceMap && btoa) {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n while (style.firstChild) {\n style.removeChild(style.firstChild);\n }\n\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n var style;\n var update;\n var remove;\n\n if (options.singleton) {\n var styleIndex = singletonCounter++;\n style = singleton || (singleton = insertStyleElement(options));\n update = applyToSingletonTag.bind(null, style, styleIndex, false);\n remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n } else {\n style = insertStyleElement(options);\n update = applyToTag.bind(null, style, options);\n\n remove = function remove() {\n removeStyleElement(style);\n };\n }\n\n update(obj);\n return function updateStyle(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n return;\n }\n\n update(obj = newObj);\n } else {\n remove();\n }\n };\n}\n\nmodule.exports = function (list, options) {\n options = options || {};\n options.attributes = typeof options.attributes === 'object' ? options.attributes : {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of