{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///clappr.min.js","webpack:///webpack/bootstrap fa578e0cae69c76fbadc","webpack:///./src/main.js","webpack:///./src/base/events.js","webpack:///./src/base/utils.js","webpack:///./~/css-loader/lib/css-base.js","webpack:///./src/base/styler.js","webpack:///./~/clappr-zepto/zepto.min.js","webpack:///./src/base/template.js","webpack:///./src/components/browser.js","webpack:///./src/base/base_object.js","webpack:///./src/base/playback.js","webpack:///./src/base/ui_object.js","webpack:///./src/components/mediator.js","webpack:///./~/lodash.assign/index.js","webpack:///./~/lodash.find/index.js","webpack:///./~/lodash.find/~/lodash.isarray/index.js","webpack:///./src/components/player_info.js","webpack:///./src/base/container_plugin.js","webpack:///./src/base/ui_container_plugin.js","webpack:///./src/components/media_control/public/Player-Regular.eot","webpack:///./src/base/ui_core_plugin.js","webpack:///./src/plugins/log/index.js","webpack:///./src/base/core_plugin.js","webpack:///./src/base/kibo.js","webpack:///./src/components/container/index.js","webpack:///./src/components/core/index.js","webpack:///./src/components/media_control/index.js","webpack:///./src/playbacks/flash/index.js","webpack:///./src/playbacks/hls/index.js","webpack:///./src/playbacks/html5_audio/index.js","webpack:///./src/playbacks/html5_video/index.js","webpack:///./src/playbacks/html_img/index.js","webpack:///./src/plugins/poster/index.js","webpack:///./src/components/media_control/public/Player-Regular.svg","webpack:///./src/components/media_control/public/Player-Regular.ttf","webpack:///./~/lodash.assign/~/lodash._baseassign/index.js","webpack:///./~/lodash.assign/~/lodash._baseassign/~/lodash._basecopy/index.js","webpack:///./~/lodash.assign/~/lodash._baseassign/~/lodash.keys/~/lodash._getnative/index.js","webpack:///./~/lodash.assign/~/lodash._baseassign/~/lodash.keys/~/lodash.isarguments/index.js","webpack:///./~/lodash.assign/~/lodash._createassigner/index.js","webpack:///./~/lodash.assign/~/lodash._createassigner/~/lodash._bindcallback/index.js","webpack:///./~/lodash.assign/~/lodash._createassigner/~/lodash._isiterateecall/index.js","webpack:///./~/lodash.assign/~/lodash._createassigner/~/lodash.restparam/index.js","webpack:///./~/lodash.find/~/lodash._basecallback/~/lodash._baseisequal/~/lodash.istypedarray/index.js","webpack:///./~/lodash.find/~/lodash._baseeach/index.js","webpack:///./~/lodash.find/~/lodash._basefind/index.js","webpack:///./~/lodash.find/~/lodash.findindex/index.js","webpack:///./~/lodash.find/~/lodash.findindex/~/lodash._basefindindex/index.js","webpack:///./~/lodash.once/index.js","webpack:///./~/lodash.once/~/lodash.before/index.js","webpack:///./~/lodash.result/index.js","webpack:///./~/lodash.result/~/lodash.isfunction/index.js","webpack:///./~/lodash.uniq/index.js","webpack:///./~/lodash.uniq/~/lodash._baseuniq/index.js","webpack:///./~/lodash.uniq/~/lodash._baseuniq/~/lodash._baseindexof/index.js","webpack:///./~/lodash.uniq/~/lodash._baseuniq/~/lodash._cacheindexof/index.js","webpack:///./~/lodash.uniq/~/lodash._baseuniq/~/lodash._createcache/index.js","webpack:///./~/node-libs-browser/~/process/browser.js","webpack:///./src/components/container/container.js","webpack:///./src/components/container_factory/container_factory.js","webpack:///./src/components/container_factory/index.js","webpack:///./src/components/core/core.js","webpack:///./src/components/core_factory/core_factory.js","webpack:///./src/components/core_factory/index.js","webpack:///./src/components/loader/index.js","webpack:///./src/components/loader/loader.js","webpack:///./src/components/media_control/media_control.js","webpack:///./src/components/player.js","webpack:///./src/components/seek_time/index.js","webpack:///./src/components/seek_time/seek_time.js","webpack:///./src/playbacks/flash/flash.js","webpack:///./src/playbacks/hls/flashls_events.js","webpack:///./src/playbacks/hls/hls.js","webpack:///./src/playbacks/html5_audio/html5_audio.js","webpack:///./src/playbacks/html5_video/html5_video.js","webpack:///./src/playbacks/html_img/html_img.js","webpack:///./src/playbacks/no_op/index.js","webpack:///./src/playbacks/no_op/no_op.js","webpack:///./src/plugins/chromecast/chromecast.js","webpack:///./src/plugins/chromecast/chromecast_playback.js","webpack:///./src/plugins/chromecast/index.js","webpack:///./src/plugins/click_to_pause/click_to_pause.js","webpack:///./src/plugins/click_to_pause/index.js","webpack:///./src/plugins/dvr_controls/dvr_controls.js","webpack:///./src/plugins/dvr_controls/index.js","webpack:///./src/plugins/favicon/favicon.js","webpack:///./src/plugins/favicon/index.js","webpack:///./src/plugins/google_analytics/google_analytics.js","webpack:///./src/plugins/google_analytics/index.js","webpack:///./src/plugins/log/log.js","webpack:///./src/plugins/poster/poster.js","webpack:///./src/plugins/spinner_three_bounce/index.js","webpack:///./src/plugins/spinner_three_bounce/spinner_three_bounce.js","webpack:///./src/plugins/stats/index.js","webpack:///./src/plugins/stats/stats.js","webpack:///./src/plugins/watermark/index.js","webpack:///./src/plugins/watermark/watermark.js","webpack:///./src/components/container/public/style.scss","webpack:///./src/components/core/public/style.scss","webpack:///./src/components/media_control/public/media-control.scss","webpack:///./src/components/seek_time/public/seek_time.scss","webpack:///./src/playbacks/flash/public/style.scss","webpack:///./src/playbacks/hls/public/style.scss","webpack:///./src/playbacks/html5_video/public/style.scss","webpack:///./src/playbacks/html_img/public/style.scss","webpack:///./src/playbacks/no_op/public/style.scss","webpack:///./src/plugins/chromecast/public/style.scss","webpack:///./src/plugins/dvr_controls/public/dvr_controls.scss","webpack:///./src/plugins/poster/public/poster.scss","webpack:///./src/plugins/spinner_three_bounce/public/spinner.scss","webpack:///./src/plugins/watermark/public/watermark.scss","webpack:///./src/plugins/chromecast/public/chromecast.svg","webpack:///./src/components/media_control/public/media-control.html","webpack:///./src/components/seek_time/public/seek_time.html","webpack:///./src/playbacks/flash/public/flash_playback.html","webpack:///./src/playbacks/hls/public/hls_playback.html","webpack:///./src/playbacks/html5_video/public/index.html","webpack:///./src/playbacks/no_op/public/error.html","webpack:///./src/plugins/chromecast/public/chromecast.html","webpack:///./src/plugins/dvr_controls/public/index.html","webpack:///./src/plugins/poster/public/poster.html","webpack:///./src/plugins/spinner_three_bounce/public/spinner.html","webpack:///./src/plugins/watermark/public/watermark.html","webpack:///./src/playbacks/flash/public/Player.swf","webpack:///./src/playbacks/hls/public/HLSPlayer.swf","webpack:///./src/plugins/chromecast/public/chromecast.eot","webpack:///./src/plugins/chromecast/public/chromecast.ttf","webpack:///./src/plugins/dvr_controls/public/Roboto.ttf","webpack:///./~/lodash.assign/~/lodash._baseassign/~/lodash.keys/index.js","webpack:///./~/lodash.find/~/lodash._basecallback/index.js","webpack:///./~/lodash.find/~/lodash._basecallback/~/lodash._baseisequal/index.js","webpack:///./~/lodash.find/~/lodash._basecallback/~/lodash.pairs/index.js"],"names":["root","factory","exports","module","define","amd","Clappr","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","i","Object","prototype","hasOwnProperty","_m","args","slice","fn","a","b","apply","concat","_interopRequireDefault","obj","__esModule","default","defineProperty","value","_componentsPlayer","_componentsPlayer2","_baseUtils","_baseUtils2","_baseEvents","_baseEvents2","_basePlayback","_basePlayback2","_baseContainer_plugin","_baseContainer_plugin2","_baseCore_plugin","_baseCore_plugin2","_baseUi_core_plugin","_baseUi_core_plugin2","_baseUi_container_plugin","_baseUi_container_plugin2","_baseBase_object","_baseBase_object2","_baseUi_object","_baseUi_object2","_componentsBrowser","_componentsBrowser2","_componentsContainer","_componentsContainer2","_componentsCore","_componentsCore2","_componentsMediator","_componentsMediator2","_componentsMedia_control","_componentsMedia_control2","_componentsPlayer_info","_componentsPlayer_info2","_playbacksFlash","_playbacksFlash2","_playbacksHls","_playbacksHls2","_playbacksHtml5_audio","_playbacksHtml5_audio2","_playbacksHtml5_video","_playbacksHtml5_video2","_playbacksHtml_img","_playbacksHtml_img2","_pluginsPoster","_pluginsPoster2","_pluginsLog","_pluginsLog2","version","Player","Mediator","Events","Browser","PlayerInfo","MediaControl","ContainerPlugin","UIContainerPlugin","CorePlugin","UICorePlugin","Playback","Container","Core","BaseObject","UIObject","Utils","Flash","HLS","HTML5Audio","HTML5Video","HTMLImg","Poster","Log","_classCallCheck","instance","Constructor","TypeError","_createClass","defineProperties","target","props","length","descriptor","enumerable","configurable","writable","key","protoProps","staticProps","_utils","_lodashOnce","_lodashOnce2","Array","name","callback","context","eventsApi","_events","events","push","ctx","once","self","off","arguments","_callback","on","retain","ev","names","l","j","k","keys","klass","constructor","debug","allEvents","all","triggerEvents","exception","error","listeningTo","_listeningTo","remove","_listenId","eventSplitter","action","rest","test","split","a1","a2","a3","listenMethods","listenTo","listenToOnce","forEach","method","uniqueId","PLAYER_RESIZE","PLAYER_PLAY","PLAYER_PAUSE","PLAYER_STOP","PLAYER_ENDED","PLAYER_SEEK","PLAYER_ERROR","PLAYER_TIMEUPDATE","PLAYBACK_PROGRESS","PLAYBACK_TIMEUPDATE","PLAYBACK_READY","PLAYBACK_BUFFERING","PLAYBACK_BUFFERFULL","PLAYBACK_SETTINGSUPDATE","PLAYBACK_LOADEDMETADATA","PLAYBACK_HIGHDEFINITIONUPDATE","PLAYBACK_BITRATE","PLAYBACK_PLAYBACKSTATE","PLAYBACK_DVR","PLAYBACK_MEDIACONTROL_DISABLE","PLAYBACK_MEDIACONTROL_ENABLE","PLAYBACK_ENDED","PLAYBACK_PLAY","PLAYBACK_PAUSE","PLAYBACK_ERROR","PLAYBACK_STATS_ADD","PLAYBACK_FRAGMENT_LOADED","CONTAINER_PLAYBACKSTATE","CONTAINER_PLAYBACKDVRSTATECHANGED","CONTAINER_BITRATE","CONTAINER_STATS_REPORT","CONTAINER_DESTROYED","CONTAINER_READY","CONTAINER_ERROR","CONTAINER_LOADEDMETADATA","CONTAINER_TIMEUPDATE","CONTAINER_PROGRESS","CONTAINER_PLAY","CONTAINER_STOP","CONTAINER_PAUSE","CONTAINER_ENDED","CONTAINER_CLICK","CONTAINER_DBLCLICK","CONTAINER_MOUSE_ENTER","CONTAINER_MOUSE_LEAVE","CONTAINER_SEEK","CONTAINER_VOLUME","CONTAINER_FULLSCREEN","CONTAINER_STATE_BUFFERING","CONTAINER_STATE_BUFFERFULL","CONTAINER_SETTINGSUPDATE","CONTAINER_HIGHDEFINITIONUPDATE","CONTAINER_MEDIACONTROL_DISABLE","CONTAINER_MEDIACONTROL_ENABLE","CONTAINER_STATS_ADD","MEDIACONTROL_RENDERED","MEDIACONTROL_FULLSCREEN","MEDIACONTROL_SHOW","MEDIACONTROL_HIDE","MEDIACONTROL_MOUSEMOVE_SEEKBAR","MEDIACONTROL_MOUSELEAVE_SEEKBAR","MEDIACONTROL_PLAYING","MEDIACONTROL_NOTPLAYING","MEDIACONTROL_CONTAINERCHANGED","extend","parent","properties","create","assign","formatTime","time","isFinite","parseInt","seconds","minutes","hours","days","out","trim","seekStringToSeconds","url","parts","match","factor","h","s","el","suffix","prefix","idsCounter","isNumber","parseFloat","currentScriptUrl","scripts","document","getElementsByTagName","src","source","prop","propDescriptor","getOwnPropertyDescriptor","Fullscreen","isFullscreen","webkitFullscreenElement","webkitIsFullScreen","mozFullScreen","msFullscreenElement","requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen","querySelector","webkitEnterFullScreen","cancelFullscreen","exitFullscreen","webkitCancelFullScreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen","Config","volume","parse","_defaultConfig","e","undefined","domain","hasLocalstorage","localStorage","_create_keyspace","_defaultValueFor","requestAnimationFrame","window","mozRequestAnimationFrame","webkitRequestAnimationFrame","setTimeout","bind","cancelAnimationFrame","mozCancelAnimationFrame","webkitCancelAnimationFrame","clearTimeout","list","toString","result","item","join","mediaQuery","alreadyImportedModules","_clapprZepto","_clapprZepto2","_template","_template2","Styler","getStyleFor","style","options","baseUrl","html","Zepto","D","t","String","S","L","Z","nodeType","DOCUMENT_NODE","$","F","getPrototypeOf","R","q","W","n","z","replace","toLowerCase","H","RegExp","_","I","f","u","createElement","body","appendChild","getComputedStyle","getPropertyValue","parentNode","removeChild","U","children","map","childNodes","X","selector","B","r","A","V","filter","Y","J","removeAttribute","setAttribute","G","className","baseVal","K","parseJSON","Q","N","P","o","column-count","columns","font-weight","line-height","opacity","z-index","zoom","d","g","v","y","w","x","tr","tbody","thead","tfoot","td","th","*","E","T","C","O","M","tabindex","readonly","for","class","maxlength","cellspacing","cellpadding","rowspan","colspan","usemap","frameborder","contenteditable","isArray","matches","webkitMatchesSelector","mozMatchesSelector","oMatchesSelector","matchesSelector","qsa","indexOf","toUpperCase","fragment","$1","innerHTML","each","attr","isZ","init","find","ready","shift","getElementById","getElementsByClassName","querySelectorAll","contains","documentElement","type","isFunction","isWindow","isPlainObject","isEmptyObject","inArray","camelCase","uuid","support","expr","noop","grep","JSON","reduce","sort","splice","toArray","readyState","addEventListener","get","size","every","not","add","is","has","eq","first","last","some","closest","parents","pluck","contents","contentDocument","siblings","empty","show","display","nodeName","replaceWith","before","wrap","wrapAll","cloneNode","append","wrapInner","unwrap","clone","hide","css","toggle","prev","next","text","textContent","getAttribute","removeAttr","data","val","multiple","selected","offset","offsetParent","top","left","position","getBoundingClientRect","pageXOffset","pageYOffset","width","Math","round","height","removeProperty","cssText","index","hasClass","addClass","removeClass","toggleClass","scrollTop","scrollTo","scrollX","scrollLeft","scrollY","detach","nextSibling","firstChild","insertBefore","eval","uniq","deserializeValue","zepto","_zid","ns","sel","del","relatedTarget","proxy","isImmediatePropagationStopped","_args","preventDefault","stopPropagation","removeEventListener","isDefaultPrevented","defaultPrevented","returnValue","getPreventDefault","originalEvent","focus","blur","mouseenter","mouseleave","click","mousedown","mouseup","mousemove","event","unshift","unbind","one","stopImmediatePropagation","delegate","undelegate","live","die","currentTarget","liveFired","trigger","Event","dispatchEvent","triggerHandler","createEvent","initEvent","global","active","beforeSend","success","resolveWith","rejectWith","complete","processData","param","traditional","dataType","href","location","ajaxJSONP","ajax","jsonpCallback","abort","promise","head","timeout","ajaxSettings","xhr","XMLHttpRequest","accepts","script","json","xml","crossDomain","cache","Deferred","protocol","host","Date","now","jsonp","setRequestHeader","mimeType","overrideMimeType","contentType","headers","onreadystatechange","status","getResponseHeader","responseText","responseXML","statusText","xhrFields","async","open","username","password","send","post","getJSON","load","encodeURIComponent","Callbacks","memory","stopOnFalse","disable","unique","disabled","lock","locked","fireWith","fire","fired","state","always","done","fail","then","resolve","reject","progress","notify","when","notifyWith","abs","pointerType","MSPOINTER_TYPE_TOUCH","isPrimary","MSGesture","velocityX","velocityY","touches","x2","y2","x1","pageX","y1","pageY","isDoubleTap","addPointer","pointerId","cancelTouch","exec","Number","isNaN","visible","hidden","checked","console","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","globals","settings","evaluate","interpolate","escape","noMatch","escapes","'","\\","\r","\n","\t"," "," ","escaper","htmlEntities","&","<",">","\"","entityRe","escapeExpr","string","counter","tmpl","render","matcher","variable","Function","template","setItem","removeItem","hasFlash","fo","ActiveXObject","navigator","mimeTypes","enabledPlugin","getBrowserInfo","extra","ua","userAgent","appName","appVersion","browserInfo","isSafari","isChrome","isFirefox","isLegacyIE","isIE","isIE11","isMobile","isiOs","isWin8App","isWiiU","isPS4","_inherits","subClass","superClass","setPrototypeOf","__proto__","_get","_x2","_x3","_x4","_again","object","property","receiver","desc","getter","_events2","_Events","_x","_ui_object","_ui_object2","_UIObject","$el","canPlay","_lodashResult","_lodashResult2","_lodashAssign","_lodashAssign2","_base_object","_base_object2","delegateEventSplitter","_BaseObject","cid","_ensureElement","delegateEvents","stopListening","undelegateEvents","element","eventName","setElement","attrs","opts","baseAssign","createAssigner","collection","predicate","thisArg","findIndex","baseCallback","baseFind","baseEach","isObjectLike","getNative","isNative","isLength","MAX_SAFE_INTEGER","isObject","objToString","funcTag","reIsNative","fnToString","reIsHostCtor","arrayTag","objectProto","nativeIsArray","playbackPlugins","currentSize","_players","getInstance","playerId","container","enabled","bindEvents","core","styler","Kibo","initialize","KEY_NAMES_BY_CODE",8,9,13,16,17,18,20,27,32,37,38,39,40,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,112,113,114,115,116,117,118,119,120,121,122,123,"KEY_CODES_BY_NAME","MODIFIERS","registerEvent","func","attachEvent","unregisterEvent","detachEvent","stringContains","substring","neatString","capitalize","isString","what","arrayIncludes","haystack","needle","extractModifiers","keyCombination","modifiers","extractKey","modifiersAndKey","keyName","keyCode","that","lastKeyCode","lastModifiers","keysDown","any","keysUp","downHandler","handler","upHandler","unloader","upOrDown","registeredKeys","lastModifiersAndKey","registerKeys","newKeys","unregisterKeys","down","up","lastKey","modifier","baseCopy","baseProperty","isArrayLike","getLength","isArguments","propertyIsEnumerable","assigner","restParam","sources","customizer","guard","bindCallback","isIterateeCall","argCount","identity","accumulator","other","isIndex","reIsUint","start","FUNC_ERROR_TEXT","nativeMax","otherArgs","max","isTypedArray","typedArrayTags","argsTag","boolTag","dateTag","errorTag","mapTag","numberTag","objectTag","regexpTag","setTag","stringTag","weakMapTag","arrayBufferTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","baseForOwn","iteratee","baseFor","createBaseEach","eachFunc","fromRight","iterable","toObject","createBaseFor","keysFunc","retKey","createFindIndex","array","baseFindIndex","temp","defaultValue","sortedUniq","seen","resIndex","computed","isSorted","baseUniq","baseIndexOf","isCommon","isLarge","LARGE_ARRAY_SIZE","createCache","cacheIndexOf","outer","seenIndex","fromIndex","indexOfNaN","set","hash","SetCache","values","nativeCreate","Set","cachePush","cleanUpNextTick","draining","currentQueue","queue","queueIndex","drainQueue","len","run","Item","fun","process","nextTick","title","browser","env","argv","versions","addListener","removeListener","removeAllListeners","emit","binding","Error","cwd","chdir","dir","umask","_baseStyler","_baseStyler2","_publicStyleScss","_publicStyleScss2","_lodashFind","_lodashFind2","currentTime","playback","isReady","mediaControlDisabled","plugins","data-container","dblclick","doubleTap","timeUpdated","buffering","bufferfull","settingsUpdate","loadedMetadata","highDefinitionUpdate","updateBitrate","playbackStateChanged","playbackDvrStateChanged","disableMediaControl","enableMediaControl","ended","playing","paused","dvrInUse","newBitrate","metrics","getPlaybackType","dvrEnabled","destroy","plugin","duration","animate","isPlaying","getDuration","errorObj","startPosition","endPosition","play","stop","pause","seek","getPlugin","isHighDefinitionInUse","ContainerFactory","loader","_this","createContainer","_this2","playbackPlugin","findPlaybackPlugin","defer","addContainerPlugins","_this3","containerPlugins","Plugin","addPlugin","_componentsContainer_factory","_componentsContainer_factory2","playerInfo","containers","createContainers","exit","webkitfullscreenchange","data-player","containerFactory","setupContainers","resolveOnContainersReady","setFullscreen","setPlayerSize","previousSize","resize","checkSizeCallback","reqAnimFrame","computedSize","clientWidth","clientHeight","_this4","_this5","disableResizeObserver","mediaControl","updateSize","setContainer","enable","removeContainer","appendContainer","setupMediaControl","getCurrentContainer","appendTo","parentElement","createMediaControl","focusElement","toggleFullscreen","onMediaControlShow","mediacontrol","external","hideMediaControlDelay","showing","enableResizeObserver","CoreFactory","player","addCorePlugins","corePlugins","setupExternalInterface","externalFunctions","getExternalInterface","_lodashUniq","_lodashUniq2","_playbacksNo_op","_playbacksNo_op2","_pluginsSpinner_three_bounce","_pluginsSpinner_three_bounce2","_pluginsStats","_pluginsStats2","_pluginsWatermark","_pluginsWatermark2","_pluginsGoogle_analytics","_pluginsGoogle_analytics2","_pluginsClick_to_pause","_pluginsClick_to_pause2","_pluginsChromecast","_pluginsChromecast2","_pluginsDvr_controls","_pluginsDvr_controls2","_pluginsFavicon","_pluginsFavicon2","Loader","externalPlugins","addExternalPlugins","pluginName","allPlugins","_x5","_baseKibo","_baseKibo2","_componentsSeek_time","_componentsSeek_time2","_baseTemplate","_baseTemplate2","_publicMediaControlScss","_publicMediaControlScss2","_publicMediaControlHtml","_publicMediaControlHtml2","seekTime","mute","persistConfig","initialVolume","restore","setVolume","keepVisible","volumeBarClickDown","addEventListeners","right","chromeless","stopDragHandler","stopDrag","updateDragHandler","updateDrag","data-media-control","click [data-play]","click [data-pause]","click [data-playpause]","click [data-stop]","click [data-playstop]","click [data-fullscreen]","click .bar-container[data-seekbar]","click .bar-container[data-volume]","click .drawer-icon[data-volume]","mouseenter .drawer-container[data-volume]","mouseleave .drawer-container[data-volume]","mousedown .segmented-bar-element[data-volume]","mouseleave .media-control-layer","mousemove .segmented-bar-element[data-volume]","mouseup .segmented-bar-element[data-volume]","mousedown .bar-scrubber[data-volume]","mousedown .bar-scrubber[data-seekbar]","mousemove .bar-container[data-seekbar]","mouseleave .bar-container[data-seekbar]","mouseenter .media-control-layer[data-controls]","mouseleave .media-control-layer[data-controls]","playerResize","changeTogglePlay","updateSeekBar","updateProgressBar","$playPauseToggle","$playStopToggle","seekEnabled","offsetX","$seekBarContainer","$seekBarHover","cursorStyleProperty","$volumeBarContainer","volOffset","outsideByLeft","outsideByRight","outsideHorizontally","outsideByTop","outsideByBottom","outsideVertically","mouseupOnVolumeBar","$fullscreenToggle","hideVolumeBar","draggingSeekBar","$seekBarLoaded","$seekBarPosition","$seekBarScrubber","draggingVolumeBar","pos","min","setSeekPercentage","offsetY","volumeFromUI","currentVolume","setVolumeLevel","persist","fullscreen","resetUserKeepVisible","isDvrInUse","hideVolumeId","loadedStart","loadedEnd","seekbarValue","setCurrentTime","userKeepVisible","clientX","lastMouseX","clientY","lastMouseY","hideId","delay","isVisible","hideMediaControl","$volumeContainer","$volumeIcon","ceil","currentSeekPercentage","delta","getCurrentTime","_this6","kibo","unbindKeyEvents","togglePlayPause","seekRelative","buttonsColor","buttons","seekbarColor","seekbar","_this7","createCachedElements","bindKeyEvents","parseColors","_componentsCore_factory","_componentsCore_factory2","_componentsLoader","_componentsLoader2","defaultOptions","normalizeSources","coreFactory","parentId","setParentId","attachTo","containerChanged","onPlay","onPause","onStop","onEnded","onSeek","onError","onTimeUpdate","percent","_publicSeek_timeScss","_publicSeek_timeScss2","_publicSeek_timeHtml","_publicSeek_timeHtml2","SeekTime","data-seek-time","showTime","hideTime","timePosition","pointerPosition","timestamp","formattedTime","update","_publicFlash_playbackHtml","_publicFlash_playbackHtml2","_publicPlayerSwf","_publicPlayerSwf2","MAX_ATTEMPTS","objectIE","_Playback","autoPlay","addListeners","playerPlay","currentState","firstPlay","insertAfter","metadataLoaded","_attempts","bootstrap","message","getPosition","updateTime","checkState","getState","getBytesLoaded","getBytesTotal","checkInitialSeek","seekSeconds","playerResume","playerVolume","playerPause","playerStop","seekBarValue","seekTo","playerSeek","clearInterval","bootstrapId","swfPath","playbackId","setupFirefox","setupIE","resource","resourceParts","HLSEvents","instanceId","code","loadmetrics","playmetrics","timemetrics","newState","newLevel","trackList","trackId","_flashls_events","_flashls_events2","_publicHls_playbackHtml","_publicHls_playbackHtml2","_publicHLSPlayerSwf","_publicHLSPlayerSwf2","initHlsParameters","highDefinition","defaultSettings","playbackType","data-hls","flushLiveURLCache","capLevelToStage","useHardwareVideoDecoder","maxBufferLength","seekMode","startFromLevel","startFromBitrate","hlsMinimumDvrSize","hlsLogEnabled","keyLoadMaxRetry","keyLoadMaxRetryTimeout","fragmentLoadMaxRetry","fragmentLoadMaxRetryTimeout","fragmentLoadSkipAfterMaxRetry","capLevelonFpsDrop","smoothAutoSwitchonFpsDrop","fpsDroppedMonitoringPeriod","fpsDroppedMonitoringThreshold","timeMetrics","setPlaybackState","level","levelChanged","flashPlaybackError","onFragmentLoaded","manifestLoaded","playerLoad","srcLoaded","setFlashSettings","updatePlaybackType","_shouldPlayOnBootstrap","_bootstrapAttempts","playerSetflushLiveURLCache","playerCapLeveltoStage","playerSetmaxBufferLength","playerSetUseHardwareVideoDecoder","playerSetLogInfo","playerSetSeekMode","playerSetStartFromBitrate","playerSetstartFromLevel","playerSetKeyLoadMaxRetry","playerSetKeyLoadMaxRetryTimeout","playerSetFragmentLoadMaxRetry","playerSetFragmentLoadMaxRetryTimeout","playerSetFragmentLoadSkipAfterMaxRetry","playerSetCapLevelonFPSDrop","playerSetSmoothAutoSwitchonFPSDrop","playerSetFpsDroppedMonitoringPeriod","playerSetFpsDroppedMonitoringThreshold","_setStartFromBitrate","setStartFromBitrate","currentLevel","getLevels","bitrate","getCurrentBitrate","normalizeDuration","previousDVRStatus","livePlayback","updateSettings","getCurrentLevel","getCurrentLevelIndex","playerSetCurrentLevel","levels","updateCurrentState","getType","startReportingProgress","stopReportingProgress","reportingProgress","buffered","getbufferLength","updateDvr","previousDvrInUse","dvr","PLAYBACK_STOP","callbackName","flashlsCallbacks","flashlsEvents","createCallbacks","params","loadedmetadata","stalled","waiting","timeupdate","canplaythrough","durationChange","Infinity","HAVE_FUTURE_DATA","mimetypes","wav","mp3","aac","oga","ext","canPlayType","_publicIndexHtml","_publicIndexHtml2","loop","firstBuffer","setupSafari","preload","data-html5-video","canplay","durationchange","poster","bufferedPos","end","checkBufferState","playbackPos","typeFor","useVideoTagDefaultControls","HAVE_ENOUGH_DATA","mp4","codec","ogg","3gpp","webm","mkv","m3u8","ogv","data-html-img","_publicErrorHtml","_publicErrorHtml2","NoOp","data-no-op","idata","createImageData","canvas","buffer32","Uint32Array","buffer","err","color","random","pow","putImageData","noise","getContext","_chromecast_playback","_chromecast_playback2","DEVICE_STATE","IDLE","ACTIVE","WARNING","ERROR","DEFAULT_CLAPPR_APP_ID","Chromecast","_UICorePlugin","enableChromecast","chromecastAppId","appId","deviceState","embedScript","containerTimeUpdate","containerPlay","sessionStopped","chrome","cast","isAvailable","bootstrapCastApi","onload","initializeCastApi","__onGCastApiAvailable","errorInfo","warn","autoJoinPolicy","AutoJoinPolicy","ORIGIN_SCOPED","sessionRequest","SessionRequest","apiConfig","ApiConfig","session","sessionListener","receiverListener","sessionId","newSession","SessionStatus","STOPPED","ReceiverAvailability","AVAILABLE","connectAnimInterval","resetKeepVisible","how","mediaSession","originalPlayback","currentMedia","playbackProxy","originalPlaybackPlaying","addUpdateListener","sessionUpdateListener","playerState","mediaInfo","media","MediaInfo","request","LoadRequest","autoplay","loadMedia","loadMediaSuccess","loadMediaError","requestSession","launchSuccess","launchError","setInterval","setKeepVisible","playerStatus","_publicChromecastHtml","_publicChromecastHtml2","TICK_INTERVAL","ChromecastPlayback","onMediaStatusUpdate","stopTimer","SeekRequest","startTimer","log","timer","updateMediaControl","isBuffering","getEstimatedTime","ClickToPausePlugin","_ContainerPlugin","isDvrEnabled","_publicDvr_controlsScss","_publicDvr_controlsScss2","DVRControls","click .live-button","data-dvr-controls","dvrChanged","shouldRender","useDvrControls","$duration","Favicon","_CorePlugin","oldIcon","changeFavicon","setPlayIcon","setPauseIcon","resetIcon","charCode","fillStyle","font","fillText","fromCharCode","icon","toDataURL","playIcon","createIcon","changeIcon","pauseIcon","currentIcon","GoogleAnalytics","gaAccount","account","trackerName","gaTrackerName","domainName","gaDomainName","currentHDState","_gat","onBuffering","onBufferFull","onPlaybackChanged","onVolumeChanged","CONTAINER_FULL_SCREEN","onFullscreen","onHD","onDVR","_gaq","res","BOLD","INFO","DEBUG","WARN","LEVEL_DEBUG","LEVEL_INFO","LEVEL_WARN","LEVEL_ERROR","LEVEL_DISABLED","COLORS","DESCRIPTIONS","offLevel","onOff","BLACKLIST","previousLevel","klassDescription","_instance","setLevel","info","_publicPosterScss","_publicPosterScss2","_publicPosterHtml","_publicPosterHtml2","PosterPlugin","_UIContainerPlugin","bufferFull","data-poster","onBufferfull","hidePlayButton","showPlayButton","$playButton","fontSize","$playWrapper","marginTop","imgEl","background-image","prepend","cursor","_publicSpinnerHtml","_publicSpinnerHtml2","_publicSpinnerScss","_publicSpinnerScss2","SpinnerThreeBouncePlugin","data-spinner","showTimeout","StatsPlugin","setInitialAttrs","reportInterval","onStatsAdd","startupTime","rebufferingTime","watchingTime","rebuffers","externalMetrics","watchingTimeInit","intervalId","report","startupTimeInit","rebufferingTimeInit","getRebufferingTime","totalTime","metric","isRebuffering","getWatchingTime","statsReport","getStats","_publicWatermarkScss","_publicWatermarkScss2","_publicWatermarkHtml","_publicWatermarkHtml2","WaterMarkPlugin","watermark","imageUrl","templateOptions","__webpack_module_template_argument_0__","__webpack_module_template_argument_1__","__webpack_module_template_argument_2__","shimKeys","keysIn","propsLength","allowIndexes","Ctor","isProto","skipIndexes","nativeKeys","__webpack_module_template_argument_3__","baseToString","baseMatches","baseMatchesProperty","baseGet","path","pathKey","baseIsMatch","matchData","noCustomizer","objValue","srcValue","baseIsEqual","getMatchData","isArr","isKey","isStrictComparable","toPath","baseSlice","basePropertyDeep","pairs","reIsPlainProp","reIsDeepProp","rePropName","number","quote","reEscapeChar","arraySome","isLoose","stackA","stackB","baseIsEqualDeep","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","equalByTag","objIsWrapped","othIsWrapped","equalArrays","equalObjects","pop","arrLength","othLength","arrValue","othValue","tag","objProps","objLength","othProps","skipCtor","objCtor","othCtor"],"mappings":"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","file":"clappr.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Clappr\"] = factory();\n\telse\n\t\troot[\"Clappr\"] = factory();\n})(this, function() {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Clappr\"] = factory();\n\telse\n\t\troot[\"Clappr\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"<%=baseUrl%>/\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ((function(modules) {\n\t// Check all modules for deduplicated modules\n\tfor(var i in modules) {\n\t\tif(Object.prototype.hasOwnProperty.call(modules, i)) {\n\t\t\tswitch(typeof modules[i]) {\n\t\t\tcase \"function\": break;\n\t\t\tcase \"object\":\n\t\t\t\t// Module can be created from a template\n\t\t\t\tmodules[i] = (function(_m) {\n\t\t\t\t\tvar args = _m.slice(1), fn = modules[_m[0]];\n\t\t\t\t\treturn function (a,b,c) {\n\t\t\t\t\t\tfn.apply(this, [a,b,c].concat(args));\n\t\t\t\t\t};\n\t\t\t\t}(modules[i]));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\t// Module is a copy of another module\n\t\t\t\tmodules[i] = modules[modules[i]];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn modules;\n}([\n/* 0 */\n/*!*********************!*\\\n !*** ./src/main.js ***!\n \\*********************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tvar _componentsPlayer = __webpack_require__(/*! components/player */ 95);\n\t\n\tvar _componentsPlayer2 = _interopRequireDefault(_componentsPlayer);\n\t\n\tvar _baseUtils = __webpack_require__(/*! base/utils */ 2);\n\t\n\tvar _baseUtils2 = _interopRequireDefault(_baseUtils);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseContainer_plugin = __webpack_require__(/*! base/container_plugin */ 17);\n\t\n\tvar _baseContainer_plugin2 = _interopRequireDefault(_baseContainer_plugin);\n\t\n\tvar _baseCore_plugin = __webpack_require__(/*! base/core_plugin */ 23);\n\t\n\tvar _baseCore_plugin2 = _interopRequireDefault(_baseCore_plugin);\n\t\n\tvar _baseUi_core_plugin = __webpack_require__(/*! base/ui_core_plugin */ 20);\n\t\n\tvar _baseUi_core_plugin2 = _interopRequireDefault(_baseUi_core_plugin);\n\t\n\tvar _baseUi_container_plugin = __webpack_require__(/*! base/ui_container_plugin */ 18);\n\t\n\tvar _baseUi_container_plugin2 = _interopRequireDefault(_baseUi_container_plugin);\n\t\n\tvar _baseBase_object = __webpack_require__(/*! base/base_object */ 8);\n\t\n\tvar _baseBase_object2 = _interopRequireDefault(_baseBase_object);\n\t\n\tvar _baseUi_object = __webpack_require__(/*! base/ui_object */ 10);\n\t\n\tvar _baseUi_object2 = _interopRequireDefault(_baseUi_object);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar _componentsContainer = __webpack_require__(/*! components/container */ 25);\n\t\n\tvar _componentsContainer2 = _interopRequireDefault(_componentsContainer);\n\t\n\tvar _componentsCore = __webpack_require__(/*! components/core */ 26);\n\t\n\tvar _componentsCore2 = _interopRequireDefault(_componentsCore);\n\t\n\tvar _componentsMediator = __webpack_require__(/*! components/mediator */ 11);\n\t\n\tvar _componentsMediator2 = _interopRequireDefault(_componentsMediator);\n\t\n\tvar _componentsMedia_control = __webpack_require__(/*! components/media_control */ 27);\n\t\n\tvar _componentsMedia_control2 = _interopRequireDefault(_componentsMedia_control);\n\t\n\tvar _componentsPlayer_info = __webpack_require__(/*! components/player_info */ 15);\n\t\n\tvar _componentsPlayer_info2 = _interopRequireDefault(_componentsPlayer_info);\n\t\n\tvar _playbacksFlash = __webpack_require__(/*! playbacks/flash */ 28);\n\t\n\tvar _playbacksFlash2 = _interopRequireDefault(_playbacksFlash);\n\t\n\tvar _playbacksHls = __webpack_require__(/*! playbacks/hls */ 29);\n\t\n\tvar _playbacksHls2 = _interopRequireDefault(_playbacksHls);\n\t\n\tvar _playbacksHtml5_audio = __webpack_require__(/*! playbacks/html5_audio */ 30);\n\t\n\tvar _playbacksHtml5_audio2 = _interopRequireDefault(_playbacksHtml5_audio);\n\t\n\tvar _playbacksHtml5_video = __webpack_require__(/*! playbacks/html5_video */ 31);\n\t\n\tvar _playbacksHtml5_video2 = _interopRequireDefault(_playbacksHtml5_video);\n\t\n\tvar _playbacksHtml_img = __webpack_require__(/*! playbacks/html_img */ 32);\n\t\n\tvar _playbacksHtml_img2 = _interopRequireDefault(_playbacksHtml_img);\n\t\n\tvar _pluginsPoster = __webpack_require__(/*! plugins/poster */ 33);\n\t\n\tvar _pluginsPoster2 = _interopRequireDefault(_pluginsPoster);\n\t\n\tvar _pluginsLog = __webpack_require__(/*! plugins/log */ 21);\n\t\n\tvar _pluginsLog2 = _interopRequireDefault(_pluginsLog);\n\t\n\tvar version = (\"0.2.11\");\n\t\n\texports['default'] = {\n\t Player: _componentsPlayer2['default'],\n\t Mediator: _componentsMediator2['default'],\n\t Events: _baseEvents2['default'],\n\t Browser: _componentsBrowser2['default'],\n\t PlayerInfo: _componentsPlayer_info2['default'],\n\t MediaControl: _componentsMedia_control2['default'],\n\t ContainerPlugin: _baseContainer_plugin2['default'],\n\t UIContainerPlugin: _baseUi_container_plugin2['default'],\n\t CorePlugin: _baseCore_plugin2['default'],\n\t UICorePlugin: _baseUi_core_plugin2['default'],\n\t Playback: _basePlayback2['default'],\n\t Container: _componentsContainer2['default'],\n\t Core: _componentsCore2['default'],\n\t BaseObject: _baseBase_object2['default'],\n\t UIObject: _baseUi_object2['default'],\n\t Utils: _baseUtils2['default'],\n\t Flash: _playbacksFlash2['default'],\n\t HLS: _playbacksHls2['default'],\n\t HTML5Audio: _playbacksHtml5_audio2['default'],\n\t HTML5Video: _playbacksHtml5_video2['default'],\n\t HTMLImg: _playbacksHtml_img2['default'],\n\t Poster: _pluginsPoster2['default'],\n\t Log: _pluginsLog2['default'],\n\t version: version\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 1 */\n/*!****************************!*\\\n !*** ./src/base/events.js ***!\n \\****************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar _pluginsLog = __webpack_require__(/*! plugins/log */ 21);\n\t\n\tvar _pluginsLog2 = _interopRequireDefault(_pluginsLog);\n\t\n\tvar _utils = __webpack_require__(/*! ./utils */ 2);\n\t\n\tvar _lodashOnce = __webpack_require__(/*! lodash.once */ 63);\n\t\n\tvar _lodashOnce2 = _interopRequireDefault(_lodashOnce);\n\t\n\tvar slice = Array.prototype.slice;\n\t\n\t/**\n\t * @class Events\n\t * @constructor\n\t * @module base\n\t */\n\t\n\tvar Events = (function () {\n\t function Events() {\n\t _classCallCheck(this, Events);\n\t }\n\t\n\t _createClass(Events, [{\n\t key: 'on',\n\t\n\t /**\n\t * listen to an event indefinitely, if you want to stop you need to call `off`\n\t * @method on\n\t * @param {String} name\n\t * @param {Function} callback\n\t * @param {Object} context\n\t */\n\t value: function on(name, callback, context) {\n\t if (!eventsApi(this, 'on', name, [callback, context]) || !callback) return this;\n\t this._events || (this._events = {});\n\t var events = this._events[name] || (this._events[name] = []);\n\t events.push({ callback: callback, context: context, ctx: context || this });\n\t return this;\n\t }\n\t\n\t /**\n\t * listen to an event only once\n\t * @method once\n\t * @param {String} name\n\t * @param {Function} callback\n\t * @param {Object} context\n\t */\n\t }, {\n\t key: 'once',\n\t value: function once(name, callback, context) {\n\t if (!eventsApi(this, 'once', name, [callback, context]) || !callback) return this;\n\t var self = this;\n\t var once = (0, _lodashOnce2['default'])(function () {\n\t self.off(name, once);\n\t callback.apply(this, arguments);\n\t });\n\t once._callback = callback;\n\t return this.on(name, once, context);\n\t }\n\t\n\t /**\n\t * stop listening to an event\n\t * @method off\n\t * @param {String} name\n\t * @param {Function} callback\n\t * @param {Object} context\n\t */\n\t }, {\n\t key: 'off',\n\t value: function off(name, callback, context) {\n\t var retain, ev, events, names, i, l, j, k;\n\t if (!this._events || !eventsApi(this, 'off', name, [callback, context])) return this;\n\t if (!name && !callback && !context) {\n\t this._events = void 0;\n\t return this;\n\t }\n\t names = name ? [name] : Object.keys(this._events);\n\t for (i = 0, l = names.length; i < l; i++) {\n\t name = names[i];\n\t events = this._events[name];\n\t if (events) {\n\t this._events[name] = retain = [];\n\t if (callback || context) {\n\t for (j = 0, k = events.length; j < k; j++) {\n\t ev = events[j];\n\t if (callback && callback !== ev.callback && callback !== ev.callback._callback || context && context !== ev.context) {\n\t retain.push(ev);\n\t }\n\t }\n\t }\n\t if (!retain.length) delete this._events[name];\n\t }\n\t }\n\t return this;\n\t }\n\t\n\t /**\n\t * triggers an event given its `name`\n\t * @method trigger\n\t * @param {String} name\n\t */\n\t }, {\n\t key: 'trigger',\n\t value: function trigger(name) {\n\t try {\n\t var klass = this.name || this.constructor.name;\n\t _pluginsLog2['default'].debug.apply(_pluginsLog2['default'], [klass].concat(Array.prototype.slice.call(arguments)));\n\t if (!this._events) return this;\n\t var args = slice.call(arguments, 1);\n\t if (!eventsApi(this, 'trigger', name, args)) return this;\n\t var events = this._events[name];\n\t var allEvents = this._events.all;\n\t if (events) triggerEvents(events, args);\n\t if (allEvents) triggerEvents(allEvents, arguments);\n\t } catch (exception) {\n\t _pluginsLog2['default'].error.apply(_pluginsLog2['default'], [klass, 'error on event', name, 'trigger', '-', exception]);\n\t }\n\t return this;\n\t }\n\t\n\t /**\n\t * stop listening an event for a given object\n\t * @method stopListening\n\t * @param {Object} obj\n\t * @param {String} name\n\t * @param {Function} callback\n\t */\n\t }, {\n\t key: 'stopListening',\n\t value: function stopListening(obj, name, callback) {\n\t var listeningTo = this._listeningTo;\n\t if (!listeningTo) return this;\n\t var remove = !name && !callback;\n\t if (!callback && typeof name === 'object') callback = this;\n\t if (obj) (listeningTo = {})[obj._listenId] = obj;\n\t for (var id in listeningTo) {\n\t obj = listeningTo[id];\n\t obj.off(name, callback, this);\n\t if (remove || Object.keys(obj._events).length === 0) delete this._listeningTo[id];\n\t }\n\t return this;\n\t }\n\t }]);\n\t\n\t return Events;\n\t})();\n\t\n\texports['default'] = Events;\n\t\n\tvar eventSplitter = /\\s+/;\n\t\n\tvar eventsApi = function eventsApi(obj, action, name, rest) {\n\t if (!name) return true;\n\t\n\t // Handle event maps.\n\t if (typeof name === 'object') {\n\t for (var key in name) {\n\t obj[action].apply(obj, [key, name[key]].concat(rest));\n\t }\n\t return false;\n\t }\n\t\n\t // Handle space separated event names.\n\t if (eventSplitter.test(name)) {\n\t var names = name.split(eventSplitter);\n\t for (var i = 0, l = names.length; i < l; i++) {\n\t obj[action].apply(obj, [names[i]].concat(rest));\n\t }\n\t return false;\n\t }\n\t\n\t return true;\n\t};\n\t\n\tvar triggerEvents = function triggerEvents(events, args) {\n\t var ev,\n\t i = -1,\n\t l = events.length,\n\t a1 = args[0],\n\t a2 = args[1],\n\t a3 = args[2];\n\t switch (args.length) {\n\t case 0:\n\t while (++i < l) (ev = events[i]).callback.call(ev.ctx);return;\n\t case 1:\n\t while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1);return;\n\t case 2:\n\t while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2);return;\n\t case 3:\n\t while (++i < l) (ev = events[i]).callback.call(ev.ctx, a1, a2, a3);return;\n\t default:\n\t while (++i < l) (ev = events[i]).callback.apply(ev.ctx, args);return;\n\t }\n\t};\n\t\n\t/**\n\t * listen to an event indefinitely for a given `obj`\n\t * @method listenTo\n\t * @param {Object} obj\n\t * @param {String} name\n\t * @param {Function} callback\n\t * @param {Object} context\n\t * @example\n\t * ```javascript\n\t * this.listenTo(this.core.playback, Events.PLAYBACK_PAUSE, this.callback)\n\t * ```\n\t */\n\t/**\n\t * listen to an event once for a given `obj`\n\t * @method listenToOnce\n\t * @param {Object} obj\n\t * @param {String} name\n\t * @param {Function} callback\n\t * @param {Object} context\n\t * @example\n\t * ```javascript\n\t * this.listenToOnce(this.core.playback, Events.PLAYBACK_PAUSE, this.callback)\n\t * ```\n\t */\n\tvar listenMethods = { listenTo: 'on', listenToOnce: 'once' };\n\t\n\tObject.keys(listenMethods).forEach(function (method) {\n\t Events.prototype[method] = function (obj, name, callback) {\n\t var listeningTo = this._listeningTo || (this._listeningTo = {});\n\t var id = obj._listenId || (obj._listenId = (0, _utils.uniqueId)('l'));\n\t listeningTo[id] = obj;\n\t if (!callback && typeof name === 'object') callback = this;\n\t obj[listenMethods[method]](name, callback, this);\n\t return this;\n\t };\n\t});\n\t\n\t// PLAYER EVENTS\n\t/**\n\t * Fired when player risezes\n\t *\n\t * @event PLAYER_RESIZE\n\t * @param {Object} currentSize an object with the current size\n\t */\n\tEvents.PLAYER_RESIZE = 'resize';\n\t/**\n\t * Fired when player starts to play\n\t *\n\t * @event PLAYER_PLAY\n\t */\n\tEvents.PLAYER_PLAY = 'play';\n\t/**\n\t * Fired when player pauses\n\t *\n\t * @event PLAYER_PAUSE\n\t */\n\tEvents.PLAYER_PAUSE = 'pause';\n\t/**\n\t * Fired when player stops\n\t *\n\t * @event PLAYER_STOP\n\t */\n\tEvents.PLAYER_STOP = 'stop';\n\t/**\n\t * Fired when player ends the video\n\t *\n\t * @event PLAYER_ENDED\n\t */\n\tEvents.PLAYER_ENDED = 'ended';\n\t/**\n\t * Fired when player ends the video\n\t *\n\t * @event PLAYER_SEEK\n\t * @param {Number} percent a percentagem of seek\n\t */\n\tEvents.PLAYER_SEEK = 'seek';\n\t/**\n\t * Fired when player receives an error\n\t *\n\t * @event PLAYER_ERROR\n\t * @param {Object} error the error\n\t */\n\tEvents.PLAYER_ERROR = 'error';\n\t/**\n\t * Fired when player updates its execution\n\t *\n\t * @event PLAYER_ERROR\n\t * @param {Number} postion the current position (in seconds)\n\t * @param {Number} duration the total duration (in seconds)\n\t */\n\tEvents.PLAYER_TIMEUPDATE = 'timeupdate';\n\t\n\t// Playback Events\n\tEvents.PLAYBACK_PROGRESS = 'playback:progress';\n\tEvents.PLAYBACK_TIMEUPDATE = 'playback:timeupdate';\n\tEvents.PLAYBACK_READY = 'playback:ready';\n\tEvents.PLAYBACK_BUFFERING = 'playback:buffering';\n\tEvents.PLAYBACK_BUFFERFULL = 'playback:bufferfull';\n\tEvents.PLAYBACK_SETTINGSUPDATE = 'playback:settingsupdate';\n\tEvents.PLAYBACK_LOADEDMETADATA = 'playback:loadedmetadata';\n\tEvents.PLAYBACK_HIGHDEFINITIONUPDATE = 'playback:highdefinitionupdate';\n\tEvents.PLAYBACK_BITRATE = 'playback:bitrate';\n\tEvents.PLAYBACK_PLAYBACKSTATE = 'playback:playbackstate';\n\tEvents.PLAYBACK_DVR = 'playback:dvr';\n\tEvents.PLAYBACK_MEDIACONTROL_DISABLE = 'playback:mediacontrol:disable';\n\tEvents.PLAYBACK_MEDIACONTROL_ENABLE = 'playback:mediacontrol:enable';\n\tEvents.PLAYBACK_ENDED = 'playback:ended';\n\tEvents.PLAYBACK_PLAY = 'playback:play';\n\tEvents.PLAYBACK_PAUSE = 'playback:pause';\n\tEvents.PLAYBACK_ERROR = 'playback:error';\n\tEvents.PLAYBACK_STATS_ADD = 'playback:stats:add';\n\tEvents.PLAYBACK_FRAGMENT_LOADED = 'playback:fragment:loaded';\n\t\n\t// Container Events\n\tEvents.CONTAINER_PLAYBACKSTATE = 'container:playbackstate';\n\tEvents.CONTAINER_PLAYBACKDVRSTATECHANGED = 'container:dvr';\n\tEvents.CONTAINER_BITRATE = 'container:bitrate';\n\tEvents.CONTAINER_STATS_REPORT = 'container:stats:report';\n\tEvents.CONTAINER_DESTROYED = 'container:destroyed';\n\tEvents.CONTAINER_READY = 'container:ready';\n\tEvents.CONTAINER_ERROR = 'container:error';\n\tEvents.CONTAINER_LOADEDMETADATA = 'container:loadedmetadata';\n\tEvents.CONTAINER_TIMEUPDATE = 'container:timeupdate';\n\tEvents.CONTAINER_PROGRESS = 'container:progress';\n\tEvents.CONTAINER_PLAY = 'container:play';\n\tEvents.CONTAINER_STOP = 'container:stop';\n\tEvents.CONTAINER_PAUSE = 'container:pause';\n\tEvents.CONTAINER_ENDED = 'container:ended';\n\tEvents.CONTAINER_CLICK = 'container:click';\n\tEvents.CONTAINER_DBLCLICK = 'container:dblclick';\n\tEvents.CONTAINER_MOUSE_ENTER = 'container:mouseenter';\n\tEvents.CONTAINER_MOUSE_LEAVE = 'container:mouseleave';\n\tEvents.CONTAINER_SEEK = 'container:seek';\n\tEvents.CONTAINER_VOLUME = 'container:volume';\n\tEvents.CONTAINER_FULLSCREEN = 'container:fullscreen';\n\tEvents.CONTAINER_STATE_BUFFERING = 'container:state:buffering';\n\tEvents.CONTAINER_STATE_BUFFERFULL = 'container:state:bufferfull';\n\tEvents.CONTAINER_SETTINGSUPDATE = 'container:settingsupdate';\n\tEvents.CONTAINER_HIGHDEFINITIONUPDATE = 'container:highdefinitionupdate';\n\tEvents.CONTAINER_MEDIACONTROL_DISABLE = 'container:mediacontrol:disable';\n\tEvents.CONTAINER_MEDIACONTROL_ENABLE = 'container:mediacontrol:enable';\n\tEvents.CONTAINER_STATS_ADD = 'container:stats:add';\n\t\n\t// MediaControl Events\n\tEvents.MEDIACONTROL_RENDERED = 'mediacontrol:rendered';\n\tEvents.MEDIACONTROL_FULLSCREEN = 'mediacontrol:fullscreen';\n\tEvents.MEDIACONTROL_SHOW = 'mediacontrol:show';\n\tEvents.MEDIACONTROL_HIDE = 'mediacontrol:hide';\n\tEvents.MEDIACONTROL_MOUSEMOVE_SEEKBAR = 'mediacontrol:mousemove:seekbar';\n\tEvents.MEDIACONTROL_MOUSELEAVE_SEEKBAR = 'mediacontrol:mouseleave:seekbar';\n\tEvents.MEDIACONTROL_PLAYING = 'mediacontrol:playing';\n\tEvents.MEDIACONTROL_NOTPLAYING = 'mediacontrol:notplaying';\n\tEvents.MEDIACONTROL_CONTAINERCHANGED = 'mediacontrol:containerchanged';\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 2 */\n/*!***************************!*\\\n !*** ./src/base/utils.js ***!\n \\***************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t\"use strict\";\n\t\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\texports.extend = extend;\n\texports.formatTime = formatTime;\n\texports.seekStringToSeconds = seekStringToSeconds;\n\texports.uniqueId = uniqueId;\n\texports.isNumber = isNumber;\n\texports.currentScriptUrl = currentScriptUrl;\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar assign = function assign(obj, source) {\n\t if (source) {\n\t for (var prop in source) {\n\t var propDescriptor = Object.getOwnPropertyDescriptor(source, prop);\n\t if (propDescriptor) {\n\t Object.defineProperty(obj, prop, propDescriptor);\n\t } else {\n\t obj[prop] = source[prop];\n\t }\n\t }\n\t }\n\t return obj;\n\t};\n\t\n\tfunction extend(parent, properties) {\n\t var constructor = function constructor() {\n\t parent.prototype.constructor.apply(this, arguments);\n\t if (properties.constructor) {\n\t properties.constructor.apply(this, arguments);\n\t }\n\t };\n\t constructor.prototype = Object.create(parent.prototype);\n\t assign(constructor.prototype, properties);\n\t return constructor;\n\t}\n\t\n\tfunction formatTime(time) {\n\t if (!isFinite(time)) {\n\t return \"--:--\";\n\t }\n\t time = time * 1000;\n\t time = parseInt(time / 1000);\n\t var seconds = time % 60;\n\t time = parseInt(time / 60);\n\t var minutes = time % 60;\n\t time = parseInt(time / 60);\n\t var hours = time % 24;\n\t var days = parseInt(time / 24);\n\t var out = \"\";\n\t if (days && days > 0) {\n\t out += days + \":\";\n\t if (hours < 1) out += \"00:\";\n\t }\n\t if (hours && hours > 0) out += (\"0\" + hours).slice(-2) + \":\";\n\t out += (\"0\" + minutes).slice(-2) + \":\";\n\t out += (\"0\" + seconds).slice(-2);\n\t return out.trim();\n\t}\n\t\n\tvar Fullscreen = {\n\t isFullscreen: function isFullscreen() {\n\t return document.webkitFullscreenElement || document.webkitIsFullScreen || document.mozFullScreen || !!document.msFullscreenElement;\n\t },\n\t requestFullscreen: function requestFullscreen(el) {\n\t if (el.requestFullscreen) {\n\t el.requestFullscreen();\n\t } else if (el.webkitRequestFullscreen) {\n\t el.webkitRequestFullscreen();\n\t } else if (el.mozRequestFullScreen) {\n\t el.mozRequestFullScreen();\n\t } else if (el.msRequestFullscreen) {\n\t el.msRequestFullscreen();\n\t } else if (el.querySelector && el.querySelector(\"video\") && el.querySelector(\"video\").webkitEnterFullScreen) {\n\t el.querySelector(\"video\").webkitEnterFullScreen();\n\t }\n\t },\n\t cancelFullscreen: function cancelFullscreen() {\n\t if (document.exitFullscreen) {\n\t document.exitFullscreen();\n\t } else if (document.webkitCancelFullScreen) {\n\t document.webkitCancelFullScreen();\n\t } else if (document.webkitExitFullscreen) {\n\t document.webkitExitFullscreen();\n\t } else if (document.mozCancelFullScreen) {\n\t document.mozCancelFullScreen();\n\t } else if (document.msExitFullscreen) {\n\t document.msExitFullscreen();\n\t }\n\t }\n\t};\n\t\n\texports.Fullscreen = Fullscreen;\n\t\n\tvar Config = (function () {\n\t function Config() {\n\t _classCallCheck(this, Config);\n\t }\n\t\n\t _createClass(Config, null, [{\n\t key: \"_defaultConfig\",\n\t value: function _defaultConfig() {\n\t return {\n\t volume: {\n\t value: 100,\n\t parse: parseInt\n\t }\n\t };\n\t }\n\t }, {\n\t key: \"_defaultValueFor\",\n\t value: function _defaultValueFor(key) {\n\t try {\n\t return this._defaultConfig()[key]['parse'](this._defaultConfig()[key]['value']);\n\t } catch (e) {\n\t return undefined;\n\t }\n\t }\n\t }, {\n\t key: \"_create_keyspace\",\n\t value: function _create_keyspace(key) {\n\t return 'clappr.' + document.domain + '.' + key;\n\t }\n\t }, {\n\t key: \"restore\",\n\t value: function restore(key) {\n\t if (_componentsBrowser2[\"default\"].hasLocalstorage && localStorage[this._create_keyspace(key)]) {\n\t return this._defaultConfig()[key]['parse'](localStorage[this._create_keyspace(key)]);\n\t }\n\t return this._defaultValueFor(key);\n\t }\n\t }, {\n\t key: \"persist\",\n\t value: function persist(key, value) {\n\t if (_componentsBrowser2[\"default\"].hasLocalstorage) {\n\t try {\n\t localStorage[this._create_keyspace(key)] = value;\n\t return true;\n\t } catch (e) {\n\t return false;\n\t }\n\t }\n\t }\n\t }]);\n\t\n\t return Config;\n\t})();\n\t\n\texports.Config = Config;\n\t\n\tfunction seekStringToSeconds(url) {\n\t var parts = url.match(/t=([0-9]*)(&|\\/|$)/);\n\t if (parts && parts.length > 0) {\n\t return parseInt(parts[1], 10);\n\t } else {\n\t var seconds = 0;\n\t var factor = { 'h': 3600, 'm': 60, 's': 1 };\n\t parts = url.match(/[0-9]+[hms]+/g) || [];\n\t parts.forEach(function (el) {\n\t if (el) {\n\t var suffix = el[el.length - 1];\n\t var time = parseInt(el.slice(0, el.length - 1), 10);\n\t seconds += time * factor[suffix];\n\t }\n\t });\n\t return seconds;\n\t }\n\t}\n\t\n\tvar idsCounter = {};\n\t\n\tfunction uniqueId(prefix) {\n\t idsCounter[prefix] || (idsCounter[prefix] = 0);\n\t var id = ++idsCounter[prefix];\n\t return prefix + id;\n\t}\n\t\n\tfunction isNumber(value) {\n\t return value - parseFloat(value) + 1 >= 0;\n\t}\n\t\n\tfunction currentScriptUrl() {\n\t var scripts = document.getElementsByTagName('script');\n\t return scripts[scripts.length - 1].src;\n\t}\n\t\n\tvar requestAnimationFrame = (window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) {\n\t window.setTimeout(fn, 1000 / 60);\n\t}).bind(window);\n\t\n\texports.requestAnimationFrame = requestAnimationFrame;\n\tvar cancelAnimationFrame = (window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout).bind(window);\n\t\n\texports.cancelAnimationFrame = cancelAnimationFrame;\n\texports[\"default\"] = {\n\t Config: Config,\n\t Fullscreen: Fullscreen,\n\t extend: extend,\n\t formatTime: formatTime,\n\t seekStringToSeconds: seekStringToSeconds,\n\t uniqueId: uniqueId,\n\t currentScriptUrl: currentScriptUrl,\n\t isNumber: isNumber,\n\t requestAnimationFrame: requestAnimationFrame,\n\t cancelAnimationFrame: cancelAnimationFrame\n\t};\n\n/***/ },\n/* 3 */\n/*!**************************************!*\\\n !*** ./~/css-loader/lib/css-base.js ***!\n \\**************************************/\n/***/ function(module, exports) {\n\n\t/*\r\n\t\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\t\tAuthor Tobias Koppers @sokra\r\n\t*/\n\t// css base code, injected by the css-loader\n\t\"use strict\";\n\t\n\tmodule.exports = function () {\n\t\tvar list = [];\n\t\n\t\t// return the list of modules as css string\n\t\tlist.toString = function toString() {\n\t\t\tvar result = [];\n\t\t\tfor (var i = 0; i < this.length; i++) {\n\t\t\t\tvar item = this[i];\n\t\t\t\tif (item[2]) {\n\t\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t\t} else {\n\t\t\t\t\tresult.push(item[1]);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn result.join(\"\");\n\t\t};\n\t\n\t\t// import a list of modules into the list\n\t\tlist.i = function (modules, mediaQuery) {\n\t\t\tif (typeof modules === \"string\") modules = [[null, modules, \"\"]];\n\t\t\tvar alreadyImportedModules = {};\n\t\t\tfor (var i = 0; i < this.length; i++) {\n\t\t\t\tvar id = this[i][0];\n\t\t\t\tif (typeof id === \"number\") alreadyImportedModules[id] = true;\n\t\t\t}\n\t\t\tfor (i = 0; i < modules.length; i++) {\n\t\t\t\tvar item = modules[i];\n\t\t\t\t// skip already imported module\n\t\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\t\tif (typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\t\tif (mediaQuery && !item[2]) {\n\t\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t\t} else if (mediaQuery) {\n\t\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t\t}\n\t\t\t\t\tlist.push(item);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\treturn list;\n\t};\n\n/***/ },\n/* 4 */\n/*!****************************!*\\\n !*** ./src/base/styler.js ***!\n \\****************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar _template = __webpack_require__(/*! ./template */ 6);\n\t\n\tvar _template2 = _interopRequireDefault(_template);\n\t\n\tvar Styler = {\n\t getStyleFor: function getStyleFor(style) {\n\t var options = arguments.length <= 1 || arguments[1] === undefined ? { baseUrl: '' } : arguments[1];\n\t\n\t return (0, _clapprZepto2['default'])('').html((0, _template2['default'])(style.toString())(options));\n\t }\n\t};\n\t\n\texports['default'] = Styler;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 5 */\n/*!*************************************!*\\\n !*** ./~/clappr-zepto/zepto.min.js ***!\n \\*************************************/\n/***/ function(module, exports) {\n\n\t/* Zepto v1.1.4-80-ga9184b2 - zepto event ajax callbacks deferred touch selector ie - zeptojs.com/license */\n\t\"use strict\";\n\t\n\tvar Zepto = (function () {\n\t function D(t) {\n\t return null == t ? String(t) : j[S.call(t)] || \"object\";\n\t }function L(t) {\n\t return \"function\" == D(t);\n\t }function k(t) {\n\t return null != t && t == t.window;\n\t }function Z(t) {\n\t return null != t && t.nodeType == t.DOCUMENT_NODE;\n\t }function $(t) {\n\t return \"object\" == D(t);\n\t }function F(t) {\n\t return $(t) && !k(t) && Object.getPrototypeOf(t) == Object.prototype;\n\t }function R(t) {\n\t return \"number\" == typeof t.length;\n\t }function q(t) {\n\t return s.call(t, function (t) {\n\t return null != t;\n\t });\n\t }function W(t) {\n\t return t.length > 0 ? n.fn.concat.apply([], t) : t;\n\t }function z(t) {\n\t return t.replace(/::/g, \"/\").replace(/([A-Z]+)([A-Z][a-z])/g, \"$1_$2\").replace(/([a-z\\d])([A-Z])/g, \"$1_$2\").replace(/_/g, \"-\").toLowerCase();\n\t }function H(t) {\n\t return t in c ? c[t] : c[t] = new RegExp(\"(^|\\\\s)\" + t + \"(\\\\s|$)\");\n\t }function _(t, e) {\n\t return \"number\" != typeof e || l[z(t)] ? e : e + \"px\";\n\t }function I(t) {\n\t var e, n;return (f[t] || (e = u.createElement(t), u.body.appendChild(e), n = getComputedStyle(e, \"\").getPropertyValue(\"display\"), e.parentNode.removeChild(e), \"none\" == n && (n = \"block\"), f[t] = n), f[t]);\n\t }function U(t) {\n\t return \"children\" in t ? a.call(t.children) : n.map(t.childNodes, function (t) {\n\t return 1 == t.nodeType ? t : void 0;\n\t });\n\t }function X(t, e) {\n\t var n,\n\t i = t ? t.length : 0;for (n = 0; i > n; n++) this[n] = t[n];this.length = i, this.selector = e || \"\";\n\t }function B(n, i, r) {\n\t for (e in i) r && (F(i[e]) || A(i[e])) ? (F(i[e]) && !F(n[e]) && (n[e] = {}), A(i[e]) && !A(n[e]) && (n[e] = []), B(n[e], i[e], r)) : i[e] !== t && (n[e] = i[e]);\n\t }function V(t, e) {\n\t return null == e ? n(t) : n(t).filter(e);\n\t }function Y(t, e, n, i) {\n\t return L(e) ? e.call(t, n, i) : e;\n\t }function J(t, e, n) {\n\t null == n ? t.removeAttribute(e) : t.setAttribute(e, n);\n\t }function G(e, n) {\n\t var i = e.className || \"\",\n\t r = i && i.baseVal !== t;return n === t ? r ? i.baseVal : i : void (r ? i.baseVal = n : e.className = n);\n\t }function K(t) {\n\t try {\n\t return t ? \"true\" == t || (\"false\" == t ? !1 : \"null\" == t ? null : +t + \"\" == t ? +t : /^[\\[\\{]/.test(t) ? n.parseJSON(t) : t) : t;\n\t } catch (e) {\n\t return t;\n\t }\n\t }function Q(t, e) {\n\t e(t);for (var n = 0, i = t.childNodes.length; i > n; n++) Q(t.childNodes[n], e);\n\t }var t,\n\t e,\n\t n,\n\t i,\n\t N,\n\t P,\n\t r = [],\n\t o = r.concat,\n\t s = r.filter,\n\t a = r.slice,\n\t u = window.document,\n\t f = {},\n\t c = {},\n\t l = { \"column-count\": 1, columns: 1, \"font-weight\": 1, \"line-height\": 1, opacity: 1, \"z-index\": 1, zoom: 1 },\n\t h = /^\\s*<(\\w+|!)[^>]*>/,\n\t p = /^<(\\w+)\\s*\\/?>(?:<\\/\\1>|)$/,\n\t d = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\\w:]+)[^>]*)\\/>/gi,\n\t m = /^(?:body|html)$/i,\n\t g = /([A-Z])/g,\n\t v = [\"val\", \"css\", \"html\", \"text\", \"data\", \"width\", \"height\", \"offset\"],\n\t y = [\"after\", \"prepend\", \"before\", \"append\"],\n\t w = u.createElement(\"table\"),\n\t x = u.createElement(\"tr\"),\n\t b = { tr: u.createElement(\"tbody\"), tbody: w, thead: w, tfoot: w, td: x, th: x, \"*\": u.createElement(\"div\") },\n\t E = /complete|loaded|interactive/,\n\t T = /^[\\w-]*$/,\n\t j = {},\n\t S = j.toString,\n\t C = {},\n\t O = u.createElement(\"div\"),\n\t M = { tabindex: \"tabIndex\", readonly: \"readOnly\", \"for\": \"htmlFor\", \"class\": \"className\", maxlength: \"maxLength\", cellspacing: \"cellSpacing\", cellpadding: \"cellPadding\", rowspan: \"rowSpan\", colspan: \"colSpan\", usemap: \"useMap\", frameborder: \"frameBorder\", contenteditable: \"contentEditable\" },\n\t A = Array.isArray || function (t) {\n\t return t instanceof Array;\n\t };return (C.matches = function (t, e) {\n\t if (!e || !t || 1 !== t.nodeType) return !1;var n = t.webkitMatchesSelector || t.mozMatchesSelector || t.oMatchesSelector || t.matchesSelector;if (n) return n.call(t, e);var i,\n\t r = t.parentNode,\n\t o = !r;return (o && (r = O).appendChild(t), i = ~C.qsa(r, e).indexOf(t), o && O.removeChild(t), i);\n\t }, N = function (t) {\n\t return t.replace(/-+(.)?/g, function (t, e) {\n\t return e ? e.toUpperCase() : \"\";\n\t });\n\t }, P = function (t) {\n\t return s.call(t, function (e, n) {\n\t return t.indexOf(e) == n;\n\t });\n\t }, C.fragment = function (e, i, r) {\n\t var o, s, f;return (p.test(e) && (o = n(u.createElement(RegExp.$1))), o || (e.replace && (e = e.replace(d, \"<$1>$2>\")), i === t && (i = h.test(e) && RegExp.$1), i in b || (i = \"*\"), f = b[i], f.innerHTML = \"\" + e, o = n.each(a.call(f.childNodes), function () {\n\t f.removeChild(this);\n\t })), F(r) && (s = n(o), n.each(r, function (t, e) {\n\t v.indexOf(t) > -1 ? s[t](e) : s.attr(t, e);\n\t })), o);\n\t }, C.Z = function (t, e) {\n\t return new X(t, e);\n\t }, C.isZ = function (t) {\n\t return t instanceof C.Z;\n\t }, C.init = function (e, i) {\n\t var r;if (!e) return C.Z();if (\"string\" == typeof e) if ((e = e.trim(), \"<\" == e[0] && h.test(e))) r = C.fragment(e, RegExp.$1, i), e = null;else {\n\t if (i !== t) return n(i).find(e);r = C.qsa(u, e);\n\t } else {\n\t if (L(e)) return n(u).ready(e);if (C.isZ(e)) return e;if (A(e)) r = q(e);else if ($(e)) r = [e], e = null;else if (h.test(e)) r = C.fragment(e.trim(), RegExp.$1, i), e = null;else {\n\t if (i !== t) return n(i).find(e);r = C.qsa(u, e);\n\t }\n\t }return C.Z(r, e);\n\t }, n = function (t, e) {\n\t return C.init(t, e);\n\t }, n.extend = function (t) {\n\t var e,\n\t n = a.call(arguments, 1);return (\"boolean\" == typeof t && (e = t, t = n.shift()), n.forEach(function (n) {\n\t B(t, n, e);\n\t }), t);\n\t }, C.qsa = function (t, e) {\n\t var n,\n\t i = \"#\" == e[0],\n\t r = !i && \".\" == e[0],\n\t o = i || r ? e.slice(1) : e,\n\t s = T.test(o);return t.getElementById && s && i ? (n = t.getElementById(o)) ? [n] : [] : 1 !== t.nodeType && 9 !== t.nodeType && 11 !== t.nodeType ? [] : a.call(s && !i && t.getElementsByClassName ? r ? t.getElementsByClassName(o) : t.getElementsByTagName(e) : t.querySelectorAll(e));\n\t }, n.contains = u.documentElement.contains ? function (t, e) {\n\t return t !== e && t.contains(e);\n\t } : function (t, e) {\n\t for (; e && (e = e.parentNode);) if (e === t) return !0;return !1;\n\t }, n.type = D, n.isFunction = L, n.isWindow = k, n.isArray = A, n.isPlainObject = F, n.isEmptyObject = function (t) {\n\t var e;for (e in t) return !1;return !0;\n\t }, n.inArray = function (t, e, n) {\n\t return r.indexOf.call(e, t, n);\n\t }, n.camelCase = N, n.trim = function (t) {\n\t return null == t ? \"\" : String.prototype.trim.call(t);\n\t }, n.uuid = 0, n.support = {}, n.expr = {}, n.noop = function () {}, n.map = function (t, e) {\n\t var n,\n\t r,\n\t o,\n\t i = [];if (R(t)) for (r = 0; r < t.length; r++) n = e(t[r], r), null != n && i.push(n);else for (o in t) n = e(t[o], o), null != n && i.push(n);return W(i);\n\t }, n.each = function (t, e) {\n\t var n, i;if (R(t)) {\n\t for (n = 0; n < t.length; n++) if (e.call(t[n], n, t[n]) === !1) return t;\n\t } else for (i in t) if (e.call(t[i], i, t[i]) === !1) return t;return t;\n\t }, n.grep = function (t, e) {\n\t return s.call(t, e);\n\t }, window.JSON && (n.parseJSON = JSON.parse), n.each(\"Boolean Number String Function Array Date RegExp Object Error\".split(\" \"), function (t, e) {\n\t j[\"[object \" + e + \"]\"] = e.toLowerCase();\n\t }), n.fn = { constructor: C.Z, length: 0, forEach: r.forEach, reduce: r.reduce, push: r.push, sort: r.sort, splice: r.splice, indexOf: r.indexOf, concat: function concat() {\n\t var t,\n\t e,\n\t n = [];for (t = 0; t < arguments.length; t++) e = arguments[t], n[t] = C.isZ(e) ? e.toArray() : e;return o.apply(C.isZ(this) ? this.toArray() : this, n);\n\t }, map: function map(t) {\n\t return n(n.map(this, function (e, n) {\n\t return t.call(e, n, e);\n\t }));\n\t }, slice: function slice() {\n\t return n(a.apply(this, arguments));\n\t }, ready: function ready(t) {\n\t return (E.test(u.readyState) && u.body ? t(n) : u.addEventListener(\"DOMContentLoaded\", function () {\n\t t(n);\n\t }, !1), this);\n\t }, get: function get(e) {\n\t return e === t ? a.call(this) : this[e >= 0 ? e : e + this.length];\n\t }, toArray: function toArray() {\n\t return this.get();\n\t }, size: function size() {\n\t return this.length;\n\t }, remove: function remove() {\n\t return this.each(function () {\n\t null != this.parentNode && this.parentNode.removeChild(this);\n\t });\n\t }, each: function each(t) {\n\t return (r.every.call(this, function (e, n) {\n\t return t.call(e, n, e) !== !1;\n\t }), this);\n\t }, filter: function filter(t) {\n\t return L(t) ? this.not(this.not(t)) : n(s.call(this, function (e) {\n\t return C.matches(e, t);\n\t }));\n\t }, add: function add(t, e) {\n\t return n(P(this.concat(n(t, e))));\n\t }, is: function is(t) {\n\t return this.length > 0 && C.matches(this[0], t);\n\t }, not: function not(e) {\n\t var i = [];if (L(e) && e.call !== t) this.each(function (t) {\n\t e.call(this, t) || i.push(this);\n\t });else {\n\t var r = \"string\" == typeof e ? this.filter(e) : R(e) && L(e.item) ? a.call(e) : n(e);this.forEach(function (t) {\n\t r.indexOf(t) < 0 && i.push(t);\n\t });\n\t }return n(i);\n\t }, has: function has(t) {\n\t return this.filter(function () {\n\t return $(t) ? n.contains(this, t) : n(this).find(t).size();\n\t });\n\t }, eq: function eq(t) {\n\t return -1 === t ? this.slice(t) : this.slice(t, +t + 1);\n\t }, first: function first() {\n\t var t = this[0];return t && !$(t) ? t : n(t);\n\t }, last: function last() {\n\t var t = this[this.length - 1];return t && !$(t) ? t : n(t);\n\t }, find: function find(t) {\n\t var e,\n\t i = this;return e = t ? \"object\" == typeof t ? n(t).filter(function () {\n\t var t = this;return r.some.call(i, function (e) {\n\t return n.contains(e, t);\n\t });\n\t }) : 1 == this.length ? n(C.qsa(this[0], t)) : this.map(function () {\n\t return C.qsa(this, t);\n\t }) : n();\n\t }, closest: function closest(t, e) {\n\t var i = this[0],\n\t r = !1;for (\"object\" == typeof t && (r = n(t)); i && !(r ? r.indexOf(i) >= 0 : C.matches(i, t));) i = i !== e && !Z(i) && i.parentNode;return n(i);\n\t }, parents: function parents(t) {\n\t for (var e = [], i = this; i.length > 0;) i = n.map(i, function (t) {\n\t return (t = t.parentNode) && !Z(t) && e.indexOf(t) < 0 ? (e.push(t), t) : void 0;\n\t });return V(e, t);\n\t }, parent: function parent(t) {\n\t return V(P(this.pluck(\"parentNode\")), t);\n\t }, children: function children(t) {\n\t return V(this.map(function () {\n\t return U(this);\n\t }), t);\n\t }, contents: function contents() {\n\t return this.map(function () {\n\t return this.contentDocument || a.call(this.childNodes);\n\t });\n\t }, siblings: function siblings(t) {\n\t return V(this.map(function (t, e) {\n\t return s.call(U(e.parentNode), function (t) {\n\t return t !== e;\n\t });\n\t }), t);\n\t }, empty: function empty() {\n\t return this.each(function () {\n\t this.innerHTML = \"\";\n\t });\n\t }, pluck: function pluck(t) {\n\t return n.map(this, function (e) {\n\t return e[t];\n\t });\n\t }, show: function show() {\n\t return this.each(function () {\n\t \"none\" == this.style.display && (this.style.display = \"\"), \"none\" == getComputedStyle(this, \"\").getPropertyValue(\"display\") && (this.style.display = I(this.nodeName));\n\t });\n\t }, replaceWith: function replaceWith(t) {\n\t return this.before(t).remove();\n\t }, wrap: function wrap(t) {\n\t var e = L(t);if (this[0] && !e) var i = n(t).get(0),\n\t r = i.parentNode || this.length > 1;return this.each(function (o) {\n\t n(this).wrapAll(e ? t.call(this, o) : r ? i.cloneNode(!0) : i);\n\t });\n\t }, wrapAll: function wrapAll(t) {\n\t if (this[0]) {\n\t n(this[0]).before(t = n(t));for (var e; (e = t.children()).length;) t = e.first();n(t).append(this);\n\t }return this;\n\t }, wrapInner: function wrapInner(t) {\n\t var e = L(t);return this.each(function (i) {\n\t var r = n(this),\n\t o = r.contents(),\n\t s = e ? t.call(this, i) : t;o.length ? o.wrapAll(s) : r.append(s);\n\t });\n\t }, unwrap: function unwrap() {\n\t return (this.parent().each(function () {\n\t n(this).replaceWith(n(this).children());\n\t }), this);\n\t }, clone: function clone() {\n\t return this.map(function () {\n\t return this.cloneNode(!0);\n\t });\n\t }, hide: function hide() {\n\t return this.css(\"display\", \"none\");\n\t }, toggle: function toggle(e) {\n\t return this.each(function () {\n\t var i = n(this);(e === t ? \"none\" == i.css(\"display\") : e) ? i.show() : i.hide();\n\t });\n\t }, prev: function prev(t) {\n\t return n(this.pluck(\"previousElementSibling\")).filter(t || \"*\");\n\t }, next: function next(t) {\n\t return n(this.pluck(\"nextElementSibling\")).filter(t || \"*\");\n\t }, html: function html(t) {\n\t return 0 in arguments ? this.each(function (e) {\n\t var i = this.innerHTML;n(this).empty().append(Y(this, t, e, i));\n\t }) : 0 in this ? this[0].innerHTML : null;\n\t }, text: function text(t) {\n\t return 0 in arguments ? this.each(function (e) {\n\t var n = Y(this, t, e, this.textContent);this.textContent = null == n ? \"\" : \"\" + n;\n\t }) : 0 in this ? this[0].textContent : null;\n\t }, attr: function attr(n, i) {\n\t var r;return \"string\" != typeof n || 1 in arguments ? this.each(function (t) {\n\t if (1 === this.nodeType) if ($(n)) for (e in n) J(this, e, n[e]);else J(this, n, Y(this, i, t, this.getAttribute(n)));\n\t }) : this.length && 1 === this[0].nodeType ? !(r = this[0].getAttribute(n)) && n in this[0] ? this[0][n] : r : t;\n\t }, removeAttr: function removeAttr(t) {\n\t return this.each(function () {\n\t 1 === this.nodeType && t.split(\" \").forEach(function (t) {\n\t J(this, t);\n\t }, this);\n\t });\n\t }, prop: function prop(t, e) {\n\t return (t = M[t] || t, 1 in arguments ? this.each(function (n) {\n\t this[t] = Y(this, e, n, this[t]);\n\t }) : this[0] && this[0][t]);\n\t }, data: function data(e, n) {\n\t var i = \"data-\" + e.replace(g, \"-$1\").toLowerCase(),\n\t r = 1 in arguments ? this.attr(i, n) : this.attr(i);return null !== r ? K(r) : t;\n\t }, val: function val(t) {\n\t return 0 in arguments ? this.each(function (e) {\n\t this.value = Y(this, t, e, this.value);\n\t }) : this[0] && (this[0].multiple ? n(this[0]).find(\"option\").filter(function () {\n\t return this.selected;\n\t }).pluck(\"value\") : this[0].value);\n\t }, offset: function offset(t) {\n\t if (t) return this.each(function (e) {\n\t var i = n(this),\n\t r = Y(this, t, e, i.offset()),\n\t o = i.offsetParent().offset(),\n\t s = { top: r.top - o.top, left: r.left - o.left };\"static\" == i.css(\"position\") && (s.position = \"relative\"), i.css(s);\n\t });if (!this.length) return null;if (!n.contains(u.documentElement, this[0])) return { top: 0, left: 0 };var e = this[0].getBoundingClientRect();return { left: e.left + window.pageXOffset, top: e.top + window.pageYOffset, width: Math.round(e.width), height: Math.round(e.height) };\n\t }, css: function css(t, i) {\n\t if (arguments.length < 2) {\n\t var r,\n\t o = this[0];if (!o) return;if ((r = getComputedStyle(o, \"\"), \"string\" == typeof t)) return o.style[N(t)] || r.getPropertyValue(t);if (A(t)) {\n\t var s = {};return (n.each(t, function (t, e) {\n\t s[e] = o.style[N(e)] || r.getPropertyValue(e);\n\t }), s);\n\t }\n\t }var a = \"\";if (\"string\" == D(t)) i || 0 === i ? a = z(t) + \":\" + _(t, i) : this.each(function () {\n\t this.style.removeProperty(z(t));\n\t });else for (e in t) t[e] || 0 === t[e] ? a += z(e) + \":\" + _(e, t[e]) + \";\" : this.each(function () {\n\t this.style.removeProperty(z(e));\n\t });return this.each(function () {\n\t this.style.cssText += \";\" + a;\n\t });\n\t }, index: function index(t) {\n\t return t ? this.indexOf(n(t)[0]) : this.parent().children().indexOf(this[0]);\n\t }, hasClass: function hasClass(t) {\n\t return t ? r.some.call(this, function (t) {\n\t return this.test(G(t));\n\t }, H(t)) : !1;\n\t }, addClass: function addClass(t) {\n\t return t ? this.each(function (e) {\n\t if (\"className\" in this) {\n\t i = [];var r = G(this),\n\t o = Y(this, t, e, r);o.split(/\\s+/g).forEach(function (t) {\n\t n(this).hasClass(t) || i.push(t);\n\t }, this), i.length && G(this, r + (r ? \" \" : \"\") + i.join(\" \"));\n\t }\n\t }) : this;\n\t }, removeClass: function removeClass(e) {\n\t return this.each(function (n) {\n\t if (\"className\" in this) {\n\t if (e === t) return G(this, \"\");i = G(this), Y(this, e, n, i).split(/\\s+/g).forEach(function (t) {\n\t i = i.replace(H(t), \" \");\n\t }), G(this, i.trim());\n\t }\n\t });\n\t }, toggleClass: function toggleClass(e, i) {\n\t return e ? this.each(function (r) {\n\t var o = n(this),\n\t s = Y(this, e, r, G(this));s.split(/\\s+/g).forEach(function (e) {\n\t (i === t ? !o.hasClass(e) : i) ? o.addClass(e) : o.removeClass(e);\n\t });\n\t }) : this;\n\t }, scrollTop: function scrollTop(e) {\n\t if (this.length) {\n\t var n = (\"scrollTop\" in this[0]);return e === t ? n ? this[0].scrollTop : this[0].pageYOffset : this.each(n ? function () {\n\t this.scrollTop = e;\n\t } : function () {\n\t this.scrollTo(this.scrollX, e);\n\t });\n\t }\n\t }, scrollLeft: function scrollLeft(e) {\n\t if (this.length) {\n\t var n = (\"scrollLeft\" in this[0]);return e === t ? n ? this[0].scrollLeft : this[0].pageXOffset : this.each(n ? function () {\n\t this.scrollLeft = e;\n\t } : function () {\n\t this.scrollTo(e, this.scrollY);\n\t });\n\t }\n\t }, position: function position() {\n\t if (this.length) {\n\t var t = this[0],\n\t e = this.offsetParent(),\n\t i = this.offset(),\n\t r = m.test(e[0].nodeName) ? { top: 0, left: 0 } : e.offset();return (i.top -= parseFloat(n(t).css(\"margin-top\")) || 0, i.left -= parseFloat(n(t).css(\"margin-left\")) || 0, r.top += parseFloat(n(e[0]).css(\"border-top-width\")) || 0, r.left += parseFloat(n(e[0]).css(\"border-left-width\")) || 0, { top: i.top - r.top, left: i.left - r.left });\n\t }\n\t }, offsetParent: function offsetParent() {\n\t return this.map(function () {\n\t for (var t = this.offsetParent || u.body; t && !m.test(t.nodeName) && \"static\" == n(t).css(\"position\");) t = t.offsetParent;return t;\n\t });\n\t } }, n.fn.detach = n.fn.remove, [\"width\", \"height\"].forEach(function (e) {\n\t var i = e.replace(/./, function (t) {\n\t return t[0].toUpperCase();\n\t });n.fn[e] = function (r) {\n\t var o,\n\t s = this[0];return r === t ? k(s) ? s[\"inner\" + i] : Z(s) ? s.documentElement[\"scroll\" + i] : (o = this.offset()) && o[e] : this.each(function (t) {\n\t s = n(this), s.css(e, Y(this, r, t, s[e]()));\n\t });\n\t };\n\t }), y.forEach(function (t, e) {\n\t var i = e % 2;n.fn[t] = function () {\n\t var t,\n\t o,\n\t r = n.map(arguments, function (e) {\n\t return (t = D(e), \"object\" == t || \"array\" == t || null == e ? e : C.fragment(e));\n\t }),\n\t s = this.length > 1;return r.length < 1 ? this : this.each(function (t, a) {\n\t o = i ? a : a.parentNode, a = 0 == e ? a.nextSibling : 1 == e ? a.firstChild : 2 == e ? a : null;var f = n.contains(u.documentElement, o);r.forEach(function (t) {\n\t if (s) t = t.cloneNode(!0);else if (!o) return n(t).remove();o.insertBefore(t, a), f && Q(t, function (t) {\n\t null == t.nodeName || \"SCRIPT\" !== t.nodeName.toUpperCase() || t.type && \"text/javascript\" !== t.type || t.src || window.eval.call(window, t.innerHTML);\n\t });\n\t });\n\t });\n\t }, n.fn[i ? t + \"To\" : \"insert\" + (e ? \"Before\" : \"After\")] = function (e) {\n\t return (n(e)[t](this), this);\n\t };\n\t }), C.Z.prototype = X.prototype = n.fn, C.uniq = P, C.deserializeValue = K, n.zepto = C, n);\n\t})();window.Zepto = Zepto, void 0 === window.$ && (window.$ = Zepto), (function (t) {\n\t function l(t) {\n\t return t._zid || (t._zid = e++);\n\t }function h(t, e, n, i) {\n\t if ((e = p(e), e.ns)) var r = d(e.ns);return (s[l(t)] || []).filter(function (t) {\n\t return !(!t || e.e && t.e != e.e || e.ns && !r.test(t.ns) || n && l(t.fn) !== l(n) || i && t.sel != i);\n\t });\n\t }function p(t) {\n\t var e = (\"\" + t).split(\".\");return { e: e[0], ns: e.slice(1).sort().join(\" \") };\n\t }function d(t) {\n\t return new RegExp(\"(?:^| )\" + t.replace(\" \", \" .* ?\") + \"(?: |$)\");\n\t }function m(t, e) {\n\t return t.del && !u && t.e in f || !!e;\n\t }function g(t) {\n\t return c[t] || u && f[t] || t;\n\t }function v(e, i, r, o, a, u, f) {\n\t var h = l(e),\n\t d = s[h] || (s[h] = []);i.split(/\\s/).forEach(function (i) {\n\t if (\"ready\" == i) return t(document).ready(r);var s = p(i);s.fn = r, s.sel = a, s.e in c && (r = function (e) {\n\t var n = e.relatedTarget;return !n || n !== this && !t.contains(this, n) ? s.fn.apply(this, arguments) : void 0;\n\t }), s.del = u;var l = u || r;s.proxy = function (t) {\n\t if ((t = T(t), !t.isImmediatePropagationStopped())) {\n\t t.data = o;var i = l.apply(e, t._args == n ? [t] : [t].concat(t._args));return (i === !1 && (t.preventDefault(), t.stopPropagation()), i);\n\t }\n\t }, s.i = d.length, d.push(s), \"addEventListener\" in e && e.addEventListener(g(s.e), s.proxy, m(s, f));\n\t });\n\t }function y(t, e, n, i, r) {\n\t var o = l(t);(e || \"\").split(/\\s/).forEach(function (e) {\n\t h(t, e, n, i).forEach(function (e) {\n\t delete s[o][e.i], \"removeEventListener\" in t && t.removeEventListener(g(e.e), e.proxy, m(e, r));\n\t });\n\t });\n\t }function T(e, i) {\n\t return ((i || !e.isDefaultPrevented) && (i || (i = e), t.each(E, function (t, n) {\n\t var r = i[t];e[t] = function () {\n\t return (this[n] = w, r && r.apply(i, arguments));\n\t }, e[n] = x;\n\t }), (i.defaultPrevented !== n ? i.defaultPrevented : \"returnValue\" in i ? i.returnValue === !1 : i.getPreventDefault && i.getPreventDefault()) && (e.isDefaultPrevented = w)), e);\n\t }function j(t) {\n\t var e,\n\t i = { originalEvent: t };for (e in t) b.test(e) || t[e] === n || (i[e] = t[e]);return T(i, t);\n\t }var n,\n\t e = 1,\n\t i = Array.prototype.slice,\n\t r = t.isFunction,\n\t o = function o(t) {\n\t return \"string\" == typeof t;\n\t },\n\t s = {},\n\t a = {},\n\t u = (\"onfocusin\" in window),\n\t f = { focus: \"focusin\", blur: \"focusout\" },\n\t c = { mouseenter: \"mouseover\", mouseleave: \"mouseout\" };a.click = a.mousedown = a.mouseup = a.mousemove = \"MouseEvents\", t.event = { add: v, remove: y }, t.proxy = function (e, n) {\n\t var s = 2 in arguments && i.call(arguments, 2);if (r(e)) {\n\t var a = function a() {\n\t return e.apply(n, s ? s.concat(i.call(arguments)) : arguments);\n\t };return (a._zid = l(e), a);\n\t }if (o(n)) return s ? (s.unshift(e[n], e), t.proxy.apply(null, s)) : t.proxy(e[n], e);throw new TypeError(\"expected function\");\n\t }, t.fn.bind = function (t, e, n) {\n\t return this.on(t, e, n);\n\t }, t.fn.unbind = function (t, e) {\n\t return this.off(t, e);\n\t }, t.fn.one = function (t, e, n, i) {\n\t return this.on(t, e, n, i, 1);\n\t };var w = function w() {\n\t return !0;\n\t },\n\t x = function x() {\n\t return !1;\n\t },\n\t b = /^([A-Z]|returnValue$|layer[XY]$)/,\n\t E = { preventDefault: \"isDefaultPrevented\", stopImmediatePropagation: \"isImmediatePropagationStopped\", stopPropagation: \"isPropagationStopped\" };t.fn.delegate = function (t, e, n) {\n\t return this.on(e, t, n);\n\t }, t.fn.undelegate = function (t, e, n) {\n\t return this.off(e, t, n);\n\t }, t.fn.live = function (e, n) {\n\t return (t(document.body).delegate(this.selector, e, n), this);\n\t }, t.fn.die = function (e, n) {\n\t return (t(document.body).undelegate(this.selector, e, n), this);\n\t }, t.fn.on = function (e, s, a, u, f) {\n\t var c,\n\t l,\n\t h = this;return e && !o(e) ? (t.each(e, function (t, e) {\n\t h.on(t, s, a, e, f);\n\t }), h) : (o(s) || r(u) || u === !1 || (u = a, a = s, s = n), (u === n || a === !1) && (u = a, a = n), u === !1 && (u = x), h.each(function (n, r) {\n\t f && (c = function (t) {\n\t return (y(r, t.type, u), u.apply(this, arguments));\n\t }), s && (l = function (e) {\n\t var n,\n\t o = t(e.target).closest(s, r).get(0);return o && o !== r ? (n = t.extend(j(e), { currentTarget: o, liveFired: r }), (c || u).apply(o, [n].concat(i.call(arguments, 1)))) : void 0;\n\t }), v(r, e, u, a, s, l || c);\n\t }));\n\t }, t.fn.off = function (e, i, s) {\n\t var a = this;return e && !o(e) ? (t.each(e, function (t, e) {\n\t a.off(t, i, e);\n\t }), a) : (o(i) || r(s) || s === !1 || (s = i, i = n), s === !1 && (s = x), a.each(function () {\n\t y(this, e, s, i);\n\t }));\n\t }, t.fn.trigger = function (e, n) {\n\t return (e = o(e) || t.isPlainObject(e) ? t.Event(e) : T(e), e._args = n, this.each(function () {\n\t e.type in f && \"function\" == typeof this[e.type] ? this[e.type]() : \"dispatchEvent\" in this ? this.dispatchEvent(e) : t(this).triggerHandler(e, n);\n\t }));\n\t }, t.fn.triggerHandler = function (e, n) {\n\t var i, r;return (this.each(function (s, a) {\n\t i = j(o(e) ? t.Event(e) : e), i._args = n, i.target = a, t.each(h(a, e.type || e), function (t, e) {\n\t return (r = e.proxy(i), i.isImmediatePropagationStopped() ? !1 : void 0);\n\t });\n\t }), r);\n\t }, \"focusin focusout focus blur load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error\".split(\" \").forEach(function (e) {\n\t t.fn[e] = function (t) {\n\t return 0 in arguments ? this.bind(e, t) : this.trigger(e);\n\t };\n\t }), t.Event = function (t, e) {\n\t o(t) || (e = t, t = e.type);var n = document.createEvent(a[t] || \"Events\"),\n\t i = !0;if (e) for (var r in e) \"bubbles\" == r ? i = !!e[r] : n[r] = e[r];return (n.initEvent(t, i, !0), T(n));\n\t };\n\t})(Zepto), (function (t) {\n\t function h(e, n, i) {\n\t var r = t.Event(n);return (t(e).trigger(r, i), !r.isDefaultPrevented());\n\t }function p(t, e, i, r) {\n\t return t.global ? h(e || n, i, r) : void 0;\n\t }function d(e) {\n\t e.global && 0 === t.active++ && p(e, null, \"ajaxStart\");\n\t }function m(e) {\n\t e.global && ! --t.active && p(e, null, \"ajaxStop\");\n\t }function g(t, e) {\n\t var n = e.context;return e.beforeSend.call(n, t, e) === !1 || p(e, n, \"ajaxBeforeSend\", [t, e]) === !1 ? !1 : void p(e, n, \"ajaxSend\", [t, e]);\n\t }function v(t, e, n, i) {\n\t var r = n.context,\n\t o = \"success\";n.success.call(r, t, o, e), i && i.resolveWith(r, [t, o, e]), p(n, r, \"ajaxSuccess\", [e, n, t]), w(o, e, n);\n\t }function y(t, e, n, i, r) {\n\t var o = i.context;i.error.call(o, n, e, t), r && r.rejectWith(o, [n, e, t]), p(i, o, \"ajaxError\", [n, i, t || e]), w(e, n, i);\n\t }function w(t, e, n) {\n\t var i = n.context;n.complete.call(i, e, t), p(n, i, \"ajaxComplete\", [e, n]), m(n);\n\t }function x() {}function b(t) {\n\t return (t && (t = t.split(\";\", 2)[0]), t && (t == f ? \"html\" : t == u ? \"json\" : s.test(t) ? \"script\" : a.test(t) && \"xml\") || \"text\");\n\t }function E(t, e) {\n\t return \"\" == e ? t : (t + \"&\" + e).replace(/[&?]{1,2}/, \"?\");\n\t }function T(e) {\n\t e.processData && e.data && \"string\" != t.type(e.data) && (e.data = t.param(e.data, e.traditional)), !e.data || e.type && \"GET\" != e.type.toUpperCase() || (e.url = E(e.url, e.data), e.data = void 0);\n\t }function j(e, n, i, r) {\n\t return (t.isFunction(n) && (r = i, i = n, n = void 0), t.isFunction(i) || (r = i, i = void 0), { url: e, data: n, success: i, dataType: r });\n\t }function C(e, n, i, r) {\n\t var o,\n\t s = t.isArray(n),\n\t a = t.isPlainObject(n);t.each(n, function (n, u) {\n\t o = t.type(u), r && (n = i ? r : r + \"[\" + (a || \"object\" == o || \"array\" == o ? n : \"\") + \"]\"), !r && s ? e.add(u.name, u.value) : \"array\" == o || !i && \"object\" == o ? C(e, u, i, n) : e.add(n, u);\n\t });\n\t }var i,\n\t r,\n\t e = 0,\n\t n = window.document,\n\t o = /\n\t * \n\t * ```\n\t * Now, create the player:\n\t * ```html\n\t *
\n\t * \n\t * \n\t * \n\t * ```\n\t */\n\t\n\tvar Player = (function (_BaseObject) {\n\t _inherits(Player, _BaseObject);\n\t\n\t /**\n\t * ## Player's constructor\n\t *\n\t * You might pass the options object to build the player.\n\t * ```javascript\n\t * var options = {source: \"http://example.com/video.mp4\", param1: \"val1\"};\n\t * var player = new Clappr.Player(options);\n\t * ```\n\t *\n\t * @method constructor\n\t * @param {Object} options Data\n\t * options to build a player instance\n\t * @param {Number} [options.width]\n\t * player's width **default**: `640`\n\t * @param {Number} [options.height]\n\t * player's height **default**: `360`\n\t * @param {Boolean} [options.autoPlay]\n\t * automatically play after page load **default**: `false`\n\t * @param {Boolean} [options.loop]\n\t * automatically replay after it ends **default**: `false`\n\t * @param {Boolean} [options.chromeless]\n\t * player acts in chromeless mode **default**: `false`\n\t * @param {Boolean} [options.muted]\n\t * start the video muted **default**: `false`\n\t * @param {Boolean} [options.persistConfig]\n\t * persist player's settings (volume) through the same domain **default**: `true`\n\t * @param {String} [options.preload]\n\t * video will be preloaded according to `preload` attribute options **default**: `'metadata'`\n\t * @param {Number} [options.maxBufferLength]\n\t * the default behavior for the **HLS playback** is to keep buffering indefinitely, even on VoD. This replicates the behavior for progressive download, which continues buffering when pausing the video, thus making the video available for playback even on slow networks. To change this behavior use `maxBufferLength` where **value is in seconds**.\n\t * @param {String} [options.gaAccount]\n\t * enable Google Analytics events dispatch **(play/pause/stop/buffering/etc)** by adding your `gaAccount`\n\t * @param {String} [options.gaTrackerName]\n\t * besides `gaAccount` you can optionally, pass your favorite trackerName as `gaTrackerName`\n\t * @param {Object} [options.mediacontrol]\n\t * customize control bar colors, example: `mediacontrol: {seekbar: \"#E113D3\", buttons: \"#66B2FF\"}`\n\t * @param {Boolean} [options.hideMediaControl]\n\t * control media control auto hide **default**: `true`\n\t * @param {Boolean} [options.hideVolumeBar]\n\t * when embedded with width less than 320, volume bar will hide. You can force this behavior for all sizes by adding `true` **default**: `false`\n\t * @param {String} [options.watermark]\n\t * put `watermark: 'http://url/img.png'` on your embed parameters to automatically add watermark on your video. You can customize corner position by defining position parameter. Positions can be `bottom-left`, `bottom-right`, `top-left` and `top-right`.\n\t * @param {String} [options.poster]\n\t * define a poster by adding its address `poster: 'http://url/img.png'`. It will appear after video embed, disappear on play and go back when user stops the video.\n\t */\n\t\n\t function Player(options) {\n\t _classCallCheck(this, Player);\n\t\n\t _get(Object.getPrototypeOf(Player.prototype), 'constructor', this).call(this, options);\n\t window.p = this;\n\t var defaultOptions = { playerId: (0, _baseUtils.uniqueId)(\"\"), persistConfig: true, width: 640, height: 360, baseUrl: baseUrl };\n\t this.options = (0, _lodashAssign2['default'])(defaultOptions, options);\n\t this.options.sources = this.normalizeSources(options);\n\t this.loader = new _componentsLoader2['default'](this.options.plugins || {}, this.options.playerId);\n\t this.coreFactory = new _componentsCore_factory2['default'](this, this.loader);\n\t this.playerInfo = _componentsPlayer_info2['default'].getInstance(this.options.playerId);\n\t this.playerInfo.currentSize = { width: options.width, height: options.height };\n\t this.playerInfo.options = this.options;\n\t if (this.options.parentId) {\n\t this.setParentId(this.options.parentId);\n\t }\n\t }\n\t\n\t /**\n\t * Specify a `parentId` to the player.\n\t * @method setParentId\n\t * @param {String} parentId the element parent id.\n\t */\n\t\n\t _createClass(Player, [{\n\t key: 'setParentId',\n\t value: function setParentId(parentId) {\n\t var el = document.querySelector(parentId);\n\t if (el) {\n\t this.attachTo(el);\n\t }\n\t }\n\t\n\t /**\n\t * You can use this method to attach the player to a given element. You don't need to do this when you specify it during the player instantiation passing the `parentId` param.\n\t * @method attachTo\n\t * @param {Object} element a given element.\n\t */\n\t }, {\n\t key: 'attachTo',\n\t value: function attachTo(element) {\n\t this.options.parentElement = element;\n\t this.core = this.coreFactory.create();\n\t this.addEventListeners();\n\t }\n\t }, {\n\t key: 'addEventListeners',\n\t value: function addEventListeners() {\n\t this.listenTo(this.core.mediaControl, _baseEvents2['default'].MEDIACONTROL_CONTAINERCHANGED, this.containerChanged);\n\t var container = this.core.mediaControl.container;\n\t if (!!container) {\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_PLAY, this.onPlay);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_PAUSE, this.onPause);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_ENDED, this.onEnded);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_SEEK, this.onSeek);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_ERROR, this.onError);\n\t this.listenTo(container, _baseEvents2['default'].CONTAINER_TIMEUPDATE, this.onTimeUpdate);\n\t }\n\t }\n\t }, {\n\t key: 'containerChanged',\n\t value: function containerChanged() {\n\t this.stopListening();\n\t this.addEventListeners();\n\t }\n\t }, {\n\t key: 'onPlay',\n\t value: function onPlay() {\n\t this.trigger(_baseEvents2['default'].PLAYER_PLAY);\n\t }\n\t }, {\n\t key: 'onPause',\n\t value: function onPause() {\n\t this.trigger(_baseEvents2['default'].PLAYER_PAUSE);\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t this.trigger(_baseEvents2['default'].PLAYER_STOP, this.getCurrentTime());\n\t }\n\t }, {\n\t key: 'onEnded',\n\t value: function onEnded() {\n\t this.trigger(_baseEvents2['default'].PLAYER_ENDED);\n\t }\n\t }, {\n\t key: 'onSeek',\n\t value: function onSeek(percent) {\n\t this.trigger(_baseEvents2['default'].PLAYER_SEEK, percent);\n\t }\n\t }, {\n\t key: 'onTimeUpdate',\n\t value: function onTimeUpdate(position, duration) {\n\t this.trigger(_baseEvents2['default'].PLAYER_TIMEUPDATE, position, duration);\n\t }\n\t }, {\n\t key: 'onError',\n\t value: function onError(error) {\n\t this.trigger(_baseEvents2['default'].PLAYER_ERROR, error);\n\t }\n\t }, {\n\t key: 'is',\n\t value: function is(value, type) {\n\t return value.constructor === type;\n\t }\n\t }, {\n\t key: 'normalizeSources',\n\t value: function normalizeSources(options) {\n\t var sources = options.sources || (options.source !== undefined ? [options.source.toString()] : []);\n\t return sources.length === 0 ? ['no.op'] : sources;\n\t }\n\t\n\t /**\n\t * resizes the current player canvas.\n\t * @method resize\n\t * @param {Object} size should be a literal object with `height` and `width`.\n\t * @example\n\t * ```javascript\n\t * player.resize({height: 360, width: 640})\n\t * ```\n\t */\n\t }, {\n\t key: 'resize',\n\t value: function resize(size) {\n\t this.core.resize(size);\n\t }\n\t\n\t /**\n\t * loads a new source.\n\t * @method load\n\t * @param {Object} sources source or sources of video.\n\t * @param {Object} mimeType a mime type, example: `'application/vnd.apple.mpegurl'`\n\t *\n\t */\n\t }, {\n\t key: 'load',\n\t value: function load(sources, mimeType) {\n\t this.core.load(sources, mimeType);\n\t }\n\t\n\t /**\n\t * destroys the current player and removes it from the DOM.\n\t * @method destroy\n\t */\n\t }, {\n\t key: 'destroy',\n\t value: function destroy() {\n\t this.core.destroy();\n\t }\n\t\n\t /**\n\t * plays the current video (`source`).\n\t * @method play\n\t */\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t this.core.mediaControl.container.play();\n\t }\n\t\n\t /**\n\t * pauses the current video (`source`).\n\t * @method pause\n\t */\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t this.core.mediaControl.container.pause();\n\t }\n\t\n\t /**\n\t * stops the current video (`source`).\n\t * @method stop\n\t */\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.core.mediaControl.container.stop();\n\t }\n\t\n\t /**\n\t * seeks the current video (`source`). For example, `player.seek(50)` will seek to the middle of the current video.\n\t * @method seek\n\t * @param {Number} time should be a number between 0 and 100.\n\t */\n\t }, {\n\t key: 'seek',\n\t value: function seek(time) {\n\t this.core.mediaControl.container.setCurrentTime(time);\n\t }\n\t\n\t /**\n\t * Set the volume for the current video (`source`).\n\t * @method setVolume\n\t * @param {Number} time should be a number between 0 and 100, 0 being mute and 100 the max volume.\n\t */\n\t }, {\n\t key: 'setVolume',\n\t value: function setVolume(volume) {\n\t this.core.mediaControl.container.setVolume(volume);\n\t }\n\t\n\t /**\n\t * mutes the current video (`source`).\n\t * @method mute\n\t */\n\t }, {\n\t key: 'mute',\n\t value: function mute() {\n\t this.core.mediaControl.container.setVolume(0);\n\t }\n\t\n\t /**\n\t * unmutes the current video (`source`).\n\t * @method unmute\n\t */\n\t }, {\n\t key: 'unmute',\n\t value: function unmute() {\n\t this.core.mediaControl.container.setVolume(100);\n\t }\n\t\n\t /**\n\t * checks if the player is playing.\n\t * @method isPlaying\n\t * @return {Boolean} `true` if the current source is playing, otherwise `false`\n\t */\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t return this.core.mediaControl.container.isPlaying();\n\t }\n\t\n\t /**\n\t * get a plugin by its name.\n\t * @method getPlugin\n\t * @param {String} name of the plugin.\n\t * @return {Object} the plugin instance\n\t * @example\n\t * ```javascript\n\t * var poster = player.getPlugin('poster');\n\t * poster.hidePlayButton();\n\t * ```\n\t */\n\t }, {\n\t key: 'getPlugin',\n\t value: function getPlugin(name) {\n\t var plugins = this.core.plugins.concat(this.core.mediaControl.container.plugins);\n\t return (0, _lodashFind2['default'])(plugins, function (plugin) {\n\t return plugin.name === name;\n\t });\n\t }\n\t\n\t /**\n\t * the current time in seconds.\n\t * @method getCurrentTime\n\t * @return {Number} current time (in seconds) of the current source\n\t */\n\t }, {\n\t key: 'getCurrentTime',\n\t value: function getCurrentTime() {\n\t return this.core.mediaControl.container.getCurrentTime();\n\t }\n\t\n\t /**\n\t * the duration time in seconds.\n\t * @method getDuration\n\t * @return {Number} duration time (in seconds) of the current source\n\t */\n\t }, {\n\t key: 'getDuration',\n\t value: function getDuration() {\n\t return this.core.mediaControl.container.getDuration();\n\t }\n\t }]);\n\t\n\t return Player;\n\t})(_baseBase_object2['default']);\n\t\n\texports['default'] = Player;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 96 */\n/*!*******************************************!*\\\n !*** ./src/components/seek_time/index.js ***!\n \\*******************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./seek_time */ 97);\n\n/***/ },\n/* 97 */\n/*!***********************************************!*\\\n !*** ./src/components/seek_time/seek_time.js ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUtils = __webpack_require__(/*! base/utils */ 2);\n\t\n\tvar _baseUi_object = __webpack_require__(/*! base/ui_object */ 10);\n\t\n\tvar _baseUi_object2 = _interopRequireDefault(_baseUi_object);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _publicSeek_timeScss = __webpack_require__(/*! ./public/seek_time.scss */ 128);\n\t\n\tvar _publicSeek_timeScss2 = _interopRequireDefault(_publicSeek_timeScss);\n\t\n\tvar _publicSeek_timeHtml = __webpack_require__(/*! ./public/seek_time.html */ 141);\n\t\n\tvar _publicSeek_timeHtml2 = _interopRequireDefault(_publicSeek_timeHtml);\n\t\n\tvar SeekTime = (function (_UIObject) {\n\t _inherits(SeekTime, _UIObject);\n\t\n\t _createClass(SeekTime, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'seek_time';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicSeek_timeHtml2['default']);\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'class': 'seek-time hidden',\n\t 'data-seek-time': ''\n\t };\n\t }\n\t }]);\n\t\n\t function SeekTime(mediaControl) {\n\t _classCallCheck(this, SeekTime);\n\t\n\t _get(Object.getPrototypeOf(SeekTime.prototype), 'constructor', this).call(this);\n\t this.mediaControl = mediaControl;\n\t this.addEventListeners();\n\t }\n\t\n\t _createClass(SeekTime, [{\n\t key: 'addEventListeners',\n\t value: function addEventListeners() {\n\t this.listenTo(this.mediaControl, _baseEvents2['default'].MEDIACONTROL_MOUSEMOVE_SEEKBAR, this.showTime);\n\t this.listenTo(this.mediaControl, _baseEvents2['default'].MEDIACONTROL_MOUSELEAVE_SEEKBAR, this.hideTime);\n\t }\n\t }, {\n\t key: 'showTime',\n\t value: function showTime(event) {\n\t if (!this.mediaControl.container.settings.seekEnabled) {\n\t return;\n\t }\n\t\n\t // the element must be unhidden before its width is requested, otherwise it's width will be reported as 0\n\t this.$el.removeClass('hidden');\n\t var offset = event.pageX - this.mediaControl.$seekBarContainer.offset().left;\n\t if (offset >= 0 && offset <= this.mediaControl.$seekBarContainer.width()) {\n\t var timePosition = Math.min(100, Math.max(offset / this.mediaControl.$seekBarContainer.width() * 100, 0));\n\t var pointerPosition = event.pageX - this.mediaControl.$el.offset().left;\n\t pointerPosition = Math.min(Math.max(0, pointerPosition), this.mediaControl.$el.width() - this.$el.width() / 2);\n\t var currentTime = timePosition * this.mediaControl.container.getDuration() / 100;\n\t var options = {\n\t timestamp: currentTime,\n\t formattedTime: (0, _baseUtils.formatTime)(currentTime),\n\t pointerPosition: pointerPosition\n\t };\n\t\n\t this.update(options);\n\t }\n\t }\n\t }, {\n\t key: 'hideTime',\n\t value: function hideTime() {\n\t this.$el.addClass('hidden');\n\t this.$el.css('left', '-100%');\n\t }\n\t }, {\n\t key: 'update',\n\t value: function update(options) {\n\t this.$el.find('[data-seek-time]').text(options.formattedTime);\n\t this.$el.css('left', Math.max(0, options.pointerPosition - this.$el.width() / 2));\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var style = _baseStyler2['default'].getStyleFor(_publicSeek_timeScss2['default']);\n\t this.$el.html(this.template());\n\t this.$el.append(style);\n\t this.mediaControl.$el.append(this.el);\n\t }\n\t }]);\n\t\n\t return SeekTime;\n\t})(_baseUi_object2['default']);\n\t\n\texports['default'] = SeekTime;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 98 */\n/*!**************************************!*\\\n !*** ./src/playbacks/flash/flash.js ***!\n \\**************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUtils = __webpack_require__(/*! base/utils */ 2);\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar _componentsMediator = __webpack_require__(/*! components/mediator */ 11);\n\t\n\tvar _componentsMediator2 = _interopRequireDefault(_componentsMediator);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 129);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar _publicFlash_playbackHtml = __webpack_require__(/*! ./public/flash_playback.html */ 142);\n\t\n\tvar _publicFlash_playbackHtml2 = _interopRequireDefault(_publicFlash_playbackHtml);\n\t\n\tvar _publicPlayerSwf = __webpack_require__(/*! ./public/Player.swf */ 151);\n\t\n\tvar _publicPlayerSwf2 = _interopRequireDefault(_publicPlayerSwf);\n\t\n\tvar MAX_ATTEMPTS = 60;\n\t\n\tvar objectIE = '';\n\t\n\tvar Flash = (function (_Playback) {\n\t _inherits(Flash, _Playback);\n\t\n\t _createClass(Flash, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'flash';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'object';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicFlash_playbackHtml2['default']);\n\t }\n\t }]);\n\t\n\t function Flash(options) {\n\t _classCallCheck(this, Flash);\n\t\n\t _get(Object.getPrototypeOf(Flash.prototype), 'constructor', this).call(this, options);\n\t this.src = options.src;\n\t this.baseUrl = options.baseUrl;\n\t this.autoPlay = options.autoPlay;\n\t this.settings = { 'default': ['seekbar'] };\n\t this.settings.left = [\"playpause\", \"position\", \"duration\"];\n\t this.settings.right = [\"fullscreen\", \"volume\"];\n\t this.settings.seekEnabled = true;\n\t this.isReady = false;\n\t this.addListeners();\n\t }\n\t\n\t _createClass(Flash, [{\n\t key: 'bootstrap',\n\t value: function bootstrap() {\n\t var _this = this;\n\t\n\t if (this.el.playerPlay) {\n\t this.el.width = \"100%\";\n\t this.el.height = \"100%\";\n\t if (this.currentState === 'PLAYING') {\n\t this.firstPlay();\n\t } else {\n\t this.currentState = \"IDLE\";\n\t this.autoPlay && this.play();\n\t }\n\t (0, _clapprZepto2['default'])('').insertAfter(this.$el);\n\t if (this.getDuration() > 0) {\n\t this.metadataLoaded();\n\t } else {\n\t _componentsMediator2['default'].once(this.uniqueId + ':timeupdate', this.metadataLoaded, this);\n\t }\n\t } else {\n\t this._attempts = this._attempts || 0;\n\t if (++this._attempts <= MAX_ATTEMPTS) {\n\t setTimeout(function () {\n\t return _this.bootstrap();\n\t }, 50);\n\t } else {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ERROR, { message: \"Max number of attempts reached\" }, this.name);\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'metadataLoaded',\n\t value: function metadataLoaded() {\n\t this.isReady = true;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_READY, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_SETTINGSUPDATE, this.name);\n\t }\n\t }, {\n\t key: 'getPlaybackType',\n\t value: function getPlaybackType() {\n\t return 'vod';\n\t }\n\t }, {\n\t key: 'setupFirefox',\n\t value: function setupFirefox() {\n\t var $el = this.$('embed');\n\t $el.attr('data-flash', '');\n\t this.setElement($el[0]);\n\t }\n\t }, {\n\t key: 'isHighDefinitionInUse',\n\t value: function isHighDefinitionInUse() {\n\t return false;\n\t }\n\t }, {\n\t key: 'updateTime',\n\t value: function updateTime() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, this.el.getPosition(), this.el.getDuration(), this.name);\n\t }\n\t }, {\n\t key: 'addListeners',\n\t value: function addListeners() {\n\t _componentsMediator2['default'].on(this.uniqueId + ':progress', this.progress, this);\n\t _componentsMediator2['default'].on(this.uniqueId + ':timeupdate', this.updateTime, this);\n\t _componentsMediator2['default'].on(this.uniqueId + ':statechanged', this.checkState, this);\n\t _componentsMediator2['default'].on(this.uniqueId + ':flashready', this.bootstrap, this);\n\t }\n\t }, {\n\t key: 'stopListening',\n\t value: function stopListening() {\n\t _get(Object.getPrototypeOf(Flash.prototype), 'stopListening', this).call(this);\n\t _componentsMediator2['default'].off(this.uniqueId + ':progress');\n\t _componentsMediator2['default'].off(this.uniqueId + ':timeupdate');\n\t _componentsMediator2['default'].off(this.uniqueId + ':statechanged');\n\t _componentsMediator2['default'].off(this.uniqueId + ':flashready');\n\t }\n\t }, {\n\t key: 'checkState',\n\t value: function checkState() {\n\t if (this.currentState === \"PAUSED\") {\n\t return;\n\t } else if (this.currentState !== \"PLAYING_BUFFERING\" && this.el.getState() === \"PLAYING_BUFFERING\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t this.currentState = \"PLAYING_BUFFERING\";\n\t } else if (this.el.getState() === \"PLAYING\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t this.currentState = \"PLAYING\";\n\t } else if (this.el.getState() === \"IDLE\") {\n\t this.currentState = \"IDLE\";\n\t } else if (this.el.getState() === \"ENDED\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ENDED, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 0, this.el.getDuration(), this.name);\n\t this.currentState = \"ENDED\";\n\t }\n\t }\n\t }, {\n\t key: 'progress',\n\t value: function progress() {\n\t if (this.currentState !== \"IDLE\" && this.currentState !== \"ENDED\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PROGRESS, 0, this.el.getBytesLoaded(), this.el.getBytesTotal(), this.name);\n\t }\n\t }\n\t }, {\n\t key: 'firstPlay',\n\t value: function firstPlay() {\n\t var _this2 = this;\n\t\n\t if (this.el.playerPlay) {\n\t this.el.playerPlay(this.src);\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_BUFFERFULL, function () {\n\t return _this2.checkInitialSeek();\n\t });\n\t this.currentState = \"PLAYING\";\n\t } else {\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_READY, this.firstPlay);\n\t }\n\t }\n\t }, {\n\t key: 'checkInitialSeek',\n\t value: function checkInitialSeek() {\n\t var seekTime = (0, _baseUtils.seekStringToSeconds)(window.location.href);\n\t if (seekTime !== 0) {\n\t this.seekSeconds(seekTime);\n\t }\n\t }\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t if (this.currentState === 'PAUSED' || this.currentState === 'PLAYING_BUFFERING') {\n\t this.currentState = \"PLAYING\";\n\t this.el.playerResume();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY, this.name);\n\t } else if (this.currentState !== 'PLAYING') {\n\t this.firstPlay();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'volume',\n\t value: function volume(value) {\n\t var _this3 = this;\n\t\n\t if (this.isReady) {\n\t this.el.playerVolume(value);\n\t } else {\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_BUFFERFULL, function () {\n\t return _this3.volume(value);\n\t });\n\t }\n\t }\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t this.currentState = \"PAUSED\";\n\t this.el.playerPause();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PAUSE, this.name);\n\t }\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.el.playerStop();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 0, this.name);\n\t }\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t return !!(this.isReady && this.currentState.indexOf(\"PLAYING\") > -1);\n\t }\n\t }, {\n\t key: 'getDuration',\n\t value: function getDuration() {\n\t return this.el.getDuration();\n\t }\n\t }, {\n\t key: 'seek',\n\t value: function seek(seekBarValue) {\n\t var _this4 = this;\n\t\n\t if (this.el.getDuration() > 0) {\n\t var seekTo = this.el.getDuration() * (seekBarValue / 100);\n\t this.seekSeconds(seekTo);\n\t } else {\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_BUFFERFULL, function () {\n\t return _this4.seek(seekBarValue);\n\t });\n\t }\n\t }\n\t }, {\n\t key: 'seekSeconds',\n\t value: function seekSeconds(seekTo) {\n\t var _this5 = this;\n\t\n\t if (this.isReady && this.el.playerSeek) {\n\t this.el.playerSeek(seekTo);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, seekTo, this.el.getDuration(), this.name);\n\t if (this.currentState === \"PAUSED\") {\n\t this.el.playerPause();\n\t }\n\t } else {\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_BUFFERFULL, function () {\n\t return _this5.seekSeconds(seekTo);\n\t });\n\t }\n\t }\n\t }, {\n\t key: 'destroy',\n\t value: function destroy() {\n\t clearInterval(this.bootstrapId);\n\t _get(Object.getPrototypeOf(Flash.prototype), 'stopListening', this).call(this);\n\t this.$el.remove();\n\t }\n\t }, {\n\t key: 'setupIE',\n\t value: function setupIE(swfPath) {\n\t this.setElement((0, _clapprZepto2['default'])((0, _baseTemplate2['default'])(objectIE)({ cid: this.cid, swfPath: swfPath, baseUrl: this.baseUrl, playbackId: this.uniqueId })));\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default']);\n\t var swfPath = (0, _baseTemplate2['default'])(_publicPlayerSwf2['default'])({ baseUrl: this.baseUrl });\n\t this.$el.html(this.template({ cid: this.cid, swfPath: swfPath, baseUrl: this.baseUrl, playbackId: this.uniqueId }));\n\t if (_componentsBrowser2['default'].isFirefox) {\n\t this.setupFirefox();\n\t } else if (_componentsBrowser2['default'].isLegacyIE) {\n\t this.setupIE(swfPath);\n\t }\n\t this.$el.append(style);\n\t return this;\n\t }\n\t }]);\n\t\n\t return Flash;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = Flash;\n\t\n\tFlash.canPlay = function (resource) {\n\t if (!_componentsBrowser2['default'].hasFlash || !resource || resource.constructor !== String) {\n\t return false;\n\t } else {\n\t var resourceParts = resource.split('?')[0].match(/.*\\.(.*)$/) || [];\n\t return resourceParts.length > 1 && !_componentsBrowser2['default'].isMobile && resourceParts[1].match(/^(mp4|mov|f4v|3gpp|3gp)$/);\n\t }\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 99 */\n/*!*********************************************!*\\\n !*** ./src/playbacks/hls/flashls_events.js ***!\n \\*********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar _componentsMediator = __webpack_require__(/*! ../../components/mediator */ 11);\n\t\n\tvar _componentsMediator2 = _interopRequireDefault(_componentsMediator);\n\t\n\tvar HLSEvents = (function () {\n\t function HLSEvents(instanceId) {\n\t _classCallCheck(this, HLSEvents);\n\t\n\t this.instanceId = instanceId;\n\t }\n\t\n\t _createClass(HLSEvents, [{\n\t key: 'ready',\n\t value: function ready() {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':flashready');\n\t }\n\t }, {\n\t key: 'videoSize',\n\t value: function videoSize(width, height) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':videosizechanged', width, height);\n\t }\n\t }, {\n\t key: 'complete',\n\t value: function complete() {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':complete');\n\t }\n\t }, {\n\t key: 'error',\n\t value: function error(code, url, message) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':error', code, url, message);\n\t }\n\t }, {\n\t key: 'manifest',\n\t value: function manifest(duration, loadmetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':manifestloaded', duration, loadmetrics);\n\t }\n\t }, {\n\t key: 'audioLevelLoaded',\n\t value: function audioLevelLoaded(loadmetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':audiolevelloaded', loadmetrics);\n\t }\n\t }, {\n\t key: 'levelLoaded',\n\t value: function levelLoaded(loadmetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':levelloaded', loadmetrics);\n\t }\n\t }, {\n\t key: 'fragmentLoaded',\n\t value: function fragmentLoaded(loadmetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':fragmentloaded', loadmetrics);\n\t }\n\t }, {\n\t key: 'fragmentPlaying',\n\t value: function fragmentPlaying(playmetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':fragmentplaying', playmetrics);\n\t }\n\t }, {\n\t key: 'position',\n\t value: function position(timemetrics) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':timeupdate', timemetrics);\n\t }\n\t }, {\n\t key: 'state',\n\t value: function state(newState) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':playbackstate', newState);\n\t }\n\t }, {\n\t key: 'seekState',\n\t value: function seekState(newState) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':seekstate', newState);\n\t }\n\t }, {\n\t key: 'switch',\n\t value: function _switch(newLevel) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':levelchanged', newLevel);\n\t }\n\t }, {\n\t key: 'audioTracksListChange',\n\t value: function audioTracksListChange(trackList) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':audiotracklistchanged', trackList);\n\t }\n\t }, {\n\t key: 'audioTrackChange',\n\t value: function audioTrackChange(trackId) {\n\t _componentsMediator2['default'].trigger(this.instanceId + ':audiotrackchanged', trackId);\n\t }\n\t }]);\n\t\n\t return HLSEvents;\n\t})();\n\t\n\texports['default'] = HLSEvents;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 100 */\n/*!**********************************!*\\\n !*** ./src/playbacks/hls/hls.js ***!\n \\**********************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x2, _x3, _x4) { var _again = true; _function: while (_again) { var object = _x2, property = _x3, receiver = _x4; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x2 = parent; _x3 = property; _x4 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _componentsMediator = __webpack_require__(/*! components/mediator */ 11);\n\t\n\tvar _componentsMediator2 = _interopRequireDefault(_componentsMediator);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar _flashls_events = __webpack_require__(/*! ./flashls_events */ 99);\n\t\n\tvar _flashls_events2 = _interopRequireDefault(_flashls_events);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 130);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar _publicHls_playbackHtml = __webpack_require__(/*! ./public/hls_playback.html */ 143);\n\t\n\tvar _publicHls_playbackHtml2 = _interopRequireDefault(_publicHls_playbackHtml);\n\t\n\tvar _publicHLSPlayerSwf = __webpack_require__(/*! ./public/HLSPlayer.swf */ 152);\n\t\n\tvar _publicHLSPlayerSwf2 = _interopRequireDefault(_publicHLSPlayerSwf);\n\t\n\tvar _lodashAssign = __webpack_require__(/*! lodash.assign */ 12);\n\t\n\tvar _lodashAssign2 = _interopRequireDefault(_lodashAssign);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar MAX_ATTEMPTS = 60;\n\t\n\tvar objectIE = '';\n\t\n\tvar HLS = (function (_Playback) {\n\t _inherits(HLS, _Playback);\n\t\n\t _createClass(HLS, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'hls';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'object';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicHls_playbackHtml2['default']);\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'class': 'hls-playback',\n\t 'data-hls': '',\n\t 'type': 'application/x-shockwave-flash',\n\t 'width': '100%',\n\t 'height': '100%'\n\t };\n\t }\n\t }]);\n\t\n\t function HLS(options) {\n\t _classCallCheck(this, HLS);\n\t\n\t _get(Object.getPrototypeOf(HLS.prototype), 'constructor', this).call(this, options);\n\t this.src = options.src;\n\t this.baseUrl = options.baseUrl;\n\t this.initHlsParameters(options);\n\t this.highDefinition = false;\n\t this.autoPlay = options.autoPlay;\n\t this.defaultSettings = {\n\t left: [\"playstop\"],\n\t 'default': ['seekbar'],\n\t right: [\"fullscreen\", \"volume\", \"hd-indicator\"],\n\t seekEnabled: false\n\t };\n\t this.settings = (0, _lodashAssign2['default'])({}, this.defaultSettings);\n\t this.playbackType = 'live';\n\t this.addListeners();\n\t }\n\t\n\t _createClass(HLS, [{\n\t key: 'initHlsParameters',\n\t value: function initHlsParameters(options) {\n\t this.flushLiveURLCache = options.flushLiveURLCache === undefined ? true : options.flushLiveURLCache;\n\t this.capLevelToStage = options.capLevelToStage === undefined ? false : options.capLevelToStage;\n\t this.useHardwareVideoDecoder = options.useHardwareVideoDecoder === undefined ? false : options.useHardwareVideoDecoder;\n\t this.maxBufferLength = options.maxBufferLength === undefined ? 120 : options.maxBufferLength;\n\t this.seekMode = options.seekMode === undefined ? \"ACCURATE\" : options.seekMode;\n\t this.startFromLevel = options.startFromLevel === undefined ? -1 : options.startFromLevel;\n\t this.startFromBitrate = options.startFromBitrate === undefined ? -1 : options.startFromBitrate;\n\t this.hlsMinimumDvrSize = options.hlsMinimumDvrSize === undefined ? 60 : options.hlsMinimumDvrSize;\n\t this.hlsLogEnabled = options.hlsLogEnabled === undefined ? true : options.hlsLogEnabled;\n\t this.keyLoadMaxRetry = options.keyLoadMaxRetry === undefined ? 3 : options.keyLoadMaxRetry;\n\t this.keyLoadMaxRetryTimeout = options.keyLoadMaxRetryTimeout === undefined ? 64000 : options.keyLoadMaxRetryTimeout;\n\t this.fragmentLoadMaxRetry = options.fragmentLoadMaxRetry === undefined ? 3 : options.fragmentLoadMaxRetry;\n\t this.fragmentLoadMaxRetryTimeout = options.fragmentLoadMaxRetryTimeout === undefined ? 4000 : options.fragmentLoadMaxRetryTimeout;\n\t this.fragmentLoadSkipAfterMaxRetry = options.fragmentLoadSkipAfterMaxRetry === undefined ? false : options.fragmentLoadSkipAfterMaxRetry;\n\t this.capLevelonFpsDrop = options.capLevelonFpsDrop === undefined ? false : options.capLevelonFpsDrop;\n\t this.smoothAutoSwitchonFpsDrop = options.smoothAutoSwitchonFpsDrop === undefined ? this.capLevelonFpsDrop : options.smoothAutoSwitchonFpsDrop;\n\t this.fpsDroppedMonitoringPeriod = options.fpsDroppedMonitoringPeriod === undefined ? 5000 : options.fpsDroppedMonitoringPeriod;\n\t this.fpsDroppedMonitoringThreshold = options.fpsDroppedMonitoringThreshold === undefined ? 0.2 : options.fpsDroppedMonitoringThreshold;\n\t }\n\t }, {\n\t key: 'addListeners',\n\t value: function addListeners() {\n\t var _this = this;\n\t\n\t _componentsMediator2['default'].on(this.cid + ':flashready', function () {\n\t return _this.bootstrap();\n\t });\n\t _componentsMediator2['default'].on(this.cid + ':timeupdate', function (timeMetrics) {\n\t return _this.updateTime(timeMetrics);\n\t });\n\t _componentsMediator2['default'].on(this.cid + ':playbackstate', function (state) {\n\t return _this.setPlaybackState(state);\n\t });\n\t _componentsMediator2['default'].on(this.cid + ':levelchanged', function (level) {\n\t return _this.levelChanged(level);\n\t });\n\t _componentsMediator2['default'].on(this.cid + ':error', function (code, url, message) {\n\t return _this.flashPlaybackError(code, url, message);\n\t });\n\t _componentsMediator2['default'].on(this.cid + ':fragmentloaded', function (loadmetrics) {\n\t return _this.onFragmentLoaded(loadmetrics);\n\t });\n\t _componentsMediator2['default'].once(this.cid + ':manifestloaded', function (duration, loadmetrics) {\n\t return _this.manifestLoaded(duration, loadmetrics);\n\t });\n\t }\n\t }, {\n\t key: 'stopListening',\n\t value: function stopListening() {\n\t _get(Object.getPrototypeOf(HLS.prototype), 'stopListening', this).call(this);\n\t _componentsMediator2['default'].off(this.cid + ':flashready');\n\t _componentsMediator2['default'].off(this.cid + ':timeupdate');\n\t _componentsMediator2['default'].off(this.cid + ':playbackstate');\n\t _componentsMediator2['default'].off(this.cid + ':levelchanged');\n\t _componentsMediator2['default'].off(this.cid + ':playbackerror');\n\t _componentsMediator2['default'].off(this.cid + ':fragmentloaded');\n\t _componentsMediator2['default'].off(this.cid + ':manifestloaded');\n\t }\n\t }, {\n\t key: 'bootstrap',\n\t value: function bootstrap() {\n\t var _this2 = this;\n\t\n\t if (this.el.playerLoad) {\n\t this.el.width = \"100%\";\n\t this.el.height = \"100%\";\n\t this.isReady = true;\n\t this.srcLoaded = false;\n\t this.currentState = \"IDLE\";\n\t this.setFlashSettings();\n\t this.updatePlaybackType();\n\t if (this.autoPlay || this._shouldPlayOnBootstrap) this.play();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_READY, this.name);\n\t } else {\n\t this._bootstrapAttempts = this._bootstrapAttempts || 0;\n\t if (++this._bootstrapAttempts <= MAX_ATTEMPTS) {\n\t setTimeout(function () {\n\t return _this2.bootstrap();\n\t }, 50);\n\t } else {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ERROR, { message: \"Max number of attempts reached\" }, this.name);\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'setFlashSettings',\n\t value: function setFlashSettings() {\n\t this.el.playerSetflushLiveURLCache(this.flushLiveURLCache);\n\t this.el.playerCapLeveltoStage(this.capLevelToStage);\n\t this.el.playerSetmaxBufferLength(this.maxBufferLength);\n\t this.el.playerSetUseHardwareVideoDecoder(this.useHardwareVideoDecoder);\n\t this.el.playerSetLogInfo(this.hlsLogEnabled);\n\t this.el.playerSetSeekMode(this.seekMode);\n\t this.el.playerSetStartFromBitrate(this.startFromBitrate);\n\t this.el.playerSetstartFromLevel(this.startFromLevel);\n\t this.el.playerSetKeyLoadMaxRetry(this.keyLoadMaxRetry);\n\t this.el.playerSetKeyLoadMaxRetryTimeout(this.keyLoadMaxRetryTimeout);\n\t this.el.playerSetFragmentLoadMaxRetry(this.fragmentLoadMaxRetry);\n\t this.el.playerSetFragmentLoadMaxRetryTimeout(this.fragmentLoadMaxRetryTimeout);\n\t this.el.playerSetFragmentLoadSkipAfterMaxRetry(this.fragmentLoadSkipAfterMaxRetry);\n\t this.el.playerSetCapLevelonFPSDrop(this.capLevelonFpsDrop);\n\t this.el.playerSetSmoothAutoSwitchonFPSDrop(this.smoothAutoSwitchonFpsDrop);\n\t this.el.playerSetFpsDroppedMonitoringPeriod(this.fpsDroppedMonitoringPeriod);\n\t this.el.playerSetFpsDroppedMonitoringThreshold(this.fpsDroppedMonitoringThreshold);\n\t }\n\t }, {\n\t key: 'setFlushLiveUrlCache',\n\t value: function setFlushLiveUrlCache(flushLiveURLCache) {\n\t this.flushLiveURLCache = flushLiveURLCache;\n\t this.el.playerSetflushLiveURLCache(this.flushLiveURLCache);\n\t }\n\t }, {\n\t key: 'setCapLeveltoStage',\n\t value: function setCapLeveltoStage(capLevelToStage) {\n\t this.capLevelToStage = capLevelToStage;\n\t this.el.playerCapLeveltoStage(this.capLevelToStage);\n\t }\n\t }, {\n\t key: 'setMaxBufferLength',\n\t value: function setMaxBufferLength(maxBufferLength) {\n\t this.maxBufferLength = maxBufferLength;\n\t this.el.playerSetmaxBufferLength(this.maxBufferLength);\n\t }\n\t }, {\n\t key: 'setUseHardwareVideoDecoder',\n\t value: function setUseHardwareVideoDecoder(useHardwareVideoDecoder) {\n\t this.useHardwareVideoDecoder = useHardwareVideoDecoder;\n\t this.el.playerSetUseHardwareVideoDecoder(this.useHardwareVideoDecoder);\n\t }\n\t }, {\n\t key: 'setHlsLogEnabled',\n\t value: function setHlsLogEnabled(hlsLogEnabled) {\n\t this.hlsLogEnabled = hlsLogEnabled;\n\t this.el.playerSetLogInfo(this.hlsLogEnabled);\n\t }\n\t }, {\n\t key: 'setSeekMode',\n\t value: function setSeekMode(seekMode) {\n\t this.seekMode = seekMode;\n\t this.el.playerSetSeekMode(this.seekMode);\n\t }\n\t }, {\n\t key: 'setStartFromBitrate',\n\t value: (function (_setStartFromBitrate) {\n\t function setStartFromBitrate(_x) {\n\t return _setStartFromBitrate.apply(this, arguments);\n\t }\n\t\n\t setStartFromBitrate.toString = function () {\n\t return _setStartFromBitrate.toString();\n\t };\n\t\n\t return setStartFromBitrate;\n\t })(function (startFromBitrate) {\n\t this.startFromBitrate = setStartFromBitrate;\n\t this.el.playerSetStartFromBitrate(this.startFromBitrate);\n\t })\n\t }, {\n\t key: 'setStartFromLevel',\n\t value: function setStartFromLevel(startFromLevel) {\n\t this.startFromLevel = startFromLevel;\n\t this.el.playerSetstartFromLevel(this.startFromLevel);\n\t }\n\t }, {\n\t key: 'setKeyLoadMaxRetry',\n\t value: function setKeyLoadMaxRetry(keyLoadMaxRetry) {\n\t this.keyLoadMaxRetry = keyLoadMaxRetry;\n\t this.el.playerSetKeyLoadMaxRetry(this.keyLoadMaxRetry);\n\t }\n\t }, {\n\t key: 'setKeyLoadMaxRetryTimeout',\n\t value: function setKeyLoadMaxRetryTimeout(keyLoadMaxRetryTimeout) {\n\t this.keyLoadMaxRetryTimeout = keyLoadMaxRetryTimeout;\n\t this.el.playerSetKeyLoadMaxRetryTimeout(this.keyLoadMaxRetryTimeout);\n\t }\n\t }, {\n\t key: 'setFragmentLoadMaxRetry',\n\t value: function setFragmentLoadMaxRetry(fragmentLoadMaxRetry) {\n\t this.fragmentLoadMaxRetry = fragmentLoadMaxRetry;\n\t this.el.playerSetFragmentLoadMaxRetry(this.fragmentLoadMaxRetry);\n\t }\n\t }, {\n\t key: 'setFragmentLoadMaxRetryTimeout',\n\t value: function setFragmentLoadMaxRetryTimeout(fragmentLoadMaxRetryTimeout) {\n\t this.fragmentLoadMaxRetryTimeout = fragmentLoadMaxRetryTimeout;\n\t this.el.playerSetFragmentLoadMaxRetryTimeout(this.fragmentLoadMaxRetryTimeout);\n\t }\n\t }, {\n\t key: 'setFragmentLoadSkipAfterMaxRetry',\n\t value: function setFragmentLoadSkipAfterMaxRetry(fragmentLoadSkipAfterMaxRetry) {\n\t this.fragmentLoadSkipAfterMaxRetry = fragmentLoadSkipAfterMaxRetry;\n\t this.el.playerSetFragmentLoadSkipAfterMaxRetry(this.fragmentLoadSkipAfterMaxRetry);\n\t }\n\t }, {\n\t key: 'setCapLevelonFPSDrop',\n\t value: function setCapLevelonFPSDrop(capLevelonFpsDrop) {\n\t this.capLevelonFpsDrop = capLevelonFpsDrop;\n\t this.el.playerSetCapLevelonFPSDrop(this.capLevelonFpsDrop);\n\t }\n\t }, {\n\t key: 'setSmoothAutoSwitchonFPSDrop',\n\t value: function setSmoothAutoSwitchonFPSDrop(smoothAutoSwitchonFpsDrop) {\n\t this.smoothAutoSwitchonFpsDrop = smoothAutoSwitchonFpsDrop;\n\t this.el.playerSetSmoothAutoSwitchonFPSDrop(this.smoothAutoSwitchonFpsDrop);\n\t }\n\t }, {\n\t key: 'setFpsDroppedMonitoringPeriod',\n\t value: function setFpsDroppedMonitoringPeriod(fpsDroppedMonitoringPeriod) {\n\t this.fpsDroppedMonitoringPeriod = fpsDroppedMonitoringPeriod;\n\t this.el.playerSetFpsDroppedMonitoringPeriod(this.fpsDroppedMonitoringPeriod);\n\t }\n\t }, {\n\t key: 'setFpsDroppedMonitoringThreshold',\n\t value: function setFpsDroppedMonitoringThreshold(fpsDroppedMonitoringThreshold) {\n\t this.fpsDroppedMonitoringThreshold = fpsDroppedMonitoringThreshold;\n\t this.el.playerSetFpsDroppedMonitoringThreshold(this.fpsDroppedMonitoringThreshold);\n\t }\n\t }, {\n\t key: 'levelChanged',\n\t value: function levelChanged(level) {\n\t var currentLevel = this.getLevels()[level];\n\t if (currentLevel) {\n\t this.highDefinition = currentLevel.height >= 720 || currentLevel.bitrate / 1000 >= 2000;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_HIGHDEFINITIONUPDATE);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BITRATE, { bitrate: this.getCurrentBitrate(), level: level });\n\t }\n\t }\n\t }, {\n\t key: 'updateTime',\n\t value: function updateTime(timeMetrics) {\n\t if (this.currentState === 'IDLE') return;\n\t\n\t var duration = this.normalizeDuration(timeMetrics.duration);\n\t var position = Math.min(Math.max(timeMetrics.position, 0), duration);\n\t var previousDVRStatus = this.dvrEnabled;\n\t var livePlayback = this.playbackType === 'live';\n\t this.dvrEnabled = livePlayback && duration > this.hlsMinimumDvrSize;\n\t\n\t if (duration === 100 || livePlayback === undefined) {\n\t return;\n\t }\n\t\n\t if (this.dvrEnabled !== previousDVRStatus) {\n\t this.updateSettings();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_SETTINGSUPDATE, this.name);\n\t }\n\t\n\t if (livePlayback && (!this.dvrEnabled || !this.dvrInUse)) {\n\t position = duration;\n\t }\n\t\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, position, duration, this.name);\n\t }\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t if (this.currentState === 'PAUSED') {\n\t this.el.playerResume();\n\t } else if (!this.srcLoaded && this.currentState !== \"PLAYING\") {\n\t this.firstPlay();\n\t } else {\n\t this.el.playerPlay();\n\t }\n\t }\n\t }, {\n\t key: 'getPlaybackType',\n\t value: function getPlaybackType() {\n\t return this.playbackType ? this.playbackType : null;\n\t }\n\t }, {\n\t key: 'getCurrentLevelIndex',\n\t value: function getCurrentLevelIndex() {\n\t return this.el.getCurrentLevel();\n\t }\n\t }, {\n\t key: 'getCurrentLevel',\n\t value: function getCurrentLevel() {\n\t return this.getLevels()[this.getCurrentLevelIndex()];\n\t }\n\t }, {\n\t key: 'getCurrentBitrate',\n\t value: function getCurrentBitrate() {\n\t return this.getCurrentLevel().bitrate;\n\t }\n\t }, {\n\t key: 'setCurrentLevel',\n\t value: function setCurrentLevel(level) {\n\t this.el.playerSetCurrentLevel(level);\n\t }\n\t }, {\n\t key: 'isHighDefinitionInUse',\n\t value: function isHighDefinitionInUse() {\n\t return this.highDefinition;\n\t }\n\t }, {\n\t key: 'getLevels',\n\t value: function getLevels() {\n\t this.levels = this.el.getLevels();\n\t return this.levels;\n\t }\n\t }, {\n\t key: 'setPlaybackState',\n\t value: function setPlaybackState(state) {\n\t if ([\"PLAYING_BUFFERING\", \"PAUSED_BUFFERING\"].indexOf(state) >= 0) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t this.updateCurrentState(state);\n\t } else if ([\"PLAYING\", \"PAUSED\"].indexOf(state) >= 0) {\n\t if ([\"PLAYING_BUFFERING\", \"PAUSED_BUFFERING\", \"IDLE\"].indexOf(this.currentState) >= 0) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t }\n\t this.updateCurrentState(state);\n\t } else if (state === \"IDLE\") {\n\t this.updateCurrentState(state);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 0, this.el.getDuration(), this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ENDED, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'updateCurrentState',\n\t value: function updateCurrentState(state) {\n\t this.currentState = state;\n\t this.updatePlaybackType();\n\t if (state === \"PLAYING\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY, this.name);\n\t } else if (state === \"PAUSED\") {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PAUSE, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'updatePlaybackType',\n\t value: function updatePlaybackType() {\n\t this.playbackType = this.el.getType();\n\t if (this.playbackType) {\n\t this.playbackType = this.playbackType.toLowerCase();\n\t if (this.playbackType === 'vod') {\n\t this.startReportingProgress();\n\t } else {\n\t this.stopReportingProgress();\n\t }\n\t }\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAYBACKSTATE);\n\t }\n\t }, {\n\t key: 'startReportingProgress',\n\t value: function startReportingProgress() {\n\t if (!this.reportingProgress) {\n\t this.reportingProgress = true;\n\t }\n\t }\n\t }, {\n\t key: 'stopReportingProgress',\n\t value: function stopReportingProgress() {\n\t this.reportingProgress = false;\n\t }\n\t }, {\n\t key: 'onFragmentLoaded',\n\t value: function onFragmentLoaded(loadmetrics) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_FRAGMENT_LOADED, loadmetrics);\n\t if (this.reportingProgress && this.el.getPosition) {\n\t var buffered = this.el.getPosition() + this.el.getbufferLength();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PROGRESS, this.el.getPosition(), buffered, this.el.getDuration(), this.name);\n\t }\n\t }\n\t }, {\n\t key: 'firstPlay',\n\t value: function firstPlay() {\n\t var _this3 = this;\n\t\n\t if (this.el.playerLoad) {\n\t this.setFlashSettings(); //ensure flushLiveURLCache will work (#327)\n\t this.el.playerLoad(this.src);\n\t _componentsMediator2['default'].once(this.cid + ':manifestloaded', function () {\n\t return _this3.el.playerPlay();\n\t });\n\t this.srcLoaded = true;\n\t } else {\n\t this._shouldPlayOnBootstrap = true;\n\t }\n\t }\n\t }, {\n\t key: 'volume',\n\t value: function volume(value) {\n\t var _this4 = this;\n\t\n\t if (this.isReady) {\n\t this.el.playerVolume(value);\n\t } else {\n\t this.listenToOnce(this, _baseEvents2['default'].PLAYBACK_BUFFERFULL, function () {\n\t return _this4.volume(value);\n\t });\n\t }\n\t }\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t if (this.playbackType !== 'live' || this.dvrEnabled) {\n\t this.el.playerPause();\n\t if (this.playbackType === 'live' && this.dvrEnabled) {\n\t this.updateDvr(true);\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.el.playerStop();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 0, this.name);\n\t }\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t if (this.currentState) {\n\t return !!this.currentState.match(/playing/i);\n\t }\n\t return false;\n\t }\n\t }, {\n\t key: 'getDuration',\n\t value: function getDuration() {\n\t return this.normalizeDuration(this.el.getDuration());\n\t }\n\t }, {\n\t key: 'normalizeDuration',\n\t value: function normalizeDuration(duration) {\n\t if (this.playbackType === 'live') {\n\t // estimate 10 seconds of buffer time for live streams for seek positions\n\t duration = duration - 10;\n\t }\n\t return duration;\n\t }\n\t }, {\n\t key: 'seek',\n\t value: function seek(time) {\n\t var duration = this.el.getDuration();\n\t if (time > 0) {\n\t time = duration * time / 100;\n\t }\n\t\n\t if (this.playbackType === 'live') {\n\t // seek operations to a time within 5 seconds from live stream will position playhead back to live\n\t var dvrInUse = time >= 0 && duration - time > 5;\n\t if (!dvrInUse) {\n\t time = -1;\n\t }\n\t this.updateDvr(dvrInUse);\n\t }\n\t this.el.playerSeek(time);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, time, duration, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_HIGHDEFINITIONUPDATE);\n\t }\n\t }, {\n\t key: 'updateDvr',\n\t value: function updateDvr(dvrInUse) {\n\t var previousDvrInUse = !!this.dvrInUse;\n\t this.dvrInUse = dvrInUse;\n\t if (this.dvrInUse !== previousDvrInUse) {\n\t this.updateSettings();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_DVR, this.dvrInUse);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_STATS_ADD, { 'dvr': this.dvrInUse });\n\t }\n\t }\n\t }, {\n\t key: 'flashPlaybackError',\n\t value: function flashPlaybackError(code, url, message) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ERROR, { code: code, url: url, message: message });\n\t this.trigger(_baseEvents2['default'].PLAYBACK_STOP);\n\t }\n\t }, {\n\t key: 'manifestLoaded',\n\t value: function manifestLoaded(duration, loadmetrics) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_LOADEDMETADATA, duration, loadmetrics);\n\t }\n\t }, {\n\t key: 'timeUpdate',\n\t value: function timeUpdate(time, duration) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, time, duration, this.name);\n\t }\n\t }, {\n\t key: 'destroy',\n\t value: function destroy() {\n\t this.stopListening();\n\t this.$el.remove();\n\t }\n\t }, {\n\t key: 'setupFirefox',\n\t value: function setupFirefox() {\n\t var $el = this.$('embed');\n\t $el.attr('data-hls', '');\n\t this.setElement($el);\n\t }\n\t }, {\n\t key: 'setupIE',\n\t value: function setupIE(swfPath) {\n\t this.setElement((0, _clapprZepto2['default'])((0, _baseTemplate2['default'])(objectIE)({ cid: this.cid, swfPath: swfPath, baseUrl: this.baseUrl, playbackId: this.uniqueId, callbackName: 'window.Clappr.flashlsCallbacks.' + this.cid })));\n\t }\n\t }, {\n\t key: 'updateSettings',\n\t value: function updateSettings() {\n\t this.settings = (0, _lodashAssign2['default'])({}, this.defaultSettings);\n\t if (this.playbackType === \"vod\" || this.dvrInUse) {\n\t this.settings.left = [\"playpause\", \"position\", \"duration\"];\n\t this.settings.seekEnabled = true;\n\t } else if (this.dvrEnabled) {\n\t this.settings.left = [\"playpause\"];\n\t this.settings.seekEnabled = true;\n\t } else {\n\t this.settings.seekEnabled = false;\n\t }\n\t }\n\t }, {\n\t key: 'setElement',\n\t value: function setElement(element) {\n\t this.$el = element;\n\t this.el = element[0];\n\t }\n\t }, {\n\t key: 'createCallbacks',\n\t value: function createCallbacks() {\n\t var _this5 = this;\n\t\n\t if (!window.Clappr) {\n\t window.Clappr = {};\n\t }\n\t if (!window.Clappr.flashlsCallbacks) {\n\t window.Clappr.flashlsCallbacks = {};\n\t }\n\t this.flashlsEvents = new _flashls_events2['default'](this.cid);\n\t window.Clappr.flashlsCallbacks[this.cid] = function (eventName, args) {\n\t _this5.flashlsEvents[eventName].apply(_this5.flashlsEvents, args);\n\t };\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default']);\n\t var swfPath = (0, _baseTemplate2['default'])(_publicHLSPlayerSwf2['default'])({ baseUrl: this.baseUrl });\n\t if (_componentsBrowser2['default'].isLegacyIE) {\n\t this.setupIE(swfPath);\n\t } else {\n\t this.createCallbacks();\n\t this.$el.html(this.template({ cid: this.cid, swfPath: swfPath, baseUrl: this.baseUrl, playbackId: this.uniqueId, callbackName: 'window.Clappr.flashlsCallbacks.' + this.cid }));\n\t if (_componentsBrowser2['default'].isFirefox) {\n\t this.setupFirefox();\n\t } else if (_componentsBrowser2['default'].isIE) {\n\t this.$('embed').remove();\n\t }\n\t }\n\t this.el.id = this.cid;\n\t this.$el.append(style);\n\t return this;\n\t }\n\t }]);\n\t\n\t return HLS;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = HLS;\n\t\n\tHLS.canPlay = function (resource, mimeType) {\n\t var resourceParts = resource.split('?')[0].match(/.*\\.(.*)$/) || [];\n\t return _componentsBrowser2['default'].hasFlash && (resourceParts.length > 1 && resourceParts[1] == \"m3u8\" || mimeType === 'application/x-mpegURL' || mimeType === 'application/vnd.apple.mpegurl');\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 101 */\n/*!**************************************************!*\\\n !*** ./src/playbacks/html5_audio/html5_audio.js ***!\n \\**************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _lodashFind = __webpack_require__(/*! lodash.find */ 13);\n\t\n\tvar _lodashFind2 = _interopRequireDefault(_lodashFind);\n\t\n\tvar HTML5Audio = (function (_Playback) {\n\t _inherits(HTML5Audio, _Playback);\n\t\n\t _createClass(HTML5Audio, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'html5_audio';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'audio';\n\t }\n\t }, {\n\t key: 'events',\n\t get: function get() {\n\t return {\n\t 'loadedmetadata': 'loadedMetadata',\n\t 'stalled': 'stalled',\n\t 'waiting': 'waiting',\n\t 'timeupdate': 'timeUpdated',\n\t 'ended': 'ended',\n\t 'canplaythrough': 'bufferFull',\n\t 'playing': 'playing',\n\t 'pause': 'paused'\n\t };\n\t }\n\t }]);\n\t\n\t function HTML5Audio(params) {\n\t _classCallCheck(this, HTML5Audio);\n\t\n\t _get(Object.getPrototypeOf(HTML5Audio.prototype), 'constructor', this).call(this, params);\n\t this.options = params;\n\t this.settings = {\n\t left: ['playpause', 'position', 'duration'],\n\t right: ['fullscreen', 'volume'],\n\t 'default': ['seekbar'],\n\t seekEnabled: true\n\t };\n\t this.render();\n\t params.autoPlay && this.play();\n\t }\n\t\n\t _createClass(HTML5Audio, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAY, this.play);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PAUSE, this.pause);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_SEEK, this.seek);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_VOLUME, this.volume);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.stop);\n\t }\n\t }, {\n\t key: 'loadedMetadata',\n\t value: function loadedMetadata(e) {\n\t this.durationChange();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_LOADEDMETADATA, e.target.duration);\n\t }\n\t }, {\n\t key: 'durationChange',\n\t value: function durationChange() {\n\t // we can't figure out if hls resource is VoD or not until it is being loaded or duration has changed.\n\t // that's why we check it again and update media control accordingly.\n\t if (this.getPlaybackType() === 'aod') {\n\t this.settings.left = [\"playpause\", \"position\", \"duration\"];\n\t } else {\n\t this.settings.left = [\"playstop\"];\n\t }\n\t this.settings.seekEnabled = isFinite(this.getDuration());\n\t this.trigger(_baseEvents2['default'].PLAYBACK_SETTINGSUPDATE);\n\t }\n\t }, {\n\t key: 'getPlaybackType',\n\t value: function getPlaybackType() {\n\t return [0, undefined, Infinity].indexOf(this.el.duration) >= 0 ? 'live' : 'aod';\n\t }\n\t }, {\n\t key: 'stalled',\n\t value: function stalled() {\n\t if (this.getPlaybackType() === 'vod' && this.el.readyState < this.el.HAVE_FUTURE_DATA) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'waiting',\n\t value: function waiting() {\n\t if (this.el.readyState < this.el.HAVE_FUTURE_DATA) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t if (this.el.src !== this.options.src) {\n\t this.el.src = this.options.src;\n\t }\n\t this.el.play();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY);\n\t }\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t this.el.pause();\n\t }\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.pause();\n\t this.el.currentTime = 0;\n\t this.el.src = '';\n\t }\n\t }, {\n\t key: 'volume',\n\t value: function volume(value) {\n\t this.el.volume = value / 100;\n\t }\n\t }, {\n\t key: 'mute',\n\t value: function mute() {\n\t this.el.volume = 0;\n\t }\n\t }, {\n\t key: 'unmute',\n\t value: function unmute() {\n\t this.el.volume = 1;\n\t }\n\t }, {\n\t key: 'isMuted',\n\t value: function isMuted() {\n\t return !!this.el.volume;\n\t }\n\t }, {\n\t key: 'ended',\n\t value: function ended() {\n\t this.trigger(_baseEvents2['default'].CONTAINER_TIMEUPDATE, 0);\n\t }\n\t }, {\n\t key: 'seek',\n\t value: function seek(seekBarValue) {\n\t var time = this.el.duration * (seekBarValue / 100);\n\t this.el.currentTime = time;\n\t }\n\t }, {\n\t key: 'getCurrentTime',\n\t value: function getCurrentTime() {\n\t return this.el.currentTime;\n\t }\n\t }, {\n\t key: 'getDuration',\n\t value: function getDuration() {\n\t return this.el.duration;\n\t }\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t return !this.el.paused && !this.el.ended;\n\t }\n\t }, {\n\t key: 'playing',\n\t value: function playing() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY);\n\t }\n\t }, {\n\t key: 'paused',\n\t value: function paused() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PAUSE);\n\t }\n\t }, {\n\t key: 'timeUpdated',\n\t value: function timeUpdated() {\n\t if (this.getPlaybackType() === 'live') {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 1, 1, this.name);\n\t } else {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, this.el.currentTime, this.el.duration, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'bufferFull',\n\t value: function bufferFull() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, this.el.currentTime, this.el.duration, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL);\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_READY, this.name);\n\t return this;\n\t }\n\t }]);\n\t\n\t return HTML5Audio;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = HTML5Audio;\n\t\n\tHTML5Audio.canPlay = function (resource, mimeType) {\n\t var mimetypes = {\n\t 'wav': ['audio/wav'],\n\t 'mp3': ['audio/mp3', 'audio/mpeg;codecs=\"mp3\"'],\n\t 'aac': ['audio/mp4;codecs=\"mp4a.40.5\"'],\n\t 'oga': ['audio/ogg']\n\t };\n\t var resourceParts = resource.split('?')[0].match(/.*\\.(.*)$/) || [];\n\t if (resourceParts.length > 1 && mimetypes[resourceParts[1]] !== undefined) {\n\t var a = document.createElement('audio');\n\t return !!(0, _lodashFind2['default'])(mimetypes[resourceParts[1]], function (ext) {\n\t return !!a.canPlayType(ext).replace(/no/, '');\n\t });\n\t } else if (mimeType && !/m3u8/.test(resourceParts[1])) {\n\t var a = document.createElement('audio');\n\t return !!a.canPlayType(mimeType).replace(/no/, '');\n\t }\n\t return false;\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 102 */\n/*!**************************************************!*\\\n !*** ./src/playbacks/html5_video/html5_video.js ***!\n \\**************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(process) {// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUtils = __webpack_require__(/*! base/utils */ 2);\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 131);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar _publicIndexHtml = __webpack_require__(/*! ./public/index.html */ 144);\n\t\n\tvar _publicIndexHtml2 = _interopRequireDefault(_publicIndexHtml);\n\t\n\tvar _lodashFind = __webpack_require__(/*! lodash.find */ 13);\n\t\n\tvar _lodashFind2 = _interopRequireDefault(_lodashFind);\n\t\n\tvar HTML5Video = (function (_Playback) {\n\t _inherits(HTML5Video, _Playback);\n\t\n\t _createClass(HTML5Video, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'html5_video';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'video';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicIndexHtml2['default']);\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'data-html5-video': ''\n\t };\n\t }\n\t }, {\n\t key: 'events',\n\t get: function get() {\n\t return {\n\t 'timeupdate': 'timeUpdated',\n\t 'progress': 'progress',\n\t 'ended': 'ended',\n\t 'stalled': 'stalled',\n\t 'waiting': 'waiting',\n\t 'canplaythrough': 'bufferFull',\n\t 'loadedmetadata': 'loadedMetadata',\n\t 'canplay': 'ready',\n\t 'durationchange': 'durationChange',\n\t 'error': 'error',\n\t 'playing': 'playing',\n\t 'pause': 'paused'\n\t };\n\t }\n\t }]);\n\t\n\t function HTML5Video(options) {\n\t _classCallCheck(this, HTML5Video);\n\t\n\t _get(Object.getPrototypeOf(HTML5Video.prototype), 'constructor', this).call(this, options);\n\t this.options = options;\n\t this.src = options.src;\n\t this.el.src = options.src;\n\t this.el.loop = options.loop;\n\t this.firstBuffer = true;\n\t this.settings = { 'default': ['seekbar'] };\n\t if (_componentsBrowser2['default'].isSafari) {\n\t this.setupSafari();\n\t } else {\n\t this.el.preload = options.preload ? options.preload : 'metadata';\n\t this.settings.seekEnabled = true;\n\t }\n\t this.settings.left = [\"playpause\", \"position\", \"duration\"];\n\t this.settings.right = [\"fullscreen\", \"volume\"];\n\t }\n\t\n\t _createClass(HTML5Video, [{\n\t key: 'setupSafari',\n\t value: function setupSafari() {\n\t this.el.preload = 'auto';\n\t }\n\t }, {\n\t key: 'loadedMetadata',\n\t value: function loadedMetadata(e) {\n\t this.durationChange();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_LOADEDMETADATA, e.target.duration);\n\t this.checkInitialSeek();\n\t }\n\t }, {\n\t key: 'durationChange',\n\t value: function durationChange() {\n\t // we can't figure out if hls resource is VoD or not until it is being loaded or duration has changed.\n\t // that's why we check it again and update media control accordingly.\n\t if (this.getPlaybackType() === 'vod') {\n\t this.settings.left = [\"playpause\", \"position\", \"duration\"];\n\t } else {\n\t this.settings.left = [\"playstop\"];\n\t }\n\t this.settings.seekEnabled = isFinite(this.getDuration());\n\t this.trigger(_baseEvents2['default'].PLAYBACK_SETTINGSUPDATE);\n\t }\n\t }, {\n\t key: 'getPlaybackType',\n\t value: function getPlaybackType() {\n\t return [0, undefined, Infinity].indexOf(this.el.duration) >= 0 ? 'live' : 'vod';\n\t }\n\t }, {\n\t key: 'isHighDefinitionInUse',\n\t value: function isHighDefinitionInUse() {\n\t return false;\n\t }\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t this.el.play();\n\t }\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t this.el.pause();\n\t }\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.pause();\n\t if (this.el.readyState !== 0) {\n\t this.el.currentTime = 0;\n\t }\n\t }\n\t }, {\n\t key: 'volume',\n\t value: function volume(value) {\n\t this.el.volume = value / 100;\n\t }\n\t }, {\n\t key: 'mute',\n\t value: function mute() {\n\t this.el.volume = 0;\n\t }\n\t }, {\n\t key: 'unmute',\n\t value: function unmute() {\n\t this.el.volume = 1;\n\t }\n\t }, {\n\t key: 'isMuted',\n\t value: function isMuted() {\n\t return !!this.el.volume;\n\t }\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t return !this.el.paused && !this.el.ended;\n\t }\n\t }, {\n\t key: 'playing',\n\t value: function playing() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY);\n\t }\n\t }, {\n\t key: 'paused',\n\t value: function paused() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PAUSE);\n\t }\n\t }, {\n\t key: 'ended',\n\t value: function ended() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ENDED, this.name);\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 0, this.el.duration, this.name);\n\t }\n\t }, {\n\t key: 'stalled',\n\t value: function stalled() {\n\t if (this.getPlaybackType() === 'vod' && this.el.readyState < this.el.HAVE_FUTURE_DATA) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'waiting',\n\t value: function waiting() {\n\t if (this.el.readyState < this.el.HAVE_FUTURE_DATA) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'bufferFull',\n\t value: function bufferFull() {\n\t if (this.options.poster && this.firstBuffer) {\n\t this.firstBuffer = false;\n\t if (!this.isPlaying()) {\n\t this.el.poster = this.options.poster;\n\t }\n\t } else {\n\t this.el.poster = '';\n\t }\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t }\n\t }, {\n\t key: 'error',\n\t value: function error(event) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ERROR, this.el.error, this.name);\n\t }\n\t }, {\n\t key: 'destroy',\n\t value: function destroy() {\n\t this.stop();\n\t this.el.src = '';\n\t this.$el.remove();\n\t }\n\t }, {\n\t key: 'seek',\n\t value: function seek(seekBarValue) {\n\t var time = this.el.duration * (seekBarValue / 100);\n\t this.seekSeconds(time);\n\t }\n\t }, {\n\t key: 'seekSeconds',\n\t value: function seekSeconds(time) {\n\t this.el.currentTime = time;\n\t }\n\t }, {\n\t key: 'checkInitialSeek',\n\t value: function checkInitialSeek() {\n\t var seekTime = (0, _baseUtils.seekStringToSeconds)(window.location.href);\n\t this.seekSeconds(seekTime);\n\t }\n\t }, {\n\t key: 'getCurrentTime',\n\t value: function getCurrentTime() {\n\t return this.el.currentTime;\n\t }\n\t }, {\n\t key: 'getDuration',\n\t value: function getDuration() {\n\t return this.el.duration;\n\t }\n\t }, {\n\t key: 'timeUpdated',\n\t value: function timeUpdated() {\n\t if (this.getPlaybackType() === 'live') {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, 1, 1, this.name);\n\t } else {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, this.el.currentTime, this.el.duration, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'progress',\n\t value: function progress() {\n\t if (!this.el.buffered.length) return;\n\t var bufferedPos = 0;\n\t for (var i = 0; i < this.el.buffered.length; i++) {\n\t if (this.el.currentTime >= this.el.buffered.start(i) && this.el.currentTime <= this.el.buffered.end(i)) {\n\t bufferedPos = i;\n\t break;\n\t }\n\t }\n\t this.checkBufferState(this.el.buffered.end(bufferedPos));\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PROGRESS, this.el.buffered.start(bufferedPos), this.el.buffered.end(bufferedPos), this.el.duration, this.name);\n\t }\n\t }, {\n\t key: 'checkBufferState',\n\t value: function checkBufferState(bufferedPos) {\n\t var playbackPos = this.el.currentTime + 0.05; // 50 ms threshold\n\t if (this.isPlaying() && playbackPos >= bufferedPos) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t this.buffering = true;\n\t } else if (this.buffering) {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t this.buffering = false;\n\t }\n\t }\n\t }, {\n\t key: 'typeFor',\n\t value: function typeFor(src) {\n\t return src.indexOf('.m3u8') > 0 ? 'application/vnd.apple.mpegurl' : 'video/mp4';\n\t }\n\t }, {\n\t key: 'ready',\n\t value: function ready() {\n\t this.trigger(_baseEvents2['default'].PLAYBACK_READY, this.name);\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var _this = this;\n\t\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default']);\n\t this.$el.html(this.template({ src: this.src, type: this.typeFor(this.src) }));\n\t if (this.options.useVideoTagDefaultControls) {\n\t this.$el.attr('controls', 'controls');\n\t }\n\t this.$el.append(style);\n\t process.nextTick(function () {\n\t return _this.options.autoPlay && _this.play();\n\t });\n\t if (this.el.readyState === this.el.HAVE_ENOUGH_DATA) {\n\t this.ready();\n\t }\n\t return this;\n\t }\n\t }]);\n\t\n\t return HTML5Video;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = HTML5Video;\n\t\n\tHTML5Video.canPlay = function (resource, mimeType) {\n\t var mimetypes = {\n\t 'mp4': [\"avc1.42E01E\", \"avc1.58A01E\", \"avc1.4D401E\", \"avc1.64001E\", \"mp4v.20.8\", \"mp4v.20.240\", \"mp4a.40.2\"].map(function (codec) {\n\t return 'video/mp4; codecs=\"' + codec + ', mp4a.40.2\"';\n\t }),\n\t 'ogg': ['video/ogg; codecs=\"theora, vorbis\"', 'video/ogg; codecs=\"dirac\"', 'video/ogg; codecs=\"theora, speex\"'],\n\t '3gpp': ['video/3gpp; codecs=\"mp4v.20.8, samr\"'],\n\t 'webm': ['video/webm; codecs=\"vp8, vorbis\"'],\n\t 'mkv': ['video/x-matroska; codecs=\"theora, vorbis\"'],\n\t 'm3u8': ['application/x-mpegURL']\n\t };\n\t mimetypes['ogv'] = mimetypes['ogg'];\n\t mimetypes['3gp'] = mimetypes['3gpp'];\n\t\n\t var resourceParts = resource.split('?')[0].match(/.*\\.(.*)$/) || [];\n\t if (resourceParts.length > 1 && mimetypes[resourceParts[1]] !== undefined) {\n\t var v = document.createElement('video');\n\t return !!(0, _lodashFind2['default'])(mimetypes[resourceParts[1]], function (ext) {\n\t return !!v.canPlayType(ext).replace(/no/, '');\n\t });\n\t } else if (mimeType) {\n\t var v = document.createElement('video');\n\t return !!v.canPlayType(mimeType).replace(/no/, '');\n\t }\n\t return false;\n\t};\n\t\n\tmodule.exports = HTML5Video;\n\tmodule.exports = exports['default'];\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(/*! ./~/node-libs-browser/~/process/browser.js */ 85)))\n\n/***/ },\n/* 103 */\n/*!********************************************!*\\\n !*** ./src/playbacks/html_img/html_img.js ***!\n \\********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 132);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar HTMLImg = (function (_Playback) {\n\t _inherits(HTMLImg, _Playback);\n\t\n\t _createClass(HTMLImg, [{\n\t key: 'getPlaybackType',\n\t value: function getPlaybackType() {\n\t return null;\n\t }\n\t }, {\n\t key: 'name',\n\t get: function get() {\n\t return 'html_img';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'img';\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'data-html-img': ''\n\t };\n\t }\n\t }]);\n\t\n\t function HTMLImg(params) {\n\t _classCallCheck(this, HTMLImg);\n\t\n\t _get(Object.getPrototypeOf(HTMLImg.prototype), 'constructor', this).call(this, params);\n\t this.el.src = params.src;\n\t }\n\t\n\t _createClass(HTMLImg, [{\n\t key: 'render',\n\t value: function render() {\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default']);\n\t this.$el.append(style);\n\t return this;\n\t }\n\t }]);\n\t\n\t return HTMLImg;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = HTMLImg;\n\t\n\tHTMLImg.canPlay = function (resource) {\n\t return !!resource.match(/(.*).(png|jpg|jpeg|gif|bmp)/);\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 104 */\n/*!**************************************!*\\\n !*** ./src/playbacks/no_op/index.js ***!\n \\**************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./no_op */ 105);\n\n/***/ },\n/* 105 */\n/*!**************************************!*\\\n !*** ./src/playbacks/no_op/no_op.js ***!\n \\**************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUtils = __webpack_require__(/*! base/utils */ 2);\n\t\n\tvar _basePlayback = __webpack_require__(/*! base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 133);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar _publicErrorHtml = __webpack_require__(/*! ./public/error.html */ 145);\n\t\n\tvar _publicErrorHtml2 = _interopRequireDefault(_publicErrorHtml);\n\t\n\tvar NoOp = (function (_Playback) {\n\t _inherits(NoOp, _Playback);\n\t\n\t _createClass(NoOp, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'no_op';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicErrorHtml2['default']);\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return { 'data-no-op': '' };\n\t }\n\t }]);\n\t\n\t function NoOp(options) {\n\t _classCallCheck(this, NoOp);\n\t\n\t _get(Object.getPrototypeOf(NoOp.prototype), 'constructor', this).call(this, options);\n\t }\n\t\n\t _createClass(NoOp, [{\n\t key: 'render',\n\t value: function render() {\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default']);\n\t this.$el.html(this.template());\n\t this.$el.append(style);\n\t this.animate();\n\t this.trigger(_baseEvents2['default'].PLAYBACK_READY, this.name);\n\t return this;\n\t }\n\t }, {\n\t key: 'noise',\n\t value: function noise() {\n\t var idata = this.context.createImageData(this.context.canvas.width, this.context.canvas.height);\n\t\n\t try {\n\t var buffer32 = new Uint32Array(idata.data.buffer);\n\t } catch (err) {\n\t var buffer32 = new Uint32Array(this.context.canvas.width * this.context.canvas.height * 4);\n\t var data = idata.data;\n\t for (var i = 0; i < data.length; i++) {\n\t buffer32[i] = data[i];\n\t }\n\t }\n\t\n\t var len = buffer32.length;\n\t var run = 0;\n\t var color = 0;\n\t var m = Math.random() * 6 + 4;\n\t\n\t for (var i = 0; i < len;) {\n\t if (run < 0) {\n\t run = m * Math.random();\n\t var p = Math.pow(Math.random(), 0.4);\n\t color = 255 * p << 24;\n\t }\n\t run -= 1;\n\t buffer32[i++] = color;\n\t }\n\t this.context.putImageData(idata, 0, 0);\n\t }\n\t }, {\n\t key: 'loop',\n\t value: function loop() {\n\t var _this = this;\n\t\n\t this.noise();\n\t (0, _baseUtils.requestAnimationFrame)(function () {\n\t return _this.loop();\n\t });\n\t }\n\t }, {\n\t key: 'animate',\n\t value: function animate() {\n\t this.canvas = this.$el.find('canvas[data-no-op-canvas]')[0];\n\t this.context = this.canvas.getContext('2d');\n\t this.loop();\n\t }\n\t }]);\n\t\n\t return NoOp;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = NoOp;\n\t\n\tNoOp.canPlay = function (source) {\n\t return true;\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 106 */\n/*!**********************************************!*\\\n !*** ./src/plugins/chromecast/chromecast.js ***!\n \\**********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUi_core_plugin = __webpack_require__(/*! base/ui_core_plugin */ 20);\n\t\n\tvar _baseUi_core_plugin2 = _interopRequireDefault(_baseUi_core_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar _pluginsLog = __webpack_require__(/*! plugins/log */ 21);\n\t\n\tvar _pluginsLog2 = _interopRequireDefault(_pluginsLog);\n\t\n\tvar _chromecast_playback = __webpack_require__(/*! ./chromecast_playback */ 107);\n\t\n\tvar _chromecast_playback2 = _interopRequireDefault(_chromecast_playback);\n\t\n\tvar _publicStyleScss = __webpack_require__(/*! ./public/style.scss */ 134);\n\t\n\tvar _publicStyleScss2 = _interopRequireDefault(_publicStyleScss);\n\t\n\tvar _lodashAssign = __webpack_require__(/*! lodash.assign */ 12);\n\t\n\tvar _lodashAssign2 = _interopRequireDefault(_lodashAssign);\n\t\n\tvar DEVICE_STATE = {\n\t 'IDLE': 0,\n\t 'ACTIVE': 1,\n\t 'WARNING': 2,\n\t 'ERROR': 3\n\t};\n\t\n\tvar DEFAULT_CLAPPR_APP_ID = '9DFB77C0';\n\t\n\tvar Chromecast = (function (_UICorePlugin) {\n\t _inherits(Chromecast, _UICorePlugin);\n\t\n\t _createClass(Chromecast, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'chromecast';\n\t }\n\t }, {\n\t key: 'tagName',\n\t get: function get() {\n\t return 'button';\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'class': 'chromecast-button chromecast-icon icon-cast'\n\t };\n\t }\n\t }]);\n\t\n\t function Chromecast(core) {\n\t _classCallCheck(this, Chromecast);\n\t\n\t _get(Object.getPrototypeOf(Chromecast.prototype), 'constructor', this).call(this, core);\n\t core.options.enableChromecast = core.options.enableChromecast || !!core.options.chromecastAppId;\n\t if (_componentsBrowser2['default'].isChrome && core.options.enableChromecast) {\n\t this.appId = core.options.chromecastAppId;\n\t this.deviceState = DEVICE_STATE.IDLE;\n\t this.embedScript();\n\t } else {\n\t this.disable();\n\t }\n\t }\n\t\n\t _createClass(Chromecast, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.container = this.container || this.core.mediaControl.container;\n\t this.listenTo(this.core.mediaControl, _baseEvents2['default'].MEDIACONTROL_RENDERED, this.settingsUpdate);\n\t this.listenTo(this.core.mediaControl, _baseEvents2['default'].MEDIACONTROL_CONTAINERCHANGED, this.containerChanged);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_TIMEUPDATE, this.containerTimeUpdate);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAY, this.containerPlay);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ENDED, this.sessionStopped);\n\t }\n\t }, {\n\t key: 'enable',\n\t value: function enable() {\n\t _get(Object.getPrototypeOf(Chromecast.prototype), 'enable', this).call(this);\n\t this.render();\n\t this.embedScript();\n\t }\n\t }, {\n\t key: 'embedScript',\n\t value: function embedScript() {\n\t var _this = this;\n\t\n\t if (!window.chrome.cast || !window.chrome.cast.isAvailable) {\n\t var script = document.createElement('script');\n\t script.setAttribute(\"type\", \"text/javascript\");\n\t script.setAttribute(\"async\", \"async\");\n\t script.setAttribute(\"src\", \"https://www.gstatic.com/cv/js/sender/v1/cast_sender.js\");\n\t script.onload = function () {\n\t return _this.bootstrapCastApi();\n\t };\n\t document.body.appendChild(script);\n\t } else {\n\t this.bootstrapCastApi();\n\t }\n\t }\n\t }, {\n\t key: 'bootstrapCastApi',\n\t value: function bootstrapCastApi() {\n\t var _this2 = this;\n\t\n\t if (!window.chrome.cast || !window.chrome.cast.isAvailable) {\n\t window['__onGCastApiAvailable'] = function (loaded, errorInfo) {\n\t if (!!loaded) {\n\t _this2.appId = _this2.appId || DEFAULT_CLAPPR_APP_ID;\n\t _this2.initializeCastApi();\n\t } else {\n\t _pluginsLog2['default'].warn('GCastApi error', errorInfo);\n\t _this2.disable();\n\t }\n\t };\n\t } else {\n\t this.appId = this.appId || DEFAULT_CLAPPR_APP_ID;\n\t this.initializeCastApi();\n\t }\n\t }\n\t }, {\n\t key: 'initializeCastApi',\n\t value: function initializeCastApi() {\n\t var _this3 = this;\n\t\n\t var autoJoinPolicy = chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED;\n\t var sessionRequest = new chrome.cast.SessionRequest(this.appId);\n\t var apiConfig = new chrome.cast.ApiConfig(sessionRequest, function (session) {\n\t return _this3.sessionListener(session);\n\t }, function (e) {\n\t return _this3.receiverListener(e);\n\t }, autoJoinPolicy);\n\t chrome.cast.initialize(apiConfig, function () {\n\t return _pluginsLog2['default'].debug(_this3.name, 'init success');\n\t }, function () {\n\t return _pluginsLog2['default'].warn(_this3.name, 'init error');\n\t });\n\t }\n\t }, {\n\t key: 'sessionListener',\n\t value: function sessionListener(session) {\n\t _pluginsLog2['default'].debug(this.name, 'new session id:' + session.sessionId);\n\t this.newSession(session);\n\t }\n\t }, {\n\t key: 'sessionUpdateListener',\n\t value: function sessionUpdateListener() {\n\t if (this.session) {\n\t _pluginsLog2['default'].debug(this.name, this.session.status);\n\t if (this.session.status === chrome.cast.SessionStatus.STOPPED) {\n\t this.sessionStopped();\n\t this.session = null;\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'receiverListener',\n\t value: function receiverListener(e) {\n\t if (e === chrome.cast.ReceiverAvailability.AVAILABLE) {\n\t _pluginsLog2['default'].debug(this.name, \"receiver found\");\n\t this.show();\n\t } else {\n\t _pluginsLog2['default'].debug(this.name, \"receiver list empty\");\n\t this.hide();\n\t }\n\t }\n\t }, {\n\t key: 'launchSuccess',\n\t value: function launchSuccess(session) {\n\t this.$el.removeClass('icon-cast-connecting');\n\t clearInterval(this.connectAnimInterval);\n\t this.connectAnimInterval = null;\n\t this.$el.removeClass('loading-1 loading-2 loading-3');\n\t this.core.mediaControl.resetKeepVisible();\n\t _pluginsLog2['default'].debug(this.name, 'launch success - session: ' + session.sessionId);\n\t this.newSession(session);\n\t }\n\t }, {\n\t key: 'launchError',\n\t value: function launchError(e) {\n\t _pluginsLog2['default'].debug(this.name, 'error on launch', e);\n\t this.$el.removeClass('icon-cast-connecting');\n\t clearInterval(this.connectAnimInterval);\n\t this.connectAnimInterval = null;\n\t this.$el.removeClass('loading-1 loading-2 loading-3');\n\t this.core.mediaControl.resetKeepVisible();\n\t }\n\t }, {\n\t key: 'loadMediaSuccess',\n\t value: function loadMediaSuccess(how, mediaSession) {\n\t _pluginsLog2['default'].debug(this.name, 'new media session', mediaSession, '(', how, ')');\n\t\n\t this.originalPlayback = this.core.mediaControl.container.playback;\n\t\n\t var options = (0, _lodashAssign2['default'])({}, this.originalPlayback.options, { currentMedia: mediaSession, mediaControl: this.core.mediaControl });\n\t this.src = this.originalPlayback.src;\n\t this.playbackProxy = new _chromecast_playback2['default'](options);\n\t this.playbackProxy.settings = this.originalPlayback.settings;\n\t this.playbackProxy.render();\n\t\n\t this.mediaSession = mediaSession;\n\t\n\t this.originalPlayback.$el.remove();\n\t this.core.mediaControl.container.$el.append(this.playbackProxy.$el);\n\t\n\t var container = this.core.mediaControl.container;\n\t container.stopListening();\n\t container.playback = this.playbackProxy;\n\t container.bindEvents();\n\t container.settingsUpdate();\n\t\n\t if (!this.originalPlaybackPlaying) {\n\t setTimeout(function () {\n\t return container.pause();\n\t }, 100);\n\t }\n\t }\n\t }, {\n\t key: 'loadMediaError',\n\t value: function loadMediaError(e) {\n\t _pluginsLog2['default'].warn(this.name, \"media error\", e);\n\t }\n\t }, {\n\t key: 'newSession',\n\t value: function newSession(session) {\n\t var _this4 = this;\n\t\n\t this.session = session;\n\t this.deviceState = DEVICE_STATE.ACTIVE;\n\t this.$el.removeClass('icon-cast');\n\t this.$el.addClass('icon-cast-connected');\n\t\n\t session.addUpdateListener(function () {\n\t return _this4.sessionUpdateListener();\n\t });\n\t\n\t this.originalPlaybackPlaying = this.core.mediaControl.container.isPlaying();\n\t }\n\t }, {\n\t key: 'sessionStopped',\n\t value: function sessionStopped() {\n\t this.$el.addClass('icon-cast');\n\t this.$el.removeClass('icon-cast-connected');\n\t\n\t var time = this.currentTime;\n\t\n\t var playerState = undefined;\n\t if (this.mediaSession) {\n\t playerState = this.mediaSession.playerState;\n\t this.mediaSession = null;\n\t }\n\t\n\t this.core.load(this.src);\n\t\n\t var container = this.core.mediaControl.container;\n\t\n\t if (this.playbackProxy.isPlaying() || playerState === 'PAUSED') {\n\t container.once(_baseEvents2['default'].CONTAINER_READY, function () {\n\t container.play();\n\t container.playback.seek(100 * time / container.getDuration());\n\t });\n\t }\n\t\n\t this.playbackProxy.stop();\n\t }\n\t }, {\n\t key: 'loadMedia',\n\t value: function loadMedia() {\n\t var _this5 = this;\n\t\n\t this.container.pause();\n\t var src = this.core.mediaControl.container.playback.src;\n\t _pluginsLog2['default'].debug(this.name, \"loading... \" + src);\n\t var mediaInfo = new chrome.cast.media.MediaInfo(src);\n\t mediaInfo.contentType = 'video/mp4';\n\t var request = new chrome.cast.media.LoadRequest(mediaInfo);\n\t request.autoplay = true;\n\t request.currentTime = this.currentTime || 0;\n\t this.session.loadMedia(request, function (mediaSession) {\n\t return _this5.loadMediaSuccess('loadMedia', mediaSession);\n\t }, function (e) {\n\t return _this5.loadMediaError(e);\n\t });\n\t }\n\t }, {\n\t key: 'show',\n\t value: function show() {\n\t this.$el.show();\n\t }\n\t }, {\n\t key: 'hide',\n\t value: function hide() {\n\t this.$el.hide();\n\t }\n\t }, {\n\t key: 'click',\n\t value: function click() {\n\t var _this6 = this;\n\t\n\t chrome.cast.requestSession(function (session) {\n\t return _this6.launchSuccess(session);\n\t }, function (e) {\n\t return _this6.launchError(e);\n\t });\n\t if (!this.session) {\n\t var position = 0;\n\t this.$el.addClass('icon-cast-connecting');\n\t this.connectAnimInterval = setInterval(function () {\n\t _this6.$el.removeClass('loading-1 loading-2 loading-3');\n\t _this6.$el.addClass('loading-' + (position + 1));\n\t position = (position + 1) % 3;\n\t }, 600);\n\t this.core.mediaControl.setKeepVisible();\n\t }\n\t }\n\t }, {\n\t key: 'settingsUpdate',\n\t value: function settingsUpdate() {\n\t this.core.mediaControl.$el.find('.media-control-right-panel[data-media-control]').append(this.$el);\n\t }\n\t }, {\n\t key: 'containerChanged',\n\t value: function containerChanged() {\n\t this.container = this.core.mediaControl.container;\n\t this.stopListening();\n\t this.bindEvents();\n\t this.currentTime = 0;\n\t }\n\t }, {\n\t key: 'containerTimeUpdate',\n\t value: function containerTimeUpdate(position, duration) {\n\t this.currentTime = position;\n\t }\n\t }, {\n\t key: 'playbackTimeUpdate',\n\t value: function playbackTimeUpdate(position, duration) {\n\t this.currentTime = position;\n\t }\n\t }, {\n\t key: 'containerPlay',\n\t value: function containerPlay() {\n\t if (!!this.session && (!this.mediaSession || this.mediaSession.playerStatus === 'IDLE')) {\n\t _pluginsLog2['default'].debug(this.name, 'load media');\n\t this.currentTime = 0;\n\t this.loadMedia();\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var _this7 = this;\n\t\n\t this.$el.click(function () {\n\t return _this7.click();\n\t });\n\t this.core.mediaControl.$el.find('.media-control-right-panel[data-media-control]').append(this.$el);\n\t this.hide();\n\t var style = _baseStyler2['default'].getStyleFor(_publicStyleScss2['default'], { baseUrl: this.core.options.baseUrl });\n\t this.core.$el.append(style);\n\t return this;\n\t }\n\t }]);\n\t\n\t return Chromecast;\n\t})(_baseUi_core_plugin2['default']);\n\t\n\texports['default'] = Chromecast;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 107 */\n/*!*******************************************************!*\\\n !*** ./src/plugins/chromecast/chromecast_playback.js ***!\n \\*******************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseEvents = __webpack_require__(/*! ../../base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _basePlayback = __webpack_require__(/*! ../../base/playback */ 9);\n\t\n\tvar _basePlayback2 = _interopRequireDefault(_basePlayback);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! ../../base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _publicChromecastHtml = __webpack_require__(/*! ./public/chromecast.html */ 146);\n\t\n\tvar _publicChromecastHtml2 = _interopRequireDefault(_publicChromecastHtml);\n\t\n\tvar TICK_INTERVAL = 100;\n\t\n\tvar ChromecastPlayback = (function (_Playback) {\n\t _inherits(ChromecastPlayback, _Playback);\n\t\n\t _createClass(ChromecastPlayback, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'chromecast_playback';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicChromecastHtml2['default']);\n\t }\n\t }]);\n\t\n\t function ChromecastPlayback(options) {\n\t var _this = this;\n\t\n\t _classCallCheck(this, ChromecastPlayback);\n\t\n\t _get(Object.getPrototypeOf(ChromecastPlayback.prototype), 'constructor', this).call(this, options);\n\t this.options = options;\n\t this.src = options.src;\n\t this.currentMedia = options.currentMedia;\n\t this.mediaControl = options.mediaControl;\n\t this.currentMedia.addUpdateListener(function () {\n\t return _this.onMediaStatusUpdate();\n\t });\n\t }\n\t\n\t _createClass(ChromecastPlayback, [{\n\t key: 'render',\n\t value: function render() {\n\t var template = this.template();\n\t this.$el = (0, _clapprZepto2['default'])(template);\n\t this.$el.find('.chromecast-playback-background').css('background-image', 'url(' + this.options.poster + ')');\n\t }\n\t }, {\n\t key: 'play',\n\t value: function play() {\n\t this.currentMedia.play();\n\t }\n\t }, {\n\t key: 'pause',\n\t value: function pause() {\n\t this.stopTimer();\n\t this.currentMedia.pause();\n\t }\n\t }, {\n\t key: 'stop',\n\t value: function stop() {\n\t this.stopTimer();\n\t this.currentMedia.stop();\n\t }\n\t }, {\n\t key: 'seek',\n\t value: function seek(time) {\n\t var _this2 = this;\n\t\n\t this.stopTimer();\n\t var request = new chrome.cast.media.SeekRequest();\n\t request.currentTime = time * this.currentMedia.media.duration / 100;\n\t this.currentMedia.seek(request, function () {\n\t return _this2.startTimer();\n\t }, function () {\n\t return console.log('seek failed');\n\t });\n\t }\n\t }, {\n\t key: 'startTimer',\n\t value: function startTimer() {\n\t var _this3 = this;\n\t\n\t this.timer = setInterval(function () {\n\t return _this3.updateMediaControl();\n\t }, TICK_INTERVAL);\n\t }\n\t }, {\n\t key: 'stopTimer',\n\t value: function stopTimer() {\n\t clearInterval(this.timer);\n\t this.timer = null;\n\t }\n\t }, {\n\t key: 'isPlaying',\n\t value: function isPlaying() {\n\t return this.currentMedia.playerState === 'PLAYING' || this.currentMedia.playerState === 'BUFFERING';\n\t }\n\t }, {\n\t key: 'onMediaStatusUpdate',\n\t value: function onMediaStatusUpdate() {\n\t this.mediaControl.changeTogglePlay();\n\t if (this.isPlaying() && !this.timer) {\n\t this.startTimer();\n\t }\n\t\n\t if (this.currentMedia.playerState === 'BUFFERING') {\n\t this.isBuffering = true;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERING, this.name);\n\t } else if (this.currentMedia.playerState === 'PLAYING') {\n\t if (this.isBuffering) {\n\t this.isBuffering = false;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t }\n\t this.trigger(_baseEvents2['default'].PLAYBACK_PLAY, this.name);\n\t } else if (this.currentMedia.playerState === 'IDLE') {\n\t if (this.isBuffering) {\n\t this.isBuffering = false;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_BUFFERFULL, this.name);\n\t }\n\t this.trigger(_baseEvents2['default'].PLAYBACK_ENDED, this.name);\n\t }\n\t }\n\t }, {\n\t key: 'updateMediaControl',\n\t value: function updateMediaControl() {\n\t var position = this.currentMedia.getEstimatedTime();\n\t var duration = this.currentMedia.media.duration;\n\t this.trigger(_baseEvents2['default'].PLAYBACK_TIMEUPDATE, position, duration, this.name);\n\t }\n\t }, {\n\t key: 'show',\n\t value: function show() {\n\t this.$el.show();\n\t }\n\t }, {\n\t key: 'hide',\n\t value: function hide() {\n\t this.$el.hide();\n\t }\n\t }]);\n\t\n\t return ChromecastPlayback;\n\t})(_basePlayback2['default']);\n\t\n\texports['default'] = ChromecastPlayback;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 108 */\n/*!*****************************************!*\\\n !*** ./src/plugins/chromecast/index.js ***!\n \\*****************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./chromecast.js */ 106);\n\n/***/ },\n/* 109 */\n/*!******************************************************!*\\\n !*** ./src/plugins/click_to_pause/click_to_pause.js ***!\n \\******************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t//Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseContainer_plugin = __webpack_require__(/*! base/container_plugin */ 17);\n\t\n\tvar _baseContainer_plugin2 = _interopRequireDefault(_baseContainer_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _componentsBrowser = __webpack_require__(/*! components/browser */ 7);\n\t\n\tvar _componentsBrowser2 = _interopRequireDefault(_componentsBrowser);\n\t\n\tvar ClickToPausePlugin = (function (_ContainerPlugin) {\n\t _inherits(ClickToPausePlugin, _ContainerPlugin);\n\t\n\t _createClass(ClickToPausePlugin, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'click_to_pause';\n\t }\n\t }]);\n\t\n\t function ClickToPausePlugin(options) {\n\t _classCallCheck(this, ClickToPausePlugin);\n\t\n\t _get(Object.getPrototypeOf(ClickToPausePlugin.prototype), 'constructor', this).call(this, options);\n\t }\n\t\n\t _createClass(ClickToPausePlugin, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t if (!this.options.chromeless && !_componentsBrowser2['default'].isMobile) {\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_CLICK, this.click);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_SETTINGSUPDATE, this.settingsUpdate);\n\t }\n\t }\n\t }, {\n\t key: 'click',\n\t value: function click() {\n\t if (this.container.getPlaybackType() !== 'live' || this.container.isDvrEnabled()) {\n\t if (this.container.isPlaying()) {\n\t this.container.pause();\n\t } else {\n\t this.container.play();\n\t }\n\t }\n\t }\n\t }, {\n\t key: 'settingsUpdate',\n\t value: function settingsUpdate() {\n\t this.container.$el.removeClass('pointer-enabled');\n\t if (this.container.getPlaybackType() !== 'live' || this.container.isDvrEnabled()) {\n\t this.container.$el.addClass('pointer-enabled');\n\t }\n\t }\n\t }]);\n\t\n\t return ClickToPausePlugin;\n\t})(_baseContainer_plugin2['default']);\n\t\n\texports['default'] = ClickToPausePlugin;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 110 */\n/*!*********************************************!*\\\n !*** ./src/plugins/click_to_pause/index.js ***!\n \\*********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./click_to_pause */ 109);\n\n/***/ },\n/* 111 */\n/*!**************************************************!*\\\n !*** ./src/plugins/dvr_controls/dvr_controls.js ***!\n \\**************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUi_core_plugin = __webpack_require__(/*! base/ui_core_plugin */ 20);\n\t\n\tvar _baseUi_core_plugin2 = _interopRequireDefault(_baseUi_core_plugin);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _publicDvr_controlsScss = __webpack_require__(/*! ./public/dvr_controls.scss */ 135);\n\t\n\tvar _publicDvr_controlsScss2 = _interopRequireDefault(_publicDvr_controlsScss);\n\t\n\tvar _publicIndexHtml = __webpack_require__(/*! ./public/index.html */ 147);\n\t\n\tvar _publicIndexHtml2 = _interopRequireDefault(_publicIndexHtml);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar DVRControls = (function (_UICorePlugin) {\n\t _inherits(DVRControls, _UICorePlugin);\n\t\n\t _createClass(DVRControls, [{\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicIndexHtml2['default']);\n\t }\n\t }, {\n\t key: 'name',\n\t get: function get() {\n\t return 'dvr_controls';\n\t }\n\t }, {\n\t key: 'events',\n\t get: function get() {\n\t return {\n\t 'click .live-button': 'click'\n\t };\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'class': 'dvr-controls',\n\t 'data-dvr-controls': ''\n\t };\n\t }\n\t }]);\n\t\n\t function DVRControls(core) {\n\t _classCallCheck(this, DVRControls);\n\t\n\t _get(Object.getPrototypeOf(DVRControls.prototype), 'constructor', this).call(this, core);\n\t this.core = core;\n\t this.settingsUpdate();\n\t }\n\t\n\t _createClass(DVRControls, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.core.mediaControl, _baseEvents2['default'].MEDIACONTROL_RENDERED, this.settingsUpdate);\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_PLAYBACKDVRSTATECHANGED, this.dvrChanged);\n\t }\n\t }, {\n\t key: 'dvrChanged',\n\t value: function dvrChanged(dvrEnabled) {\n\t this.settingsUpdate();\n\t this.core.mediaControl.$el.addClass('live');\n\t if (dvrEnabled) {\n\t this.core.mediaControl.$el.addClass('dvr');\n\t this.core.mediaControl.$el.find('.media-control-indicator[data-position], .media-control-indicator[data-duration]').hide();\n\t } else {\n\t this.core.mediaControl.$el.removeClass('dvr');\n\t }\n\t }\n\t }, {\n\t key: 'click',\n\t value: function click() {\n\t if (!this.core.mediaControl.container.isPlaying()) {\n\t this.core.mediaControl.container.play();\n\t }\n\t if (this.core.mediaControl.$el.hasClass('dvr')) {\n\t this.core.mediaControl.container.setCurrentTime(-1);\n\t }\n\t }\n\t }, {\n\t key: 'settingsUpdate',\n\t value: function settingsUpdate() {\n\t var _this = this;\n\t\n\t this.stopListening();\n\t if (this.shouldRender()) {\n\t this.render();\n\t this.$el.click(function () {\n\t return _this.click();\n\t });\n\t }\n\t this.bindEvents();\n\t }\n\t }, {\n\t key: 'shouldRender',\n\t value: function shouldRender() {\n\t var useDvrControls = this.core.options.useDvrControls === undefined || !!this.core.options.useDvrControls;\n\t return useDvrControls && this.core.mediaControl.container.getPlaybackType() === 'live';\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t this.style = this.style || _baseStyler2['default'].getStyleFor(_publicDvr_controlsScss2['default'], { baseUrl: this.core.options.baseUrl });\n\t\n\t this.$el.html(this.template());\n\t this.$el.append(this.style);\n\t if (this.shouldRender()) {\n\t this.core.mediaControl.$el.addClass('live');\n\t this.core.mediaControl.$('.media-control-left-panel[data-media-control]').append(this.$el);\n\t if (!this.$duration) {\n\t this.$duration = (0, _clapprZepto2['default'])('');\n\t }\n\t this.$duration.html('');\n\t this.core.mediaControl.seekTime.$el.append(this.$duration);\n\t }\n\t return this;\n\t }\n\t }]);\n\t\n\t return DVRControls;\n\t})(_baseUi_core_plugin2['default']);\n\t\n\texports['default'] = DVRControls;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 112 */\n/*!*******************************************!*\\\n !*** ./src/plugins/dvr_controls/index.js ***!\n \\*******************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./dvr_controls */ 111);\n\n/***/ },\n/* 113 */\n/*!****************************************!*\\\n !*** ./src/plugins/favicon/favicon.js ***!\n \\****************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseCore_plugin = __webpack_require__(/*! base/core_plugin */ 23);\n\t\n\tvar _baseCore_plugin2 = _interopRequireDefault(_baseCore_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar Favicon = (function (_CorePlugin) {\n\t _inherits(Favicon, _CorePlugin);\n\t\n\t _createClass(Favicon, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'favicon';\n\t }\n\t }]);\n\t\n\t function Favicon(core) {\n\t _classCallCheck(this, Favicon);\n\t\n\t _get(Object.getPrototypeOf(Favicon.prototype), 'constructor', this).call(this, core);\n\t this.oldIcon = (0, _clapprZepto2['default'])('link[rel=\"shortcut icon\"]');\n\t if (!this.core.options.changeFavicon) {\n\t this.disable();\n\t }\n\t }\n\t\n\t _createClass(Favicon, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.core.mediaControl, _baseEvents2['default'].MEDIACONTROL_CONTAINERCHANGED, this.containerChanged);\n\t if (this.core.mediaControl.container) {\n\t this.containerChanged();\n\t }\n\t }\n\t }, {\n\t key: 'containerChanged',\n\t value: function containerChanged() {\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_PLAY, this.setPlayIcon);\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_PAUSE, this.setPauseIcon);\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_STOP, this.resetIcon);\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_ENDED, this.resetIcon);\n\t this.listenTo(this.core.mediaControl.container, _baseEvents2['default'].CONTAINER_ERROR, this.resetIcon);\n\t }\n\t }, {\n\t key: 'disable',\n\t value: function disable() {\n\t _get(Object.getPrototypeOf(Favicon.prototype), 'disable', this).call(this);\n\t this.resetIcon();\n\t }\n\t }, {\n\t key: 'createIcon',\n\t value: function createIcon(charCode) {\n\t var canvas = (0, _clapprZepto2['default'])('');\n\t canvas[0].width = 32;\n\t canvas[0].height = 32;\n\t var ctx = canvas[0].getContext('2d');\n\t ctx.fillStyle = '#000';\n\t ctx.font = '25px Player';\n\t ctx.fillText(String.fromCharCode(charCode), 5, 26);\n\t var icon = (0, _clapprZepto2['default'])('');\n\t icon.attr('href', canvas[0].toDataURL('image/png'));\n\t return icon;\n\t }\n\t }, {\n\t key: 'setPlayIcon',\n\t value: function setPlayIcon() {\n\t if (!this.playIcon) {\n\t this.playIcon = this.createIcon(0xe001);\n\t }\n\t this.changeIcon(this.playIcon);\n\t }\n\t }, {\n\t key: 'setPauseIcon',\n\t value: function setPauseIcon() {\n\t if (!this.pauseIcon) {\n\t this.pauseIcon = this.createIcon(0xe002);\n\t }\n\t this.changeIcon(this.pauseIcon);\n\t }\n\t }, {\n\t key: 'resetIcon',\n\t value: function resetIcon() {\n\t if (this.currentIcon) {\n\t this.currentIcon.remove();\n\t }\n\t (0, _clapprZepto2['default'])('head').append(this.oldIcon);\n\t }\n\t }, {\n\t key: 'changeIcon',\n\t value: function changeIcon(icon) {\n\t if (icon) {\n\t this.oldIcon.remove();\n\t if (this.currentIcon) {\n\t this.currentIcon.remove();\n\t }\n\t this.currentIcon = icon;\n\t (0, _clapprZepto2['default'])('head').append(icon);\n\t }\n\t }\n\t }]);\n\t\n\t return Favicon;\n\t})(_baseCore_plugin2['default']);\n\t\n\texports['default'] = Favicon;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 114 */\n/*!**************************************!*\\\n !*** ./src/plugins/favicon/index.js ***!\n \\**************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./favicon.js */ 113);\n\n/***/ },\n/* 115 */\n/*!**********************************************************!*\\\n !*** ./src/plugins/google_analytics/google_analytics.js ***!\n \\**********************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseContainer_plugin = __webpack_require__(/*! base/container_plugin */ 17);\n\t\n\tvar _baseContainer_plugin2 = _interopRequireDefault(_baseContainer_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar GoogleAnalytics = (function (_ContainerPlugin) {\n\t _inherits(GoogleAnalytics, _ContainerPlugin);\n\t\n\t _createClass(GoogleAnalytics, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'google_analytics';\n\t }\n\t }]);\n\t\n\t function GoogleAnalytics(options) {\n\t _classCallCheck(this, GoogleAnalytics);\n\t\n\t _get(Object.getPrototypeOf(GoogleAnalytics.prototype), 'constructor', this).call(this, options);\n\t if (options.gaAccount) {\n\t this.account = options.gaAccount;\n\t this.trackerName = options.gaTrackerName ? options.gaTrackerName + \".\" : 'Clappr.';\n\t this.domainName = options.gaDomainName;\n\t this.currentHDState = undefined;\n\t this.embedScript();\n\t }\n\t }\n\t\n\t _createClass(GoogleAnalytics, [{\n\t key: 'embedScript',\n\t value: function embedScript() {\n\t var _this = this;\n\t\n\t if (!window._gat) {\n\t var script = document.createElement('script');\n\t script.setAttribute(\"type\", \"text/javascript\");\n\t script.setAttribute(\"async\", \"async\");\n\t script.setAttribute(\"src\", \"//www.google-analytics.com/ga.js\");\n\t script.onload = function () {\n\t return _this.addEventListeners();\n\t };\n\t document.body.appendChild(script);\n\t } else {\n\t this.addEventListeners();\n\t }\n\t }\n\t }, {\n\t key: 'addEventListeners',\n\t value: function addEventListeners() {\n\t var _this2 = this;\n\t\n\t if (this.container) {\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAY, this.onPlay);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PAUSE, this.onPause);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ENDED, this.onEnded);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERING, this.onBuffering);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERFULL, this.onBufferFull);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ENDED, this.onEnded);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ERROR, this.onError);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAYBACKSTATE, this.onPlaybackChanged);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_VOLUME, function (event) {\n\t return _this2.onVolumeChanged(event);\n\t });\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_SEEK, function (event) {\n\t return _this2.onSeek(event);\n\t });\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_FULL_SCREEN, this.onFullscreen);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_HIGHDEFINITIONUPDATE, this.onHD);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAYBACKDVRSTATECHANGED, this.onDVR);\n\t }\n\t _gaq.push([this.trackerName + '_setAccount', this.account]);\n\t if (!!this.domainName) _gaq.push([this.trackerName + '_setDomainName', this.domainName]);\n\t }\n\t }, {\n\t key: 'onPlay',\n\t value: function onPlay() {\n\t this.push([\"Video\", \"Play\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t this.push([\"Video\", \"Stop\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onEnded',\n\t value: function onEnded() {\n\t this.push([\"Video\", \"Ended\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onBuffering',\n\t value: function onBuffering() {\n\t this.push([\"Video\", \"Buffering\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onBufferFull',\n\t value: function onBufferFull() {\n\t this.push([\"Video\", \"Bufferfull\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onError',\n\t value: function onError() {\n\t this.push([\"Video\", \"Error\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onHD',\n\t value: function onHD() {\n\t var status = this.container.isHighDefinitionInUse() ? \"ON\" : \"OFF\";\n\t if (status !== this.currentHDState) {\n\t this.currentHDState = status;\n\t this.push([\"Video\", \"HD - \" + status, this.container.playback.src]);\n\t }\n\t }\n\t }, {\n\t key: 'onPlaybackChanged',\n\t value: function onPlaybackChanged() {\n\t var type = this.container.getPlaybackType();\n\t if (type !== null) {\n\t this.push([\"Video\", \"Playback Type - \" + type, this.container.playback.src]);\n\t }\n\t }\n\t }, {\n\t key: 'onDVR',\n\t value: function onDVR(dvrInUse) {\n\t var status = dvrInUse ? \"ON\" : \"OFF\";\n\t this.push([\"Interaction\", \"DVR - \" + status, this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onPause',\n\t value: function onPause() {\n\t this.push([\"Video\", \"Pause\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onSeek',\n\t value: function onSeek() {\n\t this.push([\"Video\", \"Seek\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onVolumeChanged',\n\t value: function onVolumeChanged() {\n\t this.push([\"Interaction\", \"Volume\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'onFullscreen',\n\t value: function onFullscreen() {\n\t this.push([\"Interaction\", \"Fullscreen\", this.container.playback.src]);\n\t }\n\t }, {\n\t key: 'push',\n\t value: function push(array) {\n\t var res = [this.trackerName + \"_trackEvent\"].concat(array);\n\t _gaq.push(res);\n\t }\n\t }]);\n\t\n\t return GoogleAnalytics;\n\t})(_baseContainer_plugin2['default']);\n\t\n\texports['default'] = GoogleAnalytics;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 116 */\n/*!***********************************************!*\\\n !*** ./src/plugins/google_analytics/index.js ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./google_analytics */ 115);\n\n/***/ },\n/* 117 */\n/*!********************************!*\\\n !*** ./src/plugins/log/log.js ***!\n \\********************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tvar _baseKibo = __webpack_require__(/*! base/kibo */ 24);\n\t\n\tvar _baseKibo2 = _interopRequireDefault(_baseKibo);\n\t\n\tvar BOLD = 'font-weight: bold; font-size: 13px;';\n\tvar INFO = 'color: #006600;' + BOLD;\n\tvar DEBUG = 'color: #0000ff;' + BOLD;\n\tvar WARN = 'color: #ff8000;' + BOLD;\n\tvar ERROR = 'color: #ff0000;' + BOLD;\n\t\n\tvar LEVEL_DEBUG = 0;\n\tvar LEVEL_INFO = 1;\n\tvar LEVEL_WARN = 2;\n\tvar LEVEL_ERROR = 3;\n\tvar LEVEL_DISABLED = 4;\n\t\n\tvar COLORS = [DEBUG, INFO, WARN, ERROR, ERROR];\n\tvar DESCRIPTIONS = ['debug', 'info', 'warn', 'error', 'disabled'];\n\t\n\tvar Log = (function () {\n\t function Log() {\n\t var _this = this;\n\t\n\t var level = arguments.length <= 0 || arguments[0] === undefined ? LEVEL_INFO : arguments[0];\n\t var offLevel = arguments.length <= 1 || arguments[1] === undefined ? LEVEL_DISABLED : arguments[1];\n\t\n\t _classCallCheck(this, Log);\n\t\n\t this.kibo = new _baseKibo2['default']();\n\t this.kibo.down(['ctrl shift d'], function () {\n\t return _this.onOff();\n\t });\n\t this.BLACKLIST = ['timeupdate', 'playback:timeupdate', 'playback:progress', 'container:hover', 'container:timeupdate', 'container:progress'];\n\t this.level = level;\n\t this.offLevel = offLevel;\n\t }\n\t\n\t _createClass(Log, [{\n\t key: 'debug',\n\t value: function debug(klass) {\n\t this.log(klass, LEVEL_DEBUG, Array.prototype.slice.call(arguments, 1));\n\t }\n\t }, {\n\t key: 'info',\n\t value: function info(klass) {\n\t this.log(klass, LEVEL_INFO, Array.prototype.slice.call(arguments, 1));\n\t }\n\t }, {\n\t key: 'warn',\n\t value: function warn(klass) {\n\t this.log(klass, LEVEL_WARN, Array.prototype.slice.call(arguments, 1));\n\t }\n\t }, {\n\t key: 'error',\n\t value: function error(klass) {\n\t this.log(klass, LEVEL_ERROR, Array.prototype.slice.call(arguments, 1));\n\t }\n\t }, {\n\t key: 'onOff',\n\t value: function onOff() {\n\t if (this.level === this.offLevel) {\n\t this.level = this.previousLevel;\n\t } else {\n\t this.previousLevel = this.level;\n\t this.level = this.offLevel;\n\t }\n\t // handle instances where console.log is unavailable\n\t if (window.console && window.console.log) {\n\t console.log(\"%c[Clappr.Log] set log level to \" + DESCRIPTIONS[this.level], WARN);\n\t }\n\t }\n\t }, {\n\t key: 'level',\n\t value: function level(newLevel) {\n\t this.level = newLevel;\n\t }\n\t }, {\n\t key: 'log',\n\t value: function log(klass, level, message) {\n\t if (this.BLACKLIST.indexOf(message[0]) >= 0) return;\n\t if (level < this.level) return;\n\t\n\t if (!message) {\n\t message = klass;\n\t klass = null;\n\t }\n\t var klassDescription = \"\";\n\t var color = COLORS[level];\n\t if (klass) {\n\t klassDescription = \"[\" + klass + \"]\";\n\t }\n\t if (window.console && window.console.log) {\n\t console.log.apply(console, [\"%c[\" + DESCRIPTIONS[level] + \"]\" + klassDescription, color].concat(message));\n\t }\n\t }\n\t }]);\n\t\n\t return Log;\n\t})();\n\t\n\texports['default'] = Log;\n\t\n\tLog.LEVEL_DEBUG = LEVEL_DEBUG;\n\tLog.LEVEL_INFO = LEVEL_INFO;\n\tLog.LEVEL_WARN = LEVEL_WARN;\n\tLog.LEVEL_ERROR = LEVEL_ERROR;\n\t\n\tLog.getInstance = function () {\n\t if (this._instance === undefined) {\n\t this._instance = new this();\n\t this._instance.previousLevel = this._instance.level;\n\t this._instance.level = this._instance.offLevel;\n\t }\n\t return this._instance;\n\t};\n\t\n\tLog.setLevel = function (level) {\n\t this.getInstance().level = level;\n\t};\n\t\n\tLog.debug = function (klass) {\n\t this.getInstance().debug.apply(this.getInstance(), arguments);\n\t};\n\tLog.info = function (klass) {\n\t this.getInstance().info.apply(this.getInstance(), arguments);\n\t};\n\tLog.warn = function (klass) {\n\t this.getInstance().warn.apply(this.getInstance(), arguments);\n\t};\n\tLog.error = function (klass) {\n\t this.getInstance().error.apply(this.getInstance(), arguments);\n\t};\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 118 */\n/*!**************************************!*\\\n !*** ./src/plugins/poster/poster.js ***!\n \\**************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t//Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUi_container_plugin = __webpack_require__(/*! base/ui_container_plugin */ 18);\n\t\n\tvar _baseUi_container_plugin2 = _interopRequireDefault(_baseUi_container_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _componentsMediator = __webpack_require__(/*! components/mediator */ 11);\n\t\n\tvar _componentsMediator2 = _interopRequireDefault(_componentsMediator);\n\t\n\tvar _publicPosterScss = __webpack_require__(/*! ./public/poster.scss */ 136);\n\t\n\tvar _publicPosterScss2 = _interopRequireDefault(_publicPosterScss);\n\t\n\tvar _publicPosterHtml = __webpack_require__(/*! ./public/poster.html */ 148);\n\t\n\tvar _publicPosterHtml2 = _interopRequireDefault(_publicPosterHtml);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar PosterPlugin = (function (_UIContainerPlugin) {\n\t _inherits(PosterPlugin, _UIContainerPlugin);\n\t\n\t _createClass(PosterPlugin, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'poster';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicPosterHtml2['default']);\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'class': 'player-poster',\n\t 'data-poster': ''\n\t };\n\t }\n\t }, {\n\t key: 'events',\n\t get: function get() {\n\t return {\n\t 'click': 'clicked'\n\t };\n\t }\n\t }]);\n\t\n\t function PosterPlugin(options) {\n\t _classCallCheck(this, PosterPlugin);\n\t\n\t _get(Object.getPrototypeOf(PosterPlugin.prototype), 'constructor', this).call(this, options);\n\t this.options = options;\n\t this.container.disableMediaControl();\n\t this.render();\n\t this.bufferFull = false;\n\t }\n\t\n\t _createClass(PosterPlugin, [{\n\t key: 'load',\n\t value: function load(source) {\n\t this.options.poster = source;\n\t this.render();\n\t }\n\t }, {\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERING, this.onBuffering);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERFULL, this.onBufferfull);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAY, this.onPlay);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ENDED, this.onStop);\n\t _componentsMediator2['default'].on(this.options.playerId + ':' + _baseEvents2['default'].PLAYER_RESIZE, this.updateSize, this);\n\t }\n\t }, {\n\t key: 'stopListening',\n\t value: function stopListening() {\n\t _get(Object.getPrototypeOf(PosterPlugin.prototype), 'stopListening', this).call(this);\n\t _componentsMediator2['default'].off(this.options.playerId + ':' + _baseEvents2['default'].PLAYER_RESIZE, this.updateSize, this);\n\t }\n\t }, {\n\t key: 'onBuffering',\n\t value: function onBuffering() {\n\t this.bufferFull = false;\n\t this.hidePlayButton();\n\t }\n\t }, {\n\t key: 'onPlay',\n\t value: function onPlay() {\n\t if (this.bufferFull) {\n\t this.$el.hide();\n\t this.container.enableMediaControl();\n\t }\n\t }\n\t }, {\n\t key: 'onBufferfull',\n\t value: function onBufferfull() {\n\t this.bufferFull = true;\n\t if (this.container.playback.name === 'html5_video' && !this.container.isPlaying()) return;\n\t this.$el.hide();\n\t this.container.enableMediaControl();\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t this.$el.show();\n\t this.container.disableMediaControl();\n\t this.showPlayButton();\n\t }\n\t }, {\n\t key: 'showPlayButton',\n\t value: function showPlayButton() {\n\t this.$playButton.show();\n\t this.updateSize();\n\t }\n\t }, {\n\t key: 'hidePlayButton',\n\t value: function hidePlayButton() {\n\t this.$playButton.hide();\n\t }\n\t }, {\n\t key: 'clicked',\n\t value: function clicked() {\n\t if (!this.options.chromeless) {\n\t this.container.play();\n\t this.hidePlayButton();\n\t }\n\t return false;\n\t }\n\t }, {\n\t key: 'updateSize',\n\t value: function updateSize() {\n\t if (this.container.playback.name === 'html_img') return;\n\t var height = this.$el.height();\n\t this.$el.css({ fontSize: height });\n\t if (this.$playWrapper.is(':visible')) {\n\t this.$playWrapper.css({ marginTop: -(this.$playWrapper.height() / 2) });\n\t }\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t var _this = this;\n\t\n\t if (this.container.playback.name === 'html_img') return;\n\t var style = _baseStyler2['default'].getStyleFor(_publicPosterScss2['default'], { baseUrl: this.options.baseUrl });\n\t this.$el.html(this.template());\n\t this.$el.append(style);\n\t if (this.options.poster) {\n\t var imgEl = (0, _clapprZepto2['default'])('');\n\t imgEl.css({ 'background-image': 'url(' + this.options.poster + ')' });\n\t this.$el.prepend(imgEl);\n\t }\n\t this.container.$el.append(this.el);\n\t this.$playButton = this.$el.find('.poster-icon');\n\t this.$playWrapper = this.$el.find('.play-wrapper');\n\t setTimeout(function () {\n\t return _this.updateSize();\n\t }, 0);\n\t if (this.options.chromeless) {\n\t this.hidePlayButton();\n\t this.$el.css({ 'cursor': 'initial' });\n\t }\n\t return this;\n\t }\n\t }]);\n\t\n\t return PosterPlugin;\n\t})(_baseUi_container_plugin2['default']);\n\t\n\texports['default'] = PosterPlugin;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 119 */\n/*!***************************************************!*\\\n !*** ./src/plugins/spinner_three_bounce/index.js ***!\n \\***************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./spinner_three_bounce */ 120);\n\n/***/ },\n/* 120 */\n/*!******************************************************************!*\\\n !*** ./src/plugins/spinner_three_bounce/spinner_three_bounce.js ***!\n \\******************************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUi_container_plugin = __webpack_require__(/*! base/ui_container_plugin */ 18);\n\t\n\tvar _baseUi_container_plugin2 = _interopRequireDefault(_baseUi_container_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _publicSpinnerHtml = __webpack_require__(/*! ./public/spinner.html */ 149);\n\t\n\tvar _publicSpinnerHtml2 = _interopRequireDefault(_publicSpinnerHtml);\n\t\n\tvar _publicSpinnerScss = __webpack_require__(/*! ./public/spinner.scss */ 137);\n\t\n\tvar _publicSpinnerScss2 = _interopRequireDefault(_publicSpinnerScss);\n\t\n\tvar SpinnerThreeBouncePlugin = (function (_UIContainerPlugin) {\n\t _inherits(SpinnerThreeBouncePlugin, _UIContainerPlugin);\n\t\n\t _createClass(SpinnerThreeBouncePlugin, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'spinner';\n\t }\n\t }, {\n\t key: 'attributes',\n\t get: function get() {\n\t return {\n\t 'data-spinner': '',\n\t 'class': 'spinner-three-bounce'\n\t };\n\t }\n\t }]);\n\t\n\t function SpinnerThreeBouncePlugin(options) {\n\t _classCallCheck(this, SpinnerThreeBouncePlugin);\n\t\n\t _get(Object.getPrototypeOf(SpinnerThreeBouncePlugin.prototype), 'constructor', this).call(this, options);\n\t this.template = (0, _baseTemplate2['default'])(_publicSpinnerHtml2['default']);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERING, this.onBuffering);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERFULL, this.onBufferFull);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_ERROR, this.onStop);\n\t this.render();\n\t }\n\t\n\t _createClass(SpinnerThreeBouncePlugin, [{\n\t key: 'onBuffering',\n\t value: function onBuffering() {\n\t var _this = this;\n\t\n\t this.showTimeout = setTimeout(function () {\n\t return _this.$el.show();\n\t }, 300);\n\t }\n\t }, {\n\t key: 'onBufferFull',\n\t value: function onBufferFull() {\n\t clearTimeout(this.showTimeout);\n\t this.$el.hide();\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t this.$el.hide();\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t this.$el.html(this.template());\n\t var style = _baseStyler2['default'].getStyleFor(_publicSpinnerScss2['default']);\n\t this.container.$el.append(style);\n\t this.container.$el.append(this.$el);\n\t this.$el.hide();\n\t return this;\n\t }\n\t }]);\n\t\n\t return SpinnerThreeBouncePlugin;\n\t})(_baseUi_container_plugin2['default']);\n\t\n\texports['default'] = SpinnerThreeBouncePlugin;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 121 */\n/*!************************************!*\\\n !*** ./src/plugins/stats/index.js ***!\n \\************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./stats */ 122);\n\n/***/ },\n/* 122 */\n/*!************************************!*\\\n !*** ./src/plugins/stats/stats.js ***!\n \\************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseContainer_plugin = __webpack_require__(/*! base/container_plugin */ 17);\n\t\n\tvar _baseContainer_plugin2 = _interopRequireDefault(_baseContainer_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _clapprZepto = __webpack_require__(/*! clappr-zepto */ 5);\n\t\n\tvar _clapprZepto2 = _interopRequireDefault(_clapprZepto);\n\t\n\tvar StatsPlugin = (function (_ContainerPlugin) {\n\t _inherits(StatsPlugin, _ContainerPlugin);\n\t\n\t _createClass(StatsPlugin, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'stats';\n\t }\n\t }]);\n\t\n\t function StatsPlugin(options) {\n\t _classCallCheck(this, StatsPlugin);\n\t\n\t _get(Object.getPrototypeOf(StatsPlugin.prototype), 'constructor', this).call(this, options);\n\t this.setInitialAttrs();\n\t this.reportInterval = options.reportInterval || 5000;\n\t this.state = \"IDLE\";\n\t }\n\t\n\t _createClass(StatsPlugin, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.container.playback, _baseEvents2['default'].PLAYBACK_PLAY, this.onPlay);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_DESTROYED, this.onStop);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERING, this.onBuffering);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATE_BUFFERFULL, this.onBufferFull);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STATS_ADD, this.onStatsAdd);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_BITRATE, this.onStatsAdd);\n\t this.listenTo(this.container.playback, _baseEvents2['default'].PLAYBACK_STATS_ADD, this.onStatsAdd);\n\t }\n\t }, {\n\t key: 'setInitialAttrs',\n\t value: function setInitialAttrs() {\n\t this.firstPlay = true;\n\t this.startupTime = 0;\n\t this.rebufferingTime = 0;\n\t this.watchingTime = 0;\n\t this.rebuffers = 0;\n\t this.externalMetrics = {};\n\t }\n\t }, {\n\t key: 'onPlay',\n\t value: function onPlay() {\n\t this.state = \"PLAYING\";\n\t this.watchingTimeInit = Date.now();\n\t if (!this.intervalId) {\n\t this.intervalId = setInterval(this.report.bind(this), this.reportInterval);\n\t }\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t clearInterval(this.intervalId);\n\t this.intervalId = undefined;\n\t this.state = \"STOPPED\";\n\t }\n\t }, {\n\t key: 'onBuffering',\n\t value: function onBuffering() {\n\t if (this.firstPlay) {\n\t this.startupTimeInit = Date.now();\n\t } else {\n\t this.rebufferingTimeInit = Date.now();\n\t }\n\t this.state = \"BUFFERING\";\n\t this.rebuffers++;\n\t }\n\t }, {\n\t key: 'onBufferFull',\n\t value: function onBufferFull() {\n\t if (this.firstPlay && !!this.startupTimeInit) {\n\t this.firstPlay = false;\n\t this.startupTime = Date.now() - this.startupTimeInit;\n\t this.watchingTimeInit = Date.now();\n\t } else if (!!this.rebufferingTimeInit) {\n\t this.rebufferingTime += this.getRebufferingTime();\n\t }\n\t this.rebufferingTimeInit = undefined;\n\t this.state = \"PLAYING\";\n\t }\n\t }, {\n\t key: 'getRebufferingTime',\n\t value: function getRebufferingTime() {\n\t return Date.now() - this.rebufferingTimeInit;\n\t }\n\t }, {\n\t key: 'getWatchingTime',\n\t value: function getWatchingTime() {\n\t var totalTime = Date.now() - this.watchingTimeInit;\n\t return totalTime - this.rebufferingTime;\n\t }\n\t }, {\n\t key: 'isRebuffering',\n\t value: function isRebuffering() {\n\t return !!this.rebufferingTimeInit;\n\t }\n\t }, {\n\t key: 'onStatsAdd',\n\t value: function onStatsAdd(metric) {\n\t _clapprZepto2['default'].extend(this.externalMetrics, metric);\n\t }\n\t }, {\n\t key: 'getStats',\n\t value: function getStats() {\n\t var metrics = {\n\t startupTime: this.startupTime,\n\t rebuffers: this.rebuffers,\n\t rebufferingTime: this.isRebuffering() ? this.rebufferingTime + this.getRebufferingTime() : this.rebufferingTime,\n\t watchingTime: this.isRebuffering() ? this.getWatchingTime() - this.getRebufferingTime() : this.getWatchingTime()\n\t };\n\t _clapprZepto2['default'].extend(metrics, this.externalMetrics);\n\t return metrics;\n\t }\n\t }, {\n\t key: 'report',\n\t value: function report() {\n\t this.container.statsReport(this.getStats());\n\t }\n\t }]);\n\t\n\t return StatsPlugin;\n\t})(_baseContainer_plugin2['default']);\n\t\n\texports['default'] = StatsPlugin;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 123 */\n/*!****************************************!*\\\n !*** ./src/plugins/watermark/index.js ***!\n \\****************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tmodule.exports = __webpack_require__(/*! ./watermark */ 124);\n\n/***/ },\n/* 124 */\n/*!********************************************!*\\\n !*** ./src/plugins/watermark/watermark.js ***!\n \\********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t// Copyright 2014 Globo.com Player authors. All rights reserved.\n\t// Use of this source code is governed by a BSD-style\n\t// license that can be found in the LICENSE file.\n\t\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();\n\t\n\tvar _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; desc = parent = getter = undefined; _again = false; if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; continue _function; } } else if ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar _baseUi_container_plugin = __webpack_require__(/*! base/ui_container_plugin */ 18);\n\t\n\tvar _baseUi_container_plugin2 = _interopRequireDefault(_baseUi_container_plugin);\n\t\n\tvar _baseEvents = __webpack_require__(/*! base/events */ 1);\n\t\n\tvar _baseEvents2 = _interopRequireDefault(_baseEvents);\n\t\n\tvar _baseStyler = __webpack_require__(/*! base/styler */ 4);\n\t\n\tvar _baseStyler2 = _interopRequireDefault(_baseStyler);\n\t\n\tvar _baseTemplate = __webpack_require__(/*! base/template */ 6);\n\t\n\tvar _baseTemplate2 = _interopRequireDefault(_baseTemplate);\n\t\n\tvar _publicWatermarkScss = __webpack_require__(/*! ./public/watermark.scss */ 138);\n\t\n\tvar _publicWatermarkScss2 = _interopRequireDefault(_publicWatermarkScss);\n\t\n\tvar _publicWatermarkHtml = __webpack_require__(/*! ./public/watermark.html */ 150);\n\t\n\tvar _publicWatermarkHtml2 = _interopRequireDefault(_publicWatermarkHtml);\n\t\n\tvar WaterMarkPlugin = (function (_UIContainerPlugin) {\n\t _inherits(WaterMarkPlugin, _UIContainerPlugin);\n\t\n\t _createClass(WaterMarkPlugin, [{\n\t key: 'name',\n\t get: function get() {\n\t return 'watermark';\n\t }\n\t }, {\n\t key: 'template',\n\t get: function get() {\n\t return (0, _baseTemplate2['default'])(_publicWatermarkHtml2['default']);\n\t }\n\t }]);\n\t\n\t function WaterMarkPlugin(options) {\n\t _classCallCheck(this, WaterMarkPlugin);\n\t\n\t _get(Object.getPrototypeOf(WaterMarkPlugin.prototype), 'constructor', this).call(this, options);\n\t this.position = options.position || \"bottom-right\";\n\t if (options.watermark) {\n\t this.imageUrl = options.watermark;\n\t this.render();\n\t } else {\n\t this.$el.remove();\n\t }\n\t }\n\t\n\t _createClass(WaterMarkPlugin, [{\n\t key: 'bindEvents',\n\t value: function bindEvents() {\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_PLAY, this.onPlay);\n\t this.listenTo(this.container, _baseEvents2['default'].CONTAINER_STOP, this.onStop);\n\t }\n\t }, {\n\t key: 'onPlay',\n\t value: function onPlay() {\n\t if (!this.hidden) this.$el.show();\n\t }\n\t }, {\n\t key: 'onStop',\n\t value: function onStop() {\n\t this.$el.hide();\n\t }\n\t }, {\n\t key: 'render',\n\t value: function render() {\n\t this.$el.hide();\n\t var templateOptions = { position: this.position, imageUrl: this.imageUrl };\n\t this.$el.html(this.template(templateOptions));\n\t var style = _baseStyler2['default'].getStyleFor(_publicWatermarkScss2['default']);\n\t this.container.$el.append(style);\n\t this.container.$el.append(this.$el);\n\t return this;\n\t }\n\t }]);\n\t\n\t return WaterMarkPlugin;\n\t})(_baseUi_container_plugin2['default']);\n\t\n\texports['default'] = WaterMarkPlugin;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 125 */\n/*!****************************************************!*\\\n !*** ./src/components/container/public/style.scss ***!\n \\****************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \".container[data-container]{position:absolute;background-color:#000;height:100%;width:100%}.container[data-container].pointer-enabled{cursor:pointer}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 126 */\n/*!***********************************************!*\\\n !*** ./src/components/core/public/style.scss ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-player]{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);position:relative;margin:0;padding:0;border:0;font-style:normal;font-weight:400;text-align:center;overflow:hidden;font-size:100%;font-family:lucida grande,tahoma,verdana,arial,sans-serif;text-shadow:0 0 0;box-sizing:border-box}[data-player] a,[data-player] abbr,[data-player] acronym,[data-player] address,[data-player] applet,[data-player] article,[data-player] aside,[data-player] audio,[data-player] b,[data-player] big,[data-player] blockquote,[data-player] canvas,[data-player] caption,[data-player] center,[data-player] cite,[data-player] code,[data-player] dd,[data-player] del,[data-player] details,[data-player] dfn,[data-player] div,[data-player] dl,[data-player] dt,[data-player] em,[data-player] embed,[data-player] fieldset,[data-player] figcaption,[data-player] figure,[data-player] footer,[data-player] form,[data-player] h1,[data-player] h2,[data-player] h3,[data-player] h4,[data-player] h5,[data-player] h6,[data-player] header,[data-player] hgroup,[data-player] i,[data-player] iframe,[data-player] img,[data-player] ins,[data-player] kbd,[data-player] label,[data-player] legend,[data-player] li,[data-player] mark,[data-player] menu,[data-player] nav,[data-player] object,[data-player] ol,[data-player] output,[data-player] p,[data-player] pre,[data-player] q,[data-player] ruby,[data-player] s,[data-player] samp,[data-player] section,[data-player] small,[data-player] span,[data-player] strike,[data-player] strong,[data-player] sub,[data-player] summary,[data-player] sup,[data-player] table,[data-player] tbody,[data-player] td,[data-player] tfoot,[data-player] th,[data-player] thead,[data-player] time,[data-player] tr,[data-player] tt,[data-player] u,[data-player] ul,[data-player] var,[data-player] video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}[data-player] table{border-collapse:collapse;border-spacing:0}[data-player] caption,[data-player] td,[data-player] th{text-align:left;font-weight:400;vertical-align:middle}[data-player] blockquote,[data-player] q{quotes:none}[data-player] blockquote:after,[data-player] blockquote:before,[data-player] q:after,[data-player] q:before{content:\\\"\\\";content:none}[data-player] a img{border:none}[data-player]:focus{outline:0}[data-player] *{max-width:none;box-sizing:inherit;float:none}[data-player] div{display:block}[data-player].fullscreen{width:100%!important;height:100%!important}[data-player].nocursor{cursor:none}.clappr-style{display:none!important}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 127 */\n/*!****************************************************************!*\\\n !*** ./src/components/media_control/public/media-control.scss ***!\n \\****************************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"@font-face{font-family:Player;src:url(\" + __webpack_require__(/*! ./Player-Regular.eot */ 19) + \");src:url(\" + __webpack_require__(/*! ./Player-Regular.eot */ 19) + \"?#iefix) format(\\\"embedded-opentype\\\"),url(\" + __webpack_require__(/*! ./Player-Regular.ttf */ 35) + \") format(\\\"truetype\\\"),url(\" + __webpack_require__(/*! ./Player-Regular.svg */ 34) + \"#player) format(\\\"svg\\\")}.media-control-notransition{-webkit-transition:none!important;transition:none!important}.media-control[data-media-control]{position:absolute;width:100%;height:100%;z-index:9999;pointer-events:none}.media-control[data-media-control].dragging{pointer-events:auto}.media-control[data-media-control].dragging,.media-control[data-media-control].dragging *{cursor:-webkit-grabbing!important;cursor:grabbing!important}.media-control[data-media-control] .media-control-background[data-background]{position:absolute;height:40%;width:100%;bottom:0;background-image:-owg(linear-gradient(transparent,rgba(0,0,0,.9)));background-image:-webkit(linear-gradient(transparent,rgba(0,0,0,.9)));background-image:-moz(linear-gradient(transparent,rgba(0,0,0,.9)));background-image:-o(linear-gradient(transparent,rgba(0,0,0,.9)));background-image:linear-gradient(transparent,rgba(0,0,0,.9));-webkit-transition:opacity .6s ease-out;transition:opacity .6s ease-out}.media-control[data-media-control] .media-control-icon{font-family:Player;font-weight:400;font-style:normal;font-size:26px;line-height:2pc;letter-spacing:0;speak:none;color:#fff;opacity:.5;vertical-align:middle;text-align:left;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transition:all .1s ease;transition:all .1s ease}.media-control[data-media-control] .media-control-icon:hover{color:#fff;opacity:.75;text-shadow:hsla(0,0%,100%,.8) 0 0 5px}.media-control[data-media-control].media-control-hide .media-control-background[data-background]{opacity:0}.media-control[data-media-control].media-control-hide .media-control-layer[data-controls]{bottom:-50px}.media-control[data-media-control].media-control-hide .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-scrubber[data-seekbar]{opacity:0}.media-control[data-media-control] .media-control-layer[data-controls]{position:absolute;bottom:7px;width:100%;height:2pc;vertical-align:middle;pointer-events:auto;-webkit-transition:bottom .4s ease-out;transition:bottom .4s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-left-panel[data-media-control]{position:absolute;top:0;left:4px;height:100%}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-center-panel[data-media-control]{height:100%;text-align:center;line-height:2pc}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-right-panel[data-media-control]{position:absolute;top:0;right:4px;height:100%}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button{background-color:transparent;border:0;margin:0 6px;padding:0;cursor:pointer;display:inline-block}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button:focus{outline:0}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-play]{float:left;height:100%;font-size:20px}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-play]:before{content:\\\"\\\\E001\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-pause]{float:left;height:100%;font-size:20px}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-pause]:before{content:\\\"\\\\E002\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-stop]{float:left;height:100%;font-size:20px}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-stop]:before{content:\\\"\\\\E003\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-fullscreen]{float:right;background-color:transparent;border:0;height:100%}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-fullscreen]:before{content:\\\"\\\\E006\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-fullscreen].shrink:before{content:\\\"\\\\E007\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-hd-indicator]{cursor:default;float:right;background-color:transparent;border:0;height:100%;opacity:0}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-hd-indicator]:before{content:\\\"\\\\E008\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-hd-indicator].enabled{opacity:1}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-hd-indicator].enabled:hover{opacity:1;text-shadow:none}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playpause]{float:left;height:100%;font-size:20px}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playpause]:before{content:\\\"\\\\E001\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playpause].playing:before{content:\\\"\\\\E002\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playpause].paused:before{content:\\\"\\\\E001\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playstop]{float:left;height:100%;font-size:20px}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playstop]:before{content:\\\"\\\\E001\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playstop].playing:before{content:\\\"\\\\E003\\\"}.media-control[data-media-control] .media-control-layer[data-controls] button.media-control-button[data-playstop].stopped:before{content:\\\"\\\\E001\\\"}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-indicator[data-duration],.media-control[data-media-control] .media-control-layer[data-controls] .media-control-indicator[data-position]{display:inline-block;font-size:10px;color:#fff;cursor:default;line-height:2pc;position:relative}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-indicator[data-position]{margin-left:6px}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-indicator[data-duration]{color:hsla(0,0%,100%,.5);margin-right:6px}.media-control[data-media-control] .media-control-layer[data-controls] .media-control-indicator[data-duration]:before{content:\\\"|\\\";margin:0 3px}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar]{position:absolute;top:-20px;left:0;display:inline-block;vertical-align:middle;width:100%;height:25px;cursor:pointer}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar]{width:100%;height:1px;position:relative;top:9pt;background-color:#666}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-fill-1[data-seekbar]{position:absolute;top:0;left:0;width:0;height:100%;background-color:#c2c2c2;-webkit-transition:all .1s ease-out;transition:all .1s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-fill-2[data-seekbar]{position:absolute;top:0;left:0;width:0;height:100%;background-color:#005aff;-webkit-transition:all .1s ease-out;transition:all .1s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-hover[data-seekbar]{opacity:0;position:absolute;top:-3px;width:5px;height:7px;background-color:hsla(0,0%,100%,.5);-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar]:hover .bar-background[data-seekbar] .bar-hover[data-seekbar]{opacity:1}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar].seek-disabled{cursor:default}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar].seek-disabled:hover .bar-background[data-seekbar] .bar-hover[data-seekbar]{opacity:0}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-scrubber[data-seekbar]{position:absolute;top:2px;left:0;width:20px;height:20px;opacity:1;-webkit-transition:all .1s ease-out;transition:all .1s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-scrubber[data-seekbar] .bar-scrubber-icon[data-seekbar]{position:absolute;left:6px;top:6px;width:8px;height:8px;border-radius:10px;box-shadow:0 0 0 6px hsla(0,0%,100%,.2);background-color:#fff}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume]{float:right;display:inline-block;height:2pc;cursor:pointer;margin:0 6px;box-sizing:border-box}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume]{float:left;bottom:0}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume]{background-color:transparent;border:0;box-sizing:content-box;width:1pc;height:2pc;margin-right:6px;opacity:1}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume]:hover{opacity:1}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume]:before{content:\\\"\\\\E004\\\"}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume].muted{opacity:.5}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume].muted:hover{opacity:.7}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .drawer-icon-container[data-volume] .drawer-icon[data-volume].muted:before{content:\\\"\\\\E005\\\"}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume]{float:left;position:relative;top:6px;width:42px;height:18px;padding:3px 0;overflow:hidden;-webkit-transition:width .2s ease-out;transition:width .2s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume] .segmented-bar-element[data-volume]{float:left;width:4px;padding-left:2px;height:9pt;opacity:.5;box-shadow:inset 2px 0 0 #fff;-webkit-transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume] .segmented-bar-element[data-volume].fill{box-shadow:inset 2px 0 0 #fff;opacity:1}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume] .segmented-bar-element[data-volume]:nth-of-type(1){padding-left:0}.media-control[data-media-control] .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume] .segmented-bar-element[data-volume]:hover{-webkit-transform:scaleY(1.5);-ms-transform:scaleY(1.5);transform:scaleY(1.5)}.media-control[data-media-control].w320 .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume].volume-bar-hide{height:9pt;top:9px;padding:0;width:0}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 128 */\n/*!********************************************************!*\\\n !*** ./src/components/seek_time/public/seek_time.scss ***!\n \\********************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \".seek-time[data-seek-time]{position:absolute;white-space:nowrap;width:auto;height:20px;line-height:20px;bottom:55px;background-color:rgba(2,2,2,.5);z-index:9999;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.seek-time[data-seek-time].hidden[data-seek-time]{opacity:0}.seek-time[data-seek-time] span[data-seek-time]{position:relative;color:#fff;font-size:10px;padding-left:7px;padding-right:7px}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 129 */\n/*!***********************************************!*\\\n !*** ./src/playbacks/flash/public/style.scss ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-flash]{position:absolute;height:100%;width:100%;background-color:#000;display:block;pointer-events:none}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 130 */\n/*!*********************************************!*\\\n !*** ./src/playbacks/hls/public/style.scss ***!\n \\*********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-hls]{position:absolute;display:block;pointer-events:none;top:0}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 131 */\n/*!*****************************************************!*\\\n !*** ./src/playbacks/html5_video/public/style.scss ***!\n \\*****************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-html5-video]{position:absolute;height:100%;width:100%;display:block}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 132 */\n/*!**************************************************!*\\\n !*** ./src/playbacks/html_img/public/style.scss ***!\n \\**************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-html-img]{max-width:100%;max-height:100%}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 133 */\n/*!***********************************************!*\\\n !*** ./src/playbacks/no_op/public/style.scss ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-no-op]{z-index:1000;position:absolute;height:100%;width:100%;text-align:center}[data-no-op] p[data-no-op-msg]{position:absolute;font-size:25px;top:40%;color:#fff}[data-no-op] canvas[data-no-op-canvas]{background-color:#777;height:100%;width:100%}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 134 */\n/*!**************************************************!*\\\n !*** ./src/plugins/chromecast/public/style.scss ***!\n \\**************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \".chromecast-playback{height:100%;width:100%}.chromecast-playback .chromecast-playback-background,.chromecast-playback .chromecast-playback-overlay{position:absolute;height:100%;width:100%}.chromecast-playback .chromecast-playback-background{background-size:contain}.chromecast-playback .chromecast-playback-overlay{background-color:#000;opacity:.4}@font-face{font-family:chromecast;src:url(\" + __webpack_require__(/*! ./chromecast.eot?-2rwb6t */ 154) + \");src:url(\" + __webpack_require__(/*! ./chromecast.eot */ 153) + \"?#iefix-2rwb6t) format(\\\"embedded-opentype\\\"),url(\" + __webpack_require__(/*! ./chromecast.ttf?-2rwb6t */ 155) + \") format(\\\"truetype\\\"),url(\" + __webpack_require__(/*! ./chromecast.svg?-2rwb6t */ 139) + \"#chromecast) format(\\\"svg\\\");font-weight:400;font-style:normal}.chromecast-button{background:transparent;border:0;width:2pc;height:26px;font-size:22px;line-height:26px;letter-spacing:0;color:#fff;opacity:.5;vertical-align:middle;text-align:left;cursor:pointer;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transition:all .1s ease;transition:all .1s ease}.chromecast-button:hover{opacity:.75;text-shadow:hsla(0,0%,100%,.8) 0 0 5px}.chromecast-button:focus{outline:0}.chromecast-icon{font-family:chromecast;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-cast:before{content:\\\"\\\\\\\\e001\\\"}.icon-cast-connecting.loading-1:before{content:\\\"\\\\\\\\e003\\\"}.icon-cast-connecting.loading-2:before{content:\\\"\\\\\\\\e004\\\"}.icon-cast-connecting.loading-3:before{content:\\\"\\\\\\\\e001\\\"}.icon-cast-connected:before{content:\\\"\\\\\\\\e002\\\"}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 135 */\n/*!***********************************************************!*\\\n !*** ./src/plugins/dvr_controls/public/dvr_controls.scss ***!\n \\***********************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:local(\\\"Roboto\\\"),local(\\\"Roboto-Regular\\\"),url(\" + __webpack_require__(/*! ./Roboto.ttf */ 156) + \") format(\\\"truetype\\\")}.dvr-controls[data-dvr-controls]{display:inline-block;float:left;color:#fff;line-height:2pc;font-size:10px;font-weight:700;margin-left:6px}.dvr-controls[data-dvr-controls] .live-info{cursor:default;font-family:Roboto,Open Sans,Arial,sans-serif}.dvr-controls[data-dvr-controls] .live-info:before{content:\\\"\\\";display:inline-block;position:relative;width:7px;height:7px;border-radius:3.5px;margin-right:3.5px;background-color:#ff0101}.dvr-controls[data-dvr-controls] .live-info.disabled{opacity:.3}.dvr-controls[data-dvr-controls] .live-info.disabled:before{background-color:#fff}.dvr-controls[data-dvr-controls] .live-button{cursor:pointer;outline:0;display:none;border:0;color:#fff;background-color:transparent;height:2pc;padding:0;opacity:.7;font-family:Roboto,Open Sans,Arial,sans-serif;-webkit-transition:all .1s ease;transition:all .1s ease}.dvr-controls[data-dvr-controls] .live-button:before{content:\\\"\\\";display:inline-block;position:relative;width:7px;height:7px;border-radius:3.5px;margin-right:3.5px;background-color:#fff}.dvr-controls[data-dvr-controls] .live-button:hover{opacity:1;text-shadow:hsla(0,0%,100%,.75) 0 0 5px}.dvr .dvr-controls[data-dvr-controls] .live-info{display:none}.dvr .dvr-controls[data-dvr-controls] .live-button{display:block}.dvr.media-control.live[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-fill-2[data-seekbar]{background-color:#005aff}.media-control.live[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-fill-2[data-seekbar]{background-color:#ff0101}.seek-time[data-seek-time] span[data-duration]{position:relative;color:hsla(0,0%,100%,.5);font-size:10px;padding-right:7px}.seek-time[data-seek-time] span[data-duration]:before{content:\\\"|\\\";margin-right:7px}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 136 */\n/*!***********************************************!*\\\n !*** ./src/plugins/poster/public/poster.scss ***!\n \\***********************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"@font-face{font-family:Player;src:url(\" + __webpack_require__(/*! ../../../components/media_control/public/Player-Regular.eot */ 19) + \");src:url(\" + __webpack_require__(/*! ../../../components/media_control/public/Player-Regular.eot */ 19) + \"?#iefix) format(\\\"embedded-opentype\\\"),url(\" + __webpack_require__(/*! ../../../components/media_control/public/Player-Regular.ttf */ 35) + \") format(\\\"truetype\\\"),url(\" + __webpack_require__(/*! ../../../components/media_control/public/Player-Regular.svg */ 34) + \"#player) format(\\\"svg\\\")}.player-poster[data-poster]{cursor:pointer;position:absolute;height:100%;width:100%;z-index:998;top:0;left:0}.player-poster[data-poster] .poster-background[data-poster]{width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:50% 50%}.player-poster[data-poster] .play-wrapper[data-poster]{position:absolute;width:100%;height:25%;line-height:100%;font-size:25%;top:50%;text-align:center}.player-poster[data-poster] .play-wrapper[data-poster] .poster-icon[data-poster]{font-family:Player;font-weight:400;font-style:normal;line-height:1;letter-spacing:0;speak:none;color:#fff;opacity:.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transition:opacity text-shadow .1s;-webkit-transition-delay:ease;transition:opacity text-shadow .1s ease}.player-poster[data-poster] .play-wrapper[data-poster] .poster-icon[data-poster].play[data-poster]:before{content:\\\"\\\\E001\\\"}.player-poster[data-poster] .play-wrapper[data-poster] .poster-icon[data-poster]:hover{opacity:1;text-shadow:hsla(0,0%,100%,.8) 0 0 15px}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 137 */\n/*!**************************************************************!*\\\n !*** ./src/plugins/spinner_three_bounce/public/spinner.scss ***!\n \\**************************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \".spinner-three-bounce[data-spinner]{position:absolute;margin:0 auto;width:70px;text-align:center;z-index:999;top:47%;left:0;right:0;margin-left:auto;margin-right:auto}.spinner-three-bounce[data-spinner]>div{width:18px;height:18px;background-color:#fff;border-radius:100%;display:inline-block;-webkit-animation:bouncedelay 1.4s infinite ease-in-out;animation:bouncedelay 1.4s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.spinner-three-bounce[data-spinner] [data-bounce1]{-webkit-animation-delay:-.32s;animation-delay:-.32s}.spinner-three-bounce[data-spinner] [data-bounce2]{-webkit-animation-delay:-.16s;animation-delay:-.16s}@-webkit-keyframes bouncedelay{0%,80%,to{-webkit-transform:scale(0);transform:scale(0)}40%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bouncedelay{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 138 */\n/*!*****************************************************!*\\\n !*** ./src/plugins/watermark/public/watermark.scss ***!\n \\*****************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\texports = module.exports = __webpack_require__(/*! ./../../../../~/css-loader/lib/css-base.js */ 3)();\n\t// imports\n\t\n\t\n\t// module\n\texports.push([module.id, \"[data-watermark]{position:absolute;min-width:70px;max-width:200px;width:12%;text-align:center;z-index:10}[data-watermark] img{max-width:100%}[data-watermark-bottom-left]{bottom:10px;left:10px}[data-watermark-bottom-right]{bottom:10px;right:42px}[data-watermark-top-left]{top:10px;left:10px}[data-watermark-top-right]{top:10px;right:37px}\", \"\"]);\n\t\n\t// exports\n\n\n/***/ },\n/* 139 */\n/*!**************************************************************!*\\\n !*** ./src/plugins/chromecast/public/chromecast.svg?-2rwb6t ***!\n \\**************************************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\tmodule.exports = __webpack_require__.p + \"57e740a84980042b2b659da22fc9c4ab.svg\"\n\n/***/ },\n/* 140 */\n/*!****************************************************************!*\\\n !*** ./src/components/media_control/public/media-control.html ***!\n \\****************************************************************/\n/***/ function(module, exports) {\n\n\tmodule.exports = \"\\n