3 lines
6.6 KiB
JavaScript
3 lines
6.6 KiB
JavaScript
/*! @name videojs-license @version 0.1.0 @license MIT */
|
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("video.js")):"function"==typeof define&&define.amd?define(["video.js"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).videojsLicense=t(e.videojs)}(this,(function(e){"use strict";function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=t(e);function l(e,t,n){return e(n={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==t&&n.path)}},n.exports),n.exports}var o=l((function(e){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.__esModule=!0,e.exports.default=e.exports})),i=l((function(e){function t(n,l){return e.exports=t=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n,l)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports})),s=l((function(e){e.exports=function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,i(e,t)},e.exports.__esModule=!0,e.exports.default=e.exports})),r=n.default.getPlugin("plugin"),a=n.default.getComponent("Component"),c=n.default.getComponent("MenuButton"),u={license:"none",title:"",author:"",languages:{license:"License",loading:"Loading"}},d=function(e){function t(t,l){var i;return(i=e.call(this,t)||this).playerId=i.player.id(),i.options=n.default.mergeOptions(u,l),"none"===l.license?o(i):(i.player.ready((function(){i.player.addClass("vjs-license"),i.buildUI(),(n.default.browser.IS_IOS||n.default.browser.IS_ANDROID)&&i.mobileBuildUI()})),i.player.on("userinactive",(function(){document.getElementById(i.playerId).querySelectorAll(".vjs-menu").forEach((function(e){e.classList.remove("vjs-lock-open")}))})),i.player.on("click",(function(e){"VIDEO"===e.target.tagName&&document.getElementById(i.playerId).querySelectorAll(".vjs-menu").forEach((function(e){e.classList.remove("vjs-lock-open")}))})),i.player.on("loadstart",(function(e){i.removeElementsByClass("vjs-license-clear"),n.default.browser.IS_IOS||n.default.browser.IS_ANDROID?i.mobileBuildTopLevelMenu():i.buildTopLevelMenu()})),i)}s(t,e);var l=t.prototype;return l.buildUI=function(){var e=this.playerId,t=this,l=function(l){function o(n,o){var i;return(i=l.call(this,n,o)||this).addClass("vjs-license"),i.controlText(t.options.languages.loading),n.one("canplaythrough",(function(e){i.controlText(t.options.languages.settings)})),i.menu.contentEl_.id=e+"-vjs-license-default",i}return s(o,l),o.prototype.handleClick=function(){n.default.browser.IS_IOS||n.default.browser.IS_ANDROID?this.player.getChild("licenseMenuMobileModal").el().style.display="block":(this.el().classList.toggle("vjs-toogle-btn"),this.menu.el().classList.toggle("vjs-lock-open"))},o}(c);n.default.registerComponent("licenseMenuButton",l),this.player.getChild("controlBar").addChild("licenseMenuButton"),this.player.getChild("controlBar").getChild("fullscreenToggle")&&this.player.getChild("controlBar").el().insertBefore(this.player.getChild("controlBar").getChild("licenseMenuButton").el(),this.player.getChild("controlBar").getChild("fullscreenToggle").el())},l.buildTopLevelMenu=function(){var e=this.player.getChild("controlBar").getChild("licenseMenuButton").menu.contentEl_;e.innerHTML="",e.classList.add("vjs-license-top-level");var t=document.createElement("li");t.className="vjs-license-top-level-header";var n=document.createElement("span");n.innerHTML="About",n.className="vjs-license-top-level-header-titel",t.appendChild(n),e.appendChild(t);var l=document.createElement("li");if(l.innerHTML=this.buildItemTitel(),l.className="vjs-license-top-level-item",e.appendChild(l),this.options.author){var o=document.createElement("li");o.innerHTML=this.buildItemAuthor(),o.className="vjs-license-top-level-item",e.appendChild(o)}var i=document.createElement("li");i.innerHTML=this.buildItemLicense(),i.className="vjs-license-top-level-item",e.appendChild(i)},l.mobileBuildUI=function(){var e=function(e){function t(t,n){return e.call(this,t,n)||this}return s(t,e),t.prototype.createEl=function(){return n.default.createEl("div",{className:"vjs-license-mobile"})},t}(a);n.default.registerComponent("licenseMenuMobileModal",e),n.default.dom.prependTo(this.player.addChild("licenseMenuMobileModal").el(),document.body)},l.mobileBuildTopLevelMenu=function(){var e=this,t=this.player.getChild("licenseMenuMobileModal"),n=document.createElement("ul");n.className="vjs-license-mob-top-level vjs-setting-menu-clear",t.el().appendChild(n);var l=document.createElement("li");l.innerHTML="About",l.className="vjs-setting-menu-mobile-top-header",n.appendChild(l);var o=document.createElement("li");if(o.innerHTML=this.buildItemTitel(),o.className="vjs-license-top-level-item",this.options.author){var i=document.createElement("li");i.innerHTML=this.buildItemAuthor(),i.className="vjs-license-top-level-item"}var s=document.createElement("li");s.innerHTML=this.buildItemLicense(),s.className="vjs-license-top-level-item";var r=document.createElement("li");r.innerHTML="Close",r.className="setting-menu-footer-default",r.onclick=function(t){e.player.getChild("settingsMenuMobileModal").el().style.display="none"},n.appendChild(r)},l.buildItemTitel=function(){var e="";return this.options.title&&(e=""+this.options.title),"Titel: "+e},l.buildItemAuthor=function(){var e="";return this.options.author&&(e=" by "+this.options.author),"Author: "+e},l.buildItemLicense=function(){var e=new RegExp("[0-9]+.[0-9]+$"),t="4.0",n=this.options.license.match(e);null!==n&&(t=n[0]);var l=null;switch(this.options.license.replace(e,"").trim()){case"CC0":l="https://creativecommons.org/licenses/zero/1.0/";break;case"CC BY":l="https://creativecommons.org/licenses/by/"+t+"/";break;case"CC BY-SA":l="https://creativecommons.org/licenses/by-sa/"+t+"/";break;case"CC BY-NC":l="https://creativecommons.org/licenses/by-nc/"+t+"/";break;case"CC BY-NC-SA":l="https://creativecommons.org/licenses/by-nc-sa/"+t+"/";break;case"CC BY-ND":l="https://creativecommons.org/licenses/by-nd/"+t+"/";break;case"CC BY-NC-ND":l="https://creativecommons.org/licenses/by-nc-nd/"+t+"/"}return"License: "+(l?'<a href="'+l+'" onclick="window.open(\''+l+'\')" target="_blank" rel="noopener">'+this.options.license+"</a>":this.options.license)},l.removeElementsByClass=function(e){document.querySelectorAll(".vjs-sm-top-level").forEach((function(e){e.classList.remove("vjs-hidden")}));for(var t=document.getElementsByClassName(e);t.length>0;)t[0].parentNode.removeChild(t[0])},t}(r);return d.defaultState={},d.VERSION="0.1.0",n.default.registerPlugin("license",d),d}));
|