/**
 * Modules in this bundle
 * @license
 *
 * modal-video:
 *   license: appleple
 *   author: appleple
 *   homepage: http://developer.a-blogcms.jp
 *   version: 2.4.6
 *
 * custom-event-polyfill:
 *   license: MIT (http://opensource.org/licenses/MIT)
 *   contributors: Frank Panetta, Mikhail Reenko <reenko@yandex.ru>, Joscha Feth <joscha@feth.com>
 *   homepage: https://github.com/krambuhl/custom-event-polyfill#readme
 *   version: 0.3.0
 *
 * es6-object-assign:
 *   license: MIT (http://opensource.org/licenses/MIT)
 *   author: RubÃ©n Norte <rubennorte@gmail.com>
 *   homepage: https://github.com/rubennorte/es6-object-assign
 *   version: 1.1.0
 *
 * This header is generated by licensify (https://github.com/twada/licensify)
*/ !function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var t;(t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).ModalVideo=e()}}(function(){return(function(){function e(t,n,o){function i(l,r){if(!n[l]){if(!t[l]){var u="function"==typeof require&&require;if(!r&&u)return u(l,!0);if(a)return a(l,!0);var d=Error("Cannot find module '"+l+"'");throw d.code="MODULE_NOT_FOUND",d}var s=n[l]={exports:{}};t[l][0].call(s.exports,function(e){return i(t[l][1][e]||e)},s,s.exports,e,t,n,o)}return n[l].exports}for(var a="function"==typeof require&&require,l=0;l<o.length;l++)i(o[l]);return i}return e})()({1:[function(e,t,n){try{var o=new window.CustomEvent("test");if(o.preventDefault(),!0!==o.defaultPrevented)throw Error("Could not prevent default")}catch(i){var a=function(e,t){var n,o;return t=t||{bubbles:!1,cancelable:!1,detail:void 0},(n=document.createEvent("CustomEvent")).initCustomEvent(e,t.bubbles,t.cancelable,t.detail),o=n.preventDefault,n.preventDefault=function(){o.call(this);try{Object.defineProperty(this,"defaultPrevented",{get:function(){return!0}})}catch(e){this.defaultPrevented=!0}},n};a.prototype=window.Event.prototype,window.CustomEvent=a}},{}],2:[function(e,t,n){"use strict";function o(e,t){if(null==e)throw TypeError("Cannot convert first argument to object");for(var n=Object(e),o=1;o<arguments.length;o++){var i=arguments[o];if(null!=i)for(var a=Object.keys(Object(i)),l=0,r=a.length;l<r;l++){var u=a[l],d=Object.getOwnPropertyDescriptor(i,u);void 0!==d&&d.enumerable&&(n[u]=i[u])}}return n}t.exports={assign:o,polyfill:function e(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:o})}}},{}],3:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}();e("custom-event-polyfill");var i=e("../lib/util"),a=e("es6-object-assign").assign,l={channel:"youtube",facebook:{},youtube:{autoplay:1,cc_load_policy:1,color:null,controls:1,disablekb:0,enablejsapi:0,end:null,fs:1,h1:null,iv_load_policy:1,loop:0,modestbranding:null,mute:0,origin:null,playsinline:null,rel:0,showinfo:1,start:0,wmode:"transparent",theme:"dark",nocookie:!1},ratio:"16:9",vimeo:{api:!1,autopause:!0,autoplay:!0,byline:!0,callback:null,color:null,controls:!0,height:null,loop:!1,maxheight:null,maxwidth:null,muted:!1,player_id:null,portrait:!0,title:!0,width:null,xhtml:!1},allowFullScreen:!0,allowAutoplay:!0,animationSpeed:300,classNames:{modalVideo:"modal-video",modalVideoClose:"modal-video-close",modalVideoBody:"modal-video-body",modalVideoInner:"modal-video-inner",modalVideoIframeWrap:"modal-video-movie-wrap",modalVideoCloseBtn:"modal-video-close-btn"},aria:{openMessage:"You just openned the modal video",dismissBtnMessage:"Close the modal by clicking here"}},r=function(){function e(t,n){var o=this;!function e(t,n){if(!(t instanceof n))throw TypeError("Cannot call a class as a function")}(this,e);var r=a({},l,n),u="string"==typeof t?document.querySelectorAll(t):t,d=document.querySelector("body"),s=r.classNames,c=r.animationSpeed;[].forEach.call(u,function(e){e.addEventListener("click",function(t){"A"===e.tagName&&t.preventDefault();var n=e.dataset.videoId,a=e.dataset.channel||r.channel,l=(0,i.getUniqId)(),u=e.dataset.videoUrl||o.getVideoUrl(r,a,n),f=o.getHtml(r,u,l);(0,i.append)(d,f);var v=document.getElementById(l),m=v.querySelector(".js-modal-video-dismiss-btn"),p=void 0,y=function(){clearTimeout(p),p=setTimeout(function(){var e=o.getWidthFulfillAspectRatio(r.ratio,window.innerHeight,window.innerWidth),t=document.getElementById("modal-video-inner-"+l);t.style.maxWidth!==e&&(t.style.maxWidth=e)},10)};v.focus(),v.addEventListener("click",function(){(0,i.addClass)(v,s.modalVideoClose),window.removeEventListener("resize",y),setTimeout(function(){(0,i.remove)(v),e.focus()},c)}),v.addEventListener("keydown",function(e){9===e.which&&(e.preventDefault(),document.activeElement===v?m.focus():(v.setAttribute("aria-label",""),v.focus()))}),window.addEventListener("resize",y),m.addEventListener("click",function(){(0,i.triggerEvent)(v,"click")})})})}return o(e,[{key:"getPadding",value:function(e){var t=e.split(":"),n=Number(t[0]);return 100*Number(t[1])/n+"%"}},{key:"getWidthFulfillAspectRatio",value:function(e,t,n){var o=e.split(":"),i=Number(o[0]),a=Number(o[1]);return t<n*(a/i)?Math.floor(i/a*t)+"px":"100%"}},{key:"getQueryString",value:function(e){var t="";return Object.keys(e).forEach(function(n){t+=n+"="+e[n]+"&"}),t.substr(0,t.length-1)}},{key:"getVideoUrl",value:function(e,t,n){return"youtube"===t?this.getYoutubeUrl(e.youtube,n):"vimeo"===t?this.getVimeoUrl(e.vimeo,n):"facebook"===t?this.getFacebookUrl(e.facebook,n):"custom"===t?e.url:""}},{key:"getVimeoUrl",value:function(e,t){return"//player.vimeo.com/video/"+t+"?"+this.getQueryString(e)}},{key:"getYoutubeUrl",value:function(e,t){var n=this.getQueryString(e);return!0===e.nocookie?"//www.youtube-nocookie.com/embed/"+t+"?"+n:"//www.youtube.com/embed/"+t+"?"+n}},{key:"getFacebookUrl",value:function(e,t){return"//www.facebook.com/v2.10/plugins/video.php?href=https://www.facebook.com/facebook/videos/"+t+"&"+this.getQueryString(e)}},{key:"getHtml",value:function(e,t,n){var o=this.getPadding(e.ratio),i=e.classNames;return'\n      <div class="'+i.modalVideo+'" tabindex="-1" role="dialog" aria-label="'+e.aria.openMessage+'" id="'+n+'">\n        <div class="'+i.modalVideoBody+'">\n          <div class="'+i.modalVideoInner+'" id="modal-video-inner-'+n+'">\n            <div class="'+i.modalVideoIframeWrap+'" style="padding-bottom:'+o+'">\n              <button class="'+i.modalVideoCloseBtn+' js-modal-video-dismiss-btn" aria-label="'+e.aria.dismissBtnMessage+"\"></button>\n              <iframe width='460' height='230' src=\""+t+"\" frameborder='0' allowfullscreen="+e.allowFullScreen+' tabindex="-1" allow="'+(e.allowAutoplay?"autoplay;":"")+' accelerometer; encrypted-media; gyroscope; picture-in-picture" />\n            </div>\n          </div>\n        </div>\n      </div>\n    '}}]),e}();n.default=r,t.exports=n.default},{"../lib/util":5,"custom-event-polyfill":1,"es6-object-assign":2}],4:[function(e,t,n){"use strict";t.exports=e("./core/")},{"./core/":3}],5:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.append=function(e,t){var n=document.createElement("div");for(n.innerHTML=t;n.children.length>0;)e.appendChild(n.children[0])},n.getUniqId=function(){return(Date.now().toString(36)+Math.random().toString(36).substr(2,5)).toUpperCase()},n.remove=function(e){e&&e.parentNode&&e.parentNode.removeChild(e)},n.addClass=function(e,t){e.classList?e.classList.add(t):e.className+=" "+t},n.triggerEvent=function(e,t,n){var o=void 0;window.CustomEvent?o=new CustomEvent(t,{cancelable:!0}):(o=document.createEvent("CustomEvent")).initCustomEvent(t,!1,!1,n),e.dispatchEvent(o)}},{}]},{},[4])(4)});