reveal-js-base-theme/js/reveal.min.js
Guillaume Turri 04b9e444d9 Minor refactoring
Removed some code duplication
2013-07-29 14:46:02 +02:00

8 lines
25 KiB
JavaScript

/*!
* reveal.js 2.5.0 (2013-07-29, 14:30)
* http://lab.hakim.se/reveal-js
* MIT licensed
*
* Copyright (C) 2013 Hakim El Hattab, http://hakim.se
*/
var Reveal=function(){"use strict";function e(e){return Ht||Xt?(window.addEventListener("load",A,!1),u(Dt,e),a(),i(),void 0):(document.body.setAttribute("class","no-transforms"),void 0)}function t(){zt.theme=document.querySelector("#theme"),zt.wrapper=document.querySelector(".reveal"),zt.slides=document.querySelector(".reveal .slides"),zt.background=n(zt.wrapper,"div","backgrounds",null),zt.progress=n(zt.wrapper,"div","progress","<span></span>"),zt.progressbar=zt.progress.querySelector("span"),n(zt.wrapper,"aside","controls",'<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>'),n(zt.wrapper,"div","state-background",null),n(zt.wrapper,"div","pause-overlay",null),Dt.controls&&(zt.controls=document.querySelector(".reveal .controls"),zt.controlsLeft=f(document.querySelectorAll(".navigate-left")),zt.controlsRight=f(document.querySelectorAll(".navigate-right")),zt.controlsUp=f(document.querySelectorAll(".navigate-up")),zt.controlsDown=f(document.querySelectorAll(".navigate-down")),zt.controlsPrev=f(document.querySelectorAll(".navigate-prev")),zt.controlsNext=f(document.querySelectorAll(".navigate-next")))}function n(e,t,n,o){var a=e.querySelector("."+n);return a||(a=r(t,n,o),e.appendChild(a)),a}function r(e,t,n){var r=document.createElement(e);return r.classList.add(t),null!==n&&(r.innerHTML=n),r}function o(){function e(e,t){var n={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundColor:e.getAttribute("data-background-color"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition")},r=document.createElement("div");return r.className="slide-background",n.background&&(/^(http|file|\/\/)/gi.test(n.background)||/\.(png|jpg|jpeg|gif|bmp)$/gi.test(n.background)?r.style.backgroundImage="url("+n.background+")":r.style.background=n.background),n.backgroundSize&&(r.style.backgroundSize=n.backgroundSize),n.backgroundImage&&(r.style.backgroundImage='url("'+n.backgroundImage+'")'),n.backgroundColor&&(r.style.backgroundColor=n.backgroundColor),n.backgroundRepeat&&(r.style.backgroundRepeat=n.backgroundRepeat),n.backgroundPosition&&(r.style.backgroundPosition=n.backgroundPosition),n.backgroundTransition&&r.setAttribute("data-background-transition",n.backgroundTransition),t.appendChild(r),r}m()&&document.body.classList.add("print-pdf"),zt.background.innerHTML="",zt.background.classList.add("no-transition"),f(document.querySelectorAll(Mt)).forEach(function(t){var n;n=m()?e(t,t):e(t,zt.background),f(t.querySelectorAll("section")).forEach(function(t){m()?e(t,t):e(t,n)})})}function a(){/iphone|ipod|android/gi.test(navigator.userAgent)&&!/crios/gi.test(navigator.userAgent)&&(window.addEventListener("load",g,!1),window.addEventListener("orientationchange",g,!1))}function i(){function e(){n.length&&head.js.apply(null,n),s()}for(var t=[],n=[],r=0,o=Dt.dependencies.length;o>r;r++){var a=Dt.dependencies[r];(!a.condition||a.condition())&&(a.async?n.push(a.src):t.push(a.src),"function"==typeof a.callback&&head.ready(a.src.match(/([\w\d_\-]*)\.?js$|[^\\\/]*$/i)[0],a.callback))}t.length?(head.ready(e),head.js.apply(null,t)):e()}function s(){t(),c(),V(),setTimeout(function(){h("ready",{indexh:Rt,indexv:It,currentSlide:xt})},1)}function c(e){if(zt.wrapper.classList.remove(Dt.transition),"object"==typeof e&&u(Dt,e),Xt===!1&&(Dt.transition="linear"),zt.wrapper.classList.add(Dt.transition),zt.wrapper.setAttribute("data-transition-speed",Dt.transitionSpeed),zt.wrapper.setAttribute("data-background-transition",Dt.backgroundTransition),zt.controls&&(zt.controls.style.display=Dt.controls&&zt.controls?"block":"none"),zt.progress&&(zt.progress.style.display=Dt.progress&&zt.progress?"block":"none"),Dt.rtl?zt.wrapper.classList.add("rtl"):zt.wrapper.classList.remove("rtl"),Dt.center?zt.wrapper.classList.add("center"):zt.wrapper.classList.remove("center"),Dt.mouseWheel?(document.addEventListener("DOMMouseScroll",pt,!1),document.addEventListener("mousewheel",pt,!1)):(document.removeEventListener("DOMMouseScroll",pt,!1),document.removeEventListener("mousewheel",pt,!1)),Dt.rollingLinks?y():b(),Dt.previewLinks?w():(L(),w("[data-preview-link]")),Dt.theme&&zt.theme){var t=zt.theme.getAttribute("href"),n=/[^\/]*?(?=\.css)/,r=t.match(n)[0];Dt.theme!==r&&(t=t.replace(n,Dt.theme),zt.theme.setAttribute("href",t))}X()}function l(){Kt=!0,window.addEventListener("hashchange",Et,!1),window.addEventListener("resize",kt,!1),Dt.touch&&(zt.wrapper.addEventListener("touchstart",ct,!1),zt.wrapper.addEventListener("touchmove",lt,!1),zt.wrapper.addEventListener("touchend",dt,!1),window.navigator.msPointerEnabled&&(zt.wrapper.addEventListener("MSPointerDown",ut,!1),zt.wrapper.addEventListener("MSPointerMove",ft,!1),zt.wrapper.addEventListener("MSPointerUp",vt,!1))),Dt.keyboard&&document.addEventListener("keydown",st,!1),Dt.progress&&zt.progress&&zt.progress.addEventListener("click",mt,!1),Dt.controls&&zt.controls&&["touchstart","click"].forEach(function(e){zt.controlsLeft.forEach(function(t){t.addEventListener(e,gt,!1)}),zt.controlsRight.forEach(function(t){t.addEventListener(e,ht,!1)}),zt.controlsUp.forEach(function(t){t.addEventListener(e,yt,!1)}),zt.controlsDown.forEach(function(t){t.addEventListener(e,bt,!1)}),zt.controlsPrev.forEach(function(t){t.addEventListener(e,wt,!1)}),zt.controlsNext.forEach(function(t){t.addEventListener(e,Lt,!1)})})}function d(){Kt=!1,document.removeEventListener("keydown",st,!1),window.removeEventListener("hashchange",Et,!1),window.removeEventListener("resize",kt,!1),zt.wrapper.removeEventListener("touchstart",ct,!1),zt.wrapper.removeEventListener("touchmove",lt,!1),zt.wrapper.removeEventListener("touchend",dt,!1),window.navigator.msPointerEnabled&&(zt.wrapper.removeEventListener("MSPointerDown",ut,!1),zt.wrapper.removeEventListener("MSPointerMove",ft,!1),zt.wrapper.removeEventListener("MSPointerUp",vt,!1)),Dt.progress&&zt.progress&&zt.progress.removeEventListener("click",mt,!1),Dt.controls&&zt.controls&&["touchstart","click"].forEach(function(e){zt.controlsLeft.forEach(function(t){t.removeEventListener(e,gt,!1)}),zt.controlsRight.forEach(function(t){t.removeEventListener(e,ht,!1)}),zt.controlsUp.forEach(function(t){t.removeEventListener(e,yt,!1)}),zt.controlsDown.forEach(function(t){t.removeEventListener(e,bt,!1)}),zt.controlsPrev.forEach(function(t){t.removeEventListener(e,wt,!1)}),zt.controlsNext.forEach(function(t){t.removeEventListener(e,Lt,!1)})})}function u(e,t){for(var n in t)e[n]=t[n]}function f(e){return Array.prototype.slice.call(e)}function v(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}function p(e){var t=0;if(e){var n=0;f(e.childNodes).forEach(function(e){"number"==typeof e.offsetTop&&e.style&&("absolute"===e.style.position&&(n+=1),t=Math.max(t,e.offsetTop+e.offsetHeight))}),0===n&&(t=e.offsetHeight)}return t}function m(){return/print-pdf/gi.test(window.location.search)}function g(){0===window.orientation?(document.documentElement.style.overflow="scroll",document.body.style.height="120%"):(document.documentElement.style.overflow="",document.body.style.height="100%"),setTimeout(function(){window.scrollTo(0,1)},10)}function h(e,t){var n=document.createEvent("HTMLEvents",1,2);n.initEvent(e,!0,!0),u(n,t),zt.wrapper.dispatchEvent(n)}function y(){if(Xt&&!("msPerspective"in document.body.style))for(var e=document.querySelectorAll(Tt+" a:not(.image)"),t=0,n=e.length;n>t;t++){var r=e[t];if(!(!r.textContent||r.querySelector("*")||r.className&&r.classList.contains(r,"roll"))){var o=document.createElement("span");o.setAttribute("data-title",r.text),o.innerHTML=r.innerHTML,r.classList.add("roll"),r.innerHTML="",r.appendChild(o)}}}function b(){for(var e=document.querySelectorAll(Tt+" a.roll"),t=0,n=e.length;n>t;t++){var r=e[t],o=r.querySelector("span");o&&(r.classList.remove("roll"),r.innerHTML=o.innerHTML)}}function w(e){var t=f(document.querySelectorAll(e?e:"a"));t.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.addEventListener("click",At,!1)})}function L(){var e=f(document.querySelectorAll("a"));e.forEach(function(e){/^(http|www)/gi.test(e.getAttribute("href"))&&e.removeEventListener("click",At,!1)})}function E(e){k(),zt.preview=document.createElement("div"),zt.preview.classList.add("preview-link-overlay"),zt.wrapper.appendChild(zt.preview),zt.preview.innerHTML=["<header>",'<a class="close" href="#"><span class="icon"></span></a>','<a class="external" href="'+e+'" target="_blank"><span class="icon"></span></a>',"</header>",'<div class="spinner"></div>','<div class="viewport">','<iframe src="'+e+'"></iframe>',"</div>"].join(""),zt.preview.querySelector("iframe").addEventListener("load",function(){zt.preview.classList.add("loaded")},!1),zt.preview.querySelector(".close").addEventListener("click",function(e){k(),e.preventDefault()},!1),zt.preview.querySelector(".external").addEventListener("click",function(){k()},!1),setTimeout(function(){zt.preview.classList.add("visible")},1)}function k(){zt.preview&&(zt.preview.setAttribute("src",""),zt.preview.parentNode.removeChild(zt.preview),zt.preview=null)}function S(e){var t=f(e);return t.forEach(function(e,t){e.hasAttribute("data-fragment-index")||e.setAttribute("data-fragment-index",t)}),t.sort(function(e,t){return e.getAttribute("data-fragment-index")-t.getAttribute("data-fragment-index")}),t}function A(){if(zt.wrapper&&!m()){var e=zt.wrapper.offsetWidth,t=zt.wrapper.offsetHeight;e-=t*Dt.margin,t-=t*Dt.margin;var n=Dt.width,r=Dt.height;if("string"==typeof n&&/%$/.test(n)&&(n=parseInt(n,10)/100*e),"string"==typeof r&&/%$/.test(r)&&(r=parseInt(r,10)/100*t),zt.slides.style.width=n+"px",zt.slides.style.height=r+"px",Yt=Math.min(e/n,t/r),Yt=Math.max(Yt,Dt.minScale),Yt=Math.min(Yt,Dt.maxScale),void 0===zt.slides.style.zoom||navigator.userAgent.match(/(iphone|ipod|ipad|android)/gi)){var o="translate(-50%, -50%) scale("+Yt+") translate(50%, 50%)";zt.slides.style.WebkitTransform=o,zt.slides.style.MozTransform=o,zt.slides.style.msTransform=o,zt.slides.style.OTransform=o,zt.slides.style.transform=o}else zt.slides.style.zoom=Yt;for(var a=f(document.querySelectorAll(Tt)),i=0,s=a.length;s>i;i++){var c=a[i];"none"!==c.style.display&&(c.style.top=Dt.center?c.classList.contains("stack")?0:Math.max(-(p(c)/2)-20,-r/2)+"px":"")}W()}}function q(e,t){"object"==typeof e&&"function"==typeof e.setAttribute&&e.setAttribute("data-previous-indexv",t||0)}function x(e){if("object"==typeof e&&"function"==typeof e.setAttribute&&e.classList.contains("stack")){var t=e.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(e.getAttribute(t)||0,10)}return 0}function T(){if(Dt.overview){et();var e=zt.wrapper.classList.contains("overview");zt.wrapper.classList.add("overview"),zt.wrapper.classList.remove("exit-overview"),clearTimeout(Ft),clearTimeout(_t),Ft=setTimeout(function(){for(var t=document.querySelectorAll(Mt),n=0,r=t.length;r>n;n++){var o=t[n],a=Dt.rtl?-105:105,i="translateZ(-2500px) translate("+(n-Rt)*a+"%, 0%)";if(o.setAttribute("data-index-h",n),o.style.display="block",o.style.WebkitTransform=i,o.style.MozTransform=i,o.style.msTransform=i,o.style.OTransform=i,o.style.transform=i,o.classList.contains("stack"))for(var s=o.querySelectorAll("section"),c=0,l=s.length;l>c;c++){var d=n===Rt?It:x(o),u=s[c],f="translate(0%, "+105*(c-d)+"%)";u.setAttribute("data-index-h",n),u.setAttribute("data-index-v",c),u.style.display="block",u.style.WebkitTransform=f,u.style.MozTransform=f,u.style.msTransform=f,u.style.OTransform=f,u.style.transform=f,u.addEventListener("click",St,!0)}else o.addEventListener("click",St,!0)}A(),e||h("overviewshown",{indexh:Rt,indexv:It,currentSlide:xt})},10)}}function M(){if(Dt.overview){clearTimeout(Ft),clearTimeout(_t),zt.wrapper.classList.remove("overview"),zt.wrapper.classList.add("exit-overview"),_t=setTimeout(function(){zt.wrapper.classList.remove("exit-overview")},10);for(var e=f(document.querySelectorAll(Tt)),t=0,n=e.length;n>t;t++){var r=e[t];r.style.display="",r.style.WebkitTransform="",r.style.MozTransform="",r.style.msTransform="",r.style.OTransform="",r.style.transform="",r.removeEventListener("click",St,!0)}z(Rt,It),J(),h("overviewhidden",{indexh:Rt,indexv:It,currentSlide:xt})}}function P(e){"boolean"==typeof e?e?T():M():N()?M():T()}function N(){return zt.wrapper.classList.contains("overview")}function D(e){return e=e?e:xt,e&&!!e.parentNode.nodeName.match(/section/i)}function C(){var e=document.body,t=e.requestFullScreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullScreen;t&&t.apply(e)}function R(){var e=zt.wrapper.classList.contains("paused");et(),zt.wrapper.classList.add("paused"),e===!1&&h("paused")}function I(){var e=zt.wrapper.classList.contains("paused");zt.wrapper.classList.remove("paused"),J(),e&&h("resumed")}function O(){Y()?I():R()}function Y(){return zt.wrapper.classList.contains("paused")}function z(e,t,n,r){qt=xt;var o=document.querySelectorAll(Mt);void 0===t&&(t=x(o[e])),qt&&qt.parentNode&&qt.parentNode.classList.contains("stack")&&q(qt.parentNode,It);var a=Ot.concat();Ot.length=0;var i=Rt,s=It;Rt=H(Mt,void 0===e?Rt:e),It=H(Pt,void 0===t?It:t),A();e:for(var c=0,l=Ot.length;l>c;c++){for(var d=0;a.length>d;d++)if(a[d]===Ot[c]){a.splice(d,1);continue e}document.documentElement.classList.add(Ot[c]),h(Ot[c])}for(;a.length;)document.documentElement.classList.remove(a.pop());N()&&T(),Z(1500);var u=o[Rt],v=u.querySelectorAll("section");if(xt=v[It]||u,n!==void 0){var p=S(xt.querySelectorAll(".fragment"));f(p).forEach(function(e,t){n>t?e.classList.add("visible"):e.classList.remove("visible")})}var m=Rt!==i||It!==s;m?h("slidechanged",{indexh:Rt,indexv:It,previousSlide:qt,currentSlide:xt,origin:r}):qt=null,qt&&(qt.classList.remove("present"),document.querySelector(Nt).classList.contains("present")&&setTimeout(function(){var e,t=f(document.querySelectorAll(Mt+".stack"));for(e in t)t[e]&&q(t[e],0)},0)),m&&($(qt),K(xt)),U(),W(),j()}function X(){d(),l(),A(),Ct=Dt.autoSlide,J(),o(),U(),W(),j()}function H(e,t){var n=f(document.querySelectorAll(e)),r=n.length;if(r){Dt.loop&&(t%=r,0>t&&(t=r+t)),t=Math.max(Math.min(t,r-1),0);for(var o=0;r>o;o++){var a=n[o];if(N()===!1){var i=Math.abs((t-o)%(r-3))||0;a.style.display=i>3?"none":"block"}var s=Dt.rtl&&!D(a);a.classList.remove("past"),a.classList.remove("present"),a.classList.remove("future"),a.setAttribute("hidden",""),t>o?a.classList.add(s?"future":"past"):o>t&&a.classList.add(s?"past":"future"),a.querySelector("section")&&a.classList.add("stack")}n[t].classList.add("present"),n[t].removeAttribute("hidden");var c=n[t].getAttribute("data-state");c&&(Ot=Ot.concat(c.split(" ")));var l=n[t].getAttribute("data-autoslide");Ct=l?parseInt(l,10):Dt.autoSlide}else t=0;return t}function W(){if(Dt.progress&&zt.progress){var e=f(document.querySelectorAll(Mt)),t=document.querySelectorAll(Tt+":not(.stack)").length,n=0;e:for(var r=0;e.length>r;r++){for(var o=e[r],a=f(o.querySelectorAll("section")),i=0;a.length>i;i++){if(a[i].classList.contains("present"))break e;n++}if(o.classList.contains("present"))break;o.classList.contains("stack")===!1&&n++}zt.progressbar.style.width=n/(t-1)*window.innerWidth+"px"}}function U(){if(Dt.controls&&zt.controls){var e=F(),t=_();zt.controlsLeft.concat(zt.controlsRight).concat(zt.controlsUp).concat(zt.controlsDown).concat(zt.controlsPrev).concat(zt.controlsNext).forEach(function(e){e.classList.remove("enabled"),e.classList.remove("fragmented")}),e.left&&zt.controlsLeft.forEach(function(e){e.classList.add("enabled")}),e.right&&zt.controlsRight.forEach(function(e){e.classList.add("enabled")}),e.up&&zt.controlsUp.forEach(function(e){e.classList.add("enabled")}),e.down&&zt.controlsDown.forEach(function(e){e.classList.add("enabled")}),(e.left||e.up)&&zt.controlsPrev.forEach(function(e){e.classList.add("enabled")}),(e.right||e.down)&&zt.controlsNext.forEach(function(e){e.classList.add("enabled")}),xt&&(t.prev&&zt.controlsPrev.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&zt.controlsNext.forEach(function(e){e.classList.add("fragmented","enabled")}),D(xt)?(t.prev&&zt.controlsUp.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&zt.controlsDown.forEach(function(e){e.classList.add("fragmented","enabled")})):(t.prev&&zt.controlsLeft.forEach(function(e){e.classList.add("fragmented","enabled")}),t.next&&zt.controlsRight.forEach(function(e){e.classList.add("fragmented","enabled")})))}}function j(){f(zt.background.childNodes).forEach(function(e,t){var n=Dt.rtl?"future":"past",r=Dt.rtl?"past":"future";e.className="slide-background "+(Rt>t?n:t>Rt?r:"present"),f(e.childNodes).forEach(function(e,t){e.className="slide-background "+(It>t?"past":t>It?"future":"present")})}),setTimeout(function(){zt.background.classList.remove("no-transition")},1)}function F(){var e=document.querySelectorAll(Mt),t=document.querySelectorAll(Pt),n={left:Rt>0||Dt.loop,right:e.length-1>Rt||Dt.loop,up:It>0,down:t.length-1>It};if(Dt.rtl){var r=n.left;n.left=n.right,n.right=r}return n}function _(){if(xt&&Dt.fragments){var e=xt.querySelectorAll(".fragment"),t=xt.querySelectorAll(".fragment:not(.visible)");return{prev:e.length-t.length>0,next:!!t.length}}return{prev:!1,next:!1}}function K(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-autoplay")&&e.play()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-autoplay")&&e.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*")}))}function $(e){e&&(f(e.querySelectorAll("video, audio")).forEach(function(e){e.hasAttribute("data-ignore")||e.pause()}),f(e.querySelectorAll('iframe[src*="youtube.com/embed/"]')).forEach(function(e){e.hasAttribute("data-ignore")||"function"!=typeof e.contentWindow.postMessage||e.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}))}function V(){var e=window.location.hash,t=e.slice(2).split("/"),n=e.replace(/#|\//gi,"");if(isNaN(parseInt(t[0],10))&&n.length){var r=document.querySelector("#"+n);if(r){var o=Reveal.getIndices(r);z(o.h,o.v)}else z(Rt,It)}else{var a=parseInt(t[0],10)||0,i=parseInt(t[1],10)||0;z(a,i)}}function Z(e){if(Dt.history)if(clearTimeout(jt),"number"==typeof e)jt=setTimeout(Z,e);else{var t="/";xt&&"string"==typeof xt.getAttribute("id")?t="/"+xt.getAttribute("id"):((Rt>0||It>0)&&(t+=Rt),It>0&&(t+="/"+It)),window.location.hash=t}}function Q(e){var t,n=Rt,r=It;if(e){var o=D(e),a=o?e.parentNode:e,i=f(document.querySelectorAll(Mt));n=Math.max(i.indexOf(a),0),o&&(r=Math.max(f(e.parentNode.querySelectorAll("section")).indexOf(e),0))}if(!e&&xt){var s=xt.querySelectorAll(".fragment.visible");s.length&&(t=s.length)}return{h:n,v:r,f:t}}function B(){if(xt&&Dt.fragments){var e=S(xt.querySelectorAll(".fragment:not(.visible)"));if(e.length){var t=e[0].getAttribute("data-fragment-index");return e=xt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.add("visible")}),h("fragmentshown",{fragment:e[0],fragments:e}),U(),!0}}return!1}function G(){if(xt&&Dt.fragments){var e=S(xt.querySelectorAll(".fragment.visible"));if(e.length){var t=e[e.length-1].getAttribute("data-fragment-index");return e=xt.querySelectorAll('.fragment[data-fragment-index="'+t+'"]'),f(e).forEach(function(e){e.classList.remove("visible")}),h("fragmenthidden",{fragment:e[0],fragments:e}),U(),!0}}return!1}function J(){clearTimeout(Ut),!Ct||Y()||N()||(Ut=setTimeout(it,Ct))}function et(){clearTimeout(Ut)}function tt(){Dt.rtl?(N()||B()===!1)&&F().left&&z(Rt+1):(N()||G()===!1)&&F().left&&z(Rt-1)}function nt(){Dt.rtl?(N()||G()===!1)&&F().right&&z(Rt-1):(N()||B()===!1)&&F().right&&z(Rt+1)}function rt(){(N()||G()===!1)&&F().up&&z(Rt,It-1)}function ot(){(N()||B()===!1)&&F().down&&z(Rt,It+1)}function at(){if(G()===!1)if(F().up)rt();else{var e=document.querySelector(Mt+".past:nth-child("+Rt+")");if(e){var t=e.querySelectorAll("section").length-1||void 0,n=Rt-1;z(n,t)}}}function it(){B()===!1&&(F().down?ot():nt()),J()}function st(e){document.activeElement;var t=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&"inherit"===document.activeElement.contentEditable);if(!(t||e.shiftKey&&32!==e.keyCode||e.altKey||e.ctrlKey||e.metaKey)){if(Y()&&-1===[66,190,191].indexOf(e.keyCode))return!1;var n=!1;if("object"==typeof Dt.keyboard)for(var r in Dt.keyboard)if(parseInt(r,10)===e.keyCode){var o=Dt.keyboard[r];"function"==typeof o?o.apply(null,[e]):"string"==typeof o&&"function"==typeof Reveal[o]&&Reveal[o].call(),n=!0}if(n===!1)switch(n=!0,e.keyCode){case 80:case 33:at();break;case 78:case 34:it();break;case 72:case 37:tt();break;case 76:case 39:nt();break;case 75:case 38:rt();break;case 74:case 40:ot();break;case 36:z(0);break;case 35:z(Number.MAX_VALUE);break;case 32:N()?M():e.shiftKey?at():it();break;case 13:N()?M():n=!1;break;case 66:case 190:case 191:O();break;case 70:C();break;default:n=!1}n?e.preventDefault():27===e.keyCode&&Xt&&(P(),e.preventDefault()),J()}}function ct(e){$t.startX=e.touches[0].clientX,$t.startY=e.touches[0].clientY,$t.startCount=e.touches.length,2===e.touches.length&&Dt.overview&&($t.startSpan=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:$t.startX,y:$t.startY}))}function lt(e){if($t.handled)navigator.userAgent.match(/android/gi)&&e.preventDefault();else{var t=e.touches[0].clientX,n=e.touches[0].clientY;if(2===e.touches.length&&2===$t.startCount&&Dt.overview){var r=v({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:$t.startX,y:$t.startY});Math.abs($t.startSpan-r)>$t.threshold&&($t.handled=!0,$t.startSpan>r?T():M()),e.preventDefault()}else if(1===e.touches.length&&2!==$t.startCount){var o=t-$t.startX,a=n-$t.startY;o>$t.threshold&&Math.abs(o)>Math.abs(a)?($t.handled=!0,tt()):-$t.threshold>o&&Math.abs(o)>Math.abs(a)?($t.handled=!0,nt()):a>$t.threshold?($t.handled=!0,rt()):-$t.threshold>a&&($t.handled=!0,ot()),e.preventDefault()}}}function dt(){$t.handled=!1}function ut(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],ct(e))}function ft(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],lt(e))}function vt(e){e.pointerType===e.MSPOINTER_TYPE_TOUCH&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],dt(e))}function pt(e){if(Date.now()-Wt>600){Wt=Date.now();var t=e.detail||-e.wheelDelta;t>0?it():at()}}function mt(e){e.preventDefault();var t=f(document.querySelectorAll(Mt)).length,n=Math.floor(e.clientX/zt.wrapper.offsetWidth*t);z(n)}function gt(e){e.preventDefault(),tt()}function ht(e){e.preventDefault(),nt()}function yt(e){e.preventDefault(),rt()}function bt(e){e.preventDefault(),ot()}function wt(e){e.preventDefault(),at()}function Lt(e){e.preventDefault(),it()}function Et(){V()}function kt(){A()}function St(e){if(Kt&&N()){e.preventDefault();for(var t=e.target;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(M(),t.nodeName.match(/section/gi))){var n=parseInt(t.getAttribute("data-index-h"),10),r=parseInt(t.getAttribute("data-index-v"),10);z(n,r)}}}function At(e){var t=e.target.getAttribute("href");t&&(E(t),e.preventDefault())}var qt,xt,Tt=".reveal .slides section",Mt=".reveal .slides>section",Pt=".reveal .slides>section.present>section",Nt=".reveal .slides>section:first-child",Dt={width:960,height:700,margin:.1,minScale:.2,maxScale:1,controls:!0,progress:!0,history:!1,keyboard:!0,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,fragments:!0,autoSlide:0,mouseWheel:!1,rollingLinks:!0,previewLinks:!1,theme:null,transition:"default",transitionSpeed:"default",backgroundTransition:"default",dependencies:[]},Ct=0,Rt=0,It=0,Ot=[],Yt=1,zt={},Xt="WebkitPerspective"in document.body.style||"MozPerspective"in document.body.style||"msPerspective"in document.body.style||"OPerspective"in document.body.style||"perspective"in document.body.style,Ht="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style,Wt=0,Ut=0,jt=0,Ft=0,_t=0,Kt=!1,$t={startX:0,startY:0,startSpan:0,startCount:0,handled:!1,threshold:80};return{initialize:e,configure:c,sync:X,slide:z,left:tt,right:nt,up:rt,down:ot,prev:at,next:it,prevFragment:G,nextFragment:B,navigateTo:z,navigateLeft:tt,navigateRight:nt,navigateUp:rt,navigateDown:ot,navigatePrev:at,navigateNext:it,layout:A,availableRoutes:F,availableFragments:_,toggleOverview:P,togglePause:O,isOverview:N,isPaused:Y,addEventListeners:l,removeEventListeners:d,getIndices:Q,getSlide:function(e,t){var n=document.querySelectorAll(Mt)[e],r=n&&n.querySelectorAll("section");return t!==void 0?r?r[t]:void 0:n},getPreviousSlide:function(){return qt},getCurrentSlide:function(){return xt},getScale:function(){return Yt},getConfig:function(){return Dt},getQueryHash:function(){var e={};return location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(t){e[t.split("=").shift()]=t.split("=").pop()}),e},isFirstSlide:function(){return null==document.querySelector(Tt+".past")?!0:!1},isLastSlide:function(){return xt&&xt.classList.contains(".stack")?null==xt.querySelector(Tt+".future")?!0:!1:null==document.querySelector(Tt+".future")?!0:!1},addEventListener:function(e,t,n){"addEventListener"in window&&(zt.wrapper||document.querySelector(".reveal")).addEventListener(e,t,n)},removeEventListener:function(e,t,n){"addEventListener"in window&&(zt.wrapper||document.querySelector(".reveal")).removeEventListener(e,t,n)}}}();