From 27dbd8dfbf07473be4e6122083bc8ec0110ce214 Mon Sep 17 00:00:00 2001 From: zhw2590582 Date: Fri, 8 Nov 2019 06:57:35 +0800 Subject: [PATCH 1/4] Update package.json --- package.json | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index acc494a42..e8194c077 100644 --- a/package.json +++ b/package.json @@ -30,31 +30,31 @@ }, "homepage": "https://github.com/zhw2590582/ArtPlayer", "dependencies": { - "@babel/core": "^7.6.0", + "@babel/core": "^7.7.2", "@babel/plugin-external-helpers": "^7.2.0", - "@babel/plugin-transform-runtime": "^7.6.0", - "@babel/preset-env": "^7.6.0", - "@babel/runtime": "^7.6.0", - "autoprefixer": "^9.6.1", + "@babel/plugin-transform-runtime": "^7.6.2", + "@babel/preset-env": "^7.7.1", + "@babel/runtime": "^7.7.2", + "autoprefixer": "^9.7.1", "babel-eslint": "^10.0.3", - "browser-env": "^3.2.6", + "browser-env": "^3.3.0", "chai": "^4.2.0", "chalk": "^2.4.2", "cpy": "^7.3.0", - "cross-env": "^6.0.0", + "cross-env": "^6.0.3", "cssnano": "^4.1.10", "del": "^5.1.0", - "eslint": "^6.4.0", + "eslint": "^6.6.0", "eslint-config-airbnb-base": "^14.0.0", - "eslint-config-prettier": "^6.3.0", + "eslint-config-prettier": "^6.5.0", "eslint-plugin-import": "^2.18.2", - "glob": "^7.1.4", + "glob": "^7.1.6", "inquirer": "^7.0.0", - "lerna": "^3.16.4", - "mocha": "^6.2.0", - "mocha-chrome": "^2.0.0", - "node-sass": "^4.12.0", - "rollup": "^1.21.4", + "lerna": "^3.18.3", + "mocha": "^6.2.2", + "mocha-chrome": "^2.2.0", + "node-sass": "^4.13.0", + "rollup": "^1.26.3", "rollup-plugin-babel": "^4.3.3", "rollup-plugin-commonjs": "^10.1.0", "rollup-plugin-eslint": "^7.0.0", @@ -62,7 +62,7 @@ "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-postcss": "^2.0.3", "rollup-plugin-replace": "^2.2.0", - "rollup-plugin-svgo": "^1.0.3", + "rollup-plugin-svgo": "^1.1.0", "rollup-plugin-uglify": "^6.0.3", "servor": "^2.2.1", "travis-size-report": "^1.1.0" From a67307d749473ab85d652394b392d4f8a369bc8f Mon Sep 17 00:00:00 2001 From: zhw2590582 Date: Sun, 10 Nov 2019 15:53:05 +0800 Subject: [PATCH 2/4] v3.1.17 --- lerna.json | 2 +- packages/artplayer-plugin-backlight/package.json | 2 +- packages/artplayer-plugin-danmuku/package.json | 2 +- packages/artplayer-plugin-gif/package.json | 2 +- packages/artplayer-plugin-playlist/package.json | 2 +- packages/artplayer-react/package.json | 2 +- packages/artplayer-tool-github/package.json | 2 +- packages/artplayer-tool-thumbnail/package.json | 2 +- packages/artplayer-vue/package.json | 2 +- packages/artplayer/package.json | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lerna.json b/lerna.json index 32bc37f24..37e58fdca 100644 --- a/lerna.json +++ b/lerna.json @@ -1,6 +1,6 @@ { "lerna": "3.4.3", - "version": "3.1.16", + "version": "3.1.17", "packages": [ "packages/*" ], diff --git a/packages/artplayer-plugin-backlight/package.json b/packages/artplayer-plugin-backlight/package.json index 0861e29e2..7e42aebbc 100644 --- a/packages/artplayer-plugin-backlight/package.json +++ b/packages/artplayer-plugin-backlight/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-plugin-backlight", - "version": "3.1.16", + "version": "3.1.17", "expose": "artplayerPluginBacklight", "description": "Backlight plugin for ArtPlayer", "main": "dist/artplayer-plugin-backlight.js", diff --git a/packages/artplayer-plugin-danmuku/package.json b/packages/artplayer-plugin-danmuku/package.json index c07df67a2..e602ed6f0 100644 --- a/packages/artplayer-plugin-danmuku/package.json +++ b/packages/artplayer-plugin-danmuku/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-plugin-danmuku", - "version": "3.1.16", + "version": "3.1.17", "expose": "artplayerPluginDanmuku", "description": "Danmuku plugin for ArtPlayer", "main": "dist/artplayer-plugin-danmuku.js", diff --git a/packages/artplayer-plugin-gif/package.json b/packages/artplayer-plugin-gif/package.json index 7daaff15d..653d0edf9 100644 --- a/packages/artplayer-plugin-gif/package.json +++ b/packages/artplayer-plugin-gif/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-plugin-gif", - "version": "3.1.16", + "version": "3.1.17", "expose": "artplayerPluginGif", "description": "Gif plugin for ArtPlayer", "main": "dist/artplayer-plugin-gif.js", diff --git a/packages/artplayer-plugin-playlist/package.json b/packages/artplayer-plugin-playlist/package.json index b8f0826c7..f0f0b78b8 100644 --- a/packages/artplayer-plugin-playlist/package.json +++ b/packages/artplayer-plugin-playlist/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-plugin-playlist", - "version": "3.1.16", + "version": "3.1.17", "expose": "artplayerPluginPlaylist", "description": "Playlist plugin for ArtPlayer", "main": "dist/artplayer-plugin-playlist.js", diff --git a/packages/artplayer-react/package.json b/packages/artplayer-react/package.json index 2f51ec7a2..669bfb044 100644 --- a/packages/artplayer-react/package.json +++ b/packages/artplayer-react/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-react", - "version": "3.1.16", + "version": "3.1.17", "expose": "ArtplayerReact", "description": "React Component for Artplayer", "main": "dist/artplayer-react.js", diff --git a/packages/artplayer-tool-github/package.json b/packages/artplayer-tool-github/package.json index 46a2fa90a..9d68fb497 100644 --- a/packages/artplayer-tool-github/package.json +++ b/packages/artplayer-tool-github/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-tool-github", - "version": "3.1.16", + "version": "3.1.17", "expose": "ArtplayerToolGithub", "description": "Github tool for ArtPlayer", "main": "dist/artplayer-tool-github.js", diff --git a/packages/artplayer-tool-thumbnail/package.json b/packages/artplayer-tool-thumbnail/package.json index fe541ca6c..383aed248 100644 --- a/packages/artplayer-tool-thumbnail/package.json +++ b/packages/artplayer-tool-thumbnail/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-tool-thumbnail", - "version": "3.1.16", + "version": "3.1.17", "expose": "ArtplayerToolThumbnail", "description": "thumbnail tool for ArtPlayer", "main": "dist/artplayer-tool-thumbnail.js", diff --git a/packages/artplayer-vue/package.json b/packages/artplayer-vue/package.json index 088e055fa..cff3b6cde 100644 --- a/packages/artplayer-vue/package.json +++ b/packages/artplayer-vue/package.json @@ -1,6 +1,6 @@ { "name": "artplayer-vue", - "version": "3.1.16", + "version": "3.1.17", "expose": "ArtplayerVue", "description": "Vue Component for Artplayer", "main": "dist/artplayer-vue.js", diff --git a/packages/artplayer/package.json b/packages/artplayer/package.json index e348b1b9c..46fa7ecfe 100644 --- a/packages/artplayer/package.json +++ b/packages/artplayer/package.json @@ -1,6 +1,6 @@ { "name": "artplayer", - "version": "3.1.16", + "version": "3.1.17", "expose": "Artplayer", "description": "ArtPlayer is a modern HTML5 video player", "main": "dist/artplayer.js", From 2b83fc1b26fc0c971f9d66a01008c6a2961055f6 Mon Sep 17 00:00:00 2001 From: zhw2590582 Date: Sun, 10 Nov 2019 15:53:24 +0800 Subject: [PATCH 3/4] build all packages --- dist/artplayer-plugin-backlight.js | 2 +- dist/artplayer-plugin-danmuku.js | 2 +- dist/artplayer-plugin-gif.js | 2 +- dist/artplayer-plugin-playlist.js | 2 +- dist/artplayer-react.css | 19 +++++++++++++++++++ dist/artplayer-react.js | 8 ++++++++ dist/artplayer-tool-github.js | 2 +- dist/artplayer-tool-thumbnail.js | 2 +- dist/artplayer-vue.js | 4 ++-- dist/artplayer.js | 4 ++-- .../dist/artplayer-plugin-backlight.js | 2 +- .../dist/artplayer-plugin-danmuku.js | 2 +- .../dist/artplayer-plugin-gif.js | 2 +- .../dist/artplayer-plugin-playlist.js | 2 +- .../artplayer-react/dist/artplayer-react.js | 4 ++-- .../dist/artplayer-tool-github.js | 2 +- .../dist/artplayer-tool-thumbnail.js | 2 +- packages/artplayer-vue/dist/artplayer-vue.js | 4 ++-- packages/artplayer/dist/artplayer.js | 4 ++-- 19 files changed, 49 insertions(+), 22 deletions(-) create mode 100644 dist/artplayer-react.css create mode 100644 dist/artplayer-react.js diff --git a/dist/artplayer-plugin-backlight.js b/dist/artplayer-plugin-backlight.js index a2bb4960e..50c55519c 100644 --- a/dist/artplayer-plugin-backlight.js +++ b/dist/artplayer-plugin-backlight.js @@ -1,5 +1,5 @@ /*! - * artplayer-plugin-backlight.js v3.1.16 + * artplayer-plugin-backlight.js v3.1.17 * Github: https://github.com/zhw2590582/ArtPlayer#readme * (c) 2017-2019 Harvey Zack * Released under the MIT License. diff --git a/dist/artplayer-plugin-danmuku.js b/dist/artplayer-plugin-danmuku.js index 11eaef678..1733363c5 100644 --- a/dist/artplayer-plugin-danmuku.js +++ b/dist/artplayer-plugin-danmuku.js @@ -1,5 +1,5 @@ /*! - * artplayer-plugin-danmuku.js v3.1.16 + * artplayer-plugin-danmuku.js v3.1.17 * Github: https://github.com/zhw2590582/ArtPlayer#readme * (c) 2017-2019 Harvey Zack * Released under the MIT License. diff --git a/dist/artplayer-plugin-gif.js b/dist/artplayer-plugin-gif.js index 18e48ba21..c022d9c97 100644 --- a/dist/artplayer-plugin-gif.js +++ b/dist/artplayer-plugin-gif.js @@ -1,5 +1,5 @@ /*! - * artplayer-plugin-gif.js v3.1.16 + * artplayer-plugin-gif.js v3.1.17 * Github: https://github.com/zhw2590582/ArtPlayer#readme * (c) 2017-2019 Harvey Zack * Released under the MIT License. diff --git a/dist/artplayer-plugin-playlist.js b/dist/artplayer-plugin-playlist.js index de5903134..b70e45ab9 100644 --- a/dist/artplayer-plugin-playlist.js +++ b/dist/artplayer-plugin-playlist.js @@ -1,5 +1,5 @@ /*! - * artplayer-plugin-playlist.js v3.1.16 + * artplayer-plugin-playlist.js v3.1.17 * Github: https://github.com/zhw2590582/ArtPlayer#readme * (c) 2017-2019 Harvey Zack * Released under the MIT License. diff --git a/dist/artplayer-react.css b/dist/artplayer-react.css new file mode 100644 index 000000000..c835e9a0b --- /dev/null +++ b/dist/artplayer-react.css @@ -0,0 +1,19 @@ +.artplayer-video-player{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;margin:0 auto;z-index:10;width:100%;height:100%;outline:0;zoom:1;font-family:Roboto,Arial,Helvetica,sans-serif;color:#eee;text-align:left;direction:ltr;font-size:14px;line-height:1.3;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-ms-touch-action:manipulation;touch-action:manipulation;-ms-high-contrast-adjust:none}.artplayer-video-player *{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.artplayer-video-player .art-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1.5}.artplayer-video-player .art-icon svg{fill:#fff}.artplayer-video-player>object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}@supports ((-webkit-backdrop-filter:initial) or (backdrop-filter:initial)){.artplayer-video-player .artplayer-backdrop-filter{-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);background-color:rgba(0,0,0,.7)!important}} +.artplayer-video-player .artplayer-video{position:absolute;z-index:10;left:0;top:0;right:0;bottom:0;width:100%;height:100%;background-color:#000;cursor:pointer} +.artplayer-video-player .artplayer-subtitle{position:absolute;z-index:20;bottom:40px;width:100%;padding:0 20px;text-align:center;color:#fff;font-size:20px;pointer-events:none;text-shadow:.5px .5px .5px rgba(0,0,0,.5)}.artplayer-video-player .artplayer-subtitle p{margin:5px 0}.artplayer-video-player.artplayer-subtitle-hide .artplayer-subtitle{display:none} +.artplayer-video-player .artplayer-danmuku{position:absolute;z-index:30;left:0;top:0;right:0;bottom:0;width:100%;height:100%;overflow:hidden;pointer-events:none} +.artplayer-video-player .artplayer-layers{position:absolute;z-index:40;left:0;top:0;right:0;bottom:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.artplayer-video-player .artplayer-layers .art-layer{pointer-events:auto}.artplayer-video-player.artplayer-layers-hide .artplayer-layers{display:none} +.artplayer-video-player .artplayer-mask{display:none;z-index:50;left:0;top:0;right:0;bottom:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.artplayer-video-player .artplayer-mask,.artplayer-video-player .artplayer-mask .art-state{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute}.artplayer-video-player .artplayer-mask .art-state{right:30px;bottom:55px;width:60px;height:60px;opacity:.6}.artplayer-video-player.artplayer-mask-show .artplayer-mask,.artplayer-video-player .artplayer-mask .art-state{display:-webkit-box;display:-ms-flexbox;display:flex} +.artplayer-video-player .artplayer-loading{display:none;position:absolute;z-index:70;left:0;top:0;right:0;bottom:0;width:100%;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;pointer-events:none}.artplayer-video-player.artplayer-loading-show .artplayer-loading{display:-webkit-box;display:-ms-flexbox;display:flex} +.artplayer-video-player .artplayer-bottom{position:absolute;z-index:60;left:0;right:0;bottom:0;height:100px;padding:55px 10px 0;opacity:0;visibility:hidden;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;pointer-events:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==) repeat-x bottom}.artplayer-video-player .artplayer-bottom .artplayer-progress{position:relative;pointer-events:auto}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:4px;cursor:pointer}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner{position:relative;height:50%;width:100%;background:hsla(0,0%,100%,.2)}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-loaded{position:absolute;z-index:10;left:0;top:0;right:0;bottom:0;height:100%;width:0;background:hsla(0,0%,100%,.4)}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-played{position:absolute;z-index:20;left:0;top:0;right:0;bottom:0;height:100%;width:0}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-highlight{position:absolute;z-index:30;left:0;top:0;right:0;bottom:0;height:100%;pointer-events:none}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-highlight span{display:inline-block;position:absolute;left:0;top:0;width:7px;height:100%;background:#fff;pointer-events:auto}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-indicator{display:none;position:absolute;z-index:40;top:-5px;left:-6.5px;width:13px;height:13px;border-radius:50%}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-indicator.art-show-indicator{display:block}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress .art-control-progress-inner .art-progress-tip{display:none;position:absolute;z-index:50;top:-25px;left:0;height:20px;padding:0 5px;line-height:20px;color:#fff;font-size:12px;text-align:center;background:rgba(0,0,0,.7);border-radius:3px;font-weight:700;white-space:nowrap}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress:hover .art-control-progress-inner{height:100%}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress:hover .art-control-progress-inner .art-progress-indicator,.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-progress:hover .art-control-progress-inner .art-progress-tip{display:block}.artplayer-video-player .artplayer-bottom .artplayer-progress .art-control-thumbnails{display:none;position:absolute;bottom:8px;left:0;pointer-events:none;background-color:rgba(0,0,0,.7)}.artplayer-video-player .artplayer-bottom .artplayer-controls{position:relative;pointer-events:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:40px;padding:5px 0}.artplayer-video-player .artplayer-bottom .artplayer-controls .artplayer-controls-left,.artplayer-video-player .artplayer-bottom .artplayer-controls .artplayer-controls-right{display:-webkit-box;display:-ms-flexbox;display:flex}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control{opacity:.9;font-size:12px;height:36px;min-width:36px;line-height:36px;text-align:center;cursor:pointer}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control .art-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;float:left;height:36px;width:36px}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control:hover{opacity:1}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-onlyText{padding:0 10px}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel{position:relative;float:left;width:0;height:100%;-webkit-transition:margin .2s cubic-bezier(.4,0,1,1),width .2s cubic-bezier(.4,0,1,1);transition:margin .2s cubic-bezier(.4,0,1,1),width .2s cubic-bezier(.4,0,1,1);overflow:hidden}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel .art-volume-slider-handle{position:absolute;top:50%;left:0;width:12px;height:12px;border-radius:12px;margin-top:-6px;background:#fff}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel .art-volume-slider-handle:before{left:-54px;background:#fff}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel .art-volume-slider-handle:after{left:6px;background:hsla(0,0%,100%,.2)}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel .art-volume-slider-handle:after,.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume .art-volume-panel .art-volume-slider-handle:before{content:"";position:absolute;display:block;top:50%;height:3px;margin-top:-2px;width:60px}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-volume:hover .art-volume-panel{width:60px}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-quality{position:relative;z-index:30}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-quality .art-qualitys{display:none;position:absolute;bottom:35px;width:100px;padding:5px 0;text-align:center;color:#fff;background:rgba(0,0,0,.8);border-radius:3px}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-quality .art-qualitys .art-quality-item{height:30px;line-height:30px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 0 2px rgba(0,0,0,.5)}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-quality .art-qualitys .art-quality-item:hover{background-color:hsla(0,0%,100%,.1)}.artplayer-video-player .artplayer-bottom .artplayer-controls .art-control-quality:hover .art-qualitys{display:block}.artplayer-video-player.artplayer-controls-show .artplayer-bottom,.artplayer-video-player.artplayer-hover .artplayer-bottom{opacity:1;visibility:visible}.artplayer-video-player.artplayer-destroy .art-progress-indicator,.artplayer-video-player.artplayer-destroy .art-progress-tip,.artplayer-video-player.artplayer-error .art-progress-indicator,.artplayer-video-player.artplayer-error .art-progress-tip{display:none!important} +.artplayer-video-player .artplayer-notice{display:none;font-size:14px;position:absolute;z-index:80;left:0;top:0;padding:10px;width:100%;pointer-events:none}.artplayer-video-player .artplayer-notice .artplayer-notice-inner{display:inline-block;padding:5px 10px;color:#fff;background:rgba(0,0,0,.6);border-radius:3px}.artplayer-video-player.artplayer-notice-show .artplayer-notice{display:-webkit-box;display:-ms-flexbox;display:flex} +.artplayer-video-player .artplayer-contextmenu{display:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;z-index:120;left:0;top:0;min-width:200px;padding:5px 0;background:rgba(0,0,0,.8);border-radius:3px}.artplayer-video-player .artplayer-contextmenu .art-contextmenu{cursor:pointer;font-size:13px;display:block;color:#fff;padding:7px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 0 2px rgba(0,0,0,.5);border-bottom:1px solid hsla(0,0%,100%,.1)}.artplayer-video-player .artplayer-contextmenu .art-contextmenu a{color:#fff;text-decoration:none}.artplayer-video-player .artplayer-contextmenu .art-contextmenu span{display:inline-block;padding:0 7px}.artplayer-video-player .artplayer-contextmenu .art-contextmenu span.current,.artplayer-video-player .artplayer-contextmenu .art-contextmenu span:hover{color:#00c9ff}.artplayer-video-player .artplayer-contextmenu .art-contextmenu:hover{background-color:hsla(0,0%,100%,.1)}.artplayer-video-player .artplayer-contextmenu .art-contextmenu:last-child{border-bottom:none}.artplayer-video-player.artplayer-contextmenu-show .artplayer-contextmenu{display:-webkit-box;display:-ms-flexbox;display:flex} +.artplayer-video-player .artplayer-setting{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;z-index:90;left:0;top:0;height:100%;width:100%;opacity:0;visibility:hidden;pointer-events:none;overflow:hidden}.artplayer-video-player .artplayer-setting .artplayer-setting-inner{position:absolute;top:0;right:-300px;bottom:0;width:300px;height:100%;font-size:12px;background:rgba(0,0,0,.8);-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out;overflow:auto}.artplayer-video-player .artplayer-setting .artplayer-setting-inner .artplayer-setting-body{overflow-y:auto;width:100%;height:100%}.artplayer-video-player .artplayer-setting .artplayer-setting-inner .artplayer-setting-body .art-setting{border-bottom:1px solid hsla(0,0%,100%,.1);padding:10px 15px}.artplayer-video-player .artplayer-setting .artplayer-setting-inner .artplayer-setting-body .art-setting .art-setting-header{margin-bottom:5px}.artplayer-video-player .artplayer-setting .art-setting-radio{display:-webkit-box;display:-ms-flexbox;display:flex}.artplayer-video-player .artplayer-setting .art-setting-radio .art-radio-item{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:0 2px}.artplayer-video-player .artplayer-setting .art-setting-radio .art-radio-item button{height:22px;width:100%;border:none;outline:none;color:#fff;background:hsla(0,0%,100%,.2);border-radius:2px}.artplayer-video-player .artplayer-setting .art-setting-radio .art-radio-item.current button{background-color:#00a1d6}.artplayer-video-player .artplayer-setting .art-setting-range input{width:100%;height:3px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:hsla(0,0%,100%,.5)}.artplayer-video-player .artplayer-setting .art-setting-checkbox input{height:14px;width:14px;margin-right:5px}.artplayer-video-player.artplayer-setting-show .artplayer-setting{opacity:1;visibility:visible;pointer-events:auto}.artplayer-video-player.artplayer-setting-show .artplayer-setting .artplayer-setting-inner{right:0} +.artplayer-video-player .artplayer-info{display:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;position:absolute;left:10px;top:10px;z-index:100;width:350px;min-height:150px;padding:10px;color:#fff;font-size:12px;font-family:Noto Sans CJK SC DemiLight,Roboto,Segoe UI,Tahoma,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;background:rgba(0,0,0,.7)}.artplayer-video-player .artplayer-info .art-info-item{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:5px}.artplayer-video-player .artplayer-info .art-info-item .art-info-title{width:100px;text-align:right}.artplayer-video-player .artplayer-info .art-info-item .art-info-content{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:5px}.artplayer-video-player .artplayer-info .artplayer-info-close{position:absolute;top:5px;right:5px;cursor:pointer}.artplayer-video-player.artplayer-info-show .artplayer-info{display:-webkit-box;display:-ms-flexbox;display:flex} +.artplayer-video-player.artplayer-hide-cursor *{cursor:none!important} +.artplayer-video-player[data-aspect-ratio] video{-webkit-box-sizing:content-box;box-sizing:content-box;-o-object-fit:fill;object-fit:fill} +.artplayer-video-player.artplayer-web-fullscreen{position:fixed;z-index:9999;width:100%;height:100%;left:0;top:0;right:0;bottom:0} +.artplayer-video-player .artplayer-pip-header{display:none;position:absolute;z-index:110;left:0;top:0;right:0;height:35px;line-height:35px;color:#fff;background:rgba(0,0,0,.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;opacity:0;visibility:hidden;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.artplayer-video-player .artplayer-pip-header .artplayer-pip-title{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:move}.artplayer-video-player .artplayer-pip-header .artplayer-pip-close{width:35px;text-align:center;font-size:22px;cursor:pointer}.artplayer-video-player.is-dragging{opacity:.7}.artplayer-video-player.artplayer-pip{position:fixed;z-index:9999;width:400px;height:225px;-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.2);box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.2)}.artplayer-video-player.artplayer-pip .artplayer-pip-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.artplayer-video-player.artplayer-pip.artplayer-hover .artplayer-pip-header{opacity:1;visibility:visible}.artplayer-video-player.artplayer-pip .artplayer-mask .art-state{position:static}.artplayer-video-player.artplayer-pip .artplayer-bottom,.artplayer-video-player.artplayer-pip .artplayer-contextmenu,.artplayer-video-player.artplayer-pip .artplayer-danmu,.artplayer-video-player.artplayer-pip .artplayer-info,.artplayer-video-player.artplayer-pip .artplayer-layers,.artplayer-video-player.artplayer-pip .artplayer-notice,.artplayer-video-player.artplayer-pip .artplayer-setting,.artplayer-video-player.artplayer-pip .artplayer-subtitle{display:none!important} +.artplayer-auto-size{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center} +.artplayer-video-player[data-flip=horizontal] .artplayer-video{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.artplayer-video-player[data-flip=vertical] .artplayer-video{-webkit-transform:scaleY(-1);transform:scaleY(-1)} +: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;line-height:1.2}[aria-label][data-balloon-pos]:after,[aria-label][data-balloon-pos]:before{opacity:0;pointer-events:none;-webkit-transition:all .18s ease-out .18s;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{opacity:1;pointer-events: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%;-webkit-transform:translate(-50%,var(--balloon-move));transform:translate(-50%,var(--balloon-move));-webkit-transform-origin:top;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{-webkit-transform:translate(-50%);transform:translate(-50%)} \ No newline at end of file diff --git a/dist/artplayer-react.js b/dist/artplayer-react.js new file mode 100644 index 000000000..eb8616dd1 --- /dev/null +++ b/dist/artplayer-react.js @@ -0,0 +1,8 @@ +/*! + * artplayer-react.js v3.1.17 + * Github: https://github.com/zhw2590582/ArtPlayer#readme + * (c) 2017-2019 Harvey Zack + * Released under the MIT License. + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).ArtplayerReact=t()}(this,function(){"use strict";var a=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r.")}return t}(t);if(!be[n]){be[n]=!0;var r="";e&&e._owner&&e._owner!==q.current&&(r=" It was passed a child from "+W(e._owner.type)+"."),V(e),H(!1,'Each child in a list should have a unique "key" prop.%s%s See https://fb.me/react-warning-keys for more information.',n,r),V(null)}}}function Oe(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;n",o=" Did you accidentally export a JSX literal instead of a component?"):a=typeof e,H(!1,"React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",a,o)}var c=Q.apply(this,arguments);if(null==c)return c;if(r)for(var s=2;s is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Provider},set:function(e){n.Provider=e}},_currentValue:{get:function(){return n._currentValue},set:function(e){n._currentValue=e}},_currentValue2:{get:function(){return n._currentValue2},set:function(e){n._currentValue2=e}},_threadCount:{get:function(){return n._threadCount},set:function(e){n._threadCount=e}},Consumer:{get:function(){return r||H(!(r=!0),"Rendering is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Consumer}}}),n.Consumer=i,n._currentRenderer=null,n._currentRenderer2=null,n},forwardRef:function(e){return null!=e&&e.$$typeof===f?P(!1,"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?P(!1,"forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&P(!1,"forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null==e||null==e.defaultProps&&null==e.propTypes||P(!1,"forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"),{$$typeof:i,render:e}},lazy:function(e){var t={$$typeof:p,_ctor:e,_status:-1,_result:null},n=void 0,r=void 0;return Object.defineProperties(t,{defaultProps:{configurable:!0,get:function(){return n},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),n=e,Object.defineProperty(t,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return r},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),r=e,Object.defineProperty(t,"propTypes",{enumerable:!0})}}}),t},memo:function(e,t){return he(e)||P(!1,"memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e),{$$typeof:f,type:e,compare:void 0===t?null:t}},useCallback:function(e,t){return ve().useCallback(e,t)},useContext:function(e,t){var n=ve();if(void 0!==t&&H(!1,"useContext() second argument is reserved for future use in React. Passing it is not supported. You passed: %s.%s",t,"number"==typeof t&&Array.isArray(arguments[2])?"\n\nDid you call array.map(useContext)? Calling Hooks inside a loop is not supported. Learn more at https://fb.me/rules-of-hooks":""),void 0!==e._context){var r=e._context;r.Consumer===e?H(!1,"Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&H(!1,"Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return n.useContext(e,t)},useEffect:function(e,t){return ve().useEffect(e,t)},useImperativeHandle:function(e,t,n){return ve().useImperativeHandle(e,t,n)},useDebugValue:function(e,t){return ve().useDebugValue(e,t)},useLayoutEffect:function(e,t){return ve().useLayoutEffect(e,t)},useMemo:function(e,t){return ve().useMemo(e,t)},useReducer:function(e,t,n){return ve().useReducer(e,t,n)},useRef:function(e){return ve().useRef(e)},useState:function(e){return ve().useState(e)},Fragment:u,Profiler:r,StrictMode:n,Suspense:s,unstable_SuspenseList:l,createElement:Pe,cloneElement:function(e,t,n){for(var r=function(e,t,n){!function(){if(null==e)throw O(Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+"."))}();var r=void 0,o=y({},e.props),i=e.key,a=e.ref,c=e._self,s=e._source,u=e._owner;if(null!=t){J(t)&&(a=t.ref,u=q.current),G(t)&&(i=""+t.key);var l=void 0;for(r in e.type&&e.type.defaultProps&&(l=e.type.defaultProps),t)U.call(t,r)&&!Y.hasOwnProperty(r)&&(void 0===t[r]&&void 0!==l?o[r]=l[r]:o[r]=t[r])}var f=arguments.length-2;if(1==f)o.children=n;else if(1").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function Ie(e){return URL.createObjectURL(new Blob([e],{type:"text/vtt"}))}function ze(e,t){var n=document.createElement("a");Re(n,"display","none"),n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function We(e){for(var t=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(e){e?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),Ye={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Xe={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Ze=function(){function t(e){s(this,t),this.art=e,this.languages={"zh-cn":Ye,"zh-tw":Xe},this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option.lang.toLowerCase();this.language=this.languages[e]||{}}},{key:"get",value:function(e){return this.language[e]||e}},{key:"update",value:function(e){this.languages=Se(this.languages,e),this.init()}}]),t}();var Je=e(function(e){var a,t,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},t=e.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var e,t=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=t.length,o={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(i," art-").concat(i,"-").concat(s),a.html&&Ee(u,a.html),a.style&&Ce(u,a.style);var l=Array.from(e.children);u.dataset.index=a.index||c;var f=l.find(function(e){return Number(e.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):Ee(e,u),a.click&&t.events.proxy(u,"click",function(e){e.preventDefault(),a.click.call(t,n,e),t.emit("".concat(i,":click"),u)}),a.mounted&&a.mounted(u,n,t),o&&o(u,n,t),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(e){e?(Re(u,"display","block"),t.emit("".concat(i,":show"),u)):(Re(u,"display","none"),t.emit("".concat(i,":hide"),u))},set remove(e){e&&($e(u),t.emit("".concat(i,":remove"),u))}}}),t.emit("".concat(i,":add"),a),n[s]}function et(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tt(e){return function(a){return function(t){for(var e=1;e\n
\n
\n
\n
\n
\n \n '),mounted:function(i){var o=!1,n=i.querySelector(".art-progress-loaded"),r=i.querySelector(".art-progress-played"),a=i.querySelector(".art-progress-highlight"),c=i.querySelector(".art-progress-indicator"),s=i.querySelector(".art-progress-tip");function u(e,t){"loaded"===e&&Re(n,"width","".concat(100*t,"%")),"played"===e&&(Re(r,"width","".concat(100*t,"%")),Re(c,"left","calc(".concat(100*t,"% - ").concat(Le(c,"width")/2,"px)")))}t.forEach(function(e){var t=we(e.time,0,p.duration)/p.duration*100;Ee(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(i,"mousemove",function(e){Re(s,"display","block"),-1i.clientWidth-r/2?Re(s,"left","".concat(i.clientWidth-r,"px")):Re(s,"left","".concat(t-r/2,"px"))}(e):function(e){var t=ut(l,e),n=t.width,r=t.time;s.innerHTML=r;var o=s.clientWidth;n<=o/2?Re(s,"left",0):n>i.clientWidth-o/2?Re(s,"left","".concat(i.clientWidth-o,"px")):Re(s,"left","".concat(n-o/2,"px"))}(e)}),f(i,"mouseout",function(){Re(s,"display","none")}),f(i,"click",function(e){if(e.target!==c){var t=ut(l,e),n=t.second;u("played",t.percentage),p.seek=n}}),f(c,"mousedown",function(){o=!0}),f(document,"mousemove",function(e){if(o){var t=ut(l,e),n=t.second,r=t.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){o&&(o=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function pt(e){return function(a){return function(t){for(var e=1;e'),u=Ee(s,'
');function l(e){var t=s.getBoundingClientRect(),n=t.left,r=t.width,o=u.getBoundingClientRect().width;return we(e.pageX-n-o/2,0,r-o/2)/(r-o)}function f(e){var t=0d.clientWidth-i/2?Re(p,"left","".concat(d.clientWidth-i,"px")):Re(p,"left","".concat(t-i/2,"px"))}(e))}),t(d,"mouseout",function(){Re(p,"display","none")})}})}}function Ot(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function kt(e){return function(a){return function(t){for(var e=1;e'.concat(o.name,"")),u=i.quality.map(function(e,t){return'
').concat(e.name,"
")}).join(""),l=Ee(e,'
'.concat(u,"
"));r(e,function(){l.style.left="-".concat(Le(l,"width")/2-e.clientWidth/2,"px")}),n(l,"click",function(e){var t=Number(e.target.dataset.index),n=i.quality[t],r=n.url,o=n.name;r&&o&&c!==t&&(a.switchQuality(r,o),s.innerHTML=o,c=t)})}})}}var xt=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.art.on("ready",function(){t.init()})}return u(n,[{key:"init",value:function(){var t=this,e=this.art.option;this.add(lt({name:"progress",disable:e.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!e.thumbnails.url||e.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(yt({name:"time",disable:e.isLive,position:"left",index:30})),this.add(jt({name:"quality",disable:0===e.quality.length,position:"right",index:10})),this.add(kt({name:"screenshot",disable:!e.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!e.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!e.setting,position:"right",index:40})),this.add(it({name:"pip",disable:!e.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!e.fullscreenWeb,position:"right",index:60})),this.add(tt({name:"fullscreen",disable:!e.fullscreen,position:"right",index:70})),e.controls.forEach(function(e){t.add(e)})}},{key:"add",value:function(e,t){var n,r="function"==typeof e?e(this.art):e,o=this.art.template,i=o.$progress,a=o.$controlsLeft,c=o.$controlsRight;switch(r.position){case"top":n=i;break;case"left":n=a;break;case"right":n=c}ge(n,"Controls option.position can not be empty"),this.id+=1;var s=Qe(this.art,this,n,r,t,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,t.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(e){var t=e.i18n,r=e.player;return function(t){for(var e=1;e0.5\n 0.75\n ').concat(t.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(e,t){var n=t.target.dataset.rate;n&&(r.playbackRate=Number(n),e.show=!1)},mounted:function(n){e.on("playbackRateChange",function(t){var e=Array.from(n.querySelectorAll("span")).find(function(e){return Number(e.dataset.rate)===t});e&&Ae(e,"current")})}})}}function $t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Rt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e').concat(e.get("Default"),'\n 4:3\n 16:9\n '),click:function(e,t){var n=t.target.dataset.ratio;n&&(r.aspectRatio=n,e.show=!1)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("span")).find(function(e){return e.dataset.ratio===t}),"current")})}})}}function Ct(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Lt(e){return function(t){return function(t){for(var e=1;eArtPlayer 3.1.17'})}function _t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function At(t){return function(e){return function(t){for(var e=1;e\n
Player version:
\n
3.1.17
\n \n '),e.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),e.push('\n
\n
Video volume:
\n
\n
\n '),e.push('\n
\n
Video time:
\n
\n
\n '),e.push('\n
\n
Video duration:
\n
\n
\n '),e.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),e.join("")}},{key:"readInfo",value:function(){var e=this.art.template,t=e.$infoPanel,n=e.$video;Array.from(t.querySelectorAll("[data-video]")).forEach(function(e){var t=n[e.dataset.video];e.innerHTML=void 0!==t?"number"==typeof t?t.toFixed(2):t:"unknown"})}},{key:"loop",value:function(){var e=this;this.readInfo(),this.timer=setTimeout(function(){e.readInfo(),e.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template,n=t.$player,r=t.$infoPanel;e?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||Ee(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),t}();var It=function(e){if(Array.isArray(e))return e};var zt=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==c.return||c.return()}finally{if(o)throw i}}return n}};var Wt=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Nt=function(e,t){return It(e)||zt(e,t)||Wt()};var Ft=function(){function n(e){s(this,n),this.art=e,this.state=!0,this.isInit=!1;var t=this.art.option.subtitle.url;t&&this.init(t)}return u(n,[{key:"switch",value:function(e){var t=this.art,n=t.i18n,r=t.notice;return this.init(e).then(function(e){return r.show(n.get("Switch subtitle")),e})}},{key:"init",value:function(u){var l=this;return new Promise(function(i){var e=l.art,a=e.events.proxy,t=e.option.subtitle,n=e.template,c=n.$video,s=n.$subtitle,r=n.$track;if(Ce(s,t.style||{}),!r){var o=document.createElement("track");o.default=!0,o.kind="metadata",c.appendChild(o),l.art.template.$track=o}l.load(u).then(function(e){s.innerHTML="";var t=l.art.template.$track,n=t.src;if(n!==e){if(URL.revokeObjectURL(n),t.src=e,c.textTracks&&c.textTracks[0]){var r=function(){var e=Nt(o.activeCues,1)[0];s.innerHTML="",e&&(s.innerHTML=e.text.split(/\r?\n/).map(function(e){return"

".concat(e,"

")}).join("")),this.art.emit("subtitle:update",s)},o=Nt(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(o,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}i(e)}})})}},{key:"load",value:function(r){var t=this.art.notice;return fetch(r).then(function(e){return e.text()}).then(function(e){var t=Oe(r);ge(["srt","ass","vtt"].includes(t),"Unsupported subtitle format: ".concat(t));var n=e.replace(/{[\s\S]*?}/g,"");return Ie("srt"===t?qe(n):"ass"===t?function(e){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(e){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},e.option.icons);Object.keys(r).forEach(function(e){var t=document.createElement("i");t.classList.add("art-icon"),t.classList.add("art-icon-".concat(e)),Ee(t,r[e]),n[e]=t})}var Bt=function(){function n(e){var t=this;s(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),e.whitelist.state&&e.once("video:canplay",function(){!function(t,e){var n=t.template.$player;e.proxy(document,["click","contextmenu"],function(e){-1'),e.icons.state)}return u(t,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,t.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),t}();function Jt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(e,t){var n=t.target.dataset.value;n&&(r.flip=n)},mounted:function(e){t.on("flipChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function Kt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(e,t){var n=t.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function en(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tn(t){return function(r){var e=r.i18n,o=r.player,i=r.events.proxy;return function(t){for(var e=1;e\n '.concat(e.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");i(t,"change",function(){var e=t.value;n.innerText=e,o.playbackRate=Number(e)}),r.on("playbackRateChange",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}})}}var nn=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.state=!1,e.option.setting&&(this.art.on("ready",function(){t.init()}),this.art.on("blur",function(){t.show=!1}))}return u(n,[{key:"init",value:function(){var t=this,e=this.art,n=e.option,r=e.template.$setting;(0,e.events.proxy)(r,"click",function(e){e.target===r&&(t.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(tn({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(e,t){this.id+=1;var n=this.art.template.$settingBody;return Qe(this.art,this,n,e,t,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,t.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),rn=function(){function t(e){s(this,t),this.art=e,this.name="artplayer_settings",this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option,t=this.get("volume");t&&(e.volume=t)}},{key:"get",value:function(e){var t=JSON.parse(window.localStorage.getItem(this.name))||{};return e?t[e]:{}}},{key:"set",value:function(e,t){var n=Object.assign({},this.get(),c({},e,t));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(e){var t=this.get();delete t[e],window.localStorage.setItem(this.name,JSON.stringify(t))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),t}();function on(r){var e=r.i18n,o=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(e.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");o(t,"change",function(){var e=t.value;n.innerText=e,r.plugins.subtitleOffset.offset(Number(e))}),r.on("subtitle:switch",function(){t.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}}}function an(r){var o=r.constructor.utils.clamp,e=r.setting,i=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),e.add(on);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(e){if(a.$track&&a.$track.track){var t=Array.from(a.$track.track.cues),n=o(e,-5,5);t.forEach(function(e,t){u[t]||(u[t]={startTime:e.startTime,endTime:e.endTime}),e.startTime=o(u[t].startTime+n,0,s.duration),e.endTime=o(u[t].endTime+n,0,s.duration)}),i.show("".concat(c.get("Subtitle offset time"),": ").concat(e,"s")),r.emit("artplayerPluginSubtitleOffset",e)}else i.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function cn(o){var e=o.constructor.utils,n=e.append,r=e.setStyle,i=e.setStyles,a=e.sleep,c=e.errorHandle,s=o.events.proxy,u=o.option,l=o.notice,f=o.i18n,p=o.template,d=o.player;function y(e){if(e){var t=p.$video.canPlayType(e.type);if("maybe"===t||"probably"===t){var n=URL.createObjectURL(e);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,o.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(e.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(e){e.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(e){e.preventDefault(),y(e.dataTransfer.files[0])}),{name:"localPreview",attach:function(e){var t=n(e,'');r(e,"position","relative"),i(t,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(t,"change",function(){y(t.files[0])})}}}function sn(t){var e=t.layers,n=t.player,r=t.option.theme;return e.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(e){t.on("controls:show",function(){e.style.display="none"}),t.on("destroy",function(){e.style.display="none"}),t.on("controls:hide",function(){e.style.display="block"}),t.on("video:timeupdate",function(){e.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function un(r){var o=1e4,i=0,a=0,c=0,e=null;function t(){c=a=i=0,cancelAnimationFrame(e),e=null}function n(){e||!function n(){r.isDestroy||(e=requestAnimationFrame(function(){var e=Date.now();if(c){var t=e-c;a+=t,r.player.playing||(i+=t)}c=e,r.emit("networkMonitor",i/a),o<=a&&(a=i=0),n()}))}()}return r.on("play",n),r.on("pause",t),{name:"networkMonitor",reset:t,start:n,sample:function(e){o=e}}}function ln(t){var e=t.events,n=t.player,r=t.template,o=je(function(){var e=r.$player.getBoundingClientRect();e.top+e.height<=0&&!n.pip?(n.pip=!0,t.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,t.emit("artplayerPluginAutoPip",!1))},300);return e.proxy(window,"scroll",o),{name:"autoPip"}}function fn(t){s(this,fn);var n=t.option,r=t.events.proxy,o=t.template.$video;He.video.events.forEach(function(e){r(o,e,function(e){t.emit("video:".concat(e.type),e)})}),Object.keys(n.moreVideoAttr).forEach(function(e){o[e]=n.moreVideoAttr[e]}),n.muted&&(o.muted=n.muted),n.volume&&(o.volume=we(n.volume,0,1)),n.poster&&(o.poster=n.poster),n.autoplay&&(o.autoplay=n.autoplay),o.controls=!0;var e=n.type||Oe(n.url),i=n.customType[e];e&&i?(t.emit("beforeCustomType",e),i(o,n.url,t),t.emit("afterCustomType",e)):(t.emit("beforeAttachUrl",n.url),o.src=n.url,t.emit("afterAttachUrl",o.src))}var pn=function(){function r(e){var t=this;s(this,r),this.art=e,this.id=0;var n=e.option;n.subtitle.url&&n.subtitleOffset&&this.add(an),!n.isLive&&n.miniProgressBar&&this.add(sn),n.localPreview&&this.add(cn),n.networkMonitor&&this.add(un),n.autoPip&&this.add(ln),e.option.plugins.forEach(function(e){t.add(e)})}return u(r,[{key:"add",value:function(e){this.id+=1;var t=e.call(this,this.art),n="";return ge(!be(this,n=t&&t.name?t.name:e.name?e.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:t}),this.art.emit("plugin:add",e),this}}]),r}(),dn=0,yn=function(){function n(e){var t;return s(this,n),(t=f(this,p(n).call(this))).option=ue(Se(n.option,e),Be),t.isFocus=!1,t.isDestroy=!1,t.whitelist=new Ve(l(t)),t.template=new Ue(l(t)),t.events=new Bt(l(t)),t.whitelist.state?(t.storage=new rn(l(t)),t.icons=new Vt(l(t)),t.i18n=new Ze(l(t)),t.notice=new Xt(l(t)),t.player=new Ke(l(t)),t.layers=new Ut(l(t)),t.controls=new xt(l(t)),t.contextmenu=new Mt(l(t)),t.subtitle=new Ft(l(t)),t.info=new qt(l(t)),t.loading=new Yt(l(t)),t.hotkey=new Ht(l(t)),t.mask=new Zt(l(t)),t.setting=new nn(l(t)),t.plugins=new pn(l(t))):t.mobile=new fn(l(t)),dn+=1,t.id=dn,n.instances.push(l(t)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),t}return t(n,le),u(n,[{key:"destroy",value:function(e){var t=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function W(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function B(t,e){var n=document.createElement("a");T(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function F(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),X={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Z=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":X,"zh-tw":Y},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=$(this.languages,t),this.init()}}]),e}();var J=t(function(t){var o,e,i,r,n;o="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,i=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&L(u,a.html),a.style&&D(u,a.style);var l=Array.from(t.children);u.dataset.index=a.index||c;var f=l.find(function(t){return Number(t.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):L(t,u),a.click&&e.events.proxy(u,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),u)}),a.mounted&&a.mounted(u,n,e),i&&i(u,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(t){t?(T(u,"display","block"),e.emit("".concat(o,":show"),u)):(T(u,"display","none"),e.emit("".concat(o,":hide"),u))},set remove(t){t&&(R(u),e.emit("".concat(o,":remove"),u))}}}),e.emit("".concat(o,":add"),a),n[s]}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function u(t,e){"loaded"===t&&T(n,"width","".concat(100*e,"%")),"played"===t&&(T(r,"width","".concat(100*e,"%")),T(c,"left","calc(".concat(100*e,"% - ").concat(C(c,"width")/2,"px)")))}e.forEach(function(t){var e=P(t.time,0,p.duration)/p.duration*100;L(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(o,"mousemove",function(t){T(s,"display","block"),-1o.clientWidth-r/2?T(s,"left","".concat(o.clientWidth-r,"px")):T(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=ut(l,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?T(s,"left",0):n>o.clientWidth-i/2?T(s,"left","".concat(o.clientWidth-i,"px")):T(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){T(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=ut(l,t),n=e.second;u("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=ut(l,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),u=L(s,'
');function l(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=u.getBoundingClientRect().width;return P(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?T(p,"left","".concat(d.clientWidth-o,"px")):T(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){T(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),u=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),l=L(t,'
'.concat(u,"
"));r(t,function(){l.style.left="-".concat(C(l,"width")/2-t.clientWidth/2,"px")}),n(l,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(lt({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}w(n,"Controls option.position can not be empty"),this.id+=1;var s=K(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&M(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.16'})}function At(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.16
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||L(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(u){var l=this;return new Promise(function(o){var t=l.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(D(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),l.art.template.$track=i}l.load(u).then(function(t){s.innerHTML="";var e=l.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(i,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=j(r);w(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return W("srt"===e?z(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),L(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Qt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Kt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return K(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),c({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){u[e]||(u[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(u[e].startTime+n,0,s.duration),t.endTime=i(u[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,u=i.option,l=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,i.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function ue(e){var t=e.events,n=e.player,r=e.template,i=S(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function le(e){a(this,le);var n=e.option,r=e.events.proxy,i=e.template.$video;U.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=P(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||j(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(ue),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return w(!O(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=u(this,l(n).call(this))).option=p($(n.option,t),N),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new V(o(e)),e.template=new _(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Z(o(e)),e.notice=new Yt(o(e)),e.player=new Q(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Xt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new le(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.16 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,d),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function W(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function B(t,e){var n=document.createElement("a");T(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function I(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),Y={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Z=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":Y,"zh-tw":X},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=$(this.languages,t),this.init()}}]),e}();var J=t(function(t){var a,e,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&L(u,a.html),a.style&&D(u,a.style);var l=Array.from(t.children);u.dataset.index=a.index||c;var f=l.find(function(t){return Number(t.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):L(t,u),a.click&&e.events.proxy(u,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),u)}),a.mounted&&a.mounted(u,n,e),i&&i(u,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(t){t?(T(u,"display","block"),e.emit("".concat(o,":show"),u)):(T(u,"display","none"),e.emit("".concat(o,":hide"),u))},set remove(t){t&&(R(u),e.emit("".concat(o,":remove"),u))}}}),e.emit("".concat(o,":add"),a),n[s]}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function u(t,e){"loaded"===t&&T(n,"width","".concat(100*e,"%")),"played"===t&&(T(r,"width","".concat(100*e,"%")),T(c,"left","calc(".concat(100*e,"% - ").concat(A(c,"width")/2,"px)")))}e.forEach(function(t){var e=P(t.time,0,p.duration)/p.duration*100;L(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(o,"mousemove",function(t){T(s,"display","block"),-1o.clientWidth-r/2?T(s,"left","".concat(o.clientWidth-r,"px")):T(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=ut(l,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?T(s,"left",0):n>o.clientWidth-i/2?T(s,"left","".concat(o.clientWidth-i,"px")):T(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){T(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=ut(l,t),n=e.second;u("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=ut(l,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),u=L(s,'
');function l(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=u.getBoundingClientRect().width;return P(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?T(p,"left","".concat(d.clientWidth-o,"px")):T(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){T(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),u=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),l=L(t,'
'.concat(u,"
"));r(t,function(){l.style.left="-".concat(A(l,"width")/2-t.clientWidth/2,"px")}),n(l,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(lt({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}w(n,"Controls option.position can not be empty"),this.id+=1;var s=Q(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&M(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.17'})}function Ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.17
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||L(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var It=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ft=function(t,e){return Wt(t)||Bt(t,e)||It()};var Ht=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(u){var l=this;return new Promise(function(o){var t=l.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(D(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),l.art.template.$track=i}l.load(u).then(function(t){s.innerHTML="";var e=l.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ft(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ft(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(i,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=j(r);w(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return W("srt"===e?z(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),L(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return Q(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),c({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){u[e]||(u[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(u[e].startTime+n,0,s.duration),t.endTime=i(u[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,u=i.option,l=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,i.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function ue(e){var t=e.events,n=e.player,r=e.template,i=S(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function le(e){a(this,le);var n=e.option,r=e.events.proxy,i=e.template.$video;U.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=P(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||j(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(ue),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return w(!O(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=u(this,l(n).call(this))).option=p($(n.option,t),N),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new V(o(e)),e.template=new _(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Z(o(e)),e.notice=new Xt(o(e)),e.player=new K(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new Ht(o(e)),e.info=new zt(o(e)),e.loading=new Yt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new le(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,d),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function z(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function W(t,e){var n=document.createElement("a");R(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function B(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),_={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":_,"zh-tw":X},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=E(this.languages,t),this.init()}}]),e}();var Z=t(function(t){var o,e,i,r,n;o="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,i=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var l=document.createElement("div");l.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&$(l,a.html),a.style&&T(l,a.style);var u=Array.from(t.children);l.dataset.index=a.index||c;var f=u.find(function(t){return Number(t.dataset.index)>=Number(l.dataset.index)});return f?f.insertAdjacentElement("beforebegin",l):$(t,l),a.click&&e.events.proxy(l,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),l)}),a.mounted&&a.mounted(l,n,e),i&&i(l,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return l},set show(t){t?(R(l,"display","block"),e.emit("".concat(o,":show"),l)):(R(l,"display","none"),e.emit("".concat(o,":hide"),l))},set remove(t){t&&(L(l),e.emit("".concat(o,":remove"),l))}}}),e.emit("".concat(o,":add"),a),n[s]}var K=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t};function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function l(t,e){"loaded"===t&&R(n,"width","".concat(100*e,"%")),"played"===t&&(R(r,"width","".concat(100*e,"%")),R(c,"left","calc(".concat(100*e,"% - ").concat(D(c,"width")/2,"px)")))}e.forEach(function(t){var e=O(t.time,0,p.duration)/p.duration*100;$(a,''))}),l("loaded",p.loaded),u.on("video:progress",function(){l("loaded",p.loaded)}),u.on("video:timeupdate",function(){l("played",p.played)}),u.on("video:ended",function(){l("played",1)}),f(o,"mousemove",function(t){R(s,"display","block"),-1o.clientWidth-r/2?R(s,"left","".concat(o.clientWidth-r,"px")):R(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=lt(u,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?R(s,"left",0):n>o.clientWidth-i/2?R(s,"left","".concat(o.clientWidth-i,"px")):R(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){R(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=lt(u,t),n=e.second;l("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=lt(u,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),l("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),l=$(s,'
');function u(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=l.getBoundingClientRect().width;return O(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?R(p,"left","".concat(d.clientWidth-o,"px")):R(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){R(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),l=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),u=$(t,'
'.concat(l,"
"));r(t,function(){u.style.left="-".concat(D(u,"width")/2-t.clientWidth/2,"px")}),n(u,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(ut({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}b(n,"Controls option.position can not be empty"),this.id+=1;var s=Q(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&A(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){A(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.16'})}function At(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.16
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||$(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(l){var u=this;return new Promise(function(o){var t=u.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(T(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),u.art.template.$track=i}u.load(l).then(function(t){s.innerHTML="";var e=u.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];u.isInit||(u.isInit=!0,a(i,"cuechange",r.bind(u))),u.art.on("artplayerPluginSubtitleOffset",r.bind(u))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=P(r);b(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return z("srt"===e?q(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),$(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){A(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Qt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){A(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Kt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return Q(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),K({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var l=[];return r.on("subtitle:switch",function(){l=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){l[e]||(l[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(l[e].startTime+n,0,s.duration),t.endTime=i(l[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,l=i.option,u=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),l.url=n,i.emit("switch",n),u.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);u.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),u.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function le(e){var t=e.events,n=e.player,r=e.template,i=x(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function ue(e){a(this,ue);var n=e.option,r=e.events.proxy,i=e.template.$video;N.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=O(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||P(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(le),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return b(!w(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=s(this,l(n).call(this))).option=f(E(n.option,t),V),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new I(o(e)),e.template=new U(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Y(o(e)),e.notice=new Yt(o(e)),e.player=new G(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Xt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new ue(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.16 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,p),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function z(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function W(t,e){var n=document.createElement("a");R(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function B(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),_={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":_,"zh-tw":Y},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=E(this.languages,t),this.init()}}]),e}();var Z=t(function(t){var a,e,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var l=document.createElement("div");l.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&$(l,a.html),a.style&&T(l,a.style);var u=Array.from(t.children);l.dataset.index=a.index||c;var f=u.find(function(t){return Number(t.dataset.index)>=Number(l.dataset.index)});return f?f.insertAdjacentElement("beforebegin",l):$(t,l),a.click&&e.events.proxy(l,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),l)}),a.mounted&&a.mounted(l,n,e),i&&i(l,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return l},set show(t){t?(R(l,"display","block"),e.emit("".concat(o,":show"),l)):(R(l,"display","none"),e.emit("".concat(o,":hide"),l))},set remove(t){t&&(L(l),e.emit("".concat(o,":remove"),l))}}}),e.emit("".concat(o,":add"),a),n[s]}var Q=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t};function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function l(t,e){"loaded"===t&&R(n,"width","".concat(100*e,"%")),"played"===t&&(R(r,"width","".concat(100*e,"%")),R(c,"left","calc(".concat(100*e,"% - ").concat(D(c,"width")/2,"px)")))}e.forEach(function(t){var e=O(t.time,0,p.duration)/p.duration*100;$(a,''))}),l("loaded",p.loaded),u.on("video:progress",function(){l("loaded",p.loaded)}),u.on("video:timeupdate",function(){l("played",p.played)}),u.on("video:ended",function(){l("played",1)}),f(o,"mousemove",function(t){R(s,"display","block"),-1o.clientWidth-r/2?R(s,"left","".concat(o.clientWidth-r,"px")):R(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=lt(u,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?R(s,"left",0):n>o.clientWidth-i/2?R(s,"left","".concat(o.clientWidth-i,"px")):R(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){R(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=lt(u,t),n=e.second;l("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=lt(u,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),l("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),l=$(s,'
');function u(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=l.getBoundingClientRect().width;return O(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?R(p,"left","".concat(d.clientWidth-o,"px")):R(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){R(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),l=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),u=$(t,'
'.concat(l,"
"));r(t,function(){u.style.left="-".concat(D(u,"width")/2-t.clientWidth/2,"px")}),n(u,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(ut({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(jt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}b(n,"Controls option.position can not be empty"),this.id+=1;var s=K(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&C(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){C(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.17'})}function Ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.17
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||$(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(l){var u=this;return new Promise(function(o){var t=u.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(T(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),u.art.template.$track=i}u.load(l).then(function(t){s.innerHTML="";var e=u.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];u.isInit||(u.isInit=!0,a(i,"cuechange",r.bind(u))),u.art.on("artplayerPluginSubtitleOffset",r.bind(u))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=P(r);b(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return z("srt"===e?q(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),$(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){C(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){C(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return K(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),Q({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var l=[];return r.on("subtitle:switch",function(){l=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){l[e]||(l[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(l[e].startTime+n,0,s.duration),t.endTime=i(l[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,l=i.option,u=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),l.url=n,i.emit("switch",n),u.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);u.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),u.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function le(e){var t=e.events,n=e.player,r=e.template,i=x(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function ue(e){a(this,ue);var n=e.option,r=e.events.proxy,i=e.template.$video;N.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=O(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||P(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(le),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return b(!w(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=s(this,l(n).call(this))).option=f(E(n.option,t),V),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new I(o(e)),e.template=new U(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new X(o(e)),e.notice=new Xt(o(e)),e.player=new G(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Yt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new ue(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,p),i(n,[{key:"destroy",value:function(t){var e=0.")}return t}(t);if(!be[n]){be[n]=!0;var r="";e&&e._owner&&e._owner!==q.current&&(r=" It was passed a child from "+W(e._owner.type)+"."),V(e),H(!1,'Each child in a list should have a unique "key" prop.%s%s See https://fb.me/react-warning-keys for more information.',n,r),V(null)}}}function Oe(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;n",o=" Did you accidentally export a JSX literal instead of a component?"):a=typeof e,H(!1,"React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",a,o)}var c=K.apply(this,arguments);if(null==c)return c;if(r)for(var s=2;s is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Provider},set:function(e){n.Provider=e}},_currentValue:{get:function(){return n._currentValue},set:function(e){n._currentValue=e}},_currentValue2:{get:function(){return n._currentValue2},set:function(e){n._currentValue2=e}},_threadCount:{get:function(){return n._threadCount},set:function(e){n._threadCount=e}},Consumer:{get:function(){return r||H(!(r=!0),"Rendering is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Consumer}}}),n.Consumer=i,n._currentRenderer=null,n._currentRenderer2=null,n},forwardRef:function(e){return null!=e&&e.$$typeof===f?j(!1,"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?j(!1,"forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&j(!1,"forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null==e||null==e.defaultProps&&null==e.propTypes||j(!1,"forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"),{$$typeof:i,render:e}},lazy:function(e){var t={$$typeof:p,_ctor:e,_status:-1,_result:null},n=void 0,r=void 0;return Object.defineProperties(t,{defaultProps:{configurable:!0,get:function(){return n},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),n=e,Object.defineProperty(t,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return r},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),r=e,Object.defineProperty(t,"propTypes",{enumerable:!0})}}}),t},memo:function(e,t){return he(e)||j(!1,"memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e),{$$typeof:f,type:e,compare:void 0===t?null:t}},useCallback:function(e,t){return ve().useCallback(e,t)},useContext:function(e,t){var n=ve();if(void 0!==t&&H(!1,"useContext() second argument is reserved for future use in React. Passing it is not supported. You passed: %s.%s",t,"number"==typeof t&&Array.isArray(arguments[2])?"\n\nDid you call array.map(useContext)? Calling Hooks inside a loop is not supported. Learn more at https://fb.me/rules-of-hooks":""),void 0!==e._context){var r=e._context;r.Consumer===e?H(!1,"Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&H(!1,"Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return n.useContext(e,t)},useEffect:function(e,t){return ve().useEffect(e,t)},useImperativeHandle:function(e,t,n){return ve().useImperativeHandle(e,t,n)},useDebugValue:function(e,t){return ve().useDebugValue(e,t)},useLayoutEffect:function(e,t){return ve().useLayoutEffect(e,t)},useMemo:function(e,t){return ve().useMemo(e,t)},useReducer:function(e,t,n){return ve().useReducer(e,t,n)},useRef:function(e){return ve().useRef(e)},useState:function(e){return ve().useState(e)},Fragment:u,Profiler:r,StrictMode:n,Suspense:s,unstable_SuspenseList:l,createElement:je,cloneElement:function(e,t,n){for(var r=function(e,t,n){!function(){if(null==e)throw O(Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+"."))}();var r=void 0,o=y({},e.props),i=e.key,a=e.ref,c=e._self,s=e._source,u=e._owner;if(null!=t){J(t)&&(a=t.ref,u=q.current),G(t)&&(i=""+t.key);var l=void 0;for(r in e.type&&e.type.defaultProps&&(l=e.type.defaultProps),t)U.call(t,r)&&!Y.hasOwnProperty(r)&&(void 0===t[r]&&void 0!==l?o[r]=l[r]:o[r]=t[r])}var f=arguments.length-2;if(1==f)o.children=n;else if(1").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function Ie(e){return URL.createObjectURL(new Blob([e],{type:"text/vtt"}))}function ze(e,t){var n=document.createElement("a");Re(n,"display","none"),n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function We(e){for(var t=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(e){e?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),Ye={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Xe={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Ze=function(){function t(e){s(this,t),this.art=e,this.languages={"zh-cn":Ye,"zh-tw":Xe},this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option.lang.toLowerCase();this.language=this.languages[e]||{}}},{key:"get",value:function(e){return this.language[e]||e}},{key:"update",value:function(e){this.languages=Se(this.languages,e),this.init()}}]),t}();var Je=e(function(e){var i,t,o,r,n;i="undefined"!=typeof window&&void 0!==window.document?window.document:{},t=e.exports,o=function(){for(var e,t=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=t.length,o={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(i," art-").concat(i,"-").concat(s),a.html&&Ee(u,a.html),a.style&&Ce(u,a.style);var l=Array.from(e.children);u.dataset.index=a.index||c;var f=l.find(function(e){return Number(e.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):Ee(e,u),a.click&&t.events.proxy(u,"click",function(e){e.preventDefault(),a.click.call(t,n,e),t.emit("".concat(i,":click"),u)}),a.mounted&&a.mounted(u,n,t),o&&o(u,n,t),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(e){e?(Re(u,"display","block"),t.emit("".concat(i,":show"),u)):(Re(u,"display","none"),t.emit("".concat(i,":hide"),u))},set remove(e){e&&($e(u),t.emit("".concat(i,":remove"),u))}}}),t.emit("".concat(i,":add"),a),n[s]}function et(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tt(e){return function(a){return function(t){for(var e=1;e\n
\n
\n
\n
\n
\n \n '),mounted:function(i){var o=!1,n=i.querySelector(".art-progress-loaded"),r=i.querySelector(".art-progress-played"),a=i.querySelector(".art-progress-highlight"),c=i.querySelector(".art-progress-indicator"),s=i.querySelector(".art-progress-tip");function u(e,t){"loaded"===e&&Re(n,"width","".concat(100*t,"%")),"played"===e&&(Re(r,"width","".concat(100*t,"%")),Re(c,"left","calc(".concat(100*t,"% - ").concat(Te(c,"width")/2,"px)")))}t.forEach(function(e){var t=we(e.time,0,p.duration)/p.duration*100;Ee(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(i,"mousemove",function(e){Re(s,"display","block"),-1i.clientWidth-r/2?Re(s,"left","".concat(i.clientWidth-r,"px")):Re(s,"left","".concat(t-r/2,"px"))}(e):function(e){var t=ut(l,e),n=t.width,r=t.time;s.innerHTML=r;var o=s.clientWidth;n<=o/2?Re(s,"left",0):n>i.clientWidth-o/2?Re(s,"left","".concat(i.clientWidth-o,"px")):Re(s,"left","".concat(n-o/2,"px"))}(e)}),f(i,"mouseout",function(){Re(s,"display","none")}),f(i,"click",function(e){if(e.target!==c){var t=ut(l,e),n=t.second;u("played",t.percentage),p.seek=n}}),f(c,"mousedown",function(){o=!0}),f(document,"mousemove",function(e){if(o){var t=ut(l,e),n=t.second,r=t.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){o&&(o=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function pt(e){return function(a){return function(t){for(var e=1;e'),u=Ee(s,'
');function l(e){var t=s.getBoundingClientRect(),n=t.left,r=t.width,o=u.getBoundingClientRect().width;return we(e.pageX-n-o/2,0,r-o/2)/(r-o)}function f(e){var t=0d.clientWidth-i/2?Re(p,"left","".concat(d.clientWidth-i,"px")):Re(p,"left","".concat(t-i/2,"px"))}(e))}),t(d,"mouseout",function(){Re(p,"display","none")})}})}}function Ot(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function kt(e){return function(a){return function(t){for(var e=1;e'.concat(o.name,"")),u=i.quality.map(function(e,t){return'
').concat(e.name,"
")}).join(""),l=Ee(e,'
'.concat(u,"
"));r(e,function(){l.style.left="-".concat(Te(l,"width")/2-e.clientWidth/2,"px")}),n(l,"click",function(e){var t=Number(e.target.dataset.index),n=i.quality[t],r=n.url,o=n.name;r&&o&&c!==t&&(a.switchQuality(r,o),s.innerHTML=o,c=t)})}})}}var xt=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.art.on("ready",function(){t.init()})}return u(n,[{key:"init",value:function(){var t=this,e=this.art.option;this.add(lt({name:"progress",disable:e.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!e.thumbnails.url||e.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(yt({name:"time",disable:e.isLive,position:"left",index:30})),this.add(Pt({name:"quality",disable:0===e.quality.length,position:"right",index:10})),this.add(kt({name:"screenshot",disable:!e.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!e.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!e.setting,position:"right",index:40})),this.add(it({name:"pip",disable:!e.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!e.fullscreenWeb,position:"right",index:60})),this.add(tt({name:"fullscreen",disable:!e.fullscreen,position:"right",index:70})),e.controls.forEach(function(e){t.add(e)})}},{key:"add",value:function(e,t){var n,r="function"==typeof e?e(this.art):e,o=this.art.template,i=o.$progress,a=o.$controlsLeft,c=o.$controlsRight;switch(r.position){case"top":n=i;break;case"left":n=a;break;case"right":n=c}ge(n,"Controls option.position can not be empty"),this.id+=1;var s=Ke(this.art,this,n,r,t,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,t.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(e){var t=e.i18n,r=e.player;return function(t){for(var e=1;e0.5\n 0.75\n ').concat(t.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(e,t){var n=t.target.dataset.rate;n&&(r.playbackRate=Number(n),e.show=!1)},mounted:function(n){e.on("playbackRateChange",function(t){var e=Array.from(n.querySelectorAll("span")).find(function(e){return Number(e.dataset.rate)===t});e&&Ae(e,"current")})}})}}function $t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Rt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e').concat(e.get("Default"),'\n 4:3\n 16:9\n '),click:function(e,t){var n=t.target.dataset.ratio;n&&(r.aspectRatio=n,e.show=!1)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("span")).find(function(e){return e.dataset.ratio===t}),"current")})}})}}function Ct(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Tt(e){return function(t){return function(t){for(var e=1;eArtPlayer 3.1.16'})}function _t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function At(t){return function(e){return function(t){for(var e=1;e\n
Player version:
\n
3.1.16
\n \n '),e.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),e.push('\n
\n
Video volume:
\n
\n
\n '),e.push('\n
\n
Video time:
\n
\n
\n '),e.push('\n
\n
Video duration:
\n
\n
\n '),e.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),e.join("")}},{key:"readInfo",value:function(){var e=this.art.template,t=e.$infoPanel,n=e.$video;Array.from(t.querySelectorAll("[data-video]")).forEach(function(e){var t=n[e.dataset.video];e.innerHTML=void 0!==t?"number"==typeof t?t.toFixed(2):t:"unknown"})}},{key:"loop",value:function(){var e=this;this.readInfo(),this.timer=setTimeout(function(){e.readInfo(),e.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template,n=t.$player,r=t.$infoPanel;e?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||Ee(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),t}();var It=function(e){if(Array.isArray(e))return e};var zt=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==c.return||c.return()}finally{if(o)throw i}}return n}};var Wt=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ft=function(e,t){return It(e)||zt(e,t)||Wt()};var Nt=function(){function n(e){s(this,n),this.art=e,this.state=!0,this.isInit=!1;var t=this.art.option.subtitle.url;t&&this.init(t)}return u(n,[{key:"switch",value:function(e){var t=this.art,n=t.i18n,r=t.notice;return this.init(e).then(function(e){return r.show(n.get("Switch subtitle")),e})}},{key:"init",value:function(u){var l=this;return new Promise(function(i){var e=l.art,a=e.events.proxy,t=e.option.subtitle,n=e.template,c=n.$video,s=n.$subtitle,r=n.$track;if(Ce(s,t.style||{}),!r){var o=document.createElement("track");o.default=!0,o.kind="metadata",c.appendChild(o),l.art.template.$track=o}l.load(u).then(function(e){s.innerHTML="";var t=l.art.template.$track,n=t.src;if(n!==e){if(URL.revokeObjectURL(n),t.src=e,c.textTracks&&c.textTracks[0]){var r=function(){var e=Ft(o.activeCues,1)[0];s.innerHTML="",e&&(s.innerHTML=e.text.split(/\r?\n/).map(function(e){return"

".concat(e,"

")}).join("")),this.art.emit("subtitle:update",s)},o=Ft(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(o,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}i(e)}})})}},{key:"load",value:function(r){var t=this.art.notice;return fetch(r).then(function(e){return e.text()}).then(function(e){var t=Oe(r);ge(["srt","ass","vtt"].includes(t),"Unsupported subtitle format: ".concat(t));var n=e.replace(/{[\s\S]*?}/g,"");return Ie("srt"===t?qe(n):"ass"===t?function(e){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(e){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},e.option.icons);Object.keys(r).forEach(function(e){var t=document.createElement("i");t.classList.add("art-icon"),t.classList.add("art-icon-".concat(e)),Ee(t,r[e]),n[e]=t})}var Bt=function(){function n(e){var t=this;s(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),e.whitelist.state&&e.once("video:canplay",function(){!function(t,e){var n=t.template.$player;e.proxy(document,["click","contextmenu"],function(e){-1'),e.icons.state)}return u(t,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,t.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),t}();function Jt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(e,t){var n=t.target.dataset.value;n&&(r.flip=n)},mounted:function(e){t.on("flipChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function Qt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Kt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(e,t){var n=t.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function en(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tn(t){return function(r){var e=r.i18n,o=r.player,i=r.events.proxy;return function(t){for(var e=1;e\n '.concat(e.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");i(t,"change",function(){var e=t.value;n.innerText=e,o.playbackRate=Number(e)}),r.on("playbackRateChange",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}})}}var nn=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.state=!1,e.option.setting&&(this.art.on("ready",function(){t.init()}),this.art.on("blur",function(){t.show=!1}))}return u(n,[{key:"init",value:function(){var t=this,e=this.art,n=e.option,r=e.template.$setting;(0,e.events.proxy)(r,"click",function(e){e.target===r&&(t.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Kt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(tn({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(e,t){this.id+=1;var n=this.art.template.$settingBody;return Ke(this.art,this,n,e,t,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,t.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),rn=function(){function t(e){s(this,t),this.art=e,this.name="artplayer_settings",this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option,t=this.get("volume");t&&(e.volume=t)}},{key:"get",value:function(e){var t=JSON.parse(window.localStorage.getItem(this.name))||{};return e?t[e]:{}}},{key:"set",value:function(e,t){var n=Object.assign({},this.get(),c({},e,t));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(e){var t=this.get();delete t[e],window.localStorage.setItem(this.name,JSON.stringify(t))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),t}();function on(r){var e=r.i18n,o=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(e.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");o(t,"change",function(){var e=t.value;n.innerText=e,r.plugins.subtitleOffset.offset(Number(e))}),r.on("subtitle:switch",function(){t.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}}}function an(r){var o=r.constructor.utils.clamp,e=r.setting,i=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),e.add(on);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(e){if(a.$track&&a.$track.track){var t=Array.from(a.$track.track.cues),n=o(e,-5,5);t.forEach(function(e,t){u[t]||(u[t]={startTime:e.startTime,endTime:e.endTime}),e.startTime=o(u[t].startTime+n,0,s.duration),e.endTime=o(u[t].endTime+n,0,s.duration)}),i.show("".concat(c.get("Subtitle offset time"),": ").concat(e,"s")),r.emit("artplayerPluginSubtitleOffset",e)}else i.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function cn(o){var e=o.constructor.utils,n=e.append,r=e.setStyle,i=e.setStyles,a=e.sleep,c=e.errorHandle,s=o.events.proxy,u=o.option,l=o.notice,f=o.i18n,p=o.template,d=o.player;function y(e){if(e){var t=p.$video.canPlayType(e.type);if("maybe"===t||"probably"===t){var n=URL.createObjectURL(e);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,o.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(e.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(e){e.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(e){e.preventDefault(),y(e.dataTransfer.files[0])}),{name:"localPreview",attach:function(e){var t=n(e,'');r(e,"position","relative"),i(t,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(t,"change",function(){y(t.files[0])})}}}function sn(t){var e=t.layers,n=t.player,r=t.option.theme;return e.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(e){t.on("controls:show",function(){e.style.display="none"}),t.on("destroy",function(){e.style.display="none"}),t.on("controls:hide",function(){e.style.display="block"}),t.on("video:timeupdate",function(){e.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function un(r){var o=1e4,i=0,a=0,c=0,e=null;function t(){c=a=i=0,cancelAnimationFrame(e),e=null}function n(){e||!function n(){r.isDestroy||(e=requestAnimationFrame(function(){var e=Date.now();if(c){var t=e-c;a+=t,r.player.playing||(i+=t)}c=e,r.emit("networkMonitor",i/a),o<=a&&(a=i=0),n()}))}()}return r.on("play",n),r.on("pause",t),{name:"networkMonitor",reset:t,start:n,sample:function(e){o=e}}}function ln(t){var e=t.events,n=t.player,r=t.template,o=Pe(function(){var e=r.$player.getBoundingClientRect();e.top+e.height<=0&&!n.pip?(n.pip=!0,t.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,t.emit("artplayerPluginAutoPip",!1))},300);return e.proxy(window,"scroll",o),{name:"autoPip"}}function fn(t){s(this,fn);var n=t.option,r=t.events.proxy,o=t.template.$video;He.video.events.forEach(function(e){r(o,e,function(e){t.emit("video:".concat(e.type),e)})}),Object.keys(n.moreVideoAttr).forEach(function(e){o[e]=n.moreVideoAttr[e]}),n.muted&&(o.muted=n.muted),n.volume&&(o.volume=we(n.volume,0,1)),n.poster&&(o.poster=n.poster),n.autoplay&&(o.autoplay=n.autoplay),o.controls=!0;var e=n.type||Oe(n.url),i=n.customType[e];e&&i?(t.emit("beforeCustomType",e),i(o,n.url,t),t.emit("afterCustomType",e)):(t.emit("beforeAttachUrl",n.url),o.src=n.url,t.emit("afterAttachUrl",o.src))}var pn=function(){function r(e){var t=this;s(this,r),this.art=e,this.id=0;var n=e.option;n.subtitle.url&&n.subtitleOffset&&this.add(an),!n.isLive&&n.miniProgressBar&&this.add(sn),n.localPreview&&this.add(cn),n.networkMonitor&&this.add(un),n.autoPip&&this.add(ln),e.option.plugins.forEach(function(e){t.add(e)})}return u(r,[{key:"add",value:function(e){this.id+=1;var t=e.call(this,this.art),n="";return ge(!be(this,n=t&&t.name?t.name:e.name?e.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:t}),this.art.emit("plugin:add",e),this}}]),r}(),dn=0,yn=function(){function n(e){var t;return s(this,n),(t=f(this,p(n).call(this))).option=ue(Se(n.option,e),Be),t.isFocus=!1,t.isDestroy=!1,t.whitelist=new Ve(l(t)),t.template=new Ue(l(t)),t.events=new Bt(l(t)),t.whitelist.state?(t.storage=new rn(l(t)),t.icons=new Vt(l(t)),t.i18n=new Ze(l(t)),t.notice=new Xt(l(t)),t.player=new Qe(l(t)),t.layers=new Ut(l(t)),t.controls=new xt(l(t)),t.contextmenu=new Mt(l(t)),t.subtitle=new Nt(l(t)),t.info=new qt(l(t)),t.loading=new Yt(l(t)),t.hotkey=new Ht(l(t)),t.mask=new Zt(l(t)),t.setting=new nn(l(t)),t.plugins=new pn(l(t))):t.mobile=new fn(l(t)),dn+=1,t.id=dn,n.instances.push(l(t)),console.log("%c ArtPlayer %c 3.1.16 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),t}return t(n,le),u(n,[{key:"destroy",value:function(e){var t=0.")}return t}(t);if(!be[n]){be[n]=!0;var r="";e&&e._owner&&e._owner!==q.current&&(r=" It was passed a child from "+W(e._owner.type)+"."),V(e),H(!1,'Each child in a list should have a unique "key" prop.%s%s See https://fb.me/react-warning-keys for more information.',n,r),V(null)}}}function Oe(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;n",o=" Did you accidentally export a JSX literal instead of a component?"):a=typeof e,H(!1,"React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",a,o)}var c=Q.apply(this,arguments);if(null==c)return c;if(r)for(var s=2;s is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Provider},set:function(e){n.Provider=e}},_currentValue:{get:function(){return n._currentValue},set:function(e){n._currentValue=e}},_currentValue2:{get:function(){return n._currentValue2},set:function(e){n._currentValue2=e}},_threadCount:{get:function(){return n._threadCount},set:function(e){n._threadCount=e}},Consumer:{get:function(){return r||H(!(r=!0),"Rendering is not supported and will be removed in a future major release. Did you mean to render instead?"),n.Consumer}}}),n.Consumer=i,n._currentRenderer=null,n._currentRenderer2=null,n},forwardRef:function(e){return null!=e&&e.$$typeof===f?P(!1,"forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?P(!1,"forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&P(!1,"forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null==e||null==e.defaultProps&&null==e.propTypes||P(!1,"forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"),{$$typeof:i,render:e}},lazy:function(e){var t={$$typeof:p,_ctor:e,_status:-1,_result:null},n=void 0,r=void 0;return Object.defineProperties(t,{defaultProps:{configurable:!0,get:function(){return n},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),n=e,Object.defineProperty(t,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return r},set:function(e){H(!1,"React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),r=e,Object.defineProperty(t,"propTypes",{enumerable:!0})}}}),t},memo:function(e,t){return he(e)||P(!1,"memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e),{$$typeof:f,type:e,compare:void 0===t?null:t}},useCallback:function(e,t){return ve().useCallback(e,t)},useContext:function(e,t){var n=ve();if(void 0!==t&&H(!1,"useContext() second argument is reserved for future use in React. Passing it is not supported. You passed: %s.%s",t,"number"==typeof t&&Array.isArray(arguments[2])?"\n\nDid you call array.map(useContext)? Calling Hooks inside a loop is not supported. Learn more at https://fb.me/rules-of-hooks":""),void 0!==e._context){var r=e._context;r.Consumer===e?H(!1,"Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&H(!1,"Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return n.useContext(e,t)},useEffect:function(e,t){return ve().useEffect(e,t)},useImperativeHandle:function(e,t,n){return ve().useImperativeHandle(e,t,n)},useDebugValue:function(e,t){return ve().useDebugValue(e,t)},useLayoutEffect:function(e,t){return ve().useLayoutEffect(e,t)},useMemo:function(e,t){return ve().useMemo(e,t)},useReducer:function(e,t,n){return ve().useReducer(e,t,n)},useRef:function(e){return ve().useRef(e)},useState:function(e){return ve().useState(e)},Fragment:u,Profiler:r,StrictMode:n,Suspense:s,unstable_SuspenseList:l,createElement:Pe,cloneElement:function(e,t,n){for(var r=function(e,t,n){!function(){if(null==e)throw O(Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+"."))}();var r=void 0,o=y({},e.props),i=e.key,a=e.ref,c=e._self,s=e._source,u=e._owner;if(null!=t){J(t)&&(a=t.ref,u=q.current),G(t)&&(i=""+t.key);var l=void 0;for(r in e.type&&e.type.defaultProps&&(l=e.type.defaultProps),t)U.call(t,r)&&!Y.hasOwnProperty(r)&&(void 0===t[r]&&void 0!==l?o[r]=l[r]:o[r]=t[r])}var f=arguments.length-2;if(1==f)o.children=n;else if(1").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function Ie(e){return URL.createObjectURL(new Blob([e],{type:"text/vtt"}))}function ze(e,t){var n=document.createElement("a");Re(n,"display","none"),n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function We(e){for(var t=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(e){e?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),Ye={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Xe={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Ze=function(){function t(e){s(this,t),this.art=e,this.languages={"zh-cn":Ye,"zh-tw":Xe},this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option.lang.toLowerCase();this.language=this.languages[e]||{}}},{key:"get",value:function(e){return this.language[e]||e}},{key:"update",value:function(e){this.languages=Se(this.languages,e),this.init()}}]),t}();var Je=e(function(e){var a,t,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},t=e.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var e,t=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=t.length,o={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(i," art-").concat(i,"-").concat(s),a.html&&Ee(u,a.html),a.style&&Ce(u,a.style);var l=Array.from(e.children);u.dataset.index=a.index||c;var f=l.find(function(e){return Number(e.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):Ee(e,u),a.click&&t.events.proxy(u,"click",function(e){e.preventDefault(),a.click.call(t,n,e),t.emit("".concat(i,":click"),u)}),a.mounted&&a.mounted(u,n,t),o&&o(u,n,t),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(e){e?(Re(u,"display","block"),t.emit("".concat(i,":show"),u)):(Re(u,"display","none"),t.emit("".concat(i,":hide"),u))},set remove(e){e&&($e(u),t.emit("".concat(i,":remove"),u))}}}),t.emit("".concat(i,":add"),a),n[s]}function et(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tt(e){return function(a){return function(t){for(var e=1;e\n
\n
\n
\n
\n
\n \n '),mounted:function(i){var o=!1,n=i.querySelector(".art-progress-loaded"),r=i.querySelector(".art-progress-played"),a=i.querySelector(".art-progress-highlight"),c=i.querySelector(".art-progress-indicator"),s=i.querySelector(".art-progress-tip");function u(e,t){"loaded"===e&&Re(n,"width","".concat(100*t,"%")),"played"===e&&(Re(r,"width","".concat(100*t,"%")),Re(c,"left","calc(".concat(100*t,"% - ").concat(Le(c,"width")/2,"px)")))}t.forEach(function(e){var t=we(e.time,0,p.duration)/p.duration*100;Ee(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(i,"mousemove",function(e){Re(s,"display","block"),-1i.clientWidth-r/2?Re(s,"left","".concat(i.clientWidth-r,"px")):Re(s,"left","".concat(t-r/2,"px"))}(e):function(e){var t=ut(l,e),n=t.width,r=t.time;s.innerHTML=r;var o=s.clientWidth;n<=o/2?Re(s,"left",0):n>i.clientWidth-o/2?Re(s,"left","".concat(i.clientWidth-o,"px")):Re(s,"left","".concat(n-o/2,"px"))}(e)}),f(i,"mouseout",function(){Re(s,"display","none")}),f(i,"click",function(e){if(e.target!==c){var t=ut(l,e),n=t.second;u("played",t.percentage),p.seek=n}}),f(c,"mousedown",function(){o=!0}),f(document,"mousemove",function(e){if(o){var t=ut(l,e),n=t.second,r=t.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){o&&(o=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function pt(e){return function(a){return function(t){for(var e=1;e'),u=Ee(s,'
');function l(e){var t=s.getBoundingClientRect(),n=t.left,r=t.width,o=u.getBoundingClientRect().width;return we(e.pageX-n-o/2,0,r-o/2)/(r-o)}function f(e){var t=0d.clientWidth-i/2?Re(p,"left","".concat(d.clientWidth-i,"px")):Re(p,"left","".concat(t-i/2,"px"))}(e))}),t(d,"mouseout",function(){Re(p,"display","none")})}})}}function Ot(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function kt(e){return function(a){return function(t){for(var e=1;e'.concat(o.name,"")),u=i.quality.map(function(e,t){return'
').concat(e.name,"
")}).join(""),l=Ee(e,'
'.concat(u,"
"));r(e,function(){l.style.left="-".concat(Le(l,"width")/2-e.clientWidth/2,"px")}),n(l,"click",function(e){var t=Number(e.target.dataset.index),n=i.quality[t],r=n.url,o=n.name;r&&o&&c!==t&&(a.switchQuality(r,o),s.innerHTML=o,c=t)})}})}}var xt=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.art.on("ready",function(){t.init()})}return u(n,[{key:"init",value:function(){var t=this,e=this.art.option;this.add(lt({name:"progress",disable:e.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!e.thumbnails.url||e.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(yt({name:"time",disable:e.isLive,position:"left",index:30})),this.add(jt({name:"quality",disable:0===e.quality.length,position:"right",index:10})),this.add(kt({name:"screenshot",disable:!e.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!e.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!e.setting,position:"right",index:40})),this.add(it({name:"pip",disable:!e.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!e.fullscreenWeb,position:"right",index:60})),this.add(tt({name:"fullscreen",disable:!e.fullscreen,position:"right",index:70})),e.controls.forEach(function(e){t.add(e)})}},{key:"add",value:function(e,t){var n,r="function"==typeof e?e(this.art):e,o=this.art.template,i=o.$progress,a=o.$controlsLeft,c=o.$controlsRight;switch(r.position){case"top":n=i;break;case"left":n=a;break;case"right":n=c}ge(n,"Controls option.position can not be empty"),this.id+=1;var s=Qe(this.art,this,n,r,t,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,t.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(e){var t=e.i18n,r=e.player;return function(t){for(var e=1;e0.5\n 0.75\n ').concat(t.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(e,t){var n=t.target.dataset.rate;n&&(r.playbackRate=Number(n),e.show=!1)},mounted:function(n){e.on("playbackRateChange",function(t){var e=Array.from(n.querySelectorAll("span")).find(function(e){return Number(e.dataset.rate)===t});e&&Ae(e,"current")})}})}}function $t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Rt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e').concat(e.get("Default"),'\n 4:3\n 16:9\n '),click:function(e,t){var n=t.target.dataset.ratio;n&&(r.aspectRatio=n,e.show=!1)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("span")).find(function(e){return e.dataset.ratio===t}),"current")})}})}}function Ct(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Lt(e){return function(t){return function(t){for(var e=1;eArtPlayer 3.1.17'})}function _t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function At(t){return function(e){return function(t){for(var e=1;e\n
Player version:
\n
3.1.17
\n \n '),e.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),e.push('\n
\n
Video volume:
\n
\n
\n '),e.push('\n
\n
Video time:
\n
\n
\n '),e.push('\n
\n
Video duration:
\n
\n
\n '),e.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),e.join("")}},{key:"readInfo",value:function(){var e=this.art.template,t=e.$infoPanel,n=e.$video;Array.from(t.querySelectorAll("[data-video]")).forEach(function(e){var t=n[e.dataset.video];e.innerHTML=void 0!==t?"number"==typeof t?t.toFixed(2):t:"unknown"})}},{key:"loop",value:function(){var e=this;this.readInfo(),this.timer=setTimeout(function(){e.readInfo(),e.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template,n=t.$player,r=t.$infoPanel;e?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||Ee(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),t}();var It=function(e){if(Array.isArray(e))return e};var zt=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==c.return||c.return()}finally{if(o)throw i}}return n}};var Wt=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Nt=function(e,t){return It(e)||zt(e,t)||Wt()};var Ft=function(){function n(e){s(this,n),this.art=e,this.state=!0,this.isInit=!1;var t=this.art.option.subtitle.url;t&&this.init(t)}return u(n,[{key:"switch",value:function(e){var t=this.art,n=t.i18n,r=t.notice;return this.init(e).then(function(e){return r.show(n.get("Switch subtitle")),e})}},{key:"init",value:function(u){var l=this;return new Promise(function(i){var e=l.art,a=e.events.proxy,t=e.option.subtitle,n=e.template,c=n.$video,s=n.$subtitle,r=n.$track;if(Ce(s,t.style||{}),!r){var o=document.createElement("track");o.default=!0,o.kind="metadata",c.appendChild(o),l.art.template.$track=o}l.load(u).then(function(e){s.innerHTML="";var t=l.art.template.$track,n=t.src;if(n!==e){if(URL.revokeObjectURL(n),t.src=e,c.textTracks&&c.textTracks[0]){var r=function(){var e=Nt(o.activeCues,1)[0];s.innerHTML="",e&&(s.innerHTML=e.text.split(/\r?\n/).map(function(e){return"

".concat(e,"

")}).join("")),this.art.emit("subtitle:update",s)},o=Nt(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(o,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}i(e)}})})}},{key:"load",value:function(r){var t=this.art.notice;return fetch(r).then(function(e){return e.text()}).then(function(e){var t=Oe(r);ge(["srt","ass","vtt"].includes(t),"Unsupported subtitle format: ".concat(t));var n=e.replace(/{[\s\S]*?}/g,"");return Ie("srt"===t?qe(n):"ass"===t?function(e){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(e){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},e.option.icons);Object.keys(r).forEach(function(e){var t=document.createElement("i");t.classList.add("art-icon"),t.classList.add("art-icon-".concat(e)),Ee(t,r[e]),n[e]=t})}var Bt=function(){function n(e){var t=this;s(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),e.whitelist.state&&e.once("video:canplay",function(){!function(t,e){var n=t.template.$player;e.proxy(document,["click","contextmenu"],function(e){-1'),e.icons.state)}return u(t,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,t.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),t}();function Jt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(e,t){var n=t.target.dataset.value;n&&(r.flip=n)},mounted:function(e){t.on("flipChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function Kt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(t){var e=t.i18n,r=t.player;return function(t){for(var e=1;e'.concat(e.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(e,t){var n=t.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(e){t.on("aspectRatioChange",function(t){Ae(Array.from(e.querySelectorAll("button")).find(function(e){return e.dataset.value===t}).parentElement,"current")})}})}}function en(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)}return n}function tn(t){return function(r){var e=r.i18n,o=r.player,i=r.events.proxy;return function(t){for(var e=1;e\n '.concat(e.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");i(t,"change",function(){var e=t.value;n.innerText=e,o.playbackRate=Number(e)}),r.on("playbackRateChange",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}})}}var nn=function(){function n(e){var t=this;s(this,n),this.id=0,this.art=e,this.state=!1,e.option.setting&&(this.art.on("ready",function(){t.init()}),this.art.on("blur",function(){t.show=!1}))}return u(n,[{key:"init",value:function(){var t=this,e=this.art,n=e.option,r=e.template.$setting;(0,e.events.proxy)(r,"click",function(e){e.target===r&&(t.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(tn({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(e,t){this.id+=1;var n=this.art.template.$settingBody;return Qe(this.art,this,n,e,t,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(e){var t=this.art.template.$player;e?(this.state=!0,t.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,t.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),rn=function(){function t(e){s(this,t),this.art=e,this.name="artplayer_settings",this.init()}return u(t,[{key:"init",value:function(){var e=this.art.option,t=this.get("volume");t&&(e.volume=t)}},{key:"get",value:function(e){var t=JSON.parse(window.localStorage.getItem(this.name))||{};return e?t[e]:{}}},{key:"set",value:function(e,t){var n=Object.assign({},this.get(),c({},e,t));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(e){var t=this.get();delete t[e],window.localStorage.setItem(this.name,JSON.stringify(t))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),t}();function on(r){var e=r.i18n,o=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(e.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(e){var t=e.querySelector(".art-setting-range input"),n=e.querySelector(".art-subtitle-value");o(t,"change",function(){var e=t.value;n.innerText=e,r.plugins.subtitleOffset.offset(Number(e))}),r.on("subtitle:switch",function(){t.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(e){t.value!==e&&(t.value=e,n.innerText=e)})}}}function an(r){var o=r.constructor.utils.clamp,e=r.setting,i=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),e.add(on);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(e){if(a.$track&&a.$track.track){var t=Array.from(a.$track.track.cues),n=o(e,-5,5);t.forEach(function(e,t){u[t]||(u[t]={startTime:e.startTime,endTime:e.endTime}),e.startTime=o(u[t].startTime+n,0,s.duration),e.endTime=o(u[t].endTime+n,0,s.duration)}),i.show("".concat(c.get("Subtitle offset time"),": ").concat(e,"s")),r.emit("artplayerPluginSubtitleOffset",e)}else i.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function cn(o){var e=o.constructor.utils,n=e.append,r=e.setStyle,i=e.setStyles,a=e.sleep,c=e.errorHandle,s=o.events.proxy,u=o.option,l=o.notice,f=o.i18n,p=o.template,d=o.player;function y(e){if(e){var t=p.$video.canPlayType(e.type);if("maybe"===t||"probably"===t){var n=URL.createObjectURL(e);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,o.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(e.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(e){e.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(e){e.preventDefault(),y(e.dataTransfer.files[0])}),{name:"localPreview",attach:function(e){var t=n(e,'');r(e,"position","relative"),i(t,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(t,"change",function(){y(t.files[0])})}}}function sn(t){var e=t.layers,n=t.player,r=t.option.theme;return e.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(e){t.on("controls:show",function(){e.style.display="none"}),t.on("destroy",function(){e.style.display="none"}),t.on("controls:hide",function(){e.style.display="block"}),t.on("video:timeupdate",function(){e.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function un(r){var o=1e4,i=0,a=0,c=0,e=null;function t(){c=a=i=0,cancelAnimationFrame(e),e=null}function n(){e||!function n(){r.isDestroy||(e=requestAnimationFrame(function(){var e=Date.now();if(c){var t=e-c;a+=t,r.player.playing||(i+=t)}c=e,r.emit("networkMonitor",i/a),o<=a&&(a=i=0),n()}))}()}return r.on("play",n),r.on("pause",t),{name:"networkMonitor",reset:t,start:n,sample:function(e){o=e}}}function ln(t){var e=t.events,n=t.player,r=t.template,o=je(function(){var e=r.$player.getBoundingClientRect();e.top+e.height<=0&&!n.pip?(n.pip=!0,t.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,t.emit("artplayerPluginAutoPip",!1))},300);return e.proxy(window,"scroll",o),{name:"autoPip"}}function fn(t){s(this,fn);var n=t.option,r=t.events.proxy,o=t.template.$video;He.video.events.forEach(function(e){r(o,e,function(e){t.emit("video:".concat(e.type),e)})}),Object.keys(n.moreVideoAttr).forEach(function(e){o[e]=n.moreVideoAttr[e]}),n.muted&&(o.muted=n.muted),n.volume&&(o.volume=we(n.volume,0,1)),n.poster&&(o.poster=n.poster),n.autoplay&&(o.autoplay=n.autoplay),o.controls=!0;var e=n.type||Oe(n.url),i=n.customType[e];e&&i?(t.emit("beforeCustomType",e),i(o,n.url,t),t.emit("afterCustomType",e)):(t.emit("beforeAttachUrl",n.url),o.src=n.url,t.emit("afterAttachUrl",o.src))}var pn=function(){function r(e){var t=this;s(this,r),this.art=e,this.id=0;var n=e.option;n.subtitle.url&&n.subtitleOffset&&this.add(an),!n.isLive&&n.miniProgressBar&&this.add(sn),n.localPreview&&this.add(cn),n.networkMonitor&&this.add(un),n.autoPip&&this.add(ln),e.option.plugins.forEach(function(e){t.add(e)})}return u(r,[{key:"add",value:function(e){this.id+=1;var t=e.call(this,this.art),n="";return ge(!be(this,n=t&&t.name?t.name:e.name?e.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:t}),this.art.emit("plugin:add",e),this}}]),r}(),dn=0,yn=function(){function n(e){var t;return s(this,n),(t=f(this,p(n).call(this))).option=ue(Se(n.option,e),Be),t.isFocus=!1,t.isDestroy=!1,t.whitelist=new Ve(l(t)),t.template=new Ue(l(t)),t.events=new Bt(l(t)),t.whitelist.state?(t.storage=new rn(l(t)),t.icons=new Vt(l(t)),t.i18n=new Ze(l(t)),t.notice=new Xt(l(t)),t.player=new Ke(l(t)),t.layers=new Ut(l(t)),t.controls=new xt(l(t)),t.contextmenu=new Mt(l(t)),t.subtitle=new Ft(l(t)),t.info=new qt(l(t)),t.loading=new Yt(l(t)),t.hotkey=new Ht(l(t)),t.mask=new Zt(l(t)),t.setting=new nn(l(t)),t.plugins=new pn(l(t))):t.mobile=new fn(l(t)),dn+=1,t.id=dn,n.instances.push(l(t)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),t}return t(n,le),u(n,[{key:"destroy",value:function(e){var t=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function W(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function B(t,e){var n=document.createElement("a");T(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function F(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),X={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Z=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":X,"zh-tw":Y},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=$(this.languages,t),this.init()}}]),e}();var J=t(function(t){var o,e,i,r,n;o="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,i=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&L(u,a.html),a.style&&D(u,a.style);var l=Array.from(t.children);u.dataset.index=a.index||c;var f=l.find(function(t){return Number(t.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):L(t,u),a.click&&e.events.proxy(u,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),u)}),a.mounted&&a.mounted(u,n,e),i&&i(u,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(t){t?(T(u,"display","block"),e.emit("".concat(o,":show"),u)):(T(u,"display","none"),e.emit("".concat(o,":hide"),u))},set remove(t){t&&(R(u),e.emit("".concat(o,":remove"),u))}}}),e.emit("".concat(o,":add"),a),n[s]}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function u(t,e){"loaded"===t&&T(n,"width","".concat(100*e,"%")),"played"===t&&(T(r,"width","".concat(100*e,"%")),T(c,"left","calc(".concat(100*e,"% - ").concat(C(c,"width")/2,"px)")))}e.forEach(function(t){var e=P(t.time,0,p.duration)/p.duration*100;L(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(o,"mousemove",function(t){T(s,"display","block"),-1o.clientWidth-r/2?T(s,"left","".concat(o.clientWidth-r,"px")):T(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=ut(l,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?T(s,"left",0):n>o.clientWidth-i/2?T(s,"left","".concat(o.clientWidth-i,"px")):T(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){T(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=ut(l,t),n=e.second;u("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=ut(l,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),u=L(s,'
');function l(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=u.getBoundingClientRect().width;return P(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?T(p,"left","".concat(d.clientWidth-o,"px")):T(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){T(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),u=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),l=L(t,'
'.concat(u,"
"));r(t,function(){l.style.left="-".concat(C(l,"width")/2-t.clientWidth/2,"px")}),n(l,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(lt({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}w(n,"Controls option.position can not be empty"),this.id+=1;var s=K(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&M(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.16'})}function At(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.16
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||L(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(u){var l=this;return new Promise(function(o){var t=l.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(D(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),l.art.template.$track=i}l.load(u).then(function(t){s.innerHTML="";var e=l.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(i,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=j(r);w(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return W("srt"===e?z(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),L(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Qt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Kt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return K(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),c({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){u[e]||(u[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(u[e].startTime+n,0,s.duration),t.endTime=i(u[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,u=i.option,l=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,i.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function ue(e){var t=e.events,n=e.player,r=e.template,i=S(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function le(e){a(this,le);var n=e.option,r=e.events.proxy,i=e.template.$video;U.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=P(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||j(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(ue),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return w(!O(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=u(this,l(n).call(this))).option=p($(n.option,t),N),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new V(o(e)),e.template=new _(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Z(o(e)),e.notice=new Yt(o(e)),e.player=new Q(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Xt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new le(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.16 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,d),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function W(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function B(t,e){var n=document.createElement("a");T(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function I(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),Y={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Z=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":Y,"zh-tw":X},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=$(this.languages,t),this.init()}}]),e}();var J=t(function(t){var a,e,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var u=document.createElement("div");u.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&L(u,a.html),a.style&&D(u,a.style);var l=Array.from(t.children);u.dataset.index=a.index||c;var f=l.find(function(t){return Number(t.dataset.index)>=Number(u.dataset.index)});return f?f.insertAdjacentElement("beforebegin",u):L(t,u),a.click&&e.events.proxy(u,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),u)}),a.mounted&&a.mounted(u,n,e),i&&i(u,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return u},set show(t){t?(T(u,"display","block"),e.emit("".concat(o,":show"),u)):(T(u,"display","none"),e.emit("".concat(o,":hide"),u))},set remove(t){t&&(R(u),e.emit("".concat(o,":remove"),u))}}}),e.emit("".concat(o,":add"),a),n[s]}function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function u(t,e){"loaded"===t&&T(n,"width","".concat(100*e,"%")),"played"===t&&(T(r,"width","".concat(100*e,"%")),T(c,"left","calc(".concat(100*e,"% - ").concat(A(c,"width")/2,"px)")))}e.forEach(function(t){var e=P(t.time,0,p.duration)/p.duration*100;L(a,''))}),u("loaded",p.loaded),l.on("video:progress",function(){u("loaded",p.loaded)}),l.on("video:timeupdate",function(){u("played",p.played)}),l.on("video:ended",function(){u("played",1)}),f(o,"mousemove",function(t){T(s,"display","block"),-1o.clientWidth-r/2?T(s,"left","".concat(o.clientWidth-r,"px")):T(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=ut(l,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?T(s,"left",0):n>o.clientWidth-i/2?T(s,"left","".concat(o.clientWidth-i,"px")):T(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){T(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=ut(l,t),n=e.second;u("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=ut(l,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),u("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),u=L(s,'
');function l(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=u.getBoundingClientRect().width;return P(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?T(p,"left","".concat(d.clientWidth-o,"px")):T(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){T(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),u=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),l=L(t,'
'.concat(u,"
"));r(t,function(){l.style.left="-".concat(A(l,"width")/2-t.clientWidth/2,"px")}),n(l,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(lt({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}w(n,"Controls option.position can not be empty"),this.id+=1;var s=Q(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&M(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.17'})}function Ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.17
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||L(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var It=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ft=function(t,e){return Wt(t)||Bt(t,e)||It()};var Ht=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(u){var l=this;return new Promise(function(o){var t=l.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(D(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),l.art.template.$track=i}l.load(u).then(function(t){s.innerHTML="";var e=l.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ft(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ft(c.textTracks,1)[0];l.isInit||(l.isInit=!0,a(i,"cuechange",r.bind(l))),l.art.on("artplayerPluginSubtitleOffset",r.bind(l))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=j(r);w(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return W("srt"===e?z(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),L(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return Q(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),c({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var u=[];return r.on("subtitle:switch",function(){u=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){u[e]||(u[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(u[e].startTime+n,0,s.duration),t.endTime=i(u[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,u=i.option,l=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),u.url=n,i.emit("switch",n),l.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);l.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),l.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function ue(e){var t=e.events,n=e.player,r=e.template,i=S(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function le(e){a(this,le);var n=e.option,r=e.events.proxy,i=e.template.$video;U.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=P(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||j(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(ue),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return w(!O(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=u(this,l(n).call(this))).option=p($(n.option,t),N),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new V(o(e)),e.template=new _(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Z(o(e)),e.notice=new Xt(o(e)),e.player=new K(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new Ht(o(e)),e.info=new zt(o(e)),e.loading=new Yt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new le(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,d),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function z(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function W(t,e){var n=document.createElement("a");R(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function B(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),_={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":_,"zh-tw":X},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=E(this.languages,t),this.init()}}]),e}();var Z=t(function(t){var o,e,i,r,n;o="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,i=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var l=document.createElement("div");l.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&$(l,a.html),a.style&&T(l,a.style);var u=Array.from(t.children);l.dataset.index=a.index||c;var f=u.find(function(t){return Number(t.dataset.index)>=Number(l.dataset.index)});return f?f.insertAdjacentElement("beforebegin",l):$(t,l),a.click&&e.events.proxy(l,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),l)}),a.mounted&&a.mounted(l,n,e),i&&i(l,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return l},set show(t){t?(R(l,"display","block"),e.emit("".concat(o,":show"),l)):(R(l,"display","none"),e.emit("".concat(o,":hide"),l))},set remove(t){t&&(L(l),e.emit("".concat(o,":remove"),l))}}}),e.emit("".concat(o,":add"),a),n[s]}var K=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t};function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function l(t,e){"loaded"===t&&R(n,"width","".concat(100*e,"%")),"played"===t&&(R(r,"width","".concat(100*e,"%")),R(c,"left","calc(".concat(100*e,"% - ").concat(D(c,"width")/2,"px)")))}e.forEach(function(t){var e=O(t.time,0,p.duration)/p.duration*100;$(a,''))}),l("loaded",p.loaded),u.on("video:progress",function(){l("loaded",p.loaded)}),u.on("video:timeupdate",function(){l("played",p.played)}),u.on("video:ended",function(){l("played",1)}),f(o,"mousemove",function(t){R(s,"display","block"),-1o.clientWidth-r/2?R(s,"left","".concat(o.clientWidth-r,"px")):R(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=lt(u,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?R(s,"left",0):n>o.clientWidth-i/2?R(s,"left","".concat(o.clientWidth-i,"px")):R(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){R(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=lt(u,t),n=e.second;l("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=lt(u,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),l("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),l=$(s,'
');function u(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=l.getBoundingClientRect().width;return O(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?R(p,"left","".concat(d.clientWidth-o,"px")):R(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){R(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),l=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),u=$(t,'
'.concat(l,"
"));r(t,function(){u.style.left="-".concat(D(u,"width")/2-t.clientWidth/2,"px")}),n(u,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(ut({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(kt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}b(n,"Controls option.position can not be empty"),this.id+=1;var s=Q(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&A(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){A(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.16'})}function At(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.16
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||$(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(l){var u=this;return new Promise(function(o){var t=u.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(T(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),u.art.template.$track=i}u.load(l).then(function(t){s.innerHTML="";var e=u.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];u.isInit||(u.isInit=!0,a(i,"cuechange",r.bind(u))),u.art.on("artplayerPluginSubtitleOffset",r.bind(u))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=P(r);b(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return z("srt"===e?q(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),$(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){A(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Qt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Kt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){A(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Kt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return Q(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),K({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var l=[];return r.on("subtitle:switch",function(){l=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){l[e]||(l[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(l[e].startTime+n,0,s.duration),t.endTime=i(l[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,l=i.option,u=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),l.url=n,i.emit("switch",n),u.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);u.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),u.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function le(e){var t=e.events,n=e.player,r=e.template,i=x(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function ue(e){a(this,ue);var n=e.option,r=e.events.proxy,i=e.template.$video;N.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=O(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||P(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(le),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return b(!w(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=s(this,l(n).call(this))).option=f(E(n.option,t),V),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new I(o(e)),e.template=new U(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new Y(o(e)),e.notice=new Yt(o(e)),e.player=new G(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Xt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new ue(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.16 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,p),i(n,[{key:"destroy",value:function(t){var e=0").replace(/\{\\([ibu])1\}/g,"<$1>").replace(/\{([ibu])\}/g,"<$1>").replace(/\{\/([ibu])\}/g,"").replace(/(\d\d:\d\d:\d\d),(\d\d\d)/g,"$1.$2").concat("\r\n\r\n"))}function z(t){return URL.createObjectURL(new Blob([t],{type:"text/vtt"}))}function W(t,e){var n=document.createElement("a");R(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}function B(t){for(var e=arguments.length,n=new Array(1\n \n
\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
\n
\n
×
\n
\n
\n \n '),this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video"),this.$subtitle=this.$container.querySelector(".artplayer-subtitle"),this.$danmuku=this.$container.querySelector(".artplayer-danmuku"),this.$bottom=this.$container.querySelector(".artplayer-bottom"),this.$progress=this.$container.querySelector(".artplayer-progress"),this.$controls=this.$container.querySelector(".artplayer-controls"),this.$controlsLeft=this.$container.querySelector(".artplayer-controls-left"),this.$controlsRight=this.$container.querySelector(".artplayer-controls-right"),this.$layers=this.$container.querySelector(".artplayer-layers"),this.$loading=this.$container.querySelector(".artplayer-loading"),this.$notice=this.$container.querySelector(".artplayer-notice"),this.$noticeInner=this.$container.querySelector(".artplayer-notice-inner"),this.$mask=this.$container.querySelector(".artplayer-mask"),this.$setting=this.$container.querySelector(".artplayer-setting"),this.$settingInner=this.$container.querySelector(".artplayer-setting-inner"),this.$settingBody=this.$container.querySelector(".artplayer-setting-body"),this.$info=this.$container.querySelector(".artplayer-info"),this.$infoPanel=this.$container.querySelector(".artplayer-info-panel"),this.$infoClose=this.$container.querySelector(".artplayer-info-close"),this.$pipHeader=this.$container.querySelector(".artplayer-pip-header"),this.$pipTitle=this.$container.querySelector(".artplayer-pip-title"),this.$pipClose=this.$container.querySelector(".artplayer-pip-close"),this.$contextmenu=this.$container.querySelector(".artplayer-contextmenu")}},{key:"initMobile",value:function(){this.$container.innerHTML='\n
\n \n
\n ',this.$player=this.$container.querySelector(".artplayer-video-player"),this.$video=this.$container.querySelector(".artplayer-video")}},{key:"destroy",value:function(t){t?this.$container.innerHTML="":this.$player.classList.add("artplayer-destroy")}}]),n}(),_={"About author":"关于作者","Video info":"视频统计信息",Close:"关闭","Video load failed":"视频加载失败",Volume:"音量",Play:"播放",Pause:"暂停",Rate:"速度",Mute:"静音",Flip:"视频翻转",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新连接","Hide subtitle":"隐藏字幕","Show subtitle":"显示字幕","Hide danmu":"隐藏弹幕","Show danmu":"显示弹幕","Show setting":"显示设置","Hide setting":"隐藏设置",Screenshot:"截图","Play speed":"播放速度","Aspect ratio":"画面比例",Default:"默认",Normal:"正常","Switch video":"切换","Switch subtitle":"切换字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"网页全屏","Exit web fullscreen":"退出网页全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},Y={"About author":"關於作者","Video info":"影片統計訊息",Close:"關閉","Video load failed":"影片載入失敗",Volume:"音量",Play:"播放",Pause:"暫停",Rate:"速度",Mute:"靜音",Flip:"影片翻轉",Horizontal:"水平",Vertical:"垂直",Reconnect:"重新連接","Hide subtitle":"隱藏字幕","Show subtitle":"顯示字幕","Show setting":"顯示设置","Hide setting":"隱藏设置","Hide danmu":"隱藏彈幕","Show danmu":"顯示彈幕",Screenshot:"截圖","Play speed":"播放速度","Aspect ratio":"畫面比例",Default:"默認",Normal:"正常","Switch video":"切換","Switch subtitle":"切換字幕",Fullscreen:"全屏","Exit fullscreen":"退出全屏","Web fullscreen":"網頁全屏","Exit web fullscreen":"退出網頁全屏","Mini player":"迷你播放器","This does not seem to support full screen functionality":"似乎不支持全屏功能"},X=function(){function e(t){a(this,e),this.art=t,this.languages={"zh-cn":_,"zh-tw":Y},this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option.lang.toLowerCase();this.language=this.languages[t]||{}}},{key:"get",value:function(t){return this.language[t]||t}},{key:"update",value:function(t){this.languages=E(this.languages,t),this.init()}}]),e}();var Z=t(function(t){var a,e,c,s,r,n;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,c="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,s=function(){for(var t,e=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,r=e.length,i={};n ").concat(s));var l=document.createElement("div");l.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&$(l,a.html),a.style&&T(l,a.style);var u=Array.from(t.children);l.dataset.index=a.index||c;var f=u.find(function(t){return Number(t.dataset.index)>=Number(l.dataset.index)});return f?f.insertAdjacentElement("beforebegin",l):$(t,l),a.click&&e.events.proxy(l,"click",function(t){t.preventDefault(),a.click.call(e,n,t),e.emit("".concat(o,":click"),l)}),a.mounted&&a.mounted(l,n,e),i&&i(l,n,e),Object.defineProperty(n,s,{value:{get id(){return c},get $ref(){return l},set show(t){t?(R(l,"display","block"),e.emit("".concat(o,":show"),l)):(R(l,"display","none"),e.emit("".concat(o,":hide"),l))},set remove(t){t&&(L(l),e.emit("".concat(o,":remove"),l))}}}),e.emit("".concat(o,":add"),a),n[s]}var Q=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t};function tt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(t){return function(a){return function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var i=!1,n=o.querySelector(".art-progress-loaded"),r=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),c=o.querySelector(".art-progress-indicator"),s=o.querySelector(".art-progress-tip");function l(t,e){"loaded"===t&&R(n,"width","".concat(100*e,"%")),"played"===t&&(R(r,"width","".concat(100*e,"%")),R(c,"left","calc(".concat(100*e,"% - ").concat(D(c,"width")/2,"px)")))}e.forEach(function(t){var e=O(t.time,0,p.duration)/p.duration*100;$(a,''))}),l("loaded",p.loaded),u.on("video:progress",function(){l("loaded",p.loaded)}),u.on("video:timeupdate",function(){l("played",p.played)}),u.on("video:ended",function(){l("played",1)}),f(o,"mousemove",function(t){R(s,"display","block"),-1o.clientWidth-r/2?R(s,"left","".concat(o.clientWidth-r,"px")):R(s,"left","".concat(e-r/2,"px"))}(t):function(t){var e=lt(u,t),n=e.width,r=e.time;s.innerHTML=r;var i=s.clientWidth;n<=i/2?R(s,"left",0):n>o.clientWidth-i/2?R(s,"left","".concat(o.clientWidth-i,"px")):R(s,"left","".concat(n-i/2,"px"))}(t)}),f(o,"mouseout",function(){R(s,"display","none")}),f(o,"click",function(t){if(t.target!==c){var e=lt(u,t),n=e.second;l("played",e.percentage),p.seek=n}}),f(c,"mousedown",function(){i=!0}),f(document,"mousemove",function(t){if(i){var e=lt(u,t),n=e.second,r=e.percentage;c.classList.add("art-show-indicator"),l("played",r),p.seek=n}}),f(document,"mouseup",function(){i&&(i=!1,c.classList.remove("art-show-indicator"))})}})}}function ft(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pt(t){return function(a){return function(e){for(var t=1;t'),l=$(s,'
');function u(t){var e=s.getBoundingClientRect(),n=e.left,r=e.width,i=l.getBoundingClientRect().width;return O(t.pageX-n-i/2,0,r-i/2)/(r-i)}function f(t){var e=0d.clientWidth-o/2?R(p,"left","".concat(d.clientWidth-o,"px")):R(p,"left","".concat(e-o/2,"px"))}(t))}),e(d,"mouseout",function(){R(p,"display","none")})}})}}function Ot(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pt(t){return function(a){return function(e){for(var t=1;t'.concat(i.name,"")),l=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join(""),u=$(t,'
'.concat(l,"
"));r(t,function(){u.style.left="-".concat(D(u,"width")/2-t.clientWidth/2,"px")}),n(u,"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],r=n.url,i=n.name;r&&i&&c!==e&&(a.switchQuality(r,i),s.innerHTML=i,c=e)})}})}}var xt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.on("ready",function(){e.init()})}return i(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(ut({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(wt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(ct({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(vt({name:"volume",disable:!1,position:"left",index:20})),this.add(ht({name:"time",disable:t.isLive,position:"left",index:30})),this.add(jt({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(Pt({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(pt({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(gt({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(ot({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(rt({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(et({name:"fullscreen",disable:!t.fullscreen,position:"right",index:70})),t.controls.forEach(function(t){e.add(t)})}},{key:"add",value:function(t,e){var n,r="function"==typeof t?t(this.art):t,i=this.art.template,o=i.$progress,a=i.$controlsLeft,c=i.$controlsRight;switch(r.position){case"top":n=o;break;case"left":n=a;break;case"right":n=c}b(n,"Controls option.position can not be empty"),this.id+=1;var s=K(this.art,this,n,r,e,"control");return r.disable||"top"===r.position||s.$ref.firstElementChild&&"I"===s.$ref.firstElementChild.tagName||s.$ref.classList.add("art-control-onlyText"),s}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-controls-show"),this.art.emit("controls:show")):(this.state=!1,e.classList.remove("artplayer-controls-show"),this.art.emit("controls:hide"))}}]),n}();function St(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Et(n){return function(t){var e=t.i18n,r=t.player;return function(e){for(var t=1;t0.5\n 0.75\n ').concat(e.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t,e){var n=e.target.dataset.rate;n&&(r.playbackRate=Number(n),t.show=!1)},mounted:function(n){t.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&C(t,"current")})}})}}function $t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Lt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t,e){var n=e.target.dataset.ratio;n&&(r.aspectRatio=n,t.show=!1)},mounted:function(t){e.on("aspectRatioChange",function(e){C(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}function Rt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Tt(t){return function(e){return function(e){for(var t=1;tArtPlayer 3.1.17'})}function Ct(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e){return function(t){return function(e){for(var t=1;t\n
Player version:
\n
3.1.17
\n \n '),t.push('\n
\n
Video url:
\n
'.concat(this.art.option.url,"
\n
\n ")),t.push('\n
\n
Video volume:
\n
\n
\n '),t.push('\n
\n
Video time:
\n
\n
\n '),t.push('\n
\n
Video duration:
\n
\n
\n '),t.push('\n
\n
Video resolution:
\n
\n x \n
\n
\n '),t.join("")}},{key:"readInfo",value:function(){var t=this.art.template,e=t.$infoPanel,n=t.$video;Array.from(e.querySelectorAll("[data-video]")).forEach(function(t){var e=n[t.dataset.video];t.innerHTML=void 0!==e?"number"==typeof e?e.toFixed(2):e:"unknown"})}},{key:"loop",value:function(){var t=this;this.readInfo(),this.timer=setTimeout(function(){t.readInfo(),t.loop()},1e3)}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template,n=e.$player,r=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),r.innerHTML||$(r,this.creatInfo()),clearTimeout(this.timer),this.loop(),this.art.emit("info:show")):(this.state=!1,n.classList.remove("artplayer-info-show"),clearTimeout(this.timer),this.art.emit("info:hide"))}}]),e}();var Wt=function(t){if(Array.isArray(t))return t};var Bt=function(t,e){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,c=t[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){i=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(i)throw o}}return n}};var Ft=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var Ht=function(t,e){return Wt(t)||Bt(t,e)||Ft()};var It=function(){function n(t){a(this,n),this.art=t,this.state=!0,this.isInit=!1;var e=this.art.option.subtitle.url;e&&this.init(e)}return i(n,[{key:"switch",value:function(t){var e=this.art,n=e.i18n,r=e.notice;return this.init(t).then(function(t){return r.show(n.get("Switch subtitle")),t})}},{key:"init",value:function(l){var u=this;return new Promise(function(o){var t=u.art,a=t.events.proxy,e=t.option.subtitle,n=t.template,c=n.$video,s=n.$subtitle,r=n.$track;if(T(s,e.style||{}),!r){var i=document.createElement("track");i.default=!0,i.kind="metadata",c.appendChild(i),u.art.template.$track=i}u.load(l).then(function(t){s.innerHTML="";var e=u.art.template.$track,n=e.src;if(n!==t){if(URL.revokeObjectURL(n),e.src=t,c.textTracks&&c.textTracks[0]){var r=function(){var t=Ht(i.activeCues,1)[0];s.innerHTML="",t&&(s.innerHTML=t.text.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")),this.art.emit("subtitle:update",s)},i=Ht(c.textTracks,1)[0];u.isInit||(u.isInit=!0,a(i,"cuechange",r.bind(u))),u.art.on("artplayerPluginSubtitleOffset",r.bind(u))}o(t)}})})}},{key:"load",value:function(r){var e=this.art.notice;return fetch(r).then(function(t){return t.text()}).then(function(t){var e=P(r);b(["srt","ass","vtt"].includes(e),"Unsupported subtitle format: ".concat(e));var n=t.replace(/{[\s\S]*?}/g,"");return z("srt"===e?q(n):"ass"===e?function(t){var n=new RegExp("Dialogue:\\s\\d,(\\d+:\\d\\d:\\d\\d.\\d\\d),(\\d+:\\d\\d:\\d\\d.\\d\\d),([^,]*),([^,]*),(?:[^,]*,){4}([\\s\\S]*)$","i");function r(t){return(0\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n',state:'\n \n',play:'\n \n',pause:'\n \n',volume:'\n \n \n',volumeClose:'\n \n \n',subtitle:'\n \n \n',screenshot:'\n\t\n\n',setting:'\n \n \n',fullscreen:'\n\t\n\t\n\t\n\t\n',fullscreenWeb:'\n\t\n',pip:'\n \n',prev:'\n \n',next:'\n \n'},t.option.icons);Object.keys(r).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),$(e,r[t]),n[t]=e})}var Nt=function(){function n(t){var e=this;a(this,n),this.destroyEvents=[],this.proxy=this.proxy.bind(this),this.hover=this.hover.bind(this),this.loadImg=this.loadImg.bind(this),t.whitelist.state&&t.once("video:canplay",function(){!function(e,t){var n=e.template.$player;t.proxy(document,["click","contextmenu"],function(t){-1'),t.icons.state)}return i(e,[{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-mask-show"),this.art.emit("mask:show")):(this.state=!1,e.classList.remove("artplayer-mask-show"),this.art.emit("mask:hide"))}}]),e}();function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Gt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Flip"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t,e){var n=e.target.dataset.value;n&&(r.flip=n)},mounted:function(t){e.on("flipChange",function(e){C(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function Kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Qt(n){return function(e){var t=e.i18n,r=e.player;return function(e){for(var t=1;t'.concat(t.get("Aspect ratio"),'\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t,e){var n=e.target.dataset.value;n&&(r.aspectRatio=n)},mounted:function(t){e.on("aspectRatioChange",function(e){C(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ee(e){return function(r){var t=r.i18n,i=r.player,o=r.events.proxy;return function(e){for(var t=1;t\n '.concat(t.get("Play speed"),': 1.0x\n \n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");o(e,"change",function(){var t=e.value;n.innerText=t,i.playbackRate=Number(t)}),r.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}var ne=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.on("ready",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return i(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,r=t.template.$setting;(0,t.events.proxy)(r,"click",function(t){t.target===r&&(e.show=!1)}),this.add(Gt({disable:!n.flip,name:"flip"})),this.add(Qt({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(ee({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return K(this.art,this,n,t,e,"setting")}},{key:"toggle",value:function(){this.show=!this.state}},{key:"show",set:function(t){var e=this.art.template.$player;t?(this.state=!0,e.classList.add("artplayer-setting-show"),this.art.emit("setting:show")):(this.state=!1,e.classList.remove("artplayer-setting-show"),this.art.emit("setting:hide"))}}]),n}(),re=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return i(e,[{key:"init",value:function(){var t=this.art.option,e=this.get("volume");e&&(t.volume=e)}},{key:"get",value:function(t){var e=JSON.parse(window.localStorage.getItem(this.name))||{};return t?e[t]:{}}},{key:"set",value:function(t,e){var n=Object.assign({},this.get(),Q({},t,e));window.localStorage.setItem(this.name,JSON.stringify(n))}},{key:"del",value:function(t){var e=this.get();delete e[t],window.localStorage.setItem(this.name,JSON.stringify(e))}},{key:"clean",value:function(){window.localStorage.removeItem(this.name)}}]),e}();function ie(r){var t=r.i18n,i=r.events.proxy;return{title:"Subtitle",name:"subtitle",index:20,html:'\n
\n '.concat(t.get("Subtitle offset time"),': 0s\n
\n
\n \n
\n '),mounted:function(t){var e=t.querySelector(".art-setting-range input"),n=t.querySelector(".art-subtitle-value");i(e,"change",function(){var t=e.value;n.innerText=t,r.plugins.subtitleOffset.offset(Number(t))}),r.on("subtitle:switch",function(){e.value=0,n.innerText=0}),r.on("artplayerPluginSubtitleOffset",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function oe(r){var i=r.constructor.utils.clamp,t=r.setting,o=r.notice,a=r.template,c=r.i18n,s=r.player;c.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(ie);var l=[];return r.on("subtitle:switch",function(){l=[]}),{name:"subtitleOffset",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=i(t,-5,5);e.forEach(function(t,e){l[e]||(l[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=i(l[e].startTime+n,0,s.duration),t.endTime=i(l[e].endTime+n,0,s.duration)}),o.show("".concat(c.get("Subtitle offset time"),": ").concat(t,"s")),r.emit("artplayerPluginSubtitleOffset",t)}else o.show("".concat(c.get("No subtitles found"))),r.emit("artplayerPluginSubtitleOffset",0)}}}function ae(i){var t=i.constructor.utils,n=t.append,r=t.setStyle,o=t.setStyles,a=t.sleep,c=t.errorHandle,s=i.events.proxy,l=i.option,u=i.notice,f=i.i18n,p=i.template,d=i.player;function h(t){if(t){var e=p.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,p.$video.src=n,a(1e3).then(function(){d.currentTime=0}),l.url=n,i.emit("switch",n),u.show(f.get("Load local video successfully"))}else{var r="".concat(f.get("Playback of this file format is not supported"),": ").concat(t.type);u.show(r,!0,3e3),c(!1,r)}}}return f.update({"zh-cn":{"Playback of this file format is not supported":"不支持播放该文件格式","Load local video successfully":"加载本地视频成功"},"zh-tw":{"Playback of this file format is not supported":"不支持播放該文件格式","Load local video successfully":"加載本地視頻成功"}}),s(p.$player,"dragover",function(t){t.preventDefault(),u.show(f.get("Load local video successfully"))}),s(p.$player,"drop",function(t){t.preventDefault(),h(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');r(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){h(e.files[0])})}}}function ce(e){var t=e.layers,n=e.player,r=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"2px",background:r},mounted:function(t){e.on("controls:show",function(){t.style.display="none"}),e.on("destroy",function(){t.style.display="none"}),e.on("controls:hide",function(){t.style.display="block"}),e.on("video:timeupdate",function(){t.style.width="".concat(100*n.played,"%")})}}),{name:"miniProgressBar"}}function se(r){var i=1e4,o=0,a=0,c=0,t=null;function e(){c=a=o=0,cancelAnimationFrame(t),t=null}function n(){t||!function n(){r.isDestroy||(t=requestAnimationFrame(function(){var t=Date.now();if(c){var e=t-c;a+=e,r.player.playing||(o+=e)}c=t,r.emit("networkMonitor",o/a),i<=a&&(a=o=0),n()}))}()}return r.on("play",n),r.on("pause",e),{name:"networkMonitor",reset:e,start:n,sample:function(t){i=t}}}function le(e){var t=e.events,n=e.player,r=e.template,i=x(function(){var t=r.$player.getBoundingClientRect();t.top+t.height<=0&&!n.pip?(n.pip=!0,e.emit("artplayerPluginAutoPip",!0)):n.pip&&(n.pip=!1,e.emit("artplayerPluginAutoPip",!1))},300);return t.proxy(window,"scroll",i),{name:"autoPip"}}function ue(e){a(this,ue);var n=e.option,r=e.events.proxy,i=e.template.$video;N.video.events.forEach(function(t){r(i,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){i[t]=n.moreVideoAttr[t]}),n.muted&&(i.muted=n.muted),n.volume&&(i.volume=O(n.volume,0,1)),n.poster&&(i.poster=n.poster),n.autoplay&&(i.autoplay=n.autoplay),i.controls=!0;var t=n.type||P(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(i,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),i.src=n.url,e.emit("afterAttachUrl",i.src))}var fe=function(){function r(t){var e=this;a(this,r),this.art=t,this.id=0;var n=t.option;n.subtitle.url&&n.subtitleOffset&&this.add(oe),!n.isLive&&n.miniProgressBar&&this.add(ce),n.localPreview&&this.add(ae),n.networkMonitor&&this.add(se),n.autoPip&&this.add(le),t.option.plugins.forEach(function(t){e.add(t)})}return i(r,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art),n="";return b(!w(this,n=e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)),"Cannot add a plugin that already has the same name: ".concat(n)),Object.defineProperty(this,n,{value:e}),this.art.emit("plugin:add",t),this}}]),r}(),pe=0,de=function(){function n(t){var e;return a(this,n),(e=s(this,l(n).call(this))).option=f(E(n.option,t),V),e.isFocus=!1,e.isDestroy=!1,e.whitelist=new I(o(e)),e.template=new U(o(e)),e.events=new Nt(o(e)),e.whitelist.state?(e.storage=new re(o(e)),e.icons=new Vt(o(e)),e.i18n=new X(o(e)),e.notice=new Xt(o(e)),e.player=new G(o(e)),e.layers=new _t(o(e)),e.controls=new xt(o(e)),e.contextmenu=new qt(o(e)),e.subtitle=new It(o(e)),e.info=new zt(o(e)),e.loading=new Yt(o(e)),e.hotkey=new Ut(o(e)),e.mask=new Zt(o(e)),e.setting=new ne(o(e)),e.plugins=new fe(o(e))):e.mobile=new ue(o(e)),pe+=1,e.id=pe,n.instances.push(o(e)),console.log("%c ArtPlayer %c 3.1.17 %c https://artplayer.org","color: #fff; background: #5f5f5f","color: #fff; background: #4bc729",""),e}return e(n,p),i(n,[{key:"destroy",value:function(t){var e=0 Date: Mon, 11 Nov 2019 06:47:58 +0800 Subject: [PATCH 4/4] Update package.json --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index e8194c077..2b00874dd 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "babel-eslint": "^10.0.3", "browser-env": "^3.3.0", "chai": "^4.2.0", - "chalk": "^2.4.2", + "chalk": "^3.0.0", "cpy": "^7.3.0", "cross-env": "^6.0.3", "cssnano": "^4.1.10", @@ -50,11 +50,11 @@ "eslint-plugin-import": "^2.18.2", "glob": "^7.1.6", "inquirer": "^7.0.0", - "lerna": "^3.18.3", + "lerna": "^3.18.4", "mocha": "^6.2.2", "mocha-chrome": "^2.2.0", "node-sass": "^4.13.0", - "rollup": "^1.26.3", + "rollup": "^1.26.4", "rollup-plugin-babel": "^4.3.3", "rollup-plugin-commonjs": "^10.1.0", "rollup-plugin-eslint": "^7.0.0",