screenfull.min.js 2.3 KB

1234567
  1. /*!
  2. * screenfull
  3. * v4.2.1 - 2019-07-27
  4. * (c) Sindre Sorhus; MIT License
  5. */
  6. !function(){"use strict";var c="undefined"!=typeof window&&void 0!==window.document?window.document:{},e="undefined"!=typeof module&&module.exports,s="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,i=function(){for(var e,n=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],l=0,r=n.length,t={};l<r;l++)if((e=n[l])&&e[1]in c){for(l=0;l<e.length;l++)t[n[0][l]]=e[l];return t}return!1}(),r={change:i.fullscreenchange,error:i.fullscreenerror},n={request:function(u){return new Promise(function(e,n){var l,r=i.requestFullscreen,t=function(){this.off("change",t),e()}.bind(this);this.on("change",t),u=u||c.documentElement,l=/ Version\/5\.1(?:\.\d+)? Safari\//.test(navigator.userAgent)?u[r]():u[r](s?Element.ALLOW_KEYBOARD_INPUT:{}),Promise.resolve(l).catch(n)}.bind(this))},exit:function(){return new Promise(function(e){if(this.isFullscreen){var n=function(){this.off("change",n),e()}.bind(this);c[i.exitFullscreen](),this.on("change",n)}else e()}.bind(this))},toggle:function(e){return this.isFullscreen?this.exit():this.request(e)},onchange:function(e){this.on("change",e)},onerror:function(e){this.on("error",e)},on:function(e,n){var l=r[e];l&&c.addEventListener(l,n,!1)},off:function(e,n){var l=r[e];l&&c.removeEventListener(l,n,!1)},raw:i};i?(Object.defineProperties(n,{isFullscreen:{get:function(){return Boolean(c[i.fullscreenElement])}},element:{enumerable:!0,get:function(){return c[i.fullscreenElement]}},enabled:{enumerable:!0,get:function(){return Boolean(c[i.fullscreenEnabled])}}}),e?(module.exports=n,module.exports.default=n):window.screenfull=n):e?module.exports=!1:window.screenfull=!1}();