/*! * artplayer.js v3.1.9 * Github: https://github.com/zhw2590582/ArtPlayer#readme * (c) 2017-2019 Harvey Zack * Released under the MIT License. */ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).Artplayer=e()}(this,function(){"use strict";var a=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")};function i(t,e){for(var n=0;n").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 _(t,e){var n=document.createElement("a");j(n,"display","none"),n.href=t,n.download=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}var F=Object.freeze({errorHandle:b,hasOwnProperty:w,clamp:x,getExt:k,secondToTime:S,sleep:$,debounce:L,throttle:T,mergeDeep:R,append:P,remove:E,setStyle:j,setStyles:O,getStyle:A,sublings:C,inverseClass:M,tooltip:q,srtToVtt:z,vttToBlob:W,downloadFile:_});function H(t,e,n){return b("string"===n||e instanceof Element,"".concat(t.join(".")," require 'string' or 'Element' type"))}function B(t){var e=this;a(this,B);var n=t.constructor.kindOf,i=t.option.whitelist;this.userAgent=window.navigator.userAgent,this.isMobile=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(this.userAgent),this.state=!this.isMobile||i.some(function(t){switch(n(t)){case"string":return-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}(),D={"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":"似乎不支持全屏功能"},U={"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":D,"zh-tw":U},this.init()}return r(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=R(this.languages,t),this.init()}}]),e}();var Y=t(function(t){var o,e,r,a,i,n;o="undefined"!=typeof window&&void 0!==window.document?window.document:{},e=t.exports,r="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,a=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,i=e.length,r={};n ").concat(s));var c=document.createElement("div");c.classList.value="art-".concat(o," art-").concat(o,"-").concat(s),a.html&&P(c,a.html),a.style&&O(c,a.style);var l=Array.from(t.children);c.dataset.index=a.index||n.id;var u=l.find(function(t){return Number(t.dataset.index)>=Number(c.dataset.index)});return u?u.insertAdjacentElement("beforebegin",c):P(t,c),a.click&&e.events.proxy(c,"click",function(t){t.preventDefault(),a.click.call(n,t,e),e.emit("".concat(o,":click"),c)}),a.mounted&&a.mounted(c,n,e),r&&r(c,n,e),Object.defineProperty(n,s,{value:{get id(){return n.id},get $ref(){return c},set show(t){t?(j(c,"display","block"),e.emit("".concat(o,":show"),c)):(j(c,"display","none"),e.emit("".concat(o,":hide"),c))},set remove(t){t&&(E(c),e.emit("".concat(o,":remove"),c))}}}),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};var Q=function(e){for(var t=1;t\n
\n
\n
\n
\n
\n \n '),mounted:function(o){var r=!1,n=o.querySelector(".art-progress-loaded"),i=o.querySelector(".art-progress-played"),a=o.querySelector(".art-progress-highlight"),s=o.querySelector(".art-progress-indicator"),c=o.querySelector(".art-progress-tip");function l(t,e){"loaded"===t&&j(n,"width","".concat(100*e,"%")),"played"===t&&(j(i,"width","".concat(100*e,"%")),j(s,"left","calc(".concat(100*e,"% - ").concat(A(s,"width")/2,"px)")))}e.forEach(function(t){var e=x(t.time,0,d.duration)/d.duration*100;P(a,''))}),l("loaded",d.loaded),u.on("video:progress",function(){l("loaded",d.loaded)}),u.on("video:timeupdate",function(){l("played",d.played)}),u.on("video:ended",function(){l("played",1)}),f(o,"mousemove",function(t){j(c,"display","block"),-1o.clientWidth-i/2?j(c,"left","".concat(o.clientWidth-i,"px")):j(c,"left","".concat(e-i/2,"px"))}(t):function(t){var e=tt(u,t),n=e.width,i=e.time;c.innerHTML=i;var r=c.clientWidth;n<=r/2?j(c,"left",0):n>o.clientWidth-r/2?j(c,"left","".concat(o.clientWidth-r,"px")):j(c,"left","".concat(n-r/2,"px"))}(t)}),f(o,"mouseout",function(){j(c,"display","none")}),f(o,"click",function(t){if(t.target!==s){var e=tt(u,t),n=e.second;l("played",e.percentage),d.seek=n}}),f(s,"mousedown",function(){r=!0}),f(document,"mousemove",function(t){if(r){var e=tt(u,t),n=e.second,i=e.percentage;s.classList.add("art-show-indicator"),l("played",i),d.seek=n}}),f(document,"mouseup",function(){r&&(r=!1,s.classList.remove("art-show-indicator"))})}})}}function nt(t){return function(h){return Q({},t,{mounted:function(d){var p=h.template.$progress,t=h.events,e=t.proxy,n=t.loadImg,i=!1,r=!1;e(p,"mousemove",function(t){i||(i=!0,n(h.option.thumbnails.url).then(function(){r=!0})),r&&(j(d,"display","block"),function(t){var e=tt(h,t).width,n=h.option.thumbnails,i=n.url,r=n.height,o=n.width,a=n.number,s=n.column,c=p.clientWidth/a,l=Math.floor(e/c),u=Math.ceil(l/s)-1,f=l%s||s-1;j(d,"backgroundImage","url(".concat(i,")")),j(d,"height","".concat(r,"px")),j(d,"width","".concat(o,"px")),j(d,"backgroundPosition","-".concat(f*o,"px -").concat(u*r,"px")),e<=o/2?j(d,"left",0):e>p.clientWidth-o/2?j(d,"left","".concat(p.clientWidth-o,"px")):j(d,"left","".concat(e-o/2,"px"))}(t))}),e(p,"mouseout",function(){j(d,"display","none")})}})}}var it=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.once("video:canplay",function(){e.init()})}return r(n,[{key:"init",value:function(){var e=this,t=this.art.option;this.add(et({name:"progress",disable:t.isLive,position:"top",index:10})),this.add(nt({name:"thumbnails",disable:!t.thumbnails.url||t.isLive,position:"top",index:20})),this.add(function(t){return function(l){return Q({},t,{mounted:function(t){var e=l.events.proxy,n=l.icons,i=l.i18n,r=l.player,o=P(t,n.play),a=P(t,n.pause);function s(){j(o,"display","flex"),j(a,"display","none")}function c(){j(o,"display","none"),j(a,"display","flex")}q(o,i.get("Play")),q(a,i.get("Pause")),e(o,"click",function(){r.play=!0}),e(a,"click",function(){r.pause=!0}),r.playing?c():s(),l.on("video:playing",function(){c()}),l.on("video:pause",function(){s()})}})}}({name:"playAndPause",disable:!1,position:"left",index:10})),this.add(function(t){return function(d){return Q({},t,{mounted:function(t){var e=d.events.proxy,n=d.icons,i=d.player,r=d.i18n,o=!1,a=P(t,n.volume),s=P(t,n.volumeClose),c=P(t,'
'),l=P(c,'
');function u(t){var e=c.getBoundingClientRect(),n=e.left,i=e.width,r=l.getBoundingClientRect().width;return x(t.pageX-n-r/2,0,i-r/2)/(i-r)}function f(){var t=0'.concat(n.name,"")),i=o.quality.map(function(t,e){return'
').concat(t.name,"
")}).join("");e(P(t,'
'.concat(i,"
")),"click",function(t){var e=Number(t.target.dataset.index),n=o.quality[e],i=n.url,r=n.name;i&&r&&s!==e&&(a.switchQuality(i,r),c.innerHTML=r,s=e)})}})}}({name:"quality",disable:0===t.quality.length,position:"right",index:10})),this.add(function(t){return function(a){return Q({},t,{mounted:function(t){var e=a.events.proxy,n=a.icons,i=a.i18n,r=a.player,o=P(t,n.screenshot);q(o,i.get("Screenshot")),e(o,"click",function(){r.screenshot()})}})}}({name:"screenshot",disable:!t.screenshot,position:"right",index:20})),this.add(function(t){return function(a){return Q({},t,{mounted:function(t){var e=a.events.proxy,n=a.icons,i=a.i18n,r=a.subtitle,o=P(t,n.subtitle);q(o,i.get("Hide subtitle")),e(t,"click",function(){r.toggle()}),a.on("subtitle:show",function(){j(o,"opacity","1"),q(o,i.get("Hide subtitle"))}),a.on("subtitle:hide",function(){j(o,"opacity","0.8"),q(o,i.get("Show subtitle"))})}})}}({name:"subtitle",disable:!t.subtitle.url,position:"right",index:30})),this.add(function(t){return function(a){return Q({},t,{mounted:function(t){var e=a.events.proxy,n=a.icons,i=a.i18n,r=a.setting,o=P(t,n.setting);q(o,i.get("Show setting")),e(t,"click",function(){r.toggle()}),a.on("setting:show",function(){j(o,"opacity","0.8"),q(o,i.get("Hide setting"))}),a.on("setting:hide",function(){j(o,"opacity","1"),q(o,i.get("Show setting"))})}})}}({name:"setting",disable:!t.setting,position:"right",index:40})),this.add(function(t){return function(o){return Q({},t,{mounted:function(t){var e=o.events.proxy,n=o.icons,i=o.i18n,r=o.player;q(P(t,n.pip),i.get("Mini player")),e(t,"click",function(){r.pip=!0})}})}}({name:"pip",disable:!t.pip,position:"right",index:50})),this.add(function(t){return function(a){return Q({},t,{mounted:function(t){var e=a.events.proxy,n=a.icons,i=a.i18n,r=a.player,o=P(t,n.fullscreenWeb);q(o,i.get("Web fullscreen")),e(t,"click",function(){r.fullscreenWebToggle=!0}),a.on("fullscreenWeb:enabled",function(){j(o,"opacity","0.8"),q(o,i.get("Exit web fullscreen"))}),a.on("fullscreenWeb:exit",function(){j(o,"opacity","1"),q(o,i.get("Web fullscreen"))})}})}}({name:"fullscreenWeb",disable:!t.fullscreenWeb,position:"right",index:60})),this.add(function(t){return function(a){return Q({},t,{mounted:function(t){var e=a.events.proxy,n=a.icons,i=a.i18n,r=a.player,o=P(t,n.fullscreen);q(o,i.get("Fullscreen")),e(t,"click",function(){r.fullscreenToggle=!0}),a.on("fullscreen:enabled",function(){j(o,"opacity","0.8"),q(o,i.get("Exit fullscreen"))}),a.on("fullscreen:exit",function(){j(o,"opacity","1"),q(o,i.get("Fullscreen"))})}})}}({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,i="function"==typeof t?t(this.art):t,r=this.art.template,o=r.$progress,a=r.$controlsLeft,s=r.$controlsRight;switch(i.position){case"top":n=o;break;case"left":n=a;break;case"right":n=s}return b(n,"Controls option.position can not be empty"),this.id+=1,G(this.art,this,n,i,e,"control")}},{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}();var rt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.art.once("video:canplay",function(){e.init()}),this.art.on("blur",function(){e.show=!1})}return r(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,i=t.template,r=i.$player,o=i.$contextmenu,a=t.events.proxy;this.add(function(e){return function(i){var t=i.i18n,n=i.player;return Q({},e,{html:"\n ".concat(t.get("Play speed"),':\n 0.5\n 0.75\n ').concat(t.get("Normal"),'\n 1.25\n 1.5\n 2.0\n '),click:function(t){var e=t.target.dataset.rate;e&&(n.playbackRate=Number(e),i.contextmenu.show=!1)},mounted:function(n){i.on("playbackRateChange",function(e){var t=Array.from(n.querySelectorAll("span")).find(function(t){return Number(t.dataset.rate)===e});t&&M(t,"current")})}})}}({disable:!n.playbackRate,name:"playbackRate",index:10})),this.add(function(e){return function(n){var t=n.i18n,i=n.player;return Q({},e,{html:"\n ".concat(t.get("Aspect ratio"),':\n ').concat(t.get("Default"),'\n 4:3\n 16:9\n '),click:function(t){var e=t.target.dataset.ratio;e&&(i.aspectRatio=e,n.contextmenu.show=!1)},mounted:function(t){n.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("span")).find(function(t){return t.dataset.ratio===e}),"current")})}})}}({disable:!n.aspectRatio,name:"aspectRatio",index:20})),this.add(function(e){return function(t){return Q({},e,{html:t.i18n.get("Video info"),click:function(){t.info.show=!0,t.contextmenu.show=!1}})}}({disable:!1,name:"info",index:30})),this.add(function(t){return Q({},t,{html:'ArtPlayer 3.1.9'})}({disable:!1,name:"version",index:40})),this.add(function(e){return function(t){return Q({},e,{html:t.i18n.get("Close"),click:function(){t.contextmenu.show=!1}})}}({disable:!1,name:"close",index:50})),n.contextmenu.forEach(function(t){e.add(t)}),a(r,"contextmenu",function(t){t.preventDefault(),e.show=!0,e.setPos(t)}),a(r,"click",function(t){t.composedPath().includes(o)||(e.show=!1)})}},{key:"add",value:function(t,e){var n=this.art.template.$contextmenu;return this.id+=1,G(this.art,this,n,t,e,"contextmenu")}},{key:"setPos",value:function(t){var e=this.art.template,n=e.$player,i=e.$contextmenu,r=t.clientX,o=t.clientY,a=n.getBoundingClientRect(),s=a.height,c=a.width,l=a.left,u=a.top,f=i.getBoundingClientRect(),d=f.height,p=f.width,h=r-l,y=o-u;l+c\n
Player version:
\n
3.1.9
\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,i=e.$infoPanel;t?(this.state=!0,n.classList.add("artplayer-info-show"),i.innerHTML||P(i,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 at=function(t){if(Array.isArray(t))return t};var st=function(t,e){var n=[],i=!0,r=!1,o=void 0;try{for(var a,s=t[Symbol.iterator]();!(i=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);i=!0);}catch(t){r=!0,o=t}finally{try{i||null==s.return||s.return()}finally{if(r)throw o}}return n};var ct=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")};var lt=function(t,e){return at(t)||st(t,e)||ct()},ut=function(){function n(t){a(this,n),this.art=t,this.state=!0;var e=this.art.option.subtitle.url;e&&this.init(e)}return r(n,[{key:"init",value:function(t){var i=this,e=this.art,r=e.events.proxy,n=e.option.subtitle,o=e.template,a=o.$video,s=o.$subtitle,c=o.$track;if(O(s,n.style||{}),!c){var l=document.createElement("track");l.default=!0,l.kind="metadata",a.appendChild(l),this.art.template.$track=l}this.load(t).then(function(t){if(i.art.template.$track.src=t,i.art.emit("subtitle:load",t),a.textTracks&&a.textTracks[0]){var n=lt(a.textTracks,1)[0];r(n,"cuechange",function(){var t=lt(n.activeCues,1)[0];if(s.innerHTML="",t){var e=document.createElement("div");e.appendChild(t.getCueAsHTML()),s.innerHTML=e.innerHTML.split(/\r?\n/).map(function(t){return"

".concat(t,"

")}).join("")}i.art.emit("subtitle:update",s)})}})}},{key:"load",value:function(e){var n,i=this.art.notice;return fetch(e).then(function(t){return n=t.headers.get("Content-Type"),t.text()}).then(function(t){return/x-subrip/gi.test(n)?W(z(t)):e}).catch(function(t){i.show(t),console.warn(t)})}},{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.remove("artplayer-subtitle-hide"),this.art.emit("subtitle:show")):(this.state=!1,e.classList.add("artplayer-subtitle-hide"),this.art.emit("subtitle:hide"))}}]),n}();function ft(t){var n=this;a(this,ft);var i=Object.assign({loading:'\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(i).forEach(function(t){var e=document.createElement("i");e.classList.add("art-icon"),e.classList.add("art-icon-".concat(t)),P(e,i[t]),n[t]=e})}var dt=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 r(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}();var gt=function(){function n(t){var e=this;a(this,n),this.id=0,this.art=t,this.state=!1,t.option.setting&&(this.art.once("video:canplay",function(){e.init()}),this.art.on("blur",function(){e.show=!1}))}return r(n,[{key:"init",value:function(){var e=this,t=this.art,n=t.option,i=t.template.$setting;(0,t.events.proxy)(i,"click",function(t){t.target===i&&(e.show=!1)}),this.add(function(i){return function(e){var t=e.i18n,n=e.player;return Q({},i,{html:'\n
'.concat(t.get("Flip"),'
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n "),click:function(t){var e=t.target.dataset.value;e&&(n.flip=e)},mounted:function(t){e.on("flipChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}({disable:!n.flip,name:"flip"})),this.add(function(i){return function(e){var t=e.i18n,n=e.player;return Q({},i,{html:'\n
'.concat(t.get("Aspect ratio"),'
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n '),click:function(t){var e=t.target.dataset.value;e&&(n.aspectRatio=e)},mounted:function(t){e.on("aspectRatioChange",function(e){M(Array.from(t.querySelectorAll("button")).find(function(t){return t.dataset.value===e}).parentElement,"current")})}})}}({disable:!n.aspectRatio,name:"aspectRatio"})),this.add(function(e){return function(i){var t=i.i18n,r=i.player,o=i.events.proxy;return Q({},e,{html:'\n
\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,r.playbackRate=Number(t)}),i.on("playbackRateChange",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}})}}({disable:!n.playbackRate,name:"playbackRate"}))}},{key:"add",value:function(t,e){this.id+=1;var n=this.art.template.$settingBody;return G(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}(),bt=function(){function e(t){a(this,e),this.art=t,this.name="artplayer_settings",this.init()}return r(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 wt(i){var t=i.i18n,r=i.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");r(e,"change",function(){var t=e.value;n.innerText=t,i.plugins.subtitle.offset(Number(t))}),i.on("subtitle:switch",function(){e.value=0,n.innerText=0}),i.on("artplayerPluginSubtitle:set",function(t){e.value!==t&&(e.value=t,n.innerText=t)})}}}function xt(i){var r=i.constructor.utils.clamp,t=i.setting,o=i.notice,a=i.template,s=i.i18n,c=i.player;s.update({"zh-cn":{"Subtitle offset time":"字幕偏移时间","No subtitles found":"未发现字幕"},"zh-tw":{"Subtitle offset time":"字幕偏移時間","No subtitles found":"未發現字幕"}}),t.add(wt);var l=[];return i.on("subtitle:switch",function(){l=[]}),{name:"subtitle",offset:function(t){if(a.$track&&a.$track.track){var e=Array.from(a.$track.track.cues),n=r(t,-5,5);e.forEach(function(t,e){l[e]||(l[e]={startTime:t.startTime,endTime:t.endTime}),t.startTime=r(l[e].startTime+n,0,c.duration),t.endTime=r(l[e].endTime+n,0,c.duration)}),o.show("".concat(s.get("Subtitle offset time"),": ").concat(t,"s")),i.emit("artplayerPluginSubtitle:set",t)}else o.show("".concat(s.get("No subtitles found"))),i.emit("artplayerPluginSubtitle:set",0)}}}function kt(r){var t=r.constructor.utils,n=t.append,i=t.setStyle,o=t.setStyles,a=t.sleep,s=r.events.proxy,c=r.option,l=r.notice,u=r.i18n,f=r.template,d=r.player;function p(t){if(t){var e=f.$video.canPlayType(t.type);if("maybe"===e||"probably"===e){var n=URL.createObjectURL(t);d.playbackRate=!1,d.aspectRatio=!1,f.$video.src=n,a(1e3).then(function(){d.currentTime=0}),c.url=n,r.emit("switch",n),l.show(u.get("Load local video successfully"))}else{var i="".concat(u.get("Playback of this file format is not supported"),": ").concat(t.type);l.show(i,!0,3e3),console.warn(i)}}}return u.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(f.$player,"dragover",function(t){t.preventDefault(),l.show(u.get("Load local video successfully"))}),s(f.$player,"drop",function(t){t.preventDefault(),p(t.dataTransfer.files[0])}),{name:"localPreview",attach:function(t){var e=n(t,'');i(t,"position","relative"),o(e,{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",opacity:"0"}),s(e,"change",function(){p(e.files[0])})}}}function St(e){var t=e.layers,n=e.player,i=e.option.theme;return t.add({name:"miniProgressBar",style:{display:"none",position:"absolute",left:0,right:0,bottom:0,height:"3px",background:i},mounted:function(t){e.on("controls:show",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 $t(e){a(this,$t);var n=e.option,i=e.events.proxy,r=e.template.$video;V.video.events.forEach(function(t){i(r,t,function(t){e.emit("video:".concat(t.type),t)})}),Object.keys(n.moreVideoAttr).forEach(function(t){r[t]=n.moreVideoAttr[t]}),n.muted&&(r.muted=n.muted),n.volume&&(r.volume=x(n.volume,0,1)),n.poster&&(r.poster=n.poster),n.autoplay&&(r.autoplay=n.autoplay),r.controls=!0;var t=n.type||k(n.url),o=n.customType[t];t&&o?(e.emit("beforeCustomType",t),o(r,n.url,e),e.emit("afterCustomType",t)):(e.emit("beforeAttachUrl",n.url),r.src=n.url,e.emit("afterAttachUrl",r.src))}var Lt=function(){function n(t){var e=this;a(this,n),this.art=t,this.id=0,t.option.subtitle.url&&this.add(xt),t.option.isLive||this.add(St),this.add(kt),t.option.plugins.forEach(function(t){e.add(t)})}return r(n,[{key:"add",value:function(t){this.id+=1;var e=t.call(this,this.art);return this[e&&e.name?e.name:t.name?t.name:"plugin".concat(this.id)]=e,this.art.emit("plugin:add",t),this}}]),n}(),Tt=0,Rt=function(t){function n(t){var e;return a(this,n),e=c(this,l(n).call(this)),b("function"==typeof window.Promise,"Unsupported 'Promise' method"),e.option=R(n.DEFAULTS,t),f(e.option,I),e.init(),e}return e(n,d),r(n,[{key:"init",value:function(){this.whitelist=new B(this),this.template=new N(this),this.events=new dt(this),this.whitelist.state?(this.isFocus=!1,this.isDestroy=!1,this.storage=new bt(this),this.icons=new ft(this),this.i18n=new X(this),this.notice=new vt(this),this.player=new J(this),this.layers=new ht(this),this.controls=new it(this),this.contextmenu=new rt(this),this.subtitle=new ut(this),this.info=new ot(this),this.loading=new yt(this),this.hotkey=new pt(this),this.mask=new mt(this),this.setting=new gt(this),this.plugins=new Lt(this)):this.mobile=new $t(this),Tt+=1,this.id=Tt,n.instances.push(this)}},{key:"destroy",value:function(){var t=0