You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
198 lines
496 KiB
198 lines
496 KiB
(window.webpackJsonp=window.webpackJsonp||[]).push([[179,9],{"2kAv":function(We,ke,ee){We.exports={wrap:"wrap___CCio_",link:"link___PWIh8"}},"55Ip":function(We,ke,ee){"use strict";ee.d(ke,"a",function(){return a});var ne=ee("Ty5D"),k=ee("dI71"),E=ee("q1tI"),I=ee.n(E),C=ee("YS25"),A=ee("17x9"),M=ee.n(A),w=ee("wx14"),R=ee("zLVn"),S=ee("9R94"),g=function(n){Object(k.a)(t,n);function t(){for(var c,f=arguments.length,b=new Array(f),L=0;L<f;L++)b[L]=arguments[L];return c=n.call.apply(n,[this].concat(b))||this,c.history=Object(C.a)(c.props),c}var r=t.prototype;return r.render=function(){return I.a.createElement(ne.c,{history:this.history,children:this.props.children})},t}(I.a.Component),x=function(n){Object(k.a)(t,n);function t(){for(var c,f=arguments.length,b=new Array(f),L=0;L<f;L++)b[L]=arguments[L];return c=n.call.apply(n,[this].concat(b))||this,c.history=Object(C.b)(c.props),c}var r=t.prototype;return r.render=function(){return I.a.createElement(ne.c,{history:this.history,children:this.props.children})},t}(I.a.Component),T=function(t,r){return typeof t=="function"?t(r):t},v=function(t,r){return typeof t=="string"?Object(C.c)(t,null,null,r):t},y=function(t){return t},p=I.a.forwardRef;typeof p=="undefined"&&(p=y);function s(n){return!!(n.metaKey||n.altKey||n.ctrlKey||n.shiftKey)}var e=p(function(n,t){var r=n.innerRef,c=n.navigate,f=n.onClick,b=Object(R.a)(n,["innerRef","navigate","onClick"]),L=b.target,D=Object(w.a)({},b,{onClick:function(N){try{f&&f(N)}catch(K){throw N.preventDefault(),K}!N.defaultPrevented&&N.button===0&&(!L||L==="_self")&&!s(N)&&(N.preventDefault(),c())}});return y!==p?D.ref=t||r:D.ref=r,I.a.createElement("a",D)}),a=p(function(n,t){var r=n.component,c=r===void 0?e:r,f=n.replace,b=n.to,L=n.innerRef,D=Object(R.a)(n,["component","replace","to","innerRef"]);return I.a.createElement(ne.e.Consumer,null,function(F){F||Object(S.a)(!1);var N=F.history,K=v(T(b,F.location),F.location),V=K?N.createHref(K):"",z=Object(w.a)({},D,{href:V,navigate:function(){var q=T(b,F.location),J=f?N.replace:N.push;J(q)}});return y!==p?z.ref=t||L:z.innerRef=L,I.a.createElement(c,z)})});if(!1)var i,h;var l=function(t){return t},u=I.a.forwardRef;typeof u=="undefined"&&(u=l);function m(){for(var n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];return t.filter(function(c){return c}).join(" ")}var d=u(function(n,t){var r=n["aria-current"],c=r===void 0?"page":r,f=n.activeClassName,b=f===void 0?"active":f,L=n.activeStyle,D=n.className,F=n.exact,N=n.isActive,K=n.location,V=n.sensitive,z=n.strict,$=n.style,q=n.to,J=n.innerRef,he=Object(R.a)(n,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return I.a.createElement(ne.e.Consumer,null,function(te){te||Object(S.a)(!1);var le=K||te.location,re=v(T(q,le),le),ae=re.pathname,X=ae&&ae.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),Z=X?Object(ne.f)(le.pathname,{path:X,exact:F,sensitive:V,strict:z}):null,ie=!!(N?N(Z,le):Z),Re=ie?m(D,b):D,me=ie?Object(w.a)({},$,{},L):$,pe=Object(w.a)({"aria-current":ie&&c||null,className:Re,style:me,to:re},he);return l!==u?pe.ref=t||J:pe.innerRef=J,I.a.createElement(a,pe)})});if(!1)var o},"6cGi":function(We,ke,ee){"use strict";ee.d(ke,"a",function(){return I});var ne=ee("ODXe"),k=ee("q1tI"),E=ee.n(k);function I(C,A){var M=A||{},w=M.defaultValue,R=M.value,S=M.onChange,g=M.postState,x=k.useState(function(){return R!==void 0?R:w!==void 0?typeof w=="function"?w():w:typeof C=="function"?C():C}),T=Object(ne.a)(x,2),v=T[0],y=T[1],p=R!==void 0?R:v;g&&(p=g(p));var s=k.useRef(S);s.current=S;var e=k.useCallback(function(i){y(i),p!==i&&s.current&&s.current(i,p)},[p,s]),a=k.useRef(!0);return k.useEffect(function(){if(a.current){a.current=!1;return}R===void 0&&y(R)},[R]),[p,e]}},"8hTe":function(We,ke,ee){We.exports={button:"button___1wy9m"}},"9Bee":function(We,ke,ee){"use strict";var ne=ee("DYRE"),k=ee("zeV3"),E=ee("+L6B"),I=ee("2/Rp"),C=ee("k1fw"),A=ee("9og8"),M=ee("tJVT"),w=ee("WmNS"),R=ee.n(w),S=ee("q1tI"),g=ee.n(S),x=ee("vg9a"),T=ee("DlQD"),v=ee.n(T),y=ee("rUJ1");function p(j,_){var P=j.match(/^(\s+)(?:```)/);if(P===null)return _;var B=P[1];return _.split(`
|
|
`).map(function(W){var O=W.match(/^\s+/);if(O===null)return W;var U=Object(M.a)(O,1),H=U[0];return H.length>=B.length?W.slice(B.length):W}).join(`
|
|
`)}var s=[],e=["<ul>"],a=new v.a.Renderer,i=/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;function h(){s.length=0,e=["<ul>"]}var l={overflow:"hidden",WebkitBoxOrient:"vertical",display:"-webkit-box",WebkitLineClamp:2};function u(j,_,P,B){if(_>=j.length||j[_].level<=P)return _;var W=j[_];B.push("<li><a href='#"+W.anchor+"'>"+W.text+"</a>"),_++;var O=[];return _=u(j,_,W.level,O),O.length>0&&(B.push("<ul>"),O.forEach(function(U){B.push(U)}),B.push("</ul>")),B.push("</li>"),_=u(j,_,P,B),_}function m(){return u(s,0,0,e),e.push("</ul>"),e.join("")}var d={heading:function(_){var P=i.exec(_);if(P)return{type:"heading",raw:P[0],depth:P[1].length,text:P[2]}},fences:function(_){var P=this.rules.block.fences.exec(_);if(P){var B=P[0],W=p(B,P[3]||""),O=P[2]?P[2].trim():P[2];if(["latex","katex","math"].indexOf(O)>=0){var U=t(),H=W;W=U,r[U]={type:"block",expression:H}}return{type:"code",raw:B,lang:O,text:W}}}},o=/(?:\${2})([^\n`]+?)(?:\${2})/gi,n=0,t=function(){return"__special_katext_id_".concat(n++,"__")},r={};function c(){return r}function f(){n=0,r={}}function b(j){return j=j.replace(o,function(_,P){var B=t();return r[B]={type:"inline",expression:P},B}),j}var L=a.listitem;a.listitem=function(j){return L(b(j))};var D=a.paragraph;a.paragraph=function(j){return D(b(j))};var F=a.tablecell;a.tablecell=function(j,_){return F(b(j),_)},a.code=function(j,_,P){var B=(_||"").match(/\S*/)[0];return B?["latex","katex","math"].indexOf(B)>=0?"<p class='editormd-tex'>".concat(j,"</p>"):'<pre class="prettyprint linenums"><code class="language-'.concat(_,'">').concat(P?j:Object(y.escape)(j,!0),`</code></pre>
|
|
`):'<pre class="prettyprint linenums"><code>'+(P?j:Object(y.escape)(j,!0))+"</code></pre>"},a.heading=function(j,_,P){var B=this.options.headerPrefix+P.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g,"-");return s.push({anchor:B,level:_,text:j}),"<h"+_+' id="'+B+'">'+j+"</h"+_+">"},v.a.setOptions({silent:!0,gfm:!0,pedantic:!1}),v.a.use({tokenizer:d,renderer:a});var N=v.a,K=ee("SJMd"),V=ee("ulZh"),z=ee.n(V),$=ee("m3rI"),q=ee("Oy/b"),J=ee("p5ED"),he=ee("ErOA"),te=ee("STEk");/* **********************************
|
|
cropro version 1.2.0
|
|
@license SEE LICENSE IN LICENSE
|
|
|
|
copyright Alan Mendelevich
|
|
see README and LICENSE for details
|
|
********************************** *//*! *****************************************************************************
|
|
Copyright (c) Microsoft Corporation.
|
|
|
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
purpose with or without fee is hereby granted.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
PERFORMANCE OF THIS SOFTWARE.
|
|
***************************************************************************** */var le=function(j,_){return(le=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(P,B){P.__proto__=B}||function(P,B){for(var W in B)Object.prototype.hasOwnProperty.call(B,W)&&(P[W]=B[W])})(j,_)};function re(j,_){if(typeof _!="function"&&_!==null)throw new TypeError("Class extends value "+String(_)+" is not a constructor or null");function P(){this.constructor=j}le(j,_),j.prototype=_===null?Object.create(_):(P.prototype=_.prototype,new P)}function ae(j,_,P,B){return new(P||(P=Promise))(function(W,O){function U(Q){try{G(B.next(Q))}catch(Y){O(Y)}}function H(Q){try{G(B.throw(Q))}catch(Y){O(Y)}}function G(Q){var Y;Q.done?W(Q.value):(Y=Q.value,Y instanceof P?Y:new P(function(se){se(Y)})).then(U,H)}G((B=B.apply(j,_||[])).next())})}function X(j,_){var P,B,W,O,U={label:0,sent:function(){if(1&W[0])throw W[1];return W[1]},trys:[],ops:[]};return O={next:H(0),throw:H(1),return:H(2)},typeof Symbol=="function"&&(O[Symbol.iterator]=function(){return this}),O;function H(G){return function(Q){return function(Y){if(P)throw new TypeError("Generator is already executing.");for(;U;)try{if(P=1,B&&(W=2&Y[0]?B.return:Y[0]?B.throw||((W=B.return)&&W.call(B),0):B.next)&&!(W=W.call(B,Y[1])).done)return W;switch(B=0,W&&(Y=[2&Y[0],W.value]),Y[0]){case 0:case 1:W=Y;break;case 4:return U.label++,{value:Y[1],done:!1};case 5:U.label++,B=Y[1],Y=[0];continue;case 7:Y=U.ops.pop(),U.trys.pop();continue;default:if(!(W=U.trys,(W=W.length>0&&W[W.length-1])||Y[0]!==6&&Y[0]!==2)){U=0;continue}if(Y[0]===3&&(!W||Y[1]>W[0]&&Y[1]<W[3])){U.label=Y[1];break}if(Y[0]===6&&U.label<W[1]){U.label=W[1],W=Y;break}if(W&&U.label<W[2]){U.label=W[2],U.ops.push(Y);break}W[2]&&U.ops.pop(),U.trys.pop();continue}Y=_.call(j,U)}catch(se){Y=[6,se],B=0}finally{P=W=0}if(5&Y[0])throw Y[1];return{value:Y[0]?Y[1]:void 0,done:!0}}([G,Q])}}}var Z=function(){function j(){}return j.addKey=function(_){j.key=_},Object.defineProperty(j,"isLicensed",{get:function(){return!!j.key&&new RegExp(/^CRPR-[A-Z][0-9]{3}-[A-Z][0-9]{3}-[0-9]{4}$/,"i").test(j.key)},enumerable:!1,configurable:!0}),j}(),ie=function(){function j(){}return j.createDefs=function(){return document.createElementNS("http://www.w3.org/2000/svg","defs")},j.setAttributes=function(_,P){for(var B=0,W=P;B<W.length;B++){var O=W[B],U=O[0],H=O[1];_.setAttribute(U,H)}},j.createRect=function(_,P,B){var W=document.createElementNS("http://www.w3.org/2000/svg","rect");return W.setAttribute("width",_.toString()),W.setAttribute("height",P.toString()),B&&j.setAttributes(W,B),W},j.createLine=function(_,P,B,W,O){var U=document.createElementNS("http://www.w3.org/2000/svg","line");return U.setAttribute("x1",_.toString()),U.setAttribute("y1",P.toString()),U.setAttribute("x2",B.toString()),U.setAttribute("y2",W.toString()),O&&j.setAttributes(U,O),U},j.createPolygon=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg","polygon");return B.setAttribute("points",_),P&&j.setAttributes(B,P),B},j.createCircle=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg","circle");return B.setAttribute("cx",(_/2).toString()),B.setAttribute("cy",(_/2).toString()),B.setAttribute("r",_.toString()),P&&j.setAttributes(B,P),B},j.createEllipse=function(_,P,B){var W=document.createElementNS("http://www.w3.org/2000/svg","ellipse");return W.setAttribute("cx",(_/2).toString()),W.setAttribute("cy",(P/2).toString()),W.setAttribute("rx",(_/2).toString()),W.setAttribute("ry",(P/2).toString()),B&&j.setAttributes(W,B),W},j.createGroup=function(_){var P=document.createElementNS("http://www.w3.org/2000/svg","g");return _&&j.setAttributes(P,_),P},j.createTransform=function(){return document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGTransform()},j.createMarker=function(_,P,B,W,O,U,H){var G=document.createElementNS("http://www.w3.org/2000/svg","marker");return j.setAttributes(G,[["id",_],["orient",P],["markerWidth",B.toString()],["markerHeight",W.toString()],["refX",O.toString()],["refY",U.toString()]]),G.appendChild(H),G},j.createText=function(_){var P=document.createElementNS("http://www.w3.org/2000/svg","text");return P.setAttribute("x","0"),P.setAttribute("y","0"),_&&j.setAttributes(P,_),P},j.createTSpan=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg","tspan");return B.textContent=_,P&&j.setAttributes(B,P),B},j.createImage=function(_){var P=document.createElementNS("http://www.w3.org/2000/svg","image");return _&&j.setAttributes(P,_),P},j.createPoint=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGPoint();return B.x=_,B.y=P,B},j.createPath=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg","path");return B.setAttribute("d",_),P&&j.setAttributes(B,P),B},j.createElement=function(_,P){var B=document.createElementNS("http://www.w3.org/2000/svg",_);return P&&j.setAttributes(B,P),B},j.getHollowRectanglePath=function(_,P,B,W,O,U,H,G){return"M"+_+","+P+"V"+(P+W)+"H"+(_+B)+"V"+P+"H"+O+"V"+U+"H"+(O+H)+"V"+(U+G)+"H"+O+"V"+P+"Z"},j}(),Re=function(){function j(_){this._classNamePrefixBase="__cropro_",this.classes=[],this.rules=[],this.settings=this.defaultSettings,this._classNamePrefix=this._classNamePrefixBase+"_"+_+"_"}return Object.defineProperty(j.prototype,"classNamePrefixBase",{get:function(){return this._classNamePrefixBase},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"classNamePrefix",{get:function(){return this._classNamePrefix},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"defaultSettings",{get:function(){return{canvasBackgroundColor:"#333333",toolbarBackgroundColor:"#111111",toolbarBackgroundHoverColor:"#333333",toolbarBackgroundActiveColor:"#282828",toolbarColor:"#eeeeee",cropShadeColor:"#ffffff",cropFrameColor:"#ffffff",gripColor:"#333333",gripFillColor:"#cccccc",toolbarHeight:40}},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"fadeInAnimationClassName",{get:function(){return this.classNamePrefix+"_fade_in"},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"fadeOutAnimationClassName",{get:function(){return this.classNamePrefix+"_fade_out"},enumerable:!1,configurable:!0}),j.prototype.addClass=function(_){return this.styleSheet===void 0&&this.addStyleSheet(),_.name=""+this.classNamePrefix+_.localName,this.classes.push(_),this.styleSheet.sheet.insertRule("."+_.name+" {"+_.style+"}",this.styleSheet.sheet.cssRules.length),_},j.prototype.addRule=function(_){this.styleSheet===void 0&&this.addStyleSheet(),this.rules.push(_),this.styleSheet.sheet.insertRule(_.selector+" {"+_.style+"}",this.styleSheet.sheet.cssRules.length)},j.prototype.addStyleSheet=function(){var _;this.styleSheet=document.createElement("style"),((_=this.styleSheetRoot)!==null&&_!==void 0?_:document.head).appendChild(this.styleSheet),this.addRule(new me("."+this.classNamePrefix+" h3","font-family: sans-serif")),this.addRule(new me("@keyframes "+this.classNamePrefix+"_fade_in_animation_frames",`
|
|
from {
|
|
opacity: 0;
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
}
|
|
`)),this.addRule(new me("@keyframes "+this.classNamePrefix+"_fade_out_animation_frames",`
|
|
from {
|
|
opacity: 1;
|
|
}
|
|
to {
|
|
opacity: 0;
|
|
}
|
|
`)),this.addClass(new pe("_fade_in",`
|
|
animation-duration: 0.3s;
|
|
animation-name: `+this.classNamePrefix+`_fade_in_animation_frames;
|
|
`)),this.addClass(new pe("_fade_out",`
|
|
animation-duration: 0.3s;
|
|
animation-name: `+this.classNamePrefix+`_fade_out_animation_frames;
|
|
`))},j.prototype.removeStyleSheet=function(){var _;this.styleSheet&&(((_=this.styleSheetRoot)!==null&&_!==void 0?_:document.head).removeChild(this.styleSheet),this.styleSheet=void 0)},j}(),me=function(j,_){this.selector=j,this.style=_},pe=function(j,_){this.localName=j,this.style=_},De=function(){function j(){this.blocks=[],this.display=""}return j.prototype.addButtonBlock=function(_){_.className=this.blockClassName,_.buttonClassName=this.buttonClassName,_.buttonColorsClassName=this.buttonColorsClassName,_.buttonActiveColorsClassName=this.buttonActiveColorsClassName,this.blocks.push(_)},j.prototype.addElementBlock=function(_){_.className===void 0&&(_.className=this.blockClassName),this.blocks.push(_)},j.prototype.getUI=function(){var _=document.createElement("div");return _.className=this.className+" "+this.colorsClassName+" "+this.fadeInClassName,_.style.display=this.display,this.blocks.forEach(function(P){return _.appendChild(P.getUI())}),_},j}(),oe=function(){function j(){}return j.prototype.getUI=function(){var _=document.createElement("div");if(_.className=this.className,this.minWidth!==void 0&&(_.style.minWidth=this.minWidth),this.contentAlign!==void 0)switch(this.contentAlign){case"start":_.style.justifyContent="flex-start";break;case"center":_.style.justifyContent="center";break;case"end":_.style.justifyContent="flex-end"}return _.style.whiteSpace="nowrap",_},j}(),ue=function(j){function _(){var P=j!==null&&j.apply(this,arguments)||this;return P.buttons=[],P}return re(_,j),_.prototype.addButton=function(P){P.className=this.buttonClassName,P.colorsClassName=this.buttonColorsClassName,P.activeColorsClassName=this.buttonActiveColorsClassName,this.buttons.push(P)},_.prototype.getUI=function(){var P=j.prototype.getUI.call(this);return this.buttons.forEach(function(B){return P.appendChild(B.getUI())}),P},_}(oe),ce=function(){function j(_,P){this._isActive=!1,this._isHidden=!1,this._icon=_,this.title=P,this.uiContainer=document.createElement("div"),this.adjustClassName=this.adjustClassName.bind(this)}return Object.defineProperty(j.prototype,"icon",{get:function(){return this._icon},set:function(_){this._icon=_,this.buttonContainer.innerHTML=this._icon},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"isActive",{get:function(){return this._isActive},set:function(_){this._isActive=_,this.adjustClassName()},enumerable:!1,configurable:!0}),j.prototype.getUI=function(){var _=this;return this.buttonContainer=document.createElement("div"),this.buttonContainer.title=this.title,this.buttonContainer.className=this.className+" "+this.colorsClassName,this.adjustClassName(),this.buttonContainer.innerHTML=this._icon,this.onClick&&this.buttonContainer.addEventListener("click",function(){return _.onClick()}),this.uiContainer.appendChild(this.buttonContainer),this.uiContainer.style.display=this._isHidden?"none":"inline-block",this.uiContainer},j.prototype.adjustClassName=function(){this.activeColorsClassName&&(this._isActive&&this.buttonContainer.className.indexOf(this.activeColorsClassName)<0?this.buttonContainer.className+=" "+this.activeColorsClassName:this._isActive||(this.buttonContainer.className=this.buttonContainer.className.replace(this.activeColorsClassName,"")))},j.prototype.hide=function(){this._isHidden=!0},j}(),ge=function(j){function _(){var P=j!==null&&j.apply(this,arguments)||this;return P.elements=[],P}return re(_,j),_.prototype.addElement=function(P){this.elements.push(P)},_.prototype.getUI=function(){var P=j.prototype.getUI.call(this);return this.elements.forEach(function(B){return P.appendChild(B)}),P},_}(oe),ye=function(){function j(_,P){this.horizontal=_,this.vertical=P}return Object.defineProperty(j.prototype,"ratio",{get:function(){return 1*this.horizontal/this.vertical},enumerable:!1,configurable:!0}),j.prototype.getVerticalLength=function(_){return _/this.ratio},j.prototype.getHorizontalLength=function(_){return _*this.ratio},j}(),ve=function(){function j(){}return j.getIcon=function(_,P){if(_>0&&P>0){var B=new ye(_,P),W=B.ratio>=1?20:B.getHorizontalLength(20),O=B.ratio<1?20:B.getVerticalLength(20),U=document.createElementNS("http://www.w3.org/2000/svg","svg");U.setAttribute("xmlns","http://www.w3.org/2000/svg"),U.setAttribute("viewBox","0 0 24 24"),document.body.appendChild(U);var H=ie.createDefs();U.appendChild(H);var G=ie.createElement("clipPath",[["id","text-bg-clip"]]);H.appendChild(G);var Q=ie.createPath(ie.getHollowRectanglePath((24-W)/2,(24-O)/2,W,O,(24-W)/2+2,(24-O)/2+2,W-4,O-4));U.appendChild(Q);var Y=ie.createText([["x","0"],["y","0"],["font-size","7px"],["font-family","monospace"]]);Y.appendChild(ie.createTSpan(_+":"+P)),U.appendChild(Y);var se=Y.getBBox();ie.setAttributes(Y,[["x",((24-se.width)/2).toString()],["y",((24-se.height)/2-se.y).toString()]]);var Ee=ie.createPath(ie.getHollowRectanglePath(0,0,24,24,(24-Math.ceil(se.width))/2,(24-Math.ceil(se.height))/2,Math.ceil(se.width),Math.ceil(se.height)));return G.appendChild(Ee),ie.setAttributes(Q,[["clip-path","url(#text-bg-clip)"]]),document.body.removeChild(U),U.outerHTML}return'<svg viewBox="0 0 24 24"><path d="M19 12h-2v3h-3v2h5v-5M7 9h3V7H5v5h2V9m14-6H3a2 2 0 00-2 2v14a2 2 0 002 2h18a2 2 0 002-2V5a2 2 0 00-2-2m0 16H3V5h18v14z"/></svg>'},j}(),fe=function(j){function _(P,B,W){var O=j.call(this,P,B)||this;return O.isDropdownOpen=!1,O.onClick=O.dropdownButtonClicked,O.dropdownButtons=W,O}return re(_,j),_.prototype.setupDropdown=function(){var P=this;this.dropdownBlock=document.createElement("div"),this.dropdownBlock.className=this.dropdownClassName+" "+this.dropdownColorsClassName,this.dropdownBlock.style.display="none",this.dropdownButtons.forEach(function(B){B.className=P.className,B.colorsClassName=P.colorsClassName,P.dropdownBlock.appendChild(B.getUI())}),this.uiContainer.appendChild(this.dropdownBlock)},_.prototype.positionDropdown=function(){this.dropdownBlock.style.left=this.uiContainer.clientLeft+"px",this.dropdownBlock.style.top=this.uiContainer.clientTop+this.uiContainer.clientHeight+"px"},_.prototype.dropdownButtonClicked=function(){this.dropdownBlock===void 0&&this.setupDropdown(),this.isDropdownOpen=!this.isDropdownOpen,this.toggleDropdown()},_.prototype.toggleDropdown=function(){this.positionDropdown(),this.dropdownBlock.style.display=this.isDropdownOpen?"inline-block":"none"},_.prototype.showDropdown=function(){this.isDropdownOpen=!0,this.toggleDropdown()},_.prototype.hideDropdown=function(){this.isDropdownOpen=!1,this.toggleDropdown()},_}(ce),we=function(){function j(_,P){this.GRIP_SIZE=10,this.color=_,this.fillColor=P,this.visual=ie.createGroup(),this.visual.appendChild(ie.createCircle(1.5*this.GRIP_SIZE,[["fill","transparent"]])),this.visual.appendChild(ie.createCircle(this.GRIP_SIZE,[["fill",this.fillColor],["fill-opacity","0.9"],["stroke",this.color],["stroke-width","2"],["stroke-opacity","0.7"]]))}return j.prototype.ownsTarget=function(_){return _===this.visual||_===this.visual.childNodes[0]||_===this.visual.childNodes[1]},j.prototype.setCenter=function(_,P){this.visual.childNodes.forEach(function(B){return ie.setAttributes(B,[["cx",_.toString()],["cy",P.toString()]])})},j}(),Ce=function(){function j(_,P,B,W){this.isMoving=!1,this._isGridVisible=!0,this.numberOfGridLines=2,this.horizontalGridLines=[],this.verticalGridLines=[],this._zoomFactor=1,this.cropRectChanged=!1,this.canvasWidth=_,this.canvasHeight=P,this.margin=B,this.container=W,this.attachEvents=this.attachEvents.bind(this),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.resize=this.resize.bind(this),this.adjustCropRect=this.adjustCropRect.bind(this),this.scaleCanvas=this.scaleCanvas.bind(this),this.getRescaledRect=this.getRescaledRect.bind(this)}return Object.defineProperty(j.prototype,"aspectRatio",{get:function(){return this._aspectRatio},set:function(_){this._aspectRatio=_,this.adjustCropRect(),this.setCropRectangle(this.cropRect)},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"isGridVisible",{get:function(){return this._isGridVisible},set:function(_){this._isGridVisible=_,this.gridContainer&&ie.setAttributes(this.gridContainer,[["display",this._isGridVisible?"":"none"]])},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"zoomFactor",{get:function(){return this._zoomFactor},set:function(_){this._zoomFactor=_,this.setCropRectangle(this.cropRect)},enumerable:!1,configurable:!0}),j.prototype.open=function(){var _=this;this.cropShadeElement=ie.createPath("M0,0Z",[["fill",this.cropShadeColor],["fill-opacity","0.8"]]),this.container.appendChild(this.cropShadeElement),this.gridContainer=ie.createGroup([["display",this.isGridVisible?"":"none"]]),this.container.appendChild(this.gridContainer);for(var P=0;P<this.numberOfGridLines;P++)this.horizontalGridLines.push(ie.createLine(0,0,0,0,[["stroke",this.cropFrameColor],["stroke-width","1"],["stroke-dasharray","3 1"],["opacity","0.7"]])),this.verticalGridLines.push(ie.createLine(0,0,0,0,[["stroke",this.cropFrameColor],["stroke-width","1"],["stroke-dasharray","3 1"],["opacity","0.7"]]));this.horizontalGridLines.forEach(function(B){return _.gridContainer.appendChild(B)}),this.verticalGridLines.forEach(function(B){return _.gridContainer.appendChild(B)}),this.cropRectElement=ie.createRect(0,0,[["stroke",this.cropFrameColor],["stroke-width","3"],["fill","transparent"]]),this.container.appendChild(this.cropRectElement),this.topLeftGrip=new we(this.gripColor,this.gripFillColor),this.container.appendChild(this.topLeftGrip.visual),this.topRightGrip=new we(this.gripColor,this.gripFillColor),this.container.appendChild(this.topRightGrip.visual),this.bottomLeftGrip=new we(this.gripColor,this.gripFillColor),this.container.appendChild(this.bottomLeftGrip.visual),this.bottomRightGrip=new we(this.gripColor,this.gripFillColor),this.container.appendChild(this.bottomRightGrip.visual),this.attachEvents()},j.prototype.setCropRectangle=function(_){this.cropRect=_;var P=Object.assign({},this.cropRect);this.zoomFactor!==1&&(P.width=this.cropRect.width*this.zoomFactor,P.height=this.cropRect.height*this.zoomFactor,P.x=this.cropRect.height/this.cropRect.width<this.canvasHeight/this.canvasWidth?this.margin:this.margin+this.canvasWidth/2-P.width/2,P.y=this.cropRect.height/this.cropRect.width>this.canvasHeight/this.canvasWidth?this.margin:this.margin+this.canvasHeight/2-P.height/2),ie.setAttributes(this.cropRectElement,[["x",P.x.toString()],["y",P.y.toString()],["width",P.width.toString()],["height",P.height.toString()]]);var B=P.height/(this.numberOfGridLines+1);this.horizontalGridLines.forEach(function(O,U){var H=P.y+B*(U+1);ie.setAttributes(O,[["x1",""+P.x],["y1",""+H],["x2",""+(P.x+P.width)],["y2",""+H]])});var W=P.width/(this.numberOfGridLines+1);this.verticalGridLines.forEach(function(O,U){var H=P.x+W*(U+1);ie.setAttributes(O,[["x1",""+H],["y1",""+P.y],["x2",""+H],["y2",""+(P.y+P.height)]])}),ie.setAttributes(this.cropShadeElement,[["d",ie.getHollowRectanglePath(0,0,this.canvasWidth+2*this.margin,this.canvasHeight+2*this.margin,P.x,P.y,P.width,P.height)]]),this.topLeftGrip.setCenter(P.x,P.y),this.topRightGrip.setCenter(P.x+P.width,P.y),this.bottomLeftGrip.setCenter(P.x,P.y+P.height),this.bottomRightGrip.setCenter(P.x+P.width,P.y+P.height),this.cropRectChanged&&this.onCropChange&&(this.cropRectChanged=!1,this.onCropChange(this.cropRect)),this.cropRectChanged=!1},j.prototype.attachEvents=function(){this.container.style.touchAction="none",this.container.addEventListener("pointerdown",this.onPointerDown),this.container.addEventListener("pointermove",this.onPointerMove),this.container.addEventListener("pointerup",this.onPointerUp)},j.prototype.clientToLocalCoordinates=function(_,P){var B=this.container.getBoundingClientRect();return{x:_-B.left+this.margin,y:P-B.top+this.margin}},j.prototype.onPointerDown=function(_){this.container.setPointerCapture(_.pointerId),this.previousPoint=this.clientToLocalCoordinates(_.clientX,_.clientY),this.cropRectElement===_.target?this.isMoving=!0:this.topLeftGrip.ownsTarget(_.target)?this.activeGrip=this.topLeftGrip:this.bottomLeftGrip.ownsTarget(_.target)?this.activeGrip=this.bottomLeftGrip:this.topRightGrip.ownsTarget(_.target)?this.activeGrip=this.topRightGrip:this.bottomRightGrip.ownsTarget(_.target)&&(this.activeGrip=this.bottomRightGrip)},j.prototype.onPointerMove=function(_){if(this.isMoving)this.move(this.clientToLocalCoordinates(_.clientX,_.clientY));else if(this.activeGrip){var P=this.clientToLocalCoordinates(_.clientX,_.clientY);this.resize(P)}_.preventDefault()},j.prototype.onPointerUp=function(_){this.activeGrip=void 0,this.isMoving=!1,this.container.releasePointerCapture(_.pointerId)},j.prototype.move=function(_){var P=_.x-this.previousPoint.x,B=_.y-this.previousPoint.y;this.zoomFactor!==1&&(P=-P/this.zoomFactor,B=-B/this.zoomFactor),this.cropRect.x=Math.min(Math.max(this.margin,this.cropRect.x+P),this.canvasWidth-this.cropRect.width+this.margin),this.cropRect.y=Math.min(Math.max(this.margin,this.cropRect.y+B),this.canvasHeight-this.cropRect.height+this.margin),this.onCropChange?(this.cropRectChanged=!0,this.onCropChange(this.cropRect)):this.setCropRectangle(this.cropRect),this.previousPoint=_},j.prototype.resize=function(_){var P=Object.assign({},this.cropRect),B=_.x-this.previousPoint.x,W=_.y-this.previousPoint.y;switch(this.activeGrip){case this.bottomLeftGrip:case this.topLeftGrip:P.x+B<this.margin&&(B=this.margin-P.x),P.x+=B,P.width=this.cropRect.x+this.cropRect.width-P.x;break;case this.bottomRightGrip:case this.topRightGrip:P.width+B>this.canvasWidth*this.zoomFactor&&(B=this.canvasWidth*this.zoomFactor-P.width),P.width+=B}switch(this.activeGrip){case this.topLeftGrip:case this.topRightGrip:this.aspectRatio?(P.y=this.cropRect.y-(this.activeGrip===this.topLeftGrip?-1:1)*this.aspectRatio.getVerticalLength(B),P.height=this.aspectRatio.getVerticalLength(P.width)):(P.y+=W,P.height=this.cropRect.y+this.cropRect.height-P.y);break;case this.bottomLeftGrip:case this.bottomRightGrip:this.aspectRatio?P.height=this.aspectRatio.getVerticalLength(P.width):P.height+=W}P.width<10&&(P.x=this.cropRect.x,P.width=10),P.height<10&&(P.y=this.cropRect.y,P.height=10),this.previousPoint=_,P.x>=this.margin&&P.y>=this.margin&&P.x-this.margin+P.width<=this.canvasWidth&&P.y-this.margin+P.height<=this.canvasHeight&&(this.cropRect=P,this.onCropChange?(this.cropRectChanged=!0,this.onCropChange(this.cropRect)):this.setCropRectangle(this.cropRect))},j.prototype.adjustCropRect=function(){if(this.aspectRatio&&Math.round(this.cropRect.height)!==Math.round(this.aspectRatio.getVerticalLength(this.cropRect.width))){var _=this.cropRect.x+this.cropRect.width/2,P=this.cropRect.y+this.cropRect.height/2,B=this.aspectRatio.getHorizontalLength(this.cropRect.height),W=this.aspectRatio.getVerticalLength(this.cropRect.width);B/this.canvasWidth<W/this.canvasHeight?this.cropRect.width=B:this.cropRect.height=W,this.cropRect.width>this.canvasWidth&&(this.cropRect.height/=this.cropRect.width/this.canvasWidth,this.cropRect.width=this.canvasWidth),this.cropRect.height>this.canvasHeight&&(this.cropRect.width/=this.cropRect.height/this.canvasHeight,this.cropRect.height=this.canvasHeight),this.cropRect.x=_-this.cropRect.width/2,this.cropRect.y=P-this.cropRect.height/2,this.cropRect.x+this.cropRect.width>this.margin+this.canvasWidth&&(this.cropRect.x=this.margin+this.canvasWidth-this.cropRect.width),this.cropRect.y+this.cropRect.height>this.margin+this.canvasHeight&&(this.cropRect.y=this.margin+this.canvasHeight-this.cropRect.height),this.cropRect.x=Math.max(this.cropRect.x,this.margin),this.cropRect.y=Math.max(this.cropRect.y,this.margin)}},j.prototype.getRescaledRect=function(_,P,B,W,O,U){var H=B/_,G=W/P;return{x:(O.x-U)*H+U,y:(O.y-U)*G+U,width:O.width*H,height:O.height*G}},j.prototype.scaleCanvas=function(_,P){var B=this.getRescaledRect(this.canvasWidth,this.canvasHeight,_,P,this.cropRect,this.margin);this.canvasWidth=_,this.canvasHeight=P,this.onCropChange&&this.onCropChange(B),this.setCropRectangle(B)},j}(),be=function(){function j(_){this._angle=0,this.isDragging=!1,this.width=401,this.height=24,this.title=_,this.uiContainer=document.createElement("div"),this.getUI=this.getUI.bind(this),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.setAngleLabel=this.setAngleLabel.bind(this),this.positionScaleShape=this.positionScaleShape.bind(this)}return Object.defineProperty(j.prototype,"angle",{get:function(){return this._angle},set:function(_){this._angle=_,this.setAngleLabel(),this.positionScaleShape()},enumerable:!1,configurable:!0}),j.prototype.getUI=function(){return this.controlContainer=document.createElement("div"),this.controlContainer.title=this.title,this.controlContainer.className=this.className+" "+this.colorsClassName,this.controlContainer.appendChild(this.getVisual()),this.controlContainer.addEventListener("pointerdown",this.onPointerDown),this.controlContainer.addEventListener("pointermove",this.onPointerMove),this.controlContainer.addEventListener("pointerup",this.onPointerUp),this.uiContainer.appendChild(this.controlContainer),this.uiContainer.style.display="inline-block",this.uiContainer.style.touchAction="none",this.setAngleLabel(),this.positionScaleShape(),this.uiContainer},j.prototype.onPointerDown=function(_){this.controlContainer.setPointerCapture(_.pointerId),this.isDragging=!0,this.previousPoint={x:_.clientX,y:_.clientY}},j.prototype.onPointerMove=function(_){this.isDragging&&(this.onAngleChange&&this.onAngleChange((_.clientX-this.previousPoint.x)/5),this.previousPoint.x=_.clientX)},j.prototype.onPointerUp=function(_){this.isDragging&&this.onAngleChange&&this.onAngleChange((_.clientX-this.previousPoint.x)/5),this.isDragging=!1,this.controlContainer.releasePointerCapture(_.pointerId)},j.prototype.setAngleLabel=function(){if(this.angleLabelText){this.angleLabelText.innerHTML=""+Math.round(this._angle);var _=this.angleLabelText.getBBox();ie.setAttributes(this.angleLabelElement,[["x",((this.width-_.width)/2).toString()],["y",(this.height/2).toString()]])}},j.prototype.positionScaleShape=function(){if(this.scaleShape){var _=this.scaleShape.transform.baseVal.getItem(0);_.setTranslate(this._angle%5*5-25,0),this.scaleShape.transform.baseVal.replaceItem(_,0)}},j.prototype.getVisual=function(){var _=document.createElementNS("http://www.w3.org/2000/svg","svg");_.setAttribute("xmlns","http://www.w3.org/2000/svg"),_.setAttribute("width",this.width+"px"),_.setAttribute("height",this.height+"px"),_.setAttribute("viewBox","0 0 "+this.width+" "+this.height),_.style.flexShrink="0",document.body.appendChild(_);for(var P="M0,"+(this.height-1)+" v"+-this.height/3+"h1v"+this.height/3,B=1;B<=this.width/5+10;B++){var W=B%5==0?this.height/3:this.height/6;P+="h4v"+-W+"h1v"+W}P+="v1H0Z",this.scaleShape=ie.createPath(P);var O=ie.createTransform();this.scaleShape.transform.baseVal.appendItem(O),_.appendChild(this.scaleShape),this.angleLabelElement=ie.createText([["x","0"],["y","0"],["font-size","10px"],["font-family","monospace"]]),this.angleLabelText=ie.createTSpan(""),this.angleLabelElement.appendChild(this.angleLabelText);var U=ie.createTSpan("");return U.innerHTML="°",this.angleLabelElement.appendChild(U),_.appendChild(this.angleLabelElement),document.body.removeChild(_),_},j}(),Ae=function(){function j(){this.naturalSize=!1,this.imageType="image/png"}return j.prototype.rasterize=function(_,P,B,W,O,U,H){var G=this;return new Promise(function(Q){var Y=document.createElement("canvas");Y.width=_.width.baseVal.value-2*W,Y.height=_.height.baseVal.value-2*W;var se=1,Ee=1;G.naturalSize===!0?(se=P.naturalWidth/(_.width.baseVal.value-2*W)/U,Ee=P.naturalHeight/(_.height.baseVal.value-2*W)/H,Y.width=P.naturalWidth/U,Y.height=P.naturalHeight/H):G.width!==void 0&&G.height!==void 0&&(se=G.width/B.width,Ee=G.height/B.height,Y.width*=se,Y.height*=Ee);var Ie=Y.getContext("2d");Ie.translate(Y.width/2,Y.height/2),Ie.rotate(O*Math.PI/180),Ie.scale(U,H),Ie.translate(-Y.width/2,-Y.height/2),Ie.drawImage(P,0,0,Y.width,Y.height);var Pe=document.createElement("canvas");Pe.width=B.width*se,Pe.height=B.height*Ee,Pe.getContext("2d").putImageData(Ie.getImageData((B.x-W)*se,(B.y-W)*Ee,B.width*se,B.height*Ee),0,0),Q(Pe.toDataURL(G.imageType,G.imageQuality))})},j}(),xe=function(){function j(_){this._zoomToCropEnabled=!0,this.zoomFactor=1,this.flippedHorizontally=!1,this.flippedVertically=!1,this._isGridVisible=!0,this._gridLines=2,this._rotationAngle=0,this.scaleFactor=1,this.renderEventListeners=[],this.closeEventListeners=[],this._isOpen=!1,this.CANVAS_MARGIN=20,this.renderAtNaturalSize=!1,this.renderImageType="image/png",this.displayMode="inline",this.popupMargin=30,this.toolbarHeight=40,this.aspectRatios=[{horizontal:0,vertical:0},{horizontal:4,vertical:3},{horizontal:3,vertical:2},{horizontal:16,vertical:9},{horizontal:1,vertical:1},{horizontal:3,vertical:4},{horizontal:2,vertical:3},{horizontal:9,vertical:16}],this._instanceNo=j.instanceCounter++,this.styles=new Re(this.instanceNo),this.target=_,this.targetRoot=document.body,this.open=this.open.bind(this),this.setTopLeft=this.setTopLeft.bind(this),this.overrideOverflow=this.overrideOverflow.bind(this),this.restoreOverflow=this.restoreOverflow.bind(this),this.close=this.close.bind(this),this.closeUI=this.closeUI.bind(this),this.addCloseEventListener=this.addCloseEventListener.bind(this),this.removeCloseEventListener=this.removeCloseEventListener.bind(this),this.addRenderEventListener=this.addRenderEventListener.bind(this),this.removeRenderEventListener=this.removeRenderEventListener.bind(this),this.clientToLocalCoordinates=this.clientToLocalCoordinates.bind(this),this.onWindowResize=this.onWindowResize.bind(this),this.setWindowHeight=this.setWindowHeight.bind(this),this.rotateBy=this.rotateBy.bind(this),this.applyRotation=this.applyRotation.bind(this),this.cropRectChanged=this.cropRectChanged.bind(this),this.zoomToCrop=this.zoomToCrop.bind(this),this.unzoomFromCrop=this.unzoomFromCrop.bind(this),this.rotateLeftButtonClicked=this.rotateLeftButtonClicked.bind(this),this.rotateRightButtonClicked=this.rotateRightButtonClicked.bind(this),this.flipHorizontallyButtonClicked=this.flipHorizontallyButtonClicked.bind(this),this.flipVerticallyButtonClicked=this.flipVerticallyButtonClicked.bind(this),this.applyFlip=this.applyFlip.bind(this),this.startRenderAndClose=this.startRenderAndClose.bind(this),this.render=this.render.bind(this),this.onPopupResize=this.onPopupResize.bind(this),this.applyAspectRatio=this.applyAspectRatio.bind(this)}return Object.defineProperty(j.prototype,"instanceNo",{get:function(){return this._instanceNo},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"zoomToCropEnabled",{get:function(){return this._zoomToCropEnabled},set:function(_){this._zoomToCropEnabled=_,_?this.zoomToCrop():this.unzoomFromCrop()},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"isGridVisible",{get:function(){return this._isGridVisible},set:function(_){this._isGridVisible=_,this.cropLayer&&(this.cropLayer.isGridVisible=this._isGridVisible)},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"gridLines",{get:function(){return this._gridLines},set:function(_){this._gridLines=_,this.cropLayer&&(this.cropLayer.numberOfGridLines=this._gridLines)},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"rotationAngle",{get:function(){return this._rotationAngle},set:function(_){this._rotationAngle=_,this.straightener&&(this.straightener.angle=this._rotationAngle)},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"paddedImageWidth",{get:function(){return this.imageWidth+2*this.CANVAS_MARGIN},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"paddedImageHeight",{get:function(){return this.imageHeight+2*this.CANVAS_MARGIN},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"isOpen",{get:function(){return this._isOpen},enumerable:!1,configurable:!0}),Object.defineProperty(j.prototype,"aspectRatio",{get:function(){var _;return(_=this._aspectRatio)!==null&&_!==void 0?_:this.aspectRatios[0]},set:function(_){this._aspectRatio=_},enumerable:!1,configurable:!0}),j.prototype.open=function(){this.imageWidth=Math.round(this.target.clientWidth),this.imageHeight=Math.round(this.target.clientHeight),this.setupResizeObserver(),this.initCropCanvas(),this.setEditingTarget(),this.setTopLeft(),this.initCropLayer(),this.attachEvents(),this.applyAspectRatio(),this.displayMode==="popup"&&this.onPopupResize(),this._isOpen=!0},j.prototype.show=function(){this.showUI(),this.open()},j.prototype.close=function(_){_===void 0&&(_=!1),this.isOpen&&(this.coverDiv&&this.closeUI(),this.targetObserver&&this.targetObserver.unobserve(this.target),this.displayMode==="popup"&&window.removeEventListener("resize",this.setWindowHeight),_||this.closeEventListeners.forEach(function(P){return P()}),this._isOpen=!1)},j.prototype.addRenderEventListener=function(_){this.renderEventListeners.push(_)},j.prototype.removeRenderEventListener=function(_){this.renderEventListeners.indexOf(_)>-1&&this.renderEventListeners.splice(this.renderEventListeners.indexOf(_),1)},j.prototype.addCloseEventListener=function(_){this.closeEventListeners.push(_)},j.prototype.removeCloseEventListener=function(_){this.closeEventListeners.indexOf(_)>-1&&this.closeEventListeners.splice(this.closeEventListeners.indexOf(_),1)},j.prototype.setupResizeObserver=function(){var _=this;this.displayMode==="inline"?window.ResizeObserver&&(this.targetObserver=new ResizeObserver(function(){_.resize(_.target.clientWidth,_.target.clientHeight)}),this.targetObserver.observe(this.target)):this.displayMode==="popup"&&(window.ResizeObserver&&(this.targetObserver=new ResizeObserver(this.onPopupResize),this.targetObserver.observe(this.contentDiv)),window.addEventListener("resize",this.setWindowHeight))},j.prototype.onPopupResize=function(){if(this.contentDiv.clientWidth>0&&this.contentDiv.clientHeight>0){var _=1*this.target.clientWidth/this.target.clientHeight,P=this.contentDiv.clientWidth/_>this.contentDiv.clientHeight?(this.contentDiv.clientHeight-2*this.CANVAS_MARGIN)*_:this.contentDiv.clientWidth-2*this.CANVAS_MARGIN,B=P+2*this.CANVAS_MARGIN<this.contentDiv.clientWidth?this.contentDiv.clientHeight-2*this.CANVAS_MARGIN:(this.contentDiv.clientWidth-2*this.CANVAS_MARGIN)/_;this.resize(P,B)}},j.prototype.setWindowHeight=function(){this.windowHeight=window.innerHeight},j.prototype.setEditingTargetSize=function(){this.editorCanvas.style.width=this.imageWidth+2*this.CANVAS_MARGIN+"px",this.editorCanvas.style.height=this.imageHeight+2*this.CANVAS_MARGIN+"px",ie.setAttributes(this.editingTarget,[["width",""+this.imageWidth],["height",""+this.imageHeight]]),this.editingTarget.style.transformOrigin=this.imageWidth/2+"px "+this.imageHeight/2+"px"},j.prototype.resize=function(_,P){this.imageWidth=Math.round(_),this.imageHeight=Math.round(P),this.setEditingTargetSize(),this.cropImage.setAttribute("width",this.paddedImageWidth.toString()),this.cropImage.setAttribute("height",this.paddedImageHeight.toString()),this.cropImage.setAttribute("viewBox","0 0 "+this.paddedImageWidth.toString()+" "+this.paddedImageHeight.toString()),this.cropImageHolder.style.width=this.paddedImageWidth+"px",this.cropImageHolder.style.height=this.paddedImageHeight+"px",this.displayMode!=="popup"?this.coverDiv.style.width=this.paddedImageWidth+"px":(this.setTopLeft(),this.positionCropImage()),this.cropLayer.scaleCanvas(this.imageWidth,this.imageHeight),this.applyRotation()},j.prototype.setEditingTarget=function(){var _=document.createElement("canvas");_.width=this.target.naturalWidth,_.height=this.target.naturalHeight,_.getContext("2d").drawImage(this.target,0,0,this.target.naturalWidth,this.target.naturalHeight);var P=_.toDataURL();ie.setAttributes(this.editingTarget,[["href",P]]),this.setEditingTargetSize()},j.prototype.setTopLeft=function(){var _=this.target.getBoundingClientRect(),P=this.editorCanvas.getBoundingClientRect();this.left=_.left-P.left-this.CANVAS_MARGIN,this.top=_.top-P.top-this.CANVAS_MARGIN},j.prototype.initCropCanvas=function(){this.cropImageHolder=document.createElement("div"),this.cropImageHolder.style.setProperty("touch-action","none"),this.cropImageHolder.style.setProperty("-ms-touch-action","none"),this.cropImage=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.cropImage.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.cropImage.setAttribute("width",this.paddedImageWidth.toString()),this.cropImage.setAttribute("height",this.paddedImageHeight.toString()),this.cropImage.setAttribute("viewBox","0 0 "+this.paddedImageWidth.toString()+" "+this.paddedImageHeight.toString()),this.cropImage.style.pointerEvents="auto",this.cropImageHolder.style.width=this.paddedImageWidth+"px",this.cropImageHolder.style.height=this.paddedImageHeight+"px",this.cropImageHolder.style.transformOrigin="top left",this.positionCropImage(),this.defs=ie.createDefs(),this.cropImage.appendChild(this.defs),this.editingTarget=ie.createImage([["href",""]]),this.editingTarget.style.transformOrigin=this.imageWidth/2+"px "+this.imageHeight/2+"px",this.editingTargetRotationContainer=ie.createGroup(),this.editingTargetRotationScaleContainer=ie.createGroup(),this.editingTargetRotationScaleContainer.appendChild(this.editingTarget),this.editingTargetRotationContainer.appendChild(this.editingTargetRotationScaleContainer);var _=ie.createTransform();this.editingTargetRotationContainer.transform.baseVal.appendItem(_);var P=ie.createTransform();this.editingTargetRotationScaleContainer.transform.baseVal.appendItem(P),this.editingTargetContainer=ie.createGroup(),this.editingTargetContainer.style.transform="translate("+this.CANVAS_MARGIN+"px, "+this.CANVAS_MARGIN+"px)",this.editingTargetContainer.appendChild(this.editingTargetRotationContainer),this.cropImage.appendChild(this.editingTargetContainer),this.cropImageHolder.appendChild(this.cropImage),this.editorCanvas.appendChild(this.cropImageHolder)},j.prototype.positionCropImage=function(){this.cropImageHolder.style.top=this.top+"px",this.cropImageHolder.style.left=this.left+"px"},j.prototype.initCropLayer=function(){this.cropRect={x:this.CANVAS_MARGIN,y:this.CANVAS_MARGIN,width:this.imageWidth,height:this.imageHeight},this.cropLayerContainer=ie.createGroup(),this.cropImage.appendChild(this.cropLayerContainer),this.cropLayer=new Ce(this.imageWidth,this.imageHeight,this.CANVAS_MARGIN,this.cropLayerContainer),this.cropLayer.onCropChange=this.cropRectChanged,this.cropLayer.numberOfGridLines=this.gridLines,this.cropLayer.isGridVisible=this.isGridVisible,this.cropLayer.cropShadeColor=this.styles.settings.cropShadeColor,this.cropLayer.cropFrameColor=this.styles.settings.cropFrameColor,this.cropLayer.gripColor=this.styles.settings.gripColor,this.cropLayer.gripFillColor=this.styles.settings.gripFillColor,this.cropLayer.open(),this.cropLayer.setCropRectangle(this.cropRect),this.zoomToCropEnabled&&this.zoomToCrop()},j.prototype.zoomToCrop=function(){if(this.cropRect){var _=this.cropRect.x-this.CANVAS_MARGIN+this.cropRect.width/2,P=this.cropRect.y-this.CANVAS_MARGIN+this.cropRect.height/2;this.zoomFactor=Math.min(this.imageWidth/this.cropRect.width,this.imageHeight/this.cropRect.height),this.editingTargetContainer&&this.cropLayer&&(this.editingTargetContainer.style.transformOrigin=_+"px "+P+"px",this.editingTargetContainer.style.transform="translate("+(this.imageWidth/2-_+this.CANVAS_MARGIN)+"px,"+(this.imageHeight/2-P+this.CANVAS_MARGIN)+"px) scale("+this.zoomFactor+")",this.cropLayer.zoomFactor=this.zoomFactor)}},j.prototype.unzoomFromCrop=function(){this.zoomFactor=1,this.editingTargetContainer&&this.cropLayer&&(this.editingTargetContainer.style.transformOrigin="center",this.editingTargetContainer.style.transform="translate("+this.CANVAS_MARGIN+"px, "+this.CANVAS_MARGIN+"px) scale(1)",this.cropLayer.zoomFactor=this.zoomFactor)},j.prototype.cropRectChanged=function(_){this.cropRect=_,this.zoomToCropEnabled?this.zoomToCrop():this.cropLayer.zoomFactor=1},j.prototype.attachEvents=function(){window.addEventListener("resize",this.onWindowResize)},j.prototype.overrideOverflow=function(){this.scrollXState=window.scrollX,this.scrollYState=window.scrollY,this.bodyOverflowState=document.body.style.overflow,window.scroll({top:0,left:0}),document.body.style.overflow="hidden"},j.prototype.restoreOverflow=function(){document.body.style.overflow=this.bodyOverflowState,window.scroll({top:this.scrollYState,left:this.scrollXState})},j.prototype.showUI=function(){switch(this.addStyles(),this.displayMode==="popup"&&this.overrideOverflow(),this.coverDiv=document.createElement("div"),this.coverDiv.className=this.styles.classNamePrefixBase+" "+this.styles.classNamePrefix,this.coverDiv.style.fontSize="16px",this.displayMode){case"inline":this.coverDiv.style.position="absolute";var _=this.styles.settings.hideTopToolbar?0:this.toolbarHeight,P=this.target.offsetTop>_+this.CANVAS_MARGIN?this.target.offsetTop-(_+this.CANVAS_MARGIN):0;this.coverDiv.style.top=P+"px",this.coverDiv.style.left=(this.target.offsetLeft>this.CANVAS_MARGIN?this.target.offsetLeft-this.CANVAS_MARGIN:0)+"px",this.coverDiv.style.width=this.target.offsetWidth+this.CANVAS_MARGIN+"px",this.coverDiv.style.zIndex=this.styles.settings.zIndex!==void 0?this.styles.settings.zIndex:"5";break;case"popup":this.coverDiv.style.position="absolute",this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=window.innerHeight+"px",this.coverDiv.style.backgroundColor="rgba(0, 0, 0, 0.75)",this.coverDiv.style.zIndex=this.styles.settings.zIndex!==void 0?this.styles.settings.zIndex:"1000",this.coverDiv.style.display="flex"}this.targetRoot.appendChild(this.coverDiv),this.uiDiv=document.createElement("div"),this.uiDiv.style.display="flex",this.uiDiv.style.flexDirection="column",this.uiDiv.style.flexGrow="2",this.uiDiv.style.margin=this.displayMode==="popup"?this.popupMargin+"px":"0px",this.uiDiv.style.border="0px",this.coverDiv.appendChild(this.uiDiv),this.addToolbars(),this.uiDiv.appendChild(this.topToolbar.getUI()),this.contentDiv=document.createElement("div"),this.contentDiv.style.display="flex",this.contentDiv.style.alignItems="center",this.contentDiv.style.flexDirection="row",this.contentDiv.style.flexGrow="2",this.contentDiv.style.flexShrink="1",this.contentDiv.style.overflow="hidden",this.contentDiv.style.backgroundColor=this.styles.settings.canvasBackgroundColor,this.displayMode==="popup"&&(this.contentDiv.style.maxHeight="calc(100vh - "+(2*this.popupMargin+2*this.toolbarHeight)+"px)",this.contentDiv.style.maxWidth="calc(100vw - "+2*this.popupMargin+"px)"),this.uiDiv.appendChild(this.contentDiv),this.editorCanvas=document.createElement("div"),this.editorCanvas.style.flexGrow="2",this.editorCanvas.style.flexShrink="1",this.editorCanvas.style.position="relative",this.editorCanvas.style.overflow="hidden",this.editorCanvas.style.display="flex",this.displayMode==="popup"&&(this.editorCanvas.style.alignItems="center",this.editorCanvas.style.justifyContent="center"),this.editorCanvas.style.pointerEvents="none",this.contentDiv.appendChild(this.editorCanvas),this.uiDiv.appendChild(this.bottomToolbar.getUI()),this.straightener.angle=this.rotationAngle},j.prototype.addToolbars=function(){this.addTopToolbar(),this.addBottomToolbar()},j.prototype.addTopToolbar=function(){var _=this;this.topToolbar=new De,this.topToolbar.display=this.styles.settings.hideTopToolbar?"none":"",this.topToolbar.className=this.toolbarStyleClass.name,this.topToolbar.colorsClassName=this.styles.settings.toolbarStyleColorsClassName?this.styles.settings.toolbarStyleColorsClassName:this.toolbarStyleColorsClass.name,this.topToolbar.fadeInClassName=this.styles.fadeInAnimationClassName,this.topToolbar.blockClassName=this.toolbarBlockStyleClass.name,this.topToolbar.buttonClassName=this.toolbarButtonStyleClass.name,this.topToolbar.buttonColorsClassName=this.styles.settings.toolbarButtonStyleColorsClassName?this.styles.settings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name,this.topToolbar.buttonActiveColorsClassName=this.styles.settings.toolbarActiveButtonStyleColorsClassName?this.styles.settings.toolbarActiveButtonStyleColorsClassName:this.toolbarActiveButtonStyleColorsClass.name;var P=new ue;P.minWidth=3*this.toolbarHeight+"px",this.topToolbar.addButtonBlock(P);var B=[];this.aspectRatios.forEach(function(Ee){var Ie=new ce(ve.getIcon(Ee.horizontal,Ee.vertical),Ee.horizontal===0&&Ee.vertical===0?"FREE":Ee.horizontal+":"+Ee.vertical);Ie.onClick=function(){return _.ratioButtonClicked(Ee)},B.push(Ie)}),this.aspectRatioButton=new fe(ve.getIcon(0,0),"Aspect ratio",B),this.aspectRatioButton.dropdownClassName=this.toolbarDropdownStyleClass.name,this.aspectRatioButton.dropdownColorsClassName=this.styles.settings.toolbarDropdownStyleColorsClassName?this.styles.settings.toolbarDropdownStyleColorsClassName:this.toolbarDropdownStyleColorsClass.name,P.addButton(this.aspectRatioButton),this.aspectRatios.length<2&&this.aspectRatioButton.hide();var W=new ce('<svg viewBox="0 0 24 24"><path d="M10 4v4h4V4h-4m6 0v4h4V4h-4m0 6v4h4v-4h-4m0 6v4h4v-4h-4m-2 4v-4h-4v4h4m-6 0v-4H4v4h4m0-6v-4H4v4h4m0-6V4H4v4h4m2 6h4v-4h-4v4M4 2h16a2 2 0 012 2v16a2 2 0 01-2 2H4c-1.08 0-2-.9-2-2V4a2 2 0 012-2z"/></svg>',"Toggle grid");W.isActive=this.isGridVisible,W.onClick=function(){_.isGridVisible=!_.isGridVisible,W.isActive=_.isGridVisible},P.addButton(W);var O=new ce('<svg viewBox="0 0 24 24"><path d="M15.5 14l5 5-1.5 1.5-5-5v-.79l-.27-.28A6.471 6.471 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3 6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.57 4.23l.28.27h.79m-6 0C12 14 14 12 14 9.5S12 5 9.5 5 5 7 5 9.5 7 14 9.5 14m2.5-4h-2v2H9v-2H7V9h2V7h1v2h2v1z"/></svg>',"Zoom to selection");if(O.isActive=this.zoomToCropEnabled,O.onClick=function(){_.zoomToCropEnabled=!_.zoomToCropEnabled,O.isActive=_.zoomToCropEnabled},P.addButton(O),!Z.isLicensed){var U=new ge;this.topToolbar.addElementBlock(U);var H=document.createElement("div");H.className=this.topToolbar.buttonClassName+" "+this.topToolbar.buttonColorsClassName;var G=document.createElement("a");G.style.color="currentColor",G.href="https://markerjs.com/products/cropro",G.target="_blank",G.innerHTML='<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2"><path d="M16.326 14.895c0 1.126-.558 1.688-1.673 1.688H9.931c-1.116 0-1.674-.562-1.674-1.688V3.733c0-1.126.558-1.688 1.674-1.688h4.722c1.115 0 1.673.562 1.673 1.688v2.899h-1.957V3.793h-4.124v11.042h4.124v-3.242h1.957v3.302z" fill="currentColor"/><path d="M15.94 7.364a.783.783 0 00-1.065-.304l-11.01 6.126a.783.783 0 00-.303 1.065l4.498 8.085a.783.783 0 001.065.304l11.01-6.126a.783.783 0 00.303-1.065L15.94 7.364zM5.311 14.173l3.737 6.718 9.641-5.364-3.737-6.718-9.641 5.364z" fill="#eef762"/></svg>',H.appendChild(G),U.addElement(H)}var Q=new ue;Q.minWidth=3*this.toolbarHeight+"px",Q.contentAlign="end",this.topToolbar.addButtonBlock(Q);var Y=new ce('<svg viewBox="0 0 24 24"><path d="M9 20.42l-6.21-6.21 2.83-2.83L9 14.77l9.88-9.89 2.83 2.83L9 20.42z"/></svg>',"OK");Y.onClick=this.startRenderAndClose,Q.addButton(Y),this.styles.settings.toolbarOkButtonStyleColorsClassName&&(Y.colorsClassName=this.styles.settings.toolbarOkButtonStyleColorsClassName);var se=new ce('<svg viewBox="0 0 24 24"><path d="M20 6.91L17.09 4 12 9.09 6.91 4 4 6.91 9.09 12 4 17.09 6.91 20 12 14.91 17.09 20 20 17.09 14.91 12 20 6.91z"/></svg>',"Close");se.onClick=this.close,Q.addButton(se),this.styles.settings.toolbarCloseButtonStyleColorsClassName&&(se.colorsClassName=this.styles.settings.toolbarCloseButtonStyleColorsClassName)},j.prototype.addBottomToolbar=function(){var _=this;this.bottomToolbar=new De,this.bottomToolbar.display=this.styles.settings.hideBottomToolbar?"none":"",this.bottomToolbar.className=this.toolbarStyleClass.name,this.bottomToolbar.colorsClassName=this.styles.settings.toolbarStyleColorsClassName?this.styles.settings.toolbarStyleColorsClassName:this.toolbarStyleColorsClass.name,this.bottomToolbar.fadeInClassName=this.styles.fadeInAnimationClassName,this.bottomToolbar.blockClassName=this.toolbarBlockStyleClass.name,this.bottomToolbar.buttonClassName=this.toolbarButtonStyleClass.name,this.bottomToolbar.buttonColorsClassName=this.styles.settings.toolbarButtonStyleColorsClassName?this.styles.settings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name,this.bottomToolbar.buttonActiveColorsClassName=this.styles.settings.toolbarActiveButtonStyleColorsClassName?this.styles.settings.toolbarActiveButtonStyleColorsClassName:this.toolbarActiveButtonStyleColorsClass.name;var P=new ue;P.minWidth=2*this.toolbarHeight+"px",this.bottomToolbar.addButtonBlock(P);var B=new ce('<svg viewBox="0 0 24 24"><path d="M13 4.07V1L8.45 5.55 13 10V6.09c2.84.48 5 2.94 5 5.91s-2.16 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93s-3.05-7.44-7-7.93M7.1 18.32c1.16.9 2.51 1.44 3.9 1.61V17.9c-.87-.15-1.71-.49-2.46-1.03L7.1 18.32M6.09 13H4.07c.17 1.39.72 2.73 1.62 3.89l1.41-1.42c-.52-.75-.87-1.59-1.01-2.47m1.02-4.47L5.7 7.11C4.8 8.27 4.24 9.61 4.07 11h2.02c.14-.87.49-1.72 1.02-2.47z"/></svg>',"Rotate left");B.onClick=this.rotateLeftButtonClicked,P.addButton(B);var W=new ce('<svg viewBox="0 0 24 24"><path d="M16.89 15.5l1.42 1.39c.9-1.16 1.45-2.5 1.62-3.89h-2.02c-.14.87-.48 1.72-1.02 2.5M13 17.9v2.02c1.39-.17 2.74-.71 3.9-1.61l-1.44-1.44c-.75.54-1.59.89-2.46 1.03m6.93-6.9a7.906 7.906 0 00-1.62-3.89l-1.42 1.42c.54.75.88 1.6 1.02 2.47m-2.36-5.45L11 1v3.07C7.06 4.56 4 7.92 4 12s3.05 7.44 7 7.93v-2.02c-2.84-.48-5-2.94-5-5.91s2.16-5.43 5-5.91V10l4.55-4.45z"/></svg>',"Rotate right");W.onClick=this.rotateRightButtonClicked,P.addButton(W);var O=new ge;O.className=this.toolbarStraightenerBlockStyleClass.name,this.bottomToolbar.addElementBlock(O),this.straightener=new be("Straighten"),this.straightener.className=this.toolbarStraightenerStyleClass.name,this.straightener.colorsClassName=this.styles.settings.toolbarStraightenerColorsClassName?this.styles.settings.toolbarStraightenerColorsClassName:this.toolbarStraightenerStyleColorsClass.name,this.straightener.onAngleChange=function(Q){_.rotateBy(Q),_.straightener.angle=_.rotationAngle},O.addElement(this.straightener.getUI());var U=new ue;U.minWidth=2*this.toolbarHeight+"px",U.contentAlign="end",this.bottomToolbar.addButtonBlock(U);var H=new ce('<svg viewBox="0 0 24 24"><path d="M15 21h2v-2h-2m4-10h2V7h-2M3 5v14c0 1.1.9 2 2 2h4v-2H5V5h4V3H5c-1.1 0-2 .9-2 2m16-2v2h2c0-1.1-.9-2-2-2m-8 20h2V1h-2m8 16h2v-2h-2M15 5h2V3h-2m4 10h2v-2h-2m0 10c1.1 0 2-.9 2-2h-2z"/></svg>',"Flip horizontal");H.onClick=this.flipHorizontallyButtonClicked,U.addButton(H);var G=new ce('<svg viewBox="0 0 24 24"><path d="M3 15v2h2v-2m10 4v2h2v-2m2-16H5c-1.1 0-2 .9-2 2v4h2V5h14v4h2V5c0-1.1-.9-2-2-2m2 16h-2v2c1.1 0 2-.9 2-2M1 11v2h22v-2M7 19v2h2v-2m10-4v2h2v-2m-10 4v2h2v-2M3 19c0 1.1.9 2 2 2v-2z"/></svg>',"Flip vertical");G.onClick=this.flipVerticallyButtonClicked,U.addButton(G)},j.prototype.ratioButtonClicked=function(_){this.aspectRatio=_,this.applyAspectRatio(),this.aspectRatioButton.hideDropdown()},j.prototype.applyAspectRatio=function(){this.setCropLayerAspectRatio(),this.aspectRatioButton.icon=ve.getIcon(this.aspectRatio.horizontal,this.aspectRatio.vertical)},j.prototype.setCropLayerAspectRatio=function(){this.cropLayer&&(this.aspectRatio&&this.aspectRatio.horizontal!==0&&this.aspectRatio.vertical!==0?this.cropLayer.aspectRatio=new ye(this.aspectRatio.horizontal,this.aspectRatio.vertical):this.cropLayer.aspectRatio=void 0)},j.prototype.closeUI=function(){this.displayMode==="popup"&&this.restoreOverflow(),this.targetRoot.removeChild(this.coverDiv)},j.prototype.getState=function(){return{width:this.imageWidth,height:this.imageHeight,rotationAngle:this.rotationAngle,flippedHorizontally:this.flippedHorizontally,flippedVertically:this.flippedVertically,cropRect:Object.assign({},this.cropRect)}},j.prototype.restoreState=function(_){if(_){var P=this.cropLayer.getRescaledRect(_.width,_.height,this.imageWidth,this.imageHeight,_.cropRect,this.CANVAS_MARGIN);this.cropLayer.setCropRectangle(P),this.cropRectChanged(P),this.flippedHorizontally=_.flippedHorizontally,this.flippedVertically=_.flippedVertically,this.applyFlip(),this.rotationAngle=_.rotationAngle,this.applyRotation()}},j.prototype.clientToLocalCoordinates=function(_,P){var B=this.cropImage.getBoundingClientRect();return{x:_-B.left,y:P-B.top}},j.prototype.onWindowResize=function(){this.positionUI()},j.prototype.positionUI=function(){switch(this.setTopLeft(),this.displayMode){case"inline":var _=this.target.offsetTop>this.toolbarHeight?this.target.offsetTop-this.toolbarHeight:0;this.coverDiv.style.top=_+"px",this.coverDiv.style.left=this.target.offsetLeft.toString()+"px";break;case"popup":this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=this.windowHeight+"px",this.contentDiv.style.maxHeight="calc(100vh - "+(2*this.popupMargin+2*this.toolbarHeight)+"px)"}this.positionCropImage()},j.prototype.rotateLeftButtonClicked=function(){var _=this.rotationAngle-90;this.rotationAngle%90!=0&&(_+=this.rotationAngle>=0?90-this.rotationAngle%90:-this.rotationAngle%90),this.rotateTo(_)},j.prototype.rotateRightButtonClicked=function(){var _=this.rotationAngle+90;this.rotationAngle%90!=0&&(_-=this.rotationAngle>=0?this.rotationAngle%90:90+this.rotationAngle%90),this.rotateTo(_)},j.prototype.rotateTo=function(_){_=(_=_>180?_-360:_)<=-180?_+360:_,this.rotationAngle=_,this.applyRotation()},j.prototype.rotateBy=function(_){this.rotateTo((this.rotationAngle+_)%360)},j.prototype.applyRotation=function(){var _=this.zoomToCropEnabled;this.zoomToCropEnabled=!1,this.editingTargetRotationScaleContainer.style.transformOrigin=this.imageWidth/2+"px "+this.imageHeight/2+"px",this.editingTargetRotationScaleContainer.style.transform="scale(1)";var P=this.editingTargetRotationContainer.transform.baseVal.getItem(0);P.setRotate(this.rotationAngle,this.imageWidth/2,this.imageHeight/2),this.editingTargetRotationContainer.transform.baseVal.replaceItem(P,0);var B=this.editingTarget.getBoundingClientRect();this.scaleFactor=Math.min(this.imageWidth/B.width,this.imageHeight/B.height),this.editingTargetRotationScaleContainer.style.transform="scale("+this.scaleFactor+")",this.zoomToCropEnabled=_},j.prototype.flipHorizontallyButtonClicked=function(){this.flippedHorizontally=!this.flippedHorizontally,this.applyFlip()},j.prototype.flipVerticallyButtonClicked=function(){this.flippedVertically=!this.flippedVertically,this.applyFlip()},j.prototype.applyFlip=function(){this.editingTarget.style.transform="scale("+(this.flippedHorizontally?-1:1)+","+(this.flippedVertically?-1:1)+")"},j.prototype.startRenderAndClose=function(){return ae(this,void 0,void 0,function(){var _,P;return X(this,function(B){switch(B.label){case 0:return[4,this.render()];case 1:return _=B.sent(),P=this.getState(),this.renderEventListeners.forEach(function(W){return W(_,P)}),this.close(!0),[2]}})})},j.prototype.render=function(){return ae(this,void 0,void 0,function(){var _;return X(this,function(P){switch(P.label){case 0:return(_=new Ae).naturalSize=this.renderAtNaturalSize,_.imageType=this.renderImageType,_.imageQuality=this.renderImageQuality,_.width=this.renderWidth,_.height=this.renderHeight,this.unzoomFromCrop(),ie.setAttributes(this.cropLayerContainer,[["display","none"]]),[4,_.rasterize(this.cropImage,this.target,{x:this.cropRect.x,y:this.cropRect.y,width:this.cropRect.width,height:this.cropRect.height},this.CANVAS_MARGIN,this.rotationAngle,this.scaleFactor*(this.flippedHorizontally?-1:1),this.scaleFactor*(this.flippedVertically?-1:1))];case 1:return P.sent(),[4,_.rasterize(this.cropImage,this.target,{x:this.cropRect.x,y:this.cropRect.y,width:this.cropRect.width,height:this.cropRect.height},this.CANVAS_MARGIN,this.rotationAngle,this.scaleFactor*(this.flippedHorizontally?-1:1),this.scaleFactor*(this.flippedVertically?-1:1))];case 2:return[2,P.sent()]}})})},j.prototype.addStyles=function(){this.toolbarStyleClass=this.styles.addClass(new pe("toolbar",`
|
|
width: `+(this.displayMode==="inline"?"100%":"calc(100vw - "+2*this.popupMargin+"px)")+`;
|
|
flex-shrink: 0;
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: space-between;
|
|
height: `+this.toolbarHeight+`px;
|
|
box-sizing: content-box;
|
|
overflow: hidden;
|
|
line-height: 0px;
|
|
`)),this.toolbarStyleColorsClass=this.styles.addClass(new pe("toolbar_colors",`
|
|
background-color: `+this.styles.settings.toolbarBackgroundColor+`;
|
|
`)),this.toolbarBlockStyleClass=this.styles.addClass(new pe("toolbar-block",`
|
|
display: flex;
|
|
align-items: center;
|
|
box-sizing: content-box;
|
|
`));var _=this.toolbarHeight/4;this.toolbarButtonStyleClass=this.styles.addClass(new pe("toolbar_button",`
|
|
display: inline-block;
|
|
width: `+(this.toolbarHeight-2*_)+`px;
|
|
height: `+(this.toolbarHeight-2*_)+`px;
|
|
padding: `+_+`px;
|
|
cursor: default;
|
|
user-select: none;
|
|
box-sizing: content-box;
|
|
`)),this.toolbarButtonStyleColorsClass=this.styles.addClass(new pe("toolbar_button_colors",`
|
|
color: `+this.styles.settings.toolbarColor+`;
|
|
fill: currentColor;
|
|
`)),this.toolbarActiveButtonStyleColorsClass=this.styles.addClass(new pe("toolbar_active_button",`
|
|
color: `+this.styles.settings.toolbarColor+`;
|
|
fill: currentColor;
|
|
background-color: `+this.styles.settings.toolbarBackgroundActiveColor+`
|
|
`)),this.styles.addRule(new me("."+this.toolbarButtonStyleClass.name+" svg",`
|
|
height: `+this.toolbarHeight/2+`px;
|
|
`)),this.styles.addRule(new me("."+this.toolbarButtonStyleColorsClass.name+":hover",`
|
|
background-color: `+this.styles.settings.toolbarBackgroundHoverColor+`
|
|
`)),this.toolbarDropdownStyleClass=this.styles.addClass(new pe("toolbar_dropdown",`
|
|
position: absolute;
|
|
max-width: `+4*this.toolbarHeight+`px;
|
|
z-index: 20;
|
|
white-space: normal;
|
|
box-sizing: content-box;
|
|
box-shadow: 3px 3px rgba(33, 33, 33, 0.1);
|
|
margin: `+(this.displayMode==="inline"?"0":this.popupMargin)+`px;
|
|
line-height: 0px;
|
|
`)),this.toolbarDropdownStyleColorsClass=this.styles.addClass(new pe("toolbar_dropdown_colors",`
|
|
background-color: `+this.styles.settings.toolbarBackgroundColor+`;
|
|
`)),this.toolbarStraightenerBlockStyleClass=this.styles.addClass(new pe("toolbar_straightener_block",`
|
|
display: flex;
|
|
overflow: hidden;
|
|
justify-content: center;
|
|
-webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 30%, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100%);
|
|
`)),this.toolbarStraightenerStyleClass=this.styles.addClass(new pe("toolbar_straightener",`
|
|
display: flex;
|
|
overflow: hidden;
|
|
justify-content: center;
|
|
height: `+(this.toolbarHeight-2*_)+`px;
|
|
padding: `+_+`px;
|
|
cursor: default;
|
|
user-select: none;
|
|
box-sizing: content-box;
|
|
`)),this.toolbarStraightenerStyleColorsClass=this.styles.addClass(new pe("toolbar_straightener_colors",`
|
|
color: `+this.styles.settings.toolbarColor+`;
|
|
fill: currentColor;
|
|
`))},j.instanceCounter=0,j}(),Te=ee("8hTe"),Se=ee.n(Te),de=/<pre[^>]*>/g;function Le(j){var _=document.createElement("div");return _.innerHTML=j,_.childNodes.length===0?"":_.childNodes[0].nodeValue}var _e=ke.a=function(j){var _=j.value,P=_===void 0?"":_,B=j.edit,W=B===void 0?!1:B,O=j.className,U=j.showTextOnly,H=j.showLines,G=j.replaces,Q=j.zoomImg,Y=j.hasMask,se=j.style,Ee=se===void 0?{}:se,Ie=j.stylesPrev,Pe=Ie===void 0?{}:Ie,Ne=String(P),Me=Object(S.useRef)(),Oe=Object(S.useRef)(),Ge=Object(S.useState)(""),je=Object(M.a)(Ge,2),ze=je[0],Ke=je[1],Fe=Object(S.useState)("office"),Ze=Object(M.a)(Fe,2),qe=Ze[0],Qe=Ze[1],et=function(){var Be=new xe(Oe.current);Be.displayMode="popup",Be.addRenderEventListener(function(){var $e=Object(A.a)(R.a.mark(function Ue(Ye){var He;return R.a.wrap(function(Xe){for(;;)switch(Xe.prev=Xe.next){case 0:return Me.current.style.display="none",Xe.next=3,Object(he.a)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:"educoder.png",file:Ye}});case 3:He=Xe.sent,He!=null&&He.id&&G(Oe.current.getAttribute("src").replace($.a.API_SERVER,""),"/api/attachments/".concat(He==null?void 0:He.id,"?type=").concat(He.content_type));case 5:case"end":return Xe.stop()}},Ue)}));return function(Ue){return $e.apply(this,arguments)}}()),Be.show()},tt=function(){var Be=new te.a(Oe.current);Be.settings.displayMode="popup",Be.addEventListener("render",function(){var $e=Object(A.a)(R.a.mark(function Ue(Ye){var He;return R.a.wrap(function(Xe){for(;;)switch(Xe.prev=Xe.next){case 0:if(Me.current.style.display="none",!Oe.current){Xe.next=6;break}return Xe.next=4,Object(he.a)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:"educoder.png",file:Ye.dataUrl}});case 4:He=Xe.sent,He!=null&&He.id&&G(Oe.current.getAttribute("src").replace($.a.API_SERVER,""),"/api/attachments/".concat(He==null?void 0:He.id,"?type=").concat(He.content_type));case 6:case"end":return Xe.stop()}},Ue)}));return function(Ue){return $e.apply(this,arguments)}}()),Be.show(),window.markerArea=Be},rt=Object(S.useMemo)(function(){Me.current&&(Me.current.style.zIndex=-1);try{var Ve=/\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g,Be=/\"\/api\/attachments\/|\"\/attachments\/download\//g,$e=/\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;Ne=Ne.replace(Ve,"("+$.a.API_SERVER+"/api/attachments/").replace(Be,'"'+$.a.API_SERVER+"/api/attachments/").replace($e,'"'+$.a.API_SERVER+"/files/uploads/").replaceAll("http://video.educoder","https://video.educoder").replaceAll("http://www.educoder.net/api","https://data.educoder.net/api").replaceAll("https://www.educoder.net/api","https://data.educoder.net/api").replace(/\r\n/g,`
|
|
`)}catch(nt){}var Ue=N(Ne),Ye=c();if(Ne.match(/\[TOC\]/)&&(Ue=Ue.replace("<p>[TOC]</p>",m()),h()),Ue=Ue.replace(/(__special_katext_id_\d+__)/g,function(nt,Xe){var at=Ye[Xe],lt=at.type,ut=at.expression;return Object(q.renderToString)(Le(ut)||"",{displayMode:lt==="block",throwOnError:!1,output:"html"})}),Ue=Ue.replace(/▁/g,"\u2581\u2581\u2581"),f(),U){var He=document.createElement("div");return He.innerHTML=Ue,He.innerText}return setTimeout(function(){return st()},500),Ue},[Ne]),Je=Object(S.useRef)();l.WebkitLineClamp=H,H&&(Ee=Object(C.a)(Object(C.a)({},Ee),l));function it(Ve){var Be=Ve.target;if(Be.tagName.toUpperCase()==="IMG"){if(Q){var $e=Be.getAttribute("src");Ke($e),Qe("image")}}else if(Be.tagName.toUpperCase()==="A"){var Ue=Be.getAttribute("href");if(Ue.indexOf("office")>-1)Ve.preventDefault(),Ke(Ue),Qe("office");else if(Ue.indexOf("application/pdf")>-1)Ve.preventDefault(),Ke(Ue),Qe("pdf");else if(Ue.indexOf("text/html")>-1)Ve.preventDefault(),Ke(Ue),Qe("html");else if(Ue.startsWith("#")){Ve.preventDefault();var Ye=document.getElementById(Ue.replace("#",""));Ye&&Ye.scrollIntoView(!0)}}}var st=function(){var Be,$e=(Be=Je.current)===null||Be===void 0?void 0:Be.querySelectorAll("video");$e==null||$e.forEach(function(Ue){if(Ue.oncontextmenu=function(){return!1},Ue.src.indexOf(".m3u8")>-1&&!Ue.canPlayType("application/vnd.apple.mpegurl")){if(z.a.isSupported()){var Ye=new z.a;Ye.loadSource(Ue.src),Ye.attachMedia(Ue)}}})};Object(S.useEffect)(function(){if(Je.current&&rt&&(rt.match(de)&&window.PR.prettyPrint()),Je.current)return Je.current.addEventListener("click",it),function(){Je.current.removeEventListener("click",it),f(),h()}},[rt,Je.current,it]);var ot=function(Be){if(!W)return;Be.target.nodeName==="IMG"?(Me.current.style.zIndex=1,Me.current.style.display="flex",Me.current.style.width=Be.target.clientWidth+"px",Me.current.style.height=Be.target.clientHeight+"px",Me.current.style.top=Be.target.offsetTop+"px",Me.current.style.left=Be.target.offsetLeft+"px",Oe.current.src=Be.target.getAttribute("src")):Me.current.style.display="none"};return g.a.createElement("div",{style:{position:"relative"}},g.a.createElement("div",{ref:Je,style:Object(C.a)({},Ee),className:"".concat(O||""," markdown-body ").concat(Se.a.mdBody),onMouseOver:ot,dangerouslySetInnerHTML:{__html:rt}}),g.a.createElement("div",{ref:Me,className:Se.a.button},g.a.createElement(k.a,null,g.a.createElement(I.a,{onClick:function(){return et()}},"\u88C1\u526A"),g.a.createElement(I.a,{onClick:function(){return tt()}},"\u7F16\u8F91"))),g.a.createElement("img",{ref:Oe,src:"",alt:"sample",crossOrigin:"anonymous",style:{maxWidth:"90%",opacity:0,position:"absolute",zIndex:-1}}),g.a.createElement(J.a,{close:!0,data:ze,type:ze!=null&&ze.length?qe:"",style:Object(C.a)({},Pe),onClose:function(){return Ke("")}}))}},DlQD:function(We,ke,ee){(function(ne,k){We.exports=k()})(this,function(){"use strict";function ne(P,B){for(var W=0;W<B.length;W++){var O=B[W];O.enumerable=O.enumerable||!1,O.configurable=!0,"value"in O&&(O.writable=!0),Object.defineProperty(P,O.key,O)}}function k(P,B,W){return B&&ne(P.prototype,B),W&&ne(P,W),P}function E(P,B){if(!P)return;if(typeof P=="string")return I(P,B);var W=Object.prototype.toString.call(P).slice(8,-1);if(W==="Object"&&P.constructor&&(W=P.constructor.name),W==="Map"||W==="Set")return Array.from(P);if(W==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(W))return I(P,B)}function I(P,B){(B==null||B>P.length)&&(B=P.length);for(var W=0,O=new Array(B);W<B;W++)O[W]=P[W];return O}function C(P,B){var W;if(typeof Symbol=="undefined"||P[Symbol.iterator]==null){if(Array.isArray(P)||(W=E(P))||B&&P&&typeof P.length=="number"){W&&(P=W);var O=0;return function(){return O>=P.length?{done:!0}:{done:!1,value:P[O++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return W=P[Symbol.iterator](),W.next.bind(W)}function A(P,B){return B={exports:{}},P(B,B.exports),B.exports}var M=A(function(P){function B(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}function W(O){P.exports.defaults=O}P.exports={defaults:B(),getDefaults:B,changeDefaults:W}}),w=M.defaults,R=M.getDefaults,S=M.changeDefaults,g=/[&<>"']/,x=/[&<>"']/g,T=/[<>"']|&(?!#?\w+;)/,v=/[<>"']|&(?!#?\w+;)/g,y={"&":"&","<":"<",">":">",'"':""","'":"'"},p=function(B){return y[B]};function s(P,B){if(B){if(g.test(P))return P.replace(x,p)}else if(T.test(P))return P.replace(v,p);return P}var e=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function a(P){return P.replace(e,function(B,W){return W=W.toLowerCase(),W==="colon"?":":W.charAt(0)==="#"?W.charAt(1)==="x"?String.fromCharCode(parseInt(W.substring(2),16)):String.fromCharCode(+W.substring(1)):""})}var i=/(^|[^\[])\^/g;function h(P,B){P=P.source||P,B=B||"";var W={replace:function(U,H){return H=H.source||H,H=H.replace(i,"$1"),P=P.replace(U,H),W},getRegex:function(){return new RegExp(P,B)}};return W}var l=/[^\w:]/g,u=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function m(P,B,W){if(P){var O;try{O=decodeURIComponent(a(W)).replace(l,"").toLowerCase()}catch(U){return null}if(O.indexOf("javascript:")===0||O.indexOf("vbscript:")===0||O.indexOf("data:")===0)return null}B&&!u.test(W)&&(W=r(B,W));try{W=encodeURI(W).replace(/%25/g,"%")}catch(U){return null}return W}var d={},o=/^[^:]+:\/*[^/]*$/,n=/^([^:]+:)[\s\S]*$/,t=/^([^:]+:\/*[^/]*)[\s\S]*$/;function r(P,B){d[" "+P]||(o.test(P)?d[" "+P]=P+"/":d[" "+P]=L(P,"/",!0)),P=d[" "+P];var W=P.indexOf(":")===-1;return B.substring(0,2)==="//"?W?B:P.replace(n,"$1")+B:B.charAt(0)==="/"?W?B:P.replace(t,"$1")+B:P+B}var c={exec:function(){}};function f(P){for(var B=1,W,O;B<arguments.length;B++){W=arguments[B];for(O in W)Object.prototype.hasOwnProperty.call(W,O)&&(P[O]=W[O])}return P}function b(P,B){var W=P.replace(/\|/g,function(H,G,Q){for(var Y=!1,se=G;--se>=0&&Q[se]==="\\";)Y=!Y;return Y?"|":" |"}),O=W.split(/ \|/),U=0;if(O.length>B)O.splice(B);else for(;O.length<B;)O.push("");for(;U<O.length;U++)O[U]=O[U].trim().replace(/\\\|/g,"|");return O}function L(P,B,W){var O=P.length;if(O===0)return"";for(var U=0;U<O;){var H=P.charAt(O-U-1);if(H===B&&!W)U++;else if(H!==B&&W)U++;else break}return P.substr(0,O-U)}function D(P,B){if(P.indexOf(B[1])===-1)return-1;for(var W=P.length,O=0,U=0;U<W;U++)if(P[U]==="\\")U++;else if(P[U]===B[0])O++;else if(P[U]===B[1]&&(O--,O<0))return U;return-1}function F(P){P&&P.sanitize&&!P.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")}var N={escape:s,unescape:a,edit:h,cleanUrl:m,resolveUrl:r,noopTest:c,merge:f,splitCells:b,rtrim:L,findClosingBracket:D,checkSanitizeDeprecation:F},K=M.defaults,V=N.rtrim,z=N.splitCells,$=N.escape,q=N.findClosingBracket;function J(P,B,W){var O=B.href,U=B.title?$(B.title):null,H=P[1].replace(/\\([\[\]])/g,"$1");return P[0].charAt(0)!=="!"?{type:"link",raw:W,href:O,title:U,text:H}:{type:"image",raw:W,href:O,title:U,text:$(H)}}function he(P,B){var W=P.match(/^(\s+)(?:```)/);if(W===null)return B;var O=W[1];return B.split(`
|
|
`).map(function(U){var H=U.match(/^\s+/);if(H===null)return U;var G=H[0];return G.length>=O.length?U.slice(O.length):U}).join(`
|
|
`)}var te=function(){function P(W){this.options=W||K}var B=P.prototype;return B.space=function(O){var U=this.rules.block.newline.exec(O);if(U)return U[0].length>1?{type:"space",raw:U[0]}:{raw:`
|
|
`}},B.code=function(O,U){var H=this.rules.block.code.exec(O);if(H){var G=U[U.length-1];if(G&&G.type==="paragraph")return{raw:H[0],text:H[0].trimRight()};var Q=H[0].replace(/^ {4}/gm,"");return{type:"code",raw:H[0],codeBlockStyle:"indented",text:this.options.pedantic?Q:V(Q,`
|
|
`)}}},B.fences=function(O){var U=this.rules.block.fences.exec(O);if(U){var H=U[0],G=he(H,U[3]||"");return{type:"code",raw:H,lang:U[2]?U[2].trim():U[2],text:G}}},B.heading=function(O){var U=this.rules.block.heading.exec(O);if(U)return{type:"heading",raw:U[0],depth:U[1].length,text:U[2]}},B.nptable=function(O){var U=this.rules.block.nptable.exec(O);if(U){var H={type:"table",header:z(U[1].replace(/^ *| *\| *$/g,"")),align:U[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:U[3]?U[3].replace(/\n$/,"").split(`
|
|
`):[],raw:U[0]};if(H.header.length===H.align.length){var G=H.align.length,Q;for(Q=0;Q<G;Q++)/^ *-+: *$/.test(H.align[Q])?H.align[Q]="right":/^ *:-+: *$/.test(H.align[Q])?H.align[Q]="center":/^ *:-+ *$/.test(H.align[Q])?H.align[Q]="left":H.align[Q]=null;for(G=H.cells.length,Q=0;Q<G;Q++)H.cells[Q]=z(H.cells[Q],H.header.length);return H}}},B.hr=function(O){var U=this.rules.block.hr.exec(O);if(U)return{type:"hr",raw:U[0]}},B.blockquote=function(O){var U=this.rules.block.blockquote.exec(O);if(U){var H=U[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:U[0],text:H}}},B.list=function(O){var U=this.rules.block.list.exec(O);if(U){for(var H=U[0],G=U[2],Q=G.length>1,Y=G[G.length-1]===")",se={type:"list",raw:H,ordered:Q,start:Q?+G.slice(0,-1):"",loose:!1,items:[]},Ee=U[0].match(this.rules.block.item),Ie=!1,Pe,Ne,Me,Oe,Ge,je,ze,Ke=Ee.length,Fe=0;Fe<Ke;Fe++)Pe=Ee[Fe],H=Pe,Ne=Pe.length,Pe=Pe.replace(/^ *([*+-]|\d+[.)]) */,""),~Pe.indexOf(`
|
|
`)&&(Ne-=Pe.length,Pe=this.options.pedantic?Pe.replace(/^ {1,4}/gm,""):Pe.replace(new RegExp("^ {1,"+Ne+"}","gm"),"")),Fe!==Ke-1&&(Me=this.rules.block.bullet.exec(Ee[Fe+1])[0],(Q?Me.length===1||!Y&&Me[Me.length-1]===")":Me.length>1||this.options.smartLists&&Me!==G)&&(Oe=Ee.slice(Fe+1).join(`
|
|
`),se.raw=se.raw.substring(0,se.raw.length-Oe.length),Fe=Ke-1)),Ge=Ie||/\n\n(?!\s*$)/.test(Pe),Fe!==Ke-1&&(Ie=Pe.charAt(Pe.length-1)===`
|
|
`,Ge||(Ge=Ie)),Ge&&(se.loose=!0),je=/^\[[ xX]\] /.test(Pe),ze=void 0,je&&(ze=Pe[1]!==" ",Pe=Pe.replace(/^\[[ xX]\] +/,"")),se.items.push({type:"list_item",raw:H,task:je,checked:ze,loose:Ge,text:Pe});return se}},B.html=function(O){var U=this.rules.block.html.exec(O);if(U)return{type:this.options.sanitize?"paragraph":"html",raw:U[0],pre:!this.options.sanitizer&&(U[1]==="pre"||U[1]==="script"||U[1]==="style"),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(U[0]):$(U[0]):U[0]}},B.def=function(O){var U=this.rules.block.def.exec(O);if(U){U[3]&&(U[3]=U[3].substring(1,U[3].length-1));var H=U[1].toLowerCase().replace(/\s+/g," ");return{tag:H,raw:U[0],href:U[2],title:U[3]}}},B.table=function(O){var U=this.rules.block.table.exec(O);if(U){var H={type:"table",header:z(U[1].replace(/^ *| *\| *$/g,"")),align:U[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:U[3]?U[3].replace(/\n$/,"").split(`
|
|
`):[]};if(H.header.length===H.align.length){H.raw=U[0];var G=H.align.length,Q;for(Q=0;Q<G;Q++)/^ *-+: *$/.test(H.align[Q])?H.align[Q]="right":/^ *:-+: *$/.test(H.align[Q])?H.align[Q]="center":/^ *:-+ *$/.test(H.align[Q])?H.align[Q]="left":H.align[Q]=null;for(G=H.cells.length,Q=0;Q<G;Q++)H.cells[Q]=z(H.cells[Q].replace(/^ *\| *| *\| *$/g,""),H.header.length);return H}}},B.lheading=function(O){var U=this.rules.block.lheading.exec(O);if(U)return{type:"heading",raw:U[0],depth:U[2].charAt(0)==="="?1:2,text:U[1]}},B.paragraph=function(O){var U=this.rules.block.paragraph.exec(O);if(U)return{type:"paragraph",raw:U[0],text:U[1].charAt(U[1].length-1)===`
|
|
`?U[1].slice(0,-1):U[1]}},B.text=function(O,U){var H=this.rules.block.text.exec(O);if(H){var G=U[U.length-1];return G&&G.type==="text"?{raw:H[0],text:H[0]}:{type:"text",raw:H[0],text:H[0]}}},B.escape=function(O){var U=this.rules.inline.escape.exec(O);if(U)return{type:"escape",raw:U[0],text:$(U[1])}},B.tag=function(O,U,H){var G=this.rules.inline.tag.exec(O);if(G)return!U&&/^<a /i.test(G[0])?U=!0:U&&/^<\/a>/i.test(G[0])&&(U=!1),!H&&/^<(pre|code|kbd|script)(\s|>)/i.test(G[0])?H=!0:H&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(G[0])&&(H=!1),{type:this.options.sanitize?"text":"html",raw:G[0],inLink:U,inRawBlock:H,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(G[0]):$(G[0]):G[0]}},B.link=function(O){var U=this.rules.inline.link.exec(O);if(U){var H=q(U[2],"()");if(H>-1){var G=U[0].indexOf("!")===0?5:4,Q=G+U[1].length+H;U[2]=U[2].substring(0,H),U[0]=U[0].substring(0,Q).trim(),U[3]=""}var Y=U[2],se="";if(this.options.pedantic){var Ee=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(Y);Ee?(Y=Ee[1],se=Ee[3]):se=""}else se=U[3]?U[3].slice(1,-1):"";Y=Y.trim().replace(/^<([\s\S]*)>$/,"$1");var Ie=J(U,{href:Y&&Y.replace(this.rules.inline._escapes,"$1"),title:se&&se.replace(this.rules.inline._escapes,"$1")},U[0]);return Ie}},B.reflink=function(O,U){var H;if((H=this.rules.inline.reflink.exec(O))||(H=this.rules.inline.nolink.exec(O))){var G=(H[2]||H[1]).replace(/\s+/g," ");if(G=U[G.toLowerCase()],!G||!G.href){var Q=H[0].charAt(0);return{type:"text",raw:Q,text:Q}}var Y=J(H,G,H[0]);return Y}},B.strong=function(O,U,H){H===void 0&&(H="");var G=this.rules.inline.strong.start.exec(O);if(G&&(!G[1]||G[1]&&(H===""||this.rules.inline.punctuation.exec(H)))){U=U.slice(-1*O.length);var Q=G[0]==="**"?this.rules.inline.strong.endAst:this.rules.inline.strong.endUnd;Q.lastIndex=0;for(var Y;(G=Q.exec(U))!=null;)if(Y=this.rules.inline.strong.middle.exec(U.slice(0,G.index+3)),Y)return{type:"strong",raw:O.slice(0,Y[0].length),text:O.slice(2,Y[0].length-2)}}},B.em=function(O,U,H){H===void 0&&(H="");var G=this.rules.inline.em.start.exec(O);if(G&&(!G[1]||G[1]&&(H===""||this.rules.inline.punctuation.exec(H)))){U=U.slice(-1*O.length);var Q=G[0]==="*"?this.rules.inline.em.endAst:this.rules.inline.em.endUnd;Q.lastIndex=0;for(var Y;(G=Q.exec(U))!=null;)if(Y=this.rules.inline.em.middle.exec(U.slice(0,G.index+2)),Y)return{type:"em",raw:O.slice(0,Y[0].length),text:O.slice(1,Y[0].length-1)}}},B.codespan=function(O){var U=this.rules.inline.code.exec(O);if(U){var H=U[2].replace(/\n/g," "),G=/[^ ]/.test(H),Q=H.startsWith(" ")&&H.endsWith(" ");return G&&Q&&(H=H.substring(1,H.length-1)),H=$(H,!0),{type:"codespan",raw:U[0],text:H}}},B.br=function(O){var U=this.rules.inline.br.exec(O);if(U)return{type:"br",raw:U[0]}},B.del=function(O){var U=this.rules.inline.del.exec(O);if(U)return{type:"del",raw:U[0],text:U[1]}},B.autolink=function(O,U){var H=this.rules.inline.autolink.exec(O);if(H){var G,Q;return H[2]==="@"?(G=$(this.options.mangle?U(H[1]):H[1]),Q="mailto:"+G):(G=$(H[1]),Q=G),{type:"link",raw:H[0],text:G,href:Q,tokens:[{type:"text",raw:G,text:G}]}}},B.url=function(O,U){var H;if(H=this.rules.inline.url.exec(O)){var G,Q;if(H[2]==="@")G=$(this.options.mangle?U(H[0]):H[0]),Q="mailto:"+G;else{var Y;do Y=H[0],H[0]=this.rules.inline._backpedal.exec(H[0])[0];while(Y!==H[0]);G=$(H[0]),H[1]==="www."?Q="http://"+G:Q=G}return{type:"link",raw:H[0],text:G,href:Q,tokens:[{type:"text",raw:G,text:G}]}}},B.inlineText=function(O,U,H){var G=this.rules.inline.text.exec(O);if(G){var Q;return U?Q=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(G[0]):$(G[0]):G[0]:Q=$(this.options.smartypants?H(G[0]):G[0]),{type:"text",raw:G[0],text:Q}}},P}(),le=N.noopTest,re=N.edit,ae=N.merge,X={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:le,table:le,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/};X._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,X._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,X.def=re(X.def).replace("label",X._label).replace("title",X._title).getRegex(),X.bullet=/(?:[*+-]|\d{1,9}[.)])/,X.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,X.item=re(X.item,"gm").replace(/bull/g,X.bullet).getRegex(),X.list=re(X.list).replace(/bull/g,X.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+X.def.source+")").getRegex(),X._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",X._comment=/<!--(?!-?>)[\s\S]*?-->/,X.html=re(X.html,"i").replace("comment",X._comment).replace("tag",X._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),X.paragraph=re(X._paragraph).replace("hr",X.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",X._tag).getRegex(),X.blockquote=re(X.blockquote).replace("paragraph",X.paragraph).getRegex(),X.normal=ae({},X),X.gfm=ae({},X.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),X.gfm.nptable=re(X.gfm.nptable).replace("hr",X.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",X._tag).getRegex(),X.gfm.table=re(X.gfm.table).replace("hr",X.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",X._tag).getRegex(),X.pedantic=ae({},X.normal,{html:re(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",X._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:le,paragraph:re(X.normal._paragraph).replace("hr",X.hr).replace("heading",` *#{1,6} *[^
|
|
]`).replace("lheading",X.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var Z={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:le,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",strong:{start:/^(?:(\*\*(?=[*punctuation]))|\*\*)(?![\s])|__/,middle:/^\*\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*\*$|^__(?![\s])((?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?)__$/,endAst:/[^punctuation\s]\*\*(?!\*)|[punctuation]\*\*(?!\*)(?:(?=[punctuation\s]|$))/,endUnd:/[^\s]__(?!_)(?:(?=[punctuation\s])|$)/},em:{start:/^(?:(\*(?=[punctuation]))|\*)(?![*\s])|_/,middle:/^\*(?:(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)|\*(?:(?!overlapSkip)(?:[^*]|\\\*)|overlapSkip)*?\*)+?\*$|^_(?![_\s])(?:(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)|_(?:(?!overlapSkip)(?:[^_]|\\_)|overlapSkip)*?_)+?_$/,endAst:/[^punctuation\s]\*(?!\*)|[punctuation]\*(?!\*)(?:(?=[punctuation\s]|$))/,endUnd:/[^\s]_(?!_)(?:(?=[punctuation\s])|$)/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:le,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,punctuation:/^([\s*punctuation])/};Z._punctuation="!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~",Z.punctuation=re(Z.punctuation).replace(/punctuation/g,Z._punctuation).getRegex(),Z._blockSkip="\\[[^\\]]*?\\]\\([^\\)]*?\\)|`[^`]*?`|<[^>]*?>",Z._overlapSkip="__[^_]*?__|\\*\\*\\[^\\*\\]*?\\*\\*",Z.em.start=re(Z.em.start).replace(/punctuation/g,Z._punctuation).getRegex(),Z.em.middle=re(Z.em.middle).replace(/punctuation/g,Z._punctuation).replace(/overlapSkip/g,Z._overlapSkip).getRegex(),Z.em.endAst=re(Z.em.endAst,"g").replace(/punctuation/g,Z._punctuation).getRegex(),Z.em.endUnd=re(Z.em.endUnd,"g").replace(/punctuation/g,Z._punctuation).getRegex(),Z.strong.start=re(Z.strong.start).replace(/punctuation/g,Z._punctuation).getRegex(),Z.strong.middle=re(Z.strong.middle).replace(/punctuation/g,Z._punctuation).replace(/blockSkip/g,Z._blockSkip).getRegex(),Z.strong.endAst=re(Z.strong.endAst,"g").replace(/punctuation/g,Z._punctuation).getRegex(),Z.strong.endUnd=re(Z.strong.endUnd,"g").replace(/punctuation/g,Z._punctuation).getRegex(),Z.blockSkip=re(Z._blockSkip,"g").getRegex(),Z.overlapSkip=re(Z._overlapSkip,"g").getRegex(),Z._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,Z._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,Z._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,Z.autolink=re(Z.autolink).replace("scheme",Z._scheme).replace("email",Z._email).getRegex(),Z._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,Z.tag=re(Z.tag).replace("comment",X._comment).replace("attribute",Z._attribute).getRegex(),Z._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Z._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,Z._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,Z.link=re(Z.link).replace("label",Z._label).replace("href",Z._href).replace("title",Z._title).getRegex(),Z.reflink=re(Z.reflink).replace("label",Z._label).getRegex(),Z.reflinkSearch=re(Z.reflinkSearch,"g").replace("reflink",Z.reflink).replace("nolink",Z.nolink).getRegex(),Z.normal=ae({},Z),Z.pedantic=ae({},Z.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:re(/^!?\[(label)\]\((.*?)\)/).replace("label",Z._label).getRegex(),reflink:re(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Z._label).getRegex()}),Z.gfm=ae({},Z.normal,{escape:re(Z.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),Z.gfm.url=re(Z.gfm.url,"i").replace("email",Z.gfm._extended_email).getRegex(),Z.breaks=ae({},Z.gfm,{br:re(Z.br).replace("{2,}","*").getRegex(),text:re(Z.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});var ie={block:X,inline:Z},Re=M.defaults,me=ie.block,pe=ie.inline;function De(P){return P.replace(/---/g,"\u2014").replace(/--/g,"\u2013").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1\u2018").replace(/'/g,"\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1\u201C").replace(/"/g,"\u201D").replace(/\.{3}/g,"\u2026")}function oe(P){var B="",W,O,U=P.length;for(W=0;W<U;W++)O=P.charCodeAt(W),Math.random()>.5&&(O="x"+O.toString(16)),B+="&#"+O+";";return B}var ue=function(){function P(W){this.tokens=[],this.tokens.links=Object.create(null),this.options=W||Re,this.options.tokenizer=this.options.tokenizer||new te,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var O={block:me.normal,inline:pe.normal};this.options.pedantic?(O.block=me.pedantic,O.inline=pe.pedantic):this.options.gfm&&(O.block=me.gfm,this.options.breaks?O.inline=pe.breaks:O.inline=pe.gfm),this.tokenizer.rules=O}P.lex=function(O,U){var H=new P(U);return H.lex(O)};var B=P.prototype;return B.lex=function(O){return O=O.replace(/\r\n|\r/g,`
|
|
`).replace(/\t/g," "),this.blockTokens(O,this.tokens,!0),this.inline(this.tokens),this.tokens},B.blockTokens=function(O,U,H){U===void 0&&(U=[]),H===void 0&&(H=!0),O=O.replace(/^ +$/gm,"");for(var G,Q,Y,se;O;){if(G=this.tokenizer.space(O)){O=O.substring(G.raw.length),G.type&&U.push(G);continue}if(G=this.tokenizer.code(O,U)){O=O.substring(G.raw.length),G.type?U.push(G):(se=U[U.length-1],se.raw+=`
|
|
`+G.raw,se.text+=`
|
|
`+G.text);continue}if(G=this.tokenizer.fences(O)){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.heading(O)){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.nptable(O)){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.hr(O)){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.blockquote(O)){O=O.substring(G.raw.length),G.tokens=this.blockTokens(G.text,[],H),U.push(G);continue}if(G=this.tokenizer.list(O)){for(O=O.substring(G.raw.length),Y=G.items.length,Q=0;Q<Y;Q++)G.items[Q].tokens=this.blockTokens(G.items[Q].text,[],!1);U.push(G);continue}if(G=this.tokenizer.html(O)){O=O.substring(G.raw.length),U.push(G);continue}if(H&&(G=this.tokenizer.def(O))){O=O.substring(G.raw.length),this.tokens.links[G.tag]||(this.tokens.links[G.tag]={href:G.href,title:G.title});continue}if(G=this.tokenizer.table(O)){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.lheading(O)){O=O.substring(G.raw.length),U.push(G);continue}if(H&&(G=this.tokenizer.paragraph(O))){O=O.substring(G.raw.length),U.push(G);continue}if(G=this.tokenizer.text(O,U)){O=O.substring(G.raw.length),G.type?U.push(G):(se=U[U.length-1],se.raw+=`
|
|
`+G.raw,se.text+=`
|
|
`+G.text);continue}if(O){var Ee="Infinite loop on byte: "+O.charCodeAt(0);if(this.options.silent){console.error(Ee);break}else throw new Error(Ee)}}return U},B.inline=function(O){var U,H,G,Q,Y,se,Ee=O.length;for(U=0;U<Ee;U++){se=O[U];switch(se.type){case"paragraph":case"text":case"heading":{se.tokens=[],this.inlineTokens(se.text,se.tokens);break}case"table":{for(se.tokens={header:[],cells:[]},Q=se.header.length,H=0;H<Q;H++)se.tokens.header[H]=[],this.inlineTokens(se.header[H],se.tokens.header[H]);for(Q=se.cells.length,H=0;H<Q;H++)for(Y=se.cells[H],se.tokens.cells[H]=[],G=0;G<Y.length;G++)se.tokens.cells[H][G]=[],this.inlineTokens(Y[G],se.tokens.cells[H][G]);break}case"blockquote":{this.inline(se.tokens);break}case"list":{for(Q=se.items.length,H=0;H<Q;H++)this.inline(se.items[H].tokens);break}}}return O},B.inlineTokens=function(O,U,H,G,Q){U===void 0&&(U=[]),H===void 0&&(H=!1),G===void 0&&(G=!1),Q===void 0&&(Q="");var Y,se=O,Ee;if(this.tokens.links){var Ie=Object.keys(this.tokens.links);if(Ie.length>0)for(;(Ee=this.tokenizer.rules.inline.reflinkSearch.exec(se))!=null;)Ie.includes(Ee[0].slice(Ee[0].lastIndexOf("[")+1,-1))&&(se=se.slice(0,Ee.index)+"["+"a".repeat(Ee[0].length-2)+"]"+se.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(Ee=this.tokenizer.rules.inline.blockSkip.exec(se))!=null;)se=se.slice(0,Ee.index)+"["+"a".repeat(Ee[0].length-2)+"]"+se.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;O;){if(Y=this.tokenizer.escape(O)){O=O.substring(Y.raw.length),U.push(Y);continue}if(Y=this.tokenizer.tag(O,H,G)){O=O.substring(Y.raw.length),H=Y.inLink,G=Y.inRawBlock,U.push(Y);continue}if(Y=this.tokenizer.link(O)){O=O.substring(Y.raw.length),Y.type==="link"&&(Y.tokens=this.inlineTokens(Y.text,[],!0,G)),U.push(Y);continue}if(Y=this.tokenizer.reflink(O,this.tokens.links)){O=O.substring(Y.raw.length),Y.type==="link"&&(Y.tokens=this.inlineTokens(Y.text,[],!0,G)),U.push(Y);continue}if(Y=this.tokenizer.strong(O,se,Q)){O=O.substring(Y.raw.length),Y.tokens=this.inlineTokens(Y.text,[],H,G),U.push(Y);continue}if(Y=this.tokenizer.em(O,se,Q)){O=O.substring(Y.raw.length),Y.tokens=this.inlineTokens(Y.text,[],H,G),U.push(Y);continue}if(Y=this.tokenizer.codespan(O)){O=O.substring(Y.raw.length),U.push(Y);continue}if(Y=this.tokenizer.br(O)){O=O.substring(Y.raw.length),U.push(Y);continue}if(Y=this.tokenizer.del(O)){O=O.substring(Y.raw.length),Y.tokens=this.inlineTokens(Y.text,[],H,G),U.push(Y);continue}if(Y=this.tokenizer.autolink(O,oe)){O=O.substring(Y.raw.length),U.push(Y);continue}if(!H&&(Y=this.tokenizer.url(O,oe))){O=O.substring(Y.raw.length),U.push(Y);continue}if(Y=this.tokenizer.inlineText(O,G,De)){O=O.substring(Y.raw.length),Q=Y.raw.slice(-1),U.push(Y);continue}if(O){var Pe="Infinite loop on byte: "+O.charCodeAt(0);if(this.options.silent){console.error(Pe);break}else throw new Error(Pe)}}return U},k(P,null,[{key:"rules",get:function(){return{block:me,inline:pe}}}]),P}(),ce=M.defaults,ge=N.cleanUrl,ye=N.escape,ve=function(){function P(W){this.options=W||ce}var B=P.prototype;return B.code=function(O,U,H){var G=(U||"").match(/\S*/)[0];if(this.options.highlight){var Q=this.options.highlight(O,G);Q!=null&&Q!==O&&(H=!0,O=Q)}return G?'<pre><code class="'+this.options.langPrefix+ye(G,!0)+'">'+(H?O:ye(O,!0))+`</code></pre>
|
|
`:"<pre><code>"+(H?O:ye(O,!0))+`</code></pre>
|
|
`},B.blockquote=function(O){return`<blockquote>
|
|
`+O+`</blockquote>
|
|
`},B.html=function(O){return O},B.heading=function(O,U,H,G){return this.options.headerIds?"<h"+U+' id="'+this.options.headerPrefix+G.slug(H)+'">'+O+"</h"+U+`>
|
|
`:"<h"+U+">"+O+"</h"+U+`>
|
|
`},B.hr=function(){return this.options.xhtml?`<hr/>
|
|
`:`<hr>
|
|
`},B.list=function(O,U,H){var G=U?"ol":"ul",Q=U&&H!==1?' start="'+H+'"':"";return"<"+G+Q+`>
|
|
`+O+"</"+G+`>
|
|
`},B.listitem=function(O){return"<li>"+O+`</li>
|
|
`},B.checkbox=function(O){return"<input "+(O?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "},B.paragraph=function(O){return"<p>"+O+`</p>
|
|
`},B.table=function(O,U){return U&&(U="<tbody>"+U+"</tbody>"),`<table>
|
|
<thead>
|
|
`+O+`</thead>
|
|
`+U+`</table>
|
|
`},B.tablerow=function(O){return`<tr>
|
|
`+O+`</tr>
|
|
`},B.tablecell=function(O,U){var H=U.header?"th":"td",G=U.align?"<"+H+' align="'+U.align+'">':"<"+H+">";return G+O+"</"+H+`>
|
|
`},B.strong=function(O){return"<strong>"+O+"</strong>"},B.em=function(O){return"<em>"+O+"</em>"},B.codespan=function(O){return"<code>"+O+"</code>"},B.br=function(){return this.options.xhtml?"<br/>":"<br>"},B.del=function(O){return"<del>"+O+"</del>"},B.link=function(O,U,H){if(O=ge(this.options.sanitize,this.options.baseUrl,O),O===null)return H;var G='<a href="'+ye(O)+'"';return U&&(G+=' title="'+U+'"'),G+=">"+H+"</a>",G},B.image=function(O,U,H){if(O=ge(this.options.sanitize,this.options.baseUrl,O),O===null)return H;var G='<img src="'+O+'" alt="'+H+'"';return U&&(G+=' title="'+U+'"'),G+=this.options.xhtml?"/>":">",G},B.text=function(O){return O},P}(),fe=function(){function P(){}var B=P.prototype;return B.strong=function(O){return O},B.em=function(O){return O},B.codespan=function(O){return O},B.del=function(O){return O},B.html=function(O){return O},B.text=function(O){return O},B.link=function(O,U,H){return""+H},B.image=function(O,U,H){return""+H},B.br=function(){return""},P}(),we=function(){function P(){this.seen={}}var B=P.prototype;return B.slug=function(O){var U=O.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(U)){var H=U;do this.seen[H]++,U=H+"-"+this.seen[H];while(this.seen.hasOwnProperty(U))}return this.seen[U]=0,U},P}(),Ce=M.defaults,be=N.unescape,Ae=function(){function P(W){this.options=W||Ce,this.options.renderer=this.options.renderer||new ve,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new fe,this.slugger=new we}P.parse=function(O,U){var H=new P(U);return H.parse(O)};var B=P.prototype;return B.parse=function(O,U){U===void 0&&(U=!0);var H="",G,Q,Y,se,Ee,Ie,Pe,Ne,Me,Oe,Ge,je,ze,Ke,Fe,Ze,qe,Qe,et=O.length;for(G=0;G<et;G++){Oe=O[G];switch(Oe.type){case"space":continue;case"hr":{H+=this.renderer.hr();continue}case"heading":{H+=this.renderer.heading(this.parseInline(Oe.tokens),Oe.depth,be(this.parseInline(Oe.tokens,this.textRenderer)),this.slugger);continue}case"code":{H+=this.renderer.code(Oe.text,Oe.lang,Oe.escaped);continue}case"table":{for(Ne="",Pe="",se=Oe.header.length,Q=0;Q<se;Q++)Pe+=this.renderer.tablecell(this.parseInline(Oe.tokens.header[Q]),{header:!0,align:Oe.align[Q]});for(Ne+=this.renderer.tablerow(Pe),Me="",se=Oe.cells.length,Q=0;Q<se;Q++){for(Ie=Oe.tokens.cells[Q],Pe="",Ee=Ie.length,Y=0;Y<Ee;Y++)Pe+=this.renderer.tablecell(this.parseInline(Ie[Y]),{header:!1,align:Oe.align[Y]});Me+=this.renderer.tablerow(Pe)}H+=this.renderer.table(Ne,Me);continue}case"blockquote":{Me=this.parse(Oe.tokens),H+=this.renderer.blockquote(Me);continue}case"list":{for(Ge=Oe.ordered,je=Oe.start,ze=Oe.loose,se=Oe.items.length,Me="",Q=0;Q<se;Q++)Fe=Oe.items[Q],Ze=Fe.checked,qe=Fe.task,Ke="",Fe.task&&(Qe=this.renderer.checkbox(Ze),ze?Fe.tokens.length>0&&Fe.tokens[0].type==="text"?(Fe.tokens[0].text=Qe+" "+Fe.tokens[0].text,Fe.tokens[0].tokens&&Fe.tokens[0].tokens.length>0&&Fe.tokens[0].tokens[0].type==="text"&&(Fe.tokens[0].tokens[0].text=Qe+" "+Fe.tokens[0].tokens[0].text)):Fe.tokens.unshift({type:"text",text:Qe}):Ke+=Qe),Ke+=this.parse(Fe.tokens,ze),Me+=this.renderer.listitem(Ke,qe,Ze);H+=this.renderer.list(Me,Ge,je);continue}case"html":{H+=this.renderer.html(Oe.text);continue}case"paragraph":{H+=this.renderer.paragraph(this.parseInline(Oe.tokens));continue}case"text":{for(Me=Oe.tokens?this.parseInline(Oe.tokens):Oe.text;G+1<et&&O[G+1].type==="text";)Oe=O[++G],Me+=`
|
|
`+(Oe.tokens?this.parseInline(Oe.tokens):Oe.text);H+=U?this.renderer.paragraph(Me):Me;continue}default:{var tt='Token with "'+Oe.type+'" type was not found.';if(this.options.silent){console.error(tt);return}else throw new Error(tt)}}}return H},B.parseInline=function(O,U){U=U||this.renderer;var H="",G,Q,Y=O.length;for(G=0;G<Y;G++){Q=O[G];switch(Q.type){case"escape":{H+=U.text(Q.text);break}case"html":{H+=U.html(Q.text);break}case"link":{H+=U.link(Q.href,Q.title,this.parseInline(Q.tokens,U));break}case"image":{H+=U.image(Q.href,Q.title,Q.text);break}case"strong":{H+=U.strong(this.parseInline(Q.tokens,U));break}case"em":{H+=U.em(this.parseInline(Q.tokens,U));break}case"codespan":{H+=U.codespan(Q.text);break}case"br":{H+=U.br();break}case"del":{H+=U.del(this.parseInline(Q.tokens,U));break}case"text":{H+=U.text(Q.text);break}default:{var se='Token with "'+Q.type+'" type was not found.';if(this.options.silent){console.error(se);return}else throw new Error(se)}}}return H},P}(),xe=N.merge,Te=N.checkSanitizeDeprecation,Se=N.escape,de=M.getDefaults,Le=M.changeDefaults,_e=M.defaults;function j(P,B,W){if(typeof P=="undefined"||P===null)throw new Error("marked(): input parameter is undefined or null");if(typeof P!="string")throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(P)+", string expected");if(typeof B=="function"&&(W=B,B=null),B=xe({},j.defaults,B||{}),Te(B),W){var O=B.highlight,U;try{U=ue.lex(P,B)}catch(Y){return W(Y)}var H=function(se){var Ee;if(!se)try{Ee=Ae.parse(U,B)}catch(Ie){se=Ie}return B.highlight=O,se?W(se):W(null,Ee)};if(!O||O.length<3)return H();if(delete B.highlight,!U.length)return H();var G=0;j.walkTokens(U,function(Y){Y.type==="code"&&(G++,setTimeout(function(){O(Y.text,Y.lang,function(se,Ee){if(se)return H(se);Ee!=null&&Ee!==Y.text&&(Y.text=Ee,Y.escaped=!0),G--,G===0&&H()})},0))}),G===0&&H();return}try{var Q=ue.lex(P,B);return B.walkTokens&&j.walkTokens(Q,B.walkTokens),Ae.parse(Q,B)}catch(Y){if(Y.message+=`
|
|
Please report this to https://github.com/markedjs/marked.`,B.silent)return"<p>An error occurred:</p><pre>"+Se(Y.message+"",!0)+"</pre>";throw Y}}j.options=j.setOptions=function(P){return xe(j.defaults,P),Le(j.defaults),j},j.getDefaults=de,j.defaults=_e,j.use=function(P){var B=xe({},P);if(P.renderer&&function(){var O=j.defaults.renderer||new ve,U=function(Q){var Y=O[Q];O[Q]=function(){for(var se=arguments.length,Ee=new Array(se),Ie=0;Ie<se;Ie++)Ee[Ie]=arguments[Ie];var Pe=P.renderer[Q].apply(O,Ee);return Pe===!1&&(Pe=Y.apply(O,Ee)),Pe}};for(var H in P.renderer)U(H);B.renderer=O}(),P.tokenizer&&function(){var O=j.defaults.tokenizer||new te,U=function(Q){var Y=O[Q];O[Q]=function(){for(var se=arguments.length,Ee=new Array(se),Ie=0;Ie<se;Ie++)Ee[Ie]=arguments[Ie];var Pe=P.tokenizer[Q].apply(O,Ee);return Pe===!1&&(Pe=Y.apply(O,Ee)),Pe}};for(var H in P.tokenizer)U(H);B.tokenizer=O}(),P.walkTokens){var W=j.defaults.walkTokens;B.walkTokens=function(O){P.walkTokens(O),W&&W(O)}}j.setOptions(B)},j.walkTokens=function(P,B){for(var W=C(P),O;!(O=W()).done;){var U=O.value;B(U);switch(U.type){case"table":{for(var H=C(U.tokens.header),G;!(G=H()).done;){var Q=G.value;j.walkTokens(Q,B)}for(var Y=C(U.tokens.cells),se;!(se=Y()).done;)for(var Ee=se.value,Ie=C(Ee),Pe;!(Pe=Ie()).done;){var Ne=Pe.value;j.walkTokens(Ne,B)}break}case"list":{j.walkTokens(U.items,B);break}default:U.tokens&&j.walkTokens(U.tokens,B)}}},j.Parser=Ae,j.parser=Ae.parse,j.Renderer=ve,j.TextRenderer=fe,j.Lexer=ue,j.lexer=ue.lex,j.Tokenizer=te,j.Slugger=we,j.parse=j;var _=j;return _})},NLgs:function(We,ke,ee){"use strict";ee.d(ke,"e",function(){return s}),ee.d(ke,"f",function(){return e}),ee.d(ke,"d",function(){return i}),ee.d(ke,"c",function(){return h}),ee.d(ke,"a",function(){return l}),ee.d(ke,"b",function(){return u});var ne=ee("miYZ"),k=ee("tsqr"),E=ee("9og8"),I=ee("2qtc"),C=ee("kLXV"),A=ee("WmNS"),M=ee.n(A),w=ee("q1tI"),R=ee.n(w),S=ee("9kvl"),g=ee("xKgJ"),x=ee("1vsH"),T=ee("RCxd"),v=ee("yTi+"),y=ee.n(v),p=ee("m3rI"),s=function(d){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return!!(e(d)&&a(o))},e=function(d){return Object(g.p)()?!0:(d({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1)},a=function(){var d,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,n=Object(S.c)()._store.getState(),t=n.user;return(d=t.userInfo)!==null&&d!==void 0&&d.profile_completed?!0:(C.a.confirm({title:"\u63D0\u793A",width:530,centered:!0,content:o?"\u6309\u7167\u6709\u5173\u653F\u7B56\u89C4\u5B9A\uFF0C\u7279\u6B8A\u5B9E\u9A8C\u9700\u8981\u5148\u7ED1\u5B9A\u624B\u673A\u53F7\u624D\u80FD\u4F7F\u7528\uFF0C\u8BF7\u5148\u7ED1\u5B9A\u624B\u673A\u53F7\u7801":"\u60A8\u9700\u8981\u53BB\u5B8C\u5584\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD",okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:function(){S.d.push("/account/profile/edit")}}),!1)},i=function(){var d,o=Object(S.c)()._store.getState(),n=o.user;return(d=n.userInfo)!==null&&d!==void 0&&d.professional_certification?!0:(C.a.confirm({title:"\u63D0\u793A",centered:!0,content:R.a.createElement("div",{className:"tc"},"\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:function(){Object(x.S)("/account/certification")}}),!1)},h=function(){var d;if(Object(g.a)())return!0;var o=Object(S.c)()._store.getState(),n=o.user,t=o.globalSetting;return C.a.warning({centered:!0,width:530,title:"\u63D0\u793A",content:R.a.createElement("div",{className:"tc",style:{marginLeft:-38}},R.a.createElement("p",null,"\u626B\u7801\u6DFB\u52A0\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),R.a.createElement("img",{src:p.a.IMG_SERVER+(t==null||((d=t.setting)===null||d===void 0)?void 0:d.authority_qrcode_url),width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1},l=function(d,o){var n;if(d)return!0;var t=Object(S.c)()._store.getState(),r=t.user,c=t.globalSetting;return C.a.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:R.a.createElement("div",null,R.a.createElement("p",null,o||"\u8BE5\u5B9E\u8DF5\u8D44\u6E90\u9700\u6388\u6743\u540E\u624D\u53EF\u4F7F\u7528\u3002 \u60A8\u53EF\u4EE5\u5728QQ\u670D\u52A1\u7FA4\u5411\u7BA1\u7406\u5458\u7533\u8BF7\uFF0C\u83B7\u5F97\u7EE7\u7EED\u64CD\u4F5C\u7684\u6743\u9650\u3002"),R.a.createElement("div",{style:{marginLeft:"110px"}},R.a.createElement("img",{src:p.a.IMG_SERVER+(c==null||((n=c.setting)===null||n===void 0)?void 0:n.authority_qrcode_url),width:200}),R.a.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:function(){Object(x.S)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1},u=function(d){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",n=Object(S.c)()._store.getState(),t=n.shixunsDetail.detail;return(t==null?void 0:t.public)===2||(t==null?void 0:t.public)===1||(t==null?void 0:t.shixun_status)===3?(C.a.info({centered:!0,icon:R.a.createElement(T.a,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:R.a.createElement("div",{className:"tc",style:{marginLeft:-38}},R.a.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},R.a.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",(t==null?void 0:t.public)===2?"\u5DF2\u516C\u5F00":(t==null?void 0:t.public)===1?"\u5F85\u5BA1\u6838":"\u5DF2\u5173\u95ED","\uFF0C",o,"\u3002"),R.a.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),R.a.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:y.a,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0):(t==null?void 0:t.shixun_status)===2?(C.a.confirm({centered:!0,icon:R.a.createElement(T.a,null),title:"\u63D0\u793A",content:R.a.createElement("div",null,R.a.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",o,"\u3002"),R.a.createElement("br",null),R.a.createElement("span",null,"\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),okText:"\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:function(){C.a.confirm({width:440,centered:!0,icon:R.a.createElement(T.a,{style:{color:"#faad14"}}),title:"\u63D0\u793A",content:"\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u5B66\u5458\u5C06\u65E0\u6CD5\u8FDB\u884C\u7EC3\u4E60\u3002\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F",okText:"\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:function(){var c=Object(E.a)(M.a.mark(function b(){var L;return M.a.wrap(function(F){for(;;)switch(F.prev=F.next){case 0:return F.next=2,d({type:"shixunsDetail/cancelRelease",payload:{id:t==null?void 0:t.identifier}});case 2:L=F.sent,L.status!==401&&(k.b.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),d({type:"shixunsDetail/getShixunsDetail",payload:{id:t==null?void 0:t.identifier}}),d({type:"practiceSetting/getCommonData",payload:{id:t==null?void 0:t.identifier}}));case 4:case"end":return F.stop()}},b)}));function f(){return c.apply(this,arguments)}return f}()})}}),!0):!1}},SJMd:function(We,ke){/**
|
|
* @license
|
|
* Copyright (C) 2006 Google Inc.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/var ee,ne,k,E=!1,I,C;window.PR_SHOULD_USE_CONTINUATION=!0;var A,M;(function(){var w=window,R=["break,continue,do,else,for,if,return,while"],S=[R,"auto,case,char,const,default,double,enum,extern,float,goto,inline,int,long,register,restrict,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"],g=[S,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],x=[g,"alignas,alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,delegate,dynamic_cast,explicit,export,friend,generic,late_check,mutable,namespace,noexcept,noreturn,nullptr,property,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],T=[g,"abstract,assert,boolean,byte,extends,finally,final,implements,import,instanceof,interface,null,native,package,strictfp,super,synchronized,throws,transient"],v=[g,"abstract,add,alias,as,ascending,async,await,base,bool,by,byte,checked,decimal,delegate,descending,dynamic,event,finally,fixed,foreach,from,get,global,group,implicit,in,interface,internal,into,is,join,let,lock,null,object,out,override,orderby,params,partial,readonly,ref,remove,sbyte,sealed,select,set,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,value,var,virtual,where,yield"],y="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes",p=[g,"abstract,async,await,constructor,debugger,enum,eval,export,function,get,implements,instanceof,interface,let,null,set,undefined,var,with,yield,Infinity,NaN"],s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",e=[R,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"],a=[R,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],i=[R,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],h=[x,v,T,p,s,e,a,i],l=/^(DIR|FILE|array|vector|(de|priority_)?queue|(forward_)?list|stack|(const_)?(reverse_)?iterator|(unordered_)?(multi)?(set|map)|bitset|u?(int|float)\d*)\b/,u="str",m="kwd",d="com",o="typ",n="lit",t="pun",r="pln",c="tag",f="dec",b="src",L="atn",D="atv",F="nocode",N="(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<<?=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function K(oe){for(var ue=0,ce=!1,ge=!1,ye=0,ve=oe.length;ye<ve;++ye){var fe=oe[ye];if(fe.ignoreCase)ge=!0;else if(/[a-z]/i.test(fe.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,""))){ce=!0,ge=!1;break}}var we={b:8,t:9,n:10,v:11,f:12,r:13};function Ce(Se){var de=Se.charCodeAt(0);if(de!==92)return de;var Le=Se.charAt(1);return de=we[Le],de||("0"<=Le&&Le<="7"?parseInt(Se.substring(1),8):Le==="u"||Le==="x"?parseInt(Se.substring(2),16):Se.charCodeAt(1))}function be(Se){if(Se<32)return(Se<16?"\\x0":"\\x")+Se.toString(16);var de=String.fromCharCode(Se);return de==="\\"||de==="-"||de==="]"||de==="^"?"\\"+de:de}function Ae(Se){var de=Se.substring(1,Se.length-1).match(new RegExp("\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]","g")),Le=[],_e=de[0]==="^",j=["["];_e&&j.push("^");for(var _=_e?1:0,P=de.length;_<P;++_){var B=de[_];if(/\\[bdsw]/i.test(B))j.push(B);else{var W=Ce(B),O;_+2<P&&de[_+1]==="-"?(O=Ce(de[_+2]),_+=2):O=W,Le.push([W,O]),O<65||W>122||(O<65||W>90||Le.push([Math.max(65,W)|32,Math.min(O,90)|32]),O<97||W>122||Le.push([Math.max(97,W)&~32,Math.min(O,122)&~32]))}}Le.sort(function(Q,Y){return Q[0]-Y[0]||Y[1]-Q[1]});for(var U=[],H=[],_=0;_<Le.length;++_){var G=Le[_];G[0]<=H[1]+1?H[1]=Math.max(H[1],G[1]):U.push(H=G)}for(var _=0;_<U.length;++_){var G=U[_];j.push(be(G[0])),G[1]>G[0]&&(G[1]+1>G[0]&&j.push("-"),j.push(be(G[1])))}return j.push("]"),j.join("")}function xe(Se){for(var de=Se.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g")),Le=de.length,_e=[],j=0,_=0;j<Le;++j){var P=de[j];if(P==="(")++_;else if(P.charAt(0)==="\\"){var B=+P.substring(1);B&&(B<=_?_e[B]=-1:de[j]=be(B))}}for(var j=1;j<_e.length;++j)_e[j]===-1&&(_e[j]=++ue);for(var j=0,_=0;j<Le;++j){var P=de[j];if(P==="(")++_,_e[_]||(de[j]="(?:");else if(P.charAt(0)==="\\"){var B=+P.substring(1);B&&B<=_&&(de[j]="\\"+_e[B])}}for(var j=0;j<Le;++j)de[j]==="^"&&de[j+1]!=="^"&&(de[j]="");if(Se.ignoreCase&&ce)for(var j=0;j<Le;++j){var P=de[j],W=P.charAt(0);P.length>=2&&W==="["?de[j]=Ae(P):W!=="\\"&&(de[j]=P.replace(/[a-zA-Z]/g,function(H){var G=H.charCodeAt(0);return"["+String.fromCharCode(G&~32,G|32)+"]"}))}return de.join("")}for(var Te=[],ye=0,ve=oe.length;ye<ve;++ye){var fe=oe[ye];if(fe.global||fe.multiline)throw new Error(""+fe);Te.push("(?:"+xe(fe)+")")}return new RegExp(Te.join("|"),ge?"gi":"g")}function V(oe,ue){var ce=/(?:^|\s)nocode(?:\s|$)/,ge=[],ye=0,ve=[],fe=0;function we(Ce){var be=Ce.nodeType;if(be==1){if(ce.test(Ce.className))return;for(var Ae=Ce.firstChild;Ae;Ae=Ae.nextSibling)we(Ae);var xe=Ce.nodeName.toLowerCase();(xe==="br"||xe==="li")&&(ge[fe]=`
|
|
`,ve[fe<<1]=ye++,ve[fe++<<1|1]=Ce)}else if(be==3||be==4){var Te=Ce.nodeValue;Te.length&&(ue?Te=Te.replace(/\r\n?/g,`
|
|
`):Te=Te.replace(/[ \t\r\n]+/g," "),ge[fe]=Te,ve[fe<<1]=ye,ye+=Te.length,ve[fe++<<1|1]=Ce)}}return we(oe),{sourceCode:ge.join("").replace(/\n$/,""),spans:ve}}function z(oe,ue,ce,ge,ye){if(!ce)return;var ve={sourceNode:oe,pre:1,langExtension:null,numberLines:null,sourceCode:ce,spans:null,basePos:ue,decorations:null};ge(ve),ye.push.apply(ye,ve.decorations)}var $=/\S/;function q(oe){for(var ue=void 0,ce=oe.firstChild;ce;ce=ce.nextSibling){var ge=ce.nodeType;ue=ge===1?ue?oe:ce:ge===3&&$.test(ce.nodeValue)?oe:ue}return ue===oe?void 0:ue}function J(oe,ue){var ce={},ge;(function(){for(var fe=oe.concat(ue),we=[],Ce={},be=0,Ae=fe.length;be<Ae;++be){var xe=fe[be],Te=xe[3];if(Te)for(var Se=Te.length;--Se>=0;)ce[Te.charAt(Se)]=xe;var de=xe[1],Le=""+de;Ce.hasOwnProperty(Le)||(we.push(de),Ce[Le]=null)}we.push(/[\0-\uffff]/),ge=K(we)})();var ye=ue.length,ve=function(fe){for(var we=fe.sourceCode,Ce=fe.basePos,be=fe.sourceNode,Ae=[Ce,r],xe=0,Te=we.match(ge)||[],Se={},de=0,Le=Te.length;de<Le;++de){var _e=Te[de],j=Se[_e],_=void 0,P;if(typeof j=="string")P=!1;else{var B=ce[_e.charAt(0)];if(B)_=_e.match(B[1]),j=B[0];else{for(var W=0;W<ye;++W)if(B=ue[W],_=_e.match(B[1]),_){j=B[0];break}_||(j=r)}P=j.length>=5&&j.substring(0,5)==="lang-",P&&!(_&&typeof _[1]=="string")&&(P=!1,j=b),P||(Se[_e]=j)}var O=xe;if(xe+=_e.length,!P)Ae.push(Ce+O,j);else{var U=_[1],H=_e.indexOf(U),G=H+U.length;_[2]&&(G=_e.length-_[2].length,H=G-U.length);var Q=j.substring(5);z(be,Ce+O,_e.substring(0,H),ve,Ae),z(be,Ce+O+H,U,Z(Q,U),Ae),z(be,Ce+O+G,_e.substring(G),ve,Ae)}}fe.decorations=Ae};return ve}function he(oe){var ue=[],ce=[];oe.tripleQuotedStrings?ue.push([u,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,`'"`]):oe.multiLineStrings?ue.push([u,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"]):ue.push([u,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,`"'`]),oe.verbatimStrings&&ce.push([u,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null]);var ge=oe.hashComments;ge&&(oe.cStyleComments?(ge>1?ue.push([d,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"]):ue.push([d,/^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"]),ce.push([u,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/,null])):ue.push([d,/^#[^\r\n]*/,null,"#"])),oe.cStyleComments&&(ce.push([d,/^\/\/[^\r\n]*/,null]),ce.push([d,/^\/\*[\s\S]*?(?:\*\/|$)/,null]));var ye=oe.regexLiterals;if(ye){var ve=ye>1?"":`
|
|
\r`,fe=ve?".":"[\\S\\s]",we="/(?=[^/*"+ve+"])(?:[^/\\x5B\\x5C"+ve+"]|\\x5C"+fe+"|\\x5B(?:[^\\x5C\\x5D"+ve+"]|\\x5C"+fe+")*(?:\\x5D|$))+/";ce.push(["lang-regex",RegExp("^"+N+"("+we+")")])}var Ce=oe.types;Ce&&ce.push([o,Ce]);var be=(""+oe.keywords).replace(/^ | $/g,"");be.length&&ce.push([m,new RegExp("^(?:"+be.replace(/[\s,]+/g,"|")+")\\b"),null]),ue.push([r,/^\s+/,null,` \r
|
|
\xA0`]);var Ae="^.[^\\s\\w.$@'\"`/\\\\]*";return oe.regexLiterals&&(Ae+="(?!s*/)"),ce.push([n,/^@[a-z_$][a-z_$@0-9]*/i,null],[o,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[r,/^[a-z_$][a-z_$@0-9]*/i,null],[n,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[r,/^\\[\s\S]?/,null],[t,new RegExp(Ae),null]),J(ue,ce)}var te=he({keywords:h,hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0});function le(oe,ue,ce){for(var ge=/(?:^|\s)nocode(?:\s|$)/,ye=/\r\n?|\n/,ve=oe.ownerDocument,fe=ve.createElement("li");oe.firstChild;)fe.appendChild(oe.firstChild);var we=[fe];function Ce(de){var Le=de.nodeType;if(Le==1&&!ge.test(de.className))if(de.nodeName==="br")be(de),de.parentNode&&de.parentNode.removeChild(de);else for(var _e=de.firstChild;_e;_e=_e.nextSibling)Ce(_e);else if((Le==3||Le==4)&&ce){var j=de.nodeValue,_=j.match(ye);if(_){var P=j.substring(0,_.index);de.nodeValue=P;var B=j.substring(_.index+_[0].length);if(B){var W=de.parentNode;W.insertBefore(ve.createTextNode(B),de.nextSibling)}be(de),P||de.parentNode.removeChild(de)}}}function be(de){for(;!de.nextSibling;)if(de=de.parentNode,!de)return;function Le(_,P){var B=P?_.cloneNode(!1):_,W=_.parentNode;if(W){var O=Le(W,1),U=_.nextSibling;O.appendChild(B);for(var H=U;H;H=U)U=H.nextSibling,O.appendChild(H)}return B}for(var _e=Le(de.nextSibling,0),j;(j=_e.parentNode)&&j.nodeType===1;)_e=j;we.push(_e)}for(var Ae=0;Ae<we.length;++Ae)Ce(we[Ae]);ue===(ue|0)&&we[0].setAttribute("value",ue);var xe=ve.createElement("ol");xe.className="linenums";for(var Te=Math.max(0,ue-1|0)||0,Ae=0,Se=we.length;Ae<Se;++Ae)fe=we[Ae],fe.className="L"+(Ae+Te)%10,fe.firstChild||fe.appendChild(ve.createTextNode("\xA0")),xe.appendChild(fe);oe.appendChild(xe)}function re(oe){var ue=/\bMSIE\s(\d+)/.exec(navigator.userAgent);ue=ue&&+ue[1]<=8;var ce=/\n/g,ge=oe.sourceCode,ye=ge.length,ve=0,fe=oe.spans,we=fe.length,Ce=0,be=oe.decorations,Ae=be.length,xe=0;be[Ae]=ye;var Te,Se;for(Se=Te=0;Se<Ae;)be[Se]!==be[Se+2]?(be[Te++]=be[Se++],be[Te++]=be[Se++]):Se+=2;for(Ae=Te,Se=Te=0;Se<Ae;){for(var de=be[Se],Le=be[Se+1],_e=Se+2;_e+2<=Ae&&be[_e+1]===Le;)_e+=2;be[Te++]=de,be[Te++]=Le,Se=_e}Ae=be.length=Te;var j=oe.sourceNode,_="";j&&(_=j.style.display,j.style.display="none");try{for(var P=null;Ce<we;){var B=fe[Ce],W=fe[Ce+2]||ye,O=be[xe+2]||ye,_e=Math.min(W,O),U=fe[Ce+1],H;if(U.nodeType!==1&&(H=ge.substring(ve,_e))){ue&&(H=H.replace(ce,"\r")),U.nodeValue=H;var G=U.ownerDocument,Q=G.createElement("span");Q.className=be[xe+1];var Y=U.parentNode;Y.replaceChild(Q,U),Q.appendChild(U),ve<W&&(fe[Ce+1]=U=G.createTextNode(ge.substring(_e,W)),Y.insertBefore(U,Q.nextSibling))}ve=_e,ve>=W&&(Ce+=2),ve>=O&&(xe+=2)}}finally{j&&(j.style.display=_)}}var ae={};function X(oe,ue){for(var ce=ue.length;--ce>=0;){var ge=ue[ce];ae.hasOwnProperty(ge)?w.console&&console.warn("cannot override language handler %s",ge):ae[ge]=oe}}function Z(oe,ue){return oe&&ae.hasOwnProperty(oe)||(oe=/^\s*</.test(ue)?"default-markup":"default-code"),ae[oe]}X(te,["default-code"]),X(J([],[[r,/^[^<?]+/],[f,/^<!\w[^>]*(?:>|$)/],[d,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[t,/^(?:<[%?]|[%?]>)/],["lang-",/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]),X(J([[r,/^[\s]+/,null,` \r
|
|
`],[D,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,`"'`]],[[c,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[L,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[t,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]),X(J([],[[D,/^[\s\S]+/]]),["uq.val"]),X(he({keywords:x,hashComments:!0,cStyleComments:!0,types:l}),["c","cc","cpp","cxx","cyc","m"]),X(he({keywords:"null,true,false"}),["json"]),X(he({keywords:v,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:l}),["cs"]),X(he({keywords:T,cStyleComments:!0}),["java"]),X(he({keywords:i,hashComments:!0,multiLineStrings:!0}),["bash","bsh","csh","sh"]),X(he({keywords:e,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}),["cv","py","python"]),X(he({keywords:s,hashComments:!0,multiLineStrings:!0,regexLiterals:2}),["perl","pl","pm"]),X(he({keywords:a,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb","ruby"]),X(he({keywords:p,cStyleComments:!0,regexLiterals:!0}),["javascript","js","ts","typescript"]),X(he({keywords:y,hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]),X(J([],[[u,/^[\s\S]+/]]),["regex"]);function ie(oe){var ue=oe.langExtension;try{var ce=V(oe.sourceNode,oe.pre),ge=ce.sourceCode;oe.sourceCode=ge,oe.spans=ce.spans,oe.basePos=0,Z(ue,ge)(oe),re(oe)}catch(ye){w.console&&console.log(ye&&ye.stack||ye)}}function Re(oe,ue,ce){var ge=ce||!1,ye=ue||null,ve=document.createElement("div");ve.innerHTML="<pre>"+oe+"</pre>",ve=ve.firstChild,ge&&le(ve,ge,!0);var fe={langExtension:ye,numberLines:ge,sourceNode:ve,pre:1,sourceCode:null,basePos:null,spans:null,decorations:null};return ie(fe),ve.innerHTML}function me(oe,ue){var ce=ue||document.body,ge=ce.ownerDocument||document;function ye(B){return ce.getElementsByTagName(B)}for(var ve=[ye("pre"),ye("code"),ye("xmp")],fe=[],we=0;we<ve.length;++we)for(var Ce=0,be=ve[we].length;Ce<be;++Ce)fe.push(ve[we][Ce]);ve=null;var Ae=Date;Ae.now||(Ae={now:function(){return+new Date}});var xe=0,Te=/\blang(?:uage)?-([\w.]+)(?!\S)/,Se=/\bprettyprint\b/,de=/\bprettyprinted\b/,Le=/pre|xmp/i,_e=/^code$/i,j=/^(?:pre|code|xmp)$/i,_={};function P(){for(var B=w.PR_SHOULD_USE_CONTINUATION?Ae.now()+250:Infinity;xe<fe.length&&Ae.now()<B;xe++){for(var W=fe[xe],O=_,U=W;U=U.previousSibling;){var H=U.nodeType,G=(H===7||H===8)&&U.nodeValue;if(G?!/^\??prettify\b/.test(G):H!==3||/\S/.test(U.nodeValue))break;if(G){O={},G.replace(/\b(\w+)=([\w:.%+-]+)/g,function(Ke,Fe,Ze){O[Fe]=Ze});break}}var Q=W.className;if((O!==_||Se.test(Q))&&!de.test(Q)){for(var Y=!1,se=W.parentNode;se;se=se.parentNode){var Ee=se.tagName;if(j.test(Ee)&&se.className&&Se.test(se.className)){Y=!0;break}}if(!Y){W.className+=" prettyprinted";var Ie=O.lang;if(!Ie){Ie=Q.match(Te);var Pe;!Ie&&(Pe=q(W))&&_e.test(Pe.tagName)&&(Ie=Pe.className.match(Te)),Ie&&(Ie=Ie[1])}var Ne;if(Le.test(W.tagName))Ne=1;else{var Me=W.currentStyle,Oe=ge.defaultView,Ge=Me?Me.whiteSpace:Oe&&Oe.getComputedStyle?Oe.getComputedStyle(W,null).getPropertyValue("white-space"):0;Ne=Ge&&Ge.substring(0,3)==="pre"}var je=O.linenums;(je=je==="true"||+je)||(je=Q.match(/\blinenums\b(?::(\d+))?/),je=je?je[1]&&je[1].length?+je[1]:!0:!1),je&&le(W,je,Ne);var ze={langExtension:Ie,sourceNode:W,numberLines:je,pre:Ne,sourceCode:null,basePos:null,spans:null,decorations:null};ie(ze)}}}xe<fe.length?w.setTimeout(P,250):typeof oe=="function"&&oe()}P()}var pe=w.PR={createSimpleLexer:J,registerLangHandler:X,sourceDecorator:he,PR_ATTRIB_NAME:L,PR_ATTRIB_VALUE:D,PR_COMMENT:d,PR_DECLARATION:f,PR_KEYWORD:m,PR_LITERAL:n,PR_NOCODE:F,PR_PLAIN:r,PR_PUNCTUATION:t,PR_SOURCE:b,PR_STRING:u,PR_TAG:c,PR_TYPE:o,prettyPrintOne:E?w.prettyPrintOne=Re:A=Re,prettyPrint:M=E?w.prettyPrint=me:M=me},De=w.define;typeof De=="function"&&De.amd&&De("google-code-prettify",[],function(){return pe})})()},TNY5:function(We,ke,ee){"use strict";ee.r(ke);var ne=ee("cWXX"),k=ee("/ezw"),E=ee("14J3"),I=ee("BMrR"),C=ee("jCWc"),A=ee("kPKH"),M=ee("lUTK"),w=ee("BvKs"),R=ee("9og8"),S=ee("y8nQ"),g=ee("Vl3Y"),x=ee("tJVT"),T=ee("PpiC"),v=ee("WmNS"),y=ee.n(v),p=ee("q1tI"),s=ee.n(p),e=ee("55Ip"),a=ee("9kvl"),i=ee("ErOA"),h=ee("9Bee"),l=ee("m3rI"),u=ee("zvqp"),m=ee.n(u),d=ee("+L6B"),o=ee("2/Rp"),n=ee("7Kak"),t=ee("9yH6"),r=ee("k1fw"),c=ee("5NDa"),f=ee("5rEg"),b=ee("NLgs"),L=ee("2kAv"),D=ee.n(L),F=ee("1vsH"),N=f.a.TextArea,K=function(J){var he=J.user,te=J.globalSetting,le=J.loading,re=J.dispatch,ae=Object(T.a)(J,["user","globalSetting","loading","dispatch"]),X=g.a.useForm(),Z=Object(x.a)(X,1),ie=Z[0];Object(p.useEffect)(function(){var me;Object(F.P)((me=he.userInfo)===null||me===void 0?void 0:me.login)||Object(b.f)(re)},[he.userInfo.login]);var Re=function(){var me=Object(R.a)(y.a.mark(function pe(De){var oe,ue;return y.a.wrap(function(ge){for(;;)switch(ge.prev=ge.next){case 0:return ge.next=2,Object(i.a)("/api/helps/feedback.json",{method:"post",body:Object(r.a)({},De)});case 2:oe=ge.sent,(oe==null?void 0:oe.status)===0&&a.d.push("/messages/".concat((ue=he.userInfo)===null||ue===void 0?void 0:ue.login,"/message_detail?target_ids=1"));case 4:case"end":return ge.stop()}},pe)}));return function(De){return me.apply(this,arguments)}}();return s.a.createElement("section",{className:"".concat(D.a.wrap," bg-white pl30 pr30 pt30")},s.a.createElement("div",{className:"c-grey-999 line26"},"\u60F3\u5BF9\u6211\u4EEC\u7684\u5E73\u53F0\u63D0\u4F9B\u529F\u80FD\u5EFA\u8BAE\uFF1F",s.a.createElement("br",null),"\u53D1\u73B0\u7F51\u9875\u4E2D\u7684\u95EE\u9898\u6216bug\u60F3\u544A\u8BC9\u6211\u4EEC\uFF1F",s.a.createElement("br",null),"\u671F\u671B\u4E0E\u6211\u4EEC\u5C55\u5F00\u5408\u4F5C\uFF1F",s.a.createElement("br",null),"\u5728\u8FD9\u91CC\u628A\u4F60\u60F3\u8BF4\u7684\u4E00\u5207\u544A\u8BC9\u6211\u4EEC\u5427\uFF1F"),s.a.createElement("div",{className:"c-red-ee4 mt20 mb20"},"*"," ",s.a.createElement(e.a,{to:"/help/help_center",className:"".concat(D.a.link," c-red-ee4")},"\u770B\u770B\u5E2E\u52A9\u4E2D\u5FC3\u662F\u5426\u6709\u4F60\u60F3\u8981\u7684\u7B54\u6848")),s.a.createElement(g.a,{layout:"vertical",form:ie,onFinish:Re,initialValues:{question_kind:"\u767B\u5F55\u6CE8\u518C"}},s.a.createElement(g.a.Item,{label:"\u95EE\u9898\u5206\u7C7B\uFF1A",name:"question_kind",rules:[{required:!0,message:"\u4E0D\u80FD\u4E3A\u7A7A"}]},s.a.createElement(t.a.Group,null,s.a.createElement(t.a,{value:"\u767B\u5F55\u6CE8\u518C"},"\u767B\u5F55\u6CE8\u518C"),s.a.createElement(t.a,{value:"\u4FE1\u606F\u8BA4\u8BC1"},"\u4FE1\u606F\u8BA4\u8BC1"),s.a.createElement(t.a,{value:"\u5B9E\u8BAD\u7F16\u7A0B"},"\u5B9E\u8BAD\u7F16\u7A0B"),s.a.createElement(t.a,{value:"\u5B9E\u8BAD\u8BFE\u7A0B"},"\u5B9E\u8BAD\u8BFE\u7A0B"),s.a.createElement(t.a,{value:"\u8BFE\u5802"},"\u8BFE\u5802"),s.a.createElement(t.a,{value:"\u5176\u5B83"},"\u5176\u5B83"))),s.a.createElement(g.a.Item,{label:"\u95EE\u9898\u9875\u9762\u7F51\u5740\uFF1A",name:"url",rules:[{required:!0,message:"\u4E0D\u80FD\u4E3A\u7A7A"}]},s.a.createElement(f.a,{placeholder:"\u53CD\u9988\u5E73\u53F0\u95EE\u9898\uFF0C\u8BF7\u540C\u65F6\u586B\u5199\u5BF9\u5E94\u7684\u95EE\u9898\u9875\u9762\u94FE\u63A5\uFF0C\u4EE5\u4FBF\u5E73\u53F0\u80FD\u591F\u53CA\u65F6\u8DDF\u8E2A\u89E3\u51B3\uFF0C\u8C22\u8C22"})),s.a.createElement(g.a.Item,{label:"\u95EE\u9898\u63CF\u8FF0\uFF1A",name:"description",rules:[{required:!0,message:"\u4E0D\u80FD\u4E3A\u7A7A"}]},s.a.createElement(N,{rows:4,placeholder:"\u53CD\u9988\u5E73\u53F0\u95EE\u9898\uFF0C\u8BF7\u540C\u65F6\u586B\u5199\u5BF9\u5E94\u7684\u95EE\u9898\u9875\u9762\u94FE\u63A5\uFF0C\u4EE5\u4FBF\u5E73\u53F0\u80FD\u591F\u53CA\u65F6\u8DDF\u8E2A\u89E3\u51B3\uFF0C\u8C22\u8C22"})),s.a.createElement(g.a.Item,null,s.a.createElement(o.a,{type:"primary",htmlType:"submit"},"\u63D0\u4EA4"))))},V=Object(a.a)(function(q){var J=q.user,he=q.loading,te=q.globalSetting;return{user:J,globalSetting:te,loading:he.models.index}})(K),z=function(J){var he,te,le,re,ae=J.user,X=J.globalSetting,Z=J.loading,ie=J.dispatch,Re=Object(T.a)(J,["user","globalSetting","loading","dispatch"]),me=Object(p.useState)({content:"",message:"",status:0,contacts:[],address:"",data:[]}),pe=Object(x.a)(me,2),De=pe[0],oe=pe[1],ue=Object(p.useState)(!0),ce=Object(x.a)(ue,2),ge=ce[0],ye=ce[1],ve=g.a.useForm(),fe=Object(x.a)(ve,1),we=fe[0],Ce=[{name:"\u5173\u4E8E\u6211\u4EEC",key:"about_us",id:"about"},{name:"\u52A0\u5165\u6211\u4EEC",key:"join_us",id:"join_us"},{name:"\u8054\u7CFB\u6211\u4EEC",key:"contact_us",id:"contact"},{name:"\u5408\u4F5C\u4F19\u4F34",key:"cooperatives",id:"cooperatives"},{name:"\u670D\u52A1\u534F\u8BAE",key:"agreement",id:"agreement"},{name:"\u5E2E\u52A9\u4E2D\u5FC3",key:"help_center",id:"help_center"},{name:"\u610F\u89C1\u53CD\u9988",key:"feedback",id:"feedback"}].filter(function(xe){var Te;return X!=null&&(Te=X.setting)!==null&&Te!==void 0&&Te.is_local?xe.name!=="\u5173\u4E8E\u6211\u4EEC":!0}),be=Re.match.params,Ae=function(){var xe=Object(R.a)(y.a.mark(function Te(){var Se,de,Le,_e;return y.a.wrap(function(_){for(;;)switch(_.prev=_.next){case 0:return _.t0=oe,_.next=3,Object(i.a)("/api/helps/".concat((Se=Ce.filter(function(P){return P.key===be.id}))===null||Se===void 0||((de=Se[0])===null||de===void 0)?void 0:de.id,".json"),{method:"get"});case 3:_.t1=_.sent,(0,_.t0)(_.t1),ye(!1),Object(F.X)((Le=Ce.filter(function(P){return P.key===be.id}))===null||Le===void 0||((_e=Le[0])===null||_e===void 0)?void 0:_e.name);case 7:case"end":return _.stop()}},Te)}));return function(){return xe.apply(this,arguments)}}();return Object(p.useEffect)(function(){ye(!0),Ae()},[be.id]),s.a.createElement("section",null,s.a.createElement("aside",{className:"edu-container mt30"},s.a.createElement(I.a,{gutter:[20,20]},s.a.createElement(A.a,null,s.a.createElement(w.a,{className:m.a.menu,style:{width:174},defaultSelectedKeys:[(he=Ce.filter(function(xe){return xe.key===be.id}))===null||he===void 0?void 0:he[0].key],mode:"inline"},Ce.map(function(xe,Te){return s.a.createElement(w.a.Item,{key:xe.key},s.a.createElement(e.a,{to:"/help/".concat(xe.key)},xe.name))}))),s.a.createElement(A.a,{flex:"1"},s.a.createElement("h1",{className:m.a.title},(te=Ce.filter(function(xe){return xe.key===be.id}))===null||te===void 0?void 0:te[0].name),s.a.createElement("div",{className:"minH500"},be.id==="feedback"?s.a.createElement(V,null):s.a.createElement(k.a,{loading:ge},s.a.createElement("div",{className:[m.a.content,"bg-white pl30 pr30 pt30"].join(" ")},s.a.createElement(h.a,{value:De.content||""}),(le=De.contacts)===null||le===void 0?void 0:le.map(function(xe,Te){return s.a.createElement("ul",{key:Te,className:m.a.contcats},s.a.createElement("h1",null,xe.type),s.a.createElement("li",null,xe.name),s.a.createElement("li",null,s.a.createElement("span",null,"QQ:"),xe.qq),s.a.createElement("li",null,s.a.createElement("span",null,"Email:"),xe.mail))}),De.address&&s.a.createElement("ul",{className:m.a.contcats},s.a.createElement("h1",null,"\u516C\u53F8\u5730\u5740"),s.a.createElement("li",null,De.address)),(re=De.data)===null||re===void 0?void 0:re.map(function(xe,Te){var Se;return s.a.createElement("div",{className:m.a.cooperatives},s.a.createElement("h1",null,xe.name),s.a.createElement(I.a,{gutter:[10,20]},(Se=xe.values)===null||Se===void 0?void 0:Se.map(function(de,Le){return s.a.createElement(A.a,{span:6},s.a.createElement("div",{className:m.a.imgWrp},s.a.createElement("img",{src:l.a.IMG_SERVER+de.img})))})))}))))))))},$=ke.default=Object(a.a)(function(q){var J=q.user,he=q.loading,te=q.globalSetting;return{user:J,globalSetting:te,loading:he.models.index}})(z)},Y1PL:function(We,ke,ee){"use strict";ee.r(ke),ee.d(ke,"ResizableTextArea",function(){return q});var ne=ee("wx14"),k=ee("1OyB"),E=ee("vuIU"),I=ee("Ji7U"),C=ee("LK+K"),A=ee("q1tI"),M=ee("VTBJ"),w=ee("rePB"),R=ee("Zm9Q"),S=ee("Kwbf"),g=ee("c+Xe"),x=ee("m+aA"),T=ee("bdgK"),v=new Map;function y(te){te.forEach(function(le){var re,ae=le.target;(re=v.get(ae))===null||re===void 0||re.forEach(function(X){return X(ae)})})}var p=new T.default(y),s=null,e=null;function a(te,le){v.has(te)||(v.set(te,new Set),p.observe(te)),v.get(te).add(le)}function i(te,le){v.has(te)&&(v.get(te).delete(le),v.get(te).size||(p.unobserve(te),v.delete(te)))}var h=function(te){Object(I.a)(re,te);var le=Object(C.a)(re);function re(){return Object(k.a)(this,re),le.apply(this,arguments)}return Object(E.a)(re,[{key:"render",value:function(){return this.props.children}}]),re}(A.Component),l=A.createContext(null);function u(te){var le=te.children,re=te.onBatchResize,ae=A.useRef(0),X=A.useRef([]),Z=A.useContext(l),ie=A.useCallback(function(Re,me,pe){ae.current+=1;var De=ae.current;X.current.push({size:Re,element:me,data:pe}),Promise.resolve().then(function(){De===ae.current&&(re==null||re(X.current),X.current=[])}),Z==null||Z(Re,me,pe)},[re,Z]);return A.createElement(l.Provider,{value:ie},le)}function m(te){var le=te.children,re=te.disabled,ae=A.useRef(null),X=A.useRef(null),Z=A.useContext(l),ie=A.useRef({width:-1,height:-1,offsetWidth:-1,offsetHeight:-1}),Re=A.isValidElement(le)&&Object(g.c)(le),me=Re?le.ref:null,pe=A.useMemo(function(){return Object(g.a)(me,ae)},[me,ae]),De=A.useRef(te);De.current=te;var oe=A.useCallback(function(ue){var ce=De.current,ge=ce.onResize,ye=ce.data,ve=ue.getBoundingClientRect(),fe=ve.width,we=ve.height,Ce=ue.offsetWidth,be=ue.offsetHeight,Ae=Math.floor(fe),xe=Math.floor(we);if(ie.current.width!==Ae||ie.current.height!==xe||ie.current.offsetWidth!==Ce||ie.current.offsetHeight!==be){var Te={width:Ae,height:xe,offsetWidth:Ce,offsetHeight:be};ie.current=Te;var Se=Ce===Math.round(fe)?fe:Ce,de=be===Math.round(we)?we:be,Le=Object(M.a)(Object(M.a)({},Te),{},{offsetWidth:Se,offsetHeight:de});Z==null||Z(Le,ue,ye),ge&&Promise.resolve().then(function(){ge(Le,ue)})}},[]);return A.useEffect(function(){var ue=Object(x.a)(ae.current)||Object(x.a)(X.current);return ue&&!re&&a(ue,oe),function(){return i(ue,oe)}},[ae.current,re]),A.createElement(h,{ref:X},Re?A.cloneElement(le,{ref:pe}):le)}var d="rc-observer-key";function o(te){var le=te.children,re=Object(R.a)(le);return re.map(function(ae,X){var Z=(ae==null?void 0:ae.key)||"".concat(d,"-").concat(X);return A.createElement(m,Object(ne.a)({},te,{key:Z}),ae)})}o.Collection=u;var n=o,t=ee("bT9E"),r=ee("TSYQ"),c=ee.n(r),f=`
|
|
min-height:0 !important;
|
|
max-height:none !important;
|
|
height:0 !important;
|
|
visibility:hidden !important;
|
|
overflow:hidden !important;
|
|
position:absolute !important;
|
|
z-index:-1000 !important;
|
|
top:0 !important;
|
|
right:0 !important
|
|
`,b=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],L={},D;function F(te){var le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,re=te.getAttribute("id")||te.getAttribute("data-reactid")||te.getAttribute("name");if(le&&L[re])return L[re];var ae=window.getComputedStyle(te),X=ae.getPropertyValue("box-sizing")||ae.getPropertyValue("-moz-box-sizing")||ae.getPropertyValue("-webkit-box-sizing"),Z=parseFloat(ae.getPropertyValue("padding-bottom"))+parseFloat(ae.getPropertyValue("padding-top")),ie=parseFloat(ae.getPropertyValue("border-bottom-width"))+parseFloat(ae.getPropertyValue("border-top-width")),Re=b.map(function(pe){return"".concat(pe,":").concat(ae.getPropertyValue(pe))}).join(";"),me={sizingStyle:Re,paddingSize:Z,borderSize:ie,boxSizing:X};return le&&re&&(L[re]=me),me}function N(te){var le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,ae=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;D||(D=document.createElement("textarea"),D.setAttribute("tab-index","-1"),D.setAttribute("aria-hidden","true"),document.body.appendChild(D)),te.getAttribute("wrap")?D.setAttribute("wrap",te.getAttribute("wrap")):D.removeAttribute("wrap");var X=F(te,le),Z=X.paddingSize,ie=X.borderSize,Re=X.boxSizing,me=X.sizingStyle;D.setAttribute("style","".concat(me,";").concat(f)),D.value=te.value||te.placeholder||"";var pe=Number.MIN_SAFE_INTEGER,De=Number.MAX_SAFE_INTEGER,oe=D.scrollHeight,ue;if(Re==="border-box"?oe+=ie:Re==="content-box"&&(oe-=Z),re!==null||ae!==null){D.value=" ";var ce=D.scrollHeight-Z;re!==null&&(pe=ce*re,Re==="border-box"&&(pe=pe+Z+ie),oe=Math.max(pe,oe)),ae!==null&&(De=ce*ae,Re==="border-box"&&(De=De+Z+ie),ue=oe>De?"":"hidden",oe=Math.min(De,oe))}return{height:oe,minHeight:pe,maxHeight:De,overflowY:ue,resize:"none"}}var K=ee("Gytx"),V=ee.n(K),z;(function(te){te[te.NONE=0]="NONE",te[te.RESIZING=1]="RESIZING",te[te.RESIZED=2]="RESIZED"})(z||(z={}));var $=function(te){Object(I.a)(re,te);var le=Object(C.a)(re);function re(ae){var X;return Object(k.a)(this,re),X=le.call(this,ae),X.nextFrameActionId=void 0,X.resizeFrameId=void 0,X.textArea=void 0,X.saveTextArea=function(Z){X.textArea=Z},X.handleResize=function(Z){var ie=X.state.resizeStatus,Re=X.props,me=Re.autoSize,pe=Re.onResize;if(ie!==z.NONE)return;typeof pe=="function"&&pe(Z),me&&X.resizeOnNextFrame()},X.resizeOnNextFrame=function(){cancelAnimationFrame(X.nextFrameActionId),X.nextFrameActionId=requestAnimationFrame(X.resizeTextarea)},X.resizeTextarea=function(){var Z=X.props.autoSize;if(!Z||!X.textArea)return;var ie=Z.minRows,Re=Z.maxRows,me=N(X.textArea,!1,ie,Re);X.setState({textareaStyles:me,resizeStatus:z.RESIZING},function(){cancelAnimationFrame(X.resizeFrameId),X.resizeFrameId=requestAnimationFrame(function(){X.setState({resizeStatus:z.RESIZED},function(){X.resizeFrameId=requestAnimationFrame(function(){X.setState({resizeStatus:z.NONE}),X.fixFirefoxAutoScroll()})})})})},X.renderTextArea=function(){var Z=X.props,ie=Z.prefixCls,Re=ie===void 0?"rc-textarea":ie,me=Z.autoSize,pe=Z.onResize,De=Z.className,oe=Z.disabled,ue=X.state,ce=ue.textareaStyles,ge=ue.resizeStatus,ye=Object(t.a)(X.props,["prefixCls","onPressEnter","autoSize","defaultValue","onResize"]),ve=c()(Re,De,Object(w.a)({},"".concat(Re,"-disabled"),oe));"value"in ye&&(ye.value=ye.value||"");var fe=Object(M.a)(Object(M.a)(Object(M.a)({},X.props.style),ce),ge===z.RESIZING?{overflowX:"hidden",overflowY:"hidden"}:null);return A.createElement(n,{onResize:X.handleResize,disabled:!(me||pe)},A.createElement("textarea",Object(ne.a)({},ye,{className:ve,style:fe,ref:X.saveTextArea})))},X.state={textareaStyles:{},resizeStatus:z.NONE},X}return Object(E.a)(re,[{key:"componentDidUpdate",value:function(X){(X.value!==this.props.value||!V()(X.autoSize,this.props.autoSize))&&this.resizeTextarea()}},{key:"componentWillUnmount",value:function(){cancelAnimationFrame(this.nextFrameActionId),cancelAnimationFrame(this.resizeFrameId)}},{key:"fixFirefoxAutoScroll",value:function(){try{if(document.activeElement===this.textArea){var X=this.textArea.selectionStart,Z=this.textArea.selectionEnd;this.textArea.setSelectionRange(X,Z)}}catch(ie){}}},{key:"render",value:function(){return this.renderTextArea()}}]),re}(A.Component),q=$,J=function(te){Object(I.a)(re,te);var le=Object(C.a)(re);function re(ae){var X;Object(k.a)(this,re),X=le.call(this,ae),X.resizableTextArea=void 0,X.focus=function(){X.resizableTextArea.textArea.focus()},X.saveTextArea=function(ie){X.resizableTextArea=ie},X.handleChange=function(ie){var Re=X.props.onChange;X.setValue(ie.target.value,function(){X.resizableTextArea.resizeTextarea()}),Re&&Re(ie)},X.handleKeyDown=function(ie){var Re=X.props,me=Re.onPressEnter,pe=Re.onKeyDown;ie.keyCode===13&&me&&me(ie),pe&&pe(ie)};var Z=typeof ae.value=="undefined"||ae.value===null?ae.defaultValue:ae.value;return X.state={value:Z},X}return Object(E.a)(re,[{key:"setValue",value:function(X,Z){"value"in this.props||this.setState({value:X},Z)}},{key:"blur",value:function(){this.resizableTextArea.textArea.blur()}},{key:"render",value:function(){return A.createElement(q,Object(ne.a)({},this.props,{value:this.state.value,onKeyDown:this.handleKeyDown,onChange:this.handleChange,ref:this.saveTextArea}))}}],[{key:"getDerivedStateFromProps",value:function(X){return"value"in X?{value:X.value}:null}}]),re}(A.Component),he=ke.default=J},bT9E:function(We,ke,ee){"use strict";ee.d(ke,"a",function(){return k});var ne=ee("VTBJ");function k(E,I){var C=Object(ne.a)({},E);return Array.isArray(I)&&I.forEach(function(A){delete C[A]}),C}},rUJ1:function(We,ke){const ee=/[&<>"']/,ne=/[&<>"']/g,k=/[<>"']|&(?!#?\w+;)/,E=/[<>"']|&(?!#?\w+;)/g,I={"&":"&","<":"<",">":">",'"':""","'":"'"},C=d=>I[d];function A(d,o){if(o){if(ee.test(d))return d.replace(ne,C)}else if(k.test(d))return d.replace(E,C);return d}const M=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function w(d){return d.replace(M,(o,n)=>(n=n.toLowerCase(),n==="colon"?":":n.charAt(0)==="#"?n.charAt(1)==="x"?String.fromCharCode(parseInt(n.substring(2),16)):String.fromCharCode(+n.substring(1)):""))}const R=/(^|[^\[])\^/g;function S(d,o){d=d.source||d,o=o||"";const n={replace:(t,r)=>(r=r.source||r,r=r.replace(R,"$1"),d=d.replace(t,r),n),getRegex:()=>new RegExp(d,o)};return n}const g=/[^\w:]/g,x=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function T(d,o,n){if(d){let t;try{t=decodeURIComponent(w(n)).replace(g,"").toLowerCase()}catch(r){return null}if(t.indexOf("javascript:")===0||t.indexOf("vbscript:")===0||t.indexOf("data:")===0)return null}o&&!x.test(n)&&(n=e(o,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(t){return null}return n}const v={},y=/^[^:]+:\/*[^/]*$/,p=/^([^:]+:)[\s\S]*$/,s=/^([^:]+:\/*[^/]*)[\s\S]*$/;function e(d,o){v[" "+d]||(y.test(d)?v[" "+d]=d+"/":v[" "+d]=l(d,"/",!0)),d=v[" "+d];const n=d.indexOf(":")===-1;return o.substring(0,2)==="//"?n?o:d.replace(p,"$1")+o:o.charAt(0)==="/"?n?o:d.replace(s,"$1")+o:d+o}const a={exec:function(){}};function i(d){let o=1,n,t;for(;o<arguments.length;o++){n=arguments[o];for(t in n)Object.prototype.hasOwnProperty.call(n,t)&&(d[t]=n[t])}return d}function h(d,o){const n=d.replace(/\|/g,(c,f,b)=>{let L=!1,D=f;for(;--D>=0&&b[D]==="\\";)L=!L;return L?"|":" |"}),t=n.split(/ \|/);let r=0;if(t.length>o)t.splice(o);else for(;t.length<o;)t.push("");for(;r<t.length;r++)t[r]=t[r].trim().replace(/\\\|/g,"|");return t}function l(d,o,n){const t=d.length;if(t===0)return"";let r=0;for(;r<t;){const c=d.charAt(t-r-1);if(c===o&&!n)r++;else if(c!==o&&n)r++;else break}return d.substr(0,t-r)}function u(d,o){if(d.indexOf(o[1])===-1)return-1;const n=d.length;let t=0,r=0;for(;r<n;r++)if(d[r]==="\\")r++;else if(d[r]===o[0])t++;else if(d[r]===o[1]&&(t--,t<0))return r;return-1}function m(d){d&&d.sanitize&&!d.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")}We.exports={escape:A,unescape:w,edit:S,cleanUrl:T,resolveUrl:e,noopTest:a,merge:i,splitCells:h,rtrim:l,findClosingBracket:u,checkSanitizeDeprecation:m}},ulZh:function(We,ke,ee){typeof window!="undefined"&&function(k,E){We.exports=E()}(this,function(){return function(ne){var k={};function E(I){if(k[I])return k[I].exports;var C=k[I]={i:I,l:!1,exports:{}};return ne[I].call(C.exports,C,C.exports,E),C.l=!0,C.exports}return E.m=ne,E.c=k,E.d=function(I,C,A){E.o(I,C)||Object.defineProperty(I,C,{enumerable:!0,get:A})},E.r=function(I){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(I,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(I,"__esModule",{value:!0})},E.t=function(I,C){if(C&1&&(I=E(I)),C&8)return I;if(C&4&&typeof I=="object"&&I&&I.__esModule)return I;var A=Object.create(null);if(E.r(A),Object.defineProperty(A,"default",{enumerable:!0,value:I}),C&2&&typeof I!="string")for(var M in I)E.d(A,M,function(w){return I[w]}.bind(null,M));return A},E.n=function(I){var C=I&&I.__esModule?function(){return I.default}:function(){return I};return E.d(C,"a",C),C},E.o=function(I,C){return Object.prototype.hasOwnProperty.call(I,C)},E.p="/dist/",E(E.s="./src/hls.ts")}({"./node_modules/eventemitter3/index.js":function(ne,k,E){"use strict";var I=Object.prototype.hasOwnProperty,C="~";function A(){}Object.create&&(A.prototype=Object.create(null),new A().__proto__||(C=!1));function M(g,x,T){this.fn=g,this.context=x,this.once=T||!1}function w(g,x,T,v,y){if(typeof T!="function")throw new TypeError("The listener must be a function");var p=new M(T,v||g,y),s=C?C+x:x;return g._events[s]?g._events[s].fn?g._events[s]=[g._events[s],p]:g._events[s].push(p):(g._events[s]=p,g._eventsCount++),g}function R(g,x){--g._eventsCount===0?g._events=new A:delete g._events[x]}function S(){this._events=new A,this._eventsCount=0}S.prototype.eventNames=function(){var x=[],T,v;if(this._eventsCount===0)return x;for(v in T=this._events)I.call(T,v)&&x.push(C?v.slice(1):v);return Object.getOwnPropertySymbols?x.concat(Object.getOwnPropertySymbols(T)):x},S.prototype.listeners=function(x){var T=C?C+x:x,v=this._events[T];if(!v)return[];if(v.fn)return[v.fn];for(var y=0,p=v.length,s=new Array(p);y<p;y++)s[y]=v[y].fn;return s},S.prototype.listenerCount=function(x){var T=C?C+x:x,v=this._events[T];return v?v.fn?1:v.length:0},S.prototype.emit=function(x,T,v,y,p,s){var e=C?C+x:x;if(!this._events[e])return!1;var a=this._events[e],i=arguments.length,h,l;if(a.fn){a.once&&this.removeListener(x,a.fn,void 0,!0);switch(i){case 1:return a.fn.call(a.context),!0;case 2:return a.fn.call(a.context,T),!0;case 3:return a.fn.call(a.context,T,v),!0;case 4:return a.fn.call(a.context,T,v,y),!0;case 5:return a.fn.call(a.context,T,v,y,p),!0;case 6:return a.fn.call(a.context,T,v,y,p,s),!0}for(l=1,h=new Array(i-1);l<i;l++)h[l-1]=arguments[l];a.fn.apply(a.context,h)}else{var u=a.length,m;for(l=0;l<u;l++){a[l].once&&this.removeListener(x,a[l].fn,void 0,!0);switch(i){case 1:a[l].fn.call(a[l].context);break;case 2:a[l].fn.call(a[l].context,T);break;case 3:a[l].fn.call(a[l].context,T,v);break;case 4:a[l].fn.call(a[l].context,T,v,y);break;default:if(!h)for(m=1,h=new Array(i-1);m<i;m++)h[m-1]=arguments[m];a[l].fn.apply(a[l].context,h)}}}return!0},S.prototype.on=function(x,T,v){return w(this,x,T,v,!1)},S.prototype.once=function(x,T,v){return w(this,x,T,v,!0)},S.prototype.removeListener=function(x,T,v,y){var p=C?C+x:x;if(!this._events[p])return this;if(!T)return R(this,p),this;var s=this._events[p];if(s.fn)s.fn===T&&(!y||s.once)&&(!v||s.context===v)&&R(this,p);else{for(var e=0,a=[],i=s.length;e<i;e++)(s[e].fn!==T||y&&!s[e].once||v&&s[e].context!==v)&&a.push(s[e]);a.length?this._events[p]=a.length===1?a[0]:a:R(this,p)}return this},S.prototype.removeAllListeners=function(x){var T;return x?(T=C?C+x:x,this._events[T]&&R(this,T)):(this._events=new A,this._eventsCount=0),this},S.prototype.off=S.prototype.removeListener,S.prototype.addListener=S.prototype.on,S.prefixed=C,S.EventEmitter=S,ne.exports=S},"./node_modules/url-toolkit/src/url-toolkit.js":function(ne,k,E){(function(I){var C=/^((?:[a-zA-Z0-9+\-.]+:)?)(\/\/[^\/?#]*)?((?:[^\/?#]*\/)*[^;?#]*)?(;[^?#]*)?(\?[^#]*)?(#[^]*)?$/,A=/^([^\/?#]*)([^]*)$/,M=/(?:\/|^)\.(?=\/)/g,w=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,R={buildAbsoluteURL:function(S,g,x){if(x=x||{},S=S.trim(),g=g.trim(),!g){if(!x.alwaysNormalize)return S;var T=R.parseURL(S);if(!T)throw new Error("Error trying to parse base URL.");return T.path=R.normalizePath(T.path),R.buildURLFromParts(T)}var v=R.parseURL(g);if(!v)throw new Error("Error trying to parse relative URL.");if(v.scheme)return x.alwaysNormalize?(v.path=R.normalizePath(v.path),R.buildURLFromParts(v)):g;var y=R.parseURL(S);if(!y)throw new Error("Error trying to parse base URL.");if(!y.netLoc&&y.path&&y.path[0]!=="/"){var p=A.exec(y.path);y.netLoc=p[1],y.path=p[2]}y.netLoc&&!y.path&&(y.path="/");var s={scheme:y.scheme,netLoc:v.netLoc,path:null,params:v.params,query:v.query,fragment:v.fragment};if(!v.netLoc&&(s.netLoc=y.netLoc,v.path[0]!=="/"))if(!v.path)s.path=y.path,v.params||(s.params=y.params,v.query||(s.query=y.query));else{var e=y.path,a=e.substring(0,e.lastIndexOf("/")+1)+v.path;s.path=R.normalizePath(a)}return s.path===null&&(s.path=x.alwaysNormalize?R.normalizePath(v.path):v.path),R.buildURLFromParts(s)},parseURL:function(S){var g=C.exec(S);return g?{scheme:g[1]||"",netLoc:g[2]||"",path:g[3]||"",params:g[4]||"",query:g[5]||"",fragment:g[6]||""}:null},normalizePath:function(S){for(S=S.split("").reverse().join("").replace(M,"");S.length!==(S=S.replace(w,"")).length;);return S.split("").reverse().join("")},buildURLFromParts:function(S){return S.scheme+S.netLoc+S.path+S.params+S.query+S.fragment}};ne.exports=R})(this)},"./node_modules/webworkify-webpack/index.js":function(ne,k,E){function I(x){var T={};function v(p){if(T[p])return T[p].exports;var s=T[p]={i:p,l:!1,exports:{}};return x[p].call(s.exports,s,s.exports,v),s.l=!0,s.exports}v.m=x,v.c=T,v.i=function(p){return p},v.d=function(p,s,e){v.o(p,s)||Object.defineProperty(p,s,{configurable:!1,enumerable:!0,get:e})},v.r=function(p){Object.defineProperty(p,"__esModule",{value:!0})},v.n=function(p){var s=p&&p.__esModule?function(){return p.default}:function(){return p};return v.d(s,"a",s),s},v.o=function(p,s){return Object.prototype.hasOwnProperty.call(p,s)},v.p="/",v.oe=function(p){throw console.error(p),p};var y=v(v.s=ENTRY_MODULE);return y.default||y}var C="[\\.|\\-|\\+|\\w|/|@]+",A="\\(\\s*(/\\*.*?\\*/)?\\s*.*?("+C+").*?\\)";function M(x){return(x+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function w(x){return!isNaN(1*x)}function R(x,T,v){var y={};y[v]=[];var p=T.toString(),s=p.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);if(!s)return y;for(var e=s[1],a=new RegExp("(\\\\n|\\W)"+M(e)+A,"g"),i;i=a.exec(p);){if(i[3]==="dll-reference")continue;y[v].push(i[3])}for(a=new RegExp("\\("+M(e)+'\\("(dll-reference\\s('+C+'))"\\)\\)'+A,"g");i=a.exec(p);)x[i[2]]||(y[v].push(i[1]),x[i[2]]=E(i[1]).m),y[i[2]]=y[i[2]]||[],y[i[2]].push(i[4]);for(var h=Object.keys(y),l=0;l<h.length;l++)for(var u=0;u<y[h[l]].length;u++)w(y[h[l]][u])&&(y[h[l]][u]=1*y[h[l]][u]);return y}function S(x){var T=Object.keys(x);return T.reduce(function(v,y){return v||x[y].length>0},!1)}function g(x,T){for(var v={main:[T]},y={main:[]},p={main:{}};S(v);)for(var s=Object.keys(v),e=0;e<s.length;e++){var a=s[e],i=v[a],h=i.pop();if(p[a]=p[a]||{},p[a][h]||!x[a][h])continue;p[a][h]=!0,y[a]=y[a]||[],y[a].push(h);for(var l=R(x,x[a][h],a),u=Object.keys(l),m=0;m<u.length;m++)v[u[m]]=v[u[m]]||[],v[u[m]]=v[u[m]].concat(l[u[m]])}return y}ne.exports=function(x,T){T=T||{};var v={main:E.m},y=T.all?{main:Object.keys(v.main)}:g(v,x),p="";Object.keys(y).filter(function(h){return h!=="main"}).forEach(function(h){for(var l=0;y[h][l];)l++;y[h].push(l),v[h][l]="(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })",p=p+"var "+h+" = ("+I.toString().replace("ENTRY_MODULE",JSON.stringify(l))+")({"+y[h].map(function(u){return""+JSON.stringify(u)+": "+v[h][u].toString()}).join(",")+`});
|
|
`}),p=p+"new (("+I.toString().replace("ENTRY_MODULE",JSON.stringify(x))+")({"+y.main.map(function(h){return""+JSON.stringify(h)+": "+v.main[h].toString()}).join(",")+"}))(self);";var s=new window.Blob([p],{type:"text/javascript"});if(T.bare)return s;var e=window.URL||window.webkitURL||window.mozURL||window.msURL,a=e.createObjectURL(s),i=new window.Worker(a);return i.objectURL=a,i}},"./src/config.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"hlsDefaultConfig",function(){return m}),E.d(k,"mergeConfig",function(){return o}),E.d(k,"enableStreamingMode",function(){return n});var I=E("./src/controller/abr-controller.ts"),C=E("./src/controller/audio-stream-controller.ts"),A=E("./src/controller/audio-track-controller.ts"),M=E("./src/controller/subtitle-stream-controller.ts"),w=E("./src/controller/subtitle-track-controller.ts"),R=E("./src/controller/buffer-controller.ts"),S=E("./src/controller/timeline-controller.ts"),g=E("./src/controller/cap-level-controller.ts"),x=E("./src/controller/fps-controller.ts"),T=E("./src/controller/eme-controller.ts"),v=E("./src/controller/cmcd-controller.ts"),y=E("./src/utils/xhr-loader.ts"),p=E("./src/utils/fetch-loader.ts"),s=E("./src/utils/cues.ts"),e=E("./src/utils/mediakeys-helper.ts"),a=E("./src/utils/logger.ts");function i(){return i=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var c=arguments[r];for(var f in c)Object.prototype.hasOwnProperty.call(c,f)&&(t[f]=c[f])}return t},i.apply(this,arguments)}function h(t,r){var c=Object.keys(t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(t);r&&(f=f.filter(function(b){return Object.getOwnPropertyDescriptor(t,b).enumerable})),c.push.apply(c,f)}return c}function l(t){for(var r=1;r<arguments.length;r++){var c=arguments[r]!=null?arguments[r]:{};r%2?h(Object(c),!0).forEach(function(f){u(t,f,c[f])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(c)):h(Object(c)).forEach(function(f){Object.defineProperty(t,f,Object.getOwnPropertyDescriptor(c,f))})}return t}function u(t,r,c){return r in t?Object.defineProperty(t,r,{value:c,enumerable:!0,configurable:!0,writable:!0}):t[r]=c,t}var m=l(l({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:Infinity,maxBufferSize:60*1e3*1e3,maxBufferHole:.1,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:Infinity,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,enableSoftwareAES:!0,manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,startLevel:void 0,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,loader:y.default,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:I.default,bufferController:R.default,capLevelController:g.default,fpsController:x.default,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystemOptions:{},requestMediaKeySystemAccessFunc:e.requestMediaKeySystemAccess,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0},d()),{},{subtitleStreamController:M.SubtitleStreamController,subtitleTrackController:w.default,timelineController:S.TimelineController,audioStreamController:C.default,audioTrackController:A.default,emeController:T.default,cmcdController:v.default});function d(){return{cueHandler:s.default,enableCEA708Captions:!0,enableWebVTT:!0,enableIMSC1:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function o(t,r){if((r.liveSyncDurationCount||r.liveMaxLatencyDurationCount)&&(r.liveSyncDuration||r.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(r.liveMaxLatencyDurationCount!==void 0&&(r.liveSyncDurationCount===void 0||r.liveMaxLatencyDurationCount<=r.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(r.liveMaxLatencyDuration!==void 0&&(r.liveSyncDuration===void 0||r.liveMaxLatencyDuration<=r.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');return i({},t,r)}function n(t){var r=t.loader;if(r!==p.default&&r!==y.default)a.logger.log("[config]: Custom loader detected, cannot enable progressive streaming"),t.progressive=!1;else{var c=Object(p.fetchSupported)();c&&(t.loader=p.default,t.progressive=!0,t.enableSoftwareAES=!0,a.logger.log("[config]: Progressive streaming enabled, using FetchLoader"))}}},"./src/controller/abr-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/polyfills/number.ts"),C=E("./src/utils/ewma-bandwidth-estimator.ts"),A=E("./src/events.ts"),M=E("./src/utils/buffer-helper.ts"),w=E("./src/errors.ts"),R=E("./src/types/loader.ts"),S=E("./src/utils/logger.ts");function g(v,y){for(var p=0;p<y.length;p++){var s=y[p];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(v,s.key,s)}}function x(v,y,p){return y&&g(v.prototype,y),p&&g(v,p),v}var T=function(){function v(p){this.hls=void 0,this.lastLoadedFragLevel=0,this._nextAutoLevel=-1,this.timer=void 0,this.onCheck=this._abandonRulesCheck.bind(this),this.fragCurrent=null,this.partCurrent=null,this.bitrateTestDelay=0,this.bwEstimator=void 0,this.hls=p;var s=p.config;this.bwEstimator=new C.default(s.abrEwmaSlowVoD,s.abrEwmaFastVoD,s.abrEwmaDefaultEstimate),this.registerListeners()}var y=v.prototype;return y.registerListeners=function(){var s=this.hls;s.on(A.Events.FRAG_LOADING,this.onFragLoading,this),s.on(A.Events.FRAG_LOADED,this.onFragLoaded,this),s.on(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),s.on(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),s.on(A.Events.ERROR,this.onError,this)},y.unregisterListeners=function(){var s=this.hls;s.off(A.Events.FRAG_LOADING,this.onFragLoading,this),s.off(A.Events.FRAG_LOADED,this.onFragLoaded,this),s.off(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),s.off(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),s.off(A.Events.ERROR,this.onError,this)},y.destroy=function(){this.unregisterListeners(),this.clearTimer(),this.hls=this.onCheck=null,this.fragCurrent=this.partCurrent=null},y.onFragLoading=function(s,e){var a=e.frag;if(a.type===R.PlaylistLevelType.MAIN&&!this.timer){var i;this.fragCurrent=a,this.partCurrent=(i=e.part)!=null?i:null,this.timer=self.setInterval(this.onCheck,100)}},y.onLevelLoaded=function(s,e){var a=this.hls.config;e.details.live?this.bwEstimator.update(a.abrEwmaSlowLive,a.abrEwmaFastLive):this.bwEstimator.update(a.abrEwmaSlowVoD,a.abrEwmaFastVoD)},y._abandonRulesCheck=function(){var s=this.fragCurrent,e=this.partCurrent,a=this.hls,i=a.autoLevelEnabled,h=a.config,l=a.media;if(!s||!l)return;var u=e?e.stats:s.stats,m=e?e.duration:s.duration;if(u.aborted){S.logger.warn("frag loader destroy or aborted, disarm abandonRules"),this.clearTimer(),this._nextAutoLevel=-1;return}if(!i||l.paused||!l.playbackRate||!l.readyState)return;var d=performance.now()-u.loading.start,o=Math.abs(l.playbackRate);if(d<=500*m/o)return;var n=a.levels,t=a.minAutoLevel,r=n[s.level],c=u.total||Math.max(u.loaded,Math.round(m*r.maxBitrate/8)),f=Math.max(1,u.bwEstimate?u.bwEstimate/8:u.loaded*1e3/d),b=(c-u.loaded)/f,L=l.currentTime,D=(M.BufferHelper.bufferInfo(l,L,h.maxBufferHole).end-L)/o;if(D>=2*m/o||b<=D)return;var F=Number.POSITIVE_INFINITY,N;for(N=s.level-1;N>t;N--){var K=n[N].maxBitrate;if(F=m*K/(8*.8*f),F<D)break}if(F>=b)return;var V=this.bwEstimator.getEstimate();S.logger.warn("Fragment "+s.sn+(e?" part "+e.index:"")+" of level "+s.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+N+`
|
|
Current BW estimate: `+(Object(I.isFiniteNumber)(V)?(V/1024).toFixed(3):"Unknown")+` Kb/s
|
|
Estimated load time for current fragment: `+b.toFixed(3)+` s
|
|
Estimated load time for the next fragment: `+F.toFixed(3)+` s
|
|
Time to underbuffer: `+D.toFixed(3)+" s"),a.nextLoadLevel=N,this.bwEstimator.sample(d,u.loaded),this.clearTimer(),s.loader&&(this.fragCurrent=this.partCurrent=null,s.loader.abort()),a.trigger(A.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:s,part:e,stats:u})},y.onFragLoaded=function(s,e){var a=e.frag,i=e.part;if(a.type===R.PlaylistLevelType.MAIN&&Object(I.isFiniteNumber)(a.sn)){var h=i?i.stats:a.stats,l=i?i.duration:a.duration;if(this.clearTimer(),this.lastLoadedFragLevel=a.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var u=this.hls.levels[a.level],m=(u.loaded?u.loaded.bytes:0)+h.loaded,d=(u.loaded?u.loaded.duration:0)+l;u.loaded={bytes:m,duration:d},u.realBitrate=Math.round(8*m/d)}if(a.bitrateTest){var o={stats:h,frag:a,part:i,id:a.type};this.onFragBuffered(A.Events.FRAG_BUFFERED,o),a.bitrateTest=!1}}},y.onFragBuffered=function(s,e){var a=e.frag,i=e.part,h=i?i.stats:a.stats;if(h.aborted)return;if(a.type!==R.PlaylistLevelType.MAIN||a.sn==="initSegment")return;var l=h.parsing.end-h.loading.start;this.bwEstimator.sample(l,h.loaded),h.bwEstimate=this.bwEstimator.getEstimate(),a.bitrateTest?this.bitrateTestDelay=l/1e3:this.bitrateTestDelay=0},y.onError=function(s,e){switch(e.details){case w.ErrorDetails.FRAG_LOAD_ERROR:case w.ErrorDetails.FRAG_LOAD_TIMEOUT:this.clearTimer();break;default:break}},y.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},y.getNextABRAutoLevel=function(){var s=this.fragCurrent,e=this.partCurrent,a=this.hls,i=a.maxAutoLevel,h=a.config,l=a.minAutoLevel,u=a.media,m=e?e.duration:s?s.duration:0,d=u?u.currentTime:0,o=u&&u.playbackRate!==0?Math.abs(u.playbackRate):1,n=this.bwEstimator?this.bwEstimator.getEstimate():h.abrEwmaDefaultEstimate,t=(M.BufferHelper.bufferInfo(u,d,h.maxBufferHole).end-d)/o,r=this.findBestLevel(n,l,i,t,h.abrBandWidthFactor,h.abrBandWidthUpFactor);if(r>=0)return r;S.logger.trace((t?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var c=m?Math.min(m,h.maxStarvationDelay):h.maxStarvationDelay,f=h.abrBandWidthFactor,b=h.abrBandWidthUpFactor;if(!t){var L=this.bitrateTestDelay;if(L){var D=m?Math.min(m,h.maxLoadingDelay):h.maxLoadingDelay;c=D-L,S.logger.trace("bitrate test took "+Math.round(1e3*L)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*c)+" ms"),f=b=1}}return r=this.findBestLevel(n,l,i,t+c,f,b),Math.max(r,0)},y.findBestLevel=function(s,e,a,i,h,l){for(var u,m=this.fragCurrent,d=this.partCurrent,o=this.lastLoadedFragLevel,n=this.hls.levels,t=n[o],r=!!(t!=null&&(u=t.details)!==null&&u!==void 0&&u.live),c=t==null?void 0:t.codecSet,f=d?d.duration:m?m.duration:0,b=a;b>=e;b--){var L=n[b];if(!L||c&&L.codecSet!==c)continue;var D=L.details,F=(d?D==null?void 0:D.partTarget:D==null?void 0:D.averagetargetduration)||f,N=void 0;b<=o?N=h*s:N=l*s;var K=n[b].maxBitrate,V=K*F/N;if(S.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+b+"/"+Math.round(N)+"/"+K+"/"+F+"/"+i+"/"+V),N>K&&(!V||r&&!this.bitrateTestDelay||V<i))return b}return-1},x(v,[{key:"nextAutoLevel",get:function(){var s=this._nextAutoLevel,e=this.bwEstimator;if(s!==-1&&(!e||!e.canEstimate()))return s;var a=this.getNextABRAutoLevel();return s!==-1&&(a=Math.min(s,a)),a},set:function(s){this._nextAutoLevel=s}}]),v}();k.default=T},"./src/controller/audio-stream-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/polyfills/number.ts"),C=E("./src/controller/base-stream-controller.ts"),A=E("./src/events.ts"),M=E("./src/utils/buffer-helper.ts"),w=E("./src/controller/fragment-tracker.ts"),R=E("./src/types/level.ts"),S=E("./src/types/loader.ts"),g=E("./src/loader/fragment.ts"),x=E("./src/demux/chunk-cache.ts"),T=E("./src/demux/transmuxer-interface.ts"),v=E("./src/types/transmuxer.ts"),y=E("./src/controller/fragment-finders.ts"),p=E("./src/utils/discontinuities.ts"),s=E("./src/errors.ts"),e=E("./src/utils/logger.ts");function a(){return a=Object.assign||function(m){for(var d=1;d<arguments.length;d++){var o=arguments[d];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(m[n]=o[n])}return m},a.apply(this,arguments)}function i(m,d){m.prototype=Object.create(d.prototype),m.prototype.constructor=m,h(m,d)}function h(m,d){return h=Object.setPrototypeOf||function(n,t){return n.__proto__=t,n},h(m,d)}var l=100,u=function(m){i(d,m);function d(n,t){var r;return r=m.call(this,n,t,"[audio-stream-controller]")||this,r.videoBuffer=null,r.videoTrackCC=-1,r.waitingVideoCC=-1,r.audioSwitch=!1,r.trackId=-1,r.waitingData=null,r.mainDetails=null,r.bufferFlushed=!1,r._registerListeners(),r}var o=d.prototype;return o.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},o._registerListeners=function(){var t=this.hls;t.on(A.Events.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(A.Events.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(A.Events.MANIFEST_LOADING,this.onManifestLoading,this),t.on(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),t.on(A.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),t.on(A.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(A.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.on(A.Events.ERROR,this.onError,this),t.on(A.Events.BUFFER_RESET,this.onBufferReset,this),t.on(A.Events.BUFFER_CREATED,this.onBufferCreated,this),t.on(A.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(A.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),t.on(A.Events.FRAG_BUFFERED,this.onFragBuffered,this)},o._unregisterListeners=function(){var t=this.hls;t.off(A.Events.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(A.Events.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(A.Events.MANIFEST_LOADING,this.onManifestLoading,this),t.off(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),t.off(A.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),t.off(A.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(A.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.off(A.Events.ERROR,this.onError,this),t.off(A.Events.BUFFER_RESET,this.onBufferReset,this),t.off(A.Events.BUFFER_CREATED,this.onBufferCreated,this),t.off(A.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(A.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),t.off(A.Events.FRAG_BUFFERED,this.onFragBuffered,this)},o.onInitPtsFound=function(t,r){var c=r.frag,f=r.id,b=r.initPTS;if(f==="main"){var L=c.cc;this.initPTS[c.cc]=b,this.log("InitPTS for cc: "+L+" found from main: "+b),this.videoTrackCC=L,this.state===C.State.WAITING_INIT_PTS&&this.tick()}},o.startLoad=function(t){if(!this.levels){this.startPosition=t,this.state=C.State.STOPPED;return}var r=this.lastCurrentTime;this.stopLoad(),this.setInterval(l),this.fragLoadError=0,r>0&&t===-1?(this.log("Override startPosition with lastCurrentTime @"+r.toFixed(3)),this.state=C.State.IDLE):(this.loadedmetadata=!1,this.state=C.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=t,this.tick()},o.doTick=function(){switch(this.state){case C.State.IDLE:this.doTickIdle();break;case C.State.WAITING_TRACK:{var t,r=this.levels,c=this.trackId,f=r==null||((t=r[c])===null||t===void 0)?void 0:t.details;if(f){if(this.waitForCdnTuneIn(f))break;this.state=C.State.WAITING_INIT_PTS}break}case C.State.FRAG_LOADING_WAITING_RETRY:{var b,L=performance.now(),D=this.retryDate;(!D||L>=D||(b=this.media)!==null&&b!==void 0&&b.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.state=C.State.IDLE);break}case C.State.WAITING_INIT_PTS:{var F=this.waitingData;if(F){var N=F.frag,K=F.part,V=F.cache,z=F.complete;if(this.initPTS[N.cc]!==void 0){this.waitingData=null,this.waitingVideoCC=-1,this.state=C.State.FRAG_LOADING;var $=V.flush(),q={frag:N,part:K,payload:$,networkDetails:null};this._handleFragmentLoadProgress(q),z&&m.prototype._handleFragmentLoadComplete.call(this,q)}else if(this.videoTrackCC!==this.waitingVideoCC)e.logger.log("Waiting fragment cc ("+N.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var J=this.getLoadPosition(),he=M.BufferHelper.bufferInfo(this.mediaBuffer,J,this.config.maxBufferHole),te=Object(y.fragmentWithinToleranceTest)(he.end,this.config.maxFragLookUpTolerance,N);te<0&&(e.logger.log("Waiting fragment cc ("+N.cc+") @ "+N.start+" cancelled because another fragment at "+he.end+" is needed"),this.clearWaitingFragment())}}else this.state=C.State.IDLE}}this.onTickEnd()},o.clearWaitingFragment=function(){var t=this.waitingData;t&&(this.fragmentTracker.removeFragment(t.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=C.State.IDLE)},o.onTickEnd=function(){var t=this.media;if(!t||!t.readyState)return;var r=this.mediaBuffer?this.mediaBuffer:t,c=r.buffered;!this.loadedmetadata&&c.length&&(this.loadedmetadata=!0),this.lastCurrentTime=t.currentTime},o.doTickIdle=function(){var t,r,c=this.hls,f=this.levels,b=this.media,L=this.trackId,D=c.config;if(!f||!f[L])return;if(!b&&(this.startFragRequested||!D.startFragPrefetch))return;var F=f[L],N=F.details;if(!N||N.live&&this.levelLastLoaded!==L||this.waitForCdnTuneIn(N)){this.state=C.State.WAITING_TRACK;return}this.bufferFlushed&&(this.bufferFlushed=!1,this.afterBufferFlushed(this.mediaBuffer?this.mediaBuffer:this.media,g.ElementaryStreamTypes.AUDIO,S.PlaylistLevelType.AUDIO));var K=this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:this.media,S.PlaylistLevelType.AUDIO);if(K===null)return;var V=K.len,z=this.getMaxBufferLength(),$=this.audioSwitch;if(V>=z&&!$)return;if(!$&&this._streamEnded(K,N)){c.trigger(A.Events.BUFFER_EOS,{type:"audio"}),this.state=C.State.ENDED;return}var q=N.fragments,J=q[0].start,he=K.end;if($){var te=this.getLoadPosition();he=te,N.PTSKnown&&te<J&&((K.end>J||K.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),b.currentTime=J+.05))}var le=this.getNextFragment(he,N);if(!le){this.bufferFlushed=!0;return}((t=le.decryptdata)===null||t===void 0?void 0:t.keyFormat)==="identity"&&!((r=le.decryptdata)!==null&&r!==void 0&&r.key)?this.loadKey(le,N):this.loadFragment(le,N,he)},o.getMaxBufferLength=function(){var t=m.prototype.getMaxBufferLength.call(this),r=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,S.PlaylistLevelType.MAIN);return r===null?t:Math.max(t,r.len)},o.onMediaDetaching=function(){this.videoBuffer=null,m.prototype.onMediaDetaching.call(this)},o.onAudioTracksUpdated=function(t,r){var c=r.audioTracks;this.resetTransmuxer(),this.levels=c.map(function(f){return new R.Level(f)})},o.onAudioTrackSwitching=function(t,r){var c=!!r.url;this.trackId=r.id;var f=this.fragCurrent;f!=null&&f.loader&&f.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),c?this.setInterval(l):this.resetTransmuxer(),c?(this.audioSwitch=!0,this.state=C.State.IDLE):this.state=C.State.STOPPED,this.tick()},o.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},o.onLevelLoaded=function(t,r){this.mainDetails=r.details},o.onAudioTrackLoaded=function(t,r){var c,f=this.levels,b=r.details,L=r.id;if(!f){this.warn("Audio tracks were reset while loading level "+L);return}this.log("Track "+L+" loaded ["+b.startSN+","+b.endSN+"],duration:"+b.totalduration);var D=f[L],F=0;if(b.live||(c=D.details)!==null&&c!==void 0&&c.live){var N=this.mainDetails;if(b.fragments[0]||(b.deltaUpdateFailed=!0),b.deltaUpdateFailed||!N)return;!D.details&&b.hasProgramDateTime&&N.hasProgramDateTime?(Object(p.alignMediaPlaylistByPDT)(b,N),F=b.fragments[0].start):F=this.alignPlaylists(b,D.details)}D.details=b,this.levelLastLoaded=L,!this.startFragRequested&&(this.mainDetails||!b.live)&&this.setStartPosition(D.details,F),this.state===C.State.WAITING_TRACK&&!this.waitForCdnTuneIn(b)&&(this.state=C.State.IDLE),this.tick()},o._handleFragmentLoadProgress=function(t){var r,c=t.frag,f=t.part,b=t.payload,L=this.config,D=this.trackId,F=this.levels;if(!F){this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+c.sn+" of level "+c.level+" will not be buffered");return}var N=F[D];console.assert(N,"Audio track is defined on fragment load progress");var K=N.details;console.assert(K,"Audio track details are defined on fragment load progress");var V=L.defaultAudioCodec||N.audioCodec||"mp4a.40.2",z=this.transmuxer;z||(z=this.transmuxer=new T.default(this.hls,S.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var $=this.initPTS[c.cc],q=(r=c.initSegment)===null||r===void 0?void 0:r.data;if($!==void 0){var J=!1,he=f?f.index:-1,te=he!==-1,le=new v.ChunkMetadata(c.level,c.sn,c.stats.chunkCount,b.byteLength,he,te);z.push(b,q,V,"",c,f,K.totalduration,J,le,$)}else{e.logger.log("Unknown video PTS for cc "+c.cc+", waiting for video PTS before demuxing audio frag "+c.sn+" of ["+K.startSN+" ,"+K.endSN+"],track "+D);var re=this.waitingData=this.waitingData||{frag:c,part:f,cache:new x.default,complete:!1},ae=re.cache;ae.push(new Uint8Array(b)),this.waitingVideoCC=this.videoTrackCC,this.state=C.State.WAITING_INIT_PTS}},o._handleFragmentLoadComplete=function(t){if(this.waitingData){this.waitingData.complete=!0;return}m.prototype._handleFragmentLoadComplete.call(this,t)},o.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},o.onBufferCreated=function(t,r){var c=r.tracks.audio;c&&(this.mediaBuffer=c.buffer),r.tracks.video&&(this.videoBuffer=r.tracks.video.buffer)},o.onFragBuffered=function(t,r){var c=r.frag,f=r.part;if(c.type!==S.PlaylistLevelType.AUDIO)return;if(this.fragContextChanged(c)){this.warn("Fragment "+c.sn+(f?" p: "+f.index:"")+" of level "+c.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch);return}c.sn!=="initSegment"&&(this.fragPrevious=c,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(c,f)},o.onError=function(t,r){switch(r.details){case s.ErrorDetails.FRAG_LOAD_ERROR:case s.ErrorDetails.FRAG_LOAD_TIMEOUT:case s.ErrorDetails.KEY_LOAD_ERROR:case s.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(S.PlaylistLevelType.AUDIO,r);break;case s.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case s.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==C.State.ERROR&&this.state!==C.State.STOPPED&&(this.state=r.fatal?C.State.ERROR:C.State.IDLE,this.warn(r.details+" while loading frag, switching to "+this.state+" state"));break;case s.ErrorDetails.BUFFER_FULL_ERROR:if(r.parent==="audio"&&(this.state===C.State.PARSING||this.state===C.State.PARSED)){var c=!0,f=this.getFwdBufferInfo(this.mediaBuffer,S.PlaylistLevelType.AUDIO);f&&f.len>.5&&(c=!this.reduceMaxBufferLength(f.len)),c&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,m.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}break;default:break}},o.onBufferFlushed=function(t,r){var c=r.type;c===g.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0)},o._handleTransmuxComplete=function(t){var r,c="audio",f=this.hls,b=t.remuxResult,L=t.chunkMeta,D=this.getCurrentContext(L);if(!D){this.warn("The loading context changed while buffering fragment "+L.sn+" of level "+L.level+". This chunk will not be buffered."),this.resetLiveStartWhenNotLoaded(L.level);return}var F=D.frag,N=D.part,K=b.audio,V=b.text,z=b.id3,$=b.initSegment;if(this.fragContextChanged(F))return;if(this.state=C.State.PARSING,this.audioSwitch&&K&&this.completeAudioSwitch(),$!=null&&$.tracks&&(this._bufferInitSegment($.tracks,F,L),f.trigger(A.Events.FRAG_PARSING_INIT_SEGMENT,{frag:F,id:c,tracks:$.tracks})),K){var q=K.startPTS,J=K.endPTS,he=K.startDTS,te=K.endDTS;N&&(N.elementaryStreams[g.ElementaryStreamTypes.AUDIO]={startPTS:q,endPTS:J,startDTS:he,endDTS:te}),F.setElementaryStreamInfo(g.ElementaryStreamTypes.AUDIO,q,J,he,te),this.bufferFragmentData(K,F,N,L)}if(z!=null&&(r=z.samples)!==null&&r!==void 0&&r.length){var le=a({frag:F,id:c},z);f.trigger(A.Events.FRAG_PARSING_METADATA,le)}if(V){var re=a({frag:F,id:c},V);f.trigger(A.Events.FRAG_PARSING_USERDATA,re)}},o._bufferInitSegment=function(t,r,c){if(this.state!==C.State.PARSING)return;t.video&&delete t.video;var f=t.audio;if(!f)return;f.levelCodec=f.codec,f.id="audio",this.log("Init audio buffer, container:"+f.container+", codecs[parsed]=["+f.codec+"]"),this.hls.trigger(A.Events.BUFFER_CODECS,t);var b=f.initSegment;if(b!=null&&b.byteLength){var L={type:"audio",frag:r,part:null,chunkMeta:c,parent:r.type,data:b};this.hls.trigger(A.Events.BUFFER_APPENDING,L)}this.tick()},o.loadFragment=function(t,r,c){var f=this.fragmentTracker.getState(t);this.fragCurrent=t,(this.audioSwitch||f===w.FragmentState.NOT_LOADED||f===w.FragmentState.PARTIAL)&&(t.sn==="initSegment"?this._loadInitSegment(t):r.live&&!Object(I.isFiniteNumber)(this.initPTS[t.cc])?(this.log("Waiting for video PTS in continuity counter "+t.cc+" of live stream before loading audio fragment "+t.sn+" of level "+this.trackId),this.state=C.State.WAITING_INIT_PTS):(this.startFragRequested=!0,m.prototype.loadFragment.call(this,t,r,c)))},o.completeAudioSwitch=function(){var t=this.hls,r=this.media,c=this.trackId;r&&(this.log("Switching audio track : flushing all audio"),m.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,t.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:c})},d}(C.default);k.default=u},"./src/controller/audio-track-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts"),C=E("./src/errors.ts"),A=E("./src/controller/base-playlist-controller.ts"),M=E("./src/types/loader.ts");function w(T,v){for(var y=0;y<v.length;y++){var p=v[y];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(T,p.key,p)}}function R(T,v,y){return v&&w(T.prototype,v),y&&w(T,y),T}function S(T,v){T.prototype=Object.create(v.prototype),T.prototype.constructor=T,g(T,v)}function g(T,v){return g=Object.setPrototypeOf||function(p,s){return p.__proto__=s,p},g(T,v)}var x=function(T){S(v,T);function v(p){var s;return s=T.call(this,p,"[audio-track-controller]")||this,s.tracks=[],s.groupId=null,s.tracksInGroup=[],s.trackId=-1,s.trackName="",s.selectDefaultTrack=!0,s.registerListeners(),s}var y=v.prototype;return y.registerListeners=function(){var s=this.hls;s.on(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),s.on(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),s.on(I.Events.LEVEL_LOADING,this.onLevelLoading,this),s.on(I.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),s.on(I.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),s.on(I.Events.ERROR,this.onError,this)},y.unregisterListeners=function(){var s=this.hls;s.off(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),s.off(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),s.off(I.Events.LEVEL_LOADING,this.onLevelLoading,this),s.off(I.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),s.off(I.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),s.off(I.Events.ERROR,this.onError,this)},y.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,T.prototype.destroy.call(this)},y.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.trackName="",this.selectDefaultTrack=!0},y.onManifestParsed=function(s,e){this.tracks=e.audioTracks||[]},y.onAudioTrackLoaded=function(s,e){var a=e.id,i=e.details,h=this.tracksInGroup[a];if(!h){this.warn("Invalid audio track id "+a);return}var l=h.details;h.details=e.details,this.log("audioTrack "+a+" loaded ["+i.startSN+"-"+i.endSN+"]"),a===this.trackId&&(this.retryCount=0,this.playlistLoaded(a,e,l))},y.onLevelLoading=function(s,e){this.switchLevel(e.level)},y.onLevelSwitching=function(s,e){this.switchLevel(e.level)},y.switchLevel=function(s){var e=this.hls.levels[s];if(!(e!=null&&e.audioGroupIds))return;var a=e.audioGroupIds[e.urlId];if(this.groupId!==a){this.groupId=a;var i=this.tracks.filter(function(l){return!a||l.groupId===a});this.selectDefaultTrack&&!i.some(function(l){return l.default})&&(this.selectDefaultTrack=!1),this.tracksInGroup=i;var h={audioTracks:i};this.log("Updating audio tracks, "+i.length+' track(s) found in "'+a+'" group-id'),this.hls.trigger(I.Events.AUDIO_TRACKS_UPDATED,h),this.selectInitialTrack()}},y.onError=function(s,e){if(T.prototype.onError.call(this,s,e),e.fatal||!e.context)return;e.context.type===M.PlaylistContextType.AUDIO_TRACK&&e.context.id===this.trackId&&e.context.groupId===this.groupId&&this.retryLoadingOrFail(e)},y.setAudioTrack=function(s){var e=this.tracksInGroup;if(s<0||s>=e.length){this.warn("Invalid id passed to audio-track controller");return}this.clearTimer();var a=e[this.trackId];this.log("Now switching to audio-track index "+s);var i=e[s],h=i.id,l=i.groupId,u=l===void 0?"":l,m=i.name,d=i.type,o=i.url;if(this.trackId=s,this.trackName=m,this.selectDefaultTrack=!1,this.hls.trigger(I.Events.AUDIO_TRACK_SWITCHING,{id:h,groupId:u,name:m,type:d,url:o}),i.details&&!i.details.live)return;var n=this.switchParams(i.url,a==null?void 0:a.details);this.loadPlaylist(n)},y.selectInitialTrack=function(){var s=this.tracksInGroup;console.assert(s.length,"Initial audio track should be selected when tracks are known");var e=this.trackName,a=this.findTrackId(e)||this.findTrackId();a!==-1?this.setAudioTrack(a):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},y.findTrackId=function(s){for(var e=this.tracksInGroup,a=0;a<e.length;a++){var i=e[a];if((!this.selectDefaultTrack||i.default)&&(!s||s===i.name))return i.id}return-1},y.loadPlaylist=function(s){var e=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(e)){var a=e.id,i=e.groupId,h=e.url;if(s)try{h=s.addDirectives(h)}catch(l){this.warn("Could not construct new URL with HLS Delivery Directives: "+l)}this.log("loading audio-track playlist for id: "+a),this.clearTimer(),this.hls.trigger(I.Events.AUDIO_TRACK_LOADING,{url:h,id:a,groupId:i,deliveryDirectives:s||null})}},R(v,[{key:"audioTracks",get:function(){return this.tracksInGroup}},{key:"audioTrack",get:function(){return this.trackId},set:function(s){this.selectDefaultTrack=!1,this.setAudioTrack(s)}}]),v}(A.default);k.default=x},"./src/controller/base-playlist-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return R});var I=E("./src/polyfills/number.ts"),C=E("./src/types/level.ts"),A=E("./src/controller/level-helper.ts"),M=E("./src/utils/logger.ts"),w=E("./src/errors.ts"),R=function(){function S(x,T){this.hls=void 0,this.timer=-1,this.canLoad=!1,this.retryCount=0,this.log=void 0,this.warn=void 0,this.log=M.logger.log.bind(M.logger,T+":"),this.warn=M.logger.warn.bind(M.logger,T+":"),this.hls=x}var g=S.prototype;return g.destroy=function(){this.clearTimer(),this.hls=this.log=this.warn=null},g.onError=function(T,v){v.fatal&&v.type===w.ErrorTypes.NETWORK_ERROR&&this.clearTimer()},g.clearTimer=function(){clearTimeout(this.timer),this.timer=-1},g.startLoad=function(){this.canLoad=!0,this.retryCount=0,this.loadPlaylist()},g.stopLoad=function(){this.canLoad=!1,this.clearTimer()},g.switchParams=function(T,v){var y=v==null?void 0:v.renditionReports;if(y)for(var p=0;p<y.length;p++){var s=y[p],e=""+s.URI;if(e===T.substr(-e.length)){var a=parseInt(s["LAST-MSN"]),i=parseInt(s["LAST-PART"]);if(v&&this.hls.config.lowLatencyMode){var h=Math.min(v.age-v.partTarget,v.targetduration);i!==void 0&&h>v.partTarget&&(i+=1)}if(Object(I.isFiniteNumber)(a))return new C.HlsUrlParameters(a,Object(I.isFiniteNumber)(i)?i:void 0,C.HlsSkip.No)}}},g.loadPlaylist=function(T){},g.shouldLoadTrack=function(T){return this.canLoad&&T&&!!T.url&&(!T.details||T.details.live)},g.playlistLoaded=function(T,v,y){var p=this,s=v.details,e=v.stats,a=e.loading.end?Math.max(0,self.performance.now()-e.loading.end):0;if(s.advancedDateTime=Date.now()-a,s.live||y!=null&&y.live){if(s.reloaded(y),y&&this.log("live playlist "+T+" "+(s.advanced?"REFRESHED "+s.lastPartSn+"-"+s.lastPartIndex:"MISSED")),y&&s.fragments.length>0&&Object(A.mergeDetails)(y,s),!this.canLoad||!s.live)return;var i,h=void 0,l=void 0;if(s.canBlockReload&&s.endSN&&s.advanced){var u=this.hls.config.lowLatencyMode,m=s.lastPartSn,d=s.endSN,o=s.lastPartIndex,n=o!==-1,t=m===d,r=u?0:o;n?(h=t?d+1:m,l=t?r:o+1):h=d+1;var c=s.age,f=c+s.ageHeader,b=Math.min(f-s.partTarget,s.targetduration*1.5);if(b>0){if(y&&b>y.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+y.tuneInGoal+" to: "+b+" with playlist age: "+s.age),b=0;else{var L=Math.floor(b/s.targetduration);if(h+=L,l!==void 0){var D=Math.round(b%s.targetduration/s.partTarget);l+=D}this.log("CDN Tune-in age: "+s.ageHeader+"s last advanced "+c.toFixed(2)+"s goal: "+b+" skip sn "+L+" to part "+l)}s.tuneInGoal=b}if(i=this.getDeliveryDirectives(s,v.deliveryDirectives,h,l),u||!t){this.loadPlaylist(i);return}}else i=this.getDeliveryDirectives(s,v.deliveryDirectives,h,l);var F=Object(A.computeReloadInterval)(s,e);h!==void 0&&s.canBlockReload&&(F-=s.partTarget||1),this.log("reload live playlist "+T+" in "+Math.round(F)+" ms"),this.timer=self.setTimeout(function(){return p.loadPlaylist(i)},F)}else this.clearTimer()},g.getDeliveryDirectives=function(T,v,y,p){var s=Object(C.getSkipValue)(T,y);return v!=null&&v.skip&&T.deltaUpdateFailed&&(y=v.msn,p=v.part,s=C.HlsSkip.No),new C.HlsUrlParameters(y,p,s)},g.retryLoadingOrFail=function(T){var v=this,y=this.hls.config,p=this.retryCount<y.levelLoadingMaxRetry;if(p){var s;if(this.retryCount++,T.details.indexOf("LoadTimeOut")>-1&&(s=T.context)!==null&&s!==void 0&&s.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+T.details+'"'),this.loadPlaylist();else{var e=Math.min(Math.pow(2,this.retryCount)*y.levelLoadingRetryDelay,y.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return v.loadPlaylist()},e),this.warn("retry playlist loading #"+this.retryCount+" in "+e+' ms after "'+T.details+'"')}}else this.warn('cannot recover from error "'+T.details+'"'),this.clearTimer(),T.fatal=!0;return p},S}()},"./src/controller/base-stream-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"State",function(){return d}),E.d(k,"default",function(){return o});var I=E("./src/polyfills/number.ts"),C=E("./src/task-loop.ts"),A=E("./src/controller/fragment-tracker.ts"),M=E("./src/utils/buffer-helper.ts"),w=E("./src/utils/logger.ts"),R=E("./src/events.ts"),S=E("./src/errors.ts"),g=E("./src/types/transmuxer.ts"),x=E("./src/utils/mp4-tools.ts"),T=E("./src/utils/discontinuities.ts"),v=E("./src/controller/fragment-finders.ts"),y=E("./src/controller/level-helper.ts"),p=E("./src/loader/fragment-loader.ts"),s=E("./src/crypt/decrypter.ts"),e=E("./src/utils/time-ranges.ts"),a=E("./src/types/loader.ts");function i(n,t){for(var r=0;r<t.length;r++){var c=t[r];c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(n,c.key,c)}}function h(n,t,r){return t&&i(n.prototype,t),r&&i(n,r),n}function l(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}function u(n,t){n.prototype=Object.create(t.prototype),n.prototype.constructor=n,m(n,t)}function m(n,t){return m=Object.setPrototypeOf||function(c,f){return c.__proto__=f,c},m(n,t)}var d={STOPPED:"STOPPED",IDLE:"IDLE",KEY_LOADING:"KEY_LOADING",FRAG_LOADING:"FRAG_LOADING",FRAG_LOADING_WAITING_RETRY:"FRAG_LOADING_WAITING_RETRY",WAITING_TRACK:"WAITING_TRACK",PARSING:"PARSING",PARSED:"PARSED",BACKTRACKING:"BACKTRACKING",ENDED:"ENDED",ERROR:"ERROR",WAITING_INIT_PTS:"WAITING_INIT_PTS",WAITING_LEVEL:"WAITING_LEVEL"},o=function(n){u(t,n);function t(c,f,b){var L;return L=n.call(this)||this,L.hls=void 0,L.fragPrevious=null,L.fragCurrent=null,L.fragmentTracker=void 0,L.transmuxer=null,L._state=d.STOPPED,L.media=void 0,L.mediaBuffer=void 0,L.config=void 0,L.bitrateTest=!1,L.lastCurrentTime=0,L.nextLoadPosition=0,L.startPosition=0,L.loadedmetadata=!1,L.fragLoadError=0,L.retryDate=0,L.levels=null,L.fragmentLoader=void 0,L.levelLastLoaded=null,L.startFragRequested=!1,L.decrypter=void 0,L.initPTS=[],L.onvseeking=null,L.onvended=null,L.logPrefix="",L.log=void 0,L.warn=void 0,L.logPrefix=b,L.log=w.logger.log.bind(w.logger,b+":"),L.warn=w.logger.warn.bind(w.logger,b+":"),L.hls=c,L.fragmentLoader=new p.default(c.config),L.fragmentTracker=f,L.config=c.config,L.decrypter=new s.default(c,c.config),c.on(R.Events.KEY_LOADED,L.onKeyLoaded,l(L)),L}var r=t.prototype;return r.doTick=function(){this.onTickEnd()},r.onTickEnd=function(){},r.startLoad=function(f){},r.stopLoad=function(){this.fragmentLoader.abort();var f=this.fragCurrent;f&&this.fragmentTracker.removeFragment(f),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=d.STOPPED},r._streamEnded=function(f,b){var L=this.fragCurrent,D=this.fragmentTracker;if(!b.live&&L&&L.sn===b.endSN&&!f.nextStart){var F=D.getState(L);return F===A.FragmentState.PARTIAL||F===A.FragmentState.OK}return!1},r.onMediaAttached=function(f,b){var L=this.media=this.mediaBuffer=b.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),L.addEventListener("seeking",this.onvseeking),L.addEventListener("ended",this.onvended);var D=this.config;this.levels&&D.autoStartLoad&&this.state===d.STOPPED&&this.startLoad(D.startPosition)},r.onMediaDetaching=function(){var f=this.media;f!=null&&f.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),f&&(f.removeEventListener("seeking",this.onvseeking),f.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},r.onMediaSeeking=function(){var f=this.config,b=this.fragCurrent,L=this.media,D=this.mediaBuffer,F=this.state,N=L?L.currentTime:0,K=M.BufferHelper.bufferInfo(D||L,N,f.maxBufferHole);if(this.log("media seeking to "+(Object(I.isFiniteNumber)(N)?N.toFixed(3):N)+", state: "+F),F===d.ENDED)this.resetLoadingState();else if(b&&!K.len){var V=f.maxFragLookUpTolerance,z=b.start-V,$=b.start+b.duration+V,q=N>$;(N<z||q)&&(q&&b.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),b.loader.abort()),this.resetLoadingState())}L&&(this.lastCurrentTime=N),!this.loadedmetadata&&!K.len&&(this.nextLoadPosition=this.startPosition=N),this.tickImmediate()},r.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},r.onKeyLoaded=function(f,b){if(this.state!==d.KEY_LOADING||b.frag!==this.fragCurrent||!this.levels)return;this.state=d.IDLE;var L=this.levels[b.frag.level].details;L&&this.loadFragment(b.frag,L,b.frag.start)},r.onHandlerDestroying=function(){this.stopLoad(),n.prototype.onHandlerDestroying.call(this)},r.onHandlerDestroyed=function(){this.state=d.STOPPED,this.hls.off(R.Events.KEY_LOADED,this.onKeyLoaded,this),this.fragmentLoader&&this.fragmentLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.fragmentLoader=this.fragmentTracker=null,n.prototype.onHandlerDestroyed.call(this)},r.loadKey=function(f,b){this.log("Loading key for "+f.sn+" of ["+b.startSN+"-"+b.endSN+"], "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+f.level),this.state=d.KEY_LOADING,this.fragCurrent=f,this.hls.trigger(R.Events.KEY_LOADING,{frag:f})},r.loadFragment=function(f,b,L){this._loadFragForPlayback(f,b,L)},r._loadFragForPlayback=function(f,b,L){var D=this,F=function(K){if(D.fragContextChanged(f)){D.warn("Fragment "+f.sn+(K.part?" p: "+K.part.index:"")+" of level "+f.level+" was dropped during download."),D.fragmentTracker.removeFragment(f);return}f.stats.chunkCount++,D._handleFragmentLoadProgress(K)};this._doFragLoad(f,b,L,F).then(function(N){if(!N)return;D.fragLoadError=0;var K=D.state;if(D.fragContextChanged(f)){(K===d.FRAG_LOADING||K===d.BACKTRACKING||!D.fragCurrent&&K===d.PARSING)&&(D.fragmentTracker.removeFragment(f),D.state=d.IDLE);return}if("payload"in N&&(D.log("Loaded fragment "+f.sn+" of level "+f.level),D.hls.trigger(R.Events.FRAG_LOADED,N),D.state===d.BACKTRACKING)){D.fragmentTracker.backtrack(f,N),D.resetFragmentLoading(f);return}D._handleFragmentLoadComplete(N)}).catch(function(N){D.warn(N),D.resetFragmentLoading(f)})},r.flushMainBuffer=function(f,b,L){if(L===void 0&&(L=null),!(f-b))return;var D={startOffset:f,endOffset:b,type:L};this.fragLoadError=0,this.hls.trigger(R.Events.BUFFER_FLUSHING,D)},r._loadInitSegment=function(f){var b=this;this._doFragLoad(f).then(function(L){if(!L||b.fragContextChanged(f)||!b.levels)throw new Error("init load aborted");return L}).then(function(L){var D=b.hls,F=L.payload,N=f.decryptdata;if(F&&F.byteLength>0&&N&&N.key&&N.iv&&N.method==="AES-128"){var K=self.performance.now();return b.decrypter.webCryptoDecrypt(new Uint8Array(F),N.key.buffer,N.iv.buffer).then(function(V){var z=self.performance.now();return D.trigger(R.Events.FRAG_DECRYPTED,{frag:f,payload:V,stats:{tstart:K,tdecrypt:z}}),L.payload=V,L})}return L}).then(function(L){var D=b.fragCurrent,F=b.hls,N=b.levels;if(!N)throw new Error("init load aborted, missing levels");var K=N[f.level].details;console.assert(K,"Level details are defined when init segment is loaded");var V=f.stats;b.state=d.IDLE,b.fragLoadError=0,f.data=new Uint8Array(L.payload),V.parsing.start=V.buffering.start=self.performance.now(),V.parsing.end=V.buffering.end=self.performance.now(),L.frag===D&&F.trigger(R.Events.FRAG_BUFFERED,{stats:V,frag:D,part:null,id:f.type}),b.tick()}).catch(function(L){b.warn(L),b.resetFragmentLoading(f)})},r.fragContextChanged=function(f){var b=this.fragCurrent;return!f||!b||f.level!==b.level||f.sn!==b.sn||f.urlId!==b.urlId},r.fragBufferedComplete=function(f,b){var L=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+f.type+" sn: "+f.sn+(b?" part: "+b.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+f.level+" "+e.default.toString(M.BufferHelper.getBuffered(L))),this.state=d.IDLE,this.tick()},r._handleFragmentLoadComplete=function(f){var b=this.transmuxer;if(!b)return;var L=f.frag,D=f.part,F=f.partsLoaded,N=!F||F.length===0||F.some(function(V){return!V}),K=new g.ChunkMetadata(L.level,L.sn,L.stats.chunkCount+1,0,D?D.index:-1,!N);b.flush(K)},r._handleFragmentLoadProgress=function(f){},r._doFragLoad=function(f,b,L,D){var F=this;if(L===void 0&&(L=null),!this.levels)throw new Error("frag load aborted, missing levels");if(L=Math.max(f.start,L||0),this.config.lowLatencyMode&&b){var N=b.partList;if(N&&D){L>f.end&&b.fragmentHint&&(f=b.fragmentHint);var K=this.getNextPart(N,f,L);if(K>-1){var V=N[K];return this.log("Loading part sn: "+f.sn+" p: "+V.index+" cc: "+f.cc+" of playlist ["+b.startSN+"-"+b.endSN+"] parts [0-"+K+"-"+(N.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+f.level+", target: "+parseFloat(L.toFixed(3))),this.nextLoadPosition=V.start+V.duration,this.state=d.FRAG_LOADING,this.hls.trigger(R.Events.FRAG_LOADING,{frag:f,part:N[K],targetBufferTime:L}),this.doFragPartsLoad(f,N,K,D).catch(function(z){return F.handleFragLoadError(z)})}else if(!f.url||this.loadedEndOfParts(N,L))return Promise.resolve(null)}}return this.log("Loading fragment "+f.sn+" cc: "+f.cc+" "+(b?"of ["+b.startSN+"-"+b.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+f.level+", target: "+parseFloat(L.toFixed(3))),Object(I.isFiniteNumber)(f.sn)&&!this.bitrateTest&&(this.nextLoadPosition=f.start+f.duration),this.state=d.FRAG_LOADING,this.hls.trigger(R.Events.FRAG_LOADING,{frag:f,targetBufferTime:L}),this.fragmentLoader.load(f,D).catch(function(z){return F.handleFragLoadError(z)})},r.doFragPartsLoad=function(f,b,L,D){var F=this;return new Promise(function(N,K){var V=[],z=function $(q){var J=b[q];F.fragmentLoader.loadPart(f,J,D).then(function(he){V[J.index]=he;var te=he.part;F.hls.trigger(R.Events.FRAG_LOADED,he);var le=b[q+1];if(le&&le.fragment===f)$(q+1);else return N({frag:f,part:te,partsLoaded:V})}).catch(K)};z(L)})},r.handleFragLoadError=function(f){var b=f.data;return b&&b.details===S.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(b.frag,b.part):this.hls.trigger(R.Events.ERROR,b),null},r._handleTransmuxerFlush=function(f){var b=this.getCurrentContext(f);if(!b||this.state!==d.PARSING){this.fragCurrent||(this.state=d.IDLE);return}var L=b.frag,D=b.part,F=b.level,N=self.performance.now();L.stats.parsing.end=N,D&&(D.stats.parsing.end=N),this.updateLevelTiming(L,D,F,f.partial)},r.getCurrentContext=function(f){var b=this.levels,L=f.level,D=f.sn,F=f.part;if(!b||!b[L])return this.warn("Levels object was unset while buffering fragment "+D+" of level "+L+". The current chunk will not be buffered."),null;var N=b[L],K=F>-1?Object(y.getPartWith)(N,D,F):null,V=K?K.fragment:Object(y.getFragmentWithSN)(N,D,this.fragCurrent);return V?{frag:V,part:K,level:N}:null},r.bufferFragmentData=function(f,b,L,D){if(!f||this.state!==d.PARSING)return;var F=f.data1,N=f.data2,K=F;if(F&&N&&(K=Object(x.appendUint8Array)(F,N)),!K||!K.length)return;var V={type:f.type,frag:b,part:L,chunkMeta:D,parent:b.type,data:K};this.hls.trigger(R.Events.BUFFER_APPENDING,V),f.dropped&&f.independent&&!L&&this.flushBufferGap(b)},r.flushBufferGap=function(f){var b=this.media;if(!b)return;if(!M.BufferHelper.isBuffered(b,b.currentTime)){this.flushMainBuffer(0,f.start);return}var L=b.currentTime,D=M.BufferHelper.bufferInfo(b,L,0),F=f.duration,N=Math.min(this.config.maxFragLookUpTolerance*2,F*.25),K=Math.max(Math.min(f.start-N,D.end-N),L+N);f.start-K>N&&this.flushMainBuffer(K,f.start)},r.getFwdBufferInfo=function(f,b){var L=this.config,D=this.getLoadPosition();if(!Object(I.isFiniteNumber)(D))return null;var F=M.BufferHelper.bufferInfo(f,D,L.maxBufferHole);if(F.len===0&&F.nextStart!==void 0){var N=this.fragmentTracker.getBufferedFrag(D,b);if(N&&F.nextStart<N.end)return M.BufferHelper.bufferInfo(f,D,Math.max(F.nextStart,L.maxBufferHole))}return F},r.getMaxBufferLength=function(f){var b=this.config,L;return f?L=Math.max(8*b.maxBufferSize/f,b.maxBufferLength):L=b.maxBufferLength,Math.min(L,b.maxMaxBufferLength)},r.reduceMaxBufferLength=function(f){var b=this.config,L=f||b.maxBufferLength;return b.maxMaxBufferLength>=L?(b.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+b.maxMaxBufferLength+"s"),!0):!1},r.getNextFragment=function(f,b){var L,D,F=b.fragments,N=F.length;if(!N)return null;var K=this.config,V=F[0].start,z;if(b.live){var $=K.initialLiveManifestSize;if(N<$)return this.warn("Not enough fragments to start playback (have: "+N+", need: "+$+")"),null;!b.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(z=this.getInitialLiveFragment(b,F),this.startPosition=z?this.hls.liveSyncPosition||z.start:f)}else f<=V&&(z=F[0]);if(!z){var q=K.lowLatencyMode?b.partEnd:b.fragmentEnd;z=this.getFragmentAtPosition(f,q,b)}return(L=z)!==null&&L!==void 0&&L.initSegment&&!((D=z)!==null&&D!==void 0&&D.initSegment.data)&&!this.bitrateTest&&(z=z.initSegment),z},r.getNextPart=function(f,b,L){for(var D=-1,F=!1,N=!0,K=0,V=f.length;K<V;K++){var z=f[K];if(N=N&&!z.independent,D>-1&&L<z.start)break;var $=z.loaded;!$&&(F||z.independent||N)&&z.fragment===b&&(D=K),F=$}return D},r.loadedEndOfParts=function(f,b){var L=f[f.length-1];return L&&b>L.start&&L.loaded},r.getInitialLiveFragment=function(f,b){var L=this.fragPrevious,D=null;if(L){if(f.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+L.programDateTime),D=Object(v.findFragmentByPDT)(b,L.endProgramDateTime,this.config.maxFragLookUpTolerance)),!D){var F=L.sn+1;if(F>=f.startSN&&F<=f.endSN){var N=b[F-f.startSN];L.cc===N.cc&&(D=N,this.log("Live playlist, switching playlist, load frag with next SN: "+D.sn))}D||(D=Object(v.findFragWithCC)(b,L.cc),D&&this.log("Live playlist, switching playlist, load frag with same CC: "+D.sn))}}else{var K=this.hls.liveSyncPosition;K!==null&&(D=this.getFragmentAtPosition(K,this.bitrateTest?f.fragmentEnd:f.edge,f))}return D},r.getFragmentAtPosition=function(f,b,L){var D=this.config,F=this.fragPrevious,N=L.fragments,K=L.endSN,V=L.fragmentHint,z=D.maxFragLookUpTolerance,$=!!(D.lowLatencyMode&&L.partList&&V);$&&V&&!this.bitrateTest&&(N=N.concat(V),K=V.sn);var q;if(f<b){var J=f>b-z?0:z;q=Object(v.findFragmentByPTS)(F,N,f,J)}else q=N[N.length-1];if(q){var he=q.sn-L.startSN,te=F&&q.level===F.level,le=N[he+1],re=this.fragmentTracker.getState(q);if(re===A.FragmentState.BACKTRACKED){q=null;for(var ae=he;N[ae]&&this.fragmentTracker.getState(N[ae])===A.FragmentState.BACKTRACKED;)F?q=N[ae--]:q=N[--ae];q||(q=le)}else F&&q.sn===F.sn&&!$&&(te&&(q.sn<K&&this.fragmentTracker.getState(le)!==A.FragmentState.OK?(this.log("SN "+q.sn+" just loaded, load next one: "+le.sn),q=le):q=null))}return q},r.synchronizeToLiveEdge=function(f){var b=this.config,L=this.media;if(!L)return;var D=this.hls.liveSyncPosition,F=L.currentTime,N=f.fragments[0].start,K=f.edge,V=F>=N-b.maxFragLookUpTolerance&&F<=K;if(D!==null&&L.duration>D&&(F<D||!V)){var z=b.liveMaxLatencyDuration!==void 0?b.liveMaxLatencyDuration:b.liveMaxLatencyDurationCount*f.targetduration;(!V&&L.readyState<4||F<K-z)&&(this.loadedmetadata||(this.nextLoadPosition=D),L.readyState&&(this.warn("Playback: "+F.toFixed(3)+" is located too far from the end of live sliding playlist: "+K+", reset currentTime to : "+D.toFixed(3)),L.currentTime=D))}},r.alignPlaylists=function(f,b){var L=this.levels,D=this.levelLastLoaded,F=this.fragPrevious,N=D!==null?L[D]:null,K=f.fragments.length;if(!K)return this.warn("No fragments in live playlist"),0;var V=f.fragments[0].start,z=!b,$=f.alignedSliding&&Object(I.isFiniteNumber)(V);if(z||!$&&!V){Object(T.alignStream)(F,N,f);var q=f.fragments[0].start;return this.log("Live playlist sliding: "+q.toFixed(2)+" start-sn: "+(b?b.startSN:"na")+"->"+f.startSN+" prev-sn: "+(F?F.sn:"na")+" fragments: "+K),q}return V},r.waitForCdnTuneIn=function(f){var b=3;return f.live&&f.canBlockReload&&f.tuneInGoal>Math.max(f.partHoldBack,f.partTarget*b)},r.setStartPosition=function(f,b){var L=this.startPosition;if(L<b&&(L=-1),L===-1||this.lastCurrentTime===-1){var D=f.startTimeOffset;Object(I.isFiniteNumber)(D)?(L=b+D,D<0&&(L+=f.totalduration),L=Math.min(Math.max(b,L),b+f.totalduration),this.log("Start time offset "+D+" found in playlist, adjust startPosition to "+L),this.startPosition=L):f.live?L=this.hls.liveSyncPosition||b:this.startPosition=L=0,this.lastCurrentTime=L}this.nextLoadPosition=L},r.getLoadPosition=function(){var f=this.media,b=0;return this.loadedmetadata&&f?b=f.currentTime:this.nextLoadPosition&&(b=this.nextLoadPosition),b},r.handleFragLoadAborted=function(f,b){this.transmuxer&&f.sn!=="initSegment"&&f.stats.aborted&&(this.warn("Fragment "+f.sn+(b?" part"+b.index:"")+" of level "+f.level+" was aborted"),this.resetFragmentLoading(f))},r.resetFragmentLoading=function(f){(!this.fragCurrent||!this.fragContextChanged(f))&&(this.state=d.IDLE)},r.onFragmentOrKeyLoadError=function(f,b){if(b.fatal)return;var L=b.frag;if(!L||L.type!==f)return;var D=this.fragCurrent;console.assert(D&&L.sn===D.sn&&L.level===D.level&&L.urlId===D.urlId,"Frag load error must match current frag to retry");var F=this.config;if(this.fragLoadError+1<=F.fragLoadingMaxRetry){if(this.resetLiveStartWhenNotLoaded(L.level))return;var N=Math.min(Math.pow(2,this.fragLoadError)*F.fragLoadingRetryDelay,F.fragLoadingMaxRetryTimeout);this.warn("Fragment "+L.sn+" of "+f+" "+L.level+" failed to load, retrying in "+N+"ms"),this.retryDate=self.performance.now()+N,this.fragLoadError++,this.state=d.FRAG_LOADING_WAITING_RETRY}else b.levelRetry?(f===a.PlaylistLevelType.AUDIO&&(this.fragCurrent=null),this.fragLoadError=0,this.state=d.IDLE):(w.logger.error(b.details+" reaches max retry, redispatch as fatal ..."),b.fatal=!0,this.hls.stopLoad(),this.state=d.ERROR)},r.afterBufferFlushed=function(f,b,L){if(!f)return;var D=M.BufferHelper.getBuffered(f);this.fragmentTracker.detectEvictedFragments(b,D,L),this.state===d.ENDED&&this.resetLoadingState()},r.resetLoadingState=function(){this.fragCurrent=null,this.fragPrevious=null,this.state=d.IDLE},r.resetLiveStartWhenNotLoaded=function(f){if(!this.loadedmetadata){this.startFragRequested=!1;var b=this.levels?this.levels[f].details:null;if(b!=null&&b.live)return this.startPosition=-1,this.setStartPosition(b,0),this.resetLoadingState(),!0;this.nextLoadPosition=this.startPosition}return!1},r.updateLevelTiming=function(f,b,L,D){var F=this,N=L.details;console.assert(!!N,"level.details must be defined");var K=Object.keys(f.elementaryStreams).reduce(function(V,z){var $=f.elementaryStreams[z];if($){var q=$.endPTS-$.startPTS;if(q<=0)return F.warn("Could not parse fragment "+f.sn+" "+z+" duration reliably ("+q+") resetting transmuxer to fallback to playlist timing"),F.resetTransmuxer(),V||!1;var J=D?0:Object(y.updateFragPTSDTS)(N,f,$.startPTS,$.endPTS,$.startDTS,$.endDTS);return F.hls.trigger(R.Events.LEVEL_PTS_UPDATED,{details:N,level:L,drift:J,type:z,frag:f,start:$.startPTS,end:$.endPTS}),!0}return V},!1);K?(this.state=d.PARSED,this.hls.trigger(R.Events.FRAG_PARSED,{frag:f,part:b})):this.resetLoadingState()},r.resetTransmuxer=function(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)},h(t,[{key:"state",get:function(){return this._state},set:function(f){var b=this._state;b!==f&&(this._state=f,this.log(b+"->"+f))}}]),t}(C.default)},"./src/controller/buffer-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return v});var I=E("./src/polyfills/number.ts"),C=E("./src/events.ts"),A=E("./src/utils/logger.ts"),M=E("./src/errors.ts"),w=E("./src/utils/buffer-helper.ts"),R=E("./src/utils/mediasource-helper.ts"),S=E("./src/loader/fragment.ts"),g=E("./src/controller/buffer-operation-queue.ts"),x=Object(R.getMediaSource)(),T=/([ha]vc.)(?:\.[^.,]+)+/,v=function(){function y(s){var e=this;this.details=null,this._objectUrl=null,this.operationQueue=void 0,this.listeners=void 0,this.hls=void 0,this.bufferCodecEventsExpected=0,this._bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var a=e.hls,i=e.media,h=e.mediaSource;A.logger.log("[buffer-controller]: Media source opened"),i&&(e.updateMediaElementDuration(),a.trigger(C.Events.MEDIA_ATTACHED,{media:i})),h&&h.removeEventListener("sourceopen",e._onMediaSourceOpen),e.checkPendingTracks()},this._onMediaSourceClose=function(){A.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){A.logger.log("[buffer-controller]: Media source ended")},this.hls=s,this._initSourceBuffer(),this.registerListeners()}var p=y.prototype;return p.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},p.destroy=function(){this.unregisterListeners(),this.details=null},p.registerListeners=function(){var e=this.hls;e.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(C.Events.BUFFER_RESET,this.onBufferReset,this),e.on(C.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.on(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.on(C.Events.BUFFER_EOS,this.onBufferEos,this),e.on(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(C.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(C.Events.FRAG_PARSED,this.onFragParsed,this),e.on(C.Events.FRAG_CHANGED,this.onFragChanged,this)},p.unregisterListeners=function(){var e=this.hls;e.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(C.Events.BUFFER_RESET,this.onBufferReset,this),e.off(C.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.off(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.off(C.Events.BUFFER_EOS,this.onBufferEos,this),e.off(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(C.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(C.Events.FRAG_PARSED,this.onFragParsed,this),e.off(C.Events.FRAG_CHANGED,this.onFragChanged,this)},p._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new g.default(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]}},p.onManifestParsed=function(e,a){var i=2;(a.audio&&!a.video||!a.altAudio)&&(i=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=i,this.details=null,A.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},p.onMediaAttaching=function(e,a){var i=this.media=a.media;if(i&&x){var h=this.mediaSource=new x;h.addEventListener("sourceopen",this._onMediaSourceOpen),h.addEventListener("sourceended",this._onMediaSourceEnded),h.addEventListener("sourceclose",this._onMediaSourceClose),i.src=self.URL.createObjectURL(h),this._objectUrl=i.src}},p.onMediaDetaching=function(){var e=this.media,a=this.mediaSource,i=this._objectUrl;if(a){if(A.logger.log("[buffer-controller]: media source detaching"),a.readyState==="open")try{a.endOfStream()}catch(h){A.logger.warn("[buffer-controller]: onMediaDetaching: "+h.message+" while calling endOfStream")}this.onBufferReset(),a.removeEventListener("sourceopen",this._onMediaSourceOpen),a.removeEventListener("sourceended",this._onMediaSourceEnded),a.removeEventListener("sourceclose",this._onMediaSourceClose),e&&(i&&self.URL.revokeObjectURL(i),e.src===i?(e.removeAttribute("src"),e.load()):A.logger.warn("[buffer-controller]: media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={}}this.hls.trigger(C.Events.MEDIA_DETACHED,void 0)},p.onBufferReset=function(){var e=this;this.getSourceBufferTypes().forEach(function(a){var i=e.sourceBuffer[a];try{i&&(e.removeBufferListeners(a),e.mediaSource&&e.mediaSource.removeSourceBuffer(i),e.sourceBuffer[a]=void 0)}catch(h){A.logger.warn("[buffer-controller]: Failed to reset the "+a+" buffer",h)}}),this._initSourceBuffer()},p.onBufferCodecs=function(e,a){var i=this,h=this.getSourceBufferTypes().length;if(Object.keys(a).forEach(function(l){if(h){var u=i.tracks[l];if(u&&typeof u.buffer.changeType=="function"){var m=a[l],d=m.codec,o=m.levelCodec,n=m.container,t=(u.levelCodec||u.codec).replace(T,"$1"),r=(o||d).replace(T,"$1");if(t!==r){var c=n+";codecs="+(o||d);i.appendChangeType(l,c)}}}else i.pendingTracks[l]=a[l]}),h)return;this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&this.mediaSource.readyState==="open"&&this.checkPendingTracks()},p.appendChangeType=function(e,a){var i=this,h=this.operationQueue,l={execute:function(){var m=i.sourceBuffer[e];m&&(A.logger.log("[buffer-controller]: changing "+e+" sourceBuffer type to "+a),m.changeType(a)),h.shiftAndExecuteNext(e)},onStart:function(){},onComplete:function(){},onError:function(m){A.logger.warn("[buffer-controller]: Failed to change "+e+" SourceBuffer type",m)}};h.append(l,e)},p.onBufferAppending=function(e,a){var i=this,h=this.hls,l=this.operationQueue,u=this.tracks,m=a.data,d=a.type,o=a.frag,n=a.part,t=a.chunkMeta,r=t.buffering[d],c=self.performance.now();r.start=c;var f=o.stats.buffering,b=n?n.stats.buffering:null;f.start===0&&(f.start=c),b&&b.start===0&&(b.start=c);var L=u.audio,D=d==="audio"&&t.id===1&&(L==null?void 0:L.container)==="audio/mpeg",F={execute:function(){if(r.executeStart=self.performance.now(),D){var K=i.sourceBuffer[d];if(K){var V=o.start-K.timestampOffset;Math.abs(V)>=.1&&(A.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+o.start+" (delta: "+V+") sn: "+o.sn+")"),K.timestampOffset=o.start)}}i.appendExecutor(m,d)},onStart:function(){},onComplete:function(){var K=self.performance.now();r.executeEnd=r.end=K,f.first===0&&(f.first=K),b&&b.first===0&&(b.first=K);var V=i.sourceBuffer,z={};for(var $ in V)z[$]=w.BufferHelper.getBuffered(V[$]);i.appendError=0,i.hls.trigger(C.Events.BUFFER_APPENDED,{type:d,frag:o,part:n,chunkMeta:t,parent:o.type,timeRanges:z})},onError:function(K){A.logger.error("[buffer-controller]: Error encountered while trying to append to the "+d+" SourceBuffer",K);var V={type:M.ErrorTypes.MEDIA_ERROR,parent:o.type,details:M.ErrorDetails.BUFFER_APPEND_ERROR,err:K,fatal:!1};K.code===DOMException.QUOTA_EXCEEDED_ERR?V.details=M.ErrorDetails.BUFFER_FULL_ERROR:(i.appendError++,V.details=M.ErrorDetails.BUFFER_APPEND_ERROR,i.appendError>h.config.appendErrorMaxRetry&&(A.logger.error("[buffer-controller]: Failed "+h.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),V.fatal=!0)),h.trigger(C.Events.ERROR,V)}};l.append(F,d)},p.onBufferFlushing=function(e,a){var i=this,h=this.operationQueue,l=function(m){return{execute:i.removeExecutor.bind(i,m,a.startOffset,a.endOffset),onStart:function(){},onComplete:function(){i.hls.trigger(C.Events.BUFFER_FLUSHED,{type:m})},onError:function(o){A.logger.warn("[buffer-controller]: Failed to remove from "+m+" SourceBuffer",o)}}};a.type?h.append(l(a.type),a.type):this.getSourceBufferTypes().forEach(function(u){h.append(l(u),u)})},p.onFragParsed=function(e,a){var i=this,h=a.frag,l=a.part,u=[],m=l?l.elementaryStreams:h.elementaryStreams;m[S.ElementaryStreamTypes.AUDIOVIDEO]?u.push("audiovideo"):(m[S.ElementaryStreamTypes.AUDIO]&&u.push("audio"),m[S.ElementaryStreamTypes.VIDEO]&&u.push("video"));var d=function(){var n=self.performance.now();h.stats.buffering.end=n,l&&(l.stats.buffering.end=n);var t=l?l.stats:h.stats;i.hls.trigger(C.Events.FRAG_BUFFERED,{frag:h,part:l,stats:t,id:h.type})};u.length===0&&A.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+h.type+" level: "+h.level+" sn: "+h.sn),this.blockBuffers(d,u)},p.onFragChanged=function(e,a){this.flushBackBuffer()},p.onBufferEos=function(e,a){var i=this,h=this.getSourceBufferTypes().reduce(function(l,u){var m=i.sourceBuffer[u];return(!a.type||a.type===u)&&(m&&!m.ended&&(m.ended=!0,A.logger.log("[buffer-controller]: "+u+" sourceBuffer now EOS"))),l&&!!(!m||m.ended)},!0);h&&this.blockBuffers(function(){var l=i.mediaSource;if(!l||l.readyState!=="open")return;l.endOfStream()})},p.onLevelUpdated=function(e,a){var i=a.details;if(!i.fragments.length)return;this.details=i,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration()},p.flushBackBuffer=function(){var e=this.hls,a=this.details,i=this.media,h=this.sourceBuffer;if(!i||a===null)return;var l=this.getSourceBufferTypes();if(!l.length)return;var u=a.live&&e.config.liveBackBufferLength!==null?e.config.liveBackBufferLength:e.config.backBufferLength;if(!Object(I.isFiniteNumber)(u)||u<0)return;var m=i.currentTime,d=a.levelTargetDuration,o=Math.max(u,d),n=Math.floor(m/d)*d-o;l.forEach(function(t){var r=h[t];if(r){var c=w.BufferHelper.getBuffered(r);c.length>0&&n>c.start(0)&&(e.trigger(C.Events.BACK_BUFFER_REACHED,{bufferEnd:n}),a.live&&e.trigger(C.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:n}),e.trigger(C.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:n,type:t}))}})},p.updateMediaElementDuration=function(){if(!this.details||!this.media||!this.mediaSource||this.mediaSource.readyState!=="open")return;var e=this.details,a=this.hls,i=this.media,h=this.mediaSource,l=e.fragments[0].start+e.totalduration,u=i.duration,m=Object(I.isFiniteNumber)(h.duration)?h.duration:0;e.live&&a.config.liveDurationInfinity?(A.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),h.duration=Infinity,this.updateSeekableRange(e)):(l>m&&l>u||!Object(I.isFiniteNumber)(u))&&(A.logger.log("[buffer-controller]: Updating Media Source duration to "+l.toFixed(3)),h.duration=l)},p.updateSeekableRange=function(e){var a=this.mediaSource,i=e.fragments,h=i.length;if(h&&e.live&&a!==null&&a!==void 0&&a.setLiveSeekableRange){var l=Math.max(0,i[0].start),u=Math.max(l,l+e.totalduration);a.setLiveSeekableRange(l,u)}},p.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,a=this.operationQueue,i=this.pendingTracks,h=Object.keys(i).length;if(h&&!e||h===2){this.createSourceBuffers(i),this.pendingTracks={};var l=this.getSourceBufferTypes();if(l.length===0){this.hls.trigger(C.Events.ERROR,{type:M.ErrorTypes.MEDIA_ERROR,details:M.ErrorDetails.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,reason:"could not create source buffer for media codec(s)"});return}l.forEach(function(u){a.executeNext(u)})}},p.createSourceBuffers=function(e){var a=this.sourceBuffer,i=this.mediaSource;if(!i)throw Error("createSourceBuffers called when mediaSource was null");var h=0;for(var l in e)if(!a[l]){var u=e[l];if(!u)throw Error("source buffer exists for track "+l+", however track does not");var m=u.levelCodec||u.codec,d=u.container+";codecs="+m;A.logger.log("[buffer-controller]: creating sourceBuffer("+d+")");try{var o=a[l]=i.addSourceBuffer(d),n=l;this.addBufferListener(n,"updatestart",this._onSBUpdateStart),this.addBufferListener(n,"updateend",this._onSBUpdateEnd),this.addBufferListener(n,"error",this._onSBUpdateError),this.tracks[l]={buffer:o,codec:m,container:u.container,levelCodec:u.levelCodec,id:u.id},h++}catch(t){A.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+t.message),this.hls.trigger(C.Events.ERROR,{type:M.ErrorTypes.MEDIA_ERROR,details:M.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:t,mimeType:d})}}h&&this.hls.trigger(C.Events.BUFFER_CREATED,{tracks:this.tracks})},p._onSBUpdateStart=function(e){var a=this.operationQueue,i=a.current(e);i.onStart()},p._onSBUpdateEnd=function(e){var a=this.operationQueue,i=a.current(e);i.onComplete(),a.shiftAndExecuteNext(e)},p._onSBUpdateError=function(e,a){A.logger.error("[buffer-controller]: "+e+" SourceBuffer error",a),this.hls.trigger(C.Events.ERROR,{type:M.ErrorTypes.MEDIA_ERROR,details:M.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var i=this.operationQueue.current(e);i&&i.onError(a)},p.removeExecutor=function(e,a,i){var h=this.media,l=this.mediaSource,u=this.operationQueue,m=this.sourceBuffer,d=m[e];if(!h||!l||!d){A.logger.warn("[buffer-controller]: Attempting to remove from the "+e+" SourceBuffer, but it does not exist"),u.shiftAndExecuteNext(e);return}var o=Object(I.isFiniteNumber)(h.duration)?h.duration:Infinity,n=Object(I.isFiniteNumber)(l.duration)?l.duration:Infinity,t=Math.max(0,a),r=Math.min(i,o,n);r>t?(A.logger.log("[buffer-controller]: Removing ["+t+","+r+"] from the "+e+" SourceBuffer"),console.assert(!d.updating,e+" sourceBuffer must not be updating"),d.remove(t,r)):u.shiftAndExecuteNext(e)},p.appendExecutor=function(e,a){var i=this.operationQueue,h=this.sourceBuffer,l=h[a];if(!l){A.logger.warn("[buffer-controller]: Attempting to append to the "+a+" SourceBuffer, but it does not exist"),i.shiftAndExecuteNext(a);return}l.ended=!1,console.assert(!l.updating,a+" sourceBuffer must not be updating"),l.appendBuffer(e)},p.blockBuffers=function(e,a){var i=this;if(a===void 0&&(a=this.getSourceBufferTypes()),!a.length){A.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),Promise.resolve(e);return}var h=this.operationQueue,l=a.map(function(u){return h.appendBlocker(u)});Promise.all(l).then(function(){e(),a.forEach(function(u){var m=i.sourceBuffer[u];(!m||!m.updating)&&h.shiftAndExecuteNext(u)})})},p.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},p.addBufferListener=function(e,a,i){var h=this.sourceBuffer[e];if(!h)return;var l=i.bind(this,e);this.listeners[e].push({event:a,listener:l}),h.addEventListener(a,l)},p.removeBufferListeners=function(e){var a=this.sourceBuffer[e];if(!a)return;this.listeners[e].forEach(function(i){a.removeEventListener(i.event,i.listener)})},y}()},"./src/controller/buffer-operation-queue.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return C});var I=E("./src/utils/logger.ts"),C=function(){function A(w){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=w}var M=A.prototype;return M.append=function(R,S){var g=this.queues[S];g.push(R),g.length===1&&this.buffers[S]&&this.executeNext(S)},M.insertAbort=function(R,S){var g=this.queues[S];g.unshift(R),this.executeNext(S)},M.appendBlocker=function(R){var S,g=new Promise(function(T){S=T}),x={execute:S,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(x,R),g},M.executeNext=function(R){var S=this.buffers,g=this.queues,x=S[R],T=g[R];if(T.length){var v=T[0];try{v.execute()}catch(y){I.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),v.onError(y),(!x||!x.updating)&&(T.shift(),this.executeNext(R))}}},M.shiftAndExecuteNext=function(R){this.queues[R].shift(),this.executeNext(R)},M.current=function(R){return this.queues[R][0]},A}()},"./src/controller/cap-level-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts");function C(w,R){for(var S=0;S<R.length;S++){var g=R[S];g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g&&(g.writable=!0),Object.defineProperty(w,g.key,g)}}function A(w,R,S){return R&&C(w.prototype,R),S&&C(w,S),w}var M=function(){function w(S){this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.hls=void 0,this.streamController=void 0,this.clientRect=void 0,this.hls=S,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}var R=w.prototype;return R.setStreamController=function(g){this.streamController=g},R.destroy=function(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null},R.registerListeners=function(){var g=this.hls;g.on(I.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),g.on(I.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),g.on(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),g.on(I.Events.BUFFER_CODECS,this.onBufferCodecs,this),g.on(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},R.unregisterListener=function(){var g=this.hls;g.off(I.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),g.off(I.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),g.off(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),g.off(I.Events.BUFFER_CODECS,this.onBufferCodecs,this),g.off(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},R.onFpsDropLevelCapping=function(g,x){w.isLevelAllowed(x.droppedLevel,this.restrictedLevels)&&this.restrictedLevels.push(x.droppedLevel)},R.onMediaAttaching=function(g,x){this.media=x.media instanceof HTMLVideoElement?x.media:null},R.onManifestParsed=function(g,x){var T=this.hls;this.restrictedLevels=[],this.firstLevel=x.firstLevel,T.config.capLevelToPlayerSize&&x.video&&this.startCapping()},R.onBufferCodecs=function(g,x){var T=this.hls;T.config.capLevelToPlayerSize&&x.video&&this.startCapping()},R.onMediaDetaching=function(){this.stopCapping()},R.detectPlayerSize=function(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){var g=this.hls.levels;if(g.length){var x=this.hls;x.autoLevelCapping=this.getMaxLevel(g.length-1),x.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=x.autoLevelCapping}}},R.getMaxLevel=function(g){var x=this,T=this.hls.levels;if(!T.length)return-1;var v=T.filter(function(y,p){return w.isLevelAllowed(p,x.restrictedLevels)&&p<=g});return this.clientRect=null,w.getMaxLevelByMediaSize(v,this.mediaWidth,this.mediaHeight)},R.startCapping=function(){if(this.timer)return;this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize()},R.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},R.getDimensions=function(){if(this.clientRect)return this.clientRect;var g=this.media,x={width:0,height:0};if(g){var T=g.getBoundingClientRect();x.width=T.width,x.height=T.height,!x.width&&!x.height&&(x.width=T.right-T.left||g.width||0,x.height=T.bottom-T.top||g.height||0)}return this.clientRect=x,x},w.isLevelAllowed=function(g,x){return x===void 0&&(x=[]),x.indexOf(g)===-1},w.getMaxLevelByMediaSize=function(g,x,T){if(!g||!g.length)return-1;for(var v=function(a,i){return i?a.width!==i.width||a.height!==i.height:!0},y=g.length-1,p=0;p<g.length;p+=1){var s=g[p];if((s.width>=x||s.height>=T)&&v(s,g[p+1])){y=p;break}}return y},A(w,[{key:"mediaWidth",get:function(){return this.getDimensions().width*w.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*w.contentScaleFactor}}],[{key:"contentScaleFactor",get:function(){var g=1;try{g=self.devicePixelRatio}catch(x){}return g}}]),w}();k.default=M},"./src/controller/cmcd-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return v});var I=E("./src/events.ts"),C=E("./src/types/cmcd.ts"),A=E("./src/utils/buffer-helper.ts"),M=E("./src/utils/logger.ts");function w(y,p){for(var s=0;s<p.length;s++){var e=p[s];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(y,e.key,e)}}function R(y,p,s){return p&&w(y.prototype,p),s&&w(y,s),y}function S(y,p){var s=typeof Symbol!="undefined"&&y[Symbol.iterator]||y["@@iterator"];if(s)return(s=s.call(y)).next.bind(s);if(Array.isArray(y)||(s=g(y))||p&&y&&typeof y.length=="number"){s&&(y=s);var e=0;return function(){return e>=y.length?{done:!0}:{done:!1,value:y[e++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function g(y,p){if(!y)return;if(typeof y=="string")return x(y,p);var s=Object.prototype.toString.call(y).slice(8,-1);if(s==="Object"&&y.constructor&&(s=y.constructor.name),s==="Map"||s==="Set")return Array.from(y);if(s==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s))return x(y,p)}function x(y,p){(p==null||p>y.length)&&(p=y.length);for(var s=0,e=new Array(p);s<p;s++)e[s]=y[s];return e}function T(){return T=Object.assign||function(y){for(var p=1;p<arguments.length;p++){var s=arguments[p];for(var e in s)Object.prototype.hasOwnProperty.call(s,e)&&(y[e]=s[e])}return y},T.apply(this,arguments)}var v=function(){function y(s){var e=this;this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=function(){e.initialized&&(e.starved=!0),e.buffering=!0},this.onPlaying=function(){e.initialized||(e.initialized=!0),e.buffering=!1},this.applyPlaylistData=function(h){try{e.apply(h,{ot:C.CMCDObjectType.MANIFEST,su:!e.initialized})}catch(l){M.logger.warn("Could not generate manifest CMCD data.",l)}},this.applyFragmentData=function(h){try{var l=h.frag,u=e.hls.levels[l.level],m=e.getObjectType(l),d={d:l.duration*1e3,ot:m};(m===C.CMCDObjectType.VIDEO||m===C.CMCDObjectType.AUDIO||m==C.CMCDObjectType.MUXED)&&(d.br=u.bitrate/1e3,d.tb=e.getTopBandwidth(m),d.bl=e.getBufferLength(m)),e.apply(h,d)}catch(o){M.logger.warn("Could not generate segment CMCD data.",o)}},this.hls=s;var a=this.config=s.config,i=a.cmcd;i!=null&&(a.pLoader=this.createPlaylistLoader(),a.fLoader=this.createFragmentLoader(),this.sid=i.sessionId||y.uuid(),this.cid=i.contentId,this.useHeaders=i.useHeaders===!0,this.registerListeners())}var p=y.prototype;return p.registerListeners=function(){var e=this.hls;e.on(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(I.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.on(I.Events.BUFFER_CREATED,this.onBufferCreated,this)},p.unregisterListeners=function(){var e=this.hls;e.off(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(I.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.off(I.Events.BUFFER_CREATED,this.onBufferCreated,this),this.onMediaDetached()},p.destroy=function(){this.unregisterListeners(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null},p.onMediaAttached=function(e,a){this.media=a.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)},p.onMediaDetached=function(){if(!this.media)return;this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null},p.onBufferCreated=function(e,a){var i,h;this.audioBuffer=(i=a.tracks.audio)===null||i===void 0?void 0:i.buffer,this.videoBuffer=(h=a.tracks.video)===null||h===void 0?void 0:h.buffer},p.createData=function(){var e;return{v:C.CMCDVersion,sf:C.CMCDStreamingFormat.HLS,sid:this.sid,cid:this.cid,pr:(e=this.media)===null||e===void 0?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}},p.apply=function(e,a){a===void 0&&(a={}),T(a,this.createData());var i=a.ot===C.CMCDObjectType.INIT||a.ot===C.CMCDObjectType.VIDEO||a.ot===C.CMCDObjectType.MUXED;if(this.starved&&i&&(a.bs=!0,a.su=!0,this.starved=!1),a.su==null&&(a.su=this.buffering),this.useHeaders){var h=y.toHeaders(a);if(!Object.keys(h).length)return;e.headers||(e.headers={}),T(e.headers,h)}else{var l=y.toQuery(a);if(!l)return;e.url=y.appendQueryToUri(e.url,l)}},p.getObjectType=function(e){var a=e.type;return a==="subtitle"?C.CMCDObjectType.TIMED_TEXT:e.sn==="initSegment"?C.CMCDObjectType.INIT:a==="audio"?C.CMCDObjectType.AUDIO:a==="main"?this.hls.audioTracks.length?C.CMCDObjectType.VIDEO:C.CMCDObjectType.MUXED:void 0},p.getTopBandwidth=function(e){for(var a=0,i=e===C.CMCDObjectType.AUDIO?this.hls.audioTracks:this.hls.levels,h=S(i),l;!(l=h()).done;){var u=l.value;u.bitrate>a&&(a=u.bitrate)}return a>0?a:NaN},p.getBufferLength=function(e){var a=this.hls.media,i=e===C.CMCDObjectType.AUDIO?this.audioBuffer:this.videoBuffer;if(!i||!a)return NaN;var h=A.BufferHelper.bufferInfo(i,a.currentTime,this.config.maxBufferHole);return h.len*1e3},p.createPlaylistLoader=function(){var e=this.config.pLoader,a=this.applyPlaylistData,i=e||this.config.loader;return function(){function h(u){this.loader=void 0,this.loader=new i(u)}var l=h.prototype;return l.destroy=function(){this.loader.destroy()},l.abort=function(){this.loader.abort()},l.load=function(m,d,o){a(m),this.loader.load(m,d,o)},R(h,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),h}()},p.createFragmentLoader=function(){var e=this.config.fLoader,a=this.applyFragmentData,i=e||this.config.loader;return function(){function h(u){this.loader=void 0,this.loader=new i(u)}var l=h.prototype;return l.destroy=function(){this.loader.destroy()},l.abort=function(){this.loader.abort()},l.load=function(m,d,o){a(m),this.loader.load(m,d,o)},R(h,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),h}()},y.uuid=function(){var e=URL.createObjectURL(new Blob),a=e.toString();return URL.revokeObjectURL(e),a.substr(a.lastIndexOf("/")+1)},y.serialize=function(e){for(var a=[],i=function(D){return!Number.isNaN(D)&&D!=null&&D!==""&&D!==!1},h=function(D){return Math.round(D)},l=function(D){return h(D/100)*100},u=function(D){return encodeURIComponent(D)},m={br:h,d:h,bl:l,dl:l,mtp:l,nor:u,rtp:l,tb:h},d=Object.keys(e||{}).sort(),o=S(d),n;!(n=o()).done;){var t=n.value,r=e[t];if(!i(r))continue;if(t==="v"&&r===1)continue;if(t=="pr"&&r===1)continue;var c=m[t];c&&(r=c(r));var f=typeof r,b=void 0;t==="ot"||t==="sf"||t==="st"?b=t+"="+r:f==="boolean"?b=t:f==="number"?b=t+"="+r:b=t+"="+JSON.stringify(r),a.push(b)}return a.join(",")},y.toHeaders=function(e){for(var a=Object.keys(e),i={},h=["Object","Request","Session","Status"],l=[{},{},{},{}],u={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3},m=0,d=a;m<d.length;m++){var o=d[m],n=u[o]!=null?u[o]:1;l[n][o]=e[o]}for(var t=0;t<l.length;t++){var r=y.serialize(l[t]);r&&(i["CMCD-"+h[t]]=r)}return i},y.toQuery=function(e){return"CMCD="+encodeURIComponent(y.serialize(e))},y.appendQueryToUri=function(e,a){if(!a)return e;var i=e.includes("?")?"&":"?";return""+e+i+a},y}()},"./src/controller/eme-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts"),C=E("./src/errors.ts"),A=E("./src/utils/logger.ts"),M=E("./src/utils/mediakeys-helper.ts");function w(v,y){for(var p=0;p<y.length;p++){var s=y[p];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(v,s.key,s)}}function R(v,y,p){return y&&w(v.prototype,y),p&&w(v,p),v}var S=3,g=function(y,p,s){var e={audioCapabilities:[],videoCapabilities:[]};return y.forEach(function(a){e.audioCapabilities.push({contentType:'audio/mp4; codecs="'+a+'"',robustness:s.audioRobustness||""})}),p.forEach(function(a){e.videoCapabilities.push({contentType:'video/mp4; codecs="'+a+'"',robustness:s.videoRobustness||""})}),[e]},x=function(y,p,s,e){switch(y){case M.KeySystems.WIDEVINE:return g(p,s,e);default:throw new Error("Unknown key-system: "+y)}},T=function(){function v(p){this.hls=void 0,this._widevineLicenseUrl=void 0,this._licenseXhrSetup=void 0,this._licenseResponseCallback=void 0,this._emeEnabled=void 0,this._requestMediaKeySystemAccess=void 0,this._drmSystemOptions=void 0,this._config=void 0,this._mediaKeysList=[],this._media=null,this._hasSetMediaKeys=!1,this._requestLicenseFailureCount=0,this.mediaKeysPromise=null,this._onMediaEncrypted=this.onMediaEncrypted.bind(this),this.hls=p,this._config=p.config,this._widevineLicenseUrl=this._config.widevineLicenseUrl,this._licenseXhrSetup=this._config.licenseXhrSetup,this._licenseResponseCallback=this._config.licenseResponseCallback,this._emeEnabled=this._config.emeEnabled,this._requestMediaKeySystemAccess=this._config.requestMediaKeySystemAccessFunc,this._drmSystemOptions=this._config.drmSystemOptions,this._registerListeners()}var y=v.prototype;return y.destroy=function(){this._unregisterListeners(),this.hls=this._onMediaEncrypted=null,this._requestMediaKeySystemAccess=null},y._registerListeners=function(){this.hls.on(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(I.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(I.Events.MANIFEST_PARSED,this.onManifestParsed,this)},y._unregisterListeners=function(){this.hls.off(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(I.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(I.Events.MANIFEST_PARSED,this.onManifestParsed,this)},y.getLicenseServerUrl=function(s){switch(s){case M.KeySystems.WIDEVINE:if(!this._widevineLicenseUrl)break;return this._widevineLicenseUrl}throw new Error('no license server URL configured for key-system "'+s+'"')},y._attemptKeySystemAccess=function(s,e,a){var i=this,h=x(s,e,a,this._drmSystemOptions);A.logger.log("Requesting encrypted media key-system access");var l=this.requestMediaKeySystemAccess(s,h);this.mediaKeysPromise=l.then(function(u){return i._onMediaKeySystemAccessObtained(s,u)}),l.catch(function(u){A.logger.error('Failed to obtain key-system "'+s+'" access:',u)})},y._onMediaKeySystemAccessObtained=function(s,e){var a=this;A.logger.log('Access for key-system "'+s+'" obtained');var i={mediaKeysSessionInitialized:!1,mediaKeySystemAccess:e,mediaKeySystemDomain:s};this._mediaKeysList.push(i);var h=Promise.resolve().then(function(){return e.createMediaKeys()}).then(function(l){return i.mediaKeys=l,A.logger.log('Media-keys created for key-system "'+s+'"'),a._onMediaKeysCreated(),l});return h.catch(function(l){A.logger.error("Failed to create media-keys:",l)}),h},y._onMediaKeysCreated=function(){var s=this;this._mediaKeysList.forEach(function(e){e.mediaKeysSession||(e.mediaKeysSession=e.mediaKeys.createSession(),s._onNewMediaKeySession(e.mediaKeysSession))})},y._onNewMediaKeySession=function(s){var e=this;A.logger.log("New key-system session "+s.sessionId),s.addEventListener("message",function(a){e._onKeySessionMessage(s,a.message)},!1)},y._onKeySessionMessage=function(s,e){A.logger.log("Got EME message event, creating license request"),this._requestLicense(e,function(a){A.logger.log("Received license data (length: "+(a&&a.byteLength)+"), updating key-session"),s.update(a)})},y.onMediaEncrypted=function(s){var e=this;if(A.logger.log('Media is encrypted using "'+s.initDataType+'" init data type'),!this.mediaKeysPromise){A.logger.error("Fatal: Media is encrypted but no CDM access or no keys have been requested"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_KEYS,fatal:!0});return}var a=function(h){if(!e._media)return;e._attemptSetMediaKeys(h),e._generateRequestWithPreferredKeySession(s.initDataType,s.initData)};this.mediaKeysPromise.then(a).catch(a)},y._attemptSetMediaKeys=function(s){if(!this._media)throw new Error("Attempted to set mediaKeys without first attaching a media element");if(!this._hasSetMediaKeys){var e=this._mediaKeysList[0];if(!e||!e.mediaKeys){A.logger.error("Fatal: Media is encrypted but no CDM access or no keys have been obtained yet"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_KEYS,fatal:!0});return}A.logger.log("Setting keys for encrypted media"),this._media.setMediaKeys(e.mediaKeys),this._hasSetMediaKeys=!0}},y._generateRequestWithPreferredKeySession=function(s,e){var a=this,i=this._mediaKeysList[0];if(!i){A.logger.error("Fatal: Media is encrypted but not any key-system access has been obtained yet"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});return}if(i.mediaKeysSessionInitialized){A.logger.warn("Key-Session already initialized but requested again");return}var h=i.mediaKeysSession;if(!h){A.logger.error("Fatal: Media is encrypted but no key-session existing"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_SESSION,fatal:!0});return}if(!e){A.logger.warn("Fatal: initData required for generating a key session is null"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_INIT_DATA,fatal:!0});return}A.logger.log('Generating key-session request for "'+s+'" init data type'),i.mediaKeysSessionInitialized=!0,h.generateRequest(s,e).then(function(){A.logger.debug("Key-session generation succeeded")}).catch(function(l){A.logger.error("Error generating key-session request:",l),a.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_SESSION,fatal:!1})})},y._createLicenseXhr=function(s,e,a){var i=new XMLHttpRequest;i.responseType="arraybuffer",i.onreadystatechange=this._onLicenseRequestReadyStageChange.bind(this,i,s,e,a);var h=this._licenseXhrSetup;if(h)try{h.call(this.hls,i,s),h=void 0}catch(l){A.logger.error(l)}try{i.readyState||i.open("POST",s,!0),h&&h.call(this.hls,i,s)}catch(l){throw new Error("issue setting up KeySystem license XHR "+l)}return i},y._onLicenseRequestReadyStageChange=function(s,e,a,i){switch(s.readyState){case 4:if(s.status===200){this._requestLicenseFailureCount=0,A.logger.log("License request succeeded");var h=s.response,l=this._licenseResponseCallback;if(l)try{h=l.call(this.hls,s,e)}catch(m){A.logger.error(m)}i(h)}else{if(A.logger.error("License Request XHR failed ("+e+"). Status: "+s.status+" ("+s.statusText+")"),this._requestLicenseFailureCount++,this._requestLicenseFailureCount>S){this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0});return}var u=S-this._requestLicenseFailureCount+1;A.logger.warn("Retrying license request, "+u+" attempts left"),this._requestLicense(a,i)}break}},y._generateLicenseRequestChallenge=function(s,e){switch(s.mediaKeySystemDomain){case M.KeySystems.WIDEVINE:return e}throw new Error("unsupported key-system: "+s.mediaKeySystemDomain)},y._requestLicense=function(s,e){A.logger.log("Requesting content license for key-system");var a=this._mediaKeysList[0];if(!a){A.logger.error("Fatal error: Media is encrypted but no key-system access has been obtained yet"),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});return}try{var i=this.getLicenseServerUrl(a.mediaKeySystemDomain),h=this._createLicenseXhr(i,s,e);A.logger.log("Sending license request to URL: "+i);var l=this._generateLicenseRequestChallenge(a,s);h.send(l)}catch(u){A.logger.error("Failure requesting DRM license: "+u),this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.KEY_SYSTEM_ERROR,details:C.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0})}},y.onMediaAttached=function(s,e){if(!this._emeEnabled)return;var a=e.media;this._media=a,a.addEventListener("encrypted",this._onMediaEncrypted)},y.onMediaDetached=function(){var s=this._media,e=this._mediaKeysList;if(!s)return;s.removeEventListener("encrypted",this._onMediaEncrypted),this._media=null,this._mediaKeysList=[],Promise.all(e.map(function(a){if(a.mediaKeysSession)return a.mediaKeysSession.close().catch(function(){})})).then(function(){return s.setMediaKeys(null)}).catch(function(){})},y.onManifestParsed=function(s,e){if(!this._emeEnabled)return;var a=e.levels.map(function(h){return h.audioCodec}).filter(function(h){return!!h}),i=e.levels.map(function(h){return h.videoCodec}).filter(function(h){return!!h});this._attemptKeySystemAccess(M.KeySystems.WIDEVINE,a,i)},R(v,[{key:"requestMediaKeySystemAccess",get:function(){if(!this._requestMediaKeySystemAccess)throw new Error("No requestMediaKeySystemAccess function configured");return this._requestMediaKeySystemAccess}}]),v}();k.default=T},"./src/controller/fps-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts"),C=E("./src/utils/logger.ts"),A=function(){function M(R){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=R,this.registerListeners()}var w=M.prototype;return w.setStreamController=function(S){this.streamController=S},w.registerListeners=function(){this.hls.on(I.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},w.unregisterListeners=function(){this.hls.off(I.Events.MEDIA_ATTACHING,this.onMediaAttaching)},w.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},w.onMediaAttaching=function(S,g){var x=this.hls.config;if(x.capLevelOnFPSDrop){var T=g.media instanceof self.HTMLVideoElement?g.media:null;this.media=T,T&&typeof T.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),x.fpsDroppedMonitoringPeriod)}},w.checkFPS=function(S,g,x){var T=performance.now();if(g){if(this.lastTime){var v=T-this.lastTime,y=x-this.lastDroppedFrames,p=g-this.lastDecodedFrames,s=1e3*y/v,e=this.hls;if(e.trigger(I.Events.FPS_DROP,{currentDropped:y,currentDecoded:p,totalDroppedFrames:x}),s>0&&y>e.config.fpsDroppedMonitoringThreshold*p){var a=e.currentLevel;C.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+a),a>0&&(e.autoLevelCapping===-1||e.autoLevelCapping>=a)&&(a=a-1,e.trigger(I.Events.FPS_DROP_LEVEL_CAPPING,{level:a,droppedLevel:e.currentLevel}),e.autoLevelCapping=a,this.streamController.nextLevelSwitch())}}this.lastTime=T,this.lastDroppedFrames=x,this.lastDecodedFrames=g}},w.checkFPSInterval=function(){var S=this.media;if(S)if(this.isVideoPlaybackQualityAvailable){var g=S.getVideoPlaybackQuality();this.checkFPS(S,g.totalVideoFrames,g.droppedVideoFrames)}else this.checkFPS(S,S.webkitDecodedFrameCount,S.webkitDroppedFrameCount)},M}();k.default=A},"./src/controller/fragment-finders.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"findFragmentByPDT",function(){return A}),E.d(k,"findFragmentByPTS",function(){return M}),E.d(k,"fragmentWithinToleranceTest",function(){return w}),E.d(k,"pdtWithinToleranceTest",function(){return R}),E.d(k,"findFragWithCC",function(){return S});var I=E("./src/polyfills/number.ts"),C=E("./src/utils/binary-search.ts");function A(g,x,T){if(x===null||!Array.isArray(g)||!g.length||!Object(I.isFiniteNumber)(x))return null;var v=g[0].programDateTime;if(x<(v||0))return null;var y=g[g.length-1].endProgramDateTime;if(x>=(y||0))return null;T=T||0;for(var p=0;p<g.length;++p){var s=g[p];if(R(x,T,s))return s}return null}function M(g,x,T,v){T===void 0&&(T=0),v===void 0&&(v=0);var y=null;if(g?y=x[g.sn-x[0].sn+1]||null:T===0&&x[0].start===0&&(y=x[0]),y&&w(T,v,y)===0)return y;var p=C.default.search(x,w.bind(null,T,v));return p||y}function w(g,x,T){g===void 0&&(g=0),x===void 0&&(x=0);var v=Math.min(x,T.duration+(T.deltaPTS?T.deltaPTS:0));return T.start+T.duration-v<=g?1:T.start-v>g&&T.start?-1:0}function R(g,x,T){var v=Math.min(x,T.duration+(T.deltaPTS?T.deltaPTS:0))*1e3,y=T.endProgramDateTime||0;return y-v>g}function S(g,x){return C.default.search(g,function(T){return T.cc<x?1:T.cc>x?-1:0})}},"./src/controller/fragment-tracker.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"FragmentState",function(){return A}),E.d(k,"FragmentTracker",function(){return M});var I=E("./src/events.ts"),C=E("./src/types/loader.ts"),A;(function(S){S.NOT_LOADED="NOT_LOADED",S.BACKTRACKED="BACKTRACKED",S.APPENDING="APPENDING",S.PARTIAL="PARTIAL",S.OK="OK"})(A||(A={}));var M=function(){function S(x){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=x,this._registerListeners()}var g=S.prototype;return g._registerListeners=function(){var T=this.hls;T.on(I.Events.BUFFER_APPENDED,this.onBufferAppended,this),T.on(I.Events.FRAG_BUFFERED,this.onFragBuffered,this),T.on(I.Events.FRAG_LOADED,this.onFragLoaded,this)},g._unregisterListeners=function(){var T=this.hls;T.off(I.Events.BUFFER_APPENDED,this.onBufferAppended,this),T.off(I.Events.FRAG_BUFFERED,this.onFragBuffered,this),T.off(I.Events.FRAG_LOADED,this.onFragLoaded,this)},g.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},g.getAppendedFrag=function(T,v){if(v===C.PlaylistLevelType.MAIN){var y=this.activeFragment,p=this.activeParts;if(!y)return null;if(p)for(var s=p.length;s--;){var e=p[s],a=e?e.end:y.appendedPTS;if(e.start<=T&&a!==void 0&&T<=a)return s>9&&(this.activeParts=p.slice(s-9)),e}else if(y.start<=T&&y.appendedPTS!==void 0&&T<=y.appendedPTS)return y}return this.getBufferedFrag(T,v)},g.getBufferedFrag=function(T,v){for(var y=this.fragments,p=Object.keys(y),s=p.length;s--;){var e=y[p[s]];if((e==null?void 0:e.body.type)===v&&e.buffered){var a=e.body;if(a.start<=T&&T<=a.end)return a}}return null},g.detectEvictedFragments=function(T,v,y){var p=this;Object.keys(this.fragments).forEach(function(s){var e=p.fragments[s];if(!e)return;if(!e.buffered){e.body.type===y&&p.removeFragment(e.body);return}var a=e.range[T];if(!a)return;a.time.some(function(i){var h=!p.isTimeBuffered(i.startPTS,i.endPTS,v);return h&&p.removeFragment(e.body),h})})},g.detectPartialFragments=function(T){var v=this,y=this.timeRanges,p=T.frag,s=T.part;if(!y||p.sn==="initSegment")return;var e=R(p),a=this.fragments[e];if(!a)return;Object.keys(y).forEach(function(i){var h=p.elementaryStreams[i];if(!h)return;var l=y[i],u=s!==null||h.partial===!0;a.range[i]=v.getBufferedTimes(p,s,u,l)}),a.backtrack=a.loaded=null,Object.keys(a.range).length?a.buffered=!0:this.removeFragment(a.body)},g.fragBuffered=function(T){var v=R(T),y=this.fragments[v];y&&(y.backtrack=y.loaded=null,y.buffered=!0)},g.getBufferedTimes=function(T,v,y,p){for(var s={time:[],partial:y},e=v?v.start:T.start,a=v?v.end:T.end,i=T.minEndPTS||a,h=T.maxStartPTS||e,l=0;l<p.length;l++){var u=p.start(l)-this.bufferPadding,m=p.end(l)+this.bufferPadding;if(h>=u&&i<=m){s.time.push({startPTS:Math.max(e,p.start(l)),endPTS:Math.min(a,p.end(l))});break}else if(e<m&&a>u)s.partial=!0,s.time.push({startPTS:Math.max(e,p.start(l)),endPTS:Math.min(a,p.end(l))});else if(a<=u)break}return s},g.getPartialFragment=function(T){var v=null,y,p,s,e=0,a=this.bufferPadding,i=this.fragments;return Object.keys(i).forEach(function(h){var l=i[h];if(!l)return;w(l)&&(p=l.body.start-a,s=l.body.end+a,T>=p&&T<=s&&(y=Math.min(T-p,s-T),e<=y&&(v=l.body,e=y)))}),v},g.getState=function(T){var v=R(T),y=this.fragments[v];return y?y.buffered?w(y)?A.PARTIAL:A.OK:y.backtrack?A.BACKTRACKED:A.APPENDING:A.NOT_LOADED},g.backtrack=function(T,v){var y=R(T),p=this.fragments[y];if(!p||p.backtrack)return null;var s=p.backtrack=v||p.loaded;return p.loaded=null,s},g.getBacktrackData=function(T){var v=R(T),y=this.fragments[v];if(y){var p,s=y.backtrack;if(s!=null&&(p=s.payload)!==null&&p!==void 0&&p.byteLength)return s;this.removeFragment(T)}return null},g.isTimeBuffered=function(T,v,y){for(var p,s,e=0;e<y.length;e++){if(p=y.start(e)-this.bufferPadding,s=y.end(e)+this.bufferPadding,T>=p&&v<=s)return!0;if(v<=p)return!1}return!1},g.onFragLoaded=function(T,v){var y=v.frag,p=v.part;if(y.sn==="initSegment"||y.bitrateTest||p)return;var s=R(y);this.fragments[s]={body:y,loaded:v,backtrack:null,buffered:!1,range:Object.create(null)}},g.onBufferAppended=function(T,v){var y=this,p=v.frag,s=v.part,e=v.timeRanges;if(p.type===C.PlaylistLevelType.MAIN)if(this.activeFragment=p,s){var a=this.activeParts;a||(this.activeParts=a=[]),a.push(s)}else this.activeParts=null;this.timeRanges=e,Object.keys(e).forEach(function(i){var h=e[i];if(y.detectEvictedFragments(i,h),!s)for(var l=0;l<h.length;l++)p.appendedPTS=Math.max(h.end(l),p.appendedPTS||0)})},g.onFragBuffered=function(T,v){this.detectPartialFragments(v)},g.hasFragment=function(T){var v=R(T);return!!this.fragments[v]},g.removeFragmentsInRange=function(T,v,y){var p=this;Object.keys(this.fragments).forEach(function(s){var e=p.fragments[s];if(!e)return;if(e.buffered){var a=e.body;a.type===y&&a.start<v&&a.end>T&&p.removeFragment(a)}})},g.removeFragment=function(T){var v=R(T);T.stats.loaded=0,T.clearElementaryStreamInfo(),delete this.fragments[v]},g.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},S}();function w(S){var g,x;return S.buffered&&(((g=S.range.video)===null||g===void 0?void 0:g.partial)||((x=S.range.audio)===null||x===void 0?void 0:x.partial))}function R(S){return S.type+"_"+S.level+"_"+S.urlId+"_"+S.sn}},"./src/controller/gap-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"STALL_MINIMUM_DURATION_MS",function(){return w}),E.d(k,"MAX_START_GAP_JUMP",function(){return R}),E.d(k,"SKIP_BUFFER_HOLE_STEP_SECONDS",function(){return S}),E.d(k,"SKIP_BUFFER_RANGE_START",function(){return g}),E.d(k,"default",function(){return x});var I=E("./src/utils/buffer-helper.ts"),C=E("./src/errors.ts"),A=E("./src/events.ts"),M=E("./src/utils/logger.ts"),w=250,R=2,S=.1,g=.05,x=function(){function T(y,p,s,e){this.config=void 0,this.media=void 0,this.fragmentTracker=void 0,this.hls=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.config=y,this.media=p,this.fragmentTracker=s,this.hls=e}var v=T.prototype;return v.destroy=function(){this.hls=this.fragmentTracker=this.media=null},v.poll=function(p){var s=this.config,e=this.media,a=this.stalled,i=e.currentTime,h=e.seeking,l=this.seeking&&!h,u=!this.seeking&&h;if(this.seeking=h,i!==p){if(this.moved=!0,a!==null){if(this.stallReported){var m=self.performance.now()-a;M.logger.warn("playback not stuck anymore @"+i+", after "+Math.round(m)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}return}if((u||l)&&(this.stalled=null),e.paused||e.ended||e.playbackRate===0||!I.BufferHelper.getBuffered(e).length)return;var d=I.BufferHelper.bufferInfo(e,i,0),o=d.len>0,n=d.nextStart||0;if(!o&&!n)return;if(h){var t=d.len>R,r=!n||n-i>R&&!this.fragmentTracker.getPartialFragment(i);if(t||r)return;this.moved=!1}if(!this.moved&&this.stalled!==null){var c,f=Math.max(n,d.start||0)-i,b=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,L=b==null||((c=b.details)===null||c===void 0)?void 0:c.live,D=L?b.details.targetduration*2:R;if(f>0&&f<=D){this._trySkipBufferHole(null);return}}var F=self.performance.now();if(a===null){this.stalled=F;return}var N=F-a;!h&&N>=w&&this._reportStall(d.len);var K=I.BufferHelper.bufferInfo(e,i,s.maxBufferHole);this._tryFixBufferStall(K,N)},v._tryFixBufferStall=function(p,s){var e=this.config,a=this.fragmentTracker,i=this.media,h=i.currentTime,l=a.getPartialFragment(h);if(l){var u=this._trySkipBufferHole(l);if(u)return}p.len>e.maxBufferHole&&s>e.highBufferWatchdogPeriod*1e3&&(M.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())},v._reportStall=function(p){var s=this.hls,e=this.media,a=this.stallReported;a||(this.stallReported=!0,M.logger.warn("Playback stalling at @"+e.currentTime+" due to low buffer (buffer="+p+")"),s.trigger(A.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:p}))},v._trySkipBufferHole=function(p){for(var s=this.config,e=this.hls,a=this.media,i=a.currentTime,h=0,l=I.BufferHelper.getBuffered(a),u=0;u<l.length;u++){var m=l.start(u);if(i+s.maxBufferHole>=h&&i<m){var d=Math.max(m+g,a.currentTime+S);return M.logger.warn("skipping hole, adjusting currentTime from "+i+" to "+d),this.moved=!0,this.stalled=null,a.currentTime=d,p&&e.trigger(A.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.BUFFER_SEEK_OVER_HOLE,fatal:!1,reason:"fragment loaded with buffer holes, seeking from "+i+" to "+d,frag:p}),d}h=l.end(u)}return 0},v._tryNudgeBuffer=function(){var p=this.config,s=this.hls,e=this.media,a=e.currentTime,i=(this.nudgeRetry||0)+1;if(this.nudgeRetry=i,i<p.nudgeMaxRetry){var h=a+i*p.nudgeOffset;M.logger.warn("Nudging 'currentTime' from "+a+" to "+h),e.currentTime=h,s.trigger(A.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.BUFFER_NUDGE_ON_STALL,fatal:!1})}else M.logger.error("Playhead still not moving while enough data buffered @"+a+" after "+p.nudgeMaxRetry+" nudges"),s.trigger(A.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!0})},T}()},"./src/controller/id3-track-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts"),C=E("./src/utils/texttrack-utils.ts"),A=E("./src/demux/id3.ts"),M=.25,w=function(){function R(g){this.hls=void 0,this.id3Track=null,this.media=null,this.hls=g,this._registerListeners()}var S=R.prototype;return S.destroy=function(){this._unregisterListeners()},S._registerListeners=function(){var x=this.hls;x.on(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),x.on(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),x.on(I.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),x.on(I.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},S._unregisterListeners=function(){var x=this.hls;x.off(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),x.off(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),x.off(I.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),x.off(I.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},S.onMediaAttached=function(x,T){this.media=T.media},S.onMediaDetaching=function(){if(!this.id3Track)return;Object(C.clearCurrentCues)(this.id3Track),this.id3Track=null,this.media=null},S.getID3Track=function(x){if(!this.media)return;for(var T=0;T<x.length;T++){var v=x[T];if(v.kind==="metadata"&&v.label==="id3")return Object(C.sendAddTrackEvent)(v,this.media),v}return this.media.addTextTrack("metadata","id3")},S.onFragParsingMetadata=function(x,T){if(!this.media)return;var v=T.frag,y=T.samples;this.id3Track||(this.id3Track=this.getID3Track(this.media.textTracks),this.id3Track.mode="hidden");for(var p=self.WebKitDataCue||self.VTTCue||self.TextTrackCue,s=0;s<y.length;s++){var e=A.getID3Frames(y[s].data);if(e){var a=y[s].pts,i=s<y.length-1?y[s+1].pts:v.end,h=i-a;h<=0&&(i=a+M);for(var l=0;l<e.length;l++){var u=e[l];if(!A.isTimeStampFrame(u)){var m=new p(a,i,"");m.value=u,this.id3Track.addCue(m)}}}}},S.onBufferFlushing=function(x,T){var v=T.startOffset,y=T.endOffset,p=T.type;if(!p||p==="audio"){var s=this.id3Track;s&&Object(C.removeCuesInRange)(s,v,y)}},R}();k.default=w},"./src/controller/latency-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return R});var I=E("./src/errors.ts"),C=E("./src/events.ts"),A=E("./src/utils/logger.ts");function M(S,g){for(var x=0;x<g.length;x++){var T=g[x];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(S,T.key,T)}}function w(S,g,x){return g&&M(S.prototype,g),x&&M(S,x),S}var R=function(){function S(x){var T=this;this.hls=void 0,this.config=void 0,this.media=null,this.levelDetails=null,this.currentTime=0,this.stallCount=0,this._latency=null,this.timeupdateHandler=function(){return T.timeupdate()},this.hls=x,this.config=x.config,this.registerListeners()}var g=S.prototype;return g.destroy=function(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null},g.registerListeners=function(){this.hls.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(C.Events.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(C.Events.ERROR,this.onError,this)},g.unregisterListeners=function(){this.hls.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached),this.hls.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching),this.hls.off(C.Events.MANIFEST_LOADING,this.onManifestLoading),this.hls.off(C.Events.LEVEL_UPDATED,this.onLevelUpdated),this.hls.off(C.Events.ERROR,this.onError)},g.onMediaAttached=function(T,v){this.media=v.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)},g.onMediaDetaching=function(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)},g.onManifestLoading=function(){this.levelDetails=null,this._latency=null,this.stallCount=0},g.onLevelUpdated=function(T,v){var y=v.details;this.levelDetails=y,y.advanced&&this.timeupdate(),!y.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)},g.onError=function(T,v){if(v.details!==I.ErrorDetails.BUFFER_STALLED_ERROR)return;this.stallCount++,A.logger.warn("[playback-rate-controller]: Stall detected, adjusting target latency")},g.timeupdate=function(){var T=this.media,v=this.levelDetails;if(!T||!v)return;this.currentTime=T.currentTime;var y=this.computeLatency();if(y===null)return;this._latency=y;var p=this.config,s=p.lowLatencyMode,e=p.maxLiveSyncPlaybackRate;if(!s||e===1)return;var a=this.targetLatency;if(a===null)return;var i=y-a,h=Math.min(this.maxLatency,a+v.targetduration),l=i<h;if(v.live&&l&&i>.05&&this.forwardBufferLength>1){var u=Math.min(2,Math.max(1,e)),m=Math.round(2/(1+Math.exp(-.75*i-this.edgeStalled))*20)/20;T.playbackRate=Math.min(u,Math.max(1,m))}else T.playbackRate!==1&&T.playbackRate!==0&&(T.playbackRate=1)},g.estimateLiveEdge=function(){var T=this.levelDetails;return T===null?null:T.edge+T.age},g.computeLatency=function(){var T=this.estimateLiveEdge();return T===null?null:T-this.currentTime},w(S,[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var T=this.config,v=this.levelDetails;return T.liveMaxLatencyDuration!==void 0?T.liveMaxLatencyDuration:v?T.liveMaxLatencyDurationCount*v.targetduration:0}},{key:"targetLatency",get:function(){var T=this.levelDetails;if(T===null)return null;var v=T.holdBack,y=T.partHoldBack,p=T.targetduration,s=this.config,e=s.liveSyncDuration,a=s.liveSyncDurationCount,i=s.lowLatencyMode,h=this.hls.userConfig,l=i&&y||v;(h.liveSyncDuration||h.liveSyncDurationCount||l===0)&&(l=e!==void 0?e:a*p);var u=p,m=1;return l+Math.min(this.stallCount*m,u)}},{key:"liveSyncPosition",get:function(){var T=this.estimateLiveEdge(),v=this.targetLatency,y=this.levelDetails;if(T===null||v===null||y===null)return null;var p=y.edge,s=T-v-this.edgeStalled,e=p-y.totalduration,a=p-(this.config.lowLatencyMode&&y.partTarget||y.targetduration);return Math.min(Math.max(e,s),a)}},{key:"drift",get:function(){var T=this.levelDetails;return T===null?1:T.drift}},{key:"edgeStalled",get:function(){var T=this.levelDetails;if(T===null)return 0;var v=(this.config.lowLatencyMode&&T.partTarget||T.targetduration)*3;return Math.max(T.age-v,0)}},{key:"forwardBufferLength",get:function(){var T=this.media,v=this.levelDetails;if(!T||!v)return 0;var y=T.buffered.length;return y?T.buffered.end(y-1):v.edge-this.currentTime}}]),S}()},"./src/controller/level-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return s});var I=E("./src/types/level.ts"),C=E("./src/events.ts"),A=E("./src/errors.ts"),M=E("./src/utils/codecs.ts"),w=E("./src/controller/level-helper.ts"),R=E("./src/controller/base-playlist-controller.ts"),S=E("./src/types/loader.ts");function g(){return g=Object.assign||function(e){for(var a=1;a<arguments.length;a++){var i=arguments[a];for(var h in i)Object.prototype.hasOwnProperty.call(i,h)&&(e[h]=i[h])}return e},g.apply(this,arguments)}function x(e,a){for(var i=0;i<a.length;i++){var h=a[i];h.enumerable=h.enumerable||!1,h.configurable=!0,"value"in h&&(h.writable=!0),Object.defineProperty(e,h.key,h)}}function T(e,a,i){return a&&x(e.prototype,a),i&&x(e,i),e}function v(e,a){e.prototype=Object.create(a.prototype),e.prototype.constructor=e,y(e,a)}function y(e,a){return y=Object.setPrototypeOf||function(h,l){return h.__proto__=l,h},y(e,a)}var p=/chrome|firefox/.test(navigator.userAgent.toLowerCase()),s=function(e){v(a,e);function a(h){var l;return l=e.call(this,h,"[level-controller]")||this,l._levels=[],l._firstLevel=-1,l._startLevel=void 0,l.currentLevelIndex=-1,l.manualLevelIndex=-1,l.onParsedComplete=void 0,l._registerListeners(),l}var i=a.prototype;return i._registerListeners=function(){var l=this.hls;l.on(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this),l.on(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),l.on(C.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),l.on(C.Events.FRAG_LOADED,this.onFragLoaded,this),l.on(C.Events.ERROR,this.onError,this)},i._unregisterListeners=function(){var l=this.hls;l.off(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this),l.off(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),l.off(C.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),l.off(C.Events.FRAG_LOADED,this.onFragLoaded,this),l.off(C.Events.ERROR,this.onError,this)},i.destroy=function(){this._unregisterListeners(),this.manualLevelIndex=-1,this._levels.length=0,e.prototype.destroy.call(this)},i.startLoad=function(){var l=this._levels;l.forEach(function(u){u.loadError=0}),e.prototype.startLoad.call(this)},i.onManifestLoaded=function(l,u){var m=[],d=[],o=[],n,t={},r,c=!1,f=!1,b=!1;if(u.levels.forEach(function(N){var K=N.attrs;c=c||!!(N.width&&N.height),f=f||!!N.videoCodec,b=b||!!N.audioCodec,p&&N.audioCodec&&N.audioCodec.indexOf("mp4a.40.34")!==-1&&(N.audioCodec=void 0);var V=N.bitrate+"-"+N.attrs.RESOLUTION+"-"+N.attrs.CODECS;r=t[V],r?r.url.push(N.url):(r=new I.Level(N),t[V]=r,m.push(r)),K&&(K.AUDIO&&Object(w.addGroupId)(r,"audio",K.AUDIO),K.SUBTITLES&&Object(w.addGroupId)(r,"text",K.SUBTITLES))}),(c||f)&&b&&(m=m.filter(function(N){var K=N.videoCodec,V=N.width,z=N.height;return!!K||!!(V&&z)})),m=m.filter(function(N){var K=N.audioCodec,V=N.videoCodec;return(!K||Object(M.isCodecSupportedInMp4)(K,"audio"))&&(!V||Object(M.isCodecSupportedInMp4)(V,"video"))}),u.audioTracks&&(d=u.audioTracks.filter(function(N){return!N.audioCodec||Object(M.isCodecSupportedInMp4)(N.audioCodec,"audio")}),Object(w.assignTrackIdsByGroup)(d)),u.subtitles&&(o=u.subtitles,Object(w.assignTrackIdsByGroup)(o)),m.length>0){n=m[0].bitrate,m.sort(function(N,K){return N.bitrate-K.bitrate}),this._levels=m;for(var L=0;L<m.length;L++)if(m[L].bitrate===n){this._firstLevel=L,this.log("manifest loaded, "+m.length+" level(s) found, first bitrate: "+n);break}var D=b&&!f,F={levels:m,audioTracks:d,subtitleTracks:o,firstLevel:this._firstLevel,stats:u.stats,audio:b,video:f,altAudio:!D&&d.some(function(N){return!!N.url})};this.hls.trigger(C.Events.MANIFEST_PARSED,F),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}else this.hls.trigger(C.Events.ERROR,{type:A.ErrorTypes.MEDIA_ERROR,details:A.ErrorDetails.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:u.url,reason:"no level with compatible codecs found in manifest"})},i.onError=function(l,u){if(e.prototype.onError.call(this,l,u),u.fatal)return;var m=u.context,d=this._levels[this.currentLevelIndex];if(m&&(m.type===S.PlaylistContextType.AUDIO_TRACK&&d.audioGroupIds&&m.groupId===d.audioGroupIds[d.urlId]||m.type===S.PlaylistContextType.SUBTITLE_TRACK&&d.textGroupIds&&m.groupId===d.textGroupIds[d.urlId])){this.redundantFailover(this.currentLevelIndex);return}var o=!1,n=!0,t;switch(u.details){case A.ErrorDetails.FRAG_LOAD_ERROR:case A.ErrorDetails.FRAG_LOAD_TIMEOUT:case A.ErrorDetails.KEY_LOAD_ERROR:case A.ErrorDetails.KEY_LOAD_TIMEOUT:if(u.frag){var r=this._levels[u.frag.level];r?(r.fragmentError++,r.fragmentError>this.hls.config.fragLoadingMaxRetry&&(t=u.frag.level)):t=u.frag.level}break;case A.ErrorDetails.LEVEL_LOAD_ERROR:case A.ErrorDetails.LEVEL_LOAD_TIMEOUT:m&&(m.deliveryDirectives&&(n=!1),t=m.level),o=!0;break;case A.ErrorDetails.REMUX_ALLOC_ERROR:t=u.level,o=!0;break}t!==void 0&&this.recoverLevel(u,t,o,n)},i.recoverLevel=function(l,u,m,d){var o=l.details,n=this._levels[u];if(n.loadError++,m){var t=this.retryLoadingOrFail(l);if(t)l.levelRetry=!0;else{this.currentLevelIndex=-1;return}}if(d){var r=n.url.length;if(r>1&&n.loadError<r)l.levelRetry=!0,this.redundantFailover(u);else if(this.manualLevelIndex===-1){var c=u===0?this._levels.length-1:u-1;this.currentLevelIndex!==c&&this._levels[c].loadError===0&&(this.warn(o+": switch to "+c),l.levelRetry=!0,this.hls.nextAutoLevel=c)}}},i.redundantFailover=function(l){var u=this._levels[l],m=u.url.length;if(m>1){var d=(u.urlId+1)%m;this.warn("Switching to redundant URL-id "+d),this._levels.forEach(function(o){o.urlId=d}),this.level=l}},i.onFragLoaded=function(l,u){var m=u.frag;if(m!==void 0&&m.type===S.PlaylistLevelType.MAIN){var d=this._levels[m.level];d!==void 0&&(d.fragmentError=0,d.loadError=0)}},i.onLevelLoaded=function(l,u){var m,d=u.level,o=u.details,n=this._levels[d];if(!n){var t;this.warn("Invalid level index "+d),(t=u.deliveryDirectives)!==null&&t!==void 0&&t.skip&&(o.deltaUpdateFailed=!0);return}d===this.currentLevelIndex?(n.fragmentError===0&&(n.loadError=0,this.retryCount=0),this.playlistLoaded(d,u,n.details)):(m=u.deliveryDirectives)!==null&&m!==void 0&&m.skip&&(o.deltaUpdateFailed=!0)},i.onAudioTrackSwitched=function(l,u){var m=this.hls.levels[this.currentLevelIndex];if(!m)return;if(m.audioGroupIds){for(var d=-1,o=this.hls.audioTracks[u.id].groupId,n=0;n<m.audioGroupIds.length;n++)if(m.audioGroupIds[n]===o){d=n;break}d!==m.urlId&&(m.urlId=d,this.startLoad())}},i.loadPlaylist=function(l){var u=this.currentLevelIndex,m=this._levels[u];if(this.canLoad&&m&&m.url.length>0){var d=m.urlId,o=m.url[d];if(l)try{o=l.addDirectives(o)}catch(n){this.warn("Could not construct new URL with HLS Delivery Directives: "+n)}this.log("Attempt loading level index "+u+(l?" at sn "+l.msn+" part "+l.part:"")+" with URL-id "+d+" "+o),this.clearTimer(),this.hls.trigger(C.Events.LEVEL_LOADING,{url:o,level:u,id:d,deliveryDirectives:l||null})}},i.removeLevel=function(l,u){var m=function(n,t){return t!==u},d=this._levels.filter(function(o,n){return n!==l?!0:o.url.length>1&&u!==void 0?(o.url=o.url.filter(m),o.audioGroupIds&&(o.audioGroupIds=o.audioGroupIds.filter(m)),o.textGroupIds&&(o.textGroupIds=o.textGroupIds.filter(m)),o.urlId=0,!0):!1}).map(function(o,n){var t=o.details;return t!=null&&t.fragments&&t.fragments.forEach(function(r){r.level=n}),o});this._levels=d,this.hls.trigger(C.Events.LEVELS_UPDATED,{levels:d})},T(a,[{key:"levels",get:function(){return this._levels.length===0?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(l){var u,m=this._levels;if(m.length===0)return;if(this.currentLevelIndex===l&&(u=m[l])!==null&&u!==void 0&&u.details)return;if(l<0||l>=m.length){var d=l<0;if(this.hls.trigger(C.Events.ERROR,{type:A.ErrorTypes.OTHER_ERROR,details:A.ErrorDetails.LEVEL_SWITCH_ERROR,level:l,fatal:d,reason:"invalid level idx"}),d)return;l=Math.min(l,m.length-1)}this.clearTimer();var o=this.currentLevelIndex,n=m[o],t=m[l];this.log("switching to level "+l+" from "+o),this.currentLevelIndex=l;var r=g({},t,{level:l,maxBitrate:t.maxBitrate,uri:t.uri,urlId:t.urlId});delete r._urlId,this.hls.trigger(C.Events.LEVEL_SWITCHING,r);var c=t.details;if(!c||c.live){var f=this.switchParams(t.uri,n==null?void 0:n.details);this.loadPlaylist(f)}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(l){this.manualLevelIndex=l,this._startLevel===void 0&&(this._startLevel=l),l!==-1&&(this.level=l)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(l){this._firstLevel=l}},{key:"startLevel",get:function(){if(this._startLevel===void 0){var l=this.hls.config.startLevel;return l!==void 0?l:this._firstLevel}else return this._startLevel},set:function(l){this._startLevel=l}},{key:"nextLoadLevel",get:function(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(l){this.level=l,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=l)}}]),a}(R.default)},"./src/controller/level-helper.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"addGroupId",function(){return A}),E.d(k,"assignTrackIdsByGroup",function(){return M}),E.d(k,"updatePTS",function(){return w}),E.d(k,"updateFragPTSDTS",function(){return S}),E.d(k,"mergeDetails",function(){return g}),E.d(k,"mapPartIntersection",function(){return x}),E.d(k,"mapFragmentIntersection",function(){return T}),E.d(k,"adjustSliding",function(){return v}),E.d(k,"addSliding",function(){return y}),E.d(k,"computeReloadInterval",function(){return p}),E.d(k,"getFragmentWithSN",function(){return s}),E.d(k,"getPartWith",function(){return e});var I=E("./src/polyfills/number.ts"),C=E("./src/utils/logger.ts");function A(a,i,h){switch(i){case"audio":a.audioGroupIds||(a.audioGroupIds=[]),a.audioGroupIds.push(h);break;case"text":a.textGroupIds||(a.textGroupIds=[]),a.textGroupIds.push(h);break}}function M(a){var i={};a.forEach(function(h){var l=h.groupId||"";h.id=i[l]=i[l]||0,i[l]++})}function w(a,i,h){var l=a[i],u=a[h];R(l,u)}function R(a,i){var h=i.startPTS;if(Object(I.isFiniteNumber)(h)){var l=0,u;i.sn>a.sn?(l=h-a.start,u=a):(l=a.start-h,u=i),u.duration!==l&&(u.duration=l)}else if(i.sn>a.sn){var m=a.cc===i.cc;m&&a.minEndPTS?i.start=a.start+(a.minEndPTS-a.start):i.start=a.start+a.duration}else i.start=Math.max(a.start-i.duration,0)}function S(a,i,h,l,u,m){var d=l-h;d<=0&&(C.logger.warn("Fragment should have a positive duration",i),l=h+i.duration,m=u+i.duration);var o=h,n=l,t=i.startPTS,r=i.endPTS;if(Object(I.isFiniteNumber)(t)){var c=Math.abs(t-h);Object(I.isFiniteNumber)(i.deltaPTS)?i.deltaPTS=Math.max(c,i.deltaPTS):i.deltaPTS=c,o=Math.max(h,t),h=Math.min(h,t),u=Math.min(u,i.startDTS),n=Math.min(l,r),l=Math.max(l,r),m=Math.max(m,i.endDTS)}i.duration=l-h;var f=h-i.start;i.appendedPTS=l,i.start=i.startPTS=h,i.maxStartPTS=o,i.startDTS=u,i.endPTS=l,i.minEndPTS=n,i.endDTS=m;var b=i.sn;if(!a||b<a.startSN||b>a.endSN)return 0;var L,D=b-a.startSN,F=a.fragments;for(F[D]=i,L=D;L>0;L--)R(F[L],F[L-1]);for(L=D;L<F.length-1;L++)R(F[L],F[L+1]);return a.fragmentHint&&R(F[F.length-1],a.fragmentHint),a.PTSKnown=a.alignedSliding=!0,f}function g(a,i){for(var h=null,l=a.fragments,u=l.length-1;u>=0;u--){var m=l[u].initSegment;if(m){h=m;break}}a.fragmentHint&&delete a.fragmentHint.endPTS;var d=0,o;if(T(a,i,function(L,D){L.relurl&&(d=L.cc-D.cc),Object(I.isFiniteNumber)(L.startPTS)&&Object(I.isFiniteNumber)(L.endPTS)&&(D.start=D.startPTS=L.startPTS,D.startDTS=L.startDTS,D.appendedPTS=L.appendedPTS,D.maxStartPTS=L.maxStartPTS,D.endPTS=L.endPTS,D.endDTS=L.endDTS,D.minEndPTS=L.minEndPTS,D.duration=L.endPTS-L.startPTS,D.duration&&(o=D),i.PTSKnown=i.alignedSliding=!0),D.elementaryStreams=L.elementaryStreams,D.loader=L.loader,D.stats=L.stats,D.urlId=L.urlId,L.initSegment&&(D.initSegment=L.initSegment,h=L.initSegment)}),h){var n=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments;n.forEach(function(L){var D;(!L.initSegment||L.initSegment.relurl===((D=h)===null||D===void 0?void 0:D.relurl))&&(L.initSegment=h)})}if(i.skippedSegments&&(i.deltaUpdateFailed=i.fragments.some(function(L){return!L}),i.deltaUpdateFailed)){C.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var t=i.skippedSegments;t--;)i.fragments.shift();i.startSN=i.fragments[0].sn,i.startCC=i.fragments[0].cc}var r=i.fragments;if(d){C.logger.warn("discontinuity sliding from playlist, take drift into account");for(var c=0;c<r.length;c++)r[c].cc+=d}i.skippedSegments&&(i.startCC=i.fragments[0].cc),x(a.partList,i.partList,function(L,D){D.elementaryStreams=L.elementaryStreams,D.stats=L.stats}),o?S(i,o,o.startPTS,o.endPTS,o.startDTS,o.endDTS):v(a,i),r.length&&(i.totalduration=i.edge-r[0].start),i.driftStartTime=a.driftStartTime,i.driftStart=a.driftStart;var f=i.advancedDateTime;if(i.advanced&&f){var b=i.edge;i.driftStart||(i.driftStartTime=f,i.driftStart=b),i.driftEndTime=f,i.driftEnd=b}else i.driftEndTime=a.driftEndTime,i.driftEnd=a.driftEnd,i.advancedDateTime=a.advancedDateTime}function x(a,i,h){if(a&&i)for(var l=0,u=0,m=a.length;u<=m;u++){var d=a[u],o=i[u+l];d&&o&&d.index===o.index&&d.fragment.sn===o.fragment.sn?h(d,o):l--}}function T(a,i,h){for(var l=i.skippedSegments,u=Math.max(a.startSN,i.startSN)-i.startSN,m=(a.fragmentHint?1:0)+(l?i.endSN:Math.min(a.endSN,i.endSN))-i.startSN,d=i.startSN-a.startSN,o=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments,n=a.fragmentHint?a.fragments.concat(a.fragmentHint):a.fragments,t=u;t<=m;t++){var r=n[d+t],c=o[t];l&&!c&&t<l&&(c=i.fragments[t]=r),r&&c&&h(r,c)}}function v(a,i){var h=i.startSN+i.skippedSegments-a.startSN,l=a.fragments;if(h<0||h>=l.length)return;y(i,l[h].start)}function y(a,i){if(i){for(var h=a.fragments,l=a.skippedSegments;l<h.length;l++)h[l].start+=i;a.fragmentHint&&(a.fragmentHint.start+=i)}}function p(a,i){var h=1e3*a.levelTargetDuration,l=h/2,u=a.age,m=u>0&&u<h*3,d=i.loading.end-i.loading.start,o,n=a.availabilityDelay;if(a.updated===!1)if(m){var t=333*a.misses;o=Math.max(Math.min(l,d*2),t),a.availabilityDelay=(a.availabilityDelay||0)+o}else o=l;else m?(n=Math.min(n||h/2,u),a.availabilityDelay=n,o=n+h-u):o=h-d;return Math.round(o)}function s(a,i,h){if(!a||!a.details)return null;var l=a.details,u=l.fragments[i-l.startSN];return u||(u=l.fragmentHint,u&&u.sn===i?u:i<l.startSN&&h&&h.sn===i?h:null)}function e(a,i,h){if(!a||!a.details)return null;var l=a.details.partList;if(l)for(var u=l.length;u--;){var m=l[u];if(m.index===h&&m.fragment.sn===i)return m}return null}},"./src/controller/stream-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return l});var I=E("./src/polyfills/number.ts"),C=E("./src/controller/base-stream-controller.ts"),A=E("./src/is-supported.ts"),M=E("./src/events.ts"),w=E("./src/utils/buffer-helper.ts"),R=E("./src/controller/fragment-tracker.ts"),S=E("./src/types/loader.ts"),g=E("./src/loader/fragment.ts"),x=E("./src/demux/transmuxer-interface.ts"),T=E("./src/types/transmuxer.ts"),v=E("./src/controller/gap-controller.ts"),y=E("./src/errors.ts"),p=E("./src/utils/logger.ts");function s(u,m){for(var d=0;d<m.length;d++){var o=m[d];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(u,o.key,o)}}function e(u,m,d){return m&&s(u.prototype,m),d&&s(u,d),u}function a(u,m){u.prototype=Object.create(m.prototype),u.prototype.constructor=u,i(u,m)}function i(u,m){return i=Object.setPrototypeOf||function(o,n){return o.__proto__=n,o},i(u,m)}var h=100,l=function(u){a(m,u);function m(o,n){var t;return t=u.call(this,o,n,"[stream-controller]")||this,t.audioCodecSwap=!1,t.gapController=null,t.level=-1,t._forceStartLoad=!1,t.altAudio=!1,t.audioOnly=!1,t.fragPlaying=null,t.onvplaying=null,t.onvseeked=null,t.fragLastKbps=0,t.stalled=!1,t.couldBacktrack=!1,t.audioCodecSwitch=!1,t.videoBuffer=null,t._registerListeners(),t}var d=m.prototype;return d._registerListeners=function(){var n=this.hls;n.on(M.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(M.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(M.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(M.Events.MANIFEST_PARSED,this.onManifestParsed,this),n.on(M.Events.LEVEL_LOADING,this.onLevelLoading,this),n.on(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.on(M.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),n.on(M.Events.ERROR,this.onError,this),n.on(M.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.on(M.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),n.on(M.Events.BUFFER_CREATED,this.onBufferCreated,this),n.on(M.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.on(M.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),n.on(M.Events.FRAG_BUFFERED,this.onFragBuffered,this)},d._unregisterListeners=function(){var n=this.hls;n.off(M.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(M.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.off(M.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(M.Events.MANIFEST_PARSED,this.onManifestParsed,this),n.off(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.off(M.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),n.off(M.Events.ERROR,this.onError,this),n.off(M.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.off(M.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),n.off(M.Events.BUFFER_CREATED,this.onBufferCreated,this),n.off(M.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.off(M.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),n.off(M.Events.FRAG_BUFFERED,this.onFragBuffered,this)},d.onHandlerDestroying=function(){this._unregisterListeners(),this.onMediaDetaching()},d.startLoad=function(n){if(this.levels){var t=this.lastCurrentTime,r=this.hls;if(this.stopLoad(),this.setInterval(h),this.level=-1,this.fragLoadError=0,!this.startFragRequested){var c=r.startLevel;c===-1&&(r.config.testBandwidth?(c=0,this.bitrateTest=!0):c=r.nextAutoLevel),this.level=r.nextLoadLevel=c,this.loadedmetadata=!1}t>0&&n===-1&&(this.log("Override startPosition with lastCurrentTime @"+t.toFixed(3)),n=t),this.state=C.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=n,this.tick()}else this._forceStartLoad=!0,this.state=C.State.STOPPED},d.stopLoad=function(){this._forceStartLoad=!1,u.prototype.stopLoad.call(this)},d.doTick=function(){switch(this.state){case C.State.IDLE:this.doTickIdle();break;case C.State.WAITING_LEVEL:{var n,t=this.levels,r=this.level,c=t==null||((n=t[r])===null||n===void 0)?void 0:n.details;if(c&&(!c.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(c))break;this.state=C.State.IDLE;break}break}case C.State.FRAG_LOADING_WAITING_RETRY:{var f,b=self.performance.now(),L=this.retryDate;(!L||b>=L||(f=this.media)!==null&&f!==void 0&&f.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.state=C.State.IDLE)}break;default:break}this.onTickEnd()},d.onTickEnd=function(){u.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},d.doTickIdle=function(){var n,t,r=this.hls,c=this.levelLastLoaded,f=this.levels,b=this.media,L=r.config,D=r.nextLoadLevel;if(c===null||!b&&(this.startFragRequested||!L.startFragPrefetch))return;if(this.altAudio&&this.audioOnly)return;if(!f||!f[D])return;var F=f[D];this.level=r.nextLoadLevel=D;var N=F.details;if(!N||this.state===C.State.WAITING_LEVEL||N.live&&this.levelLastLoaded!==D){this.state=C.State.WAITING_LEVEL;return}var K=this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:b,S.PlaylistLevelType.MAIN);if(K===null)return;var V=K.len,z=this.getMaxBufferLength(F.maxBitrate);if(V>=z)return;if(this._streamEnded(K,N)){var $={};this.altAudio&&($.type="video"),this.hls.trigger(M.Events.BUFFER_EOS,$),this.state=C.State.ENDED;return}var q=K.end,J=this.getNextFragment(q,N);if(this.couldBacktrack&&!this.fragPrevious&&J&&J.sn!=="initSegment"){var he=J.sn-N.startSN;he>1&&(J=N.fragments[he-1],this.fragmentTracker.removeFragment(J))}if(J&&this.fragmentTracker.getState(J)===R.FragmentState.OK&&this.nextLoadPosition>q){var te=this.audioOnly&&!this.altAudio?g.ElementaryStreamTypes.AUDIO:g.ElementaryStreamTypes.VIDEO;this.afterBufferFlushed(b,te,S.PlaylistLevelType.MAIN),J=this.getNextFragment(this.nextLoadPosition,N)}if(!J)return;J.initSegment&&!J.initSegment.data&&!this.bitrateTest&&(J=J.initSegment),((n=J.decryptdata)===null||n===void 0?void 0:n.keyFormat)==="identity"&&!((t=J.decryptdata)!==null&&t!==void 0&&t.key)?this.loadKey(J,N):this.loadFragment(J,N,q)},d.loadFragment=function(n,t,r){var c,f=this.fragmentTracker.getState(n);if(this.fragCurrent=n,f===R.FragmentState.BACKTRACKED){var b=this.fragmentTracker.getBacktrackData(n);if(b){this._handleFragmentLoadProgress(b),this._handleFragmentLoadComplete(b);return}else f=R.FragmentState.NOT_LOADED}f===R.FragmentState.NOT_LOADED||f===R.FragmentState.PARTIAL?n.sn==="initSegment"?this._loadInitSegment(n):this.bitrateTest?(n.bitrateTest=!0,this.log("Fragment "+n.sn+" of level "+n.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(n)):(this.startFragRequested=!0,u.prototype.loadFragment.call(this,n,t,r)):f===R.FragmentState.APPENDING?this.reduceMaxBufferLength(n.duration)&&this.fragmentTracker.removeFragment(n):((c=this.media)===null||c===void 0?void 0:c.buffered.length)===0&&this.fragmentTracker.removeAllFragments()},d.getAppendedFrag=function(n){var t=this.fragmentTracker.getAppendedFrag(n,S.PlaylistLevelType.MAIN);return t&&"fragment"in t?t.fragment:t},d.getBufferedFrag=function(n){return this.fragmentTracker.getBufferedFrag(n,S.PlaylistLevelType.MAIN)},d.followingBufferedFrag=function(n){return n?this.getBufferedFrag(n.end+.5):null},d.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},d.nextLevelSwitch=function(){var n=this.levels,t=this.media;if(t!=null&&t.readyState){var r,c=this.getAppendedFrag(t.currentTime);if(c&&c.start>1&&this.flushMainBuffer(0,c.start-1),!t.paused&&n){var f=this.hls.nextLoadLevel,b=n[f],L=this.fragLastKbps;L&&this.fragCurrent?r=this.fragCurrent.duration*b.maxBitrate/(1e3*L)+1:r=0}else r=0;var D=this.getBufferedFrag(t.currentTime+r);if(D){var F=this.followingBufferedFrag(D);if(F){this.abortCurrentFrag();var N=F.maxStartPTS?F.maxStartPTS:F.start,K=F.duration,V=Math.max(D.end,N+Math.min(Math.max(K-this.config.maxFragLookUpTolerance,K*.5),K*.75));this.flushMainBuffer(V,Number.POSITIVE_INFINITY)}}}},d.abortCurrentFrag=function(){var n=this.fragCurrent;this.fragCurrent=null,n!=null&&n.loader&&n.loader.abort(),this.state===C.State.KEY_LOADING&&(this.state=C.State.IDLE),this.nextLoadPosition=this.getLoadPosition()},d.flushMainBuffer=function(n,t){u.prototype.flushMainBuffer.call(this,n,t,this.altAudio?"video":null)},d.onMediaAttached=function(n,t){u.prototype.onMediaAttached.call(this,n,t);var r=t.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),r.addEventListener("playing",this.onvplaying),r.addEventListener("seeked",this.onvseeked),this.gapController=new v.default(this.config,r,this.fragmentTracker,this.hls)},d.onMediaDetaching=function(){var n=this.media;n&&(n.removeEventListener("playing",this.onvplaying),n.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),u.prototype.onMediaDetaching.call(this)},d.onMediaPlaying=function(){this.tick()},d.onMediaSeeked=function(){var n=this.media,t=n?n.currentTime:null;Object(I.isFiniteNumber)(t)&&this.log("Media seeked to "+t.toFixed(3)),this.tick()},d.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(M.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=this.stalled=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null},d.onManifestParsed=function(n,t){var r=!1,c=!1,f;t.levels.forEach(function(b){f=b.audioCodec,f&&(f.indexOf("mp4a.40.2")!==-1&&(r=!0),f.indexOf("mp4a.40.5")!==-1&&(c=!0))}),this.audioCodecSwitch=r&&c&&!Object(A.changeTypeSupported)(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=t.levels,this.startFragRequested=!1},d.onLevelLoading=function(n,t){var r=this.levels;if(!r||this.state!==C.State.IDLE)return;var c=r[t.level];(!c.details||c.details.live&&this.levelLastLoaded!==t.level||this.waitForCdnTuneIn(c.details))&&(this.state=C.State.WAITING_LEVEL)},d.onLevelLoaded=function(n,t){var r,c=this.levels,f=t.level,b=t.details,L=b.totalduration;if(!c){this.warn("Levels were reset while loading level "+f);return}this.log("Level "+f+" loaded ["+b.startSN+","+b.endSN+"], cc ["+b.startCC+", "+b.endCC+"] duration:"+L);var D=this.fragCurrent;D&&(this.state===C.State.FRAG_LOADING||this.state===C.State.FRAG_LOADING_WAITING_RETRY)&&(D.level!==t.level&&D.loader&&(this.state=C.State.IDLE,D.loader.abort()));var F=c[f],N=0;if(b.live||(r=F.details)!==null&&r!==void 0&&r.live){if(b.fragments[0]||(b.deltaUpdateFailed=!0),b.deltaUpdateFailed)return;N=this.alignPlaylists(b,F.details)}if(F.details=b,this.levelLastLoaded=f,this.hls.trigger(M.Events.LEVEL_UPDATED,{details:b,level:f}),this.state===C.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(b))return;this.state=C.State.IDLE}this.startFragRequested?b.live&&this.synchronizeToLiveEdge(b):this.setStartPosition(b,N),this.tick()},d._handleFragmentLoadProgress=function(n){var t,r=n.frag,c=n.part,f=n.payload,b=this.levels;if(!b){this.warn("Levels were reset while fragment load was in progress. Fragment "+r.sn+" of level "+r.level+" will not be buffered");return}var L=b[r.level],D=L.details;if(!D){this.warn("Dropping fragment "+r.sn+" of level "+r.level+" after level details were reset");return}var F=L.videoCodec,N=D.PTSKnown||!D.live,K=(t=r.initSegment)===null||t===void 0?void 0:t.data,V=this._getAudioCodec(L),z=this.transmuxer=this.transmuxer||new x.default(this.hls,S.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),$=c?c.index:-1,q=$!==-1,J=new T.ChunkMetadata(r.level,r.sn,r.stats.chunkCount,f.byteLength,$,q),he=this.initPTS[r.cc];z.push(f,K,V,F,r,c,D.totalduration,N,J,he)},d.onAudioTrackSwitching=function(n,t){var r=this.altAudio,c=!!t.url,f=t.id;if(!c){if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var b=this.fragCurrent;b!=null&&b.loader&&(this.log("Switching to main audio track, cancel main fragment load"),b.loader.abort()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var L=this.hls;r&&L.trigger(M.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),L.trigger(M.Events.AUDIO_TRACK_SWITCHED,{id:f})}},d.onAudioTrackSwitched=function(n,t){var r=t.id,c=!!this.hls.audioTracks[r].url;if(c){var f=this.videoBuffer;f&&this.mediaBuffer!==f&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=f)}this.altAudio=c,this.tick()},d.onBufferCreated=function(n,t){var r=t.tracks,c,f,b=!1;for(var L in r){var D=r[L];if(D.id==="main"){if(f=L,c=D,L==="video"){var F=r[L];F&&(this.videoBuffer=F.buffer)}}else b=!0}b&&c?(this.log("Alternate track found, use "+f+".buffered to schedule main fragment loading"),this.mediaBuffer=c.buffer):this.mediaBuffer=this.media},d.onFragBuffered=function(n,t){var r=t.frag,c=t.part;if(r&&r.type!==S.PlaylistLevelType.MAIN)return;if(this.fragContextChanged(r)){this.warn("Fragment "+r.sn+(c?" p: "+c.index:"")+" of level "+r.level+" finished buffering, but was aborted. state: "+this.state),this.state===C.State.PARSED&&(this.state=C.State.IDLE);return}var f=c?c.stats:r.stats;this.fragLastKbps=Math.round(8*f.total/(f.buffering.end-f.loading.first)),r.sn!=="initSegment"&&(this.fragPrevious=r),this.fragBufferedComplete(r,c)},d.onError=function(n,t){switch(t.details){case y.ErrorDetails.FRAG_LOAD_ERROR:case y.ErrorDetails.FRAG_LOAD_TIMEOUT:case y.ErrorDetails.KEY_LOAD_ERROR:case y.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(S.PlaylistLevelType.MAIN,t);break;case y.ErrorDetails.LEVEL_LOAD_ERROR:case y.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==C.State.ERROR&&(t.fatal?(this.warn(""+t.details),this.state=C.State.ERROR):!t.levelRetry&&this.state===C.State.WAITING_LEVEL&&(this.state=C.State.IDLE));break;case y.ErrorDetails.BUFFER_FULL_ERROR:if(t.parent==="main"&&(this.state===C.State.PARSING||this.state===C.State.PARSED)){var r=!0,c=this.getFwdBufferInfo(this.media,S.PlaylistLevelType.MAIN);c&&c.len>.5&&(r=!this.reduceMaxBufferLength(c.len)),r&&(this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch()),this.resetLoadingState()}break;default:break}},d.checkBuffer=function(){var n=this.media,t=this.gapController;if(!n||!t||!n.readyState)return;var r=w.BufferHelper.getBuffered(n);!this.loadedmetadata&&r.length?(this.loadedmetadata=!0,this.seekToStartPos()):t.poll(this.lastCurrentTime),this.lastCurrentTime=n.currentTime},d.onFragLoadEmergencyAborted=function(){this.state=C.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},d.onBufferFlushed=function(n,t){var r=t.type;if(r!==g.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var c=(r===g.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(c,r,S.PlaylistLevelType.MAIN)}},d.onLevelsUpdated=function(n,t){this.levels=t.levels},d.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},d.seekToStartPos=function(){var n=this.media,t=n.currentTime,r=this.startPosition;if(r>=0&&t<r){if(n.seeking){p.logger.log("could not seek to "+r+", already seeking at "+t);return}var c=w.BufferHelper.getBuffered(n),f=c.length?c.start(0):0,b=f-r;b>0&&(b<this.config.maxBufferHole||b<this.config.maxFragLookUpTolerance)&&(p.logger.log("adjusting start position by "+b+" to match buffer start"),r+=b,this.startPosition=r),this.log("seek to target start position "+r+" from current time "+t),n.currentTime=r}},d._getAudioCodec=function(n){var t=this.config.defaultAudioCodec||n.audioCodec;return this.audioCodecSwap&&t&&(this.log("Swapping audio codec"),t.indexOf("mp4a.40.5")!==-1?t="mp4a.40.2":t="mp4a.40.5"),t},d._loadBitrateTestFrag=function(n){var t=this;this._doFragLoad(n).then(function(r){var c=t.hls;if(!r||c.nextLoadLevel||t.fragContextChanged(n))return;t.fragLoadError=0,t.state=C.State.IDLE,t.startFragRequested=!1,t.bitrateTest=!1;var f=n.stats;f.parsing.start=f.parsing.end=f.buffering.start=f.buffering.end=self.performance.now(),c.trigger(M.Events.FRAG_LOADED,r)})},d._handleTransmuxComplete=function(n){var t,r="main",c=this.hls,f=n.remuxResult,b=n.chunkMeta,L=this.getCurrentContext(b);if(!L){this.warn("The loading context changed while buffering fragment "+b.sn+" of level "+b.level+". This chunk will not be buffered."),this.resetLiveStartWhenNotLoaded(b.level);return}var D=L.frag,F=L.part,N=L.level,K=f.video,V=f.text,z=f.id3,$=f.initSegment,q=this.altAudio?void 0:f.audio;if(this.fragContextChanged(D))return;if(this.state=C.State.PARSING,$){$.tracks&&(this._bufferInitSegment(N,$.tracks,D,b),c.trigger(M.Events.FRAG_PARSING_INIT_SEGMENT,{frag:D,id:r,tracks:$.tracks}));var J=$.initPTS,he=$.timescale;Object(I.isFiniteNumber)(J)&&(this.initPTS[D.cc]=J,c.trigger(M.Events.INIT_PTS_FOUND,{frag:D,id:r,initPTS:J,timescale:he}))}if(K&&f.independent!==!1){if(N.details){var te=K.startPTS,le=K.endPTS,re=K.startDTS,ae=K.endDTS;if(F)F.elementaryStreams[K.type]={startPTS:te,endPTS:le,startDTS:re,endDTS:ae};else if(K.firstKeyFrame&&K.independent&&(this.couldBacktrack=!0),K.dropped&&K.independent){var X=this.getLoadPosition()+this.config.maxBufferHole;if(X<te){this.backtrack(D);return}D.setElementaryStreamInfo(K.type,D.start,le,D.start,ae,!0)}D.setElementaryStreamInfo(K.type,te,le,re,ae),this.bufferFragmentData(K,D,F,b)}}else if(f.independent===!1){this.backtrack(D);return}if(q){var Z=q.startPTS,ie=q.endPTS,Re=q.startDTS,me=q.endDTS;F&&(F.elementaryStreams[g.ElementaryStreamTypes.AUDIO]={startPTS:Z,endPTS:ie,startDTS:Re,endDTS:me}),D.setElementaryStreamInfo(g.ElementaryStreamTypes.AUDIO,Z,ie,Re,me),this.bufferFragmentData(q,D,F,b)}if(z!=null&&(t=z.samples)!==null&&t!==void 0&&t.length){var pe={frag:D,id:r,samples:z.samples};c.trigger(M.Events.FRAG_PARSING_METADATA,pe)}if(V){var De={frag:D,id:r,samples:V.samples};c.trigger(M.Events.FRAG_PARSING_USERDATA,De)}},d._bufferInitSegment=function(n,t,r,c){var f=this;if(this.state!==C.State.PARSING)return;this.audioOnly=!!t.audio&&!t.video,this.altAudio&&!this.audioOnly&&delete t.audio;var b=t.audio,L=t.video,D=t.audiovideo;if(b){var F=n.audioCodec,N=navigator.userAgent.toLowerCase();this.audioCodecSwitch&&(F&&(F.indexOf("mp4a.40.5")!==-1?F="mp4a.40.2":F="mp4a.40.5"),b.metadata.channelCount!==1&&N.indexOf("firefox")===-1&&(F="mp4a.40.5")),N.indexOf("android")!==-1&&b.container!=="audio/mpeg"&&(F="mp4a.40.2",this.log("Android: force audio codec to "+F)),n.audioCodec&&n.audioCodec!==F&&this.log('Swapping manifest audio codec "'+n.audioCodec+'" for "'+F+'"'),b.levelCodec=F,b.id="main",this.log("Init audio buffer, container:"+b.container+", codecs[selected/level/parsed]=["+(F||"")+"/"+(n.audioCodec||"")+"/"+b.codec+"]")}L&&(L.levelCodec=n.videoCodec,L.id="main",this.log("Init video buffer, container:"+L.container+", codecs[level/parsed]=["+(n.videoCodec||"")+"/"+L.codec+"]")),D&&this.log("Init audiovideo buffer, container:"+D.container+", codecs[level/parsed]=["+(n.attrs.CODECS||"")+"/"+D.codec+"]"),this.hls.trigger(M.Events.BUFFER_CODECS,t),Object.keys(t).forEach(function(K){var V=t[K],z=V.initSegment;z!=null&&z.byteLength&&f.hls.trigger(M.Events.BUFFER_APPENDING,{type:K,data:z,frag:r,part:null,chunkMeta:c,parent:r.type})}),this.tick()},d.backtrack=function(n){this.couldBacktrack=!0,this.resetTransmuxer(),this.flushBufferGap(n);var t=this.fragmentTracker.backtrack(n);this.fragPrevious=null,this.nextLoadPosition=n.start,t?this.resetFragmentLoading(n):this.state=C.State.BACKTRACKING},d.checkFragmentChanged=function(){var n=this.media,t=null;if(n&&n.readyState>1&&n.seeking===!1){var r=n.currentTime;if(w.BufferHelper.isBuffered(n,r)?t=this.getAppendedFrag(r):w.BufferHelper.isBuffered(n,r+.1)&&(t=this.getAppendedFrag(r+.1)),t){var c=this.fragPlaying,f=t.level;(!c||t.sn!==c.sn||c.level!==f||t.urlId!==c.urlId)&&(this.hls.trigger(M.Events.FRAG_CHANGED,{frag:t}),(!c||c.level!==f)&&this.hls.trigger(M.Events.LEVEL_SWITCHED,{level:f}),this.fragPlaying=t)}}},e(m,[{key:"nextLevel",get:function(){var n=this.nextBufferedFrag;return n?n.level:-1}},{key:"currentLevel",get:function(){var n=this.media;if(n){var t=this.getAppendedFrag(n.currentTime);if(t)return t.level}return-1}},{key:"nextBufferedFrag",get:function(){var n=this.media;if(n){var t=this.getAppendedFrag(n.currentTime);return this.followingBufferedFrag(t)}else return null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}]),m}(C.default)},"./src/controller/subtitle-stream-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"SubtitleStreamController",function(){return a});var I=E("./src/events.ts"),C=E("./src/utils/logger.ts"),A=E("./src/utils/buffer-helper.ts"),M=E("./src/controller/fragment-finders.ts"),w=E("./src/utils/discontinuities.ts"),R=E("./src/controller/level-helper.ts"),S=E("./src/controller/fragment-tracker.ts"),g=E("./src/controller/base-stream-controller.ts"),x=E("./src/types/loader.ts"),T=E("./src/types/level.ts");function v(i,h){for(var l=0;l<h.length;l++){var u=h[l];u.enumerable=u.enumerable||!1,u.configurable=!0,"value"in u&&(u.writable=!0),Object.defineProperty(i,u.key,u)}}function y(i,h,l){return h&&v(i.prototype,h),l&&v(i,l),i}function p(i,h){i.prototype=Object.create(h.prototype),i.prototype.constructor=i,s(i,h)}function s(i,h){return s=Object.setPrototypeOf||function(u,m){return u.__proto__=m,u},s(i,h)}var e=500,a=function(i){p(h,i);function h(u,m){var d;return d=i.call(this,u,m,"[subtitle-stream-controller]")||this,d.levels=[],d.currentTrackId=-1,d.tracksBuffered=[],d.mainDetails=null,d._registerListeners(),d}var l=h.prototype;return l.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},l._registerListeners=function(){var m=this.hls;m.on(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),m.on(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),m.on(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),m.on(I.Events.LEVEL_LOADED,this.onLevelLoaded,this),m.on(I.Events.ERROR,this.onError,this),m.on(I.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),m.on(I.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),m.on(I.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),m.on(I.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),m.on(I.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},l._unregisterListeners=function(){var m=this.hls;m.off(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),m.off(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),m.off(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),m.off(I.Events.LEVEL_LOADED,this.onLevelLoaded,this),m.off(I.Events.ERROR,this.onError,this),m.off(I.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),m.off(I.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),m.off(I.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),m.off(I.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),m.off(I.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},l.startLoad=function(){this.stopLoad(),this.state=g.State.IDLE,this.setInterval(e),this.tick()},l.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments()},l.onLevelLoaded=function(m,d){this.mainDetails=d.details},l.onSubtitleFragProcessed=function(m,d){var o=d.frag,n=d.success;if(this.fragPrevious=o,this.state=g.State.IDLE,!n)return;var t=this.tracksBuffered[this.currentTrackId];if(!t)return;for(var r,c=o.start,f=0;f<t.length;f++)if(c>=t[f].start&&c<=t[f].end){r=t[f];break}var b=o.start+o.duration;r?r.end=b:(r={start:c,end:b},t.push(r)),this.fragmentTracker.fragBuffered(o)},l.onBufferFlushing=function(m,d){var o=d.startOffset,n=d.endOffset;if(o===0&&n!==Number.POSITIVE_INFINITY){var t=this.currentTrackId,r=this.levels;if(!r.length||!r[t]||!r[t].details)return;var c=r[t].details,f=c.targetduration,b=n-f;if(b<=0)return;d.endOffsetSubtitles=Math.max(0,b),this.tracksBuffered.forEach(function(L){for(var D=0;D<L.length;){if(L[D].end<=b){L.shift();continue}else if(L[D].start<b)L[D].start=b;else break;D++}}),this.fragmentTracker.removeFragmentsInRange(o,b,x.PlaylistLevelType.SUBTITLE)}},l.onError=function(m,d){var o,n=d.frag;if(!n||n.type!==x.PlaylistLevelType.SUBTITLE)return;(o=this.fragCurrent)!==null&&o!==void 0&&o.loader&&this.fragCurrent.loader.abort(),this.state=g.State.IDLE},l.onSubtitleTracksUpdated=function(m,d){var o=this,n=d.subtitleTracks;this.tracksBuffered=[],this.levels=n.map(function(t){return new T.Level(t)}),this.fragmentTracker.removeAllFragments(),this.fragPrevious=null,this.levels.forEach(function(t){o.tracksBuffered[t.id]=[]}),this.mediaBuffer=null},l.onSubtitleTrackSwitch=function(m,d){if(this.currentTrackId=d.id,!this.levels.length||this.currentTrackId===-1){this.clearInterval();return}var o=this.levels[this.currentTrackId];o!=null&&o.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,o&&this.setInterval(e)},l.onSubtitleTrackLoaded=function(m,d){var o,n=d.details,t=d.id,r=this.currentTrackId,c=this.levels;if(!c.length)return;var f=c[r];if(t>=c.length||t!==r||!f)return;if(this.mediaBuffer=this.mediaBufferTimeRanges,n.live||(o=f.details)!==null&&o!==void 0&&o.live){var b=this.mainDetails;if(n.deltaUpdateFailed||!b)return;var L=b.fragments[0];if(!f.details)n.hasProgramDateTime&&b.hasProgramDateTime?Object(w.alignMediaPlaylistByPDT)(n,b):L&&Object(R.addSliding)(n,L.start);else{var D=this.alignPlaylists(n,f.details);D===0&&L&&Object(R.addSliding)(n,L.start)}}if(f.details=n,this.levelLastLoaded=t,this.tick(),n.live&&!this.fragCurrent&&this.media&&this.state===g.State.IDLE){var F=Object(M.findFragmentByPTS)(null,n.fragments,this.media.currentTime,0);F||(this.warn("Subtitle playlist not aligned with playback"),f.details=void 0)}},l._handleFragmentLoadComplete=function(m){var d=m.frag,o=m.payload,n=d.decryptdata,t=this.hls;if(this.fragContextChanged(d))return;if(o&&o.byteLength>0&&n&&n.key&&n.iv&&n.method==="AES-128"){var r=performance.now();this.decrypter.webCryptoDecrypt(new Uint8Array(o),n.key.buffer,n.iv.buffer).then(function(c){var f=performance.now();t.trigger(I.Events.FRAG_DECRYPTED,{frag:d,payload:c,stats:{tstart:r,tdecrypt:f}})})}},l.doTick=function(){if(!this.media){this.state=g.State.IDLE;return}if(this.state===g.State.IDLE){var m,d=this.currentTrackId,o=this.levels;if(!o.length||!o[d]||!o[d].details)return;var n=o[d].details,t=n.targetduration,r=this.config,c=this.media,f=A.BufferHelper.bufferedInfo(this.mediaBufferTimeRanges,c.currentTime-t,r.maxBufferHole),b=f.end,L=f.len,D=this.getMaxBufferLength()+t;if(L>D)return;console.assert(n,"Subtitle track details are defined on idle subtitle stream controller tick");var F=n.fragments,N=F.length,K=n.edge,V,z=this.fragPrevious;if(b<K){var $=r.maxFragLookUpTolerance;z&&n.hasProgramDateTime&&(V=Object(M.findFragmentByPDT)(F,z.endProgramDateTime,$)),V||(V=Object(M.findFragmentByPTS)(z,F,b,$),!V&&z&&z.start<F[0].start&&(V=F[0]))}else V=F[N-1];(m=V)!==null&&m!==void 0&&m.encrypted?(C.logger.log("Loading key for "+V.sn),this.state=g.State.KEY_LOADING,this.hls.trigger(I.Events.KEY_LOADING,{frag:V})):V&&this.fragmentTracker.getState(V)===S.FragmentState.NOT_LOADED&&this.loadFragment(V,n,b)}},l.loadFragment=function(m,d,o){this.fragCurrent=m,i.prototype.loadFragment.call(this,m,d,o)},y(h,[{key:"mediaBufferTimeRanges",get:function(){return this.tracksBuffered[this.currentTrackId]||[]}}]),h}(g.default)},"./src/controller/subtitle-track-controller.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/events.ts"),C=E("./src/utils/texttrack-utils.ts"),A=E("./src/controller/base-playlist-controller.ts"),M=E("./src/types/loader.ts");function w(v,y){for(var p=0;p<y.length;p++){var s=y[p];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(v,s.key,s)}}function R(v,y,p){return y&&w(v.prototype,y),p&&w(v,p),v}function S(v,y){v.prototype=Object.create(y.prototype),v.prototype.constructor=v,g(v,y)}function g(v,y){return g=Object.setPrototypeOf||function(s,e){return s.__proto__=e,s},g(v,y)}var x=function(v){S(y,v);function y(s){var e;return e=v.call(this,s,"[subtitle-track-controller]")||this,e.media=null,e.tracks=[],e.groupId=null,e.tracksInGroup=[],e.trackId=-1,e.selectDefaultTrack=!0,e.queuedDefaultTrack=-1,e.trackChangeListener=function(){return e.onTextTracksChanged()},e.asyncPollTrackChange=function(){return e.pollTrackChange(0)},e.useTextTrackPolling=!1,e.subtitlePollingInterval=-1,e.subtitleDisplay=!0,e.registerListeners(),e}var p=y.prototype;return p.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.trackChangeListener=this.asyncPollTrackChange=null,v.prototype.destroy.call(this)},p.registerListeners=function(){var e=this.hls;e.on(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(I.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(I.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(I.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.on(I.Events.ERROR,this.onError,this)},p.unregisterListeners=function(){var e=this.hls;e.off(I.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(I.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(I.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(I.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(I.Events.LEVEL_LOADING,this.onLevelLoading,this),e.off(I.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(I.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.off(I.Events.ERROR,this.onError,this)},p.onMediaAttached=function(e,a){if(this.media=a.media,!this.media)return;this.queuedDefaultTrack>-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange)},p.pollTrackChange=function(e){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,e)},p.onMediaDetaching=function(){if(!this.media)return;self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||this.media.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId);var e=T(this.media.textTracks);e.forEach(function(a){Object(C.clearCurrentCues)(a)}),this.subtitleTrack=-1,this.media=null},p.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},p.onManifestParsed=function(e,a){this.tracks=a.subtitleTracks},p.onSubtitleTrackLoaded=function(e,a){var i=a.id,h=a.details,l=this.trackId,u=this.tracksInGroup[l];if(!u){this.warn("Invalid subtitle track id "+i);return}var m=u.details;u.details=a.details,this.log("subtitle track "+i+" loaded ["+h.startSN+"-"+h.endSN+"]"),i===this.trackId&&(this.retryCount=0,this.playlistLoaded(i,a,m))},p.onLevelLoading=function(e,a){this.switchLevel(a.level)},p.onLevelSwitching=function(e,a){this.switchLevel(a.level)},p.switchLevel=function(e){var a=this.hls.levels[e];if(!(a!=null&&a.textGroupIds))return;var i=a.textGroupIds[a.urlId];if(this.groupId!==i){var h=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,l=this.tracks.filter(function(d){return!i||d.groupId===i});this.tracksInGroup=l;var u=this.findTrackId(h==null?void 0:h.name)||this.findTrackId();this.groupId=i;var m={subtitleTracks:l};this.log("Updating subtitle tracks, "+l.length+' track(s) found in "'+i+'" group-id'),this.hls.trigger(I.Events.SUBTITLE_TRACKS_UPDATED,m),u!==-1&&this.setSubtitleTrack(u,h)}},p.findTrackId=function(e){for(var a=this.tracksInGroup,i=0;i<a.length;i++){var h=a[i];if((!this.selectDefaultTrack||h.default)&&(!e||e===h.name))return h.id}return-1},p.onError=function(e,a){if(v.prototype.onError.call(this,e,a),a.fatal||!a.context)return;a.context.type===M.PlaylistContextType.SUBTITLE_TRACK&&a.context.id===this.trackId&&a.context.groupId===this.groupId&&this.retryLoadingOrFail(a)},p.loadPlaylist=function(e){var a=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(a)){var i=a.id,h=a.groupId,l=a.url;if(e)try{l=e.addDirectives(l)}catch(u){this.warn("Could not construct new URL with HLS Delivery Directives: "+u)}this.log("Loading subtitle playlist for id "+i),this.hls.trigger(I.Events.SUBTITLE_TRACK_LOADING,{url:l,id:i,groupId:h,deliveryDirectives:e||null})}},p.toggleTrackModes=function(e){var a=this,i=this.media,h=this.subtitleDisplay,l=this.trackId;if(!i)return;var u=T(i.textTracks),m=u.filter(function(n){return n.groupId===a.groupId});if(e===-1)[].slice.call(u).forEach(function(n){n.mode="disabled"});else{var d=m[l];d&&(d.mode="disabled")}var o=m[e];o&&(o.mode=h?"showing":"hidden")},p.setSubtitleTrack=function(e,a){var i,h=this.tracksInGroup;if(!this.media){this.queuedDefaultTrack=e;return}if(this.trackId!==e&&this.toggleTrackModes(e),this.trackId===e&&(e===-1||(i=h[e])!==null&&i!==void 0&&i.details)||e<-1||e>=h.length)return;this.clearTimer();var l=h[e];if(this.log("Switching to subtitle track "+e),this.trackId=e,l){var u=l.id,m=l.groupId,d=m===void 0?"":m,o=l.name,n=l.type,t=l.url;this.hls.trigger(I.Events.SUBTITLE_TRACK_SWITCH,{id:u,groupId:d,name:o,type:n,url:t});var r=this.switchParams(l.url,a==null?void 0:a.details);this.loadPlaylist(r)}else this.hls.trigger(I.Events.SUBTITLE_TRACK_SWITCH,{id:e})},p.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),!this.media||!this.hls.config.renderTextTracksNatively)return;for(var e=-1,a=T(this.media.textTracks),i=0;i<a.length;i++)if(a[i].mode==="hidden")e=i;else if(a[i].mode==="showing"){e=i;break}this.subtitleTrack!==e&&(this.subtitleTrack=e)},R(y,[{key:"subtitleTracks",get:function(){return this.tracksInGroup}},{key:"subtitleTrack",get:function(){return this.trackId},set:function(e){this.selectDefaultTrack=!1;var a=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0;this.setSubtitleTrack(e,a)}}]),y}(A.default);function T(v){for(var y=[],p=0;p<v.length;p++){var s=v[p];s.kind==="subtitles"&&s.label&&y.push(v[p])}return y}k.default=x},"./src/controller/timeline-controller.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"TimelineController",function(){return T});var I=E("./src/polyfills/number.ts"),C=E("./src/events.ts"),A=E("./src/utils/cea-608-parser.ts"),M=E("./src/utils/output-filter.ts"),w=E("./src/utils/webvtt-parser.ts"),R=E("./src/utils/texttrack-utils.ts"),S=E("./src/utils/imsc1-ttml-parser.ts"),g=E("./src/types/loader.ts"),x=E("./src/utils/logger.ts"),T=function(){function s(a){if(this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.timescale=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=p(),this.captionsProperties=void 0,this.hls=a,this.config=a.config,this.Cues=a.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},this.config.enableCEA708Captions){var i=new M.default(this,"textTrack1"),h=new M.default(this,"textTrack2"),l=new M.default(this,"textTrack3"),u=new M.default(this,"textTrack4");this.cea608Parser1=new A.default(1,i,h),this.cea608Parser2=new A.default(3,l,u)}a.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),a.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),a.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),a.on(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this),a.on(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),a.on(C.Events.FRAG_LOADING,this.onFragLoading,this),a.on(C.Events.FRAG_LOADED,this.onFragLoaded,this),a.on(C.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),a.on(C.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),a.on(C.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),a.on(C.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),a.on(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)}var e=s.prototype;return e.destroy=function(){var i=this.hls;i.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),i.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),i.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),i.off(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this),i.off(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),i.off(C.Events.FRAG_LOADING,this.onFragLoading,this),i.off(C.Events.FRAG_LOADED,this.onFragLoaded,this),i.off(C.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),i.off(C.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),i.off(C.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),i.off(C.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),i.off(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null},e.addCues=function(i,h,l,u,m){for(var d=!1,o=m.length;o--;){var n=m[o],t=y(n[0],n[1],h,l);if(t>=0&&(n[0]=Math.min(n[0],h),n[1]=Math.max(n[1],l),d=!0,t/(l-h)>.5))return}if(d||m.push([h,l]),this.config.renderTextTracksNatively){var r=this.captionsTracks[i];this.Cues.newCue(r,h,l,u)}else{var c=this.Cues.newCue(null,h,l,u);this.hls.trigger(C.Events.CUES_PARSED,{type:"captions",cues:c,track:i})}},e.onInitPtsFound=function(i,h){var l=this,u=h.frag,m=h.id,d=h.initPTS,o=h.timescale,n=this.unparsedVttFrags;m==="main"&&(this.initPTS[u.cc]=d,this.timescale[u.cc]=o),n.length&&(this.unparsedVttFrags=[],n.forEach(function(t){l.onFragLoaded(C.Events.FRAG_LOADED,t)}))},e.getExistingTrack=function(i){var h=this.media;if(h)for(var l=0;l<h.textTracks.length;l++){var u=h.textTracks[l];if(u[i])return u}return null},e.createCaptionsTrack=function(i){this.config.renderTextTracksNatively?this.createNativeTrack(i):this.createNonNativeTrack(i)},e.createNativeTrack=function(i){if(this.captionsTracks[i])return;var h=this.captionsProperties,l=this.captionsTracks,u=this.media,m=h[i],d=m.label,o=m.languageCode,n=this.getExistingTrack(i);if(n)l[i]=n,Object(R.clearCurrentCues)(l[i]),Object(R.sendAddTrackEvent)(l[i],u);else{var t=this.createTextTrack("captions",d,o);t&&(t[i]=!0,l[i]=t)}},e.createNonNativeTrack=function(i){if(this.nonNativeCaptionsTracks[i])return;var h=this.captionsProperties[i];if(!h)return;var l=h.label,u={_id:i,label:l,kind:"captions",default:h.media?!!h.media.default:!1,closedCaptions:h.media};this.nonNativeCaptionsTracks[i]=u,this.hls.trigger(C.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[u]})},e.createTextTrack=function(i,h,l){var u=this.media;return u?u.addTextTrack(i,h,l):void 0},e.onMediaAttaching=function(i,h){this.media=h.media,this._cleanTracks()},e.onMediaDetaching=function(){var i=this.captionsTracks;Object.keys(i).forEach(function(h){Object(R.clearCurrentCues)(i[h]),delete i[h]}),this.nonNativeCaptionsTracks={}},e.onManifestLoading=function(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=p(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=this.unparsedVttFrags||[],this.initPTS=[],this.timescale=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())},e._cleanTracks=function(){var i=this.media;if(!i)return;var h=i.textTracks;if(h)for(var l=0;l<h.length;l++)Object(R.clearCurrentCues)(h[l])},e.onSubtitleTracksUpdated=function(i,h){var l=this;this.textTracks=[];var u=h.subtitleTracks||[],m=u.some(function(t){return t.textCodec===S.IMSC1_CODEC});if(this.config.enableWebVTT||m&&this.config.enableIMSC1){var d=this.tracks&&u&&this.tracks.length===u.length;if(this.tracks=u||[],this.config.renderTextTracksNatively){var o=this.media?this.media.textTracks:[];this.tracks.forEach(function(t,r){var c;if(r<o.length){for(var f=null,b=0;b<o.length;b++)if(v(o[b],t)){f=o[b];break}f&&(c=f)}c?Object(R.clearCurrentCues)(c):(c=l.createTextTrack("subtitles",t.name,t.lang),c&&(c.mode="disabled")),c&&(c.groupId=t.groupId,l.textTracks.push(c))})}else if(!d&&this.tracks&&this.tracks.length){var n=this.tracks.map(function(t){return{label:t.name,kind:t.type.toLowerCase(),default:t.default,subtitleTrack:t}});this.hls.trigger(C.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:n})}}},e.onManifestLoaded=function(i,h){var l=this;this.config.enableCEA708Captions&&h.captions&&h.captions.forEach(function(u){var m=/(?:CC|SERVICE)([1-4])/.exec(u.instreamId);if(!m)return;var d="textTrack"+m[1],o=l.captionsProperties[d];if(!o)return;o.label=u.name,u.lang&&(o.languageCode=u.lang),o.media=u})},e.onFragLoading=function(i,h){var l=this.cea608Parser1,u=this.cea608Parser2,m=this.lastSn,d=this.lastPartIndex;if(!this.enabled||!(l&&u))return;if(h.frag.type===g.PlaylistLevelType.MAIN){var o,n,t=h.frag.sn,r=(o=h==null||((n=h.part)===null||n===void 0)?void 0:n.index)!=null?o:-1;t===m+1||t===m&&r===d+1||(l.reset(),u.reset()),this.lastSn=t,this.lastPartIndex=r}},e.onFragLoaded=function(i,h){var l=h.frag,u=h.payload,m=this.initPTS,d=this.unparsedVttFrags;if(l.type===g.PlaylistLevelType.SUBTITLE)if(u.byteLength){if(!Object(I.isFiniteNumber)(m[l.cc])){d.push(h),m.length&&this.hls.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:l,error:new Error("Missing initial subtitle PTS")});return}var o=l.decryptdata;if(o==null||o.key==null||o.method!=="AES-128"){var n=this.tracks[l.level],t=this.vttCCs;t[l.cc]||(t[l.cc]={start:l.start,prevCC:this.prevCC,new:!0},this.prevCC=l.cc),n&&n.textCodec===S.IMSC1_CODEC?this._parseIMSC1(l,u):this._parseVTTs(l,u,t)}}else this.hls.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:l,error:new Error("Empty subtitle payload")})},e._parseIMSC1=function(i,h){var l=this,u=this.hls;Object(S.parseIMSC1)(h,this.initPTS[i.cc],this.timescale[i.cc],function(m){l._appendCues(m,i.level),u.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:i})},function(m){x.logger.log("Failed to parse IMSC1: "+m),u.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:m})})},e._parseVTTs=function(i,h,l){var u=this,m=this.hls;Object(w.parseWebVTT)(h,this.initPTS[i.cc],this.timescale[i.cc],l,i.cc,i.start,function(d){u._appendCues(d,i.level),m.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:i})},function(d){u._fallbackToIMSC1(i,h),x.logger.log("Failed to parse VTT cue: "+d),m.trigger(C.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:d})})},e._fallbackToIMSC1=function(i,h){var l=this,u=this.tracks[i.level];u.textCodec||Object(S.parseIMSC1)(h,this.initPTS[i.cc],this.timescale[i.cc],function(){u.textCodec=S.IMSC1_CODEC,l._parseIMSC1(i,h)},function(){u.textCodec="wvtt"})},e._appendCues=function(i,h){var l=this.hls;if(this.config.renderTextTracksNatively){var u=this.textTracks[h];if(u.mode==="disabled")return;i.forEach(function(o){return Object(R.addCueToTrack)(u,o)})}else{var m=this.tracks[h],d=m.default?"default":"subtitles"+h;l.trigger(C.Events.CUES_PARSED,{type:"subtitles",cues:i,track:d})}},e.onFragDecrypted=function(i,h){var l=h.frag;if(l.type===g.PlaylistLevelType.SUBTITLE){if(!Object(I.isFiniteNumber)(this.initPTS[l.cc])){this.unparsedVttFrags.push(h);return}this.onFragLoaded(C.Events.FRAG_LOADED,h)}},e.onSubtitleTracksCleared=function(){this.tracks=[],this.captionsTracks={}},e.onFragParsingUserdata=function(i,h){var l=this.cea608Parser1,u=this.cea608Parser2;if(!this.enabled||!(l&&u))return;for(var m=0;m<h.samples.length;m++){var d=h.samples[m].bytes;if(d){var o=this.extractCea608Data(d);l.addData(h.samples[m].pts,o[0]),u.addData(h.samples[m].pts,o[1])}}},e.onBufferFlushing=function(i,h){var l=h.startOffset,u=h.endOffset,m=h.endOffsetSubtitles,d=h.type,o=this.media;if(!o||o.currentTime<u)return;if(!d||d==="video"){var n=this.captionsTracks;Object.keys(n).forEach(function(r){return Object(R.removeCuesInRange)(n[r],l,u)})}if(this.config.renderTextTracksNatively&&(l===0&&m!==void 0)){var t=this.textTracks;Object.keys(t).forEach(function(r){return Object(R.removeCuesInRange)(t[r],l,m)})}},e.extractCea608Data=function(i){for(var h=i[0]&31,l=2,u=[[],[]],m=0;m<h;m++){var d=i[l++],o=127&i[l++],n=127&i[l++],t=(4&d)!==0,r=3&d;if(o===0&&n===0)continue;t&&((r===0||r===1)&&(u[r].push(o),u[r].push(n)))}return u},s}();function v(s,e){return s&&s.label===e.name&&!(s.textTrack1||s.textTrack2)}function y(s,e,a,i){return Math.min(e,i)-Math.max(s,a)}function p(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!1}}}},"./src/crypt/aes-crypto.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return I});var I=function(){function C(M,w){this.subtle=void 0,this.aesIV=void 0,this.subtle=M,this.aesIV=w}var A=C.prototype;return A.decrypt=function(w,R){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},R,w)},C}()},"./src/crypt/aes-decryptor.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"removePadding",function(){return C}),E.d(k,"default",function(){return A});var I=E("./src/utils/typed-array.ts");function C(M){var w=M.byteLength,R=w&&new DataView(M.buffer).getUint8(w-1);return R?Object(I.sliceUint8)(M,0,w-R):M}var A=function(){function M(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}var w=M.prototype;return w.uint8ArrayToUint32Array_=function(S){for(var g=new DataView(S),x=new Uint32Array(4),T=0;T<4;T++)x[T]=g.getUint32(T*4);return x},w.initTable=function(){var S=this.sBox,g=this.invSBox,x=this.subMix,T=x[0],v=x[1],y=x[2],p=x[3],s=this.invSubMix,e=s[0],a=s[1],i=s[2],h=s[3],l=new Uint32Array(256),u=0,m=0,d=0;for(d=0;d<256;d++)d<128?l[d]=d<<1:l[d]=d<<1^283;for(d=0;d<256;d++){var o=m^m<<1^m<<2^m<<3^m<<4;o=o>>>8^o&255^99,S[u]=o,g[o]=u;var n=l[u],t=l[n],r=l[t],c=l[o]*257^o*16843008;T[u]=c<<24|c>>>8,v[u]=c<<16|c>>>16,y[u]=c<<8|c>>>24,p[u]=c,c=r*16843009^t*65537^n*257^u*16843008,e[o]=c<<24|c>>>8,a[o]=c<<16|c>>>16,i[o]=c<<8|c>>>24,h[o]=c,u?(u=n^l[l[l[r^n]]],m^=l[l[m]]):u=m=1}},w.expandKey=function(S){for(var g=this.uint8ArrayToUint32Array_(S),x=!0,T=0;T<g.length&&x;)x=g[T]===this.key[T],T++;if(x)return;this.key=g;var v=this.keySize=g.length;if(v!==4&&v!==6&&v!==8)throw new Error("Invalid aes key size="+v);var y=this.ksRows=(v+6+1)*4,p,s,e=this.keySchedule=new Uint32Array(y),a=this.invKeySchedule=new Uint32Array(y),i=this.sBox,h=this.rcon,l=this.invSubMix,u=l[0],m=l[1],d=l[2],o=l[3],n,t;for(p=0;p<y;p++){if(p<v){n=e[p]=g[p];continue}t=n,p%v===0?(t=t<<8|t>>>24,t=i[t>>>24]<<24|i[t>>>16&255]<<16|i[t>>>8&255]<<8|i[t&255],t^=h[p/v|0]<<24):v>6&&p%v===4&&(t=i[t>>>24]<<24|i[t>>>16&255]<<16|i[t>>>8&255]<<8|i[t&255]),e[p]=n=(e[p-v]^t)>>>0}for(s=0;s<y;s++)p=y-s,s&3?t=e[p]:t=e[p-4],s<4||p<=4?a[s]=t:a[s]=u[i[t>>>24]]^m[i[t>>>16&255]]^d[i[t>>>8&255]]^o[i[t&255]],a[s]=a[s]>>>0},w.networkToHostOrderSwap=function(S){return S<<24|(S&65280)<<8|(S&16711680)>>8|S>>>24},w.decrypt=function(S,g,x){for(var T=this.keySize+6,v=this.invKeySchedule,y=this.invSBox,p=this.invSubMix,s=p[0],e=p[1],a=p[2],i=p[3],h=this.uint8ArrayToUint32Array_(x),l=h[0],u=h[1],m=h[2],d=h[3],o=new Int32Array(S),n=new Int32Array(o.length),t,r,c,f,b,L,D,F,N,K,V,z,$,q,J=this.networkToHostOrderSwap;g<o.length;){for(N=J(o[g]),K=J(o[g+1]),V=J(o[g+2]),z=J(o[g+3]),b=N^v[0],L=z^v[1],D=V^v[2],F=K^v[3],$=4,q=1;q<T;q++)t=s[b>>>24]^e[L>>16&255]^a[D>>8&255]^i[F&255]^v[$],r=s[L>>>24]^e[D>>16&255]^a[F>>8&255]^i[b&255]^v[$+1],c=s[D>>>24]^e[F>>16&255]^a[b>>8&255]^i[L&255]^v[$+2],f=s[F>>>24]^e[b>>16&255]^a[L>>8&255]^i[D&255]^v[$+3],b=t,L=r,D=c,F=f,$=$+4;t=y[b>>>24]<<24^y[L>>16&255]<<16^y[D>>8&255]<<8^y[F&255]^v[$],r=y[L>>>24]<<24^y[D>>16&255]<<16^y[F>>8&255]<<8^y[b&255]^v[$+1],c=y[D>>>24]<<24^y[F>>16&255]<<16^y[b>>8&255]<<8^y[L&255]^v[$+2],f=y[F>>>24]<<24^y[b>>16&255]<<16^y[L>>8&255]<<8^y[D&255]^v[$+3],n[g]=J(t^l),n[g+1]=J(f^u),n[g+2]=J(c^m),n[g+3]=J(r^d),l=N,u=K,m=V,d=z,g=g+4}return n.buffer},M}()},"./src/crypt/decrypter.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return g});var I=E("./src/crypt/aes-crypto.ts"),C=E("./src/crypt/fast-aes-key.ts"),A=E("./src/crypt/aes-decryptor.ts"),M=E("./src/utils/logger.ts"),w=E("./src/utils/mp4-tools.ts"),R=E("./src/utils/typed-array.ts"),S=16,g=function(){function x(v,y,p){var s=p===void 0?{}:p,e=s.removePKCS7Padding,a=e===void 0?!0:e;if(this.logEnabled=!0,this.observer=void 0,this.config=void 0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.observer=v,this.config=y,this.removePKCS7Padding=a,a)try{var i=self.crypto;i&&(this.subtle=i.subtle||i.webkitSubtle)}catch(h){}this.subtle===null&&(this.config.enableSoftwareAES=!0)}var T=x.prototype;return T.destroy=function(){this.observer=null},T.isSync=function(){return this.config.enableSoftwareAES},T.flush=function(){var y=this.currentResult;if(!y){this.reset();return}var p=new Uint8Array(y);return this.reset(),this.removePKCS7Padding?Object(A.removePadding)(p):p},T.reset=function(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)},T.decrypt=function(y,p,s,e){if(this.config.enableSoftwareAES){this.softwareDecrypt(new Uint8Array(y),p,s);var a=this.flush();a&&e(a.buffer)}else this.webCryptoDecrypt(new Uint8Array(y),p,s).then(e)},T.softwareDecrypt=function(y,p,s){var e=this.currentIV,a=this.currentResult,i=this.remainderData;this.logOnce("JS AES decrypt"),i&&(y=Object(w.appendUint8Array)(i,y),this.remainderData=null);var h=this.getValidChunk(y);if(!h.length)return null;e&&(s=e);var l=this.softwareDecrypter;l||(l=this.softwareDecrypter=new A.default),l.expandKey(p);var u=a;return this.currentResult=l.decrypt(h.buffer,0,s),this.currentIV=Object(R.sliceUint8)(h,-16).buffer,u||null},T.webCryptoDecrypt=function(y,p,s){var e=this,a=this.subtle;return(this.key!==p||!this.fastAesKey)&&(this.key=p,this.fastAesKey=new C.default(a,p)),this.fastAesKey.expandKey().then(function(i){if(!a)return Promise.reject(new Error("web crypto not initialized"));var h=new I.default(a,s);return h.decrypt(y.buffer,i)}).catch(function(i){return e.onWebCryptoError(i,y,p,s)})},T.onWebCryptoError=function(y,p,s,e){return M.logger.warn("[decrypter.ts]: WebCrypto Error, disable WebCrypto API:",y),this.config.enableSoftwareAES=!0,this.logEnabled=!0,this.softwareDecrypt(p,s,e)},T.getValidChunk=function(y){var p=y,s=y.length-y.length%S;return s!==y.length&&(p=Object(R.sliceUint8)(y,0,s),this.remainderData=Object(R.sliceUint8)(y,s)),p},T.logOnce=function(y){if(!this.logEnabled)return;M.logger.log("[decrypter.ts]: "+y),this.logEnabled=!1},x}()},"./src/crypt/fast-aes-key.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return I});var I=function(){function C(M,w){this.subtle=void 0,this.key=void 0,this.subtle=M,this.key=w}var A=C.prototype;return A.expandKey=function(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])},C}()},"./src/demux/aacdemuxer.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/demux/base-audio-demuxer.ts"),C=E("./src/demux/adts.ts"),A=E("./src/utils/logger.ts"),M=E("./src/demux/id3.ts");function w(g,x){g.prototype=Object.create(x.prototype),g.prototype.constructor=g,R(g,x)}function R(g,x){return R=Object.setPrototypeOf||function(v,y){return v.__proto__=y,v},R(g,x)}var S=function(g){w(x,g);function x(v,y){var p;return p=g.call(this)||this,p.observer=void 0,p.config=void 0,p.observer=v,p.config=y,p}var T=x.prototype;return T.resetInitSegment=function(y,p,s){g.prototype.resetInitSegment.call(this,y,p,s),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,isAAC:!0,samples:[],manifestCodec:y,duration:s,inputTimeScale:9e4,dropped:0}},x.probe=function(y){if(!y)return!1;for(var p=M.getID3Data(y,0)||[],s=p.length,e=y.length;s<e;s++)if(C.probe(y,s))return A.logger.log("ADTS sync word found !"),!0;return!1},T.canParse=function(y,p){return C.canParse(y,p)},T.appendFrame=function(y,p,s){C.initTrackConfig(y,this.observer,p,s,y.manifestCodec);var e=C.appendFrame(y,p,s,this.initPTS,this.frameIndex);if(e&&e.missing===0)return e},x}(I.default);S.minProbeByteLength=9,k.default=S},"./src/demux/adts.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"getAudioConfig",function(){return M}),E.d(k,"isHeaderPattern",function(){return w}),E.d(k,"getHeaderLength",function(){return R}),E.d(k,"getFullFrameLength",function(){return S}),E.d(k,"canGetFrameLength",function(){return g}),E.d(k,"isHeader",function(){return x}),E.d(k,"canParse",function(){return T}),E.d(k,"probe",function(){return v}),E.d(k,"initTrackConfig",function(){return y}),E.d(k,"getFrameDuration",function(){return p}),E.d(k,"parseFrameHeader",function(){return s}),E.d(k,"appendFrame",function(){return e});var I=E("./src/utils/logger.ts"),C=E("./src/errors.ts"),A=E("./src/events.ts");function M(a,i,h,l){var u,m,d,o,n=navigator.userAgent.toLowerCase(),t=l,r=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];u=((i[h+2]&192)>>>6)+1;var c=(i[h+2]&60)>>>2;if(c>r.length-1){a.trigger(A.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+c});return}return d=(i[h+2]&1)<<2,d|=(i[h+3]&192)>>>6,I.logger.log("manifest codec:"+l+", ADTS type:"+u+", samplingIndex:"+c),/firefox/i.test(n)?c>=6?(u=5,o=new Array(4),m=c-3):(u=2,o=new Array(2),m=c):n.indexOf("android")!==-1?(u=2,o=new Array(2),m=c):(u=5,o=new Array(4),l&&(l.indexOf("mp4a.40.29")!==-1||l.indexOf("mp4a.40.5")!==-1)||!l&&c>=6?m=c-3:((l&&l.indexOf("mp4a.40.2")!==-1&&(c>=6&&d===1||/vivaldi/i.test(n))||!l&&d===1)&&(u=2,o=new Array(2)),m=c)),o[0]=u<<3,o[0]|=(c&14)>>1,o[1]|=(c&1)<<7,o[1]|=d<<3,u===5&&(o[1]|=(m&14)>>1,o[2]=(m&1)<<7,o[2]|=2<<2,o[3]=0),{config:o,samplerate:r[c],channelCount:d,codec:"mp4a.40."+u,manifestCodec:t}}function w(a,i){return a[i]===255&&(a[i+1]&246)===240}function R(a,i){return a[i+1]&1?7:9}function S(a,i){return(a[i+3]&3)<<11|a[i+4]<<3|(a[i+5]&224)>>>5}function g(a,i){return i+5<a.length}function x(a,i){return i+1<a.length&&w(a,i)}function T(a,i){return g(a,i)&&w(a,i)&&S(a,i)<=a.length-i}function v(a,i){if(x(a,i)){var h=R(a,i);if(i+h>=a.length)return!1;var l=S(a,i);if(l<=h)return!1;var u=i+l;return u===a.length||x(a,u)}return!1}function y(a,i,h,l,u){if(!a.samplerate){var m=M(i,h,l,u);if(!m)return;a.config=m.config,a.samplerate=m.samplerate,a.channelCount=m.channelCount,a.codec=m.codec,a.manifestCodec=m.manifestCodec,I.logger.log("parsed codec:"+a.codec+", rate:"+m.samplerate+", channels:"+m.channelCount)}}function p(a){return 1024*9e4/a}function s(a,i,h,l,u){var m=R(a,i),d=S(a,i);if(d-=m,d>0){var o=h+l*u;return{headerLength:m,frameLength:d,stamp:o}}}function e(a,i,h,l,u){var m=p(a.samplerate),d=s(i,h,l,u,m);if(d){var o=d.frameLength,n=d.headerLength,t=d.stamp,r=n+o,c=Math.max(0,h+r-i.length),f;c?(f=new Uint8Array(r-n),f.set(i.subarray(h+n,i.length),0)):f=i.subarray(h+n,h+r);var b={unit:f,pts:t};return c||a.samples.push(b),{sample:b,length:r,missing:c}}}},"./src/demux/base-audio-demuxer.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"initPTSFn",function(){return S});var I=E("./src/polyfills/number.ts"),C=E("./src/demux/id3.ts"),A=E("./src/demux/dummy-demuxed-track.ts"),M=E("./src/utils/mp4-tools.ts"),w=E("./src/utils/typed-array.ts"),R=function(){function g(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.initPTS=null}var x=g.prototype;return x.resetInitSegment=function(v,y,p){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},x.resetTimeStamp=function(){},x.resetContiguity=function(){},x.canParse=function(v,y){return!1},x.appendFrame=function(v,y,p){},x.demux=function(v,y){this.cachedData&&(v=Object(M.appendUint8Array)(this.cachedData,v),this.cachedData=null);var p=C.getID3Data(v,0),s=p?p.length:0,e,a,i=this._audioTrack,h=this._id3Track,l=p?C.getTimeStamp(p):void 0,u=v.length;for((this.frameIndex===0||this.initPTS===null)&&(this.initPTS=S(l,y)),p&&p.length>0&&h.samples.push({pts:this.initPTS,dts:this.initPTS,data:p}),a=this.initPTS;s<u;){if(this.canParse(v,s)){var m=this.appendFrame(i,v,s);m?(this.frameIndex++,a=m.sample.pts,s+=m.length,e=s):s=u}else C.canParse(v,s)?(p=C.getID3Data(v,s),h.samples.push({pts:a,dts:a,data:p}),s+=p.length,e=s):s++;if(s===u&&e!==u){var d=Object(w.sliceUint8)(v,e);this.cachedData?this.cachedData=Object(M.appendUint8Array)(this.cachedData,d):this.cachedData=d}}return{audioTrack:i,avcTrack:Object(A.dummyTrack)(),id3Track:h,textTrack:Object(A.dummyTrack)()}},x.demuxSampleAes=function(v,y,p){return Promise.reject(new Error("["+this+"] This demuxer does not support Sample-AES decryption"))},x.flush=function(v){var y=this.cachedData;return y&&(this.cachedData=null,this.demux(y,0)),this.frameIndex=0,{audioTrack:this._audioTrack,avcTrack:Object(A.dummyTrack)(),id3Track:this._id3Track,textTrack:Object(A.dummyTrack)()}},x.destroy=function(){},g}(),S=function(x,T){return Object(I.isFiniteNumber)(x)?x*90:T*9e4};k.default=R},"./src/demux/chunk-cache.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return I});var I=function(){function A(){this.chunks=[],this.dataLength=0}var M=A.prototype;return M.push=function(R){this.chunks.push(R),this.dataLength+=R.length},M.flush=function(){var R=this.chunks,S=this.dataLength,g;if(R.length)R.length===1?g=R[0]:g=C(R,S);else return new Uint8Array(0);return this.reset(),g},M.reset=function(){this.chunks.length=0,this.dataLength=0},A}();function C(A,M){for(var w=new Uint8Array(M),R=0,S=0;S<A.length;S++){var g=A[S];w.set(g,R),R+=g.length}return w}},"./src/demux/dummy-demuxed-track.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"dummyTrack",function(){return I});function I(){return{type:"",id:-1,pid:-1,inputTimeScale:9e4,sequenceNumber:-1,samples:[],dropped:0}}},"./src/demux/exp-golomb.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/utils/logger.ts"),C=function(){function A(w){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=w,this.bytesAvailable=w.byteLength,this.word=0,this.bitsAvailable=0}var M=A.prototype;return M.loadWord=function(){var R=this.data,S=this.bytesAvailable,g=R.byteLength-S,x=new Uint8Array(4),T=Math.min(4,S);if(T===0)throw new Error("no bytes available");x.set(R.subarray(g,g+T)),this.word=new DataView(x.buffer).getUint32(0),this.bitsAvailable=T*8,this.bytesAvailable-=T},M.skipBits=function(R){var S;this.bitsAvailable>R?(this.word<<=R,this.bitsAvailable-=R):(R-=this.bitsAvailable,S=R>>3,R-=S>>3,this.bytesAvailable-=S,this.loadWord(),this.word<<=R,this.bitsAvailable-=R)},M.readBits=function(R){var S=Math.min(this.bitsAvailable,R),g=this.word>>>32-S;return R>32&&I.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=S,this.bitsAvailable>0?this.word<<=S:this.bytesAvailable>0&&this.loadWord(),S=R-S,S>0&&this.bitsAvailable?g<<S|this.readBits(S):g},M.skipLZ=function(){var R;for(R=0;R<this.bitsAvailable;++R)if((this.word&2147483648>>>R)!==0)return this.word<<=R,this.bitsAvailable-=R,R;return this.loadWord(),R+this.skipLZ()},M.skipUEG=function(){this.skipBits(1+this.skipLZ())},M.skipEG=function(){this.skipBits(1+this.skipLZ())},M.readUEG=function(){var R=this.skipLZ();return this.readBits(R+1)-1},M.readEG=function(){var R=this.readUEG();return 1&R?1+R>>>1:-1*(R>>>1)},M.readBoolean=function(){return this.readBits(1)===1},M.readUByte=function(){return this.readBits(8)},M.readUShort=function(){return this.readBits(16)},M.readUInt=function(){return this.readBits(32)},M.skipScalingList=function(R){for(var S=8,g=8,x,T=0;T<R;T++)g!==0&&(x=this.readEG(),g=(S+x+256)%256),S=g===0?S:g},M.readSPS=function(){var R=0,S=0,g=0,x=0,T,v,y,p=this.readUByte.bind(this),s=this.readBits.bind(this),e=this.readUEG.bind(this),a=this.readBoolean.bind(this),i=this.skipBits.bind(this),h=this.skipEG.bind(this),l=this.skipUEG.bind(this),u=this.skipScalingList.bind(this);p();var m=p();if(s(5),i(3),p(),l(),m===100||m===110||m===122||m===244||m===44||m===83||m===86||m===118||m===128){var d=e();if(d===3&&i(1),l(),l(),i(1),a())for(v=d!==3?8:12,y=0;y<v;y++)a()&&(y<6?u(16):u(64))}l();var o=e();if(o===0)e();else if(o===1)for(i(1),h(),h(),T=e(),y=0;y<T;y++)h();l(),i(1);var n=e(),t=e(),r=s(1);r===0&&i(1),i(1),a()&&(R=e(),S=e(),g=e(),x=e());var c=[1,1];if(a()&&a()){var f=p();switch(f){case 1:c=[1,1];break;case 2:c=[12,11];break;case 3:c=[10,11];break;case 4:c=[16,11];break;case 5:c=[40,33];break;case 6:c=[24,11];break;case 7:c=[20,11];break;case 8:c=[32,11];break;case 9:c=[80,33];break;case 10:c=[18,11];break;case 11:c=[15,11];break;case 12:c=[64,33];break;case 13:c=[160,99];break;case 14:c=[4,3];break;case 15:c=[3,2];break;case 16:c=[2,1];break;case 255:{c=[p()<<8|p(),p()<<8|p()];break}}}return{width:Math.ceil((n+1)*16-R*2-S*2),height:(2-r)*(t+1)*16-(r?2:4)*(g+x),pixelRatio:c}},M.readSliceType=function(){return this.readUByte(),this.readUEG(),this.readUEG()},A}();k.default=C},"./src/demux/id3.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"isHeader",function(){return I}),E.d(k,"isFooter",function(){return C}),E.d(k,"getID3Data",function(){return A}),E.d(k,"canParse",function(){return w}),E.d(k,"getTimeStamp",function(){return R}),E.d(k,"isTimeStampFrame",function(){return S}),E.d(k,"getID3Frames",function(){return x}),E.d(k,"decodeFrame",function(){return T}),E.d(k,"utf8ArrayToStr",function(){return e}),E.d(k,"testables",function(){return a});var I=function(u,m){return m+10<=u.length&&(u[m]===73&&u[m+1]===68&&u[m+2]===51&&(u[m+3]<255&&u[m+4]<255&&(u[m+6]<128&&u[m+7]<128&&u[m+8]<128&&u[m+9]<128)))},C=function(u,m){return m+10<=u.length&&(u[m]===51&&u[m+1]===68&&u[m+2]===73&&(u[m+3]<255&&u[m+4]<255&&(u[m+6]<128&&u[m+7]<128&&u[m+8]<128&&u[m+9]<128)))},A=function(u,m){for(var d=m,o=0;I(u,m);){o+=10;var n=M(u,m+6);o+=n,C(u,m+10)&&(o+=10),m+=o}return o>0?u.subarray(d,d+o):void 0},M=function(u,m){var d=0;return d=(u[m]&127)<<21,d|=(u[m+1]&127)<<14,d|=(u[m+2]&127)<<7,d|=u[m+3]&127,d},w=function(u,m){return I(u,m)&&M(u,m+6)+10<=u.length-m},R=function(u){for(var m=x(u),d=0;d<m.length;d++){var o=m[d];if(S(o))return s(o)}return},S=function(u){return u&&u.key==="PRIV"&&u.info==="com.apple.streaming.transportStreamTimestamp"},g=function(u){var m=String.fromCharCode(u[0],u[1],u[2],u[3]),d=M(u,4),o=10;return{type:m,size:d,data:u.subarray(o,o+d)}},x=function(u){for(var m=0,d=[];I(u,m);){var o=M(u,m+6);m+=10;for(var n=m+o;m+8<n;){var t=g(u.subarray(m)),r=T(t);r&&d.push(r),m+=t.size+10}C(u,m)&&(m+=10)}return d},T=function(u){return u.type==="PRIV"?v(u):u.type[0]==="W"?p(u):y(u)},v=function(u){if(u.size<2)return;var m=e(u.data,!0),d=new Uint8Array(u.data.subarray(m.length+1));return{key:u.type,info:m,data:d.buffer}},y=function(u){if(u.size<2)return;if(u.type==="TXXX"){var m=1,d=e(u.data.subarray(m),!0);m+=d.length+1;var o=e(u.data.subarray(m));return{key:u.type,info:d,data:o}}var n=e(u.data.subarray(1));return{key:u.type,data:n}},p=function(u){if(u.type==="WXXX"){if(u.size<2)return;var m=1,d=e(u.data.subarray(m),!0);m+=d.length+1;var o=e(u.data.subarray(m));return{key:u.type,info:d,data:o}}var n=e(u.data);return{key:u.type,data:n}},s=function(u){if(u.data.byteLength===8){var m=new Uint8Array(u.data),d=m[3]&1,o=(m[4]<<23)+(m[5]<<15)+(m[6]<<7)+m[7];return o/=45,d&&(o+=4772185884e-2),Math.round(o)}return},e=function(u,m){m===void 0&&(m=!1);var d=h();if(d){var o=d.decode(u);if(m){var n=o.indexOf("\0");return n!==-1?o.substring(0,n):o}return o.replace(/\0/g,"")}for(var t=u.length,r,c,f,b="",L=0;L<t;){if(r=u[L++],r===0&&m)return b;if(r===0||r===3)continue;switch(r>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:b+=String.fromCharCode(r);break;case 12:case 13:c=u[L++],b+=String.fromCharCode((r&31)<<6|c&63);break;case 14:c=u[L++],f=u[L++],b+=String.fromCharCode((r&15)<<12|(c&63)<<6|(f&63)<<0);break;default:}}return b},a={decodeTextFrame:y},i;function h(){return!i&&typeof self.TextDecoder!="undefined"&&(i=new self.TextDecoder("utf-8")),i}},"./src/demux/mp3demuxer.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/demux/base-audio-demuxer.ts"),C=E("./src/demux/id3.ts"),A=E("./src/utils/logger.ts"),M=E("./src/demux/mpegaudio.ts");function w(g,x){g.prototype=Object.create(x.prototype),g.prototype.constructor=g,R(g,x)}function R(g,x){return R=Object.setPrototypeOf||function(v,y){return v.__proto__=y,v},R(g,x)}var S=function(g){w(x,g);function x(){return g.apply(this,arguments)||this}var T=x.prototype;return T.resetInitSegment=function(y,p,s){g.prototype.resetInitSegment.call(this,y,p,s),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,isAAC:!1,samples:[],manifestCodec:y,duration:s,inputTimeScale:9e4,dropped:0}},x.probe=function(y){if(!y)return!1;for(var p=C.getID3Data(y,0)||[],s=p.length,e=y.length;s<e;s++)if(M.probe(y,s))return A.logger.log("MPEG Audio sync word found !"),!0;return!1},T.canParse=function(y,p){return M.canParse(y,p)},T.appendFrame=function(y,p,s){return this.initPTS===null?void 0:M.appendFrame(y,p,s,this.initPTS,this.frameIndex)},x}(I.default);S.minProbeByteLength=4,k.default=S},"./src/demux/mp4demuxer.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/utils/mp4-tools.ts"),C=E("./src/demux/dummy-demuxed-track.ts"),A=function(){function M(R,S){this.remainderData=null,this.config=void 0,this.config=S}var w=M.prototype;return w.resetTimeStamp=function(){},w.resetInitSegment=function(){},w.resetContiguity=function(){},M.probe=function(S){return Object(I.findBox)({data:S,start:0,end:Math.min(S.length,16384)},["moof"]).length>0},w.demux=function(S){var g=S,x=Object(C.dummyTrack)();if(this.config.progressive){this.remainderData&&(g=Object(I.appendUint8Array)(this.remainderData,S));var T=Object(I.segmentValidRange)(g);this.remainderData=T.remainder,x.samples=T.valid||new Uint8Array}else x.samples=g;return{audioTrack:Object(C.dummyTrack)(),avcTrack:x,id3Track:Object(C.dummyTrack)(),textTrack:Object(C.dummyTrack)()}},w.flush=function(){var S=Object(C.dummyTrack)();return S.samples=this.remainderData||new Uint8Array,this.remainderData=null,{audioTrack:Object(C.dummyTrack)(),avcTrack:S,id3Track:Object(C.dummyTrack)(),textTrack:Object(C.dummyTrack)()}},w.demuxSampleAes=function(S,g,x){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},w.destroy=function(){},M}();A.minProbeByteLength=1024,k.default=A},"./src/demux/mpegaudio.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"appendFrame",function(){return R}),E.d(k,"parseHeader",function(){return S}),E.d(k,"isHeaderPattern",function(){return g}),E.d(k,"isHeader",function(){return x}),E.d(k,"canParse",function(){return T}),E.d(k,"probe",function(){return v});var I=null,C=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],A=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],M=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],w=[0,1,1,4];function R(y,p,s,e,a){if(s+24>p.length)return;var i=S(p,s);if(i&&s+i.frameLength<=p.length){var h=i.samplesPerFrame*9e4/i.sampleRate,l=e+a*h,u={unit:p.subarray(s,s+i.frameLength),pts:l,dts:l};return y.config=[],y.channelCount=i.channelCount,y.samplerate=i.sampleRate,y.samples.push(u),{sample:u,length:i.frameLength,missing:0}}}function S(y,p){var s=y[p+1]>>3&3,e=y[p+1]>>1&3,a=y[p+2]>>4&15,i=y[p+2]>>2&3;if(s!==1&&a!==0&&a!==15&&i!==3){var h=y[p+2]>>1&1,l=y[p+3]>>6,u=s===3?3-e:e===3?3:4,m=C[u*14+a-1]*1e3,d=s===3?0:s===2?1:2,o=A[d*3+i],n=l===3?1:2,t=M[s][e],r=w[e],c=t*8*r,f=Math.floor(t*m/o+h)*r;if(I===null){var b=navigator.userAgent||"",L=b.match(/Chrome\/(\d+)/i);I=L?parseInt(L[1]):0}var D=!!I&&I<=87;return D&&e===2&&m>=224e3&&l===0&&(y[p+3]=y[p+3]|128),{sampleRate:o,channelCount:n,frameLength:f,samplesPerFrame:c}}}function g(y,p){return y[p]===255&&(y[p+1]&224)===224&&(y[p+1]&6)!==0}function x(y,p){return p+1<y.length&&g(y,p)}function T(y,p){var s=4;return g(y,p)&&s<=y.length-p}function v(y,p){if(p+1<y.length&&g(y,p)){var s=4,e=S(y,p),a=s;e!=null&&e.frameLength&&(a=e.frameLength);var i=p+a;return i===y.length||x(y,i)}return!1}},"./src/demux/sample-aes.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/crypt/decrypter.ts"),C=E("./src/demux/tsdemuxer.ts"),A=function(){function M(R,S,g){this.keyData=void 0,this.decrypter=void 0,this.keyData=g,this.decrypter=new I.default(R,S,{removePKCS7Padding:!1})}var w=M.prototype;return w.decryptBuffer=function(S,g){this.decrypter.decrypt(S,this.keyData.key.buffer,this.keyData.iv.buffer,g)},w.decryptAacSample=function(S,g,x,T){var v=S[g].unit,y=v.subarray(16,v.length-v.length%16),p=y.buffer.slice(y.byteOffset,y.byteOffset+y.length),s=this;this.decryptBuffer(p,function(e){var a=new Uint8Array(e);v.set(a,16),T||s.decryptAacSamples(S,g+1,x)})},w.decryptAacSamples=function(S,g,x){for(;;g++){if(g>=S.length){x();return}if(S[g].unit.length<32)continue;var T=this.decrypter.isSync();if(this.decryptAacSample(S,g,x,T),!T)return}},w.getAvcEncryptedData=function(S){for(var g=Math.floor((S.length-48)/160)*16+16,x=new Int8Array(g),T=0,v=32;v<=S.length-16;v+=160,T+=16)x.set(S.subarray(v,v+16),T);return x},w.getAvcDecryptedUnit=function(S,g){for(var x=new Uint8Array(g),T=0,v=32;v<=S.length-16;v+=160,T+=16)S.set(x.subarray(T,T+16),v);return S},w.decryptAvcSample=function(S,g,x,T,v,y){var p=Object(C.discardEPB)(v.data),s=this.getAvcEncryptedData(p),e=this;this.decryptBuffer(s.buffer,function(a){v.data=e.getAvcDecryptedUnit(p,a),y||e.decryptAvcSamples(S,g,x+1,T)})},w.decryptAvcSamples=function(S,g,x,T){if(S instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;g++,x=0){if(g>=S.length){T();return}for(var v=S[g].units;!(x>=v.length);x++){var y=v[x];if(y.data.length<=48||y.type!==1&&y.type!==5)continue;var p=this.decrypter.isSync();if(this.decryptAvcSample(S,g,x,T,y,p),!p)return}}},M}();k.default=A},"./src/demux/transmuxer-interface.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return v});var I=E("./node_modules/webworkify-webpack/index.js"),C=E.n(I),A=E("./src/events.ts"),M=E("./src/demux/transmuxer.ts"),w=E("./src/utils/logger.ts"),R=E("./src/errors.ts"),S=E("./src/utils/mediasource-helper.ts"),g=E("./node_modules/eventemitter3/index.js"),x=E.n(g),T=Object(S.getMediaSource)()||{isTypeSupported:function(){return!1}},v=function(){function y(s,e,a,i){var h=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=s,this.id=e,this.onTransmuxComplete=a,this.onFlush=i;var l=s.config,u=function(t,r){r=r||{},r.frag=h.frag,r.id=h.id,s.trigger(t,r)};this.observer=new g.EventEmitter,this.observer.on(A.Events.FRAG_DECRYPTED,u),this.observer.on(A.Events.ERROR,u);var m={mp4:T.isTypeSupported("video/mp4"),mpeg:T.isTypeSupported("audio/mpeg"),mp3:T.isTypeSupported('audio/mp4; codecs="mp3"')},d=navigator.vendor;if(l.enableWorker&&typeof Worker!="undefined"){w.logger.log("demuxing in webworker");var o;try{o=this.worker=I("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),o.addEventListener("message",this.onwmsg),o.onerror=function(n){s.trigger(A.Events.ERROR,{type:R.ErrorTypes.OTHER_ERROR,details:R.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(n.message+" ("+n.filename+":"+n.lineno+")")})},o.postMessage({cmd:"init",typeSupported:m,vendor:d,id:e,config:JSON.stringify(l)})}catch(n){w.logger.warn("Error in worker:",n),w.logger.error("Error while initializing DemuxerWorker, fallback to inline"),o&&self.URL.revokeObjectURL(o.objectURL),this.transmuxer=new M.default(this.observer,m,l,d,e),this.worker=null}}else this.transmuxer=new M.default(this.observer,m,l,d,e)}var p=y.prototype;return p.destroy=function(){var e=this.worker;if(e)e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null;else{var a=this.transmuxer;a&&(a.destroy(),this.transmuxer=null)}var i=this.observer;i&&i.removeAllListeners(),this.observer=null},p.push=function(e,a,i,h,l,u,m,d,o,n){var t=this;o.transmuxing.start=self.performance.now();var r=this.transmuxer,c=this.worker,f=u?u.start:l.start,b=l.decryptdata,L=this.frag,D=!(L&&l.cc===L.cc),F=!(L&&o.level===L.level),N=L?o.sn-L.sn:-1,K=this.part?o.part-this.part.index:1,V=!F&&(N===1||N===0&&K===1),z=self.performance.now();(F||N||l.stats.parsing.start===0)&&(l.stats.parsing.start=z),u&&(K||!V)&&(u.stats.parsing.start=z);var $=new M.TransmuxState(D,V,d,F,f);if(!V||D){w.logger.log("[transmuxer-interface, "+l.type+"]: Starting new transmux session for sn: "+o.sn+" p: "+o.part+" level: "+o.level+" id: "+o.id+`
|
|
discontinuity: `+D+`
|
|
trackSwitch: `+F+`
|
|
contiguous: `+V+`
|
|
accurateTimeOffset: `+d+`
|
|
timeOffset: `+f);var q=new M.TransmuxConfig(i,h,a,m,n);this.configureTransmuxer(q)}if(this.frag=l,this.part=u,c)c.postMessage({cmd:"demux",data:e,decryptdata:b,chunkMeta:o,state:$},e instanceof ArrayBuffer?[e]:[]);else if(r){var J=r.push(e,b,o,$);Object(M.isPromise)(J)?J.then(function(he){t.handleTransmuxComplete(he)}):this.handleTransmuxComplete(J)}},p.flush=function(e){var a=this;e.transmuxing.start=self.performance.now();var i=this.transmuxer,h=this.worker;if(h)h.postMessage({cmd:"flush",chunkMeta:e});else if(i){var l=i.flush(e);Object(M.isPromise)(l)?l.then(function(u){a.handleFlushResult(u,e)}):this.handleFlushResult(l,e)}},p.handleFlushResult=function(e,a){var i=this;e.forEach(function(h){i.handleTransmuxComplete(h)}),this.onFlush(a)},p.onWorkerMessage=function(e){var a=e.data,i=this.hls;switch(a.event){case"init":{self.URL.revokeObjectURL(this.worker.objectURL);break}case"transmuxComplete":{this.handleTransmuxComplete(a.data);break}case"flush":{this.onFlush(a.data);break}default:{a.data=a.data||{},a.data.frag=this.frag,a.data.id=this.id,i.trigger(a.event,a.data);break}}},p.configureTransmuxer=function(e){var a=this.worker,i=this.transmuxer;a?a.postMessage({cmd:"configure",config:e}):i&&i.configure(e)},p.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},y}()},"./src/demux/transmuxer-worker.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return R});var I=E("./src/demux/transmuxer.ts"),C=E("./src/events.ts"),A=E("./src/utils/logger.ts"),M=E("./node_modules/eventemitter3/index.js"),w=E.n(M);function R(v){var y=new M.EventEmitter,p=function(e,a){v.postMessage({event:e,data:a})};y.on(C.Events.FRAG_DECRYPTED,p),y.on(C.Events.ERROR,p),v.addEventListener("message",function(s){var e=s.data;switch(e.cmd){case"init":{var a=JSON.parse(e.config);v.transmuxer=new I.default(y,e.typeSupported,a,e.vendor,e.id),Object(A.enableLogs)(a.debug),p("init",null);break}case"configure":{v.transmuxer.configure(e.config);break}case"demux":{var i=v.transmuxer.push(e.data,e.decryptdata,e.chunkMeta,e.state);Object(I.isPromise)(i)?i.then(function(u){S(v,u)}):S(v,i);break}case"flush":{var h=e.chunkMeta,l=v.transmuxer.flush(h);Object(I.isPromise)(l)?l.then(function(u){x(v,u,h)}):x(v,l,h);break}default:break}})}function S(v,y){if(T(y.remuxResult))return;var p=[],s=y.remuxResult,e=s.audio,a=s.video;e&&g(p,e),a&&g(p,a),v.postMessage({event:"transmuxComplete",data:y},p)}function g(v,y){y.data1&&v.push(y.data1.buffer),y.data2&&v.push(y.data2.buffer)}function x(v,y,p){y.forEach(function(s){S(v,s)}),v.postMessage({event:"flush",data:p})}function T(v){return!v.audio&&!v.video&&!v.text&&!v.id3&&!v.initSegment}},"./src/demux/transmuxer.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return a}),E.d(k,"isPromise",function(){return l}),E.d(k,"TransmuxConfig",function(){return u}),E.d(k,"TransmuxState",function(){return m});var I=E("./src/events.ts"),C=E("./src/errors.ts"),A=E("./src/crypt/decrypter.ts"),M=E("./src/demux/aacdemuxer.ts"),w=E("./src/demux/mp4demuxer.ts"),R=E("./src/demux/tsdemuxer.ts"),S=E("./src/demux/mp3demuxer.ts"),g=E("./src/remux/mp4-remuxer.ts"),x=E("./src/remux/passthrough-remuxer.ts"),T=E("./src/demux/chunk-cache.ts"),v=E("./src/utils/mp4-tools.ts"),y=E("./src/utils/logger.ts"),p;try{p=self.performance.now.bind(self.performance)}catch(d){y.logger.debug("Unable to use Performance API on this environment"),p=self.Date.now}var s=[{demux:R.default,remux:g.default},{demux:w.default,remux:x.default},{demux:M.default,remux:g.default},{demux:S.default,remux:g.default}],e=1024;s.forEach(function(d){var o=d.demux;e=Math.max(e,o.minProbeByteLength)});var a=function(){function d(n,t,r,c,f){this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.cache=new T.default,this.observer=n,this.typeSupported=t,this.config=r,this.vendor=c,this.id=f}var o=d.prototype;return o.configure=function(t){this.transmuxConfig=t,this.decrypter&&this.decrypter.reset()},o.push=function(t,r,c,f){var b=this,L=c.transmuxing;L.executeStart=p();var D=new Uint8Array(t),F=this.cache,N=this.config,K=this.currentTransmuxState,V=this.transmuxConfig;f&&(this.currentTransmuxState=f);var z=i(D,r);if(z&&z.method==="AES-128"){var $=this.getDecrypter();if(N.enableSoftwareAES){var q=$.softwareDecrypt(D,z.key.buffer,z.iv.buffer);if(!q)return L.executeEnd=p(),h(c);D=new Uint8Array(q)}else return this.decryptionPromise=$.webCryptoDecrypt(D,z.key.buffer,z.iv.buffer).then(function(ue){var ce=b.push(ue,null,c);return b.decryptionPromise=null,ce}),this.decryptionPromise}var J=f||K,he=J.contiguous,te=J.discontinuity,le=J.trackSwitch,re=J.accurateTimeOffset,ae=J.timeOffset,X=V.audioCodec,Z=V.videoCodec,ie=V.defaultInitPts,Re=V.duration,me=V.initSegmentData;if((te||le)&&this.resetInitSegment(me,X,Z,Re),te&&this.resetInitialTimestamp(ie),he||this.resetContiguity(),this.needsProbing(D,te,le)){if(F.dataLength){var pe=F.flush();D=Object(v.appendUint8Array)(pe,D)}this.configureTransmuxer(D,V)}var De=this.transmux(D,z,ae,re,c),oe=this.currentTransmuxState;return oe.contiguous=!0,oe.discontinuity=!1,oe.trackSwitch=!1,L.executeEnd=p(),De},o.flush=function(t){var r=this,c=t.transmuxing;c.executeStart=p();var f=this.decrypter,b=this.cache,L=this.currentTransmuxState,D=this.decryptionPromise;if(D)return D.then(function(){return r.flush(t)});var F=[],N=L.timeOffset;if(f){var K=f.flush();K&&F.push(this.push(K,null,t))}var V=b.dataLength;b.reset();var z=this.demuxer,$=this.remuxer;if(!z||!$)return V>=e&&this.observer.emit(I.Events.ERROR,I.Events.ERROR,{type:C.ErrorTypes.MEDIA_ERROR,details:C.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),c.executeEnd=p(),[h(t)];var q=z.flush(N);return l(q)?q.then(function(J){return r.flushRemux(F,J,t),F}):(this.flushRemux(F,q,t),F)},o.flushRemux=function(t,r,c){var f=r.audioTrack,b=r.avcTrack,L=r.id3Track,D=r.textTrack,F=this.currentTransmuxState,N=F.accurateTimeOffset,K=F.timeOffset;y.logger.log("[transmuxer.ts]: Flushed fragment "+c.sn+(c.part>-1?" p: "+c.part:"")+" of level "+c.level);var V=this.remuxer.remux(f,b,L,D,K,N,!0,this.id);t.push({remuxResult:V,chunkMeta:c}),c.transmuxing.executeEnd=p()},o.resetInitialTimestamp=function(t){var r=this.demuxer,c=this.remuxer;if(!r||!c)return;r.resetTimeStamp(t),c.resetTimeStamp(t)},o.resetContiguity=function(){var t=this.demuxer,r=this.remuxer;if(!t||!r)return;t.resetContiguity(),r.resetNextTimestamp()},o.resetInitSegment=function(t,r,c,f){var b=this.demuxer,L=this.remuxer;if(!b||!L)return;b.resetInitSegment(r,c,f),L.resetInitSegment(t,r,c)},o.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},o.transmux=function(t,r,c,f,b){var L;return r&&r.method==="SAMPLE-AES"?L=this.transmuxSampleAes(t,r,c,f,b):L=this.transmuxUnencrypted(t,c,f,b),L},o.transmuxUnencrypted=function(t,r,c,f){var b=this.demuxer.demux(t,r,!1,!this.config.progressive),L=b.audioTrack,D=b.avcTrack,F=b.id3Track,N=b.textTrack,K=this.remuxer.remux(L,D,F,N,r,c,!1,this.id);return{remuxResult:K,chunkMeta:f}},o.transmuxSampleAes=function(t,r,c,f,b){var L=this;return this.demuxer.demuxSampleAes(t,r,c).then(function(D){var F=L.remuxer.remux(D.audioTrack,D.avcTrack,D.id3Track,D.textTrack,c,f,!1,L.id);return{remuxResult:F,chunkMeta:b}})},o.configureTransmuxer=function(t,r){for(var c=this.config,f=this.observer,b=this.typeSupported,L=this.vendor,D=r.audioCodec,F=r.defaultInitPts,N=r.duration,K=r.initSegmentData,V=r.videoCodec,z,$=0,q=s.length;$<q;$++)if(s[$].demux.probe(t)){z=s[$];break}z||(y.logger.warn("Failed to find demuxer by probing frag, treating as mp4 passthrough"),z={demux:w.default,remux:x.default});var J=this.demuxer,he=this.remuxer,te=z.remux,le=z.demux;(!he||!(he instanceof te))&&(this.remuxer=new te(f,c,b,L)),(!J||!(J instanceof le))&&(this.demuxer=new le(f,c,b),this.probe=le.probe),this.resetInitSegment(K,D,V,N),this.resetInitialTimestamp(F)},o.needsProbing=function(t,r,c){return!this.demuxer||!this.remuxer||r||c},o.getDecrypter=function(){var t=this.decrypter;return t||(t=this.decrypter=new A.default(this.observer,this.config)),t},d}();function i(d,o){var n=null;return d.byteLength>0&&o!=null&&o.key!=null&&o.iv!==null&&o.method!=null&&(n=o),n}var h=function(o){return{remuxResult:{},chunkMeta:o}};function l(d){return"then"in d&&d.then instanceof Function}var u=function(o,n,t,r,c){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=o,this.videoCodec=n,this.initSegmentData=t,this.duration=r,this.defaultInitPts=c},m=function(o,n,t,r,c){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.discontinuity=o,this.contiguous=n,this.accurateTimeOffset=t,this.trackSwitch=r,this.timeOffset=c}},"./src/demux/tsdemuxer.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"discardEPB",function(){return h});var I=E("./src/demux/adts.ts"),C=E("./src/demux/mpegaudio.ts"),A=E("./src/demux/exp-golomb.ts"),M=E("./src/demux/id3.ts"),w=E("./src/demux/sample-aes.ts"),R=E("./src/events.ts"),S=E("./src/utils/mp4-tools.ts"),g=E("./src/utils/logger.ts"),x=E("./src/errors.ts"),T={video:1,audio:2,id3:3,text:4},v=function(){function l(m,d,o){this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._duration=0,this.aacLastPTS=null,this._initPTS=null,this._initDTS=null,this._pmtId=-1,this._avcTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.observer=m,this.config=d,this.typeSupported=o}l.probe=function(d){var o=l.syncOffset(d);return o<0?!1:(o&&g.logger.warn("MPEG2-TS detected but first sync word found @ offset "+o+", junk ahead ?"),!0)},l.syncOffset=function(d){for(var o=Math.min(1e3,d.length-3*188),n=0;n<o;){if(d[n]===71&&d[n+188]===71&&d[n+2*188]===71)return n;n++}return-1},l.createTrack=function(d,o){return{container:d==="video"||d==="audio"?"video/mp2t":void 0,type:d,id:T[d],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:d==="audio"?o:void 0}};var u=l.prototype;return u.resetInitSegment=function(d,o,n){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=l.createTrack("video",n),this._audioTrack=l.createTrack("audio",n),this._id3Track=l.createTrack("id3",n),this._txtTrack=l.createTrack("text",n),this._audioTrack.isAAC=!0,this.aacOverFlow=null,this.aacLastPTS=null,this.avcSample=null,this.audioCodec=d,this.videoCodec=o,this._duration=n},u.resetTimeStamp=function(){},u.resetContiguity=function(){var d=this._audioTrack,o=this._avcTrack,n=this._id3Track;d&&(d.pesData=null),o&&(o.pesData=null),n&&(n.pesData=null),this.aacOverFlow=null,this.aacLastPTS=null},u.demux=function(d,o,n,t){n===void 0&&(n=!1),t===void 0&&(t=!1),n||(this.sampleAes=null);var r,c=this._avcTrack,f=this._audioTrack,b=this._id3Track,L=c.pid,D=c.pesData,F=f.pid,N=b.pid,K=f.pesData,V=b.pesData,z=!1,$=this.pmtParsed,q=this._pmtId,J=d.length;if(this.remainderData&&(d=Object(S.appendUint8Array)(this.remainderData,d),J=d.length,this.remainderData=null),J<188&&!t)return this.remainderData=d,{audioTrack:f,avcTrack:c,id3Track:b,textTrack:this._txtTrack};var he=Math.max(0,l.syncOffset(d));J-=(J+he)%188,J<d.byteLength&&!t&&(this.remainderData=new Uint8Array(d.buffer,J,d.buffer.byteLength-J));for(var te=he;te<J;te+=188)if(d[te]===71){var le=!!(d[te+1]&64),re=((d[te+1]&31)<<8)+d[te+2],ae=(d[te+3]&48)>>4,X=void 0;if(ae>1){if(X=te+5+d[te+4],X===te+188)continue}else X=te+4;switch(re){case L:le&&(D&&(r=e(D))&&this.parseAVCPES(r,!1),D={data:[],size:0}),D&&(D.data.push(d.subarray(X,te+188)),D.size+=te+188-X);break;case F:le&&(K&&(r=e(K))&&(f.isAAC?this.parseAACPES(r):this.parseMPEGPES(r)),K={data:[],size:0}),K&&(K.data.push(d.subarray(X,te+188)),K.size+=te+188-X);break;case N:le&&(V&&(r=e(V))&&this.parseID3PES(r),V={data:[],size:0}),V&&(V.data.push(d.subarray(X,te+188)),V.size+=te+188-X);break;case 0:le&&(X+=d[X]+1),q=this._pmtId=p(d,X);break;case q:{le&&(X+=d[X]+1);var Z=s(d,X,this.typeSupported.mpeg===!0||this.typeSupported.mp3===!0,n);L=Z.avc,L>0&&(c.pid=L),F=Z.audio,F>0&&(f.pid=F,f.isAAC=Z.isAAC),N=Z.id3,N>0&&(b.pid=N),z&&!$&&(g.logger.log("reparse from beginning"),z=!1,te=he-188),$=this.pmtParsed=!0;break}case 17:case 8191:break;default:z=!0;break}}else this.observer.emit(R.Events.ERROR,R.Events.ERROR,{type:x.ErrorTypes.MEDIA_ERROR,details:x.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"TS packet did not start with 0x47"});c.pesData=D,f.pesData=K,b.pesData=V;var ie={audioTrack:f,avcTrack:c,id3Track:b,textTrack:this._txtTrack};return t&&this.extractRemainingSamples(ie),ie},u.flush=function(){var d=this.remainderData;this.remainderData=null;var o;return d?o=this.demux(d,-1,!1,!0):o={audioTrack:this._audioTrack,avcTrack:this._avcTrack,textTrack:this._txtTrack,id3Track:this._id3Track},this.extractRemainingSamples(o),this.sampleAes?this.decrypt(o,this.sampleAes):o},u.extractRemainingSamples=function(d){var o=d.audioTrack,n=d.avcTrack,t=d.id3Track,r=n.pesData,c=o.pesData,f=t.pesData,b;r&&(b=e(r))?(this.parseAVCPES(b,!0),n.pesData=null):n.pesData=r,c&&(b=e(c))?(o.isAAC?this.parseAACPES(b):this.parseMPEGPES(b),o.pesData=null):(c!=null&&c.size&&g.logger.log("last AAC PES packet truncated,might overlap between fragments"),o.pesData=c),f&&(b=e(f))?(this.parseID3PES(b),t.pesData=null):t.pesData=f},u.demuxSampleAes=function(d,o,n){var t=this.demux(d,n,!0,!this.config.progressive),r=this.sampleAes=new w.default(this.observer,this.config,o);return this.decrypt(t,r)},u.decrypt=function(d,o){return new Promise(function(n){var t=d.audioTrack,r=d.avcTrack;t.samples&&t.isAAC?o.decryptAacSamples(t.samples,0,function(){r.samples?o.decryptAvcSamples(r.samples,0,0,function(){n(d)}):n(d)}):r.samples&&o.decryptAvcSamples(r.samples,0,0,function(){n(d)})})},u.destroy=function(){this._initPTS=this._initDTS=null,this._duration=0},u.parseAVCPES=function(d,o){var n=this,t=this._avcTrack,r=this.parseAVCNALu(d.data),c=!1,f=this.avcSample,b,L=!1;d.data=null,f&&r.length&&!t.audFound&&(a(f,t),f=this.avcSample=y(!1,d.pts,d.dts,"")),r.forEach(function(D){switch(D.type){case 1:{b=!0,f||(f=n.avcSample=y(!0,d.pts,d.dts,"")),c&&(f.debug+="NDR "),f.frame=!0;var F=D.data;if(L&&F.length>4){var N=new A.default(F).readSliceType();(N===2||N===4||N===7||N===9)&&(f.key=!0)}break}case 5:b=!0,f||(f=n.avcSample=y(!0,d.pts,d.dts,"")),c&&(f.debug+="IDR "),f.key=!0,f.frame=!0;break;case 6:{b=!0,c&&f&&(f.debug+="SEI ");var K=new A.default(h(D.data));K.readUByte();for(var V=0,z=0,$=!1,q=0;!$&&K.bytesAvailable>1;){V=0;do q=K.readUByte(),V+=q;while(q===255);z=0;do q=K.readUByte(),z+=q;while(q===255);if(V===4&&K.bytesAvailable!==0){$=!0;var J=K.readUByte();if(J===181){var he=K.readUShort();if(he===49){var te=K.readUInt();if(te===1195456820){var le=K.readUByte();if(le===3){for(var re=K.readUByte(),ae=K.readUByte(),X=31&re,Z=[re,ae],ie=0;ie<X;ie++)Z.push(K.readUByte()),Z.push(K.readUByte()),Z.push(K.readUByte());i(n._txtTrack.samples,{type:3,pts:d.pts,bytes:Z})}}}}}else if(V===5&&K.bytesAvailable!==0){if($=!0,z>16){for(var Re=[],me=0;me<16;me++)Re.push(K.readUByte().toString(16)),(me===3||me===5||me===7||me===9)&&Re.push("-");for(var pe=z-16,De=new Uint8Array(pe),oe=0;oe<pe;oe++)De[oe]=K.readUByte();i(n._txtTrack.samples,{pts:d.pts,payloadType:V,uuid:Re.join(""),userData:Object(M.utf8ArrayToStr)(De),userDataBytes:De})}}else if(z<K.bytesAvailable)for(var ue=0;ue<z;ue++)K.readUByte()}break}case 7:if(b=!0,L=!0,c&&f&&(f.debug+="SPS "),!t.sps){var ce=new A.default(D.data),ge=ce.readSPS();t.width=ge.width,t.height=ge.height,t.pixelRatio=ge.pixelRatio,t.sps=[D.data],t.duration=n._duration;for(var ye=D.data.subarray(1,4),ve="avc1.",fe=0;fe<3;fe++){var we=ye[fe].toString(16);we.length<2&&(we="0"+we),ve+=we}t.codec=ve}break;case 8:b=!0,c&&f&&(f.debug+="PPS "),t.pps||(t.pps=[D.data]);break;case 9:b=!1,t.audFound=!0,f&&a(f,t),f=n.avcSample=y(!1,d.pts,d.dts,c?"AUD ":"");break;case 12:b=!1;break;default:b=!1,f&&(f.debug+="unknown NAL "+D.type+" ");break}if(f&&b){var Ce=f.units;Ce.push(D)}}),o&&f&&(a(f,t),this.avcSample=null)},u.getLastNalUnit=function(){var d,o=this.avcSample,n;if(!o||o.units.length===0){var t=this._avcTrack.samples;o=t[t.length-1]}if((d=o)!==null&&d!==void 0&&d.units){var r=o.units;n=r[r.length-1]}return n},u.parseAVCNALu=function(d){var o=d.byteLength,n=this._avcTrack,t=n.naluState||0,r=t,c=[],f=0,b,L,D,F=-1,N=0;for(t===-1&&(F=0,N=d[0]&31,t=0,f=1);f<o;){if(b=d[f++],!t){t=b?0:1;continue}if(t===1){t=b?0:2;continue}if(!b)t=3;else if(b===1){if(F>=0){var K={data:d.subarray(F,f-t-1),type:N};c.push(K)}else{var V=this.getLastNalUnit();if(V&&(r&&f<=4-r&&(V.state&&(V.data=V.data.subarray(0,V.data.byteLength-r))),L=f-t-1,L>0)){var z=new Uint8Array(V.data.byteLength+L);z.set(V.data,0),z.set(d.subarray(0,L),V.data.byteLength),V.data=z,V.state=0}}f<o?(D=d[f]&31,F=f,N=D,t=0):t=-1}else t=0}if(F>=0&&t>=0){var $={data:d.subarray(F,o),type:N,state:t};c.push($)}if(c.length===0){var q=this.getLastNalUnit();if(q){var J=new Uint8Array(q.data.byteLength+d.byteLength);J.set(q.data,0),J.set(d,q.data.byteLength),q.data=J}}return n.naluState=t,c},u.parseAACPES=function(d){var o=0,n=this._audioTrack,t=this.aacOverFlow,r=d.data;if(t){this.aacOverFlow=null;var c=t.sample.unit.byteLength,f=Math.min(t.missing,c),b=c-f;t.sample.unit.set(r.subarray(0,f),b),n.samples.push(t.sample),o=t.missing}var L,D;for(L=o,D=r.length;L<D-1&&!I.isHeader(r,L);L++);if(L!==o){var F,N;if(L<D-1?(F="AAC PES did not start with ADTS header,offset:"+L,N=!1):(F="no ADTS header found in AAC PES",N=!0),g.logger.warn("parsing error:"+F),this.observer.emit(R.Events.ERROR,R.Events.ERROR,{type:x.ErrorTypes.MEDIA_ERROR,details:x.ErrorDetails.FRAG_PARSING_ERROR,fatal:N,reason:F}),N)return}I.initTrackConfig(n,this.observer,r,L,this.audioCodec);var K;if(d.pts!==void 0)K=d.pts;else if(t){var V=I.getFrameDuration(n.samplerate);K=t.sample.pts+V}else{g.logger.warn("[tsdemuxer]: AAC PES unknown PTS");return}for(var z=0;L<D;)if(I.isHeader(r,L)){if(L+5<D){var $=I.appendFrame(n,r,L,K,z);if($)if($.missing)this.aacOverFlow=$;else{L+=$.length,z++;continue}}break}else L++},u.parseMPEGPES=function(d){var o=d.data,n=o.length,t=0,r=0,c=d.pts;if(c===void 0){g.logger.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;r<n;)if(C.isHeader(o,r)){var f=C.appendFrame(this._audioTrack,o,r,c,t);if(f)r+=f.length,t++;else break}else r++},u.parseID3PES=function(d){if(d.pts===void 0){g.logger.warn("[tsdemuxer]: ID3 PES unknown PTS");return}this._id3Track.samples.push(d)},l}();v.minProbeByteLength=188;function y(l,u,m,d){return{key:l,frame:!1,pts:u,dts:m,units:[],debug:d,length:0}}function p(l,u){return(l[u+10]&31)<<8|l[u+11]}function s(l,u,m,d){var o={audio:-1,avc:-1,id3:-1,isAAC:!0},n=(l[u+1]&15)<<8|l[u+2],t=u+3+n-4,r=(l[u+10]&15)<<8|l[u+11];for(u+=12+r;u<t;){var c=(l[u+1]&31)<<8|l[u+2];switch(l[u]){case 207:if(!d){g.logger.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:o.audio===-1&&(o.audio=c);break;case 21:o.id3===-1&&(o.id3=c);break;case 219:if(!d){g.logger.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:o.avc===-1&&(o.avc=c);break;case 3:case 4:m?o.audio===-1&&(o.audio=c,o.isAAC=!1):g.logger.log("MPEG audio found, not supported in this browser");break;case 36:g.logger.warn("Unsupported HEVC stream type found");break;default:break}u+=((l[u+3]&15)<<8|l[u+4])+5}return o}function e(l){var u=0,m,d,o,n,t,r=l.data;if(!l||l.size===0)return null;for(;r[0].length<19&&r.length>1;){var c=new Uint8Array(r[0].length+r[1].length);c.set(r[0]),c.set(r[1],r[0].length),r[0]=c,r.splice(1,1)}m=r[0];var f=(m[0]<<16)+(m[1]<<8)+m[2];if(f===1){if(d=(m[4]<<8)+m[5],d&&d>l.size-6)return null;var b=m[7];b&192&&(n=(m[9]&14)*536870912+(m[10]&255)*4194304+(m[11]&254)*16384+(m[12]&255)*128+(m[13]&254)/2,b&64?(t=(m[14]&14)*536870912+(m[15]&255)*4194304+(m[16]&254)*16384+(m[17]&255)*128+(m[18]&254)/2,n-t>60*9e4&&(g.logger.warn(Math.round((n-t)/9e4)+"s delta between PTS and DTS, align them"),n=t)):t=n),o=m[8];var L=o+9;if(l.size<=L)return null;l.size-=L;for(var D=new Uint8Array(l.size),F=0,N=r.length;F<N;F++){m=r[F];var K=m.byteLength;if(L)if(L>K){L-=K;continue}else m=m.subarray(L),K-=L,L=0;D.set(m,u),u+=K}return d&&(d-=o+3),{data:D,pts:n,dts:t,len:d}}return null}function a(l,u){if(l.units.length&&l.frame){if(l.pts===void 0){var m=u.samples,d=m.length;if(d){var o=m[d-1];l.pts=o.pts,l.dts=o.dts}else{u.dropped++;return}}u.samples.push(l)}l.debug.length&&g.logger.log(l.pts+"/"+l.dts+":"+l.debug)}function i(l,u){var m=l.length;if(m>0){if(u.pts>=l[m-1].pts)l.push(u);else for(var d=m-1;d>=0;d--)if(u.pts<l[d].pts){l.splice(d,0,u);break}}else l.push(u)}function h(l){for(var u=l.byteLength,m=[],d=1;d<u-2;)l[d]===0&&l[d+1]===0&&l[d+2]===3?(m.push(d+2),d+=2):d++;if(m.length===0)return l;var o=u-m.length,n=new Uint8Array(o),t=0;for(d=0;d<o;t++,d++)t===m[0]&&(t++,m.shift()),n[d]=l[t];return n}k.default=v},"./src/errors.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"ErrorTypes",function(){return I}),E.d(k,"ErrorDetails",function(){return C});var I;(function(A){A.NETWORK_ERROR="networkError",A.MEDIA_ERROR="mediaError",A.KEY_SYSTEM_ERROR="keySystemError",A.MUX_ERROR="muxError",A.OTHER_ERROR="otherError"})(I||(I={}));var C;(function(A){A.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",A.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",A.KEY_SYSTEM_NO_SESSION="keySystemNoSession",A.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",A.KEY_SYSTEM_NO_INIT_DATA="keySystemNoInitData",A.MANIFEST_LOAD_ERROR="manifestLoadError",A.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",A.MANIFEST_PARSING_ERROR="manifestParsingError",A.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",A.LEVEL_EMPTY_ERROR="levelEmptyError",A.LEVEL_LOAD_ERROR="levelLoadError",A.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",A.LEVEL_SWITCH_ERROR="levelSwitchError",A.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",A.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",A.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",A.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",A.FRAG_LOAD_ERROR="fragLoadError",A.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",A.FRAG_DECRYPT_ERROR="fragDecryptError",A.FRAG_PARSING_ERROR="fragParsingError",A.REMUX_ALLOC_ERROR="remuxAllocError",A.KEY_LOAD_ERROR="keyLoadError",A.KEY_LOAD_TIMEOUT="keyLoadTimeOut",A.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",A.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",A.BUFFER_APPEND_ERROR="bufferAppendError",A.BUFFER_APPENDING_ERROR="bufferAppendingError",A.BUFFER_STALLED_ERROR="bufferStalledError",A.BUFFER_FULL_ERROR="bufferFullError",A.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",A.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",A.INTERNAL_EXCEPTION="internalException",A.INTERNAL_ABORTED="aborted",A.UNKNOWN="unknown"})(C||(C={}))},"./src/events.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"Events",function(){return I});var I;(function(C){C.MEDIA_ATTACHING="hlsMediaAttaching",C.MEDIA_ATTACHED="hlsMediaAttached",C.MEDIA_DETACHING="hlsMediaDetaching",C.MEDIA_DETACHED="hlsMediaDetached",C.BUFFER_RESET="hlsBufferReset",C.BUFFER_CODECS="hlsBufferCodecs",C.BUFFER_CREATED="hlsBufferCreated",C.BUFFER_APPENDING="hlsBufferAppending",C.BUFFER_APPENDED="hlsBufferAppended",C.BUFFER_EOS="hlsBufferEos",C.BUFFER_FLUSHING="hlsBufferFlushing",C.BUFFER_FLUSHED="hlsBufferFlushed",C.MANIFEST_LOADING="hlsManifestLoading",C.MANIFEST_LOADED="hlsManifestLoaded",C.MANIFEST_PARSED="hlsManifestParsed",C.LEVEL_SWITCHING="hlsLevelSwitching",C.LEVEL_SWITCHED="hlsLevelSwitched",C.LEVEL_LOADING="hlsLevelLoading",C.LEVEL_LOADED="hlsLevelLoaded",C.LEVEL_UPDATED="hlsLevelUpdated",C.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",C.LEVELS_UPDATED="hlsLevelsUpdated",C.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",C.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",C.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",C.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",C.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",C.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",C.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",C.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",C.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",C.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",C.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",C.CUES_PARSED="hlsCuesParsed",C.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",C.INIT_PTS_FOUND="hlsInitPtsFound",C.FRAG_LOADING="hlsFragLoading",C.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",C.FRAG_LOADED="hlsFragLoaded",C.FRAG_DECRYPTED="hlsFragDecrypted",C.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",C.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",C.FRAG_PARSING_METADATA="hlsFragParsingMetadata",C.FRAG_PARSED="hlsFragParsed",C.FRAG_BUFFERED="hlsFragBuffered",C.FRAG_CHANGED="hlsFragChanged",C.FPS_DROP="hlsFpsDrop",C.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",C.ERROR="hlsError",C.DESTROYING="hlsDestroying",C.KEY_LOADING="hlsKeyLoading",C.KEY_LOADED="hlsKeyLoaded",C.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",C.BACK_BUFFER_REACHED="hlsBackBufferReached"})(I||(I={}))},"./src/hls.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return l});var I=E("./node_modules/url-toolkit/src/url-toolkit.js"),C=E.n(I),A=E("./src/loader/playlist-loader.ts"),M=E("./src/loader/key-loader.ts"),w=E("./src/controller/id3-track-controller.ts"),R=E("./src/controller/latency-controller.ts"),S=E("./src/controller/level-controller.ts"),g=E("./src/controller/fragment-tracker.ts"),x=E("./src/controller/stream-controller.ts"),T=E("./src/is-supported.ts"),v=E("./src/utils/logger.ts"),y=E("./src/config.ts"),p=E("./node_modules/eventemitter3/index.js"),s=E.n(p),e=E("./src/events.ts"),a=E("./src/errors.ts");function i(u,m){for(var d=0;d<m.length;d++){var o=m[d];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(u,o.key,o)}}function h(u,m,d){return m&&i(u.prototype,m),d&&i(u,d),u}var l=function(){u.isSupported=function(){return Object(T.isSupported)()};function u(d){d===void 0&&(d={}),this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new p.EventEmitter,this._autoLevelCapping=void 0,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null;var o=this.config=Object(y.mergeConfig)(u.DefaultConfig,d);this.userConfig=d,Object(v.enableLogs)(o.debug),this._autoLevelCapping=-1,o.progressive&&Object(y.enableStreamingMode)(o);var n=o.abrController,t=o.bufferController,r=o.capLevelController,c=o.fpsController,f=this.abrController=new n(this),b=this.bufferController=new t(this),L=this.capLevelController=new r(this),D=new c(this),F=new A.default(this),N=new M.default(this),K=new w.default(this),V=this.levelController=new S.default(this),z=new g.FragmentTracker(this),$=this.streamController=new x.default(this,z);L.setStreamController($),D.setStreamController($);var q=[V,$];this.networkControllers=q;var J=[F,N,f,b,L,D,K,z];this.audioTrackController=this.createController(o.audioTrackController,null,q),this.createController(o.audioStreamController,z,q),this.subtitleTrackController=this.createController(o.subtitleTrackController,null,q),this.createController(o.subtitleStreamController,z,q),this.createController(o.timelineController,null,J),this.emeController=this.createController(o.emeController,null,J),this.cmcdController=this.createController(o.cmcdController,null,J),this.latencyController=this.createController(R.default,null,J),this.coreComponents=J}var m=u.prototype;return m.createController=function(o,n,t){if(o){var r=n?new o(this,n):new o(this);return t&&t.push(r),r}return null},m.on=function(o,n,t){t===void 0&&(t=this),this._emitter.on(o,n,t)},m.once=function(o,n,t){t===void 0&&(t=this),this._emitter.once(o,n,t)},m.removeAllListeners=function(o){this._emitter.removeAllListeners(o)},m.off=function(o,n,t,r){t===void 0&&(t=this),this._emitter.off(o,n,t,r)},m.listeners=function(o){return this._emitter.listeners(o)},m.emit=function(o,n,t){return this._emitter.emit(o,n,t)},m.trigger=function(o,n){if(this.config.debug)return this.emit(o,o,n);try{return this.emit(o,o,n)}catch(t){v.logger.error("An internal error happened while handling event "+o+'. Error message: "'+t.message+'". Here is a stacktrace:',t),this.trigger(e.Events.ERROR,{type:a.ErrorTypes.OTHER_ERROR,details:a.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:o,error:t})}return!1},m.listenerCount=function(o){return this._emitter.listenerCount(o)},m.destroy=function(){v.logger.log("destroy"),this.trigger(e.Events.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(function(o){return o.destroy()}),this.networkControllers.length=0,this.coreComponents.forEach(function(o){return o.destroy()}),this.coreComponents.length=0},m.attachMedia=function(o){v.logger.log("attachMedia"),this._media=o,this.trigger(e.Events.MEDIA_ATTACHING,{media:o})},m.detachMedia=function(){v.logger.log("detachMedia"),this.trigger(e.Events.MEDIA_DETACHING,void 0),this._media=null},m.loadSource=function(o){this.stopLoad();var n=this.media,t=this.url,r=this.url=I.buildAbsoluteURL(self.location.href,o,{alwaysNormalize:!0});v.logger.log("loadSource:"+r),n&&t&&t!==r&&this.bufferController.hasSourceTypes()&&(this.detachMedia(),this.attachMedia(n)),this.trigger(e.Events.MANIFEST_LOADING,{url:o})},m.startLoad=function(o){o===void 0&&(o=-1),v.logger.log("startLoad("+o+")"),this.networkControllers.forEach(function(n){n.startLoad(o)})},m.stopLoad=function(){v.logger.log("stopLoad"),this.networkControllers.forEach(function(o){o.stopLoad()})},m.swapAudioCodec=function(){v.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()},m.recoverMediaError=function(){v.logger.log("recoverMediaError");var o=this._media;this.detachMedia(),o&&this.attachMedia(o)},m.removeLevel=function(o,n){n===void 0&&(n=0),this.levelController.removeLevel(o,n)},h(u,[{key:"levels",get:function(){var o=this.levelController.levels;return o||[]}},{key:"currentLevel",get:function(){return this.streamController.currentLevel},set:function(o){v.logger.log("set currentLevel:"+o),this.loadLevel=o,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}},{key:"nextLevel",get:function(){return this.streamController.nextLevel},set:function(o){v.logger.log("set nextLevel:"+o),this.levelController.manualLevel=o,this.streamController.nextLevelSwitch()}},{key:"loadLevel",get:function(){return this.levelController.level},set:function(o){v.logger.log("set loadLevel:"+o),this.levelController.manualLevel=o}},{key:"nextLoadLevel",get:function(){return this.levelController.nextLoadLevel},set:function(o){this.levelController.nextLoadLevel=o}},{key:"firstLevel",get:function(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)},set:function(o){v.logger.log("set firstLevel:"+o),this.levelController.firstLevel=o}},{key:"startLevel",get:function(){return this.levelController.startLevel},set:function(o){v.logger.log("set startLevel:"+o),o!==-1&&(o=Math.max(o,this.minAutoLevel)),this.levelController.startLevel=o}},{key:"capLevelToPlayerSize",get:function(){return this.config.capLevelToPlayerSize},set:function(o){var n=!!o;n!==this.config.capLevelToPlayerSize&&(n?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=n)}},{key:"autoLevelCapping",get:function(){return this._autoLevelCapping},set:function(o){this._autoLevelCapping!==o&&(v.logger.log("set autoLevelCapping:"+o),this._autoLevelCapping=o)}},{key:"bandwidthEstimate",get:function(){var o=this.abrController.bwEstimator;return o?o.getEstimate():NaN}},{key:"autoLevelEnabled",get:function(){return this.levelController.manualLevel===-1}},{key:"manualLevel",get:function(){return this.levelController.manualLevel}},{key:"minAutoLevel",get:function(){var o=this.levels,n=this.config.minAutoBitrate;if(!o)return 0;for(var t=o.length,r=0;r<t;r++)if(o[r].maxBitrate>n)return r;return 0}},{key:"maxAutoLevel",get:function(){var o=this.levels,n=this.autoLevelCapping,t;return n===-1&&o&&o.length?t=o.length-1:t=n,t}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(o){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,o)}},{key:"audioTracks",get:function(){var o=this.audioTrackController;return o?o.audioTracks:[]}},{key:"audioTrack",get:function(){var o=this.audioTrackController;return o?o.audioTrack:-1},set:function(o){var n=this.audioTrackController;n&&(n.audioTrack=o)}},{key:"subtitleTracks",get:function(){var o=this.subtitleTrackController;return o?o.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var o=this.subtitleTrackController;return o?o.subtitleTrack:-1},set:function(o){var n=this.subtitleTrackController;n&&(n.subtitleTrack=o)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var o=this.subtitleTrackController;return o?o.subtitleDisplay:!1},set:function(o){var n=this.subtitleTrackController;n&&(n.subtitleDisplay=o)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(o){this.config.lowLatencyMode=o}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}],[{key:"version",get:function(){return"1.1.2"}},{key:"Events",get:function(){return e.Events}},{key:"ErrorTypes",get:function(){return a.ErrorTypes}},{key:"ErrorDetails",get:function(){return a.ErrorDetails}},{key:"DefaultConfig",get:function(){return u.defaultConfig?u.defaultConfig:y.hlsDefaultConfig},set:function(o){u.defaultConfig=o}}]),u}();l.defaultConfig=void 0},"./src/is-supported.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"isSupported",function(){return A}),E.d(k,"changeTypeSupported",function(){return M});var I=E("./src/utils/mediasource-helper.ts");function C(){return self.SourceBuffer||self.WebKitSourceBuffer}function A(){var w=Object(I.getMediaSource)();if(!w)return!1;var R=C(),S=w&&typeof w.isTypeSupported=="function"&&w.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),g=!R||R.prototype&&typeof R.prototype.appendBuffer=="function"&&typeof R.prototype.remove=="function";return!!S&&!!g}function M(){var w,R=C();return typeof(R==null||((w=R.prototype)===null||w===void 0)?void 0:w.changeType)=="function"}},"./src/loader/fragment-loader.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return v}),E.d(k,"LoadError",function(){return p});var I=E("./src/polyfills/number.ts"),C=E("./src/errors.ts");function A(s,e){s.prototype=Object.create(e.prototype),s.prototype.constructor=s,g(s,e)}function M(s){var e=typeof Map=="function"?new Map:void 0;return M=function(i){if(i===null||!S(i))return i;if(typeof i!="function")throw new TypeError("Super expression must either be null or a function");if(typeof e!="undefined"){if(e.has(i))return e.get(i);e.set(i,h)}function h(){return w(i,arguments,x(this).constructor)}return h.prototype=Object.create(i.prototype,{constructor:{value:h,enumerable:!1,writable:!0,configurable:!0}}),g(h,i)},M(s)}function w(s,e,a){return R()?w=Reflect.construct:w=function(h,l,u){var m=[null];m.push.apply(m,l);var d=Function.bind.apply(h,m),o=new d;return u&&g(o,u.prototype),o},w.apply(null,arguments)}function R(){if(typeof Reflect=="undefined"||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(s){return!1}}function S(s){return Function.toString.call(s).indexOf("[native code]")!==-1}function g(s,e){return g=Object.setPrototypeOf||function(i,h){return i.__proto__=h,i},g(s,e)}function x(s){return x=Object.setPrototypeOf?Object.getPrototypeOf:function(a){return a.__proto__||Object.getPrototypeOf(a)},x(s)}var T=Math.pow(2,17),v=function(){function s(a){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=a}var e=s.prototype;return e.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},e.abort=function(){this.loader&&this.loader.abort()},e.load=function(i,h){var l=this,u=i.url;if(!u)return Promise.reject(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:i,networkDetails:null},"Fragment does not have a "+(u?"part list":"url")));this.abort();var m=this.config,d=m.fLoader,o=m.loader;return new Promise(function(n,t){l.loader&&l.loader.destroy();var r=l.loader=i.loader=d?new d(m):new o(m),c=y(i),f={timeout:m.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:m.fragLoadingMaxRetryTimeout,highWaterMark:T};i.stats=r.stats,r.load(c,f,{onSuccess:function(L,D,F,N){l.resetLoader(i,r),n({frag:i,part:null,payload:L.data,networkDetails:N})},onError:function(L,D,F){l.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:i,response:L,networkDetails:F}))},onAbort:function(L,D,F){l.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:i,networkDetails:F}))},onTimeout:function(L,D,F){l.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:i,networkDetails:F}))},onProgress:function(L,D,F,N){h&&h({frag:i,part:null,payload:F,networkDetails:N})}})})},e.loadPart=function(i,h,l){var u=this;this.abort();var m=this.config,d=m.fLoader,o=m.loader;return new Promise(function(n,t){u.loader&&u.loader.destroy();var r=u.loader=i.loader=d?new d(m):new o(m),c=y(i,h),f={timeout:m.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:m.fragLoadingMaxRetryTimeout,highWaterMark:T};h.stats=r.stats,r.load(c,f,{onSuccess:function(L,D,F,N){u.resetLoader(i,r),u.updateStatsFromPart(i,h);var K={frag:i,part:h,payload:L.data,networkDetails:N};l(K),n(K)},onError:function(L,D,F){u.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:i,part:h,response:L,networkDetails:F}))},onAbort:function(L,D,F){i.stats.aborted=h.stats.aborted,u.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:i,part:h,networkDetails:F}))},onTimeout:function(L,D,F){u.resetLoader(i,r),t(new p({type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:i,part:h,networkDetails:F}))}})})},e.updateStatsFromPart=function(i,h){var l=i.stats,u=h.stats,m=u.total;if(l.loaded+=u.loaded,m){var d=Math.round(i.duration/h.duration),o=Math.min(Math.round(l.loaded/m),d),n=d-o,t=n*Math.round(l.loaded/o);l.total=l.loaded+t}else l.total=Math.max(l.loaded,l.total);var r=l.loading,c=u.loading;r.start?r.first+=c.first-c.start:(r.start=c.start,r.first=c.first),r.end=c.end},e.resetLoader=function(i,h){i.loader=null,this.loader===h&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),h.destroy()},s}();function y(s,e){e===void 0&&(e=null);var a=e||s,i={frag:s,part:e,responseType:"arraybuffer",url:a.url,headers:{},rangeStart:0,rangeEnd:0},h=a.byteRangeStartOffset,l=a.byteRangeEndOffset;return Object(I.isFiniteNumber)(h)&&Object(I.isFiniteNumber)(l)&&(i.rangeStart=h,i.rangeEnd=l),i}var p=function(s){A(e,s);function e(a){for(var i,h=arguments.length,l=new Array(h>1?h-1:0),u=1;u<h;u++)l[u-1]=arguments[u];return i=s.call.apply(s,[this].concat(l))||this,i.data=void 0,i.data=a,i}return e}(M(Error))},"./src/loader/fragment.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"ElementaryStreamTypes",function(){return v}),E.d(k,"BaseSegment",function(){return y}),E.d(k,"Fragment",function(){return p}),E.d(k,"Part",function(){return s});var I=E("./src/polyfills/number.ts"),C=E("./node_modules/url-toolkit/src/url-toolkit.js"),A=E.n(C),M=E("./src/utils/logger.ts"),w=E("./src/loader/level-key.ts"),R=E("./src/loader/load-stats.ts");function S(e,a){e.prototype=Object.create(a.prototype),e.prototype.constructor=e,g(e,a)}function g(e,a){return g=Object.setPrototypeOf||function(h,l){return h.__proto__=l,h},g(e,a)}function x(e,a){for(var i=0;i<a.length;i++){var h=a[i];h.enumerable=h.enumerable||!1,h.configurable=!0,"value"in h&&(h.writable=!0),Object.defineProperty(e,h.key,h)}}function T(e,a,i){return a&&x(e.prototype,a),i&&x(e,i),e}var v;(function(e){e.AUDIO="audio",e.VIDEO="video",e.AUDIOVIDEO="audiovideo"})(v||(v={}));var y=function(){function e(i){var h;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=(h={},h[v.AUDIO]=null,h[v.VIDEO]=null,h[v.AUDIOVIDEO]=null,h),this.baseurl=i}var a=e.prototype;return a.setByteRange=function(h,l){var u=h.split("@",2),m=[];u.length===1?m[0]=l?l.byteRangeEndOffset:0:m[0]=parseInt(u[1]),m[1]=parseInt(u[0])+m[0],this._byteRange=m},T(e,[{key:"byteRange",get:function(){return this._byteRange?this._byteRange:[]}},{key:"byteRangeStartOffset",get:function(){return this.byteRange[0]}},{key:"byteRangeEndOffset",get:function(){return this.byteRange[1]}},{key:"url",get:function(){return!this._url&&this.baseurl&&this.relurl&&(this._url=Object(C.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""},set:function(h){this._url=h}}]),e}(),p=function(e){S(a,e);function a(h,l){var u;return u=e.call(this,l)||this,u._decryptdata=null,u.rawProgramDateTime=null,u.programDateTime=null,u.tagList=[],u.duration=0,u.sn=0,u.levelkey=void 0,u.type=void 0,u.loader=null,u.level=-1,u.cc=0,u.startPTS=void 0,u.endPTS=void 0,u.appendedPTS=void 0,u.startDTS=void 0,u.endDTS=void 0,u.start=0,u.deltaPTS=void 0,u.maxStartPTS=void 0,u.minEndPTS=void 0,u.stats=new R.LoadStats,u.urlId=0,u.data=void 0,u.bitrateTest=!1,u.title=null,u.initSegment=null,u.type=h,u}var i=a.prototype;return i.createInitializationVector=function(l){for(var u=new Uint8Array(16),m=12;m<16;m++)u[m]=l>>8*(15-m)&255;return u},i.setDecryptDataFromLevelKey=function(l,u){var m=l;return(l==null?void 0:l.method)==="AES-128"&&l.uri&&!l.iv&&(m=w.LevelKey.fromURI(l.uri),m.method=l.method,m.iv=this.createInitializationVector(u),m.keyFormat="identity"),m},i.setElementaryStreamInfo=function(l,u,m,d,o,n){n===void 0&&(n=!1);var t=this.elementaryStreams,r=t[l];if(!r){t[l]={startPTS:u,endPTS:m,startDTS:d,endDTS:o,partial:n};return}r.startPTS=Math.min(r.startPTS,u),r.endPTS=Math.max(r.endPTS,m),r.startDTS=Math.min(r.startDTS,d),r.endDTS=Math.max(r.endDTS,o)},i.clearElementaryStreamInfo=function(){var l=this.elementaryStreams;l[v.AUDIO]=null,l[v.VIDEO]=null,l[v.AUDIOVIDEO]=null},T(a,[{key:"decryptdata",get:function(){if(!this.levelkey&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkey){var l=this.sn;typeof l!="number"&&(this.levelkey&&this.levelkey.method==="AES-128"&&!this.levelkey.iv&&M.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),l=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,l)}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(this.programDateTime===null)return null;if(!Object(I.isFiniteNumber)(this.programDateTime))return null;var l=Object(I.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+l*1e3}},{key:"encrypted",get:function(){var l;return!!((l=this.decryptdata)!==null&&l!==void 0&&l.keyFormat&&this.decryptdata.uri)}}]),a}(y),s=function(e){S(a,e);function a(i,h,l,u,m){var d;d=e.call(this,l)||this,d.fragOffset=0,d.duration=0,d.gap=!1,d.independent=!1,d.relurl=void 0,d.fragment=void 0,d.index=void 0,d.stats=new R.LoadStats,d.duration=i.decimalFloatingPoint("DURATION"),d.gap=i.bool("GAP"),d.independent=i.bool("INDEPENDENT"),d.relurl=i.enumeratedString("URI"),d.fragment=h,d.index=u;var o=i.enumeratedString("BYTERANGE");return o&&d.setByteRange(o,m),m&&(d.fragOffset=m.fragOffset+m.duration),d}return T(a,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var h=this.elementaryStreams;return!!(h.audio||h.video||h.audiovideo)}}]),a}(y)},"./src/loader/key-loader.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return M});var I=E("./src/events.ts"),C=E("./src/errors.ts"),A=E("./src/utils/logger.ts"),M=function(){function w(S){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=S,this._registerListeners()}var R=w.prototype;return R._registerListeners=function(){this.hls.on(I.Events.KEY_LOADING,this.onKeyLoading,this)},R._unregisterListeners=function(){this.hls.off(I.Events.KEY_LOADING,this.onKeyLoading)},R.destroy=function(){this._unregisterListeners();for(var g in this.loaders){var x=this.loaders[g];x&&x.destroy()}this.loaders={}},R.onKeyLoading=function(g,x){var T=x.frag,v=T.type,y=this.loaders[v];if(!T.decryptdata){A.logger.warn("Missing decryption data on fragment in onKeyLoading");return}var p=T.decryptdata.uri;if(p!==this.decrypturl||this.decryptkey===null){var s=this.hls.config;if(y&&(A.logger.warn("abort previous key loader for type:"+v),y.abort()),!p){A.logger.warn("key uri is falsy");return}var e=s.loader,a=T.loader=this.loaders[v]=new e(s);this.decrypturl=p,this.decryptkey=null;var i={url:p,frag:T,responseType:"arraybuffer"},h={timeout:s.fragLoadingTimeOut,maxRetry:0,retryDelay:s.fragLoadingRetryDelay,maxRetryDelay:s.fragLoadingMaxRetryTimeout,highWaterMark:0},l={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};a.load(i,h,l)}else this.decryptkey&&(T.decryptdata.key=this.decryptkey,this.hls.trigger(I.Events.KEY_LOADED,{frag:T}))},R.loadsuccess=function(g,x,T){var v=T.frag;if(!v.decryptdata){A.logger.error("after key load, decryptdata unset");return}this.decryptkey=v.decryptdata.key=new Uint8Array(g.data),v.loader=null,delete this.loaders[v.type],this.hls.trigger(I.Events.KEY_LOADED,{frag:v})},R.loaderror=function(g,x){var T=x.frag,v=T.loader;v&&v.abort(),delete this.loaders[T.type],this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:T,response:g})},R.loadtimeout=function(g,x){var T=x.frag,v=T.loader;v&&v.abort(),delete this.loaders[T.type],this.hls.trigger(I.Events.ERROR,{type:C.ErrorTypes.NETWORK_ERROR,details:C.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:T})},w}()},"./src/loader/level-details.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"LevelDetails",function(){return w});var I=E("./src/polyfills/number.ts");function C(R,S){for(var g=0;g<S.length;g++){var x=S[g];x.enumerable=x.enumerable||!1,x.configurable=!0,"value"in x&&(x.writable=!0),Object.defineProperty(R,x.key,x)}}function A(R,S,g){return S&&C(R.prototype,S),g&&C(R,g),R}var M=10,w=function(){function R(g){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.live=!0,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.availabilityDelay=void 0,this.misses=0,this.needSidxRanges=!1,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.fragments=[],this.url=g}var S=R.prototype;return S.reloaded=function(x){if(!x){this.advanced=!0,this.updated=!0;return}var T=this.lastPartSn-x.lastPartSn,v=this.lastPartIndex-x.lastPartIndex;this.updated=this.endSN!==x.endSN||!!v||!!T,this.advanced=this.endSN>x.endSN||T>0||T===0&&v>0,this.updated||this.advanced?this.misses=Math.floor(x.misses*.6):this.misses=x.misses+1,this.availabilityDelay=x.availabilityDelay},A(R,[{key:"hasProgramDateTime",get:function(){return this.fragments.length?Object(I.isFiniteNumber)(this.fragments[this.fragments.length-1].programDateTime):!1}},{key:"levelTargetDuration",get:function(){return this.averagetargetduration||this.targetduration||M}},{key:"drift",get:function(){var x=this.driftEndTime-this.driftStartTime;if(x>0){var T=this.driftEnd-this.driftStart;return T*1e3/x}return 1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var x;return(x=this.fragments)!==null&&x!==void 0&&x.length?this.fragments[this.fragments.length-1].end:0}},{key:"age",get:function(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}},{key:"lastPartIndex",get:function(){var x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}]),R}()},"./src/loader/level-key.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"LevelKey",function(){return w});var I=E("./node_modules/url-toolkit/src/url-toolkit.js"),C=E.n(I);function A(R,S){for(var g=0;g<S.length;g++){var x=S[g];x.enumerable=x.enumerable||!1,x.configurable=!0,"value"in x&&(x.writable=!0),Object.defineProperty(R,x.key,x)}}function M(R,S,g){return S&&A(R.prototype,S),g&&A(R,g),R}var w=function(){R.fromURL=function(g,x){return new R(g,x)},R.fromURI=function(g){return new R(g)};function R(S,g){this._uri=null,this.method=null,this.keyFormat=null,this.keyFormatVersions=null,this.keyID=null,this.key=null,this.iv=null,g?this._uri=Object(I.buildAbsoluteURL)(S,g,{alwaysNormalize:!0}):this._uri=S}return M(R,[{key:"uri",get:function(){return this._uri}}]),R}()},"./src/loader/load-stats.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"LoadStats",function(){return I});var I=function(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},"./src/loader/m3u8-parser.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return a});var I=E("./src/polyfills/number.ts"),C=E("./node_modules/url-toolkit/src/url-toolkit.js"),A=E.n(C),M=E("./src/loader/fragment.ts"),w=E("./src/loader/level-details.ts"),R=E("./src/loader/level-key.ts"),S=E("./src/utils/attr-list.ts"),g=E("./src/utils/logger.ts"),x=E("./src/utils/codecs.ts"),T=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-SESSION-DATA:([^\r\n]*)[\r\n]+/g,v=/#EXT-X-MEDIA:(.*)/g,y=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),p=new RegExp([/#(EXTM3U)/.source,/#EXT-X-(PLAYLIST-TYPE):(.+)/.source,/#EXT-X-(MEDIA-SEQUENCE): *(\d+)/.source,/#EXT-X-(SKIP):(.+)/.source,/#EXT-X-(TARGETDURATION): *(\d+)/.source,/#EXT-X-(KEY):(.+)/.source,/#EXT-X-(START):(.+)/.source,/#EXT-X-(ENDLIST)/.source,/#EXT-X-(DISCONTINUITY-SEQ)UENCE: *(\d+)/.source,/#EXT-X-(DIS)CONTINUITY/.source,/#EXT-X-(VERSION):(\d+)/.source,/#EXT-X-(MAP):(.+)/.source,/#EXT-X-(SERVER-CONTROL):(.+)/.source,/#EXT-X-(PART-INF):(.+)/.source,/#EXT-X-(GAP)/.source,/#EXT-X-(BITRATE):\s*(\d+)/.source,/#EXT-X-(PART):(.+)/.source,/#EXT-X-(PRELOAD-HINT):(.+)/.source,/#EXT-X-(RENDITION-REPORT):(.+)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|")),s=/\.(mp4|m4s|m4v|m4a)$/i;function e(m){var d,o;return s.test((d=(o=C.parseURL(m))===null||o===void 0?void 0:o.path)!=null?d:"")}var a=function(){function m(){}return m.findGroup=function(o,n){for(var t=0;t<o.length;t++){var r=o[t];if(r.id===n)return r}},m.convertAVC1ToAVCOTI=function(o){var n=o.split(".");if(n.length>2){var t=n.shift()+".";return t+=parseInt(n.shift()).toString(16),t+=("000"+parseInt(n.shift()).toString(16)).substr(-4),t}return o},m.resolve=function(o,n){return C.buildAbsoluteURL(n,o,{alwaysNormalize:!0})},m.parseMasterPlaylist=function(o,n){var t=[],r={},c=!1;T.lastIndex=0;for(var f;(f=T.exec(o))!=null;)if(f[1]){var b=new S.AttrList(f[1]),L={attrs:b,bitrate:b.decimalInteger("AVERAGE-BANDWIDTH")||b.decimalInteger("BANDWIDTH"),name:b.NAME,url:m.resolve(f[2],n)},D=b.decimalResolution("RESOLUTION");D&&(L.width=D.width,L.height=D.height),i((b.CODECS||"").split(/[ ,]+/).filter(function(N){return N}),L),L.videoCodec&&L.videoCodec.indexOf("avc1")!==-1&&(L.videoCodec=m.convertAVC1ToAVCOTI(L.videoCodec)),t.push(L)}else if(f[3]){var F=new S.AttrList(f[3]);F["DATA-ID"]&&(c=!0,r[F["DATA-ID"]]=F)}return{levels:t,sessionData:c?r:null}},m.parseMasterPlaylistMedia=function(o,n,t,r){r===void 0&&(r=[]);var c,f=[],b=0;for(v.lastIndex=0;(c=v.exec(o))!==null;){var L=new S.AttrList(c[1]);if(L.TYPE===t){var D={attrs:L,bitrate:0,id:b++,groupId:L["GROUP-ID"],instreamId:L["INSTREAM-ID"],name:L.NAME||L.LANGUAGE||"",type:t,default:L.bool("DEFAULT"),autoselect:L.bool("AUTOSELECT"),forced:L.bool("FORCED"),lang:L.LANGUAGE,url:L.URI?m.resolve(L.URI,n):""};if(r.length){var F=m.findGroup(r,D.groupId)||r[0];h(D,F,"audioCodec"),h(D,F,"textCodec")}f.push(D)}}return f},m.parseLevelPlaylist=function(o,n,t,r,c){var f=new w.LevelDetails(n),b=f.fragments,L=null,D=0,F=0,N=0,K=0,V=null,z=new M.Fragment(r,n),$,q,J,he=-1,te=!1;for(y.lastIndex=0,f.m3u8=o;($=y.exec(o))!==null;){te&&(te=!1,z=new M.Fragment(r,n),z.start=N,z.sn=D,z.cc=K,z.level=t,L&&(z.initSegment=L,z.rawProgramDateTime=L.rawProgramDateTime));var le=$[1];if(le){z.duration=parseFloat(le);var re=(" "+$[2]).slice(1);z.title=re||null,z.tagList.push(re?["INF",le,re]:["INF",le])}else if($[3])Object(I.isFiniteNumber)(z.duration)&&(z.start=N,J&&(z.levelkey=J),z.sn=D,z.level=t,z.cc=K,z.urlId=c,b.push(z),z.relurl=(" "+$[3]).slice(1),u(z,V),V=z,N+=z.duration,D++,F=0,te=!0);else if($[4]){var ae=(" "+$[4]).slice(1);V?z.setByteRange(ae,V):z.setByteRange(ae)}else if($[5])z.rawProgramDateTime=(" "+$[5]).slice(1),z.tagList.push(["PROGRAM-DATE-TIME",z.rawProgramDateTime]),he===-1&&(he=b.length);else{if($=$[0].match(p),!$){g.logger.warn("No matches on slow regex match for level playlist!");continue}for(q=1;q<$.length&&!(typeof $[q]!="undefined");q++);var X=(" "+$[q]).slice(1),Z=(" "+$[q+1]).slice(1),ie=$[q+2]?(" "+$[q+2]).slice(1):"";switch(X){case"PLAYLIST-TYPE":f.type=Z.toUpperCase();break;case"MEDIA-SEQUENCE":D=f.startSN=parseInt(Z);break;case"SKIP":{var Re=new S.AttrList(Z),me=Re.decimalInteger("SKIPPED-SEGMENTS");if(Object(I.isFiniteNumber)(me)){f.skippedSegments=me;for(var pe=me;pe--;)b.unshift(null);D+=me}var De=Re.enumeratedString("RECENTLY-REMOVED-DATERANGES");De&&(f.recentlyRemovedDateranges=De.split(" "));break}case"TARGETDURATION":f.targetduration=parseFloat(Z);break;case"VERSION":f.version=parseInt(Z);break;case"EXTM3U":break;case"ENDLIST":f.live=!1;break;case"#":(Z||ie)&&z.tagList.push(ie?[Z,ie]:[Z]);break;case"DIS":K++;case"GAP":z.tagList.push([X]);break;case"BITRATE":z.tagList.push([X,Z]);break;case"DISCONTINUITY-SEQ":K=parseInt(Z);break;case"KEY":{var oe,ue=new S.AttrList(Z),ce=ue.enumeratedString("METHOD"),ge=ue.URI,ye=ue.hexadecimalInteger("IV"),ve=ue.enumeratedString("KEYFORMATVERSIONS"),fe=ue.enumeratedString("KEYID"),we=(oe=ue.enumeratedString("KEYFORMAT"))!=null?oe:"identity",Ce=["com.apple.streamingkeydelivery","com.microsoft.playready","urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed","com.widevine"];if(Ce.indexOf(we)>-1){g.logger.warn("Keyformat "+we+" is not supported from the manifest");continue}else if(we!=="identity")continue;ce&&(J=R.LevelKey.fromURL(n,ge),ge&&["AES-128","SAMPLE-AES","SAMPLE-AES-CENC"].indexOf(ce)>=0&&(J.method=ce,J.keyFormat=we,fe&&(J.keyID=fe),ve&&(J.keyFormatVersions=ve),J.iv=ye));break}case"START":{var be=new S.AttrList(Z),Ae=be.decimalFloatingPoint("TIME-OFFSET");Object(I.isFiniteNumber)(Ae)&&(f.startTimeOffset=Ae);break}case"MAP":{var xe=new S.AttrList(Z);z.relurl=xe.URI,xe.BYTERANGE&&z.setByteRange(xe.BYTERANGE),z.level=t,z.sn="initSegment",J&&(z.levelkey=J),z.initSegment=null,L=z,te=!0;break}case"SERVER-CONTROL":{var Te=new S.AttrList(Z);f.canBlockReload=Te.bool("CAN-BLOCK-RELOAD"),f.canSkipUntil=Te.optionalFloat("CAN-SKIP-UNTIL",0),f.canSkipDateRanges=f.canSkipUntil>0&&Te.bool("CAN-SKIP-DATERANGES"),f.partHoldBack=Te.optionalFloat("PART-HOLD-BACK",0),f.holdBack=Te.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{var Se=new S.AttrList(Z);f.partTarget=Se.decimalFloatingPoint("PART-TARGET");break}case"PART":{var de=f.partList;de||(de=f.partList=[]);var Le=F>0?de[de.length-1]:void 0,_e=F++,j=new M.Part(new S.AttrList(Z),z,n,_e,Le);de.push(j),z.duration+=j.duration;break}case"PRELOAD-HINT":{var _=new S.AttrList(Z);f.preloadHint=_;break}case"RENDITION-REPORT":{var P=new S.AttrList(Z);f.renditionReports=f.renditionReports||[],f.renditionReports.push(P);break}default:g.logger.warn("line parsed but not handled: "+$);break}}}V&&!V.relurl?(b.pop(),N-=V.duration,f.partList&&(f.fragmentHint=V)):f.partList&&(u(z,V),z.cc=K,f.fragmentHint=z);var B=b.length,W=b[0],O=b[B-1];if(N+=f.skippedSegments*f.targetduration,N>0&&B&&O){f.averagetargetduration=N/B;var U=O.sn;f.endSN=U!=="initSegment"?U:0,W&&(f.startCC=W.cc,W.initSegment||f.fragments.every(function(H){return H.relurl&&e(H.relurl)})&&(g.logger.warn("MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX"),z=new M.Fragment(r,n),z.relurl=O.relurl,z.level=t,z.sn="initSegment",W.initSegment=z,f.needSidxRanges=!0))}else f.endSN=0,f.startCC=0;return f.fragmentHint&&(N+=f.fragmentHint.duration),f.totalduration=N,f.endCC=K,he>0&&l(b,he),f},m}();function i(m,d){["video","audio","text"].forEach(function(o){var n=m.filter(function(r){return Object(x.isCodecType)(r,o)});if(n.length){var t=n.filter(function(r){return r.lastIndexOf("avc1",0)===0||r.lastIndexOf("mp4a",0)===0});d[o+"Codec"]=t.length>0?t[0]:n[0],m=m.filter(function(r){return n.indexOf(r)===-1})}}),d.unknownCodecs=m}function h(m,d,o){var n=d[o];n&&(m[o]=n)}function l(m,d){for(var o=m[d],n=d;n--;){var t=m[n];if(!t)return;t.programDateTime=o.programDateTime-t.duration*1e3,o=t}}function u(m,d){m.rawProgramDateTime?m.programDateTime=Date.parse(m.rawProgramDateTime):d!=null&&d.programDateTime&&(m.programDateTime=d.endProgramDateTime),Object(I.isFiniteNumber)(m.programDateTime)||(m.programDateTime=null,m.rawProgramDateTime=null)}},"./src/loader/playlist-loader.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/polyfills/number.ts"),C=E("./src/events.ts"),A=E("./src/errors.ts"),M=E("./src/utils/logger.ts"),w=E("./src/utils/mp4-tools.ts"),R=E("./src/loader/m3u8-parser.ts"),S=E("./src/types/loader.ts"),g=E("./src/utils/attr-list.ts");function x(y){var p=y.type;switch(p){case S.PlaylistContextType.AUDIO_TRACK:return S.PlaylistLevelType.AUDIO;case S.PlaylistContextType.SUBTITLE_TRACK:return S.PlaylistLevelType.SUBTITLE;default:return S.PlaylistLevelType.MAIN}}function T(y,p){var s=y.url;return(s===void 0||s.indexOf("data:")===0)&&(s=p.url),s}var v=function(){function y(s){this.hls=void 0,this.loaders=Object.create(null),this.hls=s,this.registerListeners()}var p=y.prototype;return p.registerListeners=function(){var e=this.hls;e.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(C.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(C.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(C.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.unregisterListeners=function(){var e=this.hls;e.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(C.Events.LEVEL_LOADING,this.onLevelLoading,this),e.off(C.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(C.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.createInternalLoader=function(e){var a=this.hls.config,i=a.pLoader,h=a.loader,l=i||h,u=new l(a);return e.loader=u,this.loaders[e.type]=u,u},p.getInternalLoader=function(e){return this.loaders[e.type]},p.resetInternalLoader=function(e){this.loaders[e]&&delete this.loaders[e]},p.destroyInternalLoaders=function(){for(var e in this.loaders){var a=this.loaders[e];a&&a.destroy(),this.resetInternalLoader(e)}},p.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},p.onManifestLoading=function(e,a){var i=a.url;this.load({id:null,groupId:null,level:0,responseType:"text",type:S.PlaylistContextType.MANIFEST,url:i,deliveryDirectives:null})},p.onLevelLoading=function(e,a){var i=a.id,h=a.level,l=a.url,u=a.deliveryDirectives;this.load({id:i,groupId:null,level:h,responseType:"text",type:S.PlaylistContextType.LEVEL,url:l,deliveryDirectives:u})},p.onAudioTrackLoading=function(e,a){var i=a.id,h=a.groupId,l=a.url,u=a.deliveryDirectives;this.load({id:i,groupId:h,level:null,responseType:"text",type:S.PlaylistContextType.AUDIO_TRACK,url:l,deliveryDirectives:u})},p.onSubtitleTrackLoading=function(e,a){var i=a.id,h=a.groupId,l=a.url,u=a.deliveryDirectives;this.load({id:i,groupId:h,level:null,responseType:"text",type:S.PlaylistContextType.SUBTITLE_TRACK,url:l,deliveryDirectives:u})},p.load=function(e){var a,i=this.hls.config,h=this.getInternalLoader(e);if(h){var l=h.context;if(l&&l.url===e.url){M.logger.trace("[playlist-loader]: playlist request ongoing");return}M.logger.log("[playlist-loader]: aborting previous loader for type: "+e.type),h.abort()}var u,m,d,o;switch(e.type){case S.PlaylistContextType.MANIFEST:u=i.manifestLoadingMaxRetry,m=i.manifestLoadingTimeOut,d=i.manifestLoadingRetryDelay,o=i.manifestLoadingMaxRetryTimeout;break;case S.PlaylistContextType.LEVEL:case S.PlaylistContextType.AUDIO_TRACK:case S.PlaylistContextType.SUBTITLE_TRACK:u=0,m=i.levelLoadingTimeOut;break;default:u=i.levelLoadingMaxRetry,m=i.levelLoadingTimeOut,d=i.levelLoadingRetryDelay,o=i.levelLoadingMaxRetryTimeout;break}if(h=this.createInternalLoader(e),(a=e.deliveryDirectives)!==null&&a!==void 0&&a.part){var n;if(e.type===S.PlaylistContextType.LEVEL&&e.level!==null?n=this.hls.levels[e.level].details:e.type===S.PlaylistContextType.AUDIO_TRACK&&e.id!==null?n=this.hls.audioTracks[e.id].details:e.type===S.PlaylistContextType.SUBTITLE_TRACK&&e.id!==null&&(n=this.hls.subtitleTracks[e.id].details),n){var t=n.partTarget,r=n.targetduration;t&&r&&(m=Math.min(Math.max(t*3,r*.8)*1e3,m))}}var c={timeout:m,maxRetry:u,retryDelay:d,maxRetryDelay:o,highWaterMark:0},f={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};h.load(e,c,f)},p.loadsuccess=function(e,a,i,h){if(h===void 0&&(h=null),i.isSidxRequest){this.handleSidxRequest(e,i),this.handlePlaylistLoaded(e,a,i,h);return}this.resetInternalLoader(i.type);var l=e.data;if(l.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(e,i,"no EXTM3U delimiter",h);return}a.parsing.start=performance.now(),l.indexOf("#EXTINF:")>0||l.indexOf("#EXT-X-TARGETDURATION:")>0?this.handleTrackOrLevelPlaylist(e,a,i,h):this.handleMasterPlaylist(e,a,i,h)},p.loaderror=function(e,a,i){i===void 0&&(i=null),this.handleNetworkError(a,i,!1,e)},p.loadtimeout=function(e,a,i){i===void 0&&(i=null),this.handleNetworkError(a,i,!0)},p.handleMasterPlaylist=function(e,a,i,h){var l=this.hls,u=e.data,m=T(e,i),d=R.default.parseMasterPlaylist(u,m),o=d.levels,n=d.sessionData;if(!o.length){this.handleManifestParsingError(e,i,"no level found in manifest",h);return}var t=o.map(function(D){return{id:D.attrs.AUDIO,audioCodec:D.audioCodec}}),r=o.map(function(D){return{id:D.attrs.SUBTITLES,textCodec:D.textCodec}}),c=R.default.parseMasterPlaylistMedia(u,m,"AUDIO",t),f=R.default.parseMasterPlaylistMedia(u,m,"SUBTITLES",r),b=R.default.parseMasterPlaylistMedia(u,m,"CLOSED-CAPTIONS");if(c.length){var L=c.some(function(D){return!D.url});!L&&o[0].audioCodec&&!o[0].attrs.AUDIO&&(M.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),c.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new g.AttrList({}),bitrate:0,url:""}))}l.trigger(C.Events.MANIFEST_LOADED,{levels:o,audioTracks:c,subtitles:f,captions:b,url:m,stats:a,networkDetails:h,sessionData:n})},p.handleTrackOrLevelPlaylist=function(e,a,i,h){var l=this.hls,u=i.id,m=i.level,d=i.type,o=T(e,i),n=Object(I.isFiniteNumber)(u)?u:0,t=Object(I.isFiniteNumber)(m)?m:n,r=x(i),c=R.default.parseLevelPlaylist(e.data,o,t,r,n);if(!c.fragments.length){l.trigger(C.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:o,reason:"no fragments found in level",level:typeof i.level=="number"?i.level:void 0});return}if(d===S.PlaylistContextType.MANIFEST){var f={attrs:new g.AttrList({}),bitrate:0,details:c,name:"",url:o};l.trigger(C.Events.MANIFEST_LOADED,{levels:[f],audioTracks:[],url:o,stats:a,networkDetails:h,sessionData:null})}if(a.parsing.end=performance.now(),c.needSidxRanges){var b,L=(b=c.fragments[0].initSegment)===null||b===void 0?void 0:b.url;this.load({url:L,isSidxRequest:!0,type:d,level:m,levelDetails:c,id:u,groupId:null,rangeStart:0,rangeEnd:2048,responseType:"arraybuffer",deliveryDirectives:null});return}i.levelDetails=c,this.handlePlaylistLoaded(e,a,i,h)},p.handleSidxRequest=function(e,a){var i=Object(w.parseSegmentIndex)(new Uint8Array(e.data));if(!i)return;var h=i.references,l=a.levelDetails;h.forEach(function(u,m){var d=u.info,o=l.fragments[m];o.byteRange.length===0&&o.setByteRange(String(1+d.end-d.start)+"@"+String(d.start)),o.initSegment&&o.initSegment.setByteRange(String(i.moovEndOffset)+"@0")})},p.handleManifestParsingError=function(e,a,i,h){this.hls.trigger(C.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:a.type===S.PlaylistContextType.MANIFEST,url:e.url,reason:i,response:e,context:a,networkDetails:h})},p.handleNetworkError=function(e,a,i,h){i===void 0&&(i=!1),M.logger.warn("[playlist-loader]: A network "+(i?"timeout":"error")+" occurred while loading "+e.type+" level: "+e.level+" id: "+e.id+' group-id: "'+e.groupId+'"');var l=A.ErrorDetails.UNKNOWN,u=!1,m=this.getInternalLoader(e);switch(e.type){case S.PlaylistContextType.MANIFEST:l=i?A.ErrorDetails.MANIFEST_LOAD_TIMEOUT:A.ErrorDetails.MANIFEST_LOAD_ERROR,u=!0;break;case S.PlaylistContextType.LEVEL:l=i?A.ErrorDetails.LEVEL_LOAD_TIMEOUT:A.ErrorDetails.LEVEL_LOAD_ERROR,u=!1;break;case S.PlaylistContextType.AUDIO_TRACK:l=i?A.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:A.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,u=!1;break;case S.PlaylistContextType.SUBTITLE_TRACK:l=i?A.ErrorDetails.SUBTITLE_TRACK_LOAD_TIMEOUT:A.ErrorDetails.SUBTITLE_LOAD_ERROR,u=!1;break}m&&this.resetInternalLoader(e.type);var d={type:A.ErrorTypes.NETWORK_ERROR,details:l,fatal:u,url:e.url,loader:m,context:e,networkDetails:a};h&&(d.response=h),this.hls.trigger(C.Events.ERROR,d)},p.handlePlaylistLoaded=function(e,a,i,h){var l=i.type,u=i.level,m=i.id,d=i.groupId,o=i.loader,n=i.levelDetails,t=i.deliveryDirectives;if(!(n!=null&&n.targetduration)){this.handleManifestParsingError(e,i,"invalid target duration",h);return}if(!o)return;n.live&&(o.getCacheAge&&(n.ageHeader=o.getCacheAge()||0),(!o.getCacheAge||isNaN(n.ageHeader))&&(n.ageHeader=0));switch(l){case S.PlaylistContextType.MANIFEST:case S.PlaylistContextType.LEVEL:this.hls.trigger(C.Events.LEVEL_LOADED,{details:n,level:u||0,id:m||0,stats:a,networkDetails:h,deliveryDirectives:t});break;case S.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(C.Events.AUDIO_TRACK_LOADED,{details:n,id:m||0,groupId:d||"",stats:a,networkDetails:h,deliveryDirectives:t});break;case S.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(C.Events.SUBTITLE_TRACK_LOADED,{details:n,id:m||0,groupId:d||"",stats:a,networkDetails:h,deliveryDirectives:t});break}},y}();k.default=v},"./src/polyfills/number.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"isFiniteNumber",function(){return I}),E.d(k,"MAX_SAFE_INTEGER",function(){return C});var I=Number.isFinite||function(A){return typeof A=="number"&&isFinite(A)},C=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/remux/aac-helper.ts":function(ne,k,E){"use strict";E.r(k);var I=function(){function C(){}return C.getSilentFrame=function(M,w){switch(M){case"mp4a.40.2":if(w===1)return new Uint8Array([0,200,0,128,35,128]);if(w===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(w===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(w===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(w===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(w===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(w===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(w===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(w===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);break}return},C}();k.default=I},"./src/remux/mp4-generator.ts":function(ne,k,E){"use strict";E.r(k);var I=Math.pow(2,32)-1,C=function(){function A(){}return A.init=function(){A.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};var w;for(w in A.types)A.types.hasOwnProperty(w)&&(A.types[w]=[w.charCodeAt(0),w.charCodeAt(1),w.charCodeAt(2),w.charCodeAt(3)]);var R=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),S=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);A.HDLR_TYPES={video:R,audio:S};var g=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),x=new Uint8Array([0,0,0,0,0,0,0,0]);A.STTS=A.STSC=A.STCO=x,A.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),A.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),A.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),A.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);var T=new Uint8Array([105,115,111,109]),v=new Uint8Array([97,118,99,49]),y=new Uint8Array([0,0,0,1]);A.FTYP=A.box(A.types.ftyp,T,y,T,v),A.DINF=A.box(A.types.dinf,A.box(A.types.dref,g))},A.box=function(w){for(var R=8,S=arguments.length,g=new Array(S>1?S-1:0),x=1;x<S;x++)g[x-1]=arguments[x];for(var T=g.length,v=T;T--;)R+=g[T].byteLength;var y=new Uint8Array(R);for(y[0]=R>>24&255,y[1]=R>>16&255,y[2]=R>>8&255,y[3]=R&255,y.set(w,4),T=0,R=8;T<v;T++)y.set(g[T],R),R+=g[T].byteLength;return y},A.hdlr=function(w){return A.box(A.types.hdlr,A.HDLR_TYPES[w])},A.mdat=function(w){return A.box(A.types.mdat,w)},A.mdhd=function(w,R){R*=w;var S=Math.floor(R/(I+1)),g=Math.floor(R%(I+1));return A.box(A.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,w>>24&255,w>>16&255,w>>8&255,w&255,S>>24,S>>16&255,S>>8&255,S&255,g>>24,g>>16&255,g>>8&255,g&255,85,196,0,0]))},A.mdia=function(w){return A.box(A.types.mdia,A.mdhd(w.timescale,w.duration),A.hdlr(w.type),A.minf(w))},A.mfhd=function(w){return A.box(A.types.mfhd,new Uint8Array([0,0,0,0,w>>24,w>>16&255,w>>8&255,w&255]))},A.minf=function(w){return w.type==="audio"?A.box(A.types.minf,A.box(A.types.smhd,A.SMHD),A.DINF,A.stbl(w)):A.box(A.types.minf,A.box(A.types.vmhd,A.VMHD),A.DINF,A.stbl(w))},A.moof=function(w,R,S){return A.box(A.types.moof,A.mfhd(w),A.traf(S,R))},A.moov=function(w){for(var R=w.length,S=[];R--;)S[R]=A.trak(w[R]);return A.box.apply(null,[A.types.moov,A.mvhd(w[0].timescale,w[0].duration)].concat(S).concat(A.mvex(w)))},A.mvex=function(w){for(var R=w.length,S=[];R--;)S[R]=A.trex(w[R]);return A.box.apply(null,[A.types.mvex].concat(S))},A.mvhd=function(w,R){R*=w;var S=Math.floor(R/(I+1)),g=Math.floor(R%(I+1)),x=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,w>>24&255,w>>16&255,w>>8&255,w&255,S>>24,S>>16&255,S>>8&255,S&255,g>>24,g>>16&255,g>>8&255,g&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return A.box(A.types.mvhd,x)},A.sdtp=function(w){var R=w.samples||[],S=new Uint8Array(4+R.length),g,x;for(g=0;g<R.length;g++)x=R[g].flags,S[g+4]=x.dependsOn<<4|x.isDependedOn<<2|x.hasRedundancy;return A.box(A.types.sdtp,S)},A.stbl=function(w){return A.box(A.types.stbl,A.stsd(w),A.box(A.types.stts,A.STTS),A.box(A.types.stsc,A.STSC),A.box(A.types.stsz,A.STSZ),A.box(A.types.stco,A.STCO))},A.avc1=function(w){var R=[],S=[],g,x,T;for(g=0;g<w.sps.length;g++)x=w.sps[g],T=x.byteLength,R.push(T>>>8&255),R.push(T&255),R=R.concat(Array.prototype.slice.call(x));for(g=0;g<w.pps.length;g++)x=w.pps[g],T=x.byteLength,S.push(T>>>8&255),S.push(T&255),S=S.concat(Array.prototype.slice.call(x));var v=A.box(A.types.avcC,new Uint8Array([1,R[3],R[4],R[5],252|3,224|w.sps.length].concat(R).concat([w.pps.length]).concat(S))),y=w.width,p=w.height,s=w.pixelRatio[0],e=w.pixelRatio[1];return A.box(A.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,y>>8&255,y&255,p>>8&255,p&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),v,A.box(A.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),A.box(A.types.pasp,new Uint8Array([s>>24,s>>16&255,s>>8&255,s&255,e>>24,e>>16&255,e>>8&255,e&255])))},A.esds=function(w){var R=w.config.length;return new Uint8Array([0,0,0,0,3,23+R,0,1,0,4,15+R,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([R]).concat(w.config).concat([6,1,2]))},A.mp4a=function(w){var R=w.samplerate;return A.box(A.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,w.channelCount,0,16,0,0,0,0,R>>8&255,R&255,0,0]),A.box(A.types.esds,A.esds(w)))},A.mp3=function(w){var R=w.samplerate;return A.box(A.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,w.channelCount,0,16,0,0,0,0,R>>8&255,R&255,0,0]))},A.stsd=function(w){return w.type==="audio"?!w.isAAC&&w.codec==="mp3"?A.box(A.types.stsd,A.STSD,A.mp3(w)):A.box(A.types.stsd,A.STSD,A.mp4a(w)):A.box(A.types.stsd,A.STSD,A.avc1(w))},A.tkhd=function(w){var R=w.id,S=w.duration*w.timescale,g=w.width,x=w.height,T=Math.floor(S/(I+1)),v=Math.floor(S%(I+1));return A.box(A.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,R>>24&255,R>>16&255,R>>8&255,R&255,0,0,0,0,T>>24,T>>16&255,T>>8&255,T&255,v>>24,v>>16&255,v>>8&255,v&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,g>>8&255,g&255,0,0,x>>8&255,x&255,0,0]))},A.traf=function(w,R){var S=A.sdtp(w),g=w.id,x=Math.floor(R/(I+1)),T=Math.floor(R%(I+1));return A.box(A.types.traf,A.box(A.types.tfhd,new Uint8Array([0,0,0,0,g>>24,g>>16&255,g>>8&255,g&255])),A.box(A.types.tfdt,new Uint8Array([1,0,0,0,x>>24,x>>16&255,x>>8&255,x&255,T>>24,T>>16&255,T>>8&255,T&255])),A.trun(w,S.length+16+20+8+16+8+8),S)},A.trak=function(w){return w.duration=w.duration||4294967295,A.box(A.types.trak,A.tkhd(w),A.mdia(w))},A.trex=function(w){var R=w.id;return A.box(A.types.trex,new Uint8Array([0,0,0,0,R>>24,R>>16&255,R>>8&255,R&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},A.trun=function(w,R){var S=w.samples||[],g=S.length,x=12+16*g,T=new Uint8Array(x),v,y,p,s,e,a;for(R+=8+x,T.set([0,0,15,1,g>>>24&255,g>>>16&255,g>>>8&255,g&255,R>>>24&255,R>>>16&255,R>>>8&255,R&255],0),v=0;v<g;v++)y=S[v],p=y.duration,s=y.size,e=y.flags,a=y.cts,T.set([p>>>24&255,p>>>16&255,p>>>8&255,p&255,s>>>24&255,s>>>16&255,s>>>8&255,s&255,e.isLeading<<2|e.dependsOn,e.isDependedOn<<6|e.hasRedundancy<<4|e.paddingValue<<1|e.isNonSync,e.degradPrio&240<<8,e.degradPrio&15,a>>>24&255,a>>>16&255,a>>>8&255,a&255],12+16*v);return A.box(A.types.trun,T)},A.initSegment=function(w){A.types||A.init();var R=A.moov(w),S=new Uint8Array(A.FTYP.byteLength+R.byteLength);return S.set(A.FTYP),S.set(R,A.FTYP.byteLength),S},A}();C.types=void 0,C.HDLR_TYPES=void 0,C.STTS=void 0,C.STSC=void 0,C.STCO=void 0,C.STSZ=void 0,C.VMHD=void 0,C.SMHD=void 0,C.STSD=void 0,C.FTYP=void 0,C.DINF=void 0,k.default=C},"./src/remux/mp4-remuxer.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return a}),E.d(k,"normalizePts",function(){return i});var I=E("./src/polyfills/number.ts"),C=E("./src/remux/aac-helper.ts"),A=E("./src/remux/mp4-generator.ts"),M=E("./src/events.ts"),w=E("./src/errors.ts"),R=E("./src/utils/logger.ts"),S=E("./src/types/loader.ts"),g=E("./src/utils/timescale-conversion.ts");function x(){return x=Object.assign||function(m){for(var d=1;d<arguments.length;d++){var o=arguments[d];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(m[n]=o[n])}return m},x.apply(this,arguments)}var T=10*1e3,v=1024,y=1152,p=null,s=null,e=!1,a=function(){function m(o,n,t,r){if(r===void 0&&(r=""),this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=void 0,this._initDTS=void 0,this.nextAvcDts=null,this.nextAudioPts=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.observer=o,this.config=n,this.typeSupported=t,this.ISGenerated=!1,p===null){var c=navigator.userAgent||"",f=c.match(/Chrome\/(\d+)/i);p=f?parseInt(f[1]):0}if(s===null){var b=navigator.userAgent.match(/Safari\/(\d+)/i);s=b?parseInt(b[1]):0}e=!!p&&p<75||!!s&&s<600}var d=m.prototype;return d.destroy=function(){},d.resetTimeStamp=function(n){R.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=n},d.resetNextTimestamp=function(){R.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1},d.resetInitSegment=function(){R.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1},d.getVideoStartPts=function(n){var t=!1,r=n.reduce(function(c,f){var b=f.pts-c;return b<-4294967296?(t=!0,i(c,f.pts)):b>0?c:f.pts},n[0].pts);return t&&R.logger.debug("PTS rollover detected"),r},d.remux=function(n,t,r,c,f,b,L,D){var F,N,K,V,z,$,q=f,J=f,he=n.pid>-1,te=t.pid>-1,le=t.samples.length,re=n.samples.length>0,ae=le>1,X=(!he||re)&&(!te||ae)||this.ISGenerated||L;if(X){this.ISGenerated||(K=this.generateIS(n,t,f));var Z=this.isVideoContiguous,ie=-1;if(ae&&(ie=h(t.samples),!Z&&this.config.forceKeyFrameOnDiscontinuity))if($=!0,ie>0){R.logger.warn("[mp4-remuxer]: Dropped "+ie+" out of "+le+" video samples due to a missing keyframe");var Re=this.getVideoStartPts(t.samples);t.samples=t.samples.slice(ie),t.dropped+=ie,J+=(t.samples[0].pts-Re)/(t.timescale||9e4)}else ie===-1&&(R.logger.warn("[mp4-remuxer]: No keyframe found out of "+le+" video samples"),$=!1);if(this.ISGenerated){if(re&&ae){var me=this.getVideoStartPts(t.samples),pe=i(n.samples[0].pts,me)-me,De=pe/t.inputTimeScale;q+=Math.max(0,De),J+=Math.max(0,-De)}if(re){if(n.samplerate||(R.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),K=this.generateIS(n,t,f)),N=this.remuxAudio(n,q,this.isAudioContiguous,b,te||ae||D===S.PlaylistLevelType.AUDIO?J:void 0),ae){var oe=N?N.endPTS-N.startPTS:0;t.inputTimeScale||(R.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),K=this.generateIS(n,t,f)),F=this.remuxVideo(t,J,Z,oe)}}else ae&&(F=this.remuxVideo(t,J,Z,0));F&&(F.firstKeyFrame=ie,F.independent=ie!==-1)}}return this.ISGenerated&&(r.samples.length&&(z=this.remuxID3(r,f)),c.samples.length&&(V=this.remuxText(c,f))),{audio:N,video:F,initSegment:K,independent:$,text:V,id3:z}},d.generateIS=function(n,t,r){var c=n.samples,f=t.samples,b=this.typeSupported,L={},D=!Object(I.isFiniteNumber)(this._initPTS),F="audio/mp4",N,K,V;if(D&&(N=K=Infinity),n.config&&c.length&&(n.timescale=n.samplerate,n.isAAC||(b.mpeg?(F="audio/mpeg",n.codec=""):b.mp3&&(n.codec="mp3")),L.audio={id:"audio",container:F,codec:n.codec,initSegment:!n.isAAC&&b.mpeg?new Uint8Array(0):A.default.initSegment([n]),metadata:{channelCount:n.channelCount}},D&&(V=n.inputTimeScale,N=K=c[0].pts-Math.round(V*r))),t.sps&&t.pps&&f.length&&(t.timescale=t.inputTimeScale,L.video={id:"main",container:"video/mp4",codec:t.codec,initSegment:A.default.initSegment([t]),metadata:{width:t.width,height:t.height}},D)){V=t.inputTimeScale;var z=this.getVideoStartPts(f),$=Math.round(V*r);K=Math.min(K,i(f[0].dts,z)-$),N=Math.min(N,z-$)}if(Object.keys(L).length)return this.ISGenerated=!0,D&&(this._initPTS=N,this._initDTS=K),{tracks:L,initPTS:N,timescale:V}},d.remuxVideo=function(n,t,r,c){var f=n.inputTimeScale,b=n.samples,L=[],D=b.length,F=this._initPTS,N=this.nextAvcDts,K=8,V,z,$,q=Number.POSITIVE_INFINITY,J=Number.NEGATIVE_INFINITY,he=0,te=!1;if(!r||N===null){var le=t*f,re=b[0].pts-i(b[0].dts,b[0].pts);N=le-re}for(var ae=0;ae<D;ae++){var X=b[ae];if(X.pts=i(X.pts-F,N),X.dts=i(X.dts-F,N),X.dts>X.pts){var Z=9e4*.2;he=Math.max(Math.min(he,X.pts-X.dts),-1*Z)}X.dts<b[ae>0?ae-1:ae].dts&&(te=!0)}te&&b.sort(function(Ne,Me){var Oe=Ne.dts-Me.dts,Ge=Ne.pts-Me.pts;return Oe||Ge}),z=b[0].dts,$=b[b.length-1].dts;var ie=Math.round(($-z)/(D-1));if(he<0){if(he<ie*-2){R.logger.warn("PTS < DTS detected in video samples, offsetting DTS from PTS by "+Object(g.toMsFromMpegTsClock)(-ie,!0)+" ms");for(var Re=he,me=0;me<D;me++)b[me].dts=Re=Math.max(Re,b[me].pts-ie),b[me].pts=Math.max(Re,b[me].pts)}else{R.logger.warn("PTS < DTS detected in video samples, shifting DTS by "+Object(g.toMsFromMpegTsClock)(he,!0)+" ms to overcome this issue");for(var pe=0;pe<D;pe++)b[pe].dts=b[pe].dts+he}z=b[0].dts}if(r){var De=z-N,oe=De>ie,ue=De<-1;if(oe||ue){oe?R.logger.warn("AVC: "+Object(g.toMsFromMpegTsClock)(De,!0)+" ms ("+De+"dts) hole between fragments detected, filling it"):R.logger.warn("AVC: "+Object(g.toMsFromMpegTsClock)(-De,!0)+" ms ("+De+"dts) overlapping between fragments detected"),z=N;var ce=b[0].pts-De;b[0].dts=z,b[0].pts=ce,R.logger.log("Video: First PTS/DTS adjusted: "+Object(g.toMsFromMpegTsClock)(ce,!0)+"/"+Object(g.toMsFromMpegTsClock)(z,!0)+", delta: "+Object(g.toMsFromMpegTsClock)(De,!0)+" ms")}}e&&(z=Math.max(0,z));for(var ge=0,ye=0,ve=0;ve<D;ve++){for(var fe=b[ve],we=fe.units,Ce=we.length,be=0,Ae=0;Ae<Ce;Ae++)be+=we[Ae].data.length;ye+=be,ge+=Ce,fe.length=be,fe.dts=Math.max(fe.dts,z),fe.pts=Math.max(fe.pts,fe.dts,0),q=Math.min(fe.pts,q),J=Math.max(fe.pts,J)}$=b[D-1].dts;var xe=ye+4*ge+8,Te;try{Te=new Uint8Array(xe)}catch(Ne){this.observer.emit(M.Events.ERROR,M.Events.ERROR,{type:w.ErrorTypes.MUX_ERROR,details:w.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:xe,reason:"fail allocating video mdat "+xe});return}var Se=new DataView(Te.buffer);Se.setUint32(0,xe),Te.set(A.default.types.mdat,4);for(var de=0;de<D;de++){for(var Le=b[de],_e=Le.units,j=0,_=0,P=_e.length;_<P;_++){var B=_e[_],W=B.data,O=B.data.byteLength;Se.setUint32(K,O),K+=4,Te.set(W,K),K+=O,j+=4+O}if(de<D-1)V=b[de+1].dts-Le.dts;else{var U=this.config,H=Le.dts-b[de>0?de-1:de].dts;if(U.stretchShortVideoTrack&&this.nextAudioPts!==null){var G=Math.floor(U.maxBufferHole*f),Q=(c?q+c*f:this.nextAudioPts)-Le.pts;Q>G?(V=Q-H,V<0&&(V=H),R.logger.log("[mp4-remuxer]: It is approximately "+Q/90+" ms to the next segment; using duration "+V/90+" ms for the last video frame.")):V=H}else V=H}var Y=Math.round(Le.pts-Le.dts);L.push(new l(Le.key,V,j,Y))}if(L.length&&p&&p<70){var se=L[0].flags;se.dependsOn=2,se.isNonSync=0}console.assert(V!==void 0,"mp4SampleDuration must be computed"),this.nextAvcDts=N=$+V,this.isVideoContiguous=!0;var Ee=A.default.moof(n.sequenceNumber++,z,x({},n,{samples:L})),Ie="video",Pe={data1:Ee,data2:Te,startPTS:q/f,endPTS:(J+V)/f,startDTS:z/f,endDTS:N/f,type:Ie,hasAudio:!1,hasVideo:!0,nb:L.length,dropped:n.dropped};return n.samples=[],n.dropped=0,console.assert(Te.length,"MDAT length must not be zero"),Pe},d.remuxAudio=function(n,t,r,c,f){var b=n.inputTimeScale,L=n.samplerate?n.samplerate:b,D=b/L,F=n.isAAC?v:y,N=F*D,K=this._initPTS,V=!n.isAAC&&this.typeSupported.mpeg,z=[],$=n.samples,q=V?0:8,J=this.nextAudioPts||-1,he=t*b;if(this.isAudioContiguous=r=r||$.length&&J>0&&(c&&Math.abs(he-J)<9e3||Math.abs(i($[0].pts-K,he)-J)<20*N),$.forEach(function(W){W.pts=i(W.pts-K,he)}),!r||J<0){if($=$.filter(function(W){return W.pts>=0}),!$.length)return;f===0?J=0:c?J=Math.max(0,he):J=$[0].pts}if(n.isAAC)for(var te=f!==void 0,le=this.config.maxAudioFramesDrift,re=0,ae=J;re<$.length;re++){var X=$[re],Z=X.pts,ie=Z-ae,Re=Math.abs(1e3*ie/b);if(ie<=-le*N&&te)re===0&&(R.logger.warn("Audio frame @ "+(Z/b).toFixed(3)+"s overlaps nextAudioPts by "+Math.round(1e3*ie/b)+" ms."),this.nextAudioPts=J=ae=Z);else if(ie>=le*N&&Re<T&&te){var me=Math.round(ie/N);ae=Z-me*N,ae<0&&(me--,ae+=N),re===0&&(this.nextAudioPts=J=ae),R.logger.warn("[mp4-remuxer]: Injecting "+me+" audio frame @ "+(ae/b).toFixed(3)+"s due to "+Math.round(1e3*ie/b)+" ms gap.");for(var pe=0;pe<me;pe++){var De=Math.max(ae,0),oe=C.default.getSilentFrame(n.manifestCodec||n.codec,n.channelCount);oe||(R.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),oe=X.unit.subarray()),$.splice(re,0,{unit:oe,pts:De}),ae+=N,re++}}X.pts=ae,ae+=N}for(var ue=null,ce=null,ge,ye=0,ve=$.length;ve--;)ye+=$[ve].unit.byteLength;for(var fe=0,we=$.length;fe<we;fe++){var Ce=$[fe],be=Ce.unit,Ae=Ce.pts;if(ce!==null){var xe=z[fe-1];xe.duration=Math.round((Ae-ce)/D)}else if(r&&n.isAAC&&(Ae=J),ue=Ae,ye>0){ye+=q;try{ge=new Uint8Array(ye)}catch(W){this.observer.emit(M.Events.ERROR,M.Events.ERROR,{type:w.ErrorTypes.MUX_ERROR,details:w.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:ye,reason:"fail allocating audio mdat "+ye});return}if(!V){var Te=new DataView(ge.buffer);Te.setUint32(0,ye),ge.set(A.default.types.mdat,4)}}else return;ge.set(be,q);var Se=be.byteLength;q+=Se,z.push(new l(!0,F,Se,0)),ce=Ae}var de=z.length;if(!de)return;var Le=z[z.length-1];this.nextAudioPts=J=ce+D*Le.duration;var _e=V?new Uint8Array(0):A.default.moof(n.sequenceNumber++,ue/D,x({},n,{samples:z}));n.samples=[];var j=ue/b,_=J/b,P="audio",B={data1:_e,data2:ge,startPTS:j,endPTS:_,startDTS:j,endDTS:_,type:P,hasAudio:!0,hasVideo:!1,nb:de};return this.isAudioContiguous=!0,console.assert(ge.length,"MDAT length must not be zero"),B},d.remuxEmptyAudio=function(n,t,r,c){var f=n.inputTimeScale,b=n.samplerate?n.samplerate:f,L=f/b,D=this.nextAudioPts,F=(D!==null?D:c.startDTS*f)+this._initDTS,N=c.endDTS*f+this._initDTS,K=L*v,V=Math.ceil((N-F)/K),z=C.default.getSilentFrame(n.manifestCodec||n.codec,n.channelCount);if(R.logger.warn("[mp4-remuxer]: remux empty Audio"),!z){R.logger.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec");return}for(var $=[],q=0;q<V;q++){var J=F+q*K;$.push({unit:z,pts:J,dts:J})}return n.samples=$,this.remuxAudio(n,t,r,!1)},d.remuxID3=function(n,t){var r=n.samples.length;if(!r)return;for(var c=n.inputTimeScale,f=this._initPTS,b=this._initDTS,L=0;L<r;L++){var D=n.samples[L];D.pts=i(D.pts-f,t*c)/c,D.dts=i(D.dts-b,t*c)/c}var F=n.samples;return n.samples=[],{samples:F}},d.remuxText=function(n,t){var r=n.samples.length;if(!r)return;for(var c=n.inputTimeScale,f=this._initPTS,b=0;b<r;b++){var L=n.samples[b];L.pts=i(L.pts-f,t*c)/c}n.samples.sort(function(F,N){return F.pts-N.pts});var D=n.samples;return n.samples=[],{samples:D}},m}();function i(m,d){var o;if(d===null)return m;for(d<m?o=-8589934592:o=8589934592;Math.abs(m-d)>4294967296;)m+=o;return m}function h(m){for(var d=0;d<m.length;d++)if(m[d].key)return d;return-1}var l=function(d,o,n,t){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=o,this.size=n,this.cts=t,this.flags=new u(d)},u=function(d){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=d?2:1,this.isNonSync=d?0:1}},"./src/remux/passthrough-remuxer.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/polyfills/number.ts"),C=E("./src/utils/mp4-tools.ts"),A=E("./src/loader/fragment.ts"),M=E("./src/utils/logger.ts"),w=function(){function g(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=void 0,this.initTracks=void 0,this.lastEndDTS=null}var x=g.prototype;return x.destroy=function(){},x.resetTimeStamp=function(v){this.initPTS=v,this.lastEndDTS=null},x.resetNextTimestamp=function(){this.lastEndDTS=null},x.resetInitSegment=function(v,y,p){this.audioCodec=y,this.videoCodec=p,this.generateInitSegment(v),this.emitInitSegment=!0},x.generateInitSegment=function(v){var y=this.audioCodec,p=this.videoCodec;if(!v||!v.byteLength){this.initTracks=void 0,this.initData=void 0;return}var s=this.initData=Object(C.parseInitSegment)(v);y||(y=S(s.audio,A.ElementaryStreamTypes.AUDIO)),p||(p=S(s.video,A.ElementaryStreamTypes.VIDEO));var e={};s.audio&&s.video?e.audiovideo={container:"video/mp4",codec:y+","+p,initSegment:v,id:"main"}:s.audio?e.audio={container:"audio/mp4",codec:y,initSegment:v,id:"audio"}:s.video?e.video={container:"video/mp4",codec:p,initSegment:v,id:"main"}:M.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=e},x.remux=function(v,y,p,s,e){var a=this.initPTS,i=this.lastEndDTS,h={audio:void 0,video:void 0,text:s,id3:p,initSegment:void 0};Object(I.isFiniteNumber)(i)||(i=this.lastEndDTS=e||0);var l=y.samples;if(!l||!l.length)return h;var u={initPTS:void 0,timescale:1},m=this.initData;if((!m||!m.length)&&(this.generateInitSegment(l),m=this.initData),!m||!m.length)return M.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),h;this.emitInitSegment&&(u.tracks=this.initTracks,this.emitInitSegment=!1),Object(I.isFiniteNumber)(a)||(this.initPTS=u.initPTS=a=R(m,l,i));var d=Object(C.getDuration)(l,m),o=i,n=d+o;Object(C.offsetStartDTS)(m,l,a),d>0?this.lastEndDTS=n:(M.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());var t=!!m.audio,r=!!m.video,c="";t&&(c+="audio"),r&&(c+="video");var f={data1:l,startPTS:o,startDTS:o,endPTS:n,endDTS:n,type:c,hasAudio:t,hasVideo:r,nb:1,dropped:0};return h.audio=f.type==="audio"?f:void 0,h.video=f.type!=="audio"?f:void 0,h.text=s,h.id3=p,h.initSegment=u,h},g}(),R=function(x,T,v){return Object(C.getStartDTS)(x,T)-v};function S(g,x){var T=g==null?void 0:g.codec;return T&&T.length>4?T:T==="hvc1"?"hvc1.1.c.L120.90":T==="av01"?"av01.0.04M.08":T==="avc1"||x===A.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}k.default=w},"./src/task-loop.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return I});var I=function(){function C(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}var A=C.prototype;return A.destroy=function(){this.onHandlerDestroying(),this.onHandlerDestroyed()},A.onHandlerDestroying=function(){this.clearNextTick(),this.clearInterval()},A.onHandlerDestroyed=function(){},A.hasInterval=function(){return!!this._tickInterval},A.hasNextTick=function(){return!!this._tickTimer},A.setInterval=function(w){return this._tickInterval?!1:(this._tickInterval=self.setInterval(this._boundTick,w),!0)},A.clearInterval=function(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1},A.clearNextTick=function(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1},A.tick=function(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)},A.tickImmediate=function(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)},A.doTick=function(){},C}()},"./src/types/cmcd.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"CMCDVersion",function(){return I}),E.d(k,"CMCDObjectType",function(){return C}),E.d(k,"CMCDStreamingFormat",function(){return A}),E.d(k,"CMCDStreamType",function(){return M});var I=1,C;(function(w){w.MANIFEST="m",w.AUDIO="a",w.VIDEO="v",w.MUXED="av",w.INIT="i",w.CAPTION="c",w.TIMED_TEXT="tt",w.KEY="k",w.OTHER="o"})(C||(C={}));var A;(function(w){w.DASH="d",w.HLS="h",w.SMOOTH="s",w.OTHER="o"})(A||(A={}));var M;(function(w){w.VOD="v",w.LIVE="l"})(M||(M={}))},"./src/types/level.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"HlsSkip",function(){return A}),E.d(k,"getSkipValue",function(){return M}),E.d(k,"HlsUrlParameters",function(){return w}),E.d(k,"Level",function(){return R});function I(S,g){for(var x=0;x<g.length;x++){var T=g[x];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(S,T.key,T)}}function C(S,g,x){return g&&I(S.prototype,g),x&&I(S,x),S}var A;(function(S){S.No="",S.Yes="YES",S.v2="v2"})(A||(A={}));function M(S,g){var x=S.canSkipUntil,T=S.canSkipDateRanges,v=S.endSN,y=g!==void 0?g-v:0;return x&&y<x?T?A.v2:A.Yes:A.No}var w=function(){function S(x,T,v){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=x,this.part=T,this.skip=v}var g=S.prototype;return g.addDirectives=function(T){var v=new self.URL(T);return this.msn!==void 0&&v.searchParams.set("_HLS_msn",this.msn.toString()),this.part!==void 0&&v.searchParams.set("_HLS_part",this.part.toString()),this.skip&&v.searchParams.set("_HLS_skip",this.skip),v.toString()},S}(),R=function(){function S(g){this.attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.videoCodec=void 0,this.width=void 0,this.unknownCodecs=void 0,this.audioGroupIds=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.textGroupIds=void 0,this.url=void 0,this._urlId=0,this.url=[g.url],this.attrs=g.attrs,this.bitrate=g.bitrate,g.details&&(this.details=g.details),this.id=g.id||0,this.name=g.name,this.width=g.width||0,this.height=g.height||0,this.audioCodec=g.audioCodec,this.videoCodec=g.videoCodec,this.unknownCodecs=g.unknownCodecs,this.codecSet=[g.videoCodec,g.audioCodec].filter(function(x){return x}).join(",").replace(/\.[^.,]+/g,"")}return C(S,[{key:"maxBitrate",get:function(){return Math.max(this.realBitrate,this.bitrate)}},{key:"uri",get:function(){return this.url[this._urlId]||""}},{key:"urlId",get:function(){return this._urlId},set:function(x){var T=x%this.url.length;this._urlId!==T&&(this.details=void 0,this._urlId=T)}}]),S}()},"./src/types/loader.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"PlaylistContextType",function(){return I}),E.d(k,"PlaylistLevelType",function(){return C});var I;(function(A){A.MANIFEST="manifest",A.LEVEL="level",A.AUDIO_TRACK="audioTrack",A.SUBTITLE_TRACK="subtitleTrack"})(I||(I={}));var C;(function(A){A.MAIN="main",A.AUDIO="audio",A.SUBTITLE="subtitle"})(C||(C={}))},"./src/types/transmuxer.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"ChunkMetadata",function(){return I});var I=function(M,w,R,S,g,x){S===void 0&&(S=0),g===void 0&&(g=-1),x===void 0&&(x=!1),this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing=C(),this.buffering={audio:C(),video:C(),audiovideo:C()},this.level=M,this.sn=w,this.id=R,this.size=S,this.part=g,this.partial=x};function C(){return{start:0,executeStart:0,executeEnd:0,end:0}}},"./src/utils/attr-list.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"AttrList",function(){return A});var I=/^(\d+)x(\d+)$/,C=/\s*(.+?)\s*=((?:\".*?\")|.*?)(?:,|$)/g,A=function(){function M(R){typeof R=="string"&&(R=M.parseAttrList(R));for(var S in R)R.hasOwnProperty(S)&&(this[S]=R[S])}var w=M.prototype;return w.decimalInteger=function(S){var g=parseInt(this[S],10);return g>Number.MAX_SAFE_INTEGER?Infinity:g},w.hexadecimalInteger=function(S){if(this[S]){var g=(this[S]||"0x").slice(2);g=(g.length&1?"0":"")+g;for(var x=new Uint8Array(g.length/2),T=0;T<g.length/2;T++)x[T]=parseInt(g.slice(T*2,T*2+2),16);return x}else return null},w.hexadecimalIntegerAsNumber=function(S){var g=parseInt(this[S],16);return g>Number.MAX_SAFE_INTEGER?Infinity:g},w.decimalFloatingPoint=function(S){return parseFloat(this[S])},w.optionalFloat=function(S,g){var x=this[S];return x?parseFloat(x):g},w.enumeratedString=function(S){return this[S]},w.bool=function(S){return this[S]==="YES"},w.decimalResolution=function(S){var g=I.exec(this[S]);return g===null?void 0:{width:parseInt(g[1],10),height:parseInt(g[2],10)}},M.parseAttrList=function(S){var g,x={},T='"';for(C.lastIndex=0;(g=C.exec(S))!==null;){var v=g[2];v.indexOf(T)===0&&v.lastIndexOf(T)===v.length-1&&(v=v.slice(1,-1)),x[g[1]]=v}return x},M}()},"./src/utils/binary-search.ts":function(ne,k,E){"use strict";E.r(k);var I={search:function(A,M){for(var w=0,R=A.length-1,S=null,g=null;w<=R;){S=(w+R)/2|0,g=A[S];var x=M(g);if(x>0)w=S+1;else if(x<0)R=S-1;else return g}return null}};k.default=I},"./src/utils/buffer-helper.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"BufferHelper",function(){return A});var I=E("./src/utils/logger.ts"),C={length:0,start:function(){return 0},end:function(){return 0}},A=function(){function M(){}return M.isBuffered=function(R,S){try{if(R){for(var g=M.getBuffered(R),x=0;x<g.length;x++)if(S>=g.start(x)&&S<=g.end(x))return!0}}catch(T){}return!1},M.bufferInfo=function(R,S,g){try{if(R){var x=M.getBuffered(R),T=[],v;for(v=0;v<x.length;v++)T.push({start:x.start(v),end:x.end(v)});return this.bufferedInfo(T,S,g)}}catch(y){}return{len:0,start:S,end:S,nextStart:void 0}},M.bufferedInfo=function(R,S,g){S=Math.max(0,S),R.sort(function(u,m){var d=u.start-m.start;return d||m.end-u.end});var x=[];if(g)for(var T=0;T<R.length;T++){var v=x.length;if(v){var y=x[v-1].end;R[T].start-y<g?R[T].end>y&&(x[v-1].end=R[T].end):x.push(R[T])}else x.push(R[T])}else x=R;for(var p=0,s,e=S,a=S,i=0;i<x.length;i++){var h=x[i].start,l=x[i].end;if(S+g>=h&&S<l)e=h,a=l,p=a-S;else if(S+g<h){s=h;break}}return{len:p,start:e||0,end:a||0,nextStart:s}},M.getBuffered=function(R){try{return R.buffered}catch(S){return I.logger.log("failed to get media.buffered",S),C}},M}()},"./src/utils/cea-608-parser.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"Row",function(){return a}),E.d(k,"CaptionScreen",function(){return i});var I=E("./src/utils/logger.ts"),C={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},A=function(n){var t=n;return C.hasOwnProperty(n)&&(t=C[n]),String.fromCharCode(t)},M=15,w=100,R={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},S={17:2,18:4,21:6,22:8,23:10,19:13,20:15},g={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},x={25:2,26:4,29:6,30:8,31:10,27:13,28:15},T=["white","green","blue","cyan","red","yellow","magenta","black","transparent"],v;(function(o){o[o.ERROR=0]="ERROR",o[o.TEXT=1]="TEXT",o[o.WARNING=2]="WARNING",o[o.INFO=2]="INFO",o[o.DEBUG=3]="DEBUG",o[o.DATA=3]="DATA"})(v||(v={}));var y=function(){function o(){this.time=null,this.verboseLevel=v.ERROR}var n=o.prototype;return n.log=function(r,c){this.verboseLevel>=r&&I.logger.log(this.time+" ["+r+"] "+c)},o}(),p=function(n){for(var t=[],r=0;r<n.length;r++)t.push(n[r].toString(16));return t},s=function(){function o(t,r,c,f,b){this.foreground=void 0,this.underline=void 0,this.italics=void 0,this.background=void 0,this.flash=void 0,this.foreground=t||"white",this.underline=r||!1,this.italics=c||!1,this.background=f||"black",this.flash=b||!1}var n=o.prototype;return n.reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},n.setStyles=function(r){for(var c=["foreground","underline","italics","background","flash"],f=0;f<c.length;f++){var b=c[f];r.hasOwnProperty(b)&&(this[b]=r[b])}},n.isDefault=function(){return this.foreground==="white"&&!this.underline&&!this.italics&&this.background==="black"&&!this.flash},n.equals=function(r){return this.foreground===r.foreground&&this.underline===r.underline&&this.italics===r.italics&&this.background===r.background&&this.flash===r.flash},n.copy=function(r){this.foreground=r.foreground,this.underline=r.underline,this.italics=r.italics,this.background=r.background,this.flash=r.flash},n.toString=function(){return"color="+this.foreground+", underline="+this.underline+", italics="+this.italics+", background="+this.background+", flash="+this.flash},o}(),e=function(){function o(t,r,c,f,b,L){this.uchar=void 0,this.penState=void 0,this.uchar=t||" ",this.penState=new s(r,c,f,b,L)}var n=o.prototype;return n.reset=function(){this.uchar=" ",this.penState.reset()},n.setChar=function(r,c){this.uchar=r,this.penState.copy(c)},n.setPenState=function(r){this.penState.copy(r)},n.equals=function(r){return this.uchar===r.uchar&&this.penState.equals(r.penState)},n.copy=function(r){this.uchar=r.uchar,this.penState.copy(r.penState)},n.isEmpty=function(){return this.uchar===" "&&this.penState.isDefault()},o}(),a=function(){function o(t){this.chars=void 0,this.pos=void 0,this.currPenState=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chars=[];for(var r=0;r<w;r++)this.chars.push(new e);this.logger=t,this.pos=0,this.currPenState=new s}var n=o.prototype;return n.equals=function(r){for(var c=!0,f=0;f<w;f++)if(!this.chars[f].equals(r.chars[f])){c=!1;break}return c},n.copy=function(r){for(var c=0;c<w;c++)this.chars[c].copy(r.chars[c])},n.isEmpty=function(){for(var r=!0,c=0;c<w;c++)if(!this.chars[c].isEmpty()){r=!1;break}return r},n.setCursor=function(r){this.pos!==r&&(this.pos=r),this.pos<0?(this.logger.log(v.DEBUG,"Negative cursor position "+this.pos),this.pos=0):this.pos>w&&(this.logger.log(v.DEBUG,"Too large cursor position "+this.pos),this.pos=w)},n.moveCursor=function(r){var c=this.pos+r;if(r>1)for(var f=this.pos+1;f<c+1;f++)this.chars[f].setPenState(this.currPenState);this.setCursor(c)},n.backSpace=function(){this.moveCursor(-1),this.chars[this.pos].setChar(" ",this.currPenState)},n.insertChar=function(r){r>=144&&this.backSpace();var c=A(r);if(this.pos>=w){this.logger.log(v.ERROR,"Cannot insert "+r.toString(16)+" ("+c+") at position "+this.pos+". Skipping it!");return}this.chars[this.pos].setChar(c,this.currPenState),this.moveCursor(1)},n.clearFromPos=function(r){var c;for(c=r;c<w;c++)this.chars[c].reset()},n.clear=function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},n.clearToEndOfRow=function(){this.clearFromPos(this.pos)},n.getTextString=function(){for(var r=[],c=!0,f=0;f<w;f++){var b=this.chars[f].uchar;b!==" "&&(c=!1),r.push(b)}return c?"":r.join("")},n.setPenStyles=function(r){this.currPenState.setStyles(r);var c=this.chars[this.pos];c.setPenState(this.currPenState)},o}(),i=function(){function o(t){this.rows=void 0,this.currRow=void 0,this.nrRollUpRows=void 0,this.lastOutputScreen=void 0,this.logger=void 0,this.rows=[];for(var r=0;r<M;r++)this.rows.push(new a(t));this.logger=t,this.currRow=M-1,this.nrRollUpRows=null,this.lastOutputScreen=null,this.reset()}var n=o.prototype;return n.reset=function(){for(var r=0;r<M;r++)this.rows[r].clear();this.currRow=M-1},n.equals=function(r){for(var c=!0,f=0;f<M;f++)if(!this.rows[f].equals(r.rows[f])){c=!1;break}return c},n.copy=function(r){for(var c=0;c<M;c++)this.rows[c].copy(r.rows[c])},n.isEmpty=function(){for(var r=!0,c=0;c<M;c++)if(!this.rows[c].isEmpty()){r=!1;break}return r},n.backSpace=function(){var r=this.rows[this.currRow];r.backSpace()},n.clearToEndOfRow=function(){var r=this.rows[this.currRow];r.clearToEndOfRow()},n.insertChar=function(r){var c=this.rows[this.currRow];c.insertChar(r)},n.setPen=function(r){var c=this.rows[this.currRow];c.setPenStyles(r)},n.moveCursor=function(r){var c=this.rows[this.currRow];c.moveCursor(r)},n.setCursor=function(r){this.logger.log(v.INFO,"setCursor: "+r);var c=this.rows[this.currRow];c.setCursor(r)},n.setPAC=function(r){this.logger.log(v.INFO,"pacData = "+JSON.stringify(r));var c=r.row-1;if(this.nrRollUpRows&&c<this.nrRollUpRows-1&&(c=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==c){for(var f=0;f<M;f++)this.rows[f].clear();var b=this.currRow+1-this.nrRollUpRows,L=this.lastOutputScreen;if(L){var D=L.rows[b].cueStartTime,F=this.logger.time;if(D&&F!==null&&D<F)for(var N=0;N<this.nrRollUpRows;N++)this.rows[c-this.nrRollUpRows+N+1].copy(L.rows[b+N])}}this.currRow=c;var K=this.rows[this.currRow];if(r.indent!==null){var V=r.indent,z=Math.max(V-1,0);K.setCursor(r.indent),r.color=K.chars[z].penState.foreground}var $={foreground:r.color,underline:r.underline,italics:r.italics,background:"black",flash:!1};this.setPen($)},n.setBkgData=function(r){this.logger.log(v.INFO,"bkgData = "+JSON.stringify(r)),this.backSpace(),this.setPen(r),this.insertChar(32)},n.setRollUpRows=function(r){this.nrRollUpRows=r},n.rollUp=function(){if(this.nrRollUpRows===null){this.logger.log(v.DEBUG,"roll_up but nrRollUpRows not set yet");return}this.logger.log(v.TEXT,this.getDisplayText());var r=this.currRow+1-this.nrRollUpRows,c=this.rows.splice(r,1)[0];c.clear(),this.rows.splice(this.currRow,0,c),this.logger.log(v.INFO,"Rolling up")},n.getDisplayText=function(r){r=r||!1;for(var c=[],f="",b=-1,L=0;L<M;L++){var D=this.rows[L].getTextString();D&&(b=L+1,r?c.push("Row "+b+": '"+D+"'"):c.push(D.trim()))}return c.length>0&&(r?f="["+c.join(" | ")+"]":f=c.join(`
|
|
`)),f},n.getTextAndFormat=function(){return this.rows},o}(),h=function(){function o(t,r,c){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=t,this.outputFilter=r,this.mode=null,this.verbose=0,this.displayedMemory=new i(c),this.nonDisplayedMemory=new i(c),this.lastOutputScreen=new i(c),this.currRollUpRow=this.displayedMemory.rows[M-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=c}var n=o.prototype;return n.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[M-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},n.getHandler=function(){return this.outputFilter},n.setHandler=function(r){this.outputFilter=r},n.setPAC=function(r){this.writeScreen.setPAC(r)},n.setBkgData=function(r){this.writeScreen.setBkgData(r)},n.setMode=function(r){if(r===this.mode)return;this.mode=r,this.logger.log(v.INFO,"MODE="+r),this.mode==="MODE_POP-ON"?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),this.mode!=="MODE_ROLL-UP"&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=r},n.insertChars=function(r){for(var c=0;c<r.length;c++)this.writeScreen.insertChar(r[c]);var f=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(v.INFO,f+": "+this.writeScreen.getDisplayText(!0)),(this.mode==="MODE_PAINT-ON"||this.mode==="MODE_ROLL-UP")&&(this.logger.log(v.TEXT,"DISPLAYED: "+this.displayedMemory.getDisplayText(!0)),this.outputDataUpdate())},n.ccRCL=function(){this.logger.log(v.INFO,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")},n.ccBS=function(){if(this.logger.log(v.INFO,"BS - BackSpace"),this.mode==="MODE_TEXT")return;this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate()},n.ccAOF=function(){},n.ccAON=function(){},n.ccDER=function(){this.logger.log(v.INFO,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()},n.ccRU=function(r){this.logger.log(v.INFO,"RU("+r+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(r)},n.ccFON=function(){this.logger.log(v.INFO,"FON - Flash On"),this.writeScreen.setPen({flash:!0})},n.ccRDC=function(){this.logger.log(v.INFO,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")},n.ccTR=function(){this.logger.log(v.INFO,"TR"),this.setMode("MODE_TEXT")},n.ccRTD=function(){this.logger.log(v.INFO,"RTD"),this.setMode("MODE_TEXT")},n.ccEDM=function(){this.logger.log(v.INFO,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)},n.ccCR=function(){this.logger.log(v.INFO,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)},n.ccENM=function(){this.logger.log(v.INFO,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()},n.ccEOC=function(){if(this.logger.log(v.INFO,"EOC - End Of Caption"),this.mode==="MODE_POP-ON"){var r=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=r,this.writeScreen=this.nonDisplayedMemory,this.logger.log(v.TEXT,"DISP: "+this.displayedMemory.getDisplayText())}this.outputDataUpdate(!0)},n.ccTO=function(r){this.logger.log(v.INFO,"TO("+r+") - Tab Offset"),this.writeScreen.moveCursor(r)},n.ccMIDROW=function(r){var c={flash:!1};if(c.underline=r%2===1,c.italics=r>=46,c.italics)c.foreground="white";else{var f=Math.floor(r/2)-16,b=["white","green","blue","cyan","red","yellow","magenta"];c.foreground=b[f]}this.logger.log(v.INFO,"MIDROW: "+JSON.stringify(c)),this.writeScreen.setPen(c)},n.outputDataUpdate=function(r){r===void 0&&(r=!1);var c=this.logger.time;if(c===null)return;this.outputFilter&&(this.cueStartTime===null&&!this.displayedMemory.isEmpty()?this.cueStartTime=c:this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,c,this.lastOutputScreen),r&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:c),this.lastOutputScreen.copy(this.displayedMemory))},n.cueSplitAtTime=function(r){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,r,this.displayedMemory),this.cueStartTime=r))},o}(),l=function(){function o(t,r,c){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var f=new y;this.channels=[null,new h(t,r,f),new h(t+1,c,f)],this.cmdHistory=d(),this.logger=f}var n=o.prototype;return n.getHandler=function(r){return this.channels[r].getHandler()},n.setHandler=function(r,c){this.channels[r].setHandler(c)},n.addData=function(r,c){var f,b,L,D=!1;this.logger.time=r;for(var F=0;F<c.length;F+=2){if(b=c[F]&127,L=c[F+1]&127,b===0&&L===0)continue;if(this.logger.log(v.DATA,"["+p([c[F],c[F+1]])+"] -> ("+p([b,L])+")"),f=this.parseCmd(b,L),f||(f=this.parseMidrow(b,L)),f||(f=this.parsePAC(b,L)),f||(f=this.parseBackgroundAttributes(b,L)),!f&&(D=this.parseChars(b,L),D)){var N=this.currentChannel;if(N&&N>0){var K=this.channels[N];K.insertChars(D)}else this.logger.log(v.WARNING,"No channel found yet. TEXT-MODE?")}!f&&!D&&this.logger.log(v.WARNING,"Couldn't parse cleaned data "+p([b,L])+" orig: "+p([c[F],c[F+1]]))}},n.parseCmd=function(r,c){var f=this.cmdHistory,b=(r===20||r===28||r===21||r===29)&&c>=32&&c<=47,L=(r===23||r===31)&&c>=33&&c<=35;if(!(b||L))return!1;if(m(r,c,f))return u(null,null,f),this.logger.log(v.DEBUG,"Repeated command ("+p([r,c])+") is dropped"),!0;var D=r===20||r===21||r===23?1:2,F=this.channels[D];return r===20||r===21||r===28||r===29?c===32?F.ccRCL():c===33?F.ccBS():c===34?F.ccAOF():c===35?F.ccAON():c===36?F.ccDER():c===37?F.ccRU(2):c===38?F.ccRU(3):c===39?F.ccRU(4):c===40?F.ccFON():c===41?F.ccRDC():c===42?F.ccTR():c===43?F.ccRTD():c===44?F.ccEDM():c===45?F.ccCR():c===46?F.ccENM():c===47&&F.ccEOC():F.ccTO(c-32),u(r,c,f),this.currentChannel=D,!0},n.parseMidrow=function(r,c){var f=0;if((r===17||r===25)&&c>=32&&c<=47){if(r===17?f=1:f=2,f!==this.currentChannel)return this.logger.log(v.ERROR,"Mismatch channel in midrow parsing"),!1;var b=this.channels[f];return b?(b.ccMIDROW(c),this.logger.log(v.DEBUG,"MIDROW ("+p([r,c])+")"),!0):!1}return!1},n.parsePAC=function(r,c){var f,b=this.cmdHistory,L=(r>=17&&r<=23||r>=25&&r<=31)&&c>=64&&c<=127,D=(r===16||r===24)&&c>=64&&c<=95;if(!(L||D))return!1;if(m(r,c,b))return u(null,null,b),!0;var F=r<=23?1:2;c>=64&&c<=95?f=F===1?R[r]:g[r]:f=F===1?S[r]:x[r];var N=this.channels[F];return N?(N.setPAC(this.interpretPAC(f,c)),u(r,c,b),this.currentChannel=F,!0):!1},n.interpretPAC=function(r,c){var f,b={color:null,italics:!1,indent:null,underline:!1,row:r};return c>95?f=c-96:f=c-64,b.underline=(f&1)===1,f<=13?b.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(f/2)]:f<=15?(b.italics=!0,b.color="white"):b.indent=Math.floor((f-16)/2)*4,b},n.parseChars=function(r,c){var f,b=null,L=null;if(r>=25?(f=2,L=r-8):(f=1,L=r),L>=17&&L<=19){var D;L===17?D=c+80:L===18?D=c+112:D=c+144,this.logger.log(v.INFO,"Special char '"+A(D)+"' in channel "+f),b=[D]}else r>=32&&r<=127&&(b=c===0?[r]:[r,c]);if(b){var F=p(b);this.logger.log(v.DEBUG,"Char codes = "+F.join(",")),u(r,c,this.cmdHistory)}return b},n.parseBackgroundAttributes=function(r,c){var f=(r===16||r===24)&&c>=32&&c<=47,b=(r===23||r===31)&&c>=45&&c<=47;if(!(f||b))return!1;var L,D={};r===16||r===24?(L=Math.floor((c-32)/2),D.background=T[L],c%2===1&&(D.background=D.background+"_semi")):c===45?D.background="transparent":(D.foreground="black",c===47&&(D.underline=!0));var F=r<=23?1:2,N=this.channels[F];return N.setBkgData(D),u(r,c,this.cmdHistory),!0},n.reset=function(){for(var r=0;r<Object.keys(this.channels).length;r++){var c=this.channels[r];c&&c.reset()}this.cmdHistory=d()},n.cueSplitAtTime=function(r){for(var c=0;c<this.channels.length;c++){var f=this.channels[c];f&&f.cueSplitAtTime(r)}},o}();function u(o,n,t){t.a=o,t.b=n}function m(o,n,t){return t.a===o&&t.b===n}function d(){return{a:null,b:null}}k.default=l},"./src/utils/codecs.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"isCodecType",function(){return C}),E.d(k,"isCodecSupportedInMp4",function(){return A});var I={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,av01:!0,drac:!0,dvav:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0},text:{stpp:!0,wvtt:!0}};function C(M,w){var R=I[w];return!!R&&R[M.slice(0,4)]===!0}function A(M,w){return MediaSource.isTypeSupported((w||"video")+'/mp4;codecs="'+M+'"')}},"./src/utils/cues.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/utils/vttparser.ts"),C=E("./src/utils/webvtt-parser.ts"),A=E("./src/utils/texttrack-utils.ts"),M=/\s/,w={newCue:function(S,g,x,T){for(var v=[],y,p,s,e,a,i=self.VTTCue||self.TextTrackCue,h=0;h<T.rows.length;h++)if(y=T.rows[h],s=!0,e=0,a="",!y.isEmpty()){for(var l=0;l<y.chars.length;l++)M.test(y.chars[l].uchar)&&s?e++:(a+=y.chars[l].uchar,s=!1);y.cueStartTime=g,g===x&&(x+=1e-4),e>=16?e--:e++;var u=Object(I.fixLineBreaks)(a.trim()),m=Object(C.generateCueId)(g,x,u);(!S||!S.cues||!S.cues.getCueById(m))&&(p=new i(g,x,u),p.id=m,p.line=h+1,p.align="left",p.position=10+Math.min(80,Math.floor(e*8/32)*10),v.push(p))}return S&&v.length&&(v.sort(function(d,o){return d.line==="auto"||o.line==="auto"?0:d.line>8&&o.line>8?o.line-d.line:d.line-o.line}),v.forEach(function(d){return Object(A.addCueToTrack)(S,d)})),v}};k.default=w},"./src/utils/discontinuities.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"findFirstFragWithCC",function(){return M}),E.d(k,"shouldAlignOnDiscontinuities",function(){return w}),E.d(k,"findDiscontinuousReferenceFrag",function(){return R}),E.d(k,"adjustSlidingStart",function(){return g}),E.d(k,"alignStream",function(){return x}),E.d(k,"alignPDT",function(){return v}),E.d(k,"alignFragmentByPDTDelta",function(){return y}),E.d(k,"alignMediaPlaylistByPDT",function(){return p});var I=E("./src/polyfills/number.ts"),C=E("./src/utils/logger.ts"),A=E("./src/controller/level-helper.ts");function M(s,e){for(var a=null,i=0,h=s.length;i<h;i++){var l=s[i];if(l&&l.cc===e){a=l;break}}return a}function w(s,e,a){return!!(e.details&&(a.endCC>a.startCC||s&&s.cc<a.startCC))}function R(s,e){var a=s.fragments,i=e.fragments;if(!i.length||!a.length){C.logger.log("No fragments to align");return}var h=M(a,i[0].cc);if(!h||h&&!h.startPTS){C.logger.log("No frag in previous level to align on");return}return h}function S(s,e){if(s){var a=s.start+e;s.start=s.startPTS=a,s.endPTS=a+s.duration}}function g(s,e){for(var a=e.fragments,i=0,h=a.length;i<h;i++)S(a[i],s);e.fragmentHint&&S(e.fragmentHint,s),e.alignedSliding=!0}function x(s,e,a){if(!e)return;T(s,a,e),!a.alignedSliding&&e.details&&v(a,e.details),!a.alignedSliding&&e.details&&!a.skippedSegments&&Object(A.adjustSliding)(e.details,a)}function T(s,e,a){if(w(s,a,e)){var i=R(a.details,e);i&&Object(I.isFiniteNumber)(i.start)&&(C.logger.log("Adjusting PTS using last level due to CC increase within current level "+e.url),g(i.start,e))}}function v(s,e){if(!e.fragments.length||!s.hasProgramDateTime||!e.hasProgramDateTime)return;var a=e.fragments[0].programDateTime,i=s.fragments[0].programDateTime,h=(i-a)/1e3+e.fragments[0].start;h&&Object(I.isFiniteNumber)(h)&&(C.logger.log("Adjusting PTS using programDateTime delta "+(i-a)+"ms, sliding:"+h.toFixed(3)+" "+s.url+" "),g(h,s))}function y(s,e){var a=s.programDateTime;if(!a)return;var i=(a-e)/1e3;s.start=s.startPTS=i,s.endPTS=i+s.duration}function p(s,e){if(!e.fragments.length||!s.hasProgramDateTime||!e.hasProgramDateTime)return;var a=e.fragments[0].programDateTime,i=e.fragments[0].start,h=a-i*1e3;s.fragments.forEach(function(l){y(l,h)}),s.fragmentHint&&y(s.fragmentHint,h),s.alignedSliding=!0}},"./src/utils/ewma-bandwidth-estimator.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/utils/ewma.ts"),C=function(){function A(w,R,S){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultEstimate_=S,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new I.default(w),this.fast_=new I.default(R)}var M=A.prototype;return M.update=function(R,S){var g=this.slow_,x=this.fast_;this.slow_.halfLife!==R&&(this.slow_=new I.default(R,g.getEstimate(),g.getTotalWeight())),this.fast_.halfLife!==S&&(this.fast_=new I.default(S,x.getEstimate(),x.getTotalWeight()))},M.sample=function(R,S){R=Math.max(R,this.minDelayMs_);var g=8*S,x=R/1e3,T=g/x;this.fast_.sample(x,T),this.slow_.sample(x,T)},M.canEstimate=function(){var R=this.fast_;return R&&R.getTotalWeight()>=this.minWeight_},M.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},M.destroy=function(){},A}();k.default=C},"./src/utils/ewma.ts":function(ne,k,E){"use strict";E.r(k);var I=function(){function C(M,w,R){w===void 0&&(w=0),R===void 0&&(R=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=M,this.alpha_=M?Math.exp(Math.log(.5)/M):0,this.estimate_=w,this.totalWeight_=R}var A=C.prototype;return A.sample=function(w,R){var S=Math.pow(this.alpha_,w);this.estimate_=R*(1-S)+S*this.estimate_,this.totalWeight_+=w},A.getTotalWeight=function(){return this.totalWeight_},A.getEstimate=function(){if(this.alpha_){var w=1-Math.pow(this.alpha_,this.totalWeight_);if(w)return this.estimate_/w}return this.estimate_},C}();k.default=I},"./src/utils/fetch-loader.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"fetchSupported",function(){return y});var I=E("./src/polyfills/number.ts"),C=E("./src/loader/load-stats.ts"),A=E("./src/demux/chunk-cache.ts");function M(i,h){i.prototype=Object.create(h.prototype),i.prototype.constructor=i,x(i,h)}function w(i){var h=typeof Map=="function"?new Map:void 0;return w=function(u){if(u===null||!g(u))return u;if(typeof u!="function")throw new TypeError("Super expression must either be null or a function");if(typeof h!="undefined"){if(h.has(u))return h.get(u);h.set(u,m)}function m(){return R(u,arguments,T(this).constructor)}return m.prototype=Object.create(u.prototype,{constructor:{value:m,enumerable:!1,writable:!0,configurable:!0}}),x(m,u)},w(i)}function R(i,h,l){return S()?R=Reflect.construct:R=function(m,d,o){var n=[null];n.push.apply(n,d);var t=Function.bind.apply(m,n),r=new t;return o&&x(r,o.prototype),r},R.apply(null,arguments)}function S(){if(typeof Reflect=="undefined"||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(i){return!1}}function g(i){return Function.toString.call(i).indexOf("[native code]")!==-1}function x(i,h){return x=Object.setPrototypeOf||function(u,m){return u.__proto__=m,u},x(i,h)}function T(i){return T=Object.setPrototypeOf?Object.getPrototypeOf:function(l){return l.__proto__||Object.getPrototypeOf(l)},T(i)}function v(){return v=Object.assign||function(i){for(var h=1;h<arguments.length;h++){var l=arguments[h];for(var u in l)Object.prototype.hasOwnProperty.call(l,u)&&(i[u]=l[u])}return i},v.apply(this,arguments)}function y(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch(i){}return!1}var p=function(){function i(l){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=l.fetchSetup||e,this.controller=new self.AbortController,this.stats=new C.LoadStats}var h=i.prototype;return h.destroy=function(){this.loader=this.callbacks=null,this.abortInternal()},h.abortInternal=function(){var u=this.response;(!u||!u.ok)&&(this.stats.aborted=!0,this.controller.abort())},h.abort=function(){var u;this.abortInternal(),(u=this.callbacks)!==null&&u!==void 0&&u.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)},h.load=function(u,m,d){var o=this,n=this.stats;if(n.loading.start)throw new Error("Loader can only be used once.");n.loading.start=self.performance.now();var t=s(u,this.controller.signal),r=d.onProgress,c=u.responseType==="arraybuffer",f=c?"byteLength":"length";this.context=u,this.config=m,this.callbacks=d,this.request=this.fetchSetup(u,t),self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(function(){o.abortInternal(),d.onTimeout(n,u,o.response)},m.timeout),self.fetch(this.request).then(function(b){if(o.response=o.loader=b,!b.ok){var L=b.status,D=b.statusText;throw new a(D||"fetch, bad network response",L,b)}return n.loading.first=Math.max(self.performance.now(),n.loading.start),n.total=parseInt(b.headers.get("Content-Length")||"0"),r&&Object(I.isFiniteNumber)(m.highWaterMark)?o.loadProgressively(b,n,u,m.highWaterMark,r):c?b.arrayBuffer():b.text()}).then(function(b){var L=o.response;self.clearTimeout(o.requestTimeout),n.loading.end=Math.max(self.performance.now(),n.loading.first),n.loaded=n.total=b[f];var D={url:L.url,data:b};r&&!Object(I.isFiniteNumber)(m.highWaterMark)&&r(n,u,b,L),d.onSuccess(D,n,u,L)}).catch(function(b){if(self.clearTimeout(o.requestTimeout),n.aborted)return;var L=b.code||0;d.onError({code:L,text:b.message},u,b.details)})},h.getCacheAge=function(){var u=null;if(this.response){var m=this.response.headers.get("age");u=m?parseFloat(m):null}return u},h.loadProgressively=function(u,m,d,o,n){o===void 0&&(o=0);var t=new A.default,r=u.body.getReader(),c=function f(){return r.read().then(function(b){if(b.done)return t.dataLength&&n(m,d,t.flush(),u),Promise.resolve(new ArrayBuffer(0));var L=b.value,D=L.length;return m.loaded+=D,D<o||t.dataLength?(t.push(L),t.dataLength>=o&&n(m,d,t.flush(),u)):n(m,d,L,u),f()}).catch(function(){return Promise.reject()})};return c()},i}();function s(i,h){var l={method:"GET",mode:"cors",credentials:"same-origin",signal:h,headers:new self.Headers(v({},i.headers))};return i.rangeEnd&&l.headers.set("Range","bytes="+i.rangeStart+"-"+String(i.rangeEnd-1)),l}function e(i,h){return new self.Request(i.url,h)}var a=function(i){M(h,i);function h(l,u,m){var d;return d=i.call(this,l)||this,d.code=void 0,d.details=void 0,d.code=u,d.details=m,d}return h}(w(Error));k.default=p},"./src/utils/imsc1-ttml-parser.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"IMSC1_CODEC",function(){return g}),E.d(k,"parseIMSC1",function(){return y});var I=E("./src/utils/mp4-tools.ts"),C=E("./src/utils/vttparser.ts"),A=E("./src/utils/vttcue.ts"),M=E("./src/demux/id3.ts"),w=E("./src/utils/timescale-conversion.ts"),R=E("./src/utils/webvtt-parser.ts");function S(){return S=Object.assign||function(o){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(o[r]=t[r])}return o},S.apply(this,arguments)}var g="stpp.ttml.im1t",x=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,T=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,v={left:"start",center:"center",right:"end",start:"start",end:"end"};function y(o,n,t,r,c){var f=Object(I.findBox)(new Uint8Array(o),["mdat"]);if(f.length===0){c(new Error("Could not parse IMSC1 mdat"));return}var b=f[0],L=Object(M.utf8ArrayToStr)(new Uint8Array(o,b.start,b.end-b.start)),D=Object(w.toTimescaleFromScale)(n,1,t);try{r(p(L,D))}catch(F){c(F)}}function p(o,n){var t=new DOMParser,r=t.parseFromString(o,"text/xml"),c=r.getElementsByTagName("tt")[0];if(!c)throw new Error("Invalid ttml");var f={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},b=Object.keys(f).reduce(function(K,V){return K[V]=c.getAttribute("ttp:"+V)||f[V],K},{}),L=c.getAttribute("xml:space")!=="preserve",D=e(s(c,"styling","style")),F=e(s(c,"layout","region")),N=s(c,"body","[begin]");return[].map.call(N,function(K){var V=a(K,L);if(!V||!K.hasAttribute("begin"))return null;var z=u(K.getAttribute("begin"),b),$=u(K.getAttribute("dur"),b),q=u(K.getAttribute("end"),b);if(z===null)throw l(K);if(q===null){if($===null)throw l(K);q=z+$}var J=new A.default(z-n,q-n,V);J.id=Object(R.generateCueId)(J.startTime,J.endTime,J.text);var he=F[K.getAttribute("region")],te=D[K.getAttribute("style")];J.position=10,J.size=80;var le=i(he,te),re=le.textAlign;if(re){var ae=v[re];ae&&(J.lineAlign=ae),J.align=re}return S(J,le),J}).filter(function(K){return K!==null})}function s(o,n,t){var r=o.getElementsByTagName(n)[0];return r?[].slice.call(r.querySelectorAll(t)):[]}function e(o){return o.reduce(function(n,t){var r=t.getAttribute("xml:id");return r&&(n[r]=t),n},{})}function a(o,n){return[].slice.call(o.childNodes).reduce(function(t,r,c){var f;return r.nodeName==="br"&&c?t+`
|
|
`:(f=r.childNodes)!==null&&f!==void 0&&f.length?a(r,n):n?t+r.textContent.trim().replace(/\s+/g," "):t+r.textContent},"")}function i(o,n){var t="http://www.w3.org/ns/ttml#styling",r=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"];return r.reduce(function(c,f){var b=h(n,t,f)||h(o,t,f);return b&&(c[f]=b),c},{})}function h(o,n,t){return o.hasAttributeNS(n,t)?o.getAttributeNS(n,t):null}function l(o){return new Error("Could not parse ttml timestamp "+o)}function u(o,n){if(!o)return null;var t=Object(C.parseTimeStamp)(o);return t===null&&(x.test(o)?t=m(o,n):T.test(o)&&(t=d(o,n))),t}function m(o,n){var t=x.exec(o),r=(t[4]|0)+(t[5]|0)/n.subFrameRate;return(t[1]|0)*3600+(t[2]|0)*60+(t[3]|0)+r/n.frameRate}function d(o,n){var t=T.exec(o),r=Number(t[1]),c=t[2];switch(c){case"h":return r*3600;case"m":return r*60;case"ms":return r*1e3;case"f":return r/n.frameRate;case"t":return r/n.tickRate}return r}},"./src/utils/logger.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"enableLogs",function(){return R}),E.d(k,"logger",function(){return S});var I=function(){},C={trace:I,debug:I,log:I,warn:I,info:I,error:I},A=C;function M(g){var x=self.console[g];return x?x.bind(self.console,"["+g+"] >"):I}function w(g){for(var x=arguments.length,T=new Array(x>1?x-1:0),v=1;v<x;v++)T[v-1]=arguments[v];T.forEach(function(y){A[y]=g[y]?g[y].bind(g):M(y)})}function R(g){if(self.console&&g===!0||typeof g=="object"){w(g,"debug","log","info","warn","error");try{A.log()}catch(x){A=C}}else A=C}var S=A},"./src/utils/mediakeys-helper.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"KeySystems",function(){return I}),E.d(k,"requestMediaKeySystemAccess",function(){return C});var I;(function(A){A.WIDEVINE="com.widevine.alpha",A.PLAYREADY="com.microsoft.playready"})(I||(I={}));var C=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}()},"./src/utils/mediasource-helper.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"getMediaSource",function(){return I});function I(){return self.MediaSource||self.WebKitMediaSource}},"./src/utils/mp4-tools.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"bin2str",function(){return w}),E.d(k,"readUint16",function(){return R}),E.d(k,"readUint32",function(){return S}),E.d(k,"writeUint32",function(){return g}),E.d(k,"findBox",function(){return x}),E.d(k,"parseSegmentIndex",function(){return T}),E.d(k,"parseInitSegment",function(){return v}),E.d(k,"getStartDTS",function(){return y}),E.d(k,"getDuration",function(){return p}),E.d(k,"computeRawDurationFromSamples",function(){return s}),E.d(k,"offsetStartDTS",function(){return e}),E.d(k,"segmentValidRange",function(){return a}),E.d(k,"appendUint8Array",function(){return i});var I=E("./src/utils/typed-array.ts"),C=E("./src/loader/fragment.ts"),A=Math.pow(2,32)-1,M=[].push;function w(h){return String.fromCharCode.apply(null,h)}function R(h,l){"data"in h&&(l+=h.start,h=h.data);var u=h[l]<<8|h[l+1];return u<0?65536+u:u}function S(h,l){"data"in h&&(l+=h.start,h=h.data);var u=h[l]<<24|h[l+1]<<16|h[l+2]<<8|h[l+3];return u<0?4294967296+u:u}function g(h,l,u){"data"in h&&(l+=h.start,h=h.data),h[l]=u>>24,h[l+1]=u>>16&255,h[l+2]=u>>8&255,h[l+3]=u&255}function x(h,l){var u=[];if(!l.length)return u;var m,d,o;"data"in h?(m=h.data,d=h.start,o=h.end):(m=h,d=0,o=m.byteLength);for(var n=d;n<o;){var t=S(m,n),r=w(m.subarray(n+4,n+8)),c=t>1?n+t:o;if(r===l[0])if(l.length===1)u.push({data:m,start:n+8,end:c});else{var f=x({data:m,start:n+8,end:c},l.slice(1));f.length&&M.apply(u,f)}n=c}return u}function T(h){var l=x(h,["moov"]),u=l[0],m=u?u.end:null,d=x(h,["sidx"]);if(!d||!d[0])return null;var o=[],n=d[0],t=n.data[0],r=t===0?8:16,c=S(n,r);r+=4;var f=0,b=0;t===0?r+=8:r+=16,r+=2;var L=n.end+b,D=R(n,r);r+=2;for(var F=0;F<D;F++){var N=r,K=S(n,N);N+=4;var V=K&2147483647,z=(K&2147483648)>>>31;if(z===1)return console.warn("SIDX has hierarchical references (not supported)"),null;var $=S(n,N);N+=4,o.push({referenceSize:V,subsegmentDuration:$,info:{duration:$/c,start:L,end:L+V-1}}),L+=V,N+=4,r=N}return{earliestPresentationTime:f,timescale:c,version:t,referencesCount:D,references:o,moovEndOffset:m}}function v(h){for(var l=[],u=x(h,["moov","trak"]),m=0;m<u.length;m++){var d=u[m],o=x(d,["tkhd"])[0];if(o){var n=o.data[o.start],t=n===0?12:20,r=S(o,t),c=x(d,["mdia","mdhd"])[0];if(c){n=c.data[c.start],t=n===0?12:20;var f=S(c,t),b=x(d,["mdia","hdlr"])[0];if(b){var L=w(b.data.subarray(b.start+8,b.start+12)),D={soun:C.ElementaryStreamTypes.AUDIO,vide:C.ElementaryStreamTypes.VIDEO}[L];if(D){var F=x(d,["mdia","minf","stbl","stsd"])[0],N=void 0;F&&(N=w(F.data.subarray(F.start+12,F.start+16))),l[r]={timescale:f,type:D},l[D]={timescale:f,id:r,codec:N}}}}}}var K=x(h,["moov","mvex","trex"]);return K.forEach(function(V){var z=S(V,4),$=l[z];$&&($.default={duration:S(V,12),flags:S(V,20)})}),l}function y(h,l){return x(l,["moof","traf"]).reduce(function(u,m){var d=x(m,["tfdt"])[0],o=d.data[d.start],n=x(m,["tfhd"]).reduce(function(t,r){var c=S(r,4),f=h[c];if(f){var b=S(d,4);o===1&&(b*=Math.pow(2,32),b+=S(d,8));var L=f.timescale||9e4,D=b/L;if(isFinite(D)&&(t===null||D<t))return D}return t},null);return n!==null&&isFinite(n)&&(u===null||n<u)?n:u},null)||0}function p(h,l){for(var u=0,m=0,d=0,o=x(h,["moof","traf"]),n=0;n<o.length;n++){var t=o[n],r=x(t,["tfhd"])[0],c=S(r,4),f=l[c];if(!f)continue;var b=f.default,L=S(r,0)|(b==null?void 0:b.flags),D=b==null?void 0:b.duration;L&8&&(L&2?D=S(r,12):D=S(r,8));for(var F=f.timescale||9e4,N=x(t,["trun"]),K=0;K<N.length;K++){if(D){var V=S(N[K],4);u=D*V}else u=s(N[K]);f.type===C.ElementaryStreamTypes.VIDEO?m+=u/F:f.type===C.ElementaryStreamTypes.AUDIO&&(d+=u/F)}}if(m===0&&d===0){var z=T(h);if(z!=null&&z.references)return z.references.reduce(function($,q){return $+q.info.duration||0},0)}return m||d}function s(h){var l=S(h,0),u=8;l&1&&(u+=4),l&4&&(u+=4);for(var m=0,d=S(h,4),o=0;o<d;o++){if(l&256){var n=S(h,u);m+=n,u+=4}l&512&&(u+=4),l&1024&&(u+=4),l&2048&&(u+=4)}return m}function e(h,l,u){x(l,["moof","traf"]).forEach(function(m){x(m,["tfhd"]).forEach(function(d){var o=S(d,4),n=h[o];if(!n)return;var t=n.timescale||9e4;x(m,["tfdt"]).forEach(function(r){var c=r.data[r.start],f=S(r,4);if(c===0)g(r,4,f-u*t);else{f*=Math.pow(2,32),f+=S(r,8),f-=u*t,f=Math.max(f,0);var b=Math.floor(f/(A+1)),L=Math.floor(f%(A+1));g(r,4,b),g(r,8,L)}})})})}function a(h){var l={valid:null,remainder:null},u=x(h,["moof"]);if(u){if(u.length<2)return l.remainder=h,l}else return l;var m=u[u.length-1];return l.valid=Object(I.sliceUint8)(h,0,m.start-8),l.remainder=Object(I.sliceUint8)(h,m.start-8),l}function i(h,l){var u=new Uint8Array(h.length+l.length);return u.set(h),u.set(l,h.length),u}},"./src/utils/output-filter.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"default",function(){return I});var I=function(){function C(M,w){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=M,this.trackName=w}var A=C.prototype;return A.dispatchCue=function(){if(this.startTime===null)return;this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null},A.newCue=function(w,R,S){(this.startTime===null||this.startTime>w)&&(this.startTime=w),this.endTime=R,this.screen=S,this.timelineController.createCaptionsTrack(this.trackName)},A.reset=function(){this.cueRanges=[]},C}()},"./src/utils/texttrack-utils.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"sendAddTrackEvent",function(){return C}),E.d(k,"addCueToTrack",function(){return A}),E.d(k,"clearCurrentCues",function(){return M}),E.d(k,"removeCuesInRange",function(){return w}),E.d(k,"getCuesInRange",function(){return S});var I=E("./src/utils/logger.ts");function C(g,x){var T;try{T=new Event("addtrack")}catch(v){T=document.createEvent("Event"),T.initEvent("addtrack",!1,!1)}T.track=g,x.dispatchEvent(T)}function A(g,x){var T=g.mode;if(T==="disabled"&&(g.mode="hidden"),g.cues&&!g.cues.getCueById(x.id))try{if(g.addCue(x),!g.cues.getCueById(x.id))throw new Error("addCue is failed for: "+x)}catch(y){I.logger.debug("[texttrack-utils]: "+y);var v=new self.TextTrackCue(x.startTime,x.endTime,x.text);v.id=x.id,g.addCue(v)}T==="disabled"&&(g.mode=T)}function M(g){var x=g.mode;if(x==="disabled"&&(g.mode="hidden"),g.cues)for(var T=g.cues.length;T--;)g.removeCue(g.cues[T]);x==="disabled"&&(g.mode=x)}function w(g,x,T){var v=g.mode;if(v==="disabled"&&(g.mode="hidden"),g.cues&&g.cues.length>0)for(var y=S(g.cues,x,T),p=0;p<y.length;p++)g.removeCue(y[p]);v==="disabled"&&(g.mode=v)}function R(g,x){if(x<g[0].startTime)return 0;var T=g.length-1;if(x>g[T].endTime)return-1;for(var v=0,y=T;v<=y;){var p=Math.floor((y+v)/2);if(x<g[p].startTime)y=p-1;else if(x>g[p].startTime&&v<T)v=p+1;else return p}return g[v].startTime-x<x-g[y].startTime?v:y}function S(g,x,T){var v=[],y=R(g,x);if(y>-1)for(var p=y,s=g.length;p<s;p++){var e=g[p];if(e.startTime>=x&&e.endTime<=T)v.push(e);else if(e.startTime>T)return v}return v}},"./src/utils/time-ranges.ts":function(ne,k,E){"use strict";E.r(k);var I={toString:function(A){for(var M="",w=A.length,R=0;R<w;R++)M+="["+A.start(R).toFixed(3)+","+A.end(R).toFixed(3)+"]";return M}};k.default=I},"./src/utils/timescale-conversion.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"toTimescaleFromBase",function(){return C}),E.d(k,"toTimescaleFromScale",function(){return A}),E.d(k,"toMsFromMpegTsClock",function(){return M}),E.d(k,"toMpegTsClockFromTimescale",function(){return w});var I=9e4;function C(R,S,g,x){g===void 0&&(g=1),x===void 0&&(x=!1);var T=R*S*g;return x?Math.round(T):T}function A(R,S,g,x){return g===void 0&&(g=1),x===void 0&&(x=!1),C(R,S,1/g,x)}function M(R,S){return S===void 0&&(S=!1),C(R,1e3,1/I,S)}function w(R,S){return S===void 0&&(S=1),C(R,I,1/S)}},"./src/utils/typed-array.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"sliceUint8",function(){return I});function I(C,A,M){return Uint8Array.prototype.slice?C.slice(A,M):new Uint8Array(Array.prototype.slice.call(C,A,M))}},"./src/utils/vttcue.ts":function(ne,k,E){"use strict";E.r(k),k.default=function(){if(typeof self!="undefined"&&self.VTTCue)return self.VTTCue;var I=["","lr","rl"],C=["start","middle","end","left","right"];function A(g,x){if(typeof x!="string")return!1;if(!Array.isArray(g))return!1;var T=x.toLowerCase();return~g.indexOf(T)?T:!1}function M(g){return A(I,g)}function w(g){return A(C,g)}function R(g){for(var x=arguments.length,T=new Array(x>1?x-1:0),v=1;v<x;v++)T[v-1]=arguments[v];for(var y=1;y<arguments.length;y++){var p=arguments[y];for(var s in p)g[s]=p[s]}return g}function S(g,x,T){var v=this,y={enumerable:!0};v.hasBeenReset=!1;var p="",s=!1,e=g,a=x,i=T,h=null,l="",u=!0,m="auto",d="start",o=50,n="middle",t=50,r="middle";Object.defineProperty(v,"id",R({},y,{get:function(){return p},set:function(f){p=""+f}})),Object.defineProperty(v,"pauseOnExit",R({},y,{get:function(){return s},set:function(f){s=!!f}})),Object.defineProperty(v,"startTime",R({},y,{get:function(){return e},set:function(f){if(typeof f!="number")throw new TypeError("Start time must be set to a number.");e=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"endTime",R({},y,{get:function(){return a},set:function(f){if(typeof f!="number")throw new TypeError("End time must be set to a number.");a=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"text",R({},y,{get:function(){return i},set:function(f){i=""+f,this.hasBeenReset=!0}})),Object.defineProperty(v,"region",R({},y,{get:function(){return h},set:function(f){h=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"vertical",R({},y,{get:function(){return l},set:function(f){var b=M(f);if(b===!1)throw new SyntaxError("An invalid or illegal string was specified.");l=b,this.hasBeenReset=!0}})),Object.defineProperty(v,"snapToLines",R({},y,{get:function(){return u},set:function(f){u=!!f,this.hasBeenReset=!0}})),Object.defineProperty(v,"line",R({},y,{get:function(){return m},set:function(f){if(typeof f!="number"&&f!=="auto")throw new SyntaxError("An invalid number or illegal string was specified.");m=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"lineAlign",R({},y,{get:function(){return d},set:function(f){var b=w(f);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");d=b,this.hasBeenReset=!0}})),Object.defineProperty(v,"position",R({},y,{get:function(){return o},set:function(f){if(f<0||f>100)throw new Error("Position must be between 0 and 100.");o=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"positionAlign",R({},y,{get:function(){return n},set:function(f){var b=w(f);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");n=b,this.hasBeenReset=!0}})),Object.defineProperty(v,"size",R({},y,{get:function(){return t},set:function(f){if(f<0||f>100)throw new Error("Size must be between 0 and 100.");t=f,this.hasBeenReset=!0}})),Object.defineProperty(v,"align",R({},y,{get:function(){return r},set:function(f){var b=w(f);if(!b)throw new SyntaxError("An invalid or illegal string was specified.");r=b,this.hasBeenReset=!0}})),v.displayState=void 0}return S.prototype.getCueAsHTML=function(){var g=self.WebVTT;return g.convertCueToDOMTree(self,this.text)},S}()},"./src/utils/vttparser.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"parseTimeStamp",function(){return A}),E.d(k,"fixLineBreaks",function(){return x}),E.d(k,"VTTParser",function(){return T});var I=E("./src/utils/vttcue.ts"),C=function(){function v(){}var y=v.prototype;return y.decode=function(s,e){if(!s)return"";if(typeof s!="string")throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(s))},v}();function A(v){function y(s,e,a,i){return(s|0)*3600+(e|0)*60+(a|0)+parseFloat(i||0)}var p=v.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return p?parseFloat(p[2])>59?y(p[2],p[3],0,p[4]):y(p[1],p[2],p[3],p[4]):null}var M=function(){function v(){this.values=Object.create(null)}var y=v.prototype;return y.set=function(s,e){!this.get(s)&&e!==""&&(this.values[s]=e)},y.get=function(s,e,a){return a?this.has(s)?this.values[s]:e[a]:this.has(s)?this.values[s]:e},y.has=function(s){return s in this.values},y.alt=function(s,e,a){for(var i=0;i<a.length;++i)if(e===a[i]){this.set(s,e);break}},y.integer=function(s,e){/^-?\d+$/.test(e)&&this.set(s,parseInt(e,10))},y.percent=function(s,e){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(e)){var a=parseFloat(e);if(a>=0&&a<=100)return this.set(s,a),!0}return!1},v}();function w(v,y,p,s){var e=s?v.split(s):[v];for(var a in e){if(typeof e[a]!="string")continue;var i=e[a].split(p);if(i.length!==2)continue;var h=i[0],l=i[1];y(h,l)}}var R=new I.default(0,0,""),S=R.align==="middle"?"middle":"center";function g(v,y,p){var s=v;function e(){var h=A(v);if(h===null)throw new Error("Malformed timestamp: "+s);return v=v.replace(/^[^\sa-zA-Z-]+/,""),h}function a(h,l){var u=new M;w(h,function(o,n){var t;switch(o){case"region":for(var r=p.length-1;r>=0;r--)if(p[r].id===n){u.set(o,p[r].region);break}break;case"vertical":u.alt(o,n,["rl","lr"]);break;case"line":t=n.split(","),u.integer(o,t[0]),u.percent(o,t[0])&&u.set("snapToLines",!1),u.alt(o,t[0],["auto"]),t.length===2&&u.alt("lineAlign",t[1],["start",S,"end"]);break;case"position":t=n.split(","),u.percent(o,t[0]),t.length===2&&u.alt("positionAlign",t[1],["start",S,"end","line-left","line-right","auto"]);break;case"size":u.percent(o,n);break;case"align":u.alt(o,n,["start",S,"end","left","right"]);break}},/:/,/\s/),l.region=u.get("region",null),l.vertical=u.get("vertical","");var m=u.get("line","auto");m==="auto"&&R.line===-1&&(m=-1),l.line=m,l.lineAlign=u.get("lineAlign","start"),l.snapToLines=u.get("snapToLines",!0),l.size=u.get("size",100),l.align=u.get("align",S);var d=u.get("position","auto");d==="auto"&&R.position===50&&(d=l.align==="start"||l.align==="left"?0:l.align==="end"||l.align==="right"?100:50),l.position=d}function i(){v=v.replace(/^\s+/,"")}if(i(),y.startTime=e(),i(),v.substr(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+s);v=v.substr(3),i(),y.endTime=e(),i(),a(v,y)}function x(v){return v.replace(/<br(?: \/)?>/gi,`
|
|
`)}var T=function(){function v(){this.state="INITIAL",this.buffer="",this.decoder=new C,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}var y=v.prototype;return y.parse=function(s){var e=this;s&&(e.buffer+=e.decoder.decode(s,{stream:!0}));function a(){var d=e.buffer,o=0;for(d=x(d);o<d.length&&d[o]!=="\r"&&d[o]!==`
|
|
`;)++o;var n=d.substr(0,o);return d[o]==="\r"&&++o,d[o]===`
|
|
`&&++o,e.buffer=d.substr(o),n}function i(d){w(d,function(o,n){},/:/)}try{var h="";if(e.state==="INITIAL"){if(!/\r\n|\n/.test(e.buffer))return this;h=a();var l=h.match(/^()?WEBVTT([ \t].*)?$/);if(!l||!l[0])throw new Error("Malformed WebVTT signature.");e.state="HEADER"}for(var u=!1;e.buffer;){if(!/\r\n|\n/.test(e.buffer))return this;u?u=!1:h=a();switch(e.state){case"HEADER":/:/.test(h)?i(h):h||(e.state="ID");continue;case"NOTE":h||(e.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(h)){e.state="NOTE";break}if(!h)continue;if(e.cue=new I.default(0,0,""),e.state="CUE",h.indexOf("-->")===-1){e.cue.id=h;continue}case"CUE":if(!e.cue){e.state="BADCUE";continue}try{g(h,e.cue,e.regionList)}catch(d){e.cue=null,e.state="BADCUE";continue}e.state="CUETEXT";continue;case"CUETEXT":{var m=h.indexOf("-->")!==-1;if(!h||m&&(u=!0)){e.oncue&&e.cue&&e.oncue(e.cue),e.cue=null,e.state="ID";continue}if(e.cue===null)continue;e.cue.text&&(e.cue.text+=`
|
|
`),e.cue.text+=h}continue;case"BADCUE":h||(e.state="ID")}}}catch(d){e.state==="CUETEXT"&&e.cue&&e.oncue&&e.oncue(e.cue),e.cue=null,e.state=e.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},y.flush=function(){var s=this;try{if((s.cue||s.state==="HEADER")&&(s.buffer+=`
|
|
|
|
`,s.parse()),s.state==="INITIAL"||s.state==="BADWEBVTT")throw new Error("Malformed WebVTT signature.")}catch(e){s.onparsingerror&&s.onparsingerror(e)}return s.onflush&&s.onflush(),this},v}()},"./src/utils/webvtt-parser.ts":function(ne,k,E){"use strict";E.r(k),E.d(k,"generateCueId",function(){return T}),E.d(k,"parseWebVTT",function(){return y});var I=E("./src/polyfills/number.ts"),C=E("./src/utils/vttparser.ts"),A=E("./src/demux/id3.ts"),M=E("./src/utils/timescale-conversion.ts"),w=E("./src/remux/mp4-remuxer.ts"),R=/\r\n|\n\r|\n|\r/g,S=function(s,e,a){return a===void 0&&(a=0),s.substr(a,e.length)===e},g=function(s){var e=parseInt(s.substr(-3)),a=parseInt(s.substr(-6,2)),i=parseInt(s.substr(-9,2)),h=s.length>9?parseInt(s.substr(0,s.indexOf(":"))):0;if(!Object(I.isFiniteNumber)(e)||!Object(I.isFiniteNumber)(a)||!Object(I.isFiniteNumber)(i)||!Object(I.isFiniteNumber)(h))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+s);return e+=1e3*a,e+=60*1e3*i,e+=60*60*1e3*h,e},x=function(s){for(var e=5381,a=s.length;a;)e=e*33^s.charCodeAt(--a);return(e>>>0).toString()};function T(p,s,e){return x(p.toString())+x(s.toString())+x(e)}var v=function(s,e,a){var i=s[e],h=s[i.prevCC];if(!h||!h.new&&i.new){s.ccOffset=s.presentationOffset=i.start,i.new=!1;return}for(;(l=h)!==null&&l!==void 0&&l.new;){var l;s.ccOffset+=i.start-h.start,i.new=!1,i=h,h=s[i.prevCC]}s.presentationOffset=a};function y(p,s,e,a,i,h,l,u){var m=new C.VTTParser,d=Object(A.utf8ArrayToStr)(new Uint8Array(p)).trim().replace(R,`
|
|
`).split(`
|
|
`),o=[],n=Object(M.toMpegTsClockFromTimescale)(s,e),t="00:00.000",r=0,c=0,f,b=!0,L=!1;m.oncue=function(D){var F=a[i],N=a.ccOffset,K=(r-n)/9e4;if(F!=null&&F.new&&(c!==void 0?N=a.ccOffset=F.start:v(a,i,K)),K&&(N=K-a.presentationOffset),L){var V=D.endTime-D.startTime,z=Object(w.normalizePts)((D.startTime+N-c)*9e4,h*9e4)/9e4;D.startTime=z,D.endTime=z+V}var $=D.text.trim();D.text=decodeURIComponent(encodeURIComponent($)),D.id||(D.id=T(D.startTime,D.endTime,$)),D.endTime>0&&o.push(D)},m.onparsingerror=function(D){f=D},m.onflush=function(){if(f){u(f);return}l(o)},d.forEach(function(D){if(b)if(S(D,"X-TIMESTAMP-MAP=")){b=!1,L=!0,D.substr(16).split(",").forEach(function(F){S(F,"LOCAL:")?t=F.substr(6):S(F,"MPEGTS:")&&(r=parseInt(F.substr(7)))});try{c=g(t)/1e3}catch(F){L=!1,f=F}return}else D===""&&(b=!1);m.parse(D+`
|
|
`)}),m.flush()}},"./src/utils/xhr-loader.ts":function(ne,k,E){"use strict";E.r(k);var I=E("./src/utils/logger.ts"),C=E("./src/loader/load-stats.ts"),A=/^age:\s*[\d.]+\s*$/m,M=function(){function w(S){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=S?S.xhrSetup:null,this.stats=new C.LoadStats,this.retryDelay=0}var R=w.prototype;return R.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},R.abortInternal=function(){var g=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),g&&(g.onreadystatechange=null,g.onprogress=null,g.readyState!==4&&(this.stats.aborted=!0,g.abort()))},R.abort=function(){var g;this.abortInternal(),(g=this.callbacks)!==null&&g!==void 0&&g.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},R.load=function(g,x,T){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=g,this.config=x,this.callbacks=T,this.retryDelay=x.retryDelay,this.loadInternal()},R.loadInternal=function(){var g=this.config,x=this.context;if(!g)return;var T=this.loader=new self.XMLHttpRequest,v=this.stats;v.loading.first=0,v.loaded=0;var y=this.xhrSetup;try{if(y)try{y(T,x.url)}catch(e){T.open("GET",x.url,!0),y(T,x.url)}T.readyState||T.open("GET",x.url,!0);var p=this.context.headers;if(p)for(var s in p)T.setRequestHeader(s,p[s])}catch(e){this.callbacks.onError({code:T.status,text:e.message},x,T);return}x.rangeEnd&&T.setRequestHeader("Range","bytes="+x.rangeStart+"-"+(x.rangeEnd-1)),T.onreadystatechange=this.readystatechange.bind(this),T.onprogress=this.loadprogress.bind(this),T.responseType=x.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),g.timeout),T.send()},R.readystatechange=function(){var g=this.context,x=this.loader,T=this.stats;if(!g||!x)return;var v=x.readyState,y=this.config;if(T.aborted)return;if(v>=2)if(self.clearTimeout(this.requestTimeout),T.loading.first===0&&(T.loading.first=Math.max(self.performance.now(),T.loading.start)),v===4){x.onreadystatechange=null,x.onprogress=null;var p=x.status;if(p>=200&&p<300){T.loading.end=Math.max(self.performance.now(),T.loading.first);var s,e;if(g.responseType==="arraybuffer"?(s=x.response,e=s.byteLength):(s=x.responseText,e=s.length),T.loaded=T.total=e,!this.callbacks)return;var a=this.callbacks.onProgress;if(a&&a(T,g,s,x),!this.callbacks)return;var i={url:x.responseURL,data:s};this.callbacks.onSuccess(i,T,g,x)}else T.retry>=y.maxRetry||p>=400&&p<499?(I.logger.error(p+" while loading "+g.url),this.callbacks.onError({code:p,text:x.statusText},g,x)):(I.logger.warn(p+" while loading "+g.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,y.maxRetryDelay),T.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),y.timeout)},R.loadtimeout=function(){I.logger.warn("timeout while loading "+this.context.url);var g=this.callbacks;g&&(this.abortInternal(),g.onTimeout(this.stats,this.context,this.loader))},R.loadprogress=function(g){var x=this.stats;x.loaded=g.loaded,g.lengthComputable&&(x.total=g.total)},R.getCacheAge=function(){var g=null;if(this.loader&&A.test(this.loader.getAllResponseHeaders())){var x=this.loader.getResponseHeader("age");g=x?parseFloat(x):null}return g},w}();k.default=M}}).default})},"yTi+":function(We,ke,ee){We.exports=ee.p+"static/AssistantCode3.fdd8db3c.jpeg"},zvqp:function(We,ke,ee){We.exports={flex_box_center:"flex_box_center___3si-j",flex_space_between:"flex_space_between___1JkB6",flex_box_vertical_center:"flex_box_vertical_center___298wI",flex_box_center_end:"flex_box_center_end___1kjbU",flex_box_column:"flex_box_column___2_dkP",content:"content___YUEGP",title:"title___1gIWf",menu:"menu___tZhO5",contcats:"contcats___3chvG",cooperatives:"cooperatives___U0UdA",imgWrp:"imgWrp___3N3oq"}}}]);
|