!function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.VASTPlayer=a()}}(function(){var a;return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g0&&d(c,a,b)}),b.on("newListener",function(e){c.indexOf(e)>-1&&b.listeners(e).length<1&&d(e,a,b)})}function f(a){this.events=a.slice(),this.__private__={target:null,source:null}}f.prototype.from=function(a){return this.__private__.source=a,this.__private__.target&&e(a,this.__private__.target,this.events),this},f.prototype.to=function(a){return this.__private__.target=a,this.__private__.source&&e(this.__private__.source,a,this.events),this},b.exports=f},{}],3:[function(a,b,c){"use strict";function d(a){var b=this;e.call(this,Math.floor(a.duration||0)),this.video=a,[g.PLAYING,g.PAUSE,g.TIMEUPDATE].forEach(function(c){return a.addEventListener(c,function(){return b.tick()},!1)})}var e=a("./VideoTracker"),f=a("util").inherits,g=a("./enums/HTML_MEDIA_EVENTS");f(d,e),d.prototype._getState=function(){return{playing:!this.video.paused,currentTime:this.video.currentTime}},b.exports=d},{"./VideoTracker":7,"./enums/HTML_MEDIA_EVENTS":8,util:35}],4:[function(a,b,c){"use strict";function d(a){return a}function e(a,b){(a||[]).forEach(function(a){(new Image).src=b(a)})}function f(a,b){this.pixels=a.reduce(function(a,b){return(a[b.event]||(a[b.event]=[])).push(b.uri),a},{}),this.__private__={mapper:b||d}}var g=a("./enums/VPAID_EVENTS");f.prototype.track=function(a){function b(a,b,g){function h(a){return f((b||d)(a))}return function(){g&&!g()||e(c[a],h)}}var c=this.pixels,f=this.__private__.mapper,h=a.adVolume;a.on(g.AdSkipped,b("skip")),a.on(g.AdStarted,b("creativeView")),a.on(g.AdVolumeChange,b("unmute",null,function(){return 0===h&&a.adVolume>0})),a.on(g.AdVolumeChange,b("mute",null,function(){return h>0&&0===a.adVolume})),a.on(g.AdImpression,b("impression")),a.on(g.AdVideoStart,b("start")),a.on(g.AdVideoFirstQuartile,b("firstQuartile")),a.on(g.AdVideoMidpoint,b("midpoint")),a.on(g.AdVideoThirdQuartile,b("thirdQuartile")),a.on(g.AdVideoComplete,b("complete")),a.on(g.AdClickThru,b("clickThrough")),a.on(g.AdUserAcceptInvitation,b("acceptInvitationLinear")),a.on(g.AdUserMinimize,b("collapse")),a.on(g.AdUserClose,b("closeLinear")),a.on(g.AdPaused,b("pause")),a.on(g.AdPlaying,b("resume")),a.on(g.AdError,b("error",function(a){return a.replace(/\[ERRORCODE\]/g,901)})),a.on(g.AdVolumeChange,function(){h=a.adVolume})},b.exports=f},{"./enums/VPAID_EVENTS":10}],5:[function(a,b,c){"use strict";function d(){var a,b,c,e,f={},g=arguments.length;for(a=0;a0?{player:new m(b.container),mediaFiles:c}:d.length>0?{player:new n(b.container,i.vpaidSWFLocation),mediaFiles:d}:{player:new o(b.container),mediaFiles:e}}(),d=a.get("ads[0].creatives[0].parameters"),e=[].concat(a.map("ads[0].impressions",function(a){return{event:"impression",uri:a.uri}}),a.map("ads[0].errors",function(a){return{event:"error",uri:a}}),a.get("ads[0].creatives[0].trackingEvents"),a.map("ads[0].creatives[0].videoClicks.clickTrackings",function(a){return{event:"clickThrough",uri:a}})),f=c.player,g=c.mediaFiles,h=new r(q),j=new t(e,b.config.tracking.mapper);return h.from(f).to(b),b.__private__.vast=a,b.__private__.player=f,f.load(g,d).then(function(){j.track(f)})}).then(function(){return b.__private__.ready=!0,b.emit("ready"),b}).catch(function(a){throw b.emit("error",a),a})},i.prototype.startAd=g("startAd"),i.prototype.stopAd=g("stopAd"),i.prototype.pauseAd=g("pauseAd"),i.prototype.resumeAd=g("resumeAd"),i.vpaidSWFLocation="https://cdn.jsdelivr.net/npm/vast-player@0.2.10/dist/vast-player--vpaid.swf",b.exports=i},{"./EventProxy":2,"./PixelReporter":4,"./enums/MIME":9,"./enums/VPAID_EVENTS":10,"./players/FlashVPAID":12,"./players/HTMLVideo":13,"./players/JavaScriptVPAID":14,events:19,lie:21,util:35,vastacular:36}],6:[function(a,b,c){"use strict";function d(a){var b=a.split(".").map(parseFloat);this.string=a,this.major=b[0],this.minor=b[1],this.patch=b[2],Object.freeze(this)}d.prototype.toString=function(){return this.string},b.exports=d},{}],7:[function(a,b,c){"use strict";function d(a,b){b.fired[a]||(b.emit(a),b.fired[a]=!0)}function e(a){f.apply(this,arguments),this.duration=a,this.seconds=Array.apply([],new Array(a)).map(function(){return!1}),this.fired=[h.AdVideoStart,h.AdVideoFirstQuartile,h.AdVideoMidpoint,h.AdVideoThirdQuartile,h.AdVideoComplete].reduce(function(a,b){return a[b]=!1,a},{})}var f=a("events").EventEmitter,g=a("util").inherits,h=a("./enums/VPAID_EVENTS");g(e,f),e.prototype.tick=function(){function a(a){var c=f[a-1];return b.slice(0,c).every(function(a){return a===!0})}var b=this.seconds,c=this._getState(),e=Math.round(c.currentTime)-1,f=[1,2,3,4].map(function(a){return Math.floor(this.duration/4*a)},this);c.playing&&(d(h.AdVideoStart,this),e>-1&&(this.seconds[e]=!0)),a(1)&&d(h.AdVideoFirstQuartile,this),a(2)&&d(h.AdVideoMidpoint,this),a(3)&&d(h.AdVideoThirdQuartile,this),a(4)&&d(h.AdVideoComplete,this)},b.exports=e},{"./enums/VPAID_EVENTS":10,events:19,util:35}],8:[function(a,b,c){"use strict";var d=["abort","canplay","canplaythrough","durationchange","emptied","encrypted","ended","error","interruptbegin","interruptend","loadeddata","loadedmetadata","loadstart","mozaudioavailable","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting"];d.forEach(function(a){this[a.toUpperCase()]=a},d),Object.freeze(d),b.exports=d},{}],9:[function(a,b,c){var d={JAVASCRIPT:"application/javascript",FLASH:"application/x-shockwave-flash"};Object.freeze(d),b.exports=d},{}],10:[function(a,b,c){"use strict";var d=["AdLoaded","AdStarted","AdStopped","AdSkipped","AdSkippableStateChange","AdSizeChange","AdLinearChange","AdDurationChange","AdExpandedChange","AdRemainingTimeChange","AdVolumeChange","AdImpression","AdVideoStart","AdVideoFirstQuartile","AdVideoMidpoint","AdVideoThirdQuartile","AdVideoComplete","AdClickThru","AdInteraction","AdUserAcceptInvitation","AdUserMinimize","AdUserClose","AdPaused","AdPlaying","AdLog","AdError"];d.forEach(function(a){d[a]=a}),Object.freeze(d),b.exports=d},{}],11:[function(a,b,c){"use strict";var d=a("./window"),e=document.createElement("video"),f=a("./enums/MIME");c.isDesktop=!/Android|Silk|Mobile|PlayBook/.test(d.navigator.userAgent),c.canPlay=function(a){var b=d.navigator.mimeTypes,c=d.ActiveXObject;switch(a){case f.FLASH:try{return new c("ShockwaveFlash.ShockwaveFlash")?2:0}catch(a){return b&&b[f.FLASH]?2:0}return 0;case f.JAVASCRIPT:case"application/x-javascript":return 2;default:if(e.canPlayType)switch(e.canPlayType(a)){case"probably":return 2;case"maybe":return 1;default:return 0}}return 0},Object.freeze(c)},{"./enums/MIME":9,"./window":17}],12:[function(a,b,c){"use strict";function d(a,b){e.apply(this,arguments),this.swfURI=b,this.object=null}var e=a("./VPAID"),f=a("util").inherits,g=a("lie"),h=a("../uuid"),i=a("querystring"),j=a("../enums/VPAID_EVENTS"),k=a("../VPAIDVersion");f(d,e),d.prototype.load=function(a,b){var c=this,d=a[0].uri,e=a[0].bitrate;return new g(function(a,f){function g(a){c.container.removeChild(l),c.api=null,c.object=null,delete window[m],a&&f(a)}var l=document.createElement("object"),m="vast_player__"+h(20),n=i.stringify({vpaidURI:d,eventCallback:m});l.type="application/x-shockwave-flash",l.data=c.swfURI+"?"+n,l.style.display="block",l.style.width="100%",l.style.height="100%",l.style.border="none",l.style.opacity="0",l.innerHTML=['','','','','','','','',''].join("\n"),c.object=l,window[m]=function(a){switch(a.type){case j.AdClickThru:return c.emit(a.type,a.url,a.Id,a.playerHandles);case j.AdInteraction:case j.AdLog:return c.emit(a.type,a.Id);case j.AdError:return c.emit(a.type,a.message);default:return c.emit(a.type)}},c.once("VPAIDInterfaceReady",function(){var a=l.getBoundingClientRect(),d=c.vpaidVersion=new k(l.handshakeVersion("2.0"));return d.major>2?f(new Error("VPAID version "+d+" is not supported.")):(c.on("VPAIDInterfaceResize",function(){var a=l.getBoundingClientRect();c.resizeAd(a.width,a.height,"normal")}),void l.initAd(a.width,a.height,"normal",e,b,null))}),c.once(j.AdLoaded,function(){c.api=l,l.style.opacity="1",a(c)}),c.once(j.AdError,function(a){g(new Error(a))}),c.once(j.AdStopped,g),c.container.appendChild(l)})},b.exports=d},{"../VPAIDVersion":6,"../enums/VPAID_EVENTS":10,"../uuid":16,"./VPAID":15,lie:21,querystring:26,util:35}],13:[function(a,b,c){"use strict";function d(a,b,c){return a.addEventListener(b,c,!1)}function e(a,b,c){return a.removeEventListener(b,c,!1)}function f(a,b,c){return d(a,b,function d(){return e(a,b,d),c.apply(this,arguments)})}function g(a,b){function c(){return new Error("The