/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/videojs-errors@6.2.0/dist/videojs-errors.cjs.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
/*! @name videojs-errors @version 6.2.0 @license Apache-2.0 */
"use strict";var videojs=require("video.js"),document=require("global/document");function _interopDefaultLegacy(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var videojs__default=_interopDefaultLegacy(videojs),document__default=_interopDefaultLegacy(document),version="6.2.0";const merge=videojs__default.default.obj&&videojs__default.default.obj.merge||videojs__default.default.mergeOptions,defaultDismiss=!videojs__default.default.browser.IS_IPHONE,defaults={header:"",code:"",message:"",timeout:45e3,backgroundTimeout:3e5,dismiss:defaultDismiss,errors:{1:{type:"MEDIA_ERR_ABORTED",headline:"The video download was cancelled"},2:{type:"MEDIA_ERR_NETWORK",headline:"The video connection was lost, please confirm you are connected to the internet"},3:{type:"MEDIA_ERR_DECODE",headline:"The video is bad or in a format that cannot be played on your browser"},4:{type:"MEDIA_ERR_SRC_NOT_SUPPORTED",headline:"This video is either unavailable or not supported in this browser"},5:{type:"MEDIA_ERR_ENCRYPTED",headline:"The video you are trying to watch is encrypted and we do not know how to decrypt it"},unknown:{type:"MEDIA_ERR_UNKNOWN",headline:"An unanticipated problem was encountered, check back soon and try again"},"-1":{type:"PLAYER_ERR_NO_SRC",headline:"No video has been loaded"},"-2":{type:"PLAYER_ERR_TIMEOUT",headline:"It looks like you're having playback issues. Reloading the video may help."},PLAYER_ERR_DOMAIN_RESTRICTED:{headline:"This video is restricted from playing on your current domain"},PLAYER_ERR_IP_RESTRICTED:{headline:"This video is restricted at your current IP address"},PLAYER_ERR_GEO_RESTRICTED:{headline:"This video is restricted from playing in your current geographic region"}}},initPlugin=function(e,t){let o,i,r;const n=[],s=function(e){t.errors=merge(t.errors,e),Object.keys(t.errors).forEach((e=>{const o=t.errors[e];o.type||(o.type=e)}))};s();const d=function(){e.error()&&-2===e.error().code&&e.error(null),e.clearTimeout(i),e.clearTimeout(o),r&&(r=!1,e.removeClass("vjs-waiting"));const n=[1/0,-1],s=(e,t)=>-1!==e.indexOf(t);"hidden"===document__default.default.visibilityState&&(e.muted()||s(n,t.backgroundTimeout))||"visible"===document__default.default.visibilityState&&s(n,t.timeout)||(i=e.setTimeout((function(){e.error()||e.paused()||e.ended()||(r=!0,e.addClass("vjs-waiting"))}),1e3),o=e.setTimeout((function(){e.error()||e.paused()||e.ended()||e.error({code:-2,type:"PLAYER_ERR_TIMEOUT"})}),"hidden"===document__default.default.visibilityState?t.backgroundTimeout:t.timeout))},a=function(){let t;for(;n.length;)t=n.shift(),e.off(t[0],t[1]);e.clearTimeout(o),e.clearTimeout(i)},l=function(){let t=0;a(),d(),function(t,o){const i=function(){if(!e.error()){if(e.paused())return d();if(e.ended())return d()}o.call(this)};e.on(t,i),n.push([t,i])}(["timeupdate","adtimeupdate"],(function(){const o=e.currentTime();o!==t&&(t=o,d())})),e.off(document__default.default,"visibilitychange",l),e.on(document__default.default,"visibilitychange",l)},u=function(){e.currentSrc()||e.error({code:-1,type:"PLAYER_ERR_NO_SRC"})},c=function(){let o="",i=e.error();const r=document__default.default.createElement("div");let n="";if(!i)return;e.off(document__default.default,"visibilitychange",l),i=merge(i,t.errors[i.code||i.type||0]),i.message&&(o=`<div class="vjs-errors-details">${e.localize("Technical details")}\n        : <div class="vjs-errors-message">${e.localize(i.message)}</div>\n        </div>`);const s=e.getChild("errorDisplay");r.className="vjs-errors-dialog";const d=`<div class="vjs-errors-code"><b>${this.localize("Error Code")}:</b> ${i.type||i.code}</div>`,a=-2===i.code;n=`<div class="vjs-errors-content-container">\n        <h2 class="vjs-errors-headline">${this.localize(i.headline)}</h2>\n        ${a?"":d}\n        ${a?"":o}\n      </div>`;const u=s.closeable(!("dismiss"in i)||i.dismiss);if(a){n+=`<div class="vjs-errors-timeout-button-container">\n         <button>${this.localize("Reload Video")}</button>\n         <button>${this.localize("Dismiss")}</button>\n       </div>`,r.innerHTML=n,s.fillWith(r),s.getChild("closeButton").hide();const t=s.el().querySelector(".vjs-errors-timeout-button-container > button:first-child"),o=s.el().querySelector(".vjs-errors-timeout-button-container > button:last-child"),i=()=>{const t=e.currentSource();e.reset(),e.src(t)};e.on(t,"click",i),s.one("modalclose",(()=>{e.off(t,"click",i),e.off(o,"click",s.close)}))}else if(u){n+=`<div class="vjs-errors-ok-button-container">\n          <button class="vjs-errors-ok-button">${this.localize("OK")}</button>\n        </div>`,r.innerHTML=n,s.fillWith(r),s.contentEl().firstChild.appendChild(s.getChild("closeButton").el());const t=s.el().querySelector(".vjs-errors-ok-button");e.on(t,"click",(function(){s.close()}))}else r.innerHTML=n,s.fillWith(r);(e.currentWidth()<=600||e.currentHeight()<=250)&&s.addClass("vjs-xs"),s.one("modalclose",(()=>e.error(null)))},f=function(){a(),e.removeClass("vjs-errors"),e.off("play",l),e.off(document__default.default,"visibilitychange",l),e.off("play",u),e.off("dispose",f),e.off(["aderror","error"],c)},h=function(t){f(),initPlugin(e,merge(defaults,t))};h.extend=e=>s(e),h.getAll=()=>merge(t.errors),h.timeout=function(o){if(void 0===o)return t.timeout;o!==t.timeout&&(t.timeout=o,e.paused()||l())},h.backgroundTimeout=function(o){if(void 0===o)return t.backgroundTimeout;o!==t.backgroundTimeout&&(t.backgroundTimeout=o,e.paused()||l())},h.disableProgress=()=>{},e.on("play",l),e.on("play",u),e.on("dispose",f),e.on(["aderror","contenterror","error"],c),e.ready((()=>{e.addClass("vjs-errors")})),e.paused()||l(),h.VERSION=version,e.errors=h},errors=function(e){initPlugin(this,merge(defaults,e))};["extend","getAll"].forEach((e=>{errors[e]=function(){videojs__default.default.log.warn(`The errors.${e}() method is not available until the plugin has been initialized!`)}})),errors.VERSION=version,videojs__default.default.registerPlugin("errors",errors),module.exports=errors;
//# sourceMappingURL=/sm/020dbf67ee1d8900d44e0ee1fb7ea542ab5b89286efb8faf51871bbfd8eeb2fa.map