add grunt.js build file (closes #235)
authorHakim El Hattab <hakim.elhattab@gmail.com>
Sun, 11 Nov 2012 15:01:05 +0000 (10:01 -0500)
committerHakim El Hattab <hakim.elhattab@gmail.com>
Sun, 11 Nov 2012 15:01:05 +0000 (10:01 -0500)
README.md
css/reveal.min.css [new file with mode: 0644]
grunt.js [new file with mode: 0644]
index.html
js/reveal.js
js/reveal.min.js
package.json

index 91bc4522010888a65afb90624d49476309841a6f..972ef0d4f8d22a5c698ab33cedc728b51c83289f 100644 (file)
--- a/README.md
+++ b/README.md
@@ -285,12 +285,19 @@ Then:
 3. Run ```node plugin/notes-server```
 
 
-## Folder Structure
+## Development Environment 
+
+reveal.js is built using the task-based command line build tool (grunt.js)[http://gruntjs.com]. Installation instructions here https://github.com/gruntjs/grunt#installing-grunt. With Node.js and grunt installed, you need to start by running ```npm install``` in the reveal.js root. When the dependencies have been installed you should run ```grunt watch``` to start monitoring files for changes.
+
+If you want to customize reveal.js without running grunt.js you can alter the HTML to point to the uncompressed source files (css/reveal.css/js/reveal.js).
+
+### Folder Structure
 - **css/** Core styles without which the project does not function
 - **js/** Like above but for JavaScript
 - **plugin/** Components that have been developed as extensions to reveal.js
 - **lib/** All other third party assets (JavaScript, CSS, fonts)
 
+
 ## License
 
 MIT licensed
diff --git a/css/reveal.min.css b/css/reveal.min.css
new file mode 100644 (file)
index 0000000..9e3d36c
--- /dev/null
@@ -0,0 +1,7 @@
+@charset "UTF-8";/*!
+ * reveal.js
+ * http://lab.hakim.se/reveal-js
+ * MIT licensed
+ *
+ * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
+ */html,body,.reveal div,.reveal span,.reveal applet,.reveal object,.reveal iframe,.reveal h1,.reveal h2,.reveal h3,.reveal h4,.reveal h5,.reveal h6,.reveal p,.reveal blockquote,.reveal pre,.reveal a,.reveal abbr,.reveal acronym,.reveal address,.reveal big,.reveal cite,.reveal code,.reveal del,.reveal dfn,.reveal em,.reveal img,.reveal ins,.reveal kbd,.reveal q,.reveal s,.reveal samp,.reveal small,.reveal strike,.reveal strong,.reveal sub,.reveal sup,.reveal tt,.reveal var,.reveal b,.reveal u,.reveal i,.reveal center,.reveal dl,.reveal dt,.reveal dd,.reveal ol,.reveal ul,.reveal li,.reveal fieldset,.reveal form,.reveal label,.reveal legend,.reveal table,.reveal caption,.reveal tbody,.reveal tfoot,.reveal thead,.reveal tr,.reveal th,.reveal td,.reveal article,.reveal aside,.reveal canvas,.reveal details,.reveal embed,.reveal figure,.reveal figcaption,.reveal footer,.reveal header,.reveal hgroup,.reveal menu,.reveal nav,.reveal output,.reveal ruby,.reveal section,.reveal summary,.reveal time,.reveal mark,.reveal audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}.reveal article,.reveal aside,.reveal details,.reveal figcaption,.reveal figure,.reveal footer,.reveal header,.reveal hgroup,.reveal menu,.reveal nav,.reveal section{display:block}html,body{width:100%;height:100%;overflow:hidden}body{position:relative;line-height:1}::selection{background:#FF5E99;color:#fff;text-shadow:none}@media screen and (max-width: 900px),(max-height: 600px){.reveal .slides{ font-size:.82em}}@media screen and (max-width: 700px),(max-height: 400px){.reveal .slides{ font-size:.66em}}.reveal h1{font-size:3.77em}.reveal h2{font-size:2.11em}.reveal h3{font-size:1.55em}.reveal h4{font-size:1em}.reveal .slides section .fragment{opacity:0;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;-ms-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease}.reveal .slides section .fragment.visible{opacity:1}.reveal .slides section .fragment.grow{opacity:1}.reveal .slides section .fragment.grow.visible{-webkit-transform:scale( 1.3 );-moz-transform:scale( 1.3 );-ms-transform:scale( 1.3 );-o-transform:scale( 1.3 );transform:scale( 1.3 )}.reveal .slides section .fragment.shrink{opacity:1}.reveal .slides section .fragment.shrink.visible{-webkit-transform:scale( .7 );-moz-transform:scale( .7 );-ms-transform:scale( .7 );-o-transform:scale( .7 );transform:scale( .7 )}.reveal .slides section .fragment.roll-in{opacity:0;-webkit-transform:rotateX( 90deg );-moz-transform:rotateX( 90deg );-ms-transform:rotateX( 90deg );-o-transform:rotateX( 90deg );transform:rotateX( 90deg )}.reveal .slides section .fragment.roll-in.visible{opacity:1;-webkit-transform:rotateX( 0 );-moz-transform:rotateX( 0 );-ms-transform:rotateX( 0 );-o-transform:rotateX( 0 );transform:rotateX( 0 )}.reveal .slides section .fragment.fade-out{opacity:1}.reveal .slides section .fragment.fade-out.visible{opacity:0}.reveal .slides section .fragment.highlight-red,.reveal .slides section .fragment.highlight-green,.reveal .slides section .fragment.highlight-blue{opacity:1}.reveal .slides section .fragment.highlight-red.visible{color:#ff2c2d}.reveal .slides section .fragment.highlight-green.visible{color:#17ff2e}.reveal .slides section .fragment.highlight-blue.visible{color:#1b91ff}.reveal:after{content:'';font-style:italic}.reveal img{max-width:100%;max-height:100%}.reveal strong,.reveal b{font-weight:700}.reveal em,.reveal i{font-style:italic}.reveal ol,.reveal ul{display:inline-block;text-align:left;margin:0 0 0 1em}.reveal ol{list-style-type:decimal}.reveal ul{list-style-type:disc}.reveal ul ul{list-style-type:square}.reveal ul ul ul{list-style-type:circle}.reveal ul ul,.reveal ul ol,.reveal ol ol,.reveal ol ul{display:block;margin-left:40px}.reveal p{margin-bottom:10px;line-height:1.2em}.reveal q,.reveal blockquote{quotes:none}.reveal blockquote{display:block;position:relative;width:70%;margin:5px auto;padding:5px;font-style:italic;background:rgba(255,255,255,.05);box-shadow:0 0 2px rgba(0,0,0,.2)}.reveal blockquote p:first-child,.reveal blockquote p:last-child{display:inline-block}.reveal blockquote:before{content:'\201C'}.reveal blockquote:after{content:'\201D'}.reveal q{font-style:italic}.reveal q:before{content:'\201C'}.reveal q:after{content:'\201D'}.reveal pre{display:block;position:relative;width:90%;margin:15px auto;text-align:left;font-size:.55em;font-family:monospace;line-height:1.2em;word-wrap:break-word;box-shadow:0 0 6px rgba(0,0,0,.3)}.reveal pre code{padding:5px}.reveal code{font-family:monospace;overflow:auto;max-height:400px}.reveal table th,.reveal table td{text-align:left;padding-right:.3em}.reveal table th{text-shadow:#fff 1px 1px 2px}.reveal sup{vertical-align:super}.reveal sub{vertical-align:sub}.reveal small{display:inline-block;font-size:.6em;line-height:1.2em;vertical-align:top}.reveal small *{vertical-align:top}.reveal .controls{display:none;position:fixed;width:110px;height:110px;z-index:30;right:10px;bottom:10px}.reveal .controls div{position:absolute;opacity:.1;width:0;height:0;border:12px solid transparent;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;-ms-transition:opacity .2s ease;-o-transition:opacity .2s ease;transition:opacity .2s ease}.reveal .controls div.enabled{opacity:.6;cursor:pointer}.reveal .controls div.enabled:active{margin-top:1px}.reveal .controls div.navigate-left{top:42px;border-right-width:22px;border-right-color:#eee}.reveal .controls div.navigate-right{left:74px;top:42px;border-left-width:22px;border-left-color:#eee}.reveal .controls div.navigate-up{left:42px;border-bottom-width:22px;border-bottom-color:#eee}.reveal .controls div.navigate-down{left:42px;top:74px;border-top-width:22px;border-top-color:#eee}.reveal .progress{position:fixed;display:none;height:3px;width:100%;bottom:0;left:0;z-index:10}.reveal .progress:after{content:'';display:'block';position:absolute;height:20px;width:100%;top:-20px}.reveal .progress span{display:block;height:100%;width:0;-webkit-transition:width 800ms cubic-bezier(0.260,.860,.440,.985);-moz-transition:width 800ms cubic-bezier(0.260,.860,.440,.985);-ms-transition:width 800ms cubic-bezier(0.260,.860,.440,.985);-o-transition:width 800ms cubic-bezier(0.260,.860,.440,.985);transition:width 800ms cubic-bezier(0.260,.860,.440,.985)}.reveal .roll{display:inline-block;line-height:1.2;overflow:hidden;vertical-align:top;-webkit-perspective:400px;-moz-perspective:400px;-ms-perspective:400px;perspective:400px;-webkit-perspective-origin:50% 50%;-moz-perspective-origin:50% 50%;-ms-perspective-origin:50% 50%;perspective-origin:50% 50%}.reveal .roll:hover{background:0;text-shadow:none}.reveal .roll span{display:block;position:relative;padding:0 2px;pointer-events:none;-webkit-transition:all 400ms ease;-moz-transition:all 400ms ease;-ms-transition:all 400ms ease;transition:all 400ms ease;-webkit-transform-origin:50% 0;-moz-transform-origin:50% 0;-ms-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden}.reveal .roll:hover span{background:rgba(0,0,0,.5);-webkit-transform:translate3d( 0,0,-45px ) rotateX( 90deg );-moz-transform:translate3d( 0,0,-45px ) rotateX( 90deg );-ms-transform:translate3d( 0,0,-45px ) rotateX( 90deg );transform:translate3d( 0,0,-45px ) rotateX( 90deg )}.reveal .roll span:after{content:attr(data-title);display:block;position:absolute;left:0;top:0;padding:0 2px;-webkit-transform-origin:50% 0;-moz-transform-origin:50% 0;-ms-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:translate3d( 0,110%,0 ) rotateX( -90deg );-moz-transform:translate3d( 0,110%,0 ) rotateX( -90deg );-ms-transform:translate3d( 0,110%,0 ) rotateX( -90deg );transform:translate3d( 0,110%,0 ) rotateX( -90deg )}.reveal{position:relative;width:100%;height:100%;min-height:640px}.reveal .slides{position:absolute;max-width:900px;min-height:600px;width:80%;left:50%;top:50%;overflow:visible;z-index:1;text-align:center;-webkit-transition:-webkit-perspective .4s ease;-moz-transition:-moz-perspective .4s ease;-ms-transition:-ms-perspective .4s ease;-o-transition:-o-perspective .4s ease;transition:perspective .4s ease;-webkit-perspective:600px;-moz-perspective:600px;-ms-perspective:600px;perspective:600px;-webkit-perspective-origin:0 -100px;-moz-perspective-origin:0 -100px;-ms-perspective-origin:0 -100px;perspective-origin:0 -100px}.reveal .slides>section,.reveal .slides>section>section{display:none;position:absolute;width:100%;padding:20px 0;z-index:10;line-height:1.2em;font-weight:400;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition:-webkit-transform-origin 800ms cubic-bezier(0.260,.860,.440,.985),-webkit-transform 800ms cubic-bezier(0.260,.860,.440,.985),visibility 800ms cubic-bezier(0.260,.860,.440,.985),opacity 800ms cubic-bezier(0.260,.860,.440,.985);-moz-transition:-moz-transform-origin 800ms cubic-bezier(0.260,.860,.440,.985),-moz-transform 800ms cubic-bezier(0.260,.860,.440,.985),visibility 800ms cubic-bezier(0.260,.860,.440,.985),opacity 800ms cubic-bezier(0.260,.860,.440,.985);-ms-transition:-ms-transform-origin 800ms cubic-bezier(0.260,.860,.440,.985),-ms-transform 800ms cubic-bezier(0.260,.860,.440,.985),visibility 800ms cubic-bezier(0.260,.860,.440,.985),opacity 800ms cubic-bezier(0.260,.860,.440,.985);-o-transition:-o-transform-origin 800ms cubic-bezier(0.260,.860,.440,.985),-o-transform 800ms cubic-bezier(0.260,.860,.440,.985),visibility 800ms cubic-bezier(0.260,.860,.440,.985),opacity 800ms cubic-bezier(0.260,.860,.440,.985);transition:transform-origin 800ms cubic-bezier(0.260,.860,.440,.985),transform 800ms cubic-bezier(0.260,.860,.440,.985),visibility 800ms cubic-bezier(0.260,.860,.440,.985),opacity 800ms cubic-bezier(0.260,.860,.440,.985)}.reveal .slides>section{left:-50%;top:-50%}.reveal .slides>section.present,.reveal .slides>section>section.present{display:block;z-index:11;opacity:1}.reveal.center,.reveal.center .slides{min-height:auto}.reveal .slides>section.past{display:block;opacity:0;-webkit-transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0);-moz-transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0);-ms-transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0);transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal .slides>section.future{display:block;opacity:0;-webkit-transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0);-moz-transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0);-ms-transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0);transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal .slides>section>section.past{display:block;opacity:0;-webkit-transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0);-moz-transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0);-ms-transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0);transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0)}.reveal .slides>section>section.future{display:block;opacity:0;-webkit-transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0);-moz-transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0);-ms-transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0);transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0)}.reveal.concave .slides>section.past{-webkit-transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0);-moz-transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0);-ms-transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0);transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0)}.reveal.concave .slides>section.future{-webkit-transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0);-moz-transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0);-ms-transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0);transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0)}.reveal.concave .slides>section>section.past{-webkit-transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0);-moz-transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0);-ms-transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0);transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0)}.reveal.concave .slides>section>section.future{-webkit-transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0);-moz-transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0);-ms-transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0);transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0)}.reveal.zoom .slides>section.past{opacity:0;visibility:hidden;-webkit-transform:scale(16);-moz-transform:scale(16);-ms-transform:scale(16);-o-transform:scale(16);transform:scale(16)}.reveal.zoom .slides>section.future{opacity:0;visibility:hidden;-webkit-transform:scale(0.2);-moz-transform:scale(0.2);-ms-transform:scale(0.2);-o-transform:scale(0.2);transform:scale(0.2)}.reveal.zoom .slides>section>section.past{-webkit-transform:translate(0,-150%);-moz-transform:translate(0,-150%);-ms-transform:translate(0,-150%);-o-transform:translate(0,-150%);transform:translate(0,-150%)}.reveal.zoom .slides>section>section.future{-webkit-transform:translate(0,150%);-moz-transform:translate(0,150%);-ms-transform:translate(0,150%);-o-transform:translate(0,150%);transform:translate(0,150%)}.reveal.linear .slides>section.past{-webkit-transform:translate(-150%,0);-moz-transform:translate(-150%,0);-ms-transform:translate(-150%,0);-o-transform:translate(-150%,0);transform:translate(-150%,0)}.reveal.linear .slides>section.future{-webkit-transform:translate(150%,0);-moz-transform:translate(150%,0);-ms-transform:translate(150%,0);-o-transform:translate(150%,0);transform:translate(150%,0)}.reveal.linear .slides>section>section.past{-webkit-transform:translate(0,-150%);-moz-transform:translate(0,-150%);-ms-transform:translate(0,-150%);-o-transform:translate(0,-150%);transform:translate(0,-150%)}.reveal.linear .slides>section>section.future{-webkit-transform:translate(0,150%);-moz-transform:translate(0,150%);-ms-transform:translate(0,150%);-o-transform:translate(0,150%);transform:translate(0,150%)}.reveal.cube .slides{-webkit-perspective:1300px;-moz-perspective:1300px;-ms-perspective:1300px;perspective:1300px}.reveal.cube .slides section{padding:30px;min-height:600px;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.reveal.center.cube .slides section{min-height:auto}.reveal.cube .slides section:not(.stack):before{content:'';position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);border-radius:4px;-webkit-transform:translateZ( -20px );-moz-transform:translateZ( -20px );-ms-transform:translateZ( -20px );-o-transform:translateZ( -20px );transform:translateZ( -20px )}.reveal.cube .slides section:not(.stack):after{content:'';position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);-webkit-transform:translateZ(-90px) rotateX( 65deg );-moz-transform:translateZ(-90px) rotateX( 65deg );-ms-transform:translateZ(-90px) rotateX( 65deg );-o-transform:translateZ(-90px) rotateX( 65deg );transform:translateZ(-90px) rotateX( 65deg )}.reveal.cube .slides>section.stack{padding:0;background:0}.reveal.cube .slides>section.past{-webkit-transform-origin:100% 0;-moz-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0;-webkit-transform:translate3d(-100%,0,0) rotateY(-90deg);-moz-transform:translate3d(-100%,0,0) rotateY(-90deg);-ms-transform:translate3d(-100%,0,0) rotateY(-90deg);transform:translate3d(-100%,0,0) rotateY(-90deg)}.reveal.cube .slides>section.future{-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translate3d(100%,0,0) rotateY(90deg);-moz-transform:translate3d(100%,0,0) rotateY(90deg);-ms-transform:translate3d(100%,0,0) rotateY(90deg);transform:translate3d(100%,0,0) rotateY(90deg)}.reveal.cube .slides>section>section.past{-webkit-transform-origin:0 100%;-moz-transform-origin:0 100%;-ms-transform-origin:0 100%;transform-origin:0 100%;-webkit-transform:translate3d(0,-100%,0) rotateX(90deg);-moz-transform:translate3d(0,-100%,0) rotateX(90deg);-ms-transform:translate3d(0,-100%,0) rotateX(90deg);transform:translate3d(0,-100%,0) rotateX(90deg)}.reveal.cube .slides>section>section.future{-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translate3d(0,100%,0) rotateX(-90deg);-moz-transform:translate3d(0,100%,0) rotateX(-90deg);-ms-transform:translate3d(0,100%,0) rotateX(-90deg);transform:translate3d(0,100%,0) rotateX(-90deg)}.reveal.page .slides{-webkit-perspective-origin:0 50%;-moz-perspective-origin:0 50%;-ms-perspective-origin:0 50%;perspective-origin:0 50%;-webkit-perspective:3000px;-moz-perspective:3000px;-ms-perspective:3000px;perspective:3000px}.reveal.page .slides section{padding:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.reveal.page .slides section.past{z-index:12}.reveal.page .slides section:not(.stack):before{content:'';position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);-webkit-transform:translateZ( -20px );-moz-transform:translateZ( -20px );-ms-transform:translateZ( -20px );-o-transform:translateZ( -20px );transform:translateZ( -20px )}.reveal.page .slides section:not(.stack):after{content:'';position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);-webkit-transform:translateZ(-90px) rotateX( 65deg )}.reveal.page .slides>section.stack{padding:0;background:0}.reveal.page .slides>section.past{-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translate3d(-40%,0,0) rotateY(-80deg);-moz-transform:translate3d(-40%,0,0) rotateY(-80deg);-ms-transform:translate3d(-40%,0,0) rotateY(-80deg);transform:translate3d(-40%,0,0) rotateY(-80deg)}.reveal.page .slides>section.future{-webkit-transform-origin:100% 0;-moz-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.reveal.page .slides>section>section.past{-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-transform:translate3d(0,-40%,0) rotateX(80deg);-moz-transform:translate3d(0,-40%,0) rotateX(80deg);-ms-transform:translate3d(0,-40%,0) rotateX(80deg);transform:translate3d(0,-40%,0) rotateX(80deg)}.reveal.page .slides>section>section.future{-webkit-transform-origin:0 100%;-moz-transform-origin:0 100%;-ms-transform-origin:0 100%;transform-origin:0 100%;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.reveal.tileflip .slides section.present{-webkit-transform:none;-webkit-transition-duration:800ms;-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 0,randomness 0,flipAxis 0 1 0,tileOutline 1 )}.reveal.tileflip .slides section.past{-webkit-transform:none;-webkit-transition-duration:800ms;-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 1,randomness 0,flipAxis 0 1 0,tileOutline 1 )}.reveal.tileflip .slides section.future{-webkit-transform:none;-webkit-transition-duration:800ms;-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 1,randomness 0,flipAxis 0 1 0,tileOutline 1 )}.reveal.tileflip .slides>section>section.present{-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 0,randomness 2,flipAxis 1 0 0,tileOutline 1 )}.reveal.tileflip .slides>section>section.past{-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 1,randomness 2,flipAxis 1 0 0,tileOutline 1 )}.reveal.tileflip .slides>section>section.future{-webkit-filter:custom( url(shaders/tile-flip.vs) mix(url(shaders/tile-flip.fs) multiply source-atop),10 10 border-box detached,transform perspective(1000) scale(1) rotateX(0deg) rotateY(0deg) rotateZ(0deg),amount 1,randomness 2,flipAxis 1 0 0,tileOutline 1 )}.reveal.none .slides section{-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none;-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none}.reveal.overview .slides{-webkit-perspective:700px;-moz-perspective:700px;-ms-perspective:700px;perspective:700px}.reveal.overview .slides section{height:600px;overflow:hidden;opacity:1!important;visibility:visible!important;cursor:pointer;background:rgba(0,0,0,.1)}.reveal.overview .slides section .fragment{opacity:1}.reveal.overview .slides section:after,.reveal.overview .slides section:before{display:none!important}.reveal.overview .slides section>section{opacity:1;cursor:pointer}.reveal.overview .slides section:hover{background:rgba(0,0,0,.3)}.reveal.overview .slides section.present{background:rgba(0,0,0,.3)}.reveal.overview .slides>section.stack{padding:0;background:0;overflow:visible}.reveal .pause-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;visibility:hidden;opacity:0;z-index:100;-webkit-transition:all 1s ease;-moz-transition:all 1s ease;-ms-transition:all 1s ease;-o-transition:all 1s ease;transition:all 1s ease}.reveal.paused .pause-overlay{visibility:visible;opacity:1}.no-transforms{overflow-y:auto}.no-transforms .slides{top:0;left:50%;margin:0;text-align:center}.no-transforms .slides section{display:block!important;opacity:1!important;position:relative!important;height:auto;min-height:auto;top:0;left:-50%;margin:70px 0;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.no-transforms .slides section section{left:0}.no-transition{-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none}.reveal .state-background{position:absolute;width:100%;height:100%;background:rgba( 0,0,0,0 );-webkit-transition:background 800ms ease;-moz-transition:background 800ms ease;-ms-transition:background 800ms ease;-o-transition:background 800ms ease;transition:background 800ms ease}.alert .reveal .state-background{background:rgba( 200,50,30,.6 )}.soothe .reveal .state-background{background:rgba( 50,200,90,.4 )}.blackout .reveal .state-background{background:rgba( 0,0,0,.6 )}.reveal aside.notes{display:none}.zoomed .reveal *,.zoomed .reveal :before,.zoomed .reveal :after{-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;transform:none!important;-webkit-backface-visibility:visible!important;-moz-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important}.zoomed .reveal .progress,.zoomed .reveal .controls{opacity:0}.zoomed .reveal .roll span{background:0}.zoomed .reveal .roll span:after{visibility:hidden}
\ No newline at end of file
diff --git a/grunt.js b/grunt.js
new file mode 100644 (file)
index 0000000..1cbc09e
--- /dev/null
+++ b/grunt.js
@@ -0,0 +1,83 @@
+/* global module:false */
+module.exports = function(grunt) {
+
+       // Project configuration
+       grunt.initConfig({
+               pkg: '<json:package.json>',
+
+               inputJS: 'js/reveal.js',
+               inputCSS: 'css/reveal.css',
+
+               outputJS: 'js/reveal.min.js',
+               outputCSS: 'css/reveal.min.css',
+
+               meta: {
+                       version: '2.2',
+                       banner: 
+                               '/*!\n' +
+                               ' * reveal.js <%= meta.version %> (<%= grunt.template.today("yyyy-mm-dd, HH:MM") %>)\n' +
+                               ' * http://lab.hakim.se/reveal-js\n' +
+                               ' * MIT licensed\n' +
+                               ' *\n' +
+                               ' * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se\n' +
+                               ' */'
+               },
+
+               lint: {
+                       files: [ 'grunt.js', '<%= inputJS %>' ]
+               },
+
+               // Tests will be added soon
+               qunit: {
+                       files: [ 'test/**/*.html' ]
+               },
+
+               min: {
+                       dist: {
+                               src: [ '<banner:meta.banner>', '<%= inputJS %>' ],
+                               dest: '<%= outputJS %>'
+                       }
+               },
+
+               mincss: {
+                       compress: {
+                               files: {
+                                       '<%= outputCSS %>': [ '<%= inputCSS %>' ]
+                               }
+                       }
+               },
+
+               jshint: {
+                       options: {
+                               curly: false,
+                               eqeqeq: true,
+                               immed: true,
+                               latedef: true,
+                               newcap: true,
+                               noarg: true,
+                               sub: true,
+                               undef: true,
+                               eqnull: true,
+                               browser: true,
+                               expr: true
+                       },
+                       globals: {
+                               head: false,
+                               module: false
+                       }
+               },
+
+               watch: {
+                       files: [ 'grunt.js', '<%= inputJS %>', '<%= inputCSS %>' ],
+                       tasks: 'default'
+               }
+
+       });
+       
+       // Dependencies
+       grunt.loadNpmTasks( 'grunt-contrib-mincss' );
+
+       // Default task
+       grunt.registerTask( 'default', [ 'lint', 'mincss', 'min' ] );
+
+};
index 799d55d1df8479c2a2e4038585e133b068f79f02..fa93c0ac68d7be3d810a38c5452471846bb0de48 100644 (file)
@@ -12,7 +12,7 @@
                <meta name="apple-mobile-web-app-capable" content="yes" />
                <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
 
-               <link rel="stylesheet" href="css/reveal.css">
+               <link rel="stylesheet" href="css/reveal.min.css">
                <link rel="stylesheet" href="css/theme/default.css" id="theme">
 
                <!-- For syntax highlighting -->
                                                <a href="?theme=beige#/themes">Beige</a> -
                                                <a href="?theme=simple#/themes">Simple</a> -
                                                <a href="?theme=serif#/themes">Serif</a> -
+                                               <a href="?theme=night#/night">Night</a> -
                                                <a href="?#/themes">Default</a>
                                        </p>
                                        <p>
index cc7b9e5c4b5c18c9e8632a158ddea103662c71be..1c4f23529789430be7132006dd21fd018a9fb161 100644 (file)
@@ -1,5 +1,5 @@
 /*!
- * reveal.js 2.2 r45
+ * reveal.js
  * http://lab.hakim.se/reveal-js
  * MIT licensed
  *
@@ -359,12 +359,12 @@ var Reveal = (function(){
                }
 
                if ( config.controls && dom.controls ) {
-                       dom.controlsLeft.forEach( function( el ) {              el.addEventListener( 'click', preventAndForward( navigateLeft ), false );               } );
-                       dom.controlsRight.forEach( function( el ) {     el.addEventListener( 'click', preventAndForward( navigateRight ), false );              } );
-                       dom.controlsUp.forEach( function( el ) {                el.addEventListener( 'click', preventAndForward( navigateUp ), false );                 } );
-                       dom.controlsDown.forEach( function( el ) {              el.addEventListener( 'click', preventAndForward( navigateDown ), false );               } );
-                       dom.controlsPrev.forEach( function( el ) {              el.addEventListener( 'click', preventAndForward( navigatePrev ), false );               } );
-                       dom.controlsNext.forEach( function( el ) {              el.addEventListener( 'click', preventAndForward( navigateNext ), false );               } );
+                       dom.controlsLeft.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigateLeft ), false ); } );
+                       dom.controlsRight.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigateRight ), false ); } );
+                       dom.controlsUp.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigateUp ), false ); } );
+                       dom.controlsDown.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigateDown ), false ); } );
+                       dom.controlsPrev.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigatePrev ), false ); } );
+                       dom.controlsNext.forEach( function( el ) { el.addEventListener( 'click', preventAndForward( navigateNext ), false ); } );
                }
        }
 
@@ -384,12 +384,12 @@ var Reveal = (function(){
                }
 
                if ( config.controls && dom.controls ) {
-                       dom.controlsLeft.forEach( function( el ) {              el.removeEventListener( 'click', preventAndForward( navigateLeft ), false );            } );
-                       dom.controlsRight.forEach( function( el ) {     el.removeEventListener( 'click', preventAndForward( navigateRight ), false );           } );
-                       dom.controlsUp.forEach( function( el ) {                el.removeEventListener( 'click', preventAndForward( navigateUp ), false );                      } );
-                       dom.controlsDown.forEach( function( el ) {              el.removeEventListener( 'click', preventAndForward( navigateDown ), false );            } );
-                       dom.controlsPrev.forEach( function( el ) {              el.removeEventListener( 'click', preventAndForward( navigatePrev ), false );            } );
-                       dom.controlsNext.forEach( function( el ) {              el.removeEventListener( 'click', preventAndForward( navigateNext ), false );            } );
+                       dom.controlsLeft.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigateLeft ), false ); } );
+                       dom.controlsRight.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigateRight ), false ); } );
+                       dom.controlsUp.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigateUp ), false ); } );
+                       dom.controlsDown.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigateDown ), false ); } );
+                       dom.controlsPrev.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigatePrev ), false ); } );
+                       dom.controlsNext.forEach( function( el ) { el.removeEventListener( 'click', preventAndForward( navigateNext ), false ); } );
                }
        }
 
@@ -542,7 +542,7 @@ var Reveal = (function(){
         */
        function getPreviousVerticalIndex( stack ) {
                if( stack && stack.classList.contains( 'stack' ) ) {
-                       return parseInt( stack.getAttribute( 'data-previous-indexv' ) || 0 );
+                       return parseInt( stack.getAttribute( 'data-previous-indexv' ) || 0, 10 );
                }
 
                return 0;
@@ -912,9 +912,9 @@ var Reveal = (function(){
                        // autoSlide value otherwise use the global configured time
                        var slideAutoSlide = slides[index].getAttribute( 'data-autoslide' );
                        if( slideAutoSlide ) {
-                               autoSlide = parseInt( slideAutoSlide );
+                               autoSlide = parseInt( slideAutoSlide, 10 );
                        } else {
-                               autoSlide = config.autoSlide
+                               autoSlide = config.autoSlide;
                        }
 
                }
@@ -950,17 +950,23 @@ var Reveal = (function(){
                                for( var j = 0; j < verticalSlides.length; j++ ) {
 
                                        // Stop as soon as we arrive at the present
-                                       if( verticalSlides[j].classList.contains( 'present' ) ) break mainLoop;
+                                       if( verticalSlides[j].classList.contains( 'present' ) ) {
+                                               break mainLoop;
+                                       }
 
-                                       pastCount++
+                                       pastCount++;
 
                                }
 
                                // Stop as soon as we arrive at the present
-                               if( horizontalSlide.classList.contains( 'present' ) ) break;
+                               if( horizontalSlide.classList.contains( 'present' ) ) {
+                                       break;
+                               }
 
                                // Don't count the wrapping section for vertical slides
-                               if( horizontalSlide.classList.contains( 'stack' ) === false ) pastCount++;
+                               if( horizontalSlide.classList.contains( 'stack' ) === false ) {
+                                       pastCount++;
+                               }
 
                        }
 
@@ -987,14 +993,14 @@ var Reveal = (function(){
                        } );
 
                        // Add the 'enabled' class to the available routes
-                       if( routes.left ) dom.controlsLeft.forEach( function( el ) {    el.classList.add( 'enabled' );          } );
-                       if( routes.right ) dom.controlsRight.forEach( function( el ) {  el.classList.add( 'enabled' );          } );
-                       if( routes.up ) dom.controlsUp.forEach( function( el ) {                el.classList.add( 'enabled' );          } );
-                       if( routes.down ) dom.controlsDown.forEach( function( el ) {    el.classList.add( 'enabled' );          } );
+                       if( routes.left ) dom.controlsLeft.forEach( function( el ) { el.classList.add( 'enabled' );     } );
+                       if( routes.right ) dom.controlsRight.forEach( function( el ) { el.classList.add( 'enabled' ); } );
+                       if( routes.up ) dom.controlsUp.forEach( function( el ) { el.classList.add( 'enabled' ); } );
+                       if( routes.down ) dom.controlsDown.forEach( function( el ) { el.classList.add( 'enabled' ); } );
 
                        // Prev/next buttons
-                       if( routes.left || routes.up ) dom.controlsPrev.forEach( function( el ) {               el.classList.add( 'enabled' );          } );
-                       if( routes.right || routes.down ) dom.controlsNext.forEach( function( el ) {    el.classList.add( 'enabled' );          } );
+                       if( routes.left || routes.up ) dom.controlsPrev.forEach( function( el ) { el.classList.add( 'enabled' ); } );
+                       if( routes.right || routes.down ) dom.controlsNext.forEach( function( el ) { el.classList.add( 'enabled' ); } );
 
                }
        }
@@ -1268,7 +1274,7 @@ var Reveal = (function(){
                // Check if there's a focused element that could be using 
                // the keyboard
                var activeElement = document.activeElement;
-       var hasFocus = !!( document.activeElement && ( document.activeElement.type || document.activeElement.href || document.activeElement.contentEditable !== 'inherit' ) );
+               var hasFocus = !!( document.activeElement && ( document.activeElement.type || document.activeElement.href || document.activeElement.contentEditable !== 'inherit' ) );
 
                // Disregard the event if there's a focused element or a 
                // keyboard modifier key is present
@@ -1479,7 +1485,10 @@ var Reveal = (function(){
 
                        deactivateOverview();
 
-                       slide( parseInt( this.getAttribute( 'data-index-h' ) ), parseInt( this.getAttribute( 'data-index-v' ) ) );
+                       var h = parseInt( event.target.getAttribute( 'data-index-h' ), 10 ),
+                               v = parseInt( event.target.getAttribute( 'data-index-v' ), 10 );
+
+                       slide( h, v );
                }
        }
 
index cbdf4710608d0a4d6e59e8a5126f24784b30b673..c3bf101802f7323ff2a02b301bf98c90c1e9025d 100644 (file)
@@ -1,96 +1,8 @@
 /*!
- * reveal.js 2.2 r45
+ * reveal.js 2.2 (2012-11-11, 09:56)
  * http://lab.hakim.se/reveal-js
  * MIT licensed
  *
  * Copyright (C) 2011-2012 Hakim El Hattab, http://hakim.se
  */
-var Reveal=(function(){var ar=".reveal .slides section",m=".reveal .slides>section",b=".reveal .slides>section.present>section",W={controls:true,progress:true,history:false,keyboard:true,overview:true,center:true,loop:false,autoSlide:0,mouseWheel:true,rollingLinks:true,theme:null,transition:"default",dependencies:[]},ae=W.autoSlide,n=0,e=0,A,J,at=[],f={},Z="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,p="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,B=0,l=0,F=0,aj={startX:0,startY:0,startSpan:0,startCount:0,handled:false,threshold:80};
-function j(au){if((!p&&!Z)){document.body.setAttribute("class","no-transforms");return;}v(W,au);d();ab();}function S(){f.theme=document.querySelector("#theme");
-f.wrapper=document.querySelector(".reveal");if(!f.wrapper.querySelector(".progress")&&W.progress){var ax=document.createElement("div");ax.classList.add("progress");
-ax.innerHTML="<span></span>";f.wrapper.appendChild(ax);}if(!f.wrapper.querySelector(".controls")&&W.controls){var aw=document.createElement("aside");aw.classList.add("controls");
-aw.innerHTML='<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>';f.wrapper.appendChild(aw);
-}if(!f.wrapper.querySelector(".state-background")){var av=document.createElement("div");av.classList.add("state-background");f.wrapper.appendChild(av);
-}if(!f.wrapper.querySelector(".pause-overlay")){var au=document.createElement("div");au.classList.add("pause-overlay");f.wrapper.appendChild(au);}f.progress=document.querySelector(".reveal .progress");
-f.progressbar=document.querySelector(".reveal .progress span");if(W.controls){f.controls=document.querySelector(".reveal .controls");f.controlsLeft=I(document.querySelectorAll(".navigate-left"));
-f.controlsRight=I(document.querySelectorAll(".navigate-right"));f.controlsUp=I(document.querySelectorAll(".navigate-up"));f.controlsDown=I(document.querySelectorAll(".navigate-down"));
-f.controlsPrev=I(document.querySelectorAll(".navigate-prev"));f.controlsNext=I(document.querySelectorAll(".navigate-next"));}}function d(){if(navigator.userAgent.match(/(iphone|ipod|android)/i)){document.documentElement.style.overflow="scroll";
-document.body.style.height="120%";window.addEventListener("load",ak,false);window.addEventListener("orientationchange",ak,false);}}function ab(){var av=[],az=[];
-for(var aw=0,au=W.dependencies.length;aw<au;aw++){var ax=W.dependencies[aw];if(!ax.condition||ax.condition()){if(ax.async){az.push(ax.src);}else{av.push(ax.src);
-}if(typeof ax.callback==="function"){head.ready(ax.src.match(/([\w\d_\-]*)\.?js|[^\\\/]*$/i)[0],ax.callback);}}}function ay(){if(az.length){head.js.apply(null,az);
-}K();}if(av.length){head.ready(ay);head.js.apply(null,av);}else{ay();}}function K(){S();G();N();T();M();R();setTimeout(function(){t("ready",{indexh:n,indexv:e,currentSlide:J});
-},1);}function N(){if(Z===false){W.transition="linear";}if(W.controls&&f.controls){f.controls.style.display="block";}if(W.progress&&f.progress){f.progress.style.display="block";
-}if(W.transition!=="default"){f.wrapper.classList.add(W.transition);}if(W.center){f.wrapper.classList.add("center");}if(W.mouseWheel){document.addEventListener("DOMMouseScroll",q,false);
-document.addEventListener("mousewheel",q,false);}if(W.rollingLinks){Q();}if(W.theme&&f.theme){var aw=f.theme.getAttribute("href");var au=/[^\/]*?(?=\.css)/;
-var av=aw.match(au)[0];if(W.theme!==av){aw=aw.replace(au,W.theme);f.theme.setAttribute("href",aw);}}}function G(){document.addEventListener("touchstart",C,false);
-document.addEventListener("touchmove",am,false);document.addEventListener("touchend",ac,false);window.addEventListener("hashchange",y,false);window.addEventListener("resize",g,false);
-if(W.keyboard){document.addEventListener("keydown",ao,false);}if(W.progress&&f.progress){f.progress.addEventListener("click",s(ap),false);}if(W.controls&&f.controls){f.controlsLeft.forEach(function(au){au.addEventListener("click",s(D),false);
-});f.controlsRight.forEach(function(au){au.addEventListener("click",s(k),false);});f.controlsUp.forEach(function(au){au.addEventListener("click",s(w),false);
-});f.controlsDown.forEach(function(au){au.addEventListener("click",s(H),false);});f.controlsPrev.forEach(function(au){au.addEventListener("click",s(af),false);
-});f.controlsNext.forEach(function(au){au.addEventListener("click",s(z),false);});}}function aa(){document.removeEventListener("keydown",ao,false);document.removeEventListener("touchstart",C,false);
-document.removeEventListener("touchmove",am,false);document.removeEventListener("touchend",ac,false);window.removeEventListener("hashchange",y,false);window.removeEventListener("resize",g,false);
-if(W.progress&&f.progress){f.progress.removeEventListener("click",s(ap),false);}if(W.controls&&f.controls){f.controlsLeft.forEach(function(au){au.removeEventListener("click",s(D),false);
-});f.controlsRight.forEach(function(au){au.removeEventListener("click",s(k),false);});f.controlsUp.forEach(function(au){au.removeEventListener("click",s(w),false);
-});f.controlsDown.forEach(function(au){au.removeEventListener("click",s(H),false);});f.controlsPrev.forEach(function(au){au.removeEventListener("click",s(af),false);
-});f.controlsNext.forEach(function(au){au.removeEventListener("click",s(z),false);});}}function v(av,au){for(var aw in au){av[aw]=au[aw];}}function I(au){return Array.prototype.slice.call(au);
-}function ah(au,aw,av){au.forEach(function(ax){ax[aw].apply(ax,av);});}function X(aw,au){var ax=aw.x-au.x,av=aw.y-au.y;return Math.sqrt(ax*ax+av*av);}function s(au){return function(av){av.preventDefault();
-au.call(null,av);};}function ak(){setTimeout(function(){window.scrollTo(0,1);},0);}function t(av,au){var aw=document.createEvent("HTMLEvents",1,2);aw.initEvent(av,true,true);
-v(aw,au);f.wrapper.dispatchEvent(aw);}function Q(){if(Z&&!("msPerspective" in document.body.style)){var av=document.querySelectorAll(ar+" a:not(.image)");
-for(var aw=0,au=av.length;aw<au;aw++){var ax=av[aw];if(ax.textContent&&!ax.querySelector("img")&&(!ax.className||!ax.classList.contains(ax,"roll"))){ax.classList.add("roll");
-ax.innerHTML='<span data-title="'+ax.text+'">'+ax.innerHTML+"</span>";}}}}function T(){if(W.center){var ax=I(document.querySelectorAll(ar));var ay=-f.wrapper.offsetHeight/2;
-for(var aw=0,av=ax.length;aw<av;aw++){var au=ax[aw];if(au.style.display==="none"){continue;}if(au.classList.contains("stack")){au.style.top=0;}else{au.style.top=Math.max(-(au.offsetHeight/2)-20,ay)+"px";
-}}}}function V(au,av){if(au){au.setAttribute("data-previous-indexv",av||0);}}function Y(au){if(au&&au.classList.contains("stack")){return parseInt(au.getAttribute("data-previous-indexv")||0);
-}return 0;}function L(){if(W.overview){f.wrapper.classList.add("overview");var av=document.querySelectorAll(m);for(var aA=0,ay=av.length;aA<ay;aA++){var ax=av[aA],aE="translateZ(-2500px) translate("+((aA-n)*105)+"%, 0%)";
-ax.setAttribute("data-index-h",aA);ax.style.display="block";ax.style.WebkitTransform=aE;ax.style.MozTransform=aE;ax.style.msTransform=aE;ax.style.OTransform=aE;
-ax.style.transform=aE;if(ax.classList.contains("stack")){var aD=ax.querySelectorAll("section");for(var az=0,aw=aD.length;az<aw;az++){var au=aA===n?e:Y(ax);
-var aC=aD[az],aB="translate(0%, "+((az-au)*105)+"%)";aC.setAttribute("data-index-h",aA);aC.setAttribute("data-index-v",az);aC.style.display="block";aC.style.WebkitTransform=aB;
-aC.style.MozTransform=aB;aC.style.msTransform=aB;aC.style.OTransform=aB;aC.style.transform=aB;aC.addEventListener("click",E,true);}}else{ax.addEventListener("click",E,true);
-}}T();}}function al(){if(W.overview){f.wrapper.classList.remove("overview");var ax=I(document.querySelectorAll(ar));for(var aw=0,au=ax.length;aw<au;aw++){var av=ax[aw];
-av.style.WebkitTransform="";av.style.MozTransform="";av.style.msTransform="";av.style.OTransform="";av.style.transform="";av.removeEventListener("click",E);
-}a(n,e);}}function ad(au){if(typeof au==="boolean"){au?L():al();}else{O()?al():L();}}function O(){return f.wrapper.classList.contains("overview");}function ai(){var au=document.body;
-var av=au.requestFullScreen||au.webkitRequestFullScreen||au.mozRequestFullScreen||au.msRequestFullScreen;if(av){av.apply(au);}}function c(){f.wrapper.classList.add("paused");
-}function r(){f.wrapper.classList.remove("paused");}function ag(){if(an()){r();}else{c();}}function an(){return f.wrapper.classList.contains("paused");
-}function a(aA,aE){A=J;var au=document.querySelectorAll(m);if(aE===undefined){aE=Y(au[aA]);}if(A&&A.parentNode.classList.contains("stack")){V(A.parentNode,e);
-}var ax=at.concat();at.length=0;var aD=n,aw=e;n=aq(m,aA===undefined?n:aA);e=aq(b,aE===undefined?e:aE);T();stateLoop:for(var ay=0,aB=at.length;ay<aB;ay++){for(var av=0;
-av<ax.length;av++){if(ax[av]===at[ay]){ax.splice(av,1);continue stateLoop;}}document.documentElement.classList.add(at[ay]);t(at[ay]);}while(ax.length){document.documentElement.classList.remove(ax.pop());
-}if(O()){L();}clearTimeout(F);F=setTimeout(i,1500);var aC=au[n],az=aC.querySelectorAll("section");J=az[e]||aC;if(n!==aD||e!==aw){t("slidechanged",{indexh:n,indexv:e,previousSlide:A,currentSlide:J});
-}else{A=null;}if(A){A.classList.remove("present");}u();o();}function aq(ax,aC){var av=I(document.querySelectorAll(ax)),aB=av.length;if(aB){if(W.loop){aC%=aB;
-if(aC<0){aC=aB+aC;}}aC=Math.max(Math.min(aC,aB-1),0);for(var az=0;az<aB;az++){var aA=av[az];if(O()===false){var au=Math.abs((aC-az)%(aB-3))||0;aA.style.display=au>3?"none":"block";
-}av[az].classList.remove("past");av[az].classList.remove("present");av[az].classList.remove("future");if(az<aC){av[az].classList.add("past");}else{if(az>aC){av[az].classList.add("future");
-}}if(aA.querySelector("section")){av[az].classList.add("stack");}}av[aC].classList.add("present");var aw=av[aC].getAttribute("data-state");if(aw){at=at.concat(aw.split(" "));
-}var ay=av[aC].getAttribute("data-autoslide");if(ay){ae=parseInt(ay);}else{ae=W.autoSlide;}}else{aC=0;}return aC;}function o(){if(W.progress&&f.progress){var aw=I(document.querySelectorAll(m));
-var av=document.querySelectorAll(ar+":not(.stack)").length;var au=0;mainLoop:for(var ay=0;ay<aw.length;ay++){var az=aw[ay];var aA=I(az.querySelectorAll("section"));
-for(var ax=0;ax<aA.length;ax++){if(aA[ax].classList.contains("present")){break mainLoop;}au++;}if(az.classList.contains("present")){break;}if(az.classList.contains("stack")===false){au++;
-}}f.progressbar.style.width=(au/(av-1))*window.innerWidth+"px";}}function u(){if(W.controls&&f.controls){var au=h();f.controlsLeft.concat(f.controlsRight).concat(f.controlsUp).concat(f.controlsDown).concat(f.controlsPrev).concat(f.controlsNext).forEach(function(av){av.classList.remove("enabled");
-});if(au.left){f.controlsLeft.forEach(function(av){av.classList.add("enabled");});}if(au.right){f.controlsRight.forEach(function(av){av.classList.add("enabled");
-});}if(au.up){f.controlsUp.forEach(function(av){av.classList.add("enabled");});}if(au.down){f.controlsDown.forEach(function(av){av.classList.add("enabled");
-});}if(au.left||au.up){f.controlsPrev.forEach(function(av){av.classList.add("enabled");});}if(au.right||au.down){f.controlsNext.forEach(function(av){av.classList.add("enabled");
-});}}}function h(){var au=document.querySelectorAll(m),av=document.querySelectorAll(b);return{left:n>0,right:n<au.length-1,up:e>0,down:e<av.length-1};}function M(){var az=window.location.hash;
-var ay=az.slice(2).split("/"),av=az.replace(/#|\//gi,"");if(isNaN(parseInt(ay[0],10))&&av.length){var aw=document.querySelector("#"+av);if(aw){var aA=Reveal.getIndices(aw);
-a(aA.h,aA.v);}else{a(n,e);}}else{var ax=parseInt(ay[0],10)||0,au=parseInt(ay[1],10)||0;a(ax,au);}}function i(){if(W.history){var au="/";if(J&&typeof J.getAttribute("id")==="string"){au="/"+J.getAttribute("id");
-}else{if(n>0||e>0){au+=n;}if(e>0){au+="/"+e;}}window.location.hash=au;}}function P(au){var ay=n,aw=e;if(au){var az=!!au.parentNode.nodeName.match(/section/gi);
-var ax=az?au.parentNode:au;var av=I(document.querySelectorAll(m));ay=Math.max(av.indexOf(ax),0);if(az){aw=Math.max(I(au.parentNode.children).indexOf(au),0);
-}}return{h:ay,v:aw};}function x(){if(document.querySelector(b+".present")){var av=document.querySelectorAll(b+".present .fragment:not(.visible)");if(av.length){av[0].classList.add("visible");
-t("fragmentshown",{fragment:av[0]});return true;}}else{var au=document.querySelectorAll(m+".present .fragment:not(.visible)");if(au.length){au[0].classList.add("visible");
-t("fragmentshown",{fragment:au[0]});return true;}}return false;}function U(){if(document.querySelector(b+".present")){var av=document.querySelectorAll(b+".present .fragment.visible");
-if(av.length){av[av.length-1].classList.remove("visible");t("fragmenthidden",{fragment:av[av.length-1]});return true;}}else{var au=document.querySelectorAll(m+".present .fragment.visible");
-if(au.length){au[au.length-1].classList.remove("visible");t("fragmenthidden",{fragment:au[au.length-1]});return true;}}return false;}function R(){clearTimeout(l);
-if(ae){l=setTimeout(z,ae);}}function D(){if(h().left&&O()||U()===false){a(n-1);}}function k(){if(h().right&&O()||x()===false){a(n+1);}}function w(){if(h().up&&O()||U()===false){a(n,e-1);
-}}function H(){if(h().down&&O()||x()===false){a(n,e+1);}}function af(){if(U()===false){if(h().up){w();}else{var au=document.querySelector(m+".past:nth-child("+n+")");
-if(au){e=(au.querySelectorAll("section").length+1)||undefined;n--;a();}}}}function z(){if(x()===false){h().down?H():k();}R();}function ao(aw){var av=document.activeElement;
-var ax=!!(document.activeElement&&(document.activeElement.type||document.activeElement.href||document.activeElement.contentEditable!=="inherit"));if(ax||aw.shiftKey||aw.altKey||aw.ctrlKey||aw.metaKey){return;
-}var au=true;switch(aw.keyCode){case 80:case 33:af();break;case 78:case 34:z();break;case 72:case 37:D();break;case 76:case 39:k();break;case 75:case 38:w();
-break;case 74:case 40:H();break;case 36:a(0);break;case 35:a(Number.MAX_VALUE);break;case 32:O()?al():z();break;case 13:O()?al():au=false;break;case 66:case 190:ag();
-break;case 70:ai();break;default:au=false;}if(au){aw.preventDefault();}else{if(aw.keyCode===27&&Z){ad();aw.preventDefault();}}R();}function C(au){aj.startX=au.touches[0].clientX;
-aj.startY=au.touches[0].clientY;aj.startCount=au.touches.length;if(au.touches.length===2&&W.overview){aj.startSpan=X({x:au.touches[1].clientX,y:au.touches[1].clientY},{x:aj.startX,y:aj.startY});
-}}function am(az){if(!aj.handled){var ax=az.touches[0].clientX;var aw=az.touches[0].clientY;if(az.touches.length===2&&aj.startCount===2&&W.overview){var ay=X({x:az.touches[1].clientX,y:az.touches[1].clientY},{x:aj.startX,y:aj.startY});
-if(Math.abs(aj.startSpan-ay)>aj.threshold){aj.handled=true;if(ay<aj.startSpan){L();}else{al();}}az.preventDefault();}else{if(az.touches.length===1&&aj.startCount!==2){var av=ax-aj.startX,au=aw-aj.startY;
-if(av>aj.threshold&&Math.abs(av)>Math.abs(au)){aj.handled=true;D();}else{if(av<-aj.threshold&&Math.abs(av)>Math.abs(au)){aj.handled=true;k();}else{if(au>aj.threshold){aj.handled=true;
-w();}else{if(au<-aj.threshold){aj.handled=true;H();}}}}az.preventDefault();}}}else{if(navigator.userAgent.match(/android/gi)){az.preventDefault();}}}function ac(au){aj.handled=false;
-}function q(au){clearTimeout(B);B=setTimeout(function(){var av=au.detail||-au.wheelDelta;if(av>0){z();}else{af();}},100);}function ap(av){var au=I(document.querySelectorAll(m)).length;
-var aw=Math.floor((av.clientX/f.wrapper.offsetWidth)*au);a(aw);}function y(au){M();}function g(au){T();}function E(au){if(O()){au.preventDefault();al();
-a(parseInt(this.getAttribute("data-index-h")),parseInt(this.getAttribute("data-index-v")));}}return{initialize:j,slide:a,left:D,right:k,up:w,down:H,prev:af,next:z,prevFragment:U,nextFragment:x,navigateTo:a,navigateLeft:D,navigateRight:k,navigateUp:w,navigateDown:H,navigatePrev:af,navigateNext:z,toggleOverview:ad,addEventListeners:G,removeEventListeners:aa,getIndices:P,getPreviousSlide:function(){return A;
-},getCurrentSlide:function(){return J;},getQueryHash:function(){var au={};location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(av){au[av.split("=").shift()]=av.split("=").pop();
-});return au;},addEventListener:function(av,aw,au){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).addEventListener(av,aw,au);
-}},removeEventListener:function(av,aw,au){if("addEventListener" in window){(f.wrapper||document.querySelector(".reveal")).removeEventListener(av,aw,au);
-}}};})();
\ No newline at end of file
+var Reveal=function(){"use strict";function g(e){if(!h&&!c){document.body.setAttribute("class","no-transforms");return}N(r,e),b(),w()}function y(){l.theme=document.querySelector("#theme"),l.wrapper=document.querySelector(".reveal");if(!l.wrapper.querySelector(".progress")&&r.progress){var e=document.createElement("div");e.classList.add("progress"),e.innerHTML="<span></span>",l.wrapper.appendChild(e)}if(!l.wrapper.querySelector(".controls")&&r.controls){var t=document.createElement("aside");t.classList.add("controls"),t.innerHTML='<div class="navigate-left"></div><div class="navigate-right"></div><div class="navigate-up"></div><div class="navigate-down"></div>',l.wrapper.appendChild(t)}if(!l.wrapper.querySelector(".state-background")){var n=document.createElement("div");n.classList.add("state-background"),l.wrapper.appendChild(n)}if(!l.wrapper.querySelector(".pause-overlay")){var i=document.createElement("div");i.classList.add("pause-overlay"),l.wrapper.appendChild(i)}l.progress=document.querySelector(".reveal .progress"),l.progressbar=document.querySelector(".reveal .progress span"),r.controls&&(l.controls=document.querySelector(".reveal .controls"),l.controlsLeft=C(document.querySelectorAll(".navigate-left")),l.controlsRight=C(document.querySelectorAll(".navigate-right")),l.controlsUp=C(document.querySelectorAll(".navigate-up")),l.controlsDown=C(document.querySelectorAll(".navigate-down")),l.controlsPrev=C(document.querySelectorAll(".navigate-prev")),l.controlsNext=C(document.querySelectorAll(".navigate-next")))}function b(){navigator.userAgent.match(/(iphone|ipod|android)/i)&&(document.documentElement.style.overflow="scroll",document.body.style.height="120%",window.addEventListener("load",O,!1),window.addEventListener("orientationchange",O,!1))}function w(){function o(){t.length&&head.js.apply(null,t),E()}var e=[],t=[];for(var n=0,i=r.dependencies.length;n<i;n++){var s=r.dependencies[n];if(!s.condition||s.condition())s.async?t.push(s.src):e.push(s.src),typeof s.callback=="function"&&head.ready(s.src.match(/([\w\d_\-]*)\.?js|[^\\\/]*$/i)[0],s.callback)}e.length?(head.ready(o),head.js.apply(null,e)):o()}function E(){y(),x(),S(),D(),Q(),tt(),setTimeout(function(){M("ready",{indexh:s,indexv:o,currentSlide:a})},1)}function S(){c===!1&&(r.transition="linear"),r.controls&&l.controls&&(l.controls.style.display="block"),r.progress&&l.progress&&(l.progress.style.display="block"),r.transition!=="default"&&l.wrapper.classList.add(r.transition),r.center&&l.wrapper.classList.add("center"),r.mouseWheel&&(document.addEventListener("DOMMouseScroll",ht,!1),document.addEventListener("mousewheel",ht,!1)),r.rollingLinks&&_();if(r.theme&&l.theme){var e=l.theme.getAttribute("href"),t=/[^\/]*?(?=\.css)/,n=e.match(t)[0];r.theme!==n&&(e=e.replace(t,r.theme),l.theme.setAttribute("href",e))}}function x(){document.addEventListener("touchstart",ft,!1),document.addEventListener("touchmove",lt,!1),document.addEventListener("touchend",ct,!1),window.addEventListener("hashchange",dt,!1),window.addEventListener("resize",vt,!1),r.keyboard&&document.addEventListener("keydown",at,!1),r.progress&&l.progress&&l.progress.addEventListener("click",A(pt),!1),r.controls&&l.controls&&(l.controlsLeft.forEach(function(e){e.addEventListener("click",A(nt),!1)}),l.controlsRight.forEach(function(e){e.addEventListener("click",A(rt),!1)}),l.controlsUp.forEach(function(e){e.addEventListener("click",A(it),!1)}),l.controlsDown.forEach(function(e){e.addEventListener("click",A(st),!1)}),l.controlsPrev.forEach(function(e){e.addEventListener("click",A(ot),!1)}),l.controlsNext.forEach(function(e){e.addEventListener("click",A(ut),!1)}))}function T(){document.removeEventListener("keydown",at,!1),document.removeEventListener("touchstart",ft,!1),document.removeEventListener("touchmove",lt,!1),document.removeEventListener("touchend",ct,!1),window.removeEventListener("hashchange",dt,!1),window.removeEventListener("resize",vt,!1),r.progress&&l.progress&&l.progress.removeEventListener("click",A(pt),!1),r.controls&&l.controls&&(l.controlsLeft.forEach(function(e){e.removeEventListener("click",A(nt),!1)}),l.controlsRight.forEach(function(e){e.removeEventListener("click",A(rt),!1)}),l.controlsUp.forEach(function(e){e.removeEventListener("click",A(it),!1)}),l.controlsDown.forEach(function(e){e.removeEventListener("click",A(st),!1)}),l.controlsPrev.forEach(function(e){e.removeEventListener("click",A(ot),!1)}),l.controlsNext.forEach(function(e){e.removeEventListener("click",A(ut),!1)}))}function N(e,t){for(var n in t)e[n]=t[n]}function C(e){return Array.prototype.slice.call(e)}function k(e,t,n){e.forEach(function(e){e[t].apply(e,n)})}function L(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}function A(e){return function(t){t.preventDefault(),e.call(null,t)}}function O(){setTimeout(function(){window.scrollTo(0,1)},0)}function M(e,t){var n=document.createEvent("HTMLEvents",1,2);n.initEvent(e,!0,!0),N(n,t),l.wrapper.dispatchEvent(n)}function _(){if(c&&!("msPerspective"in document.body.style)){var t=document.querySelectorAll(e+" a:not(.image)");for(var n=0,r=t.length;n<r;n++){var i=t[n];i.textContent&&!i.querySelector("img")&&(!i.className||!i.classList.contains(i,"roll"))&&(i.classList.add("roll"),i.innerHTML='<span data-title="'+i.text+'">'+i.innerHTML+"</span>")}}}function D(){if(r.center){var t=C(document.querySelectorAll(e)),n=-l.wrapper.offsetHeight/2;for(var i=0,s=t.length;i<s;i++){var o=t[i];if(o.style.display==="none")continue;o.classList.contains("stack")?o.style.top=0:o.style.top=Math.max(-(o.offsetHeight/2)-20,n)+"px"}}}function P(e,t){e&&e.setAttribute("data-previous-indexv",t||0)}function H(e){return e&&e.classList.contains("stack")?parseInt(e.getAttribute("data-previous-indexv")||0,10):0}function B(){if(r.overview){l.wrapper.classList.add("overview");var e=document.querySelectorAll(t);for(var n=0,i=e.length;n<i;n++){var u=e[n],a="translateZ(-2500px) translate("+(n-s)*105+"%, 0%)";u.setAttribute("data-index-h",n),u.style.display="block",u.style.WebkitTransform=a,u.style.MozTransform=a,u.style.msTransform=a,u.style.OTransform=a,u.style.transform=a;if(u.classList.contains("stack")){var f=u.querySelectorAll("section");for(var c=0,h=f.length;c<h;c++){var p=n===s?o:H(u),d=f[c],v="translate(0%, "+(c-p)*105+"%)";d.setAttribute("data-index-h",n),d.setAttribute("data-index-v",c),d.style.display="block",d.style.WebkitTransform=v,d.style.MozTransform=v,d.style.msTransform=v,d.style.OTransform=v,d.style.transform=v,d.addEventListener("click",mt,!0)}}else u.addEventListener("click",mt,!0)}D()}}function j(){if(r.overview){l.wrapper.classList.remove("overview");var t=C(document.querySelectorAll(e));for(var n=0,i=t.length;n<i;n++){var u=t[n];u.style.WebkitTransform="",u.style.MozTransform="",u.style.msTransform="",u.style.OTransform="",u.style.transform="",u.removeEventListener("click",mt)}X(s,o)}}function F(e){typeof e=="boolean"?e?B():j():I()?j():B()}function I(){return l.wrapper.classList.contains("overview")}function q(){var e=document.body,t=e.requestFullScreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullScreen;t&&t.apply(e)}function R(){l.wrapper.classList.add("paused")}function U(){l.wrapper.classList.remove("paused")}function z(){W()?U():R()}function W(){return l.wrapper.classList.contains("paused")}function X(e,r){u=a;var i=document.querySelectorAll(t);r===undefined&&(r=H(i[e])),u&&u.parentNode.classList.contains("stack")&&P(u.parentNode,o);var l=f.concat();f.length=0;var c=s,h=o;s=V(t,e===undefined?s:e),o=V(n,r===undefined?o:r),D();e:for(var p=0,d=f.length;p<d;p++){for(var m=0;m<l.length;m++)if(l[m]===f[p]){l.splice(m,1);continue e}document.documentElement.classList.add(f[p]),M(f[p])}while(l.length)document.documentElement.classList.remove(l.pop());I()&&B(),clearTimeout(v),v=setTimeout(G,1500);var g=i[s],y=g.querySelectorAll("section");a=y[o]||g,s!==c||o!==h?M("slidechanged",{indexh:s,indexv:o,previousSlide:u,currentSlide:a}):u=null,u&&u.classList.remove("present"),J(),$()}function V(e,t){var n=C(document.querySelectorAll(e)),s=n.length;if(s){r.loop&&(t%=s,t<0&&(t=s+t)),t=Math.max(Math.min(t,s-1),0);for(var o=0;o<s;o++){var u=n[o];if(I()===!1){var a=Math.abs((t-o)%(s-3))||0;u.style.display=a>3?"none":"block"}n[o].classList.remove("past"),n[o].classList.remove("present"),n[o].classList.remove("future"),o<t?n[o].classList.add("past"):o>t&&n[o].classList.add("future"),u.querySelector("section")&&n[o].classList.add("stack")}n[t].classList.add("present");var l=n[t].getAttribute("data-state");l&&(f=f.concat(l.split(" ")));var c=n[t].getAttribute("data-autoslide");c?i=parseInt(c,10):i=r.autoSlide}else t=0;return t}function $(){if(r.progress&&l.progress){var n=C(document.querySelectorAll(t)),i=document.querySelectorAll(e+":not(.stack)").length,s=0;e:for(var o=0;o<n.length;o++){var u=n[o],a=C(u.querySelectorAll("section"));for(var f=0;f<a.length;f++){if(a[f].classList.contains("present"))break e;s++}if(u.classList.contains("present"))break;u.classList.contains("stack")===!1&&s++}l.progressbar.style.width=s/(i-1)*window.innerWidth+"px"}}function J(){if(r.controls&&l.controls){var e=K();l.controlsLeft.concat(l.controlsRight).concat(l.controlsUp).concat(l.controlsDown).concat(l.controlsPrev).concat(l.controlsNext).forEach(function(e){e.classList.remove("enabled")}),e.left&&l.controlsLeft.forEach(function(e){e.classList.add("enabled")}),e.right&&l.controlsRight.forEach(function(e){e.classList.add("enabled")}),e.up&&l.controlsUp.forEach(function(e){e.classList.add("enabled")}),e.down&&l.controlsDown.forEach(function(e){e.classList.add("enabled")}),(e.left||e.up)&&l.controlsPrev.forEach(function(e){e.classList.add("enabled")}),(e.right||e.down)&&l.controlsNext.forEach(function(e){e.classList.add("enabled")})}}function K(){var e=document.querySelectorAll(t),r=document.querySelectorAll(n);return{left:s>0,right:s<e.length-1,up:o>0,down:o<r.length-1}}function Q(){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 i=Reveal.getIndices(r);X(i.h,i.v)}else X(s,o)}else{var u=parseInt(t[0],10)||0,a=parseInt(t[1],10)||0;X(u,a)}}function G(){if(r.history){var e="/";if(a&&typeof a.getAttribute("id")=="string")e="/"+a.getAttribute("id");else{if(s>0||o>0)e+=s;o>0&&(e+="/"+o)}window.location.hash=e}}function Y(e){var n=s,r=o;if(e){var i=!!e.parentNode.nodeName.match(/section/gi),u=i?e.parentNode:e,a=C(document.querySelectorAll(t));n=Math.max(a.indexOf(u),0),i&&(r=Math.max(C(e.parentNode.children).indexOf(e),0))}return{h:n,v:r}}function Z(){if(document.querySelector(n+".present")){var e=document.querySelectorAll(n+".present .fragment:not(.visible)");if(e.length)return e[0].classList.add("visible"),M("fragmentshown",{fragment:e[0]}),!0}else{var r=document.querySelectorAll(t+".present .fragment:not(.visible)");if(r.length)return r[0].classList.add("visible"),M("fragmentshown",{fragment:r[0]}),!0}return!1}function et(){if(document.querySelector(n+".present")){var e=document.querySelectorAll(n+".present .fragment.visible");if(e.length)return e[e.length-1].classList.remove("visible"),M("fragmenthidden",{fragment:e[e.length-1]}),!0}else{var r=document.querySelectorAll(t+".present .fragment.visible");if(r.length)return r[r.length-1].classList.remove("visible"),M("fragmenthidden",{fragment:r[r.length-1]}),!0}return!1}function tt(){clearTimeout(d),i&&(d=setTimeout(ut,i))}function nt(){(K().left&&I()||et()===!1)&&X(s-1)}function rt(){(K().right&&I()||Z()===!1)&&X(s+1)}function it(){(K().up&&I()||et()===!1)&&X(s,o-1)}function st(){(K().down&&I()||Z()===!1)&&X(s,o+1)}function ot(){if(et()===!1)if(K().up)it();else{var e=document.querySelector(t+".past:nth-child("+s+")");e&&(o=e.querySelectorAll("section").length+1||undefined,s--,X())}}function ut(){Z()===!1&&(K().down?st():rt()),tt()}function at(e){var t=document.activeElement,n=!(!document.activeElement||!document.activeElement.type&&!document.activeElement.href&&document.activeElement.contentEditable==="inherit");if(n||e.shiftKey||e.altKey||e.ctrlKey||e.metaKey)return;var r=!0;switch(e.keyCode){case 80:case 33:ot();break;case 78:case 34:ut();break;case 72:case 37:nt();break;case 76:case 39:rt();break;case 75:case 38:it();break;case 74:case 40:st();break;case 36:X(0);break;case 35:X(Number.MAX_VALUE);break;case 32:I()?j():ut();break;case 13:I()?j():r=!1;break;case 66:case 190:z();break;case 70:q();break;default:r=!1}r?e.preventDefault():e.keyCode===27&&c&&(F(),e.preventDefault()),tt()}function ft(e){m.startX=e.touches[0].clientX,m.startY=e.touches[0].clientY,m.startCount=e.touches.length,e.touches.length===2&&r.overview&&(m.startSpan=L({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:m.startX,y:m.startY}))}function lt(e){if(!m.handled){var t=e.touches[0].clientX,n=e.touches[0].clientY;if(e.touches.length===2&&m.startCount===2&&r.overview){var i=L({x:e.touches[1].clientX,y:e.touches[1].clientY},{x:m.startX,y:m.startY});Math.abs(m.startSpan-i)>m.threshold&&(m.handled=!0,i<m.startSpan?B():j()),e.preventDefault()}else if(e.touches.length===1&&m.startCount!==2){var s=t-m.startX,o=n-m.startY;s>m.threshold&&Math.abs(s)>Math.abs(o)?(m.handled=!0,nt()):s<-m.threshold&&Math.abs(s)>Math.abs(o)?(m.handled=!0,rt()):o>m.threshold?(m.handled=!0,it()):o<-m.threshold&&(m.handled=!0,st()),e.preventDefault()}}else navigator.userAgent.match(/android/gi)&&e.preventDefault()}function ct(e){m.handled=!1}function ht(e){clearTimeout(p),p=setTimeout(function(){var t=e.detail||-e.wheelDelta;t>0?ut():ot()},100)}function pt(e){var n=C(document.querySelectorAll(t)).length,r=Math.floor(e.clientX/l.wrapper.offsetWidth*n);X(r)}function dt(e){Q()}function vt(e){D()}function mt(e){if(I()){e.preventDefault(),j();var t=parseInt(e.target.getAttribute("data-index-h"),10),n=parseInt(e.target.getAttribute("data-index-v"),10);X(t,n)}}var e=".reveal .slides section",t=".reveal .slides>section",n=".reveal .slides>section.present>section",r={controls:!0,progress:!0,history:!1,keyboard:!0,overview:!0,center:!0,loop:!1,autoSlide:0,mouseWheel:!0,rollingLinks:!0,theme:null,transition:"default",dependencies:[]},i=r.autoSlide,s=0,o=0,u,a,f=[],l={},c="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,h="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,p=0,d=0,v=0,m={startX:0,startY:0,startSpan:0,startCount:0,handled:!1,threshold:80};return{initialize:g,slide:X,left:nt,right:rt,up:it,down:st,prev:ot,next:ut,prevFragment:et,nextFragment:Z,navigateTo:X,navigateLeft:nt,navigateRight:rt,navigateUp:it,navigateDown:st,navigatePrev:ot,navigateNext:ut,toggleOverview:F,addEventListeners:x,removeEventListeners:T,getIndices:Y,getPreviousSlide:function(){return u},getCurrentSlide:function(){return a},getQueryHash:function(){var e={};return location.search.replace(/[A-Z0-9]+?=(\w*)/gi,function(t){e[t.split("=").shift()]=t.split("=").pop()}),e},addEventListener:function(e,t,n){"addEventListener"in window&&(l.wrapper||document.querySelector(".reveal")).addEventListener(e,t,n)},removeEventListener:function(e,t,n){"addEventListener"in window&&(l.wrapper||document.querySelector(".reveal")).removeEventListener(e,t,n)}}}();
\ No newline at end of file
index ea6045a711101cfa21f1b38b8ec7bbc20a6e9aa2..c491a9a70a87083d77d5f05a76a0eee9cb1643de 100644 (file)
@@ -1,8 +1,13 @@
 {
-       "author": "Hakim El Hattab",
        "name": "reveal.js",
-       "description": "HTML5 Slideware with Presenter Notes",
-       "version": "1.5.0",
+       "version": "2.2.0",
+       "description": "The HTML Presentation Framework",
+       "homepage": "http://lab.hakim.se/reveal-js",
+       "author": {
+               "name": "Hakim El Hattab",
+               "email": "hakim.elhattab@gmail.com",
+               "web": "http://hakim.se"
+       },
        "repository": {
                "type": "git",
                "url": "git://github.com/hakimel/reveal.js.git"
@@ -16,5 +21,7 @@
                "socket.io" : "~0.9.6",
                "mustache" : "~0.4.0"
        },
-       "devDependencies": {}
+       "devDependencies": {
+               "grunt-contrib-mincss": "~0.3.2"
+       }
 }