define(["exports"],(function(t){"use strict";var e=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},i=Object.assign||function(t){for(var e=1;e-1},t.prototype.trigger=function(t){var e=this.listeners[t],i=void 0,a=void 0,r=void 0;if(e)if(2===arguments.length)for(a=e.length,i=0;i-1;e=this.buffer.indexOf("\n"))this.trigger("data",this.buffer.substring(0,e)),this.buffer=this.buffer.substring(e+1)},i}(s),u=function(t){for(var e=t.split(new RegExp('(?:^|,)((?:[^=]*)=(?:"[^"]*"|[^,]*))')),i={},a=e.length,r=void 0;a--;)""!==e[a]&&((r=/([^=]*)=(.*)/.exec(e[a]).slice(1))[0]=r[0].replace(/^\s+|\s+$/g,""),r[1]=r[1].replace(/^\s+|\s+$/g,""),r[1]=r[1].replace(/^['"](.*)['"]$/g,"$1"),i[r[0]]=r[1]);return i},o=function(t){function i(){e(this,i);var a=r(this,t.call(this));return a.customParsers=[],a}return a(i,t),i.prototype.push=function(t){var e=void 0,i=void 0;if(0!==(t=t.replace(/^[\u0000\s]+|[\u0000\s]+$/g,"")).length)if("#"===t[0]){for(var a=0;a0&&(f.duration=t.duration),0===t.duration&&(f.duration=.01,this.trigger("info",{message:"updating zero segment duration to a small value"})),this.manifest.segments=g},key:function(){t.attributes?"NONE"!==t.attributes.METHOD?t.attributes.URI?(t.attributes.METHOD||this.trigger("warn",{message:"defaulting key method to AES-128"}),p={method:t.attributes.METHOD||"AES-128",uri:t.attributes.URI},void 0!==t.attributes.IV&&(p.iv=t.attributes.IV)):this.trigger("warn",{message:"ignoring key declaration without URI"}):p=null:this.trigger("warn",{message:"ignoring key declaration without attribute list"})},"media-sequence":function(){isFinite(t.number)?this.manifest.mediaSequence=t.number:this.trigger("warn",{message:"ignoring invalid media sequence: "+t.number})},"discontinuity-sequence":function(){isFinite(t.number)?(this.manifest.discontinuitySequence=t.number,l=t.number):this.trigger("warn",{message:"ignoring invalid discontinuity sequence: "+t.number})},"playlist-type":function(){/VOD|EVENT/.test(t.playlistType)?this.manifest.playlistType=t.playlistType:this.trigger("warn",{message:"ignoring unknown playlist type: "+t.playlist})},map:function(){c={},t.uri&&(c.uri=t.uri),t.byterange&&(c.byterange=t.byterange)},"stream-inf":function(){this.manifest.playlists=g,this.manifest.mediaGroups=this.manifest.mediaGroups||h,t.attributes?(f.attributes||(f.attributes={}),i(f.attributes,t.attributes)):this.trigger("warn",{message:"ignoring empty stream-inf attributes"})},media:function(){if(this.manifest.mediaGroups=this.manifest.mediaGroups||h,t.attributes&&t.attributes.TYPE&&t.attributes["GROUP-ID"]&&t.attributes.NAME){var i=this.manifest.mediaGroups[t.attributes.TYPE];i[t.attributes["GROUP-ID"]]=i[t.attributes["GROUP-ID"]]||{},e=i[t.attributes["GROUP-ID"]],(a={default:/yes/i.test(t.attributes.DEFAULT)}).default?a.autoselect=!0:a.autoselect=/yes/i.test(t.attributes.AUTOSELECT),t.attributes.LANGUAGE&&(a.language=t.attributes.LANGUAGE),t.attributes.URI&&(a.uri=t.attributes.URI),t.attributes["INSTREAM-ID"]&&(a.instreamId=t.attributes["INSTREAM-ID"]),t.attributes.CHARACTERISTICS&&(a.characteristics=t.attributes.CHARACTERISTICS),t.attributes.FORCED&&(a.forced=/yes/i.test(t.attributes.FORCED)),e[t.attributes.NAME]=a}else this.trigger("warn",{message:"ignoring incomplete or missing media group"})},discontinuity:function(){l+=1,f.discontinuity=!0,this.manifest.discontinuityStarts.push(g.length)},"program-date-time":function(){void 0===this.manifest.dateTimeString&&(this.manifest.dateTimeString=t.dateTimeString,this.manifest.dateTimeObject=t.dateTimeObject),f.dateTimeString=t.dateTimeString,f.dateTimeObject=t.dateTimeObject},targetduration:function(){!isFinite(t.duration)||t.duration<0?this.trigger("warn",{message:"ignoring invalid target duration: "+t.duration}):this.manifest.targetDuration=t.duration},totalduration:function(){!isFinite(t.duration)||t.duration<0?this.trigger("warn",{message:"ignoring invalid total duration: "+t.duration}):this.manifest.totalDuration=t.duration},start:function(){t.attributes&&!isNaN(t.attributes["TIME-OFFSET"])?this.manifest.start={timeOffset:t.attributes["TIME-OFFSET"],precise:t.attributes.PRECISE}:this.trigger("warn",{message:"ignoring start declaration without appropriate attribute list"})},"cue-out":function(){f.cueOut=t.data},"cue-out-cont":function(){f.cueOutCont=t.data},"cue-in":function(){f.cueIn=t.data}}[t.tagType]||d).call(u)},uri:function(){f.uri=t.uri,g.push(f),this.manifest.targetDuration&&!("duration"in f)&&(this.trigger("warn",{message:"defaulting segment duration to the target duration"}),f.duration=this.manifest.targetDuration),p&&(f.key=p),f.timeline=l,c&&(f.map=c),f={}},comment:function(){},custom:function(){t.segment?(f.custom=f.custom||{},f.custom[t.customType]=t.data):(this.manifest.custom=this.manifest.custom||{},this.manifest.custom[t.customType]=t.data)}})[t.type].call(u)})),a}return a(s,t),s.prototype.push=function(t){this.lineStream.push(t)},s.prototype.end=function(){this.lineStream.push("\n")},s.prototype.addParser=function(t){this.parseStream.addParser(t)},s}(s);t.LineStream=n,t.ParseStream=o,t.Parser=g,Object.defineProperty(t,"__esModule",{value:!0})})); //# sourceMappingURL=m3u8-parser.js-vflC3krZN.map