{"version":3,"sources":["webpack://Player/webpack/bootstrap","webpack://Player/./src/player.js","webpack://Player/./node_modules/es5-ext/object/is-value.js","webpack://Player/./node_modules/type/value/is.js","webpack://Player/./src/utils/util.js","webpack://Player/./src/error.js","webpack://Player/./src/utils/sniffer.js","webpack://Player/./src/controls/collect.js","webpack://Player/./src/index.js","webpack://Player/./src/proxy.js","webpack://Player/./node_modules/event-emitter/index.js","webpack://Player/./node_modules/d/index.js","webpack://Player/./node_modules/type/plain-function/is.js","webpack://Player/./node_modules/type/function/is.js","webpack://Player/./node_modules/type/prototype/is.js","webpack://Player/./node_modules/type/object/is.js","webpack://Player/./node_modules/es5-ext/object/assign/index.js","webpack://Player/./node_modules/es5-ext/object/assign/is-implemented.js","webpack://Player/./node_modules/es5-ext/object/assign/shim.js","webpack://Player/./node_modules/es5-ext/object/keys/index.js","webpack://Player/./node_modules/es5-ext/object/keys/is-implemented.js","webpack://Player/./node_modules/es5-ext/object/keys/shim.js","webpack://Player/./node_modules/es5-ext/function/noop.js","webpack://Player/./node_modules/es5-ext/object/valid-value.js","webpack://Player/./node_modules/es5-ext/object/normalize-options.js","webpack://Player/./node_modules/es5-ext/string/#/contains/index.js","webpack://Player/./node_modules/es5-ext/string/#/contains/is-implemented.js","webpack://Player/./node_modules/es5-ext/string/#/contains/shim.js","webpack://Player/./node_modules/es5-ext/object/valid-callable.js","webpack://Player/./src/utils/database.js","webpack://Player/./node_modules/draggabilly/draggabilly.js","webpack://Player/./node_modules/get-size/get-size.js","webpack://Player/./node_modules/unidragger/unidragger.js","webpack://Player/./node_modules/unipointer/unipointer.js","webpack://Player/./node_modules/ev-emitter/ev-emitter.js","webpack://Player/./src/utils/url.js","webpack://Player/./node_modules/downloadjs/download.js","webpack://Player/./src/controls/volume.js","webpack://Player/./src/controls/start.js","webpack://Player/./src/controls/screenShot.js","webpack://Player/./src/controls/rotate.js","webpack://Player/./src/controls/replay.js","webpack://Player/./src/controls/playNext.js","webpack://Player/./src/controls/play.js","webpack://Player/./src/controls/pip.js","webpack://Player/./src/controls/pc.js","webpack://Player/./src/controls/mobile.js","webpack://Player/./src/controls/memoryPlay.js","webpack://Player/./src/controls/logger.js","webpack://Player/./src/controls/localPreview.js","webpack://Player/./src/controls/i18n.js","webpack://Player/./src/controls/fullscreen.js","webpack://Player/./src/controls/download.js","webpack://Player/./src/controls/definition.js","webpack://Player/./src/controls/danmu.js","webpack://Player/./src/controls/cssFullscreen.js","webpack://Player/./src/skin/index.js","webpack://Player/./src/skin/style/index.scss?a7b1","webpack://Player/./src/skin/style/index.scss","webpack://Player/./node_modules/css-loader/lib/css-base.js","webpack://Player/./node_modules/style-loader/lib/addStyles.js","webpack://Player/./node_modules/style-loader/lib/urls.js","webpack://Player/./src/skin/controls/enter.js","webpack://Player/./src/skin/controls/play.js","webpack://Player/./src/skin/assets/play.svg","webpack://Player/./src/skin/assets/pause.svg","webpack://Player/./src/skin/controls/start.js","webpack://Player/./src/skin/assets/startPlay.svg","webpack://Player/./src/skin/assets/startPause.svg","webpack://Player/./src/skin/controls/poster.js","webpack://Player/./src/skin/controls/flex.js","webpack://Player/./src/skin/controls/fullscreen.js","webpack://Player/./src/skin/assets/requestFull.svg","webpack://Player/./src/skin/assets/exitFull.svg","webpack://Player/./src/skin/controls/cssFullscreen.js","webpack://Player/./src/skin/assets/requestCssFull.svg","webpack://Player/./src/skin/assets/exitCssFull.svg","webpack://Player/./src/skin/controls/volume.js","webpack://Player/./src/skin/assets/volumeMuted.svg","webpack://Player/./src/skin/assets/volumeSmall.svg","webpack://Player/./src/skin/assets/volumeLarge.svg","webpack://Player/./src/skin/controls/definition.js","webpack://Player/./src/skin/controls/loading.js","webpack://Player/./src/skin/assets/loading.svg","webpack://Player/./src/skin/controls/progress.js","webpack://Player/./src/skin/controls/time.js","webpack://Player/./src/skin/controls/replay.js","webpack://Player/./src/skin/assets/replay.svg","webpack://Player/./src/skin/controls/playbackRate.js","webpack://Player/./src/skin/controls/localPreview.js","webpack://Player/./src/skin/controls/download.js","webpack://Player/./src/skin/assets/download.svg","webpack://Player/./src/skin/controls/danmu.js","webpack://Player/./node_modules/danmu.js/dist/index.js","webpack://Player/(webpack)/buildin/module.js","webpack://Player/./src/skin/assets/panel.svg","webpack://Player/./src/skin/controls/pip.js","webpack://Player/./src/skin/controls/playNext.js","webpack://Player/./src/skin/assets/playNext.svg","webpack://Player/./src/skin/controls/rotate.js","webpack://Player/./src/skin/assets/rotate.svg","webpack://Player/./src/skin/controls/screenShot.js","webpack://Player/./src/skin/controls/textTrack.js","webpack://Player/./src/skin/controls/error.js","webpack://Player/./src/skin/controls/memoryPlay.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","_url","_package","Player","options","_classCallCheck","this","_this","_possibleConstructorReturn","__proto__","getPrototypeOf","config","util","deepCopy","width","height","ignores","whitelist","lang","document","documentElement","getAttribute","navigator","language","toLocaleLowerCase","inactive","volume","controls","controlsList","version","userTimer","waitTimer","database","Database","history","isProgressMoving","root","findDom","id","createDom","unselectable","onselectstart","el","nodeType","emit","Errors","vid","line","handle","msg","addClass","sniffer","device","appendChild","fluid","style","video","execBeforePluginsCall","forEach","item","controlStyle","typeOf","self","fetch","method","headers","Accept","then","res","ok","json","obj","prop","pluginsCall","catch","err","console","log","ev","evName","keys","evFunc","on","charAt","toUpperCase","slice","player","mousemoveFunc","closeFocusVideoFocus","focus","addEventListener","playFunc","closePlayVideoFocus","once","getVideoSize","videoWidth","videoHeight","containerSize","getBoundingClientRect","fitVideoSize","setTimeout","isReady","keyShortcut","e","onKeydown","videoInit","hasClass","start","rotate","updateRotateDeg","onDestroy","removeEventListener","off","Proxy","_this2","url","arguments","length","undefined","logParams","playSrc","canPlayFunc","playPromise","play","src","type","pt","Date","getTime","vt","loadeddataFunc","vd","duration","autoplay","insertBefore","firstChild","load","reloadFunc","_this3","isDelDom","k","clearInterval","bulletResizeTimer","_interval","destroyFunc","removeAttribute","innerHTML","classNameList","className","split","filter","indexOf","join","replayFunc","paused","pause","_get","_replay","removeClass","bc","bu_acu_t","played","currentSrc","Function","currentTime","requestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","window","Element","ALLOW_KEYBOARD_INPUT","webkitSupportsFullscreen","webkitEnterFullscreen","msRequestFullscreen","exitFullscreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen","getAbsoluteURL","_downloadjs2","default","_this4","plugins","descriptor","some","dragLay","dragHandle","tabindex","Draggabilly","right","bottom","top","left","pipConfig","preventDefault","stopPropagation","exitPIP","parentNode","removeChild","rotateDeg","offsetWidth","offsetHeight","targetWidth","targetHeight","innerRotate","scale","parseFloat","toFixed","transformOrigin","transform","webKitTransform","clockwise","times","factor","clearTimeout","ended","event","keyCode","volumeSlider","querySelector","sliderTimer","_undefined","require","val","tpl","attrs","cname","dom","createElement","setAttribute","classList","Array","match","RegExp","replace","add","remove","reg","sel","getElementById","str","pad","charstr","String","len","maxlen","Math","ceil","chars","push","substring","time","isNaN","hour","padStart","floor","minute","second","touches","touch","changedTouches","clientX","clientY","offsetX","pageX","target","offsetLeft","offsetY","pageY","offsetTop","_target","srcElement","toString","dst","Node","concat","currentStyle","getComputedStyle","backgroundImage","a","href","back","tagName","attributes","node","context","eventName","intervalFunc","frequency","setInterval","imgUrl","btn","w","h","unit","every","trim","backgroundSize","margin","hex","alpha","rgb","test","sixHex","kw","eval","ErrorTypes","network","code","remark","mse","parse","format","decoder","runtime","timeout","other","networkState","readyState","errd","playerVersion","errorType","domain","ex","os","isPc","browser","ua","userAgent","toLowerCase","ie","firfox","chrome","opera","safari","isWindowsPhone","isSymbian","isAndroid","isFireFox","isTablet","isPhone","_extends","assign","undef","Env","A","TypeError","set","envInfo","header","custom","user","Number","Boolean","isArray","iterator","next","done","u","f","_","v","b","y","O","C","S","E","R","x","z","user_unique_id","user_type","user_id","user_is_auth","user_is_login","device_id","web_id","ip_addr_id","ssid","app_id","app_name","app_install_id","app_package","app_channel","app_version","os_name","os_version","device_model","ab_client","ab_version","traffic_type","utm_source","utm_medium","utm_campaign","client_ip","device_brand","os_api","access","region","app_language","app_region","creative_id","ad_id","campaign_id","log_type","rnd","platform","sdk_version","province","city","timezone","tz_offset","tz_name","sim_region","carrier","resolution","browser_version","referrer","referrer_host","utm_term","utm_content","parseURL","screen_width","screen","screen_height","screen_size","appVersion","hostname","urlQueryObj","search","decodeURIComponent","parseUrlQuery","location","versionOffset","semiIndex","clientOpts","cs","getVersion","exec","browser$1","StorageCache","localStorage","getItem","JSON","stringify","setItem","TEA_CACHE_PREFIX","ERROR_CODE","_typeof","_typeof2","constructor","_classCallCheck$1","Logger","init","isLog","info","apply","prefix","warn","error","dir","table","logJSON","deprecated","throw","Error","logger","fetchTokens","XMLHttpRequest","open","setRequestHeader","onload","responseText","onerror","send","timeZoneMin","getTimezoneOffset","parseInt","clientEnvManager","_classCallCheck$2","ReferenceError","initClientEnv","writable","configurable","setPrototypeOf","_inherits","types","_classCallCheck$3","isString","isNumber","isBoolean","isFunction","isNull","isUndefined","isObj","isFalse","NaN","isTrue","isLowIE","XDomainRequest","decodeXXX","fromCharCode","decrypto","random","webid","_extends$1","urlPrefix","cn","sg","va","getCookie","cookie","AppChannelEnv","_classCallCheck$4","_possibleConstructorReturn$1","channel","channel_domain","initConfigs","initUrls","setEnv","disable_ssid","disable_webid","disable_sdk_monitor","evtDataCacheKey","isSsidDisabled","isWebidDisabled","isSdkMonitorDisabled","reportUrl","userTokensPrefix","checkUserToken","blackUuid","verifyTokens","transferFromCookie","tokensCacheKey","purifyBlackUuid","setUserTokens","getUserTokens","unlock","requestWebId","saveTokenToStorage","isRequestWebId","waitForVerifyTokens","lock","realUuid","callback","user_agent","referer","requestSsid","setEvtParams","evtParams","mergeEnvToEvents","mergeEnv","params","__disable_storage__","map","events","verbose","debugMode","_inherits$1","isUserTokensReady","enableDebugMode","MemoryCache","_classCallCheck$5","cache","clean","memoryCacheManager","EventStorageManager","disable_storage","_classCallCheck$6","_isPersistent","_storage","_storageKey","_data","setStorageKey","getAllEvents","getData","reduce","_checkIsDataInit","_save","delete","_getDataFromStorage","_checkStorageKey","sendByImg","encodeURIComponent","encodePayload","Image","postSdkLog","abort","sendByImg$1","encodePayload$1","message","EventSender","_classCallCheck$7","data","success","fail","eventError","notSure","isUnload","sendBeacon","request","sdkMonitorOnError","isSdkOnLoadEventReady","sdkMonitorOnload","local_time_ms","now","error_code","error_event","tea_event_index","AppChannel","_classCallCheck$8","_possibleConstructorReturn$2","addListener","report","visibilityState","setReady","eventSender","checkAndSendCachedStorageEvents","eventReportTimer","waitForBatchTime","sendData","eventStorage","_sendData","isReporting","sendDataSuccess","reportErrorCallback","max_batch_num","batch_time","maxBatchNum","_inherits$2","_extends$2","getEventIndex","preprocessEvent","event_index","Collector","_classCallCheck$9","callbackSend","_autoSendPV","_staging_flag","_isSendFuncCalled","predefinePageView","title","pathname","url_path","exportMethods","_classCallCheck$a","_exportCollect","_isQueueProcessed","_executeCmd","cmdQueue","_processCmdQueue","colloctor","_hasStart","videoConfig","playsinline","webkit-playsinline","x5-playsinline","x5-video-player-type","x5-video-player-fullscreen","x5-video-orientation","airplay","webkit-airplay","mediaType","loop","textTrackDom","textTrack","track","label","kind","srclang","crossorigin","textTrackStyle","head","styleStr","index","wrap","sheet","insertRule","addRule","autoplayMuted","muted","_eventEmitter2","lastBuffer","evItem","hasStart","inWaitingStart","begin","end","curBuffer","buffered","canPlayType","range","bool","crossOrigin","defaultMuted","status","en","playbackRate","rate","preload","seekable","seeking","ldFunc","posterUrl","poster","vol","methods","descriptors","base","callable","defineProperties","listener","__eeOnceListener__","__ee__","listeners","candidate","splice","args","isValue","isPlainFunction","normalizeOpts","contains","dscr","desc","gs","classRe","functionToString","isPrototype","isObject","possibleTypes","function","foo","bar","trzy","max","dest","process","opts1","result","searchString","fn","INDEXDB","mydb","db","ojstore","keypath","indexedDB","webkitindexedDB","IDBKeyRange","webkitIDBKeyRange","myDB","onsuccess","onupgradeneeded","transaction","objectStoreNames","createObjectStore","keyPath","deleteDatabase","close","storename","store","objectStore","put","clear","factory","define","__WEBPACK_AMD_DEFINE_RESULT__","getSize","Unidragger","extend","jQuery","element","$element","defaults","option","_create","proto","opts","positionValues","relative","absolute","fixed","applyGrid","grid","position","_getPosition","startPoint","dragPoint","startPosition","onPointerDown","onPointerMove","onPointerUp","enable","setHandles","handles","querySelectorAll","bindHandles","dispatchEvent","emitArgs","emitEvent","dispatchJQueryEvent","$event","Event","trigger","_getPositionCoord","_addTransformPosition","styleSide","measure","parentSize","matrixValues","xIndex","translateX","translateY","pointer","dragStart","isEnabled","measureContainment","setLeftTop","animate","container","getContainer","elemSize","elemRect","containerRect","borderSizeX","borderLeftWidth","borderRightWidth","borderSizeY","borderTopWidth","borderBottomWidth","relativeStartPosition","containSize","containment","HTMLElement","moveVector","dragMove","dragX","dragY","gridX","gridY","containDrag","axis","drag","min","dragEnd","isDragging","positionDrag","requestAnimationFrame","staticClick","setPosition","disable","destroy","unbindHandles","removeData","_init","bridget","__WEBPACK_AMD_DEFINE_ARRAY__","getStyleSize","num","isValid","logError","measurements","measurementsLength","getStyle","elem","isBoxSizeOuter","isSetup","div","padding","borderStyle","borderWidth","boxSizing","body","round","setup","display","size","innerWidth","innerHeight","outerWidth","outerHeight","measurement","getZeroSize","isBorderBox","paddingWidth","paddingLeft","paddingRight","paddingHeight","paddingTop","paddingBottom","marginWidth","marginLeft","marginRight","marginHeight","marginTop","marginBottom","borderHeight","isBorderBoxSizeOuter","styleWidth","styleHeight","__WEBPACK_AMD_DEFINE_FACTORY__","Unipointer","_bindHandles","isAdd","bindMethod","touchAction","_touchActionValue","_bindStartEvent","PointerEvent","pointerDown","isOkay","okayPointerDown","pointerDownPointer","pointerDownBlur","_bindPostStartEvents","cursorNodes","TEXTAREA","INPUT","SELECT","OPTION","clickTypes","radio","checkbox","button","submit","image","file","isCursorNode","nodeName","isClickType","_pointerReset","focused","activeElement","blur","pointerMove","_dragPointerMove","_dragMove","hasDragStarted","_dragStart","abs","pointerUp","_dragPointerUp","_dragEnd","_staticClick","isPreventingClicks","onclick","isIgnoringMouseUp","getPointerPoint","EvEmitter","bindStartEvent","unbindStartEvent","startEvent","handleEvent","getTouch","identifier","pointerIdentifier","onmousedown","_pointerDown","ontouchstart","onpointerdown","isPointerDown","pointerId","postStartEvents","mousedown","touchstart","pointerdown","_boundPointerEvents","_unbindPostStartEvents","onmousemove","_pointerMove","onpointermove","ontouchmove","onmouseup","_pointerUp","onpointerup","ontouchend","_pointerDone","pointerDone","onpointercancel","_pointerCancel","ontouchcancel","pointerCancel","_events","onceEvents","_onceEvents","onceListeners","allOff","download","strFileName","strMimeType","blob","reader","defaultMime","mimeType","payload","anchor","myBlob","Blob","MozBlob","WebKitBlob","fileName","pop","ajax","responseType","response","msSaveBlob","dataUrlToBlob","saver","tempUiArr","Uint8Array","mx","charCodeAt","strUrl","parts","atob","binData","uiArr","winMode","click","URL","revokeObjectURL","confirm","createObjectURL","btoa","FileReader","readAsDataURL","_player","install","slider","selected","onCanplay","onVolumeBarClick","barRect","pos","isMove","onMove","onUp","onVolumeIconClick","onVolumeIconEnter","onVolumeIconLeave","_changeTimer","onVolumeChange","containerHeight","onPlaying","onStartBtnClick","screenShot","canvas","canvasCtx","getContext","img","saveScreenShot","filename","saveLink","createEvent","initMouseEvent","onScreenShotBtnClick","drawImage","toDataURL","screenShotImg","rotateConfig","onRotateBtnClick","onReplayBtnClick","replay","nextBtn","playNext","onPlayNextBtnClick","currentVideoIndex","urlList","onPlayBtnClick","onPipBtnClick","getPIP","clk","_click_","onMouseEnter","leavePlayerTimer","onMouseLeave","closePlayerBlur","leavePlayerTime","onReady","onElementClick","closeVideoStopPropagation","closeVideoClick","onElementDblclick","closeVideoDblclick","fullscreen","initEvent","closeControlsBlur","onElementTouchend","closeVideoTouch","isTouchMove","lastPlayTime","noLog","endedFunc","watch_dur","computeWatchDur","et","judgePtVt","pluginSrc","bb","cur_play_pos","__xigua_log_sdk__","urlchangeFunc","lt","errorFunc","lastErrLog","err_msg","nologFunc","page_url","host","pver","disable_auto_pv","uid","arr","j","userLeave","onUpload","upload","uploadFile","files","HAVE_NOTHING","HAVE_METADATA","HAVE_CURRENT_DATA","HAVE_FUTURE_DATA","HAVE_ENOUGH_DATA","NETWORK_EMPTY","NETWORK_IDLE","NETWORK_LOADING","NETWORK_NO_SOURCE","MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED","REPLAY","ERROR","PLAY_TIPS","PAUSE_TIPS","PLAYNEXT_TIPS","DOWNLOAD_TIPS","ROTATE_TIPS","FULLSCREEN_TIPS","EXITFULLSCREEN_TIPS","CSSFULLSCREEN_TIPS","EXITCSSFULLSCREEN_TIPS","TEXTTRACK","PIP","SCREENSHOT","onFullscreenBtnClick","getFullscreen","onFullscreenChange","fullscreenEl","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","onDownloadBtnClick","danmujs","danmu","closeDefaultBtn","onTimeupdate","onPause","danmuBtn","onPlay","onSeeked","stop","copyDom","bulletBtn","createSwitch","toggleClass","onCssFullscreenBtnClick","exitCssFullscreen","getCssFullscreen","content","hmr","insertInto","locals","useSourceMap","list","cssMapping","sourceMapping","sourceMap","unescape","sourceURLs","sources","source","sourceRoot","cssWithMappingToString","mediaQuery","alreadyImportedModules","memo","stylesInDom","isOldIE","all","getElement","styleTarget","HTMLIFrameElement","contentDocument","singleton","singletonCounter","stylesInsertedAtTop","fixUrls","addStylesToDom","styles","domStyle","refs","addStyle","listToStyles","newStyles","part","css","media","insertStyleElement","lastStyleElementInsertedAtTop","insertAt","nextSibling","before","removeStyleElement","idx","createStyleElement","addAttrs","update","styleIndex","applyToSingletonTag","link","rel","createLinkElement","autoFixUrls","convertToAbsoluteUrls","oldSrc","styleSheet","cssText","createTextNode","newObj","DEBUG","newList","mayRemove","textStore","replaceText","replacement","cssNode","childNodes","baseUrl","protocol","currentDir","fullMatch","origUrl","newUrl","unquotedOrigUrl","$1","barStr","enter","playBtn","createImgBtn","PlayIcon","PauseIcon","tipsText","tips","__webpack_exports__","StartPlayIcon","StartPauseIcon","onPlayerReady","playceholder","fullscreenBtn","RequestFullIcon","ExitFullIcon","requestfull","exitfull","cssFullscreen","RequestCssFullIcon","ExitCssFullIcon","LargeIcon","SmallIcon","MutedIcon","icon","onCanplayResourceReady","definitionList","tmp","switchURL","_options","_mediaDataSource","dash","cursrc","urlInRoot","cur","definitionActive","onResourceReady","onCanplayChangeDefinition","curTime","li","to","from","curRUL","Loading","containerWidth","progress","outer","point","thumbnail","dotEvent","dotItem","text","dotArr","progressDot","dot","addProgressDot","removeProgressDot","removeAllProgressDot","tnailPicNum","tnailWidth","tnailHeight","tnailCol","tnailRow","interval","tnailUrls","pic_num","col","row","urls","allowSeekAfterEnded","move","closeMoveSeek","up","passive","containerLeft","compute","textContent","pointWidth","indexInPage","tnaiRowIndex","tnaiColIndex","leave","onCacheUpdate","cacheUpdateEvents","onTimeChange","Infinity","live","replayText","ReplayIcon","onEnded","path","getPropertyValue","svg","sort","ul","selectedSpeed","defaultPlaybackRate","playbackDom","preview","uploadEl","onchange","DownloadIcon","comments","area","panelBtn","panel","PanelIcon","DanmuJs","focusStatus","danmuConfig","hidemodeArray","scroll","color","_loop","hide","show","transparency","transparencyGradient","transparencyValue","background","opacity","showareaValue","main","resize","danmuspeedValue","danmufontValue","fontSize","domObj","startsWith","formatTime","overlap","direction","hideArr","containerStyle","txt","queue","pauseMove","startMove","g","defaultOff","switchBtn","initDOM","initSize","idleList","usingList","_id","_expand","shift","textcontent","timer","retryTimer","updateQueue","bullet","readData","dataHandle","resetWithCb","reset","channels","resized","containerPos","attach","addBullet","topInit","detach","removeBullet","containerRight","bookChannelId","operating","bookId","channel_id","channelWidth","channelHeight","prior","bOffset","M","unshift","P","T","B","use","elPos","unuse","transition","removeTimer","willChange","moveTime","moveV","moveMoreS","moveContainerHeight","moveContainerWidth","pastDuration","startTime","webpackPolyfill","deprecate","paths","children","pip","PlayNextIcon","RotateIcon","screenShotText","controlText","textTrackActive","trackDoms","getElementsByTagName","refresh","onError","reload","lastPlayTimeHideDelay","removeFunc"],"mappings":"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","file":"index.js","sourcesContent":[" \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 \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\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.l = 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// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 8);\n","import Proxy from './proxy'\nimport util from './utils/util'\nimport Database from './utils/database'\nimport sniffer from './utils/sniffer'\nimport Errors from './error'\nimport Draggabilly from 'draggabilly'\nimport {getAbsoluteURL} from './utils/url'\nimport downloadUtil from 'downloadjs'\n\nimport {\n version\n} from '../package.json'\nclass Player extends Proxy {\n constructor (options) {\n super(options)\n this.config = util.deepCopy({\n width: 600,\n height: 337.5,\n ignores: [],\n whitelist: [],\n lang: (document.documentElement.getAttribute('lang') || navigator.language || 'zh-cn').toLocaleLowerCase(),\n inactive: 3000,\n volume: 0.6,\n controls: true,\n controlsList: ['nodownload']\n }, options)\n this.version = version\n this.userTimer = null\n this.waitTimer = null\n this.database = new Database()\n this.history = []\n this.isProgressMoving = false\n this.root = util.findDom(document, `#${this.config.id}`)\n this.controls = util.createDom('xg-controls', '', {\n unselectable: 'on',\n onselectstart: 'return false'\n }, 'xgplayer-controls')\n if (!this.root) {\n let el = this.config.el\n if (el && el.nodeType === 1) {\n this.root = el\n } else {\n this.emit('error', new Errors('use', this.config.vid, {\n line: 32,\n handle: 'Constructor',\n msg: 'container id can\\'t be empty'\n }))\n return false\n }\n }\n // this.rootBackup = util.copyDom(this.root)\n util.addClass(this.root, `xgplayer xgplayer-${sniffer.device} xgplayer-nostart ${this.config.controls ? '' : 'no-controls'}`)\n this.root.appendChild(this.controls)\n if (this.config.fluid) {\n this.root.style['max-width'] = '100%'\n this.root.style['width'] = '100%'\n this.root.style['height'] = '0'\n this.root.style['padding-top'] = `${this.config.height * 100 / this.config.width}%`\n\n this.video.style['position'] = 'absolute'\n this.video.style['top'] = '0'\n this.video.style['left'] = '0'\n } else {\n // this.root.style.width = `${this.config.width}px`\n // this.root.style.height = `${this.config.height}px`\n if (this.config.width) {\n if (typeof this.config.width !== 'number') {\n this.root.style.width = this.config.width\n } else {\n this.root.style.width = `${this.config.width}px`\n }\n }\n if (this.config.height) {\n if (typeof this.config.height !== 'number') {\n this.root.style.height = this.config.height\n } else {\n this.root.style.height = `${this.config.height}px`\n }\n }\n }\n if (this.config.execBeforePluginsCall) {\n this.config.execBeforePluginsCall.forEach(item => {\n item.call(this, this)\n })\n }\n if (this.config.controlStyle && util.typeOf(this.config.controlStyle) === 'String') {\n let self = this\n fetch(self.config.controlStyle, {\n method: 'GET',\n headers: {\n Accept: 'application/json'\n }\n }).then(function (res) {\n if (res.ok) {\n res.json().then(function (obj) {\n for (var prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n self.config[prop] = obj[prop]\n }\n }\n self.pluginsCall()\n })\n }\n }).catch(function (err) {\n console.log('Fetch错误:' + err)\n })\n } else {\n this.pluginsCall()\n }\n this.ev.forEach((item) => {\n let evName = Object.keys(item)[0]\n let evFunc = this[item[evName]]\n if (evFunc) {\n this.on(evName, evFunc)\n }\n });\n\n ['focus', 'blur'].forEach(item => {\n this.on(item, this['on' + item.charAt(0).toUpperCase() + item.slice(1)])\n })\n let player = this\n this.mousemoveFunc = function () {\n player.emit('focus')\n if (!player.config.closeFocusVideoFocus) {\n player.video.focus()\n }\n }\n this.root.addEventListener('mousemove', this.mousemoveFunc)\n this.playFunc = function () {\n player.emit('focus')\n if (!player.config.closePlayVideoFocus) {\n player.video.focus()\n }\n }\n player.once('play', this.playFunc)\n\n this.getVideoSize = function () {\n if (this.video.videoWidth && this.video.videoHeight) {\n let containerSize = player.root.getBoundingClientRect()\n if (player.config.fitVideoSize === 'auto') {\n if (containerSize.width / containerSize.height > this.video.videoWidth / this.video.videoHeight) {\n player.root.style.height = `${this.video.videoHeight / this.video.videoWidth * containerSize.width}px`\n } else {\n player.root.style.width = `${this.video.videoWidth / this.video.videoHeight * containerSize.height}px`\n }\n } else if (player.config.fitVideoSize === 'fixWidth') {\n player.root.style.height = `${this.video.videoHeight / this.video.videoWidth * containerSize.width}px`\n } else if (player.config.fitVideoSize === 'fixHeight') {\n player.root.style.width = `${this.video.videoWidth / this.video.videoHeight * containerSize.height}px`\n }\n }\n }\n player.once('loadeddata', this.getVideoSize)\n\n setTimeout(() => {\n this.emit('ready')\n this.isReady = true\n }, 0)\n\n if (!this.config.keyShortcut || this.config.keyShortcut === 'on') {\n ['video', 'controls'].forEach(item => {\n player[item].addEventListener('keydown', (e) => { player.onKeydown(e, player) })\n })\n }\n if (this.config.videoInit) {\n if (util.hasClass(this.root, 'xgplayer-nostart')) {\n this.start()\n }\n }\n if (player.config.rotate) {\n player.on('requestFullscreen', this.updateRotateDeg)\n player.on('exitFullscreen', this.updateRotateDeg)\n }\n\n function onDestroy () {\n player.root.removeEventListener('mousemove', player.mousemoveFunc)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n }\n\n start (url = this.config.url) {\n let root = this.root\n let player = this\n if (!url || url === '') {\n this.emit('urlNull')\n }\n this.logParams.playSrc = url\n this.canPlayFunc = function () {\n let playPromise = player.video.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.then(function () {\n player.emit('autoplay started')\n }).catch(function () {\n player.emit('autoplay was prevented')\n Player.util.addClass(player.root, 'xgplayer-is-autoplay')\n })\n }\n player.off('canplay', player.canPlayFunc)\n }\n if (util.typeOf(url) === 'String') {\n this.video.src = url\n } else {\n url.forEach(item => {\n this.video.appendChild(util.createDom('source', '', {\n src: `${item.src}`,\n type: `${item.type || ''}`\n }))\n })\n }\n this.logParams.pt = new Date().getTime()\n this.logParams.vt = this.logParams.pt\n this.loadeddataFunc = function () {\n player.logParams.vt = new Date().getTime()\n if (player.logParams.pt > player.logParams.vt) {\n player.logParams.pt = player.logParams.vt\n }\n player.logParams.vd = player.video.duration\n }\n this.once('loadeddata', this.loadeddataFunc)\n if (this.config.autoplay) {\n this.on('canplay', this.canPlayFunc)\n }\n root.insertBefore(this.video, root.firstChild)\n setTimeout(() => {\n this.emit('complete')\n }, 1)\n }\n\n reload () {\n this.video.load()\n this.reloadFunc = function () {\n // eslint-disable-next-line handle-callback-err\n let playPromise = this.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n }\n this.once('loadeddata', this.reloadFunc)\n }\n\n destroy (isDelDom = true) {\n let player = this\n clearInterval(this.bulletResizeTimer)\n for (let k in this._interval) {\n clearInterval(this._interval[k])\n this._interval[k] = null\n }\n this.ev.forEach((item) => {\n let evName = Object.keys(item)[0]\n let evFunc = this[item[evName]]\n if (evFunc) {\n this.off(evName, evFunc)\n }\n });\n if (this.loadeddataFunc) {\n this.off('loadeddata', this.loadeddataFunc)\n }\n if (this.reloadFunc) {\n this.off('loadeddata', this.reloadFunc)\n }\n if (this.replayFunc) {\n this.off('play', this.replayFunc)\n }\n if (this.playFunc) {\n this.off('play', this.playFunc)\n }\n if (this.getVideoSize) {\n this.off('loadeddata', this.getVideoSize)\n };\n ['focus', 'blur'].forEach(item => {\n this.off(item, this['on' + item.charAt(0).toUpperCase() + item.slice(1)])\n })\n if (!this.config.keyShortcut || this.config.keyShortcut === 'on') {\n ['video', 'controls'].forEach(item => {\n if (this[item]) {\n this[item].removeEventListener('keydown', function (e) { player.onKeydown(e, player) })\n }\n })\n }\n\n function destroyFunc () {\n this.emit('destroy')\n // this.root.id = this.root.id + '_del'\n // parentNode.insertBefore(this.rootBackup, this.root)\n\n // fix video destroy https://stackoverflow.com/questions/3258587/how-to-properly-unload-destroy-a-video-element\n this.video.removeAttribute('src') // empty source\n this.video.load()\n if (isDelDom) {\n // parentNode.removeChild(this.root)\n this.root.innerHTML = ''\n let classNameList = this.root.className.split(' ')\n if (classNameList.length > 0) {\n this.root.className = classNameList.filter(name => name.indexOf('xgplayer') < 0).join(' ')\n } else {\n this.root.className = ''\n }\n }\n for (let k in this) {\n // if (k !== 'config') {\n delete this[k]\n // }\n }\n this.off('pause', destroyFunc)\n }\n\n if (!this.paused) {\n this.pause()\n this.once('pause', destroyFunc)\n } else {\n destroyFunc.call(this)\n }\n super.destroy()\n }\n\n replay () {\n let self = this\n let _replay = this._replay\n // ie9 bugfix\n util.removeClass(this.root, 'xgplayer-ended')\n this.logParams = {\n bc: 0,\n bu_acu_t: 0,\n played: [],\n pt: new Date().getTime(),\n vt: new Date().getTime(),\n vd: 0\n }\n this.logParams.pt = new Date().getTime()\n this.logParams.vt = this.logParams.pt\n this.replayFunc = function () {\n self.logParams.vt = new Date().getTime()\n if (self.logParams.pt > self.logParams.vt) {\n self.logParams.pt = self.logParams.vt\n }\n self.logParams.vd = self.video.duration\n }\n this.once('play', this.replayFunc)\n this.logParams.playSrc = this.video.currentSrc\n if (_replay && _replay instanceof Function) {\n _replay()\n } else {\n this.currentTime = 0\n // eslint-disable-next-line handle-callback-err\n let playPromise = this.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n }\n }\n\n getFullscreen (el) {\n let player = this\n if (el.requestFullscreen) {\n el.requestFullscreen()\n } else if (el.mozRequestFullScreen) {\n el.mozRequestFullScreen()\n } else if (el.webkitRequestFullscreen) {\n el.webkitRequestFullscreen(window.Element.ALLOW_KEYBOARD_INPUT)\n } else if (player.video.webkitSupportsFullscreen) {\n player.video.webkitEnterFullscreen()\n } else if (el.msRequestFullscreen) {\n el.msRequestFullscreen()\n } else {\n util.addClass(el, 'xgplayer-is-cssfullscreen')\n }\n }\n\n exitFullscreen (el) {\n if (document.exitFullscreen) {\n document.exitFullscreen()\n } else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen()\n } else if (document.mozCancelFullScreen) {\n document.mozCancelFullScreen()\n } else if (document.msExitFullscreen) {\n document.msExitFullscreen()\n }\n util.removeClass(el, 'xgplayer-is-cssfullscreen')\n }\n\n getCssFullscreen () {\n let player = this\n if (player.config.fluid) {\n player.root.style['padding-top'] = ''\n }\n util.addClass(player.root, 'xgplayer-is-cssfullscreen')\n player.emit('requestCssFullscreen')\n }\n\n exitCssFullscreen () {\n let player = this\n if (player.config.fluid) {\n player.root.style['width'] = '100%'\n player.root.style['height'] = '0'\n player.root.style['padding-top'] = `${player.config.height * 100 / player.config.width}%`\n }\n util.removeClass(player.root, 'xgplayer-is-cssfullscreen')\n player.emit('exitCssFullscreen')\n }\n\n download () {\n const url = getAbsoluteURL(this.config.url)\n downloadUtil(url)\n }\n\n pluginsCall () {\n let self = this\n if (Player.plugins) {\n let ignores = this.config.ignores\n Object.keys(Player.plugins).forEach(name => {\n let descriptor = Player.plugins[name]\n if (!ignores.some(item => name === item || name === 's_' + item)) {\n if (['pc', 'tablet', 'mobile'].some(type => type === name)) {\n if (name === sniffer.device) {\n setTimeout(() => {\n descriptor.call(self, self)\n }, 0)\n }\n } else {\n descriptor.call(this, this)\n }\n }\n })\n }\n }\n\n getPIP () {\n // let ro = this.root.getBoundingClientRect()\n // let Top = ro.top\n // let Left = ro.left\n let dragLay = util.createDom('xg-pip-lay', '
', {}, 'xgplayer-pip-lay')\n this.root.appendChild(dragLay)\n let dragHandle = util.createDom('xg-pip-drag', '
点击按住可拖动视频
', {tabindex: 9}, 'xgplayer-pip-drag')\n this.root.appendChild(dragHandle)\n // eslint-disable-next-line no-unused-vars\n let draggie = new Draggabilly('.xgplayer', {\n handle: '.drag-handle'\n })\n util.addClass(this.root, 'xgplayer-pip-active')\n this.root.style.right = 0\n this.root.style.bottom = '200px'\n this.root.style.top = ''\n this.root.style.left = ''\n this.root.style.width = '320px'\n this.root.style.height = '180px'\n if (this.config.pipConfig) {\n if (this.config.pipConfig.top !== undefined) {\n this.root.style.top = this.config.pipConfig.top + 'px'\n this.root.style.bottom = ''\n }\n if (this.config.pipConfig.bottom !== undefined) {\n this.root.style.bottom = this.config.pipConfig.bottom + 'px'\n }\n if (this.config.pipConfig.left !== undefined) {\n this.root.style.left = this.config.pipConfig.left + 'px'\n this.root.style.right = ''\n }\n if (this.config.pipConfig.right !== undefined) {\n this.root.style.right = this.config.pipConfig.right + 'px'\n }\n if (this.config.pipConfig.width !== undefined) {\n this.root.style.width = this.config.pipConfig.width + 'px'\n }\n if (this.config.pipConfig.height !== undefined) {\n this.root.style.height = this.config.pipConfig.height + 'px'\n }\n }\n if (this.config.fluid) {\n this.root.style['padding-top'] = ''\n }\n let player = this;\n ['click', 'touchend'].forEach(item => {\n dragLay.addEventListener(item, function (e) {\n e.preventDefault()\n e.stopPropagation()\n player.exitPIP()\n // player.root.style.top = `${Top}px`\n // player.root.style.left = `${Left}px`\n })\n })\n }\n\n exitPIP () {\n util.removeClass(this.root, 'xgplayer-pip-active')\n this.root.style.right = ''\n this.root.style.bottom = ''\n this.root.style.top = ''\n this.root.style.left = ''\n if (this.config.fluid) {\n this.root.style['width'] = '100%'\n this.root.style['height'] = '0'\n this.root.style['padding-top'] = `${this.config.height * 100 / this.config.width}%`\n } else {\n if (this.config.width) {\n if (typeof this.config.width !== 'number') {\n this.root.style.width = this.config.width\n } else {\n this.root.style.width = `${this.config.width}px`\n }\n }\n if (this.config.height) {\n if (typeof this.config.height !== 'number') {\n this.root.style.height = this.config.height\n } else {\n this.root.style.height = `${this.config.height}px`\n }\n }\n }\n\n let dragLay = util.findDom(this.root, '.xgplayer-pip-lay')\n if (dragLay && dragLay.parentNode) {\n dragLay.parentNode.removeChild(dragLay)\n }\n let dragHandle = util.findDom(this.root, '.xgplayer-pip-drag')\n if (dragHandle && dragHandle.parentNode) {\n dragHandle.parentNode.removeChild(dragHandle)\n }\n }\n\n updateRotateDeg () {\n let player = this;\n if (!player.rotateDeg) {\n player.rotateDeg = 0\n }\n\n let width = player.root.offsetWidth\n let height = player.root.offsetHeight\n let targetWidth = player.video.videoWidth\n let targetHeight = player.video.videoHeight\n\n if (!player.config.rotate.innerRotate) {\n // player.root.style.width = height + 'px'\n // player.root.style.height = width + 'px'\n }\n\n let scale\n if (player.rotateDeg === 0.25 || player.rotateDeg === 0.75) {\n if (player.config.rotate.innerRotate) {\n if ((targetWidth / targetHeight) > (height / width)) { // 旋转后纵向撑满\n let videoWidth = 0\n if ((targetHeight / targetWidth) > (height / width)) { // 旋转前是纵向撑满\n videoWidth = height * targetWidth / targetHeight\n } else { // 旋转前是横向撑满\n videoWidth = width\n }\n scale = height / videoWidth\n } else { // 旋转后横向撑满\n let videoHeight = 0\n if ((targetHeight / targetWidth) > (height / width)) { // 旋转前是纵向撑满\n videoHeight = height\n } else { // 旋转前是横向撑满\n videoHeight = width * targetHeight / targetWidth\n }\n scale = width / videoHeight\n }\n } else {\n if (width >= height) {\n scale = width / height\n } else {\n scale = height / width\n }\n }\n scale = parseFloat(scale.toFixed(5))\n } else {\n scale = 1\n }\n\n if (player.config.rotate.innerRotate) {\n player.video.style.transformOrigin = 'center center'\n player.video.style.transform = `rotate(${player.rotateDeg}turn) scale(${scale})`\n player.video.style.webKitTransform = `rotate(${player.rotateDeg}turn) scale(${scale})`\n } else {\n player.root.style.transformOrigin = 'center center'\n player.root.style.transform = `rotate(${player.rotateDeg}turn) scale(${1})`\n player.root.style.webKitTransform = `rotate(${player.rotateDeg}turn) scale(${1})`\n }\n }\n\n rotate (clockwise = false, innerRotate = true, times = 1) {\n let player = this;\n if (!player.rotateDeg) {\n player.rotateDeg = 0\n }\n let factor = clockwise ? 1 : -1\n\n player.rotateDeg = (player.rotateDeg + 1 + factor * 0.25 * times) % 1\n this.updateRotateDeg()\n\n player.emit('rotate', player.rotateDeg * 360)\n }\n\n onFocus () {\n let player = this\n util.removeClass(this.root, 'xgplayer-inactive')\n if (player.userTimer) {\n clearTimeout(player.userTimer)\n }\n player.userTimer = setTimeout(function () {\n player.emit('blur')\n }, player.config.inactive)\n }\n\n onBlur () {\n // this.video.blur()\n if (!this.paused && !this.ended) {\n util.addClass(this.root, 'xgplayer-inactive')\n }\n }\n\n onPlay () {\n util.addClass(this.root, 'xgplayer-playing')\n util.removeClass(this.root, 'xgplayer-pause')\n }\n\n onPause () {\n util.addClass(this.root, 'xgplayer-pause')\n if (this.userTimer) {\n clearTimeout(this.userTimer)\n }\n this.emit('focus')\n }\n\n onEnded () {\n util.addClass(this.root, 'xgplayer-ended')\n util.removeClass(this.root, 'xgplayer-playing')\n }\n\n onSeeking () {\n // util.addClass(this.root, 'seeking');\n }\n\n onSeeked () {\n // for ie,playing fired before waiting\n if (this.waitTimer) {\n clearTimeout(this.waitTimer)\n }\n util.removeClass(this.root, 'xgplayer-isloading')\n }\n\n onWaiting () {\n let self = this\n if (self.waitTimer) {\n clearTimeout(self.waitTimer)\n }\n self.waitTimer = setTimeout(function () {\n util.addClass(self.root, 'xgplayer-isloading')\n }, 500)\n }\n\n onPlaying () {\n if (this.waitTimer) {\n clearTimeout(this.waitTimer)\n }\n util.removeClass(this.root, 'xgplayer-isloading xgplayer-nostart xgplayer-pause xgplayer-ended xgplayer-is-error xgplayer-replay')\n util.addClass(this.root, 'xgplayer-playing')\n }\n\n onKeydown (event, player) {\n // let player = this\n let e = event || window.event\n if (e && (e.keyCode === 37 || e.keyCode === 38 || e.keyCode === 39 || e.keyCode === 40 || e.keyCode === 32)) {\n player.emit('focus')\n }\n if (e && (e.keyCode === 40 || e.keyCode === 38)) {\n if (player.controls) {\n let volumeSlider = player.controls.querySelector('.xgplayer-slider')\n if (volumeSlider) {\n if (util.hasClass(volumeSlider, 'xgplayer-none')) {\n util.removeClass(volumeSlider, 'xgplayer-none')\n }\n if (player.sliderTimer) {\n clearTimeout(player.sliderTimer)\n }\n player.sliderTimer = setTimeout(function () {\n util.addClass(volumeSlider, 'xgplayer-none')\n }, player.config.inactive)\n }\n }\n if (e && e.keyCode === 40) { // 按 down\n if (player.volume - 0.1 >= 0) {\n player.volume = parseFloat((player.volume - 0.1).toFixed(1))\n } else {\n player.volume = 0\n }\n } else if (e && e.keyCode === 38) { // 按 up\n if (player.volume + 0.1 <= 1) {\n player.volume = parseFloat((player.volume + 0.1).toFixed(1))\n } else {\n player.volume = 1\n }\n }\n } else if (e && e.keyCode === 39) { // 按 right\n if (player.currentTime + 10 <= player.duration) {\n player.currentTime += 10\n } else {\n player.currentTime = player.duration - 1\n }\n } else if (e && e.keyCode === 37) { // 按 left\n if (player.currentTime - 10 >= 0) {\n player.currentTime -= 10\n } else {\n player.currentTime = 0\n }\n } else if (e && e.keyCode === 32) { // 按 spacebar\n if (player.paused) {\n // eslint-disable-next-line handle-callback-err\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n } else {\n player.pause()\n }\n }\n }\n\n static install (name, descriptor) {\n if (!Player.plugins) {\n Player.plugins = {}\n }\n if (!Player.plugins[name]) {\n Player.plugins[name] = descriptor\n }\n }\n\n static use (name, descriptor) {\n if (!Player.plugins) {\n Player.plugins = {}\n }\n Player.plugins[name] = descriptor\n }\n}\n\nPlayer.util = util\nPlayer.sniffer = sniffer\nPlayer.Errors = Errors\n\nexport default Player\n","\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) {\n return (val !== _undefined) && (val !== null);\n};\n","\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n","let util = {}\n\nutil.createDom = function (el = 'div', tpl = '', attrs = {}, cname = '') {\n let dom = document.createElement(el)\n dom.className = cname\n dom.innerHTML = tpl\n Object.keys(attrs).forEach(item => {\n let key = item\n let value = attrs[item]\n if (el === 'video' || el === 'audio') {\n if (value) {\n dom.setAttribute(key, value)\n }\n } else {\n dom.setAttribute(key, value)\n }\n })\n return dom\n}\n\nutil.hasClass = function (el, className) {\n if (!el) {\n return false;\n }\n\n if (el.classList) {\n return Array.prototype.some.call(el.classList, item => item === className)\n } else {\n return !!el.className.match(new RegExp('(\\\\s|^)' + className + '(\\\\s|$)'))\n }\n}\n\nutil.addClass = function (el, className) {\n if (!el) {\n return;\n }\n\n if (el.classList) {\n className.replace(/(^\\s+|\\s+$)/g, '').split(/\\s+/g).forEach(item => {\n item && el.classList.add(item)\n })\n } else if (!util.hasClass(el, className)) {\n el.className += ' ' + className\n }\n}\n\nutil.removeClass = function (el, className) {\n if (!el) {\n return;\n }\n\n if (el.classList) {\n className.split(/\\s+/g).forEach(item => {\n el.classList.remove(item)\n })\n } else if (util.hasClass(el, className)) {\n className.split(/\\s+/g).forEach(item => {\n let reg = new RegExp('(\\\\s|^)' + item + '(\\\\s|$)')\n el.className = el.className.replace(reg, ' ')\n })\n }\n}\n\nutil.toggleClass = function (el, className) {\n if (!el) {\n return;\n }\n\n className.split(/\\s+/g).forEach(item => {\n if (util.hasClass(el, item)) {\n util.removeClass(el, item)\n } else {\n util.addClass(el, item)\n }\n })\n}\n\nutil.findDom = function (el = document, sel) {\n let dom\n // fix querySelector IDs that start with a digit\n // https://stackoverflow.com/questions/37270787/uncaught-syntaxerror-failed-to-execute-queryselector-on-document\n try {\n dom = el.querySelector(sel)\n } catch (e) {\n if (sel.indexOf('#') === 0) {\n dom = el.getElementById(sel.slice(1))\n }\n }\n return dom\n}\n\nutil.padStart = function (str, length, pad) {\n let charstr = String(pad)\n let len = length >> 0\n let maxlen = Math.ceil(len / charstr.length)\n let chars = []\n let r = String(str)\n while (maxlen--) {\n chars.push(charstr)\n }\n return chars.join('').substring(0, len - r.length) + r\n}\n\nutil.format = function (time) {\n if (window.isNaN(time)) {\n return ''\n }\n let hour = util.padStart(Math.floor(time / 3600), 2, 0)\n let minute = util.padStart(Math.floor((time - hour * 3600) / 60), 2, 0)\n let second = util.padStart(Math.floor((time - hour * 3600 - minute * 60)), 2, 0)\n return (hour === '00' ? [minute, second] : [hour, minute, second]).join(':')\n}\n\nutil.event = function (e) {\n if (e.touches) {\n let touch = e.touches[0] || e.changedTouches[0]\n e.clientX = touch.clientX || 0\n e.clientY = touch.clientY || 0\n e.offsetX = touch.pageX - touch.target.offsetLeft\n e.offsetY = touch.pageY - touch.target.offsetTop\n }\n e._target = e.target || e.srcElement\n}\n\nutil.typeOf = function (obj) {\n return Object.prototype.toString.call(obj).match(/([^\\s.*]+)(?=]$)/g)[0]\n}\n\nutil.deepCopy = function (dst, src) {\n if (util.typeOf(src) === 'Object' && util.typeOf(dst) === 'Object') {\n Object.keys(src).forEach(key => {\n if (util.typeOf(src[key]) === 'Object' && !(src[key] instanceof Node)) {\n if (!dst[key]) {\n dst[key] = src[key]\n } else {\n util.deepCopy(dst[key], src[key])\n }\n } else if (util.typeOf(src[key]) === 'Array') {\n dst[key] = util.typeOf(dst[key]) === 'Array' ? dst[key].concat(src[key]) : src[key]\n } else {\n dst[key] = src[key]\n }\n })\n return dst\n }\n}\nutil.getBgImage = function (el) {\n // fix: return current page url when url is none\n let url = (el.currentStyle || window.getComputedStyle(el, null)).backgroundImage\n if (!url || url === 'none') {\n return ''\n }\n let a = document.createElement('a')\n a.href = url.replace(/url\\(\"|\"\\)/g, '')\n return a.href\n}\n\nutil.copyDom = function (dom) {\n if (dom && dom.nodeType === 1) {\n let back = document.createElement(dom.tagName)\n Array.prototype.forEach.call(dom.attributes, (node) => {\n back.setAttribute(node.name, node.value)\n })\n if (dom.innerHTML) {\n back.innerHTML = dom.innerHTML\n }\n return back\n } else {\n return ''\n }\n}\n\nutil.setInterval = function (context, eventName, intervalFunc, frequency) {\n if (!context._interval[eventName]) {\n context._interval[eventName] = setInterval(intervalFunc.bind(context), frequency)\n }\n}\n\nutil.clearInterval = function (context, eventName) {\n clearInterval(context._interval[eventName])\n context._interval[eventName] = null\n}\n\nutil.createImgBtn = function (name, imgUrl, width, height) {\n let btn = util.createDom(`xg-${name}`, '', {}, `xgplayer-${name}-img`)\n btn.style.backgroundImage = `url(\"${imgUrl}\")`\n if (width && height) {\n let w, h, unit\n ['px', 'rem', 'em', 'pt', 'dp', 'vw', 'vh', 'vm', '%'].every((item) => {\n if (width.indexOf(item) > -1 && height.indexOf(item) > -1) {\n w = parseFloat(width.slice(0, width.indexOf(item)).trim())\n h = parseFloat(height.slice(0, height.indexOf(item)).trim())\n unit = item\n return false\n } else {\n return true\n }\n })\n btn.style.width = `${w}${unit}`\n btn.style.height = `${h}${unit}`\n btn.style.backgroundSize = `${w}${unit} ${h}${unit}`\n if (name === 'start') {\n btn.style.margin = `-${h / 2}${unit} auto auto -${w / 2}${unit}`\n } else {\n btn.style.margin = 'auto 5px auto 5px'\n }\n }\n return btn\n}\n\nutil.Hex2RGBA = function (hex, alpha) {\n let rgb = [] // 定义rgb数组\n if (/^\\#[0-9A-F]{3}$/i.test(hex)) {\n let sixHex = '#'\n hex.replace(/[0-9A-F]/ig, function (kw) {\n sixHex += kw + kw\n })\n hex = sixHex\n }\n if (/^#[0-9A-F]{6}$/i.test(hex)) {\n hex.replace(/[0-9A-F]{2}/ig, function (kw) {\n rgb.push(eval('0x' + kw))\n })\n return `rgba(${rgb.join(',')}, ${alpha})`\n } else {\n return 'rgba(255, 255, 255, 0.1)'\n }\n}\n\nexport default util\n","import {version} from '../package.json'\nconst ErrorTypes = {\n network: {\n code: 1,\n msg: '视频下载错误',\n remark: '只要视频下载错误就使用此类型,无论是video本身的超时还是xhr的分段请求超时或者资源不存在'\n },\n mse: {\n code: 2,\n msg: '流追加错误',\n remark: '追加流的时候如果类型不对、无法被正确解码则会触发此类错误'\n },\n parse: {\n code: 3,\n msg: '解析错误',\n remark: 'mp4、hls、flv我们都是使用js进行格式解析,如果解析失败则会触发此类错误'\n },\n format: {\n code: 4,\n msg: '格式错误',\n remark: '如果浏览器不支持的格式导致播放错误'\n },\n decoder: {\n code: 5,\n msg: '解码错误',\n remark: '浏览器解码异常会抛出此类型错误'\n },\n runtime: {\n code: 6,\n msg: '语法错误',\n remark: '播放器语法错误'\n },\n timeout: {\n code: 7,\n msg: '播放超时',\n remark: '播放过程中无法正常请求下一个分段导致播放中断'\n },\n other: {\n code: 8,\n msg: '其他错误',\n remark: '不可知的错误或被忽略的错误类型'\n }\n}\n\nclass Errors {\n constructor (type, currentTime, duration, networkState, readyState, src, currentSrc,\nended, errd = {line: '', handle: '', msg: '', version: ''}) {\n let r = {}\n r.playerVersion = version // 播放器版本\n r.errorType = type\n r.domain = document.domain // domain\n r.duration = duration // 视频时长\n r.currentTime = currentTime\n r.networkState = networkState\n r.readyState = readyState\n r.currentSrc = currentSrc\n r.src = src\n r.ended = ended\n r.errd = errd // 错误详情\n r.ex = (ErrorTypes[type] || {}).msg // 补充信息\n return r\n }\n}\n\nexport default Errors\n","let sniffer = {\n get device () {\n let r = sniffer.os\n return r.isPc ? 'pc' : 'mobile'\n // return r.isPc ? 'pc' : r.isTablet ? 'tablet' : 'mobile'\n },\n get browser () {\n let ua = navigator.userAgent.toLowerCase()\n let reg = {\n ie: /rv:([\\d.]+)\\) like gecko/,\n firfox: /firefox\\/([\\d.]+)/,\n chrome: /chrome\\/([\\d.]+)/,\n opera: /opera.([\\d.]+)/,\n safari: /version\\/([\\d.]+).*safari/\n }\n return [].concat(Object.keys(reg).filter(key => reg[key].test(ua)))[0]\n },\n get os () {\n let ua = navigator.userAgent\n let isWindowsPhone = /(?:Windows Phone)/.test(ua)\n let isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone\n let isAndroid = /(?:Android)/.test(ua)\n let isFireFox = /(?:Firefox)/.test(ua)\n let isTablet = /(?:iPad|PlayBook)/.test(ua) || (isAndroid && !/(?:Mobile)/.test(ua)) || (isFireFox && /(?:Tablet)/.test(ua))\n let isPhone = /(?:iPhone)/.test(ua) && !isTablet\n let isPc = !isPhone && !isAndroid && !isSymbian && !isTablet\n return {\n isTablet,\n isPhone,\n isAndroid,\n isPc,\n isSymbian,\n isWindowsPhone,\n isFireFox\n }\n }\n}\n\nexport default sniffer\n","/* eslint-disable */\nvar _extends=Object.assign||function(e){for(var r=1;r-1){var s=n.split(\".\");i=s[0];n=s[1]}if(n===\"os_version\"){t=\"\"+t}if(i){if(i===\"user\"||i===\"header\"){A.envInfo[i][n]=t}else if(i===\"headers\"){A.envInfo.header.headers[n]=t}else{A.envInfo.header.headers.custom[n]=t}}else if(A.envInfo.user.hasOwnProperty(n)){if([\"user_type\",\"device_id\",\"ip_addr_id\"].indexOf(n)>-1){A.envInfo.user[n]=Number(t)}else if([\"user_id\",\"web_id\",\"user_unique_id\",\"ssid\"].indexOf(n)>-1){A.envInfo.user[n]=String(t)}else if([\"user_is_auth\",\"user_is_login\"].indexOf(n)>-1){A.envInfo.user[n]=Boolean(t)}}else if(A.envInfo.header.hasOwnProperty(n)){A.envInfo.header[n]=t}else if(A.envInfo.header.headers.hasOwnProperty(n)){A.envInfo.header.headers[n]=t}else{A.envInfo.header.headers.custom[n]=t}};this.get=function(){var e={user:{},header:{headers:{custom:{}}}};var r=A.envInfo;var n=r.user;var t=Object.keys(n);for(var i=t,s=Array.isArray(i),o=0,i=s?i:i[Symbol.iterator]();;){var a;if(s){if(o>=i.length)break;a=i[o++]}else{o=i.next();if(o.done)break;a=o.value}var u=a;if(n[u]!==undef){e.user[u]=n[u]}}var f=r.header;var c=Object.keys(f);for(var d=c,l=Array.isArray(d),_=0,d=l?d:d[Symbol.iterator]();;){var v;if(l){if(_>=d.length)break;v=d[_++]}else{_=d.next();if(_.done)break;v=_.value}var h=v;if(f[h]!==undef&&h!==\"headers\"){e.header[h]=f[h]}}var p=r.header.headers;var g=Object.keys(p);for(var b=g,y=Array.isArray(b),m=0,b=y?b:b[Symbol.iterator]();;){var w;if(y){if(m>=b.length)break;w=b[m++]}else{m=b.next();if(m.done)break;w=m.value}var O=w;if(O!==\"custom\"&&p[O]!==undef){e.header.headers[O]=p[O]}}var k=r.header.headers.custom;var C=Object.keys(k);if(C.length){for(var S=C,E=Array.isArray(S),R=0,S=E?S:S[Symbol.iterator]();;){var x;if(E){if(R>=S.length)break;x=S[R++]}else{R=S.next();if(R.done)break;x=R.value}var z=x;e.header.headers.custom[z]=k[z]}}var T={user:e.user,header:_extends({},e.header,{headers:e.header.headers})};return T};this.envInfo={user:{user_unique_id:undef,user_type:undef,user_id:undef,user_is_auth:undef,user_is_login:undef,device_id:undef,web_id:undef,ip_addr_id:undef,ssid:undef},header:{app_id:undef,app_name:undef,app_install_id:undef,app_package:undef,app_channel:undef,app_version:undef,os_name:undef,os_version:undef,device_model:undef,ab_client:undef,ab_version:undef,traffic_type:undef,utm_source:undef,utm_medium:undef,utm_campaign:undef,client_ip:undef,device_brand:undef,os_api:undef,access:undef,language:undef,region:undef,app_language:undef,app_region:undef,creative_id:undef,ad_id:undef,campaign_id:undef,log_type:undef,rnd:undef,platform:undef,sdk_version:undef,province:undef,city:undef,timezone:undef,tz_offset:undef,tz_name:undef,sim_region:undef,carrier:undef,resolution:undef,browser:undef,browser_version:undef,referrer:undef,referrer_host:undef,headers:{utm_term:undef,utm_content:undef,custom:{}}}}};var parseURL=function e(r){var n=document.createElement(\"a\");n.href=r;return n};var parseUrlQuery=function e(r){var n=parseURL(r).search;n=n.slice(1);var i={};n.split(\"&\").forEach(function(e){var r=e.split(\"=\"),n=r[0],t=r[1];i[n]=decodeURIComponent(typeof t===\"undefined\"?\"\":t)});return i};var undef$1=\"\";var screen_width=screen.width||0;var screen_height=screen.height||0;var screen_size=screen_width+\" x \"+screen_height;var appVersion=navigator.appVersion;var userAgent=navigator.userAgent;var language=navigator.language;var referrer=document.referrer;var referrer_host=parseURL(referrer).hostname;var urlQueryObj=parseUrlQuery(location.href);var os_name=undef$1;var os_version=undef$1;var browser=\"\";var browser_version=\"\"+parseFloat(appVersion);var versionOffset=void 0;var semiIndex=void 0;if((versionOffset=userAgent.indexOf(\"Opera\"))!==-1){browser=\"Opera\";browser_version=userAgent.substring(versionOffset+6);if((versionOffset=userAgent.indexOf(\"Version\"))!==-1){browser_version=userAgent.substring(versionOffset+8)}}if((versionOffset=userAgent.indexOf(\"Edge\"))!==-1){browser=\"Microsoft Edge\";browser_version=userAgent.substring(versionOffset+5)}else if((versionOffset=userAgent.indexOf(\"MSIE\"))!==-1){browser=\"Microsoft Internet Explorer\";browser_version=userAgent.substring(versionOffset+5)}else if((versionOffset=userAgent.indexOf(\"Chrome\"))!==-1){browser=\"Chrome\";browser_version=userAgent.substring(versionOffset+7)}else if((versionOffset=userAgent.indexOf(\"Safari\"))!==-1){browser=\"Safari\";browser_version=userAgent.substring(versionOffset+7);if((versionOffset=userAgent.indexOf(\"Version\"))!==-1){browser_version=userAgent.substring(versionOffset+8)}}else if((versionOffset=userAgent.indexOf(\"Firefox\"))!==-1){browser=\"Firefox\";browser_version=userAgent.substring(versionOffset+8)}if((semiIndex=browser_version.indexOf(\";\"))!==-1){browser_version=browser_version.substring(0,semiIndex)}if((semiIndex=browser_version.indexOf(\" \"))!==-1){browser_version=browser_version.substring(0,semiIndex)}if((semiIndex=browser_version.indexOf(\")\"))!==-1){browser_version=browser_version.substring(0,semiIndex)}var platform=/Mobile|htc|mini|Android|iP(ad|od|hone)/.test(appVersion)?\"wap\":\"web\";var clientOpts=[{s:\"Windows 10\",r:/(Windows 10.0|Windows NT 10.0)/},{s:\"Windows 8.1\",r:/(Windows 8.1|Windows NT 6.3)/},{s:\"Windows 8\",r:/(Windows 8|Windows NT 6.2)/},{s:\"Windows 7\",r:/(Windows 7|Windows NT 6.1)/},{s:\"Android\",r:/Android/},{s:\"Sun OS\",r:/SunOS/},{s:\"Linux\",r:/(Linux|X11)/},{s:\"iOS\",r:/(iPhone|iPad|iPod)/},{s:\"Mac OS X\",r:/Mac OS X/},{s:\"Mac OS\",r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/}];for(var i=0;i0&&arguments[0]!==undefined?arguments[0]:\"\";_classCallCheck$1(this,e);this.init=function(e){s.isLog=e};this.info=function(e){for(var r=arguments.length,n=Array(r>1?r-1:0),t=1;t1?r-1:0),t=1;t1?r-1:0),t=1;t1?r-1:0),t=1;t>e/4).toString(10):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,b)}var webid=function e(){return b().replace(/-/g,\"\").slice(0,19)};var _extends$1=Object.assign||function(e){for(var r=1;r0&&arguments[0]!==undefined?arguments[0]:{};if(f.blackUuid.some(function(e){return e===r.user_unique_id})){var e={};f.setUserTokens(e);f.logger.warn('检测到无效的用户标识,已重置用户状态。{user_unique_id: \"%s\"}',r.user_unique_id);return e}return r};f.getUserTokens=function(){return StorageCache.get(f.tokensCacheKey)||{}};f.setUserTokens=function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return StorageCache.set(f.tokensCacheKey,e)};f.checkUserToken=function(e){var r=TEA_CACHE_PREFIX+\"tokens_\"+e;f.tokensCacheKey=r;f.transferFromCookie();var n=f.purifyBlackUuid(f.getUserTokens());if(n.user_unique_id&&n.web_id){f.envInfo.user.user_unique_id=n.user_unique_id;f.envInfo.user.web_id=n.web_id;f.envInfo.user.ssid=n.ssid||\"\";f.logger.info(\"初始化已经检测到了 webid user_unique_id,一般情况下不需要再次验证 id 了\");f.unlock()}else{f.requestWebId(e)}};f.saveTokenToStorage=function(e){var r=e.web_id,n=e.ssid,t=e.user_unique_id;f.setUserTokens({web_id:r,ssid:n,user_unique_id:t})};f.requestWebId=function(){f.isRequestWebId=true;var n=function e(r){var n=f.envInfo.user.web_id||r.web_id;var t=r.ssid;f.isRequestWebId=false;f.envInfo.user.ssid=t;f.envInfo.user.web_id=n;f.envInfo.user.user_unique_id=n;f.saveTokenToStorage({web_id:n,ssid:t,user_unique_id:n});if(f.waitForVerifyTokens){f.lock();f.verifyTokens(f.realUuid)}else{f.unlock();if(f.callback){f.callback()}}};var e=function e(){n({web_id:webid(),ssid:\"\"})};var r=function e(){var r=f.userTokensPrefix+\"/v1/user/webid\";fetchTokens(r,{app_id:f.app_id,url:location.href,user_agent:browser$1.userAgent,referer:browser$1.referrer,user_unique_id:\"\"},function(e){if(e.e!==0){f.logger.error(\"请求 webid 失败。请联系管理员。\")}else{n(e)}},function(){f.isRequestWebId=false;f.logger.error(\"获取 webid 失败,数据将不会被上报\")})};if(f.isWebidDisabled){e()}else{r()}};f.verifyTokens=function(e){var r=f.tokensCacheKey;f.waitForVerifyTokens=false;f.realUuid=\"\"+e;if(f.isRequestWebId){f.waitForVerifyTokens=true;f.logger.info(\"正在请求 webid,requestSsid 将会在前者请求完毕之后被调用\");return false}var n=f.getUserTokens();if(n.user_unique_id===f.realUuid&&n.ssid&&n.web_id){f.logger.info(\"传入的 user_id/user_unique_id 与 缓存中的完全一致,无需再次请求\");f.unlock()}else{f.lock();f.envInfo.user.user_unique_id=f.realUuid;var t=_extends$1({},f.getUserTokens(),{user_unique_id:f.realUuid});StorageCache.set(r,JSON.stringify(t));if(types.isLowIE()){f.unlock();return false}if(f.isSsidDisabled){f.unlock();if(f.callback){f.callback()}}else{f.requestSsid()}}};f.requestSsid=function(){var n=f.getUserTokens();var e=f.userTokensPrefix+\"/v1/user/ssid\";fetchTokens(e,{app_id:f.app_id,web_id:n.web_id,user_unique_id:\"\"+n.user_unique_id},function(e){f.unlock();if(e.e!==0){f.logger.error(\"请求 ssid 失败~\")}else{f.envInfo.user.ssid=e.ssid;var r=_extends$1({},n,{ssid:e.ssid});f.setUserTokens(r);f.logger.info(\"根据 user_unique_id 更新 ssid 成功!注意:在这之前不应该有数据被发出去\");if(f.callback){f.callback()}}},function(){f.unlock();f.logger.error(\"根据 user_unique_id 获取新 ssid 失败\")})};f.setEvtParams=function(e){var r=_extends$1({},e);Object.keys(r).forEach(function(e){f.evtParams[e]=r[e]})};f.mergeEnvToEvents=function(e){var r=f.mergeEnv();var n=[];var t=0;var i=void 0;e.forEach(function(e){var r=!!e.params.__disable_storage__;if(typeof i===\"undefined\"){i=r}else if(r!==i||n[t].length>=5){t+=1;i=!i}n[t]=n[t]||[];n[t].push(e)});var s=n.map(function(e){return{events:e.map(function(e){var r=_extends$1({},f.evtParams,e.params);delete r.__disable_storage__;return _extends$1({},e,{params:JSON.stringify(r)})}),user:r.user,header:r.header,verbose:f.debugMode?1:undefined,__disable_storage__:e[0].params.__disable_storage__}});return s};f.mergeEnv=function(){var e=f.get();var r=clientEnvManager.get();var n=_extends$1({},e.user);var t=_extends$1({},r.header.headers.custom,e.header.headers.custom);var i=_extends$1({},r.header.headers,e.header.headers,{custom:t});var s=_extends$1({},r.header,e.header);var o={user:n,header:_extends$1({},s,{headers:JSON.stringify(i)})};return o};f.evtParams={};f.reportUrl=\"\";f.userTokensPrefix=\"\";f.isSsidDisabled=false;f.isWebidDisabled=false;f.isSdkMonitorDisabled=false;f.debugMode=false;f.blackUuid=[\"null\",\"undefined\",\"0\",\"\",\"None\"];f.logger=function(){};return f}r.prototype.lock=function e(){this.isUserTokensReady=false};r.prototype.unlock=function e(){this.isUserTokensReady=true};r.prototype.enableDebugMode=function e(r){this.debugMode=r};return r}(Env);function _classCallCheck$5(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var MemoryCache=function e(){var n=this;_classCallCheck$5(this,e);this.set=function(e,r){n.cache[e]=r};this.get=function(e){return n.cache[e]};this.clean=function(e){n.cache[e]=undefined};this.cache={}};var memoryCacheManager=new MemoryCache;function _classCallCheck$6(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var EventStorageManager=function(){function t(e){var r=e.disable_storage,n=r===undefined?false:r;_classCallCheck$6(this,t);this._isPersistent=!n;this._storage=this._isPersistent?StorageCache:new MemoryCache;this._storageKey=\"\";this._data=undefined}t.prototype.setStorageKey=function e(r){this._storageKey=r};t.prototype.getAllEvents=function e(){var n=this.getData();Object.keys(n).reduce(function(e,r){return e.concat(n[r]||[])},[])};t.prototype.getData=function e(){this._checkIsDataInit();return this._data};t.prototype.add=function e(r){var n=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];this._checkIsDataInit();if(n.length!==0){this._data[r]=n;this._save()}};t.prototype.delete=function e(r){this._checkIsDataInit();if(this._data[r]){delete this._data[r];this._save()}};t.prototype._checkIsDataInit=function e(){if(typeof this._data===\"undefined\"){try{var r=this._getDataFromStorage();if(types.isArray(r)){var n;this._data=(n={},n[webid()]=r,n);this._save()}else{this._data=r}}catch(e){this._data={}}}};t.prototype._checkStorageKey=function e(){if(!this._storageKey){throw new Error(\"must call setStorageKey('xxx') first\")}};t.prototype._getDataFromStorage=function e(){this._checkStorageKey();return this._storage.get(this._storageKey)||{}};t.prototype._save=function e(){this._checkStorageKey();this._storage.set(this._storageKey,this._data)};return t}();var encodePayload=function e(r){var n=\"\";for(var t in r){if(r.hasOwnProperty(t)){n+=\"&\"+t+\"=\"+encodeURIComponent(JSON.stringify(r[t]))}}n=n[0]===\"&\"?n.slice(1):n;return n};var sendByImg=function e(r,n){try{var t=r.split(\"v1\")[0];n.forEach(function(e){var r=encodePayload(e);var n=new Image(1,1);n.onload=function(){n=null};n.onerror=function(){n=null};n.src=t+\"/v1/gif?\"+r})}catch(e){}};var postSdkLog=function e(r,n){if(window.XDomainRequest){return sendByImg(r,n)}var t=new XMLHttpRequest;t.open(\"POST\",r+\"?rdn=\"+Math.random(),true);t.onload=function(){};t.onerror=function(){t.abort()};t.send(JSON.stringify(n))};var encodePayload$1=function e(r){var n=\"\";for(var t in r){if(r.hasOwnProperty(t)){n+=\"&\"+t+\"=\"+encodeURIComponent(JSON.stringify(r[t]))}}n=n[0]===\"&\"?n.slice(1):n;return n};var sendByImg$1=function e(t,i,s,o){try{var a=t.split(\"v1\")[0];if(!a){o(t,i,ERROR_CODE.NO_URL_PREFIX);return}i.forEach(function(e){var r=encodePayload$1(e);var n=new Image(1,1);n.onload=function(){n=null;s()};n.onerror=function(){n=null;o(t,i,ERROR_CODE.IMG_ON_ERROR)};n.src=a+\"/v1/gif?\"+r})}catch(e){o(t,i,ERROR_CODE.IMG_CATCH_ERROR,e.message)}};var request=function e(r){var n=r.url,t=r.data,i=r.success,s=r.fail,o=r.notSure,a=r.isUnload;var u=t;if(window.XDomainRequest){sendByImg$1(n,u,i,s);return}if(a){if(window.navigator&&window.navigator.sendBeacon){o();var f=window.navigator.sendBeacon(n,JSON.stringify(u));if(f){i()}else{s(n,t,ERROR_CODE.BEACON_STATUS_FALSE)}return}sendByImg$1(n,u,i,s);return}var c=new XMLHttpRequest;c.open(\"POST\",n+\"?rdn=\"+Math.random(),true);c.onload=function(){i(n,u,c.responseText)};c.onerror=function(){c.abort();s(n,u,ERROR_CODE.XHR_ON_ERROR)};c.send(JSON.stringify(u))};function _classCallCheck$7(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var EventSender=function e(r){var c=this;_classCallCheck$7(this,e);this.send=function(e){var r=e.url,n=e.data,a=e.success,i=e.fail,u=e.eventError,t=e.notSure,s=e.isUnload;request({url:r,data:n,success:function e(r,n,t){a();try{var i=JSON.parse(t);var s=i.e;if(s!==0){var o=\"未知错误\";if(s===-2){o=\"事件格式错误!请检查字段类型是否正确。\"}c.logger.error(\"数据上报失败!\",\"错误码:\"+s+\"。错误信息:\"+o);u(n,s);sdkMonitorOnError(r,n,s)}}catch(e){sdkMonitorOnError(r,n,ERROR_CODE.RESPONSE_DATA_ERROR)}},fail:function e(r,n,t){c.logger.error(\"数据上报失败!\",\"错误码:\"+t);i(n,t);sdkMonitorOnError(r,n,t)},notSure:t,isUnload:s});if(!c.isSdkMonitorDisabled&&!c.isSdkOnLoadEventReady){c.isSdkOnLoadEventReady=true;try{var o=n[0].header;var f=n[0].user;sdkMonitorOnload(r,{app_id:o.app_id,app_name:o.app_name,sdk_version:o.sdk_version,web_id:f.web_id})}catch(e){}}};this.logger=r.logger||logger;this.isSdkOnLoadEventReady=false;this.isSdkMonitorDisabled=false};var sdkMonitorOnload=function e(r,n){try{var t={event:\"onload\",params:JSON.stringify({app_id:n.app_id,app_name:n.app_name||\"\",sdk_version:n.sdk_version}),local_time_ms:Date.now()};var i={events:[t],user:{user_unique_id:n.web_id},header:{app_id:1338}};setTimeout(function(){postSdkLog(r,[i])},16)}catch(e){}};var sdkMonitorOnError=function e(r,n,t){try{var i=n[0].user;var s=n[0].header;var o=[];n.forEach(function(e){e.events.forEach(function(e){o.push(e)})});var a=o.map(function(e){return{event:\"on_error\",params:JSON.stringify({error_code:t,app_id:s.app_id,app_name:s.app_name||\"\",error_event:e.event,local_time_ms:e.local_time_ms,tea_event_index:Date.now(),params:e.params,header:JSON.stringify(s),user:JSON.stringify(i)}),local_time_ms:Date.now()}});var u={events:a,user:{user_unique_id:i.user_unique_id},header:{app_id:1338}};setTimeout(function(){postSdkLog(r,[u])},16)}catch(e){}};function _classCallCheck$8(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn$2(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits$2(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}var AppChannel=function(u){_inherits$2(f,u);function f(e){_classCallCheck$8(this,f);var o=_possibleConstructorReturn$2(this,u.call(this));o.addListener=function(){window.addEventListener(\"unload\",function(){o.report(true)},false);window.addEventListener(\"beforeunload\",function(){o.report(true)},false);document.addEventListener(\"visibilitychange\",function(){if(document.visibilityState===\"hidden\"){o.report(true)}},false)};o.setReady=function(e){o.isReady=e;o.eventSender.isSdkMonitorDisabled=o.isSdkMonitorDisabled;o.checkAndSendCachedStorageEvents();o.report()};o.eventReportTimer=null;o.event=function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var n=memoryCacheManager.get(o.evtDataCacheKey)||[];var t=r?[].concat(e,n):[].concat(n,e);memoryCacheManager.set(o.evtDataCacheKey,t);if(t.length>=5){o.report()}else{if(o.eventReportTimer){clearTimeout(o.eventReportTimer)}o.eventReportTimer=setTimeout(function(){o.report();o.eventReportTimer=null},o.waitForBatchTime)}};o.report=function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(!o.isUserTokensReady){return false}if(!o.isReady){return false}var r=memoryCacheManager.get(o.evtDataCacheKey)||[];memoryCacheManager.clean(o.evtDataCacheKey);var n=o.mergeEnvToEvents(r);o.sendData(n,e)};o.sendData=function(e,n){var t=[];var i=0;var s=void 0;e.forEach(function(e){var r=!!e.__disable_storage__;if(typeof s===\"undefined\"){s=r}else if(r!==s||t[i].length>=5){i+=1;s=!s}t[i]=t[i]||[];t[i].push(e)});t.forEach(function(e){var r=webid();if(!e[0].__disable_storage__){o.eventStorage.add(r,e)}o._sendData(r,e,n)})};o.checkAndSendCachedStorageEvents=function(){var r=o.eventStorage.getData();var e=Object.keys(r);if(e.length>0){e.forEach(function(e){o._sendData(e,r[e])})}};o._sendData=function(r,e,n){o.isReporting=true;var t=function e(){o.isReporting=false};o.eventSender.send({url:o.reportUrl,data:e,success:function e(){t();o.sendDataSuccess(r)},fail:function e(r,n){t();o.reportErrorCallback(r,n);setTimeout(function(){o.report()},3e3)},eventError:function e(r,n){o.reportErrorCallback(r,n)},notSure:t,isUnload:n})};o.sendDataSuccess=function(e){o.eventStorage.delete(e);o.report()};var r=e.log,n=e.disable_storage,t=e.max_batch_num,i=t===undefined?5:t,s=e.batch_time,a=s===undefined?30:s;o.init(e);o.maxBatchNum=i;o.waitForBatchTime=a;o.isReady=false;o.addListener();o.enableDebugMode(!!r);o.eventStorage=new EventStorageManager({disable_storage:n});o.eventStorage.setStorageKey(o.evtDataCacheKey);o.eventSender=new EventSender({logger:o.logger});o.reportErrorCallback=function(){};return o}return f}(AppChannelEnv);var _extends$2=Object.assign||function(e){for(var r=1;r=n.length)break;s=n[i++]}else{i=n.next();if(i.done)break;s=i.value}var o=s;var a=e[o];switch(o){case\"evtParams\":u.channel.setEvtParams(a);break;case\"disable_ssid\":u.logger.deprecated(\"(disable_ssid)请通过init函数来设置。\");if(a){u.logger.info(\"ssid已禁用,设置user_unique_id不会请求ssid接口。\");u.channel.isSsidDisabled=a}break;case\"disable_auto_pv\":if(a){u.logger.info(\"已禁止默认上报predefine_pageview事件,需手动上报。\");u._autoSendPV=false}break;case\"_staging_flag\":if(\"\"+a===\"1\"){u.logger.info(\"根据_staging_flag设置,数据将会上报到stag 表。\")}u.channel.setEvtParams({_staging_flag:Number(a)});break;case\"reportErrorCallback\":if(typeof a===\"function\"){u.channel.reportErrorCallback=a}break;default:u.channel.setEnv(o,a)}}};this.send=function(){u.start()};this.start=function(){if(u.channel.isUserTokensReady){if(u._isSendFuncCalled){return}u._isSendFuncCalled=true;u.logger.info(\"看到本提示,意味着用户信息已完全就绪,上报通道打开。用户标识如下:\");u.logger.logJSON(u.channel.get().user);if(u._autoSendPV){u.predefinePageView()}u.channel.setReady(true)}else{u.callbackSend=true}};this.predefinePageView=function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r={title:document.title||location.pathname,url:location.href,url_path:location.pathname};var n=_extends$2({},r,e);u.event(\"predefine_pageview\",n,true)};this.event=function(){for(var e=arguments.length,r=Array(e),n=0;n-1){var i;(i=o.colloctor)[t].apply(i,r.slice(1))}else{var s;(s=o.colloctor).event.apply(s,r)}};this.name=r||\"Collector\"+ +new Date;this.cmdQueue=[];this.colloctor=new Collector(this.name);this._isQueueProcessed=false;this._processCmdQueue();this._exportCollect.init=this._exportCollect.bind(this,\"init\");this._exportCollect.config=this._exportCollect.bind(this,\"config\");this._exportCollect.send=this._exportCollect.bind(this,\"send\");this._exportCollect.start=this._exportCollect.bind(this,\"start\");this._exportCollect.predefinePageView=this._exportCollect.bind(this,\"predefinePageView\");return this._exportCollect};export default CollectorAsync;\n","import Player from './player'\nimport * as Controls from './controls/*.js'\nimport Skin from './skin'\nexport default Player\n","import EventEmitter from 'event-emitter'\nimport util from './utils/util'\nimport Errors from './error'\n\nclass Proxy {\n constructor (options) {\n this.logParams = {\n bc: 0,\n bu_acu_t: 0,\n played: []\n }\n this._hasStart = false\n this.videoConfig = {\n controls: false,\n autoplay: options.autoplay,\n playsinline: options.playsinline,\n 'webkit-playsinline': options.playsinline,\n 'x5-playsinline': options.playsinline,\n 'x5-video-player-type': options['x5-video-player-type'] || options['x5VideoPlayerType'],\n 'x5-video-player-fullscreen': options['x5-video-player-fullscreen'] || options['x5VideoPlayerFullscreen'],\n 'x5-video-orientation': options['x5-video-orientation'] || options['x5VideoOrientation'],\n airplay: options['airplay'],\n 'webkit-airplay': options['airplay'],\n tabindex: 2,\n mediaType: options.mediaType || 'video'\n }\n if (options.loop) {\n this.videoConfig.loop = 'loop'\n }\n let textTrackDom = ''\n if (options.textTrack && Array.isArray(options.textTrack) && (navigator.userAgent.indexOf('Chrome') > -1 || navigator.userAgent.indexOf('Firefox') > -1)) {\n options.textTrack.some(track => {\n if (track.src && track.label && track.default) {\n textTrackDom += ``\n return true\n }\n })\n this.videoConfig.crossorigin = 'anonymous'\n }\n if (options.textTrackStyle) {\n let style = document.createElement('style')\n this.textTrackStyle = style\n document.head.appendChild(style)\n let styleStr = ''\n for (let index in options.textTrackStyle) {\n styleStr += `${index}: ${options.textTrackStyle[index]};`\n }\n let wrap = options.id ? `#${options.id}` : (options.el.id ? `#${options.el.id}` : `.${options.el.className}`)\n if (style.sheet.insertRule) {\n style.sheet.insertRule(`${wrap} video::cue { ${styleStr} }`, 0)\n } else if (style.sheet.addRule) {\n style.sheet.addRule(`${wrap} video::cue`, styleStr)\n }\n }\n this.video = util.createDom(this.videoConfig.mediaType, textTrackDom, this.videoConfig, '')\n if (options.autoplay) {\n this.video.autoplay = true\n if (options.autoplayMuted) {\n this.video.muted = true\n }\n }\n this.ev = ['play', 'playing', 'pause', 'ended', 'error', 'seeking', 'seeked',\n 'timeupdate', 'waiting', 'canplay', 'canplaythrough', 'durationchange', 'volumechange', 'loadeddata'\n ].map((item) => {\n return {\n [item]: `on${item.charAt(0).toUpperCase()}${item.slice(1)}`\n }\n })\n EventEmitter(this)\n\n this._interval = {}\n let lastBuffer = '0,0'\n let self = this\n\n this.ev.forEach(item => {\n self.evItem = Object.keys(item)[0]\n let name = Object.keys(item)[0]\n self.video.addEventListener(Object.keys(item)[0], function () {\n // fix when video destroy called and video reload\n if (!self.logParams) {\n return\n }\n if (name === 'play') {\n self.hasStart = true\n } else if (name === 'waiting') {\n self.logParams.bc++\n self.inWaitingStart = new Date().getTime()\n } else if (name === 'playing') {\n if (self.inWaitingStart) {\n self.logParams.bu_acu_t += new Date().getTime() - self.inWaitingStart\n self.inWaitingStart = undefined\n }\n } else if (name === 'loadeddata') {\n self.logParams.played.push({\n begin: 0,\n end: -1\n })\n } else if (name === 'seeking') {\n self.logParams.played.push({\n begin: self.video.currentTime,\n end: -1\n })\n } else if (self && self.logParams && self.logParams.played && name === 'timeupdate') {\n if (self.logParams.played.length < 1) {\n self.logParams.played.push({\n begin: self.video.currentTime,\n end: -1\n })\n }\n self.logParams.played[self.logParams.played.length - 1].end = self.video.currentTime\n }\n if (name === 'error') {\n if (self.video.error) {\n self.emit(name, new Errors('other', self.currentTime, self.duration, self.networkState, self.readyState, self.currentSrc, self.src,\n self.ended, {\n line: 41,\n msg: self.error,\n handle: 'Constructor'\n }))\n }\n } else {\n self.emit(name, self)\n }\n\n if (self.hasOwnProperty('_interval')) {\n if (['ended', 'error', 'timeupdate'].indexOf(name) < 0) {\n clearInterval(self._interval['bufferedChange'])\n util.setInterval(self, 'bufferedChange', function () {\n let curBuffer = []\n for (let i = 0, len = self.video.buffered.length; i < len; i++) {\n curBuffer.push([self.video.buffered.start(i), self.video.buffered.end(i)])\n }\n if (curBuffer.toString() !== lastBuffer) {\n lastBuffer = curBuffer.toString()\n self.emit('bufferedChange', curBuffer)\n }\n }, 200)\n } else {\n if (name !== 'timeupdate') {\n util.clearInterval(self, 'bufferedChange')\n }\n }\n }\n }, false)\n })\n }\n\n get hasStart () {\n return this._hasStart\n }\n set hasStart (bool) {\n if (typeof bool === 'boolean' && bool === true && !this._hasStart) {\n this._hasStart = true\n this.emit('hasstart')\n }\n }\n destroy () {\n if (this.textTrackStyle) {\n this.textTrackStyle.parentNode.removeChild(this.textTrackStyle)\n }\n }\n play () {\n return this.video.play()\n }\n pause () {\n this.video.pause()\n }\n canPlayType (type) {\n return this.video.canPlayType(type)\n }\n getBufferedRange () {\n let range = [0, 0]\n let video = this.video\n let buffered = video.buffered\n let currentTime = video.currentTime\n if (buffered) {\n for (let i = 0, len = buffered.length; i < len; i++) {\n range[0] = buffered.start(i)\n range[1] = buffered.end(i)\n if (range[0] <= currentTime && currentTime <= range[1]) {\n break\n }\n }\n }\n if (range[0] - currentTime <= 0 && currentTime - range[1] <= 0) {\n return range\n } else {\n return [0, 0]\n }\n }\n set autoplay (isTrue) {\n this.video.autoplay = isTrue\n }\n get autoplay () {\n return this.video.autoplay\n }\n get buffered () {\n return this.video.buffered\n }\n get crossOrigin () {\n return this.video.crossOrigin\n }\n set crossOrigin (isTrue) {\n this.video.crossOrigin = isTrue\n }\n get currentSrc () {\n return this.video.currentSrc\n }\n set currentSrc (src) {\n this.video.currentSrc = src\n }\n get currentTime () {\n return this.video.currentTime\n }\n set currentTime (time) {\n this.video.currentTime = time\n }\n get defaultMuted () {\n return this.video.defaultMuted\n }\n set defaultMuted (isTrue) {\n this.video.defaultMuted = isTrue\n }\n get duration () {\n return this.video.duration\n }\n get ended () {\n return this.video.ended\n }\n get error () {\n let err = this.video.error\n if (!err) {\n return null\n }\n let status = [{\n en: 'MEDIA_ERR_ABORTED',\n cn: '取回过程被用户中止'\n }, {\n en: 'MEDIA_ERR_NETWORK',\n cn: '当下载时发生错误'\n }, {\n en: 'MEDIA_ERR_DECODE',\n cn: '当解码时发生错误'\n }, {\n en: 'MEDIA_ERR_SRC_NOT_SUPPORTED',\n cn: '不支持音频/视频'\n }]\n return this.lang ? this.lang[status[err.code - 1].en] : status[err.code - 1].en\n }\n get loop () {\n return this.video.loop\n }\n set loop (isTrue) {\n this.video.loop = isTrue\n }\n get muted () {\n return this.video.muted\n }\n set muted (isTrue) {\n this.video.muted = isTrue\n }\n get networkState () {\n let status = [{\n en: 'NETWORK_EMPTY',\n cn: '音频/视频尚未初始化'\n }, {\n en: 'NETWORK_IDLE',\n cn: '音频/视频是活动的且已选取资源,但并未使用网络'\n }, {\n en: 'NETWORK_LOADING',\n cn: '浏览器正在下载数据'\n }, {\n en: 'NETWORK_NO_SOURCE',\n cn: '未找到音频/视频来源'\n }]\n return this.lang ? this.lang[status[this.video.networkState].en] : status[this.video.networkState].en\n }\n get paused () {\n return this.video.paused\n }\n get playbackRate () {\n return this.video.playbackRate\n }\n set playbackRate (rate) {\n this.video.playbackRate = rate\n }\n get played () {\n return this.video.played\n }\n get preload () {\n return this.video.preload\n }\n set preload (isTrue) {\n this.video.preload = isTrue\n }\n get readyState () {\n let status = [{\n en: 'HAVE_NOTHING',\n cn: '没有关于音频/视频是否就绪的信息'\n }, {\n en: 'HAVE_METADATA',\n cn: '关于音频/视频就绪的元数据'\n }, {\n en: 'HAVE_CURRENT_DATA',\n cn: '关于当前播放位置的数据是可用的,但没有足够的数据来播放下一帧/毫秒'\n }, {\n en: 'HAVE_FUTURE_DATA',\n cn: '当前及至少下一帧的数据是可用的'\n }, {\n en: 'HAVE_ENOUGH_DATA',\n cn: '可用数据足以开始播放'\n }]\n return this.lang ? this.lang[status[this.video.readyState].en] : status[this.video.readyState]\n }\n get seekable () {\n return this.video.seekable\n }\n get seeking () {\n return this.video.seeking\n }\n get src () {\n return this.video.src\n }\n set src (url) {\n let self = this\n if (!util.hasClass(this.root, 'xgplayer-ended')) {\n this.emit('urlchange', JSON.parse(JSON.stringify(self.logParams)))\n }\n this.logParams = {\n bc: 0,\n bu_acu_t: 0,\n played: [],\n pt: new Date().getTime(),\n vt: new Date().getTime(),\n vd: 0\n }\n this.video.pause()\n this.video.src = url\n this.logParams.playSrc = url\n this.logParams.pt = new Date().getTime()\n this.logParams.vt = this.logParams.pt\n function ldFunc () {\n self.logParams.vt = new Date().getTime()\n if (self.logParams.pt > self.logParams.vt) {\n self.logParams.pt = self.logParams.vt\n }\n self.logParams.vd = self.video.duration\n self.off('loadeddata', ldFunc)\n }\n this.once('loadeddata', ldFunc)\n }\n set poster (posterUrl) {\n let poster = util.findDom(this.root, '.xgplayer-poster')\n if(poster) {\n poster.style.backgroundImage = `url(${posterUrl})`\n }\n }\n get volume () {\n return this.video.volume\n }\n set volume (vol) {\n this.video.volume = vol\n }\n get fullscreen () {\n return util.hasClass(this.root, 'xgplayer-is-fullscreen') || util.hasClass(this.root, 'xgplayer-fullscreen-active')\n }\n get bullet () {\n return util.findDom(this.root, 'xg-bullet') ? util.hasClass(util.findDom(this.root, 'xg-bullet'), 'xgplayer-has-bullet') : false\n }\n get textTrack () {\n return util.hasClass(this.root, 'xgplayer-is-textTrack')\n }\n get pip () {\n return util.hasClass(this.root, 'xgplayer-pip-active')\n }\n}\n\nexport default Proxy\n","'use strict';\n\nvar d = require('d')\n , callable = require('es5-ext/object/valid-callable')\n\n , apply = Function.prototype.apply, call = Function.prototype.call\n , create = Object.create, defineProperty = Object.defineProperty\n , defineProperties = Object.defineProperties\n , hasOwnProperty = Object.prototype.hasOwnProperty\n , descriptor = { configurable: true, enumerable: false, writable: true }\n\n , on, once, off, emit, methods, descriptors, base;\n\non = function (type, listener) {\n\tvar data;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) {\n\t\tdata = descriptor.value = create(null);\n\t\tdefineProperty(this, '__ee__', descriptor);\n\t\tdescriptor.value = null;\n\t} else {\n\t\tdata = this.__ee__;\n\t}\n\tif (!data[type]) data[type] = listener;\n\telse if (typeof data[type] === 'object') data[type].push(listener);\n\telse data[type] = [data[type], listener];\n\n\treturn this;\n};\n\nonce = function (type, listener) {\n\tvar once, self;\n\n\tcallable(listener);\n\tself = this;\n\ton.call(this, type, once = function () {\n\t\toff.call(self, type, once);\n\t\tapply.call(listener, this, arguments);\n\t});\n\n\tonce.__eeOnceListener__ = listener;\n\treturn this;\n};\n\noff = function (type, listener) {\n\tvar data, listeners, candidate, i;\n\n\tcallable(listener);\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return this;\n\tdata = this.__ee__;\n\tif (!data[type]) return this;\n\tlisteners = data[type];\n\n\tif (typeof listeners === 'object') {\n\t\tfor (i = 0; (candidate = listeners[i]); ++i) {\n\t\t\tif ((candidate === listener) ||\n\t\t\t\t\t(candidate.__eeOnceListener__ === listener)) {\n\t\t\t\tif (listeners.length === 2) data[type] = listeners[i ? 0 : 1];\n\t\t\t\telse listeners.splice(i, 1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ((listeners === listener) ||\n\t\t\t\t(listeners.__eeOnceListener__ === listener)) {\n\t\t\tdelete data[type];\n\t\t}\n\t}\n\n\treturn this;\n};\n\nemit = function (type) {\n\tvar i, l, listener, listeners, args;\n\n\tif (!hasOwnProperty.call(this, '__ee__')) return;\n\tlisteners = this.__ee__[type];\n\tif (!listeners) return;\n\n\tif (typeof listeners === 'object') {\n\t\tl = arguments.length;\n\t\targs = new Array(l - 1);\n\t\tfor (i = 1; i < l; ++i) args[i - 1] = arguments[i];\n\n\t\tlisteners = listeners.slice();\n\t\tfor (i = 0; (listener = listeners[i]); ++i) {\n\t\t\tapply.call(listener, this, args);\n\t\t}\n\t} else {\n\t\tswitch (arguments.length) {\n\t\tcase 1:\n\t\t\tcall.call(listeners, this);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tcall.call(listeners, this, arguments[1]);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tcall.call(listeners, this, arguments[1], arguments[2]);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tl = arguments.length;\n\t\t\targs = new Array(l - 1);\n\t\t\tfor (i = 1; i < l; ++i) {\n\t\t\t\targs[i - 1] = arguments[i];\n\t\t\t}\n\t\t\tapply.call(listeners, this, args);\n\t\t}\n\t}\n};\n\nmethods = {\n\ton: on,\n\tonce: once,\n\toff: off,\n\temit: emit\n};\n\ndescriptors = {\n\ton: d(on),\n\tonce: d(once),\n\toff: d(off),\n\temit: d(emit)\n};\n\nbase = defineProperties({}, descriptors);\n\nmodule.exports = exports = function (o) {\n\treturn (o == null) ? create(base) : defineProperties(Object(o), descriptors);\n};\nexports.methods = methods;\n","\"use strict\";\n\nvar isValue = require(\"type/value/is\")\n , isPlainFunction = require(\"type/plain-function/is\")\n , assign = require(\"es5-ext/object/assign\")\n , normalizeOpts = require(\"es5-ext/object/normalize-options\")\n , contains = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n","\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n","\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n","\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")()\n\t? Object.assign\n\t: require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn (obj.foo + obj.bar + obj.trzy) === \"razdwatrzy\";\n};\n","\"use strict\";\n\nvar keys = require(\"../keys\")\n , value = require(\"../valid-value\")\n , max = Math.max;\n\nmodule.exports = function (dest, src /*, …srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n","\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n","\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n","\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n","\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, …options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n","\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")()\n\t? String.prototype.contains\n\t: require(\"./shim\");\n","\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn (str.contains(\"dwa\") === true) && (str.contains(\"foo\") === false);\n};\n","\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString/*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n","\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n","class INDEXDB {\n constructor (mydb = {name: 'xgplayer', version: 1, db: null, ojstore: {name: 'xg-m4a', keypath: 'vid'}}) {\n this.indexedDB = window.indexedDB || window.webkitindexedDB\n this.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange // 键范围\n this.myDB = mydb\n }\n\n openDB (callback) {\n // 建立或打开数据库,建立对象存储空间(ObjectStore)\n let self = this\n let version = this.myDB.version || 1\n let request = self.indexedDB.open(self.myDB.name, version)\n request.onerror = function (e) {\n // console.log('e.currentTarget.error.message')\n }\n request.onsuccess = e => {\n this.myDB.db = e.target.result\n // console.log('成功建立并打开数据库:' + this.myDB.name + ' version' + this.myDB.version)\n callback.call(self)\n }\n request.onupgradeneeded = e => {\n let db = e.target.result\n let transaction = e.target.transaction\n let store\n if (!db.objectStoreNames.contains(self.myDB.ojstore.name)) {\n // 没有该对象空间时创建该对象空间\n store = db.createObjectStore(self.myDB.ojstore.name, {keyPath: self.myDB.ojstore.keypath})\n // console.log('成功建立对象存储空间:' + this.myDB.ojstore.name)\n }\n }\n }\n\n deletedb () {\n // 删除数据库\n let self = this\n self.indexedDB.deleteDatabase(this.myDB.name)\n // console.log(this.myDB.name + '数据库已删除')\n }\n\n closeDB () {\n // 关闭数据库\n this.myDB.db.close()\n // console.log('数据库已关闭')\n }\n\n addData (storename, data) {\n // 添加数据,重复添加会报错\n let store = this.myDB.db.transaction(storename, 'readwrite').objectStore(storename)\n let request\n for (let i = 0; i < data.length; i++) {\n request = store.add(data[i])\n request.onerror = function () {\n // console.error('add添加数据库中已有该数据')\n }\n request.onsuccess = function () {\n // console.log('add添加数据已存入数据库')\n }\n }\n }\n\n putData (storename, data) {\n // 添加数据,重复添加会更新原有数据\n let store = this.myDB.db.transaction(storename, 'readwrite').objectStore(storename)\n let request\n for (let i = 0; i < data.length; i++) {\n request = store.put(data[i])\n request.onerror = function () {\n // console.error('put添加数据库中已有该数据')\n }\n request.onsuccess = function () {\n // console.log('put添加数据已存入数据库')\n }\n }\n }\n\n getDataByKey (storename, key, callback) {\n let self = this\n // 根据存储空间的键找到对应数据\n let store = this.myDB.db.transaction(storename, 'readwrite').objectStore(storename)\n let request = store.get(key)\n request.onerror = function () {\n // console.error('getDataByKey error')\n callback.call(self, null)\n }\n request.onsuccess = function (e) {\n let result = e.target.result\n // console.log('查找数据成功')\n callback.call(self, result)\n }\n }\n\n deleteData (storename, key) {\n // 删除某一条记录\n let store = this.myDB.db.transaction(storename, 'readwrite').objectStore(storename)\n store.delete(key)\n // console.log('已删除存储空间' + storename + '中' + key + '记录')\n }\n\n clearData (storename) {\n // 删除存储空间全部记录\n let store = this.myDB.db.transaction(storename, 'readwrite').objectStore(storename)\n store.clear()\n // console.log('已删除存储空间' + storename + '全部记录')\n }\n}\n\nexport default INDEXDB\n","/*!\n * Draggabilly v2.2.0\n * Make that shiz draggable\n * https://draggabilly.desandro.com\n * MIT license\n */\n\n/*jshint browser: true, strict: true, undef: true, unused: true */\n\n( function( window, factory ) {\n // universal module definition\n /* jshint strict: false */ /*globals define, module, require */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'get-size/get-size',\n 'unidragger/unidragger'\n ],\n function( getSize, Unidragger ) {\n return factory( window, getSize, Unidragger );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('get-size'),\n require('unidragger')\n );\n } else {\n // browser global\n window.Draggabilly = factory(\n window,\n window.getSize,\n window.Unidragger\n );\n }\n\n}( window, function factory( window, getSize, Unidragger ) {\n\n'use strict';\n\n// -------------------------- helpers & variables -------------------------- //\n\n// extend objects\nfunction extend( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n}\n\nfunction noop() {}\n\nvar jQuery = window.jQuery;\n\n// -------------------------- -------------------------- //\n\nfunction Draggabilly( element, options ) {\n // querySelector if string\n this.element = typeof element == 'string' ?\n document.querySelector( element ) : element;\n\n if ( jQuery ) {\n this.$element = jQuery( this.element );\n }\n\n // options\n this.options = extend( {}, this.constructor.defaults );\n this.option( options );\n\n this._create();\n}\n\n// inherit Unidragger methods\nvar proto = Draggabilly.prototype = Object.create( Unidragger.prototype );\n\nDraggabilly.defaults = {\n};\n\n/**\n * set options\n * @param {Object} opts\n */\nproto.option = function( opts ) {\n extend( this.options, opts );\n};\n\n// css position values that don't need to be set\nvar positionValues = {\n relative: true,\n absolute: true,\n fixed: true\n};\n\nproto._create = function() {\n // properties\n this.position = {};\n this._getPosition();\n\n this.startPoint = { x: 0, y: 0 };\n this.dragPoint = { x: 0, y: 0 };\n\n this.startPosition = extend( {}, this.position );\n\n // set relative positioning\n var style = getComputedStyle( this.element );\n if ( !positionValues[ style.position ] ) {\n this.element.style.position = 'relative';\n }\n\n // events, bridge jQuery events from vanilla\n this.on( 'pointerDown', this.onPointerDown );\n this.on( 'pointerMove', this.onPointerMove );\n this.on( 'pointerUp', this.onPointerUp );\n\n this.enable();\n this.setHandles();\n};\n\n/**\n * set this.handles and bind start events to 'em\n */\nproto.setHandles = function() {\n this.handles = this.options.handle ?\n this.element.querySelectorAll( this.options.handle ) : [ this.element ];\n\n this.bindHandles();\n};\n\n/**\n * emits events via EvEmitter and jQuery events\n * @param {String} type - name of event\n * @param {Event} event - original event\n * @param {Array} args - extra arguments\n */\nproto.dispatchEvent = function( type, event, args ) {\n var emitArgs = [ event ].concat( args );\n this.emitEvent( type, emitArgs );\n this.dispatchJQueryEvent( type, event, args );\n};\n\nproto.dispatchJQueryEvent = function( type, event, args ) {\n var jQuery = window.jQuery;\n // trigger jQuery event\n if ( !jQuery || !this.$element ) {\n return;\n }\n // create jQuery event\n var $event = jQuery.Event( event );\n $event.type = type;\n this.$element.trigger( $event, args );\n};\n\n// -------------------------- position -------------------------- //\n\n// get x/y position from style\nproto._getPosition = function() {\n var style = getComputedStyle( this.element );\n var x = this._getPositionCoord( style.left, 'width' );\n var y = this._getPositionCoord( style.top, 'height' );\n // clean up 'auto' or other non-integer values\n this.position.x = isNaN( x ) ? 0 : x;\n this.position.y = isNaN( y ) ? 0 : y;\n\n this._addTransformPosition( style );\n};\n\nproto._getPositionCoord = function( styleSide, measure ) {\n if ( styleSide.indexOf('%') != -1 ) {\n // convert percent into pixel for Safari, #75\n var parentSize = getSize( this.element.parentNode );\n // prevent not-in-DOM element throwing bug, #131\n return !parentSize ? 0 :\n ( parseFloat( styleSide ) / 100 ) * parentSize[ measure ];\n }\n return parseInt( styleSide, 10 );\n};\n\n// add transform: translate( x, y ) to position\nproto._addTransformPosition = function( style ) {\n var transform = style.transform;\n // bail out if value is 'none'\n if ( transform.indexOf('matrix') !== 0 ) {\n return;\n }\n // split matrix(1, 0, 0, 1, x, y)\n var matrixValues = transform.split(',');\n // translate X value is in 12th or 4th position\n var xIndex = transform.indexOf('matrix3d') === 0 ? 12 : 4;\n var translateX = parseInt( matrixValues[ xIndex ], 10 );\n // translate Y value is in 13th or 5th position\n var translateY = parseInt( matrixValues[ xIndex + 1 ], 10 );\n this.position.x += translateX;\n this.position.y += translateY;\n};\n\n// -------------------------- events -------------------------- //\n\nproto.onPointerDown = function( event, pointer ) {\n this.element.classList.add('is-pointer-down');\n this.dispatchJQueryEvent( 'pointerDown', event, [ pointer ] );\n};\n\n/**\n * drag start\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.dragStart = function( event, pointer ) {\n if ( !this.isEnabled ) {\n return;\n }\n this._getPosition();\n this.measureContainment();\n // position _when_ drag began\n this.startPosition.x = this.position.x;\n this.startPosition.y = this.position.y;\n // reset left/top style\n this.setLeftTop();\n\n this.dragPoint.x = 0;\n this.dragPoint.y = 0;\n\n this.element.classList.add('is-dragging');\n this.dispatchEvent( 'dragStart', event, [ pointer ] );\n // start animation\n this.animate();\n};\n\nproto.measureContainment = function() {\n var container = this.getContainer();\n if ( !container ) {\n return;\n }\n\n var elemSize = getSize( this.element );\n var containerSize = getSize( container );\n var elemRect = this.element.getBoundingClientRect();\n var containerRect = container.getBoundingClientRect();\n\n var borderSizeX = containerSize.borderLeftWidth + containerSize.borderRightWidth;\n var borderSizeY = containerSize.borderTopWidth + containerSize.borderBottomWidth;\n\n var position = this.relativeStartPosition = {\n x: elemRect.left - ( containerRect.left + containerSize.borderLeftWidth ),\n y: elemRect.top - ( containerRect.top + containerSize.borderTopWidth )\n };\n\n this.containSize = {\n width: ( containerSize.width - borderSizeX ) - position.x - elemSize.width,\n height: ( containerSize.height - borderSizeY ) - position.y - elemSize.height\n };\n};\n\nproto.getContainer = function() {\n var containment = this.options.containment;\n if ( !containment ) {\n return;\n }\n var isElement = containment instanceof HTMLElement;\n // use as element\n if ( isElement ) {\n return containment;\n }\n // querySelector if string\n if ( typeof containment == 'string' ) {\n return document.querySelector( containment );\n }\n // fallback to parent element\n return this.element.parentNode;\n};\n\n// ----- move event ----- //\n\nproto.onPointerMove = function( event, pointer, moveVector ) {\n this.dispatchJQueryEvent( 'pointerMove', event, [ pointer, moveVector ] );\n};\n\n/**\n * drag move\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.dragMove = function( event, pointer, moveVector ) {\n if ( !this.isEnabled ) {\n return;\n }\n var dragX = moveVector.x;\n var dragY = moveVector.y;\n\n var grid = this.options.grid;\n var gridX = grid && grid[0];\n var gridY = grid && grid[1];\n\n dragX = applyGrid( dragX, gridX );\n dragY = applyGrid( dragY, gridY );\n\n dragX = this.containDrag( 'x', dragX, gridX );\n dragY = this.containDrag( 'y', dragY, gridY );\n\n // constrain to axis\n dragX = this.options.axis == 'y' ? 0 : dragX;\n dragY = this.options.axis == 'x' ? 0 : dragY;\n\n this.position.x = this.startPosition.x + dragX;\n this.position.y = this.startPosition.y + dragY;\n // set dragPoint properties\n this.dragPoint.x = dragX;\n this.dragPoint.y = dragY;\n\n this.dispatchEvent( 'dragMove', event, [ pointer, moveVector ] );\n};\n\nfunction applyGrid( value, grid, method ) {\n method = method || 'round';\n return grid ? Math[ method ]( value / grid ) * grid : value;\n}\n\nproto.containDrag = function( axis, drag, grid ) {\n if ( !this.options.containment ) {\n return drag;\n }\n var measure = axis == 'x' ? 'width' : 'height';\n\n var rel = this.relativeStartPosition[ axis ];\n var min = applyGrid( -rel, grid, 'ceil' );\n var max = this.containSize[ measure ];\n max = applyGrid( max, grid, 'floor' );\n return Math.max( min, Math.min( max, drag ) );\n};\n\n// ----- end event ----- //\n\n/**\n * pointer up\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.onPointerUp = function( event, pointer ) {\n this.element.classList.remove('is-pointer-down');\n this.dispatchJQueryEvent( 'pointerUp', event, [ pointer ] );\n};\n\n/**\n * drag end\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.dragEnd = function( event, pointer ) {\n if ( !this.isEnabled ) {\n return;\n }\n // use top left position when complete\n this.element.style.transform = '';\n this.setLeftTop();\n this.element.classList.remove('is-dragging');\n this.dispatchEvent( 'dragEnd', event, [ pointer ] );\n};\n\n// -------------------------- animation -------------------------- //\n\nproto.animate = function() {\n // only render and animate if dragging\n if ( !this.isDragging ) {\n return;\n }\n\n this.positionDrag();\n\n var _this = this;\n requestAnimationFrame( function animateFrame() {\n _this.animate();\n });\n\n};\n\n// left/top positioning\nproto.setLeftTop = function() {\n this.element.style.left = this.position.x + 'px';\n this.element.style.top = this.position.y + 'px';\n};\n\nproto.positionDrag = function() {\n this.element.style.transform = 'translate3d( ' + this.dragPoint.x +\n 'px, ' + this.dragPoint.y + 'px, 0)';\n};\n\n// ----- staticClick ----- //\n\nproto.staticClick = function( event, pointer ) {\n this.dispatchEvent( 'staticClick', event, [ pointer ] );\n};\n\n// ----- methods ----- //\n\n/**\n * @param {Number} x\n * @param {Number} y\n */\nproto.setPosition = function( x, y ) {\n this.position.x = x;\n this.position.y = y;\n this.setLeftTop();\n};\n\nproto.enable = function() {\n this.isEnabled = true;\n};\n\nproto.disable = function() {\n this.isEnabled = false;\n if ( this.isDragging ) {\n this.dragEnd();\n }\n};\n\nproto.destroy = function() {\n this.disable();\n // reset styles\n this.element.style.transform = '';\n this.element.style.left = '';\n this.element.style.top = '';\n this.element.style.position = '';\n // unbind handles\n this.unbindHandles();\n // remove jQuery data\n if ( this.$element ) {\n this.$element.removeData('draggabilly');\n }\n};\n\n// ----- jQuery bridget ----- //\n\n// required for jQuery bridget\nproto._init = noop;\n\nif ( jQuery && jQuery.bridget ) {\n jQuery.bridget( 'draggabilly', Draggabilly );\n}\n\n// ----- ----- //\n\nreturn Draggabilly;\n\n}));\n","/*!\n * getSize v2.0.3\n * measure size of elements\n * MIT license\n */\n\n/* jshint browser: true, strict: true, undef: true, unused: true */\n/* globals console: false */\n\n( function( window, factory ) {\n /* jshint strict: false */ /* globals define, module */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory();\n } else {\n // browser global\n window.getSize = factory();\n }\n\n})( window, function factory() {\n'use strict';\n\n// -------------------------- helpers -------------------------- //\n\n// get a number from a string, not a percentage\nfunction getStyleSize( value ) {\n var num = parseFloat( value );\n // not a percent like '100%', and a number\n var isValid = value.indexOf('%') == -1 && !isNaN( num );\n return isValid && num;\n}\n\nfunction noop() {}\n\nvar logError = typeof console == 'undefined' ? noop :\n function( message ) {\n console.error( message );\n };\n\n// -------------------------- measurements -------------------------- //\n\nvar measurements = [\n 'paddingLeft',\n 'paddingRight',\n 'paddingTop',\n 'paddingBottom',\n 'marginLeft',\n 'marginRight',\n 'marginTop',\n 'marginBottom',\n 'borderLeftWidth',\n 'borderRightWidth',\n 'borderTopWidth',\n 'borderBottomWidth'\n];\n\nvar measurementsLength = measurements.length;\n\nfunction getZeroSize() {\n var size = {\n width: 0,\n height: 0,\n innerWidth: 0,\n innerHeight: 0,\n outerWidth: 0,\n outerHeight: 0\n };\n for ( var i=0; i < measurementsLength; i++ ) {\n var measurement = measurements[i];\n size[ measurement ] = 0;\n }\n return size;\n}\n\n// -------------------------- getStyle -------------------------- //\n\n/**\n * getStyle, get style of element, check for Firefox bug\n * https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n */\nfunction getStyle( elem ) {\n var style = getComputedStyle( elem );\n if ( !style ) {\n logError( 'Style returned ' + style +\n '. Are you running this code in a hidden iframe on Firefox? ' +\n 'See https://bit.ly/getsizebug1' );\n }\n return style;\n}\n\n// -------------------------- setup -------------------------- //\n\nvar isSetup = false;\n\nvar isBoxSizeOuter;\n\n/**\n * setup\n * check isBoxSizerOuter\n * do on first getSize() rather than on page load for Firefox bug\n */\nfunction setup() {\n // setup once\n if ( isSetup ) {\n return;\n }\n isSetup = true;\n\n // -------------------------- box sizing -------------------------- //\n\n /**\n * Chrome & Safari measure the outer-width on style.width on border-box elems\n * IE11 & Firefox<29 measures the inner-width\n */\n var div = document.createElement('div');\n div.style.width = '200px';\n div.style.padding = '1px 2px 3px 4px';\n div.style.borderStyle = 'solid';\n div.style.borderWidth = '1px 2px 3px 4px';\n div.style.boxSizing = 'border-box';\n\n var body = document.body || document.documentElement;\n body.appendChild( div );\n var style = getStyle( div );\n // round value for browser zoom. desandro/masonry#928\n isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;\n getSize.isBoxSizeOuter = isBoxSizeOuter;\n\n body.removeChild( div );\n}\n\n// -------------------------- getSize -------------------------- //\n\nfunction getSize( elem ) {\n setup();\n\n // use querySeletor if elem is string\n if ( typeof elem == 'string' ) {\n elem = document.querySelector( elem );\n }\n\n // do not proceed on non-objects\n if ( !elem || typeof elem != 'object' || !elem.nodeType ) {\n return;\n }\n\n var style = getStyle( elem );\n\n // if hidden, everything is 0\n if ( style.display == 'none' ) {\n return getZeroSize();\n }\n\n var size = {};\n size.width = elem.offsetWidth;\n size.height = elem.offsetHeight;\n\n var isBorderBox = size.isBorderBox = style.boxSizing == 'border-box';\n\n // get all measurements\n for ( var i=0; i < measurementsLength; i++ ) {\n var measurement = measurements[i];\n var value = style[ measurement ];\n var num = parseFloat( value );\n // any 'auto', 'medium' value will be 0\n size[ measurement ] = !isNaN( num ) ? num : 0;\n }\n\n var paddingWidth = size.paddingLeft + size.paddingRight;\n var paddingHeight = size.paddingTop + size.paddingBottom;\n var marginWidth = size.marginLeft + size.marginRight;\n var marginHeight = size.marginTop + size.marginBottom;\n var borderWidth = size.borderLeftWidth + size.borderRightWidth;\n var borderHeight = size.borderTopWidth + size.borderBottomWidth;\n\n var isBorderBoxSizeOuter = isBorderBox && isBoxSizeOuter;\n\n // overwrite width and height if we can get it from style\n var styleWidth = getStyleSize( style.width );\n if ( styleWidth !== false ) {\n size.width = styleWidth +\n // add padding and border unless it's already including it\n ( isBorderBoxSizeOuter ? 0 : paddingWidth + borderWidth );\n }\n\n var styleHeight = getStyleSize( style.height );\n if ( styleHeight !== false ) {\n size.height = styleHeight +\n // add padding and border unless it's already including it\n ( isBorderBoxSizeOuter ? 0 : paddingHeight + borderHeight );\n }\n\n size.innerWidth = size.width - ( paddingWidth + borderWidth );\n size.innerHeight = size.height - ( paddingHeight + borderHeight );\n\n size.outerWidth = size.width + marginWidth;\n size.outerHeight = size.height + marginHeight;\n\n return size;\n}\n\nreturn getSize;\n\n});\n","/*!\n * Unidragger v2.3.0\n * Draggable base class\n * MIT license\n */\n\n/*jshint browser: true, unused: true, undef: true, strict: true */\n\n( function( window, factory ) {\n // universal module definition\n /*jshint strict: false */ /*globals define, module, require */\n\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'unipointer/unipointer'\n ], function( Unipointer ) {\n return factory( window, Unipointer );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('unipointer')\n );\n } else {\n // browser global\n window.Unidragger = factory(\n window,\n window.Unipointer\n );\n }\n\n}( window, function factory( window, Unipointer ) {\n\n'use strict';\n\n// -------------------------- Unidragger -------------------------- //\n\nfunction Unidragger() {}\n\n// inherit Unipointer & EvEmitter\nvar proto = Unidragger.prototype = Object.create( Unipointer.prototype );\n\n// ----- bind start ----- //\n\nproto.bindHandles = function() {\n this._bindHandles( true );\n};\n\nproto.unbindHandles = function() {\n this._bindHandles( false );\n};\n\n/**\n * Add or remove start event\n * @param {Boolean} isAdd\n */\nproto._bindHandles = function( isAdd ) {\n // munge isAdd, default to true\n isAdd = isAdd === undefined ? true : isAdd;\n // bind each handle\n var bindMethod = isAdd ? 'addEventListener' : 'removeEventListener';\n var touchAction = isAdd ? this._touchActionValue : '';\n for ( var i=0; i < this.handles.length; i++ ) {\n var handle = this.handles[i];\n this._bindStartEvent( handle, isAdd );\n handle[ bindMethod ]( 'click', this );\n // touch-action: none to override browser touch gestures. metafizzy/flickity#540\n if ( window.PointerEvent ) {\n handle.style.touchAction = touchAction;\n }\n }\n};\n\n// prototype so it can be overwriteable by Flickity\nproto._touchActionValue = 'none';\n\n// ----- start event ----- //\n\n/**\n * pointer start\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerDown = function( event, pointer ) {\n var isOkay = this.okayPointerDown( event );\n if ( !isOkay ) {\n return;\n }\n // track start event position\n this.pointerDownPointer = pointer;\n\n event.preventDefault();\n this.pointerDownBlur();\n // bind move and end events\n this._bindPostStartEvents( event );\n this.emitEvent( 'pointerDown', [ event, pointer ] );\n};\n\n// nodes that have text fields\nvar cursorNodes = {\n TEXTAREA: true,\n INPUT: true,\n SELECT: true,\n OPTION: true,\n};\n\n// input types that do not have text fields\nvar clickTypes = {\n radio: true,\n checkbox: true,\n button: true,\n submit: true,\n image: true,\n file: true,\n};\n\n// dismiss inputs with text fields. flickity#403, flickity#404\nproto.okayPointerDown = function( event ) {\n var isCursorNode = cursorNodes[ event.target.nodeName ];\n var isClickType = clickTypes[ event.target.type ];\n var isOkay = !isCursorNode || isClickType;\n if ( !isOkay ) {\n this._pointerReset();\n }\n return isOkay;\n};\n\n// kludge to blur previously focused input\nproto.pointerDownBlur = function() {\n var focused = document.activeElement;\n // do not blur body for IE10, metafizzy/flickity#117\n var canBlur = focused && focused.blur && focused != document.body;\n if ( canBlur ) {\n focused.blur();\n }\n};\n\n// ----- move event ----- //\n\n/**\n * drag move\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerMove = function( event, pointer ) {\n var moveVector = this._dragPointerMove( event, pointer );\n this.emitEvent( 'pointerMove', [ event, pointer, moveVector ] );\n this._dragMove( event, pointer, moveVector );\n};\n\n// base pointer move logic\nproto._dragPointerMove = function( event, pointer ) {\n var moveVector = {\n x: pointer.pageX - this.pointerDownPointer.pageX,\n y: pointer.pageY - this.pointerDownPointer.pageY\n };\n // start drag if pointer has moved far enough to start drag\n if ( !this.isDragging && this.hasDragStarted( moveVector ) ) {\n this._dragStart( event, pointer );\n }\n return moveVector;\n};\n\n// condition if pointer has moved far enough to start drag\nproto.hasDragStarted = function( moveVector ) {\n return Math.abs( moveVector.x ) > 3 || Math.abs( moveVector.y ) > 3;\n};\n\n// ----- end event ----- //\n\n/**\n * pointer up\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerUp = function( event, pointer ) {\n this.emitEvent( 'pointerUp', [ event, pointer ] );\n this._dragPointerUp( event, pointer );\n};\n\nproto._dragPointerUp = function( event, pointer ) {\n if ( this.isDragging ) {\n this._dragEnd( event, pointer );\n } else {\n // pointer didn't move enough for drag to start\n this._staticClick( event, pointer );\n }\n};\n\n// -------------------------- drag -------------------------- //\n\n// dragStart\nproto._dragStart = function( event, pointer ) {\n this.isDragging = true;\n // prevent clicks\n this.isPreventingClicks = true;\n this.dragStart( event, pointer );\n};\n\nproto.dragStart = function( event, pointer ) {\n this.emitEvent( 'dragStart', [ event, pointer ] );\n};\n\n// dragMove\nproto._dragMove = function( event, pointer, moveVector ) {\n // do not drag if not dragging yet\n if ( !this.isDragging ) {\n return;\n }\n\n this.dragMove( event, pointer, moveVector );\n};\n\nproto.dragMove = function( event, pointer, moveVector ) {\n event.preventDefault();\n this.emitEvent( 'dragMove', [ event, pointer, moveVector ] );\n};\n\n// dragEnd\nproto._dragEnd = function( event, pointer ) {\n // set flags\n this.isDragging = false;\n // re-enable clicking async\n setTimeout( function() {\n delete this.isPreventingClicks;\n }.bind( this ) );\n\n this.dragEnd( event, pointer );\n};\n\nproto.dragEnd = function( event, pointer ) {\n this.emitEvent( 'dragEnd', [ event, pointer ] );\n};\n\n// ----- onclick ----- //\n\n// handle all clicks and prevent clicks when dragging\nproto.onclick = function( event ) {\n if ( this.isPreventingClicks ) {\n event.preventDefault();\n }\n};\n\n// ----- staticClick ----- //\n\n// triggered after pointer down & up with no/tiny movement\nproto._staticClick = function( event, pointer ) {\n // ignore emulated mouse up clicks\n if ( this.isIgnoringMouseUp && event.type == 'mouseup' ) {\n return;\n }\n\n this.staticClick( event, pointer );\n\n // set flag for emulated clicks 300ms after touchend\n if ( event.type != 'mouseup' ) {\n this.isIgnoringMouseUp = true;\n // reset flag after 300ms\n setTimeout( function() {\n delete this.isIgnoringMouseUp;\n }.bind( this ), 400 );\n }\n};\n\nproto.staticClick = function( event, pointer ) {\n this.emitEvent( 'staticClick', [ event, pointer ] );\n};\n\n// ----- utils ----- //\n\nUnidragger.getPointerPoint = Unipointer.getPointerPoint;\n\n// ----- ----- //\n\nreturn Unidragger;\n\n}));\n","/*!\n * Unipointer v2.3.0\n * base class for doing one thing with pointer event\n * MIT license\n */\n\n/*jshint browser: true, undef: true, unused: true, strict: true */\n\n( function( window, factory ) {\n // universal module definition\n /* jshint strict: false */ /*global define, module, require */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'ev-emitter/ev-emitter'\n ], function( EvEmitter ) {\n return factory( window, EvEmitter );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('ev-emitter')\n );\n } else {\n // browser global\n window.Unipointer = factory(\n window,\n window.EvEmitter\n );\n }\n\n}( window, function factory( window, EvEmitter ) {\n\n'use strict';\n\nfunction noop() {}\n\nfunction Unipointer() {}\n\n// inherit EvEmitter\nvar proto = Unipointer.prototype = Object.create( EvEmitter.prototype );\n\nproto.bindStartEvent = function( elem ) {\n this._bindStartEvent( elem, true );\n};\n\nproto.unbindStartEvent = function( elem ) {\n this._bindStartEvent( elem, false );\n};\n\n/**\n * Add or remove start event\n * @param {Boolean} isAdd - remove if falsey\n */\nproto._bindStartEvent = function( elem, isAdd ) {\n // munge isAdd, default to true\n isAdd = isAdd === undefined ? true : isAdd;\n var bindMethod = isAdd ? 'addEventListener' : 'removeEventListener';\n\n // default to mouse events\n var startEvent = 'mousedown';\n if ( window.PointerEvent ) {\n // Pointer Events\n startEvent = 'pointerdown';\n } else if ( 'ontouchstart' in window ) {\n // Touch Events. iOS Safari\n startEvent = 'touchstart';\n }\n elem[ bindMethod ]( startEvent, this );\n};\n\n// trigger handler methods for events\nproto.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\n// returns the touch that we're keeping track of\nproto.getTouch = function( touches ) {\n for ( var i=0; i < touches.length; i++ ) {\n var touch = touches[i];\n if ( touch.identifier == this.pointerIdentifier ) {\n return touch;\n }\n }\n};\n\n// ----- start event ----- //\n\nproto.onmousedown = function( event ) {\n // dismiss clicks from right or middle buttons\n var button = event.button;\n if ( button && ( button !== 0 && button !== 1 ) ) {\n return;\n }\n this._pointerDown( event, event );\n};\n\nproto.ontouchstart = function( event ) {\n this._pointerDown( event, event.changedTouches[0] );\n};\n\nproto.onpointerdown = function( event ) {\n this._pointerDown( event, event );\n};\n\n/**\n * pointer start\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto._pointerDown = function( event, pointer ) {\n // dismiss right click and other pointers\n // button = 0 is okay, 1-4 not\n if ( event.button || this.isPointerDown ) {\n return;\n }\n\n this.isPointerDown = true;\n // save pointer identifier to match up touch events\n this.pointerIdentifier = pointer.pointerId !== undefined ?\n // pointerId for pointer events, touch.indentifier for touch events\n pointer.pointerId : pointer.identifier;\n\n this.pointerDown( event, pointer );\n};\n\nproto.pointerDown = function( event, pointer ) {\n this._bindPostStartEvents( event );\n this.emitEvent( 'pointerDown', [ event, pointer ] );\n};\n\n// hash of events to be bound after start event\nvar postStartEvents = {\n mousedown: [ 'mousemove', 'mouseup' ],\n touchstart: [ 'touchmove', 'touchend', 'touchcancel' ],\n pointerdown: [ 'pointermove', 'pointerup', 'pointercancel' ],\n};\n\nproto._bindPostStartEvents = function( event ) {\n if ( !event ) {\n return;\n }\n // get proper events to match start event\n var events = postStartEvents[ event.type ];\n // bind events to node\n events.forEach( function( eventName ) {\n window.addEventListener( eventName, this );\n }, this );\n // save these arguments\n this._boundPointerEvents = events;\n};\n\nproto._unbindPostStartEvents = function() {\n // check for _boundEvents, in case dragEnd triggered twice (old IE8 bug)\n if ( !this._boundPointerEvents ) {\n return;\n }\n this._boundPointerEvents.forEach( function( eventName ) {\n window.removeEventListener( eventName, this );\n }, this );\n\n delete this._boundPointerEvents;\n};\n\n// ----- move event ----- //\n\nproto.onmousemove = function( event ) {\n this._pointerMove( event, event );\n};\n\nproto.onpointermove = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerMove( event, event );\n }\n};\n\nproto.ontouchmove = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerMove( event, touch );\n }\n};\n\n/**\n * pointer move\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerMove = function( event, pointer ) {\n this.pointerMove( event, pointer );\n};\n\n// public\nproto.pointerMove = function( event, pointer ) {\n this.emitEvent( 'pointerMove', [ event, pointer ] );\n};\n\n// ----- end event ----- //\n\n\nproto.onmouseup = function( event ) {\n this._pointerUp( event, event );\n};\n\nproto.onpointerup = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerUp( event, event );\n }\n};\n\nproto.ontouchend = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerUp( event, touch );\n }\n};\n\n/**\n * pointer up\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerUp = function( event, pointer ) {\n this._pointerDone();\n this.pointerUp( event, pointer );\n};\n\n// public\nproto.pointerUp = function( event, pointer ) {\n this.emitEvent( 'pointerUp', [ event, pointer ] );\n};\n\n// ----- pointer done ----- //\n\n// triggered on pointer up & pointer cancel\nproto._pointerDone = function() {\n this._pointerReset();\n this._unbindPostStartEvents();\n this.pointerDone();\n};\n\nproto._pointerReset = function() {\n // reset properties\n this.isPointerDown = false;\n delete this.pointerIdentifier;\n};\n\nproto.pointerDone = noop;\n\n// ----- pointer cancel ----- //\n\nproto.onpointercancel = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerCancel( event, event );\n }\n};\n\nproto.ontouchcancel = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerCancel( event, touch );\n }\n};\n\n/**\n * pointer cancel\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerCancel = function( event, pointer ) {\n this._pointerDone();\n this.pointerCancel( event, pointer );\n};\n\n// public\nproto.pointerCancel = function( event, pointer ) {\n this.emitEvent( 'pointerCancel', [ event, pointer ] );\n};\n\n// ----- ----- //\n\n// utility function for getting x/y coords from event\nUnipointer.getPointerPoint = function( pointer ) {\n return {\n x: pointer.pageX,\n y: pointer.pageY\n };\n};\n\n// ----- ----- //\n\nreturn Unipointer;\n\n}));\n","/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n // universal module definition\n /* jshint strict: false */ /* globals define, module, window */\n if ( typeof define == 'function' && define.amd ) {\n // AMD - RequireJS\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS - Browserify, Webpack\n module.exports = factory();\n } else {\n // Browser globals\n global.EvEmitter = factory();\n }\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\"use strict\";\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // set events hash\n var events = this._events = this._events || {};\n // set listeners array\n var listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( listeners.indexOf( listener ) == -1 ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n var onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n var index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice(0);\n args = args || [];\n // once stuff\n var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( var i=0; i < listeners.length; i++ ) {\n var listener = listeners[i]\n var isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n","\nexport const getAbsoluteURL = function (url) {\n // Check if absolute URL\n if (!url.match(/^https?:\\/\\//)) {\n const div = document.createElement('div')\n div.innerHTML = `x`\n url = div.firstChild.href\n }\n return url\n}\n","//download.js v4.2, by dandavis; 2008-2016. [MIT] see http://danml.com/download.html for tests/usage\n// v1 landed a FF+Chrome compat way of downloading strings to local un-named files, upgraded to use a hidden frame and optional mime\n// v2 added named files via a[download], msSaveBlob, IE (10+) support, and window.URL support for larger+faster saves than dataURLs\n// v3 added dataURL and Blob Input, bind-toggle arity, and legacy dataURL fallback was improved with force-download mime and base64 support. 3.1 improved safari handling.\n// v4 adds AMD/UMD, commonJS, and plain browser support\n// v4.1 adds url download capability via solo URL argument (same domain/CORS only)\n// v4.2 adds semantic variable names, long (over 2MB) dataURL support, and hidden by default temp anchors\n// https://github.com/rndme/download\n\n(function (root, factory) {\n\tif (typeof define === 'function' && define.amd) {\n\t\t// AMD. Register as an anonymous module.\n\t\tdefine([], factory);\n\t} else if (typeof exports === 'object') {\n\t\t// Node. Does not work with strict CommonJS, but\n\t\t// only CommonJS-like environments that support module.exports,\n\t\t// like Node.\n\t\tmodule.exports = factory();\n\t} else {\n\t\t// Browser globals (root is window)\n\t\troot.download = factory();\n }\n}(this, function () {\n\n\treturn function download(data, strFileName, strMimeType) {\n\n\t\tvar self = window, // this script is only for browsers anyway...\n\t\t\tdefaultMime = \"application/octet-stream\", // this default mime also triggers iframe downloads\n\t\t\tmimeType = strMimeType || defaultMime,\n\t\t\tpayload = data,\n\t\t\turl = !strFileName && !strMimeType && payload,\n\t\t\tanchor = document.createElement(\"a\"),\n\t\t\ttoString = function(a){return String(a);},\n\t\t\tmyBlob = (self.Blob || self.MozBlob || self.WebKitBlob || toString),\n\t\t\tfileName = strFileName || \"download\",\n\t\t\tblob,\n\t\t\treader;\n\t\t\tmyBlob= myBlob.call ? myBlob.bind(self) : Blob ;\n\t \n\t\tif(String(this)===\"true\"){ //reverse arguments, allowing download.bind(true, \"text/xml\", \"export.xml\") to act as a callback\n\t\t\tpayload=[payload, mimeType];\n\t\t\tmimeType=payload[0];\n\t\t\tpayload=payload[1];\n\t\t}\n\n\n\t\tif(url && url.length< 2048){ // if no filename and no mime, assume a url was passed as the only argument\n\t\t\tfileName = url.split(\"/\").pop().split(\"?\")[0];\n\t\t\tanchor.href = url; // assign href prop to temp anchor\n\t\t \tif(anchor.href.indexOf(url) !== -1){ // if the browser determines that it's a potentially valid url path:\n \t\tvar ajax=new XMLHttpRequest();\n \t\tajax.open( \"GET\", url, true);\n \t\tajax.responseType = 'blob';\n \t\tajax.onload= function(e){ \n\t\t\t\t download(e.target.response, fileName, defaultMime);\n\t\t\t\t};\n \t\tsetTimeout(function(){ ajax.send();}, 0); // allows setting custom ajax headers using the return:\n\t\t\t return ajax;\n\t\t\t} // end if valid url?\n\t\t} // end if url?\n\n\n\t\t//go ahead and download dataURLs right away\n\t\tif(/^data:([\\w+-]+\\/[\\w+.-]+)?[,;]/.test(payload)){\n\t\t\n\t\t\tif(payload.length > (1024*1024*1.999) && myBlob !== toString ){\n\t\t\t\tpayload=dataUrlToBlob(payload);\n\t\t\t\tmimeType=payload.type || defaultMime;\n\t\t\t}else{\t\t\t\n\t\t\t\treturn navigator.msSaveBlob ? // IE10 can't do a[download], only Blobs:\n\t\t\t\t\tnavigator.msSaveBlob(dataUrlToBlob(payload), fileName) :\n\t\t\t\t\tsaver(payload) ; // everyone else can save dataURLs un-processed\n\t\t\t}\n\t\t\t\n\t\t}else{//not data url, is it a string with special needs?\n\t\t\tif(/([\\x80-\\xff])/.test(payload)){\t\t\t \n\t\t\t\tvar i=0, tempUiArr= new Uint8Array(payload.length), mx=tempUiArr.length;\n\t\t\t\tfor(i;i 0) {\n selected.volume = player.video.volume\n } else {\n now = selected.volume\n }\n }\n player.volume = Math.max(Math.min(now, 1), 0)\n }\n slider.volume = player.volume\n isMove = false\n }\n window.addEventListener('mousemove', onMove)\n window.addEventListener('touchmove', onMove)\n window.addEventListener('mouseup', onUp)\n window.addEventListener('touchend', onUp)\n return false\n }\n player.on('volumeBarClick', onVolumeBarClick)\n\n function onVolumeIconClick () {\n if(Player.sniffer.device === 'mobile') {\n // util.removeClass(root, 'xgplayer-volume-muted')\n // util.removeClass(root, 'xgplayer-volume-large')\n if(player.video.muted) {\n player.video.muted = false\n // util.addClass(root, 'xgplayer-volume-large')\n } else {\n player.video.muted = true\n // util.addClass(root, 'xgplayer-volume-muted')\n }\n } else {\n player.video.muted = false\n if (player.volume < 0.1) {\n player.volume = slider.volume\n } else {\n player.volume = 0\n }\n }\n // onVolumeChange ()\n }\n player.on('volumeIconClick', onVolumeIconClick)\n\n function onVolumeIconEnter () {\n util.addClass(root, 'xgplayer-volume-active')\n if(container) {\n container.focus()\n }\n }\n player.on('volumeIconEnter', onVolumeIconEnter)\n\n function onVolumeIconLeave () {\n util.removeClass(root, 'xgplayer-volume-active')\n }\n player.on('volumeIconLeave', onVolumeIconLeave)\n\n let _changeTimer = null\n function onVolumeChange () {\n if (_changeTimer) {\n clearTimeout(_changeTimer)\n }\n _changeTimer = setTimeout(() => {\n if(Player.sniffer.device === 'mobile') {\n util.removeClass(root, 'xgplayer-volume-muted')\n util.removeClass(root, 'xgplayer-volume-large')\n if(player.video.muted) {\n util.addClass(root, 'xgplayer-volume-muted')\n } else {\n util.addClass(root, 'xgplayer-volume-large')\n }\n } else {\n util.removeClass(root, 'xgplayer-volume-muted')\n util.removeClass(root, 'xgplayer-volume-small')\n util.removeClass(root, 'xgplayer-volume-large')\n if (player.volume === 0) {\n util.addClass(root, 'xgplayer-volume-muted')\n } else if (player.volume < 0.5) {\n util.addClass(root, 'xgplayer-volume-small')\n } else {\n util.addClass(root, 'xgplayer-volume-large')\n }\n let containerHeight = bar.getBoundingClientRect().height || 76\n selected.style.height = `${player.volume * containerHeight}px`\n }\n }, 50)\n }\n player.on('volumechange', onVolumeChange)\n\n function onDestroy () {\n player.off('canplay', onCanplay)\n player.off('volumeBarClick', onVolumeBarClick)\n player.off('volumeIconClick', onVolumeIconClick)\n player.off('volumeIconEnter', onVolumeIconEnter)\n player.off('volumeIconLeave', onVolumeIconLeave)\n player.off('volumechange', onVolumeChange)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('volume', volume)\n","import Player from '../player'\n\nlet start = function () {\n let player = this\n let root = player.root\n let util = Player.util\n\n function onCanplay () {\n util.removeClass(root, 'xgplayer-is-enter')\n }\n\n function onPlaying () {\n util.removeClass(root, 'xgplayer-is-enter')\n }\n\n function onStartBtnClick () {\n if (util.hasClass(root, 'xgplayer-nostart')) {\n util.removeClass(root, 'xgplayer-nostart') // for ie quick switch\n util.addClass(root, 'xgplayer-is-enter')\n player.on('canplay', onCanplay)\n player.once('playing', onPlaying)\n if (!root.querySelector('video')) {\n player.start()\n }\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n } else {\n if (player.paused) {\n util.removeClass(root, 'xgplayer-nostart xgplayer-isloading')\n setTimeout(() => {\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n }, 10)\n }\n }\n }\n player.on('startBtnClick', onStartBtnClick)\n\n function onDestroy () {\n player.off('canplay', onCanplay)\n player.off('playing', onPlaying)\n player.off('startBtnClick', onStartBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('start', start)\n","import Player from '../player'\n\nlet screenShot = function () {\n let player = this\n let root = player.root\n if (!player.config.screenShot) {\n return\n }\n\n let canvas = document.createElement('canvas')\n let canvasCtx = canvas.getContext('2d')\n let img = new Image()\n canvas.width = this.config.width || 600\n canvas.height = this.config.height || 337.5\n\n let saveScreenShot = function (data, filename) {\n let saveLink = document.createElement('a')\n saveLink.href = data\n saveLink.download = filename\n let event = document.createEvent('MouseEvents')\n event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)\n saveLink.dispatchEvent(event)\n }\n\n function onScreenShotBtnClick () {\n img.onload = (function () {\n canvasCtx.drawImage(player.video, 0, 0, canvas.width, canvas.height)\n img.setAttribute('crossOrigin', 'anonymous')\n img.src = canvas.toDataURL('image/png').replace('image/png', 'image/octet-stream')\n let screenShotImg = img.src.replace(/^data:image\\/[^;]+/, 'data:application/octet-stream')\n saveScreenShot(screenShotImg, '截图.png')\n })()\n }\n player.on('screenShotBtnClick', onScreenShotBtnClick)\n\n function onDestroy () {\n player.off('screenShotBtnClick', onScreenShotBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('screenShot', screenShot)\n","import Player from '../player'\n\nlet rotate = function () {\n let player = this\n let rotateConfig = player.config.rotate\n if (!rotateConfig) { return }\n\n function onRotateBtnClick () {\n player.rotate(rotateConfig.clockwise, rotateConfig.innerRotate)\n }\n player.on('rotateBtnClick', onRotateBtnClick)\n\n function onDestroy () {\n player.off('rotateBtnClick', onRotateBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('rotate', rotate)\n","import Player from '../player'\n\nlet replay = function () {\n let player = this\n let util = Player.util\n let root = player.root\n\n function onReplayBtnClick () {\n util.removeClass(root, 'replay')\n player.replay()\n }\n player.on('replayBtnClick', onReplayBtnClick)\n\n function onEnded () {\n if (!player.config.loop) {\n util.addClass(root, 'replay')\n }\n }\n player.on('ended', onEnded)\n\n function onDestroy () {\n player.off('replayBtnClick', onReplayBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('replay', replay)\n","import Player from '../player'\n\nlet playNext = function () {\n let player = this\n let root = player.root\n let nextBtn = player.config.playNext\n player.currentVideoIndex = -1\n\n function onPlayNextBtnClick () {\n if(player.currentVideoIndex + 1 < nextBtn.urlList.length) {\n player.currentVideoIndex++\n player.video.autoplay = true\n player.src = nextBtn.urlList[player.currentVideoIndex]\n player.emit('playerNext', player.currentVideoIndex+1)\n } else {\n player.emit('urlList last')\n }\n }\n player.on('playNextBtnClick', onPlayNextBtnClick)\n\n function onDestroy () {\n player.off('playNextBtnClick', onPlayNextBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('playNext', playNext)\n","import Player from '../player'\n\nlet play = function () {\n let player = this\n\n function onPlayBtnClick () {\n if (player.ended) {\n return\n }\n if (player.paused) {\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n } else {\n player.pause()\n }\n }\n player.on('playBtnClick', onPlayBtnClick)\n\n function onDestroy () {\n player.off('playBtnClick', onPlayBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('play', play)\n","import Player from '../player'\n\nlet pip = function () {\n let player = this\n let util = Player.util\n let root = player.root\n function onPipBtnClick () {\n if (util.hasClass(root, 'xgplayer-pip-active')) {\n player.exitPIP()\n } else {\n player.getPIP()\n }\n }\n player.on('pipBtnClick', onPipBtnClick)\n\n function onDestroy () {\n player.off('pipBtnClick', onPipBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('pip', pip)\n","import Player from '../player'\n\nlet pc = function () {\n let player = this\n let util = Player.util; let controls = player.controls; let root = player.root\n let clk = 0; let _click_\n\n player.onElementClick = function (e, element) {\n e.preventDefault()\n if(!this.config.closeVideoStopPropagation) {\n e.stopPropagation()\n }\n let player = this\n if (!player.config.closeVideoClick) {\n clk++\n if (_click_) {\n clearTimeout(_click_)\n }\n if (clk === 1) {\n _click_ = setTimeout(function () {\n if (util.hasClass(player.root, 'xgplayer-nostart')) {\n return false\n } else if (!player.ended) {\n if (player.paused) {\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n } else {\n player.pause()\n }\n }\n clk = 0\n }, 200)\n } else {\n clk = 0\n }\n }\n }\n player.video.addEventListener('click', function (e) { player.onElementClick(e, player.video) }, false)\n\n player.onElementDblclick = function (e, element) {\n e.preventDefault()\n e.stopPropagation()\n let player = this\n if (!player.config.closeVideoDblclick) {\n let fullscreen = controls.querySelector('.xgplayer-fullscreen')\n if (fullscreen) {\n let clk\n if (document.createEvent) {\n clk = document.createEvent('Event')\n clk.initEvent('click', true, true)\n } else {\n clk = new Event('click')\n }\n fullscreen.dispatchEvent(clk)\n }\n }\n }\n player.video.addEventListener('dblclick', function (e) { player.onElementDblclick(e, player.video) }, false)\n\n function onMouseEnter () {\n clearTimeout(player.leavePlayerTimer)\n player.emit('focus', player)\n }\n root.addEventListener('mouseenter', onMouseEnter)\n\n function onMouseLeave () {\n if(!player.config.closePlayerBlur) {\n player.leavePlayerTimer = setTimeout(function () {\n player.emit('blur', player)\n }, player.config.leavePlayerTime || 0)\n }\n }\n root.addEventListener('mouseleave', onMouseLeave)\n\n function onControlMouseEnter (e) {\n if (player.userTimer) {\n clearTimeout(player.userTimer)\n }\n }\n controls.addEventListener('mouseenter', onControlMouseEnter, false)\n\n function onControlMouseLeave (e) {\n if(!player.config.closeControlsBlur) {\n player.emit('focus', player)\n }\n }\n controls.addEventListener('mouseleave', onControlMouseLeave, false)\n\n function onReady (e) {\n if (player.config.autoplay) {\n player.start()\n }\n }\n player.once('ready', onReady)\n\n function onDestroy () {\n root.removeEventListener('mouseenter', onMouseEnter)\n root.removeEventListener('mouseleave', onMouseLeave)\n player.off('ready', onReady)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('pc', pc)\n","import Player from '../player'\n\nlet mobile = function () {\n let player = this\n let util = Player.util; let controls = player.controls; let root = player.root\n\n player.onElementTouchend = function (e, element) {\n e.preventDefault()\n e.stopPropagation()\n let player = this\n if (util.hasClass(root, 'xgplayer-inactive')) {\n player.emit('focus')\n } else {\n player.emit('blur')\n }\n if (!player.config.closeVideoTouch && !player.isTouchMove) {\n if (util.hasClass(player.root, 'xgplayer-nostart')) {\n return false\n } else if (!player.ended) {\n if (player.paused) {\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n } else {\n player.pause()\n }\n }\n }\n }\n player.video.addEventListener('touchend', function (e) { player.onElementTouchend(e, player.video) }, false)\n\n player.video.addEventListener('touchstart', () => {\n player.isTouchMove = false\n })\n\n player.video.addEventListener('touchmove', () => {\n player.isTouchMove = true\n })\n\n function onReady (e) {\n if (player.config.autoplay) {\n player.start()\n }\n }\n player.once('ready', onReady)\n\n function onDestroy () {\n player.off('ready', onReady)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('mobile', mobile)\n","import Player from '../player'\n\nlet memoryPlay = function () {\n let player = this\n player.on('memoryPlayStart', (lastPlayTime) => {\n player.currentTime = lastPlayTime\n })\n}\n\nPlayer.install('memoryPlay', memoryPlay)\n","/* eslint-disable */\nimport Player from '../player'\nimport sniffer from '../utils/sniffer'\nimport Collector from './collect'\n\nlet logger = function () {\n let player = this\n let util = Player.util\n if (player.config.noLog !== true) {\n if(!window.__xigua_log_sdk__) {\n window.__xigua_log_sdk__ = new Collector('tracker');\n window.__xigua_log_sdk__.init({\n app_id: 1300,\n channel: 'cn',\n log: false,\n disable_sdk_monitor: true\n })\n\n window.__xigua_log_sdk__('config', {\n evtParams: {\n log_type: 'logger',\n page_url: document.URL,\n domain: window.location.host,\n pver: player.version,\n ua: navigator.userAgent.toLowerCase()\n },\n disable_auto_pv: true\n })\n window.__xigua_log_sdk__.start()\n }\n\n if(player.config.uid) {\n window.__xigua_log_sdk__('config', {\n user_unique_id: player.config.uid\n })\n }\n\n let computeWatchDur = function (played = []) {\n let minBegin = 0\n let end = 0\n let arr = []\n for (let i = 0; i < played.length; i++) {\n if(!played[i].end || played[i].begin < 0 || played[i].end < 0 || played[i].end < played[i].begin) {\n continue\n }\n if(arr.length < 1) {\n arr.push({begin: played[i].begin, end: played[i].end})\n } else {\n for (let j = 0; j < arr.length; j++) {\n let begin = played[i].begin\n let end = played[i].end\n if(end < arr[j].begin) {\n arr.splice(j, 0, {begin, end})\n break\n } else if(begin > arr[j].end) {\n if(j > arr.length - 2) {\n arr.push({begin, end})\n break\n }\n } else {\n let b = arr[j].begin\n let e = arr[j].end\n arr[j].begin = Math.min(begin, b)\n arr[j].end = Math.max(end, e)\n break\n }\n }\n }\n }\n let watch_dur = 0\n for (let i = 0; i < arr.length; i++) {\n watch_dur += arr[i].end - arr[i].begin\n }\n return watch_dur\n }\n\n let judgePtVt = function () {\n if(!player.logParams.pt || !player.logParams.vt) {\n player.logParams.pt = new Date().getTime()\n player.logParams.vt = player.logParams.pt\n }\n if(player.logParams.pt > player.logParams.vt) {\n player.logParams.pt = player.logParams.vt\n }\n }\n\n let userLeave = function (event) {\n if (util.hasClass(player.root, 'xgplayer-is-enter')) {\n let lt = new Date().getTime()\n let obj = {\n url: player.logParams.pluginSrc ? player.logParams.pluginSrc : player.logParams.playSrc,\n vid: player.config.vid,\n pt: player.logParams.pt,\n lt\n }\n window.__xigua_log_sdk__('b', obj)\n } else if (util.hasClass(player.root, 'xgplayer-playing')) {\n let watch_dur = computeWatchDur(player.logParams.played)\n let lt = new Date().getTime()\n judgePtVt()\n let obj = {\n url: player.logParams.pluginSrc ? player.logParams.pluginSrc : player.logParams.playSrc,\n vid: player.config.vid,\n bc: player.logParams.bc - 1 > 0 ? player.logParams.bc - 1 : 0,\n bb: player.logParams.bc - 1 > 0 ? 1 : 0,\n bu_acu_t: player.logParams.bu_acu_t,\n pt: player.logParams.pt,\n vt: player.logParams.vt,\n vd: player.logParams.vd * 1000,\n watch_dur: parseFloat((watch_dur * 1000).toFixed(3)),\n cur_play_pos: parseFloat((player.currentTime * 1000).toFixed(3)),\n lt\n }\n window.__xigua_log_sdk__('d', obj)\n }\n }\n if (sniffer.device === 'pc') {\n window.addEventListener('beforeunload', userLeave, false)\n } else if (sniffer.device === 'mobile') {\n window.addEventListener('pagehide', userLeave, false)\n }\n player.on('routechange', userLeave)\n\n function endedFunc () {\n let played = player.video.played\n let watch_dur = computeWatchDur(player.logParams.played)\n let et = new Date().getTime()\n judgePtVt()\n let obj = {\n url: player.logParams.pluginSrc ? player.logParams.pluginSrc : player.logParams.playSrc,\n vid: player.config.vid,\n bc: player.logParams.bc - 1 > 0 ? player.logParams.bc - 1 : 0,\n bb: player.logParams.bc - 1 > 0 ? 1 : 0,\n bu_acu_t: player.logParams.bu_acu_t,\n pt: player.logParams.pt,\n vt: player.logParams.vt,\n vd: player.logParams.vd * 1000,\n watch_dur: parseFloat((watch_dur * 1000).toFixed(3)),\n cur_play_pos: parseFloat((player.currentTime * 1000).toFixed(3)),\n et\n }\n window.__xigua_log_sdk__('c', obj)\n }\n player.on('ended', endedFunc)\n\n function urlchangeFunc () {\n let played = player.video.played\n let watch_dur = computeWatchDur(player.logParams.played)\n let lt = new Date().getTime()\n judgePtVt()\n let obj = {\n url: player.logParams.pluginSrc ? player.logParams.pluginSrc : player.logParams.playSrc,\n vid: player.config.vid,\n bc: player.logParams.bc - 1 > 0 ? player.logParams.bc - 1 : 0,\n bb: player.logParams.bc - 1 > 0 ? 1 : 0,\n bu_acu_t: player.logParams.bu_acu_t,\n pt: player.logParams.pt,\n vt: player.logParams.vt,\n vd: player.logParams.vd * 1000,\n watch_dur: parseFloat((watch_dur * 1000).toFixed(3)),\n cur_play_pos: parseFloat((player.currentTime * 1000).toFixed(3)),\n lt\n }\n window.__xigua_log_sdk__('d', obj)\n }\n player.on('urlchange', urlchangeFunc)\n\n function errorFunc (err) {\n let played = player.video.played\n let watch_dur = computeWatchDur(player.logParams.played)\n judgePtVt()\n let et = new Date().getTime()\n if (player.logParams.lastErrLog && et - player.logParams.lastErrLog <= 1000 * 3 ) {\n return\n }\n player.logParams.lastErrLog = et\n let obj = {\n url: player.logParams.pluginSrc ? player.logParams.pluginSrc : player.logParams.playSrc,\n vid: player.config.vid,\n bc: player.logParams.bc - 1 > 0 ? player.logParams.bc - 1 : 0,\n bb: player.logParams.bc - 1 > 0 ? 1 : 0,\n bu_acu_t: player.logParams.bu_acu_t,\n pt: player.logParams.pt,\n vt: player.logParams.vt,\n vd: player.logParams.vd * 1000,\n watch_dur: parseFloat((watch_dur * 1000).toFixed(3)),\n err_msg: err.errd.msg,\n line: err.errd.line,\n et,\n cur_play_pos: parseFloat((player.currentTime * 1000).toFixed(3))\n }\n if(player.logParams.nologFunc && player.logParams.nologFunc(player)) {\n return true\n } else {\n window.__xigua_log_sdk__('e', obj)\n }\n }\n player.on('error', errorFunc)\n\n function destroyFunc () {\n if (sniffer.device === 'pc') {\n window.removeEventListener('beforeunload', userLeave)\n } else if (sniffer.device === 'mobile') {\n window.removeEventListener('pagehide', userLeave)\n }\n player.off('routechange', userLeave)\n player.off('ended', endedFunc)\n player.off('urlchange', urlchangeFunc)\n player.off('error', errorFunc)\n player.off('destroy', destroyFunc)\n }\n player.once('destroy', destroyFunc)\n }\n}\n\nPlayer.install('logger', logger)\n","import Player from '../player'\n\nlet localPreview = function () {\n let player = this\n let root = player.root\n function onUpload (upload) {\n player.uploadFile = upload.files[0]\n let url = URL.createObjectURL(player.uploadFile)\n if (util.hasClass(root, 'xgplayer-nostart')) {\n player.config.url = url\n player.start()\n } else {\n player.src = url\n let playPromise = player.play()\n if (playPromise !== undefined && playPromise) {\n playPromise.catch(err => {})\n }\n }\n }\n player.on('upload', onUpload)\n\n function onDestroy () {\n player.off('upload', onUpload)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('localPreview', localPreview)\n","import Player from '../player'\n\nlet i18n = function () {\n let player = this; let lang = {}; let util = player.constructor.util\n lang.en = {\n HAVE_NOTHING: 'There is no information on whether audio/video is ready',\n HAVE_METADATA: 'Audio/video metadata is ready ',\n HAVE_CURRENT_DATA: 'Data about the current play location is available, but there is not enough data to play the next frame/millisecond',\n HAVE_FUTURE_DATA: 'Current and at least one frame of data is available',\n HAVE_ENOUGH_DATA: 'The available data is sufficient to start playing',\n NETWORK_EMPTY: 'Audio/video has not been initialized',\n NETWORK_IDLE: 'Audio/video is active and has been selected for resources, but no network is used',\n NETWORK_LOADING: 'The browser is downloading the data',\n NETWORK_NO_SOURCE: 'No audio/video source was found',\n MEDIA_ERR_ABORTED: 'The fetch process is aborted by the user',\n MEDIA_ERR_NETWORK: 'An error occurred while downloading',\n MEDIA_ERR_DECODE: 'An error occurred while decoding',\n MEDIA_ERR_SRC_NOT_SUPPORTED: 'Audio/video is not supported',\n REPLAY: 'Replay',\n ERROR: 'Network is offline',\n PLAY_TIPS: 'Play',\n PAUSE_TIPS: 'Pause',\n PLAYNEXT_TIPS: 'Play next',\n DOWNLOAD_TIPS: 'Download',\n ROTATE_TIPS: 'Rotate',\n FULLSCREEN_TIPS: \"Fullscreen\",\n EXITFULLSCREEN_TIPS: 'Exit fullscreen',\n CSSFULLSCREEN_TIPS: 'Cssfullscreen',\n EXITCSSFULLSCREEN_TIPS: 'Exit cssfullscreen',\n TEXTTRACK: 'Caption',\n PIP: 'Pip',\n SCREENSHOT: 'Screenshot'\n }\n lang['zh-cn'] = {\n HAVE_NOTHING: '没有关于音频/视频是否就绪的信息',\n HAVE_METADATA: '音频/视频的元数据已就绪',\n HAVE_CURRENT_DATA: '关于当前播放位置的数据是可用的,但没有足够的数据来播放下一帧/毫秒',\n HAVE_FUTURE_DATA: '当前及至少下一帧的数据是可用的',\n HAVE_ENOUGH_DATA: '可用数据足以开始播放',\n NETWORK_EMPTY: '音频/视频尚未初始化',\n NETWORK_IDLE: '音频/视频是活动的且已选取资源,但并未使用网络',\n NETWORK_LOADING: '浏览器正在下载数据',\n NETWORK_NO_SOURCE: '未找到音频/视频来源',\n MEDIA_ERR_ABORTED: '取回过程被用户中止',\n MEDIA_ERR_NETWORK: '当下载时发生错误',\n MEDIA_ERR_DECODE: '当解码时发生错误',\n MEDIA_ERR_SRC_NOT_SUPPORTED: '不支持的音频/视频格式',\n REPLAY: '重播',\n ERROR: '网络连接似乎出现了问题',\n PLAY_TIPS: '播放',\n PAUSE_TIPS: '暂停',\n PLAYNEXT_TIPS: '下一集',\n DOWNLOAD_TIPS: '下载',\n ROTATE_TIPS: '旋转',\n FULLSCREEN_TIPS: \"进入全屏\",\n EXITFULLSCREEN_TIPS: '退出全屏',\n CSSFULLSCREEN_TIPS: '进入样式全屏',\n EXITCSSFULLSCREEN_TIPS: '退出样式全屏',\n TEXTTRACK: '字幕',\n PIP: '画中画',\n SCREENSHOT: '截图'\n }\n lang['jp'] = {\n HAVE_NOTHING: 'オーディオ/ビデオが準備できているか情報がありません',\n HAVE_METADATA: 'オーディオ/ビデオのメタデータは準備できています',\n HAVE_CURRENT_DATA: '現在の再生位置に関するデータは利用可能ですが、次のフレーム/ミリ秒を再生するのに十分なデータがありません',\n HAVE_FUTURE_DATA: '現在、少なくとも次のフレームのデータが利用可能です',\n HAVE_ENOUGH_DATA: '利用可能なデータは再生を開始するのに十分です',\n NETWORK_EMPTY: 'オーディオ/ビデオが初期化されていません',\n NETWORK_IDLE: 'オーディオ/ビデオはアクティブでリソースが選択されていますが、ネットワークが使用されていません',\n NETWORK_LOADING: 'ブラウザーはデータをダウンロードしています',\n NETWORK_NO_SOURCE: 'オーディオ/ビデオ のソースが見つかりません',\n MEDIA_ERR_ABORTED: 'ユーザーによってフェッチプロセスが中止されました',\n MEDIA_ERR_NETWORK: 'ダウンロード中にエラーが発生しました',\n MEDIA_ERR_DECODE: 'デコード中にエラーが発生しました',\n MEDIA_ERR_SRC_NOT_SUPPORTED: 'オーディオ/ビデオ の形式がサポートされていません',\n REPLAY: 'リプレイ',\n ERROR: 'ネットワークの接続に問題が発生しました',\n PLAY_TIPS: 'プレイ',\n PAUSE_TIPS: '一時停止',\n PLAYNEXT_TIPS: '次をプレイ',\n DOWNLOAD_TIPS: 'ダウンロード',\n ROTATE_TIPS: '回転',\n FULLSCREEN_TIPS: \"フルスクリーン\",\n EXITFULLSCREEN_TIPS: 'フルスクリーンを終了',\n CSSFULLSCREEN_TIPS: 'シアターモード',\n EXITCSSFULLSCREEN_TIPS: 'シアターモードを終了',\n TEXTTRACK: '字幕',\n PIP: 'ミニプレーヤー',\n SCREENSHOT: 'スクリーンショット'\n }\n\n Object.defineProperty(player, 'lang', {\n get: function () {\n if (player.config) {\n return lang[player.config.lang] || lang['en']\n } else {\n return lang['en']\n }\n },\n set: function (value) {\n if (util.typeOf(value) === 'Object') {\n Object.keys(value).forEach(key => {\n lang[key] = value[key]\n })\n }\n }\n })\n\n}\n\nPlayer.install('i18n', i18n)\n","import Player from '../player'\n\nlet fullscreen = function () {\n let player = this\n let root = player.root\n let util = Player.util\n\n function onFullscreenBtnClick () {\n if (util.hasClass(root, 'xgplayer-is-fullscreen')) {\n player.exitFullscreen(root)\n } else {\n player.getFullscreen(root)\n }\n }\n player.on('fullscreenBtnClick', onFullscreenBtnClick)\n\n function onFullscreenChange () {\n let fullscreenEl = document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement\n if (fullscreenEl && fullscreenEl === root) {\n util.addClass(root, 'xgplayer-is-fullscreen')\n player.emit('requestFullscreen')\n } else {\n util.removeClass(root, 'xgplayer-is-fullscreen')\n player.emit('exitFullscreen')\n }\n };\n ['fullscreenchange', 'webkitfullscreenchange', 'mozfullscreenchange', 'MSFullscreenChange'].forEach(item => {\n document.addEventListener(item, onFullscreenChange)\n })\n\n function onDestroy () {\n player.off('fullscreenBtnClick', onFullscreenBtnClick);\n ['fullscreenchange', 'webkitfullscreenchange', 'mozfullscreenchange', 'MSFullscreenChange'].forEach(item => {\n document.removeEventListener(item, onFullscreenChange)\n })\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('fullscreen', fullscreen)\n","import Player from '../player'\n\nlet download = function () {\n let player = this\n\n function onDownloadBtnClick () {\n // must pass an absolute url for download\n player.download()\n }\n player.on('downloadBtnClick', onDownloadBtnClick)\n\n function onDestroy () {\n player.off('downloadBtnClick', onDownloadBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('download', download)\n","import Player from '../player'\n\nlet definition = function () {\n let player = this\n let root = player.root\n\n function onDestroy () {\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('definition', definition)\n","import Player from '../player'\n\nlet danmu = function () {\n let player = this\n let root = player.root\n let util = Player.util\n\n function onInitDanmu(danmujs) {\n let container = player.root.querySelector('xg-danmu')\n util.addClass(container, 'xgplayer-has-danmu')\n if (!player.config.danmu.closeDefaultBtn) {\n player.danmuBtn = util.copyDom(danmujs.bulletBtn.createSwitch(true))\n player.controls.appendChild(player.danmuBtn)\n\n function onTimeupdate () {\n danmujs.start()\n }\n ['click', 'touchend'].forEach(item => {\n player.danmuBtn.addEventListener(item, e => {\n e.preventDefault()\n e.stopPropagation()\n util.toggleClass(player.danmuBtn, 'danmu-switch-active')\n if (util.hasClass(player.danmuBtn, 'danmu-switch-active')) {\n util.addClass(container, 'xgplayer-has-danmu')\n player.once('timeupdate', onTimeupdate)\n } else {\n util.removeClass(container, 'xgplayer-has-danmu')\n danmujs.stop()\n }\n })\n })\n\n player.onElementClick && container.addEventListener('click', function (e) { player.onElementClick(e, container) }, false)\n player.onElementDblclick && container.addEventListener('dblclick', function (e) { player.onElementDblclick(e, container) }, false)\n\n function onPause () {\n if (util.hasClass(player.danmuBtn, 'danmu-switch-active')) {\n danmujs.pause()\n }\n }\n player.on('pause', onPause)\n\n function onPlay () {\n if (util.hasClass(player.danmuBtn, 'danmu-switch-active')) {\n danmujs.play()\n }\n }\n player.on('play', onPlay)\n\n function onSeeked () {\n if (util.hasClass(player.danmuBtn, 'danmu-switch-active')) {\n danmujs.stop()\n danmujs.start()\n }\n }\n player.on('seeked', onSeeked)\n\n function onDestroy () {\n player.off('timeupdate', onTimeupdate)\n player.off('pause', onPause)\n player.off('play', onPlay)\n player.off('seeked', onSeeked)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n }\n }\n player.on('initDefaultDanmu', onInitDanmu)\n\n}\n\nPlayer.install('danmu', danmu)\n","import Player from '../player'\n\nlet cssFullscreen = function () {\n let player = this\n let root = player.root\n let util = Player.util\n\n function onCssFullscreenBtnClick () {\n if (util.hasClass(root, 'xgplayer-is-cssfullscreen')) {\n player.exitCssFullscreen()\n } else {\n player.getCssFullscreen()\n }\n }\n player.on('cssFullscreenBtnClick', onCssFullscreenBtnClick)\n player.on('exitFullscreen', () => {\n util.removeClass(root, 'xgplayer-is-cssfullscreen')\n })\n\n function onDestroy () {\n player.off('cssFullscreenBtnClick', onCssFullscreenBtnClick)\n player.off('destroy', onDestroy)\n }\n player.once('destroy', onDestroy)\n}\n\nPlayer.install('cssFullscreen', cssFullscreen)\n","import './style/index.scss'\n\nimport './controls/enter.js'\nimport './controls/play.js'\nimport './controls/start.js'\nimport './controls/poster.js'\nimport './controls/flex.js'\nimport './controls/fullscreen.js'\nimport './controls/cssFullscreen.js'\nimport './controls/volume.js'\nimport './controls/definition.js'\nimport './controls/loading.js'\nimport './controls/progress.js'\nimport './controls/time.js'\nimport './controls/replay.js'\nimport './controls/playbackRate.js'\nimport './controls/localPreview.js'\nimport './controls/download.js'\nimport './controls/danmu.js'\nimport './controls/pip.js'\nimport './controls/playNext.js'\nimport './controls/rotate.js'\nimport './controls/screenShot.js'\nimport './controls/textTrack.js'\nimport './controls/error.js'\nimport './controls/memoryPlay.js'\n","\nvar content = require(\"!!../../../node_modules/css-loader/index.js??ref--5-1!../../../node_modules/postcss-loader/lib/index.js!../../../node_modules/sass-loader/lib/loader.js!./index.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/index.js??ref--5-1!../../../node_modules/postcss-loader/lib/index.js!../../../node_modules/sass-loader/lib/loader.js!./index.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/index.js??ref--5-1!../../../node_modules/postcss-loader/lib/index.js!../../../node_modules/sass-loader/lib/loader.js!./index.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".xgplayer-skin-default{background:#000;width:100%;height:100%;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;-ms-user-select:none}.xgplayer-skin-default *{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}.xgplayer-skin-default.xgplayer-is-fullscreen{width:100%!important;height:100%!important;padding-top:0!important;z-index:9999}.xgplayer-skin-default.xgplayer-is-fullscreen.xgplayer-inactive{cursor:none}.xgplayer-skin-default video{width:100%;height:100%;outline:none}.xgplayer-skin-default .xgplayer-none{display:none}@-webkit-keyframes loadingRotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loadingRotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes loadingDashOffset{0%{stroke-dashoffset:236}to{stroke-dashoffset:0}}@keyframes loadingDashOffset{0%{stroke-dashoffset:236}to{stroke-dashoffset:0}}.xgplayer-skin-default .xgplayer-play,.xgplayer-skin-default .xgplayer-play-img{position:relative;-webkit-order:0;-moz-box-ordinal-group:1;order:0;display:block;cursor:pointer}.xgplayer-skin-default .xgplayer-play-img .xgplayer-icon,.xgplayer-skin-default .xgplayer-play .xgplayer-icon{margin-top:3px;width:32px}.xgplayer-skin-default .xgplayer-play-img .xgplayer-icon div,.xgplayer-skin-default .xgplayer-play .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-play-img .xgplayer-icon .xgplayer-icon-play,.xgplayer-skin-default .xgplayer-play .xgplayer-icon .xgplayer-icon-play{display:block}.xgplayer-skin-default .xgplayer-play-img .xgplayer-icon .xgplayer-icon-pause,.xgplayer-skin-default .xgplayer-play .xgplayer-icon .xgplayer-icon-pause{display:none}.xgplayer-skin-default .xgplayer-play-img .xgplayer-tips .xgplayer-tip-play,.xgplayer-skin-default .xgplayer-play .xgplayer-tips .xgplayer-tip-play{display:block}.xgplayer-skin-default .xgplayer-play-img .xgplayer-tips .xgplayer-tip-pause,.xgplayer-skin-default .xgplayer-play .xgplayer-tips .xgplayer-tip-pause{display:none}.xgplayer-skin-default .xgplayer-play-img:hover,.xgplayer-skin-default .xgplayer-play:hover{opacity:.85}.xgplayer-skin-default .xgplayer-play-img:hover .xgplayer-tips,.xgplayer-skin-default .xgplayer-play:hover .xgplayer-tips{display:block}.xgplayer-skin-default.xgplayer-playing .xgplayer-play-img .xgplayer-icon .xgplayer-icon-play,.xgplayer-skin-default.xgplayer-playing .xgplayer-play .xgplayer-icon .xgplayer-icon-play{display:none}.xgplayer-skin-default.xgplayer-playing .xgplayer-play-img .xgplayer-icon .xgplayer-icon-pause,.xgplayer-skin-default.xgplayer-playing .xgplayer-play .xgplayer-icon .xgplayer-icon-pause{display:block}.xgplayer-skin-default.xgplayer-playing .xgplayer-play-img .xgplayer-tips .xgplayer-tip-play,.xgplayer-skin-default.xgplayer-playing .xgplayer-play .xgplayer-tips .xgplayer-tip-play{display:none}.xgplayer-skin-default.xgplayer-pause .xgplayer-play-img .xgplayer-icon .xgplayer-icon-play,.xgplayer-skin-default.xgplayer-pause .xgplayer-play .xgplayer-icon .xgplayer-icon-play,.xgplayer-skin-default.xgplayer-playing .xgplayer-play-img .xgplayer-tips .xgplayer-tip-pause,.xgplayer-skin-default.xgplayer-playing .xgplayer-play .xgplayer-tips .xgplayer-tip-pause{display:block}.xgplayer-skin-default.xgplayer-pause .xgplayer-play-img .xgplayer-icon .xgplayer-icon-pause,.xgplayer-skin-default.xgplayer-pause .xgplayer-play .xgplayer-icon .xgplayer-icon-pause{display:none}.xgplayer-skin-default.xgplayer-pause .xgplayer-play-img .xgplayer-tips .xgplayer-tip-play,.xgplayer-skin-default.xgplayer-pause .xgplayer-play .xgplayer-tips .xgplayer-tip-play{display:block}.xgplayer-skin-default.xgplayer-pause .xgplayer-play-img .xgplayer-tips .xgplayer-tip-pause,.xgplayer-skin-default.xgplayer-pause .xgplayer-play .xgplayer-tips .xgplayer-tip-pause{display:none}.xgplayer-skin-default .xgplayer-start{border-radius:50%;display:inline-block;width:70px;height:70px;background:rgba(0,0,0,.38);overflow:hidden;text-align:center;line-height:70px;vertical-align:middle;position:absolute;left:50%;top:50%;z-index:115;margin:-35px auto auto -35px;cursor:pointer}.xgplayer-skin-default .xgplayer-start div{position:absolute}.xgplayer-skin-default .xgplayer-start div svg{fill:hsla(0,0%,100%,.7);margin:14px}.xgplayer-skin-default .xgplayer-start .xgplayer-icon-play{display:block}.xgplayer-skin-default .xgplayer-start .xgplayer-icon-pause{display:none}.xgplayer-skin-default .xgplayer-start:hover{opacity:.85}.xgplayer-skin-default.xgplayer-playing .xgplayer-start,.xgplayer-skin-default.xgplayer-playing .xgplayer-start .xgplayer-icon-play{display:none}.xgplayer-skin-default.xgplayer-playing .xgplayer-start .xgplayer-icon-pause{display:block}.xgplayer-skin-default.xgplayer-pause .xgplayer-start{display:inline-block}.xgplayer-skin-default.xgplayer-pause .xgplayer-start .xgplayer-icon-play{display:block}.xgplayer-skin-default.replay .xgplayer-start,.xgplayer-skin-default.xgplayer-pause .xgplayer-start .xgplayer-icon-pause{display:none}.xgplayer-skin-default.replay .xgplayer-start .xgplayer-icon-play{display:block}.xgplayer-skin-default.replay .xgplayer-start .xgplayer-icon-pause{display:none}.xgplayer-skin-default .xgplayer-enter{display:none;position:absolute;left:0;top:0;width:100%;height:100%;background:#000;z-index:120}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner{display:block;position:absolute;left:50%;top:50%;height:100px;width:100px;position:relative;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div{width:12%;height:26%;background-color:hsla(0,0%,100%,.7);position:absolute;left:44%;top:37%;opacity:0;border-radius:30px;-webkit-animation:fade 1s linear infinite;animation:fade 1s linear infinite}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar1{-webkit-transform:rotate(0deg) translateY(-142%);-ms-transform:rotate(0deg) translateY(-142%);transform:rotate(0deg) translateY(-142%);-webkit-animation-delay:0s;animation-delay:0s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar2{-webkit-transform:rotate(30deg) translateY(-142%);-ms-transform:rotate(30deg) translateY(-142%);transform:rotate(30deg) translateY(-142%);-webkit-animation-delay:-.9163s;animation-delay:-.9163s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar3{-webkit-transform:rotate(60deg) translateY(-142%);-ms-transform:rotate(60deg) translateY(-142%);transform:rotate(60deg) translateY(-142%);-webkit-animation-delay:-.833s;animation-delay:-.833s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar4{-webkit-transform:rotate(90deg) translateY(-142%);-ms-transform:rotate(90deg) translateY(-142%);transform:rotate(90deg) translateY(-142%);-webkit-animation-delay:-.7497s;animation-delay:-.7497s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar5{-webkit-transform:rotate(120deg) translateY(-142%);-ms-transform:rotate(120deg) translateY(-142%);transform:rotate(120deg) translateY(-142%);-webkit-animation-delay:-.6664s;animation-delay:-.6664s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar6{-webkit-transform:rotate(150deg) translateY(-142%);-ms-transform:rotate(150deg) translateY(-142%);transform:rotate(150deg) translateY(-142%);-webkit-animation-delay:-.5831s;animation-delay:-.5831s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar7{-webkit-transform:rotate(180deg) translateY(-142%);-ms-transform:rotate(180deg) translateY(-142%);transform:rotate(180deg) translateY(-142%);-webkit-animation-delay:-.4998s;animation-delay:-.4998s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar8{-webkit-transform:rotate(210deg) translateY(-142%);-ms-transform:rotate(210deg) translateY(-142%);transform:rotate(210deg) translateY(-142%);-webkit-animation-delay:-.4165s;animation-delay:-.4165s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar9{-webkit-transform:rotate(240deg) translateY(-142%);-ms-transform:rotate(240deg) translateY(-142%);transform:rotate(240deg) translateY(-142%);-webkit-animation-delay:-.3332s;animation-delay:-.3332s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar10{-webkit-transform:rotate(270deg) translateY(-142%);-ms-transform:rotate(270deg) translateY(-142%);transform:rotate(270deg) translateY(-142%);-webkit-animation-delay:-.2499s;animation-delay:-.2499s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar11{-webkit-transform:rotate(300deg) translateY(-142%);-ms-transform:rotate(300deg) translateY(-142%);transform:rotate(300deg) translateY(-142%);-webkit-animation-delay:-.1666s;animation-delay:-.1666s}.xgplayer-skin-default .xgplayer-enter .xgplayer-enter-spinner div.xgplayer-enter-bar12{-webkit-transform:rotate(330deg) translateY(-142%);-ms-transform:rotate(330deg) translateY(-142%);transform:rotate(330deg) translateY(-142%);-webkit-animation-delay:-.0833s;animation-delay:-.0833s}@-webkit-keyframes fade{0%{opacity:1}to{opacity:.25}}.xgplayer-skin-default.xgplayer-is-enter .xgplayer-enter{display:block}.xgplayer-skin-default .xgplayer-poster{display:none;position:absolute;left:0;top:0;width:100%;height:100%;z-index:100;background-size:cover;background-position:50%}.xgplayer-skin-default.xgplayer-nostart .xgplayer-poster{display:block}.xgplayer-skin-default .xgplayer-placeholder{-webkit-flex:1;-moz-box-flex:1;flex:1;-webkit-order:3;-moz-box-ordinal-group:4;order:3;display:block}.xgplayer-skin-default .xgplayer-fullscreen,.xgplayer-skin-default .xgplayer-fullscreen-img{position:relative;-webkit-order:13;-moz-box-ordinal-group:14;order:13;display:block;cursor:pointer}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-icon,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-icon{margin-top:3px}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-icon div,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-icon .xgplayer-icon-requestfull,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-icon .xgplayer-icon-requestfull{display:block}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-icon .xgplayer-icon-exitfull,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-icon .xgplayer-icon-exitfull{display:none}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-tips,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-tips{position:absolute;right:0;left:auto}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-tips .xgplayer-tip-requestfull,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-tips .xgplayer-tip-requestfull{display:block}.xgplayer-skin-default .xgplayer-fullscreen-img .xgplayer-tips .xgplayer-tip-exitfull,.xgplayer-skin-default .xgplayer-fullscreen .xgplayer-tips .xgplayer-tip-exitfull{display:none}.xgplayer-skin-default .xgplayer-fullscreen-img:hover,.xgplayer-skin-default .xgplayer-fullscreen:hover{opacity:.85}.xgplayer-skin-default .xgplayer-fullscreen-img:hover .xgplayer-tips,.xgplayer-skin-default .xgplayer-fullscreen:hover .xgplayer-tips{display:block}.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen-img .xgplayer-icon .xgplayer-icon-requestfull,.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen .xgplayer-icon .xgplayer-icon-requestfull{display:none}.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen-img .xgplayer-icon .xgplayer-icon-exitfull,.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen .xgplayer-icon .xgplayer-icon-exitfull{display:block}.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen-img .xgplayer-tips .xgplayer-tip-requestfull,.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen .xgplayer-tips .xgplayer-tip-requestfull{display:none}.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen-img .xgplayer-tips .xgplayer-tip-exitfull,.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-fullscreen .xgplayer-tips .xgplayer-tip-exitfull{display:block}.xgplayer-skin-default .xgplayer-cssfullscreen,.xgplayer-skin-default .xgplayer-cssfullscreen-img{position:relative;-webkit-order:12;-moz-box-ordinal-group:13;order:12;display:block;cursor:pointer}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-icon,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-icon{width:32px;margin-top:5px}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-icon div,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-icon .xgplayer-icon-requestfull,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-icon .xgplayer-icon-requestfull{display:block}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-icon .xgplayer-icon-exitfull,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-icon .xgplayer-icon-exitfull{display:none}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-tips,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-tips{margin-left:-40px}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-tips .xgplayer-tip-requestfull,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-tips .xgplayer-tip-requestfull{display:block}.xgplayer-skin-default .xgplayer-cssfullscreen-img .xgplayer-tips .xgplayer-tip-exitfull,.xgplayer-skin-default .xgplayer-cssfullscreen .xgplayer-tips .xgplayer-tip-exitfull{display:none}.xgplayer-skin-default .xgplayer-cssfullscreen-img:hover,.xgplayer-skin-default .xgplayer-cssfullscreen:hover{opacity:.85}.xgplayer-skin-default .xgplayer-cssfullscreen-img:hover .xgplayer-tips,.xgplayer-skin-default .xgplayer-cssfullscreen:hover .xgplayer-tips{display:block}.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-icon .xgplayer-icon-requestfull,.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-icon .xgplayer-icon-requestfull{display:none}.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-icon .xgplayer-icon-exitfull,.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-icon .xgplayer-icon-exitfull{display:block}.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-tips,.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-tips{margin-left:-47px}.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-tips .xgplayer-tip-requestfull,.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-tips .xgplayer-tip-requestfull{display:none}.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-tips .xgplayer-tip-exitfull,.xgplayer-skin-default.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-tips .xgplayer-tip-exitfull{display:block}.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-cssfullscreen,.xgplayer-skin-default.xgplayer-is-fullscreen .xgplayer-cssfullscreen-img{display:none}.xgplayer-skin-default.xgplayer-is-cssfullscreen{position:fixed!important;left:0!important;top:0!important;width:100%!important;height:100%!important;z-index:99999!important}.lang-is-en .xgplayer-cssfullscreen-img .xgplayer-tips,.lang-is-en .xgplayer-cssfullscreen .xgplayer-tips,.lang-is-en.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-tips,.lang-is-en.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-tips{margin-left:-46px}.lang-is-jp .xgplayer-cssfullscreen-img .xgplayer-tips,.lang-is-jp .xgplayer-cssfullscreen .xgplayer-tips{margin-left:-120px}.lang-is-jp.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen-img .xgplayer-tips,.lang-is-jp.xgplayer-is-cssfullscreen .xgplayer-cssfullscreen .xgplayer-tips{margin-left:-60px}.xgplayer-skin-default .xgplayer-volume{outline:none;-webkit-order:4;-moz-box-ordinal-group:5;order:4;width:28px;height:140px;display:block;position:relative;margin-top:-100px;overflow:hidden;z-index:18}.xgplayer-skin-default .xgplayer-volume .xgplayer-icon{margin-top:8px;cursor:pointer;position:absolute;bottom:-9px}.xgplayer-skin-default .xgplayer-volume .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-volume .xgplayer-icon .xgplayer-icon-large{display:block}.xgplayer-skin-default .xgplayer-volume .xgplayer-icon .xgplayer-icon-muted,.xgplayer-skin-default .xgplayer-volume .xgplayer-icon .xgplayer-icon-small{display:none}.xgplayer-skin-default .xgplayer-slider{display:none;position:absolute;width:28px;height:92px;background:rgba(0,0,0,.54);border-radius:1px;bottom:42px;outline:none}.xgplayer-skin-default .xgplayer-slider:after{content:\\\" \\\";display:block;height:15px;width:28px;position:absolute;bottom:-15px;left:0;z-index:20}.xgplayer-skin-default .xgplayer-bar,.xgplayer-skin-default .xgplayer-drag{display:block;position:absolute;bottom:6px;left:12px;background:hsla(0,0%,100%,.3);border-radius:100px;width:4px;height:76px;outline:none;cursor:pointer}.xgplayer-skin-default .xgplayer-drag{bottom:0;left:0;background:#fa1f41;max-height:76px}.xgplayer-skin-default .xgplayer-drag:after{content:\\\" \\\";display:inline-block;width:8px;height:8px;background:#fff;box-shadow:0 0 5px 0 rgba(0,0,0,.26);position:absolute;border-radius:50%;left:-2px;top:-6px}.xgplayer-skin-default.xgplayer-volume-active .xgplayer-slider,.xgplayer-skin-default.xgplayer-volume-large .xgplayer-volume .xgplayer-icon .xgplayer-icon-large{display:block}.xgplayer-skin-default.xgplayer-volume-large .xgplayer-volume .xgplayer-icon .xgplayer-icon-muted,.xgplayer-skin-default.xgplayer-volume-large .xgplayer-volume .xgplayer-icon .xgplayer-icon-small,.xgplayer-skin-default.xgplayer-volume-small .xgplayer-volume .xgplayer-icon .xgplayer-icon-large{display:none}.xgplayer-skin-default.xgplayer-volume-small .xgplayer-volume .xgplayer-icon .xgplayer-icon-small{display:block}.xgplayer-skin-default.xgplayer-volume-muted .xgplayer-volume .xgplayer-icon .xgplayer-icon-large,.xgplayer-skin-default.xgplayer-volume-muted .xgplayer-volume .xgplayer-icon .xgplayer-icon-small,.xgplayer-skin-default.xgplayer-volume-small .xgplayer-volume .xgplayer-icon .xgplayer-icon-muted{display:none}.xgplayer-skin-default.xgplayer-volume-muted .xgplayer-volume .xgplayer-icon .xgplayer-icon-muted{display:block}.xgplayer-skin-default.xgplayer-mobile .xgplayer-volume .xgplayer-slider{display:none}.xgplayer-skin-default .xgplayer-definition{-webkit-order:5;-moz-box-ordinal-group:6;order:5;width:60px;height:150px;z-index:18;position:relative;outline:none;display:none;cursor:default;margin-left:10px;margin-top:-119px}.xgplayer-skin-default .xgplayer-definition ul{display:none;list-style:none;width:78px;background:rgba(0,0,0,.54);border-radius:1px;position:absolute;bottom:30px;left:0;text-align:center;white-space:nowrap;margin-left:-10px;z-index:26;cursor:pointer}.xgplayer-skin-default .xgplayer-definition ul li{opacity:.7;font-family:PingFangSC-Regular;font-size:11px;color:hsla(0,0%,100%,.8);padding:6px 13px}.xgplayer-skin-default .xgplayer-definition ul li.selected,.xgplayer-skin-default .xgplayer-definition ul li:hover{color:#fff;opacity:1}.xgplayer-skin-default .xgplayer-definition .name{text-align:center;font-family:PingFangSC-Regular;font-size:13px;cursor:pointer;color:hsla(0,0%,100%,.8);position:absolute;bottom:0;width:60px;height:20px;line-height:20px;background:rgba(0,0,0,.38);border-radius:10px;display:inline-block;vertical-align:middle}.xgplayer-skin-default.xgplayer-definition-active .xgplayer-definition ul,.xgplayer-skin-default.xgplayer-is-definition .xgplayer-definition{display:block}.xgplayer-skin-default .xgplayer-time{-webkit-order:2;-moz-box-ordinal-group:3;order:2;font-family:ArialMT;font-size:13px;color:#fff;line-height:40px;text-align:center;display:inline-block}.xgplayer-skin-default .xgplayer-time span:after{content:\\\"/\\\";display:inline-block;padding:0 3px}.xgplayer-skin-default .xgplayer-time em{color:hsla(0,0%,100%,.5)}.xgplayer-skin-default .xgplayer-controls{display:-webkit-flex;display:-moz-box;display:flex;position:absolute;bottom:0;left:0;right:0;height:40px;background-image:linear-gradient(180deg,transparent,rgba(0,0,0,.37),rgba(0,0,0,.75),rgba(0,0,0,.75));z-index:10}.xgplayer-skin-default.no-controls .xgplayer-controls,.xgplayer-skin-default.xgplayer-inactive .xgplayer-controls,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls>*,.xgplayer-skin-default.xgplayer-nostart .xgplayer-controls{display:none}.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-cssfullscreen,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-definition,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-fullscreen,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-live,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-placeholder,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-play,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-play-img,.xgplayer-skin-default.xgplayer-is-live .xgplayer-controls .xgplayer-volume{display:block}.xgplayer-skin-default .xgplayer-live{display:block;font-size:12px;color:#fff;line-height:40px;-webkit-order:1;-moz-box-ordinal-group:2;order:1}.xgplayer-skin-default .xgplayer-loading{display:none;width:100px;height:100px;overflow:hidden;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7);position:absolute;left:50%;top:50%;margin:-70px auto auto -50px}.xgplayer-skin-default .xgplayer-loading svg{border-radius:50%;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-animation:loadingRotate 1s linear infinite;animation:loadingRotate 1s linear infinite}.xgplayer-skin-default .xgplayer-loading svg path{stroke:#ddd;stroke-dasharray:236;-webkit-animation:loadingDashOffset 2s linear infinite;animation:loadingDashOffset 2s linear infinite;animation-direction:alternate-reverse;fill:none;stroke-width:12px}.xgplayer-skin-default.xgplayer-nostart .xgplayer-loading{display:none}.xgplayer-skin-default.xgplayer-isloading .xgplayer-loading{display:block}.xgplayer-skin-default .xgplayer-progress{display:block;position:absolute;height:20px;line-height:20px;left:12px;right:12px;outline:none;top:-10px;z-index:35}.xgplayer-skin-default .xgplayer-progress-outer{background:hsla(0,0%,100%,.3);display:block;height:3px;line-height:3px;margin-top:8.5px;width:100%;position:relative;cursor:pointer}.xgplayer-skin-default .xgplayer-progress-cache,.xgplayer-skin-default .xgplayer-progress-played{display:block;height:100%;line-height:1;position:absolute;left:0;top:0}.xgplayer-skin-default .xgplayer-progress-cache{width:0;background:hsla(0,0%,100%,.5)}.xgplayer-skin-default .xgplayer-progress-played{display:block;width:0;background-image:linear-gradient(-90deg,#fa1f41,#e31106);border-radius:0 1.5px 1.5px 0}.xgplayer-skin-default .xgplayer-progress-btn{display:none;position:absolute;left:0;top:-5px;width:13px;height:13px;border-radius:30px;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.26);left:100%;-webkit-transform:translate(-50%);-ms-transform:translate(-50%);transform:translate(-50%)}.xgplayer-skin-default .xgplayer-progress-point{position:absolute}.xgplayer-skin-default .xgplayer-progress-point.xgplayer-tips{margin-left:0;top:-25px;display:none;z-index:100}.xgplayer-skin-default .xgplayer-progress-dot{display:inline-block;position:absolute;height:3px;width:5px;top:0;background:#fff;border-radius:6px;z-index:16}.xgplayer-skin-default .xgplayer-progress-dot .xgplayer-progress-tip{position:absolute;left:0;top:-40px;height:auto;line-height:30px;width:auto;-webkit-transform:scale(.8);-ms-transform:scale(.8);transform:scale(.8);background:rgba(0,0,0,.3);border-radius:6px;border:1px solid rgba(0,0,0,.8);cursor:default;white-space:nowrap;display:none}.xgplayer-skin-default .xgplayer-progress-dot-show .xgplayer-progress-tip{display:block}.xgplayer-skin-default .xgplayer-progress-thumbnail{position:absolute;-moz-box-sizing:border-box;box-sizing:border-box}.xgplayer-skin-default .xgplayer-progress-thumbnail.xgplayer-tips{margin-left:0;display:none;z-index:99}.xgplayer-skin-default .xgplayer-progress:focus .xgplayer-progress-outer,.xgplayer-skin-default .xgplayer-progress:hover .xgplayer-progress-outer{height:6px;margin-top:7px}.xgplayer-skin-default .xgplayer-progress:focus .xgplayer-progress-dot,.xgplayer-skin-default .xgplayer-progress:hover .xgplayer-progress-dot{height:6px}.xgplayer-skin-default .xgplayer-progress:focus .xgplayer-progress-btn,.xgplayer-skin-default .xgplayer-progress:hover .xgplayer-progress-btn{display:block;top:-3px}.xgplayer-skin-default.xgplayer-definition-active .xgplayer-progress,.xgplayer-skin-default.xgplayer-playbackrate-active .xgplayer-progress,.xgplayer-skin-default.xgplayer-texttrack-active .xgplayer-progress,.xgplayer-skin-default.xgplayer-volume-active .xgplayer-progress{z-index:15}.xgplayer-skin-default.xgplayer-mobile .xgplayer-progress-btn{display:block!important}.xgplayer-skin-default.xgplayer-mobile .xgplayer-progress:focus .xgplayer-progress-outer,.xgplayer-skin-default.xgplayer-mobile .xgplayer-progress:hover .xgplayer-progress-outer{height:3px!important;margin-top:8.5px!important}.xgplayer-skin-default.xgplayer-mobile .xgplayer-progress:focus .xgplayer-progress-btn,.xgplayer-skin-default.xgplayer-mobile .xgplayer-progress:hover .xgplayer-progress-btn{display:block!important;top:-5px!important}.xgplayer-skin-default .xgplayer-replay{position:absolute;left:0;top:0;width:100%;height:100%;z-index:105;display:none;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:rgba(0,0,0,.54);-webkit-flex-direction:column;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column}.xgplayer-skin-default .xgplayer-replay svg{background:rgba(0,0,0,.58);border-radius:100%;cursor:pointer}.xgplayer-skin-default .xgplayer-replay svg path{-webkit-transform:translate(20px,21px);-ms-transform:translate(20px,21px);transform:translate(20px,21px);fill:#ddd}.xgplayer-skin-default .xgplayer-replay svg:hover{background:rgba(0,0,0,.38)}.xgplayer-skin-default .xgplayer-replay svg:hover path{fill:#fff}.xgplayer-skin-default .xgplayer-replay .xgplayer-replay-txt{display:inline-block;font-family:PingFangSC-Regular;font-size:14px;color:#fff;line-height:34px}.xgplayer-skin-default.xgplayer.xgplayer-ended .xgplayer-controls{display:none}.xgplayer-skin-default.xgplayer.xgplayer-ended .xgplayer-replay{display:-webkit-flex;display:-moz-box;display:flex}.xgplayer-skin-default .xgplayer-playbackrate{-webkit-order:8;-moz-box-ordinal-group:9;order:8;width:60px;height:20px;z-index:18;position:relative;display:inline-block;cursor:default}.xgplayer-skin-default .xgplayer-playbackrate ul{display:none;list-style:none;width:78px;background:rgba(0,0,0,.54);border-radius:1px;position:absolute;bottom:20px;left:0;text-align:left;white-space:nowrap;z-index:26;cursor:pointer}.xgplayer-skin-default .xgplayer-playbackrate ul li{opacity:.7;font-family:PingFangSC-Regular;font-size:11px;color:hsla(0,0%,100%,.8);position:relative;padding:4px 0;text-align:center}.xgplayer-skin-default .xgplayer-playbackrate ul li.selected,.xgplayer-skin-default .xgplayer-playbackrate ul li:hover{color:#fff;opacity:1}.xgplayer-skin-default .xgplayer-playbackrate ul li:first-child{position:relative;margin-top:12px}.xgplayer-skin-default .xgplayer-playbackrate ul li:last-child{position:relative;margin-bottom:12px}.xgplayer-skin-default .xgplayer-playbackrate .name{height:20px;position:relative;top:11px;text-align:center;background:rgba(0,0,0,.38);color:hsla(0,0%,100%,.8);border-radius:10px;line-height:20px}.xgplayer-skin-default .xgplayer-playbackrate span{position:relative;top:19px;font-weight:700;text-shadow:0 0 4px rgba(0,0,0,.6)}.xgplayer-skin-default .xgplayer-playbackrate:hover{opacity:1}.xgplayer-skin-default.xgplayer-playbackrate-active .xgplayer-playbackrate ul{display:block}.xgplayer-skin-default .xgplayer-download{position:relative;-webkit-order:9;-moz-box-ordinal-group:10;order:9;display:block;cursor:pointer}.xgplayer-skin-default .xgplayer-download .xgplayer-icon{margin-top:3px}.xgplayer-skin-default .xgplayer-download .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-download .xgplayer-icon svg{position:relative;top:5px;left:5px}.xgplayer-skin-default .xgplayer-download .xgplayer-tips{margin-left:-20px}.xgplayer-skin-default .xgplayer-download .xgplayer-tips .xgplayer-tip-download{display:block}.xgplayer-skin-default .xgplayer-download:hover{opacity:.85}.xgplayer-skin-default .xgplayer-download:hover .xgplayer-tips{display:block}.lang-is-en .xgplayer-download .xgplayer-tips{margin-left:-32px}.lang-is-jp .xgplayer-download .xgplayer-tips{margin-left:-40px}.xgplayer-skin-default .danmu-switch{-webkit-order:6;-moz-box-ordinal-group:7;order:6;z-index:26}.xgplayer-skin-default .xgplayer-danmu{display:none;position:absolute;top:0;left:0;right:0;height:100%;overflow:hidden;z-index:9;outline:none}.xgplayer-skin-default .xgplayer-danmu>*{position:absolute;white-space:nowrap;z-index:9}.xgplayer-skin-default .xgplayer-danmu.xgplayer-has-danmu{display:block}.xgplayer-skin-default .xgplayer-panel{outline:none;-webkit-order:7;-moz-box-ordinal-group:8;order:7;width:40px;height:40px;display:inline-block;position:relative;font-family:PingFangSC-Regular;font-size:13px;color:hsla(0,0%,100%,.8);z-index:36}.xgplayer-skin-default .xgplayer-panel .xgplayer-panel-icon{cursor:pointer;position:absolute;margin-left:5px;top:10px}.xgplayer-skin-default .xgplayer-panel-active{display:block!important;bottom:30px}.xgplayer-skin-default .xgplayer-panel-slider{z-index:36;display:none;position:absolute;width:230px;height:230px;background:rgba(0,0,0,.54);border-radius:1px;padding:10px 20px;outline:none;left:-115px;bottom:40px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-hidemode{padding-bottom:10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-hidemode-radio li{display:inline;list-style:none;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-hidemode ul{display:-webkit-flex;display:-moz-box;display:flex;-webkit-justify-content:space-around;justify-content:space-around}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-hidemode li{margin:0 12px;font-size:11px;color:#aaa}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-hidemode-font{margin-bottom:10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency{display:block;margin-top:10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-line{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;width:150px;height:4px;background:#aaa;border-radius:4px;border-style:none;margin-left:10px;margin-top:-2px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-line::-moz-focus-outer{border:0!important}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-color::-webkit-slider-runnable-track{outline:none;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-color::-moz-range-track{outline:none;background-color:#aaa;border-color:transparent;cursor:pointer;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-color::-ms-track{outline:none;background-color:#aaa;color:transparent;border-color:transparent;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-bar::-webkit-slider-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;margin-top:-4px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-bar::-moz-range-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:0;width:0;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-bar::-ms-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-transparency .xgplayer-transparency-bar::-moz-range-progress{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:4px;background:linear-gradient(90deg,#f85959,#f85959 100%,#aaa)}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea{display:block;margin-top:8px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-name{display:inline-block;position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-control{display:inline-block}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-control-up{width:150px;margin-left:10px;display:-moz-box;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;color:#aaa}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-control-down{position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-control-down-dots{display:-webkit-flex;display:-moz-box;display:flex;width:150px;margin-left:10px;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-threequarters,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-twoquarters{margin-left:-6px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea-full{margin-right:3px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-line{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;width:150px;height:4px;background:#aaa;border-radius:4px;border-style:none;margin-left:10px;margin-top:-2px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-line::-moz-focus-outer{border:0!important}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-color::-webkit-slider-runnable-track{outline:none;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-color::-moz-range-track{outline:none;background-color:#aaa;border-color:transparent;cursor:pointer;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-color::-ms-track{outline:none;background-color:#aaa;color:transparent;border-color:transparent;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-bar::-webkit-slider-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;margin-top:-4px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-bar::-moz-range-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:0;width:0;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-bar::-ms-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-full-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-onequarters-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-threequarters-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-twoquarters-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-showarea .xgplayer-showarea-zero-dot{width:3px;height:3px;border:3px solid #aaa;border-radius:50%;background-color:#aaa;position:relative;top:16px;z-index:-1}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed{display:block}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed-name{display:inline-block;position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed-control{display:inline-block}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed-control-up{width:150px;margin-left:10px;display:-moz-box;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;color:#aaa}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed-control-down{position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed-control-down-dots{display:-webkit-flex;display:-moz-box;display:flex;width:150px;margin-left:10px;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-line{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;width:150px;height:4px;background:#aaa;border-radius:4px;border-style:none;margin-left:10px;margin-top:-2px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-line::-moz-focus-outer{border:0!important}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-color::-webkit-slider-runnable-track{outline:none;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-color::-moz-range-track{outline:none;background-color:#aaa;border-color:transparent;cursor:pointer;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-color::-ms-track{outline:none;background-color:#aaa;color:transparent;border-color:transparent;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-bar::-webkit-slider-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;margin-top:-4px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-bar::-moz-range-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:0;width:0;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-bar::-ms-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-large-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-middle-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmuspeed .xgplayer-danmuspeed-small-dot{width:3px;height:3px;border:3px solid #aaa;border-radius:50%;background-color:#aaa;position:relative;top:16px;z-index:-1}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont{display:block}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont-name{display:inline-block;position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont-control{display:inline-block}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont-control-up{width:150px;margin-left:10px;display:-moz-box;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between;color:#aaa}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont-control-down{position:relative;top:-10px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont-control-down-dots{display:-webkit-flex;display:-moz-box;display:flex;width:150px;margin-left:10px;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-line{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;width:150px;height:4px;background:#aaa;border-radius:4px;border-style:none;margin-left:10px;margin-top:-2px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-line::-moz-focus-outer{border:0!important}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-color::-webkit-slider-runnable-track{outline:none;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-color::-moz-range-track{outline:none;background-color:#aaa;border-color:transparent;cursor:pointer;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-color::-ms-track{outline:none;background-color:#aaa;color:transparent;border-color:transparent;width:150px;height:4px;border-radius:4px}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-bar::-webkit-slider-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;margin-top:-4px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-bar::-moz-range-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:0;width:0;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-bar::-ms-thumb{outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:6px solid #f85959;height:6px;width:6px;border-radius:6px;cursor:pointer}.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-large-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-middle-dot,.xgplayer-skin-default .xgplayer-panel-slider .xgplayer-danmufont .xgplayer-danmufont-small-dot{width:3px;height:3px;border:3px solid #aaa;border-radius:50%;background-color:#aaa;position:relative;top:16px;z-index:-1}.xgplayer-skin-default .xgplayer-playnext{position:relative;-webkit-order:1;-moz-box-ordinal-group:2;order:1;display:block;cursor:pointer;top:-2px}.xgplayer-skin-default .xgplayer-playnext .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-playnext .xgplayer-tips .xgplayer-tip-playnext{display:block}.xgplayer-skin-default .xgplayer-playnext:hover{opacity:.85}.xgplayer-skin-default .xgplayer-playnext:hover .xgplayer-tips{display:block}.lang-is-en .xgplayer-playnext .xgplayer-tips{margin-left:-25px}.lang-is-jp .xgplayer-playnext .xgplayer-tips{margin-left:-38px}.xgplayer-skin-default .xgplayer-pip{-webkit-order:9;-moz-box-ordinal-group:10;order:9;position:relative;outline:none;display:block;cursor:pointer;height:20px;top:8px}.xgplayer-skin-default .xgplayer-pip .name{text-align:center;font-family:PingFangSC-Regular;font-size:13px;line-height:20px;height:20px;color:hsla(0,0%,100%,.8)}.xgplayer-skin-default .xgplayer-pip .name span{width:60px;height:20px;line-height:20px;background:rgba(0,0,0,.38);border-radius:10px;display:inline-block;vertical-align:middle}.xgplayer-skin-default .xgplayer-pip-lay{position:absolute;top:26px;left:0;width:100%;height:100%;z-index:130;cursor:pointer;background-color:transparent;display:none}.xgplayer-skin-default .xgplayer-pip-lay div{width:100%;height:100%}.xgplayer-skin-default .xgplayer-pip-drag{cursor:move;position:absolute;top:0;left:0;width:100%;height:26px;line-height:26px;background-image:linear-gradient(rgba(0,0,0,.3),transparent);z-index:130;display:none}.xgplayer-skin-default.xgplayer-pip-active{position:fixed;right:0;bottom:200px;width:320px!important;height:180px!important;z-index:110!important}.xgplayer-skin-default.xgplayer-pip-active .xgplayer-controls,.xgplayer-skin-default.xgplayer-pip-active .xgplayer-danmu{display:none}.xgplayer-skin-default.xgplayer-pip-active .xgplayer-pip-lay{display:block}.xgplayer-skin-default.xgplayer-pip-active .xgplayer-pip-drag{display:-webkit-flex;display:-moz-box;display:flex}.xgplayer-skin-default.xgplayer-inactive .xgplayer-pip-drag{display:none}.lang-is-jp .xgplayer-pip .name span{width:70px;height:20px}.xgplayer-skin-default .xgplayer-rotate{position:relative;-webkit-order:10;-moz-box-ordinal-group:11;order:10;display:block;cursor:pointer}.xgplayer-skin-default .xgplayer-rotate .xgplayer-icon{margin-top:7px;width:26px}.xgplayer-skin-default .xgplayer-rotate .xgplayer-icon div{position:absolute}.xgplayer-skin-default .xgplayer-rotate .xgplayer-tips{margin-left:-22px}.xgplayer-skin-default .xgplayer-rotate .xgplayer-tips .xgplayer-tip-rotate{display:block}.xgplayer-skin-default .xgplayer-rotate:hover{opacity:.85}.xgplayer-skin-default .xgplayer-rotate:hover .xgplayer-tips{display:block}.lang-is-en .xgplayer-rotate .xgplayer-tips{margin-left:-26px}.lang-is-jp .xgplayer-rotate .xgplayer-tips{margin-left:-38px}.xgplayer-skin-default .xgplayer-screenshot{-webkit-order:11;-moz-box-ordinal-group:12;order:11;position:relative;outline:none;display:block;cursor:pointer;height:20px;top:8px}.xgplayer-skin-default .xgplayer-screenshot .name{text-align:center;font-family:PingFangSC-Regular;font-size:13px;line-height:20px;height:20px;color:hsla(0,0%,100%,.8)}.xgplayer-skin-default .xgplayer-screenshot .name span{width:60px;height:20px;line-height:20px;background:rgba(0,0,0,.38);border-radius:10px;display:inline-block;vertical-align:middle}.lang-is-en .xgplayer-screenshot .name span,.lang-is-jp .xgplayer-screenshot .name span{width:75px;height:20px}.xgplayer-skin-default .xgplayer-texttrack{-webkit-order:7;-moz-box-ordinal-group:8;order:7;width:60px;height:150px;z-index:18;position:relative;outline:none;display:none;cursor:default;margin-top:-119px}.xgplayer-skin-default .xgplayer-texttrack ul{display:none;list-style:none;width:78px;background:rgba(0,0,0,.54);border-radius:1px;position:absolute;bottom:30px;left:0;text-align:center;white-space:nowrap;margin-left:-10px;z-index:26;cursor:pointer}.xgplayer-skin-default .xgplayer-texttrack ul li{opacity:.7;font-family:PingFangSC-Regular;font-size:11px;color:hsla(0,0%,100%,.8);padding:6px 13px}.xgplayer-skin-default .xgplayer-texttrack ul li.selected,.xgplayer-skin-default .xgplayer-texttrack ul li:hover{color:#fff;opacity:1}.xgplayer-skin-default .xgplayer-texttrack .name{text-align:center;font-family:PingFangSC-Regular;font-size:13px;cursor:pointer;color:hsla(0,0%,100%,.8);position:absolute;bottom:0;width:60px;height:20px;line-height:20px;background:rgba(0,0,0,.38);border-radius:10px;display:inline-block;vertical-align:middle}.xgplayer-skin-default.xgplayer-is-texttrack .xgplayer-texttrack,.xgplayer-skin-default.xgplayer-texttrack-active .xgplayer-texttrack ul{display:block}.xgplayer-skin-default .xgplayer-icon{display:block;width:40px;height:40px;overflow:hidden;fill:#fff}.xgplayer-skin-default .xgplayer-tips{background:rgba(0,0,0,.54);border-radius:1px;display:none;position:absolute;font-family:PingFangSC-Regular;font-size:11px;color:#fff;padding:2px 4px;text-align:center;top:-30px;left:50%;margin-left:-16px;width:auto;white-space:nowrap}.xgplayer-skin-default.xgplayer-mobile .xgplayer-tips{display:none!important}.xgplayer-skin-default .xgplayer-error{background:#000;display:none;position:absolute;left:0;top:0;width:100%;height:100%;z-index:125;font-family:PingFangSC-Regular;font-size:14px;color:#fff;text-align:center;line-height:100%;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;-webkit-align-items:center;-moz-box-align:center;align-items:center}.xgplayer-skin-default .xgplayer-error .xgplayer-error-refresh{color:#fa1f41;padding:0 3px;cursor:pointer}.xgplayer-skin-default .xgplayer-error .xgplayer-error-text{line-height:18px;margin:auto 6px}.xgplayer-skin-default.xgplayer-is-error .xgplayer-error{display:-webkit-flex;display:-moz-box;display:flex}.xgplayer-skin-default .xgplayer-memoryplay-spot{position:absolute;height:32px;left:10px;bottom:46px;background:rgba(0,0,0,.5);border-radius:32px;line-height:32px;color:#ddd;z-index:15;padding:0 32px 0 16px}.xgplayer-skin-default .xgplayer-memoryplay-spot .xgplayer-lasttime{color:red;font-weight:700}.xgplayer-skin-default .xgplayer-memoryplay-spot .btn-close{position:absolute;width:16px;height:16px;right:10px;top:2px;cursor:pointer;color:#fff;font-size:16px}\", \"\"]);\n\n// exports\n","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n\nvar stylesInDom = {};\n\nvar\tmemoize = function (fn) {\n\tvar memo;\n\n\treturn function () {\n\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\n\t\treturn memo;\n\t};\n};\n\nvar isOldIE = memoize(function () {\n\t// Test for IE <= 9 as proposed by Browserhacks\n\t// @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n\t// Tests for existence of standard globals is to allow style-loader\n\t// to operate correctly into non-standard environments\n\t// @see https://github.com/webpack-contrib/style-loader/issues/177\n\treturn window && document && document.all && !window.atob;\n});\n\nvar getTarget = function (target) {\n return document.querySelector(target);\n};\n\nvar getElement = (function (fn) {\n\tvar memo = {};\n\n\treturn function(target) {\n // If passing function in options, then use it for resolve \"head\" element.\n // Useful for Shadow Root style i.e\n // {\n // insertInto: function () { return document.querySelector(\"#foo\").shadowRoot }\n // }\n if (typeof target === 'function') {\n return target();\n }\n if (typeof memo[target] === \"undefined\") {\n\t\t\tvar styleTarget = getTarget.call(this, target);\n\t\t\t// Special case to return head of iframe instead of iframe itself\n\t\t\tif (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n\t\t\t\ttry {\n\t\t\t\t\t// This will throw an exception if access to iframe is blocked\n\t\t\t\t\t// due to cross-origin restrictions\n\t\t\t\t\tstyleTarget = styleTarget.contentDocument.head;\n\t\t\t\t} catch(e) {\n\t\t\t\t\tstyleTarget = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tmemo[target] = styleTarget;\n\t\t}\n\t\treturn memo[target]\n\t};\n})();\n\nvar singleton = null;\nvar\tsingletonCounter = 0;\nvar\tstylesInsertedAtTop = [];\n\nvar\tfixUrls = require(\"./urls\");\n\nmodule.exports = function(list, options) {\n\tif (typeof DEBUG !== \"undefined\" && DEBUG) {\n\t\tif (typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\n\t}\n\n\toptions = options || {};\n\n\toptions.attrs = typeof options.attrs === \"object\" ? options.attrs : {};\n\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of