xgplayer 3.0.0-next.3 → 3.0.0-next.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +156 -0
- package/dist/index.min.css +1 -0
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/es/_virtual/_rollupPluginBabelHelpers.js +14 -0
- package/es/constant.js +3 -4
- package/es/defaultConfig.d.ts +1 -194
- package/es/defaultConfig.js +28 -152
- package/es/error.d.ts +2 -0
- package/es/error.js +59 -106
- package/es/events.d.ts +8 -0
- package/es/events.js +58 -59
- package/es/icons.d.ts +2 -0
- package/es/index.css +74 -1695
- package/es/index.d.ts +12 -0
- package/es/index.js +22 -11
- package/es/index.scss +29 -0
- package/es/index.umd.d.ts +4 -2
- package/es/index.umd.js +16 -49
- package/es/lang/en.js +46 -47
- package/es/lang/i18n.js +27 -80
- package/es/lang/index.d.ts +2 -0
- package/es/lang/jp.js +46 -47
- package/es/lang/zh-cn.js +46 -47
- package/es/lang/zh-hk.js +46 -47
- package/es/player.d.ts +159 -45
- package/es/player.js +1449 -2282
- package/es/plugin/basePlugin.d.ts +21 -9
- package/es/plugin/basePlugin.js +152 -378
- package/es/plugin/hooksDescriptor.d.ts +4 -3
- package/es/plugin/hooksDescriptor.js +61 -123
- package/es/plugin/plugin.d.ts +16 -20
- package/es/plugin/plugin.js +379 -734
- package/es/plugin/pluginsManager.d.ts +28 -4
- package/es/plugin/pluginsManager.js +137 -235
- package/es/plugin/preset.js +13 -31
- package/es/plugin/resizeObserver.js +66 -103
- package/es/plugins/assets/back.js +4 -0
- package/es/plugins/assets/download.js +4 -0
- package/es/plugins/assets/exitCssFull.js +4 -0
- package/es/plugins/assets/exitFull.js +4 -0
- package/es/plugins/assets/loading.js +4 -0
- package/es/plugins/assets/panel.js +4 -0
- package/es/plugins/assets/pause.js +4 -0
- package/es/plugins/assets/pipIcon.js +4 -0
- package/es/plugins/assets/pipIconExit.js +4 -0
- package/es/plugins/assets/play.js +4 -0
- package/es/plugins/assets/playNext.js +4 -0
- package/es/plugins/assets/replay.js +4 -0
- package/es/plugins/assets/requestCssFull.js +7 -0
- package/es/plugins/assets/requestFull.js +4 -0
- package/es/plugins/assets/rotate.js +4 -0
- package/es/plugins/assets/seekicon.js +4 -0
- package/es/plugins/assets/volumeLarge.js +4 -0
- package/es/plugins/assets/volumeMuted.js +4 -0
- package/es/plugins/assets/volumeSmall.js +4 -0
- package/es/plugins/common/iconPlugin.d.ts +5 -0
- package/es/plugins/common/iconPlugin.js +30 -0
- package/es/plugins/common/index.scss +2 -0
- package/es/plugins/common/optionList.d.ts +2 -2
- package/es/plugins/common/optionList.js +80 -115
- package/es/plugins/common/optionsIcon.css +0 -1
- package/es/plugins/common/optionsIcon.d.ts +4 -2
- package/es/plugins/common/optionsIcon.js +174 -239
- package/es/plugins/common/optionsIcon.scss +121 -0
- package/es/plugins/common/thumbnail.d.ts +5 -3
- package/es/plugins/common/thumbnail.js +149 -223
- package/es/plugins/common/thumbnail.scss +27 -0
- package/es/plugins/controls/index.css +4 -10
- package/es/plugins/controls/index.d.ts +19 -1
- package/es/plugins/controls/index.js +164 -294
- package/es/plugins/controls/index.scss +199 -0
- package/es/plugins/cssFullScreen/index.d.ts +15 -9
- package/es/plugins/cssFullScreen/index.js +97 -143
- package/es/plugins/cssFullScreen/index.scss +19 -0
- package/es/plugins/danmu/danmuIcon.d.ts +11 -0
- package/es/plugins/danmu/danmuIcon.js +75 -111
- package/es/plugins/danmu/danmuPanel.d.ts +1 -0
- package/es/plugins/danmu/danmuPanel.js +127 -113
- package/es/plugins/danmu/index.d.ts +1 -0
- package/es/plugins/danmu/index.js +252 -402
- package/es/plugins/danmu/index.scss +356 -0
- package/es/plugins/definition/index.d.ts +2 -0
- package/es/plugins/definition/index.js +121 -257
- package/es/plugins/definition/index.scss +4 -0
- package/es/plugins/download/index.d.ts +6 -2
- package/es/plugins/download/index.js +68 -121
- package/es/plugins/download/index.scss +22 -0
- package/es/plugins/dynamicBg/index.css +1 -1
- package/es/plugins/dynamicBg/index.d.ts +22 -6
- package/es/plugins/dynamicBg/index.js +229 -370
- package/es/plugins/dynamicBg/index.scss +19 -0
- package/es/plugins/enter/index.js +32 -74
- package/es/plugins/enter/index.scss +78 -0
- package/es/plugins/error/index.css +0 -1
- package/es/plugins/error/index.d.ts +2 -1
- package/es/plugins/error/index.js +63 -100
- package/es/plugins/error/index.scss +34 -0
- package/es/plugins/fullscreen/backicon.d.ts +8 -0
- package/es/plugins/fullscreen/backicon.js +49 -89
- package/es/plugins/fullscreen/index.css +1 -1
- package/es/plugins/fullscreen/index.d.ts +14 -25
- package/es/plugins/fullscreen/index.js +157 -329
- package/es/plugins/fullscreen/index.scss +35 -0
- package/es/plugins/gapJump/index.d.ts +21 -0
- package/es/plugins/gapJump/index.js +128 -0
- package/es/plugins/keyboard/index.d.ts +1 -0
- package/es/plugins/keyboard/index.js +261 -350
- package/es/plugins/loading/index.css +1 -5
- package/es/plugins/loading/index.d.ts +4 -0
- package/es/plugins/loading/index.js +26 -60
- package/es/plugins/loading/index.scss +70 -0
- package/es/plugins/logger/index.d.ts +16 -12
- package/es/plugins/logger/index.js +209 -208
- package/es/plugins/miniScreen/index.css +1 -4
- package/es/plugins/miniScreen/index.d.ts +13 -1
- package/es/plugins/miniScreen/index.js +178 -262
- package/es/plugins/miniScreen/index.scss +198 -0
- package/es/plugins/miniScreen/miniScreenIcon.d.ts +1 -0
- package/es/plugins/miniScreen/miniScreenIcon.js +37 -72
- package/es/plugins/mobile/index.css +24 -1
- package/es/plugins/mobile/index.d.ts +8 -1
- package/es/plugins/mobile/index.js +523 -741
- package/es/plugins/mobile/index.scss +180 -0
- package/es/plugins/mobile/touch.d.ts +1 -0
- package/es/plugins/mobile/touch.js +168 -230
- package/es/plugins/netAdaption/index.d.ts +5 -0
- package/es/plugins/pc/index.js +148 -216
- package/es/plugins/pc/index.scss +5 -0
- package/es/plugins/pip/index.d.ts +14 -2
- package/es/plugins/pip/index.js +178 -263
- package/es/plugins/pip/index.scss +21 -0
- package/es/plugins/play/index.d.ts +13 -2
- package/es/plugins/play/index.js +103 -137
- package/es/plugins/play/index.scss +18 -0
- package/es/plugins/playNext/index.d.ts +4 -0
- package/es/plugins/playNext/index.js +79 -113
- package/es/plugins/playNext/index.scss +35 -0
- package/es/plugins/playbackRate/index.d.ts +3 -0
- package/es/plugins/playbackRate/index.js +90 -152
- package/es/plugins/playbackRate/index.scss +6 -0
- package/es/plugins/poster/index.d.ts +3 -0
- package/es/plugins/poster/index.js +76 -140
- package/es/plugins/poster/index.scss +56 -0
- package/es/plugins/progress/index.css +1 -2
- package/es/plugins/progress/index.d.ts +22 -8
- package/es/plugins/progress/index.js +500 -700
- package/es/plugins/progress/index.scss +278 -0
- package/es/plugins/progress/innerList.d.ts +8 -8
- package/es/plugins/progress/innerList.js +158 -204
- package/es/plugins/progress/miniProgress.d.ts +1 -0
- package/es/plugins/progress/miniProgress.js +34 -70
- package/es/plugins/progressPreview/dotsApi.js +109 -159
- package/es/plugins/progressPreview/index.css +15 -7
- package/es/plugins/progressPreview/index.d.ts +22 -6
- package/es/plugins/progressPreview/index.js +430 -363
- package/es/plugins/progressPreview/index.scss +226 -0
- package/es/plugins/prompt/index.css +0 -1
- package/es/plugins/prompt/index.d.ts +3 -0
- package/es/plugins/prompt/index.js +81 -136
- package/es/plugins/prompt/index.scss +53 -0
- package/es/plugins/replay/index.d.ts +5 -0
- package/es/plugins/replay/index.js +76 -130
- package/es/plugins/replay/index.scss +41 -0
- package/es/plugins/rotate/index.d.ts +6 -2
- package/es/plugins/rotate/index.js +113 -167
- package/es/{style/common/svg-url.css → plugins/rotate/index.scss} +0 -0
- package/es/plugins/rotate/index2.js +2 -0
- package/es/plugins/screenShot/index.d.ts +10 -5
- package/es/plugins/screenShot/index.js +120 -165
- package/es/plugins/screenShot/index.scss +5 -0
- package/es/plugins/start/index.css +2 -7
- package/es/plugins/start/index.d.ts +13 -1
- package/es/plugins/start/index.js +190 -280
- package/es/plugins/start/index.scss +115 -0
- package/es/plugins/stats/index.d.ts +38 -0
- package/es/plugins/stats/index.js +170 -0
- package/es/plugins/testspeed/index.d.ts +20 -0
- package/es/plugins/testspeed/index.js +139 -0
- package/es/plugins/time/index.css +0 -1
- package/es/plugins/time/index.d.ts +7 -4
- package/es/plugins/time/index.js +164 -227
- package/es/plugins/time/index.scss +39 -0
- package/es/plugins/track/index.css +4 -0
- package/es/plugins/track/index.d.ts +25 -4
- package/es/plugins/track/index.js +265 -308
- package/es/plugins/track/index.scss +22 -0
- package/es/plugins/volume/index.css +3 -0
- package/es/plugins/volume/index.d.ts +31 -0
- package/es/plugins/volume/index.js +257 -299
- package/es/plugins/volume/index.scss +124 -0
- package/es/plugins/waitingTimeoutJump/index.d.ts +15 -0
- package/es/plugins/waitingTimeoutJump/index.js +81 -0
- package/es/presets/default-en.d.ts +1 -25
- package/es/presets/default-en.js +62 -70
- package/es/presets/default.d.ts +1 -25
- package/es/presets/default.js +66 -71
- package/es/presets/index.d.ts +4 -0
- package/es/presets/live.d.ts +1 -15
- package/es/presets/live.js +37 -48
- package/es/presets/mobile.d.ts +1 -24
- package/es/presets/mobile.js +33 -40
- package/es/proxy.d.ts +53 -10
- package/es/proxy.js +400 -751
- package/es/state.d.ts +0 -1
- package/es/state.js +2 -4
- package/es/stateClassMap.d.ts +4 -2
- package/es/stateClassMap.js +29 -29
- package/es/style/common/animation.scss +16 -0
- package/es/style/common/svg-url.scss +70 -0
- package/es/style/common.scss +400 -0
- package/es/style/index.scss +4 -0
- package/es/style/variable.scss +76 -0
- package/es/utils/database.js +76 -136
- package/es/utils/debug.js +14 -38
- package/es/utils/draggabilly.d.ts +1 -1
- package/es/utils/draggabilly.js +266 -465
- package/es/utils/sniffer.d.ts +5 -0
- package/es/utils/sniffer.js +58 -82
- package/es/utils/url.d.ts +1 -0
- package/es/utils/util.d.ts +12 -11
- package/es/utils/util.js +214 -583
- package/es/utils/xgplayerTimeRange.js +12 -28
- package/es/version.js +1 -5
- package/package.json +11 -23
- package/dist/xgplayer.min.css +0 -1
- package/dist/xgplayer.mobile.min.css +0 -1
- package/es/index.mobile.css +0 -1693
- package/es/plugins/assets/back.svg.js +0 -5
- package/es/plugins/assets/download.svg.js +0 -5
- package/es/plugins/assets/exitCssFull.svg.js +0 -5
- package/es/plugins/assets/exitFull.svg.js +0 -5
- package/es/plugins/assets/loading.svg.js +0 -5
- package/es/plugins/assets/panel.svg.js +0 -5
- package/es/plugins/assets/pause.svg.js +0 -5
- package/es/plugins/assets/pipIcon.svg.js +0 -5
- package/es/plugins/assets/pipIconExit.svg.js +0 -5
- package/es/plugins/assets/play.svg.js +0 -5
- package/es/plugins/assets/playNext.svg.js +0 -5
- package/es/plugins/assets/replay.svg.js +0 -5
- package/es/plugins/assets/requestCssFull.svg.js +0 -5
- package/es/plugins/assets/requestFull.svg.js +0 -5
- package/es/plugins/assets/rotate.svg.js +0 -5
- package/es/plugins/assets/seekicon.svg.js +0 -5
- package/es/plugins/assets/volumeLarge.svg.js +0 -5
- package/es/plugins/assets/volumeMuted.svg.js +0 -5
- package/es/plugins/assets/volumeSmall.svg.js +0 -5
- package/es/plugins/common/index.css +0 -134
- package/es/plugins/common/thumbnail.css +0 -3
- package/es/style/common/animation.css +0 -32
- package/es/style/common.css +0 -314
- package/es/style/index.css +0 -449
- package/es/style/variable.css +0 -0
package/dist/index.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Player=e()}(this,(function(){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e=function(t){return t&&t.Math==Math&&t},n=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof t&&t)||function(){return this}()||Function("return this")(),i={},r=function(t){try{return!!t()}catch(t){return!0}},o=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),s={},a={}.propertyIsEnumerable,c=Object.getOwnPropertyDescriptor,l=c&&!a.call({1:2},1);s.f=l?function(t){var e=c(this,t);return!!e&&e.enumerable}:a;var u,h,f=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},d={}.toString,p=function(t){return d.call(t).slice(8,-1)},g=p,v="".split,y=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==g(t)?v.call(t,""):Object(t)}:Object,m=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},k=y,b=m,w=function(t){return k(b(t))},C=function(t){return"object"==typeof t?null!==t:"function"==typeof t},x=n,_=function(t){return"function"==typeof t?t:void 0},E=function(t,e){return arguments.length<2?_(x[t]):x[t]&&x[t][e]},T=E("navigator","userAgent")||"",S=n,P=T,R=S.process,O=S.Deno,I=R&&R.versions||O&&O.version,L=I&&I.v8;L?h=(u=L.split("."))[0]<4?1:u[0]+u[1]:P&&(!(u=P.match(/Edge\/(\d+)/))||u[1]>=74)&&(u=P.match(/Chrome\/(\d+)/))&&(h=u[1]);var A=h&&+h,D=A,M=r,N=!!Object.getOwnPropertySymbols&&!M((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&D&&D<41})),F=N&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,j=E,B=F?function(t){return"symbol"==typeof t}:function(t){var e=j("Symbol");return"function"==typeof e&&Object(t)instanceof e},H=C,U={exports:{}},V=n,G=function(t,e){try{Object.defineProperty(V,t,{value:e,configurable:!0,writable:!0})}catch(n){V[t]=e}return e},W=G,Y="__core-js_shared__",K=n[Y]||W(Y,{}),z=K;(U.exports=function(t,e){return z[t]||(z[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.16.2",mode:"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"});var X=m,q=function(t){return Object(X(t))},$=q,Z={}.hasOwnProperty,J=Object.hasOwn||function(t,e){return Z.call($(t),e)},Q=0,tt=Math.random(),et=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++Q+tt).toString(36)},nt=n,it=U.exports,rt=J,ot=et,st=N,at=F,ct=it("wks"),lt=nt.Symbol,ut=at?lt:lt&<.withoutSetter||ot,ht=function(t){return rt(ct,t)&&(st||"string"==typeof ct[t])||(st&&rt(lt,t)?ct[t]=lt[t]:ct[t]=ut("Symbol."+t)),ct[t]},ft=C,dt=B,pt=function(t,e){var n,i;if("string"===e&&"function"==typeof(n=t.toString)&&!H(i=n.call(t)))return i;if("function"==typeof(n=t.valueOf)&&!H(i=n.call(t)))return i;if("string"!==e&&"function"==typeof(n=t.toString)&&!H(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")},gt=ht("toPrimitive"),vt=function(t,e){if(!ft(t)||dt(t))return t;var n,i=t[gt];if(void 0!==i){if(void 0===e&&(e="default"),n=i.call(t,e),!ft(n)||dt(n))return n;throw TypeError("Can't convert object to primitive value")}return void 0===e&&(e="number"),pt(t,e)},yt=vt,mt=B,kt=function(t){var e=yt(t,"string");return mt(e)?e:String(e)},bt=C,wt=n.document,Ct=bt(wt)&&bt(wt.createElement),xt=function(t){return Ct?wt.createElement(t):{}},_t=xt,Et=!o&&!r((function(){return 7!=Object.defineProperty(_t("div"),"a",{get:function(){return 7}}).a})),Tt=o,St=s,Pt=f,Rt=w,Ot=kt,It=J,Lt=Et,At=Object.getOwnPropertyDescriptor;i.f=Tt?At:function(t,e){if(t=Rt(t),e=Ot(e),Lt)try{return At(t,e)}catch(t){}if(It(t,e))return Pt(!St.f.call(t,e),t[e])};var Dt={},Mt=C,Nt=function(t){if(!Mt(t))throw TypeError(String(t)+" is not an object");return t},Ft=o,jt=Et,Bt=Nt,Ht=kt,Ut=Object.defineProperty;Dt.f=Ft?Ut:function(t,e,n){if(Bt(t),e=Ht(e),Bt(n),jt)try{return Ut(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t};var Vt=Dt,Gt=f,Wt=o?function(t,e,n){return Vt.f(t,e,Gt(1,n))}:function(t,e,n){return t[e]=n,t},Yt={exports:{}},Kt=K,zt=Function.toString;"function"!=typeof Kt.inspectSource&&(Kt.inspectSource=function(t){return zt.call(t)});var Xt,qt,$t,Zt=Kt.inspectSource,Jt=Zt,Qt=n.WeakMap,te="function"==typeof Qt&&/native code/.test(Jt(Qt)),ee=U.exports,ne=et,ie=ee("keys"),re=function(t){return ie[t]||(ie[t]=ne(t))},oe={},se=te,ae=C,ce=Wt,le=J,ue=K,he=re,fe=oe,de="Object already initialized",pe=n.WeakMap;if(se||ue.state){var ge=ue.state||(ue.state=new pe),ve=ge.get,ye=ge.has,me=ge.set;Xt=function(t,e){if(ye.call(ge,t))throw new TypeError(de);return e.facade=t,me.call(ge,t,e),e},qt=function(t){return ve.call(ge,t)||{}},$t=function(t){return ye.call(ge,t)}}else{var ke=he("state");fe[ke]=!0,Xt=function(t,e){if(le(t,ke))throw new TypeError(de);return e.facade=t,ce(t,ke,e),e},qt=function(t){return le(t,ke)?t[ke]:{}},$t=function(t){return le(t,ke)}}var be={set:Xt,get:qt,has:$t,enforce:function(t){return $t(t)?qt(t):Xt(t,{})},getterFor:function(t){return function(e){var n;if(!ae(e)||(n=qt(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}},we=n,Ce=Wt,xe=J,_e=G,Ee=Zt,Te=be.get,Se=be.enforce,Pe=String(String).split("String");(Yt.exports=function(t,e,n,i){var r,o=!!i&&!!i.unsafe,s=!!i&&!!i.enumerable,a=!!i&&!!i.noTargetGet;"function"==typeof n&&("string"!=typeof e||xe(n,"name")||Ce(n,"name",e),(r=Se(n)).source||(r.source=Pe.join("string"==typeof e?e:""))),t!==we?(o?!a&&t[e]&&(s=!0):delete t[e],s?t[e]=n:Ce(t,e,n)):s?t[e]=n:_e(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&Te(this).source||Ee(this)}));var Re={},Oe=Math.ceil,Ie=Math.floor,Le=function(t){return isNaN(t=+t)?0:(t>0?Ie:Oe)(t)},Ae=Le,De=Math.min,Me=function(t){return t>0?De(Ae(t),9007199254740991):0},Ne=Le,Fe=Math.max,je=Math.min,Be=function(t,e){var n=Ne(t);return n<0?Fe(n+e,0):je(n,e)},He=w,Ue=Me,Ve=Be,Ge=function(t){return function(e,n,i){var r,o=He(e),s=Ue(o.length),a=Ve(i,s);if(t&&n!=n){for(;s>a;)if((r=o[a++])!=r)return!0}else for(;s>a;a++)if((t||a in o)&&o[a]===n)return t||a||0;return!t&&-1}},We={includes:Ge(!0),indexOf:Ge(!1)},Ye=J,Ke=w,ze=We.indexOf,Xe=oe,qe=function(t,e){var n,i=Ke(t),r=0,o=[];for(n in i)!Ye(Xe,n)&&Ye(i,n)&&o.push(n);for(;e.length>r;)Ye(i,n=e[r++])&&(~ze(o,n)||o.push(n));return o},$e=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Ze=qe,Je=$e.concat("length","prototype");Re.f=Object.getOwnPropertyNames||function(t){return Ze(t,Je)};var Qe={};Qe.f=Object.getOwnPropertySymbols;var tn,en=Re,nn=Qe,rn=Nt,on=E("Reflect","ownKeys")||function(t){var e=en.f(rn(t)),n=nn.f;return n?e.concat(n(t)):e},sn=J,an=on,cn=i,ln=Dt,un=r,hn=/#|\.prototype\./,fn=function(t,e){var n=pn[dn(t)];return n==vn||n!=gn&&("function"==typeof e?un(e):!!e)},dn=fn.normalize=function(t){return String(t).replace(hn,".").toLowerCase()},pn=fn.data={},gn=fn.NATIVE="N",vn=fn.POLYFILL="P",yn=fn,mn=n,kn=i.f,bn=Wt,wn=Yt.exports,Cn=G,xn=function(t,e){for(var n=an(e),i=ln.f,r=cn.f,o=0;o<n.length;o++){var s=n[o];sn(t,s)||i(t,s,r(e,s))}},_n=yn,En=function(t,e){var n,i,r,o,s,a=t.target,c=t.global,l=t.stat;if(n=c?mn:l?mn[a]||Cn(a,{}):(mn[a]||{}).prototype)for(i in e){if(o=e[i],r=t.noTargetGet?(s=kn(n,i))&&s.value:n[i],!_n(c?i:a+(l?".":"#")+i,t.forced)&&void 0!==r){if(typeof o==typeof r)continue;xn(o,r)}(t.sham||r&&r.sham)&&bn(o,"sham",!0),wn(n,i,o,t)}},Tn=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},Sn=qe,Pn=$e,Rn=Object.keys||function(t){return Sn(t,Pn)},On=Dt,In=Nt,Ln=Rn,An=o?Object.defineProperties:function(t,e){In(t);for(var n,i=Ln(e),r=i.length,o=0;r>o;)On.f(t,n=i[o++],e[n]);return t},Dn=E("document","documentElement"),Mn=Nt,Nn=An,Fn=$e,jn=oe,Bn=Dn,Hn=xt,Un=re("IE_PROTO"),Vn=function(){},Gn=function(t){return"<script>"+t+"</"+"script>"},Wn=function(t){t.write(Gn("")),t.close();var e=t.parentWindow.Object;return t=null,e},Yn=function(){try{tn=new ActiveXObject("htmlfile")}catch(t){}var t,e;Yn="undefined"!=typeof document?document.domain&&tn?Wn(tn):((e=Hn("iframe")).style.display="none",Bn.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(Gn("document.F=Object")),t.close(),t.F):Wn(tn);for(var n=Fn.length;n--;)delete Yn.prototype[Fn[n]];return Yn()};jn[Un]=!0;var Kn=Object.create||function(t,e){var n;return null!==t?(Vn.prototype=Mn(t),n=new Vn,Vn.prototype=null,n[Un]=t):n=Yn(),void 0===e?n:Nn(n,e)},zn=Tn,Xn=C,qn=[].slice,$n={},Zn=function(t,e,n){if(!(e in $n)){for(var i=[],r=0;r<e;r++)i[r]="a["+r+"]";$n[e]=Function("C,a","return new C("+i.join(",")+")")}return $n[e](t,n)},Jn=Function.bind||function(t){var e=zn(this),n=qn.call(arguments,1),i=function(){var r=n.concat(qn.call(arguments));return this instanceof i?Zn(e,r.length,r):e.apply(t,r)};return Xn(e.prototype)&&(i.prototype=e.prototype),i},Qn=En,ti=Tn,ei=Nt,ni=C,ii=Kn,ri=Jn,oi=r,si=E("Reflect","construct"),ai=oi((function(){function t(){}return!(si((function(){}),[],t)instanceof t)})),ci=!oi((function(){si((function(){}))})),li=ai||ci;function ui(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function hi(t,e){return(hi=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function fi(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&hi(t,e)}function di(t){return(di="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function pi(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function gi(t,e){if(e&&("object"===di(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return pi(t)}function vi(t){return(vi=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function yi(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Qn({target:"Reflect",stat:!0,forced:li,sham:li},{construct:function(t,e){ti(t),ei(e);var n=arguments.length<3?t:ti(arguments[2]);if(ci&&!ai)return si(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var i=[null];return i.push.apply(i,e),new(ri.apply(t,i))}var r=n.prototype,o=ii(ni(r)?r:Object.prototype),s=Function.apply.call(t,o,e);return ni(s)?s:o}});var mi=p,ki=Array.isArray||function(t){return"Array"==mi(t)},bi=B,wi=function(t){if(bi(t))throw TypeError("Cannot convert a Symbol value to a string");return String(t)},Ci={},xi=w,_i=Re.f,Ei={}.toString,Ti="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];Ci.f=function(t){return Ti&&"[object Window]"==Ei.call(t)?function(t){try{return _i(t)}catch(t){return Ti.slice()}}(t):_i(xi(t))};var Si={},Pi=ht;Si.f=Pi;var Ri=n,Oi=J,Ii=Si,Li=Dt.f,Ai=Dt.f,Di=J,Mi=ht("toStringTag"),Ni=function(t,e,n){t&&!Di(t=n?t:t.prototype,Mi)&&Ai(t,Mi,{configurable:!0,value:e})},Fi=Tn,ji=function(t,e,n){if(Fi(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,r){return t.call(e,n,i,r)}}return function(){return t.apply(e,arguments)}},Bi=C,Hi=ki,Ui=ht("species"),Vi=function(t){var e;return Hi(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!Hi(e.prototype)?Bi(e)&&null===(e=e[Ui])&&(e=void 0):e=void 0),void 0===e?Array:e},Gi=function(t,e){return new(Vi(t))(0===e?0:e)},Wi=ji,Yi=y,Ki=q,zi=Me,Xi=Gi,qi=[].push,$i=function(t){var e=1==t,n=2==t,i=3==t,r=4==t,o=6==t,s=7==t,a=5==t||o;return function(c,l,u,h){for(var f,d,p=Ki(c),g=Yi(p),v=Wi(l,u,3),y=zi(g.length),m=0,k=h||Xi,b=e?k(c,y):n||s?k(c,0):void 0;y>m;m++)if((a||m in g)&&(d=v(f=g[m],m,p),t))if(e)b[m]=d;else if(d)switch(t){case 3:return!0;case 5:return f;case 6:return m;case 2:qi.call(b,f)}else switch(t){case 4:return!1;case 7:qi.call(b,f)}return o?-1:i||r?r:b}},Zi={forEach:$i(0),map:$i(1),filter:$i(2),some:$i(3),every:$i(4),find:$i(5),findIndex:$i(6),filterReject:$i(7)},Ji=En,Qi=n,tr=E,er=o,nr=N,ir=r,rr=J,or=ki,sr=C,ar=B,cr=Nt,lr=q,ur=w,hr=kt,fr=wi,dr=f,pr=Kn,gr=Rn,vr=Re,yr=Ci,mr=Qe,kr=i,br=Dt,wr=s,Cr=Wt,xr=Yt.exports,_r=U.exports,Er=oe,Tr=et,Sr=ht,Pr=Si,Rr=function(t){var e=Ri.Symbol||(Ri.Symbol={});Oi(e,t)||Li(e,t,{value:Ii.f(t)})},Or=Ni,Ir=be,Lr=Zi.forEach,Ar=re("hidden"),Dr="Symbol",Mr=Sr("toPrimitive"),Nr=Ir.set,Fr=Ir.getterFor(Dr),jr=Object.prototype,Br=Qi.Symbol,Hr=tr("JSON","stringify"),Ur=kr.f,Vr=br.f,Gr=yr.f,Wr=wr.f,Yr=_r("symbols"),Kr=_r("op-symbols"),zr=_r("string-to-symbol-registry"),Xr=_r("symbol-to-string-registry"),qr=_r("wks"),$r=Qi.QObject,Zr=!$r||!$r.prototype||!$r.prototype.findChild,Jr=er&&ir((function(){return 7!=pr(Vr({},"a",{get:function(){return Vr(this,"a",{value:7}).a}})).a}))?function(t,e,n){var i=Ur(jr,e);i&&delete jr[e],Vr(t,e,n),i&&t!==jr&&Vr(jr,e,i)}:Vr,Qr=function(t,e){var n=Yr[t]=pr(Br.prototype);return Nr(n,{type:Dr,tag:t,description:e}),er||(n.description=e),n},to=function(t,e,n){t===jr&&to(Kr,e,n),cr(t);var i=hr(e);return cr(n),rr(Yr,i)?(n.enumerable?(rr(t,Ar)&&t[Ar][i]&&(t[Ar][i]=!1),n=pr(n,{enumerable:dr(0,!1)})):(rr(t,Ar)||Vr(t,Ar,dr(1,{})),t[Ar][i]=!0),Jr(t,i,n)):Vr(t,i,n)},eo=function(t,e){cr(t);var n=ur(e),i=gr(n).concat(oo(n));return Lr(i,(function(e){er&&!no.call(n,e)||to(t,e,n[e])})),t},no=function(t){var e=hr(t),n=Wr.call(this,e);return!(this===jr&&rr(Yr,e)&&!rr(Kr,e))&&(!(n||!rr(this,e)||!rr(Yr,e)||rr(this,Ar)&&this[Ar][e])||n)},io=function(t,e){var n=ur(t),i=hr(e);if(n!==jr||!rr(Yr,i)||rr(Kr,i)){var r=Ur(n,i);return!r||!rr(Yr,i)||rr(n,Ar)&&n[Ar][i]||(r.enumerable=!0),r}},ro=function(t){var e=Gr(ur(t)),n=[];return Lr(e,(function(t){rr(Yr,t)||rr(Er,t)||n.push(t)})),n},oo=function(t){var e=t===jr,n=Gr(e?Kr:ur(t)),i=[];return Lr(n,(function(t){!rr(Yr,t)||e&&!rr(jr,t)||i.push(Yr[t])})),i};(nr||(xr((Br=function(){if(this instanceof Br)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?fr(arguments[0]):void 0,e=Tr(t),n=function(t){this===jr&&n.call(Kr,t),rr(this,Ar)&&rr(this[Ar],e)&&(this[Ar][e]=!1),Jr(this,e,dr(1,t))};return er&&Zr&&Jr(jr,e,{configurable:!0,set:n}),Qr(e,t)}).prototype,"toString",(function(){return Fr(this).tag})),xr(Br,"withoutSetter",(function(t){return Qr(Tr(t),t)})),wr.f=no,br.f=to,kr.f=io,vr.f=yr.f=ro,mr.f=oo,Pr.f=function(t){return Qr(Sr(t),t)},er&&(Vr(Br.prototype,"description",{configurable:!0,get:function(){return Fr(this).description}}),xr(jr,"propertyIsEnumerable",no,{unsafe:!0}))),Ji({global:!0,wrap:!0,forced:!nr,sham:!nr},{Symbol:Br}),Lr(gr(qr),(function(t){Rr(t)})),Ji({target:Dr,stat:!0,forced:!nr},{for:function(t){var e=fr(t);if(rr(zr,e))return zr[e];var n=Br(e);return zr[e]=n,Xr[n]=e,n},keyFor:function(t){if(!ar(t))throw TypeError(t+" is not a symbol");if(rr(Xr,t))return Xr[t]},useSetter:function(){Zr=!0},useSimple:function(){Zr=!1}}),Ji({target:"Object",stat:!0,forced:!nr,sham:!er},{create:function(t,e){return void 0===e?pr(t):eo(pr(t),e)},defineProperty:to,defineProperties:eo,getOwnPropertyDescriptor:io}),Ji({target:"Object",stat:!0,forced:!nr},{getOwnPropertyNames:ro,getOwnPropertySymbols:oo}),Ji({target:"Object",stat:!0,forced:ir((function(){mr.f(1)}))},{getOwnPropertySymbols:function(t){return mr.f(lr(t))}}),Hr)&&Ji({target:"JSON",stat:!0,forced:!nr||ir((function(){var t=Br();return"[null]"!=Hr([t])||"{}"!=Hr({a:t})||"{}"!=Hr(Object(t))}))},{stringify:function(t,e,n){for(var i,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(i=e,(sr(e)||void 0!==t)&&!ar(t))return or(e)||(e=function(t,e){if("function"==typeof i&&(e=i.call(this,t,e)),!ar(e))return e}),r[1]=e,Hr.apply(null,r)}});Br.prototype[Mr]||Cr(Br.prototype,Mr,Br.prototype.valueOf),Or(Br,Dr),Er[Ar]=!0;var so=En,ao=r,co=w,lo=i.f,uo=o,ho=ao((function(){lo(1)}));so({target:"Object",stat:!0,forced:!uo||ho,sham:!uo},{getOwnPropertyDescriptor:function(t,e){return lo(co(t),e)}});var fo=kt,po=Dt,go=f,vo=function(t,e,n){var i=fo(e);i in t?po.f(t,i,go(0,n)):t[i]=n},yo=on,mo=w,ko=i,bo=vo;function wo(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function Co(t,e,n){return e&&wo(t.prototype,e),n&&wo(t,n),t}function xo(t,e,n){return(xo="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var i=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=vi(t)););return t}(t,e);if(i){var r=Object.getOwnPropertyDescriptor(i,e);return r.get?r.get.call(n):r.value}})(t,e,n||t)}En({target:"Object",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(t){for(var e,n,i=mo(t),r=ko.f,o=yo(i),s={},a=0;o.length>a;)void 0!==(n=r(i,e=o[a++]))&&bo(s,e,n);return s}});var _o=r,Eo=A,To=ht("species"),So=function(t){return Eo>=51||!_o((function(){var e=[];return(e.constructor={})[To]=function(){return{foo:1}},1!==e[t](Boolean).foo}))},Po=Zi.map;En({target:"Array",proto:!0,forced:!So("map")},{map:function(t){return Po(this,t,arguments.length>1?arguments[1]:void 0)}});var Ro=En,Oo=r,Io=ki,Lo=C,Ao=q,Do=Me,Mo=vo,No=Gi,Fo=So,jo=A,Bo=ht("isConcatSpreadable"),Ho=9007199254740991,Uo="Maximum allowed index exceeded",Vo=jo>=51||!Oo((function(){var t=[];return t[Bo]=!1,t.concat()[0]!==t})),Go=Fo("concat"),Wo=function(t){if(!Lo(t))return!1;var e=t[Bo];return void 0!==e?!!e:Io(t)};Ro({target:"Array",proto:!0,forced:!Vo||!Go},{concat:function(t){var e,n,i,r,o,s=Ao(this),a=No(s,0),c=0;for(e=-1,i=arguments.length;e<i;e++)if(Wo(o=-1===e?s:arguments[e])){if(c+(r=Do(o.length))>Ho)throw TypeError(Uo);for(n=0;n<r;n++,c++)n in o&&Mo(a,c,o[n])}else{if(c>=Ho)throw TypeError(Uo);Mo(a,c++,o)}return a.length=c,a}});var Yo=q,Ko=Rn;En({target:"Object",stat:!0,forced:r((function(){Ko(1)}))},{keys:function(t){return Ko(Yo(t))}});var zo=En,Xo=C,qo=ki,$o=Be,Zo=Me,Jo=w,Qo=vo,ts=ht,es=So("slice"),ns=ts("species"),is=[].slice,rs=Math.max;zo({target:"Array",proto:!0,forced:!es},{slice:function(t,e){var n,i,r,o=Jo(this),s=Zo(o.length),a=$o(t,s),c=$o(void 0===e?s:e,s);if(qo(o)&&("function"!=typeof(n=o.constructor)||n!==Array&&!qo(n.prototype)?Xo(n)&&null===(n=n[ns])&&(n=void 0):n=void 0,n===Array||void 0===n))return is.call(o,a,c);for(i=new(void 0===n?Array:n)(rs(c-a,0)),r=0;a<c;a++,r++)a in o&&Qo(i,r,o[a]);return i.length=r,i}});var os={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},ss=r,as=function(t,e){var n=[][t];return!!n&&ss((function(){n.call(null,e||function(){throw 1},1)}))},cs=Zi.forEach,ls=n,us=os,hs=as("forEach")?[].forEach:function(t){return cs(this,t,arguments.length>1?arguments[1]:void 0)},fs=Wt;for(var ds in us){var ps=ls[ds],gs=ps&&ps.prototype;if(gs&&gs.forEach!==hs)try{fs(gs,"forEach",hs)}catch(t){gs.forEach=hs}}var vs=Nt,ys=function(){var t=vs(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e},ms={},ks=r,bs=n.RegExp;ms.UNSUPPORTED_Y=ks((function(){var t=bs("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),ms.BROKEN_CARET=ks((function(){var t=bs("^r","gy");return t.lastIndex=2,null!=t.exec("str")}));var ws=r,Cs=n.RegExp,xs=ws((function(){var t=Cs(".","s");return!(t.dotAll&&t.exec("\n")&&"s"===t.flags)})),_s=r,Es=n.RegExp,Ts=_s((function(){var t=Es("(?<a>b)","g");return"b"!==t.exec("b").groups.a||"bc"!=="b".replace(t,"$<a>c")})),Ss=wi,Ps=ys,Rs=ms,Os=U.exports,Is=Kn,Ls=be.get,As=xs,Ds=Ts,Ms=RegExp.prototype.exec,Ns=Os("native-string-replace",String.prototype.replace),Fs=Ms,js=function(){var t=/a/,e=/b*/g;return Ms.call(t,"a"),Ms.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),Bs=Rs.UNSUPPORTED_Y||Rs.BROKEN_CARET,Hs=void 0!==/()??/.exec("")[1];(js||Hs||Bs||As||Ds)&&(Fs=function(t){var e,n,i,r,o,s,a,c=this,l=Ls(c),u=Ss(t),h=l.raw;if(h)return h.lastIndex=c.lastIndex,e=Fs.call(h,u),c.lastIndex=h.lastIndex,e;var f=l.groups,d=Bs&&c.sticky,p=Ps.call(c),g=c.source,v=0,y=u;if(d&&(-1===(p=p.replace("y","")).indexOf("g")&&(p+="g"),y=u.slice(c.lastIndex),c.lastIndex>0&&(!c.multiline||c.multiline&&"\n"!==u.charAt(c.lastIndex-1))&&(g="(?: "+g+")",y=" "+y,v++),n=new RegExp("^(?:"+g+")",p)),Hs&&(n=new RegExp("^"+g+"$(?!\\s)",p)),js&&(i=c.lastIndex),r=Ms.call(d?n:c,y),d?r?(r.input=r.input.slice(v),r[0]=r[0].slice(v),r.index=c.lastIndex,c.lastIndex+=r[0].length):c.lastIndex=0:js&&r&&(c.lastIndex=c.global?r.index+r[0].length:i),Hs&&r&&r.length>1&&Ns.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r&&f)for(r.groups=s=Is(null),o=0;o<f.length;o++)s[(a=f[o])[0]]=r[a[1]];return r});var Us=Fs;En({target:"RegExp",proto:!0,forced:/./.exec!==Us},{exec:Us});var Vs=Yt.exports,Gs=Us,Ws=r,Ys=ht,Ks=Wt,zs=Ys("species"),Xs=RegExp.prototype,qs=function(t,e,n,i){var r=Ys(t),o=!Ws((function(){var e={};return e[r]=function(){return 7},7!=""[t](e)})),s=o&&!Ws((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[zs]=function(){return n},n.flags="",n[r]=/./[r]),n.exec=function(){return e=!0,null},n[r](""),!e}));if(!o||!s||n){var a=/./[r],c=e(r,""[t],(function(t,e,n,i,r){var s=e.exec;return s===Gs||s===Xs.exec?o&&!r?{done:!0,value:a.call(e,n,i)}:{done:!0,value:t.call(n,e,i)}:{done:!1}}));Vs(String.prototype,t,c[0]),Vs(Xs,r,c[1])}i&&Ks(Xs[r],"sham",!0)},$s=C,Zs=p,Js=ht("match"),Qs=function(t){var e;return $s(t)&&(void 0!==(e=t[Js])?!!e:"RegExp"==Zs(t))},ta=Nt,ea=Tn,na=ht("species"),ia=function(t,e){var n,i=ta(t).constructor;return void 0===i||null==(n=ta(i)[na])?e:ea(n)},ra=Le,oa=wi,sa=m,aa=function(t){return function(e,n){var i,r,o=oa(sa(e)),s=ra(n),a=o.length;return s<0||s>=a?t?"":void 0:(i=o.charCodeAt(s))<55296||i>56319||s+1===a||(r=o.charCodeAt(s+1))<56320||r>57343?t?o.charAt(s):i:t?o.slice(s,s+2):r-56320+(i-55296<<10)+65536}},ca={codeAt:aa(!1),charAt:aa(!0)},la=ca.charAt,ua=function(t,e,n){return e+(n?la(t,e).length:1)},ha=p,fa=Us,da=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==ha(t))throw TypeError("RegExp#exec called on incompatible receiver");return fa.call(t,e)},pa=qs,ga=Qs,va=Nt,ya=m,ma=ia,ka=ua,ba=Me,wa=wi,Ca=da,xa=Us,_a=r,Ea=ms.UNSUPPORTED_Y,Ta=[].push,Sa=Math.min,Pa=4294967295;pa("split",(function(t,e,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var i=wa(ya(this)),r=void 0===n?Pa:n>>>0;if(0===r)return[];if(void 0===t)return[i];if(!ga(t))return e.call(i,t,r);for(var o,s,a,c=[],l=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),u=0,h=new RegExp(t.source,l+"g");(o=xa.call(h,i))&&!((s=h.lastIndex)>u&&(c.push(i.slice(u,o.index)),o.length>1&&o.index<i.length&&Ta.apply(c,o.slice(1)),a=o[0].length,u=s,c.length>=r));)h.lastIndex===o.index&&h.lastIndex++;return u===i.length?!a&&h.test("")||c.push(""):c.push(i.slice(u)),c.length>r?c.slice(0,r):c}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var r=ya(this),o=null==e?void 0:e[t];return void 0!==o?o.call(e,r,n):i.call(wa(r),e,n)},function(t,r){var o=va(this),s=wa(t),a=n(i,o,s,r,i!==e);if(a.done)return a.value;var c=ma(o,RegExp),l=o.unicode,u=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(Ea?"g":"y"),h=new c(Ea?"^(?:"+o.source+")":o,u),f=void 0===r?Pa:r>>>0;if(0===f)return[];if(0===s.length)return null===Ca(h,s)?[s]:[];for(var d=0,p=0,g=[];p<s.length;){h.lastIndex=Ea?0:p;var v,y=Ca(h,Ea?s.slice(p):s);if(null===y||(v=Sa(ba(h.lastIndex+(Ea?p:0)),s.length))===d)p=ka(s,p,l);else{if(g.push(s.slice(d,p)),g.length===f)return g;for(var m=1;m<=y.length-1;m++)if(g.push(y[m]),g.length===f)return g;p=d=v}}return g.push(s.slice(d)),g}]}),!!_a((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]})),Ea);var Ra=En,Oa=w,Ia=[].join,La=y!=Object,Aa=as("join",",");Ra({target:"Array",proto:!0,forced:La||!Aa},{join:function(t){return Ia.call(Oa(this),void 0===t?",":t)}});var Da=En,Ma=Be,Na=Le,Fa=Me,ja=q,Ba=Gi,Ha=vo,Ua=So("splice"),Va=Math.max,Ga=Math.min,Wa=9007199254740991,Ya="Maximum allowed length exceeded";Da({target:"Array",proto:!0,forced:!Ua},{splice:function(t,e){var n,i,r,o,s,a,c=ja(this),l=Fa(c.length),u=Ma(t,l),h=arguments.length;if(0===h?n=i=0:1===h?(n=0,i=l-u):(n=h-2,i=Ga(Va(Na(e),0),l-u)),l+n-i>Wa)throw TypeError(Ya);for(r=Ba(c,i),o=0;o<i;o++)(s=u+o)in c&&Ha(r,o,c[s]);if(r.length=i,n<i){for(o=u;o<l-i;o++)a=o+n,(s=o+i)in c?c[a]=c[s]:delete c[a];for(o=l;o>l-i+n;o--)delete c[o-1]}else if(n>i)for(o=l-i;o>u;o--)a=o+n-1,(s=o+i-1)in c?c[a]=c[s]:delete c[a];for(o=0;o<n;o++)c[o+u]=arguments[o+2];return c.length=l-i+n,r}});var Ka={};Ka[ht("toStringTag")]="z";var za="[object z]"===String(Ka),Xa=za,qa=p,$a=ht("toStringTag"),Za="Arguments"==qa(function(){return arguments}()),Ja=Xa?qa:function(t){var e,n,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),$a))?n:Za?qa(e):"Object"==(i=qa(e))&&"function"==typeof e.callee?"Arguments":i},Qa=Ja,tc=za?{}.toString:function(){return"[object "+Qa(this)+"]"},ec=za,nc=Yt.exports,ic=tc;ec||nc(Object.prototype,"toString",ic,{unsafe:!0});var rc=n.Promise,oc=Yt.exports,sc=C,ac=Nt,cc=function(t){if(!sc(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},lc=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,i){return ac(n),cc(i),e?t.call(n,i):n.__proto__=i,n}}():void 0),uc=E,hc=Dt,fc=o,dc=ht("species"),pc=function(t){var e=uc(t),n=hc.f;fc&&e&&!e[dc]&&n(e,dc,{configurable:!0,get:function(){return this}})},gc={},vc=gc,yc=ht("iterator"),mc=Array.prototype,kc=Ja,bc=gc,wc=ht("iterator"),Cc=Nt,xc=Nt,_c=function(t){return void 0!==t&&(vc.Array===t||mc[yc]===t)},Ec=Me,Tc=ji,Sc=function(t){if(null!=t)return t[wc]||t["@@iterator"]||bc[kc(t)]},Pc=function(t){var e=t.return;if(void 0!==e)return Cc(e.call(t)).value},Rc=function(t,e){this.stopped=t,this.result=e},Oc=ht("iterator"),Ic=!1;try{var Lc=0,Ac={next:function(){return{done:!!Lc++}},return:function(){Ic=!0}};Ac[Oc]=function(){return this},Array.from(Ac,(function(){throw 2}))}catch(t){}var Dc,Mc,Nc,Fc,jc=/(?:ipad|iphone|ipod).*applewebkit/i.test(T),Bc="process"==p(n.process),Hc=n,Uc=r,Vc=ji,Gc=Dn,Wc=xt,Yc=jc,Kc=Bc,zc=Hc.setImmediate,Xc=Hc.clearImmediate,qc=Hc.process,$c=Hc.MessageChannel,Zc=Hc.Dispatch,Jc=0,Qc={},tl="onreadystatechange";try{Dc=Hc.location}catch(t){}var el=function(t){if(Qc.hasOwnProperty(t)){var e=Qc[t];delete Qc[t],e()}},nl=function(t){return function(){el(t)}},il=function(t){el(t.data)},rl=function(t){Hc.postMessage(String(t),Dc.protocol+"//"+Dc.host)};zc&&Xc||(zc=function(t){for(var e=[],n=arguments.length,i=1;n>i;)e.push(arguments[i++]);return Qc[++Jc]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},Mc(Jc),Jc},Xc=function(t){delete Qc[t]},Kc?Mc=function(t){qc.nextTick(nl(t))}:Zc&&Zc.now?Mc=function(t){Zc.now(nl(t))}:$c&&!Yc?(Fc=(Nc=new $c).port2,Nc.port1.onmessage=il,Mc=Vc(Fc.postMessage,Fc,1)):Hc.addEventListener&&"function"==typeof postMessage&&!Hc.importScripts&&Dc&&"file:"!==Dc.protocol&&!Uc(rl)?(Mc=rl,Hc.addEventListener("message",il,!1)):Mc=tl in Wc("script")?function(t){Gc.appendChild(Wc("script")).onreadystatechange=function(){Gc.removeChild(this),el(t)}}:function(t){setTimeout(nl(t),0)});var ol,sl,al,cl,ll,ul,hl,fl,dl={set:zc,clear:Xc},pl=n,gl=/ipad|iphone|ipod/i.test(T)&&void 0!==pl.Pebble,vl=/web0s(?!.*chrome)/i.test(T),yl=n,ml=i.f,kl=dl.set,bl=jc,wl=gl,Cl=vl,xl=Bc,_l=yl.MutationObserver||yl.WebKitMutationObserver,El=yl.document,Tl=yl.process,Sl=yl.Promise,Pl=ml(yl,"queueMicrotask"),Rl=Pl&&Pl.value;Rl||(ol=function(){var t,e;for(xl&&(t=Tl.domain)&&t.exit();sl;){e=sl.fn,sl=sl.next;try{e()}catch(t){throw sl?cl():al=void 0,t}}al=void 0,t&&t.enter()},bl||xl||Cl||!_l||!El?!wl&&Sl&&Sl.resolve?((hl=Sl.resolve(void 0)).constructor=Sl,fl=hl.then,cl=function(){fl.call(hl,ol)}):cl=xl?function(){Tl.nextTick(ol)}:function(){kl.call(yl,ol)}:(ll=!0,ul=El.createTextNode(""),new _l(ol).observe(ul,{characterData:!0}),cl=function(){ul.data=ll=!ll}));var Ol=Rl||function(t){var e={fn:t,next:void 0};al&&(al.next=e),sl||(sl=e,cl()),al=e},Il={},Ll=Tn,Al=function(t){var e,n;this.promise=new t((function(t,i){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=i})),this.resolve=Ll(e),this.reject=Ll(n)};Il.f=function(t){return new Al(t)};var Dl,Ml,Nl,Fl,jl=Nt,Bl=C,Hl=Il,Ul=n,Vl="object"==typeof window,Gl=En,Wl=n,Yl=E,Kl=rc,zl=Yt.exports,Xl=function(t,e,n){for(var i in e)oc(t,i,e[i],n);return t},ql=lc,$l=Ni,Zl=pc,Jl=C,Ql=Tn,tu=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t},eu=Zt,nu=function(t,e,n){var i,r,o,s,a,c,l,u=n&&n.that,h=!(!n||!n.AS_ENTRIES),f=!(!n||!n.IS_ITERATOR),d=!(!n||!n.INTERRUPTED),p=Tc(e,u,1+h+d),g=function(t){return i&&Pc(i),new Rc(!0,t)},v=function(t){return h?(xc(t),d?p(t[0],t[1],g):p(t[0],t[1])):d?p(t,g):p(t)};if(f)i=t;else{if("function"!=typeof(r=Sc(t)))throw TypeError("Target is not iterable");if(_c(r)){for(o=0,s=Ec(t.length);s>o;o++)if((a=v(t[o]))&&a instanceof Rc)return a;return new Rc(!1)}i=r.call(t)}for(c=i.next;!(l=c.call(i)).done;){try{a=v(l.value)}catch(t){throw Pc(i),t}if("object"==typeof a&&a&&a instanceof Rc)return a}return new Rc(!1)},iu=function(t,e){if(!e&&!Ic)return!1;var n=!1;try{var i={};i[Oc]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n},ru=ia,ou=dl.set,su=Ol,au=function(t,e){if(jl(t),Bl(e)&&e.constructor===t)return e;var n=Hl.f(t);return(0,n.resolve)(e),n.promise},cu=function(t,e){var n=Ul.console;n&&n.error&&(1===arguments.length?n.error(t):n.error(t,e))},lu=Il,uu=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},hu=be,fu=yn,du=Vl,pu=Bc,gu=A,vu=ht("species"),yu="Promise",mu=hu.get,ku=hu.set,bu=hu.getterFor(yu),wu=Kl&&Kl.prototype,Cu=Kl,xu=wu,_u=Wl.TypeError,Eu=Wl.document,Tu=Wl.process,Su=lu.f,Pu=Su,Ru=!!(Eu&&Eu.createEvent&&Wl.dispatchEvent),Ou="function"==typeof PromiseRejectionEvent,Iu="unhandledrejection",Lu=!1,Au=fu(yu,(function(){var t=eu(Cu),e=t!==String(Cu);if(!e&&66===gu)return!0;if(gu>=51&&/native code/.test(t))return!1;var n=new Cu((function(t){t(1)})),i=function(t){t((function(){}),(function(){}))};return(n.constructor={})[vu]=i,!(Lu=n.then((function(){}))instanceof i)||!e&&du&&!Ou})),Du=Au||!iu((function(t){Cu.all(t).catch((function(){}))})),Mu=function(t){var e;return!(!Jl(t)||"function"!=typeof(e=t.then))&&e},Nu=function(t,e){if(!t.notified){t.notified=!0;var n=t.reactions;su((function(){for(var i=t.value,r=1==t.state,o=0;n.length>o;){var s,a,c,l=n[o++],u=r?l.ok:l.fail,h=l.resolve,f=l.reject,d=l.domain;try{u?(r||(2===t.rejection&&Hu(t),t.rejection=1),!0===u?s=i:(d&&d.enter(),s=u(i),d&&(d.exit(),c=!0)),s===l.promise?f(_u("Promise-chain cycle")):(a=Mu(s))?a.call(s,h,f):h(s)):f(i)}catch(t){d&&!c&&d.exit(),f(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&ju(t)}))}},Fu=function(t,e,n){var i,r;Ru?((i=Eu.createEvent("Event")).promise=e,i.reason=n,i.initEvent(t,!1,!0),Wl.dispatchEvent(i)):i={promise:e,reason:n},!Ou&&(r=Wl["on"+t])?r(i):t===Iu&&cu("Unhandled promise rejection",n)},ju=function(t){ou.call(Wl,(function(){var e,n=t.facade,i=t.value;if(Bu(t)&&(e=uu((function(){pu?Tu.emit("unhandledRejection",i,n):Fu(Iu,n,i)})),t.rejection=pu||Bu(t)?2:1,e.error))throw e.value}))},Bu=function(t){return 1!==t.rejection&&!t.parent},Hu=function(t){ou.call(Wl,(function(){var e=t.facade;pu?Tu.emit("rejectionHandled",e):Fu("rejectionhandled",e,t.value)}))},Uu=function(t,e,n){return function(i){t(e,i,n)}},Vu=function(t,e,n){t.done||(t.done=!0,n&&(t=n),t.value=e,t.state=2,Nu(t,!0))},Gu=function(t,e,n){if(!t.done){t.done=!0,n&&(t=n);try{if(t.facade===e)throw _u("Promise can't be resolved itself");var i=Mu(e);i?su((function(){var n={done:!1};try{i.call(e,Uu(Gu,n,t),Uu(Vu,n,t))}catch(e){Vu(n,e,t)}})):(t.value=e,t.state=1,Nu(t,!1))}catch(e){Vu({done:!1},e,t)}}};if(Au&&(xu=(Cu=function(t){tu(this,Cu,yu),Ql(t),Dl.call(this);var e=mu(this);try{t(Uu(Gu,e),Uu(Vu,e))}catch(t){Vu(e,t)}}).prototype,(Dl=function(t){ku(this,{type:yu,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Xl(xu,{then:function(t,e){var n=bu(this),i=Su(ru(this,Cu));return i.ok="function"!=typeof t||t,i.fail="function"==typeof e&&e,i.domain=pu?Tu.domain:void 0,n.parent=!0,n.reactions.push(i),0!=n.state&&Nu(n,!1),i.promise},catch:function(t){return this.then(void 0,t)}}),Ml=function(){var t=new Dl,e=mu(t);this.promise=t,this.resolve=Uu(Gu,e),this.reject=Uu(Vu,e)},lu.f=Su=function(t){return t===Cu||t===Nl?new Ml(t):Pu(t)},"function"==typeof Kl&&wu!==Object.prototype)){Fl=wu.then,Lu||(zl(wu,"then",(function(t,e){var n=this;return new Cu((function(t,e){Fl.call(n,t,e)})).then(t,e)}),{unsafe:!0}),zl(wu,"catch",xu.catch,{unsafe:!0}));try{delete wu.constructor}catch(t){}ql&&ql(wu,xu)}Gl({global:!0,wrap:!0,forced:Au},{Promise:Cu}),$l(Cu,yu,!1),Zl(yu),Nl=Yl(yu),Gl({target:yu,stat:!0,forced:Au},{reject:function(t){var e=Su(this);return e.reject.call(void 0,t),e.promise}}),Gl({target:yu,stat:!0,forced:Au},{resolve:function(t){return au(this,t)}}),Gl({target:yu,stat:!0,forced:Du},{all:function(t){var e=this,n=Su(e),i=n.resolve,r=n.reject,o=uu((function(){var n=Ql(e.resolve),o=[],s=0,a=1;nu(t,(function(t){var c=s++,l=!1;o.push(void 0),a++,n.call(e,t).then((function(t){l||(l=!0,o[c]=t,--a||i(o))}),r)})),--a||i(o)}));return o.error&&r(o.value),n.promise},race:function(t){var e=this,n=Su(e),i=n.reject,r=uu((function(){var r=Ql(e.resolve);nu(t,(function(t){r.call(e,t).then(n.resolve,i)}))}));return r.error&&i(r.value),n.promise}});var Wu=o,Yu=Dt.f,Ku=Function.prototype,zu=Ku.toString,Xu=/^\s*function ([^ (]*)/,qu="name";Wu&&!(qu in Ku)&&Yu(Ku,qu,{configurable:!0,get:function(){try{return zu.call(this).match(Xu)[1]}catch(t){return""}}});var $u=C,Zu=lc,Ju=function(t,e,n){var i,r;return Zu&&"function"==typeof(i=e.constructor)&&i!==n&&$u(r=i.prototype)&&r!==n.prototype&&Zu(t,r),t},Qu="\t\n\v\f\r \u2028\u2029\ufeff",th=m,eh=wi,nh="[\t\n\v\f\r \u2028\u2029\ufeff]",ih=RegExp("^"+nh+nh+"*"),rh=RegExp(nh+nh+"*$"),oh=function(t){return function(e){var n=eh(th(e));return 1&t&&(n=n.replace(ih,"")),2&t&&(n=n.replace(rh,"")),n}},sh={start:oh(1),end:oh(2),trim:oh(3)},ah=o,ch=n,lh=yn,uh=Yt.exports,hh=J,fh=p,dh=Ju,ph=B,gh=vt,vh=r,yh=Kn,mh=Re.f,kh=i.f,bh=Dt.f,wh=sh.trim,Ch="Number",xh=ch.Number,_h=xh.prototype,Eh=fh(yh(_h))==Ch,Th=function(t){if(ph(t))throw TypeError("Cannot convert a Symbol value to a number");var e,n,i,r,o,s,a,c,l=gh(t,"number");if("string"==typeof l&&l.length>2)if(43===(e=(l=wh(l)).charCodeAt(0))||45===e){if(88===(n=l.charCodeAt(2))||120===n)return NaN}else if(48===e){switch(l.charCodeAt(1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+l}for(s=(o=l.slice(2)).length,a=0;a<s;a++)if((c=o.charCodeAt(a))<48||c>r)return NaN;return parseInt(o,i)}return+l};if(lh(Ch,!xh(" 0o1")||!xh("0b1")||xh("+0x1"))){for(var Sh,Ph=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof Ph&&(Eh?vh((function(){_h.valueOf.call(n)})):fh(n)!=Ch)?dh(new xh(Th(e)),n,Ph):Th(e)},Rh=ah?mh(xh):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","),Oh=0;Rh.length>Oh;Oh++)hh(xh,Sh=Rh[Oh])&&!hh(Ph,Sh)&&bh(Ph,Sh,kh(xh,Sh));Ph.prototype=_h,_h.constructor=Ph,uh(ch,Ch,Ph)}var Ih=Zi.filter;En({target:"Array",proto:!0,forced:!So("filter")},{filter:function(t){return Ih(this,t,arguments.length>1?arguments[1]:void 0)}});var Lh=o,Ah=r,Dh=Rn,Mh=Qe,Nh=s,Fh=q,jh=y,Bh=Object.assign,Hh=Object.defineProperty,Uh=!Bh||Ah((function(){if(Lh&&1!==Bh({b:1},Bh(Hh({},"a",{enumerable:!0,get:function(){Hh(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),i="abcdefghijklmnopqrst";return t[n]=7,i.split("").forEach((function(t){e[t]=t})),7!=Bh({},t)[n]||Dh(Bh({},e)).join("")!=i}))?function(t,e){for(var n=Fh(t),i=arguments.length,r=1,o=Mh.f,s=Nh.f;i>r;)for(var a,c=jh(arguments[r++]),l=o?Dh(c).concat(o(c)):Dh(c),u=l.length,h=0;u>h;)a=l[h++],Lh&&!s.call(c,a)||(n[a]=c[a]);return n}:Bh;En({target:"Object",stat:!0,forced:Object.assign!==Uh},{assign:Uh});var Vh={exports:{}};!function(t){var e=Object.prototype.hasOwnProperty,n="~";function i(){}function r(t,e,n){this.fn=t,this.context=e,this.once=n||!1}function o(t,e,i,o,s){if("function"!=typeof i)throw new TypeError("The listener must be a function");var a=new r(i,o||t,s),c=n?n+e:e;return t._events[c]?t._events[c].fn?t._events[c]=[t._events[c],a]:t._events[c].push(a):(t._events[c]=a,t._eventsCount++),t}function s(t,e){0==--t._eventsCount?t._events=new i:delete t._events[e]}function a(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(n=!1)),a.prototype.eventNames=function(){var t,i,r=[];if(0===this._eventsCount)return r;for(i in t=this._events)e.call(t,i)&&r.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(t)):r},a.prototype.listeners=function(t){var e=n?n+t:t,i=this._events[e];if(!i)return[];if(i.fn)return[i.fn];for(var r=0,o=i.length,s=new Array(o);r<o;r++)s[r]=i[r].fn;return s},a.prototype.listenerCount=function(t){var e=n?n+t:t,i=this._events[e];return i?i.fn?1:i.length:0},a.prototype.emit=function(t,e,i,r,o,s){var a=n?n+t:t;if(!this._events[a])return!1;var c,l,u=this._events[a],h=arguments.length;if(u.fn){switch(u.once&&this.removeListener(t,u.fn,void 0,!0),h){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,e),!0;case 3:return u.fn.call(u.context,e,i),!0;case 4:return u.fn.call(u.context,e,i,r),!0;case 5:return u.fn.call(u.context,e,i,r,o),!0;case 6:return u.fn.call(u.context,e,i,r,o,s),!0}for(l=1,c=new Array(h-1);l<h;l++)c[l-1]=arguments[l];u.fn.apply(u.context,c)}else{var f,d=u.length;for(l=0;l<d;l++)switch(u[l].once&&this.removeListener(t,u[l].fn,void 0,!0),h){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,e);break;case 3:u[l].fn.call(u[l].context,e,i);break;case 4:u[l].fn.call(u[l].context,e,i,r);break;default:if(!c)for(f=1,c=new Array(h-1);f<h;f++)c[f-1]=arguments[f];u[l].fn.apply(u[l].context,c)}}return!0},a.prototype.on=function(t,e,n){return o(this,t,e,n,!1)},a.prototype.once=function(t,e,n){return o(this,t,e,n,!0)},a.prototype.removeListener=function(t,e,i,r){var o=n?n+t:t;if(!this._events[o])return this;if(!e)return s(this,o),this;var a=this._events[o];if(a.fn)a.fn!==e||r&&!a.once||i&&a.context!==i||s(this,o);else{for(var c=0,l=[],u=a.length;c<u;c++)(a[c].fn!==e||r&&!a[c].once||i&&a[c].context!==i)&&l.push(a[c]);l.length?this._events[o]=1===l.length?l[0]:l:s(this,o)}return this},a.prototype.removeAllListeners=function(t){var e;return t?(e=n?n+t:t,this._events[e]&&s(this,e)):(this._events=new i,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=n,a.EventEmitter=a,t.exports=a}(Vh);var Gh=Vh.exports;function Wh(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}function Yh(t){return function(t){if(Array.isArray(t))return Wh(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Wh(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Wh(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var Kh=Nt,zh=Me,Xh=wi,qh=m,$h=ua,Zh=da;qs("match",(function(t,e,n){return[function(e){var n=qh(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,n):new RegExp(e)[t](Xh(n))},function(t){var i=Kh(this),r=Xh(t),o=n(e,i,r);if(o.done)return o.value;if(!i.global)return Zh(i,r);var s=i.unicode;i.lastIndex=0;for(var a,c=[],l=0;null!==(a=Zh(i,r));){var u=Xh(a[0]);c[l]=u,""===u&&(i.lastIndex=$h(r,zh(i.lastIndex),s)),l++}return 0===l?null:c}]}));var Jh=o,Qh=n,tf=yn,ef=Ju,nf=Wt,rf=Dt.f,of=Re.f,sf=Qs,af=wi,cf=ys,lf=ms,uf=Yt.exports,hf=r,ff=J,df=be.enforce,pf=pc,gf=xs,vf=Ts,yf=ht("match"),mf=Qh.RegExp,kf=mf.prototype,bf=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,wf=/a/g,Cf=/a/g,xf=new mf(wf)!==wf,_f=lf.UNSUPPORTED_Y,Ef=Jh&&(!xf||_f||gf||vf||hf((function(){return Cf[yf]=!1,mf(wf)!=wf||mf(Cf)==Cf||"/a/i"!=mf(wf,"i")})));if(tf("RegExp",Ef)){for(var Tf=function(t,e){var n,i,r,o,s,a,c=this instanceof Tf,l=sf(t),u=void 0===e,h=[],f=t;if(!c&&l&&u&&t.constructor===Tf)return t;if((l||t instanceof Tf)&&(t=t.source,u&&(e="flags"in f?f.flags:cf.call(f))),t=void 0===t?"":af(t),e=void 0===e?"":af(e),f=t,gf&&"dotAll"in wf&&(i=!!e&&e.indexOf("s")>-1)&&(e=e.replace(/s/g,"")),n=e,_f&&"sticky"in wf&&(r=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,"")),vf&&(t=(o=function(t){for(var e,n=t.length,i=0,r="",o=[],s={},a=!1,c=!1,l=0,u="";i<=n;i++){if("\\"===(e=t.charAt(i)))e+=t.charAt(++i);else if("]"===e)a=!1;else if(!a)switch(!0){case"["===e:a=!0;break;case"("===e:bf.test(t.slice(i+1))&&(i+=2,c=!0),r+=e,l++;continue;case">"===e&&c:if(""===u||ff(s,u))throw new SyntaxError("Invalid capture group name");s[u]=!0,o.push([u,l]),c=!1,u="";continue}c?u+=e:r+=e}return[r,o]}(t))[0],h=o[1]),s=ef(mf(t,e),c?this:kf,Tf),(i||r||h.length)&&(a=df(s),i&&(a.dotAll=!0,a.raw=Tf(function(t){for(var e,n=t.length,i=0,r="",o=!1;i<=n;i++)"\\"!==(e=t.charAt(i))?o||"."!==e?("["===e?o=!0:"]"===e&&(o=!1),r+=e):r+="[\\s\\S]":r+=e+t.charAt(++i);return r}(t),n)),r&&(a.sticky=!0),h.length&&(a.groups=h)),t!==f)try{nf(s,"source",""===f?"(?:)":f)}catch(t){}return s},Sf=function(t){t in Tf||rf(Tf,t,{configurable:!0,get:function(){return mf[t]},set:function(e){mf[t]=e}})},Pf=of(mf),Rf=0;Pf.length>Rf;)Sf(Pf[Rf++]);kf.constructor=Tf,Tf.prototype=kf,uf(Qh,"RegExp",Tf)}pf("RegExp");var Of=Yt.exports,If=Nt,Lf=wi,Af=r,Df=ys,Mf="toString",Nf=RegExp.prototype,Ff=Nf.toString,jf=Af((function(){return"/a/b"!=Ff.call({source:"a",flags:"b"})})),Bf=Ff.name!=Mf;(jf||Bf)&&Of(RegExp.prototype,Mf,(function(){var t=If(this),e=Lf(t.source),n=t.flags;return"/"+e+"/"+Lf(void 0===n&&t instanceof RegExp&&!("flags"in Nf)?Df.call(t):n)}),{unsafe:!0});var Hf=q,Uf=Math.floor,Vf="".replace,Gf=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Wf=/\$([$&'`]|\d{1,2})/g,Yf=qs,Kf=r,zf=Nt,Xf=Le,qf=Me,$f=wi,Zf=m,Jf=ua,Qf=function(t,e,n,i,r,o){var s=n+t.length,a=i.length,c=Wf;return void 0!==r&&(r=Hf(r),c=Gf),Vf.call(o,c,(function(o,c){var l;switch(c.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(s);case"<":l=r[c.slice(1,-1)];break;default:var u=+c;if(0===u)return o;if(u>a){var h=Uf(u/10);return 0===h?o:h<=a?void 0===i[h-1]?c.charAt(1):i[h-1]+c.charAt(1):o}l=i[u-1]}return void 0===l?"":l}))},td=da,ed=ht("replace"),nd=Math.max,id=Math.min,rd="$0"==="a".replace(/./,"$0"),od=!!/./[ed]&&""===/./[ed]("a","$0");Yf("replace",(function(t,e,n){var i=od?"$":"$0";return[function(t,n){var i=Zf(this),r=null==t?void 0:t[ed];return void 0!==r?r.call(t,i,n):e.call($f(i),t,n)},function(t,r){var o=zf(this),s=$f(t);if("string"==typeof r&&-1===r.indexOf(i)&&-1===r.indexOf("$<")){var a=n(e,o,s,r);if(a.done)return a.value}var c="function"==typeof r;c||(r=$f(r));var l=o.global;if(l){var u=o.unicode;o.lastIndex=0}for(var h=[];;){var f=td(o,s);if(null===f)break;if(h.push(f),!l)break;""===$f(f[0])&&(o.lastIndex=Jf(s,qf(o.lastIndex),u))}for(var d,p="",g=0,v=0;v<h.length;v++){f=h[v];for(var y=$f(f[0]),m=nd(id(Xf(f.index),s.length),0),k=[],b=1;b<f.length;b++)k.push(void 0===(d=f[b])?d:String(d));var w=f.groups;if(c){var C=[y].concat(k,m,s);void 0!==w&&C.push(w);var x=$f(r.apply(void 0,C))}else x=Qf(y,s,m,k,w,r);m>=g&&(p+=s.slice(g,m)+x,g=m+y.length)}return p+s.slice(g)}]}),!!Kf((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}))||!rd||od);var sd=r,ad=Qu,cd=sh.trim;En({target:"String",proto:!0,forced:function(t){return sd((function(){return!!ad[t]()||"
"!="
"[t]()||ad[t].name!==t}))}("trim")},{trim:function(){return cd(this)}});var ld=Math.floor,ud=function(t,e){var n=t.length,i=ld(n/2);return n<8?hd(t,e):fd(ud(t.slice(0,i),e),ud(t.slice(i),e),e)},hd=function(t,e){for(var n,i,r=t.length,o=1;o<r;){for(i=o,n=t[o];i&&e(t[i-1],n)>0;)t[i]=t[--i];i!==o++&&(t[i]=n)}return t},fd=function(t,e,n){for(var i=t.length,r=e.length,o=0,s=0,a=[];o<i||s<r;)o<i&&s<r?a.push(n(t[o],e[s])<=0?t[o++]:e[s++]):a.push(o<i?t[o++]:e[s++]);return a},dd=ud,pd=T.match(/firefox\/(\d+)/i),gd=!!pd&&+pd[1],vd=/MSIE|Trident/.test(T),yd=T.match(/AppleWebKit\/(\d+)\./),md=!!yd&&+yd[1],kd=En,bd=Tn,wd=q,Cd=Me,xd=wi,_d=r,Ed=dd,Td=as,Sd=gd,Pd=vd,Rd=A,Od=md,Id=[],Ld=Id.sort,Ad=_d((function(){Id.sort(void 0)})),Dd=_d((function(){Id.sort(null)})),Md=Td("sort"),Nd=!_d((function(){if(Rd)return Rd<70;if(!(Sd&&Sd>3)){if(Pd)return!0;if(Od)return Od<603;var t,e,n,i,r="";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(i=0;i<47;i++)Id.push({k:e+i,v:n})}for(Id.sort((function(t,e){return e.v-t.v})),i=0;i<Id.length;i++)e=Id[i].k.charAt(0),r.charAt(r.length-1)!==e&&(r+=e);return"DGBEFHACIJK"!==r}}));kd({target:"Array",proto:!0,forced:Ad||!Dd||!Md||!Nd},{sort:function(t){void 0!==t&&bd(t);var e=wd(this);if(Nd)return void 0===t?Ld.call(e):Ld.call(e,t);var n,i,r=[],o=Cd(e.length);for(i=0;i<o;i++)i in e&&r.push(e[i]);for(n=(r=Ed(r,function(t){return function(e,n){return void 0===n?-1:void 0===e?1:void 0!==t?+t(e,n)||0:xd(e)>xd(n)?1:-1}}(t))).length,i=0;i<n;)e[i]=r[i++];for(;i<o;)delete e[i++];return e}});var Fd="undefined"!=typeof window&&window.location&&window.location.href.indexOf("xgplayerdebugger=1")>-1,jd={info:"color: #525252; background-color: #90ee90;",error:"color: #525252; background-color: red;",warn:"color: #525252; background-color: yellow; "},Bd="%c[xgplayer]",Hd={config:{debug:Fd?3:1},logInfo:function(t){for(var e,n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];this.config.debug>=3&&(e=console).log.apply(e,[Bd,jd.info,t].concat(i))},logWarn:function(t){for(var e,n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];this.config.debug>=1&&(e=console).warn.apply(e,[Bd,jd.warn,t].concat(i))},logError:function(t){var e;if(!(this.config.debug<1)){for(var n=this.config.debug>=2?"trace":"error",i=arguments.length,r=new Array(i>1?i-1:0),o=1;o<i;o++)r[o-1]=arguments[o];(e=console)[n].apply(e,[Bd,jd.error,t].concat(r))}}};var Ud=function(){function t(e){ui(this,t),this.bufferedList=e}return Co(t,[{key:"start",value:function(t){return this.bufferedList[t].start}},{key:"end",value:function(t){return this.bufferedList[t].end}},{key:"length",get:function(){return this.bufferedList.length}}]),t}(),Vd={};function Gd(t,e){for(var n=0,i=e.length;n<i;n++)if(t.indexOf(e[n])>-1)return!0;return!1}Vd.createDom=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"div",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",r=document.createElement(t);return r.className=i,r.innerHTML=e,Object.keys(n).forEach((function(e){var i=e,o=n[e];"video"===t||"audio"===t||"live-video"===t?o&&r.setAttribute(i,o):r.setAttribute(i,o)})),r},Vd.createDomFromHtml=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";try{var i=document.createElement("div");i.innerHTML=t;var r=i.children;return i=null,r.length>0?(r=r[0],n&&Vd.addClass(r,n),e&&Object.keys(e).forEach((function(t){r.setAttribute(t,e[t])})),r):null}catch(t){return Hd.logError("util.createDomFromHtml",t),null}},Vd.hasClass=function(t,e){if(!t||!e)return!1;try{return Array.prototype.some.call(t.classList,(function(t){return t===e}))}catch(i){var n=t.className&&"object"===di(t.className)?t.getAttribute("class"):t.className;return n&&!!n.match(new RegExp("(\\s|^)"+e+"(\\s|$)"))}},Vd.addClass=function(t,e){if(t&&e)try{e.replace(/(^\s+|\s+$)/g,"").split(/\s+/g).forEach((function(e){e&&t.classList.add(e)}))}catch(n){Vd.hasClass(t,e)||(t.className&&"object"===di(t.className)?t.setAttribute("class",t.getAttribute("class")+" "+e):t.className+=" "+e)}},Vd.removeClass=function(t,e){if(t&&e)try{e.replace(/(^\s+|\s+$)/g,"").split(/\s+/g).forEach((function(e){e&&t.classList.remove(e)}))}catch(n){Vd.hasClass(t,e)&&e.split(/\s+/g).forEach((function(e){var n=new RegExp("(\\s|^)"+e+"(\\s|$)");t.className&&"object"===di(t.className)?t.setAttribute("class",t.getAttribute("class").replace(n," ")):t.className=t.className.replace(n," ")}))}},Vd.toggleClass=function(t,e){t&&e.split(/\s+/g).forEach((function(e){Vd.hasClass(t,e)?Vd.removeClass(t,e):Vd.addClass(t,e)}))},Vd.classNames=function(){for(var t=arguments,e=[],n=function(n){"String"===Vd.typeOf(t[n])?e.push(t[n]):"Object"===Vd.typeOf(t[n])&&Object.keys(t[n]).map((function(i){t[n][i]&&e.push(i)}))},i=0;i<arguments.length;i++)n(i);return e.join(" ")},Vd.findDom=function(){var t,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=arguments.length>1?arguments[1]:void 0;try{t=e.querySelector(n)}catch(i){Hd.logError("util.findDom",i),0===n.indexOf("#")&&(t=e.getElementById(n.slice(1)))}return t},Vd.getCss=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,!1)[e]},Vd.padStart=function(t,e,n){for(var i=String(n),r=e>>0,o=Math.ceil(r/i.length),s=[],a=String(t);o--;)s.push(i);return s.join("").substring(0,r-a.length)+a},Vd.format=function(t){if(window.isNaN(t))return"";t=Math.round(t);var e=Vd.padStart(Math.floor(t/3600),2,0),n=Vd.padStart(Math.floor((t-3600*e)/60),2,0),i=Vd.padStart(Math.floor(t-3600*e-60*n),2,0);return("00"===e?[n,i]:[e,n,i]).join(":")},Vd.event=function(t){if(t.touches){var e=t.touches[0]||t.changedTouches[0];t.clientX=e.clientX||0,t.clientY=e.clientY||0,t.offsetX=e.pageX-e.target.offsetLeft,t.offsetY=e.pageY-e.target.offsetTop}t._target=t.target||t.srcElement},Vd.typeOf=function(t){return Object.prototype.toString.call(t).match(/([^\s.*]+)(?=]$)/g)[0]},Vd.deepCopy=function(t,e){if("Object"===Vd.typeOf(e)&&"Object"===Vd.typeOf(t))return Object.keys(e).forEach((function(n){"Object"!==Vd.typeOf(e[n])||e[n]instanceof Node?"Array"===Vd.typeOf(e[n])?t[n]="Array"===Vd.typeOf(t[n])?t[n].concat(e[n]):e[n]:t[n]=e[n]:void 0===t[n]||void 0===t[n]?t[n]=e[n]:Vd.deepCopy(t[n],e[n])})),t},Vd.deepMerge=function(t,e){return Object.keys(e).map((function(n){var i;"Array"===Vd.typeOf(e[n])&&"Array"===Vd.typeOf(t[n])?"Array"===Vd.typeOf(t[n])&&(i=t[n]).push.apply(i,Yh(e[n])):Vd.typeOf(t[n])!==Vd.typeOf(e[n])||null===t[n]||"Object"!==Vd.typeOf(t[n])||e[n]instanceof window.Node?null!==e[n]&&(t[n]=e[n]):Vd.deepMerge(t[n],e[n])})),t},Vd.getBgImage=function(t){var e=(t.currentStyle||window.getComputedStyle(t,null)).backgroundImage;if(!e||"none"===e)return"";var n=document.createElement("a");return n.href=e.replace(/url\("|"\)/g,""),n.href},Vd.copyDom=function(t){if(t&&1===t.nodeType){var e=document.createElement(t.tagName);return Array.prototype.forEach.call(t.attributes,(function(t){e.setAttribute(t.name,t.value)})),t.innerHTML&&(e.innerHTML=t.innerHTML),e}return""},Vd.setInterval=function(t,e,n,i){t._interval[e]||(t._interval[e]=setInterval(n.bind(t),i))},Vd.clearInterval=function(t,e){clearInterval(t._interval[e]),t._interval[e]=null},Vd.setTimeout=function(t,e,n){t._timers||(t._timers=[]);var i=setTimeout((function(){e(),Vd.clearTimeout(t,i)}),n);return t._timers.push(i),i},Vd.clearTimeout=function(t,e){var n=t._timers;if("Array"===Vd.typeOf(n)){for(var i=0;i<n.length;i++)if(n[i]===e){n.splice(i,1),clearTimeout(e);break}}else clearTimeout(e)},Vd.clearAllTimers=function(t){var e=t._timers;"Array"===Vd.typeOf(e)&&(e.map((function(t){clearTimeout(t)})),t._timerIds=[])},Vd.createImgBtn=function(t,e,n,i){var r,o,s,a=Vd.createDom("xg-".concat(t),"",{},"xgplayer-".concat(t,"-img"));(a.style.backgroundImage='url("'.concat(e,'")'),n&&i)&&(["px","rem","em","pt","dp","vw","vh","vm","%"].every((function(t){return!(n.indexOf(t)>-1&&i.indexOf(t)>-1)||(r=parseFloat(n.slice(0,n.indexOf(t)).trim()),o=parseFloat(i.slice(0,i.indexOf(t)).trim()),s=t,!1)})),a.style.width="".concat(r).concat(s),a.style.height="".concat(o).concat(s),a.style.backgroundSize="".concat(r).concat(s," ").concat(o).concat(s),a.style.margin="start"===t?"-".concat(o/2).concat(s," auto auto -").concat(r/2).concat(s):"auto 5px auto 5px");return a},Vd.Hex2RGBA=function(t,e){var n=[];if(/^\#[0-9A-F]{3}$/i.test(t)){var i="#";t.replace(/[0-9A-F]/gi,(function(t){i+=t+t})),t=i}return/^#[0-9A-F]{6}$/i.test(t)?(t.replace(/[0-9A-F]{2}/gi,(function(t){n.push(parseInt(t,16))})),"rgba(".concat(n.join(","),", ").concat(e,")")):"rgba(255, 255, 255, 0.1)"},Vd.getFullScreenEl=function(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement},Vd.checkIsFunction=function(t){return t&&"function"==typeof t},Vd.checkIsObject=function(t){return null!==t&&"object"===di(t)},Vd.hide=function(t){t.style.display="none"},Vd.show=function(t,e){t.style.display=e||"block"},Vd.isUndefined=function(t){if(null==t)return!0},Vd.setStyleFromCsstext=function(t,e){e&&("String"===Vd.typeOf(e)?e.replace(/\s+/g,"").split(";").map((function(e){if(e){var n=e.split(":");n.length>1&&(t.style[n[0]]=n[1])}})):Object.keys(e).map((function(n){t.style[n]=e[n]})))},Vd.filterStyleFromText=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["width","height","top","left","bottom","right","position","z-index","padding","margin","transform"],n=t.style.cssText;if(!n)return{};var i=n.replace(/\s+/g,"").split(";"),r={},o={};return i.map((function(t){if(t){var n=t.split(":");n.length>1&&(Gd(n[0],e)?r[n[0]]=n[1]:o[n[0]]=n[1])}})),t.setAttribute("style",""),Object.keys(o).map((function(e){t.style[e]=o[e]})),r},Vd.getStyleFromCsstext=function(t){var e=t.style.cssText;if(!e)return{};var n=e.replace(/\s+/g,"").split(";"),i={};return n.map((function(t){if(t){var e=t.split(":");e.length>1&&(i[e[0]]=e[1])}})),i},Vd.preloadImg=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},i=new window.Image;i.complete?e&&e():(i.onload=function(t){i=null,e&&e(t)},i.onerror=function(t){i=null,n&&n(t)}),i.src=t},Vd.stopPropagation=function(t){t&&(t.stopPropagation(),t.cancelable&&t.preventDefault())},Vd.scrollTop=function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},Vd.scrollLeft=function(){return window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0},Vd.checkTouchSupport=function(){return"ontouchstart"in window},Vd.getBuffered2=function(t){for(var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.5,n=[],i=0;i<t.length;i++)n.push({start:t.start(i)<.5?0:t.start(i),end:t.end(i)});n.sort((function(t,e){var n=t.start-e.start;return n||e.end-t.end}));var r=[];if(e)for(var o=0;o<n.length;o++){var s=r.length;if(s){var a=r[s-1].end;n[o].start-a<e?n[o].end>a&&(r[s-1].end=n[o].end):r.push(n[o])}else r.push(n[o])}else r=n;return new Ud(r)},Vd.getEventPos=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return{x:t.x/e,y:t.y/e,clientX:t.clientX/e,clientY:t.clientY/e,offsetX:t.offsetX/e,offsetY:t.offsetY/e,pageX:t.pageX/e,pageY:t.pageY/e}},Vd.requestAnimationFrame=function(t){var e=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(e)return e(t)},Vd.cancelAnimationFrame=function(t){var e=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.cancelRequestAnimationFrame;e&&e(t)};var Wd=Vd,Yd=/(Android)\s([\d.]+)/,Kd=/(Version)\/([\d.]+)/,zd={get device(){return zd.os.isPc?"pc":"mobile"},get browser(){if("undefined"==typeof navigator)return"";var t=navigator.userAgent.toLowerCase(),e={ie:/rv:([\d.]+)\) like gecko/,firefox:/firefox\/([\d.]+)/,chrome:/chrome\/([\d.]+)/,opera:/opera.([\d.]+)/,safari:/version\/([\d.]+).*safari/};return[].concat(Object.keys(e).filter((function(n){return e[n].test(t)})))[0]},get os(){if("undefined"==typeof navigator)return{};var t=navigator.userAgent,e=/(?:Windows Phone)/.test(t),n=/(?:SymbianOS)/.test(t)||e,i=/(?:Android)/.test(t),r=/(?:Firefox)/.test(t),o=/(?:iPad|PlayBook)/.test(t)||i&&!/(?:Mobile)/.test(t)||r&&/(?:Tablet)/.test(t),s=/(?:iPhone)/.test(t)&&!o,a=!(s||i||n||o),c=/(?:iPad|PlayBook)/.test(t);return{isTablet:o,isPhone:s,isIpad:c,isIos:s||c,isAndroid:i,isPc:a,isSymbian:n,isWindowsPhone:e,isFireFox:r}},get osVersion(){var t=navigator.userAgent,e="",n=(e=/(?:iPhone)|(?:iPad|PlayBook)/.test(t)?Kd:Yd)?e.exec(t):[];if(n&&n.length>=3){var i=n[2].split(".");return i.length>0?parseInt(i[0]):0}return 0},get isWeixin(){if("undefined"==typeof navigator)return!1;return!!/(micromessenger)\/([\d.]+)/.exec(navigator.userAgent.toLocaleLowerCase())||void 0}},Xd=zd,qd="3.0.0-next.3",$d={1:"network",2:"network",3:"decoder",4:"format"},Zd=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{errorType:"",errorCode:0,errorMessage:"",originError:"",ext:{}};ui(this,t);var i=e.i18n.ERROR_TYPES;if(e.video){var r=e.video.error||{},o=e.duration,s=e.currentTime,a=e.ended,c=e.src,l=e.video,u=l.readyState,h=l.networkState,f={playerVersion:qd,currentTime:s,duration:o,ended:a,readyState:u,networkState:h,src:c,errorType:n.errorType,errorCode:n.errorCode||r.code,message:n.errorMessage||r.message,mediaError:r,originError:n.originError?n.originError.stack:""};return n.ext&&Object.keys(n.ext).map((function(t){f[t]=n.ext[t]})),f}if(arguments.length>1){for(var d={playerVersion:qd,domain:document.domain},p=["errorType","currentTime","duration","networkState","readyState","src","currentSrc","ended","errd","errorCode","mediaError"],g=0;g<arguments.length;g++)d[p[g]]=arguments[g];return d.ex=(i[arguments[0]]||{}).msg,d}},Jd="play",Qd="playing",tp="ended",ep="pause",np="error",ip="seeking",rp="seeked",op="timeupdate",sp="waiting",ap="canplay",cp="durationchange",lp="volumechange",up="loadeddata",hp="ratechange",fp="progress",dp="loadstart",pp="emptied",gp="focus",vp="blur",yp="ready",mp="urlNull",kp="autoplay_started",bp="autoplay_was_prevented",wp="complete",Cp="replay",xp="destroy",_p="urlchange",Ep="fullscreen_change",Tp="cssFullscreen_change",Sp="mini_state_change",Pp="definition_change",Rp="after_definition_change",Op="video_resize",Ip="pip_change",Lp="rotate",Ap="screenShot",Dp="playnext",Mp="shortcut",Np="xglog",Fp="user_action",jp=Object.freeze({__proto__:null,PLAY:Jd,PLAYING:Qd,ENDED:tp,PAUSE:ep,ERROR:np,SEEKING:ip,SEEKED:rp,TIME_UPDATE:op,WAITING:sp,CANPLAY:ap,CANPLAY_THROUGH:"canplaythrough",DURATION_CHANGE:cp,VOLUME_CHANGE:lp,LOADED_DATA:up,RATE_CHANGE:hp,PROGRESS:fp,LOAD_START:dp,EMPTIED:pp,STALLED:"stalled",SUSPEND:"suspend",ABORT:"abort",BUFFER_CHANGE:"bufferedChange",PLAYER_FOCUS:gp,PLAYER_BLUR:vp,READY:yp,URL_NULL:mp,AUTOPLAY_STARTED:kp,AUTOPLAY_PREVENTED:bp,COMPLETE:wp,REPLAY:Cp,DESTROY:xp,URL_CHANGE:_p,FULLSCREEN_CHANGE:Ep,CSS_FULLSCREEN_CHANGE:Tp,MINI_STATE_CHANGE:Sp,DEFINITION_CHANGE:Pp,BEFORE_DEFINITION_CHANGE:"before_definition_change",AFTER_DEFINITION_CHANGE:Rp,SEI_PARSED:"SEI_PARSED",RETRY:"retry",VIDEO_RESIZE:Op,PIP_CHANGE:Ip,ROTATE:Lp,SCREEN_SHOT:Ap,PLAYNEXT:Dp,SHORTCUT:Mp,XGLOG:Np,USER_ACTION:Fp,USER_ACTION1:"user_action1"});function Bp(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Hp=["play","playing","pause","ended","error","seeking","seeked","timeupdate","waiting","canplay","canplaythrough","durationchange","volumechange","loadeddata","loadstart","emptied","ratechange","progress","stalled","suspend","abort"];function Up(t,e){this&&this.emit&&("error"===t?this.errorHandler(t):this.emit(t,e))}var Vp=function(t){fi(n,t);var e=Bp(n);function n(t){var i;ui(this,n),(i=e.call(this,t))._hasStart=!1,i._currentTime=0,i._duration=0,i.videoConfig=Object.assign({},{controls:!1,autoplay:t.autoplay,playsinline:t.playsinline,"x5-playsinline":t.playsinline,"webkit-playsinline":t.playsinline,"x5-video-player-fullscreen":t["x5-video-player-fullscreen"]||t.x5VideoPlayerFullscreen,"x5-video-orientation":t["x5-video-orientation"]||t.x5VideoOrientation,airplay:t.airplay,"webkit-airplay":t.airplay,tabindex:2,mediaType:t.mediaType||"video"},t.videoConfig,t.videoAttributes);var r=t["x5-video-player-type"]||t.x5VideoPlayerType;return Xd.isWeixin&&Xd.os.isAndroid&&r&&(i.videoConfig["x5-video-player-type"]=r,delete i.videoConfig.playsinline,delete i.videoConfig["webkit-playsinline"],delete i.videoConfig["x5-playsinline"]),t.loop&&(i.videoConfig.loop="loop"),i.video=Wd.createDom(i.videoConfig.mediaType,"",i.videoConfig,""),t.defaultPlaybackRate&&(i.video.defaultPlaybackRate=i.video.playbackRate=t.defaultPlaybackRate),"Number"===Wd.typeOf(t.volume)&&(i.volume=t.volume),t.autoplayMuted&&(i.video.muted=!0),t.autoplay&&(i.video.autoplay=!0),i._interval={},i.videoEventMiddleware={},i.attachVideoEvents(),i}return Co(n,[{key:"setEventsMiddleware",value:function(t){var e=this;Object.keys(t).map((function(n){e.videoEventMiddleware[n]=t[n]}))}},{key:"removeEventsMiddleware",value:function(t){var e=this;Object.keys(t).map((function(t){delete e.videoEventMiddleware[t]}))}},{key:"attachVideoEvents",value:function(t){var e=this;this.evHandlers||(this._evHandlers=Hp.map((function(t){return yi({},t,(i=e,r="on".concat((n=t).charAt(0).toUpperCase()).concat(n.slice(1)),i[r]&&"function"==typeof i[r]&&i.on(n,i[r]),function(t){var e=n;if(t.player=i,t.eventName=n,"timeupdate"===e&&(i._currentTime=i.video&&i.video.currentTime),"durationchange"===n&&(i._duration=i.video.duration),i.videoEventMiddleware[n]){var r=Up.bind(i);try{i.videoEventMiddleware[n].call(i,t,r)}catch(t){throw Up.call(i,e,t),t}}else Up.call(i,e,t)}));var n,i,r}))),t||(t=this.video),this._evHandlers.map((function(e){var n=Object.keys(e)[0];t.addEventListener(n,e[n],!1)}))}},{key:"detachVideoEvents",value:function(t){t||(t=this.video),this._evHandlers.map((function(e){var n=Object.keys(e)[0];t.removeEventListener(Object.keys(e)[0],e[n],!1)}))}},{key:"errorHandler",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(this.video&&(this.video.error||e)){var n=this.video.error||e,i=n.code?$d[n.code]:"other";this.emit(t,new Zd(this,{errorType:i,errorCode:n.code,errorMessage:n.message||""}))}}},{key:"destroy",value:function(){var t=this;for(var e in this.video&&(this.video.pause&&this.video.pause(),this.video.removeAttribute("src")),this._currentTime=0,this._duration=0,this.videoConfig=null,this._interval)clearInterval(this._interval[e]),this._interval[e]=null;this.emit(xp),this.detachVideoEvents(),this._evHandlers.map((function(e){var n=Object.keys(e)[0],i="on".concat(n.charAt(0).toUpperCase()).concat(n.slice(1));"function"==typeof t[i]&&t.off(n,t[i])})),this._evHandlers=null,this.video=null,this.videoEventMiddleware={},this.removeAllListeners()}},{key:"play",value:function(){return this.video?this.video.play():null}},{key:"pause",value:function(){this.video&&this.video.pause()}},{key:"canPlayType",value:function(t){return this.video.canPlayType(t)}},{key:"getBufferedRange",value:function(t){var e=[0,0];if(!this.video)return e;t||(t=this.video.buffered);var n=this.video.currentTime;if(t)for(var i=0,r=t.length;i<r&&(e[0]=t.start(i),e[1]=t.end(i),!(e[0]<=n&&n<=e[1]));i++);return e[0]-n<=0&&n-e[1]<=0?e:[0,0]}},{key:"autoplay",get:function(){return this.video.autoplay},set:function(t){this.video.autoplay=t}},{key:"buffered",get:function(){return this.video.buffered}},{key:"buffered2",get:function(){return Wd.getBuffered2(this.video.buffered)}},{key:"bufferedPoint",get:function(){var t=this.video.buffered,e={start:0,end:0};if(!t||0===t.length)return e;for(var n=0;n<t.length;n++)if((t.start(n)<=this.currentTime||t.start(n)<.1)&&t.end(n)>=this.currentTime)return{start:t.start(n),end:t.end(n)};return e}},{key:"crossOrigin",get:function(){return this.video.crossOrigin},set:function(t){this.video.crossOrigin=t}},{key:"currentSrc",get:function(){return this.video.currentSrc},set:function(t){this.video.currentSrc=t}},{key:"currentTime",get:function(){return void 0!==this.video.currentTime?this.video.currentTime:this._currentTime},set:function(t){this.video.currentTime=t}},{key:"defaultMuted",get:function(){return this.video.defaultMuted},set:function(t){this.video.defaultMuted=t}},{key:"duration",get:function(){return this._duration}},{key:"ended",get:function(){return this.video.ended}},{key:"error",get:function(){return this.video.error}},{key:"errorNote",get:function(){var t=this.video.error;if(!t)return"";return["MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED"][t.code-1]}},{key:"loop",get:function(){return this.video.loop},set:function(t){this.video.loop=t}},{key:"muted",get:function(){return this.video.muted},set:function(t){this.video.muted=t}},{key:"networkState",get:function(){return this.video.networkState}},{key:"paused",get:function(){return this.video.paused}},{key:"playbackRate",get:function(){return this.video.playbackRate},set:function(t){this.video.defaultPlaybackRate=t,this.video.playbackRate=t}},{key:"played",get:function(){return this.video.played}},{key:"preload",get:function(){return this.video.preload},set:function(t){this.video.preload=t}},{key:"readyState",get:function(){return this.video.readyState}},{key:"seekable",get:function(){return this.video.seekable}},{key:"seeking",get:function(){return this.video.seeking}},{key:"src",get:function(){return this.video.src},set:function(t){this.emit(_p,t),this.emit(sp),this._currentTime=0,this._duration=0,/^blob/.test(this.video.currentSrc)||/^blob/.test(this.video.src)?this.onWaiting():this.video.src=t}},{key:"volume",get:function(){return this.video.volume},set:function(t){this.video.volume=t}},{key:"emit",value:function(t,e){for(var i,r=arguments.length,o=new Array(r>2?r-2:0),s=2;s<r;s++)o[s-2]=arguments[s];(i=xo(vi(n.prototype),"emit",this)).call.apply(i,[this,t,e].concat(o))}},{key:"on",value:function(t,e){for(var i,r=arguments.length,o=new Array(r>2?r-2:0),s=2;s<r;s++)o[s-2]=arguments[s];(i=xo(vi(n.prototype),"on",this)).call.apply(i,[this,t,e].concat(o))}},{key:"once",value:function(t,e){for(var i,r=arguments.length,o=new Array(r>2?r-2:0),s=2;s<r;s++)o[s-2]=arguments[s];(i=xo(vi(n.prototype),"once",this)).call.apply(i,[this,t,e].concat(o))}},{key:"off",value:function(t,e){for(var i,r=arguments.length,o=new Array(r>2?r-2:0),s=2;s<r;s++)o[s-2]=arguments[s];(i=xo(vi(n.prototype),"off",this)).call.apply(i,[this,t,e].concat(o))}},{key:"offAll",value:function(){xo(vi(n.prototype),"removeAllListeners",this).call(this)}}]),n}(Gh),Gp=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{name:"xgplayer",version:1,db:null,ojstore:{name:"xg-m4a",keypath:"vid"}};ui(this,t),this.indexedDB=window.indexedDB||window.webkitindexedDB,this.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange,this.myDB=e}return Co(t,[{key:"openDB",value:function(t){var e=this,n=this,i=this.myDB.version||1,r=n.indexedDB.open(n.myDB.name,i);r.onerror=function(t){},r.onsuccess=function(i){e.myDB.db=i.target.result,t.call(n)},r.onupgradeneeded=function(t){var e=t.target.result;t.target.transaction,e.objectStoreNames.contains(n.myDB.ojstore.name)||e.createObjectStore(n.myDB.ojstore.name,{keyPath:n.myDB.ojstore.keypath})}}},{key:"deletedb",value:function(){this.indexedDB.deleteDatabase(this.myDB.name)}},{key:"closeDB",value:function(){this.myDB.db.close()}},{key:"addData",value:function(t,e){for(var n,i=this.myDB.db.transaction(t,"readwrite").objectStore(t),r=0;r<e.length;r++)(n=i.add(e[r])).onerror=function(){},n.onsuccess=function(){}}},{key:"putData",value:function(t,e){for(var n,i=this.myDB.db.transaction(t,"readwrite").objectStore(t),r=0;r<e.length;r++)(n=i.put(e[r])).onerror=function(){},n.onsuccess=function(){}}},{key:"getDataByKey",value:function(t,e,n){var i=this,r=this.myDB.db.transaction(t,"readwrite").objectStore(t).get(e);r.onerror=function(){n.call(i,null)},r.onsuccess=function(t){var e=t.target.result;n.call(i,e)}}},{key:"deleteData",value:function(t,e){this.myDB.db.transaction(t,"readwrite").objectStore(t).delete(e)}},{key:"clearData",value:function(t){this.myDB.db.transaction(t,"readwrite").objectStore(t).clear()}}]),t}(),Wp=["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","MSFullscreenChange"],Yp=["requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen"],Kp=["exitFullscreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen"],zp=Kn,Xp=Dt,qp=ht("unscopables"),$p=Array.prototype;null==$p[qp]&&Xp.f($p,qp,{configurable:!0,value:zp(null)});var Zp=function(t){$p[qp][t]=!0},Jp=En,Qp=Zi.find,tg=Zp,eg="find",ng=!0;function ig(t,e,n){for(var i=arguments.length,r=new Array(i>3?i-3:0),o=3;o<i;o++)r[o-3]=arguments[o];var s=e.call.apply(e,[t].concat(r));n&&"function"==typeof n&&(s&&s.then?s.then((function(){for(var e=arguments.length,i=new Array(e),r=0;r<e;r++)i[r]=arguments[r];n.call.apply(n,[t].concat(i))})):n.call.apply(n,[t].concat(r)))}function rg(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{pre:null,next:null};return this.__hooks||(this.__hooks={}),!this.__hooks[t]&&(this.__hooks[t]=null),function(){var i=arguments,r=this;if(n.pre)try{var o;(o=n.pre).call.apply(o,[this].concat(Array.prototype.slice.call(arguments)))}catch(e){throw e.message="[pluginName: ".concat(this.pluginName,":").concat(t,":pre error] >> ").concat(e.message),e}if(this.__hooks&&this.__hooks[t])try{var s,a=(s=this.__hooks[t]).call.apply(s,[this,this].concat(Array.prototype.slice.call(arguments)));a?a.then?a.then((function(t){!1!==t&&ig.apply(void 0,[r,e,n.next].concat(Yh(i)))})).catch((function(t){throw t})):ig.apply(void 0,[this,e,n.next].concat(Array.prototype.slice.call(arguments))):void 0===a&&ig.apply(void 0,[this,e,n.next].concat(Array.prototype.slice.call(arguments)))}catch(e){throw e.message="[pluginName: ".concat(this.pluginName,":").concat(t,"] >> ").concat(e.message),e}else ig.apply(void 0,[this,e,n.next].concat(Array.prototype.slice.call(arguments)))}.bind(this)}function og(t,e){var n=this.__hooks;if(n)return n.hasOwnProperty(t)?(n&&(n[t]=e),!0):(console.warn("has no supported hook which name [".concat(t,"]")),!1)}function sg(t){if(this.plugins&&this.plugins[t.toLowerCase()]){for(var e=this.plugins[t.toLowerCase()],n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return e.useHooks&&e.useHooks.apply(e,i)}}function ag(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];t.__hooks={},e&&e.map((function(e){t.__hooks[e]=null})),Object.defineProperty(t,"hooks",{get:function(){return t.__hooks&&Object.keys(t.__hooks).map((function(e){if(t.__hooks[e])return e}))}})}function cg(t){t.__hooks=null}function lg(t,e,n){for(var i=arguments.length,r=new Array(i>3?i-3:0),o=3;o<i;o++)r[o-3]=arguments[o];if(!t.__hooks||!t.__hooks[e])return n.call.apply(n,[t,t].concat(r));var s,a=(s=t.__hooks[e]).call.apply(s,[t,t].concat(r));if(a&&a.then)a.then((function(e){return!1===e?null:n.call.apply(n,[t,t].concat(r))})).catch((function(t){console.warn("[runHooks]".concat(e," reject"),t.message)}));else if(!1!==a)return n.call.apply(n,[t,t].concat(r))}function ug(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function hg(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ug(Object(n),!0).forEach((function(e){yi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ug(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function fg(t,e){Hd.logError("[".concat(t,"] event or callback cant be undefined or null when call ").concat(e))}eg in[]&&Array(1).find((function(){ng=!1})),Jp({target:"Array",proto:!0,forced:ng},{find:function(t){return Qp(this,t,arguments.length>1?arguments[1]:void 0)}}),tg(eg);var dg=function(){function t(e){ui(this,t),Wd.checkIsFunction(this.beforeCreate)&&this.beforeCreate(e),ag(this),this.__args=e,this.__events={},this.config=e.config||{},this.player=null,this.playerConfig={},this.pluginName="",this.__init(e)}return Co(t,[{key:"beforeCreate",value:function(t){}},{key:"afterCreate",value:function(){}},{key:"beforePlayerInit",value:function(){}},{key:"onPluginsReady",value:function(){}},{key:"afterPlayerInit",value:function(){}},{key:"destroy",value:function(){}},{key:"__init",value:function(t){this.player=t.player,this.playerConfig=t.player&&t.player.config,this.pluginName=t.pluginName?t.pluginName.toLowerCase():this.constructor.pluginName.toLowerCase(),this.logger=t.player&&t.player.logger}},{key:"updateLang",value:function(t){}},{key:"lang",get:function(){return this.player.lang}},{key:"i18n",get:function(){return this.player.i18n}},{key:"i18nKeys",get:function(){return this.player.i18nKeys}},{key:"on",value:function(t,e){var n=this;t&&e&&this.player?"string"==typeof t?(this.__events[t]=e,this.player.on(t,e)):Array.isArray(t)&&t.forEach((function(t){n.__events[t]=e,n.player.on(t,e)})):fg(this.pluginName,"plugin.on(event, callback)")}},{key:"once",value:function(t,e){t&&e&&this.player?this.player.once(t,e):fg(this.pluginName,"plugin.once(event, callback)")}},{key:"off",value:function(t,e){var n=this;t&&e&&this.player?"string"==typeof t?(delete this.__events[t],this.player.off(t,e)):Array.isArray(t)&&t.forEach((function(i){delete n.__events[t],n.player.off(i,e)})):fg(this.pluginName,"plugin.off(event, callback)")}},{key:"offAll",value:function(){var t=this;Object.keys(this.__events).map((function(e){t.__events[e]&&t.off(e,t.__events[e]),e&&delete t.__events[e]})),this.__events={}}},{key:"emit",value:function(t,e){this.player&&this.player.emit(t,e)}},{key:"emitUserAction",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(e&&t){var r="String"===Wd.typeOf(t)?t:t.type||"";t=new Event(r),"Array"!==Wd.typeOf(n)&&(n=[n]),this.emit(Fp,hg({action:e,pluginName:this.pluginName,currentTime:this.player.currentTime,duration:this.player.duration,ended:this.player.ended,event:t,props:n},i))}}},{key:"hook",value:function(t,e){return rg.call.apply(rg,[this].concat(Array.prototype.slice.call(arguments)))}},{key:"useHooks",value:function(t,e){for(var n=arguments.length,i=new Array(n>2?n-2:0),r=2;r<n;r++)i[r-2]=arguments[r];return og.call.apply(og,[this].concat(Array.prototype.slice.call(arguments)))}},{key:"registerPlugin",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(this.player)return n&&(e.pluginName=n),this.player.registerPlugin({plugin:t,options:e})}},{key:"getPlugin",value:function(t){return this.player?this.player.getPlugin(t):null}},{key:"__destroy",value:function(){var t=this,e=this.player,n=this.pluginName;this.offAll(),Wd.clearAllTimers(this),Wd.checkIsFunction(this.destroy)&&this.destroy(),["player","playerConfig","pluginName","logger","__args","__hooks"].map((function(e){t[e]=null})),e.unRegisterPlugin(n),cg(this)}}],[{key:"defineGetterOrSetter",value:function(t,e){for(var n in e)Object.defineProperty(t,n,e[n])}},{key:"defaultConfig",get:function(){return{}}},{key:"pluginName",get:function(){return"pluginName"}}]),t}();if("undefined"!=typeof Element&&!Element.prototype.matches){var pg=Element.prototype;pg.matches=pg.matchesSelector||pg.mozMatchesSelector||pg.msMatchesSelector||pg.oMatchesSelector||pg.webkitMatchesSelector}var gg=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}};function vg(t,e,n,i,r){var o=yg.apply(this,arguments);return t.addEventListener(n,o,r),{destroy:function(){t.removeEventListener(n,o,r)}}}function yg(t,e,n,i){return function(n){n.delegateTarget=gg(n.target,e),n.delegateTarget&&i.call(t,n)}}var mg=function(t,e,n,i,r){return"function"==typeof t.addEventListener?vg.apply(null,arguments):"function"==typeof n?vg.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,(function(t){return vg(t,e,n,i,r)})))};function kg(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var bg={CONTROLS:"controls",ROOT:"root"},wg={ROOT:"root",ROOT_LEFT:"rootLeft",ROOT_RIGHT:"rootRight",ROOT_TOP:"rootTop",CONTROLS_LEFT:"controlsLeft",CONTROLS_RIGTH:"controlsRight",CONTROLS_RIGHT:"controlsRight",CONTROLS_CENTER:"controlsCenter",CONTROLS:"controls"};function Cg(t){return!!t&&(t.indexOf&&/^http/.test(t))}function xg(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=null;if(t instanceof window.Element)return Wd.addClass(t,n),Object.keys(i).map((function(e){t.setAttribute(e,i[e])})),t;if(Cg(t)||Cg(t.url))return i.src=Cg(t)?t:t.url||"",o=Wd.createDom(t.tag||"img","",i,"xg-img ".concat(n));if("function"==typeof t)try{return(o=t())instanceof window.Element?(Wd.addClass(o,n),Object.keys(i).map((function(t){o.setAttribute(t,i[t])})),o):(Hd.logWarn("warn>>icons.".concat(e," in config of plugin named [").concat(r,"] is a function mast return an Element Object")),null)}catch(t){return Hd.logError("Plugin named [".concat(r,"]:createIcon"),t),null}return"string"==typeof t?Wd.createDomFromHtml(t,i,n):(Hd.logWarn("warn>>icons.".concat(e," in config of plugin named [").concat(r,"] is invalid")),null)}function _g(t,e){var n=e.config.icons||e.playerConfig.icons;Object.keys(t).map((function(i){var r=t[i],o=r&&r.class?r.class:"",s=r&&r.attr?r.attr:{},a=null;n&&n[i]&&(o=function(t,e){return"object"===di(t)&&t.class&&"string"==typeof t.class?"".concat(e," ").concat(t.class):e}(n[i],o),s=function(t,e){return"object"===di(t)&&t.attr&&"object"===di(t.attr)&&Object.keys(t.attr).map((function(n){e[n]=t.attr[n]})),e}(n[i],s),a=xg(n[i],i,o,s,e.pluginName)),!a&&r&&(a=xg(r.icon?r.icon:r,s,o,{},e.pluginName)),e.icons[i]=a}))}var Eg,Tg,Sg,Pg=function(t){fi(n,t);var e=kg(n);function n(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ui(this,n),(t=e.call(this,i)).__delegates=[],t}return Co(n,[{key:"__init",value:function(t){if(xo(vi(n.prototype),"__init",this).call(this,t),t.root){var e=t.root,i=null;this.icons={},this.root=null,this.parent=null,_g(this.registerIcons()||{},this),this.langText={};var r,o,s=this.registerLanguageTexts()||{};r=s,o=this,Object.keys(r).map((function(t){Object.defineProperty(o.langText,t,{get:function(){var e=o.lang;return r[t][e]||r[t].zh}})}));var a="";try{a=this.render()}catch(t){throw Hd.logError("Plugin:".concat(this.pluginName,":render"),t),new Error("Plugin:".concat(this.pluginName,":render:").concat(t.message))}if(a)(i=n.insert(a,e,t.index)).setAttribute("data-index",t.index);else{if(!t.tag)return;(i=Wd.createDom(t.tag,"",t.attr,t.name)).setAttribute("data-index",t.index),e.appendChild(i)}this.root=i,this.parent=e;var c=this.config.attr||{},l=this.config.style||{};this.setAttr(c),this.setStyle(l),this.config.index&&this.root.setAttribute("data-index",this.config.index),this.__registerChildren()}}},{key:"__registerChildren",value:function(){var t=this;if(this.root){this._children=[];var e=this.children();e&&"object"===di(e)&&Object.keys(e).length>0&&Object.keys(e).map((function(n){var i,r,o=n,s=e[o],a={root:t.root};"function"==typeof s?(i=t.config[o]||{},r=s):"object"===di(s)&&"function"==typeof s.plugin&&(i=s.options?Wd.deepCopy(t.config[o]||{},s.options):t.config[o]||{},r=s.plugin),a.config=i,void 0!==i.index&&(a.index=i.index),i.root&&(a.root=i.root),t.registerPlugin(r,a,o)}))}}},{key:"updateLang",value:function(t){t||(t=this.lang);var e=this.root,n=this.i18n,i=this.langText;e&&function t(e,n){for(var i=0;i<e.children.length;i++)e.children[i].children.length>0?t(e.children[i],n):n(e.children[i])}(e,(function(e){var r=e.getAttribute&&e.getAttribute("lang-key");if(r){var o=n[r.toUpperCase()]||i[r];o&&(e.innerHTML="function"==typeof o?o(t):o)}}))}},{key:"lang",get:function(){return this.player.lang}},{key:"changeLangTextKey",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=this.i18n||{},i=this.langText;t.setAttribute&&t.setAttribute("lang-key",e);var r=n[e.toUpperCase()]||i[e];r&&(t.innerHTML=r)}},{key:"plugins",value:function(){return this._children}},{key:"children",value:function(){return{}}},{key:"registerPlugin",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";e.root=e.root||this.root;var r=xo(vi(n.prototype),"registerPlugin",this).call(this,t,e,i);return this._children.push(r),r}},{key:"registerIcons",value:function(){return{}}},{key:"registerLanguageTexts",value:function(){return{}}},{key:"find",value:function(t){if(this.root)return this.root.querySelector(t)}},{key:"bind",value:function(t,e,i){var r=this;if(arguments.length<3&&"function"==typeof e)Array.isArray(t)?t.forEach((function(t){r.bindEL(t,e)})):this.bindEL(t,e);else{var o=n.delegate.call(this,this.root,t,e,i);this.__delegates=this.__delegates.concat(o)}}},{key:"unbind",value:function(t,e){var n=this;if(arguments.length<3&&"function"==typeof e)Array.isArray(t)?t.forEach((function(t){n.unbindEL(t,e)})):this.unbindEL(t,e);else for(var i="".concat(t,"_").concat(e),r=0;r<this.__delegates.length;r++)if(this.__delegates[r].key===i){this.__delegates[r].destroy(),this.__delegates.splice(r,1);break}}},{key:"setStyle",value:function(t,e){var n=this;if(this.root)return"String"===Wd.typeOf(t)?this.root.style[t]=e:void("Object"===Wd.typeOf(t)&&Object.keys(t).map((function(e){n.root.style[e]=t[e]})))}},{key:"setAttr",value:function(t,e){var n=this;if(this.root)return"String"===Wd.typeOf(t)?this.root.setAttribute(t,e):void("Object"===Wd.typeOf(t)&&Object.keys(t).map((function(e){n.root.setAttribute(e,t[e])})))}},{key:"setHtml",value:function(t,e){this.root&&(this.root.innerHTML=t,"function"==typeof e&&e())}},{key:"bindEL",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.root&&"on".concat(t)in this.root&&"function"==typeof e&&this.root.addEventListener(t,e,n)}},{key:"unbindEL",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.root&&"on".concat(t)in this.root&&"function"==typeof e&&this.root.removeEventListener(t,e,n)}},{key:"show",value:function(t){if(this.root)return this.root.style.display=void 0!==t?t:"block","none"===window.getComputedStyle(this.root,null).getPropertyValue("display")?this.root.style.display="block":void 0}},{key:"hide",value:function(){this.root&&(this.root.style.display="none")}},{key:"appendChild",value:function(t,e){if(arguments.length<2&&arguments[0]instanceof window.Element)return this.root.appendChild(arguments[0]);if(!(e&&e instanceof window.Element))return null;try{return"string"==typeof t?this.find(t).appendChild(e):t.appendChild(e)}catch(t){return Hd.logError("Plugin:appendChild",t),null}}},{key:"render",value:function(){return""}},{key:"destroy",value:function(){}},{key:"__destroy",value:function(){var t=this,e=this.player;this.__delegates.map((function(t){t.destroy()})),this.__delegates=[],this._children instanceof Array&&(this._children.map((function(t){e.unRegisterPlugin(t.pluginName)})),this._children=null),this.root&&(this.root.hasOwnProperty("remove")?this.root.remove():this.root.parentNode&&this.root.parentNode.removeChild(this.root)),xo(vi(n.prototype),"__destroy",this).call(this),this.icons={},["root","parent"].map((function(e){t[e]=null}))}}],[{key:"insert",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=e.children.length,r=Number(n),o=t instanceof window.Node;if(i){for(var s=0,a=null,c="";s<i;s++){a=e.children[s];var l=Number(a.getAttribute("data-index"));if(l>=r){c="beforebegin";break}l<r&&(c="afterend")}return o?"afterend"===c?e.appendChild(t):e.insertBefore(t,a):a.insertAdjacentHTML(c,t),"afterend"===c?e.children[e.children.length-1]:e.children[s]}return o?e.appendChild(t):e.insertAdjacentHTML("beforeend",t),e.children[e.children.length-1]}},{key:"defaultConfig",get:function(){return{}}},{key:"delegate",value:function(t,e,n,i){var r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=[];if(t instanceof window.Node&&"function"==typeof i)if(Array.isArray(n))n.forEach((function(n){var s=mg(t,e,n,i,r);s.key="".concat(e,"_").concat(n),o.push(s)}));else{var s=mg(t,e,n,i,r);s.key="".concat(e,"_").concat(n),o.push(s)}return o}},{key:"ROOT_TYPES",get:function(){return bg}},{key:"POSITIONS",get:function(){return wg}}]),n}(dg),Rg=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})),Og=J,Ig=q,Lg=Rg,Ag=re("IE_PROTO"),Dg=Object.prototype,Mg=Lg?Object.getPrototypeOf:function(t){return t=Ig(t),Og(t,Ag)?t[Ag]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?Dg:null},Ng=r,Fg=Mg,jg=Wt,Bg=J,Hg=ht("iterator"),Ug=!1;[].keys&&("next"in(Sg=[].keys())?(Tg=Fg(Fg(Sg)))!==Object.prototype&&(Eg=Tg):Ug=!0),(null==Eg||Ng((function(){var t={};return Eg[Hg].call(t)!==t})))&&(Eg={}),Bg(Eg,Hg)||jg(Eg,Hg,(function(){return this}));var Vg={IteratorPrototype:Eg,BUGGY_SAFARI_ITERATORS:Ug},Gg=Vg.IteratorPrototype,Wg=Kn,Yg=f,Kg=Ni,zg=gc,Xg=function(){return this},qg=En,$g=function(t,e,n){var i=e+" Iterator";return t.prototype=Wg(Gg,{next:Yg(1,n)}),Kg(t,i,!1),zg[i]=Xg,t},Zg=Mg,Jg=lc,Qg=Ni,tv=Wt,ev=Yt.exports,nv=gc,iv=Vg.IteratorPrototype,rv=Vg.BUGGY_SAFARI_ITERATORS,ov=ht("iterator"),sv="keys",av="values",cv="entries",lv=function(){return this},uv=function(t,e,n,i,r,o,s){$g(n,e,i);var a,c,l,u=function(t){if(t===r&&g)return g;if(!rv&&t in d)return d[t];switch(t){case sv:case av:case cv:return function(){return new n(this,t)}}return function(){return new n(this)}},h=e+" Iterator",f=!1,d=t.prototype,p=d[ov]||d["@@iterator"]||r&&d[r],g=!rv&&p||u(r),v="Array"==e&&d.entries||p;if(v&&(a=Zg(v.call(new t)),iv!==Object.prototype&&a.next&&(Zg(a)!==iv&&(Jg?Jg(a,iv):"function"!=typeof a[ov]&&tv(a,ov,lv)),Qg(a,h,!0))),r==av&&p&&p.name!==av&&(f=!0,g=function(){return p.call(this)}),d[ov]!==g&&tv(d,ov,g),nv[e]=g,r)if(c={values:u(av),keys:o?g:u(sv),entries:u(cv)},s)for(l in c)(rv||f||!(l in d))&&ev(d,l,c[l]);else qg({target:e,proto:!0,forced:rv||f},c);return c},hv=w,fv=Zp,dv=gc,pv=be,gv=uv,vv="Array Iterator",yv=pv.set,mv=pv.getterFor(vv),kv=gv(Array,"Array",(function(t,e){yv(this,{type:vv,target:hv(t),index:0,kind:e})}),(function(){var t=mv(this),e=t.target,n=t.kind,i=t.index++;return!e||i>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:i,done:!1}:"values"==n?{value:e[i],done:!1}:{value:[i,e[i]],done:!1}}),"values");dv.Arguments=dv.Array,fv("keys"),fv("values"),fv("entries");var bv=ca.charAt,wv=wi,Cv=be,xv=uv,_v="String Iterator",Ev=Cv.set,Tv=Cv.getterFor(_v);xv(String,"String",(function(t){Ev(this,{type:_v,string:wv(t),index:0})}),(function(){var t,e=Tv(this),n=e.string,i=e.index;return i>=n.length?{value:void 0,done:!0}:(t=bv(n,i),e.index+=t.length,{value:t,done:!1})}));var Sv=n,Pv=os,Rv=kv,Ov=Wt,Iv=ht,Lv=Iv("iterator"),Av=Iv("toStringTag"),Dv=Rv.values;for(var Mv in Pv){var Nv=Sv[Mv],Fv=Nv&&Nv.prototype;if(Fv){if(Fv[Lv]!==Dv)try{Ov(Fv,Lv,Dv)}catch(t){Fv[Lv]=Dv}if(Fv[Av]||Ov(Fv,Av,Mv),Pv[Mv])for(var jv in Rv)if(Fv[jv]!==Rv[jv])try{Ov(Fv,jv,Rv[jv])}catch(t){Fv[jv]=Rv[jv]}}}var Bv=function(){function t(){var e=this;if(ui(this,t),this.__handlers=[],this.timeStamp=0,this.observer=null,window.ResizeObserver)try{this.observer=new window.ResizeObserver((function(t){var n=(new Date).getTime();n-e.timeStamp<100||(e.timeStamp=n,e.__trigger(t))})),this.timeStamp=(new Date).getTime()}catch(t){console.error(t)}}return Co(t,[{key:"addObserver",value:function(t,e){if(this.observer){this.observer&&this.observer.observe(t);for(var n=this.__handlers,i=-1,r=0;r<n.length;r++)n[r]&&t===n[r].target&&(i=r);i>-1?this.__handlers[i].handler=e:this.__handlers.push({target:t,handler:e})}}},{key:"unObserver",value:function(t){var e=-1;this.__handlers.map((function(n,i){t===n.target&&(e=i)}));try{this.observer&&this.observer.unobserve(t)}catch(t){}this.observer&&this.observer.unobserve(t),e>-1&&this.__handlers.splice(e,1)}},{key:"destroyObserver",value:function(){this.observer&&this.observer.disconnect(),this.observer=null,this.__handlers=null}},{key:"__runHandler",value:function(t){for(var e=this.__handlers,n=0;n<e.length;n++)if(e[n]&&t===e[n].target){try{e[n].handler(t)}catch(t){console.error(t)}return!0}return!1}},{key:"__trigger",value:function(t){for(var e=0;e<t.length;e++){if(this.__runHandler(t[e].target))break}}}]),t}(),Hv=null;function Uv(t){return"Object"===Object.prototype.toString.call(t).match(/([^\s.*]+)(?=]$)/g)[0]}function Vv(t){return"Boolean"===Object.prototype.toString.call(t).match(/([^\s.*]+)(?=]$)/g)[0]}var Gv={init:function(t){var e,n,i=t._pluginInfoId;i||(i=(new Date).getTime(),t._pluginInfoId=i),this.pluginGroup||(this.pluginGroup={}),!t.config.closeResizeObserver&&(e=t.root,n=function(){t.resize()},Hv||(Hv=new Bv),Hv.addObserver(e,n)),this.pluginGroup[i]={_player:t,_originalOptions:t.config||{}}},checkPlayerRoot:function(t){if(this.pluginGroup){for(var e=Object.keys(this.pluginGroup),n=0;n<e.length;n++){var i=this.pluginGroup[e[n]]._player;if(i.root===t)return i}return null}return null},lazyRegister:function(t,e){var n=this,i=e.timeout||1500;return Promise.race([e.loader().then((function(e){var i;i=e&&e.__esModule?e.default:e,n.register(t,i,e.options)})),new Promise((function(t,e){setTimeout((function(){e(new Error("timeout"))}),i)}))])},register:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t&&e&&"function"==typeof e&&void 0!==e.prototype){var i=t._pluginInfoId;i&&this.pluginGroup&&this.pluginGroup[i]||(this.init(t),i=t._pluginInfoId),this.pluginGroup[i]._plugins||(this.pluginGroup[i]._plugins=[]);var r=this.pluginGroup[i]._plugins,o=this.pluginGroup[i]._originalOptions;n.player=this.pluginGroup[i]._player;var s=n.pluginName||e.pluginName;if(!s)throw new Error("The property pluginName is necessary");if(!e.isSupported||e.isSupported()){n.config||(n.config={});for(var a=Object.keys(o),c=0;c<a.length;c++)if(s.toLowerCase()===a[c].toLowerCase()){var l=o[a[c]];Uv(l)&&(n.config=Object.assign({},n.config,o[a[c]])),Vv(l)&&(n.config.disable=!l);break}e.defaultConfig&&Object.keys(e.defaultConfig).map((function(t){void 0===n.config[t]&&(n.config[t]=e.defaultConfig[t])})),n.root?"string"==typeof n.root&&(n.root=t[n.root]):n.root=t.root,n.index=n.config.index||0;try{r[s.toLowerCase()]&&(this.unRegister(i,s.toLowerCase()),console.warn("the is one plugin with same pluginName [".concat(s,"] exist, destroy the old instance")));var u=new e(n);return r[s.toLowerCase()]=u,r[s.toLowerCase()].func=e,u&&"function"==typeof u.afterCreate&&u.afterCreate(),u}catch(t){throw console.error(t),t}}else console.warn("not supported plugin [".concat(s,"]"))}},unRegister:function(t,e){t._pluginInfoId&&(t=t._pluginInfoId),e=e.toLowerCase();try{var n=this.pluginGroup[t]._plugins[e];n&&(n.pluginName&&n.__destroy(),delete this.pluginGroup[t]._plugins[e])}catch(n){console.error("[unRegister:".concat(e,"] cgid:[").concat(t,"] error"),n)}},deletePlugin:function(t,e){var n=t._pluginInfoId;n&&this.pluginGroup&&this.pluginGroup[n]&&this.pluginGroup[n]._plugins&&delete this.pluginGroup[n]._plugins[e]},getPlugins:function(t){var e=t._pluginInfoId;return e?this.pluginGroup[e]._plugins:{}},findPlugin:function(t,e){var n=t._pluginInfoId;if(!this.pluginGroup||!n)return null;var i=e.toLowerCase();return this.pluginGroup[n]._plugins[i]},beforeInit:function(t){var e=this;function n(t){return t&&t.then?t:new Promise((function(t){t()}))}return new Promise((function(i){if(e.pluginGroup)return(t._loadingPlugins&&t._loadingPlugins.length?Promise.all(t._loadingPlugins):Promise.resolve()).then((function(){var r=t._pluginInfoId;if(e.pluginGroup[r]){for(var o=e.pluginGroup[r]._plugins,s=[],a=0,c=Object.keys(o);a<c.length;a++){var l=c[a];if(o[l]&&o[l].beforePlayerInit)try{var u=o[l].beforePlayerInit();s.push(n(u))}catch(t){throw s.push(n(null)),t}}Promise.all([].concat(s)).then((function(){i()})).catch((function(t){console.error(t),i()}))}else i()}))}))},afterInit:function(t){var e=t._pluginInfoId;if(this.pluginGroup&&e)for(var n=this.pluginGroup[e]._plugins,i=0,r=Object.keys(n);i<r.length;i++){var o=r[i];n[o]&&n[o].afterPlayerInit&&n[o].afterPlayerInit()}},setLang:function(t,e){var n=e._pluginInfoId;if(this.pluginGroup&&n){var i=this.pluginGroup[n]._plugins;Object.keys(i).map((function(e){if(i[e].updateLang)i[e].updateLang(t);else try{i[e].lang=t}catch(t){console.warn("".concat(e," setLang"))}}))}},reRender:function(t){var e=t._pluginInfoId;if(e){for(var n={},i=this.pluginGroup[e]._plugins,r=0,o=Object.keys(i);r<o.length;r++){var s=o[r];n[s]={plugin:i[s].func,options:i[s]._args},this.unRegister(e,s)}for(var a=0,c=Object.keys(n);a<c.length;a++){var l=c[a];this.register(e,l,n[l].plugin,n[l].options)}}},onPluginsReady:function(t){var e=t._pluginInfoId,n=this.pluginGroup[e]._plugins;e&&n&&Object.keys(n).map((function(t){n[t].onPluginsReady&&"function"==typeof n[t].onPluginsReady&&n[t].onPluginsReady()}))},destroy:function(t){var e=t._pluginInfoId;if(this.pluginGroup[e]){var n,i;n=t.root,Hv.unObserver(n,i);for(var r=this.pluginGroup[e]._plugins,o=0,s=Object.keys(r);o<s.length;o++){var a=s[o];this.unRegister(e,a)}delete this.pluginGroup[e],delete t._pluginInfoId}}},Wv={DEFAULT:"xgplayer",DEFAULT_SKIN:"xgplayer-skin-default",ENTER:"xgplayer-is-enter",PAUSED:"xgplayer-pause",PLAYING:"xgplayer-playing",ENDED:"xgplayer-ended",CANPLAY:"xgplayer-canplay",LOADING:"xgplayer-isloading",ERROR:"xgplayer-is-error",REPLAY:"xgplayer-replay",NO_START:"xgplayer-nostart",ACTIVE:"xgplayer-inactive",FULLSCREEN:"xgplayer-is-fullscreen",CSS_FULLSCREEN:"xgplayer-is-cssfullscreen",PARENT_FULLSCREEN:"xgplayer-fullscreen-parent",ROTATE_FULLSCREEN:"xgplayer-rotate-fullscreen",PARENT_ROTATE_FULLSCREEN:"xgplayer-rotate-parent",INNER_FULLSCREEN:"xgplayer-inner-fullscreen",NO_CONTROLS:"no-controls",FLEX_CONTROLS:"flex-controls",CONTROLS_FOLLOW:"controls-follow",AUTOHIDE:"xgplayer_autohide",NOT_ALLOW_AUTOPLAY:"not-allow-autoplay",SEEKING:"seeking",PC:"xgplayer-pc",MOBILE:"xgplayer-mobile",MINI:"xgplayer-mini"};var Yv=0,Kv=1,zv=2,Xv=3,qv=4,$v=5,Zv=6,Jv=7,Qv=["ERROR","INITIAL","READY","ATTACHING","ATTACHED","NOTALLOW","RUNNING","ENDED","DESTROYED"];function ty(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var ey=function(t){fi(n,t);var e=ty(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"onMouseEnter",(function(e){var n=pi(t).player;n.userTimer&&(Wd.clearTimeout(n,n.userTimer),clearTimeout(n.userTimer))})),yi(pi(t),"onMouseLeave",(function(){var e=pi(t),n=e.player,i=e.playerConfig,r=i.closeControlsBlur?200:i.inactive;n.focus({hideDelay:r})})),t}return Co(n,[{key:"beforeCreate",value:function(t){t.config.mode||"mobile"!==Xd.device||(t.config.mode="flex"),t.player.config.marginControls&&(t.config.autoHide=!1)}},{key:"afterCreate",value:function(){var t=this,e=this.config,n=e.disable,i=e.height,r=e.mode,o=e.autoHide;if(!n){"flex"===r&&this.player.addClass(Wv.FLEX_CONTROLS),o&&this.player.addClass(Wv.AUTOHIDE);var s={height:"".concat(i,"px")};Object.keys(s).map((function(e){t.root.style[e]=s[e]})),this.left=this.find("xg-left-grid"),this.center=this.find("xg-center-grid"),this.right=this.find("xg-right-grid"),this.innerRoot=this.find("xg-inner-controls"),this.on(Sp,(function(e){e?Wd.addClass(t.root,"mini-controls"):Wd.removeClass(t.root,"mini-controls")})),"mobile"!==Xd.device&&(this.bind("mouseenter",this.onMouseEnter),this.bind("mouseleave",this.onMouseLeave))}}},{key:"focus",value:function(){this.player.focus({autoHide:!1})}},{key:"unFocus",value:function(){this.player.focus({autoHide:!0})}},{key:"blur",value:function(){this.player.blur({ignorePaused:!0})}},{key:"recoverAutoHide",value:function(){this.config.autoHide&&Wd.addClass(this.root,"control_autohide")}},{key:"pauseAutoHide",value:function(){Wd.removeClass(this.root,"control_autohide")}},{key:"show",value:function(){Wd.addClass(this.root,"show")}},{key:"hide",value:function(){Wd.removeClass(this.root,"show")}},{key:"mode",get:function(){return this.config.mode}},{key:"registerPlugin",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2?arguments[2]:void 0;if(this.root){var r=t.defaultConfig||{};if(!e.root){var o=e.position?e.position:e.config&&e.config.position?e.config.position:r.position;switch(o){case wg.CONTROLS_LEFT:e.root=this.left;break;case wg.CONTROLS_RIGHT:e.root=this.right;break;case wg.CONTROLS_CENTER:e.root=this.center;break;case wg.CONTROLS:e.root=this.root;break;default:e.root=this.left}return xo(vi(n.prototype),"registerPlugin",this).call(this,t,e,i)}}}},{key:"destroy",value:function(){"mobile"!==Xd.device&&(this.unbind("mouseenter",this.onMouseEnter),this.unbind("mouseleave",this.onMouseLeave))}},{key:"render",value:function(){var t=this.config,e=t.mode,n=t.autoHide,i=t.initShow;if(!t.disable){var r=Wd.classNames({"xgplayer-controls":!0},{"flex-controls":"flex"===e},{"bottom-controls":"bottom"===e},{control_autohide:n},{controls_permanent:!n},{"xgplayer-controls-initshow":i||!n});return'<xg-controls class="'.concat(r,'" unselectable="on" onselectstart="return false">\n <xg-inner-controls class="xg-inner-controls xg-pos">\n <xg-left-grid class="xg-left-grid">\n </xg-left-grid>\n <xg-center-grid class="xg-center-grid"></xg-center-grid>\n <xg-right-grid class="xg-right-grid">\n </xg-right-grid>\n </xg-inner-controls>\n </xg-controls>')}}}],[{key:"pluginName",get:function(){return"controls"}},{key:"defaultConfig",get:function(){return{disable:!1,autoHide:!0,mode:"",initShow:!1}}}]),n}(Pg),ny={},iy={},ry=[],oy={};function sy(){Object.keys(ny.en).map((function(t){iy[t]=t.toLowerCase()}))}function ay(t){("Array"!==Wd.typeOf(t)?Object.keys(t).map((function(e){return{LANG:"zh"===e?"zh-cn":e,TEXT:t[e]}})):t).map((function(t){ny[t.LANG]?Wd.deepMerge(ny[t.LANG]||{},t.TEXT||{}):oy[t.LANG]=t.TEXT})),sy()}function cy(t){var e=t.LANG,n=t.TEXT||{};ny[e]||ry.push(e),ny[e]?Wd.deepMerge(n,ny[e]):ny[e]=n,oy[e]&&(ay([{LANG:e,TEXT:oy[e]}]),delete oy[e]),"zh-cn"===e&&(ny.zh=ny["zh-cn"]),sy()}cy({LANG:"en",TEXT:{ERROR_TYPES:{network:{code:1,msg:"video download error"},mse:{code:2,msg:"stream append error"},parse:{code:3,msg:"parsing error"},format:{code:4,msg:"wrong format"},decoder:{code:5,msg:"decoding error"},runtime:{code:6,msg:"grammatical errors"},timeout:{code:7,msg:"play timeout"},other:{code:8,msg:"other errors"}},HAVE_NOTHING:"There is no information on whether audio/video is ready",HAVE_METADATA:"Audio/video metadata is ready ",HAVE_CURRENT_DATA:"Data about the current play location is available, but there is not enough data to play the next frame/millisecond",HAVE_FUTURE_DATA:"Current and at least one frame of data is available",HAVE_ENOUGH_DATA:"The available data is sufficient to start playing",NETWORK_EMPTY:"Audio/video has not been initialized",NETWORK_IDLE:"Audio/video is active and has been selected for resources, but no network is used",NETWORK_LOADING:"The browser is downloading the data",NETWORK_NO_SOURCE:"No audio/video source was found",MEDIA_ERR_ABORTED:"The fetch process is aborted by the user",MEDIA_ERR_NETWORK:"An error occurred while downloading",MEDIA_ERR_DECODE:"An error occurred while decoding",MEDIA_ERR_SRC_NOT_SUPPORTED:"Audio/video is not supported",REPLAY:"Replay",ERROR:"Network is offline",PLAY_TIPS:"Play",PAUSE_TIPS:"Pause",PLAYNEXT_TIPS:"Play next",DOWNLOAD_TIPS:"Download",ROTATE_TIPS:"Rotate",RELOAD_TIPS:"Reload",FULLSCREEN_TIPS:"Fullscreen",EXITFULLSCREEN_TIPS:"Exit fullscreen",CSSFULLSCREEN_TIPS:"Cssfullscreen",EXITCSSFULLSCREEN_TIPS:"Exit cssfullscreen",TEXTTRACK:"Caption",PIP:"PIP",SCREENSHOT:"Screenshot",LIVE:"LIVE",OFF:"Off",OPEN:"Open",MINI_DRAG:"Click and hold to drag",MINISCREEN:"Miniscreen",REFRESH_TIPS:"Please Try",REFRESH:"Refresh",FORWARD:"forward",LIVE_TIP:"Live"}});var ly={get textKeys(){return iy},get langKeys(){return ry},get lang(){var t={};return ry.map((function(e){t[e]=ny[e]})),t.zh=ny["zh-cn"],t},extend:ay,use:cy};function uy(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function hy(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?uy(Object(n),!0).forEach((function(e){yi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):uy(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function fy(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var dy=["play","pause","replay","retry"],py=function(t){fi(n,t);var e=fy(n);function n(t){var i;ui(this,n);var r,o=Wd.deepMerge({id:"",el:null,url:"",nullUrlStart:!1,width:600,height:337.5,fluid:!1,fitVideoSize:"fixed",videoFillMode:"auto",volume:.6,autoplay:!1,autoplayMuted:!1,loop:!1,isLive:!1,zoom:1,videoInit:!0,poster:"",isMobileSimulateMode:!1,defaultPlaybackRate:1,execBeforePluginsCall:null,allowSeekAfterEnded:!0,enableContextmenu:!1,closeVideoClick:!1,closeVideoDblclick:!1,closePlayerBlur:!1,closeDelayBlur:!1,leavePlayerTime:3e3,closePlayVideoFocus:!1,closePauseVideoFocus:!1,closeFocusVideoFocus:!1,closeControlsBlur:!1,videoAttributes:{},startTime:0,seekedStatus:"play",miniprogress:!1,disableSwipeHandler:function(){},enableSwipeHandler:function(){},ignores:[],whitelist:[],inactive:3e3,lang:(document.documentElement.getAttribute("lang")||navigator.language||"zh-cn").toLocaleLowerCase(),controls:!0,marginControls:!1,fullscreenTarget:null,controlsList:[],screenShot:!1,rotate:!1,pip:!1,download:!1,mini:!1,cssFullscreen:!0,keyShortcut:!0,presets:[],plugins:[],playbackRate:1,definition:{list:[]},playsinline:!0,customDuration:0,timeOffset:0,icons:{},i18n:[],thumbnail:null,commonStyle:{progressColor:"",playedColor:"",cachedColor:"",sliderBtnStyle:{},volumeColor:""}},t);ag(pi(i=e.call(this,o)),dy),i.config=o,(r=pi(i)).logInfo=Hd.logInfo.bind(r),r.logWarn=Hd.logWarn.bind(r),r.logError=Hd.logError.bind(r);var s=i.constructor.defaultPreset;if(i.config.presets.length){var a=i.config.presets.indexOf("default");a>=0&&s&&(i.config.presets[a]=s)}else s&&i.config.presets.push(s);if(i.userTimer=null,i.waitTimer=null,i._state=Kv,i._hasStart=!1,i.isSeeking=!1,i.isCanplay=!1,i._runPending=!1,i.rotateDeg=0,i.isActive=!1,i.isCssfullScreen=!1,i.fullscreen=!1,i._fullscreenEl=null,i._cssfullscreenEl=null,i.curDefinition=null,i._orgCss="",i._fullScreenOffset=null,i._videoHeight=0,i._videoWidth=0,i._played={begin:-1,end:-1,acc:0},i.innerContainer=null,i.controls=null,i.topBar=null,i.topBar=null,i.root=null,Xd.os.isAndroid&&Xd.osVersion>0&&Xd.osVersion<6&&(i.config.autoplay=!1),i.database=new Gp,!i._initDOM())return console.error(new Error("can't find the dom which id is ".concat(i.config.id," or this.config.el does not exist"))),gi(i);i._bindEvents(),i._registerPresets(),i._registerPlugins(),Gv.onPluginsReady(pi(i)),i.setState(zv),i.emit(yp),i.onReady&&i.onReady();var c=i.config,l=c.definition;return!c.url&&l&&l.list&&l.list.length>0&&l.defaultDefinition&&l.list.map((function(t){t.definition===l.defaultDefinition&&(i.config.url=t.url,i.curDefinition=t.definition)})),(i.config.videoInit||i.config.autoplay)&&(!i.hasStart||i.state<qv)&&i.start(),i}return Co(n,[{key:"_initDOM",value:function(){var t=this;if(this.root=this.config.id?document.getElementById(this.config.id):null,!this.root){var e=this.config.el;if(!e||1!==e.nodeType)return this.emit(np,new Zd("use",this.config.vid,{line:32,handle:"Constructor",msg:"container id can't be empty"})),console.error("this.confg.id or this.config.el can't be empty"),!1;this.root=e}var n=Gv.checkPlayerRoot(this.root);n&&(Hd.logWarn("The is an Player instance already exists in this.root, destroy it and reinitialize"),n.destroy()),this._initBaseDoms();var i=this.constructor.XgVideoProxy;if(i&&this.videoConfig.mediaType===i.mediaType){var r=this.innerContainer||this.root;this.detachVideoEvents(this.video);var o=new i(r,this.config,this.videoConfig);this.attachVideoEvents(o),this.video=o}if(this.config.controls){var s=Gv.register(this,ey);this.controls=s}var a=this.config.isMobileSimulateMode?"mobile":Xd.device;if(this.addClass("".concat(Wv.DEFAULT," ").concat(Wv.ACTIVE," xgplayer-").concat(a," ").concat(this.config.controls?"":Wv.NO_CONTROLS)),this.config.autoplay?this.addClass(Wv.ENTER):this.addClass(Wv.NO_START),this.config.fluid){var c={"max-width":"100%",width:"100%",height:"0","padding-top":"".concat(100*this.config.height/this.config.width,"%"),position:"position",top:"0",left:"0"};Object.keys(c).map((function(e){t.root.style[e]=c[e]}))}else["width","height"].map((function(e){t.config[e]&&("number"!=typeof t.config[e]?t.root.style[e]=t.config[e]:t.root.style[e]="".concat(t.config[e],"px"))}));return!0}},{key:"_initBaseDoms",value:function(){this.topBar=Wd.createDom("xg-bar","",{"data-index":-1},"xg-top-bar"),this.leftBar=Wd.createDom("xg-bar","",{"data-index":-1},"xg-left-bar"),this.rightBar=Wd.createDom("xg-bar","",{"data-index":-1},"xg-right-bar"),this.config.marginControls&&(this.innerContainer=Wd.createDom("xg-video-container","",{"data-index":-1},"xg-video-container"),this.root.appendChild(this.innerContainer)),this.root.appendChild(this.topBar),this.root.appendChild(this.leftBar),this.root.appendChild(this.rightBar)}},{key:"_bindEvents",value:function(){var t=this;["focus","blur"].forEach((function(e){t.on(e,t["on"+e.charAt(0).toUpperCase()+e.slice(1)])}));var e=function(){t.fullscreen=!1,t._fullScreenOffset=null};this.onFullscreenChange=function(n,i){var r=Wd.getFullScreenEl();if(t._fullActionFrom?t._fullActionFrom="":t.emit(Fp,{eventType:"system",action:"switch_fullscreen",pluginName:"player",currentTime:t.currentTime,duration:t.duration,props:[{prop:"fullscreen",from:!0,to:!1}]}),i||r&&(r===t._fullscreenEl||"VIDEO"===r.tagName))Wd.setTimeout(t,(function(){t.resize()}),100),t.video.focus(),t.fullscreen=!0,t.changeFullStyle(t.root,r,Wv.FULLSCREEN),t.emit(Ep,!0,t._fullScreenOffset),t.isCssfullScreen&&t.exitCssFullscreen();else if(t.fullscreen){Wd.setTimeout(t,(function(){t.resize()}),100);var o=t._fullScreenOffset;if(t.config.needFullscreenScroll)try{window.scrollTo(o.left,o.top),Wd.setTimeout(t,(function(){e()}),50)}catch(t){Hd.logError(t),e()}else t.video.focus(),e();t.isCssfullScreen?t.removeClass(Wv.FULLSCREEN):t.recoverFullStyle(t.root,t._fullscreenEl,Wv.FULLSCREEN),t._fullscreenEl=null,t.emit(Ep,!1)}},Wp.forEach((function(e){document&&document.addEventListener(e,t.onFullscreenChange)})),this.__webkitbeginfullscreen=function(e){t._fullscreenEl=t.video,t.onFullscreenChange(e,!0)},this.__webkitendfullscreen=function(e){t.onFullscreenChange(e,!1)},Xd.os.isIos&&(this.video.addEventListener("webkitbeginfullscreen",this.__webkitbeginfullscreen),this.video.addEventListener("webkitendfullscreen",this.__webkitendfullscreen)),this.once("loadeddata",this.resize),this.playFunc=function(){t.config.closeFocusVideoFocus||t.video.focus()},this.once("play",this.playFunc)}},{key:"_unbindEvents",value:function(){var t=this;this.root.removeEventListener("mousemove",this.mousemoveFunc),Wp.forEach((function(e){document.removeEventListener(e,t.onFullscreenChange)})),this.playFunc&&this.off("play",this.playFunc),this.canPlayFunc&&this.off("canplay",this.canPlayFunc),this.video.removeEventListener("webkitbeginfullscreen",this.__webkitbeginfullscreen),this.video.removeEventListener("webkitendfullscreen",this.__webkitendfullscreen)}},{key:"_startInit",value:function(t){var e=this;if(this.video&&(t&&""!==t||(this.emit(mp),Hd.logWarn("config.url is null, please get url and run player._startInit(url)"),!this.config.nullUrlStart))){this.canPlayFunc=function(){if(e.config){var t=e.config,n=t.autoplay,i=t.startTime,r=t.defaultPlaybackRate;Hd.logInfo("player","canPlayFunc",i),i&&(e.currentTime=i>e.duration?e.duration:i,e.config.startTime=0),1!==r&&(e.playbackRate=r),n&&e.videoPlay(),e.off(ap,e.canPlayFunc),e.removeClass(Wv.ENTER)}},"Array"===Wd.typeOf(t)?(t.forEach((function(t){e.video.appendChild(Wd.createDom("source","",{src:"".concat(t.src),type:"".concat(t.type||"")}))})),this._attachSourceEvents(this.video)):this.video.src=t,"Number"===Wd.typeOf(this.config.volume)&&(this.volume=this.config.volume),this.loadeddataFunc&&this.once("loadeddata",this.loadeddataFunc);var n=this.innerContainer?this.innerContainer:this.root;this.video instanceof window.Element&&!n.contains(this.video)&&n.insertBefore(this.video,n.firstChild),this.video.readyState>=2?this.canPlayFunc():this.once(ap,this.canPlayFunc),Hd.logInfo("_startInit"),this.config.autoplay&&(this.load(),(Xd.os.isIpad||Xd.os.isPhone)&&this.videoPlay()),Wd.setTimeout(this,(function(){e.emit(wp)}),1),(!this.hasStart||this.state<qv)&&Gv.afterInit(this),this.hasStart=!0,this.setState(qv)}}},{key:"_attachSourceEvents",value:function(t){var e=this,n=t.children;this._videoSourceCount=n.length,!this._sourceError&&(this._sourceError=function(t){e._videoSourceCount--,0===e._videoSourceCount&&(e.videoEventMiddleware.error?e.videoEventMiddleware.error.call(e,t,(function(){e.errorHandler("error")})):e.errorHandler("error",{code:4,message:"sources load error"}))});for(var i=0;i<n.length;i++)n[i].addEventListener("error",this._sourceError)}},{key:"_detachSourceEvents",value:function(t){var e=t.children;if(0!==e.length&&this._sourceError)for(var n=0;n<e.length;n++)e[n].removeEventListener("error",this._sourceError)}},{key:"_registerPlugins",value:function(){var t=this;this._loadingPlugins=[];var e=this.config.ignores||[],n=this.config.plugins||[];(this.config.i18n||[]).map((function(t){ly.use(t)}));var i=e.join("||").toLowerCase().split("||");n.map((function(e){try{var n=e.plugin?e.plugin.pluginName:e.pluginName;if(n&&i.indexOf(n.toLowerCase())>-1)return null;if(e.lazy&&e.loader){var r=Gv.lazyRegister(t,e);return void(e.forceBeforeInit&&(r.then((function(){t._loadingPlugins.splice(t._loadingPlugins.indexOf(r),1)})).catch((function(e){Hd.logError("_registerPlugins:loadingPlugin",e),t._loadingPlugins.splice(t._loadingPlugins.indexOf(r),1)})),t._loadingPlugins.push(r)))}return t.registerPlugin(e)}catch(t){return Hd.logError("_registerPlugins:",t),null}}))}},{key:"_registerPresets",value:function(){var t=this;this.config.presets.forEach((function(e){var n,i,r,o,s,a,c,l,u,h,f,d,p,g;n=t,a=(i=e).preset&&i.options?new i.preset(i.options,n.config):new i({},n.config),c=a.plugins,l=void 0===c?[]:c,u=a.ignores,h=void 0===u?[]:u,f=a.icons,d=void 0===f?{}:f,p=a.i18n,g=void 0===p?[]:p,n.config.plugins||(n.config.plugins=[]),n.config.ignores||(n.config.ignores=[]),(r=n.config.plugins).push.apply(r,Yh(l)),(o=n.config.ignores).push.apply(o,Yh(h)),Object.keys(d).map((function(t){n.config.icons[t]||(n.config.icons[t]=d[t])})),(s=n.config.i18n).push.apply(s,Yh(g))}))}},{key:"registerPlugin",value:function(t,e){var n=null,i=null;t.plugin&&"function"==typeof t.plugin?(n=t.plugin,i=t.options):(n=t,i={}),e&&(i.config=e);for(var r=Object.keys(this.config),o=0;o<r.length;o++)if(n.pluginName.toLowerCase()===r[o].toLowerCase()){var s=this.config[r[o]];"Object"===Wd.typeOf(s)&&(s.root&&(i.root=s.root),s.position&&(i.position=s.position));break}var a=i.position?i.position:i.config&&i.config.position||n.defaultConfig&&n.defaultConfig.position,c=Pg.POSITIONS;if(!i.root&&"string"==typeof a&&a.indexOf("controls")>-1)return this.controls&&this.controls.registerPlugin(n,i,n.pluginName);if(!i.root)switch(a){case c.ROOT_RIGHT:i.root=this.rightBar;break;case c.ROOT_LEFT:i.root=this.leftBar;break;case c.ROOT_TOP:i.root=this.topBar;break;default:i.root=this.innerContainer||this.root}return Gv.register(this,n,i)}},{key:"deregister",value:function(t){"string"==typeof t?Gv.unRegister(this,t):t instanceof dg&&Gv.unRegister(this,t.pluginName)}},{key:"unRegisterPlugin",value:function(t){this.deregister(t)}},{key:"plugins",get:function(){return Gv.getPlugins(this)}},{key:"getPlugin",value:function(t){var e=Gv.findPlugin(this,t);return e&&e.pluginName?e:null}},{key:"addClass",value:function(t){this.root&&(Wd.hasClass(this.root,t)||Wd.addClass(this.root,t))}},{key:"removeClass",value:function(t){this.root&&Wd.removeClass(this.root,t)}},{key:"hasClass",value:function(t){if(this.root)return Wd.hasClass(this.root,t)}},{key:"setAttribute",value:function(t,e){this.root&&this.root.setAttribute(t,e)}},{key:"removeAttribute",value:function(t,e){this.root&&this.root.removeAttribute(t,e)}},{key:"start",value:function(t){var e=this;return this.hasStart||this.state>=Xv?Promise.resolve():(this.hasStart=!0,this.setState(Xv),Gv.beforeInit(this).then((function(){if(e.config)return t||(t=e.url||e.config.url),e._startInit(t)})).catch((function(t){throw t.fileName="player",t.lineNumber="236",Hd.logError("start:beforeInit:",t),t})))}},{key:"switchURL",value:function(t,e){this.src=t}},{key:"load",value:function(){this.video&&this.video.load()}},{key:"videoPlay",value:function(){var t=this;if(this.hasStart||!(this.state<qv)){this.state<Zv&&(this.removeClass(Wv.NO_START),!this.isCanplay&&this.addClass(Wv.ENTER));var e=xo(vi(n.prototype),"play",this).call(this);return void 0!==e&&e&&e.then?e.then((function(){t.removeClass(Wv.NOT_ALLOW_AUTOPLAY),t.addClass(Wv.PLAYING),t.state<Zv&&(Hd.logInfo(">>>>playPromise.then"),t.setState(Zv),t.emit(kp))})).catch((function(e){if(Hd.logWarn(">>>>playPromise.catch",e.name),t.video&&t.video.error)return t.onError(),t.removeClass(Wv.ENTER),void t.setState(Yv);"NotAllowedError"===e.name&&(t._errorTimer=Wd.setTimeout(t,(function(){t._errorTimer=null,t.emit(bp),t.addClass(Wv.NOT_ALLOW_AUTOPLAY),t.removeClass(Wv.ENTER),t.pause(),t.setState($v)}),0))})):(Hd.logWarn("video.play not return promise"),this.state<Zv&&(this.setState(Zv),this.removeClass(Wv.NOT_ALLOW_AUTOPLAY),this.removeClass(Wv.NO_START),this.removeClass(Wv.ENTER),this.addClass(Wv.PLAYING),this.emit(kp))),e}this.removeClass(Wv.NO_START),this.addClass(Wv.ENTER);var i=this.start();i&&i.then((function(e){!t.config.autoplay&&t.videoPlay()}))}},{key:"videoPause",value:function(){xo(vi(n.prototype),"pause",this).call(this)}},{key:"play",value:function(){var t=this;this.removeClass(Wv.PAUSED),lg(this,"play",(function(){t.videoPlay()}))}},{key:"pause",value:function(){var t=this;lg(this,"pause",(function(){xo(vi(n.prototype),"pause",t).call(t)}))}},{key:"seek",value:function(t){var e=this;if(this.video&&!isNaN(Number(t))){var n=this.config,i=n.isSeekedPlay,r=n.seekedStatus,o=i?"play":r;t=t<0?0:t>this.duration?parseInt(this.duration,10):t,this.once(ap,(function(){switch(e.removeClass(Wv.ENTER),e.isSeeking=!1,o){case"play":e.play();break;case"pause":e.pause();break;default:!e.paused&&e.play()}})),this.state<Zv?(this.removeClass(Wv.NO_START),this.addClass(Wv.ENTER),this.currentTime=t,"play"===o&&this.play()):this.currentTime=t}}},{key:"changeDefinition",value:function(t,e){var n=this;this.emit(Pp,{from:e,to:t});var i=this.currentTime,r=this.paused;if(this.curDefinition=t.definition,this.hasStart){this.src=t.url;var o=function(){if(n.currentTime=i,r)n.pause();else{var o=n.play();void 0!==o&&o&&o.catch((function(t){}))}n.emit(Rp,{from:e,to:t})};Xd.os.isAndroid?this.once("timeupdate",(function(){o()})):this.once("canplay",(function(){o()}))}else this.config.url=t.url}},{key:"reload",value:function(){this.load(),this.reloadFunc=function(){this.play().catch((function(t){console.log(t)}))},this.once("loadeddata",this.reloadFunc)}},{key:"resetState",value:function(){var t=this,e=[Wv.NOT_ALLOW_AUTOPLAY,Wv.PLAYING,Wv.NO_START,Wv.PAUSED,Wv.REPLAY,Wv.ENTER,Wv.ENDED,Wv.ERROR,Wv.LOADING];this.hasStart=!1,this.videoPause(),e.forEach((function(e){t.removeClass(e)})),this.addClass(Wv.ENTER),this.emit(pp)}},{key:"destroy",value:function(){var t=this,e=this.innerContainer,i=this.root,r=this.video;if(i){if(this._hasStart=!1,this._unbindEvents(),this._detachSourceEvents(this.video),Wd.clearAllTimers(this),Gv.destroy(this),cg(this),xo(vi(n.prototype),"destroy",this).call(this),this.fullscreen&&this._fullscreenEl===this.root)try{this.exitFullscreen()}catch(t){}if(e)for(var o=e.children,s=0;s<o.length;s++)e.removeChild(o[s]);i.contains(r)&&i.removeChild(r),["topBar","leftBar","rightBar","innerContainer"].map((function(e){t[e]&&i.removeChild(t[e]),t[e]=null}));var a=i.className.split(" ");a.length>0?i.className=a.filter((function(t){return t.indexOf("xgplayer")<0})).join(" "):i.className="",this.removeAttribute("data-xgfill"),["isSeeking","isCanplay","isActive","isCssfullScreen","fullscreen"].map((function(e){t[e]=!1}))}}},{key:"replay",value:function(){var t=this;this.removeClass(Wv.ENDED),this.currentTime=0,this.isSeeking=!1,lg(this,"replay",(function(){t.once(ap,(function(){var e=t.videoPlay();e&&e.catch&&e.catch((function(t){console.log(t)}))})),t.play(),t.emit(Cp),t.onPlay()}))}},{key:"retry",value:function(){var t=this;this.removeClass(Wv.ERROR),this.addClass(Wv.LOADING),lg(this,"retry",(function(){var e=t.currentTime;t.videoPause(),t.src=t.config.url,!t.config.isLive&&(t.currentTime=e),t.once(ap,(function(){t.videoPlay()}))}))}},{key:"changeFullStyle",value:function(t,e,n,i){t&&(i||(i=Wv.PARENT_FULLSCREEN),this._orgCss||(this._orgCss=Wd.filterStyleFromText(t)),Wd.addClass(t,n),e&&e!==t&&!this._orgPCss&&(this._orgPCss=Wd.filterStyleFromText(e),Wd.addClass(e,i)))}},{key:"recoverFullStyle",value:function(t,e,n,i){i||(i=Wv.PARENT_FULLSCREEN),this._orgCss&&(Wd.setStyleFromCsstext(t,this._orgCss),this._orgCss=""),Wd.removeClass(t,n),e&&e!==t&&this._orgPCss&&(Wd.setStyleFromCsstext(e,this._orgPCss),this._orgPCss="",Wd.removeClass(e,i))}},{key:"getFullscreen",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.config.fullscreenTarget,e=this.root,n=this.video;t||(t=e),this._fullScreenOffset={top:Wd.scrollTop(),left:Wd.scrollLeft()},this._fullscreenEl=t,this._fullActionFrom="get";var i=Wd.getFullScreenEl();if(i!==this._fullscreenEl)try{for(var r=0;r<Yp.length;r++){var o=Yp[r];if(t[o]){var s="webkitRequestFullscreen"===o?t.webkitRequestFullscreen(window.Element.ALLOW_KEYBOARD_INPUT):t[o]();return s&&s.then?s:Promise.resolve()}}return n.fullscreenEnabled||n.webkitSupportsFullscreen?(n.webkitEnterFullscreen(),Promise.resolve()):Promise.reject(new Error("call getFullscreen fail"))}catch(t){return Promise.reject(new Error("call getFullscreen fail"))}else this.onFullscreenChange()}},{key:"exitFullscreen",value:function(t){if(this._fullscreenEl&&Wd.getFullScreenEl()){this.root;var e=this.video;this._fullActionFrom="exit";for(var n=0;n<Kp.length;n++){var i=Kp[n];if(document[i]){var r=document[i]();return r&&r.then?r:Promise.resolve()}}return e&&e.webkitSupportsFullscreen?(e.webkitExitFullScreen(),Promise.resolve()):Promise.reject(new Error("call exitFullscreen fail"))}}},{key:"getCssFullscreen",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.config.fullscreenTarget;this.fullscreen&&this.exitFullscreen(),this._cssfullscreenEl=t,this.changeFullStyle(this.root,t,t?Wv.INNER_FULLSCREEN:Wv.CSS_FULLSCREEN),this.isCssfullScreen=!0,this.emit(Tp,!0)}},{key:"exitCssFullscreen",value:function(){var t=this._cssfullscreenEl?Wv.INNER_FULLSCREEN:Wv.CSS_FULLSCREEN;this.fullscreen?this.removeClass(t):this.recoverFullStyle(this.root,this._cssfullscreenEl,t),this._cssfullscreenEl=null,this.isCssfullScreen=!1,this.emit(Tp,!1)}},{key:"focus",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{autoHide:!this.config.closePlayerBlur,delay:this.config.inactive};this.isActive?this.onFocus(t):this.emit(gp,hy({paused:this.paused,ended:this.ended},t))}},{key:"blur",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{ignorePaused:!1};this.isActive?this.emit(vp,hy({paused:this.paused,ended:this.ended},t)):this.onBlur(t)}},{key:"onFocus",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{autoHide:!0,delay:3e3};if(this.isActive=!0,this.removeClass(Wv.ACTIVE),this.userTimer&&Wd.clearTimeout(this,this.userTimer),!1!==e.autoHide){var n=e&&e.delay?e.delay:this.config.inactive;this.userTimer=Wd.setTimeout(this,(function(){t.blur()}),n)}}},{key:"onBlur",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{ignorePaused:!1};if(this.isActive){var e=this.config.closePauseVideoFocus;this.isActive=!1,(t.ignorePaused||e||!this.paused&&!this.ended)&&this.addClass(Wv.ACTIVE)}}},{key:"onCanplay",value:function(){this.state>=Zv&&this.removeClass(Wv.ENTER),this.removeClass(Wv.LOADING),this.isCanplay=!0}},{key:"onPlay",value:function(){this.state===Jv&&this.setState(Zv),this.removeClass(Wv.PAUSED),this.ended&&this.removeClass(Wv.ENDED),!this.config.closePlayVideoFocus&&this.focus()}},{key:"onPause",value:function(){this.addClass(Wv.PAUSED),this.config.closePauseVideoFocus||(this.userTimer&&Wd.clearTimeout(this,this.userTimer),this.focus())}},{key:"onEnded",value:function(){this.addClass(Wv.ENDED),this.setState(Jv)}},{key:"onError",value:function(){this.setState(Yv),this.removeClass(Wv.NOT_ALLOW_AUTOPLAY),this.removeClass(Wv.NO_START),this.removeClass(Wv.ENTER),this.removeClass(Wv.LOADING),this.addClass(Wv.ERROR)}},{key:"onSeeking",value:function(){if(!this.isSeeking){var t=this._played;t.acc+=t.begin<t.end&&t.end>-1?t.end-t.begin:0,t.begin=parseInt(1e3*this.video.currentTime,10),t.end=-1}this.isSeeking=!0,this.addClass(Wv.SEEKING)}},{key:"onSeeked",value:function(){this.isSeeking=!1,this.waitTimer&&Wd.clearTimeout(this,this.waitTimer),this.removeClass(Wv.LOADING),this.removeClass(Wv.SEEKING)}},{key:"onWaiting",value:function(){var t=this;this.waitTimer&&Wd.clearTimeout(this,this.waitTimer),this.waitTimer=Wd.setTimeout(this,(function(){t.addClass(Wv.LOADING),Wd.clearTimeout(t,t.waitTimer),t.waitTimer=null}),200)}},{key:"onPlaying",value:function(){var t=this;[Wv.NO_START,Wv.PAUSED,Wv.ENDED,Wv.ERROR,Wv.REPLAY,Wv.LOADING].forEach((function(e){t.removeClass(e)}))}},{key:"onTimeupdate",value:function(){!this._videoHeight&&this.resize(),(this.waitTimer||this.hasClass(Wv.LOADING))&&this.video.readyState>2&&(this.removeClass(Wv.LOADING),Wd.clearTimeout(this,this.waitTimer),this.waitTimer=null),this._played.begin<0&&(this._played.begin=parseInt(1e3*this.video.currentTime,10)),this._played.end=parseInt(1e3*this.video.currentTime,10)}},{key:"onVolumechange",value:function(){"Number"===Wd.typeOf(this.config.volume)&&(this.config.volume=this.volume)}},{key:"onRatechange",value:function(){this.config.defaultPlaybackRate=this.playbackRate}},{key:"checkBuffer",value:function(t){var e=this.video.buffered;if(!e||0===e.length||!this.duration)return!0;for(var n=t||this.video.currentTime||.2,i=e.length,r=0;r<i;r++)if(e.start(r)<=n&&e.end(r)>n)return!0;return!1}},{key:"position",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{h:0,y:0,x:0,w:0};if(t&&t.h){var e=1/t.h,n=1!==e?"scale(".concat(e,")"):"",i=0,r=0;t.y&&(r=(100-100*t.h)/2-100*t.y),t.w&&t.x&&(i=(100-100*t.w)/2-100*t.x),n+=" translate(".concat(i,"%, ").concat(r,"%)"),this.video.style.transform=n,this.video.style.webkitTransform=n}}},{key:"resize",value:function(){var t=this,e=this.video,n=e.videoWidth,i=e.videoHeight,r=this.config,o=r.fitVideoSize,s=r.videoFillMode;if("fill"!==s&&"cover"!==s||this.setAttribute("data-xgfill",s),i&&n){this._videoHeight=i,this._videoWidth=n;var a=this.root.getBoundingClientRect(),c=this.controls&&this.innerContainer?this.controls.root.getBoundingClientRect().height:0,l=a.width,u=a.height-c,h=parseInt(n/i*1e3,10),f=parseInt(l/u*1e3,10),d=l,p=u,g={};"auto"===o&&f>h||"fixWidth"===o?(p=l/h*1e3,this.config.fluid?g.paddingTop="".concat(100*p/d,"%"):g.height="".concat(p+c,"px")):("auto"===o&&f<h||"fixHeight"===o)&&(d=h*u/1e3,g.width="".concat(d,"px")),this.fullscreen||this.isCssfullScreen||Object.keys(g).map((function(e){t.root.style[e]=g[e]})),("fillHeight"===s&&f<h||"fillWidth"===s&&f>h)&&this.setAttribute("data-xgfill","cover");var v={videoScale:h,vWidth:d,vHeight:p,cWidth:d,cHeight:p+c};this.emit(Op,v)}}},{key:"updateObjectPosition",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this.video.updateObjectPosition?this.video.updateObjectPosition(t,e):this.video.style.objectPosition="".concat(100*t,"% ").concat(100*e,"%")}},{key:"setState",value:function(t){Hd.logInfo("setState","state from:".concat(Qv[this.state]," to:").concat(Qv[t])),this._state=t}},{key:"state",get:function(){return this._state}},{key:"hasStart",get:function(){return this._hasStart},set:function(t){"boolean"==typeof t&&(this._hasStart=t,!1===t&&(this._state=zv),this.emit("hasstart"))}},{key:"definitionList",get:function(){return this.config.definition.list||[]},set:function(t){var e=this,n=this.config.definition;n.list=t,this.emit("resourceReady",t);var i=null,r=null;t.map((function(t){e.curDefinition===t.definition&&(i=t),n.defaultDefinition===t.definition&&(r=t)})),!r&&t.length>0&&(r=t[0]),i?this.changeDefinition(i):r&&this.changeDefinition(r)}},{key:"lang",get:function(){return this.config.lang},set:function(t){0!==ly.langKeys.filter((function(e){return e===t})).length||"zh"===t?(this.config.lang=t,Gv.setLang(t,this)):console.error("Sorry, set lang fail, because the language [".concat(t,"] is not supported now, list of all supported languages is [").concat(ly.langKeys.join(),"] "))}},{key:"i18n",get:function(){var t=this.config.lang;return ly.lang[t]||ly.lang.en}},{key:"i18nKeys",get:function(){return ly.textKeys||{}}},{key:"version",get:function(){return qd}},{key:"url",get:function(){return this.__url||this.config.url},set:function(t){this.__url=t}},{key:"poster",get:function(){return this.plugins.poster?this.plugins.poster.config.poster:this.config.poster},set:function(t){this.plugins.poster&&this.plugins.poster.update(t)}},{key:"readyState",get:function(){var t=xo(vi(n.prototype),"readyState",this);return this.i18n[t]||t}},{key:"error",get:function(){var t=xo(vi(n.prototype),"error",this);return this.i18n[t]||t}},{key:"networkState",get:function(){var t=xo(vi(n.prototype),"networkState",this);return this.i18n[t]||t}},{key:"fullscreenChanging",get:function(){return!(null===this._fullScreenOffset)}},{key:"cumulateTime",get:function(){var t=this._played,e=t.acc,n=t.end,i=t.begin;return i>-1&&n>i?(e+n-i)/1e3:e/1e3}},{key:"zoom",get:function(){return this.config.zoom},set:function(t){this.config.zoom=t}},{key:"hook",value:function(t,e){return rg.call.apply(rg,[this].concat(Array.prototype.slice.call(arguments)))}},{key:"useHooks",value:function(t,e){return og.call.apply(og,[this].concat(Array.prototype.slice.call(arguments)))}},{key:"usePluginHooks",value:function(t,e,n){for(var i=arguments.length,r=new Array(i>3?i-3:0),o=3;o<i;o++)r[o-3]=arguments[o];return sg.call.apply(sg,[this].concat(Array.prototype.slice.call(arguments)))}}],[{key:"debugger",get:function(){return Hd.config.debug},set:function(t){Hd.config.debug=t}},{key:"install",value:function(t,e){n.plugins||(n.plugins={}),n.plugins[t]||(n.plugins[t]=e)}},{key:"use",value:function(t,e){n.plugins||(n.plugins={}),n.plugins[t]=e}}]),n}(Vp);function gy(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function vy(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}function yy(){return(new Date).getTime()}yi(py,"defaultPreset",null),yi(py,"XgVideoProxy",null);var my=function(t){fi(n,t);var e=vy(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"_onReset",(function(){t.vt=0,t.pt=0,t.fvt=0,t._isSeeking=!1,t.seekingStart=0,t.waitingStart=0,t._isWaiting=!1,t._waitTimer&&Wd.clearTimeout(pi(t),t._waitTimer),t._waittTimer&&Wd.clearTimeout(pi(t),t._waittTimer),t._waitTimer=null,t._waittTimer=null,t.stall={costTime:0,currentTime:0},t.seekData={costTime:0,currentTime:0}})),yi(pi(t),"_onSeeking",(function(){t.seekingStart||(t.seekingStart=yy(),t.emitLog("seekStart",{start:yy()}))})),yi(pi(t),"_onSeeked",(function(){t.suspendSeekingStatus("seeked")})),yi(pi(t),"_onWaiting",(function(){t._isWaiting||t.seekingStart||(t._isWaiting=!0,t._waitTimer=Wd.setTimeout(pi(t),(function(){t._isWaiting&&(t.waitingStart=yy(),Wd.clearTimeout(pi(t),t._waitTimer),t._waitTimer=null,t.emitLog("waitingStart",{start:t.waitingStart}))}),200))})),yi(pi(t),"_onError",(function(){t.suspendSeekingStatus("error"),t.suspendWaitingStatus("error")})),yi(pi(t),"_onPlaying",(function(){t.suspendWaitingStatus("playing")})),t}return Co(n,[{key:"afterCreate",value:function(){var t=this;this._onReset(),this.on(dp,(function(){t.vt=t.pt=yy()})),this.on(up,(function(){t.vt=yy(),t.fvt=t.vt-t.pt,t.emitLog("firstFrame",{fvt:t.fvt})})),this.on(sp,this._onWaiting),this.on(ip,this._onSeeking),this.on(rp,this._onSeeked),this.on(Qd,this._onPlaying),this.on(np,this._onError),this.on(pp,this._onReset)}},{key:"_startWaitTimeout",value:function(){var t=this;this._waittTimer=Wd.setTimeout(this,(function(){t.suspendWaitingStatus("timeout"),Wd.clearTimeout(t,t._waittTimer),t._waittTimer=null}),2e4)}},{key:"suspendSeekingStatus",value:function(t){if(this.seekingStart){var e=yy(),n=e-this.seekingStart;this.seekingStart=0,this.emitLog("seekEnd",{end:e,costTime:n})}}},{key:"suspendWaitingStatus",value:function(t){if(this._waitTimer&&(Wd.clearTimeout(this,this._waitTimer),this._waitTimer=null),this.waitingStart){var e=yy()-this.waitingStart;this._isWaiting=!1,this.waitingStart=0,this.emitLog("waitingEnd",{endType:t,costTime:e})}}},{key:"emitLog",value:function(t,e){var n=this.player;this.emit(Np,function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?gy(Object(n),!0).forEach((function(e){yi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):gy(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({eventType:t,currentTime:this.player.currentTime,readyState:n.video.readyState,networkState:n.video.networkState},e))}}],[{key:"pluginName",get:function(){return"xgLogger"}},{key:"defaultConfig",get:function(){return{}}}]),n}(Pg);function ky(){return(new DOMParser).parseFromString('<svg class="xgplayer-replay-svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 78 78" width="78" height="78">\n <path fill="#fff" transform="translate(20, 20)" d="M8.22708362,13.8757234 L11.2677371,12.6472196 C11.7798067,12.4403301 12.3626381,12.6877273 12.5695276,13.1997969 L12.9441342,14.1269807 C13.1510237,14.6390502 12.9036264,15.2218816 12.3915569,15.4287712 L6.8284538,17.6764107 L5.90126995,18.0510173 C5.38920044,18.2579068 4.80636901,18.0105096 4.5994795,17.49844 L1.97723335,11.0081531 C1.77034384,10.4960836 2.0177411,9.91325213 2.52981061,9.70636262 L3.45699446,9.33175602 C3.96906396,9.12486652 4.5518954,9.37226378 4.75878491,9.88433329 L5.67885163,12.1615783 C7.99551726,6.6766934 13.3983951,3 19.5,3 C27.7842712,3 34.5,9.71572875 34.5,18 C34.5,26.2842712 27.7842712,33 19.5,33 C15.4573596,33 11.6658607,31.3912946 8.87004692,28.5831991 C8.28554571,27.9961303 8.28762719,27.0463851 8.87469603,26.4618839 C9.46176488,25.8773827 10.4115101,25.8794641 10.9960113,26.466533 C13.2344327,28.7147875 16.263503,30 19.5,30 C26.127417,30 31.5,24.627417 31.5,18 C31.5,11.372583 26.127417,6 19.5,6 C14.4183772,6 9.94214483,9.18783811 8.22708362,13.8757234 Z"></path>\n</svg>\n',"image/svg+xml").firstChild}function by(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var wy=function(t){fi(n,t);var e=by(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"registerIcons",value:function(){return{replay:ky}}},{key:"afterCreate",value:function(){var t=this;Pg.insert(this.icons.replay,this.root,0),this.__handleReplay=this.hook("replayClick",(function(){t.player.replay()}),{pre:function(t){t.preventDefault(),t.stopPropagation()}}),this.bind("svg",["click","touchend"],this.__handleReplay),this.bind(".xgplayer-replay-txt",["click","touchend"],this.__handleReplay),this.on(tp,(function(){if(t.playerConfig.loop||Wd.addClass(t.player.root,"replay"),!t.config.disable){t.show();var e=t.root.querySelector("path");if(e){var n=window.getComputedStyle(e).getPropertyValue("transform");if("string"==typeof n&&n.indexOf("none")>-1)return null;e.setAttribute("transform",n)}}})),this.on(Jd,(function(){t.hide()}))}},{key:"handleReplay",value:function(t){t.preventDefault(),t.stopPropagation(),this.player.replay(),Wd.removeClass(this.player.root,"replay")}},{key:"show",value:function(){this.config.disable||(this.root.style.display="flex")}},{key:"enable",value:function(){this.config.disable=!1}},{key:"disable",value:function(){this.config.disable=!0,this.hide()}},{key:"destroy",value:function(){this.unbind("svg",["click","touchend"],this.__handleReplay),this.unbind(".xgplayer-replay-txt",["click","touchend"],this.__handleReplay)}},{key:"render",value:function(){return'<xg-replay class="xgplayer-replay">\n <xg-replay-txt class="xgplayer-replay-txt" lang-key="'.concat(this.i18nKeys.REPLAY,'">').concat(this.i18n.REPLAY,"</xg-replay-txt>\n </xg-replay>")}}],[{key:"pluginName",get:function(){return"replay"}},{key:"defaultConfig",get:function(){return{disable:!1}}}]),n}(Pg);function Cy(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var xy=function(t){fi(n,t);var e=Cy(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"isEndedShow",get:function(){return this.config.isEndedShow},set:function(t){this.config.isEndedShow=t}},{key:"hide",value:function(){Wd.addClass(this.root,"hide")}},{key:"show",value:function(){Wd.removeClass(this.root,"hide")}},{key:"beforeCreate",value:function(t){"string"==typeof t.player.config.poster&&(t.config.poster=t.player.config.poster)}},{key:"afterCreate",value:function(){var t=this;this.on(tp,(function(){t.isEndedShow||Wd.addClass(t.root,"hide")})),this.config.hideCanplay?(this.once(op,(function(){t.onTimeUpdate()})),this.on(_p,(function(){Wd.removeClass(t.root,"hide"),Wd.addClass(t.root,"xg-showplay"),t.once(op,(function(){t.onTimeUpdate()}))}))):this.on(Jd,(function(){Wd.addClass(t.root,"hide")}))}},{key:"onTimeUpdate",value:function(){var t=this;this.player.currentTime?Wd.removeClass(this.root,"xg-showplay"):this.once(op,(function(){t.onTimeUpdate()}))}},{key:"update",value:function(t){t&&(this.config.poster=t,this.root.style.backgroundImage="url(".concat(t,")"))}},{key:"render",value:function(){var t=this.config,e=t.poster,n=t.hideCanplay,i=e?"background-image:url(".concat(e,");"):"";return'<xg-poster class="xgplayer-poster '.concat(n?"xg-showplay":"",'" style="').concat(i,'">\n </xg-poster>')}}],[{key:"pluginName",get:function(){return"poster"}},{key:"defaultConfig",get:function(){return{isEndedShow:!0,hideCanplay:!1,poster:""}}}]),n}(Pg);function _y(){return(new DOMParser).parseFromString('<svg class="play" xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="3 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M576,363L810,512L576,661zM342,214L576,363L576,661L342,810z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Ey(){return(new DOMParser).parseFromString('<svg class="pause" xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="3 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M598,214h170v596h-170v-596zM256 810v-596h170v596h-170z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Ty(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Sy={};var Py=function(t){fi(n,t);var e=Ty(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).autoPlayStart=!1,i}return Co(n,[{key:"afterCreate",value:function(){var t=this,e=this.player,n=this.playerConfig;this.initIcons(),this.once(yp,(function(){n&&(n.lang&&"en"===n.lang?Wd.addClass(e.root,"lang-is-en"):"jp"===n.lang&&Wd.addClass(e.root,"lang-is-jp"))})),this.on(kp,(function(){var e="auto"===t.config.mode?"auto-hide":"hide";Wd.addClass(t.root,e),t.autoPlayStart=!0,t.onPlayPause("play")})),n.autoplay||this.show(),this.on(bp,(function(){var e="auto"===t.config.mode?"auto-hide":"hide";t.setAttr("data-state","play"),Wd.removeClass(t.root,e),t.show()})),this.on(Jd,(function(){t.onPlayPause("play")})),this.on(ep,(function(){t.onPlayPause("pause")})),this.clickHandler=this.hook("startClick",this.switchPausePlay,{pre:function(e){e.preventDefault(),e.stopPropagation();var n=t.player.paused;t.emitUserAction(e,"switch_play_pause",{props:"paused",from:n,to:!n})}}),this.bind(["click","touchend"],this.clickHandler)}},{key:"preventDefault",value:function(t){}},{key:"registerIcons",value:function(){return{startPlay:{icon:_y,class:"xg-icon-play"},startPause:{icon:Ey,class:"xg-icon-pause"}}}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild("xg-start-inner",t.startPlay),this.appendChild("xg-start-inner",t.startPause)}},{key:"hide",value:function(){Wd.addClass(this.root,"hide")}},{key:"show",value:function(){Wd.removeClass(this.root,"hide")}},{key:"focusHide",value:function(){Wd.addClass(this.root,"focus-hide")}},{key:"recover",value:function(){Wd.removeClass(this.root,"focus-hide")}},{key:"switchStatus",value:function(t){t?this.setAttr("data-state",this.player.paused?"pause":"play"):this.setAttr("data-state",this.player.paused?"play":"pause")}},{key:"animate",value:function(t){var e=this;!function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{start:null,end:null};Sy[t]&&window.clearTimeout(Sy[t].id),Sy[t]={},n.start&&n.start(),Sy[t].id=window.setTimeout((function(){n.end&&n.end(),window.clearTimeout(Sy[t].id),delete Sy[t]}),e)}("pauseplay",400,{start:function(){Wd.addClass(e.root,"interact"),e.show(),e.switchStatus(!0)},end:function(){Wd.removeClass(e.root,"interact"),!t&&e.hide()}})}},{key:"switchPausePlay",value:function(t){var e=this.player;(t.preventDefault(),t.stopPropagation(),e.state<zv)||(this.player.paused||e.state!==Zv?e.play():e.pause())}},{key:"onPlayPause",value:function(t){var e=this.config,n=this.player;if(!(n.state<Zv)&&this.autoPlayStart){if("show"===e.mode)return this.switchStatus(),void this.show();if("auto"!==e.mode){if(e.isShowPause&&n.paused&&!n.ended||e.isShowEnd&&n.ended)return this.switchStatus(),void this.show();if(e.disableAnimate)return this.switchStatus(),void this.hide();if("play"===t)this.autoPlayStart?this.animate():this.hide();else{if(!this.autoPlayStart)return;this.animate()}}else this.switchStatus()}}},{key:"destroy",value:function(){this.unbind(["click","touchend"],this.clickHandler),Object.keys(Sy).map((function(t){window.clearTimeout(Sy[t].id),delete Sy[t]}))}},{key:"render",value:function(){var t=this.playerConfig.autoplay?"auto"===this.config.mode?"auto-hide":"hide":"";return'\n <xg-start class="xgplayer-start '.concat(t,'">\n <xg-start-inner></xg-start-inner>\n </xg-start>')}}],[{key:"pluginName",get:function(){return"start"}},{key:"defaultConfig",get:function(){return{isShowPause:!1,isShowEnd:!1,disableAnimate:!1,mode:"hide"}}}]),n}(Pg);function Ry(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Oy=function(t){fi(n,t);var e=Ry(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"render",value:function(){var t=this.config.innerHtml,e=Wd.createDom("xg-enter","",{},"xgplayer-enter");if(t&&t instanceof window.HTMLElement)e.appendChild(t);else if(t&&"string"==typeof t)e.innerHTML=t;else{for(var n="",i=1;i<=12;i++)n+='<div class="xgplayer-enter-bar'.concat(i,'"></div>');e.innerHTML='<div class="xgplayer-enter-spinner">'.concat(n,"</div>")}return e}}],[{key:"pluginName",get:function(){return"enter"}},{key:"defaultConfig",get:function(){return{innerHtml:"",logo:""}}}]),n}(Pg);function Iy(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Ly=function(t){fi(n,t);var e=Iy(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){this.getMini=this.getMini.bind(this),this.exitMini=this.exitMini.bind(this),this.bind("click",this.getMini)}},{key:"getMini",value:function(){this.config.onClick&&this.config.onClick()}},{key:"exitMini",value:function(){this.config.onClick&&this.config.onClick()}},{key:"destroy",value:function(){this.unbind(["click","touchend"],this.getMini)}},{key:"render",value:function(){var t="MINISCREEN";return'\n <xg-icon class="xgplayer-miniicon">\n <div class="xgplayer-icon btn-text"><span class="icon-text" lang-key="'.concat(this.i18nKeys[t],'">').concat(this.i18n[t],"</span></div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"miniscreenIcon"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:10}}}]),n}(Pg);function Ay(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}function Dy(t){var e=parseFloat(t);return-1===t.indexOf("%")&&!isNaN(e)&&e}var My=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],Ny=My.length;function Fy(t){if("string"==typeof t&&(t=document.querySelector(t)),t&&"object"===di(t)&&t.nodeType){var e=function(t){return window.getComputedStyle(t)}(t);if("none"===e.display)return function(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;e<Ny;e++)t[My[e]]=0;return t}();var n={};n.width=t.offsetWidth,n.height=t.offsetHeight;for(var i=n.isBorderBox="border-box"===e.boxSizing,r=0;r<Ny;r++){var o=My[r],s=e[o],a=parseFloat(s);n[o]=isNaN(a)?0:a}var c=n.paddingLeft+n.paddingRight,l=n.paddingTop+n.paddingBottom,u=n.marginLeft+n.marginRight,h=n.marginTop+n.marginBottom,f=n.borderLeftWidth+n.borderRightWidth,d=n.borderTopWidth+n.borderBottomWidth,p=i,g=Dy(e.width);!1!==g&&(n.width=g+(p?0:c+f));var v=Dy(e.height);return!1!==v&&(n.height=v+(p?0:l+d)),n.innerWidth=n.width-(c+f),n.innerHeight=n.height-(l+d),n.outerWidth=n.width+u,n.outerHeight=n.height+h,n}}function jy(t,e){for(var n=0;n<t.length;n++){var i=t[n];if(i.identifier===e)return i}}var By="dragStart",Hy="dragMove",Uy="dragEnded",Vy={mousedown:["mousemove","mouseup"],touchstart:["touchmove","touchend","touchcancel"],pointerdown:["pointermove","pointerup","pointercancel"]},Gy=function(t){fi(n,t);var e=Ay(n);function n(t){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return ui(this,n),(i=e.call(this)).isEnabled=!0,i.isDragging=!1,i.isDown=!1,i.position={},i.downPoint={},i.dragPoint={x:0,y:0},i.startPos={x:0,y:0},i._root=t instanceof Element?t:document.querySelector(t),i._handlerDom=r.handle instanceof Element?r.handle:document.querySelector(r.handle),i._root&&i._handlerDom?(i._bindStartEvent(),i):gi(i)}return Co(n,[{key:"_bindStartEvent",value:function(){var t=this;"ontouchstart"in window?this._startKey="touchstart":this._startKey="mousedown",this["on".concat(this._startKey)]=this["on".concat(this._startKey)].bind(this),this._handlerDom.addEventListener(this._startKey,this["on".concat(this._startKey)]),Vy[this._startKey].map((function(e){t["on".concat(e)]=t["on".concat(e)].bind(t)}))}},{key:"_unbindStartEvent",value:function(){this._handlerDom.removeEventListener(this._startKey,this["on".concat(this._startKey)])}},{key:"_bindPostStartEvents",value:function(t){var e=this;if(t){var n=Vy[this._startKey];n.map((function(t){window.addEventListener(t,e["on".concat(t)])})),this._boundPointerEvents=n}}},{key:"_unbindPostStartEvents",value:function(){var t=this;this._boundPointerEvents&&(this._boundPointerEvents.map((function(e){window.removeEventListener(e,t["on".concat(e)])})),delete this._boundPointerEvents)}},{key:"enable",value:function(){this.isEnabled=!0}},{key:"disable",value:function(){this.isEnabled=!1,this.isDragging&&this.onUp()}},{key:"onDocUp",value:function(t){this.onUp()}},{key:"animate",value:function(){var t=this;this.isDragging&&(this.positionDrag(),window.requestAnimationFrame((function(){t.animate()})))}},{key:"positionDrag",value:function(){var t="translate3d(".concat(this.dragPoint.x,"px, ").concat(this.dragPoint.y,"px, 0)");this._root.style.transform=t,this._root.style.webKitTransform=t}},{key:"setLeftTop",value:function(){this._root.style.left=this.position.x+"px",this._root.style.top=this.position.y+"px"}},{key:"onmousedown",value:function(t){this.dragStart(t,t)}},{key:"onmousemove",value:function(t){this.dragMove(t,t)}},{key:"onmouseup",value:function(t){this.dragEnd(t,t)}},{key:"ontouchstart",value:function(t){var e=t.changedTouches[0];this.dragStart(t,e),this.touchIdentifier=void 0!==e.pointerId?e.pointerId:e.identifier,t.preventDefault()}},{key:"ontouchmove",value:function(t){var e=jy(t.changedTouches,this.touchIdentifier);e&&this.dragMove(t,e)}},{key:"ontouchend",value:function(t){var e=jy(t.changedTouches,this.touchIdentifier);e&&this.dragEnd(t,e),t.preventDefault()}},{key:"ontouchcancel",value:function(t){var e=jy(t.changedTouches,this.touchIdentifier);e&&this.dragCancel(t,e)}},{key:"dragStart",value:function(t,e){if(this._root&&!this.isDown&&this.isEnabled){this.downPoint=e,this.dragPoint.x=0,this.dragPoint.y=0,this._getPosition();var n=Fy(this._root);this.startPos.x=this.position.x,this.startPos.y=this.position.y,this.startPos.maxY=window.innerHeight-n.height,this.startPos.maxX=window.innerWidth-n.width,this.setLeftTop(),this.isDown=!0,this._bindPostStartEvents(t)}}},{key:"dragRealStart",value:function(t,e){this.isDragging=!0,this.animate(),this.emit(By,this.startPos)}},{key:"dragEnd",value:function(t,e){this._root&&(this._unbindPostStartEvents(),this.isDragging&&(this._root.style.transform="",this.setLeftTop(),this.emit(Uy)),this.presetInfo())}},{key:"_dragPointerMove",value:function(t,e){var n={x:e.pageX-this.downPoint.pageX,y:e.pageY-this.downPoint.pageY};return!this.isDragging&&this.hasDragStarted(n)&&this.dragRealStart(t,e),n}},{key:"dragMove",value:function(t,e){if(t=t||window.event,this.isDown){var n=this.startPos,i=n.x,r=n.y,o=this._dragPointerMove(t,e),s=o.x,a=o.y;s=this.checkContain("x",s,i),a=this.checkContain("y",a,r),this.position.x=i+s,this.position.y=r+a,this.dragPoint.x=s,this.dragPoint.y=a,this.emit(Hy,this.position)}}},{key:"dragCancel",value:function(t,e){this.dragEnd(t,e)}},{key:"presetInfo",value:function(){this.isDragging=!1,this.startPos={x:0,y:0},this.dragPoint={x:0,y:0},this.isDown=!1}},{key:"destroy",value:function(){this._unbindStartEvent(),this._unbindPostStartEvents(),this.isDragging&&this.dragEnd(),this.removeAllListeners(),this._handlerDom=null}},{key:"hasDragStarted",value:function(t){return Math.abs(t.x)>3||Math.abs(t.y)>3}},{key:"checkContain",value:function(t,e,n){return e+n<0?0-n:"x"===t&&e+n>this.startPos.maxX?this.startPos.maxX-n:"y"===t&&e+n>this.startPos.maxY?this.startPos.maxY-n:e}},{key:"_getPosition",value:function(){var t=window.getComputedStyle(this._root),e=this._getPositionCoord(t.left,"width"),n=this._getPositionCoord(t.top,"height");this.position.x=isNaN(e)?0:e,this.position.y=isNaN(n)?0:n,this._addTransformPosition(t)}},{key:"_addTransformPosition",value:function(t){var e=t.transform;if(0===e.indexOf("matrix")){var n=e.split(","),i=0===e.indexOf("matrix3d")?12:4,r=parseInt(n[i],10),o=parseInt(n[i+1],10);this.position.x+=r,this.position.y+=o}}},{key:"_getPositionCoord",value:function(t,e){if(-1!==t.indexOf("%")){var n=Fy(this._root.parentNode);return n?parseFloat(t)/100*n[e]:0}return parseInt(t,10)}}]),n}(Gh);function Wy(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Yy=function(t){fi(n,t);var e=Wy(n);function n(t){var i;ui(this,n),yi(pi(i=e.call(this,t)),"onCancelClick",(function(t){i.exitMini(),i.isClose=!0})),yi(pi(i),"onCenterClick",(function(t){var e=pi(i).player;e.paused?e.play():e.pause()})),yi(pi(i),"onScroll",(function(t){if(!(!window.scrollY&&0!==window.scrollY||Math.abs(window.scrollY-i.pos.scrollY)<50)){var e=parseInt(Wd.getCss(i.player.root,"height"));e+=i.config.scrollTop,i.pos.scrollY=window.scrollY,window.scrollY>e+5?!i.isMini&&!i.isClose&&i.getMini():window.scrollY<=e&&(i.isMini&&i.exitMini(),i.isClose=!1)}})),i.isMini=!1,i.isClose=!1;var r=pi(i).config;return i.pos={left:r.left<0?window.innerWidth-r.width-20:r.left,top:r.top<0?window.innerHeight-r.height-20:r.top,height:i.config.height,width:i.config.width,scrollY:window.scrollY||0},i.lastStyle=null,i}return Co(n,[{key:"beforeCreate",value:function(t){"boolean"==typeof t.player.config.mini&&(t.config.isShowIcon=t.player.config.mini)}},{key:"afterCreate",value:function(){var t=this;this.initIcons(),this.on(ep,(function(){t.setAttr("data-state","pause")})),this.on(Jd,(function(){t.setAttr("data-state","play")}))}},{key:"onPluginsReady",value:function(){var t=this,e=this.player;if(!this.config.disable){if(this.config.isShowIcon){var n={config:{onClick:function(){t.getMini()}}};e.controls.registerPlugin(Ly,n,Ly.pluginName)}var i=Wd.checkTouchSupport()?"touchend":"click";this.bind(".mini-cancel-btn",i,this.onCancelClick),this.bind(".play-icon",i,this.onCenterClick),this.config.disableDrag||(this._draggabilly=new Gy(this.player.root,{handle:this.root})),this.config.isScrollSwitch&&window.addEventListener("scroll",this.onScroll)}}},{key:"registerIcons",value:function(){return{play:{icon:_y,class:"xg-icon-play"},pause:{icon:Ey,class:"xg-icon-pause"}}}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(".play-icon",t.play),this.appendChild(".play-icon",t.pause)}},{key:"getMini",value:function(){var t=this;if(!this.isMini){var e=this.player,n=this.playerConfig,i=this.config.target||this.player.root;this.lastStyle={},Wd.addClass(e.root,"xgplayer-mini"),["width","height","top","left"].map((function(e){t.lastStyle[e]=i.style[e],i.style[e]="".concat(t.pos[e],"px")})),n.fluid&&(i.style["padding-top"]=""),this.emit(Sp,!0),e.isMini=this.isMini=!0}}},{key:"exitMini",value:function(){var t=this;if(!this.isMini)return!1;var e=this.player,n=this.playerConfig,i=this.config.target||this.player.root;Wd.removeClass(e.root,"xgplayer-mini"),this.lastStyle&&Object.keys(this.lastStyle).map((function(e){i.style[e]=t.lastStyle[e]})),this.lastStyle=null,n.fluid&&(e.root.style.width="100%",e.root.style.height="0",e.root.style["padding-top"]="".concat(100*n.height/n.width,"%")),this.emit(Sp,!1),this.isMini=e.isMini=!1}},{key:"destroy",value:function(){window.removeEventListener("scroll",this.onScroll);var t=Wd.checkTouchSupport()?"touchend":"click";this.unbind(".mini-cancel-btn",t,this.onCancelClick),this.unbind(".play-icon",t,this.onCenterClick),this._draggabilly&&this._draggabilly.destroy(),this._draggabilly=null,this.exitMini()}},{key:"render",value:function(){if(!this.config.disable)return'\n <xg-mini-layer class="xg-mini-layer">\n <xg-mini-header class="xgplayer-mini-header">\n <div lang-key="'.concat(this.i18nKeys.MINI_DRAG,'">').concat(this.i18n.MINI_DRAG,'</div>\n </xg-mini-header>\n <div class="mini-cancel-btn">\n <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">\n <path fill="#fff" fill-rule="evenodd" d="M3.99 3.49a1 1 0 0 1 1.414 0L10 8.085l4.596-4.595a1 1 0 1 1 1.414 1.414L11.414 9.5l4.596 4.596a1 1 0 0 1 .084 1.32l-.084.094a1 1 0 0 1-1.414 0L10 10.914 5.404 15.51a1 1 0 0 1-1.414-1.414L8.585 9.5 3.99 4.904a1 1 0 0 1-.084-1.32z"></path>\n </svg>\n </div>\n <div class="play-icon">\n </div>\n </xg-mini-layer>')}}],[{key:"pluginName",get:function(){return"miniscreen"}},{key:"defaultConfig",get:function(){return{index:10,disable:!1,width:320,height:180,left:-1,top:-1,isShowIcon:!1,isScrollSwitch:!1,scrollTop:0,disableDrag:!1}}}]),n}(Pg);function Ky(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var zy={mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mousemove:"onMouseMove"},Xy=["videoClick","videoDbClick"],qy=function(t){fi(n,t);var e=Ky(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"onMouseMove",(function(e){var n=pi(t),i=n.player,r=n.playerConfig;i.isActive||(i.focus({autoHide:!r.closeDelayBlur}),!r.closeFocusVideoFocus&&i.video.focus())})),yi(pi(t),"onMouseEnter",(function(e){var n=pi(t),i=n.playerConfig,r=n.player;!i.closeFocusVideoFocus&&r.video.focus(),i.closeDelayBlur?r.focus({autoHide:!1}):r.focus()})),yi(pi(t),"onMouseLeave",(function(e){var n=t.playerConfig,i=n.closePlayerBlur,r=n.leavePlayerTime;i||(r?t.player.focus({autoHide:!0,hideDelay:r}):t.player.blur())})),yi(pi(t),"onVideoClick",(function(e){var n=pi(t),i=n.player,r=n.playerConfig;e.target&&r.closeVideoClick||e.target!==i.root&&e.target!==i.video&&e.target!==i.innerContainer&&e.target!==i.video.__canvas||(e.preventDefault(),r.closeVideoStopPropagation||e.stopPropagation(),t._clickCount++,t.clickTimer&&(clearTimeout(t.clickTimer),t.clickTimer=null),t.clickTimer=setTimeout((function(){t._clickCount&&(t._clickCount--,lg(pi(t),Xy[0],(function(e,n){t.switchPlayPause(n.e)}),{e:e,paused:i.paused}),clearTimeout(t.clickTimer),t.clickTimer=null)}),300))})),yi(pi(t),"onVideoDblClick",(function(e){var n=pi(t),i=n.player,r=n.playerConfig;!e.target||e.target!==i.video&&e.target!==i.video.__canvas||r.closeVideoDblclick||(t._clickCount<2?t._clickCount=0:(t._clickCount=0,t.clickTimer&&(clearTimeout(t.clickTimer),t.clickTimer=null),e.preventDefault(),e.stopPropagation(),lg(pi(t),Xy[1],(function(e,n){t.emitUserAction(n.e,"switch_fullscreen",{props:"fullscreen",from:i.fullscreen,to:!i.fullscreen}),i.fullscreen?i.exitFullscreen():i.getFullscreen()}),{e:e,fullscreen:i.fullscreen})))})),t}return Co(n,[{key:"afterCreate",value:function(){var t=this;this._clickCount=0,Xy.map((function(e){t.__hooks[e]=null}));var e=this.playerConfig,n=e.enableContextmenu;e.isMobileSimulateMode||"mobile"===Xd.device||(this.config.disableContextmenu=!n,this.initEvents())}},{key:"initEvents",value:function(){var t=this,e=this.player,n=e.video,i=e.root;i.addEventListener("click",this.onVideoClick,!1),n.addEventListener("dblclick",this.onVideoDblClick,!1),Object.keys(zy).map((function(e){i.addEventListener(e,t[zy[e]],!1)})),this.config.disableContextmenu&&n.addEventListener("contextmenu",this.onContextmenu,!1)}},{key:"switchPlayPause",value:function(t){var e=this.player;this.emitUserAction(t,"switch_play_pause",{props:"paused",from:e.paused,to:!e.paused}),e.ended?e.duration!==1/0&&e.duration>0&&e.replay():e.paused?e.play():e.pause()}},{key:"onContextmenu",value:function(t){(t=t||window.event).preventDefault&&t.preventDefault(),t.stopPropagation?t.stopPropagation():(t.returnValue=!1,t.cancelBubble=!0)}},{key:"destroy",value:function(){var t=this,e=this.player,n=e.video,i=e.root;this.clickTimer&&clearTimeout(this.clickTimer),i.removeEventListener("click",this.onVideoClick,!1),n.removeEventListener("dblclick",this.onVideoDblClick,!1),n.removeEventListener("contextmenu",this.onContextmenu,!1),Object.keys(zy).map((function(e){i.removeEventListener(e,t[zy[e]],!1)}))}}],[{key:"pluginName",get:function(){return"pc"}},{key:"defaultConfig",get:function(){return{disableContextmenu:!0}}}]),n}(dg),$y=p,Zy=Le,Jy=wi,Qy=m,tm=En,em=Le,nm=function(t){if("number"!=typeof t&&"Number"!=$y(t))throw TypeError("Incorrect invocation");return+t},im=function(t){var e=Jy(Qy(this)),n="",i=Zy(t);if(i<0||i==1/0)throw RangeError("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n},rm=r,om=1..toFixed,sm=Math.floor,am=function(t,e,n){return 0===e?n:e%2==1?am(t,e-1,n*t):am(t*t,e/2,n)},cm=function(t,e,n){for(var i=-1,r=n;++i<6;)r+=e*t[i],t[i]=r%1e7,r=sm(r/1e7)},lm=function(t,e){for(var n=6,i=0;--n>=0;)i+=t[n],t[n]=sm(i/e),i=i%e*1e7},um=function(t){for(var e=6,n="";--e>=0;)if(""!==n||0===e||0!==t[e]){var i=String(t[e]);n=""===n?i:n+im.call("0",7-i.length)+i}return n};tm({target:"Number",proto:!0,forced:om&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!rm((function(){om.call({})}))},{toFixed:function(t){var e,n,i,r,o=nm(this),s=em(t),a=[0,0,0,0,0,0],c="",l="0";if(s<0||s>20)throw RangeError("Incorrect fraction digits");if(o!=o)return"NaN";if(o<=-1e21||o>=1e21)return String(o);if(o<0&&(c="-",o=-o),o>1e-21)if(n=(e=function(t){for(var e=0,n=t;n>=4096;)e+=12,n/=4096;for(;n>=2;)e+=1,n/=2;return e}(o*am(2,69,1))-69)<0?o*am(2,-e,1):o/am(2,e,1),n*=4503599627370496,(e=52-e)>0){for(cm(a,0,n),i=s;i>=7;)cm(a,1e7,0),i-=7;for(cm(a,am(10,i,1),0),i=e-1;i>=23;)lm(a,1<<23),i-=23;lm(a,1<<i),cm(a,1,1),lm(a,2),l=um(a)}else cm(a,0,n),cm(a,1<<-e,0),l=um(a)+im.call("0",s);return l=s>0?c+((r=l.length)<=s?"0."+im.call("0",s-r)+l:l.slice(0,r-s)+"."+l.slice(r-s)):c+l}});var hm="press",fm="pressend",dm="doubleclick",pm="click",gm="touchmove",vm="touchstart",ym="touchend",mm={start:"touchstart",end:"touchend",move:"touchmove",cancel:"touchcancel"},km={start:"mousedown",end:"mouseup",move:"mousemove",cancel:"mouseleave"};function bm(t){return t&&t.length>0?t[t.length-1]:null}function wm(t){var e=navigator.userAgent;/(?:iPhone|iPad)/.test(e)&&t.cancelable&&t.preventDefault()}var Cm=function(){function t(e){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{eventType:"touch"};ui(this,t),this._pos={moving:!1,start:!1,x:0,y:0},this.config={pressDelay:600,dbClickDelay:300,disablePress:!1,disableDbClick:!1,miniStep:2},Object.keys(i).map((function(t){n.config[t]=i[t]})),this.root=e,this.events="mouse"===i.eventType?km:mm,this.pressIntrvalId=null,this.dbIntrvalId=null,this.__handlers={},this._initEvent()}return Co(t,[{key:"_initEvent",value:function(){this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this),this.onTouchCancel=this.onTouchCancel.bind(this),this.root.addEventListener(this.events.start,this.onTouchStart)}},{key:"__setPress",value:function(t){var e=this,n=this.config;this.pressIntrvalId&&this.__clearPress(),this.pressIntrvalId=setTimeout((function(){e.trigger(hm,t),e._pos.press=!0,e.__clearPress()}),n.pressDelay)}},{key:"__clearPress",value:function(){window.clearTimeout(this.pressIntrvalId),this.pressIntrvalId=null}},{key:"__setDb",value:function(t){var e=this,n=this.config;if(this.dbIntrvalId)return this.__clearDb(),void this.trigger(dm,t);this.dbIntrvalId=setTimeout((function(){e.__clearDb(),e._pos.start||e._pos.press||e._pos.moving||e.trigger(pm,t)}),n.dbClickDelay)}},{key:"__clearDb",value:function(){clearTimeout(this.dbIntrvalId),this.dbIntrvalId=null}},{key:"on",value:function(t,e){this.__handlers[t]||(this.__handlers[t]=[]),this.__handlers[t].push(e)}},{key:"off",value:function(t,e){if(this.__handlers[t]){for(var n=this.__handlers[t],i=-1,r=0;r<n.length;r++)if(n[r]===e){i=r;break}i>=0&&this.__handlers[t].splice(i,1)}}},{key:"trigger",value:function(t,e){this.__handlers[t]&&this.__handlers[t].map((function(n){try{n(e)}catch(e){console.error("trigger>>:".concat(t),e)}}))}},{key:"onTouchStart",value:function(t){var e=this._pos,n=this.root;wm(t);var i=bm(t.touches);e.x=i?parseInt(i.pageX,10):t.pageX,e.y=i?parseInt(i.pageX,10):t.pageX,e.start=!0,this.__setPress(t),n.addEventListener(this.events.end,this.onTouchEnd),n.addEventListener(this.events.cancel,this.onTouchCancel),n.addEventListener(this.events.move,this.onTouchMove),this.trigger(vm,t)}},{key:"onTouchCancel",value:function(t){this.onTouchEnd(t)}},{key:"onTouchEnd",value:function(t){var e=this._pos,n=this.root;wm(t),this.__clearPress(),n.removeEventListener(this.events.cancel,this.onTouchCancel),n.removeEventListener(this.events.end,this.onTouchEnd),n.removeEventListener(this.events.move,this.onTouchMove),t.moving=e.moving,t.press=e.press,e.press&&this.trigger(fm,t),this.trigger(ym,t),!e.press&&!e.moving&&this.__setDb(t),e.press=!1,e.start=!1,e.moving=!1}},{key:"onTouchMove",value:function(t){var e=this._pos,n=this.config,i=bm(t.touches),r=i?parseInt(i.pageX,10):t.pageX,o=i?parseInt(i.pageY,10):t.pageX,s=r-e.x,a=o-e.y;Math.abs(a)<n.miniStep&&Math.abs(s)<n.miniStep||(this.__clearPress(),e.press&&this.trigger(fm,t),e.press=!1,e.moving=!0,this.trigger(gm,t))}},{key:"destroy",value:function(){var t=this,e={touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart"};Object.keys(e).map((function(n){t.root.removeEventListener("touchend",t[e[n]])}))}}]),t}();function xm(){return(new DOMParser).parseFromString('<svg width="20" height="9" viewBox="0 0 8 9" fill="none" xmlns="http://www.w3.org/2000/svg"\n xmlns:xlink="http://www.w3.org/1999/xlink">\n <path opacity="0.54"\n d="M7.5 3.63397C8.16667 4.01887 8.16667 4.98113 7.5 5.36603L1.5 8.83013C0.833334 9.21503 0 8.7339 0 7.9641L0 1.0359C0 0.266098 0.833333 -0.215027 1.5 0.169873L7.5 3.63397Z"\n fill="white" />\n <path transform="translate(5 0)" d="M7.5 3.63397C8.16667 4.01887 8.16667 4.98113 7.5 5.36603L1.5 8.83013C0.833334 9.21503 0 8.7339 0 7.9641L0 1.0359C0 0.266098 0.833333 -0.215027 1.5 0.169873L7.5 3.63397Z" fill="white"/>\n</svg>',"image/svg+xml").firstChild}function _m(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Em="auto",Tm="seeking",Sm="playbackrate",Pm=function(t){fi(n,t);var e=_m(n);function n(t){var i;return ui(this,n),yi(pi(i=e.call(this,t)),"onTouchStart",(function(t){var e=pi(i),n=e.player,r=e.config,o=e.pos,s=e.playerConfig,a=i.getTouche(t);if(a&&!r.disableGesture&&i.duration>0&&!n.ended){o.isStart=!0,Wd.checkIsFunction(s.disableSwipeHandler)&&s.disableSwipeHandler(),i.find(".xg-dur").innerHTML=Wd.format(i.duration);var c=i.root.getBoundingClientRect();90===n.rotateDeg?(o.top=c.left,o.left=c.top,o.width=c.height,o.height=c.width):(o.top=c.top,o.left=c.left,o.width=c.width,o.height=c.height),o.x=parseInt(a.pageX-o.left,10),o.y=parseInt(a.pageY-o.top,10),o.scopeL=r.scopeL*o.width,o.scopeR=(1-r.scopeR)*o.width,o.scopeM1=o.width*(1-r.scopeM)/2,o.scopeM2=o.width-o.scopeM1}})),yi(pi(i),"onTouchMove",(function(t){var e=i.getTouche(t),n=pi(i),r=n.pos,o=n.config,s=n.player;if(e&&!o.disableGesture&&i.duration&&r.isStart){var a=o.miniMoveStep,c=o.hideControlsActive,l=parseInt(e.pageX-r.left,10),u=parseInt(e.pageY-r.top,10);if(Math.abs(l-r.x)>a||Math.abs(u-r.y)>a){var h=l-r.x,f=u-r.y,d=r.scope;if(-1===d&&(0===(d=i.checkScope(l,u,h,f,r))&&(c?s.blur():s.focus({autoHide:!1}),!r.time&&(r.time=parseInt(1e3*s.currentTime,10)+1e3*i.timeOffset)),r.scope=d),-1===d||d>0&&!o.gestureY||0===d&&!o.gestureX)return;t.cancelable&&t.preventDefault(),i.executeMove(h,f,d,r.width,r.height),r.x=l,r.y=u}}})),yi(pi(i),"onTouchEnd",(function(t){var e=pi(i),n=e.player,r=e.pos,o=e.playerConfig;r.isStart&&(r.scope>-1&&t.cancelable&&t.preventDefault(),i.endLastMove(r.scope),setTimeout((function(){n.getPlugin("progress")&&n.getPlugin("progress").resetSeekState()}),10),r.scope=-1,i.resetPos(),Wd.checkIsFunction(o.enableSwipeHandler)&&o.enableSwipeHandler(),i.changeAction(Em))})),yi(pi(i),"onRootTouchMove",(function(t){!i.config.disableGesture&&i.config.gestureX&&i.checkIsRootTarget(t)&&(t.stopPropagation(),i.pos.isStart?i.onTouchMove(t):i.onTouchStart(t))})),yi(pi(i),"onRootTouchEnd",(function(t){if(i.pos.isStart&&i.checkIsRootTarget(t)){t.stopPropagation(),i.onTouchEnd(t);var e=i.player.controls;e&&e.recoverAutoHide()}})),i.pos={isStart:!1,x:0,y:0,time:0,volume:0,rate:1,light:0,width:0,height:0,scopeL:0,scopeR:0,scopeM1:0,scopeM2:0,scope:-1},i.timer=null,i}return Co(n,[{key:"duration",get:function(){return this.playerConfig.customDuration||this.player.duration}},{key:"timeOffset",get:function(){return this.playerConfig.timeOffset||0}},{key:"registerIcons",value:function(){return{seekTipIcon:{icon:xm,class:"xg-seek-pre"}}}},{key:"afterCreate",value:function(){var t=this,e=this.playerConfig,n=this.config,i=this.player;!0===e.closeVideoDblclick&&(n.closedbClick=!0),this.resetPos(),Wd.isUndefined(e.disableGesture)||(n.disableGesture=!!e.disableGesture),this.appendChild(".xg-seek-icon",this.icons.seekTipIcon),this.xgMask=Wd.createDom("xg-mask","",{},"xgmask"),i.root.appendChild(this.xgMask),this.initCustomStyle(),this.registerThumbnail();var r="mobile"!==Xd.device?"mouse":"touch";this.touch=new Cm(this.root,{eventType:r}),this.root.addEventListener("contextmenu",(function(t){t.preventDefault()})),i.root.addEventListener("touchmove",this.onRootTouchMove,!0),i.root.addEventListener("touchend",this.onRootTouchEnd,!0),this.on(cp,(function(){var e=t.player,n=t.config;1e3*e.duration<n.moveDuration&&(n.moveDuration=1e3*e.duration)})),this.on([ap,tp],(function(){var e=t.pos,n=e.time;!e.isStart&&n>0&&(t.pos.time=0)}));var o={touchstart:"onTouchStart",touchmove:"onTouchMove",touchend:"onTouchEnd",press:"onPress",pressend:"onPressEnd",click:"onClick",doubleclick:"onDbClick"};if(Object.keys(o).map((function(e){t.touch.on(e,(function(n){t[o[e]](n)}))})),!n.disableActive){var s=i.plugins.progress;s&&(s.addCallBack("dragmove",(function(e){t.activeSeekNote(e.currentTime,e.forward)})),s.addCallBack("dragend",(function(){t.changeAction(Em)})))}}},{key:"registerThumbnail",value:function(){var t=this.player.plugins.thumbnail;if(t&&t.usable){this.thumbnail=t.createThumbnail(null,"mobile-thumbnail");var e=this.find(".time-preview");e.insertBefore(this.thumbnail,e.children[0])}}},{key:"initCustomStyle",value:function(){var t=(this.playerConfig||{}).commonStyle,e=t.playedColor,n=t.progressColor;e&&(this.find(".xg-curbar").style.backgroundColor=e,this.find(".xg-cur").style.color=e),n&&(this.find(".xg-bar").style.backgroundColor=n,this.find(".time-preview").style.color=n),this.config.disableTimeProgress&&Wd.addClass(this.find(".xg-timebar"),"hide")}},{key:"resetPos",value:function(){var t=this;this.pos?(this.pos.isStart=!1,this.pos.scope=-1,["x","y","width","height","scopeL","scopeR","scopeM1","scopeM2"].map((function(e){t.pos[e]=0}))):this.pos={isStart:!1,x:0,y:0,volume:0,rate:1,light:0,width:0,height:0,scopeL:0,scopeR:0,scopeM1:0,scopeM2:0,scope:-1,time:0}}},{key:"changeAction",value:function(t){var e=this.player;this.root.setAttribute("data-xg-action",t);var n=e.plugins.start;n&&n.recover()}},{key:"getTouche",value:function(t){this.player.rotateDeg;var e=t.touches&&t.touches.length>0?t.touches[t.touches.length-1]:t;return{pageX:e.pageX,pageY:e.pageY}}},{key:"checkScope",value:function(t,e,n,i,r){var o=r.width,s=-1;if(t<0||t>o)return s;var a=0===i?Math.abs(n):Math.abs(n/i);return Math.abs(n)>0&&a>=1.73&&t>r.scopeM1&&t<r.scopeM2?s=0:(0===Math.abs(n)||a<=.57)&&(s=t<r.scopeL?1:t>r.scopeR?2:3),s}},{key:"executeMove",value:function(t,e,n,i,r){switch(n){case 0:this.updateTime(t/i*this.config.scopeM);break;case 1:this.updateBrightness(e/r);break;case 2:Xd.os.isIos||this.updateVolume(e/r)}}},{key:"endLastMove",value:function(t){var e=this,n=this.pos,i=this.player,r=this.config,o=(n.time-this.timeOffset)/1e3;switch(t){case 0:i.seek(Number(o).toFixed(1)),r.hideControlsEnd?i.blur():i.focus(),this.timer=setTimeout((function(){e.pos.time=0}),500)}this.changeAction(Em)}},{key:"checkIsRootTarget",value:function(t){var e=this.player.plugins||{};return(!e.progress||!e.progress.root.contains(t.target))&&(e.start&&e.start.root.contains(t.target)||e.controls&&e.controls.root.contains(t.target))}},{key:"sendUseAction",value:function(t){var e=this.player.paused;this.emitUserAction(t,"switch_play_pause",{prop:"paused",from:e,to:!e})}},{key:"onClick",value:function(t){var e=this.player,n=this.config,i=this.playerConfig;e.state<Zv?i.closeVideoClick||(this.sendUseAction(new Event("click")),e.play()):!n.closedbClick||i.closeVideoClick?e.isActive?e.blur():e.focus():i.closeVideoClick||(e.isActive&&(this.sendUseAction(new Event("click")),this.switchPlayPause()),e.focus())}},{key:"onDbClick",value:function(t){var e=this.config,n=this.player;!e.closedbClick&&n.state>=Zv&&(this.sendUseAction(new Event("dblclick")),this.switchPlayPause())}},{key:"onPress",value:function(t){var e=this.pos,n=this.config,i=this.player;n.disablePress||(e.rate=this.player.playbackRate,this.emitUserAction("press","change_rate",{prop:"playbackRate",from:i.playbackRate,to:n.pressRate}),i.playbackRate=n.pressRate,this.changeAction(Sm))}},{key:"onPressEnd",value:function(t){var e=this.pos,n=this.config,i=this.player;n.disablePress||(this.emitUserAction("pressend","change_rate",{prop:"playbackRate",from:i.playbackRate,to:e.rate}),i.playbackRate=e.rate,e.rate=1,this.changeAction(Em))}},{key:"updateTime",value:function(t){var e=this.player,n=this.config,i=this.player.duration;t=Number(t.toFixed(4));var r=parseInt(t*n.moveDuration,10)+this.timeOffset;r=(r+=this.pos.time)<0?0:r>1e3*i?1e3*i-200:r,e.getPlugin("time")&&e.getPlugin("time").updateTime(r/1e3),e.getPlugin("progress")&&e.getPlugin("progress").updatePercent(r/1e3/this.duration,!0),this.activeSeekNote(r/1e3,t>0),n.isTouchingSeek&&e.seek(Number((r-this.timeOffset)/1e3).toFixed(1)),this.pos.time=r}},{key:"updateVolume",value:function(t){this.player.rotateDeg&&(t=-t);var e=this.player,n=this.pos;if(t=parseInt(100*t,10),n.volume+=t,!(Math.abs(n.volume)<10)){var i=parseInt(10*e.volume,10)-parseInt(n.volume/10,10);i=i>10?10:i<1?0:i,e.volume=i/10,n.volume=0}}},{key:"updateBrightness",value:function(t){this.player.rotateDeg&&(t=-t);var e=this.pos,n=this.config,i=this.xgMask,r=e.light+.8*t;r=r>n.maxDarkness?n.maxDarkness:r<0?0:r,i&&(i.style.backgroundColor="rgba(0,0,0,".concat(r,")")),e.light=r}},{key:"activeSeekNote",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this.player,i=this.config,r=!(this.duration!==1/0&&this.duration>0);if(t&&"number"==typeof t&&!r&&!i.disableActive){t<0?t=0:t>n.duration&&(t=n.duration-.2),this.changeAction(Tm);var o=n.plugins.start;o&&o.focusHide(),this.find(".xg-dur").innerHTML=Wd.format(this.duration),this.find(".xg-cur").innerHTML=Wd.format(t),this.find(".xg-curbar").style.width="".concat(t/this.duration*100,"%"),e?Wd.removeClass(this.find(".xg-seek-show"),"xg-back"):Wd.addClass(this.find(".xg-seek-show"),"xg-back"),this.updateThumbnails(t)}}},{key:"updateThumbnails",value:function(t){var e=this.player.plugins.thumbnail;e&&e.usable&&this.thumbnail&&e.update(this.thumbnail,t,160,90)}},{key:"switchPlayPause",value:function(){var t=this.player;if(!t.state<qv)return!1;t.ended||(t.paused?t.play():t.pause())}},{key:"disableGesture",value:function(){this.config.disableGesture=!1}},{key:"enableGesture",value:function(){this.config.disableGesture=!0}},{key:"destroy",value:function(){var t=this.player;this.timer&&clearTimeout(this.timer),this.thumbnail=null,t.root.removeChild(this.xgMask),this.xgMask=null,this.touch&&this.touch.destroy(),this.touch=null,t.root.removeEventListener("touchmove",this.onRootTouchMove,!0),t.root.removeEventListener("touchend",this.onRootTouchEnd,!0)}},{key:"render",value:function(){var t="normal"!==this.config.gradient?"gradient ".concat(this.config.gradient):"gradient";return'\n <xg-trigger class="trigger">\n <div class="'.concat(t,'"></div>\n <div class="time-preview">\n <div class="xg-seek-show ').concat(this.config.disableSeekIcon?" hide-seek-icon":"",'">\n <i class="xg-seek-icon"></i>\n <span class="xg-cur">00:00</span>\n <span>/</span>\n <span class="xg-dur">00:00</span>\n </div>\n <div class="xg-bar xg-timebar">\n <div class="xg-curbar"></div>\n </div>\n </div>\n <div class="xg-playbackrate xg-top-note">\n <span><i>').concat(this.config.pressRate,"X</i>").concat(this.i18n.FORWARD,"</span>\n </div>\n </xg-trigger>\n ")}}],[{key:"pluginName",get:function(){return"mobile"}},{key:"defaultConfig",get:function(){return{index:0,disableGesture:!1,gestureX:!0,gestureY:!0,gradient:"normal",isTouchingSeek:!1,miniMoveStep:5,miniYPer:5,scopeL:.25,scopeR:.25,scopeM:.9,pressRate:2,darkness:!0,maxDarkness:.8,disableActive:!1,disableTimeProgress:!1,hideControlsActive:!1,hideControlsEnd:!1,moveDuration:36e4,closedbClick:!1,disablePress:!0,disableSeekIcon:!1}}}]),n}(Pg);function Rm(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,i)}return n}function Om(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}function Im(t){t.preventDefault(),t.returnValue=!1}function Lm(t){var e=t.tagName;return!("INPUT"!==e&&"TEXTAREA"!==e&&!t.isContentEditable)}var Am=function(t){fi(n,t);var e=Om(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"onBodyKeyDown",(function(e){var n=e||window.event;if(!(t.config.disable||t.config.disableBodyTrigger||!t.checkIsVisible()||n.metaKey||n.altKey||n.ctrlKey)){var i=n.keyCode;return!(n.target!==document.body&&(!t.config.isGlobalTrigger||Lm(n.target))||!t.checkCode(i,!0))&&(Im(n),t.handleKeyCode(i,e),!1)}})),yi(pi(t),"onKeydown",(function(e){var n=e||window.event;if(!(t.config.disable||n.metaKey||n.altKey||n.ctrlKey)){if(!n||37!==n.keyCode&&!t.checkCode(n.keyCode)||n.target!==t.player.root&&n.target!==t.player.video&&n.target!==t.player.controls.el)return!0;Im(n),t.handleKeyCode(n.keyCode,e)}})),t}return Co(n,[{key:"mergekeyCodeMap",value:function(){var t=this,e=this.config.keyCodeMap;e&&Object.keys(e).map((function(n){t.keyCodeMap[n]?["keyCode","action","disable","isBodyTarget"].map((function(i){e[n][i]&&(t.keyCodeMap[n][i]=e[n][i])})):t.keyCodeMap[n]=e[n]}))}},{key:"afterCreate",value:function(){this.config.disable=!this.playerConfig.keyShortcut;var t="function"==typeof this.config.seekStep?this.config.seekStep(this.player):this.config.seekStep;t&&"number"==typeof t&&(this.seekStep=t),this.keyCodeMap={space:{keyCode:32,action:"playPause",disable:!1,noBodyTarget:!1},up:{keyCode:38,action:"upVolume",disable:!1,noBodyTarget:!0},down:{keyCode:40,action:"downVolume",disable:!1,noBodyTarget:!0},left:{keyCode:37,action:"seekBack",disable:!1},right:{keyCode:39,action:"seek",disable:!1},esc:{keyCode:27,action:"exitFullscreen",disable:!1}},this.mergekeyCodeMap(),this.player.root.addEventListener("keydown",this.onKeydown),document.addEventListener("keydown",this.onBodyKeyDown)}},{key:"checkIsVisible",value:function(){if(!this.config.checkVisible)return!0;var t=this.player.root.getBoundingClientRect(),e=t.height,n=t.top,i=t.bottom,r=window.innerHeight;return!(n<0&&n<0-.9*e||i>0&&i-r>.9*e)}},{key:"checkCode",value:function(t,e){var n=this,i=!1;return Object.keys(this.keyCodeMap).map((function(r){n.keyCodeMap[r]&&t===n.keyCodeMap[r].keyCode&&!n.keyCodeMap[r].disable&&(i=!e||e&&!n.keyCodeMap[r].noBodyTarget)})),i}},{key:"downVolume",value:function(t){var e=this.player,n=parseFloat((e.volume-.1).toFixed(1));this.emitUserAction(t,"change_volume",{prop:"volume",from:e.volume,to:n}),e.volume=n>=0?n:0}},{key:"upVolume",value:function(t){var e=this.player,n=parseFloat((e.volume+.1).toFixed(1));this.emitUserAction(t,"change_volume",{prop:"volume",from:e.volume,to:n}),e.volume=n<=1?n:1}},{key:"seek",value:function(t){var e=this.player,n=e.currentTime,i=e.duration,r=n;r=n+this.seekStep<=i?n+this.seekStep:i-1,this.emitUserAction(t,"seek",{prop:"currentTime",from:n,to:r}),this.player.currentTime=r}},{key:"seekBack",value:function(t){var e=this.player.currentTime,n=0;e-this.seekStep>=0&&(n=e-this.seekStep),this.emitUserAction(t,"seek",{prop:"currentTime",from:e,to:n}),this.player.currentTime=n}},{key:"playPause",value:function(t){var e=this.player;this.emitUserAction(t,"switch_play_pause",{prop:"paused",from:e.paused,to:!e.paused}),e.paused?e.play():e.pause()}},{key:"exitFullscreen",value:function(t){console.log("exitFullscreen",t);var e=this.player,n=e.isCssfullScreen,i=e.fullscreen;i&&(this.emitUserAction("keyup","switch_fullscreen",{prop:"fullscreen",from:i,to:!i}),e.exitFullscreen()),n&&(this.emitUserAction("keyup","switch_css_fullscreen",{prop:"cssfullscreen",from:n,to:!n}),e.exitCssFullscreen())}},{key:"handleKeyCode",value:function(t,e){var n=this;Object.keys(this.keyCodeMap).map((function(i){var r=n.keyCodeMap[i],o=r.action,s=r.keyCode,a=r.disable;s!==t||a||("function"==typeof o?o(e,n.player):"string"==typeof o&&"function"==typeof n[o]&&n[o](e,n.player),n.emit(Mp,function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Rm(Object(n),!0).forEach((function(e){yi(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Rm(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({key:i,target:e.target},n.keyCodeMap[i])))}))}},{key:"destroy",value:function(){this.player.root.removeEventListener("keydown",this.onKeydown),document.removeEventListener("keydown",this.onBodyKeyDown)}},{key:"disable",value:function(){this.config.disable=!0}},{key:"enable",value:function(){this.config.disable=!1}}],[{key:"pluginName",get:function(){return"keyboard"}},{key:"defaultConfig",get:function(){return{seekStep:10,checkVisible:!0,disableBodyTrigger:!1,isGlobalTrigger:!1,keyCodeMap:{},disable:!1}}}]),n}(dg);function Dm(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="-5 -5 110 110">\n <path d="M100,50A50,50,0,1,1,50,0" stroke-width="5" stroke="#ddd" stroke-dasharray="236" fill="none"></path>\n</svg>\n',"image/svg+xml").firstChild}function Mm(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Nm=function(t){fi(n,t);var e=Mm(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"registerIcons",value:function(){return{loadingIcon:Dm}}},{key:"afterCreate",value:function(){this.appendChild("xg-loading-inner",this.icons.loadingIcon)}},{key:"render",value:function(){return'\n <xg-loading class="xgplayer-loading">\n <xg-loading-inner></xg-loading-inner>\n </xg-loading>'}}],[{key:"pluginName",get:function(){return"loading"}},{key:"defaultConfig",get:function(){return{position:wg.ROOT}}}]),n}(Pg),Fm=En,jm=Zi.findIndex,Bm=Zp,Hm="findIndex",Um=!0;Hm in[]&&Array(1).findIndex((function(){Um=!1})),Fm({target:"Array",proto:!0,forced:Um},{findIndex:function(t){return jm(this,t,arguments.length>1?arguments[1]:void 0)}}),Bm(Hm);var Vm=[{tag:"xg-cache",className:"xgplayer-progress-cache",styleKey:"cachedColor"},{tag:"xg-played",className:"xgplayer-progress-played",styleKey:"playedColor"}],Gm=function(){function t(e){ui(this,t),this.fragments=e.fragments||[],this.focusClass="inner-focus",this.style=e.style||{playedColor:"",cachedColor:"",progressColor:""},this.duration=0,this.cachedIndex=0,this.playedIndex=0}return Co(t,[{key:"updateDuration",value:function(t){var e=this;this.duration=parseInt(1e3*t);var n=0,i=this.fragments;this.fragments=i.map((function(t){return t.start=n,t.end=n+t.percent*e.duration,t.duration=t.percent*e.duration,n+=t.percent*e.duration,t}))}},{key:"updateProgress",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"played",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{newIndex:0,curIndex:0,millisecond:0},n=this.progressList,i=this.fragments,r=e.newIndex,o=e.curIndex,s=e.millisecond;r!==o&&n.map((function(e,n){n<r?e[t].style.width="100%":n>r&&(e[t].style.width=0)}));var a=i[r],c=0===s?0:(s-a.start)/a.duration;n[r][t].style.width=c<0?0:"".concat(100*c,"%")}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{cached:0,played:0},e=arguments.length>1?arguments[1]:void 0;if(!this.duration||parseInt(1e3*e,10)!==this.duration){if(!e&&0!==e)return;this.updateDuration(e)}var n=this.playedIndex,i=this.cachedIndex;if("Undefined"!==Wd.typeOf(t.played)){var r=this.findIndex(1e3*t.played,n);this.updateProgress("played",{newIndex:r,curIndex:n,millisecond:parseInt(1e3*t.played,10)}),this.playedIndex=r}if("Undefined"!==Wd.typeOf(t.cached)){var o=this.findIndex(1e3*t.cached,i);this.updateProgress("cached",{newIndex:o,curIndex:i,millisecond:parseInt(1e3*t.cached,10)}),this.cachedIndex=o}}},{key:"findIndex",value:function(t,e){var n=this.fragments;return 1===n.length?0:(t>n[e].start&&t<n[e].end||this.fragments.map((function(n,i){t>n.start&&t<=n.end&&(e=i)})),e)}},{key:"findHightLight",value:function(){for(var t=this.root.children,e=0;e<t.length;e++)if(Wd.hasClass(t[e],this.focusClass))return{dom:t[e],pos:t[e].getBoundingClientRect()}}},{key:"findFragment",value:function(t){var e=this.root.children;return t<0||t>=e.length?null:{dom:e[t],pos:e[t].getBoundingClientRect()}}},{key:"unHightLight",value:function(){for(var t=this.root.children,e=0;e<t.length;e++)Wd.removeClass(t[e],this.focusClass)}},{key:"setHightLight",value:function(t){var e=this.root.children;if(t<e.length)return Wd.addClass(e[t],this.focusClass),{dom:e[t],pos:e[t].getBoundingClientRect()}}},{key:"destroy",value:function(){this.progressList=null,this.fragments=null,this.root.innerHTML=""}},{key:"render",value:function(){var t=this,e=this.style.progressColor;return this.root=Wd.createDom("xg-inners","",{},"progress-list"),this.fragments&&(this.progressList=this.fragments.map((function(n){var i=Wd.createDom("xg-inner","",{style:e?"background:".concat(e,"; flex: ").concat(n.percent):"flex: ".concat(n.percent)},"".concat(n.isFocus?"inner-focus":""," xgplayer-progress-inner"));return t.root.appendChild(i),Vm.map((function(e){i.appendChild(Wd.createDom(e.tag,"",{style:e.styleKey?"background: ".concat(t.style[e.styleKey],"; width:0;"):"width:0;"},e.className))})),{cached:i.children[0],played:i.children[1]}}))),this.root}}]),t}();function Wm(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Ym=function(t){fi(n,t);var e=Wm(n);function n(t){var i;return ui(this,n),yi(pi(i=e.call(this,t)),"onMoveOnly",(function(t){var e=pi(i),n=e.pos,r=e.config,o=e.player;Wd.event(t);var s=Wd.getEventPos(t,o.zoom),a=90===o.rotateDeg?s.clientY:s.clientX;if(!(n.moving&&Math.abs(n.x-a)<r.miniMoveStep)){n.moving=!0,n.x=a;var c=i.computeTime(t);i.triggerCallbacks("dragmove",c)}})),yi(pi(i),"onBodyClick",(function(t){t.preventDefault(),t.stopPropagation()})),yi(pi(i),"onMouseDown",(function(t){var e=pi(i),n=e.player,r=e.pos,o=e.config,s=e.playerConfig,a=Wd.getEventPos(t,n.zoom),c=90===n.rotateDeg?a.clientY:a.clientX;if(!(n.isMini||o.closeMoveSeek||!s.allowSeekAfterEnded&&n.ended)){t.stopPropagation(),t.preventDefault(),i.focus(),Wd.checkIsFunction(s.disableSwipeHandler)&&s.disableSwipeHandler(),Wd.checkIsFunction(o.onMoveStart)&&o.onMoveStart(),Wd.event(t),r.x=c,r.isDown=!0,r.moving=!1,n.focus({autoHide:!1}),i.isProgressMoving=!0,Wd.addClass(i.progressBtn,"active");var l=i.computeTime(t);return i._state.time=l.currentTime,i.updateWidth(l.currentTime,l.percent,0),i.isMobile?(i.bind("touchmove",i.onMouseMove),i.bind("touchend",i.onMouseUp)):(i.unbind("mousemove",i.onMoveOnly),document.addEventListener("mousemove",i.onMouseMove,!1),document.addEventListener("mouseup",i.onMouseUp,!1),n.root.addEventListener("click",i.onBodyClick,!1)),!0}})),yi(pi(i),"onMouseUp",(function(t){var e=pi(i),n=e.player,r=e.config,o=e.pos,s=e.playerConfig,a=e._state;t.stopPropagation(),t.preventDefault(),Wd.checkIsFunction(s.enableSwipeHandler)&&s.enableSwipeHandler(),Wd.checkIsFunction(r.onMoveEnd)&&r.onMoveEnd(),Wd.event(t),Wd.removeClass(i.progressBtn,"active");var c=i.computeTime(t);o.moving?(i.updateWidth(c.currentTime,c.percent,2),i.triggerCallbacks("dragend",c)):i.triggerCallbacks("click",c),o.moving=!1,o.isDown=!1,o.x=0,o.y=0,a.time=0,i.isMobile?(i.unbind("touchmove",i.onMouseMove),i.unbind("touchend",i.onMouseUp),i.blur()):(document.removeEventListener("mousemove",i.onMouseMove,!1),document.removeEventListener("mouseup",i.onMouseUp,!1),n.root.removeEventListener("click",i.onBodyClick,!1),o.isEnter?!s.isMobileSimulateMode&&i.bind("mousemove",i.onMoveOnly):i.onMouseLeave(t)),Wd.setTimeout(pi(i),(function(){i.resetSeekState()}),10),n.focus()})),yi(pi(i),"onMouseMove",(function(t){var e=pi(i),n=e.pos,r=e.player,o=e.config,s=e._state;i.isMobile&&(t.stopPropagation(),t.preventDefault()),Wd.event(t);var a=Wd.getEventPos(t,r.zoom),c=90===r.rotateDeg?a.clientY:a.clientX,l=Math.abs(n.x-c);if(!(n.moving&&l<o.miniMoveStep||!n.moving&&l<o.miniStartStep)){n.x=c;var u=i.computeTime(t);s.time<u.currentTime?u.forward=!0:u.forward=!1,s.time=u.currentTime,n.isDown&&!n.moving&&(n.moving=!0,o.isPauseMoving&&r.pause(),i.triggerCallbacks("dragstart",u)),i.updateWidth(u.currentTime,u.percent,1),i.triggerCallbacks("dragmove",u)}})),yi(pi(i),"onMouseEnter",(function(t){var e=pi(i),n=e.player,r=e.pos;r.isDown||r.isEnter||n.isMini||!n.config.allowSeekAfterEnded&&n.ended||(r.isEnter=!0,i.bind("mousemove",i.onMoveOnly),i.bind("mouseleave",i.onMouseLeave),i.focus())})),yi(pi(i),"onMouseLeave",(function(t){var e=pi(i),n=e.player,r=e.pos;r.isEnter=!1,n.isMini||(i.unbind("mousemove",i.onMoveOnly),r.isDown?i.unbind("mouseleave",i.onMouseLeave):i.blur())})),i.useable=!1,i.isProgressMoving=!1,i.__dragCallBacks=[],i._state={now:-1,direc:0,time:0},i}return Co(n,[{key:"duration",get:function(){return this.playerConfig.customDuration||this.player.duration}},{key:"timeOffset",get:function(){return this.playerConfig.timeOffset||0}},{key:"changeState",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.useable=t}},{key:"createInner",value:function(){var t=this;this.innerList=new Gm({fragments:this.config.fragments,style:this.playerConfig.commonStyle||{}}),this.outer.insertBefore(this.innerList.render(),this.outer.children[0]),["findHightLight","unHightLight","setHightLight","findFragment"].map((function(e){t[e]=t.innerList[e].bind(t.innerList)}))}},{key:"afterCreate",value:function(){var t=this;this.config.disable||this.playerConfig.isLive||(this.pos={x:0,y:0,moving:!1,isDown:!1,isEnter:!1},this.outer=this.find("xg-outer"),this.createInner(),"mobile"===Xd.device&&(this.config.isDragingSeek=!1,this.isMobile=!0),this.progressBtn=this.find(".xgplayer-progress-btn"),this.on(op,(function(){t.onTimeupdate()})),this.on(rp,(function(){t.onTimeupdate(),t.onCacheUpdate()})),this.on(fp,(function(){t.onCacheUpdate()})),this.on(tp,(function(){t.onCacheUpdate(),t._state.now=0})),this.on(pp,(function(){t.onReset()})),this.bindDomEvents(),this.initCustomStyle())}},{key:"initCustomStyle",value:function(){var t=(this.playerConfig||{}).commonStyle.sliderBtnStyle,e=this.progressBtn;t&&("string"==typeof t?e.style.boxShadow=t:"object"===di(t)&&Object.keys(t).map((function(n){e.style[n]=t[n]})))}},{key:"triggerCallbacks",value:function(t,e){this.__dragCallBacks.length>0&&this.__dragCallBacks.map((function(n){if(n&&n.handler&&n.type===t)try{n.handler(e)}catch(t){console.error("[XGPLAYER][triggerCallbacks] ".concat(n," error"),t)}}))}},{key:"addCallBack",value:function(t,e){e&&"function"==typeof e&&this.__dragCallBacks.push({type:t,handler:e})}},{key:"removeCallBack",value:function(t,e){var n=this.__dragCallBacks,i=-1;n.map((function(n,r){n&&n.type===t&&n.handler===e&&(i=r)})),i>-1&&n.splice(i,1)}},{key:"bindDomEvents",value:function(){var t=this.player,e=t.controls,n=t.config;this.isMobile?(this.bind("touchstart",this.onMouseDown),e&&(e.root&&e.root.addEventListener("touchmove",Wd.stopPropagation),e.center&&e.center.addEventListener("touchend",Wd.stopPropagation))):(this.bind("mousedown",this.onMouseDown),!n.isMobileSimulateMode&&this.bind("mouseenter",this.onMouseEnter))}},{key:"focus",value:function(){this.player.controls.pauseAutoHide(),Wd.addClass(this.root,"active")}},{key:"blur",value:function(){this.player.controls.recoverAutoHide(),Wd.removeClass(this.root,"active")}},{key:"updateWidth",value:function(t,e,n){var i=this.config,r=this.player;if(!i.isCloseClickSeek||0!==n){var o=t>r.duration?r.duration-.2:Number(t).toFixed(1);this.updatePercent(e),this.updateTime(t),(1!==n||i.isDragingSeek&&"audio"!==r.videoConfig.mediaType)&&(this._state.now=o,this._state.direc=o>r.currentTime?0:1,r.seek(o))}}},{key:"computeTime",value:function(t){var e,n,i,r=this.player,o=this.root.getBoundingClientRect(),s=o.width,a=o.height,c=o.top,l=o.left,u=Wd.getEventPos(t,r.zoom);90===r.rotateDeg?(e=a,n=c,i=u.clientY):(e=s,n=l,i=u.clientX);var h=i-n,f=(h=h>e?e:h<0?0:h)/e;return{percent:f=f<0?0:f>1?1:f,currentTime:parseInt(f*this.duration*1e3,10)/1e3,offset:h,width:e,left:n,e:t}}},{key:"updateTime",value:function(t){var e=this.player,n=this.duration;t>n?t=n:t<0&&(t=0);var i=e.plugins.time;i&&i.updateTime(t)}},{key:"resetSeekState",value:function(){this.isProgressMoving=!1;var t=this.player.plugins.time;t&&t.resetActive()}},{key:"updatePercent",value:function(t,e){if(this.isProgressMoving=!0,!this.config.disable){t=t>1?1:t<0?0:t,this.progressBtn.style.left="".concat(100*t,"%"),this.innerList.update({played:t*this.duration},this.duration);var n=this.player.plugins.miniprogress;n&&n.update({played:t*this.duration},this.duration)}}},{key:"onTimeupdate",value:function(){var t=this.player,e=this._state,n=this.duration;if(!(t.isSeeking||this.isProgressMoving||t.state<Zv)){if(e.now>-1){var i=parseInt(1e3*e.now,10)-parseInt(1e3*t.currentTime,10);if(0===e.direc&&i>300||1===e.direc&&i>-300)return void(e.now=-1);e.now=-1}var r=this.timeOffset+t.currentTime;this.innerList.update({played:r},n),this.progressBtn.style.left="".concat(r/n*100,"%");var o=this.player.plugins.miniprogress;o&&o.update({played:r},n)}}},{key:"onCacheUpdate",value:function(){var t=this.player,e=this.duration,n=t.bufferedPoint;this.innerList.update({cached:n.end},e);var i=this.player.plugins.miniprogress;i&&i.update({cached:n.end},e)}},{key:"onReset",value:function(){this.innerList.update({played:0,cached:0},0);var t=this.player.plugins.miniprogress;t&&t.update({cached:0,played:0},0)}},{key:"destroy",value:function(){var t=this.player,e=t.controls;this.thumbnailPlugin=null,this.innerList.destroy(),this.innerList=null,this.isMobile?(this.unbind("touchstart",this.onMouseDown),this.unbind("touchmove",this.onMouseMove),this.unbind("touchend",this.onMouseUp),e&&(e.root&&e.root.removeEventListener("touchmove",Wd.stopPropagation),e.center&&e.center.removeEventListener("touchend",Wd.stopPropagation))):(this.unbind("mousedown",this.onMouseDown),this.unbind("mouseenter",this.onMouseEnter),this.unbind("mousemove",this.onMoveOnly),document.removeEventListener("mousemove",this.onMouseMove,!1),document.removeEventListener("mouseup",this.onMouseUp,!1),t.root.removeEventListener("click",this.onBodyClick,!1))}},{key:"render",value:function(){if(!this.config.disable&&!this.playerConfig.isLive){var t=this.player.controls?this.player.controls.config.mode:"";return'\n <xg-progress class="xgplayer-progress '.concat("bottom"===t?"xgplayer-progress-bottom":"",'">\n <xg-outer class="xgplayer-progress-outer">\n <xg-progress-btn class="xgplayer-progress-btn"></xg-progress-btn>\n </xg-outer>\n </xg-progress>\n ')}}}],[{key:"pluginName",get:function(){return"progress"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_CENTER,index:0,disable:!1,isDragingSeek:!0,closeMoveSeek:!1,isPauseMoving:!1,isCloseClickSeek:!1,fragments:[{percent:1}],miniMoveStep:5,miniStartStep:2,onMoveStart:function(){},onMoveEnd:function(){}}}}]),n}(Pg);function Km(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var zm=function(t){fi(n,t);var e=Km(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){var t=this,e=this.player;this.config.disable||(this.initIcons(),this.btnClick=this.btnClick.bind(this),this.bind(["touchend","click"],this.btnClick),this.on(ep,(function(){t.animate(e.paused)})),this.on(Jd,(function(){t.animate(e.paused)})),this.animate(!0))}},{key:"registerIcons",value:function(){return{play:{icon:_y,class:"xg-icon-play"},pause:{icon:Ey,class:"xg-icon-pause"}}}},{key:"btnClick",value:function(t){t.preventDefault(),t.stopPropagation();var e=this.player;return this.emitUserAction(t,"switch_play_pause",{prop:"paused",from:e.paused,to:!e.paused}),e.paused?(e.play(),this.animate(!1)):(e.pause(),this.animate(!0)),!1}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(".xgplayer-icon",t.play),this.appendChild(".xgplayer-icon",t.pause)}},{key:"animate",value:function(t){var e=this.i18nKeys;t?(this.setAttr("data-state","pause"),this.changeLangTextKey(this.find(".xg-tips"),e.PLAY_TIPS)):(this.setAttr("data-state","play"),this.changeLangTextKey(this.find(".xg-tips"),e.PAUSE_TIPS))}},{key:"destroy",value:function(){this.unbind(["touchend","click"],this.btnClick)}},{key:"render",value:function(){if(!this.config.disable)return'<xg-icon class="xgplayer-play">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys.PLAY_TIPS,'">').concat(this.i18n.PLAY_TIPS,"</div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"play"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_LEFT,index:0,disable:!1}}}]),n}(Pg);function Xm(){return(new DOMParser).parseFromString('<svg width="32px" height="40px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">\n <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">\n <path d="M11.2374369,14 L17.6187184,7.61871843 C17.9604272,7.27700968 17.9604272,6.72299032 17.6187184,6.38128157 C17.2770097,6.03957281 16.7229903,6.03957281 16.3812816,6.38128157 L9.38128157,13.3812816 C9.03957281,13.7229903 9.03957281,14.2770097 9.38128157,14.6187184 L16.3812816,21.6187184 C16.7229903,21.9604272 17.2770097,21.9604272 17.6187184,21.6187184 C17.9604272,21.2770097 17.9604272,20.7229903 17.6187184,20.3812816 L11.2374369,14 L11.2374369,14 Z" fill="#FFFFFF"></path>\n </g>\n</svg>',"image/svg+xml").firstChild}function qm(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var $m=function(t){fi(n,t);var e=qm(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){var t=this;this.initIcons(),this.onClick=function(e){e.preventDefault(),e.stopPropagation(),t.config.onClick(e)},this.bind(["click","touchend"],this.onClick)}},{key:"registerIcons",value:function(){return{screenBack:{icon:Xm,class:"xg-fullscreen-back"}}}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(this.root,t.screenBack)}},{key:"show",value:function(){Wd.addClass(this.root,"show")}},{key:"hide",value:function(){Wd.removeClass(this.root,"show")}},{key:"render",value:function(){return'<xg-icon class="xgplayer-back">\n </xg-icon>'}}],[{key:"pluginName",get:function(){return"topbackicon"}},{key:"defaultConfig",get:function(){return{position:wg.ROOT_TOP,index:0}}}]),n}(Pg);function Zm(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="2 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M598 214h212v212h-84v-128h-128v-84zM726 726v-128h84v212h-212v-84h128zM214 426v-212h212v84h-128v128h-84zM298 598v128h128v84h-212v-212h84z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Jm(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="2 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M682 342h128v84h-212v-212h84v128zM598 810v-212h212v84h-128v128h-84zM342 342v-128h84v212h-212v-84h128zM214 682v-84h212v212h-84v-128h-128z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Qm(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var tk=function(t){fi(n,t);var e=Qm(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"_onOrientationChange",(function(e){t.player.fullscreen&&t.config.rotateFullscreen&&(90===window.orientation||-90===window.orientation?t.setRotateDeg(0):t.setRotateDeg(90))})),t}return Co(n,[{key:"afterCreate",value:function(){var t=this,e=this.config,n=this.playerConfig;if(!e.disable){e.target&&(this.playerConfig.fullscreenTarget=this.config.target);var i=Wd.getFullScreenEl();n.fullscreenTarget===i&&this.player.getFullscreen(),this.initIcons(),this.handleFullscreen=this.hook("fullscreenChange",this.changeFullScreen,{pre:function(e){var n=t.player.fullscreen;t.emitUserAction(e,"switch_fullscreen",{prop:"fullscreen",from:n,to:!n})}}),this.bind(".xgplayer-fullscreen","mobile"===Xd.device?"touchend":"click",this.handleFullscreen),this.on(Ep,(function(e){t.changeLangTextKey(t.find(".xg-tips"),e?t.i18nKeys.EXITFULLSCREEN_TIPS:t.i18nKeys.FULLSCREEN_TIPS),t.animate(e),t.config.needBackIcon&&t.show()})),this.config.needBackIcon&&(this.topBackIcon=this.player.registerPlugin({plugin:$m,options:{config:{onClick:function(e){t.handleFullscreen(e)}}}})),"mobile"===Xd.device&&window.addEventListener("orientationchange",this._onOrientationChange)}}},{key:"registerIcons",value:function(){return{fullscreen:{icon:Zm,class:"xg-get-fullscreen"},exitFullscreen:{icon:Jm,class:"xg-exit-fullscreen"}}}},{key:"destroy",value:function(){this.unbind(".xgplayer-icon","mobile"===Xd.device?"touchend":"click",this.handleFullscreen),"mobile"===Xd.device&&window.removeEventListener("orientationchange",this._onOrientationChange)}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(".xgplayer-icon",t.fullscreen),this.appendChild(".xgplayer-icon",t.exitFullscreen)}},{key:"setRotateDeg",value:function(t){var e=this.player;90===window.orientation||-90===window.orientation?e.rotateDeg=0:e.rotateDeg=t}},{key:"getRotateFullscreen",value:function(t){var e=this.player;e.isCssfullScreen&&e.exitCssFullscreen(t);var n=t?Wv.INNER_FULLSCREEN:Wv.ROTATE_FULLSCREEN;e._fullscreenEl=t||e.root,e.changeFullStyle(e.root,t,n,Wv.PARENT_ROTATE_FULLSCREEN),e.fullscreen=!0,this.setRotateDeg(90),this.emit(Ep,!0)}},{key:"exitRotateFullscreen",value:function(t){var e=this.player;e.fullscreen=!1;var n=e._fullscreenEl!==e.root?Wv.INNER_FULLSCREEN:Wv.ROTATE_FULLSCREEN;e.recoverFullStyle(e.root,e._fullscreenEl,n,Wv.PARENT_ROTATE_FULLSCREEN),this.setRotateDeg(0),this.emit(Ep,!1)}},{key:"changeFullScreen",value:function(t){t&&(t.preventDefault(),t.stopPropagation());var e=this.player,n=this.config,i=!1;if((!0===n.useCssFullscreen||"function"==typeof n.useCssFullscreen&&n.useCssFullscreen())&&(i=!0),i)e.fullscreen?(e.fullscreen=!1,e.exitCssFullscreen(),this.emit(Ep,!1)):(e.fullscreen=!0,e.getCssFullscreen(),this.emit(Ep,!0)),this.animate(e.fullscreen);else if(n.rotateFullscreen)e.fullscreen?this.exitRotateFullscreen():this.getRotateFullscreen(),this.animate(e.fullscreen);else{if(n.switchCallback&&"function"==typeof n.switchCallback)return void n.switchCallback(e.fullscreen);e.fullscreen?e.exitFullscreen():e.getFullscreen()}}},{key:"animate",value:function(t){t?this.setAttr("data-state","full"):this.setAttr("data-state","normal"),this.topBackIcon&&(t?(this.topBackIcon.show(),this.hide()):(this.topBackIcon.hide(),this.show()))}},{key:"show",value:function(){xo(vi(n.prototype),"show",this).call(this)}},{key:"hide",value:function(){xo(vi(n.prototype),"hide",this).call(this)}},{key:"render",value:function(){if(!this.config.disable){var t="FULLSCREEN_TIPS";return'<xg-icon class="xgplayer-fullscreen">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys[t],'">').concat(this.i18n[t],"</div>\n </xg-icon>")}}}],[{key:"pluginName",get:function(){return"fullscreen"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:0,useCssFullscreen:!1,rotateFullscreen:!1,switchCallback:null,target:null,disable:!1,needBackIcon:!1}}}]),n}(Pg);function ek(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var nk=function(t){fi(n,t);var e=ek(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).isActiving=!1,i}return Co(n,[{key:"duration",get:function(){return this.playerConfig.customDuration||this.player.duration}},{key:"timeOffset",get:function(){return this.playerConfig.timeOffset||0}},{key:"afterCreate",value:function(){var t=this,e=this.player.controls.config.mode;this.mode="flex"===e?"flex":"normal",this.config.disable||("flex"===this.mode&&(this.createCenterTime(),this.hide()),this.durationDom=this.find(".time-duration"),this.timeDom=this.find(".time-current"),this.on(cp,(function(){t.onTimeUpdate()})),this.on(op,(function(){t.onTimeUpdate()})),this.on(pp,(function(){t.onReset()})))}},{key:"show",value:function(){"flex"!==this.mode&&xo(vi(n.prototype),"show",this).call(this)}},{key:"onTimeUpdate",value:function(){var t=this.player;if(!(this.config.disable||this.isActiving||t.state<Zv)){var e=t.currentTime+this.timeOffset;"flex"===this.mode?(this.centerCurDom.innerHTML=Wd.format(e),this.duration!==1/0&&this.duration>0&&(this.centerDurDom.innerHTML=Wd.format(this.duration))):(this.timeDom.innerHTML=Wd.format(e),this.duration!==1/0&&this.duration>0&&(this.durationDom.innerHTML=Wd.format(this.duration)))}}},{key:"onReset",value:function(){"flex"===this.mode?(this.centerCurDom.innerHTML=Wd.format(0),this.centerDurDom.innerHTML=Wd.format(0)):(this.timeDom.innerHTML=Wd.format(0),this.durationDom.innerHTML=Wd.format(0))}},{key:"createCenterTime",value:function(){var t=this.player;if(t.controls&&t.controls.center){var e=t.controls.center;this.centerCurDom=Wd.createDom("xg-icon","00:00",{},"xgplayer-time left"),this.centerDurDom=Wd.createDom("xg-icon","00:00",{},"xgplayer-time right"),e.children.length>0?e.insertBefore(this.centerCurDom,e.children[0]):e.appendChild(this.centerCurDom),e.appendChild(this.centerDurDom)}}},{key:"afterPlayerInit",value:function(){var t=this.config;this.duration===1/0||this.playerConfig.isLive?(Wd.hide(this.durationDom),Wd.hide(this.timeDom),Wd.hide(this.find(".time-separator")),Wd.show(this.find(".time-live-tag"))):Wd.hide(this.find(".time-live-tag")),t.hide?this.hide():this.show()}},{key:"changeLiveState",value:function(t){t?(Wd.hide(this.durationDom),Wd.hide(this.timeDom),Wd.hide(this.find(".time-separator")),Wd.show(this.find(".time-live-tag"))):(Wd.hide(this.find(".time-live-tag")),Wd.show(this.find(".time-separator")),Wd.show(this.durationDom),Wd.show(this.timeDom))}},{key:"updateTime",value:function(t){this.isActiving=!0,!t&&0!==t||t>this.duration||("flex"!==this.mode?this.timeDom.innerHTML=Wd.format(t):this.centerCurDom.innerHTML=Wd.format(t))}},{key:"resetActive",value:function(){var t=this,e=this.player,n=function(){t.isActiving=!1};this.off(rp,n),e.isSeeking?this.once(rp,n):this.isActiving=!1}},{key:"destroy",value:function(){var t=this.player.controls.center;this.centerCurDom&&t.removeChild(this.centerCurDom),this.centerCurDom=null,this.centerDurDom&&t.removeChild(this.centerDurDom),this.centerDurDom=null}},{key:"render",value:function(){if(!this.config.disable)return'<xg-icon class="xgplayer-time">\n <span class="time-current">00:00</span>\n <span class="time-separator">/</span>\n <span class="time-duration">00:00</span>\n <span class="time-live-tag">'.concat(this.i18n.LIVE_TIP,"</span>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"time"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_LEFT,index:2,disable:!1}}}]),n}(Pg);function ik(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M940.632 837.632l-72.192-72.192c65.114-64.745 105.412-154.386 105.412-253.44s-40.299-188.695-105.396-253.424l-0.016-0.016 72.192-72.192c83.639 83.197 135.401 198.37 135.401 325.632s-51.762 242.434-135.381 325.612l-0.020 0.020zM795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021z"></path>\n</svg>\n',"image/svg+xml").firstChild}function rk(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021zM795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021z"></path>\n</svg>\n',"image/svg+xml").firstChild}function ok(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M920.4 439.808l-108.544-109.056-72.704 72.704 109.568 108.544-109.056 108.544 72.704 72.704 108.032-109.568 108.544 109.056 72.704-72.704-109.568-108.032 109.056-108.544-72.704-72.704-108.032 109.568z"></path>\n</svg>\n',"image/svg+xml").firstChild}function sk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var ak=function(t){fi(n,t);var e=sk(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"onBarMousedown",(function(e){var n=pi(t).player,i=t.find(".xgplayer-slider"),r=t.find(".xgplayer-bar");i.focus(),Wd.event(e);var o=r.getBoundingClientRect(),s=Wd.getEventPos(e,n.zoom),a=(s.clientX,s.clientY),c=o.height-(s.clientY-o.top);t.updateVolumePos(c,e),t.isMoving=!1;var l=function(e){e.preventDefault(),e.stopPropagation(),Wd.event(e);var i=Wd.getEventPos(e,n.zoom);t.isMoving=!0;var r=c-i.clientY+a;r>o.height||t.updateVolumePos(r,e)},u=function e(n){n.preventDefault(),n.stopPropagation(),Wd.event(n),window.removeEventListener("mousemove",l),window.removeEventListener("touchmove",l),window.removeEventListener("mouseup",e),window.removeEventListener("touchend",e),t.isMoving=!1};return window.addEventListener("mousemove",l),window.addEventListener("touchmove",l),window.addEventListener("mouseup",u),window.addEventListener("touchend",u),!1})),yi(pi(t),"onMouseenter",(function(e){Wd.addClass(t.root,"slide-show")})),yi(pi(t),"onMouseleave",(function(e){Wd.removeClass(t.root,"slide-show")})),yi(pi(t),"onVolumeChange",(function(e){var n=t.player,i=n.muted,r=n.volume;t.isMoving||(t.find(".xgplayer-drag").style.height=i||0===r?"0px":"".concat(100*r,"%")),t.animate(i,r)})),t}return Co(n,[{key:"registerIcons",value:function(){return{volumeSmall:{icon:rk,class:"xg-volume-small"},volumeLarge:{icon:ik,class:"xg-volume"},volumeMuted:{icon:ok,class:"xg-volume-mute"}}}},{key:"afterCreate",value:function(){var t=this;if(!this.config.disable){this.initIcons();var e=this.playerConfig,n=e.commonStyle,i=e.volume;n.volumeColor&&(this.find(".xgplayer-drag").style.backgroundColor=n.volumeColor),this.changeMutedHandler=this.hook("mutedChange",(function(e){t.changeMuted(e)}),{pre:function(e){e.preventDefault(),e.stopPropagation(),t.emitUserAction(e,"change_muted",{prop:"muted",from:t.player.muted,to:!t.player.muted})}}),"mobile"===Xd.device||this.playerConfig.isMobileSimulateMode||(this.bind("mouseenter",this.onMouseenter),this.bind(["blur","mouseleave"],this.onMouseleave),this.bind(".xgplayer-slider","mousedown",this.onBarMousedown)),this.bind(".xgplayer-icon","mobile"===Xd.device?"touchend":"click",this.changeMutedHandler),this.on(lp,this.onVolumeChange),this.once(up,this.onVolumeChange),"Number"!==Wd.typeOf(i)&&(this.player.volume=this.config.default),this.onVolumeChange()}}},{key:"updateVolumePos",value:function(t,e){var n=this.player,i=this.find(".xgplayer-drag"),r=t/this.find(".xgplayer-bar").getBoundingClientRect().height;i.style.height="".concat(t,"px");var o=Math.max(Math.min(r,1),0);this.emitUserAction(e,"change_volume",[{prop:"muted",from:!0,to:!1},{prop:"volume",from:n.volume,to:o}]),n.volume=o,n.muted=!1,this.config.showValueLabel&&this.updateVolumeValue()}},{key:"updateVolumeValue",value:function(){var t=this.player.volume,e=this.find(".xgplayer-value-label"),n=Math.max(Math.min(t,1),0);e.innerText=Math.ceil(100*n)}},{key:"changeMuted",value:function(t){t&&t.stopPropagation();var e=this.player;e.volume<.01?e.volume=this.config.default:e.muted=!e.muted}},{key:"animate",value:function(t,e){t||0===e?this.setAttr("data-state","mute"):e<.5&&this.icons.volumeSmall?this.setAttr("data-state","small"):this.setAttr("data-state","normal")}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(".xgplayer-icon",t.volumeSmall),this.appendChild(".xgplayer-icon",t.volumeLarge),this.appendChild(".xgplayer-icon",t.volumeMuted)}},{key:"destroy",value:function(){this.unbind("mouseenter",this.onMouseenter),this.unbind(["blur","mouseleave"],this.onMouseleave),this.unbind(".xgplayer-bar","mousedown",this.onBarMousedown),this.unbind(".xgplayer-icon","mobile"===Xd.device?"touchend":"click",this.changeMutedHandler)}},{key:"render",value:function(){if(!this.config.disable){var t=this.config.default||this.player.volume,e=this.config.showValueLabel;return'\n <xg-icon class="xgplayer-volume" data-state="normal">\n <div class="xgplayer-icon">\n </div>\n <xg-slider class="xgplayer-slider">\n '.concat(e?'<div class="xgplayer-value-label">'.concat(100*t,"</div>"):"",'\n <div class="xgplayer-bar">\n <xg-drag class="xgplayer-drag" style="height: ').concat(100*t,'%"></xg-drag>\n </div>\n </xg-slider>\n </xg-icon>')}}}],[{key:"pluginName",get:function(){return"volume"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:1,disable:!1,showValueLabel:!1,default:.6}}}]),n}(Pg);function ck(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="-4 -6 40 40" fill="none">\n <g clip-path="url(#clip0)">\n <path transform="scale(1.5 1.5)" d="M11.6665 9.16663H4.1665C2.78579 9.16663 1.6665 10.2859 1.6665 11.6666V15.8333C1.6665 17.214 2.78579 18.3333 4.1665 18.3333H11.6665C13.0472 18.3333 14.1665 17.214 14.1665 15.8333V11.6666C14.1665 10.2859 13.0472 9.16663 11.6665 9.16663Z" fill="white"/>\n <path transform="scale(1.5 1.5)" fill-rule="evenodd" clip-rule="evenodd" d="M3.88148 4.06298C3.75371 4.21005 3.67667 4.40231 3.67749 4.61242C3.67847 4.87253 3.79852 5.10435 3.98581 5.25646L6.99111 8.05895C7.32771 8.37283 7.85502 8.35443 8.16891 8.01782C8.48279 7.68122 8.46437 7.15391 8.12778 6.84003L6.62061 5.43457L9.8198 5.4224C9.82848 5.42239 9.8372 5.42221 9.84591 5.4219C10.9714 5.38233 12.0885 5.6285 13.0931 6.13744C14.0976 6.64635 14.957 7.40148 15.5908 8.33234C16.2246 9.2632 16.6122 10.3394 16.7177 11.4606C16.823 12.5819 16.6427 13.7115 16.1934 14.7442C16.0098 15.1661 16.203 15.6571 16.6251 15.8408C17.0471 16.0243 17.5381 15.8311 17.7216 15.4091C18.2833 14.1183 18.5087 12.7063 18.3771 11.3047C18.2453 9.90318 17.7607 8.55792 16.9684 7.39433C16.1761 6.23073 15.1021 5.28683 13.8463 4.65065C12.5946 4.01651 11.203 3.70872 9.80072 3.75583L6.43415 3.76862L7.96326 2.12885C8.27715 1.79225 8.25872 1.26494 7.92213 0.951061C7.58553 0.63718 7.05822 0.655585 6.74433 0.99219L3.90268 4.0395C3.89545 4.04724 3.88841 4.05509 3.88154 4.06303L3.88148 4.06298Z" fill="white"/>\n </g>\n <defs>\n <clipPath id="clip0">\n <rect width="40" height="40" fill="white"/>\n </clipPath>\n </defs>\n</svg>\n',"image/svg+xml").firstChild}function lk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var uk=function(t){fi(n,t);var e=lk(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).rotateDeg=i.config.rotateDeg||0,i}return Co(n,[{key:"afterCreate",value:function(){var t=this;this.config.disable||(this.appendChild(".xgplayer-icon",this.icons.rotate),this.onBtnClick=this.onBtnClick.bind(this),this.bind(".xgplayer-icon",["click","touchend"],this.onBtnClick),this.on(Op,(function(){console.log("Events.VIDEO_RESIZE"),t.rotateDeg&&Wd.setTimeout(t,(function(){t.updateRotateDeg(t.rotateDeg,t.config.innerRotate)}),100)})),this.rotateDeg&&this.updateRotateDeg(this.rotateDeg,this.config.innerRotate))}},{key:"destroy",value:function(){this.unbind(".xgplayer-icon",["click","touchend"],this.onBtnClick)}},{key:"onBtnClick",value:function(t){t.preventDefault(),t.stopPropagation(),this.emitUserAction(t,"rotate"),this.rotate(this.config.clockwise,this.config.innerRotate,1)}},{key:"updateRotateDeg",value:function(t,e){var n=this.player;t||(t=0);var i=this.player,r=i.root,o=i.innerContainer,s=i.video,a=r.offsetWidth,c=o&&e?o.offsetHeight:r.offsetHeight,l="100%",u="100%",h=0,f=0;.75!==t&&.25!==t||(l="".concat(c,"px"),u="".concat(a,"px"),h=-(c-a)/2,f=-(a-c)/2);var d="translate(".concat(h,"px,").concat(f,"px) rotate(").concat(t,"turn)"),p={transformOrigin:"center center",transform:d,webKitTransform:d,height:u,width:l},g=e?s:r,v=e?n.getPlugin("poster"):null;Object.keys(p).map((function(t){g.style[t]=p[t],v&&v.root&&(v.root.style[t]=p[t])}))}},{key:"rotate",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,i=this.player;this.rotateDeg||(this.rotateDeg=0);var r=t?1:-1;this.rotateDeg=(this.rotateDeg+1+.25*r*n)%1,this.updateRotateDeg(this.rotateDeg,e),i.emit(Lp,360*this.rotateDeg)}},{key:"registerIcons",value:function(){return{rotate:ck}}},{key:"render",value:function(){if(!this.config.disable)return'\n <xg-icon class="xgplayer-rotate">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys.ROTATE_TIPS,'">\n ').concat(this.i18n.ROTATE_TIPS,"\n </div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"rotate"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:6,innerRotate:!0,clockwise:!1,rotateDeg:0,disable:!1}}}]),n}(Pg);function hk(){return(new DOMParser).parseFromString('<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M16.5 4.3H3.5C3.38954 4.3 3.3 4.38954 3.3 4.5V15.5C3.3 15.6105 3.38954 15.7 3.5 15.7H8.50005L8.50006 17.5H3.5C2.39543 17.5 1.5 16.6046 1.5 15.5V4.5C1.5 3.39543 2.39543 2.5 3.5 2.5H16.5C17.6046 2.5 18.5 3.39543 18.5 4.5V8.5H16.7V4.5C16.7 4.38954 16.6105 4.3 16.5 4.3ZM12 11.5C11.4477 11.5 11 11.9477 11 12.5L11 16.5C11 17.0523 11.4478 17.5 12 17.5H17.5C18.0523 17.5 18.5 17.0523 18.5 16.5L18.5 12.5C18.5 11.9477 18.0523 11.5 17.5 11.5H12Z"\n fill="white" />\n</svg>',"image/svg+xml").firstChild}function fk(){return(new DOMParser).parseFromString('<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M16.5 4.3H3.5C3.38954 4.3 3.3 4.38954 3.3 4.5V15.5C3.3 15.6105 3.38954 15.7 3.5 15.7H8.50005L8.50006 17.5H3.5C2.39543 17.5 1.5 16.6046 1.5 15.5V4.5C1.5 3.39543 2.39543 2.5 3.5 2.5H16.5C17.6046 2.5 18.5 3.39543 18.5 4.5V8.5H16.7V4.5C16.7 4.38954 16.6105 4.3 16.5 4.3ZM12 11.5C11.4477 11.5 11 11.9477 11 12.5L11 16.5C11 17.0523 11.4478 17.5 12 17.5H17.5C18.0523 17.5 18.5 17.0523 18.5 16.5L18.5 12.5C18.5 11.9477 18.0523 11.5 17.5 11.5H12Z"\n fill="white" />\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M9.4998 7.7C9.77595 7.7 9.9998 7.47614 9.9998 7.2V6.5C9.9998 6.22386 9.77595 6 9.4998 6H5.5402L5.52754 6.00016H5.5C5.22386 6.00016 5 6.22401 5 6.50016V10.4598C5 10.7359 5.22386 10.9598 5.5 10.9598H6.2C6.47614 10.9598 6.7 10.7359 6.7 10.4598V8.83005L8.76983 10.9386C8.96327 11.1357 9.27984 11.1386 9.47691 10.9451L9.97645 10.4548C10.1735 10.2613 10.1764 9.94476 9.983 9.7477L7.97289 7.7H9.4998Z"\n fill="white" />\n</svg>',"image/svg+xml").firstChild}function dk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var pk="picture-in-picture",gk="inline",vk="fullscreen",yk=function(t){fi(n,t);var e=dk(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"switchPIP",(function(e){if(!t.isPIPAvailable())return!1;e.stopPropagation(),t.isPip?(t.exitPIP(),t.emitUserAction(e,"change_pip",{props:"pip",from:!0,to:!1}),t.setAttr("data-state","normal")):4===t.player.video.readyState&&(t.requestPIP(),t.emitUserAction(e,"change_pip",{props:"pip",from:!1,to:!0}),t.setAttr("data-state","pip"))})),t}return Co(n,[{key:"beforeCreate",value:function(t){"boolean"==typeof t.player.config.pip&&(t.config.showIcon=t.player.config.pip)}},{key:"afterCreate",value:function(){var t=this;this.isPIPAvailable()&&(this.pMode=gk,this.initPipEvents(),this.config.showIcon&&this.initIcons(),this.once(wp,(function(){t.config.showIcon&&(Wd.removeClass(t.find(".xgplayer-icon"),"xg-icon-disable"),t.bind("click",t.switchPIP))})))}},{key:"registerIcons",value:function(){return{pipIcon:{icon:hk,class:"xg-get-pip"},pipIconExit:{icon:fk,class:"xg-exit-pip"}}}},{key:"initIcons",value:function(){var t=this.icons;this.appendChild(".xgplayer-icon",t.pipIcon),this.appendChild(".xgplayer-icon",t.pipIconExit)}},{key:"initPipEvents",value:function(){var t=this,e=this.player;this.leavePIPCallback=function(){var n=e.paused;Wd.setTimeout(t,(function(){!n&&e.videoPlay()}),0),!n&&e.videoPlay(),t.setAttr("data-state","normal"),e.emit(Ip,!1)},this.enterPIPCallback=function(n){e.emit(Ip,!0),t.pipWindow=n.pictureInPictureWindow,t.setAttr("data-state","pip")},this.onWebkitpresentationmodechanged=function(n){var i=e.video.webkitPresentationMode;t.pMode===vk&&i!==vk&&e.onFullscreenChange(null,!1),t.pMode=i,i===pk?t.enterPIPCallback(n):i===gk&&t.leavePIPCallback(n)},e.video&&(e.video.addEventListener("enterpictureinpicture",this.enterPIPCallback),e.video.addEventListener("leavepictureinpicture",this.leavePIPCallback),n.checkWebkitSetPresentationMode(e.video)&&e.video.addEventListener("webkitpresentationmodechanged",this.onWebkitpresentationmodechanged))}},{key:"requestPIP",value:function(){var t=this.player,e=this.playerConfig;if(this.isPIPAvailable()&&!this.isPip)try{var i=e.poster;return i&&(t.video.poster="String"===Wd.typeOf(i)?i:i.poster),n.checkWebkitSetPresentationMode(t.video)?t.video.webkitSetPresentationMode("picture-in-picture"):t.video.requestPictureInPicture(),!0}catch(t){return console.error("requestPiP",t),!1}}},{key:"exitPIP",value:function(){var t=this.player;try{return this.isPIPAvailable()&&this.isPip&&(n.checkWebkitSetPresentationMode(t.video)?t.video.webkitSetPresentationMode("inline"):document.exitPictureInPicture()),!0}catch(t){return console.error("exitPIP",t),!1}}},{key:"isPip",get:function(){var t=this.player;return document.pictureInPictureElement&&document.pictureInPictureElement===t.video||t.video.webkitPresentationMode===pk}},{key:"isPIPAvailable",value:function(){var t=this.player.video;return document.pictureInPictureEnabled&&("Boolean"===Wd.typeOf(t.disablePictureInPicture)&&!t.disablePictureInPicture||t.webkitSupportsPresentationMode&&"Function"===Wd.typeOf(t.webkitSetPresentationMode))}},{key:"destroy",value:function(){var t=this.player;t.video.removeEventListener("enterpictureinpicture",this.enterPIPCallback),t.video.removeEventListener("leavepictureinpicture",this.leavePIPCallback),this.exitPIP(),this.unbind("click",this.btnClick)}},{key:"render",value:function(){if(this.config.showIcon||!this.isPIPAvailable())return'<xg-icon class="xgplayer-pip">\n <div class="xgplayer-icon xg-icon-disable">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys.PIP,'">').concat(this.i18n.PIP,"</div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"pip"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:6,showIcon:!1}}},{key:"checkWebkitSetPresentationMode",value:function(t){return"function"==typeof t.webkitSetPresentationMode}}]),n}(Pg);function mk(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="40" viewBox="10 0 24 40">\n <path transform="scale(0.038 0.028)" d="M800 380v768h-128v-352l-320 320v-704l320 320v-352z"></path>\n</svg>\n',"image/svg+xml").firstChild}function kk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var bk=function(t){fi(n,t);var e=kk(n);function n(t){var i;return ui(this,n),yi(pi(i=e.call(this,t)),"playNext",(function(t){var e=pi(i).player;t.preventDefault(),t.stopPropagation(),i.idx+1<i.config.urlList.length?(i.idx++,e.emit(Dp,i.idx+1),i.nextHandler(i.config.urlList[i.idx],i.idx)):(i.nextHandler(),e.emit(Dp))})),i.idx=-1,i}return Co(n,[{key:"afterCreate",value:function(){this.config.urlList&&0!==this.config.urlList.length&&(this.appendChild(".xgplayer-icon",this.icons.playNext),this.initEvents())}},{key:"registerIcons",value:function(){return{playNext:mk}}},{key:"initEvents",value:function(){this.nextHandler=this.hook("nextClick",this.changeSrc);var t="mobile"===Xd.device?"touchend":"click";this.bind(t,this.playNext),this.show()}},{key:"changeSrc",value:function(t){var e=this.player;t&&(e.pause(),e.currentTime=0,e.autoplay=!0,e.src=t)}},{key:"destroy",value:function(){this.unbind(["touchend","click"],this.playNext)}},{key:"render",value:function(){if(this.config.urlList&&0!==this.config.urlList.length)return'\n <xg-icon class="xgplayer-playnext">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="PLAYNEXT_TIPS">'.concat(this.i18n.PLAYNEXT_TIPS,"</div>\n </xg-icon>\n ")}}],[{key:"pluginName",get:function(){return"playNext"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_LEFT,index:1,url:null,urlList:[]}}}]),n}(Pg),wk={exports:{}};!function(t,e){t.exports=function t(e,n,i){var r,o,s=window,a="application/octet-stream",c=i||a,l=e,u=!n&&!i&&l,h=document.createElement("a"),f=function(t){return String(t)},d=s.Blob||s.MozBlob||s.WebKitBlob||f,p=n||"download";if(d=d.call?d.bind(s):Blob,"true"===String(this)&&(c=(l=[l,c])[0],l=l[1]),u&&u.length<2048&&(p=u.split("/").pop().split("?")[0],h.href=u,-1!==h.href.indexOf(u))){var g=new XMLHttpRequest;return g.open("GET",u,!0),g.responseType="blob",g.onload=function(e){t(e.target.response,p,a)},setTimeout((function(){g.send()}),0),g}if(/^data:([\w+-]+\/[\w+.-]+)?[,;]/.test(l)){if(!(l.length>2096103.424&&d!==f))return navigator.msSaveBlob?navigator.msSaveBlob(k(l),p):b(l);c=(l=k(l)).type||a}else if(/([\x80-\xff])/.test(l)){for(var v=0,y=new Uint8Array(l.length),m=y.length;v<m;++v)y[v]=l.charCodeAt(v);l=new d([y],{type:c})}function k(t){for(var e=t.split(/[:;,]/),n=e[1],i=("base64"==e[2]?atob:decodeURIComponent)(e.pop()),r=i.length,o=0,s=new Uint8Array(r);o<r;++o)s[o]=i.charCodeAt(o);return new d([s],{type:n})}function b(t,e){if("download"in h)return h.href=t,h.setAttribute("download",p),h.className="download-js-link",h.innerHTML="downloading...",h.style.display="none",document.body.appendChild(h),setTimeout((function(){h.click(),document.body.removeChild(h),!0===e&&setTimeout((function(){s.URL.revokeObjectURL(h.href)}),250)}),66),!0;if(/(Version)\/(\d+)\.(\d+)(?:\.(\d+))?.*Safari\//.test(navigator.userAgent))return/^data:/.test(t)&&(t="data:"+t.replace(/^data:([\w\/\-\+]+)/,a)),window.open(t)||confirm("Displaying New Document\n\nUse Save As... to download, then click back to return to this page.")&&(location.href=t),!0;var n=document.createElement("iframe");document.body.appendChild(n),!e&&/^data:/.test(t)&&(t="data:"+t.replace(/^data:([\w\/\-\+]+)/,a)),n.src=t,setTimeout((function(){document.body.removeChild(n)}),333)}if(r=l instanceof d?l:new d([l],{type:c}),navigator.msSaveBlob)return navigator.msSaveBlob(r,p);if(s.URL)b(s.URL.createObjectURL(r),!0);else{if("string"==typeof r||r.constructor===f)try{return b("data:"+c+";base64,"+s.btoa(r))}catch(t){return b("data:"+c+","+encodeURIComponent(r))}(o=new FileReader).onload=function(t){b(this.result)},o.readAsDataURL(r)}return!0}}(wk);var Ck=wk.exports;function xk(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24">\n <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">\n <g transform="translate(-488.000000, -340.000000)" fill="#FFFFFF">\n <g id="Group-2">\n <g id="volme_big-copy" transform="translate(488.000000, 340.000000)">\n <rect id="Rectangle-18" x="11" y="4" width="2" height="12" rx="1"></rect>\n <rect id="Rectangle-2" x="3" y="18" width="18" height="2" rx="1"></rect>\n <rect id="Rectangle-2" transform="translate(4.000000, 17.500000) rotate(90.000000) translate(-4.000000, -17.500000) " x="1.5" y="16.5" width="5" height="2" rx="1"></rect><rect id="Rectangle-2-Copy-3" transform="translate(20.000000, 17.500000) rotate(90.000000) translate(-20.000000, -17.500000) " x="17.5" y="16.5" width="5" height="2" rx="1"></rect>\n <path d="M9.48791171,8.26502656 L9.48791171,14.2650266 C9.48791171,14.8173113 9.04019646,15.2650266 8.48791171,15.2650266 C7.93562696,15.2650266 7.48791171,14.8173113 7.48791171,14.2650266 L7.48791171,7.26502656 C7.48791171,6.71274181 7.93562696,6.26502656 8.48791171,6.26502656 L15.4879117,6.26502656 C16.0401965,6.26502656 16.4879117,6.71274181 16.4879117,7.26502656 C16.4879117,7.81731131 16.0401965,8.26502656 15.4879117,8.26502656 L9.48791171,8.26502656 Z" id="Combined-Shape" transform="translate(11.987912, 10.765027) scale(1, -1) rotate(45.000000) translate(-11.987912, -10.765027) "></path>\n </g>\n </g>\n </g>\n </g>\n</svg>\n',"image/svg+xml").firstChild}function _k(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Ek=function(t){fi(n,t);var e=_k(n);function n(t){var i;return ui(this,n),yi(pi(i=e.call(this,t)),"download",(function(t){if(!i.isLock){i.emitUserAction(t,"download");var e=i.getAbsoluteURL(i.player.src);Ck(e),i.isLock=!0,i.timer=window.setTimeout((function(){i.isLock=!1,window.clearTimeout(i.timer),i.timer=null}),300)}})),i.timer=null,i.isLock=!1,i}return Co(n,[{key:"afterCreate",value:function(){this.config.disable||(this.appendChild(".xgplayer-icon",this.icons.download),this.bind(["click","touchend"],this.download))}},{key:"registerIcons",value:function(){return{download:xk}}},{key:"getAbsoluteURL",value:function(t){if(!t.match(/^https?:\/\//)){var e=document.createElement("div");e.innerHTML='<a href="'.concat(t,'">x</a>'),t=e.firstChild.href}return t}},{key:"destroy",value:function(){this.unbind(["click","touchend"],this.download),window.clearTimeout(this.timer),this.timer=null}},{key:"render",value:function(){if(!this.config.disable)return'<xg-icon class="xgplayer-download">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys.DOWNLOAD_TIPS,'">').concat(this.i18n.DOWNLOAD_TIPS,"</div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"download"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:3,disable:!0}}}]),n}(Pg);function Tk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Sk=function(t){fi(n,t);var e=Tk(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"beforeCreate",value:function(t){"boolean"==typeof t.player.config.screenShot&&(t.config.disable=!t.player.config.screenShot)}},{key:"afterCreate",value:function(){this.appendChild(".xgplayer-icon",this.icons.screenshotIcon);var t=this.config;this.initSize=function(e){t.fitVideo&&(t.width=e.vWidth,t.height=e.vHeight)},this.once(Op,this.initSize)}},{key:"onPluginsReady",value:function(){this.show(),this.onClickBtn=this.onClickBtn.bind(this),this.bind(["click","touchend"],this.onClickBtn)}},{key:"saveScreenShot",value:function(t,e){var n=document.createElement("a");n.href=t,n.download=e;var i=document.createEvent("MouseEvents");i.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),n.dispatchEvent(i)}},{key:"createCanvans",value:function(t,e){var n=document.createElement("canvas");this.canvasCtx=n.getContext("2d"),this.canvas=n,n.width=t||this.config.width,n.height=e||this.config.height}},{key:"onClickBtn",value:function(t){var e=this;t.preventDefault(),t.stopPropagation(),this.emitUserAction(t,"shot"),this.shot().then((function(t){e.emit(Ap,t),e.saveScreenShot(t,e.config.name+e.config.format)}))}},{key:"shot",value:function(t,e){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{quality:.92,type:"image/png"},r=this.config,o=this.player,s=i.quality||r.quality,a=i.type||r.type;return new Promise((function(i,c){n.canvas?(n.canvas.width=t||r.width,n.canvas.height=e||r.height):n.createCanvans(t,e),n.canvasCtx.drawImage(o.video,0,0,t||r.width,e||r.height);var l=n.canvas.toDataURL(a,s).replace(a,"image/octet-stream");i(l=l.replace(/^data:image\/[^;]+/,"data:application/octet-stream"))}))}},{key:"registerIcons",value:function(){return{screenshotIcon:null}}},{key:"destroy",value:function(){this.unbind(["click","touchend"],this.onClickBtn),this.off(Op,this.initSize)}},{key:"render",value:function(){if(!this.config.disable){var t=this.icons.screenshotIcon?"xgplayer-icon":"xgplayer-icon btn-text",e="SCREENSHOT";return'\n <xg-icon class="xgplayer-shot">\n <div class="'.concat(t,'">\n ').concat(this.icons.screenshotIcon?"":'<span lang-key="'.concat(this.i18nKeys[e],'">').concat(this.i18n[e],"</span>")," \n </div>\n </xg-icon>")}}}],[{key:"pluginName",get:function(){return"screenShot"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:5,quality:.92,type:"image/png",format:".png",width:600,height:337,fitVideo:!0,disable:!1,name:"screenshot"}}}]),n}(Pg),Pk=function(){function t(e){ui(this,t),this.config=e.config,this.parent=e.root,this.root=Wd.createDom("ul","",{},"xg-options-list ".concat(this.config.className)),e.root.appendChild(this.root),this.onItemClick=this.onItemClick.bind(this),this.renderItemList();var n="mobile"===Xd.device?"touchend":"click";this._delegates=Pg.delegate.call(this,this.root,"li",n,this.onItemClick)}return Co(t,[{key:"renderItemList",value:function(t){var e=this,n=this.config,i=this.root;t?n.data=t:t=n.data,n.style&&Object.keys(n.style).map((function(t){i.style[t]=n[t]})),t.length>0&&(this.attrKeys=Object.keys(t[0])),this.root.innerHTML="",t.map((function(t,n){var i=t.isCurrent?"option-item selected":"option-item";t["data-index"]=n,e.root.appendChild(Wd.createDom("li","<span>".concat(t.showText,"</span>"),t,i))}))}},{key:"onItemClick",value:function(t){t.delegateTarget||(t.delegateTarget=t.target);var e=t.delegateTarget;if(e&&Wd.hasClass(e,"selected"))return!1;var n="function"==typeof this.config.onItemClick?this.config.onItemClick:null,i=this.root.querySelector(".selected");Wd.addClass(e,"selected"),i&&Wd.removeClass(i,"selected"),n(t,{from:i?this.getAttrObj(i,this.attrKeys):null,to:this.getAttrObj(e,this.attrKeys)})}},{key:"getAttrObj",value:function(t,e){if(!t||!e)return{};var n={};e.map((function(e){n[e]=t.getAttribute(e)}));var i=t.getAttribute("data-index");return i&&(n.index=Number(i)),n}},{key:"show",value:function(){Wd.removeClass(this.root,"hide"),Wd.addClass(this.root,"active")}},{key:"hide",value:function(){Wd.removeClass(this.root,"active"),Wd.addClass(this.root,"hide")}},{key:"destroy",value:function(){this._delegates&&(this._delegates.map((function(t){t.destroy&&t.destroy()})),this._delegates=null),this.root.innerHTML=null,this.parent.removeChild(this.root),this.root=null}}]),t}();function Rk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Ok="mobile"===Xd.device,Ik=function(t){fi(n,t);var e=Rk(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).isActive=!1,i.curValue=null,i.curIndex=0,i}return Co(n,[{key:"updateLang",value:function(t){this.renderItemList(this.config.list,this.curIndex)}},{key:"afterCreate",value:function(){var t=this,e=this.config;Ok&&"middle"!==e.listType&&(e.listType="rightSide"),e.hidePortrait&&Wd.addClass(this.root,"portrait"),this.once(ap,(function(){e.list&&e.list.length>0&&(t.renderItemList(e.list),t.show())})),Ok&&this.on(gp,(function(){t.isActive&&(t.optionsList&&t.optionsList.hide(),t.isActive=!1)})),this.activeEvent=Ok?"touchend":"mouseenter",this.onEnter=this.onEnter.bind(this),this.onLeave=this.onLeave.bind(this),this.bind(this.activeEvent,this.onEnter),this.bind("mouseleave",this.onLeave)}},{key:"show",value:function(){!this.config.list||this.config.list.length<2||Wd.addClass(this.root,"show")}},{key:"hide",value:function(){Wd.removeClass(this.root,"show")}},{key:"getTextByLang",value:function(t,e,n){if(void 0===t)return"";var i=this.config.list;!n&&(n=this.player.lang),e=!e||Wd.isUndefined(t[e])?"text":e,"number"==typeof t&&(t=i[t]);try{return"object"===di(t[e])?t[e][n]||t[e].zh:t[e]}catch(t){return console.warn(t),""}}},{key:"onEnter",value:function(t){t.preventDefault(),t.stopPropagation(),this.onToggle(!0)}},{key:"onLeave",value:function(t){t.preventDefault(),t.stopPropagation(),this.isActive&&this.onToggle(!1)}},{key:"onToggle",value:function(t){if(t!==this.isActive){var e=this.player.controls,n=this.config.listType;t?("rightSide"===n?e.blur():e.focus(),this.optionsList&&this.optionsList.show()):("rightSide"===n?e.focus():e.unFocus(),this.optionsList&&this.optionsList.hide()),this.isActive=t}}},{key:"onItemClick",value:function(t,e){t.preventDefault(),t.stopPropagation();var n=this.config,i=n.listType,r=n.list;(Ok||"rightSide"===i)&&this.onToggle(!1),this.curIndex=e.to.index,this.curItem=r[this.curIndex],this.changeCurrentText()}},{key:"changeCurrentText",value:function(){var t=this.config.list,e=t[this.curIndex<t.length?this.curIndex:0];e&&(this.find(".icon-text").innerHTML=this.getTextByLang(e,"iconText"))}},{key:"renderItemList",value:function(t,e){var n=this,i=this.config,r=this.optionsList,o=this.player;if("number"==typeof e&&(this.curIndex=e,this.curItem=i.list[e]),r)return r.renderItemList(t),void this.changeCurrentText();var s={config:{data:t||[],className:"rightSide"===i.listType?"right-side":"",onItemClick:function(t,e){n.onItemClick(t,e)}},root:"rightSide"===i.listType?o.root:this.root};this.optionsList=new Pk(s),this.changeCurrentText(),this.show()}},{key:"destroy",value:function(){this.unbind(this.activeEvent,this.onToggle),this.unbind("mouseleave",this.onToggle),this.optionsList&&(this.optionsList.destroy(),this.optionsList=null)}},{key:"render",value:function(){return'<xg-icon class="xg-options-icon '.concat(this.config.className||"",'">\n <div class="xgplayer-icon btn-text">\n <span class="icon-text"></span>\n </div>\n </xg-icon>')}}],[{key:"pluginName",get:function(){return"optionsIcon"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:100,list:[],listType:"middle",listStyle:{},hidePortrait:!0}}}]),n}(Pg);function Lk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Ak=function(t){fi(n,t);var e=Lk(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).curTime=0,i.isPaused=!0,i}return Co(n,[{key:"beforeCreate",value:function(t){var e=t.config.list;Array.isArray(e)&&e.length>0&&(t.config.list=e.map((function(t){return!t.text&&t.name&&(t.text=t.name),t.text||(t.text=t.definition),t})))}},{key:"afterCreate",value:function(){var t=this;xo(vi(n.prototype),"afterCreate",this).call(this),this.on("resourceReady",(function(e){console.log("resourceReady",e),t.changeDefinitionList(e)})),this.on(Pp,(function(e){t.renderItemList(e.to)})),this.player.definitionList.length<2&&this.hide()}},{key:"initDefinition",value:function(){var t=this.config,e=t.list,n=t.defaultDefinition;if(e.length>0){var i=null;e.map((function(t){t.definition===n&&(i=t)})),i||(i=e[0]),this.changeDefinition(i)}}},{key:"renderItemList",value:function(t){var e=this,i=this.player,r=this.config.list,o=t&&t.url?t.url:i.currentSrc||i.src,s=t&&t.definition?t.definition:this.config.defaultDefinition,a=0,c=r.map((function(t,n){var i={url:t.url,definition:t.definition||"",showText:e.getTextByLang(t)||t.definition,isCurrent:!1};return(t.url===o||!Wd.isUndefined(t.definition)&&t.definition===s)&&(i.isCurrent=!0,a=n),i}));xo(vi(n.prototype),"renderItemList",this).call(this,c,a)}},{key:"changeDefinitionList",value:function(t){Array.isArray(t)&&(this.config.list=t.map((function(t){return!t.text&&t.name&&(t.text=t.name),t.text||(t.text=t.definition),t})),this.renderItemList(),this.config.list.length<2?this.hide():this.show())}},{key:"changeDefinition",value:function(t,e){var n=this.player;n.switchURL?n.switchUrl(t.url):n.changeDefinition(t,e)}},{key:"onItemClick",value:function(t,e){xo(vi(n.prototype),"onItemClick",this).apply(this,arguments),this.emitUserAction(t,"change_definition",{from:e.from,to:e.to}),this.player.changeDefinition(e.to,e.from)}}],[{key:"pluginName",get:function(){return"definition"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:3,list:[],defaultDefinition:"",disable:!1,hidePortrait:!1,className:"xgplayer-definition"}}}]),n}(Ik);function Dk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Mk=function(t){fi(n,t);var e=Dk(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).curRate=1,i}return Co(n,[{key:"beforeCreate",value:function(t){var e=t.player.config.playbackRate,n=e?Array.isArray(e)?e:t.config.list:[];Array.isArray(n)&&(t.config.list=n.map((function(t){return"number"==typeof t?t={rate:t,text:"".concat(t,"x")}:!t.text&&t.rate&&(t.text="".concat(t.rate,"x")),t})))}},{key:"afterCreate",value:function(){var t=this;xo(vi(n.prototype),"afterCreate",this).call(this),this.on(hp,(function(){t.curValue!==t.player.playbackRate&&t.renderItemList()})),this.renderItemList()}},{key:"show",value:function(){this.config.list&&0!==this.config.list.length&&xo(vi(n.prototype),"show",this).call(this)}},{key:"onItemClick",value:function(t,e){xo(vi(n.prototype),"onItemClick",this).apply(this,arguments);var i=t.delegateTarget,r=Number(i.getAttribute("rate"));if(!r||r===this.curValue)return!1;this.emitUserAction(t,"change_rate",{props:"playbackRate",from:this.player.playbackRate,to:r}),this.curValue=r,this.player.playbackRate=r}},{key:"renderItemList",value:function(){var t=this,e=this.player.playbackRate||1;this.curValue=e;var i=0,r=this.config.list.map((function(n,r){var o={rate:n.rate};return o.rate===e&&(o.isCurrent=!0,i=r),o.showText=t.getTextByLang(n),o}));xo(vi(n.prototype),"renderItemList",this).call(this,r,i)}},{key:"destroy",value:function(){xo(vi(n.prototype),"destroy",this).call(this)}}],[{key:"pluginName",get:function(){return"playbackRate"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:4,list:[2,1.5,1,.75,.5],className:"xgplayer-playbackrate",hidePortrait:!1}}}]),n}(Ik);function Nk(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="31" height="40" viewBox="0 -5 31 40">\n <path fill="#fff" transform="scale(1.3, 1.3)" class=\'path_full\' d="M9,10v1a.9.9,0,0,1-1,1,.9.9,0,0,1-1-1V9A.9.9,0,0,1,8,8h2a.9.9,0,0,1,1,1,.9.9,0,0,1-1,1Zm6,4V13a1,1,0,0,1,2,0v2a.9.9,0,0,1-1,1H14a1,1,0,0,1,0-2Zm3-7H6V17H18Zm2,0V17a2,2,0,0,1-2,2H6a2,2,0,0,1-2-2V7A2,2,0,0,1,6,5H18A2,2,0,0,1,20,7Z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Fk(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="31" height="40" viewBox="0 -5 31 40">\n <path fill="#fff" transform="scale(1.3, 1.3)" d="M9,10V9a.9.9,0,0,1,1-1,.9.9,0,0,1,1,1v2a.9.9,0,0,1-1,1H8a.9.9,0,0,1-1-1,.9.9,0,0,1,1-1Zm6,4v1a1,1,0,0,1-2,0V13a.9.9,0,0,1,1-1h2a1,1,0,0,1,0,2Zm3-7H6V17H18Zm2,0V17a2,2,0,0,1-2,2H6a2,2,0,0,1-2-2V7A2,2,0,0,1,6,5H18A2,2,0,0,1,20,7Z"></path>\n</svg>\n',"image/svg+xml").firstChild}function jk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Bk=function(t){fi(n,t);var e=jk(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){var t=this;this.config.disable||(this.config.target&&(this.playerConfig.fullscreenTarget=this.config.target),this.initIcons(),this.on(Tp,(function(e){t.animate(e)})),this.btnClick=this.btnClick.bind(this),this.bind(["click","touchend"],this.btnClick))}},{key:"initIcons",value:function(){var t=this.icons,e=this.find(".xgplayer-icon");e.appendChild(t.cssFullscreen),e.appendChild(t.exitCssFullscreen)}},{key:"btnClick",value:function(t){t.preventDefault(),t.stopPropagation();var e=this.player.isCssfullScreen;this.emitUserAction(t,"switch_css_fullscreen",{prop:"cssfullscreen",from:e,to:!e}),e?this.player.exitCssFullscreen():this.player.getCssFullscreen()}},{key:"animate",value:function(t){this.root&&(t?this.setAttr("data-state","full"):this.setAttr("data-state","normal"),this.switchTips(t))}},{key:"switchTips",value:function(t){var e=this.i18nKeys;this.changeLangTextKey(this.find(".xg-tips"),t?e.EXITCSSFULLSCREEN_TIPS:e.CSSFULLSCREEN_TIPS)}},{key:"registerIcons",value:function(){return{cssFullscreen:{icon:Nk,class:"xg-get-cssfull"},exitCssFullscreen:{icon:Fk,class:"xg-exit-cssfull"}}}},{key:"destroy",value:function(){this.unbind(["click","touchend"],this.btnClick)}},{key:"render",value:function(){if(!this.config.disable)return'<xg-icon class=\'xgplayer-cssfullscreen\'>\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="'.concat(this.i18nKeys.EXITCSSFULLSCREEN_TIPS,'">').concat(this.i18n.CSSFULLSCREEN_TIPS,"</div>\n </xg-icon>")}}],[{key:"pluginName",get:function(){return"cssFullscreen"}},{key:"defaultConfig",get:function(){return{position:wg.CONTROLS_RIGHT,index:1,disable:!1,target:null}}}]),n}(Pg);function Hk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Uk=function(t){fi(n,t);var e=Hk(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){var t=this;this.clickHandler=this.hook("errorRetry",this.errorRetry,{pre:function(t){t.preventDefault(),t.stopPropagation()}}),this.onError=this.hook("showError",this.handleError),this.bind(".xgplayer-error-refresh","click",this.clickHandler),this.on(ap,(function(){t.handleCanPlay()})),this.on(np,(function(e){t.onError(e)}))}},{key:"errorRetry",value:function(){this.player.retry()}},{key:"handleCanPlay",value:function(){Wd.removeClass(this.player.root,"xgplayer-is-error")}},{key:"handleError",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this.player,n=t.errorType,i=e.errorNote?this.i18n[e.errorNote]:"";if(!i)switch(n){case"decoder":i=this.i18n.MEDIA_ERR_DECODE;break;case"network":i=this.i18n.MEDIA_ERR_NETWORK;break;default:i=this.i18n.MEDIA_ERR_SRC_NOT_SUPPORTED}this.find(".xgplayer-error-text").innerHTML=i,this.find(".xgplayer-error-tips").innerHTML="".concat(this.i18n.REFRESH_TIPS,'<span class="xgplayer-error-refresh">').concat(this.i18n.REFRESH,"</span>")}},{key:"destroy",value:function(){this.unbind(".xgplayer-error-refresh","click",this.clickHandler)}},{key:"render",value:function(){return'<xg-error class="xgplayer-error">\n <div class="xgplayer-errornote">\n <span class="xgplayer-error-text"></span>\n <span class="xgplayer-error-tips"><em class="xgplayer-error-refresh"></em></span>\n </div>\n </xg-error>'}}],[{key:"pluginName",get:function(){return"error"}}]),n}(Pg);function Vk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Gk=function(t){fi(n,t);var e=Vk(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){var t=this;this.intervalId=0,this.customConfig=null,this.bind(".highlight",["click","touchend"],(function(e){(t.config.onClick||t.customOnClick)&&(e.preventDefault(),e.stopPropagation(),t.customOnClick?t.customOnClick(e):t.config.onClick(e))})),this.player.showPrompt=function(){t.show.apply(t,arguments)},this.player.hidePrompt=function(){t.hide()}}},{key:"setStyle",value:function(t){var e=this;Object.keys(t).map((function(n){e.root.style[n]=t[n]}))}},{key:"show",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){};if(t){this.customOnClick=i;var r=this.config.interval;this.intervalId&&(clearTimeout(this.intervalId),this.intervalId=null),Wd.addClass(this.root,"show"),"arrow"===n.mode&&Wd.addClass(this.root,"arrow"),this.find(".xgplayer-prompt-detail").innerHTML="string"==typeof t?t:"".concat(t.text||"")+"".concat(t.highlight?'<i class="highlight">'.concat(t.highlight,"</i>"):""),n.style&&this.setStyle(n.style);var o="boolean"==typeof n.autoHide?n.autoHide:this.config.autoHide;if(o){var s=n.interval||r;this.intervalId=setTimeout((function(){e.hide()}),s)}}}},{key:"hide",value:function(){Wd.removeClass(this.root,"show"),Wd.removeClass(this.root,"arrow"),this.root.removeAttribute("style"),this.customOnClick=null}},{key:"render",value:function(){return'<xg-prompt class="xgplayer-prompt '.concat(Wv.CONTROLS_FOLLOW,'">\n <span class="xgplayer-prompt-detail"></span>\n </xg-prompt>')}}],[{key:"pluginName",get:function(){return"prompt"}},{key:"defaultConfig",get:function(){return{interval:3e3,style:{},mode:"arrow",autoHide:!0,detail:{text:"",highlight:""},onClick:function(){}}}}]),n}(Pg),Wk={time:0,text:"",id:1,duration:1,color:"#fff",style:{},width:6,height:6};function Yk(t){Object.keys(Wk).map((function(e){void 0===t[e]&&(t[e]=Wk[e])}))}var Kk={initDots:function(){var t=this;this._ispots.map((function(e){t.createDot(e,!1)})),this._ispotsInit=!0},createDot:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this.player.plugins.progress;if(n&&(e&&(Yk(t),this._ispots.push(t)),this._ispotsInit||!e)){var i=this.calcuPosition(t.time,t.duration),r=t.style||{};r.left="".concat(i.left,"%"),r.width="".concat(i.width,"%");var o="xgspot_".concat(t.id," xgplayer-spot");i.isMini&&(o+=" mini");var s=Wd.createDom("xg-spot","",{"data-text":t.text,"data-time":t.time,"data-id":t.id},o);Object.keys(r).map((function(t){s.style[t]=r[t]})),n.outer&&n.outer.appendChild(s)}},findDot:function(t){if(this.player.plugins.progress){var e=this._ispots.filter((function(e,n){return e.id===t}));return e.length>0?e[0]:null}},updateDot:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.player.plugins.progress;if(n){var i=this.findDot(t.id);if(i&&Object.keys(t).map((function(e){i[e]=t[e]})),this._ispotsInit){var r=n.find('xg-spot[data-id="'.concat(t.id,'"]'));if(r){var o=this.calcuPosition(t.time,t.duration),s=t.style||{};s.left="".concat(o.left,"%"),s.width="".concat(o.width,"%"),r.setAttribute("data-text",t.text),r.setAttribute("data-time",t.time),o.isMini?Wd.addClass(r,"mini"):Wd.removeClass(r,"mini"),Object.keys(s).map((function(t){r.style[t]=s[t]})),e&&this.showDot(t.id)}}}},deleteDot:function(t){var e=this._ispots,n=this.player.plugins.progress;if(n){for(var i=[],r=0;r<e.length;r++)e[r].id===t&&i.push(r);for(var o=i.length-1;o>=0;o--)if(e.splice(i[o],1),this._ispotsInit){var s=n.find('xg-spot[data-id="'.concat(t,'"]'));s&&s.parentElement.removeChild(s)}}},deleteAllDots:function(){var t=this.player.plugins.progress;if(t)if(this._ispotsInit){for(var e=t.root.getElementsByTagName("xg-spot"),n=e.length-1;n>=0;n--)t.outer.removeChild(e[n]);this._ispots=[]}else this._ispots=[]},updateAllDots:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=this.player.plugins.progress;if(n)if(this._ispotsInit){this._ispots=[];var i=n.root.getElementsByTagName("xg-spot"),r=i.length;if(r>e.length)for(var o=r-1;o>e.length-1;o--)n.outer.removeChild(i[o]);e.map((function(e,n){n<r?(i[n].setAttribute("data-id","".concat(e.id)),t._ispots.push(e),t.updateDot(e)):t.createDot(e)}))}else this._ispots=e}};function zk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Xk={dragmove:"onProgressMove",dragstart:"onProgressDragStart",dragend:"onProgressDragEnd"},qk=function(t){fi(n,t);var e=zk(n);function n(t){var i;return ui(this,n),yi(pi(i=e.call(this,t)),"onMousemove",(function(t){(i._state.f||Wd.hasClass(t.target,"xg-spot-content"))&&(Wd.event(t),t.stopPropagation())})),yi(pi(i),"onMousedown",(function(t){(i._state.f||Wd.hasClass(t.target,"xg-spot-content"))&&(Wd.event(t),t.stopPropagation())})),i._ispots=[],i.videoPreview=null,i.videothumbnail=null,i.thumbnail=null,i._state={now:0,f:!1},i}return Co(n,[{key:"beforeCreate",value:function(t){var e=t.player.plugins.progress;e&&(t.root=e.root)}},{key:"onPluginsReady",value:function(){this.player.plugins.progress&&(this.previewLine=this.find(".xg-spot-line"),this.timePoint=this.find(".xgplayer-progress-point"),this.timeText=this.find(".xg-spot-time"),this.tipText=this.find(".spot-inner-text"),this._hasThumnail=!1,this.registerThumbnail(),function(t){var e=t.config,n=t.player;Object.keys(Kk).map((function(e){t[e]=Kk[e].bind(t)}));var i=n.config.progressDot||e.ispots||[];t._ispots=i.map((function(t){return Yk(t),t})),t._ispotsInit=!1,n.once(cp,(function(){t.initDots()}))}(this),this.bindEvents())}},{key:"bindEvents",value:function(){var t=this,e=this.player.plugins.progress;if("mobile"!==Xd.device&&e){Object.keys(Xk).map((function(n){t[Xk[n]]=t[Xk[n]].bind(t),e.addCallBack(n,t[Xk[n]])})),this.bind(".xg-spot-info","mousemove",this.onMousemove),this.bind(".xg-spot-info","mousedown",this.onMousedown);var n=this.hook("previewClick",(function(){}));this.handlerPreviewClick=function(e){e.stopPropagation(),n(parseInt(1e3*t._state.now,10)/1e3,e)},this.bind(".xg-spot-content","mouseup",this.handlerPreviewClick)}}},{key:"onProgressMove",value:function(t){this.updatePosition(t.offset,t.width,t.currentTime,t.e)}},{key:"onProgressDragStart",value:function(t){this.isDrag=!0,this.videoPreview&&Wd.addClass(this.videoPreview,"show")}},{key:"onProgressDragEnd",value:function(t){this.isDrag=!1,this.videoPreview&&Wd.removeClass(this.videoPreview,"show")}},{key:"updateLinePos",value:function(t,e){var n,i,r=this.root,o=this.previewLine,s=this.timePoint,a="flex"===this.player.controls.mode,c=r.getBoundingClientRect().width,l=s.getBoundingClientRect().width,u=t-c/2;u<0&&!a?(u=0,n=t-c/2,!this.thumbnail&&(i=t-c/2-l/2)):u>e-c&&!a?(n=u-(e-c),!this.thumbnail&&(i=u-(e-c)-l/2),u=e-c):(n=0,!this.thumbnail&&(i=-l/2)),void 0!==n&&(o.style.transform="translateX(".concat(n,"px)")),void 0!==i&&(s.style.transform="translateX(".concat(i,"px)")),r.style.transform="translateX(".concat(u,"px)")}},{key:"updateTimeText",value:function(t){var e=this.timeText,n=this.timePoint;e.textContent=t,!this.thumbnail&&(n.textContent=t)}},{key:"updatePosition",value:function(t,e,n,i){var r=this.root,o=this.config,s=this._state;if(r){this.updateLinePos(t,e),s.now=n;var a=Wd.format(n);i&&i.target&&Wd.hasClass(i.target,"xgplayer-spot")?(this.showTips(i.target.getAttribute("data-text"),!1,a),s.f=!0,o.isFocusDots&&s.f&&(s.now=parseInt(i.target.getAttribute("data-time"),10))):o.defaultText?(s.f=!1,this.showTips(o.defaultText,!0,a)):(s.f=!1,this.hideTips("")),this.updateTimeText(a),this.updateThumbnails(s.now)}}},{key:"updateThumbnails",value:function(t){var e=this.player,n=this.videoPreview,i=e.plugins.thumbnail;if(i&&i.usable){this.thumbnail&&i.update(this.thumbnail,t,160,90);var r=n&&n.getBoundingClientRect();this.videothumbnail&&i.update(this.videothumbnail,t,r.width,r.height)}}},{key:"registerThumbnail",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if("mobile"!==Xd.device){var e=this.player,n=this.config,i=e.getPlugin("thumbnail");if(i&&Object.keys(t).map((function(e){i.config[e]=t[e]})),i&&i.usable&&n.isShowThumbnail){Wd.removeClass(this.root,"short-line no-thumbnail"),this._hasThumnail=!0;var r=this.find(".xg-spot-thumbnail");this.thumbnail=i.createThumbnail(r,"progress-thumbnail"),n.isShowCoverPreview&&(this.videoPreview=Wd.createDom("xg-video-preview","",{},"xgvideo-preview"),e.root.appendChild(this.videoPreview),this.videothumbnail=i.createThumbnail(this.videoPreview,"xgvideo-thumbnail"))}else Wd.addClass(this.root,"short-line no-thumbnail")}}},{key:"calcuPosition",value:function(t,e){var n=this.player.plugins.progress,i=this.player,r=n.root.getBoundingClientRect().width,o=i.duration/r*6;return t+e>i.duration&&(e=i.duration-t),i.duration,i.duration,{left:t/i.duration*100,width:e/i.duration*100,isMini:e<o}}},{key:"showDot",value:function(t){var e=this.findDot(t);if(e){var n=this.root.getBoundingClientRect().width,i=e.time/this.player.duration*n;this.updatePosition(i,n,e.time)}}},{key:"showTips",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";t&&(Wd.addClass(this.root,"no-timepoint"),Wd.addClass(this.find(".xg-spot-content"),"show-text"),e&&"production"===this.config.mode?(Wd.addClass(this.root,"product"),this.tipText.textContent=t):(Wd.removeClass(this.root,"product"),this.tipText.textContent=this._hasThumnail?t:"".concat(n," ").concat(t)))}},{key:"hideTips",value:function(){Wd.removeClass(this.root,"no-timepoint"),this.tipText.textContent="",Wd.removeClass(this.find(".xg-spot-content"),"show-text"),Wd.removeClass(this.root,"product")}},{key:"destroy",value:function(){var t=this,e=this.player.plugins.progress;e&&Object.keys(Xk).map((function(n){e.removeCallBack(n,t[Xk[n]])})),this.videothumbnail=null,this.thumbnail=null,this.videoPreview&&this.player.root.removeChild(this.videoPreview),this.unbind(".xg-spot-info","mousemove",this.onMousemove),this.unbind(".xg-spot-info","mousedown",this.onMousedown),this.unbind(".xg-spot-content","mouseup",this.handlerPreviewClick)}},{key:"render",value:function(){return"mobile"===Xd.device||this.playerConfig.isMobileSimulateMode?"":'<div class="xg-spot-info '.concat("short"===this.config.mode?"short-line":"",'">\n <div class="xg-spot-content">\n <div class="xg-spot-thumbnail">\n <span class="xg-spot-time"></span>\n </div>\n <div class="xg-spot-text"><span class="spot-inner-text"></span></div>\n </div>\n <div class="xgplayer-progress-point">00:00</div>\n <div class="xg-spot-line"></div>\n </div>')}}],[{key:"pluginName",get:function(){return"progresspreview"}},{key:"defaultConfig",get:function(){return{index:1,miniWidth:6,ispots:[],defaultText:"",isFocusDots:!0,isShowThumbnail:!0,isShowCoverPreview:!1,mode:""}}}]),n}(Pg);function $k(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Zk=function(t){fi(n,t);var e=$k(n);function n(t){var i;return ui(this,n),(i=e.call(this,t)).ratio=1,i.interval=null,i.preloadMark={},i}return Co(n,[{key:"afterCreate",value:function(){this.usable&&this.initThumbnail()}},{key:"usable",get:function(){var t=this.config,e=t.urls,n=t.pic_num;return e&&e.length>0&&n>0}},{key:"initThumbnail",value:function(){var t=this.config,e=t.width,n=t.height,i=t.pic_num,r=t.interval;this.ratio=e/n*100,this.interval=r||Math.round(this.player.duration/i),this.preload(0)}},{key:"getUrlByIndex",value:function(t){return t>=0&&t<this.config.urls.length?this.config.urls[t]:""}},{key:"preload",value:function(t){var e=this,n=this.config.urls,i=n.length;[t-1,t,t+1,t+2].map((function(t){!e.preloadMark[t]&&t>=0&&t<i&&(Wd.preloadImg(n[t]),e.preloadMark[t]=!0)}))}},{key:"getPosition",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=this.config,r=i.pic_num,o=i.row,s=i.col,a=i.width,c=i.height;this.interval=Math.round(this.player.duration/r);var l=Math.ceil(t/this.interval),u=(l=l>r?r:l)<o*s?0:Math.ceil(l/(o*s))-1,h=l-u*(s*o),f=h>0?Math.ceil(h/s)-1:0,d=h>0?h-f*s-1:0,p=0,g=0;if(e&&n){var v=e/n;v<a/c?g=(p=e)/(a/c):p=(g=n)*(a/c)}else g=(p=e||a)/(a/c);var y=this.getUrlByIndex(u);return{urlIndex:u,rowIndex:f,colIndex:d,url:y,height:g,width:p,style:{backgroundImage:"url(".concat(y,")"),backgroundSize:"".concat(p*s,"px auto"),backgroundPosition:"-".concat(d*p,"px -").concat(f*g,"px"),width:"".concat(p,"px"),height:"".concat(g,"px")}}}},{key:"update",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=this.config,s=o.pic_num,a=o.urls;if(!(s<=0)&&a&&0!==a.length){var c=this.getPosition(e,n,i);this.preload(c.urlIndex),Object.keys(c.style).map((function(e){t.style[e]=c.style[e]})),Object.keys(r).map((function(e){t.style[e]=r[e]}))}}},{key:"createThumbnail",value:function(t,e){var n=Wd.createDom("xg-thumbnail","",{},"thumbnail ".concat(e));return t&&t.appendChild(n),n}}],[{key:"pluginName",get:function(){return"thumbnail"}},{key:"defaultConfig",get:function(){return{isShow:!1,urls:[],pic_num:0,col:0,row:0,height:90,width:160,scale:1,className:"",hidePortrait:!1}}}]),n}(Pg);function Jk(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var Qk=function(t){fi(n,t);var e=Jk(n);function n(){return ui(this,n),e.apply(this,arguments)}return Co(n,[{key:"afterCreate",value:function(){}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{cached:0,played:0},e=arguments.length>1?arguments[1]:void 0;e&&this.root&&(t.cached&&(this.find("xg-mini-progress-cache").style.width="".concat(t.cached/e*100,"%")),t.played&&(this.find("xg-mini-progress-played").style.width="".concat(t.played/e*100,"%")))}},{key:"render",value:function(){if(this.playerConfig.progress&&this.playerConfig.miniprogress)return'<xg-mini-progress class="xg-mini-progress">\n <xg-mini-progress-cache class="xg-mini-progress-cache"></xg-mini-progress-cache>\n <xg-mini-progress-played class="xg-mini-progress-played"></xg-mini-progress-played>\n </xg-mini-progress>'}}],[{key:"pluginName",get:function(){return"MiniProgress"}},{key:"defaultConfig",get:function(){return{}}}]),n}(Pg);function tb(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var eb="realtime",nb="firstframe";function ib(){try{return window.performance.now()}catch(t){return(new Date).getTime()}}function rb(t){return"safari"!==Xd.browser||!/^blob/.test(t.currentSrc)&&!/^blob/.test(t.src)}var ob=null,sb=function(t){fi(n,t);var e=tb(n);function n(){var t;ui(this,n);for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return yi(pi(t=e.call.apply(e,[this].concat(r))),"onLoadedData",(function(){var e=t.player.video;t.videoPI=parseInt(e.videoWidth/e.videoHeight*100,10)})),yi(pi(t),"start",(function(){var e=t.player.video,n=ib();rb(e)&&t.canvasCtx&&(t.stop(),(t.config.mode===eb||n-t.preTime>=t.interval)&&(e&&e.videoWidth&&t.update(e,e.videoWidth,e.videoHeight),t.preTime=n),t.frameId=Wd.requestAnimationFrame(t.start))})),yi(pi(t),"stop",(function(){t.frameId&&(Wd.cancelAnimationFrame(t.frameId),t.frameId=null)})),t}return Co(n,[{key:"afterCreate",value:function(){var t=this;!0===this.playerConfig.dynamicBg&&(this.config.disable=!1),n.isSupport||(this.config.disable=!0);var e=this.config,i=e.disable,r=e.mode;i||(this._pos={width:0,height:0,rwidth:0,rheight:0,x:0,y:0},this.isStart=!1,this.videoPI=0,this.preTime=0,this.interval=parseInt(1e3/this.config.frameRate,10),this.canvas=null,this.canvasCtx=null,this.once(wp,(function(){t.init(),!t.player.paused&&t.start()})),this.once(up,this.onLoadedData),this.on(_p,(function(){t.once(up,t.onLoadedData)})),r!==nb&&(this.on(Jd,(function(){t.start()})),this.on(ep,(function(){t.stop()}))),r===nb&&this.once(op,(function(){var e=t.player.video;e&&rb(e)&&e.videoWidth&&t.update(e,e.videoWidth,e.videoHeight)})))}},{key:"init",value:function(){var t=this.player,e=this.config;this.canvasFilter=n.supportCanvasFilter();try{var i=t.innerContainer||t.root;i.insertAdjacentHTML("afterbegin",'<div class="xgplayer-dynamic-bg"><canvas>\n </canvas><xgmask></xgmask></div>'),this.root=i.children[0],this.canvas=this.find("canvas"),this.canvasFilter||(this.canvas.style.filter=e.filter,this.canvas.style.webkitFilter=e.filter),this.mask=this.find("xgmask"),e.addMask&&(this.mask.style.background=e.maskBg),this.canvasCtx=this.canvas.getContext("2d");var r=this.playerConfig.poster;if(r){var o="String"===Wd.typeOf(r)?r:"String"===Wd.typeOf(r.poster)?r.poster:null;this.updateImg(o)}}catch(t){Hd.logError("plugin:DynamicBg",t)}}},{key:"updateImg",value:function(t){var e=this;if(t){var n=this.canvas.getBoundingClientRect(),i=n.width,r=n.height,o=new window.Image;o.onload=function(){e.canvas&&(e.canvas.height=r,e.canvas.width=i,e.update(o,o.width,o.height),o=null)},o.src=t}}},{key:"update",value:function(t,e,n){if(this.canvas&&this.canvasCtx)try{var i=this._pos,r=this.config,o=this.canvas.getBoundingClientRect(),s=o.width,a=o.height;if(this.videoPI=parseInt(e/n*100,10),s!==i.width||a!==i.height){var c=parseInt(s/a*100,10);i.width=this.canvas.width=s,i.height=this.canvas.height=a;var l=a,u=s;c<this.videoPI?u=parseInt(a*this.videoPI/100,10):c>this.videoPI&&(l=parseInt(100*s/this.videoPI,10)),c<this.videoPI?u=parseInt(a*this.videoPI/100,10):c>this.videoPI&&(l=parseInt(100*s/this.videoPI,10)),i.rwidth=1.2*u,i.rheight=1.2*l,i.x=(s-i.rwidth)/2,i.y=(a-i.rheight)/2}this.canvasFilter&&(this.canvasCtx.filter=r.filter),this.canvasCtx.drawImage(t,i.x,i.y,i.rwidth,i.rheight)}catch(t){Hd.logError("plugin:DynamicBg",t)}}},{key:"destroy",value:function(){this.stop(),this.canvasCtx=null,this.canvas=null}},{key:"render",value:function(){return""}}],[{key:"pluginName",get:function(){return"dynamicBg"}},{key:"defaultConfig",get:function(){return{disable:!0,mode:"framerate",frameRate:10,filter:"blur(50px)",addMask:!0,maskBg:"rgba(0,0,0,0.7)"}}},{key:"isSupport",get:function(){return"boolean"==typeof ob?ob:ob=function(){try{return!!document.createElement("canvas").getContext}catch(t){return!1}}()}},{key:"supportCanvasFilter",value:function(){return!("safari"===Xd.browser||"firefox"===Xd.browser)}}]),n}(Pg),ab={LANG:"zh-cn",TEXT:{ERROR_TYPES:{network:{code:1,msg:"视频下载错误"},mse:{code:2,msg:"流追加错误"},parse:{code:3,msg:"解析错误"},format:{code:4,msg:"格式错误"},decoder:{code:5,msg:"解码错误"},runtime:{code:6,msg:"语法错误"},timeout:{code:7,msg:"播放超时"},other:{code:8,msg:"其他错误"}},HAVE_NOTHING:"没有关于音频/视频是否就绪的信息",HAVE_METADATA:"音频/视频的元数据已就绪",HAVE_CURRENT_DATA:"关于当前播放位置的数据是可用的,但没有足够的数据来播放下一帧/毫秒",HAVE_FUTURE_DATA:"当前及至少下一帧的数据是可用的",HAVE_ENOUGH_DATA:"可用数据足以开始播放",NETWORK_EMPTY:"音频/视频尚未初始化",NETWORK_IDLE:"音频/视频是活动的且已选取资源,但并未使用网络",NETWORK_LOADING:"浏览器正在下载数据",NETWORK_NO_SOURCE:"未找到音频/视频来源",MEDIA_ERR_ABORTED:"取回过程被用户中止",MEDIA_ERR_NETWORK:"网络错误",MEDIA_ERR_DECODE:"解码错误",MEDIA_ERR_SRC_NOT_SUPPORTED:"不支持的音频/视频格式",REPLAY:"重播",ERROR:"网络连接似乎出现了问题",PLAY_TIPS:"播放",PAUSE_TIPS:"暂停",PLAYNEXT_TIPS:"下一集",DOWNLOAD_TIPS:"下载",ROTATE_TIPS:"旋转",RELOAD_TIPS:"重新载入",FULLSCREEN_TIPS:"进入全屏",EXITFULLSCREEN_TIPS:"退出全屏",CSSFULLSCREEN_TIPS:"进入样式全屏",EXITCSSFULLSCREEN_TIPS:"退出样式全屏",TEXTTRACK:"字幕",PIP:"画中画",SCREENSHOT:"截图",LIVE:"正在直播",OFF:"关闭",OPEN:"开启",MINI_DRAG:"点击按住可拖动视频",MINISCREEN:"小屏幕",REFRESH_TIPS:"请试试",REFRESH:"刷新",FORWARD:"快进中",LIVE_TIP:"直播"}};function cb(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var n,i=vi(t);if(e){var r=vi(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return gi(this,n)}}var lb=function(t){fi(n,t);var e=cb(n);function n(){return ui(this,n),e.apply(this,arguments)}return n}(py);return yi(lb,"defaultPreset",(function t(e,n){var i,r,o;ui(this,t);var s=n&&n.isMobileSimulateMode,a=n.isLive,c=[].concat(a?[]:[Ym,Qk,qk,nk],[zm,tk,uk,bk,Ak,Mk,Ek,Sk,ak,yk]),l=[wy,xy,Py,Nm,Oy,Uk,Gk,Zk,Yy];this.plugins=[my].concat(Yh(c),l);var u=s?"mobile":Xd.device;switch(u){case"pc":(i=this.plugins).push.apply(i,[Am,qy,Bk]);break;case"mobile":(r=this.plugins).push.apply(r,[Pm]);break;default:(o=this.plugins).push.apply(o,[Am,qy,Bk])}(Xd.os.isIpad||"pc"===u)&&this.plugins.push(sb),this.ignores=[],this.i18n=[ab]})),yi(lb,"Util",Wd),yi(lb,"Sniffer",Xd),yi(lb,"Errors",Zd),yi(lb,"Events",jp),yi(lb,"Plugin",Pg),yi(lb,"BasePlugin",dg),yi(lb,"I18N",ly),yi(lb,"STATE_CLASS",Wv),lb}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Player=e()}(this,(function(){"use strict";function t(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},i=function(t){return t&&t.Math==Math&&t},s=i("object"==typeof globalThis&&globalThis)||i("object"==typeof window&&window)||i("object"==typeof self&&self)||i("object"==typeof e&&e)||function(){return this}()||Function("return this")(),n={},o=function(t){try{return!!t()}catch(e){return!0}},r=!o((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),a=!o((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")})),l=a,h=Function.prototype.call,c=l?h.bind(h):function(){return h.apply(h,arguments)},u={},d={}.propertyIsEnumerable,p=Object.getOwnPropertyDescriptor,g=p&&!d.call({1:2},1);u.f=g?function(t){var e=p(this,t);return!!e&&e.enumerable}:d;var f,m,y=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},v=a,b=Function.prototype,C=b.bind,_=b.call,w=v&&C.bind(_,_),T=v?function(t){return t&&w(t)}:function(t){return t&&function(){return _.apply(t,arguments)}},E=T,x=E({}.toString),S=E("".slice),k=function(t){return S(x(t),8,-1)},P=o,L=k,A=Object,I=T("".split),O=P((function(){return!A("z").propertyIsEnumerable(0)}))?function(t){return"String"==L(t)?I(t,""):A(t)}:A,R=function(t){return null==t},D=R,M=TypeError,N=function(t){if(D(t))throw M("Can't call method on "+t);return t},F=O,H=N,U=function(t){return F(H(t))},B="object"==typeof document&&document.all,j={all:B,IS_HTMLDDA:void 0===B&&void 0!==B},$=j.all,V=j.IS_HTMLDDA?function(t){return"function"==typeof t||t===$}:function(t){return"function"==typeof t},G=V,W=j.all,z=j.IS_HTMLDDA?function(t){return"object"==typeof t?null!==t:G(t)||t===W}:function(t){return"object"==typeof t?null!==t:G(t)},Y=s,K=V,X=function(t){return K(t)?t:void 0},q=function(t,e){return arguments.length<2?X(Y[t]):Y[t]&&Y[t][e]},Z=T({}.isPrototypeOf),J=s,Q=q("navigator","userAgent")||"",tt=J.process,et=J.Deno,it=tt&&tt.versions||et&&et.version,st=it&&it.v8;st&&(m=(f=st.split("."))[0]>0&&f[0]<4?1:+(f[0]+f[1])),!m&&Q&&(!(f=Q.match(/Edge\/(\d+)/))||f[1]>=74)&&(f=Q.match(/Chrome\/(\d+)/))&&(m=+f[1]);var nt=m,ot=o,rt=!!Object.getOwnPropertySymbols&&!ot((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&nt&&nt<41})),at=rt&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,lt=q,ht=V,ct=Z,ut=Object,dt=at?function(t){return"symbol"==typeof t}:function(t){var e=lt("Symbol");return ht(e)&&ct(e.prototype,ut(t))},pt=String,gt=function(t){try{return pt(t)}catch(e){return"Object"}},ft=V,mt=gt,yt=TypeError,vt=function(t){if(ft(t))return t;throw yt(mt(t)+" is not a function")},bt=vt,Ct=R,_t=c,wt=V,Tt=z,Et=TypeError,xt={exports:{}},St=s,kt=Object.defineProperty,Pt=function(t,e){try{kt(St,t,{value:e,configurable:!0,writable:!0})}catch(i){St[t]=e}return e},Lt=Pt,At="__core-js_shared__",It=s[At]||Lt(At,{}),Ot=It;(xt.exports=function(t,e){return Ot[t]||(Ot[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.25.2",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.2/LICENSE",source:"https://github.com/zloirock/core-js"});var Rt=N,Dt=Object,Mt=function(t){return Dt(Rt(t))},Nt=Mt,Ft=T({}.hasOwnProperty),Ht=Object.hasOwn||function(t,e){return Ft(Nt(t),e)},Ut=T,Bt=0,jt=Math.random(),$t=Ut(1..toString),Vt=function(t){return"Symbol("+(void 0===t?"":t)+")_"+$t(++Bt+jt,36)},Gt=s,Wt=xt.exports,zt=Ht,Yt=Vt,Kt=rt,Xt=at,qt=Wt("wks"),Zt=Gt.Symbol,Jt=Zt&&Zt.for,Qt=Xt?Zt:Zt&&Zt.withoutSetter||Yt,te=function(t){if(!zt(qt,t)||!Kt&&"string"!=typeof qt[t]){var e="Symbol."+t;Kt&&zt(Zt,t)?qt[t]=Zt[t]:qt[t]=Xt&&Jt?Jt(e):Qt(e)}return qt[t]},ee=c,ie=z,se=dt,ne=function(t,e){var i=t[e];return Ct(i)?void 0:bt(i)},oe=function(t,e){var i,s;if("string"===e&&wt(i=t.toString)&&!Tt(s=_t(i,t)))return s;if(wt(i=t.valueOf)&&!Tt(s=_t(i,t)))return s;if("string"!==e&&wt(i=t.toString)&&!Tt(s=_t(i,t)))return s;throw Et("Can't convert object to primitive value")},re=TypeError,ae=te("toPrimitive"),le=function(t,e){if(!ie(t)||se(t))return t;var i,s=ne(t,ae);if(s){if(void 0===e&&(e="default"),i=ee(s,t,e),!ie(i)||se(i))return i;throw re("Can't convert object to primitive value")}return void 0===e&&(e="number"),oe(t,e)},he=le,ce=dt,ue=function(t){var e=he(t,"string");return ce(e)?e:e+""},de=z,pe=s.document,ge=de(pe)&&de(pe.createElement),fe=function(t){return ge?pe.createElement(t):{}},me=!r&&!o((function(){return 7!=Object.defineProperty(fe("div"),"a",{get:function(){return 7}}).a})),ye=r,ve=c,be=u,Ce=y,_e=U,we=ue,Te=Ht,Ee=me,xe=Object.getOwnPropertyDescriptor;n.f=ye?xe:function(t,e){if(t=_e(t),e=we(e),Ee)try{return xe(t,e)}catch(i){}if(Te(t,e))return Ce(!ve(be.f,t,e),t[e])};var Se={},ke=r&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),Pe=z,Le=String,Ae=TypeError,Ie=function(t){if(Pe(t))return t;throw Ae(Le(t)+" is not an object")},Oe=r,Re=me,De=ke,Me=Ie,Ne=ue,Fe=TypeError,He=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,Be="enumerable",je="configurable",$e="writable";Se.f=Oe?De?function(t,e,i){if(Me(t),e=Ne(e),Me(i),"function"==typeof t&&"prototype"===e&&"value"in i&&$e in i&&!i.writable){var s=Ue(t,e);s&&s.writable&&(t[e]=i.value,i={configurable:je in i?i.configurable:s.configurable,enumerable:Be in i?i.enumerable:s.enumerable,writable:!1})}return He(t,e,i)}:He:function(t,e,i){if(Me(t),e=Ne(e),Me(i),Re)try{return He(t,e,i)}catch(s){}if("get"in i||"set"in i)throw Fe("Accessors not supported");return"value"in i&&(t[e]=i.value),t};var Ve=Se,Ge=y,We=r?function(t,e,i){return Ve.f(t,e,Ge(1,i))}:function(t,e,i){return t[e]=i,t},ze={exports:{}},Ye=r,Ke=Ht,Xe=Function.prototype,qe=Ye&&Object.getOwnPropertyDescriptor,Ze=Ke(Xe,"name"),Je={EXISTS:Ze,PROPER:Ze&&"something"===function(){}.name,CONFIGURABLE:Ze&&(!Ye||Ye&&qe(Xe,"name").configurable)},Qe=V,ti=It,ei=T(Function.toString);Qe(ti.inspectSource)||(ti.inspectSource=function(t){return ei(t)});var ii,si,ni,oi=ti.inspectSource,ri=V,ai=s.WeakMap,li=ri(ai)&&/native code/.test(String(ai)),hi=xt.exports,ci=Vt,ui=hi("keys"),di=function(t){return ui[t]||(ui[t]=ci(t))},pi={},gi=li,fi=s,mi=T,yi=z,vi=We,bi=Ht,Ci=It,_i=di,wi=pi,Ti="Object already initialized",Ei=fi.TypeError,xi=fi.WeakMap;if(gi||Ci.state){var Si=Ci.state||(Ci.state=new xi),ki=mi(Si.get),Pi=mi(Si.has),Li=mi(Si.set);ii=function(t,e){if(Pi(Si,t))throw Ei(Ti);return e.facade=t,Li(Si,t,e),e},si=function(t){return ki(Si,t)||{}},ni=function(t){return Pi(Si,t)}}else{var Ai=_i("state");wi[Ai]=!0,ii=function(t,e){if(bi(t,Ai))throw Ei(Ti);return e.facade=t,vi(t,Ai,e),e},si=function(t){return bi(t,Ai)?t[Ai]:{}},ni=function(t){return bi(t,Ai)}}var Ii={set:ii,get:si,has:ni,enforce:function(t){return ni(t)?si(t):ii(t,{})},getterFor:function(t){return function(e){var i;if(!yi(e)||(i=si(e)).type!==t)throw Ei("Incompatible receiver, "+t+" required");return i}}},Oi=o,Ri=V,Di=Ht,Mi=r,Ni=Je.CONFIGURABLE,Fi=oi,Hi=Ii.enforce,Ui=Ii.get,Bi=Object.defineProperty,ji=Mi&&!Oi((function(){return 8!==Bi((function(){}),"length",{value:8}).length})),$i=String(String).split("String"),Vi=ze.exports=function(t,e,i){"Symbol("===String(e).slice(0,7)&&(e="["+String(e).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),i&&i.getter&&(e="get "+e),i&&i.setter&&(e="set "+e),(!Di(t,"name")||Ni&&t.name!==e)&&(Mi?Bi(t,"name",{value:e,configurable:!0}):t.name=e),ji&&i&&Di(i,"arity")&&t.length!==i.arity&&Bi(t,"length",{value:i.arity});try{i&&Di(i,"constructor")&&i.constructor?Mi&&Bi(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(n){}var s=Hi(t);return Di(s,"source")||(s.source=$i.join("string"==typeof e?e:"")),t};Function.prototype.toString=Vi((function(){return Ri(this)&&Ui(this).source||Fi(this)}),"toString");var Gi=V,Wi=Se,zi=ze.exports,Yi=Pt,Ki=function(t,e,i,s){s||(s={});var n=s.enumerable,o=void 0!==s.name?s.name:e;if(Gi(i)&&zi(i,o,s),s.global)n?t[e]=i:Yi(e,i);else{try{s.unsafe?t[e]&&(n=!0):delete t[e]}catch(r){}n?t[e]=i:Wi.f(t,e,{value:i,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return t},Xi={},qi=Math.ceil,Zi=Math.floor,Ji=Math.trunc||function(t){var e=+t;return(e>0?Zi:qi)(e)},Qi=function(t){var e=+t;return e!=e||0===e?0:Ji(e)},ts=Qi,es=Math.max,is=Math.min,ss=Qi,ns=Math.min,os=function(t){return t>0?ns(ss(t),9007199254740991):0},rs=function(t){return os(t.length)},as=U,ls=function(t,e){var i=ts(t);return i<0?es(i+e,0):is(i,e)},hs=rs,cs=function(t){return function(e,i,s){var n,o=as(e),r=hs(o),a=ls(s,r);if(t&&i!=i){for(;r>a;)if((n=o[a++])!=n)return!0}else for(;r>a;a++)if((t||a in o)&&o[a]===i)return t||a||0;return!t&&-1}},us={includes:cs(!0),indexOf:cs(!1)},ds=Ht,ps=U,gs=us.indexOf,fs=pi,ms=T([].push),ys=function(t,e){var i,s=ps(t),n=0,o=[];for(i in s)!ds(fs,i)&&ds(s,i)&&ms(o,i);for(;e.length>n;)ds(s,i=e[n++])&&(~gs(o,i)||ms(o,i));return o},vs=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"].concat("length","prototype");Xi.f=Object.getOwnPropertyNames||function(t){return ys(t,vs)};var bs={};bs.f=Object.getOwnPropertySymbols;var Cs=q,_s=Xi,ws=bs,Ts=Ie,Es=T([].concat),xs=Cs("Reflect","ownKeys")||function(t){var e=_s.f(Ts(t)),i=ws.f;return i?Es(e,i(t)):e},Ss=Ht,ks=xs,Ps=n,Ls=Se,As=function(t,e,i){for(var s=ks(e),n=Ls.f,o=Ps.f,r=0;r<s.length;r++){var a=s[r];Ss(t,a)||i&&Ss(i,a)||n(t,a,o(e,a))}},Is=o,Os=V,Rs=/#|\.prototype\./,Ds=function(t,e){var i=Ns[Ms(t)];return i==Hs||i!=Fs&&(Os(e)?Is(e):!!e)},Ms=Ds.normalize=function(t){return String(t).replace(Rs,".").toLowerCase()},Ns=Ds.data={},Fs=Ds.NATIVE="N",Hs=Ds.POLYFILL="P",Us=Ds,Bs=s,js=n.f,$s=We,Vs=Ki,Gs=Pt,Ws=As,zs=Us,Ys=function(t,e){var i,s,n,o,r,a=t.target,l=t.global,h=t.stat;if(i=l?Bs:h?Bs[a]||Gs(a,{}):(Bs[a]||{}).prototype)for(s in e){if(o=e[s],n=t.dontCallGetSet?(r=js(i,s))&&r.value:i[s],!zs(l?s:a+(h?".":"#")+s,t.forced)&&void 0!==n){if(typeof o==typeof n)continue;Ws(o,n)}(t.sham||n&&n.sham)&&$s(o,"sham",!0),Vs(i,s,o,t)}},Ks=k,Xs=r,qs=Array.isArray||function(t){return"Array"==Ks(t)},Zs=TypeError,Js=Object.getOwnPropertyDescriptor,Qs=Xs&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}(),tn=TypeError,en=Ys,sn=Mt,nn=rs,on=Qs?function(t,e){if(qs(t)&&!Js(t,"length").writable)throw Zs("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e},rn=function(t){if(t>9007199254740991)throw tn("Maximum allowed index exceeded");return t},an=o((function(){return 4294967297!==[].push.call({length:4294967296},1)})),ln=!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}}();en({target:"Array",proto:!0,arity:1,forced:an||ln},{push:function(t){var e=sn(this),i=nn(e),s=arguments.length;rn(i+s);for(var n=0;n<s;n++)e[i]=arguments[n],i++;return on(e,i),i}});var hn=a,cn=Function.prototype,un=cn.apply,dn=cn.call,pn="object"==typeof Reflect&&Reflect.apply||(hn?dn.bind(un):function(){return dn.apply(un,arguments)}),gn=V,fn=String,mn=TypeError,yn=T,vn=Ie,bn=function(t){if("object"==typeof t||gn(t))return t;throw mn("Can't set "+fn(t)+" as a prototype")},Cn=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,i={};try{(t=yn(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(i,[]),e=i instanceof Array}catch(s){}return function(i,s){return vn(i),bn(s),e?t(i,s):i.__proto__=s,i}}():void 0),_n=Se.f,wn=V,Tn=z,En=Cn,xn=function(t,e,i){var s,n;return En&&wn(s=e.constructor)&&s!==i&&Tn(n=s.prototype)&&n!==i.prototype&&En(t,n),t},Sn={};Sn[te("toStringTag")]="z";var kn="[object z]"===String(Sn),Pn=V,Ln=k,An=te("toStringTag"),In=Object,On="Arguments"==Ln(function(){return arguments}()),Rn=kn?Ln:function(t){var e,i,s;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(i=function(t,e){try{return t[e]}catch(i){}}(e=In(t),An))?i:On?Ln(e):"Object"==(s=Ln(e))&&Pn(e.callee)?"Arguments":s},Dn=Rn,Mn=String,Nn=function(t){if("Symbol"===Dn(t))throw TypeError("Cannot convert a Symbol value to a string");return Mn(t)},Fn=function(t,e){return void 0===t?arguments.length<2?"":e:Nn(t)},Hn=z,Un=We,Bn=Error,jn=T("".replace),$n=String(Bn("zxcasd").stack),Vn=/\n\s*at [^:]*:[^\n]*/,Gn=Vn.test($n),Wn=function(t,e){if(Gn&&"string"==typeof t&&!Bn.prepareStackTrace)for(;e--;)t=jn(t,Vn,"");return t},zn=y,Yn=!o((function(){var t=Error("a");return!("stack"in t)||(Object.defineProperty(t,"stack",zn(1,7)),7!==t.stack)})),Kn=q,Xn=Ht,qn=We,Zn=Z,Jn=Cn,Qn=As,to=function(t,e,i){i in t||_n(t,i,{configurable:!0,get:function(){return e[i]},set:function(t){e[i]=t}})},eo=xn,io=Fn,so=function(t,e){Hn(e)&&"cause"in e&&Un(t,"cause",e.cause)},no=Wn,oo=Yn,ro=r,ao=Ys,lo=pn,ho=function(t,e,i,s){var n="stackTraceLimit",o=s?2:1,r=t.split("."),a=r[r.length-1],l=Kn.apply(null,r);if(l){var h=l.prototype;if(Xn(h,"cause")&&delete h.cause,!i)return l;var c=Kn("Error"),u=e((function(t,e){var i=io(s?e:t,void 0),n=s?new l(t):new l;return void 0!==i&&qn(n,"message",i),oo&&qn(n,"stack",no(n.stack,2)),this&&Zn(h,this)&&eo(n,this,u),arguments.length>o&&so(n,arguments[o]),n}));u.prototype=h,"Error"!==a?Jn?Jn(u,c):Qn(u,c,{name:!0}):ro&&n in l&&(to(u,l,n),to(u,l,"prepareStackTrace")),Qn(u,l);try{h.name!==a&&qn(h,"name",a),h.constructor=u}catch(d){}return u}},co="WebAssembly",uo=s.WebAssembly,po=7!==Error("e",{cause:7}).cause,go=function(t,e){var i={};i[t]=ho(t,e,po),ao({global:!0,constructor:!0,arity:1,forced:po},i)},fo=function(t,e){if(uo&&uo[t]){var i={};i[t]=ho("WebAssembly."+t,e,po),ao({target:co,stat:!0,constructor:!0,arity:1,forced:po},i)}};go("Error",(function(t){return function(e){return lo(t,this,arguments)}})),go("EvalError",(function(t){return function(e){return lo(t,this,arguments)}})),go("RangeError",(function(t){return function(e){return lo(t,this,arguments)}})),go("ReferenceError",(function(t){return function(e){return lo(t,this,arguments)}})),go("SyntaxError",(function(t){return function(e){return lo(t,this,arguments)}})),go("TypeError",(function(t){return function(e){return lo(t,this,arguments)}})),go("URIError",(function(t){return function(e){return lo(t,this,arguments)}})),fo("CompileError",(function(t){return function(e){return lo(t,this,arguments)}})),fo("LinkError",(function(t){return function(e){return lo(t,this,arguments)}})),fo("RuntimeError",(function(t){return function(e){return lo(t,this,arguments)}}));var mo={exports:{}};!function(t){var e=Object.prototype.hasOwnProperty,i="~";function s(){}function n(t,e,i){this.fn=t,this.context=e,this.once=i||!1}function o(t,e,s,o,r){if("function"!=typeof s)throw new TypeError("The listener must be a function");var a=new n(s,o||t,r),l=i?i+e:e;return t._events[l]?t._events[l].fn?t._events[l]=[t._events[l],a]:t._events[l].push(a):(t._events[l]=a,t._eventsCount++),t}function r(t,e){0==--t._eventsCount?t._events=new s:delete t._events[e]}function a(){this._events=new s,this._eventsCount=0}Object.create&&(s.prototype=Object.create(null),(new s).__proto__||(i=!1)),a.prototype.eventNames=function(){var t,s,n=[];if(0===this._eventsCount)return n;for(s in t=this._events)e.call(t,s)&&n.push(i?s.slice(1):s);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(t)):n},a.prototype.listeners=function(t){var e=i?i+t:t,s=this._events[e];if(!s)return[];if(s.fn)return[s.fn];for(var n=0,o=s.length,r=new Array(o);n<o;n++)r[n]=s[n].fn;return r},a.prototype.listenerCount=function(t){var e=i?i+t:t,s=this._events[e];return s?s.fn?1:s.length:0},a.prototype.emit=function(t,e,s,n,o,r){var a=i?i+t:t;if(!this._events[a])return!1;var l,h,c=this._events[a],u=arguments.length;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),u){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,s),!0;case 4:return c.fn.call(c.context,e,s,n),!0;case 5:return c.fn.call(c.context,e,s,n,o),!0;case 6:return c.fn.call(c.context,e,s,n,o,r),!0}for(h=1,l=new Array(u-1);h<u;h++)l[h-1]=arguments[h];c.fn.apply(c.context,l)}else{var d,p=c.length;for(h=0;h<p;h++)switch(c[h].once&&this.removeListener(t,c[h].fn,void 0,!0),u){case 1:c[h].fn.call(c[h].context);break;case 2:c[h].fn.call(c[h].context,e);break;case 3:c[h].fn.call(c[h].context,e,s);break;case 4:c[h].fn.call(c[h].context,e,s,n);break;default:if(!l)for(d=1,l=new Array(u-1);d<u;d++)l[d-1]=arguments[d];c[h].fn.apply(c[h].context,l)}}return!0},a.prototype.on=function(t,e,i){return o(this,t,e,i,!1)},a.prototype.once=function(t,e,i){return o(this,t,e,i,!0)},a.prototype.removeListener=function(t,e,s,n){var o=i?i+t:t;if(!this._events[o])return this;if(!e)return r(this,o),this;var a=this._events[o];if(a.fn)a.fn!==e||n&&!a.once||s&&a.context!==s||r(this,o);else{for(var l=0,h=[],c=a.length;l<c;l++)(a[l].fn!==e||n&&!a[l].once||s&&a[l].context!==s)&&h.push(a[l]);h.length?this._events[o]=1===h.length?h[0]:h:r(this,o)}return this},a.prototype.removeAllListeners=function(t){var e;return t?(e=i?i+t:t,this._events[e]&&r(this,e)):(this._events=new s,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=i,a.EventEmitter=a,t.exports=a}(mo);var yo=mo.exports;const vo="undefined"!=typeof window&&window.location&&window.location.href.indexOf("xgplayerdebugger=1")>-1,bo="color: #525252; background-color: #90ee90;",Co="color: #525252; background-color: red;",_o="color: #525252; background-color: yellow; ",wo="%c[xgplayer]",To={config:{debug:vo?3:1},logInfo:function(t,...e){this.config.debug>=3&&console.log(wo,bo,t,...e)},logWarn:function(t,...e){this.config.debug>=1&&console.warn(wo,_o,t,...e)},logError:function(t,...e){if(this.config.debug<1)return;const i=this.config.debug>=2?"trace":"error";console[i](wo,Co,t,...e)}};class Eo{constructor(t){this.bufferedList=t}start(t){return this.bufferedList[t].start}end(t){return this.bufferedList[t].end}get length(){return this.bufferedList.length}}const xo={};xo.createDom=function(t="div",e="",i={},s=""){const n=document.createElement(t);return n.className=s,n.innerHTML=e,Object.keys(i).forEach((e=>{const s=e,o=i[e];"video"===t||"audio"===t||"live-video"===t?o&&n.setAttribute(s,o):n.setAttribute(s,o)})),n},xo.createDomFromHtml=function(t,e={},i=""){try{let s=document.createElement("div");s.innerHTML=t;let n=s.children;return s=null,n.length>0?(n=n[0],i&&xo.addClass(n,i),e&&Object.keys(e).forEach((t=>{n.setAttribute(t,e[t])})),n):null}catch(s){return To.logError("util.createDomFromHtml",s),null}},xo.hasClass=function(t,e){if(!t||!e)return!1;try{return Array.prototype.some.call(t.classList,(t=>t===e))}catch(i){const s=t.className&&"object"==typeof t.className?t.getAttribute("class"):t.className;return s&&!!s.match(new RegExp("(\\s|^)"+e+"(\\s|$)"))}},xo.addClass=function(t,e){if(t&&e)try{e.trim().split(/\s+/g).forEach((e=>{e&&t.classList.add(e)}))}catch(i){xo.hasClass(t,e)||(t.className&&"object"==typeof t.className?t.setAttribute("class",t.getAttribute("class")+" "+e):t.className+=" "+e)}},xo.removeClass=function(t,e){if(t&&e)try{e.trim().split(/\s+/g).forEach((e=>{e&&t.classList.remove(e)}))}catch(i){xo.hasClass(t,e)&&e.split(/\s+/g).forEach((e=>{const i=new RegExp("(\\s|^)"+e+"(\\s|$)");t.className&&"object"==typeof t.className?t.setAttribute("class",t.getAttribute("class").replace(i," ")):t.className=t.className.replace(i," ")}))}},xo.toggleClass=function(t,e){t&&e.split(/\s+/g).forEach((e=>{xo.hasClass(t,e)?xo.removeClass(t,e):xo.addClass(t,e)}))},xo.classNames=function(){const t=[];for(let e=0;e<arguments.length;e++)"String"===xo.typeOf(arguments[e])?t.push(arguments[e]):"Object"===xo.typeOf(arguments[e])&&Object.keys(arguments[e]).map((i=>{arguments[e][i]&&t.push(i)}));return t.join(" ")},xo.findDom=function(t=document,e){let i;try{i=t.querySelector(e)}catch(s){To.logError("util.findDom",s),0===e.indexOf("#")&&(i=t.getElementById(e.slice(1)))}return i},xo.getCss=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,!1)[e]},xo.padStart=function(t,e,i){const s=String(i),n=e>>0;let o=Math.ceil(n/s.length);const r=[],a=String(t);for(;o--;)r.push(s);return r.join("").substring(0,n-a.length)+a},xo.format=function(t){if(window.isNaN(t))return"";t=Math.round(t);const e=xo.padStart(Math.floor(t/3600),2,0),i=xo.padStart(Math.floor((t-3600*e)/60),2,0),s=xo.padStart(Math.floor(t-3600*e-60*i),2,0);return("00"===e?[i,s]:[e,i,s]).join(":")},xo.event=function(t){if(t.touches){const e=t.touches[0]||t.changedTouches[0];t.clientX=e.clientX||0,t.clientY=e.clientY||0,t.offsetX=e.pageX-e.target.offsetLeft,t.offsetY=e.pageY-e.target.offsetTop}t._target=t.target||t.srcElement},xo.typeOf=function(t){return Object.prototype.toString.call(t).match(/([^\s.*]+)(?=]$)/g)[0]},xo.deepCopy=function(t,e){if("Object"===xo.typeOf(e)&&"Object"===xo.typeOf(t))return Object.keys(e).forEach((i=>{"Object"!==xo.typeOf(e[i])||e[i]instanceof Node?"Array"===xo.typeOf(e[i])?t[i]="Array"===xo.typeOf(t[i])?t[i].concat(e[i]):e[i]:t[i]=e[i]:void 0===t[i]||void 0===t[i]?t[i]=e[i]:xo.deepCopy(t[i],e[i])})),t},xo.deepMerge=function(t,e){return Object.keys(e).map((i=>{"Array"===xo.typeOf(e[i])&&"Array"===xo.typeOf(t[i])?"Array"===xo.typeOf(t[i])&&t[i].push(...e[i]):xo.typeOf(t[i])!==xo.typeOf(e[i])||null===t[i]||"Object"!==xo.typeOf(t[i])||e[i]instanceof window.Node?null!==e[i]&&(t[i]=e[i]):xo.deepMerge(t[i],e[i])})),t},xo.getBgImage=function(t){const e=(t.currentStyle||window.getComputedStyle(t,null)).backgroundImage;if(!e||"none"===e)return"";const i=document.createElement("a");return i.href=e.replace(/url\("|"\)/g,""),i.href},xo.copyDom=function(t){if(t&&1===t.nodeType){const e=document.createElement(t.tagName);return Array.prototype.forEach.call(t.attributes,(t=>{e.setAttribute(t.name,t.value)})),t.innerHTML&&(e.innerHTML=t.innerHTML),e}return""},xo.setInterval=function(t,e,i,s){t._interval[e]||(t._interval[e]=setInterval(i.bind(t),s))},xo.clearInterval=function(t,e){clearInterval(t._interval[e]),t._interval[e]=null},xo.setTimeout=function(t,e,i){t._timers||(t._timers=[]);const s=setTimeout((()=>{e(),xo.clearTimeout(t,s)}),i);return t._timers.push(s),s},xo.clearTimeout=function(t,e){const{_timers:i}=t;if("Array"===xo.typeOf(i)){for(let s=0;s<i.length;s++)if(i[s]===e){i.splice(s,1),clearTimeout(e);break}}else clearTimeout(e)},xo.clearAllTimers=function(t){const{_timers:e}=t;"Array"===xo.typeOf(e)&&(e.map((t=>{clearTimeout(t)})),t._timerIds=[])},xo.createImgBtn=function(t,e,i,s){const n=xo.createDom(`xg-${t}`,"",{},`xgplayer-${t}-img`);if(n.style.backgroundImage=`url("${e}")`,i&&s){let e,o,r;["px","rem","em","pt","dp","vw","vh","vm","%"].every((t=>!(i.indexOf(t)>-1&&s.indexOf(t)>-1)||(e=parseFloat(i.slice(0,i.indexOf(t)).trim()),o=parseFloat(s.slice(0,s.indexOf(t)).trim()),r=t,!1))),n.style.width=`${e}${r}`,n.style.height=`${o}${r}`,n.style.backgroundSize=`${e}${r} ${o}${r}`,n.style.margin="start"===t?`-${o/2}${r} auto auto -${e/2}${r}`:"auto 5px auto 5px"}return n},xo.Hex2RGBA=function(t,e){const i=[];if(/^\#[0-9A-F]{3}$/i.test(t)){let e="#";t.replace(/[0-9A-F]/gi,(function(t){e+=t+t})),t=e}return/^#[0-9A-F]{6}$/i.test(t)?(t.replace(/[0-9A-F]{2}/gi,(function(t){i.push(parseInt(t,16))})),`rgba(${i.join(",")}, ${e})`):"rgba(255, 255, 255, 0.1)"},xo.getFullScreenEl=function(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement},xo.checkIsFunction=function(t){return t&&"function"==typeof t},xo.checkIsObject=function(t){return null!==t&&"object"==typeof t},xo.hide=function(t){t.style.display="none"},xo.show=function(t,e){t.style.display=e||"block"},xo.isUndefined=function(t){if(null==t)return!0},xo.setStyleFromCsstext=function(t,e){if(e)if("String"===xo.typeOf(e)){e.replace(/\s+/g,"").split(";").map((e=>{if(e){const i=e.split(":");i.length>1&&(t.style[i[0]]=i[1])}}))}else Object.keys(e).map((i=>{t.style[i]=e[i]}))},xo.filterStyleFromText=function(t,e=["width","height","top","left","bottom","right","position","z-index","padding","margin","transform"]){const i=t.style.cssText;if(!i)return{};const s=i.replace(/\s+/g,"").split(";"),n={},o={};return s.map((t=>{if(t){const i=t.split(":");i.length>1&&(!function(t,e){for(let i=0,s=e.length;i<s;i++)if(t.indexOf(e[i])>-1)return!0;return!1}(i[0],e)?o[i[0]]=i[1]:n[i[0]]=i[1])}})),t.setAttribute("style",""),Object.keys(o).map((e=>{t.style[e]=o[e]})),n},xo.getStyleFromCsstext=function(t){const e=t.style.cssText;if(!e)return{};const i=e.replace(/\s+/g,"").split(";"),s={};return i.map((t=>{if(t){const e=t.split(":");e.length>1&&(s[e[0]]=e[1])}})),s},xo.preloadImg=(t,e=(()=>{}),i=(()=>{}))=>{if(!t)return;let s=new window.Image;s.complete?e&&e():(s.onload=t=>{s=null,e&&e(t)},s.onerror=t=>{s=null,i&&i(t)}),s.src=t},xo.stopPropagation=t=>{t&&(t.stopPropagation(),t.cancelable&&t.preventDefault())},xo.scrollTop=function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},xo.scrollLeft=function(){return window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0},xo.checkTouchSupport=function(){return"ontouchstart"in window},xo.getBuffered2=(t,e=.5)=>{const i=[];for(let n=0;n<t.length;n++)i.push({start:t.start(n)<.5?0:t.start(n),end:t.end(n)});i.sort((function(t,e){const i=t.start-e.start;return i||e.end-t.end}));let s=[];if(e)for(let n=0;n<i.length;n++){const t=s.length;if(t){const o=s[t-1].end;i[n].start-o<e?i[n].end>o&&(s[t-1].end=i[n].end):s.push(i[n])}else s.push(i[n])}else s=i;return new Eo(s)},xo.getEventPos=function(t,e=1){return{x:t.x/e,y:t.y/e,clientX:t.clientX/e,clientY:t.clientY/e,offsetX:t.offsetX/e,offsetY:t.offsetY/e,pageX:t.pageX/e,pageY:t.pageY/e}},xo.requestAnimationFrame=function(t){const e=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(e)return e(t)},xo.getHostFromUrl=function(t){if(null==t||""===t||"string"!=typeof t)return"";const e=t.split("/");let i="";return e.length>3&&e[2]&&(i=e[2]),i},xo.cancelAnimationFrame=function(t){const e=window.cancelAnimationFrame||window.mozCancelAnimationFrame||window.cancelRequestAnimationFrame;e&&e(t)};const So=/(Android)\s([\d.]+)/,ko=/(Version)\/([\d.]+)/,Po=["avc1.42E01E, mp4a.40.2","avc1.58A01E, mp4a.40.2","avc1.4D401E, mp4a.40.2","avc1.64001E, mp4a.40.2","avc1.42E01E","mp4v.20.8","avc1.42E01E, mp4a.40.2","avc1.58A01E, mp4a.40.2","avc1.4D401E, mp4a.40.2","avc1.64001E, mp4a.40.2","mp4v.20.8, mp4a.40.2","mp4v.20.240, mp4a.40.2"],Lo={get device(){return Lo.os.isPc?"pc":"mobile"},get browser(){if("undefined"==typeof navigator)return"";const t=navigator.userAgent.toLowerCase(),e={ie:/rv:([\d.]+)\) like gecko/,firefox:/firefox\/([\d.]+)/,chrome:/chrome\/([\d.]+)/,opera:/opera.([\d.]+)/,safari:/version\/([\d.]+).*safari/};return[].concat(Object.keys(e).filter((i=>e[i].test(t))))[0]},get os(){if("undefined"==typeof navigator)return{};const t=navigator.userAgent,e=/(?:Windows Phone)/.test(t),i=/(?:SymbianOS)/.test(t)||e,s=/(?:Android)/.test(t),n=/(?:Firefox)/.test(t),o=/(?:iPad|PlayBook)/.test(t)||s&&!/(?:Mobile)/.test(t)||n&&/(?:Tablet)/.test(t),r=/(?:iPhone)/.test(t)&&!o,a=!(r||s||i||o),l=/(?:iPad|PlayBook)/.test(t);return{isTablet:o,isPhone:r,isIpad:l,isIos:r||l,isAndroid:s,isPc:a,isSymbian:i,isWindowsPhone:e,isFireFox:n}},get osVersion(){const t=navigator.userAgent;let e="";e=/(?:iPhone)|(?:iPad|PlayBook)/.test(t)?ko:So;const i=e?e.exec(t):[];if(i&&i.length>=3){const t=i[2].split(".");return t.length>0?parseInt(t[0]):0}return 0},get isWeixin(){if("undefined"==typeof navigator)return!1;return!!/(micromessenger)\/([\d.]+)/.exec(navigator.userAgent.toLocaleLowerCase())||void 0},isSupportMP4(){if(this.supportResult)return this.supportResult;let t=document.createElement("video");const e={isSupport:!1,mime:""};return"function"==typeof t.canPlayType&&Po.map((i=>{"probably"===t.canPlayType(`video/mp4; codecs="${i}"`)&&(e.isSupport=!0,e.mime+=`||${i}`)})),this.supportResult=e,t=null,e}};var Ao="3.0.0-next.30";const Io={1:"network",2:"network",3:"decoder",4:"format"};class Oo{constructor(t,e={errorType:"",errorCode:0,errorMessage:"",originError:"",ext:{},mediaError:null}){const i=t&&t.i18n?t.i18n.ERROR_TYPES:null;if(t.video){const i=e.mediaError?e.mediaError:t.video.error||{},{duration:s,currentTime:n,ended:o,src:r,currentSrc:a}=t,{readyState:l,networkState:h}=t.video,c={playerVersion:Ao,currentTime:n,duration:s,ended:o,readyState:l,networkState:h,src:r||a,errorType:e.errorType,errorCode:e.errorCode||i.code,message:e.errorMessage||i.message,mediaError:i,originError:e.originError?e.originError.stack:"",host:xo.getHostFromUrl(r||a)};return e.ext&&Object.keys(e.ext).map((t=>{c[t]=e.ext[t]})),c}if(arguments.length>1){const t={playerVersion:Ao,domain:document.domain},e=["errorType","currentTime","duration","networkState","readyState","src","currentSrc","ended","errd","errorCode","mediaError"];for(let i=0;i<arguments.length;i++)t[e[i]]=arguments[i];return t.ex=i?(i[arguments[0]]||{}).msg:"",t}}}const Ro="play",Do="playing",Mo="ended",No="pause",Fo="error",Ho="seeking",Uo="seeked",Bo="timeupdate",jo="waiting",$o="canplay",Vo="durationchange",Go="volumechange",Wo="loadeddata",zo="ratechange",Yo="progress",Ko="loadstart",Xo="emptied",qo="focus",Zo="blur",Jo="ready",Qo="urlNull",tr="autoplay_started",er="autoplay_was_prevented",ir="complete",sr="replay",nr="destroy",or="urlchange",rr="download_speed_change",ar="fullscreen_change",lr="cssFullscreen_change",hr="mini_state_change",cr="definition_change",ur="after_definition_change",dr="video_resize",pr="pip_change",gr="rotate",fr="screenShot",mr="playnext",yr="shortcut",vr="xglog",br="user_action",Cr="reset",_r=["play","playing","ended","pause","error","seeking","seeked","timeupdate","waiting","canplay","canplaythrough","durationchange","volumechange","loadeddata","ratechange","progress","loadstart","emptied","stalled","suspend","abort","lowdecode"];var wr=Object.freeze(Object.defineProperty({__proto__:null,PLAY:Ro,PLAYING:Do,ENDED:Mo,PAUSE:No,ERROR:Fo,SEEKING:Ho,SEEKED:Uo,TIME_UPDATE:Bo,WAITING:jo,CANPLAY:$o,CANPLAY_THROUGH:"canplaythrough",DURATION_CHANGE:Vo,VOLUME_CHANGE:Go,LOADED_DATA:Wo,RATE_CHANGE:zo,PROGRESS:Yo,LOAD_START:Ko,EMPTIED:Xo,STALLED:"stalled",SUSPEND:"suspend",ABORT:"abort",BUFFER_CHANGE:"bufferedChange",PLAYER_FOCUS:qo,PLAYER_BLUR:Zo,READY:Jo,URL_NULL:Qo,AUTOPLAY_STARTED:tr,AUTOPLAY_PREVENTED:er,COMPLETE:ir,REPLAY:sr,DESTROY:nr,URL_CHANGE:or,DOWNLOAD_SPEED_CHANGE:rr,FULLSCREEN_CHANGE:ar,CSS_FULLSCREEN_CHANGE:lr,MINI_STATE_CHANGE:hr,DEFINITION_CHANGE:cr,BEFORE_DEFINITION_CHANGE:"before_definition_change",AFTER_DEFINITION_CHANGE:ur,SEI_PARSED:"SEI_PARSED",RETRY:"retry",VIDEO_RESIZE:dr,PIP_CHANGE:pr,ROTATE:gr,SCREEN_SHOT:fr,PLAYNEXT:mr,SHORTCUT:yr,XGLOG:vr,USER_ACTION:br,USER_ACTION1:"user_action1",RESET:Cr,VIDEO_EVENTS:_r,STATS_EVENTS:{STATS_INFO:"stats_info",STATS_DOWNLOAD:"stats_download",STATS_RESET:"stats_reset"}},Symbol.toStringTag,{value:"Module"}));function Tr(t,e){this&&this.emit&&("error"===t?this.errorHandler(t):this.emit(t,e))}function Er(t,e){return i=>{const s={player:e,eventName:t,originalEvent:i,detail:i.detail||{},timeStamp:i.timeStamp,currentTime:e.currentTime,duration:e.duration,paused:e.paused,ended:e.ended,isInternalOp:!!e._internalOp[i.type],muted:e.muted,volume:e.volume,host:xo.getHostFromUrl(e.currentSrc),vtype:e.vtype};if(e.removeInnerOP(i.type),"timeupdate"===t&&(e._currentTime=e.video&&e.video.currentTime),"durationchange"===t&&(e._duration=e.video.duration),"volumechange"===t&&(s.isMutedChange=e._lastMuted!==e.muted,e._lastMuted=e.muted),e.videoEventMiddleware[t])try{e.videoEventMiddleware[t].call(e,s,Tr.bind(e))}catch(n){throw Tr.call(e,t,s),n}else Tr.call(e,t,s)}}class xr extends yo{constructor(t){super(t),this._hasStart=!1,this._currentTime=0,this._duration=0,this._internalOp={},this._lastMuted=!1,this.vtype="MP4",this.videoConfig=Object.assign({},{controls:!1,autoplay:t.autoplay,playsinline:t.playsinline,"x5-playsinline":t.playsinline,"webkit-playsinline":t.playsinline,"x5-video-player-fullscreen":t["x5-video-player-fullscreen"]||t.x5VideoPlayerFullscreen,"x5-video-orientation":t["x5-video-orientation"]||t.x5VideoOrientation,airplay:t.airplay,"webkit-airplay":t.airplay,tabindex:2,mediaType:t.mediaType||"video"},t.videoConfig,t.videoAttributes);const e=t["x5-video-player-type"]||t.x5VideoPlayerType;Lo.isWeixin&&Lo.os.isAndroid&&e&&(this.videoConfig["x5-video-player-type"]=e,delete this.videoConfig.playsinline,delete this.videoConfig["webkit-playsinline"],delete this.videoConfig["x5-playsinline"]),t.loop&&(this.videoConfig.loop="loop"),this.video=xo.createDom(this.videoConfig.mediaType,"",this.videoConfig,""),t.defaultPlaybackRate&&(this.video.defaultPlaybackRate=this.video.playbackRate=t.defaultPlaybackRate),"Number"===xo.typeOf(t.volume)&&(this.volume=t.volume),t.autoplayMuted&&(this.video.muted=!0,this._lastMuted=!0),t.autoplay&&(this.video.autoplay=!0),this._interval={},this.videoEventMiddleware={},this.attachVideoEvents()}setEventsMiddleware(t){Object.keys(t).map((e=>{this.videoEventMiddleware[e]=t[e]}))}removeEventsMiddleware(t){Object.keys(t).map((t=>{delete this.videoEventMiddleware[t]}))}attachVideoEvents(t=this.video){this._evHandlers||(this._evHandlers=_r.map((t=>{const e=`on${t.charAt(0).toUpperCase()}${t.slice(1)}`;return"function"==typeof this[e]&&this.on(t,this[e]),{[t]:Er(t,this)}}))),this._evHandlers.forEach((e=>{const i=Object.keys(e)[0];t.addEventListener(i,e[i],!1)}))}detachVideoEvents(t=this.video){this._evHandlers.forEach((e=>{const i=Object.keys(e)[0];t.removeEventListener(i,e[i],!1)})),this._evHandlers.forEach((t=>{const e=Object.keys(t)[0],i=`on${e.charAt(0).toUpperCase()}${e.slice(1)}`;"function"==typeof this[i]&&this.off(e,this[i])})),this._evHandlers=null}_attachSourceEvents(t,e){t.removeAttribute("src"),e.forEach((t=>{this.video.appendChild(xo.createDom("source","",{src:`${t.src}`,type:`${t.type||""}`}))}));const i=t.children;if(i){this._videoSourceCount=i.length,!this._sourceError&&(this._sourceError=t=>{this._videoSourceCount--,0===this._videoSourceCount&&(this.videoEventMiddleware.error?this.videoEventMiddleware.error.call(this,t,(()=>{this.errorHandler("error")})):this.errorHandler("error",{code:4,message:"sources load error"}))});for(let t=0;t<i.length;t++)i[t].addEventListener("error",this._sourceError)}}_detachSourceEvents(t){const e=t.children;if(e&&0!==e.length&&this._sourceError){for(let t=0;t<e.length;t++)e[t].removeEventListener("error",this._sourceError);for(;e.length>0;)t.removeChild(e[0])}}errorHandler(t,e=null){if(this.video&&(this.video.error||e)){let i=this.video.error||e;const s=i.code?Io[i.code]:"other";let n=i.message;this.video.currentSrc||(n="empty_src",i={code:6,message:n}),this.emit(t,new Oo(this,{errorType:s,errorCode:i.code,errorMessage:i.message||"",mediaError:i}))}}destroy(){this.video&&(this.video.pause&&(this.video.pause(),this.video.muted=!0),this.video.removeAttribute("src"),this.video.load()),this._currentTime=0,this._duration=0,this.videoConfig=null;for(const t in this._interval)clearInterval(this._interval[t]),this._interval[t]=null;this.detachVideoEvents(),this.video=null,this.videoEventMiddleware={},this.removeAllListeners()}play(){return this.video?this.video.play():null}pause(){this.video&&this.video.pause()}canPlayType(t){return!!this.video&&this.video.canPlayType(t)}getBufferedRange(t){const e=[0,0];if(!this.video)return e;t||(t=this.video.buffered);const i=this.video.currentTime;if(t)for(let s=0,n=t.length;s<n&&(e[0]=t.start(s),e[1]=t.end(s),!(e[0]<=i&&i<=e[1]));s++);return e[0]-i<=0&&i-e[1]<=0?e:[0,0]}set autoplay(t){this.video&&(this.video.autoplay=t)}get autoplay(){return!!this.video&&this.video.autoplay}get buffered(){return this.video?this.video.buffered:null}get buffered2(){return this.video?xo.getBuffered2(this.video.buffered):null}get bufferedPoint(){const t={start:0,end:0};if(!this.video)return t;const e=this.video.buffered;if(!e||0===e.length)return t;for(let i=0;i<e.length;i++)if((e.start(i)<=this.currentTime||e.start(i)<.1)&&e.end(i)>=this.currentTime)return{start:e.start(i),end:e.end(i)};return t}get crossOrigin(){return this.video?this.video.crossOrigin:""}set crossOrigin(t){this.video&&(this.video.crossOrigin=t)}get currentSrc(){return this.video?this.video.currentSrc:""}set currentSrc(t){this.video&&(this.video.currentSrc=t)}get currentTime(){return this.video?void 0!==this.video.currentTime?this.video.currentTime:this._currentTime:0}set currentTime(t){this.video&&(this.video.currentTime=t)}get defaultMuted(){return!!this.video&&this.video.defaultMuted}set defaultMuted(t){this.video&&(this.video.defaultMuted=t)}get duration(){return this._duration}get ended(){return!!this.video&&this.video.ended}get error(){return this.video.error}get errorNote(){if(!this.video.error)return"";return["MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED"][this.video.error.code-1]}get loop(){return!!this.video&&this.video.loop}set loop(t){this.video&&(this.video.loop=t)}get muted(){return!!this.video&&this.video.muted}set muted(t){this.video&&this.video.muted!==t&&(this._lastMuted=this.video.muted,this.video.muted=t)}get networkState(){return this.video.networkState}get paused(){return!this.video||this.video.paused}get playbackRate(){return this.video?this.video.playbackRate:0}set playbackRate(t){this.video&&t!==1/0&&(this.video.playbackRate=t)}get played(){return this.video?this.video.played:null}get preload(){return!!this.video&&this.video.preload}set preload(t){this.video&&(this.video.preload=t)}get readyState(){return this.video.readyState}get seekable(){return!!this.video&&this.video.seekable}get seeking(){return!!this.video&&this.video.seeking}get src(){return this.video?this.video.src:""}set src(t){this.video&&(this.emit(or,t),this.emit(jo),this._currentTime=0,this._duration=0,/^blob/.test(this.video.currentSrc)||/^blob/.test(this.video.src)?this.onWaiting():(this._detachSourceEvents(this.video),"Array"===xo.typeOf(t)?this._attachSourceEvents(this.video,t):this.video.src=t,this.load()))}get volume(){return this.video?this.video.volume:0}set volume(t){t!==1/0&&this.video&&(this.video.volume=t)}addInnerOP(t){this._internalOp[t]=!0}removeInnerOP(t){delete this._internalOp[t]}emit(t,e,...i){super.emit(t,e,...i)}on(t,e,...i){super.on(t,e,...i)}once(t,e,...i){super.once(t,e,...i)}off(t,e,...i){super.off(t,e,...i)}offAll(){super.removeAllListeners()}}class Sr{constructor(t={name:"xgplayer",version:1,db:null,ojstore:{name:"xg-m4a",keypath:"vid"}}){this.indexedDB=window.indexedDB||window.webkitindexedDB,this.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange,this.myDB=t}openDB(t){const e=this,i=this.myDB.version||1,s=e.indexedDB.open(e.myDB.name,i);s.onerror=function(t){},s.onsuccess=i=>{this.myDB.db=i.target.result,t.call(e)},s.onupgradeneeded=t=>{const i=t.target.result;t.target.transaction,i.objectStoreNames.contains(e.myDB.ojstore.name)||i.createObjectStore(e.myDB.ojstore.name,{keyPath:e.myDB.ojstore.keypath})}}deletedb(){this.indexedDB.deleteDatabase(this.myDB.name)}closeDB(){this.myDB.db.close()}addData(t,e){const i=this.myDB.db.transaction(t,"readwrite").objectStore(t);let s;for(let n=0;n<e.length;n++)s=i.add(e[n]),s.onerror=function(){},s.onsuccess=function(){}}putData(t,e){const i=this.myDB.db.transaction(t,"readwrite").objectStore(t);let s;for(let n=0;n<e.length;n++)s=i.put(e[n]),s.onerror=function(){},s.onsuccess=function(){}}getDataByKey(t,e,i){const s=this,n=this.myDB.db.transaction(t,"readwrite").objectStore(t).get(e);n.onerror=function(){i.call(s,null)},n.onsuccess=function(t){const e=t.target.result;i.call(s,e)}}deleteData(t,e){this.myDB.db.transaction(t,"readwrite").objectStore(t).delete(e)}clearData(t){this.myDB.db.transaction(t,"readwrite").objectStore(t).clear()}}const kr=["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","MSFullscreenChange"],Pr=["requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen"],Lr=["exitFullscreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen"];function Ar(t,e,i,...s){const n=e.call(t,...s);i&&"function"==typeof i&&(n&&n.then?n.then(((...e)=>{i.call(t,...e)})):i.call(t,...s))}function Ir(t,e,i={pre:null,next:null}){return this.__hooks||(this.__hooks={}),!this.__hooks[t]&&(this.__hooks[t]=null),function(){if(i.pre)try{i.pre.call(this,...arguments)}catch(s){throw s.message=`[pluginName: ${this.pluginName}:${t}:pre error] >> ${s.message}`,s}if(this.__hooks&&this.__hooks[t])try{const s=this.__hooks[t].call(this,this,...arguments);s?s.then?s.then((t=>{!1!==t&&Ar(this,e,i.next,...arguments)})).catch((t=>{throw t})):Ar(this,e,i.next,...arguments):void 0===s&&Ar(this,e,i.next,...arguments)}catch(s){throw s.message=`[pluginName: ${this.pluginName}:${t}] >> ${s.message}`,s}else Ar(this,e,i.next,...arguments)}.bind(this)}function Or(t,e){const{__hooks:i}=this;if(i)return i.hasOwnProperty(t)?(i&&(i[t]=e),!0):(console.warn(`has no supported hook which name [${t}]`),!1)}function Rr(t,e){const{__hooks:i}=this;i&&delete i[t]}function Dr(t,...e){if(!this.plugins||!this.plugins[t.toLowerCase()])return;const i=this.plugins[t.toLowerCase()];return i.useHooks&&i.useHooks(...e)}function Mr(t,...e){if(!this.plugins||!this.plugins[t.toLowerCase()])return;const i=this.plugins[t.toLowerCase()];return i?i.removeHooks&&i.removeHooks(...e):void 0}function Nr(t,e=[]){t.__hooks={},e&&e.map((e=>{t.__hooks[e]=null})),Object.defineProperty(t,"hooks",{get:()=>t.__hooks&&Object.keys(t.__hooks).map((e=>{if(t.__hooks[e])return e}))})}function Fr(t){t.__hooks=null}function Hr(t,e,i,...s){if(!t.__hooks||!t.__hooks[e])return i.call(t,t,...s);{const n=t.__hooks[e].call(t,t,...s);if(n&&n.then)n.then((e=>!1===e?null:i.call(t,t,...s))).catch((t=>{console.warn(`[runHooks]${e} reject`,t.message)}));else if(!1!==n)return i.call(t,t,...s)}}function Ur(t,e){To.logError(`[${t}] event or callback cant be undefined or null when call ${e}`)}class Br{static defineGetterOrSetter(t,e){for(const i in e)Object.defineProperty(t,i,e[i])}static get defaultConfig(){return{}}static get pluginName(){return"pluginName"}constructor(t){xo.checkIsFunction(this.beforeCreate)&&this.beforeCreate(t),Nr(this),this.__args=t,this.__events={},this.config=t.config||{},this.player=null,this.playerConfig={},this.pluginName="",this.__init(t)}beforeCreate(t){}afterCreate(){}beforePlayerInit(){}onPluginsReady(){}afterPlayerInit(){}destroy(){}__init(t){this.player=t.player,this.playerConfig=t.player&&t.player.config,this.pluginName=t.pluginName?t.pluginName.toLowerCase():this.constructor.pluginName.toLowerCase(),this.logger=t.player&&t.player.logger}updateLang(t){t||(t=this.lang)}get lang(){return this.player.lang}get i18n(){return this.player.i18n}get i18nKeys(){return this.player.i18nKeys}get domEventType(){let t=xo.checkTouchSupport()?"touch":"mouse";return!this.playerConfig||"touch"!==this.playerConfig.domEventType&&"mouse"!==this.playerConfig.domEventType||(t=this.playerConfig.domEventType),t}on(t,e){t&&e&&this.player?"string"==typeof t?(this.__events[t]=e,this.player.on(t,e)):Array.isArray(t)&&t.forEach((t=>{this.__events[t]=e,this.player.on(t,e)})):Ur(this.pluginName,"plugin.on(event, callback)")}once(t,e){t&&e&&this.player?this.player.once(t,e):Ur(this.pluginName,"plugin.once(event, callback)")}off(t,e){t&&e&&this.player?"string"==typeof t?(delete this.__events[t],this.player.off(t,e)):Array.isArray(t)&&t.forEach((i=>{delete this.__events[t],this.player.off(i,e)})):Ur(this.pluginName,"plugin.off(event, callback)")}offAll(){Object.keys(this.__events).map((t=>{this.__events[t]&&this.off(t,this.__events[t]),t&&delete this.__events[t]})),this.__events={}}emit(t,...e){this.player&&this.player.emit(t,...e)}emitUserAction(t,e,i={}){if(!this.player)return;const s={...i,pluginName:this.pluginName};this.player.emitUserAction(t,e,s)}hook(t,e,i={pre:null,next:null}){return Ir.call(this,...arguments)}useHooks(t,e,...i){return Or.call(this,...arguments)}removeHooks(t,e,...i){return Rr.call(this,...arguments)}registerPlugin(t,e={},i=""){if(this.player)return i&&(e.pluginName=i),this.player.registerPlugin({plugin:t,options:e})}getPlugin(t){return this.player?this.player.getPlugin(t):null}__destroy(){const t=this.player,e=this.pluginName;this.offAll(),xo.clearAllTimers(this),xo.checkIsFunction(this.destroy)&&this.destroy(),["player","playerConfig","pluginName","logger","__args","__hooks"].map((t=>{this[t]=null})),t.unRegisterPlugin(e),Fr(this)}}if("undefined"!=typeof Element&&!Element.prototype.matches){var jr=Element.prototype;jr.matches=jr.matchesSelector||jr.mozMatchesSelector||jr.msMatchesSelector||jr.oMatchesSelector||jr.webkitMatchesSelector}var $r=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeof t.matches&&t.matches(e))return t;t=t.parentNode}};function Vr(t,e,i,s,n){var o=Gr.apply(this,arguments);return t.addEventListener(i,o,n),{destroy:function(){t.removeEventListener(i,o,n)}}}function Gr(t,e,i,s){return function(i){i.delegateTarget=$r(i.target,e),i.delegateTarget&&s.call(t,i)}}var Wr=function(t,e,i,s,n){return"function"==typeof t.addEventListener?Vr.apply(null,arguments):"function"==typeof i?Vr.bind(null,document).apply(null,arguments):("string"==typeof t&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,(function(t){return Vr(t,e,i,s,n)})))};const zr={CONTROLS:"controls",ROOT:"root"},Yr={ROOT:"root",ROOT_LEFT:"rootLeft",ROOT_RIGHT:"rootRight",ROOT_TOP:"rootTop",CONTROLS_LEFT:"controlsLeft",CONTROLS_RIGTH:"controlsRight",CONTROLS_RIGHT:"controlsRight",CONTROLS_CENTER:"controlsCenter",CONTROLS:"controls"};function Kr(t){return!!t&&(t.indexOf&&/^(?:http|data:|\/)/.test(t))}function Xr(t,e,i="",s={},n=""){let o=null;if(t instanceof window.Element)return xo.addClass(t,i),Object.keys(s).map((e=>{t.setAttribute(e,s[e])})),t;if(Kr(t)||Kr(t.url))return s.src=Kr(t)?t:t.url||"",o=xo.createDom(t.tag||"img","",s,`xg-img ${i}`),o;if("function"==typeof t)try{return o=t(),o instanceof window.Element?(xo.addClass(o,i),Object.keys(s).map((t=>{o.setAttribute(t,s[t])})),o):(To.logWarn(`warn>>icons.${e} in config of plugin named [${n}] is a function mast return an Element Object`),null)}catch(r){return To.logError(`Plugin named [${n}]:createIcon`,r),null}return"string"==typeof t?xo.createDomFromHtml(t,s,i):(To.logWarn(`warn>>icons.${e} in config of plugin named [${n}] is invalid`),null)}function qr(t,e){const i=e.config.icons||e.playerConfig.icons;Object.keys(t).map((s=>{const n=t[s];let o=n&&n.class?n.class:"",r=n&&n.attr?n.attr:{},a=null;i&&i[s]&&(o=function(t,e){return"object"==typeof t&&t.class&&"string"==typeof t.class?`${e} ${t.class}`:e}(i[s],o),r=function(t,e){return"object"==typeof t&&t.attr&&"object"==typeof t.attr&&Object.keys(t.attr).map((i=>{e[i]=t.attr[i]})),e}(i[s],r),a=Xr(i[s],s,o,r,e.pluginName)),!a&&n&&(a=Xr(n.icon?n.icon:n,r,o,{},e.pluginName)),e.icons[s]=a}))}class Zr extends Br{static insert(t,e,i=0){const s=e.children.length,n=Number(i),o=t instanceof window.Node;if(s){let i=0,r=null,a="";for(;i<s;i++){r=e.children[i];const t=Number(r.getAttribute("data-index"));if(t>=n){a="beforebegin";break}t<n&&(a="afterend")}return o?"afterend"===a?e.appendChild(t):e.insertBefore(t,r):r.insertAdjacentHTML(a,t),"afterend"===a?e.children[e.children.length-1]:e.children[i]}return o?e.appendChild(t):e.insertAdjacentHTML("beforeend",t),e.children[e.children.length-1]}static get defaultConfig(){return{}}static delegate(t,e,i,s,n=!1){const o=[];if(t instanceof window.Node&&"function"==typeof s)if(Array.isArray(i))i.forEach((i=>{const r=Wr(t,e,i,s,n);r.key=`${e}_${i}`,o.push(r)}));else{const r=Wr(t,e,i,s,n);r.key=`${e}_${i}`,o.push(r)}return o}static get ROOT_TYPES(){return zr}static get POSITIONS(){return Yr}constructor(t={}){super(t),this.__delegates=[]}__init(t){if(super.__init(t),!t.root)return;const e=t.root;let i=null;this.icons={},this.root=null,this.parent=null;qr(this.registerIcons()||{},this),this.langText={};const s=this.registerLanguageTexts()||{};var n,o;n=s,o=this,Object.keys(n).map((t=>{Object.defineProperty(o.langText,t,{get:()=>{const{lang:e,i18n:i}=o;return i[t]?i[t]:n[t]&&n[t][e]||""}})}));let r="";try{r=this.render()}catch(h){throw To.logError(`Plugin:${this.pluginName}:render`,h),new Error(`Plugin:${this.pluginName}:render:${h.message}`)}if(r)i=Zr.insert(r,e,t.index),i.setAttribute("data-index",t.index);else{if(!t.tag)return;i=xo.createDom(t.tag,"",t.attr,t.name),i.setAttribute("data-index",t.index),e.appendChild(i)}this.root=i,this.parent=e;const a=this.config.attr||{},l=this.config.style||{};this.setAttr(a),this.setStyle(l),this.config.index&&this.root.setAttribute("data-index",this.config.index),this.__registerChildren()}__registerChildren(){if(!this.root)return;this._children=[];const t=this.children();t&&"object"==typeof t&&Object.keys(t).length>0&&Object.keys(t).map((e=>{const i=e,s=t[i],n={root:this.root};let o,r;"function"==typeof s?(o=this.config[i]||{},r=s):"object"==typeof s&&"function"==typeof s.plugin&&(o=s.options?xo.deepCopy(this.config[i]||{},s.options):this.config[i]||{},r=s.plugin),n.config=o,void 0!==o.index&&(n.index=o.index),o.root&&(n.root=o.root),this.registerPlugin(r,n,i)}))}updateLang(t){t||(t=this.lang);const{root:e,i18n:i,langText:s}=this;e&&function t(e,i){for(let s=0;s<e.children.length;s++)e.children[s].children.length>0?t(e.children[s],i):i(e.children[s])}(e,(e=>{const n=e.getAttribute&&e.getAttribute("lang-key");if(!n)return;const o=i[n.toUpperCase()]||s[n];o&&(e.innerHTML="function"==typeof o?o(t):o)}))}get lang(){return this.player.lang}changeLangTextKey(t,e=""){const i=this.i18n||{},s=this.langText;t.setAttribute&&t.setAttribute("lang-key",e);const n=i[e]||s[e]||"";n&&(t.innerHTML=n)}plugins(){return this._children}children(){return{}}registerPlugin(t,e={},i=""){e.root=e.root||this.root;const s=super.registerPlugin(t,e,i);return this._children.push(s),s}registerIcons(){return{}}registerLanguageTexts(){return{}}find(t){if(this.root)return this.root.querySelector(t)}bind(t,e,i){if(arguments.length<3&&"function"==typeof e)Array.isArray(t)?t.forEach((t=>{this.bindEL(t,e)})):this.bindEL(t,e);else{const s=Zr.delegate.call(this,this.root,t,e,i);this.__delegates=this.__delegates.concat(s)}}unbind(t,e){if(arguments.length<3&&"function"==typeof e)Array.isArray(t)?t.forEach((t=>{this.unbindEL(t,e)})):this.unbindEL(t,e);else{const i=`${t}_${e}`;for(let t=0;t<this.__delegates.length;t++)if(this.__delegates[t].key===i){this.__delegates[t].destroy(),this.__delegates.splice(t,1);break}}}setStyle(t,e){if(this.root)return"String"===xo.typeOf(t)?this.root.style[t]=e:void("Object"===xo.typeOf(t)&&Object.keys(t).map((e=>{this.root.style[e]=t[e]})))}setAttr(t,e){if(this.root)return"String"===xo.typeOf(t)?this.root.setAttribute(t,e):void("Object"===xo.typeOf(t)&&Object.keys(t).map((e=>{this.root.setAttribute(e,t[e])})))}setHtml(t,e){this.root&&(this.root.innerHTML=t,"function"==typeof e&&e())}bindEL(t,e,i=!1){this.root&&`on${t}`in this.root&&"function"==typeof e&&this.root.addEventListener(t,e,i)}unbindEL(t,e,i=!1){this.root&&`on${t}`in this.root&&"function"==typeof e&&this.root.removeEventListener(t,e,i)}show(t){if(!this.root)return;this.root.style.display=void 0!==t?t:"block";return"none"===window.getComputedStyle(this.root,null).getPropertyValue("display")?this.root.style.display="block":void 0}hide(){this.root&&(this.root.style.display="none")}appendChild(t,e){if(!this.root)return null;if(arguments.length<2&&arguments[0]instanceof window.Element)return this.root.appendChild(arguments[0]);if(!(e&&e instanceof window.Element))return null;try{return"string"==typeof t?this.find(t).appendChild(e):t.appendChild(e)}catch(i){return To.logError("Plugin:appendChild",i),null}}render(){return""}destroy(){}__destroy(){const{player:t}=this;this.__delegates.map((t=>{t.destroy()})),this.__delegates=[],this._children instanceof Array&&(this._children.map((e=>{t.unRegisterPlugin(e.pluginName)})),this._children=null),this.root&&(this.root.hasOwnProperty("remove")?this.root.remove():this.root.parentNode&&this.root.parentNode.removeChild(this.root)),super.__destroy(),this.icons={},["root","parent"].map((t=>{this[t]=null}))}}class Jr{constructor(){if(this.__handlers=[],this.timeStamp=0,this.observer=null,window.ResizeObserver)try{this.observer=new window.ResizeObserver((t=>{const e=(new Date).getTime();e-this.timeStamp<100||(this.timeStamp=e,this.__trigger(t))})),this.timeStamp=(new Date).getTime()}catch(t){console.error(t)}}addObserver(t,e){if(!this.observer)return;this.observer&&this.observer.observe(t);const{__handlers:i}=this;let s=-1;for(let n=0;n<i.length;n++)i[n]&&t===i[n].target&&(s=n);s>-1?this.__handlers[s].handler=e:this.__handlers.push({target:t,handler:e})}unObserver(t){let e=-1;this.__handlers.map(((i,s)=>{t===i.target&&(e=s)}));try{this.observer&&this.observer.unobserve(t)}catch(i){}this.observer&&this.observer.unobserve(t),e>-1&&this.__handlers.splice(e,1)}destroyObserver(){this.observer&&this.observer.disconnect(),this.observer=null,this.__handlers=null}__runHandler(t){const{__handlers:e}=this;for(let s=0;s<e.length;s++)if(e[s]&&t===e[s].target){try{e[s].handler(t)}catch(i){console.error(i)}return!0}return!1}__trigger(t){for(let e=0;e<t.length;e++){if(this.__runHandler(t[e].target))break}}}let Qr=null;const ta={init(t){let e=t._pluginInfoId;var i,s;e||(e=(new Date).getTime(),t._pluginInfoId=e),this.pluginGroup||(this.pluginGroup={}),!t.config.closeResizeObserver&&(i=t.root,s=()=>{t.resize()},Qr||(Qr=new Jr),Qr.addObserver(i,s)),0===Object.keys(this.pluginGroup).length&&(t.isUserActive=!0),this.pluginGroup[e]={_player:t,_originalOptions:t.config||{}}},checkPlayerRoot(t){if(this.pluginGroup){const e=Object.keys(this.pluginGroup);for(let i=0;i<e.length;i++){const s=this.pluginGroup[e[i]]._player;if(s.root===t)return s}return null}return null},lazyRegister(t,e){const i=e.timeout||1500;return Promise.race([e.loader().then((e=>{let i;i=e&&e.__esModule?e.default:e,this.register(t,i,e.options)})),new Promise(((t,e)=>{setTimeout((()=>{e(new Error("timeout"))}),i)}))])},register(t,e,i={}){if(!t||!e||"function"!=typeof e||void 0===e.prototype)return;let s=t._pluginInfoId;s&&this.pluginGroup&&this.pluginGroup[s]||(this.init(t),s=t._pluginInfoId),this.pluginGroup[s]._plugins||(this.pluginGroup[s]._plugins={});const n=this.pluginGroup[s]._plugins,o=this.pluginGroup[s]._originalOptions;i.player=this.pluginGroup[s]._player;const r=i.pluginName||e.pluginName;if(!r)throw new Error("The property pluginName is necessary");if(e.isSupported&&!e.isSupported())return void console.warn(`not supported plugin [${r}]`);i.config||(i.config={});const a=Object.keys(o);for(let h=0;h<a.length;h++)if(r.toLowerCase()===a[h].toLowerCase()){const t=o[a[h]];"Object"===xo.typeOf(t)?i.config=Object.assign({},i.config,o[a[h]]):"Boolean"===xo.typeOf(t)&&(i.config.disable=!t);break}e.defaultConfig&&Object.keys(e.defaultConfig).map((t=>{void 0===i.config[t]&&(i.config[t]=e.defaultConfig[t])})),i.root?"string"==typeof i.root&&(i.root=t[i.root]):i.root=t.root,i.index=i.config.index||0;try{n[r.toLowerCase()]&&(this.unRegister(s,r.toLowerCase()),console.warn(`the is one plugin with same pluginName [${r}] exist, destroy the old instance`));const t=new e(i);return n[r.toLowerCase()]=t,n[r.toLowerCase()].func=e,t&&"function"==typeof t.afterCreate&&t.afterCreate(),t}catch(l){throw console.error(l),l}},unRegister(t,e){t._pluginInfoId&&(t=t._pluginInfoId),e=e.toLowerCase();try{const i=this.pluginGroup[t]._plugins[e];i&&(i.pluginName&&i.__destroy(),delete this.pluginGroup[t]._plugins[e])}catch(i){console.error(`[unRegister:${e}] cgid:[${t}] error`,i)}},deletePlugin(t,e){const i=t._pluginInfoId;if(i&&this.pluginGroup&&this.pluginGroup[i]&&this.pluginGroup[i]._plugins){delete this.pluginGroup[i]._plugins[e]}},getPlugins(t){const e=t._pluginInfoId;return e&&this.pluginGroup[e]?this.pluginGroup[e]._plugins:{}},findPlugin(t,e){const i=t._pluginInfoId;if(!this.pluginGroup||!i)return null;const s=e.toLowerCase();return this.pluginGroup[i]._plugins[s]},beforeInit(t){function e(t){return t&&t.then?t:new Promise((t=>{t()}))}return new Promise((i=>{if(!this.pluginGroup)return;let s;return s=t._loadingPlugins&&t._loadingPlugins.length?Promise.all(t._loadingPlugins):Promise.resolve(),s.then((()=>{const s=t._pluginInfoId;if(!this.pluginGroup[s])return void i();const n=this.pluginGroup[s]._plugins,o=[];for(const t of Object.keys(n))if(n[t]&&n[t].beforePlayerInit)try{const i=n[t].beforePlayerInit();o.push(e(i))}catch(r){throw o.push(e(null)),r}Promise.all([...o]).then((()=>{i()})).catch((t=>{console.error(t),i()}))}))}))},afterInit(t){const e=t._pluginInfoId;if(!this.pluginGroup||!e)return;const i=this.pluginGroup[e]._plugins;for(const s of Object.keys(i))i[s]&&i[s].afterPlayerInit&&i[s].afterPlayerInit()},setLang(t,e){const i=e._pluginInfoId;if(!this.pluginGroup||!i)return;const s=this.pluginGroup[i]._plugins;Object.keys(s).map((e=>{if(s[e].updateLang)s[e].updateLang(t);else try{s[e].lang=t}catch(i){console.warn(`${e} setLang`)}}))},reRender(t){const e=t._pluginInfoId;if(!e)return;const i={},s=this.pluginGroup[e]._plugins;for(const n of Object.keys(s))i[n]={plugin:s[n].func,options:s[n]._args},this.unRegister(e,n);for(const n of Object.keys(i))this.register(e,n,i[n].plugin,i[n].options)},onPluginsReady(t){const e=t._pluginInfoId,i=this.pluginGroup[e]._plugins;e&&i&&Object.keys(i).map((t=>{i[t].onPluginsReady&&"function"==typeof i[t].onPluginsReady&&i[t].onPluginsReady()}))},setCurrentUserActive(t,e){if(!this.pluginGroup||!this.pluginGroup[t])return;if(!e)return this.pluginGroup[t]._player.isUserActive=e,t;const i=Object.keys(this.pluginGroup);for(let s=0;s<i.length;s++){const t=this.pluginGroup[i[s]];t&&t._player&&(this.pluginGroup[i[s]]._player.isUserActive=!1)}return this.pluginGroup[t]._player.isUserActive=e,t},getCurrentUseActiveId(){if(!this.pluginGroup)return;const t=Object.keys(this.pluginGroup);for(let e=0;e<t.length;e++){const i=this.pluginGroup[t[e]];if(i&&i._player&&i._player.isUserActive)return t[e]}return null},destroy(t){const e=t._pluginInfoId;if(!this.pluginGroup[e])return;var i,s;i=t.root,Qr.unObserver(i,s);const n=this.pluginGroup[e]._plugins;for(const r of Object.keys(n))this.unRegister(e,r);const o=t.isUseActive;if(delete this.pluginGroup[e],delete t._pluginInfoId,o){const t=Object.keys(this.pluginGroup);t.length>0&&this.setCurrentUserActive(t[t.length-1],!0)}}};var ea={DEFAULT:"xgplayer",DEFAULT_SKIN:"xgplayer-skin-default",ENTER:"xgplayer-is-enter",PAUSED:"xgplayer-pause",PLAYING:"xgplayer-playing",ENDED:"xgplayer-ended",CANPLAY:"xgplayer-canplay",LOADING:"xgplayer-isloading",ERROR:"xgplayer-is-error",REPLAY:"xgplayer-replay",NO_START:"xgplayer-nostart",ACTIVE:"xgplayer-active",INACTIVE:"xgplayer-inactive",FULLSCREEN:"xgplayer-is-fullscreen",CSS_FULLSCREEN:"xgplayer-is-cssfullscreen",ROTATE_FULLSCREEN:"xgplayer-rotate-fullscreen",PARENT_ROTATE_FULLSCREEN:"xgplayer-rotate-parent",PARENT_FULLSCREEN:"xgplayer-fullscreen-parent",INNER_FULLSCREEN:"xgplayer-fullscreen-inner",NO_CONTROLS:"no-controls",FLEX_CONTROLS:"flex-controls",CONTROLS_FOLLOW:"controls-follow",CONTROLS_AUTOHIDE:"controls-autohide",TOP_BAR_AUTOHIDE:"top-bar-autohide",NOT_ALLOW_AUTOPLAY:"not-allow-autoplay",SEEKING:"seeking",PC:"xgplayer-pc",MOBILE:"xgplayer-mobile",MINI:"xgplayer-mini"};function ia(){let t=(document.documentElement.getAttribute("lang")||navigator.language||"zh-cn").toLocaleLowerCase();return"zh-cn"===t&&(t="zh"),t}function sa(){return{id:"",el:null,url:"",domEventType:"default",nullUrlStart:!1,width:600,height:337.5,fluid:!1,fitVideoSize:"fixed",videoFillMode:"auto",volume:.6,autoplay:!1,autoplayMuted:!1,loop:!1,isLive:!1,zoom:1,videoInit:!0,poster:"",isMobileSimulateMode:!1,defaultPlaybackRate:1,execBeforePluginsCall:null,allowSeekAfterEnded:!0,enableContextmenu:!1,closeVideoClick:!1,closeVideoDblclick:!1,closePlayerBlur:!1,closeDelayBlur:!1,leavePlayerTime:3e3,closePlayVideoFocus:!1,closePauseVideoFocus:!1,closeFocusVideoFocus:!0,closeControlsBlur:!0,topBarAutoHide:!0,videoAttributes:{},startTime:0,seekedStatus:"play",miniprogress:!1,disableSwipeHandler:()=>{},enableSwipeHandler:()=>{},ignores:[],whitelist:[],inactive:3e3,lang:ia(),controls:!0,marginControls:!1,fullscreenTarget:null,controlsList:[],screenShot:!1,rotate:!1,pip:!1,download:!1,mini:!1,cssFullscreen:!0,keyShortcut:!0,presets:[],plugins:[],playbackRate:1,definition:{list:[]},playsinline:!0,customDuration:0,timeOffset:0,icons:{},i18n:[],thumbnail:null,commonStyle:{progressColor:"",playedColor:"",cachedColor:"",sliderBtnStyle:{},volumeColor:""}}}const na=1,oa=2,ra=3,aa=4,la=5,ha=6,ca=7,ua=["ERROR","INITIAL","READY","ATTACHING","ATTACHED","NOTALLOW","RUNNING","ENDED","DESTROYED"];class da extends Zr{constructor(...e){super(...e),t(this,"onMouseEnter",(t=>{const{player:e,playerConfig:i}=this;i.closeControlsBlur&&e.focus({autoHide:!1})})),t(this,"onMouseLeave",(()=>{const{player:t}=this;t.focus()}))}static get pluginName(){return"controls"}static get defaultConfig(){return{disable:!1,autoHide:!0,mode:"",initShow:!1}}beforeCreate(t){t.config.mode||"mobile"!==Lo.device||(t.config.mode="flex"),t.player.config.marginControls&&(t.config.autoHide=!1)}afterCreate(){const{disable:t,height:e,mode:i}=this.config;if(t)return;"flex"===i&&this.player.addClass(ea.FLEX_CONTROLS);const s={height:`${e}px`};Object.keys(s).map((t=>{this.root.style[t]=s[t]})),this.left=this.find("xg-left-grid"),this.center=this.find("xg-center-grid"),this.right=this.find("xg-right-grid"),this.innerRoot=this.find("xg-inner-controls"),this.on(hr,(t=>{t?xo.addClass(this.root,"mini-controls"):xo.removeClass(this.root,"mini-controls")}));const{isMobileSimulateMode:n}=this.playerConfig;"mobile"!==Lo.device&&"mobile"!==n&&(this.bind("mouseenter",this.onMouseEnter),this.bind("mouseleave",this.onMouseLeave))}focus(){this.player.focus({autoHide:!1})}focusAwhile(){this.player.focus({autoHide:!0})}blur(){this.player.blur({ignorePaused:!0})}recoverAutoHide(){this.config.autoHide&&xo.addClass(this.root,ea.CONTROLS_AUTOHIDE)}pauseAutoHide(){xo.removeClass(this.root,ea.CONTROLS_AUTOHIDE)}show(){xo.addClass(this.root,"show")}hide(){xo.removeClass(this.root,"show")}get mode(){return this.config.mode}registerPlugin(t,e={},i){if(!this.root)return;const s=t.defaultConfig||{};if(!e.root){switch(e.position?e.position:e.config&&e.config.position?e.config.position:s.position){case Yr.CONTROLS_LEFT:e.root=this.left;break;case Yr.CONTROLS_RIGHT:e.root=this.right;break;case Yr.CONTROLS_CENTER:e.root=this.center;break;case Yr.CONTROLS:e.root=this.root;break;default:e.root=this.left}return super.registerPlugin(t,e,i)}}destroy(){"mobile"!==Lo.device&&(this.unbind("mouseenter",this.onMouseEnter),this.unbind("mouseleave",this.onMouseLeave))}render(){const{mode:t,autoHide:e,initShow:i,disable:s}=this.config;if(s)return;return`<xg-controls class="${xo.classNames({"xgplayer-controls":!0},{"flex-controls":"flex"===t},{"bottom-controls":"bottom"===t},{[ea.CONTROLS_AUTOHIDE]:e},{"xgplayer-controls-initshow":i||!e})}" unselectable="on" onselectstart="return false">\n <xg-inner-controls class="xg-inner-controls xg-pos">\n <xg-left-grid class="xg-left-grid">\n </xg-left-grid>\n <xg-center-grid class="xg-center-grid"></xg-center-grid>\n <xg-right-grid class="xg-right-grid">\n </xg-right-grid>\n </xg-inner-controls>\n </xg-controls>`}}const pa={},ga={},fa=[],ma={};function ya(){Object.keys(pa.en).map((t=>{ga[t]=t}))}function va(t){let e=[];e="Array"!==xo.typeOf(t)?Object.keys(t).map((e=>({LANG:"zh"===e?"zh-cn":e,TEXT:t[e]}))):t,e.map((t=>{pa[t.LANG]?xo.deepMerge(pa[t.LANG]||{},t.TEXT||{}):ma[t.LANG]=t.TEXT})),ya()}function ba(t){const e=t.LANG,i=t.TEXT||{};pa[e]||fa.push(e),pa[e]?xo.deepMerge(i,pa[e]):pa[e]=i,ma[e]&&(va([{LANG:e,TEXT:ma[e]}]),delete ma[e]),"zh-cn"===e&&(pa.zh=pa["zh-cn"]),ya()}ba({LANG:"en",TEXT:{ERROR_TYPES:{network:{code:1,msg:"video download error"},mse:{code:2,msg:"stream append error"},parse:{code:3,msg:"parsing error"},format:{code:4,msg:"wrong format"},decoder:{code:5,msg:"decoding error"},runtime:{code:6,msg:"grammatical errors"},timeout:{code:7,msg:"play timeout"},other:{code:8,msg:"other errors"}},HAVE_NOTHING:"There is no information on whether audio/video is ready",HAVE_METADATA:"Audio/video metadata is ready ",HAVE_CURRENT_DATA:"Data about the current play location is available, but there is not enough data to play the next frame/millisecond",HAVE_FUTURE_DATA:"Current and at least one frame of data is available",HAVE_ENOUGH_DATA:"The available data is sufficient to start playing",NETWORK_EMPTY:"Audio/video has not been initialized",NETWORK_IDLE:"Audio/video is active and has been selected for resources, but no network is used",NETWORK_LOADING:"The browser is downloading the data",NETWORK_NO_SOURCE:"No audio/video source was found",MEDIA_ERR_ABORTED:"The fetch process is aborted by the user",MEDIA_ERR_NETWORK:"An error occurred while downloading",MEDIA_ERR_DECODE:"An error occurred while decoding",MEDIA_ERR_SRC_NOT_SUPPORTED:"Audio/video is not supported",REPLAY:"Replay",ERROR:"Network is offline",PLAY_TIPS:"Play",PAUSE_TIPS:"Pause",PLAYNEXT_TIPS:"Play next",DOWNLOAD_TIPS:"Download",ROTATE_TIPS:"Rotate",RELOAD_TIPS:"Reload",FULLSCREEN_TIPS:"Fullscreen",EXITFULLSCREEN_TIPS:"Exit fullscreen",CSSFULLSCREEN_TIPS:"Cssfullscreen",EXITCSSFULLSCREEN_TIPS:"Exit cssfullscreen",TEXTTRACK:"Caption",PIP:"PIP",SCREENSHOT:"Screenshot",LIVE:"LIVE",OFF:"Off",OPEN:"Open",MINI_DRAG:"Click and hold to drag",MINISCREEN:"Miniscreen",REFRESH_TIPS:"Please Try",REFRESH:"Refresh",FORWARD:"forward",LIVE_TIP:"Live"}});const Ca={get textKeys(){return ga},get langKeys(){return fa},get lang(){const t={};return fa.map((e=>{t[e]=pa[e]})),t.zh=pa["zh-cn"],t},extend:va,use:ba},_a=["play","pause","replay","retry"];class wa extends xr{static set debugger(t){To.config.debug=t}static get debugger(){return To.config.debug}static getCurrentUserActivePlayerId(){return ta.getCurrentUseActiveId()}static setCurrentUserActive(t,e){ta.setCurrentUserActive(t,e)}constructor(t){const e=xo.deepMerge(sa(),t);var i;super(e),Nr(this,_a),this.config=e,(i=this).logInfo=To.logInfo.bind(i),i.logWarn=To.logWarn.bind(i),i.logError=To.logError.bind(i);const s=this.constructor.defaultPreset;if(this.config.presets.length){const t=this.config.presets.indexOf("default");t>=0&&s&&(this.config.presets[t]=s)}else s&&this.config.presets.push(s);this.userTimer=null,this.waitTimer=null,this._state=na,this._isError=!1,this._hasStart=!1,this.isSeeking=!1,this.isCanplay=!1,this._runPending=!1,this.rotateDeg=0,this.isActive=!1,this.fullscreen=!1,this.cssfullscreen=!1,this.isRotateFullscreen=!1,this._fullscreenEl=null,this._cssfullscreenEl=null,this.curDefinition=null,this._orgCss="",this._fullScreenOffset=null,this._videoHeight=0,this._videoWidth=0,this._accPlayed={t:0,acc:0,loopAcc:0},this.innerContainer=null,this.controls=null,this.topBar=null,this.root=null,Lo.os.isAndroid&&Lo.osVersion>0&&Lo.osVersion<6&&(this.config.autoplay=!1),this.database=new Sr,this.isUserActive=!1;if(!this._initDOM())return void console.error(new Error(`can't find the dom which id is ${this.config.id} or this.config.el does not exist`));const{definition:n={},url:o}=this.config;if(!o&&n.list&&n.list.length>0){let t=n.list.find((t=>t.definition&&t.definition===n.defaultDefinition));t||(n.defaultDefinition=n.list[0].definition,t=n.list[0]),this.config.url=t.url,this.curDefinition=t.definition}this._bindEvents(),this._registerPresets(),this._registerPlugins(),ta.onPluginsReady(this),this.getInitDefinition(),this.setState(oa),this.emit(Jo),this.onReady&&this.onReady(),(this.config.videoInit||this.config.autoplay)&&(!this.hasStart||this.state<aa)&&this.start()}_initDOM(){if(this.root=this.config.id?document.getElementById(this.config.id):null,!this.root){const t=this.config.el;if(!t||1!==t.nodeType)return this.emit(Fo,new Oo("use",this.config.vid,{line:32,handle:"Constructor",msg:"container id can't be empty"})),console.error("this.confg.id or this.config.el can't be empty"),!1;this.root=t}const t=ta.checkPlayerRoot(this.root);t&&(To.logWarn("The is an Player instance already exists in this.root, destroy it and reinitialize"),t.destroy()),this._initBaseDoms();const e=this.constructor.XgVideoProxy;if(e&&this.videoConfig.mediaType===e.mediaType){const t=this.innerContainer||this.root;this.detachVideoEvents(this.video);const i=new e(t,this.config,this.videoConfig);this.attachVideoEvents(i),this.video=i}if(this.config.controls){const t=ta.register(this,da);this.controls=t}const i="mobile"===this.config.isMobileSimulateMode?"mobile":Lo.device;if(this.addClass(`${ea.DEFAULT} ${ea.INACTIVE} xgplayer-${i} ${this.config.controls?"":ea.NO_CONTROLS}`),this.config.autoplay?this.addClass(ea.ENTER):this.addClass(ea.NO_START),this.config.fluid){let{width:t,height:e}=this.config;"number"==typeof t&&"number"==typeof e||(t=600,e=337.5);const i={width:"100%",height:"0","max-width":"100%","padding-top":100*e/t+"%"};Object.keys(i).forEach((t=>{this.root.style[t]=i[t]}))}else["width","height"].forEach((t=>{this.config[t]&&("number"!=typeof this.config[t]?this.root.style[t]=this.config[t]:this.root.style[t]=`${this.config[t]}px`)}));return!0}_initBaseDoms(){this.topBar=xo.createDom("xg-bar","",{"data-index":-1},"xg-top-bar"),this.leftBar=xo.createDom("xg-bar","",{"data-index":-1},"xg-left-bar"),this.rightBar=xo.createDom("xg-bar","",{"data-index":-1},"xg-right-bar"),this.config.marginControls&&(this.innerContainer=xo.createDom("xg-video-container","",{"data-index":-1},"xg-video-container"),this.root.appendChild(this.innerContainer)),this.config.topBarAutoHide&&xo.addClass(this.topBar,ea.TOP_BAR_AUTOHIDE),this.root.appendChild(this.topBar),this.root.appendChild(this.leftBar),this.root.appendChild(this.rightBar)}_bindEvents(){["focus","blur"].forEach((t=>{this.on(t,this["on"+t.charAt(0).toUpperCase()+t.slice(1)])})),this.onFullscreenChange=(t,e)=>{const i=xo.getFullScreenEl();if(this._fullActionFrom?this._fullActionFrom="":this.emit(br,{eventType:"system",action:"switch_fullscreen",pluginName:"player",currentTime:this.currentTime,duration:this.duration,props:[{prop:"fullscreen",from:!0,to:!1}]}),e||i&&(i===this._fullscreenEl||"VIDEO"===i.tagName))xo.setTimeout(this,(()=>{this.resize()}),100),!this.config.closeFocusVideoFocus&&this.video.focus(),this.fullscreen=!0,this.changeFullStyle(this.root,i,ea.FULLSCREEN),this.emit(ar,!0,this._fullScreenOffset),this.cssfullscreen&&this.exitCssFullscreen();else if(this.fullscreen){xo.setTimeout(this,(()=>{this.resize()}),100);const{_fullScreenOffset:t,config:e}=this;e.needFullscreenScroll?(window.scrollTo(t.left,t.top),xo.setTimeout(this,(()=>{this.fullscreen=!1,this._fullScreenOffset=null}),100)):(!this.config.closeFocusVideoFocus&&this.video.focus(),this.fullscreen=!1,this._fullScreenOffset=null),this.cssfullscreen?this.removeClass(ea.FULLSCREEN):this.recoverFullStyle(this.root,this._fullscreenEl,ea.FULLSCREEN),this._fullscreenEl=null,this.emit(ar,!1)}},kr.forEach((t=>{document&&document.addEventListener(t,this.onFullscreenChange)})),this.__webkitbeginfullscreen=t=>{this._fullscreenEl=this.video,this.onFullscreenChange(t,!0)},this.__webkitendfullscreen=t=>{this.onFullscreenChange(t,!1)},Lo.os.isIos&&(this.video.addEventListener("webkitbeginfullscreen",this.__webkitbeginfullscreen),this.video.addEventListener("webkitendfullscreen",this.__webkitendfullscreen)),this.once(Wo,this.resize),this.playFunc=()=>{this.config.closeFocusVideoFocus||this.video.focus()},this.once(Ro,this.playFunc)}_unbindEvents(){this.root.removeEventListener("mousemove",this.mousemoveFunc),kr.forEach((t=>{document.removeEventListener(t,this.onFullscreenChange)})),this.playFunc&&this.off(Ro,this.playFunc),this.canPlayFunc&&this.off($o,this.canPlayFunc),this.video.removeEventListener("webkitbeginfullscreen",this.__webkitbeginfullscreen),this.video.removeEventListener("webkitendfullscreen",this.__webkitendfullscreen)}_startInit(t){if(!this.video)return;if((!t||""===t||"Array"===xo.typeOf(t)&&0===t.length)&&(t="",this.emit(Qo),To.logWarn("config.url is null, please get url and run player._startInit(url)"),this.config.nullUrlStart))return;this.canPlayFunc=()=>{if(!this.config)return;const{autoplay:t,startTime:e,defaultPlaybackRate:i}=this.config;To.logInfo("player","canPlayFunc",e),e&&(this.currentTime=e>this.duration?this.duration:e,this.config.startTime=0),1!==i&&(this.playbackRate=i),t&&this.videoPlay(),this.off($o,this.canPlayFunc),this.removeClass(ea.ENTER)},this._detachSourceEvents(this.video),"Array"===xo.typeOf(t)?this._attachSourceEvents(this.video,t):this.video.src!==t&&(this.video.src=t),"Number"===xo.typeOf(this.config.volume)&&(this.volume=this.config.volume),this.loadeddataFunc&&this.once(Wo,this.loadeddataFunc);const e=this.innerContainer?this.innerContainer:this.root;this.video instanceof window.Element&&!e.contains(this.video)&&e.insertBefore(this.video,e.firstChild);const{readyState:i}=this.video;To.logInfo("_startInit readyState",i),this.config.autoplay&&(!/^blob/.test(this.video.currentSrc)&&!/^blob/.test(this.video.src)&&this.load(),(Lo.os.isIpad||Lo.os.isPhone)&&this.videoPlay()),i>=2?this.canPlayFunc():this.once($o,this.canPlayFunc),(!this.hasStart||this.state<aa)&&ta.afterInit(this),this.hasStart=!0,this.setState(aa),xo.setTimeout(this,(()=>{this.emit(ir)}),0)}_registerPlugins(t=!0){this._loadingPlugins=[];const e=this.config.ignores||[],i=this.config.plugins||[],s=this.config.i18n||[];t&&s.forEach((t=>{Ca.use(t)}));const n=e.join("||").toLowerCase().split("||"),o=this.plugins;i.forEach((e=>{try{const i=e.plugin?e.plugin.pluginName:e.pluginName;if(i&&n.indexOf(i.toLowerCase())>-1)return null;if(!t&&o[i.toLowerCase()])return;if(e.lazy&&e.loader){const t=ta.lazyRegister(this,e);return void(e.forceBeforeInit&&(t.then((()=>{this._loadingPlugins.splice(this._loadingPlugins.indexOf(t),1)})).catch((e=>{To.logError("_registerPlugins:loadingPlugin",e),this._loadingPlugins.splice(this._loadingPlugins.indexOf(t),1)})),this._loadingPlugins.push(t)))}return this.registerPlugin(e)}catch(i){To.logError("_registerPlugins:",i)}}))}_registerPresets(){this.config.presets.forEach((t=>{((t,e)=>{let i;i=e.preset&&e.options?new e.preset(e.options,t.config):new e({},t.config);const{plugins:s=[],ignores:n=[],icons:o={},i18n:r=[]}=i;t.config.plugins||(t.config.plugins=[]),t.config.ignores||(t.config.ignores=[]),t.config.plugins.push(...s),t.config.ignores.push(...n),Object.keys(o).map((e=>{t.config.icons[e]||(t.config.icons[e]=o[e])})),t.config.i18n.push(...r)})(this,t)}))}registerPlugin(t,e){let i=null,s=null;t.plugin&&"function"==typeof t.plugin?(i=t.plugin,s=t.options):(i=t,s={}),e&&(s.config=e);const{plugins:n}=this.config;let o=!1;for(let h=0;h<n.length;h++)if(i.pluginName.toLowerCase()===n[h].pluginName.toLowerCase()){o=!0;break}!o&&n.push(i);const r=Object.keys(this.config);for(let h=0;h<r.length;h++)if(i.pluginName.toLowerCase()===r[h].toLowerCase()){const t=this.config[r[h]];"Object"===xo.typeOf(t)&&(t.root&&(s.root=t.root),t.position&&(s.position=t.position));break}const a=s.position?s.position:s.config&&s.config.position||i.defaultConfig&&i.defaultConfig.position,{POSITIONS:l}=Zr;if(!s.root&&"string"==typeof a&&a.indexOf("controls")>-1)return this.controls&&this.controls.registerPlugin(i,s,i.pluginName);if(!s.root)switch(a){case l.ROOT_RIGHT:s.root=this.rightBar;break;case l.ROOT_LEFT:s.root=this.leftBar;break;case l.ROOT_TOP:s.root=this.topBar;break;default:s.root=this.innerContainer||this.root}return ta.register(this,i,s)}deregister(t){"string"==typeof t?ta.unRegister(this,t):t instanceof Br&&ta.unRegister(this,t.pluginName)}unRegisterPlugin(t,e=!1){this.deregister(t),e&&this.removePluginFromConfig(t)}removePluginFromConfig(t){let e;if("string"==typeof t?e=t:t instanceof Br&&(e=t.pluginName),e)for(let i=this.config.plugins.length-1;i>-1;i--){if(this.config.plugins[i].pluginName.toLowerCase()===e.toLowerCase()){this.config.plugins.splice(i,1);break}}}get plugins(){return ta.getPlugins(this)}getPlugin(t){const e=ta.findPlugin(this,t);return e&&e.pluginName?e:null}addClass(t){this.root&&(xo.hasClass(this.root,t)||xo.addClass(this.root,t))}removeClass(t){this.root&&xo.removeClass(this.root,t)}hasClass(t){if(this.root)return xo.hasClass(this.root,t)}setAttribute(t,e){this.root&&this.root.setAttribute(t,e)}removeAttribute(t,e){this.root&&this.root.removeAttribute(t,e)}start(t){return this.hasStart||this.state>=ra?Promise.resolve():(t||this.config.url||this.getInitDefinition(),this.hasStart=!0,this.setState(ra),this._registerPlugins(!1),ta.beforeInit(this).then((()=>{if(!this.config)return;t||(t=this.url||this.config.url);return this._startInit(t)})).catch((t=>{throw t.fileName="player",t.lineNumber="236",To.logError("start:beforeInit:",t),t})))}switchURL(t,e=!1){let i=t;"Object"===xo.typeOf(t)&&(i=t.url);const s=this.currentTime,n=this.paused&&!this._isError;return this.src=i,new Promise((t=>{const e=()=>{this.currentTime=s,n&&this.once("canplay",(()=>{this.pause()})),t()};Lo.os.isAndroid?this.once("timeupdate",(()=>{e()})):this.once("canplay",(()=>{e()})),this.play()}))}load(){this.video&&this.video.load()}videoPlay(){if(!this.hasStart&&this.state<aa){this.removeClass(ea.NO_START),this.addClass(ea.ENTER);const t=this.start();return void(t&&t.then((t=>{!this.config.autoplay&&this.videoPlay()})))}this.state<ha&&(this.removeClass(ea.NO_START),!this.isCanplay&&this.addClass(ea.ENTER));const t=super.play();return void 0!==t&&t&&t.then?t.then((()=>{this.removeClass(ea.NOT_ALLOW_AUTOPLAY),this.addClass(ea.PLAYING),this.state<ha&&(To.logInfo(">>>>playPromise.then"),this.setState(ha),this.emit(tr))})).catch((t=>{if(To.logWarn(">>>>playPromise.catch",t.name),this.video&&this.video.error)return this.onError(),void this.removeClass(ea.ENTER);"NotAllowedError"===t.name&&(this._errorTimer=xo.setTimeout(this,(()=>{this._errorTimer=null,this.emit(er),this.addClass(ea.NOT_ALLOW_AUTOPLAY),this.removeClass(ea.ENTER),this.pause(),this.setState(la)}),0))})):(To.logWarn("video.play not return promise"),this.state<ha&&(this.setState(ha),this.removeClass(ea.NOT_ALLOW_AUTOPLAY),this.removeClass(ea.NO_START),this.removeClass(ea.ENTER),this.addClass(ea.PLAYING),this.emit(tr))),t}videoPause(){super.pause()}play(){this.removeClass(ea.PAUSED),Hr(this,"play",(()=>{this.videoPlay()}))}pause(){Hr(this,"pause",(()=>{super.pause()}))}seek(t,e){if(!this.video||isNaN(Number(t)||!this.hasStart))return;const{isSeekedPlay:i,seekedStatus:s}=this.config,n=e||(i?"play":s);t=t<0?0:t>this.duration?parseInt(this.duration,10):t,this.once($o,(()=>{switch(this.removeClass(ea.ENTER),this.isSeeking=!1,n){case"play":this.play();break;case"pause":this.pause();break;default:!this.paused&&this.play()}})),this.state<ha?(this.removeClass(ea.NO_START),this.addClass(ea.ENTER),this.currentTime=t,"play"===n&&this.play()):this.currentTime=t}getInitDefinition(){const{definition:t,url:e}=this.config;!e&&t&&t.list&&t.list.length>0&&t.defaultDefinition&&t.list.map((e=>{e.definition===t.defaultDefinition&&(this.config.url=e.url,this.curDefinition=e.definition)}))}changeDefinition(t,e){if(this.emit(cr,{from:e,to:t}),this.curDefinition=t.definition,!this.hasStart)return void(this.config.url=t.url);const i=this.switchURL(t.url);i&&i.then?i.then((()=>{this.emit(ur,{from:e,to:t})})):this.emit(ur,{from:e,to:t})}reload(){this.load(),this.reloadFunc=function(){this.play()},this.once(Wo,this.reloadFunc)}resetState(){const{NOT_ALLOW_AUTOPLAY:t,PLAYING:e,NO_START:i,PAUSED:s,REPLAY:n,ENTER:o,ENDED:r,ERROR:a,LOADING:l}=ea,h=[t,e,i,s,n,o,r,a,l];this.hasStart=!1,this._isError=!1,this.videoPause(),this._accPlayed.acc=0,this._accPlayed.t=0,this._accPlayed.loopAcc=0,h.forEach((t=>{this.removeClass(t)})),this.addClass(ea.ENTER),this.emit(Xo),this.emit(Cr)}reset(t=[],e){this.resetState();const{plugins:i}=this;if(i&&(t.map((t=>{this.deregister(t)})),e)){const t=sa();Object.keys(this.config).keys((e=>{"undefined"===this.config[e]||"plugins"!==e&&"presets"!==e&&"el"!==e&&"id"!==e||(this.config[e]=t[e])}))}}destroy(){const{innerContainer:t,root:e,video:i}=this;if(!e||!i)return;if(this._hasStart=!1,this.updateAcc("destroy"),this._unbindEvents(),this._detachSourceEvents(this.video),xo.clearAllTimers(this),this.emit(nr),ta.destroy(this),Fr(this),super.destroy(),this.fullscreen&&this._fullscreenEl===this.root&&this.exitFullscreen(),t){const e=t.children;for(let i=0;i<e.length;i++)t.removeChild(e[i])}!t&&i instanceof window.Node&&e.contains(i)&&e.removeChild(i),["topBar","leftBar","rightBar","innerContainer"].map((t=>{this[t]&&e.removeChild(this[t]),this[t]=null}));const s=e.className.split(" ");s.length>0?e.className=s.filter((t=>t.indexOf("xgplayer")<0)).join(" "):e.className="",this.removeAttribute("data-xgfill"),["isSeeking","isCanplay","isActive","cssfullscreen","fullscreen"].forEach((t=>{this[t]=!1}))}replay(){this.removeClass(ea.ENDED),this.currentTime=0,this.isSeeking=!1,Hr(this,"replay",(()=>{this.once($o,(()=>{const t=this.videoPlay();t&&t.catch&&t.catch((t=>{console.log(t)}))})),this.play(),this.emit(sr),this.onPlay()}))}retry(){this.removeClass(ea.ERROR),this.addClass(ea.LOADING),Hr(this,"retry",(()=>{const t=this.currentTime;this.videoPause(),this.src=this.config.url,!this.config.isLive&&(this.currentTime=t),this.once($o,(()=>{this.videoPlay()}))}))}changeFullStyle(t,e,i,s){t&&(s||(s=ea.PARENT_FULLSCREEN),this._orgCss||(this._orgCss=xo.filterStyleFromText(t)),xo.addClass(t,i),e&&e!==t&&!this._orgPCss&&(this._orgPCss=xo.filterStyleFromText(e),xo.addClass(e,s)))}recoverFullStyle(t,e,i,s){s||(s=ea.PARENT_FULLSCREEN),this._orgCss&&(xo.setStyleFromCsstext(t,this._orgCss),this._orgCss=""),xo.removeClass(t,i),e&&e!==t&&this._orgPCss&&(xo.setStyleFromCsstext(e,this._orgPCss),this._orgPCss="",xo.removeClass(e,s))}getFullscreen(t=this.config.fullscreenTarget){const{root:e,video:i}=this;t||(t=e),this._fullScreenOffset={top:xo.scrollTop(),left:xo.scrollLeft()},this._fullscreenEl=t,this._fullActionFrom="get";if(xo.getFullScreenEl()!==this._fullscreenEl)try{for(let e=0;e<Pr.length;e++){const i=Pr[e];if(t[i]){const e="webkitRequestFullscreen"===i?t.webkitRequestFullscreen(window.Element.ALLOW_KEYBOARD_INPUT):t[i]();return e&&e.then?e:Promise.resolve()}}return i.fullscreenEnabled||i.webkitSupportsFullscreen?(i.webkitEnterFullscreen(),Promise.resolve()):Promise.reject(new Error("call getFullscreen fail"))}catch(s){return Promise.reject(new Error("call getFullscreen fail"))}else this.onFullscreenChange()}exitFullscreen(t){if(this.isRotateFullscreen&&this.exitRotateFullscreen(),!this._fullscreenEl&&!xo.getFullScreenEl())return;const{root:e,video:i}=this;this._fullActionFrom="exit";try{for(let t=0;t<Lr.length;t++){const e=Lr[t];if(document[e]){const t=document[e]();return t&&t.then?t:Promise.resolve()}}return i&&i.webkitSupportsFullscreen?(i.webkitExitFullScreen(),Promise.resolve()):Promise.reject(new Error("call exitFullscreen fail"))}catch(s){return Promise.reject(new Error("call exitFullscreen fail"))}}getCssFullscreen(t=this.config.fullscreenTarget){this.isRotateFullscreen?this.exitRotateFullscreen():this.fullscreen&&this.exitFullscreen();const e=t?`${ea.INNER_FULLSCREEN} ${ea.CSS_FULLSCREEN}`:ea.CSS_FULLSCREEN;this.changeFullStyle(this.root,t,e);const{fullscreen:i={}}=this.config;(!0===i.useCssFullscreen||"function"==typeof i.useCssFullscreen&&i.useCssFullscreen())&&(this.fullscreen=!0,this.emit(ar,!0)),this._cssfullscreenEl=t,this.cssfullscreen=!0,this.emit(lr,!0)}exitCssFullscreen(){const t=this._cssfullscreenEl?`${ea.INNER_FULLSCREEN} ${ea.CSS_FULLSCREEN}`:ea.CSS_FULLSCREEN;if(this.fullscreen){const{fullscreen:e={}}=this.config;!0===e.useCssFullscreen||"function"==typeof e.useCssFullscreen&&e.useCssFullscreen()?(this.recoverFullStyle(this.root,this._cssfullscreenEl,t),this.fullscreen=!1,this.emit(ar,!1)):this.removeClass(t)}else this.recoverFullStyle(this.root,this._cssfullscreenEl,t);this._cssfullscreenEl=null,this.cssfullscreen=!1,this.emit(lr,!1)}getRotateFullscreen(t){this.cssfullscreen&&this.exitCssFullscreen(t);const e=t?`${ea.INNER_FULLSCREEN} ${ea.ROTATE_FULLSCREEN}`:ea.ROTATE_FULLSCREEN;this._fullscreenEl=t||this.root,this.changeFullStyle(this.root,t,e,ea.PARENT_ROTATE_FULLSCREEN),this.isRotateFullscreen=!0,this.fullscreen=!0,this.setRotateDeg(90),this.emit(ar,!0)}exitRotateFullscreen(t){const e=this._fullscreenEl!==this.root?`${ea.INNER_FULLSCREEN} ${ea.ROTATE_FULLSCREEN}`:ea.ROTATE_FULLSCREEN;this.recoverFullStyle(this.root,this._fullscreenEl,e,ea.PARENT_ROTATE_FULLSCREEN),this.isRotateFullscreen=!1,this.fullscreen=!1,this.setRotateDeg(0),this.emit(ar,!1)}setRotateDeg(t){90===window.orientation||-90===window.orientation?this.rotateDeg=0:this.rotateDeg=t}focus(t={autoHide:!this.config.closeDelayBlur,delay:this.config.inactive}){this.isActive?this.onFocus(t):this.emit(qo,{paused:this.paused,ended:this.ended,...t})}blur(t={ignorePaused:!1}){this.isActive?this.emit(Zo,{paused:this.paused,ended:this.ended,...t}):this.onBlur(t)}onFocus({autoHide:t=!this.config.closePlayerBlur,delay:e=this.config.inactive}={}){this.isActive=!0,this.removeClass(ea.INACTIVE),this.userTimer&&(xo.clearTimeout(this,this.userTimer),this.userTimer=null),t?this.userTimer=xo.setTimeout(this,(()=>{this.userTimer=null,this.blur()}),e):this.userTimer&&(xo.clearTimeout(this,this.userTimer),this.userTimer=null)}onBlur({ignorePaused:t=!1}={}){if(!this.isActive)return;const{closePauseVideoFocus:e}=this.config;this.isActive=!1,(t||e||!this.paused&&!this.ended)&&this.addClass(ea.INACTIVE)}onEmptied(){this.updateAcc("emptied")}onCanplay(){this.state>=ha&&this.removeClass(ea.ENTER),this.removeClass(ea.LOADING),this.isCanplay=!0,this.waitTimer&&xo.clearTimeout(this,this.waitTimer)}onPlay(){this.state===ca&&this.setState(ha),this.removeClass(ea.PAUSED),this.ended&&this.removeClass(ea.ENDED),!this.config.closePlayVideoFocus&&this.focus()}onPause(){this.addClass(ea.PAUSED),this.updateAcc("pause"),this.config.closePauseVideoFocus||(this.userTimer&&(xo.clearTimeout(this,this.userTimer),this.userTimer=null),this.focus())}onEnded(){this.updateAcc("ended"),this.addClass(ea.ENDED),this.setState(ca)}onError(){this._isError=!0,this.updateAcc("error"),this.removeClass(ea.NOT_ALLOW_AUTOPLAY),this.removeClass(ea.NO_START),this.removeClass(ea.ENTER),this.removeClass(ea.LOADING),this.addClass(ea.ERROR)}onSeeking(){this.isSeeking||this.updateAcc("seeking"),this.isSeeking=!0,this.addClass(ea.SEEKING)}onSeeked(){this.isSeeking=!1,this.waitTimer&&xo.clearTimeout(this,this.waitTimer),this.removeClass(ea.LOADING),this.removeClass(ea.SEEKING)}onWaiting(){this.waitTimer&&xo.clearTimeout(this,this.waitTimer),this.updateAcc("waiting"),this.waitTimer=xo.setTimeout(this,(()=>{this.addClass(ea.LOADING),xo.clearTimeout(this,this.waitTimer),this.waitTimer=null}),200)}onPlaying(){this._isError=!1;const{NO_START:t,PAUSED:e,ENDED:i,ERROR:s,REPLAY:n,LOADING:o}=ea;[t,e,i,s,n,o].forEach((t=>{this.removeClass(t)}))}onTimeupdate(){!this._videoHeight&&this.resize(),(this.waitTimer||this.hasClass(ea.LOADING))&&this.video.readyState>2&&(this.removeClass(ea.LOADING),xo.clearTimeout(this,this.waitTimer),this.waitTimer=null),!this.paused&&this.state<ha&&(this.setState(ha),this.emit(tr)),this._accPlayed.t||this.paused||this.ended||(this._accPlayed.t=(new Date).getTime())}onVolumechange(){"Number"===xo.typeOf(this.config.volume)&&(this.config.volume=this.volume)}onRatechange(){this.config.defaultPlaybackRate=this.playbackRate}emitUserAction(t,e,i){if(!this.video||!e||!t)return;const s="String"===xo.typeOf(t)?t:t.type||"";i.props&&"Array"!==xo.typeOf(i.props)&&(i.props=[i.props]),this.emit(br,{eventType:s,action:e,currentTime:this.currentTime,duration:this.duration,ended:this.ended,event:t,...i})}updateAcc(t){if(this._accPlayed.t){const e=(new Date).getTime()-this._accPlayed.t;this._accPlayed.acc+=e,this._accPlayed.t=0,("ended"===t||this.ended)&&(this._accPlayed.loopAcc=this._accPlayed.acc)}}checkBuffer(t){const e=this.video.buffered;if(!e||0===e.length||!this.duration)return!0;const i=t||this.video.currentTime||.2,s=e.length;for(let n=0;n<s;n++)if(e.start(n)<=i&&e.end(n)>i)return!0;return!1}position(t={h:0,y:0,x:0,w:0}){if(!this.video||!t||!t.h)return;const e=1/t.h;let i=1!==e?`scale(${e})`:"",s=0,n=0;t.y&&(n=(100-100*t.h)/2-100*t.y),t.w&&t.x&&(s=(100-100*t.w)/2-100*t.x),i+=` translate(${s}%, ${n}%)`,this.video.style.transform=i,this.video.style.webkitTransform=i}setConfig(t){t&&Object.keys(t).map((e=>{if("plugins"!==e){this.config[e]=t[e];const i=this.plugins[e.toLowerCase()];i&&"Function"===xo.typeOf(i.setConfig)&&i.setConfig(t[e])}}))}playNext(t){this.resetState(),this.setConfig(t),this.play(),this.emit(mr,t)}resize(){if(!this.video)return;const{videoWidth:t,videoHeight:e}=this.video,{fitVideoSize:i,videoFillMode:s}=this.config;if("fill"!==s&&"cover"!==s||this.setAttribute("data-xgfill",s),!e||!t)return;this._videoHeight=e,this._videoWidth=t;const n=this.root.getBoundingClientRect(),o=this.controls&&this.innerContainer?this.controls.root.getBoundingClientRect().height:0,r=n.width,a=n.height-o,l=parseInt(t/e*1e3,10),h=parseInt(r/a*1e3,10);let c=r,u=a;const d={};"auto"===i&&h>l||"fixWidth"===i?(u=r/l*1e3,this.config.fluid?d.paddingTop=100*u/c+"%":d.height=`${u+o}px`):("auto"===i&&h<l||"fixHeight"===i)&&(c=l*a/1e3,d.width=`${c}px`),this.fullscreen||this.cssfullscreen||Object.keys(d).forEach((t=>{this.root.style[t]=d[t]})),("fillHeight"===s&&h<l||"fillWidth"===s&&h>l)&&this.setAttribute("data-xgfill","cover");const p={videoScale:l,vWidth:c,vHeight:u,cWidth:c,cHeight:u+o};this.emit(dr,p)}updateObjectPosition(t=0,e=0){this.video.updateObjectPosition?this.video.updateObjectPosition(t,e):this.video.style.objectPosition=`${100*t}% ${100*e}%`}setState(t){To.logInfo("setState",`state from:${ua[this.state]} to:${ua[t]}`),this._state=t}get state(){return this._state}get isFullscreen(){return this.fullscreen}get isCssfullScreen(){return this.cssfullscreen}get hasStart(){return this._hasStart}set hasStart(t){"boolean"==typeof t&&(this._hasStart=t,!1===t&&(this._state=oa),this.emit("hasstart"))}get isPlaying(){return this._state===ha||this._state===ca}set definitionList(t){const{definition:e}=this.config;e.list=t,this.emit("resourceReady",t);let i=null,s=null;t.forEach((t=>{this.curDefinition===t.definition&&(i=t),e.defaultDefinition===t.definition&&(s=t)})),!s&&t.length>0&&(s=t[0]),i?this.changeDefinition(i):s&&this.changeDefinition(s)}get definitionList(){return this.config.definition.list||[]}get videoFrameInfo(){const t={total:0,dropped:0,corrupted:0,droppedRate:0,droppedDuration:0};if(!this.video||!this.video.getVideoPlaybackQuality)return t;const e=this.video.getVideoPlaybackQuality();return t.dropped=e.droppedVideoFrames||0,t.total=e.totalVideoFrames||0,t.corrupted=e.corruptedVideoFrames||0,t.total>0&&(t.droppedRate=t.dropped/t.total*100,t.droppedDuration=parseInt(this.cumulateTime/t.total*t.dropped,0)),t}set lang(t){0!==Ca.langKeys.filter((e=>e===t)).length||"zh"===t?(this.config.lang=t,ta.setLang(t,this)):console.error(`Sorry, set lang fail, because the language [${t}] is not supported now, list of all supported languages is [${Ca.langKeys.join()}] `)}get lang(){return this.config.lang}get i18n(){const{lang:t}=this.config;return Ca.lang[t]||Ca.lang.en}get i18nKeys(){return Ca.textKeys||{}}get version(){return Ao}get playerId(){return this._pluginInfoId}set url(t){this.__url=t}get url(){return this.__url||this.config.url}set poster(t){this.plugins.poster&&this.plugins.poster.update(t)}get poster(){return this.plugins.poster?this.plugins.poster.config.poster:this.config.poster}get readyState(){const t=super.readyState;return this.i18n[t]||t}get error(){const t=super.error;return this.i18n[t]||t}get networkState(){const t=super.networkState;return this.i18n[t]||t}get fullscreenChanging(){return!(null===this._fullScreenOffset)}get cumulateTime(){const{_accPlayed:t}=this;return this.updateAcc("get"),t.acc}get zoom(){return this.config.zoom}set zoom(t){this.config.zoom=t}hook(t,e,i={pre:null,next:null}){return Ir.call(this,...arguments)}useHooks(t,e){return Or.call(this,...arguments)}removeHooks(t,e){return Rr.call(this,...arguments)}usePluginHooks(t,e,i,...s){return Dr.call(this,...arguments)}removePluginHooks(t,e,i,...s){return Mr.call(this,...arguments)}setUserActive(t,e){"boolean"==typeof e&&e!==this.muted&&(this.addInnerOP("volumechange"),this.muted=e),ta.setCurrentUserActive(this.playerId,t)}static install(t,e){wa.plugins||(wa.plugins={}),wa.plugins[t]||(wa.plugins[t]=e)}static use(t,e){wa.plugins||(wa.plugins={}),wa.plugins[t]=e}}t(wa,"defaultPreset",null),t(wa,"XgVideoProxy",null);function Ta(){return(new Date).getTime()}class Ea extends Zr{constructor(...e){super(...e),t(this,"_onTimeupdate",(()=>{To.logInfo("[xgLogger]Events._onTimeupdate"),this._state.isTimeUpdate=!0,this._sendFirstFrame()})),t(this,"_onAutoplayStart",(()=>{To.logInfo("[xgLogger]Events._onAutoplayStart"),this._state.autoplayStart=!0,this._sendFirstFrame()})),t(this,"_onReset",(()=>{this.vt=0,this.pt=0,this.fvt=0,this._isSeeking=!1,this.seekingStart=0,this.waitingStart=0,this._isWaiting=!1,this._waitTimer&&xo.clearTimeout(this,this._waitTimer),this._waittTimer&&xo.clearTimeout(this,this._waittTimer),this._waitTimer=null,this._waittTimer=null,this._waitType=0})),t(this,"_onSeeking",(()=>{this.seekingStart||(this.suspendWaitingStatus("seek"),this.seekingStart=Ta(),this.emitLog("seekStart",{start:Ta()}))})),t(this,"_onSeeked",(()=>{this.suspendSeekingStatus("seeked")})),t(this,"_onWaitingLoadStart",(()=>{this._isWaiting||this.vt||(this._isWaiting=!0,this.waitingStart=Ta(),this._waitType=1,this.emitLog("waitingStart",{start:this.waitingStart,type:1,endType:"loadstart"}))})),t(this,"_onWaiting",(()=>{!this._isWaiting&&this.vt&&(this._isWaiting=!0,this._waitTimer=xo.setTimeout(this,(()=>{this._isWaiting&&(this.waitingStart=Ta(),xo.clearTimeout(this,this._waitTimer),this._waitTimer=null,this.vt?this.seekingStart?this._waitType=2:this._waitType=0:this._waitType=1,this._startWaitTimeout(),this.emitLog("waitingStart",{start:this.waitingStart,type:this._waitType,endType:2===this._waitType?"seek":"playing"}))}),200))})),t(this,"_onError",(()=>{this.suspendSeekingStatus("error"),this.suspendWaitingStatus("error")})),t(this,"_onPlaying",(()=>{this._isWaiting&&this.suspendWaitingStatus("playing")}))}static get pluginName(){return"xgLogger"}static get defaultConfig(){return{}}afterCreate(){this._state={autoplayStart:!1,isFFLoading:!1,isTimeUpdate:!1},this._onReset(),this._waitType="firstFrame",this.on(Ko,(()=>{const{autoplayStart:t}=this._state;this._state.isTimeUpdate=!1,this._state.isFFLoading=!0,To.logInfo("[xgLogger]Events.LOAD_START",t),this.pt=Ta(),this.vt=0,this.fvt=0,this.off(tr,this._onAutoplayStart),this.off(Bo,this._onTimeupdate),this._onWaitingLoadStart(),t?this.once(Bo,this._onTimeupdate):this.once(tr,this._onAutoplayStart)})),this.on(Wo,(()=>{this.vt=Ta(),this.fvt=this.vt-this.pt,To.logInfo("[xgLogger]Events.LOADED_DATA",this.fvt,this._state.isTimeUpdate),this._state.isTimeUpdate&&this._sendFirstFrame(),this.suspendWaitingStatus("loadeddata")})),this.on(Ho,this._onSeeking),this.on(Uo,this._onSeeked),this.on(nr,(()=>{this.endState("destroy")})),this.on(or,(()=>{this.endState("urlChange"),this._onReset()})),this.on([Do,$o],this._onPlaying),this.on(jo,this._onWaiting),this.on(Fo,this._onError),this.on([Xo,Cr],(()=>{this.endState("reset"),this._onReset()}))}_sendFirstFrame(){this.s=Ta(),this.vt>0&&this._state.isFFLoading&&(To.logInfo("[xgLogger]Events._sendFirstFrame",this.vt),this._state.isFFLoading=!1,this.emitLog("firstFrame",{fvt:this.fvt,costTime:this.fvt,vt:this.vt}))}_startWaitTimeout(){this._waittTimer&&xo.clearTimeout(this,this._waittTimer),this._waittTimer=xo.setTimeout(this,(()=>{this.suspendWaitingStatus("timeout"),xo.clearTimeout(this,this._waittTimer),this._waittTimer=null}),3e4)}endState(t){this.suspendWaitingStatus(t),this.suspendSeekingStatus(t)}suspendSeekingStatus(t){if(!this.seekingStart)return;const e=Ta(),i=e-this.seekingStart;this.seekingStart=0,this.emitLog("seekEnd",{end:e,costTime:i,endType:t})}suspendWaitingStatus(t){if(this._waitTimer&&(xo.clearTimeout(this,this._waitTimer),this._waitTimer=null),this._waittTimer&&(xo.clearTimeout(this,this._waittTimer),this._waittTimer=null),this._isWaiting=!1,!this.waitingStart)return;const e=Ta()-this.waitingStart;this._isWaiting=!1,this.waitingStart=0,this.emitLog("waitingEnd",{costTime:e,type:this._waitType,endType:2===this._waitType?"seek":t})}emitLog(t,e){const{player:i}=this;this.emit(vr,{t:Ta(),host:xo.getHostFromUrl(i.currentSrc),vtype:i.vtype,eventType:t,currentTime:this.player.currentTime,readyState:i.video.readyState,networkState:i.video.networkState,...e})}}function xa(){return(new DOMParser).parseFromString('<svg class="xgplayer-replay-svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 78 78" width="78" height="78">\n <path fill="#fff" transform="translate(20, 20)" d="M8.22708362,13.8757234 L11.2677371,12.6472196 C11.7798067,12.4403301 12.3626381,12.6877273 12.5695276,13.1997969 L12.9441342,14.1269807 C13.1510237,14.6390502 12.9036264,15.2218816 12.3915569,15.4287712 L6.8284538,17.6764107 L5.90126995,18.0510173 C5.38920044,18.2579068 4.80636901,18.0105096 4.5994795,17.49844 L1.97723335,11.0081531 C1.77034384,10.4960836 2.0177411,9.91325213 2.52981061,9.70636262 L3.45699446,9.33175602 C3.96906396,9.12486652 4.5518954,9.37226378 4.75878491,9.88433329 L5.67885163,12.1615783 C7.99551726,6.6766934 13.3983951,3 19.5,3 C27.7842712,3 34.5,9.71572875 34.5,18 C34.5,26.2842712 27.7842712,33 19.5,33 C15.4573596,33 11.6658607,31.3912946 8.87004692,28.5831991 C8.28554571,27.9961303 8.28762719,27.0463851 8.87469603,26.4618839 C9.46176488,25.8773827 10.4115101,25.8794641 10.9960113,26.466533 C13.2344327,28.7147875 16.263503,30 19.5,30 C26.127417,30 31.5,24.627417 31.5,18 C31.5,11.372583 26.127417,6 19.5,6 C14.4183772,6 9.94214483,9.18783811 8.22708362,13.8757234 Z"></path>\n</svg>\n',"image/svg+xml").firstChild}class Sa extends Zr{static get pluginName(){return"replay"}static get defaultConfig(){return{disable:!1}}registerIcons(){return{replay:xa}}afterCreate(){Zr.insert(this.icons.replay,this.root,0),this.__handleReplay=this.hook("replayClick",(()=>{this.player.replay()}),{pre:t=>{t.preventDefault(),t.stopPropagation()}}),this.bind(".xgplayer-replay",["click","touchend"],this.__handleReplay),this.on(Mo,(()=>{if(this.playerConfig.loop||xo.addClass(this.player.root,"replay"),this.config.disable)return;this.show();const t=this.root.querySelector("path");if(t){const e=window.getComputedStyle(t).getPropertyValue("transform");if("string"==typeof e&&e.indexOf("none")>-1)return null;t.setAttribute("transform",e)}})),this.on(Ro,(()=>{this.hide()}))}handleReplay(t){t.preventDefault(),t.stopPropagation(),this.player.replay(),xo.removeClass(this.player.root,"replay")}show(){this.config.disable||(this.root.style.display="flex")}enable(){this.config.disable=!1}disable(){this.config.disable=!0,this.hide()}destroy(){this.unbind(".xgplayer-replay",["click","touchend"],this.__handleReplay)}render(){return`<xg-replay class="xgplayer-replay">\n <xg-replay-txt class="xgplayer-replay-txt" lang-key="${this.i18nKeys.REPLAY}">${this.i18n.REPLAY}</xg-replay-txt>\n </xg-replay>`}}class ka extends Zr{static get pluginName(){return"poster"}static get defaultConfig(){return{isEndedShow:!0,hideCanplay:!1,poster:""}}set isEndedShow(t){this.config.isEndedShow=t}get isEndedShow(){return this.config.isEndedShow}hide(){xo.addClass(this.root,"hide")}show(){xo.removeClass(this.root,"hide")}beforeCreate(t){"string"==typeof t.player.config.poster&&(t.config.poster=t.player.config.poster)}afterCreate(){this.on(Mo,(()=>{this.isEndedShow&&xo.removeClass(this.root,"hide")})),this.config.hideCanplay?(this.once(Bo,(()=>{this.onTimeUpdate()})),this.on(or,(()=>{xo.removeClass(this.root,"hide"),xo.addClass(this.root,"xg-showplay"),this.once(Bo,(()=>{this.onTimeUpdate()}))}))):this.on(Ro,(()=>{xo.addClass(this.root,"hide")}))}onTimeUpdate(){this.player.currentTime?xo.removeClass(this.root,"xg-showplay"):this.once(Bo,(()=>{this.onTimeUpdate()}))}update(t){t&&(this.config.poster=t,this.root.style.backgroundImage=`url(${t})`)}render(){const{poster:t,hideCanplay:e}=this.config;return`<xg-poster class="xgplayer-poster ${e?"xg-showplay":""}" style="${t?`background-image:url(${t});`:""}">\n </xg-poster>`}}function Pa(){return(new DOMParser).parseFromString('<svg class="play" xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="3 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M576,363L810,512L576,661zM342,214L576,363L576,661L342,810z"></path>\n</svg>\n',"image/svg+xml").firstChild}function La(){return(new DOMParser).parseFromString('<svg class="pause" xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="3 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M598,214h170v596h-170v-596zM256 810v-596h170v596h-170z"></path>\n</svg>\n',"image/svg+xml").firstChild}const Aa={};class Ia extends Zr{static get pluginName(){return"start"}static get defaultConfig(){return{isShowPause:!1,isShowEnd:!1,disableAnimate:!1,mode:"hide"}}constructor(e){super(e),t(this,"onAutoplayStart",(()=>{if(this.autoPlayStart)return;const t="auto"===this.config.mode?"auto-hide":"hide";xo.addClass(this.root,t),this.autoPlayStart=!0,this.onPlayPause("play")})),this.autoPlayStart=!1}afterCreate(){const{player:t,playerConfig:e}=this;this.initIcons(),this.once(Jo,(()=>{e&&(e.lang&&"en"===e.lang?xo.addClass(t.root,"lang-is-en"):"jp"===e.lang&&xo.addClass(t.root,"lang-is-jp"))})),this.on(tr,this.onAutoplayStart),e.autoplay||this.show(),this.on(er,(()=>{const t="auto"===this.config.mode?"auto-hide":"hide";this.setAttr("data-state","play"),xo.removeClass(this.root,t),this.show()})),this.on(Ro,(()=>{this.onPlayPause("play")})),this.on(No,(()=>{this.onPlayPause("pause")})),this.clickHandler=this.hook("startClick",this.switchPausePlay,{pre:t=>{t.cancelable&&t.preventDefault(),t.stopPropagation();const{paused:e}=this.player;this.emitUserAction(t,"switch_play_pause",{props:"paused",from:e,to:!e})}}),this.bind(["click","touchend"],this.clickHandler)}registerIcons(){return{startPlay:{icon:Pa,class:"xg-icon-play"},startPause:{icon:La,class:"xg-icon-pause"}}}initIcons(){const{icons:t}=this;this.appendChild("xg-start-inner",t.startPlay),this.appendChild("xg-start-inner",t.startPause)}hide(){xo.addClass(this.root,"hide")}show(){xo.removeClass(this.root,"hide")}focusHide(){xo.addClass(this.root,"focus-hide")}recover(){xo.removeClass(this.root,"focus-hide")}switchStatus(t){t?this.setAttr("data-state",this.player.paused?"pause":"play"):this.setAttr("data-state",this.player.paused?"play":"pause")}animate(t){!function(t,e,i={start:null,end:null}){Aa[t]&&window.clearTimeout(Aa[t].id),Aa[t]={},i.start&&i.start(),Aa[t].id=window.setTimeout((()=>{i.end&&i.end(),window.clearTimeout(Aa[t].id),delete Aa[t]}),e)}("pauseplay",400,{start:()=>{xo.addClass(this.root,"interact"),this.show(),this.switchStatus(!0)},end:()=>{xo.removeClass(this.root,"interact"),!t&&this.hide()}})}switchPausePlay(t){const{player:e}=this;if(t.cancelable&&t.preventDefault(),t.stopPropagation(),e.state<oa)return;this.player.paused||e.state!==ha?e.play():e.pause()}onPlayPause(t){const{config:e,player:i}=this;if(!(i.state<ha)&&this.autoPlayStart){if("show"===e.mode)return this.switchStatus(),void this.show();if("auto"!==e.mode){if(e.isShowPause&&i.paused&&!i.ended||e.isShowEnd&&i.ended)return this.switchStatus(),void this.show();if(e.disableAnimate)return this.switchStatus(),void this.hide();if("play"===t)this.autoPlayStart?this.animate():this.hide();else{if(!this.autoPlayStart||i.ended)return;this.animate()}}else this.switchStatus()}}destroy(){this.unbind(["click","touchend"],this.clickHandler),Object.keys(Aa).map((t=>{window.clearTimeout(Aa[t].id),delete Aa[t]}))}render(){return`\n <xg-start class="xgplayer-start ${this.playerConfig.autoplay?"auto"===this.config.mode?"auto-hide":"hide":""}">\n <xg-start-inner></xg-start-inner>\n </xg-start>`}}class Oa extends Zr{static get pluginName(){return"enter"}static get defaultConfig(){return{innerHtml:"",logo:""}}render(){const{innerHtml:t}=this.config,e=xo.createDom("xg-enter","",{},"xgplayer-enter");if(t&&t instanceof window.HTMLElement)e.appendChild(t);else if(t&&"string"==typeof t)e.innerHTML=t;else{let t="";for(let e=1;e<=12;e++)t+=`<div class="xgplayer-enter-bar${e}"></div>`;e.innerHTML=`<div class="xgplayer-enter-spinner">${t}</div>`}return e}}class Ra extends Zr{static get pluginName(){return"miniscreenIcon"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:10}}afterCreate(){this.getMini=this.getMini.bind(this),this.exitMini=this.exitMini.bind(this),this.bind("click",this.getMini)}getMini(){this.config.onClick&&this.config.onClick()}exitMini(){this.config.onClick&&this.config.onClick()}destroy(){this.unbind(["click","touchend"],this.getMini)}render(){const t="MINISCREEN";return`\n <xg-icon class="xgplayer-miniicon">\n <div class="xgplayer-icon btn-text"><span class="icon-text" lang-key="${this.i18nKeys[t]}">${this.i18n[t]}</span></div>\n </xg-icon>`}}function Da(t){const e=parseFloat(t);return-1===t.indexOf("%")&&!isNaN(e)&&e}const Ma=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],Na=Ma.length;function Fa(t){if("string"==typeof t&&(t=document.querySelector(t)),!t||"object"!=typeof t||!t.nodeType)return;const e=function(t){return window.getComputedStyle(t)}(t);if("none"===e.display)return function(){const t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0};for(let e=0;e<Na;e++)t[Ma[e]]=0;return t}();const i={};i.width=t.offsetWidth,i.height=t.offsetHeight;const s=i.isBorderBox="border-box"===e.boxSizing;for(let p=0;p<Na;p++){const t=Ma[p],s=e[t],n=parseFloat(s);i[t]=isNaN(n)?0:n}const n=i.paddingLeft+i.paddingRight,o=i.paddingTop+i.paddingBottom,r=i.marginLeft+i.marginRight,a=i.marginTop+i.marginBottom,l=i.borderLeftWidth+i.borderRightWidth,h=i.borderTopWidth+i.borderBottomWidth,c=s,u=Da(e.width);!1!==u&&(i.width=u+(c?0:n+l));const d=Da(e.height);return!1!==d&&(i.height=d+(c?0:o+h)),i.innerWidth=i.width-(n+l),i.innerHeight=i.height-(o+h),i.outerWidth=i.width+r,i.outerHeight=i.height+a,i}function Ha(t,e){for(let i=0;i<t.length;i++){const s=t[i];if(s.identifier===e)return s}}const Ua="dragStart",Ba="dragMove",ja="dragEnded",$a={mousedown:["mousemove","mouseup"],touchstart:["touchmove","touchend","touchcancel"],pointerdown:["pointermove","pointerup","pointercancel"]};class Va extends yo{constructor(t,e={}){super(),this.isEnabled=!0,this.isDragging=!1,this.isDown=!1,this.position={},this.downPoint={},this.dragPoint={x:0,y:0},this.startPos={x:0,y:0},this._root=t instanceof Element?t:document.querySelector(t),this._handlerDom=e.handle instanceof Element?e.handle:document.querySelector(e.handle),this._root&&this._handlerDom&&this._bindStartEvent()}_bindStartEvent(){"ontouchstart"in window?this._startKey="touchstart":this._startKey="mousedown",this[`on${this._startKey}`]=this[`on${this._startKey}`].bind(this),this._handlerDom.addEventListener(this._startKey,this[`on${this._startKey}`]),$a[this._startKey].map((t=>{this[`on${t}`]=this[`on${t}`].bind(this)}))}_unbindStartEvent(){this._handlerDom.removeEventListener(this._startKey,this[`on${this._startKey}`])}_bindPostStartEvents(t){if(!t)return;const e=$a[this._startKey];e.map((t=>{window.addEventListener(t,this[`on${t}`])})),this._boundPointerEvents=e}_unbindPostStartEvents(){this._boundPointerEvents&&(this._boundPointerEvents.map((t=>{window.removeEventListener(t,this[`on${t}`])})),delete this._boundPointerEvents)}enable(){this.isEnabled=!0}disable(){this.isEnabled=!1,this.isDragging&&this.onUp()}onDocUp(t){this.onUp()}animate(){this.isDragging&&(this.positionDrag(),window.requestAnimationFrame((()=>{this.animate()})))}positionDrag(){const t=`translate3d(${this.dragPoint.x}px, ${this.dragPoint.y}px, 0)`;this._root.style.transform=t,this._root.style.webKitTransform=t}setLeftTop(){this._root.style.left=this.position.x+"px",this._root.style.top=this.position.y+"px"}onmousedown(t){this.dragStart(t,t)}onmousemove(t){this.dragMove(t,t)}onmouseup(t){this.dragEnd(t,t)}ontouchstart(t){const e=t.changedTouches[0];this.dragStart(t,e),this.touchIdentifier=void 0!==e.pointerId?e.pointerId:e.identifier,t.preventDefault()}ontouchmove(t){const e=Ha(t.changedTouches,this.touchIdentifier);e&&this.dragMove(t,e)}ontouchend(t){const e=Ha(t.changedTouches,this.touchIdentifier);e&&this.dragEnd(t,e),t.preventDefault()}ontouchcancel(t){const e=Ha(t.changedTouches,this.touchIdentifier);e&&this.dragCancel(t,e)}dragStart(t,e){if(!this._root||this.isDown||!this.isEnabled)return;this.downPoint=e,this.dragPoint.x=0,this.dragPoint.y=0,this._getPosition();const i=Fa(this._root);this.startPos.x=this.position.x,this.startPos.y=this.position.y,this.startPos.maxY=window.innerHeight-i.height,this.startPos.maxX=window.innerWidth-i.width,this.setLeftTop(),this.isDown=!0,this._bindPostStartEvents(t)}dragRealStart(t,e){this.isDragging=!0,this.animate(),this.emit(Ua,this.startPos)}dragEnd(t,e){this._root&&(this._unbindPostStartEvents(),this.isDragging&&(this._root.style.transform="",this.setLeftTop(),this.emit(ja)),this.presetInfo())}_dragPointerMove(t,e){const i={x:e.pageX-this.downPoint.pageX,y:e.pageY-this.downPoint.pageY};return!this.isDragging&&this.hasDragStarted(i)&&this.dragRealStart(t,e),i}dragMove(t,e){if(t=t||window.event,!this.isDown)return;const{x:i,y:s}=this.startPos,n=this._dragPointerMove(t,e);let o=n.x,r=n.y;o=this.checkContain("x",o,i),r=this.checkContain("y",r,s),this.position.x=i+o,this.position.y=s+r,this.dragPoint.x=o,this.dragPoint.y=r,this.emit(Ba,this.position)}dragCancel(t,e){this.dragEnd(t,e)}presetInfo(){this.isDragging=!1,this.startPos={x:0,y:0},this.dragPoint={x:0,y:0},this.isDown=!1}destroy(){this._unbindStartEvent(),this._unbindPostStartEvents(),this.isDragging&&this.dragEnd(),this.removeAllListeners(),this._handlerDom=null}hasDragStarted(t){return Math.abs(t.x)>3||Math.abs(t.y)>3}checkContain(t,e,i){return e+i<0?0-i:"x"===t&&e+i>this.startPos.maxX?this.startPos.maxX-i:"y"===t&&e+i>this.startPos.maxY?this.startPos.maxY-i:e}_getPosition(){const t=window.getComputedStyle(this._root),e=this._getPositionCoord(t.left,"width"),i=this._getPositionCoord(t.top,"height");this.position.x=isNaN(e)?0:e,this.position.y=isNaN(i)?0:i,this._addTransformPosition(t)}_addTransformPosition(t){const e=t.transform;if(0!==e.indexOf("matrix"))return;const i=e.split(","),s=0===e.indexOf("matrix3d")?12:4,n=parseInt(i[s],10),o=parseInt(i[s+1],10);this.position.x+=n,this.position.y+=o}_getPositionCoord(t,e){if(-1!==t.indexOf("%")){const i=Fa(this._root.parentNode);return i?parseFloat(t)/100*i[e]:0}return parseInt(t,10)}}class Ga extends Zr{static get pluginName(){return"miniscreen"}static get defaultConfig(){return{index:10,disable:!1,width:320,height:180,left:-1,top:-1,isShowIcon:!1,isScrollSwitch:!1,scrollTop:0,disableDrag:!1}}constructor(e){super(e),t(this,"onCancelClick",(t=>{this.exitMini(),this.isClose=!0})),t(this,"onCenterClick",(t=>{const{player:e}=this;e.paused?e.play():e.pause()})),t(this,"onScroll",(t=>{if(!window.scrollY&&0!==window.scrollY||Math.abs(window.scrollY-this.pos.scrollY)<50)return;let e=parseInt(xo.getCss(this.player.root,"height"));e+=this.config.scrollTop,this.pos.scrollY=window.scrollY,window.scrollY>e+5?!this.isMini&&!this.isClose&&this.getMini():window.scrollY<=e&&(this.isMini&&this.exitMini(),this.isClose=!1)})),this.isMini=!1,this.isClose=!1;const{config:i}=this;this.pos={left:i.left<0?window.innerWidth-i.width-20:i.left,top:i.top<0?window.innerHeight-i.height-20:i.top,height:this.config.height,width:this.config.width,scrollY:window.scrollY||0},this.lastStyle=null}beforeCreate(t){"boolean"==typeof t.player.config.mini&&(t.config.isShowIcon=t.player.config.mini)}afterCreate(){this.initIcons(),this.on(No,(()=>{this.setAttr("data-state","pause")})),this.on(Ro,(()=>{this.setAttr("data-state","play")}))}onPluginsReady(){const{player:t,config:e}=this;if(e.disable)return;if(this.config.isShowIcon){const e={config:{onClick:()=>{this.getMini()}}};t.controls.registerPlugin(Ra,e,Ra.pluginName)}const i=xo.checkTouchSupport()?"touchend":"click";this.bind(".mini-cancel-btn",i,this.onCancelClick),this.bind(".play-icon",i,this.onCenterClick),this.config.disableDrag||(this._draggabilly=new Va(this.player.root,{handle:this.root})),this.config.isScrollSwitch&&window.addEventListener("scroll",this.onScroll)}registerIcons(){return{play:{icon:Pa,class:"xg-icon-play"},pause:{icon:La,class:"xg-icon-pause"}}}initIcons(){const{icons:t}=this;this.appendChild(".play-icon",t.play),this.appendChild(".play-icon",t.pause)}getMini(){if(this.isMini)return;const{player:t,playerConfig:e}=this,i=this.config.target||this.player.root;this.lastStyle={},xo.addClass(t.root,"xgplayer-mini"),["width","height","top","left"].map((t=>{this.lastStyle[t]=i.style[t],i.style[t]=`${this.pos[t]}px`})),e.fluid&&(i.style["padding-top"]=""),this.emit(hr,!0),t.isMini=this.isMini=!0}exitMini(){if(!this.isMini)return!1;const{player:t,playerConfig:e}=this,i=this.config.target||this.player.root;xo.removeClass(t.root,"xgplayer-mini"),this.lastStyle&&Object.keys(this.lastStyle).map((t=>{i.style[t]=this.lastStyle[t]})),this.lastStyle=null,e.fluid&&(t.root.style.width="100%",t.root.style.height="0",t.root.style["padding-top"]=100*e.height/e.width+"%"),this.emit(hr,!1),this.isMini=t.isMini=!1}destroy(){window.removeEventListener("scroll",this.onScroll);const t=xo.checkTouchSupport()?"touchend":"click";this.unbind(".mini-cancel-btn",t,this.onCancelClick),this.unbind(".play-icon",t,this.onCenterClick),this._draggabilly&&this._draggabilly.destroy(),this._draggabilly=null,this.exitMini()}render(){if(!this.config.disable)return`\n <xg-mini-layer class="xg-mini-layer">\n <xg-mini-header class="xgplayer-mini-header">\n <div lang-key="${this.i18nKeys.MINI_DRAG}">${this.i18n.MINI_DRAG}</div>\n </xg-mini-header>\n <div class="mini-cancel-btn">\n <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20">\n <path fill="#fff" fill-rule="evenodd" d="M3.99 3.49a1 1 0 0 1 1.414 0L10 8.085l4.596-4.595a1 1 0 1 1 1.414 1.414L11.414 9.5l4.596 4.596a1 1 0 0 1 .084 1.32l-.084.094a1 1 0 0 1-1.414 0L10 10.914 5.404 15.51a1 1 0 0 1-1.414-1.414L8.585 9.5 3.99 4.904a1 1 0 0 1-.084-1.32z"></path>\n </svg>\n </div>\n <div class="play-icon">\n </div>\n </xg-mini-layer>`}}const Wa={mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mousemove:"onMouseMove"},za=["videoClick","videoDbClick"];class Ya extends Br{constructor(...e){super(...e),t(this,"onMouseMove",(t=>{const{player:e,playerConfig:i}=this;e.isActive||(e.focus({autoHide:!i.closeDelayBlur}),!i.closeFocusVideoFocus&&e.video.focus())})),t(this,"onMouseEnter",(t=>{const{playerConfig:e,player:i}=this;i.focus({autoHide:!e.closeDelayBlur}),!e.closeFocusVideoFocus&&i.video.focus()})),t(this,"onMouseLeave",(t=>{const{closePlayerBlur:e,leavePlayerTime:i,closeDelayBlur:s}=this.playerConfig;e||s||(i?this.player.focus({autoHide:!0,delay:i}):this.player.blur())})),t(this,"onVideoClick",(t=>{const{player:e,playerConfig:i}=this;t.target&&i.closeVideoClick||t.target!==e.video&&t.target!==e.innerContainer&&t.target!==e.video.__canvas||(t.preventDefault(),i.closeVideoStopPropagation||t.stopPropagation(),this._clickCount++,this.clickTimer&&(clearTimeout(this.clickTimer),this.clickTimer=null),this.clickTimer=setTimeout((()=>{this._clickCount&&(this._clickCount--,Hr(this,za[0],((t,e)=>{this.switchPlayPause(e.e)}),{e:t,paused:e.paused}),clearTimeout(this.clickTimer),this.clickTimer=null)}),300))})),t(this,"onVideoDblClick",(t=>{const{player:e,playerConfig:i}=this;!t.target||t.target!==e.video&&t.target!==e.video.__canvas||(this._clickCount<2?this._clickCount=0:(this._clickCount=0,this.clickTimer&&(clearTimeout(this.clickTimer),this.clickTimer=null),t.preventDefault(),t.stopPropagation(),i.closeVideoDblclick||Hr(this,za[1],((t,i)=>{this.emitUserAction(i.e,"switch_fullscreen",{props:"fullscreen",from:e.fullscreen,to:!e.fullscreen}),e.fullscreen?e.exitFullscreen():e.getFullscreen()}),{e:t,fullscreen:e.fullscreen})))}))}static get pluginName(){return"pc"}static get defaultConfig(){return{disableContextmenu:!0}}afterCreate(){this._clickCount=0,za.map((t=>{this.__hooks[t]=null}));const{enableContextmenu:t,isMobileSimulateMode:e}=this.playerConfig;"mobile"===e||"mobile"===Lo.device&&!Lo.os.isIpad||(this.config.disableContextmenu=!t,this.initEvents())}initEvents(){const{video:t,root:e}=this.player;t.addEventListener("click",this.onVideoClick,!1),t.addEventListener("dblclick",this.onVideoDblClick,!1),Object.keys(Wa).map((t=>{e.addEventListener(t,this[Wa[t]],!1)})),this.config.disableContextmenu&&t.addEventListener("contextmenu",this.onContextmenu,!1)}switchPlayPause(t){const{player:e}=this;this.emitUserAction(t,"switch_play_pause",{props:"paused",from:e.paused,to:!e.paused}),e.ended?e.duration!==1/0&&e.duration>0&&e.replay():e.paused?e.play():e.pause()}onContextmenu(t){(t=t||window.event).preventDefault&&t.preventDefault(),t.stopPropagation?t.stopPropagation():(t.returnValue=!1,t.cancelBubble=!0)}destroy(){const{video:t,root:e}=this.player;this.clickTimer&&clearTimeout(this.clickTimer),t.removeEventListener("click",this.onVideoClick,!1),t.removeEventListener("dblclick",this.onVideoDblClick,!1),t.removeEventListener("contextmenu",this.onContextmenu,!1),Object.keys(Wa).map((t=>{e.removeEventListener(t,this[Wa[t]],!1)}))}}const Ka="press",Xa="pressend",qa="doubleclick",Za="click",Ja="touchmove",Qa="touchstart",tl="touchend",el={start:"touchstart",end:"touchend",move:"touchmove",cancel:"touchcancel"},il={start:"mousedown",end:"mouseup",move:"mousemove",cancel:"mouseleave"};function sl(t){return t&&t.length>0?t[t.length-1]:null}function nl(t){const e=navigator.userAgent;/(?:iPhone|iPad)/.test(e)&&t.cancelable&&t.preventDefault()}class ol{constructor(t,e={eventType:"touch"}){this._pos={moving:!1,start:!1,x:0,y:0},this.config={pressDelay:600,dbClickDelay:200,disablePress:!1,disableDbClick:!1,miniStep:2,needPreventDefault:!0},Object.keys(e).map((t=>{this.config[t]=e[t]})),this.root=t,this.events="mouse"===e.eventType?il:el,this.pressIntrvalId=null,this.dbIntrvalId=null,this.__handlers={},this._initEvent()}_initEvent(){this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this),this.onTouchCancel=this.onTouchCancel.bind(this),this.root.addEventListener(this.events.start,this.onTouchStart)}__setPress(t){const{config:e}=this;this.pressIntrvalId&&this.__clearPress(),this.pressIntrvalId=setTimeout((()=>{this.trigger(Ka,t),this._pos.press=!0,this.__clearPress()}),e.pressDelay)}__clearPress(){window.clearTimeout(this.pressIntrvalId),this.pressIntrvalId=null}__setDb(t){const{config:e}=this;if(this.dbIntrvalId)return this.__clearDb(),void this.trigger(qa,t);this.dbIntrvalId=setTimeout((()=>{this.__clearDb(),this._pos.start||this._pos.press||this._pos.moving||this.trigger(Za,t)}),e.dbClickDelay)}__clearDb(){clearTimeout(this.dbIntrvalId),this.dbIntrvalId=null}on(t,e){this.__handlers[t]||(this.__handlers[t]=[]),this.__handlers[t].push(e)}off(t,e){if(!this.__handlers[t])return;const i=this.__handlers[t];let s=-1;for(let n=0;n<i.length;n++)if(i[n]===e){s=n;break}s>=0&&this.__handlers[t].splice(s,1)}trigger(t,e){this.__handlers[t]&&this.__handlers[t].map((i=>{try{i(e)}catch(s){console.error(`trigger>>:${t}`,s)}}))}onTouchStart(t){const{_pos:e,root:i,config:s}=this;s.needPreventDefault&&nl(t);const n=sl(t.touches);e.x=n?parseInt(n.pageX,10):t.pageX,e.y=n?parseInt(n.pageX,10):t.pageX,e.start=!0,this.__setPress(t),i.addEventListener(this.events.end,this.onTouchEnd),i.addEventListener(this.events.cancel,this.onTouchCancel),i.addEventListener(this.events.move,this.onTouchMove),this.trigger(Qa,t)}onTouchCancel(t){this.onTouchEnd(t)}onTouchEnd(t){const{_pos:e,root:i,config:s}=this;s.needPreventDefault&&nl(t),this.__clearPress(),i.removeEventListener(this.events.cancel,this.onTouchCancel),i.removeEventListener(this.events.end,this.onTouchEnd),i.removeEventListener(this.events.move,this.onTouchMove),t.moving=e.moving,t.press=e.press,e.press&&this.trigger(Xa,t),this.trigger(tl,t),!e.press&&!e.moving&&this.__setDb(t),e.press=!1,e.start=!1,e.moving=!1}onTouchMove(t){const{_pos:e,config:i}=this,s=sl(t.touches),n=s?parseInt(s.pageX,10):t.pageX,o=s?parseInt(s.pageY,10):t.pageX,r=n-e.x,a=o-e.y;Math.abs(a)<i.miniStep&&Math.abs(r)<i.miniStep||(this.__clearPress(),e.press&&this.trigger(Xa,t),e.press=!1,e.moving=!0,this.trigger(Ja,t))}destroy(){const t={touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart"};Object.keys(t).map((e=>{this.root.removeEventListener("touchend",this[t[e]])}))}}function rl(){return(new DOMParser).parseFromString('<svg width="20" height="9" viewBox="0 0 8 9" fill="none" xmlns="http://www.w3.org/2000/svg"\n xmlns:xlink="http://www.w3.org/1999/xlink">\n <path opacity="0.54"\n d="M7.5 3.63397C8.16667 4.01887 8.16667 4.98113 7.5 5.36603L1.5 8.83013C0.833334 9.21503 0 8.7339 0 7.9641L0 1.0359C0 0.266098 0.833333 -0.215027 1.5 0.169873L7.5 3.63397Z"\n fill="white" />\n <path transform="translate(5 0)" d="M7.5 3.63397C8.16667 4.01887 8.16667 4.98113 7.5 5.36603L1.5 8.83013C0.833334 9.21503 0 8.7339 0 7.9641L0 1.0359C0 0.266098 0.833333 -0.215027 1.5 0.169873L7.5 3.63397Z" fill="white"/>\n</svg>',"image/svg+xml").firstChild}const al="auto",ll="seeking",hl="playbackrate";class cl extends Zr{static get pluginName(){return"mobile"}static get defaultConfig(){return{index:0,disableGesture:!1,gestureX:!0,gestureY:!0,gradient:"normal",isTouchingSeek:!1,miniMoveStep:5,miniYPer:5,scopeL:.25,scopeR:.25,scopeM:.9,pressRate:2,darkness:!0,maxDarkness:.8,disableActive:!1,disableTimeProgress:!1,hideControlsActive:!1,hideControlsEnd:!1,moveDuration:36e4,closedbClick:!1,disablePress:!0,disableSeekIcon:!1,focusVideoClick:!1}}constructor(e){super(e),t(this,"onTouchStart",(t=>{const{player:e,config:i,pos:s,playerConfig:n}=this,o=this.getTouche(t);if(o&&!i.disableGesture&&this.duration>0&&!e.ended){s.isStart=!0,xo.checkIsFunction(n.disableSwipeHandler)&&n.disableSwipeHandler(),this.find(".xg-dur").innerHTML=xo.format(this.duration);const t=this.root.getBoundingClientRect();90===e.rotateDeg?(s.top=t.left,s.left=t.top,s.width=t.height,s.height=t.width):(s.top=t.top,s.left=t.left,s.width=t.width,s.height=t.height);const r=parseInt(o.pageX-s.left,10),a=parseInt(o.pageY-s.top,10);s.x=90===e.rotateDeg?a:r,s.y=90===e.rotateDeg?r:a,s.scopeL=i.scopeL*s.width,s.scopeR=(1-i.scopeR)*s.width,s.scopeM1=s.width*(1-i.scopeM)/2,s.scopeM2=s.width-s.scopeM1}})),t(this,"onTouchMove",(t=>{const e=this.getTouche(t),{pos:i,config:s,player:n}=this;if(!e||s.disableGesture||!this.duration||!i.isStart)return;const{miniMoveStep:o,hideControlsActive:r}=s,a=parseInt(e.pageX-i.left,10),l=parseInt(e.pageY-i.top,10),h=90===n.rotateDeg?l:a,c=90===n.rotateDeg?a:l;if(Math.abs(h-i.x)>o||Math.abs(c-i.y)>o){const e=h-i.x,o=c-i.y;let a=i.scope;if(-1===a&&(a=this.checkScope(h,c,e,o,i),0===a&&(r?n.blur():n.focus({autoHide:!1}),!i.time&&(i.time=parseInt(1e3*n.currentTime,10)+1e3*this.timeOffset)),i.scope=a),-1===a||a>0&&!s.gestureY||0===a&&!s.gestureX)return;t.cancelable&&t.preventDefault(),this.executeMove(e,o,a,i.width,i.height),i.x=h,i.y=c}})),t(this,"onTouchEnd",(t=>{const{player:e,pos:i,playerConfig:s}=this;i.isStart&&(i.scope>-1&&t.cancelable&&t.preventDefault(),this.endLastMove(i.scope),setTimeout((()=>{e.getPlugin("progress")&&e.getPlugin("progress").resetSeekState()}),10),i.scope=-1,this.resetPos(),xo.checkIsFunction(s.enableSwipeHandler)&&s.enableSwipeHandler(),this.changeAction(al))})),t(this,"onRootTouchMove",(t=>{!this.config.disableGesture&&this.config.gestureX&&this.checkIsRootTarget(t)&&(t.stopPropagation(),this.pos.isStart?this.onTouchMove(t):this.onTouchStart(t))})),t(this,"onRootTouchEnd",(t=>{this.pos.isStart&&this.checkIsRootTarget(t)&&(t.stopPropagation(),this.onTouchEnd(t))})),this.pos={isStart:!1,x:0,y:0,time:0,volume:0,rate:1,light:0,width:0,height:0,scopeL:0,scopeR:0,scopeM1:0,scopeM2:0,scope:-1},this.timer=null}get duration(){return this.playerConfig.customDuration||this.player.duration}get timeOffset(){return this.playerConfig.timeOffset||0}registerIcons(){return{seekTipIcon:{icon:rl,class:"xg-seek-pre"}}}afterCreate(){const{playerConfig:t,config:e,player:i}=this;!0===t.closeVideoDblclick&&(e.closedbClick=!0),this.resetPos(),xo.isUndefined(t.disableGesture)||(e.disableGesture=!!t.disableGesture),this.appendChild(".xg-seek-icon",this.icons.seekTipIcon),this.xgMask=xo.createDom("xg-mask","",{},"xgmask"),i.root.appendChild(this.xgMask),this.initCustomStyle(),this.registerThumbnail();const s=this.domEventType;this.touch=new ol(this.root,{eventType:s,needPreventDefault:!this.config.disableGesture}),this.root.addEventListener("contextmenu",(t=>{t.preventDefault()})),i.root.addEventListener("touchmove",this.onRootTouchMove,!0),i.root.addEventListener("touchend",this.onRootTouchEnd,!0),this.on(Vo,(()=>{const{player:t,config:e}=this;1e3*t.duration<e.moveDuration&&(e.moveDuration=1e3*t.duration)})),this.on([$o,Mo],(()=>{const{time:t,isStart:e}=this.pos;!e&&t>0&&(this.pos.time=0)}));const n={touchstart:"onTouchStart",touchmove:"onTouchMove",touchend:"onTouchEnd",press:"onPress",pressend:"onPressEnd",click:"onClick",doubleclick:"onDbClick"};if(Object.keys(n).map((t=>{this.touch.on(t,(e=>{this[n[t]](e)}))})),!e.disableActive){const t=i.plugins.progress;t&&(t.addCallBack("dragmove",(t=>{this.activeSeekNote(t.currentTime,t.forward)})),t.addCallBack("dragend",(()=>{this.changeAction(al)})))}}registerThumbnail(){const{player:t}=this,{thumbnail:e}=t.plugins;if(e&&e.usable){this.thumbnail=e.createThumbnail(null,"mobile-thumbnail");const t=this.find(".time-preview");t.insertBefore(this.thumbnail,t.children[0])}}initCustomStyle(){const{commonStyle:t}=this.playerConfig||{},{playedColor:e,progressColor:i}=t;e&&(this.find(".xg-curbar").style.backgroundColor=e,this.find(".xg-cur").style.color=e),i&&(this.find(".xg-bar").style.backgroundColor=i,this.find(".time-preview").style.color=i),this.config.disableTimeProgress&&xo.addClass(this.find(".xg-timebar"),"hide")}resetPos(t=0){this.pos?(this.pos.isStart=!1,this.pos.scope=-1,["x","y","width","height","scopeL","scopeR","scopeM1","scopeM2"].map((t=>{this.pos[t]=0}))):this.pos={isStart:!1,x:0,y:0,volume:0,rate:1,light:0,width:0,height:0,scopeL:0,scopeR:0,scopeM1:0,scopeM2:0,scope:-1,time:0}}changeAction(t){const{player:e,root:i}=this;i.setAttribute("data-xg-action",t);const s=e.plugins.start;s&&s.recover()}getTouche(t){this.player.rotateDeg;const e=t.touches&&t.touches.length>0?t.touches[t.touches.length-1]:t;return{pageX:e.pageX,pageY:e.pageY}}checkScope(t,e,i,s,n){const{width:o}=n;let r=-1;if(t<0||t>o)return r;const a=0===s?Math.abs(i):Math.abs(i/s);return Math.abs(i)>0&&a>=1.73&&t>n.scopeM1&&t<n.scopeM2?r=0:(0===Math.abs(i)||a<=.57)&&(r=t<n.scopeL?1:t>n.scopeR?2:3),r}executeMove(t,e,i,s,n){switch(i){case 0:this.updateTime(t/s*this.config.scopeM);break;case 1:this.updateBrightness(e/n);break;case 2:Lo.os.isIos||this.updateVolume(e/n)}}endLastMove(t){const{pos:e,player:i,config:s}=this,n=(e.time-this.timeOffset)/1e3;if(0===t)i.seek(Number(n).toFixed(1)),s.hideControlsEnd?i.blur():i.focus(),this.timer=setTimeout((()=>{this.pos.time=0}),500);this.changeAction(al)}checkIsRootTarget(t){const e=this.player.plugins||{};return(!e.progress||!e.progress.root.contains(t.target))&&(e.start&&e.start.root.contains(t.target)||e.controls&&e.controls.root.contains(t.target))}sendUseAction(t){const{paused:e}=this.player;this.emitUserAction(t,"switch_play_pause",{prop:"paused",from:e,to:!e})}onClick(t){const{player:e,config:i,playerConfig:s}=this;e.state<ha?s.closeVideoClick||(this.sendUseAction(new Event("click")),e.play()):!i.closedbClick||s.closeVideoClick?e.isActive?e.blur():e.focus():s.closeVideoClick||((e.isActive||i.focusVideoClick)&&(this.emitUserAction("click","switch_play_pause"),this.switchPlayPause()),e.focus())}onDbClick(t){const{config:e,player:i}=this;!e.closedbClick&&i.state>=ha&&(this.sendUseAction(new Event("dblclick")),this.switchPlayPause())}onPress(t){const{pos:e,config:i,player:s}=this;i.disablePress||(e.rate=this.player.playbackRate,this.emitUserAction("press","change_rate",{prop:"playbackRate",from:s.playbackRate,to:i.pressRate}),s.playbackRate=i.pressRate,this.changeAction(hl))}onPressEnd(t){const{pos:e,config:i,player:s}=this;i.disablePress||(this.emitUserAction("pressend","change_rate",{prop:"playbackRate",from:s.playbackRate,to:e.rate}),s.playbackRate=e.rate,e.rate=1,this.changeAction(al))}updateTime(t){const{player:e,config:i}=this,{duration:s}=this.player;t=Number(t.toFixed(4));let n=parseInt(t*i.moveDuration,10)+this.timeOffset;n+=this.pos.time,n=n<0?0:n>1e3*s?1e3*s-200:n,e.getPlugin("time")&&e.getPlugin("time").updateTime(n/1e3),e.getPlugin("progress")&&e.getPlugin("progress").updatePercent(n/1e3/this.duration,!0),this.activeSeekNote(n/1e3,t>0),i.isTouchingSeek&&e.seek(Number((n-this.timeOffset)/1e3).toFixed(1)),this.pos.time=n}updateVolume(t){this.player.rotateDeg&&(t=-t);const{player:e,pos:i}=this;if(t=parseInt(100*t,10),i.volume+=t,Math.abs(i.volume)<10)return;let s=parseInt(10*e.volume,10)-parseInt(i.volume/10,10);s=s>10?10:s<1?0:s,e.volume=s/10,i.volume=0}updateBrightness(t){this.player.rotateDeg&&(t=-t);const{pos:e,config:i,xgMask:s}=this;let n=e.light+.8*t;n=n>i.maxDarkness?i.maxDarkness:n<0?0:n,s&&(s.style.backgroundColor=`rgba(0,0,0,${n})`),e.light=n}activeSeekNote(t,e=!0){const{player:i,config:s}=this,n=!(this.duration!==1/0&&this.duration>0);if(!t||"number"!=typeof t||n||s.disableActive)return;t<0?t=0:t>i.duration&&(t=i.duration-.2),this.changeAction(ll);const o=i.plugins.start;o&&o.focusHide(),this.find(".xg-dur").innerHTML=xo.format(this.duration),this.find(".xg-cur").innerHTML=xo.format(t),this.find(".xg-curbar").style.width=t/this.duration*100+"%",e?xo.removeClass(this.find(".xg-seek-show"),"xg-back"):xo.addClass(this.find(".xg-seek-show"),"xg-back"),this.updateThumbnails(t)}updateThumbnails(t){const{player:e}=this,{thumbnail:i}=e.plugins;i&&i.usable&&this.thumbnail&&i.update(this.thumbnail,t,160,90)}switchPlayPause(){const{player:t}=this;if(t.state<aa)return!1;t.ended||(t.paused?t.play():t.pause())}disableGesture(){this.config.disableGesture=!1}enableGesture(){this.config.disableGesture=!0}destroy(){const{player:t}=this;this.timer&&clearTimeout(this.timer),this.thumbnail=null,t.root.removeChild(this.xgMask),this.xgMask=null,this.touch&&this.touch.destroy(),this.touch=null,t.root.removeEventListener("touchmove",this.onRootTouchMove,!0),t.root.removeEventListener("touchend",this.onRootTouchEnd,!0)}render(){return`\n <xg-trigger class="trigger">\n <div class="${"normal"!==this.config.gradient?`gradient ${this.config.gradient}`:"gradient"}"></div>\n <div class="time-preview">\n <div class="xg-seek-show ${this.config.disableSeekIcon?" hide-seek-icon":""}">\n <i class="xg-seek-icon"></i>\n <span class="xg-cur">00:00</span>\n <span>/</span>\n <span class="xg-dur">00:00</span>\n </div>\n <div class="xg-bar xg-timebar">\n <div class="xg-curbar"></div>\n </div>\n </div>\n <div class="xg-playbackrate xg-top-note">\n <span><i>${this.config.pressRate}X</i>${this.i18n.FORWARD}</span>\n </div>\n </xg-trigger>\n `}}function ul(t){t.preventDefault(),t.returnValue=!1}class dl extends Br{constructor(...e){super(...e),t(this,"onBodyKeyDown",(t=>{const e=t||window.event;if(!this.player||!this.player.isUserActive&&!this.config.isIgnoreUserActive)return;if(this.config.disable||this.config.disableBodyTrigger||!this.checkIsVisible()||e.metaKey||e.altKey||e.ctrlKey)return;const i=e.keyCode;return!(e.target!==document.body&&(!this.config.isGlobalTrigger||function(t){const e=t.tagName;return!("INPUT"!==e&&"TEXTAREA"!==e&&!t.isContentEditable)}(e.target))||!this.checkCode(i,!0))&&(ul(e),this.handleKeyCode(i,t),!1)})),t(this,"onKeydown",(t=>{const e=t||window.event;if(!(this.config.disable||this.config.disableRootTrigger||e.metaKey||e.altKey||e.ctrlKey)&&(this.player.isUserActive||this.config.isIgnoreUserActive)&&(this.player.isUserActive||this.config.isIgnoreUserActive)){if(!e||37!==e.keyCode&&!this.checkCode(e.keyCode)||e.target!==this.player.root&&e.target!==this.player.video&&e.target!==this.player.controls.el)return!0;ul(e),this.handleKeyCode(e.keyCode,t)}}))}static get pluginName(){return"keyboard"}static get defaultConfig(){return{seekStep:10,checkVisible:!0,disableBodyTrigger:!1,disableRootTrigger:!1,isGlobalTrigger:!1,keyCodeMap:{},disable:!1,isIgnoreUserActive:!1}}mergekeyCodeMap(){const t=this.config.keyCodeMap;t&&Object.keys(t).map((e=>{this.keyCodeMap[e]?["keyCode","action","disable","isBodyTarget"].map((i=>{t[e][i]&&(this.keyCodeMap[e][i]=t[e][i])})):this.keyCodeMap[e]=t[e]}))}afterCreate(){this.config.disable=!this.playerConfig.keyShortcut;const t="function"==typeof this.config.seekStep?this.config.seekStep(this.player):this.config.seekStep;t&&"number"==typeof t&&(this.seekStep=t),this.keyCodeMap={space:{keyCode:32,action:"playPause",disable:!1,noBodyTarget:!1},up:{keyCode:38,action:"upVolume",disable:!1,noBodyTarget:!0},down:{keyCode:40,action:"downVolume",disable:!1,noBodyTarget:!0},left:{keyCode:37,action:"seekBack",disable:!1},right:{keyCode:39,action:"seek",disable:!1},esc:{keyCode:27,action:"exitFullscreen",disable:!1}},this.mergekeyCodeMap(),this.player.root.addEventListener("keydown",this.onKeydown),document.addEventListener("keydown",this.onBodyKeyDown)}checkIsVisible(){if(!this.config.checkVisible)return!0;const t=this.player.root.getBoundingClientRect(),{height:e,top:i,bottom:s}=t,n=window.innerHeight;return!(i<0&&i<0-.9*e||s>0&&s-n>.9*e)}checkCode(t,e){let i=!1;return Object.keys(this.keyCodeMap).map((s=>{this.keyCodeMap[s]&&t===this.keyCodeMap[s].keyCode&&!this.keyCodeMap[s].disable&&(i=!e||e&&!this.keyCodeMap[s].noBodyTarget)})),i}downVolume(t){const{player:e}=this,i=parseFloat((e.volume-.1).toFixed(1)),s={volume:{from:e.volume,to:i}};this.emitUserAction(t,"change_volume",{props:s}),e.volume=i>=0?i:0}upVolume(t){const{player:e}=this,i=parseFloat((e.volume+.1).toFixed(1)),s={volume:{from:e.volume,to:i}};this.emitUserAction(t,"change_volume",{props:s}),e.volume=i<=1?i:1}seek(t){const{currentTime:e,duration:i}=this.player;let s=e;s=e+this.seekStep<=i?e+this.seekStep:i-1;const n={currentTime:{from:e,to:s}};this.emitUserAction(t,"seek",{props:n}),this.player.currentTime=s}seekBack(t){const{currentTime:e}=this.player;let i=0;e-this.seekStep>=0&&(i=e-this.seekStep);const s={currentTime:{from:e,to:i}};this.emitUserAction(t,"seek",{props:s}),this.player.currentTime=i}playPause(t){const{player:e}=this;e&&(this.emitUserAction(t,"switch_play_pause"),e.paused?e.play():e.pause())}exitFullscreen(t){const{player:e}=this,{fullscreen:i,cssfullscreen:s}=e;i&&(this.emitUserAction("keyup","switch_fullscreen",{prop:"fullscreen",from:i,to:!i}),e.exitFullscreen()),s&&(this.emitUserAction("keyup","switch_css_fullscreen",{prop:"cssfullscreen",from:s,to:!s}),e.exitCssFullscreen())}handleKeyCode(t,e){Object.keys(this.keyCodeMap).map((i=>{const{action:s,keyCode:n,disable:o}=this.keyCodeMap[i];n!==t||o||("function"==typeof s?s(e,this.player):"string"==typeof s&&"function"==typeof this[s]&&this[s](e,this.player),this.emit(yr,{key:i,target:e.target,...this.keyCodeMap[i]}))}))}destroy(){this.player.root.removeEventListener("keydown",this.onKeydown),document.removeEventListener("keydown",this.onBodyKeyDown)}disable(){this.config.disable=!0}enable(){this.config.disable=!1}}function pl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="-5 -5 110 110">\n <path d="M100,50A50,50,0,1,1,50,0" stroke-width="5" stroke="#ddd" stroke-dasharray="236" fill="none"></path>\n</svg>\n',"image/svg+xml").firstChild}class gl extends Zr{static get pluginName(){return"loading"}static get defaultConfig(){return{position:Yr.ROOT}}registerIcons(){return{loadingIcon:pl}}afterCreate(){this.appendChild("xg-loading-inner",this.icons.loadingIcon)}render(){return'\n <xg-loading class="xgplayer-loading">\n <xg-loading-inner></xg-loading-inner>\n </xg-loading>'}}const fl=[{tag:"xg-cache",className:"xgplayer-progress-cache",styleKey:"cachedColor"},{tag:"xg-played",className:"xgplayer-progress-played",styleKey:"playedColor"}];class ml{constructor(t){this.fragments=t.fragments||[],this.focusClass="inner-focus",this.style=t.style||{playedColor:"",cachedColor:"",progressColor:""},this.duration=0,this.cachedIndex=0,this.playedIndex=0}updateDuration(t){this.duration=parseInt(1e3*t);let e=0;const{fragments:i}=this;this.fragments=i.map((t=>(t.start=e,t.end=e+t.percent*this.duration,t.duration=t.percent*this.duration,e+=t.percent*this.duration,t)))}updateProgress(t="played",e={newIndex:0,curIndex:0,millisecond:0}){const{progressList:i,fragments:s}=this,{newIndex:n,curIndex:o,millisecond:r}=e;n!==o&&i.map(((e,i)=>{i<n?e[t].style.width="100%":i>n&&(e[t].style.width=0)}));const a=s[n],l=0===r?0:(r-a.start)/a.duration;i[n][t].style.width=l<0?0:100*l+"%"}update(t={cached:0,played:0},e){if(!this.duration||parseInt(1e3*e,10)!==this.duration){if(!e&&0!==e)return;this.updateDuration(e)}const{playedIndex:i,cachedIndex:s}=this;if("Undefined"!==xo.typeOf(t.played)){const e=this.findIndex(1e3*t.played,i);this.updateProgress("played",{newIndex:e,curIndex:i,millisecond:parseInt(1e3*t.played,10)}),this.playedIndex=e}if("Undefined"!==xo.typeOf(t.cached)){const e=this.findIndex(1e3*t.cached,s);this.updateProgress("cached",{newIndex:e,curIndex:s,millisecond:parseInt(1e3*t.cached,10)}),this.cachedIndex=e}}findIndex(t,e){const{fragments:i}=this;return 1===i.length?0:(t>i[e].start&&t<i[e].end||this.fragments.map(((i,s)=>{t>i.start&&t<=i.end&&(e=s)})),e)}findHightLight(){const t=this.root.children;for(let e=0;e<t.length;e++)if(xo.hasClass(t[e],this.focusClass))return{dom:t[e],pos:t[e].getBoundingClientRect()}}findFragment(t){const e=this.root.children;return t<0||t>=e.length?null:{dom:e[t],pos:e[t].getBoundingClientRect()}}unHightLight(){const t=this.root.children;for(let e=0;e<t.length;e++)xo.removeClass(t[e],this.focusClass)}setHightLight(t){const e=this.root.children;if(t<e.length)return xo.addClass(e[t],this.focusClass),{dom:e[t],pos:e[t].getBoundingClientRect()}}destroy(){this.progressList=null,this.fragments=null,this.root.innerHTML=""}render(){const{progressColor:t}=this.style;return this.root=xo.createDom("xg-inners","",{},"progress-list"),this.fragments&&(this.progressList=this.fragments.map((e=>{const i=xo.createDom("xg-inner","",{style:t?`background:${t}; flex: ${e.percent}`:`flex: ${e.percent}`},(e.isFocus?"inner-focus":"")+" xgplayer-progress-inner");return this.root.appendChild(i),fl.map((t=>{i.appendChild(xo.createDom(t.tag,"",{style:t.styleKey?`background: ${this.style[t.styleKey]}; width:0;`:"width:0;"},t.className))})),{cached:i.children[0],played:i.children[1]}}))),this.root}}class yl extends Zr{static get pluginName(){return"progress"}static get defaultConfig(){return{position:Yr.CONTROLS_CENTER,index:0,disable:!1,isDragingSeek:!0,closeMoveSeek:!1,isPauseMoving:!1,isCloseClickSeek:!1,fragments:[{percent:1}],miniMoveStep:5,miniStartStep:2,onMoveStart:()=>{},onMoveEnd:()=>{},endedDiff:.2}}constructor(e){super(e),t(this,"onMoveOnly",(t=>{const{pos:e,config:i,player:s}=this;xo.event(t);const n=xo.getEventPos(t,s.zoom),o=90===s.rotateDeg?n.clientY:n.clientX;if(e.moving&&Math.abs(e.x-o)<i.miniMoveStep)return;e.moving=!0,e.x=o;const r=this.computeTime(t);this.triggerCallbacks("dragmove",r,t)})),t(this,"onBodyClick",(t=>{t.preventDefault(),t.stopPropagation()})),t(this,"_mouseDownHandler",((t,e)=>{this._state.time=e.currentTime,this.updateWidth(e.currentTime,e.percent,0)})),t(this,"_mouseUpHandler",((t,e)=>{const{pos:i}=this;i.moving&&this.updateWidth(e.currentTime,e.percent,2)})),t(this,"_mouseMoveHandler",((t,e)=>{const{_state:i,pos:s,config:n,player:o}=this;i.time<e.currentTime?e.forward=!0:e.forward=!1,i.time=e.currentTime,s.isDown&&!s.moving&&(s.moving=!0,n.isPauseMoving&&o.pause(),this.triggerCallbacks("dragstart",e,t)),this.updateWidth(e.currentTime,e.percent,1),this.triggerCallbacks("dragmove",e,t)})),t(this,"onMouseDown",(t=>{const{player:e,pos:i,config:s,playerConfig:n}=this,o=xo.getEventPos(t,e.zoom),r=90===e.rotateDeg?o.clientY:o.clientX;if(e.isMini||s.closeMoveSeek||!n.allowSeekAfterEnded&&e.ended)return;t.stopPropagation(),this.focus(),xo.checkIsFunction(n.disableSwipeHandler)&&n.disableSwipeHandler(),xo.checkIsFunction(s.onMoveStart)&&s.onMoveStart(),xo.event(t),i.x=r,i.isDown=!0,i.moving=!1,e.focus({autoHide:!1}),this.isProgressMoving=!0,xo.addClass(this.progressBtn,"active");const a=this.computeTime(t);return this._mouseDownHandlerHook(t,a),"touch"===this.domEventType?(this.root.addEventListener("touchmove",this.onMouseMove),this.root.addEventListener("touchend",this.onMouseUp)):(this.unbind("mousemove",this.onMoveOnly),document.addEventListener("mousemove",this.onMouseMove,!1),document.addEventListener("mouseup",this.onMouseUp,!1),e.root.addEventListener("click",this.onBodyClick,!1)),!0})),t(this,"onMouseUp",(t=>{const{player:e,config:i,pos:s,playerConfig:n,_state:o}=this;t.stopPropagation(),t.preventDefault(),xo.checkIsFunction(n.enableSwipeHandler)&&n.enableSwipeHandler(),xo.checkIsFunction(i.onMoveEnd)&&i.onMoveEnd(),xo.event(t),xo.removeClass(this.progressBtn,"active");const r=this.computeTime(t);s.moving?this.triggerCallbacks("dragend",r,t):this.triggerCallbacks("click",r,t),this._mouseUpHandlerHook(t,r),s.moving=!1,s.isDown=!1,s.x=0,s.y=0,o.time=0,"touch"===this.domEventType?(this.root.removeEventListener("touchmove",this.onMouseMove),this.root.removeEventListener("touchend",this.onMouseUp),this.blur()):(document.removeEventListener("mousemove",this.onMouseMove,!1),document.removeEventListener("mouseup",this.onMouseUp,!1),e.root.removeEventListener("click",this.onBodyClick,!1),s.isEnter?"mobile"!==n.isMobileSimulateMode&&this.bind("mousemove",this.onMoveOnly):this.onMouseLeave(t)),xo.setTimeout(this,(()=>{this.resetSeekState()}),10),e.focus()})),t(this,"onMouseMove",(t=>{const{pos:e,player:i,config:s}=this;xo.checkTouchSupport()&&t.preventDefault(),xo.event(t);const n=xo.getEventPos(t,i.zoom),o=90===i.rotateDeg?n.clientY:n.clientX,r=Math.abs(e.x-o);if(e.moving&&r<s.miniMoveStep||!e.moving&&r<s.miniStartStep)return;e.x=o;const a=this.computeTime(t);this._mouseMoveHandlerHook(t,a)})),t(this,"onMouseOut",(t=>{this.triggerCallbacks("mouseout",null,t)})),t(this,"onMouseOver",(t=>{this.triggerCallbacks("mouseover",null,t)})),t(this,"onMouseEnter",(t=>{const{player:e,pos:i}=this;this.triggerCallbacks("mouseenter",null,t),i.isDown||i.isEnter||e.isMini||!e.config.allowSeekAfterEnded&&e.ended||(i.isEnter=!0,this.bind("mousemove",this.onMoveOnly),this.bind("mouseleave",this.onMouseLeave),this.focus())})),t(this,"onMouseLeave",(t=>{this.triggerCallbacks("mouseleave",null,t);const{player:e,pos:i}=this;i.isEnter=!1,e.isMini||(this.unbind("mousemove",this.onMoveOnly),i.isDown?this.unbind("mouseleave",this.onMouseLeave):this.blur())})),this.useable=!1,this.isProgressMoving=!1,this.__dragCallBacks=[],this._state={now:-1,direc:0,time:0},this._disableBlur=!1}get duration(){return this.playerConfig.customDuration||this.player.duration}get timeOffset(){return this.playerConfig.timeOffset||0}changeState(t=!0){this.useable=t}createInner(){this.innerList=new ml({fragments:this.config.fragments,style:this.playerConfig.commonStyle||{}}),this.outer.insertBefore(this.innerList.render(),this.outer.children[0]),["findHightLight","unHightLight","setHightLight","findFragment"].map((t=>{this[t]=this.innerList[t].bind(this.innerList)}))}afterCreate(){this.config.disable||this.playerConfig.isLive||(this.pos={x:0,y:0,moving:!1,isDown:!1,isEnter:!1},this.outer=this.find("xg-outer"),this.createInner(),"mobile"===Lo.device&&(this.config.isDragingSeek=!1,this.isMobile=!0),this.progressBtn=this.find(".xgplayer-progress-btn"),this.on(Vo,(()=>{this.onMouseLeave()})),this.on(Bo,(()=>{this.onTimeupdate()})),this.on(Uo,(()=>{this.onTimeupdate(),this.onCacheUpdate()})),this.on(Yo,(()=>{this.onCacheUpdate()})),this.on(Mo,(()=>{this.onCacheUpdate(),this._state.now=0})),this.on(Xo,(()=>{this.onReset()})),this.bindDomEvents(),this.initCustomStyle())}initCustomStyle(){const{commonStyle:t}=this.playerConfig||{},{sliderBtnStyle:e}=t,{progressBtn:i}=this;e&&("string"==typeof e?i.style.boxShadow=e:"object"==typeof e&&Object.keys(e).map((t=>{i.style[t]=e[t]})))}triggerCallbacks(t,e,i){this.__dragCallBacks.length>0&&this.__dragCallBacks.map((s=>{if(s&&s.handler&&s.type===t)try{s.handler(e,i)}catch(n){console.error(`[XGPLAYER][triggerCallbacks] ${s} error`,n)}}))}addCallBack(t,e){e&&"function"==typeof e&&this.__dragCallBacks.push({type:t,handler:e})}removeCallBack(t,e){const{__dragCallBacks:i}=this;let s=-1;i.map(((i,n)=>{i&&i.type===t&&i.handler===e&&(s=n)})),s>-1&&i.splice(s,1)}bindDomEvents(){const{controls:t,config:e}=this.player;this._mouseDownHandlerHook=this.hook("dragstart",this._mouseDownHandler),this._mouseUpHandlerHook=this.hook("dragend",this._mouseUpHandler),this._mouseMoveHandlerHook=this.hook("drag",this._mouseMoveHandler),"touch"===this.domEventType?(this.root.addEventListener("touchstart",this.onMouseDown),t&&(t.root&&t.root.addEventListener("touchmove",xo.stopPropagation),t.center&&t.center.addEventListener("touchend",xo.stopPropagation))):(this.bind("mousedown",this.onMouseDown),"mobile"!==e.isMobileSimulateMode&&this.bind("mouseenter",this.onMouseEnter),this.bind("mouseover",this.onMouseOver),this.bind("mouseout",this.onMouseOut))}focus(){xo.addClass(this.root,"active")}blur(){this._disableBlur||(this.player.controls.recoverAutoHide(),xo.removeClass(this.root,"active"))}disableBlur(){this._disableBlur=!0}enableBlur(){this._disableBlur=!1}updateWidth(t,e,i){const{config:s,player:n}=this;if(s.isCloseClickSeek&&0===i)return;const o=t>=n.duration?n.duration-s.endedDiff:Number(t).toFixed(1);this.updatePercent(e),this.updateTime(t),(1!==i||s.isDragingSeek&&"audio"!==n.videoConfig.mediaType)&&(this._state.now=o,this._state.direc=o>n.currentTime?0:1,n.seek(o))}computeTime(t){const{player:e}=this,{width:i,height:s,top:n,left:o}=this.root.getBoundingClientRect(),r=xo.getEventPos(t,e.zoom);let a,l,h;90===e.rotateDeg?(a=s,l=n,h=r.clientY):(a=i,l=o,h=r.clientX);let c=h-l;c=c>a?a:c<0?0:c;let u=c/a;u=u<0?0:u>1?1:u;return{percent:u,currentTime:parseInt(u*this.duration*1e3,10)/1e3,offset:c,width:a,left:l,e:t}}updateTime(t){const{player:e,duration:i}=this;t>i?t=i:t<0&&(t=0);const s=e.plugins.time;s&&s.updateTime(t)}resetSeekState(){this.isProgressMoving=!1;const t=this.player.plugins.time;t&&t.resetActive()}updatePercent(t,e){if(this.isProgressMoving=!0,this.config.disable)return;t=t>1?1:t<0?0:t,this.progressBtn.style.left=100*t+"%",this.innerList.update({played:t*this.duration},this.duration);const{miniprogress:i}=this.player.plugins;i&&i.update({played:t*this.duration},this.duration)}onTimeupdate(){const{player:t,_state:e,duration:i}=this;if(t.isSeeking||this.isProgressMoving||t.state<ha)return;if(e.now>-1){const i=parseInt(1e3*e.now,10)-parseInt(1e3*t.currentTime,10);if(0===e.direc&&i>300||1===e.direc&&i>-300)return void(e.now=-1);e.now=-1}const s=this.timeOffset+t.currentTime;this.innerList.update({played:s},i),this.progressBtn.style.left=s/i*100+"%";const{miniprogress:n}=this.player.plugins;n&&n.update({played:s},i)}onCacheUpdate(){const{player:t,duration:e}=this,i=t.bufferedPoint;this.innerList.update({cached:i.end},e);const{miniprogress:s}=this.player.plugins;s&&s.update({cached:i.end},e)}onReset(){this.innerList.update({played:0,cached:0},0);const{miniprogress:t}=this.player.plugins;t&&t.update({cached:0,played:0},0)}destroy(){const{player:t}=this,{controls:e}=t;this.thumbnailPlugin=null,this.innerList.destroy(),this.innerList=null;const{domEventType:i}=this;"touch"===i?(this.root.removeEventListener("touchstart",this.onMouseDown),this.root.removeEventListener("touchmove",this.onMouseMove),this.root.removeEventListener("touchend",this.onMouseUp),e&&(e.root&&e.root.removeEventListener("touchmove",xo.stopPropagation),e.center&&e.center.removeEventListener("touchend",xo.stopPropagation))):(this.unbind("mousedown",this.onMouseDown),this.unbind("mouseenter",this.onMouseEnter),this.unbind("mousemove",this.onMoveOnly),this.unbind("mouseleave",this.onMouseLeave),document.removeEventListener("mousemove",this.onMouseMove,!1),document.removeEventListener("mouseup",this.onMouseUp,!1),t.root.removeEventListener("click",this.onBodyClick,!1))}render(){if(this.config.disable||this.playerConfig.isLive)return;return`\n <xg-progress class="xgplayer-progress ${"bottom"===(this.player.controls?this.player.controls.config.mode:"")?"xgplayer-progress-bottom":""}">\n <xg-outer class="xgplayer-progress-outer">\n <xg-progress-btn class="xgplayer-progress-btn"></xg-progress-btn>\n </xg-outer>\n </xg-progress>\n `}}class vl extends Zr{constructor(...e){super(...e),t(this,"_onMouseenter",(t=>{this.emit("icon_mouseenter",{pluginName:this.pluginName})})),t(this,"_onMouseLeave",(t=>{this.emit("icon_mouseleave",{pluginName:this.pluginName})}))}afterCreate(){this.bind("mouseenter",this._onMouseenter),this.bind("mouseleave",this._onMouseLeave)}destroy(){this.unbind("mouseenter",this._onMouseenter),this.unbind("mouseleave",this._onMouseLeave)}}class bl extends vl{static get pluginName(){return"play"}static get defaultConfig(){return{position:Yr.CONTROLS_LEFT,index:0,disable:!1}}afterCreate(){super.afterCreate();const{player:t,config:e}=this;e.disable||(this.initIcons(),this.btnClick=this.btnClick.bind(this),this.bind(["touchend","click"],this.btnClick),this.on(No,(()=>{this.animate(t.paused)})),this.on(Ro,(()=>{this.animate(t.paused)})),this.animate(!0))}registerIcons(){return{play:{icon:Pa,class:"xg-icon-play"},pause:{icon:La,class:"xg-icon-pause"}}}btnClick(t){t.preventDefault(),t.stopPropagation();const{player:e}=this;return this.emitUserAction(t,"switch_play_pause",{prop:"paused",from:e.paused,to:!e.paused}),e.ended?e.replay():e.paused?(e.play(),this.animate(!1)):(e.pause(),this.animate(!0)),!1}initIcons(){const{icons:t}=this;this.appendChild(".xgplayer-icon",t.play),this.appendChild(".xgplayer-icon",t.pause)}animate(t){const{i18nKeys:e}=this;t?(this.setAttr("data-state","pause"),this.changeLangTextKey(this.find(".xg-tips"),e.PLAY_TIPS)):(this.setAttr("data-state","play"),this.changeLangTextKey(this.find(".xg-tips"),e.PAUSE_TIPS))}destroy(){super.destroy(),this.unbind(["touchend","click"],this.btnClick)}render(){if(!this.config.disable)return`<xg-icon class="xgplayer-play">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys.PLAY_TIPS}">${this.i18n.PLAY_TIPS}</div>\n </xg-icon>`}}function Cl(){return(new DOMParser).parseFromString('<svg width="32px" height="40px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">\n <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">\n <path d="M11.2374369,14 L17.6187184,7.61871843 C17.9604272,7.27700968 17.9604272,6.72299032 17.6187184,6.38128157 C17.2770097,6.03957281 16.7229903,6.03957281 16.3812816,6.38128157 L9.38128157,13.3812816 C9.03957281,13.7229903 9.03957281,14.2770097 9.38128157,14.6187184 L16.3812816,21.6187184 C16.7229903,21.9604272 17.2770097,21.9604272 17.6187184,21.6187184 C17.9604272,21.2770097 17.9604272,20.7229903 17.6187184,20.3812816 L11.2374369,14 L11.2374369,14 Z" fill="#FFFFFF"></path>\n </g>\n</svg>',"image/svg+xml").firstChild}class _l extends Zr{static get pluginName(){return"topbackicon"}static get defaultConfig(){return{position:Yr.ROOT_TOP,index:0}}afterCreate(){this.initIcons(),this.onClick=t=>{t.preventDefault(),t.stopPropagation(),this.config.onClick(t)},this.bind(["click","touchend"],this.onClick)}registerIcons(){return{screenBack:{icon:Cl,class:"xg-fullscreen-back"}}}initIcons(){const{icons:t}=this;this.appendChild(this.root,t.screenBack)}show(){xo.addClass(this.root,"show")}hide(){xo.removeClass(this.root,"show")}render(){return'<xg-icon class="xgplayer-back">\n </xg-icon>'}}function wl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="2 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M598 214h212v212h-84v-128h-128v-84zM726 726v-128h84v212h-212v-84h128zM214 426v-212h212v84h-128v128h-84zM298 598v128h128v84h-212v-212h84z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Tl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="2 -4 28 40">\n <path fill="#fff" transform="scale(0.0320625 0.0320625)" d="M682 342h128v84h-212v-212h84v128zM598 810v-212h212v84h-128v128h-84zM342 342v-128h84v212h-212v-84h128zM214 682v-84h212v212h-84v-128h-128z"></path>\n</svg>\n',"image/svg+xml").firstChild}class El extends vl{constructor(...e){super(...e),t(this,"_onOrientationChange",(t=>{this.player.fullscreen&&this.config.rotateFullscreen&&(90===window.orientation||-90===window.orientation?this.player.setRotateDeg(0):this.player.setRotateDeg(90))}))}static get pluginName(){return"fullscreen"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:0,useCssFullscreen:!1,rotateFullscreen:!1,switchCallback:null,target:null,disable:!1,needBackIcon:!1}}afterCreate(){super.afterCreate();const{config:t,playerConfig:e}=this;if(t.disable)return;t.target&&(this.playerConfig.fullscreenTarget=this.config.target);const i=xo.getFullScreenEl();e.fullscreenTarget===i&&this.player.getFullscreen(),this.initIcons(),this.handleFullscreen=this.hook("fullscreenChange",this.toggleFullScreen,{pre:t=>{const{fullscreen:e}=this.player;this.emitUserAction(t,"switch_fullscreen",{prop:"fullscreen",from:e,to:!e})}}),this.bind(".xgplayer-fullscreen",["touchend","click"],this.handleFullscreen),this.on(ar,(t=>{this.changeLangTextKey(this.find(".xg-tips"),t?this.i18nKeys.EXITFULLSCREEN_TIPS:this.i18nKeys.FULLSCREEN_TIPS),this.animate(t)})),this.config.needBackIcon&&(this.topBackIcon=this.player.registerPlugin({plugin:_l,options:{config:{onClick:t=>{this.handleFullscreen(t)}}}})),"mobile"===Lo.device&&window.addEventListener("orientationchange",this._onOrientationChange)}registerIcons(){return{fullscreen:{icon:wl,class:"xg-get-fullscreen"},exitFullscreen:{icon:Tl,class:"xg-exit-fullscreen"}}}destroy(){super.destroy(),this.unbind(".xgplayer-icon","mobile"===Lo.device?"touchend":"click",this.handleFullscreen),"mobile"===Lo.device&&window.removeEventListener("orientationchange",this._onOrientationChange)}initIcons(){const{icons:t}=this;this.appendChild(".xgplayer-icon",t.fullscreen),this.appendChild(".xgplayer-icon",t.exitFullscreen)}toggleFullScreen(t){t&&(t.preventDefault(),t.stopPropagation());const{player:e,config:i}=this;!0===i.useCssFullscreen||"function"==typeof i.useCssFullscreen&&i.useCssFullscreen()?(e.fullscreen?e.exitCssFullscreen():e.getCssFullscreen(),this.animate(e.fullscreen)):i.rotateFullscreen?(e.fullscreen?e.exitRotateFullscreen():e.getRotateFullscreen(),this.animate(e.fullscreen)):i.switchCallback&&"function"==typeof i.switchCallback?i.switchCallback(e.fullscreen):e.fullscreen?e.exitFullscreen():e.getFullscreen()}animate(t){t?this.setAttr("data-state","full"):this.setAttr("data-state","normal"),this.topBackIcon&&(t?(this.topBackIcon.show(),this.hide()):(this.topBackIcon.hide(),this.show()))}show(){super.show()}hide(){super.hide()}render(){if(this.config.disable)return;const t="FULLSCREEN_TIPS";return`<xg-icon class="xgplayer-fullscreen">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys[t]}">${this.i18n[t]}</div>\n </xg-icon>`}}class xl extends Zr{static get pluginName(){return"time"}static get defaultConfig(){return{position:Yr.CONTROLS_LEFT,index:2,disable:!1}}constructor(t){super(t),this.isActiving=!1}get duration(){return this.playerConfig.customDuration||this.player.duration}get currentTime(){return this.player.currentTime||0}get timeOffset(){return this.playerConfig.timeOffset||0}afterCreate(){const t=this.player.controls.config.mode;this.mode="flex"===t?"flex":"normal",this.config.disable||("flex"===this.mode&&(this.createCenterTime(),this.hide()),this.durationDom=this.find(".time-duration"),this.timeDom=this.find(".time-current"),this.on(Vo,(()=>{this.onTimeUpdate()})),this.on(Bo,(()=>{this.onTimeUpdate()})),this.on(Xo,(()=>{this.onReset()})))}show(){"flex"!==this.mode&&super.show()}onTimeUpdate(){const{player:t,config:e}=this;if(e.disable||this.isActiving||t.state<ha&&t.state!==aa)return;const i=this.currentTime+this.timeOffset;"flex"===this.mode?(this.centerCurDom.innerHTML=xo.format(i),this.duration!==1/0&&this.duration>0&&(this.centerDurDom.innerHTML=xo.format(this.duration))):(this.timeDom.innerHTML=xo.format(i),this.duration!==1/0&&this.duration>0&&(this.durationDom.innerHTML=xo.format(this.duration)))}onReset(){"flex"===this.mode?(this.centerCurDom.innerHTML=xo.format(0),this.centerDurDom.innerHTML=xo.format(0)):(this.timeDom.innerHTML=xo.format(0),this.durationDom.innerHTML=xo.format(0))}createCenterTime(){const{player:t}=this;if(!t.controls||!t.controls.center)return;const e=t.controls.center;this.centerCurDom=xo.createDom("xg-icon","00:00",{},"xgplayer-time left"),this.centerDurDom=xo.createDom("xg-icon","00:00",{},"xgplayer-time right"),e.children.length>0?e.insertBefore(this.centerCurDom,e.children[0]):e.appendChild(this.centerCurDom),e.appendChild(this.centerDurDom)}afterPlayerInit(){const{config:t}=this;this.duration===1/0||this.playerConfig.isLive?(xo.hide(this.durationDom),xo.hide(this.timeDom),xo.hide(this.find(".time-separator")),xo.show(this.find(".time-live-tag"))):xo.hide(this.find(".time-live-tag")),t.hide?this.hide():this.show()}changeLiveState(t){t?(xo.hide(this.durationDom),xo.hide(this.timeDom),xo.hide(this.find(".time-separator")),xo.show(this.find(".time-live-tag"))):(xo.hide(this.find(".time-live-tag")),xo.show(this.find(".time-separator")),xo.show(this.durationDom),xo.show(this.timeDom))}updateTime(t){this.isActiving=!0,!t&&0!==t||t>this.duration||("flex"!==this.mode?this.timeDom.innerHTML=xo.format(t):this.centerCurDom.innerHTML=xo.format(t))}resetActive(){const{player:t}=this,e=()=>{this.isActiving=!1};this.off(Uo,e),t.isSeeking?this.once(Uo,e):this.isActiving=!1}destroy(){const{center:t}=this.player.controls;this.centerCurDom&&t.removeChild(this.centerCurDom),this.centerCurDom=null,this.centerDurDom&&t.removeChild(this.centerDurDom),this.centerDurDom=null}render(){if(!this.config.disable)return`<xg-icon class="xgplayer-time">\n <span class="time-current">00:00</span>\n <span class="time-separator">/</span>\n <span class="time-duration">00:00</span>\n <span class="time-live-tag">${this.i18n.LIVE_TIP}</span>\n </xg-icon>`}}function Sl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M940.632 837.632l-72.192-72.192c65.114-64.745 105.412-154.386 105.412-253.44s-40.299-188.695-105.396-253.424l-0.016-0.016 72.192-72.192c83.639 83.197 135.401 198.37 135.401 325.632s-51.762 242.434-135.381 325.612l-0.020 0.020zM795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021z"></path>\n</svg>\n',"image/svg+xml").firstChild}function kl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021zM795.648 693.248l-72.704-72.704c27.756-27.789 44.921-66.162 44.921-108.544s-17.165-80.755-44.922-108.546l0.002 0.002 72.704-72.704c46.713 46.235 75.639 110.363 75.639 181.248s-28.926 135.013-75.617 181.227l-0.021 0.021z"></path>\n</svg>\n',"image/svg+xml").firstChild}function Pl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="28" height="40" viewBox="0 -10 28 40">\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M358.4 358.4h-204.8v307.2h204.8l256 256v-819.2l-256 256z"></path>\n <path fill="#fff" transform="scale(0.0220625 0.0220625)" d="M920.4 439.808l-108.544-109.056-72.704 72.704 109.568 108.544-109.056 108.544 72.704 72.704 108.032-109.568 108.544 109.056 72.704-72.704-109.568-108.032 109.056-108.544-72.704-72.704-108.032 109.568z"></path>\n</svg>\n',"image/svg+xml").firstChild}class Ll extends Zr{constructor(...e){super(...e),t(this,"onBarMousedown",(t=>{const{player:e}=this,i=this.find(".xgplayer-bar");xo.event(t);const s=i.getBoundingClientRect(),n=xo.getEventPos(t,e.zoom),o=s.height-(n.clientY-s.top);if(n.h=o,n.barH=s.height,this.pos=n,!(o<-2))return this.updateVolumePos(o,t),document.addEventListener("mouseup",this.onBarMouseUp),this.isStart=!0,!1})),t(this,"onBarMouseMove",(t=>{if(!this.isStart)return;const{pos:e,player:i}=this;t.preventDefault(),t.stopPropagation(),xo.event(t);const s=xo.getEventPos(t,i.zoom);this.isMoving=!0;const n=e.h-s.clientY+e.clientY;n>e.barH||this.updateVolumePos(n,t)})),t(this,"onBarMouseUp",(t=>{xo.event(t),document.removeEventListener("mouseup",this.onBarMouseUp),this.isStart=!1,this.isMoving=!1})),t(this,"onMouseenter",(t=>{this._timerId&&(xo.clearTimeout(this,this._timerId),this._timerId=null),xo.addClass(this.root,"slide-show"),this.emit("icon_mouseenter",{pluginName:this.pluginName})})),t(this,"onMouseleave",(t=>{this._timerId&&(xo.clearTimeout(this,this._timerId),this._timerId=null),this._timerId=xo.setTimeout(this,(()=>{xo.removeClass(this.root,"slide-show"),this.isStart&&this.onBarMouseUp(t),this._timerId=null}),100),this.emit("icon_mouseleave",{pluginName:this.pluginName})})),t(this,"onVolumeChange",(t=>{if(!this.player)return;const{muted:e,volume:i}=this.player;this.isMoving||(this.find(".xgplayer-drag").style.height=e||0===i?"4px":100*i+"%",this.config.showValueLabel&&this.updateVolumeValue()),this.animate(e,i)}))}static get pluginName(){return"volume"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:1,disable:!1,showValueLabel:!1,default:.6,miniVolume:.2}}registerIcons(){return{volumeSmall:{icon:kl,class:"xg-volume-small"},volumeLarge:{icon:Sl,class:"xg-volume"},volumeMuted:{icon:Pl,class:"xg-volume-mute"}}}afterCreate(){if(this._timerId=null,this.config.disable)return;this.initIcons();const{commonStyle:t,volume:e}=this.playerConfig;t.volumeColor&&(this.find(".xgplayer-drag").style.backgroundColor=t.volumeColor),this.changeMutedHandler=this.hook("mutedChange",(t=>{this.changeMuted(t)}),{pre:t=>{t.preventDefault(),t.stopPropagation()}}),this._onMouseenterHandler=this.hook("mouseenter",this.onMouseenter),this._onMouseleaveHandler=this.hook("mouseleave",this.onMouseleave),"mobile"!==Lo.device&&"mobile"!==this.playerConfig.isMobileSimulateMode&&(this.bind("mouseenter",this._onMouseenterHandler),this.bind(["blur","mouseleave"],this._onMouseleaveHandler),this.bind(".xgplayer-slider","mousedown",this.onBarMousedown),this.bind(".xgplayer-slider","mousemove",this.onBarMouseMove),this.bind(".xgplayer-slider","mouseup",this.onBarMouseUp)),this.bind(".xgplayer-icon",["touchend","click"],this.changeMutedHandler),this.on(Go,this.onVolumeChange),this.once(Wo,this.onVolumeChange),"Number"!==xo.typeOf(e)&&(this.player.volume=this.config.default),this.onVolumeChange()}updateVolumePos(t,e){const{player:i}=this,s=this.find(".xgplayer-drag"),n=this.find(".xgplayer-bar");if(!n||!s)return;const o=parseInt(t/n.getBoundingClientRect().height*1e3,10);s.style.height=`${t}px`;const r=Math.max(Math.min(o/1e3,1),0),a={volume:{from:i.volume,to:r}};i.muted&&(a.muted={from:!0,to:!1}),this.emitUserAction(e,"change_volume",{muted:i.muted,volume:i.volume,props:a}),i.volume=Math.max(Math.min(o/1e3,1),0),i.muted&&(i.muted=!1),this.config.showValueLabel&&this.updateVolumeValue()}updateVolumeValue(){const{volume:t,muted:e}=this.player,i=this.find(".xgplayer-value-label"),s=Math.max(Math.min(t,1),0);i.innerText=e?0:Math.ceil(100*s)}changeMuted(t){t&&t.stopPropagation();const{player:e}=this;this.isStart&&this.onBarMouseUp(t),this.emitUserAction(t,"change_muted",{muted:e.muted,volume:e.volume,props:{muted:{from:e.muted,to:!e.muted}}}),e.volume>0&&(e.muted=!e.muted),e.volume<.01&&(e.volume=this.config.miniVolume)}animate(t,e){t||0===e?this.setAttr("data-state","mute"):e<.5&&this.icons.volumeSmall?this.setAttr("data-state","small"):this.setAttr("data-state","normal")}initIcons(){const{icons:t}=this;this.appendChild(".xgplayer-icon",t.volumeSmall),this.appendChild(".xgplayer-icon",t.volumeLarge),this.appendChild(".xgplayer-icon",t.volumeMuted)}destroy(){this.unbind("mouseenter",this.onMouseenter),this.unbind(["blur","mouseleave"],this.onMouseleave),this.unbind(".xgplayer-slider","mousedown",this.onBarMousedown),this.unbind(".xgplayer-slider","mousemove",this.onBarMouseMove),this.unbind(".xgplayer-slider","mouseup",this.onBarMouseUp),document.removeEventListener("mouseup",this.onBarMouseUp),this.unbind(".xgplayer-icon","mobile"===Lo.device?"touchend":"click",this.changeMutedHandler)}render(){if(this.config.disable)return;const t=this.config.default||this.player.volume;return`\n <xg-icon class="xgplayer-volume" data-state="normal">\n <div class="xgplayer-icon">\n </div>\n <xg-slider class="xgplayer-slider">\n ${this.config.showValueLabel?`<div class="xgplayer-value-label">${100*t}</div>`:""}\n <div class="xgplayer-bar">\n <xg-drag class="xgplayer-drag" style="height: ${100*t}%"></xg-drag>\n </div>\n </xg-slider>\n </xg-icon>`}}function Al(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="-4 -6 40 40" fill="none">\n <g clip-path="url(#clip0)">\n <path transform="scale(1.5 1.5)" d="M11.6665 9.16663H4.1665C2.78579 9.16663 1.6665 10.2859 1.6665 11.6666V15.8333C1.6665 17.214 2.78579 18.3333 4.1665 18.3333H11.6665C13.0472 18.3333 14.1665 17.214 14.1665 15.8333V11.6666C14.1665 10.2859 13.0472 9.16663 11.6665 9.16663Z" fill="white"/>\n <path transform="scale(1.5 1.5)" fill-rule="evenodd" clip-rule="evenodd" d="M3.88148 4.06298C3.75371 4.21005 3.67667 4.40231 3.67749 4.61242C3.67847 4.87253 3.79852 5.10435 3.98581 5.25646L6.99111 8.05895C7.32771 8.37283 7.85502 8.35443 8.16891 8.01782C8.48279 7.68122 8.46437 7.15391 8.12778 6.84003L6.62061 5.43457L9.8198 5.4224C9.82848 5.42239 9.8372 5.42221 9.84591 5.4219C10.9714 5.38233 12.0885 5.6285 13.0931 6.13744C14.0976 6.64635 14.957 7.40148 15.5908 8.33234C16.2246 9.2632 16.6122 10.3394 16.7177 11.4606C16.823 12.5819 16.6427 13.7115 16.1934 14.7442C16.0098 15.1661 16.203 15.6571 16.6251 15.8408C17.0471 16.0243 17.5381 15.8311 17.7216 15.4091C18.2833 14.1183 18.5087 12.7063 18.3771 11.3047C18.2453 9.90318 17.7607 8.55792 16.9684 7.39433C16.1761 6.23073 15.1021 5.28683 13.8463 4.65065C12.5946 4.01651 11.203 3.70872 9.80072 3.75583L6.43415 3.76862L7.96326 2.12885C8.27715 1.79225 8.25872 1.26494 7.92213 0.951061C7.58553 0.63718 7.05822 0.655585 6.74433 0.99219L3.90268 4.0395C3.89545 4.04724 3.88841 4.05509 3.88154 4.06303L3.88148 4.06298Z" fill="white"/>\n </g>\n <defs>\n <clipPath id="clip0">\n <rect width="40" height="40" fill="white"/>\n </clipPath>\n </defs>\n</svg>\n',"image/svg+xml").firstChild}class Il extends vl{static get pluginName(){return"rotate"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:6,innerRotate:!0,clockwise:!1,rotateDeg:0,disable:!1}}constructor(t){super(t),this.rotateDeg=this.config.rotateDeg||0}afterCreate(){this.config.disable||(super.afterCreate(),this.appendChild(".xgplayer-icon",this.icons.rotate),this.onBtnClick=this.onBtnClick.bind(this),this.bind(".xgplayer-icon",["click","touchend"],this.onBtnClick),this.on(dr,(()=>{this.rotateDeg&&xo.setTimeout(this,(()=>{this.updateRotateDeg(this.rotateDeg,this.config.innerRotate)}),100)})),this.rotateDeg&&this.updateRotateDeg(this.rotateDeg,this.config.innerRotate))}destroy(){super.destroy(),this.unbind(".xgplayer-icon",["click","touchend"],this.onBtnClick)}onBtnClick(t){t.preventDefault(),t.stopPropagation(),this.emitUserAction(t,"rotate"),this.rotate(this.config.clockwise,this.config.innerRotate,1)}updateRotateDeg(t,e){const i=this.player;t||(t=0);const{root:s,innerContainer:n,video:o}=this.player,r=s.offsetWidth,a=n&&e?n.offsetHeight:s.offsetHeight;let l="100%",h="100%",c=0,u=0;.75!==t&&.25!==t||(l=`${a}px`,h=`${r}px`,c=-(a-r)/2,u=-(r-a)/2);const d=`translate(${c}px,${u}px) rotate(${t}turn)`,p={transformOrigin:"center center",transform:d,webKitTransform:d,height:h,width:l},g=e?o:s,f=e?i.getPlugin("poster"):null;Object.keys(p).map((t=>{g.style[t]=p[t],f&&f.root&&(f.root.style[t]=p[t])}))}rotate(t=!1,e=!0,i=1){const s=this.player;this.rotateDeg||(this.rotateDeg=0);const n=t?1:-1;this.rotateDeg=(this.rotateDeg+1+.25*n*i)%1,this.updateRotateDeg(this.rotateDeg,e),s.emit(gr,360*this.rotateDeg)}registerIcons(){return{rotate:Al}}render(){if(!this.config.disable)return`\n <xg-icon class="xgplayer-rotate">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys.ROTATE_TIPS}">\n ${this.i18n.ROTATE_TIPS}\n </div>\n </xg-icon>`}}function Ol(){return(new DOMParser).parseFromString('<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M16.5 4.3H3.5C3.38954 4.3 3.3 4.38954 3.3 4.5V15.5C3.3 15.6105 3.38954 15.7 3.5 15.7H8.50005L8.50006 17.5H3.5C2.39543 17.5 1.5 16.6046 1.5 15.5V4.5C1.5 3.39543 2.39543 2.5 3.5 2.5H16.5C17.6046 2.5 18.5 3.39543 18.5 4.5V8.5H16.7V4.5C16.7 4.38954 16.6105 4.3 16.5 4.3ZM12 11.5C11.4477 11.5 11 11.9477 11 12.5L11 16.5C11 17.0523 11.4478 17.5 12 17.5H17.5C18.0523 17.5 18.5 17.0523 18.5 16.5L18.5 12.5C18.5 11.9477 18.0523 11.5 17.5 11.5H12Z"\n fill="white" />\n</svg>',"image/svg+xml").firstChild}function Rl(){return(new DOMParser).parseFromString('<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M16.5 4.3H3.5C3.38954 4.3 3.3 4.38954 3.3 4.5V15.5C3.3 15.6105 3.38954 15.7 3.5 15.7H8.50005L8.50006 17.5H3.5C2.39543 17.5 1.5 16.6046 1.5 15.5V4.5C1.5 3.39543 2.39543 2.5 3.5 2.5H16.5C17.6046 2.5 18.5 3.39543 18.5 4.5V8.5H16.7V4.5C16.7 4.38954 16.6105 4.3 16.5 4.3ZM12 11.5C11.4477 11.5 11 11.9477 11 12.5L11 16.5C11 17.0523 11.4478 17.5 12 17.5H17.5C18.0523 17.5 18.5 17.0523 18.5 16.5L18.5 12.5C18.5 11.9477 18.0523 11.5 17.5 11.5H12Z"\n fill="white" />\n <path fill-rule="evenodd" clip-rule="evenodd"\n d="M9.4998 7.7C9.77595 7.7 9.9998 7.47614 9.9998 7.2V6.5C9.9998 6.22386 9.77595 6 9.4998 6H5.5402L5.52754 6.00016H5.5C5.22386 6.00016 5 6.22401 5 6.50016V10.4598C5 10.7359 5.22386 10.9598 5.5 10.9598H6.2C6.47614 10.9598 6.7 10.7359 6.7 10.4598V8.83005L8.76983 10.9386C8.96327 11.1357 9.27984 11.1386 9.47691 10.9451L9.97645 10.4548C10.1735 10.2613 10.1764 9.94476 9.983 9.7477L7.97289 7.7H9.4998Z"\n fill="white" />\n</svg>',"image/svg+xml").firstChild}const Dl="picture-in-picture",Ml="inline",Nl="fullscreen";class Fl extends vl{constructor(...e){super(...e),t(this,"switchPIP",(t=>{if(!this.isPIPAvailable())return!1;t.stopPropagation(),this.isPip?(this.exitPIP(),this.emitUserAction(t,"change_pip",{props:"pip",from:!0,to:!1}),this.setAttr("data-state","normal")):4===this.player.video.readyState&&(this.requestPIP(),this.emitUserAction(t,"change_pip",{props:"pip",from:!1,to:!0}),this.setAttr("data-state","pip"))}))}static get pluginName(){return"pip"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:6,showIcon:!1}}static checkWebkitSetPresentationMode(t){return"function"==typeof t.webkitSetPresentationMode}beforeCreate(t){"boolean"==typeof t.player.config.pip&&(t.config.showIcon=t.player.config.pip)}afterCreate(){this.isPIPAvailable()&&(super.afterCreate(),this.pMode=Ml,this.initPipEvents(),this.config.showIcon&&this.initIcons(),this.once(ir,(()=>{this.config.showIcon&&(xo.removeClass(this.find(".xgplayer-icon"),"xg-icon-disable"),this.bind("click",this.switchPIP))})))}registerIcons(){return{pipIcon:{icon:Ol,class:"xg-get-pip"},pipIconExit:{icon:Rl,class:"xg-exit-pip"}}}initIcons(){const{icons:t}=this;this.appendChild(".xgplayer-icon",t.pipIcon),this.appendChild(".xgplayer-icon",t.pipIconExit)}initPipEvents(){const{player:t}=this;this.leavePIPCallback=()=>{const e=t.paused;xo.setTimeout(this,(()=>{!e&&t.videoPlay()}),0),!e&&t.videoPlay(),this.setAttr("data-state","normal"),t.emit(pr,!1)},this.enterPIPCallback=e=>{t.emit(pr,!0),this.pipWindow=e.pictureInPictureWindow,this.setAttr("data-state","pip")},this.onWebkitpresentationmodechanged=e=>{const i=t.video.webkitPresentationMode;this.pMode===Nl&&i!==Nl&&t.onFullscreenChange(null,!1),this.pMode=i,i===Dl?this.enterPIPCallback(e):i===Ml&&this.leavePIPCallback(e)},t.video&&(t.video.addEventListener("enterpictureinpicture",this.enterPIPCallback),t.video.addEventListener("leavepictureinpicture",this.leavePIPCallback),Fl.checkWebkitSetPresentationMode(t.video)&&t.video.addEventListener("webkitpresentationmodechanged",this.onWebkitpresentationmodechanged))}requestPIP(){const{player:t,playerConfig:e}=this;if(this.isPIPAvailable()&&!this.isPip)try{const{poster:i}=e;return i&&(t.video.poster="String"===xo.typeOf(i)?i:i.poster),Fl.checkWebkitSetPresentationMode(t.video)?t.video.webkitSetPresentationMode("picture-in-picture"):t.video.requestPictureInPicture(),!0}catch(i){return console.error("requestPiP",i),!1}}exitPIP(){const{player:t}=this;try{return this.isPIPAvailable()&&this.isPip&&(Fl.checkWebkitSetPresentationMode(t.video)?t.video.webkitSetPresentationMode("inline"):document.exitPictureInPicture()),!0}catch(e){return console.error("exitPIP",e),!1}}get isPip(){const{player:t}=this;return document.pictureInPictureElement&&document.pictureInPictureElement===t.video||t.video.webkitPresentationMode===Dl}isPIPAvailable(){const{video:t}=this.player;return("Boolean"!==xo.typeOf(document.pictureInPictureEnabled)||document.pictureInPictureEnabled)&&("Boolean"===xo.typeOf(t.disablePictureInPicture)&&!t.disablePictureInPicture||t.webkitSupportsPresentationMode&&"Function"===xo.typeOf(t.webkitSetPresentationMode))}destroy(){super.destroy();const{player:t}=this;t.video.removeEventListener("enterpictureinpicture",this.enterPIPCallback),t.video.removeEventListener("leavepictureinpicture",this.leavePIPCallback),Fl.checkWebkitSetPresentationMode(t.video)&&t.video.removeEventListener("webkitpresentationmodechanged",this.onWebkitpresentationmodechanged),this.exitPIP(),this.unbind("click",this.btnClick)}render(){if(this.config.showIcon&&this.isPIPAvailable())return`<xg-icon class="xgplayer-pip">\n <div class="xgplayer-icon xg-icon-disable">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys.PIP}">${this.i18n.PIP}</div>\n </xg-icon>`}}function Hl(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="40" viewBox="10 0 24 40">\n <path transform="scale(0.038 0.028)" d="M800 380v768h-128v-352l-320 320v-704l320 320v-352z"></path>\n</svg>\n',"image/svg+xml").firstChild}class Ul extends Zr{static get pluginName(){return"playNext"}static get defaultConfig(){return{position:Yr.CONTROLS_LEFT,index:1,url:null,urlList:[]}}constructor(e){super(e),t(this,"playNext",(t=>{const{player:e}=this;t.preventDefault(),t.stopPropagation(),this.idx+1<this.config.urlList.length?(this.idx++,this.nextHandler(this.config.urlList[this.idx],this.idx),e.emit(mr,this.idx+1)):(this.nextHandler(),e.emit(mr))})),this.idx=-1}afterCreate(){this.config.urlList&&0!==this.config.urlList.length&&(this.appendChild(".xgplayer-icon",this.icons.playNext),this.initEvents())}registerIcons(){return{playNext:Hl}}initEvents(){this.nextHandler=this.hook("nextClick",this.changeSrc);const t="mobile"===Lo.device?"touchend":"click";this.bind(t,this.playNext),this.show()}changeSrc(t){const{player:e}=this;t&&(e.pause(),e.currentTime=0,e.switchURL?e.switchURL(t):e.src=t,e.config.url=t,e.play())}destroy(){this.unbind(["touchend","click"],this.playNext)}render(){if(this.config.urlList&&0!==this.config.urlList.length)return`\n <xg-icon class="xgplayer-playnext">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="PLAYNEXT_TIPS">${this.i18n.PLAYNEXT_TIPS}</div>\n </xg-icon>\n `}}var Bl,jl,$l,Vl="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView,Gl=!o((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})),Wl=Ht,zl=V,Yl=Mt,Kl=Gl,Xl=di("IE_PROTO"),ql=Object,Zl=ql.prototype,Jl=Kl?ql.getPrototypeOf:function(t){var e=Yl(t);if(Wl(e,Xl))return e[Xl];var i=e.constructor;return zl(i)&&e instanceof i?i.prototype:e instanceof ql?Zl:null},Ql=Vl,th=r,eh=s,ih=V,sh=z,nh=Ht,oh=Rn,rh=gt,ah=We,lh=Ki,hh=Se.f,ch=Z,uh=Jl,dh=Cn,ph=te,gh=Vt,fh=Ii.enforce,mh=Ii.get,yh=eh.Int8Array,vh=yh&&yh.prototype,bh=eh.Uint8ClampedArray,Ch=bh&&bh.prototype,_h=yh&&uh(yh),wh=vh&&uh(vh),Th=Object.prototype,Eh=eh.TypeError,xh=ph("toStringTag"),Sh=gh("TYPED_ARRAY_TAG"),kh="TypedArrayConstructor",Ph=Ql&&!!dh&&"Opera"!==oh(eh.opera),Lh=!1,Ah={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},Ih={BigInt64Array:8,BigUint64Array:8},Oh=function(t){var e=uh(t);if(sh(e)){var i=mh(e);return i&&nh(i,kh)?i.TypedArrayConstructor:Oh(e)}},Rh=function(t){if(!sh(t))return!1;var e=oh(t);return nh(Ah,e)||nh(Ih,e)};for(Bl in Ah)($l=(jl=eh[Bl])&&jl.prototype)?fh($l).TypedArrayConstructor=jl:Ph=!1;for(Bl in Ih)($l=(jl=eh[Bl])&&jl.prototype)&&(fh($l).TypedArrayConstructor=jl);if((!Ph||!ih(_h)||_h===Function.prototype)&&(_h=function(){throw Eh("Incorrect invocation")},Ph))for(Bl in Ah)eh[Bl]&&dh(eh[Bl],_h);if((!Ph||!wh||wh===Th)&&(wh=_h.prototype,Ph))for(Bl in Ah)eh[Bl]&&dh(eh[Bl].prototype,wh);if(Ph&&uh(Ch)!==wh&&dh(Ch,wh),th&&!nh(wh,xh))for(Bl in Lh=!0,hh(wh,xh,{get:function(){return sh(this)?this[Sh]:void 0}}),Ah)eh[Bl]&&ah(eh[Bl],Sh,Bl);var Dh={NATIVE_ARRAY_BUFFER_VIEWS:Ph,TYPED_ARRAY_TAG:Lh&&Sh,aTypedArray:function(t){if(Rh(t))return t;throw Eh("Target is not a typed array")},aTypedArrayConstructor:function(t){if(ih(t)&&(!dh||ch(_h,t)))return t;throw Eh(rh(t)+" is not a typed array constructor")},exportTypedArrayMethod:function(t,e,i,s){if(th){if(i)for(var n in Ah){var o=eh[n];if(o&&nh(o.prototype,t))try{delete o.prototype[t]}catch(r){try{o.prototype[t]=e}catch(a){}}}wh[t]&&!i||lh(wh,t,i?e:Ph&&vh[t]||e,s)}},exportTypedArrayStaticMethod:function(t,e,i){var s,n;if(th){if(dh){if(i)for(s in Ah)if((n=eh[s])&&nh(n,t))try{delete n[t]}catch(o){}if(_h[t]&&!i)return;try{return lh(_h,t,i?e:Ph&&_h[t]||e)}catch(o){}}for(s in Ah)!(n=eh[s])||n[t]&&!i||lh(n,t,e)}},getTypedArrayConstructor:Oh,isView:function(t){if(!sh(t))return!1;var e=oh(t);return"DataView"===e||nh(Ah,e)||nh(Ih,e)},isTypedArray:Rh,TypedArray:_h,TypedArrayPrototype:wh},Mh=rs,Nh=Qi,Fh=Dh.aTypedArray;(0,Dh.exportTypedArrayMethod)("at",(function(t){var e=Fh(this),i=Mh(e),s=Nh(t),n=s>=0?s:i+s;return n<0||n>=i?void 0:e[n]}));var Hh=vt,Uh=a,Bh=T(T.bind),jh=function(t,e){return Hh(t),void 0===e?t:Uh?Bh(t,e):function(){return t.apply(e,arguments)}},$h=O,Vh=Mt,Gh=rs,Wh=function(t){var e=1==t;return function(i,s,n){for(var o,r=Vh(i),a=$h(r),l=jh(s,n),h=Gh(a);h-- >0;)if(l(o=a[h],h,r))switch(t){case 0:return o;case 1:return h}return e?-1:void 0}},zh={findLast:Wh(0),findLastIndex:Wh(1)},Yh=zh.findLast,Kh=Dh.aTypedArray;(0,Dh.exportTypedArrayMethod)("findLast",(function(t){return Yh(Kh(this),t,arguments.length>1?arguments[1]:void 0)}));var Xh=zh.findLastIndex,qh=Dh.aTypedArray;(0,Dh.exportTypedArrayMethod)("findLastIndex",(function(t){return Xh(qh(this),t,arguments.length>1?arguments[1]:void 0)}));var Zh=rs,Jh=function(t,e){for(var i=Zh(t),s=new e(i),n=0;n<i;n++)s[n]=t[i-n-1];return s},Qh=Dh.aTypedArray,tc=Dh.getTypedArrayConstructor;(0,Dh.exportTypedArrayMethod)("toReversed",(function(){return Jh(Qh(this),tc(this))}));var ec=rs,ic=vt,sc=function(t,e){for(var i=0,s=ec(e),n=new t(s);s>i;)n[i]=e[i++];return n},nc=Dh.aTypedArray,oc=Dh.getTypedArrayConstructor,rc=Dh.exportTypedArrayMethod,ac=T(Dh.TypedArrayPrototype.sort);rc("toSorted",(function(t){void 0!==t&&ic(t);var e=nc(this),i=sc(oc(e),e);return ac(i,t)}));var lc=rs,hc=Qi,cc=RangeError,uc=Rn,dc=T("".slice),pc=le,gc=TypeError,fc=function(t,e,i,s){var n=lc(t),o=hc(i),r=o<0?n+o:o;if(r>=n||r<0)throw cc("Incorrect index");for(var a=new e(n),l=0;l<n;l++)a[l]=l===r?s:t[l];return a},mc=function(t){return"Big"===dc(uc(t),0,3)},yc=Qi,vc=function(t){var e=pc(t,"number");if("number"==typeof e)throw gc("Can't convert number to bigint");return BigInt(e)},bc=Dh.aTypedArray,Cc=Dh.getTypedArrayConstructor,_c=Dh.exportTypedArrayMethod,wc=!!function(){try{new Int8Array(1).with(2,{valueOf:function(){throw 8}})}catch(t){return 8===t}}();_c("with",{with:function(t,e){var i=bc(this),s=yc(t),n=mc(i)?vc(e):+e;return fc(i,Cc(i),s,n)}}.with,!wc);var Tc=Z,Ec=TypeError,xc=Ys,Sc=s,kc=q,Pc=y,Lc=Se.f,Ac=Ht,Ic=function(t,e){if(Tc(e,t))return t;throw Ec("Incorrect invocation")},Oc=xn,Rc=Fn,Dc={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1},InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}},Mc=Wn,Nc=r,Fc="DOMException",Hc=kc("Error"),Uc=kc(Fc),Bc=function(){Ic(this,jc);var t=arguments.length,e=Rc(t<1?void 0:arguments[0]),i=Rc(t<2?void 0:arguments[1],"Error"),s=new Uc(e,i),n=Hc(e);return n.name=Fc,Lc(s,"stack",Pc(1,Mc(n.stack,1))),Oc(s,this,Bc),s},jc=Bc.prototype=Uc.prototype,$c="stack"in Hc(Fc),Vc="stack"in new Uc(1,2),Gc=Uc&&Nc&&Object.getOwnPropertyDescriptor(Sc,Fc),Wc=!(!Gc||Gc.writable&&Gc.configurable),zc=$c&&!Wc&&!Vc;xc({global:!0,constructor:!0,forced:zc},{DOMException:zc?Bc:Uc});var Yc=kc(Fc),Kc=Yc.prototype;if(Kc.constructor!==Yc)for(var Xc in Lc(Kc,"constructor",Pc(1,Yc)),Dc)if(Ac(Dc,Xc)){var qc=Dc[Xc],Zc=qc.s;Ac(Yc,Zc)||Lc(Yc,Zc,Pc(6,qc.c))}var Jc={exports:{}};Jc.exports=function t(e,i,s){var n,o,r=window,a="application/octet-stream",l=s||a,h=e,c=!i&&!s&&h,u=document.createElement("a"),d=function(t){return String(t)},p=r.Blob||r.MozBlob||r.WebKitBlob||d,g=i||"download";if(p=p.call?p.bind(r):Blob,"true"===String(this)&&(l=(h=[h,l])[0],h=h[1]),c&&c.length<2048&&(g=c.split("/").pop().split("?")[0],u.href=c,-1!==u.href.indexOf(c))){var f=new XMLHttpRequest;return f.open("GET",c,!0),f.responseType="blob",f.onload=function(e){t(e.target.response,g,a)},setTimeout((function(){f.send()}),0),f}if(/^data:([\w+-]+\/[\w+.-]+)?[,;]/.test(h)){if(!(h.length>2096103.424&&p!==d))return navigator.msSaveBlob?navigator.msSaveBlob(b(h),g):C(h);l=(h=b(h)).type||a}else if(/([\x80-\xff])/.test(h)){for(var m=0,y=new Uint8Array(h.length),v=y.length;m<v;++m)y[m]=h.charCodeAt(m);h=new p([y],{type:l})}function b(t){for(var e=t.split(/[:;,]/),i=e[1],s=("base64"==e[2]?atob:decodeURIComponent)(e.pop()),n=s.length,o=0,r=new Uint8Array(n);o<n;++o)r[o]=s.charCodeAt(o);return new p([r],{type:i})}function C(t,e){if("download"in u)return u.href=t,u.setAttribute("download",g),u.className="download-js-link",u.innerHTML="downloading...",u.style.display="none",document.body.appendChild(u),setTimeout((function(){u.click(),document.body.removeChild(u),!0===e&&setTimeout((function(){r.URL.revokeObjectURL(u.href)}),250)}),66),!0;if(/(Version)\/(\d+)\.(\d+)(?:\.(\d+))?.*Safari\//.test(navigator.userAgent))return/^data:/.test(t)&&(t="data:"+t.replace(/^data:([\w\/\-\+]+)/,a)),window.open(t)||confirm("Displaying New Document\n\nUse Save As... to download, then click back to return to this page.")&&(location.href=t),!0;var i=document.createElement("iframe");document.body.appendChild(i),!e&&/^data:/.test(t)&&(t="data:"+t.replace(/^data:([\w\/\-\+]+)/,a)),i.src=t,setTimeout((function(){document.body.removeChild(i)}),333)}if(n=h instanceof p?h:new p([h],{type:l}),navigator.msSaveBlob)return navigator.msSaveBlob(n,g);if(r.URL)C(r.URL.createObjectURL(n),!0);else{if("string"==typeof n||n.constructor===d)try{return C("data:"+l+";base64,"+r.btoa(n))}catch(_){return C("data:"+l+","+encodeURIComponent(n))}(o=new FileReader).onload=function(t){C(this.result)},o.readAsDataURL(n)}return!0};var Qc=Jc.exports;function tu(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24">\n <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">\n <g transform="translate(-488.000000, -340.000000)" fill="#FFFFFF">\n <g id="Group-2">\n <g id="volme_big-copy" transform="translate(488.000000, 340.000000)">\n <rect id="Rectangle-18" x="11" y="4" width="2" height="12" rx="1"></rect>\n <rect id="Rectangle-2" x="3" y="18" width="18" height="2" rx="1"></rect>\n <rect id="Rectangle-2" transform="translate(4.000000, 17.500000) rotate(90.000000) translate(-4.000000, -17.500000) " x="1.5" y="16.5" width="5" height="2" rx="1"></rect><rect id="Rectangle-2-Copy-3" transform="translate(20.000000, 17.500000) rotate(90.000000) translate(-20.000000, -17.500000) " x="17.5" y="16.5" width="5" height="2" rx="1"></rect>\n <path d="M9.48791171,8.26502656 L9.48791171,14.2650266 C9.48791171,14.8173113 9.04019646,15.2650266 8.48791171,15.2650266 C7.93562696,15.2650266 7.48791171,14.8173113 7.48791171,14.2650266 L7.48791171,7.26502656 C7.48791171,6.71274181 7.93562696,6.26502656 8.48791171,6.26502656 L15.4879117,6.26502656 C16.0401965,6.26502656 16.4879117,6.71274181 16.4879117,7.26502656 C16.4879117,7.81731131 16.0401965,8.26502656 15.4879117,8.26502656 L9.48791171,8.26502656 Z" id="Combined-Shape" transform="translate(11.987912, 10.765027) scale(1, -1) rotate(45.000000) translate(-11.987912, -10.765027) "></path>\n </g>\n </g>\n </g>\n </g>\n</svg>\n',"image/svg+xml").firstChild}class eu extends vl{static get pluginName(){return"download"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:3,disable:!0}}constructor(e){super(e),t(this,"download",(t=>{if(this.isLock)return;this.emitUserAction(t,"download");const e=this.getAbsoluteURL(this.player.src);Qc(e),this.isLock=!0,this.timer=window.setTimeout((()=>{this.isLock=!1,window.clearTimeout(this.timer),this.timer=null}),300)})),this.timer=null,this.isLock=!1}afterCreate(){super.afterCreate(),this.config.disable||(this.appendChild(".xgplayer-icon",this.icons.download),this.bind(["click","touchend"],this.download))}registerIcons(){return{download:tu}}getAbsoluteURL(t){if(!t.match(/^https?:\/\//)){const e=document.createElement("div");e.innerHTML=`<a href="${t}">x</a>`,t=e.firstChild.href}return t}destroy(){super.destroy(),this.unbind(["click","touchend"],this.download),window.clearTimeout(this.timer),this.timer=null}render(){if(!this.config.disable)return`<xg-icon class="xgplayer-download">\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys.DOWNLOAD_TIPS}">${this.i18n.DOWNLOAD_TIPS}</div>\n </xg-icon>`}}class iu extends vl{static get pluginName(){return"screenShot"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:5,quality:.92,type:"image/png",format:".png",width:600,height:337,fitVideo:!0,disable:!1,name:"screenshot"}}beforeCreate(t){"boolean"==typeof t.player.config.screenShot&&(t.config.disable=!t.player.config.screenShot)}afterCreate(){super.afterCreate(),this.appendChild(".xgplayer-icon",this.icons.screenshotIcon);const{config:t}=this;this.initSize=e=>{t.fitVideo&&(t.width=e.vWidth,t.height=e.vHeight)},this.once(dr,this.initSize)}onPluginsReady(){this.show(),this.onClickBtn=this.onClickBtn.bind(this),this.bind(["click","touchend"],this.onClickBtn)}saveScreenShot(t,e){const i=document.createElement("a");i.href=t,i.download=e;const s=document.createEvent("MouseEvents");s.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(s)}createCanvans(t,e){const i=document.createElement("canvas");this.canvasCtx=i.getContext("2d"),this.canvas=i,i.width=t||this.config.width,i.height=e||this.config.height}onClickBtn(t){t.preventDefault(),t.stopPropagation(),this.emitUserAction(t,"shot"),this.shot().then((t=>{this.emit(fr,t),this.saveScreenShot(t,this.config.name+this.config.format)}))}shot(t,e,i={quality:.92,type:"image/png"}){const{config:s,player:n}=this,o=i.quality||s.quality,r=i.type||s.type;return new Promise(((i,a)=>{let l=null;n.video.canvas?l=n.video.canvas:(this.canvas?(this.canvas.width=t||s.width,this.canvas.height=e||s.height):this.createCanvans(t,e),this.canvasCtx.drawImage(n.video,0,0,t||s.width,e||s.height),l=this.canvas);let h=l.toDataURL(r,o).replace(r,"image/octet-stream");h=h.replace(/^data:image\/[^;]+/,"data:application/octet-stream"),i(h)}))}registerIcons(){return{screenshotIcon:null}}destroy(){super.destroy(),this.unbind(["click","touchend"],this.onClickBtn),this.off(dr,this.initSize)}render(){if(this.config.disable)return;const t="SCREENSHOT";return`\n <xg-icon class="xgplayer-shot">\n <div class="${this.icons.screenshotIcon?"xgplayer-icon":"xgplayer-icon btn-text"}">\n ${this.icons.screenshotIcon?"":`<span lang-key="${this.i18nKeys[t]}">${this.i18n[t]}</span>`} \n </div>\n </xg-icon>`}}class su{constructor(t){this.config=t.config,this.parent=t.root,this.root=xo.createDom("ul","",{},`xg-options-list ${this.config.className}`),t.root.appendChild(this.root),this.onItemClick=this.onItemClick.bind(this),this.renderItemList();const e="mobile"===Lo.device?"touchend":"click";this._delegates=Zr.delegate.call(this,this.root,"li",e,this.onItemClick)}renderItemList(t){const{config:e,root:i}=this;t?e.data=t:t=e.data,e.style&&Object.keys(e.style).map((t=>{i.style[t]=e[t]})),t.length>0&&(this.attrKeys=Object.keys(t[0])),this.root.innerHTML="",t.map(((t,e)=>{const i=t.selected?"option-item selected":"option-item";t["data-index"]=e,this.root.appendChild(xo.createDom("li",`<span>${t.showText}</span>`,t,i))}))}onItemClick(t){t.delegateTarget||(t.delegateTarget=t.target);const e=t.delegateTarget;if(e&&xo.hasClass(e,"selected"))return!1;const i="function"==typeof this.config.onItemClick?this.config.onItemClick:null,s=this.root.querySelector(".selected");xo.addClass(e,"selected"),s&&xo.removeClass(s,"selected"),i(t,{from:s?this.getAttrObj(s,this.attrKeys):null,to:this.getAttrObj(e,this.attrKeys)})}getAttrObj(t,e){if(!t||!e)return{};const i={};e.map((e=>{i[e]=t.getAttribute(e)}));const s=t.getAttribute("data-index");return s&&(i.index=Number(s)),i}show(){xo.removeClass(this.root,"hide"),xo.addClass(this.root,"active")}hide(){xo.removeClass(this.root,"active"),xo.addClass(this.root,"hide")}destroy(){this._delegates&&(this._delegates.map((t=>{t.destroy&&t.destroy()})),this._delegates=null),this.root.innerHTML=null,this.parent.removeChild(this.root),this.root=null}}const nu="mobile"===Lo.device;class ou extends Zr{static get pluginName(){return"optionsIcon"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:100,list:[],listType:"middle",listStyle:{},hidePortrait:!0,isShowIcon:!1}}constructor(e){super(e),t(this,"onEnter",(t=>{t.preventDefault(),t.stopPropagation(),this.emit("icon_mouseenter",{pluginName:this.pluginName}),this.onToggle(!0)})),t(this,"onLeave",(t=>{t.preventDefault(),t.stopPropagation(),this.emit("icon_mouseleave",{pluginName:this.pluginName}),this.isActive&&this.onToggle(!1)})),this.isActive=!1,this.curValue=null,this.curIndex=0}updateLang(t){this.renderItemList(this.config.list,this.curIndex)}afterCreate(){const{config:t}=this;nu&&"middle"!==t.listType&&(t.listType="rightSide"),t.hidePortrait&&xo.addClass(this.root,"portrait"),this.once($o,(()=>{t.list&&t.list.length>0&&(this.renderItemList(t.list),this.show())})),nu&&this.on(qo,(()=>{this.isActive&&(this.optionsList&&this.optionsList.hide(),this.isActive=!1)})),this.activeEvent=nu?"touchend":"mouseenter",this.bind(this.activeEvent,this.onEnter),this.bind("mouseleave",this.onLeave)}show(){!this.config.list||this.config.list.length<2||xo.addClass(this.root,"show")}hide(){xo.removeClass(this.root,"show")}getTextByLang(t,e,i){if(void 0===t)return"";const{list:s}=this.config;return!i&&(i=this.player.lang),e=!e||xo.isUndefined(t[e])?"text":e,"number"==typeof t&&(t=s[t]),"object"==typeof t[e]?t[e][i]||t[e].zh:t[e]||""}onToggle(t){if(this.isActive===t)return;const{controls:e}=this.player,{listType:i}=this.config;t?("rightSide"===i?e.blur():e.focus(),this.optionsList&&this.optionsList.show()):("rightSide"===i?e.focus():e.focusAwhile(),this.optionsList&&this.optionsList.hide()),this.isActive=t}onItemClick(t,e){t.preventDefault(),t.stopPropagation();const{listType:i,list:s}=this.config;(nu||"rightSide"===i)&&this.onToggle(!1),this.curIndex=e.to.index,this.curItem=s[this.curIndex],this.changeCurrentText(),this.onToggle(!1)}changeCurrentText(){const{list:t}=this.config,e=t[this.curIndex<t.length?this.curIndex:0];e&&(this.find(".icon-text").innerHTML=this.getTextByLang(e,"iconText"))}renderItemList(t,e){const{config:i,optionsList:s,player:n}=this;if("number"==typeof e&&(this.curIndex=e,this.curItem=i.list[e]),s)return s.renderItemList(t),void this.changeCurrentText();const o={config:{data:t||[],className:"rightSide"===i.listType?"right-side":"",onItemClick:(t,e)=>{this.onItemClick(t,e)}},root:"rightSide"===i.listType?n.root:this.root};this.config.isShowIcon&&(this.optionsList=new su(o),this.changeCurrentText(),this.show())}destroy(){this.unbind(this.activeEvent,this.onToggle),this.unbind("mouseleave",this.onToggle),this.optionsList&&(this.optionsList.destroy(),this.optionsList=null)}render(){if(this.config.isShowIcon)return`<xg-icon class="xg-options-icon ${this.config.className||""}">\n <div class="xgplayer-icon btn-text">\n <span class="icon-text"></span>\n </div>\n </xg-icon>`}}class ru extends ou{static get pluginName(){return"definition"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:3,list:[],defaultDefinition:"",disable:!1,hidePortrait:!1,className:"xgplayer-definition",isShowIcon:!0}}beforeCreate(t){const{list:e}=t.config;Array.isArray(e)&&e.length>0&&(t.config.list=e.map((t=>(!t.text&&t.name&&(t.text=t.name),t.text||(t.text=t.definition),t))))}constructor(t){super(t),this.curTime=0,this.isPaused=!0}afterCreate(){super.afterCreate(),this.on("resourceReady",(t=>{this.changeDefinitionList(t)})),this.on(cr,(t=>{this.renderItemList(this.config.list,t.to)})),this.player.definitionList.length<2&&this.hide()}initDefinition(){const{list:t,defaultDefinition:e}=this.config;if(t.length>0){let i=null;t.map((t=>{t.definition===e&&(i=t)})),i||(i=t[0]),this.changeDefinition(i)}}renderItemList(t=this.config.list||[],e){const i=e&&e.definition?e.definition:this.config.defaultDefinition;e&&t.forEach((t=>{t.selected=!1}));let s=0;const n=t.map(((t,e)=>{const n={url:t.url,definition:t.definition||"",showText:this.getTextByLang(t)||t.definition,selected:!1};return(t.selected||t.definition&&t.definition===i)&&(n.selected=!0,s=e),n}));super.renderItemList(n,s)}changeDefinitionList(t){Array.isArray(t)&&(this.config.list=t.map((t=>(!t.text&&t.name&&(t.text=t.name),t.text||(t.text=t.definition),t))),this.renderItemList(),this.config.list.length<2?this.hide():this.show())}changeDefinition(t,e){this.player.changeDefinition(t,e)}onItemClick(t,e){const{definitionList:i}=this.player;super.onItemClick(...arguments),this.emitUserAction(t,"change_definition",{from:e.from,to:e.to});for(let s=0;s<i.length;s++)e.to&&i[s].definition===e.to.definition&&(e.to.url=i[s].url),e.from&&i[s].definition===e.from.definition&&(e.from.url=i[s].url);this.player.changeDefinition(e.to,e.from)}}class au extends ou{static get pluginName(){return"playbackRate"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:4,list:[2,1.5,1,.75,.5],className:"xgplayer-playbackrate",isShowIcon:!0,hidePortrait:!1}}constructor(t){super(t),this.curRate=1}beforeCreate(t){const{playbackRate:e}=t.player.config,i=e?Array.isArray(e)?e:t.config.list:[];Array.isArray(i)&&(t.config.list=i.map((t=>("number"==typeof t?t={rate:t,text:`${t}x`}:!t.text&&t.rate&&(t.text=`${t.rate}x`),t))))}afterCreate(){super.afterCreate(),this.on(zo,(()=>{this.curValue!==this.player.playbackRate&&this.renderItemList()})),this.renderItemList()}show(){this.config.list&&0!==this.config.list.length&&super.show()}onItemClick(t,e){super.onItemClick(...arguments);const i=t.delegateTarget,s=Number(i.getAttribute("rate"));if(!s||s===this.curValue)return!1;const n={playbackRate:{from:this.player.playbackRate,to:s}};this.emitUserAction(t,"change_rate",{props:n}),this.curValue=s,this.player.playbackRate=s}renderItemList(){const t=this.player.playbackRate||1;this.curValue=t;let e=0;const i=this.config.list.map(((i,s)=>{const n={rate:i.rate};return n.rate===t&&(n.selected=!0,e=s),n.showText=this.getTextByLang(i),n}));super.renderItemList(i,e)}destroy(){super.destroy()}}function lu(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="31" height="40" viewBox="0 -5 31 40">\n <path fill="#fff" transform="scale(1.3, 1.3)" class=\'path_full\' d="M9,10v1a.9.9,0,0,1-1,1,.9.9,0,0,1-1-1V9A.9.9,0,0,1,8,8h2a.9.9,0,0,1,1,1,.9.9,0,0,1-1,1Zm6,4V13a1,1,0,0,1,2,0v2a.9.9,0,0,1-1,1H14a1,1,0,0,1,0-2Zm3-7H6V17H18Zm2,0V17a2,2,0,0,1-2,2H6a2,2,0,0,1-2-2V7A2,2,0,0,1,6,5H18A2,2,0,0,1,20,7Z"></path>\n</svg>\n',"image/svg+xml").firstChild}function hu(){return(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg" width="31" height="40" viewBox="0 -5 31 40">\n <path fill="#fff" transform="scale(1.3, 1.3)" d="M9,10V9a.9.9,0,0,1,1-1,.9.9,0,0,1,1,1v2a.9.9,0,0,1-1,1H8a.9.9,0,0,1-1-1,.9.9,0,0,1,1-1Zm6,4v1a1,1,0,0,1-2,0V13a.9.9,0,0,1,1-1h2a1,1,0,0,1,0,2Zm3-7H6V17H18Zm2,0V17a2,2,0,0,1-2,2H6a2,2,0,0,1-2-2V7A2,2,0,0,1,6,5H18A2,2,0,0,1,20,7Z"></path>\n</svg>\n',"image/svg+xml").firstChild}class cu extends vl{static get pluginName(){return"cssFullscreen"}static get defaultConfig(){return{position:Yr.CONTROLS_RIGHT,index:1,disable:!1,target:null}}afterCreate(){super.afterCreate(),this.config.disable||(this.config.target&&(this.playerConfig.fullscreenTarget=this.config.target),this.initIcons(),this.on(lr,(t=>{this.animate(t)})),this.btnClick=this.btnClick.bind(this),this.handleCssFullscreen=this.hook("cssFullscreen_change",this.btnClick,{pre:t=>{t.preventDefault(),t.stopPropagation()}}),this.bind(["click","touchend"],this.handleCssFullscreen))}initIcons(){const{icons:t}=this,e=this.find(".xgplayer-icon");e.appendChild(t.cssFullscreen),e.appendChild(t.exitCssFullscreen)}btnClick(t){t.preventDefault(),t.stopPropagation();const{isCssfullScreen:e}=this.player;this.emitUserAction(t,"switch_cssfullscreen",{cssfullscreen:e}),e?this.player.exitCssFullscreen():this.player.getCssFullscreen()}animate(t){this.root&&(t?this.setAttr("data-state","full"):this.setAttr("data-state","normal"),this.switchTips(t))}switchTips(t){const{i18nKeys:e}=this;this.changeLangTextKey(this.find(".xg-tips"),t?e.EXITCSSFULLSCREEN_TIPS:e.CSSFULLSCREEN_TIPS)}registerIcons(){return{cssFullscreen:{icon:lu,class:"xg-get-cssfull"},exitCssFullscreen:{icon:hu,class:"xg-exit-cssfull"}}}destroy(){super.destroy(),this.unbind(["click","touchend"],this.btnClick)}render(){if(!this.config.disable)return`<xg-icon class='xgplayer-cssfullscreen'>\n <div class="xgplayer-icon">\n </div>\n <div class="xg-tips" lang-key="${this.i18nKeys.EXITCSSFULLSCREEN_TIPS}">${this.i18n.CSSFULLSCREEN_TIPS}</div>\n </xg-icon>`}}class uu extends Zr{static get pluginName(){return"error"}afterCreate(){this.clickHandler=this.hook("errorRetry",this.errorRetry,{pre:t=>{t.preventDefault(),t.stopPropagation()}}),this.onError=this.hook("showError",this.handleError),this.bind(".xgplayer-error-refresh","click",this.clickHandler),this.on($o,(()=>{this.handleCanPlay()})),this.on(Fo,(t=>{this.onError(t)}))}errorRetry(t){this.emitUserAction(t,"error_retry",{}),this.player.retry()}handleCanPlay(){xo.removeClass(this.player.root,"xgplayer-is-error")}handleError(t={}){const{player:e}=this,i=t.errorType;let s=e.errorNote?this.i18n[e.errorNote]:"";if(!s)switch(i){case"decoder":s=this.i18n.MEDIA_ERR_DECODE;break;case"network":s=this.i18n.MEDIA_ERR_NETWORK;break;default:s=this.i18n.MEDIA_ERR_SRC_NOT_SUPPORTED}this.find(".xgplayer-error-text").innerHTML=s,this.find(".xgplayer-error-tips").innerHTML=`${this.i18n.REFRESH_TIPS}<span class="xgplayer-error-refresh">${this.i18n.REFRESH}</span>`}destroy(){this.unbind(".xgplayer-error-refresh","click",this.clickHandler)}render(){return'<xg-error class="xgplayer-error">\n <div class="xgplayer-errornote">\n <span class="xgplayer-error-text"></span>\n <span class="xgplayer-error-tips"><em class="xgplayer-error-refresh"></em></span>\n </div>\n </xg-error>'}}class du extends Zr{static get pluginName(){return"prompt"}static get defaultConfig(){return{interval:3e3,style:{},mode:"arrow",autoHide:!0,detail:{text:"",highlight:""},onClick:()=>{}}}afterCreate(){this.intervalId=0,this.customConfig=null,this.bind(".highlight",["click","touchend"],(t=>{(this.config.onClick||this.customOnClick)&&(t.preventDefault(),t.stopPropagation(),this.customOnClick?this.customOnClick(t):this.config.onClick(t))})),this.player.showPrompt=(...t)=>{this.show(...t)},this.player.hidePrompt=()=>{this.hide()}}setStyle(t){Object.keys(t).map((e=>{this.root.style[e]=t[e]}))}show(t,e={},i=(()=>{})){if(!t)return;this.customOnClick=i;const{interval:s}=this.config;this.intervalId&&(clearTimeout(this.intervalId),this.intervalId=null),xo.addClass(this.root,"show"),"arrow"===e.mode&&xo.addClass(this.root,"arrow"),this.find(".xgplayer-prompt-detail").innerHTML="string"==typeof t?t:`${t.text||""}${t.highlight?`<i class="highlight">${t.highlight}</i>`:""}`,e.style&&this.setStyle(e.style);if("boolean"==typeof e.autoHide?e.autoHide:this.config.autoHide){const t=e.interval||s;this.intervalId=setTimeout((()=>{this.hide()}),t)}}hide(){xo.removeClass(this.root,"show"),xo.removeClass(this.root,"arrow"),this.root.removeAttribute("style"),this.customOnClick=null}render(){return`<xg-prompt class="xgplayer-prompt ${ea.CONTROLS_FOLLOW}">\n <span class="xgplayer-prompt-detail"></span>\n </xg-prompt>`}}const pu={time:0,text:"",id:1,duration:1,color:"#fff",style:{},width:6,height:6};function gu(t){Object.keys(pu).map((e=>{void 0===t[e]&&(t[e]=pu[e])}))}const fu={initDots(){this._ispots.map((t=>{this.createDot(t,!1)})),this._ispotsInit=!0},createDot(t,e=!0){const{progress:i}=this.player.plugins;if(!i)return;if(e&&(gu(t),this._ispots.push(t)),!this._ispotsInit&&e)return;const s=this.calcuPosition(t.time,t.duration),n=t.style||{};n.left=`${s.left}%`,n.width=`${s.width}%`;let o=`xgspot_${t.id} xgplayer-spot`;s.isMini&&(o+=" mini");const r=xo.createDom("xg-spot",t.template||"",{"data-text":t.text,"data-time":t.time,"data-id":t.id},o);Object.keys(n).map((t=>{r.style[t]=n[t]})),i.outer&&i.outer.appendChild(r)},findDot(t){if(!this.player.plugins.progress)return;const e=this._ispots.filter(((e,i)=>e.id===t));return e.length>0?e[0]:null},updateDot(t,e=!1){const{progress:i}=this.player.plugins;if(!i)return;const s=this.findDot(t.id);if(s&&Object.keys(t).map((e=>{s[e]=t[e]})),!this._ispotsInit)return;const n=i.find(`xg-spot[data-id="${t.id}"]`);if(!n)return;const o=this.calcuPosition(t.time,t.duration),r=t.style||{};r.left=`${o.left}%`,r.width=`${o.width}%`,n.setAttribute("data-text",t.text),n.setAttribute("data-time",t.time),o.isMini?xo.addClass(n,"mini"):xo.removeClass(n,"mini"),Object.keys(r).map((t=>{n.style[t]=r[t]})),e&&this.showDot(t.id)},deleteDot(t){const{_ispots:e}=this,{progress:i}=this.player.plugins;if(!i)return;const s=[];for(let n=0;n<e.length;n++)e[n].id===t&&s.push(n);for(let n=s.length-1;n>=0;n--)if(e.splice(s[n],1),this._ispotsInit){const e=i.find(`xg-spot[data-id="${t}"]`);e&&e.parentElement.removeChild(e)}},deleteAllDots(){const{progress:t}=this.player.plugins;if(!t)return;if(!this._ispotsInit)return void(this._ispots=[]);const e=t.root.getElementsByTagName("xg-spot");for(let i=e.length-1;i>=0;i--)t.outer.removeChild(e[i]);this._ispots=[]},updateAllDots(t=[]){const{progress:e}=this.player.plugins;if(!e)return;if(!this._ispotsInit)return void(this._ispots=t);this._ispots=[];const i=e.root.getElementsByTagName("xg-spot"),s=i.length;if(s>t.length)for(let n=s-1;n>t.length-1;n--)e.outer.removeChild(i[n]);t.map(((t,e)=>{e<s?(i[e].setAttribute("data-id",`${t.id}`),this._ispots.push(t),this.updateDot(t)):this.createDot(t)}))},getAllDotsDom(){const{progress:t}=this.player.plugins;if(!t)return[];return t.root.getElementsByTagName("xg-spot")},getDotDom(t){const{progress:e}=this.player.plugins;if(e)return e.find(`xg-spot[data-id="${t}"]`)}};const mu={dragmove:"onProgressMove",dragstart:"onProgressDragStart",dragend:"onProgressDragEnd",click:"onProgressClick",mouseover:"onProgressMouseOver"};class yu extends Zr{constructor(e){super(e),t(this,"onMousemove",(t=>{this.config.disable||(this._state.f||xo.hasClass(t.target,"xg-spot-content"))&&(xo.event(t),t.stopPropagation())})),t(this,"onMousedown",(t=>{this.config.disable||(this._state.f||xo.hasClass(t.target,"xg-spot-content"))&&(xo.event(t),t.stopPropagation())})),t(this,"onMouseup",(t=>{if(!this.isDrag)return;const{progress:e}=this.player.plugins;e&&e.pos&&(e.onMouseUp(t),!e.pos.isEnter&&e.onMouseLeave(t))})),t(this,"onDotMouseLeave",(t=>{if(this.config.disable)return;this._curDot.removeEventListener("mouseleave",this.onDotMouseLeave),this.blurDot(t.target),this._curDot=null;const{progress:e}=this.player.plugins;e&&e.enableBlur(),this.show()})),t(this,"onProgressMouseOver",((t,e)=>{if(!this.config.disable&&xo.hasClass(e.target,"xgplayer-spot")&&!this._curDot){this._curDot=e.target,this.focusDot(e.target),this._curDot.children.length>0&&this.hide();const{progress:t}=this.player.plugins;t&&t.disableBlur(),this._curDot.addEventListener("mouseleave",this.onDotMouseLeave)}})),this._ispots=[],this.videoPreview=null,this.videothumbnail=null,this.thumbnail=null,this._state={now:0,f:!1}}static get pluginName(){return"progresspreview"}static get defaultConfig(){return{index:1,miniWidth:6,ispots:[],defaultText:"",isFocusDots:!0,isShowThumbnail:!0,isShowCoverPreview:!1,mode:"",disable:!1}}beforeCreate(t){const e=t.player.plugins.progress;e&&(t.root=e.root)}afterCreate(){this._curDot=null,this.handlerSpotClick=this.hook("spotClick",((t,e)=>{e.time&&this.player.seek(e.time)})),function(t){const{config:e,player:i}=t;Object.keys(fu).map((e=>{t[e]=fu[e].bind(t)}));const s=i.config.progressDot||e.ispots||[];t._ispots=s.map((t=>(gu(t),t))),t._ispotsInit=!1,i.once(Vo,(()=>{t.initDots()}))}(this),this.config.disable&&this.disable()}setConfig(t){t&&Object.keys(t).map((e=>{this.config[e]=t[e]}))}onPluginsReady(){const{player:t}=this;t.plugins.progress&&(this.previewLine=this.find(".xg-spot-line"),this.timePoint=this.find(".xgplayer-progress-point"),this.timeText=this.find(".xg-spot-time"),this.tipText=this.find(".spot-inner-text"),this._hasThumnail=!1,this.registerThumbnail(),this.bindEvents())}bindEvents(){const{progress:t}=this.player.plugins;if(!t)return;if(Object.keys(mu).map((e=>{this[mu[e]]=this[mu[e]].bind(this),t.addCallBack(e,this[mu[e]])})),"mobile"===Lo.device)return;this.bind(".xg-spot-info","mousemove",this.onMousemove),this.bind(".xg-spot-info","mousedown",this.onMousedown),this.bind(".xg-spot-info","mouseup",this.onMouseup);const e=this.hook("previewClick",((...t)=>{}));this.handlerPreviewClick=t=>{t.stopPropagation(),e(parseInt(1e3*this._state.now,10)/1e3,t)},this.bind(".xg-spot-content","mouseup",this.handlerPreviewClick)}onProgressMove(t,e){!this.config.disable&&this.player.duration&&this.updatePosition(t.offset,t.width,t.currentTime,t.e)}onProgressDragStart(t){!this.config.disable&&this.player.duration&&(this.isDrag=!0,this.videoPreview&&xo.addClass(this.videoPreview,"show"))}onProgressDragEnd(t){!this.config.disable&&this.player.duration&&(this.isDrag=!1,this.videoPreview&&xo.removeClass(this.videoPreview,"show"))}onProgressClick(t,e){if(!this.config.disable&&xo.hasClass(e.target,"xgplayer-spot")){e.stopPropagation(),e.preventDefault();const t={};["time","id","text"].map((i=>{t[i]=e.target.getAttribute(`data-${i}`)})),t.time&&(t.time=Number(t.time)),this.handlerSpotClick(e,t)}}updateLinePos(t,e){const{root:i,previewLine:s,timePoint:n,player:o}=this,{mode:r}=o.controls,a="flex"===r,l=i.getBoundingClientRect().width,h=n.getBoundingClientRect().width;let c,u,d=t-l/2;d<0&&!a?(d=0,c=t-l/2,!this.thumbnail&&(u=t-l/2-h/2)):d>e-l&&!a?(c=d-(e-l),!this.thumbnail&&(u=d-(e-l)-h/2),d=e-l):!this.thumbnail&&(u=-h/2),s.style.transform=void 0!==c?`translateX(${c}px)`:"",n.style.transform=void 0!==u?`translateX(${u}px)`:"",i.style.transform=`translateX(${d}px)`}updateTimeText(t){const{timeText:e,timePoint:i}=this;e.textContent=t,!this.thumbnail&&(i.textContent=t)}updatePosition(t,e,i,s){const{root:n,config:o,_state:r}=this;if(!n)return;this.updateLinePos(t,e),r.now=i;const a=xo.format(i);s&&s.target&&xo.hasClass(s.target,"xgplayer-spot")?(this.showTips(s.target.getAttribute("data-text"),!1,a),this.focusDot(s.target),r.f=!0,o.isFocusDots&&r.f&&(r.now=parseInt(s.target.getAttribute("data-time"),10))):o.defaultText?(r.f=!1,this.showTips(o.defaultText,!0,a)):(r.f=!1,this.hideTips("")),this.updateTimeText(a),this.updateThumbnails(r.now)}updateThumbnails(t){const{player:e,videoPreview:i}=this,{thumbnail:s}=e.plugins;if(s&&s.usable){this.thumbnail&&s.update(this.thumbnail,t,160,90);const e=i&&i.getBoundingClientRect();this.videothumbnail&&s.update(this.videothumbnail,t,e.width,e.height)}}changeThumbnail(t={}){if("mobile"===Lo.device)return;const{player:e,config:i}=this,s=e.getPlugin("thumbnail");if(s.changeConfig(t),s&&s.usable&&i.isShowThumbnail){xo.removeClass(this.root,"short-line no-thumbnail"),this._hasThumnail=!0;const t=this.find(".xg-spot-thumbnail");this.videoPreview&&this.player.root.removeChild(this.videoPreview),this.thumbnail&&t.removeChild(this.thumbnail),this.thumbnail=s.createThumbnail(t,"progress-thumbnail"),i.isShowCoverPreview&&(this.videoPreview=xo.createDom("xg-video-preview","",{},"xgvideo-preview"),e.root.appendChild(this.videoPreview),this.videothumbnail=s.createThumbnail(this.videoPreview,"xgvideo-thumbnail"))}else{xo.addClass(this.root,"short-line no-thumbnail");const t=this.find(".xg-spot-thumbnail");this.videoPreview&&this.player.root.removeChild(this.videoPreview),this.thumbnail&&t.removeChild(this.thumbnail),this.videothumbnail=null,this.thumbnail=null,this._hasThumnail=!1}}registerThumbnail(t={}){if("mobile"===Lo.device)return;const{player:e,config:i}=this,s=e.getPlugin("thumbnail");if(s&&s.setConfig(t),!(s&&s.usable&&i.isShowThumbnail))return void xo.addClass(this.root,"short-line no-thumbnail");xo.removeClass(this.root,"short-line no-thumbnail"),this._hasThumnail=!0;const n=this.find(".xg-spot-thumbnail");this.thumbnail=s.createThumbnail(n,"progress-thumbnail"),i.isShowCoverPreview&&(this.videoPreview=xo.createDom("xg-video-preview","",{},"xgvideo-preview"),e.root.appendChild(this.videoPreview),this.videothumbnail=s.createThumbnail(this.videoPreview,"xgvideo-thumbnail"))}calcuPosition(t,e){const{progress:i}=this.player.plugins,{player:s}=this,n=i.root.getBoundingClientRect().width,o=s.duration/n*6;return t+e>s.duration&&(e=s.duration-t),s.duration,s.duration,{left:t/s.duration*100,width:e/s.duration*100,isMini:e<o}}showDot(t){const e=this.findDot(t);if(e){const t=this.root.getBoundingClientRect(),{width:i}=t,s=e.time/this.player.duration*i;this.updatePosition(s,i,e.time)}}focusDot(t,e){t&&(e||(e=t.getAttribute("data-id")),xo.addClass(t,"active"),this._activeDotId=e)}blurDot(t){if(!t){const e=this._activeDotId;t=this.getDotDom(e)}t&&(xo.removeClass(t,"active"),this._activeDotId=null)}showTips(t,e,i=""){xo.addClass(this.root,"no-timepoint"),t&&(xo.addClass(this.find(".xg-spot-content"),"show-text"),e&&"production"===this.config.mode?(xo.addClass(this.root,"product"),this.tipText.textContent=t):(xo.removeClass(this.root,"product"),this.tipText.textContent=this._hasThumnail?t:`${i} ${t}`))}hideTips(){xo.removeClass(this.root,"no-timepoint"),this.tipText.textContent="",xo.removeClass(this.find(".xg-spot-content"),"show-text"),xo.removeClass(this.root,"product")}hide(){xo.addClass(this.root,"hide")}show(){xo.removeClass(this.root,"hide")}enable(){const{config:t,playerConfig:e}=this;this.config.disable=!1,this.show(),!this.thumbnail&&t.isShowThumbnail&&this.registerThumbnail(e.thumbnail||{})}disable(){this.config.disable=!0,this.hide()}destroy(){const{progress:t}=this.player.plugins;t&&Object.keys(mu).map((e=>{t.removeCallBack(e,this[mu[e]])})),this.videothumbnail=null,this.thumbnail=null,this.videoPreview&&this.player.root.removeChild(this.videoPreview),this.unbind(".xg-spot-info","mousemove",this.onMousemove),this.unbind(".xg-spot-info","mousedown",this.onMousedown),this.unbind(".xg-spot-info","mouseup",this.onMouseup),this.unbind(".xg-spot-content","mouseup",this.handlerPreviewClick)}render(){return"mobile"===Lo.device||"mobile"===this.playerConfig.isMobileSimulateMode?"":`<div class="xg-spot-info ${"short"===this.config.mode?"short-line":""}">\n <div class="xg-spot-content">\n <div class="xg-spot-thumbnail">\n <span class="xg-spot-time"></span>\n </div>\n <div class="xg-spot-text"><span class="spot-inner-text"></span></div>\n </div>\n <div class="xgplayer-progress-point">00:00</div>\n <div class="xg-spot-line"></div>\n </div>`}}class vu extends Zr{static get pluginName(){return"thumbnail"}static get defaultConfig(){return{isShow:!1,urls:[],pic_num:0,col:0,row:0,width:160,height:90,scale:1,className:"",hidePortrait:!1}}constructor(t){super(t),this.ratio=1,this.interval=-1,this.preloadMark={}}afterCreate(){this.usable&&this.initThumbnail(),this.on([Vo],(()=>{const{pic_num:t,interval:e}=this.config;this.usable&&(this.interval=e>0?e:Math.round(1e3*this.player.duration/t)/1e3)}))}setConfig(t){t&&(Object.keys(t).map((e=>{this.config[e]=t[e]})),this.usable&&this.initThumbnail())}get usable(){const{urls:t,pic_num:e}=this.config;return t&&t.length>0&&e>0}initThumbnail(){const{width:t,height:e,pic_num:i,interval:s}=this.config;this.ratio=t/e*100,this.interval=s>0?s:Math.round(1e3*this.player.duration/i)/1e3,this.preload(0)}getUrlByIndex(t){return t>=0&&t<this.config.urls.length?this.config.urls[t]:""}preload(t){const{urls:e}=this.config,i=e.length;[t-1,t,t+1,t+2].map((t=>{!this.preloadMark[t]&&t>=0&&t<i&&(xo.preloadImg(e[t]),this.preloadMark[t]=!0)}))}getPosition(t,e=0,i=0){const{pic_num:s,row:n,col:o,width:r,height:a}=this.config;let l=Math.ceil(t/this.interval);l=l>s?s:l;const h=l<n*o?0:Math.ceil(l/(n*o))-1,c=l-h*(o*n),u=c>0?Math.ceil(c/o)-1:0,d=c>0?c-u*o-1:0;let p=0,g=0;if(e&&i){e/i<r/a?(p=e,g=p/(r/a)):(g=i,p=g*(r/a))}else p=e||r,g=p/(r/a);const f=this.getUrlByIndex(h);return{urlIndex:h,rowIndex:u,colIndex:d,url:f,height:g,width:p,style:{backgroundImage:`url(${f})`,backgroundSize:p*o+"px auto",backgroundPosition:`-${d*p}px -${u*g}px`,width:`${p}px`,height:`${g}px`}}}update(t,e,i=0,s=0,n={}){const{pic_num:o,urls:r}=this.config;if(o<1||!r||0===r.length)return;const a=this.getPosition(e,i,s);this.preload(a.urlIndex),Object.keys(a.style).map((e=>{t.style[e]=a.style[e]})),Object.keys(n).map((e=>{t.style[e]=n[e]}))}changeConfig(t={}){this.setConfig(t)}createThumbnail(t,e){const i=xo.createDom("xg-thumbnail","",{},`thumbnail ${e}`);return t&&t.appendChild(i),i}}class bu extends Zr{static get pluginName(){return"MiniProgress"}static get defaultConfig(){return{}}afterCreate(){}update(t={cached:0,played:0},e){e&&this.root&&(t.cached&&(this.find("xg-mini-progress-cache").style.width=t.cached/e*100+"%"),t.played&&(this.find("xg-mini-progress-played").style.width=t.played/e*100+"%"))}render(){if(this.playerConfig.progress&&this.playerConfig.miniprogress)return'<xg-mini-progress class="xg-mini-progress">\n <xg-mini-progress-cache class="xg-mini-progress-cache"></xg-mini-progress-cache>\n <xg-mini-progress-played class="xg-mini-progress-played"></xg-mini-progress-played>\n </xg-mini-progress>'}}const Cu="realtime",_u="firstframe";let wu=null;class Tu extends Zr{constructor(...e){super(...e),t(this,"onLoadedData",(()=>{this.player&&this.renderOnce()})),t(this,"start",(()=>{const{video:t}=this.player,e=function(){try{return window.performance.now()}catch(t){return(new Date).getTime()}}(),i=this.checkVideoIsSupport(t);i&&this.canvasCtx&&t.videoWidth&&t.videoHeight&&(this.stop(),this.videoPI=t.videoHeight>0?parseInt(t.videoWidth/t.videoHeight*100,10):0,(this.config.mode===Cu||e-this.preTime>=this.interval)&&(t&&t.videoWidth&&this.update(i,this.videoPI),this.preTime=e),this.frameId=xo.requestAnimationFrame(this.start))})),t(this,"stop",(()=>{this.frameId&&(xo.cancelAnimationFrame(this.frameId),this.frameId=null)}))}static get pluginName(){return"dynamicBg"}static get defaultConfig(){return{isInnerRender:!1,disable:!0,mode:"framerate",frameRate:10,filter:"blur(50px)",addMask:!0,multiple:1.2,maskBg:"rgba(0,0,0,0.7)"}}static get isSupport(){return"boolean"==typeof wu||(wu=function(){try{return!!document.createElement("canvas").getContext}catch(t){return!1}}()),wu}static supportCanvasFilter(){return!("safari"===Lo.browser||"firefox"===Lo.browser)}afterCreate(){!0===this.playerConfig.dynamicBg&&(this.config.disable=!1),Tu.isSupport||(this.config.disable=!0);const{disable:t,mode:e}=this.config;t||(this._pos={width:0,height:0,rwidth:0,rheight:0,x:0,y:0,pi:0},this.isStart=!1,this.videoPI=0,this.preTime=0,this.interval=parseInt(1e3/this.config.frameRate,10),this.canvas=null,this.canvasCtx=null,this.once(ir,(()=>{this.player&&this.init()})),this.once(Wo,this.onLoadedData),e!==_u&&(this.on(Xo,(()=>{this.stop()})),this.on(Ro,(()=>{this.start()})),this.on(No,(()=>{this.stop()}))),e===_u&&this.once(Bo,(()=>{this.renderOnce()})))}init(){const{player:t,config:e}=this;this.canvasFilter=Tu.supportCanvasFilter();try{const i=this.config.isInnerRender&&t.innerContainer||t.root;i.insertAdjacentHTML("afterbegin",'<div class="xgplayer-dynamic-bg"><canvas>\n </canvas><xgmask></xgmask></div>'),this.root=i.children[0],this.canvas=this.find("canvas"),this.canvasFilter||(this.canvas.style.filter=e.filter,this.canvas.style.webkitFilter=e.filter),this.mask=this.find("xgmask"),e.addMask&&(this.mask.style.background=e.maskBg),this.canvasCtx=this.canvas.getContext("2d"),this.renderByPoster()}catch(i){To.logError("plugin:DynamicBg",i)}}checkVideoIsSupport(t){if(!t)return null;const e=t&&t instanceof window.HTMLVideoElement?t:t.canvas?t.canvas:t.flyVideo?t.flyVideo:null;if(e&&("safari"!==Lo.browser||!/^blob/.test(e.currentSrc)&&!/^blob/.test(e.src)))return e;const i=e?e.tagName.toLowerCase():"";return"canvas"===i||"img"===i?e:null}renderByPoster(){const{poster:t}=this.playerConfig;if(t){const e="String"===xo.typeOf(t)?t:"String"===xo.typeOf(t.poster)?t.poster:null;this.updateImg(e)}}renderOnce(){const{video:t}=this.player;if(!t.videoWidth||!t.videoHeight)return;this.videoPI=parseInt(t.videoWidth/t.videoHeight*100,10);const e=this.checkVideoIsSupport(t);e&&t.videoWidth&&this.update(e,this.videoPI)}updateImg(t){if(!t)return;const{width:e,height:i}=this.canvas.getBoundingClientRect();let s=new window.Image;s.onload=()=>{if(!this.canvas)return;this.canvas.height=i,this.canvas.width=e;const t=parseInt(e/i*100,10);this.update(s,t),s=null},s.src=t}update(t,e){if(this.canvas&&this.canvasCtx&&e)try{const{_pos:i,config:s}=this,{width:n,height:o}=this.canvas.getBoundingClientRect();if(n!==i.width||o!==i.height||i.pi!==e){const t=parseInt(n/o*100,10);i.pi=e,i.width=this.canvas.width=n,i.height=this.canvas.height=o;let r=o,a=n;t<e?a=parseInt(o*e/100,10):t>e&&(r=parseInt(100*n/e,10)),i.rwidth=a*s.multiple,i.rheight=r*s.multiple,i.x=(n-i.rwidth)/2,i.y=(o-i.rheight)/2}this.canvasFilter&&(this.canvasCtx.filter=s.filter),this.canvasCtx.drawImage(t,i.x,i.y,i.rwidth,i.rheight)}catch(i){To.logError("plugin:DynamicBg",i)}}destroy(){this.stop(),this.canvasCtx=null,this.canvas=null}render(){return""}}var Eu={LANG:"zh-cn",TEXT:{ERROR_TYPES:{network:{code:1,msg:"视频下载错误"},mse:{code:2,msg:"流追加错误"},parse:{code:3,msg:"解析错误"},format:{code:4,msg:"格式错误"},decoder:{code:5,msg:"解码错误"},runtime:{code:6,msg:"语法错误"},timeout:{code:7,msg:"播放超时"},other:{code:8,msg:"其他错误"}},HAVE_NOTHING:"没有关于音频/视频是否就绪的信息",HAVE_METADATA:"音频/视频的元数据已就绪",HAVE_CURRENT_DATA:"关于当前播放位置的数据是可用的,但没有足够的数据来播放下一帧/毫秒",HAVE_FUTURE_DATA:"当前及至少下一帧的数据是可用的",HAVE_ENOUGH_DATA:"可用数据足以开始播放",NETWORK_EMPTY:"音频/视频尚未初始化",NETWORK_IDLE:"音频/视频是活动的且已选取资源,但并未使用网络",NETWORK_LOADING:"浏览器正在下载数据",NETWORK_NO_SOURCE:"未找到音频/视频来源",MEDIA_ERR_ABORTED:"取回过程被用户中止",MEDIA_ERR_NETWORK:"网络错误",MEDIA_ERR_DECODE:"解码错误",MEDIA_ERR_SRC_NOT_SUPPORTED:"不支持的音频/视频格式",REPLAY:"重播",ERROR:"网络连接似乎出现了问题",PLAY_TIPS:"播放",PAUSE_TIPS:"暂停",PLAYNEXT_TIPS:"下一集",DOWNLOAD_TIPS:"下载",ROTATE_TIPS:"旋转",RELOAD_TIPS:"重新载入",FULLSCREEN_TIPS:"进入全屏",EXITFULLSCREEN_TIPS:"退出全屏",CSSFULLSCREEN_TIPS:"进入样式全屏",EXITCSSFULLSCREEN_TIPS:"退出样式全屏",TEXTTRACK:"字幕",PIP:"画中画",SCREENSHOT:"截图",LIVE:"正在直播",OFF:"关闭",OPEN:"开启",MINI_DRAG:"点击按住可拖动视频",MINISCREEN:"小屏幕",REFRESH_TIPS:"请试试",REFRESH:"刷新",FORWARD:"快进中",LIVE_TIP:"直播"}};const xu="info",{STATS_EVENTS:Su}=wr;class ku extends Br{constructor(...e){super(...e),t(this,"_recordUserActions",(t=>{const e=this._getTime(),i=Object.assign({},t,{msg:t.msg||t.action});this._stats.info.push({type:"userAction",...e,payload:i})})),t(this,"_onReset",(()=>{this.reset()})),t(this,"_recordInfo",(t=>{this.info(t)})),t(this,"_downloadStats",(()=>{const t=this.getStats();let e=new Blob([JSON.stringify(t)],{type:"application/json"}),i=window.URL.createObjectURL(e),s=document.createElement("a");s.style.display="none",s.href=i,console.log("linkhref",i),s.download="player.txt",s.disabled=!1,s.click()}))}static get pluginName(){return"stats"}static get defaultConfig(){return{}}_getTime(){return{timestamp:Date.now(),timeFormat:(new Date).toISOString()}}afterCreate(){this.reset(),this.on(br,this._recordUserActions),this.on(Su.STATS_INFO,this._recordInfo),this.on(Su.STATS_DOWNLOAD,this._downloadStats),this.on(Su.STATS_RESET,this._onReset)}destroy(){this.offAll()}downloadStats(){this._downloadStats()}info(t){t.profile?this._infoProfile(t):this._info(t)}_info(t){const e=this._getTime();this._stats.info.push({...e,payload:t})}_infoProfile(t){if(t&&t.startMs){const e={cat:"function",dur:Date.now()-t.startMs,name:t.name||t.msg,ph:"X",pid:0,tid:0,ts:t.startMs,profile:!0,...t};this._info(e)}else console.warn("infoProfile need object data, include startMs")}reset(){this._stats={[xu]:[],media:{}}}getStats(){const{player:t}=this,e=t.video,i=[];for(let n=0;n<e.buffered.length;n++)i.push({start:e.buffered.start(n),end:e.buffered.end(n)});const s={currentTime:e.currentTime,readyState:e.readyState,buffered:i,paused:e.paused,ended:e.ended};return this._stats.media=s,{raw:this._stats,timestat:this._getTimeStats(),profile:this._getProfile()}}_getTimeStats(){return this._stats.info.map((t=>{const e=t.payload.data;let i="";try{e instanceof Error?i=e.msg:void 0!==e&&(i=JSON.stringify(e))}catch(s){console.log("err",s)}return`[${t.timeFormat}] : ${t.payload.msg} ${i} `}))}_getProfile(){const t={traceEvents:[]};return this._stats.info.forEach((e=>{e.payload.profile&&t.traceEvents.push(e.payload)})),t}}class Pu extends Zr{constructor(...e){super(...e),t(this,"onGapJump",(()=>{const{player:t,config:e}=this;if(t.video.readyState===HTMLMediaElement.HAVE_NOTHING)return;if(t.video.seeking){if(!this.seekingEventReceived)return}else this.seekingEventReceived=!1;if(t.video.paused&&0!==t.video.currentTime&&this.hasPlayed)return;const i=t.video.buffered,s=e.smallGapLimit||.5,n=e.gapDetectionThreshold||.3,o=t.video.currentTime,r=this._getIndex(i,o,n);if(null===r||0===r)return;console.log("GapJump bufferRange ",i.start(r),i.end(r));const a=i.start(r)+.1;if(a>t.video.duration)return;const l=a-o,h=l<=s;l<Pu.BROWSER_GAP_TOLERANCE||h&&(!1!==e.useGapJump&&(t.video.currentTime=this.isSafari?a+.1:a),this.player&&this.player.emit("detectGap"),console.log("gapJump gapIndex",r," isGapSamll:",h," currentTime:",t.video.currentTime," jumpSize:",o-t.video.currentTime),.08!==a&&t&&t.emit("log",{type:"oneevent",end_type:"gap",vid:t.config.vid,ext:{video_postion:Math.floor(1e3*a)}}))}))}static get pluginName(){return"gapJump"}static get defaultConfig(){return{useGapJump:!1,smallGapLimit:.5,gapDetectionThreshold:.3}}afterCreate(){const{useGapJump:t}=this.config;!1!==t&&(this.hasPlayed=!1,this.seekingEventReceived=!1,this.isSafari=/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),this.on(jo,this.onGapJump),this.on(Ro,(()=>{this.hasPlayed=!0})),this.on(Ho,(()=>{this.seekingEventReceived=!0})))}_getIndex(t,e,i){if(!t||!t.length)return null;if(1===t.length&&t.end(0)-t.start(0)<1e-6)return null;const s=this._getBuffered(t);let n=null;for(let o=0;o<s.length;o++){if(s[o].start>e&&(0===o||s[o-1].end-e<=i)){n=o;break}}return n}_getBuffered(t){if(!t)return[];const e=[];for(let i=0;i<t.length;i++)e.push({start:t.start(i),end:t.end(i)});return e}}Pu.BROWSER_GAP_TOLERANCE=.001;class Lu extends Zr{constructor(...e){super(...e),t(this,"onWaiting",(()=>{const{config:t}=this;this.jumpCnt>t.jumpCntMax||this.timer||!1===t.useWaitingTimeoutJump||(this.timer=setTimeout(this.onJump,1e3*t.waitingTime))})),t(this,"onJump",(()=>{const{player:t,config:e}=this;if(clearTimeout(this.timer),this.timer=null,this.jumpCnt>e.jumpCntMax||!1===e.useWaitingTimeoutJump)return;if(t.video.paused&&0!==t.video.currentTime&&this.hasPlayed)return;this.jumpSize=e.jumpSize*(this.jumpCnt+1),this.jumpCnt===e.jumpSize&&this.jumpSize<6&&(this.jumpSize=6);const i=t.currentTime+this.jumpSize;i>t.video.duration||(console.log("waitintTimeout, currentTime:",t.currentTime,", jumpTo:",i),this.jumpCnt++,t.currentTime=i)}))}static get pluginName(){return"waitingTimeoutJump"}static get defaultConfig(){return{useWaitingTimeoutJump:!1,waitingTime:15,jumpSize:2,jumpCntMax:4}}afterCreate(){const{useWaitingTimeoutJump:t,jumpSize:e}=this.config;!1!==t&&(this.hasPlayed=!1,this.jumpCnt=0,this.timer=null,this.jumpSize=e,this.on(jo,this.onWaiting),this.on([Do,$o],(()=>{clearTimeout(this.timer),this.timer=null,this.jumpSize=this.config.jumpSize})),this.on(Ro,(()=>{this.hasPlayed=!0})))}}const Au="SPEEDLISTCACHE";class Iu extends Zr{constructor(...e){super(...e),t(this,"getSpeed",(t=>{const e=[];if(t.length<=0)return 0;t.map((t=>{e.push(t)})),e.sort(((t,e)=>t-e));let i=0;for(let n=0;n<e.length;n++)i+=e[n];i/=2;let s=e[Math.floor(e.length/2)];for(let n=0;n<e.length;n++)if(i-=e[n],i<=0){s=e[n];break}return s})),t(this,"testSpeed",(()=>{clearTimeout(this.timer),this.timer=null;const{url:t,loadSize:e,testCnt:i,testTime:s,testTimeStep:n}=this.config,o=t+(t.indexOf("?")<0?"?testst=":"&testst=")+Date.now();if(!(this.cnt>=i)){this.cnt++;try{let t=null,i=null;t=(new Date).getTime();const s=new XMLHttpRequest;s.open("GET",o);let r={};r.Range="bytes=0-"+e,r&&Object.keys(r).forEach((t=>{s.setRequestHeader(t,r[t])})),s.onreadystatechange=()=>{if(4===s.readyState){i=(new Date).getTime();const e=1e3*(s.getResponseHeader("Content-Length")/1024*8)/(i-t);this.appendList(e),this.timer=setTimeout(this.testSpeed,n)}},s.send()}catch(r){}}})),t(this,"appendList",(t=>{const{saveSpeedMax:e}=this.config;let i=localStorage.getItem(Au),s=i?JSON.parse(i):[];s.length>=e?s[this.idx%e]=Math.floor(t):s.push(Math.floor(t)),this.idx++,localStorage.setItem(Au,JSON.stringify(s)),this.updateSpeed(s)})),t(this,"updateSpeed",(t=>{const e=this.getSpeed(t);e!==Iu.lastRealSpeed&&(Iu.lastRealSpeed=e,this.player.emit(rr,{speed:e}))}))}static get pluginName(){return"testspeed"}static get defaultConfig(){return{openSpeed:!1,testCnt:1,loadSize:102400,testTimeStep:3e3,url:"",saveSpeedMax:20}}static get realTimeSpeed(){return Iu.lastRealSpeed}afterCreate(){const{testCnt:t,openSpeed:e,testTimeStep:i}=this.config;e&&(this.timer=null,this.idx=0,this.cnt=0,this.on(Wo,(()=>{this.timer=setTimeout(this.testSpeed,i)})))}destroy(){clearTimeout(this.timer),this.timer=null}}t(Iu,"lastRealSpeed",0);class Ou extends wa{}return t(Ou,"defaultPreset",class{constructor(t,e){const i=e&&"mobile"===e.isMobileSimulateMode,{isLive:s}=e,n=[...s?[]:[yl,bu,yu,xl],bl,El,Il,Ul,ru,au,eu,iu,Ll,Fl],o=[Sa,ka,Ia,gl,Oa,uu,du,vu,Ga];this.plugins=[ku,Ea,...n,...o,Pu,Lu];const r=i?"mobile":Lo.device;switch(r){case"pc":this.plugins.push(dl,Ya,cu,Iu);break;case"mobile":this.plugins.push(cl);break;default:this.plugins.push(dl,Ya,cu)}(Lo.os.isIpad||"pc"===r)&&this.plugins.push(Tu),Lo.os.isIpad&&this.plugins.push(Ya),this.ignores=[],this.i18n=[Eu]}}),t(Ou,"Util",xo),t(Ou,"Sniffer",Lo),t(Ou,"Errors",Oo),t(Ou,"Events",wr),t(Ou,"Plugin",Zr),t(Ou,"BasePlugin",Br),t(Ou,"I18N",Ca),t(Ou,"STATE_CLASS",ea),Ou}));
|
|
2
2
|
//# sourceMappingURL=index.min.js.map
|